:root{--surface-page:#fbfbfd;--surface-card:#fff;--surface-muted:#f5f5f7;--surface-elevated:#fff;--surface-overlay:#ffffffc7;--border:#e8e8ed;--border-strong:#d2d2d7;--text:#1d1d1f;--text-h:#000;--text-muted:#6e6e73;--text-faint:#86868b;--text-inverse:#fff;--accent:#0071e3;--accent-hover:#0077ed;--accent-soft:#0071e31a;--accent-shadow:#0071e340;--focus:#10b981;--focus-strong:#047857;--focus-soft:#ecfdf5;--focus-shadow:#10b98140;--warn:#f59e0b;--warn-strong:#b45309;--warn-soft:#fffbeb;--warn-shadow:#f59e0b40;--danger:#ef4444;--danger-strong:#b91c1c;--danger-soft:#fef2f2;--danger-border:#fecaca;--neutral:#9ca3af;--shadow-sm:0 4px 12px #0000000a;--shadow-md:0 12px 24px #0000000f;--shadow-lg:0 24px 48px #00000014;--hero-glow:radial-gradient(circle at 15% 20%, #0071e31a, transparent 55%), radial-gradient(circle at 85% 80%, #10b9811a, transparent 55%);--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/1.55 var(--sans);letter-spacing:.1px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--surface-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark]{--surface-page:#0e0e10;--surface-card:#1a1a1c;--surface-muted:#232326;--surface-elevated:#232326;--surface-overlay:#141416c7;--border:#2c2c30;--border-strong:#3a3a3f;--text:#f5f5f7;--text-h:#fff;--text-muted:#a1a1a6;--text-faint:#86868b;--text-inverse:#0e0e10;--accent:#0a84ff;--accent-hover:#1f97ff;--accent-soft:#0a84ff2e;--accent-shadow:#0a84ff59;--focus:#34d399;--focus-strong:#6ee7b7;--focus-soft:#34d39924;--focus-shadow:#34d3994d;--warn:#fbbf24;--warn-strong:#fcd34d;--warn-soft:#fbbf2424;--warn-shadow:#fbbf244d;--danger:#f87171;--danger-strong:#fca5a5;--danger-soft:#f8717124;--danger-border:#f8717166;--neutral:#6b7280;--shadow-sm:0 4px 12px #0000004d;--shadow-md:0 12px 24px #0006;--shadow-lg:0 24px 48px #00000080;--hero-glow:radial-gradient(circle at 15% 20%, #0a84ff2e, transparent 55%), radial-gradient(circle at 85% 80%, #34d39924, transparent 55%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--surface-page)}#root{flex-direction:column;width:100%;min-height:100vh;margin:0;padding:0;display:flex}body{background:var(--surface-page);color:var(--text);margin:0;transition:background .25s,color .25s}.app-wrapper{background:var(--surface-page);width:100%;min-height:100vh}h1,h2,h3,h4{font-family:var(--heading);color:var(--text-h);letter-spacing:-.01em;margin:0;line-height:1.2}h1{letter-spacing:-.02em;font-size:2.25rem;font-weight:800}h2{font-size:1.25rem;font-weight:700}h3{font-size:1rem;font-weight:700}p{color:var(--text);margin:0}input,textarea,button{font-family:inherit}.theme-aware,.dash-shell,.study-shell,.detail-shell,.settings-shell,.signin-shell{transition:background .25s,color .25s}.session-card{background:var(--surface-card);border:1px solid var(--border);text-align:left;cursor:pointer;border-radius:20px;flex-direction:column;gap:1.1rem;width:100%;padding:1.4rem 1.55rem;font-family:inherit;transition:transform .18s,box-shadow .18s,border-color .18s;animation:.45s cubic-bezier(.16,1,.3,1) both session-card-in;display:flex}@keyframes session-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.session-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-3px)}.session-card:active{transform:translateY(-1px)}.session-card-head{flex-direction:column;gap:.4rem;display:flex}.session-card-head h3{color:var(--text-h);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.05rem;font-weight:700;line-height:1.25;overflow:hidden}.session-card-date{color:var(--text-faint);font-size:.8rem;font-weight:600}.session-card-stats{flex-wrap:wrap;gap:.5rem;display:flex}.session-card-stat{background:var(--surface-muted);color:var(--text);border-radius:99px;align-items:center;gap:4px;padding:.25rem .6rem;font-size:.78rem;font-weight:700;display:inline-flex}.session-card-stat.focus{color:var(--focus-strong);background:var(--focus-soft)}.session-card-stat.distracted{color:var(--warn-strong);background:var(--warn-soft)}.session-card-stat.absent{color:var(--text-muted);background:var(--surface-muted)}.session-card-bar{background:var(--surface-muted);border-radius:99px;height:6px;display:flex;overflow:hidden}.session-card-bar .seg{transition:width .4s;display:block}.session-card-bar .seg.focus{background:var(--focus)}.session-card-bar .seg.distracted{background:var(--warn)}.session-card-bar .seg.absent{background:var(--neutral)}.session-card-foot{color:var(--text-faint);align-items:center;gap:4px;font-size:.78rem;font-weight:600;display:inline-flex}@media (width<=420px){.session-card{border-radius:18px;gap:.85rem;padding:1.15rem 1.25rem}}.user-menu{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:99px;align-items:center;gap:.7rem;padding:.35rem .45rem .35rem .85rem;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.user-menu:hover{background:var(--surface-muted);border-color:var(--border)}.user-menu:active{transform:scale(.98)}.user-menu-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.9rem;font-weight:600;overflow:hidden}.user-menu-avatar{background:var(--text-h);width:32px;height:32px;color:var(--surface-card);letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}@media (width<=540px){.user-menu-name{display:none}.user-menu{padding:.25rem}}.theme-toggle{background:var(--surface-muted);border:1px solid var(--border);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:99px;justify-content:center;align-items:center;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.theme-toggle:hover{background:var(--surface-card);border-color:var(--border-strong);transform:translateY(-1px)}.theme-toggle:active{transform:translateY(0)}.theme-toggle-icon{transition:transform .35s cubic-bezier(.16,1,.3,1);display:inline-flex}.theme-toggle-icon.is-dark{transform:rotate(-360deg)}.focus-ring{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.focus-ring-label{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.focus-ring-value{letter-spacing:-.02em;color:var(--text-h);font-size:2rem;font-weight:800;line-height:1}.focus-ring-value span{color:var(--text-muted);margin-left:.15rem;font-size:1rem;font-weight:700}.focus-ring-goal{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-top:.35rem;font-size:.72rem;font-weight:700}@media (width<=540px){.focus-ring{width:160px!important;height:160px!important}.focus-ring-value{font-size:1.65rem}}.stats-hero{background:var(--surface-card);border:1px solid var(--border);border-radius:24px;grid-template-columns:minmax(260px,auto) minmax(0,1fr);gap:2rem;margin-bottom:2.5rem;padding:2rem 2.25rem;animation:.5s cubic-bezier(.16,1,.3,1) stats-hero-in;display:grid;position:relative;overflow:hidden}@keyframes stats-hero-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stats-hero-bg{z-index:0;pointer-events:none;background:var(--hero-glow);filter:blur(.5px);position:absolute;inset:0}.stats-hero-ring,.stats-hero-tiles{z-index:1;position:relative}.stats-hero-ring{align-items:center;gap:1.75rem;display:flex}.stats-hero-ring-legend{flex-direction:column;gap:.85rem;display:flex}.legend-row{grid-template-columns:14px 1fr auto;align-items:center;gap:.65rem;display:grid}.legend-dot{border-radius:50%;width:10px;height:10px}.legend-dot.focus{background:var(--focus);box-shadow:0 0 0 4px var(--focus-soft)}.legend-dot.distracted{background:var(--warn);box-shadow:0 0 0 4px var(--warn-soft)}.legend-label{color:var(--text-muted);font-size:.85rem;font-weight:600}.legend-value{color:var(--text-h);font-size:.95rem;font-weight:700}.stats-hero-tiles{grid-template-columns:repeat(3,minmax(0,1fr));align-content:center;gap:.85rem;display:grid}.stats-tile{background:var(--surface-muted);border:1px solid var(--border);border-radius:16px;align-items:center;gap:.85rem;padding:1rem 1.1rem;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.stats-tile:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stats-tile-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.stats-tile-icon.streak{background:var(--warn-soft);color:var(--warn-strong)}.stats-tile-icon.sessions{background:var(--accent-soft);color:var(--accent)}.stats-tile-icon.total{background:var(--focus-soft);color:var(--focus-strong)}.stats-tile-body{flex-direction:column;min-width:0;display:flex}.stats-tile-value{color:var(--text-h);letter-spacing:-.01em;align-items:baseline;gap:.25rem;font-size:1.5rem;font-weight:800;line-height:1.1;display:flex}.stats-tile-value span{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem;font-weight:700}.stats-tile-value-text{color:var(--text-h);letter-spacing:-.01em;font-size:1.3rem;font-weight:800;line-height:1.1}.stats-tile-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin-top:.3rem;font-size:.78rem;font-weight:700}@media (width<=900px){.stats-hero{grid-template-columns:1fr;gap:1.5rem;padding:1.75rem}.stats-hero-ring{text-align:center;flex-direction:column;align-items:center}.stats-hero-tiles{grid-template-columns:1fr 1fr}}@media (width<=540px){.stats-hero{border-radius:20px;padding:1.35rem}.stats-hero-tiles{grid-template-columns:1fr}.stats-tile{padding:.85rem 1rem}.stats-tile-value{font-size:1.3rem}}.dash-shell{background:var(--surface-page);width:100%;min-height:100vh;color:var(--text)}.dash-topbar{z-index:50;background:var(--surface-overlay);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.1rem 2rem;display:flex;position:sticky;top:0}.dash-brand{letter-spacing:-.01em;color:var(--text-h);font-size:1rem;font-weight:800}.dash-topbar-right{align-items:center;gap:.65rem;display:inline-flex}.dash-main{max-width:1180px;margin:0 auto;padding:3rem 2rem 5rem}.dash-hero{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.5rem;animation:.5s cubic-bezier(.16,1,.3,1) dash-fade-in;display:flex}.dash-hero-text h1{letter-spacing:-.02em;color:var(--text-h);margin:0;font-size:2.5rem;font-weight:800;line-height:1.15}.dash-hero-text p{color:var(--text-muted);margin:.65rem 0 0;font-size:1.05rem}.dash-start-btn{background:var(--accent);color:var(--text-inverse);cursor:pointer;white-space:nowrap;border:none;border-radius:14px;align-items:center;gap:.5rem;padding:.95rem 1.4rem;font-size:.95rem;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.dash-start-btn:hover{background:var(--accent-hover);box-shadow:0 12px 28px var(--accent-shadow);transform:translateY(-1px)}.headline-h1{color:var(--text-h)}.dash-resume-banner{background:var(--warn-soft);border:1px solid var(--warn);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:.75rem;width:100%;margin-bottom:2rem;padding:.85rem 1.1rem;font-family:inherit;transition:transform .15s,box-shadow .15s;animation:.5s cubic-bezier(.16,1,.3,1) dash-fade-in;display:flex}.dash-resume-banner:hover{box-shadow:0 8px 18px var(--warn-shadow);transform:translateY(-1px)}.dash-resume-dot{background:var(--warn);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.4s ease-in-out infinite dash-pulse}@keyframes dash-pulse{0%,to{box-shadow:0 0 0 0 var(--warn-shadow)}60%{box-shadow:0 0 0 9px #0000}}.dash-resume-text{color:var(--warn-strong);text-transform:capitalize;flex:1;font-weight:600}.dash-resume-cta{color:var(--warn-strong);font-weight:700}.dash-toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;animation:.55s cubic-bezier(.16,1,.3,1) dash-fade-in;display:flex}.dash-search{background:var(--surface-card);border:1px solid var(--border);color:var(--text-faint);border-radius:12px;flex:240px;align-items:center;gap:.5rem;min-width:240px;padding:.55rem .85rem;transition:border-color .15s,box-shadow .15s;display:flex}.dash-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.dash-search input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:.92rem}.dash-search input::placeholder{color:var(--text-faint)}.dash-filter-row{flex-wrap:wrap;gap:.45rem;display:flex}.dash-filter-chip{background:var(--surface-card);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:99px;padding:.45rem .95rem;font-size:.83rem;font-weight:600;transition:background .15s,color .15s,border-color .15s,transform .15s}.dash-filter-chip:hover{border-color:var(--border-strong);transform:translateY(-1px)}.dash-filter-chip.is-active{background:var(--text-h);color:var(--surface-card);border-color:var(--text-h)}.dash-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.dash-empty{background:var(--surface-card);border:1px dashed var(--border-strong);text-align:center;color:var(--text-muted);border-radius:16px;padding:3rem 1.5rem;font-weight:500}.dash-error{background:var(--danger-soft);border:1px solid var(--danger-border);color:var(--danger-strong);border-radius:12px;margin-bottom:1.25rem;padding:.8rem 1rem;font-weight:600}@keyframes dash-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.dash-topbar{padding:.9rem 1rem}.dash-main{padding:2rem 1rem 4rem}.dash-hero{flex-direction:column;align-items:stretch;margin-bottom:2rem}.dash-hero-text h1{font-size:1.85rem}.dash-hero-text p{font-size:.95rem}.dash-start-btn{justify-content:center;width:100%;padding:.95rem 1rem}.dash-resume-banner{gap:.6rem;padding:.75rem .9rem}.dash-resume-cta{display:none}.dash-toolbar{gap:.75rem;margin-bottom:1.5rem}.dash-search{width:100%}.dash-filter-row{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;width:100%;padding-bottom:.25rem;overflow-x:auto}.dash-filter-row::-webkit-scrollbar{display:none}.dash-filter-chip{flex-shrink:0}.dash-grid{grid-template-columns:1fr;gap:1rem}}@media (width<=420px){.dash-topbar{padding:.85rem}.dash-main{padding:1.5rem .85rem 3.5rem}.dash-hero-text h1{font-size:1.65rem}}.study-shell{background:var(--surface-page);width:100%;min-height:100vh;color:var(--text)}.study-topbar{z-index:50;background:var(--surface-overlay);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.1rem 2rem;display:flex;position:sticky;top:0}.study-back{color:var(--accent);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:99px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.study-back:hover{background:var(--surface-muted);border-color:var(--border)}.study-topbar-right{align-items:center;gap:.65rem;display:inline-flex}.study-status-pill{letter-spacing:.04em;text-transform:uppercase;border-radius:99px;padding:.35rem .85rem;font-size:.78rem;font-weight:700}.study-status-pill.idle{background:var(--surface-muted);color:var(--text-muted)}.study-status-pill.active{background:var(--focus-soft);color:var(--focus-strong)}.study-status-pill.paused{background:var(--warn-soft);color:var(--warn-strong)}.study-main{max-width:1180px;margin:0 auto;padding:3rem 2rem 5rem;animation:.45s cubic-bezier(.16,1,.3,1) study-fade}@keyframes study-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.study-header{margin-bottom:2.5rem}.study-header h1{letter-spacing:-.02em;color:var(--text-h);margin:0;font-size:2.25rem;font-weight:800;line-height:1.15}.study-header p{color:var(--text-muted);margin:.6rem 0 0;font-size:1rem}.study-grid{grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}@media (width<=900px){.study-grid{grid-template-columns:1fr}}.study-camera-card{background:var(--surface-card);border:1px solid var(--border);border-radius:22px;flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.study-camera-frame{background:#000;border-radius:16px;justify-content:center;align-items:center;min-height:280px;display:flex;position:relative;overflow:hidden}.study-camera-frame video{border-radius:16px;width:100%}.study-camera-placeholder{color:var(--text-faint);flex-direction:column;align-items:center;gap:.85rem;font-weight:600;display:flex}.study-camera-orb{background:radial-gradient(circle at 30% 30%,#1d1d1f,#2a2a2c 60%,#1d1d1f);border-radius:50%;width:56px;height:56px;animation:3s ease-in-out infinite orb-breathe;box-shadow:0 0 0 6px #ffffff0a,0 12px 24px #0006}@keyframes orb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.study-error{background:var(--danger-soft);border:1px solid var(--danger-border);color:var(--danger-strong);border-radius:10px;padding:.65rem .85rem;font-size:.9rem;font-weight:600}.study-actions{flex-wrap:wrap;gap:.75rem;display:flex}.study-btn{color:var(--text-inverse);cursor:pointer;border:none;border-radius:12px;flex:140px;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.25rem;font-size:.95rem;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex}.study-btn:hover{transform:translateY(-1px)}.study-btn:active{transform:translateY(0)}.study-btn.start{background:var(--accent)}.study-btn.start:hover{box-shadow:0 10px 22px var(--accent-shadow)}.study-btn.pause{background:var(--warn)}.study-btn.pause:hover{box-shadow:0 10px 22px var(--warn-shadow)}.study-btn.resume{background:var(--focus)}.study-btn.resume:hover{box-shadow:0 10px 22px var(--focus-shadow)}.study-btn.stop{background:var(--danger)}.study-btn.stop:hover{box-shadow:0 10px 22px #ef444440}.study-metrics{grid-template-columns:1fr 1fr;align-content:start;gap:.85rem;display:grid}@media (width<=900px){.study-metrics{grid-template-columns:repeat(4,1fr)}}@media (width<=540px){.study-metrics{grid-template-columns:1fr 1fr}}.study-stat{background:var(--surface-card);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:.6rem;min-height:96px;padding:1.1rem 1.15rem;transition:transform .2s,box-shadow .2s;display:flex}.study-stat:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.study-stat-head{color:var(--text-muted);align-items:center;gap:.45rem;display:flex}.study-stat-head label{letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.study-stat.focus .study-stat-head{color:var(--focus)}.study-stat.distracted .study-stat-head{color:var(--warn)}.study-stat.absent .study-stat-head{color:var(--text-muted)}.study-stat.total .study-stat-head{color:var(--accent)}.study-stat-value{color:var(--text-h);letter-spacing:-.01em;font-size:1.75rem;font-weight:800;line-height:1.1}.study-graph-card{background:var(--surface-card);border:1px solid var(--border);border-radius:22px;padding:1.5rem 1.75rem}.study-graph-head{align-items:center;gap:.6rem;margin-bottom:1.25rem;display:flex}.study-graph-head h2{color:var(--text-h);margin:0;font-size:1.1rem;font-weight:700}@media (width<=720px){.study-topbar{padding:.85rem 1rem}.study-main{padding:2rem 1rem 4rem}.study-header{margin-bottom:2rem}.study-header h1{font-size:1.85rem}.study-header p{font-size:.95rem}.study-camera-card{border-radius:18px;gap:1rem;padding:1rem}.study-camera-frame{min-height:220px}.study-btn{flex:100%;padding:.85rem 1rem}.study-metrics{grid-template-columns:1fr 1fr}.study-stat-value{font-size:1.45rem}.study-graph-card{padding:1.1rem 1.15rem}}@media (width<=420px){.study-topbar{padding:.75rem .85rem}.study-main{padding:1.5rem .85rem 3.5rem}.study-header h1{font-size:1.55rem}.study-status-pill{display:none}}.detail-shell{background:var(--surface-page);min-height:100vh;color:var(--text)}.detail-topbar{z-index:50;background:var(--surface-overlay);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.1rem 2rem;display:flex;position:sticky;top:0}.detail-back{color:var(--accent);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:99px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.detail-back:hover{background:var(--surface-muted);border-color:var(--border)}.detail-topbar-right{align-items:center;gap:.65rem;display:inline-flex}.detail-main{max-width:1180px;margin:0 auto;padding:3rem 2rem 5rem;animation:.45s cubic-bezier(.16,1,.3,1) detail-fade}@keyframes detail-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.detail-header{margin-bottom:2.25rem}.detail-title-row{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.detail-title-row h1{letter-spacing:-.02em;color:var(--text-h);margin:0;font-size:2.25rem;font-weight:800;line-height:1.15}.detail-title-edit{letter-spacing:-.02em;color:var(--text-h);background:var(--surface-card);border:1.5px solid var(--border-strong);border-radius:12px;outline:none;flex:320px;max-width:520px;padding:.45rem .85rem;font-size:2rem;font-weight:800}.detail-title-edit:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.detail-status-pill{letter-spacing:.05em;text-transform:uppercase;border-radius:99px;padding:.3rem .7rem;font-size:.72rem;font-weight:700}.detail-status-pill.active{background:var(--focus-soft);color:var(--focus-strong)}.detail-status-pill.paused{background:var(--warn-soft);color:var(--warn-strong)}.detail-status-pill.completed{background:var(--accent-soft);color:var(--accent)}.detail-meta{color:var(--text-muted);margin:.7rem 0 1.5rem;font-size:.95rem;font-weight:500}.detail-actions{flex-wrap:wrap;gap:.75rem;display:flex}.detail-btn{border:1px solid var(--border);cursor:pointer;background:var(--surface-card);color:var(--text);border-radius:12px;align-items:center;gap:.4rem;padding:.6rem 1rem;font-weight:700;transition:background .15s,transform .15s,box-shadow .15s;display:inline-flex}.detail-btn:hover{transform:translateY(-1px)}.detail-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--text-inverse)}.detail-btn.primary:hover{background:var(--accent-hover);box-shadow:0 8px 18px var(--accent-shadow)}.detail-btn.danger{color:var(--danger);border-color:var(--danger-border)}.detail-btn.danger:hover{background:var(--danger-soft)}.detail-btn.ghost:hover{background:var(--surface-muted)}.detail-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.detail-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:1.5rem;display:grid}@media (width<=900px){.detail-grid{grid-template-columns:1fr}}.detail-left{flex-direction:column;gap:1.25rem;display:flex}.detail-stats{grid-template-columns:repeat(3,1fr);gap:.85rem;display:grid}@media (width<=720px){.detail-stats{grid-template-columns:1fr}}.detail-stat{background:var(--surface-card);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:.4rem;padding:1.1rem 1.2rem;display:flex}.detail-stat-head{color:var(--text-muted);align-items:center;gap:.4rem;display:flex}.detail-stat-head label{letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.detail-stat.focus .detail-stat-head{color:var(--focus)}.detail-stat.distracted .detail-stat-head{color:var(--warn)}.detail-stat.absent .detail-stat-head{color:var(--text-muted)}.detail-stat-value{color:var(--text-h);letter-spacing:-.01em;font-size:1.75rem;font-weight:800;line-height:1.1}.detail-stat-foot{color:var(--text-faint);font-size:.78rem;font-weight:600}.detail-card{background:var(--surface-card);border:1px solid var(--border);border-radius:20px;padding:1.5rem 1.75rem}.detail-card-head{align-items:center;gap:.6rem;margin-bottom:1.25rem;display:flex}.detail-card-head h2{color:var(--text-h);margin:0;font-size:1.1rem;font-weight:700}.detail-bar{background:var(--surface-muted);border-radius:99px;height:10px;margin-bottom:.85rem;display:flex;overflow:hidden}.detail-bar .seg{transition:width .4s}.detail-bar .seg.focus{background:var(--focus)}.detail-bar .seg.distracted{background:var(--warn)}.detail-bar .seg.absent{background:var(--neutral)}.detail-legend{color:var(--text-muted);flex-wrap:wrap;gap:1.25rem;font-size:.85rem;font-weight:600;display:flex}.detail-legend>div{align-items:center;gap:.35rem;display:inline-flex}.dot{border-radius:50%;width:8px;height:8px}.dot.focus{background:var(--focus)}.dot.distracted{background:var(--warn)}.dot.absent{background:var(--neutral)}.detail-notes{white-space:pre-wrap;color:var(--text);margin:0;line-height:1.55}.detail-notes-edit{border:1.5px solid var(--border-strong);background:var(--surface-card);width:100%;color:var(--text);resize:vertical;border-radius:12px;outline:none;padding:.85rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.detail-notes-edit:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.detail-empty{text-align:center;color:var(--text-muted);margin:0;padding:2.5rem 1rem;font-weight:500}.detail-empty.subtle{text-align:left;color:var(--text-faint);padding:.5rem 0}.detail-empty.error{color:var(--danger)}@media (width<=720px){.detail-topbar{padding:.85rem 1rem}.detail-main{padding:2rem 1rem 4rem}.detail-header{margin-bottom:1.75rem}.detail-title-row h1{font-size:1.85rem}.detail-title-edit{font-size:1.7rem}.detail-actions{width:100%}.detail-btn{flex:auto;justify-content:center}.detail-stats{grid-template-columns:1fr}.detail-stat-value{font-size:1.55rem}.detail-card{border-radius:18px;padding:1.15rem 1.2rem}.detail-card-head h2{font-size:1rem}}@media (width<=420px){.detail-topbar{padding:.75rem .85rem}.detail-main{padding:1.5rem .85rem 3.5rem}.detail-title-row h1{font-size:1.55rem}}.signin-shell{background:var(--surface-page);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:2rem;display:flex;position:relative;overflow:hidden}.signin-bg{z-index:0;background:var(--hero-glow);filter:blur(.5px);animation:18s ease-in-out infinite alternate signin-bg-drift;position:absolute;inset:0}@keyframes signin-bg-drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(-2%,1%)scale(1.05)}}.signin-card{z-index:1;background:var(--surface-card);border:1px solid var(--border);width:100%;max-width:460px;box-shadow:var(--shadow-md);border-radius:28px;padding:3rem;animation:.45s cubic-bezier(.16,1,.3,1) signin-rise;position:relative}@keyframes signin-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.signin-badge{background:var(--accent-soft);color:var(--accent);letter-spacing:.04em;text-transform:uppercase;border-radius:99px;align-items:center;gap:6px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex}.signin-title{letter-spacing:-.02em;color:var(--text-h);margin:1.5rem 0 .85rem;font-size:2rem;font-weight:800;line-height:1.15}.signin-subtitle{color:var(--text-muted);margin:0 0 2.25rem;line-height:1.55}.signin-form{flex-direction:column;gap:1.35rem;display:flex}.signin-field{flex-direction:column;gap:.4rem;display:flex}.signin-field>span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.signin-field>span em{color:var(--text-faint);text-transform:none;letter-spacing:0;font-style:normal;font-weight:500}.signin-field input{background:var(--surface-muted);color:var(--text);border:1.5px solid #0000;border-radius:12px;outline:none;padding:.9rem 1rem;font-size:1rem;font-weight:600;transition:border-color .15s,background .15s,box-shadow .15s}.signin-field input:focus{background:var(--surface-card);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.signin-submit{background:var(--accent);color:var(--text-inverse);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.95rem 1.25rem;font-size:1rem;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.signin-submit:hover{background:var(--accent-hover);box-shadow:0 8px 20px var(--accent-shadow);transform:translateY(-1px)}.signin-submit:active{transform:translateY(0)}.signin-error{color:var(--danger-strong);background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:10px;margin:0;padding:.6rem .85rem;font-size:.9rem;font-weight:600}.signin-footnote{color:var(--text-faint);text-align:center;margin:1.75rem 0 0;font-size:.8rem}@media (width<=540px){.signin-shell{padding:1.25rem}.signin-card{border-radius:22px;padding:2rem 1.5rem}.signin-title{font-size:1.7rem}}.settings-shell{background:var(--surface-page);min-height:100vh;color:var(--text)}.settings-topbar{z-index:50;background:var(--surface-overlay);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.1rem 2rem;display:flex;position:sticky;top:0}.settings-back{color:var(--accent);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:99px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.settings-back:hover{background:var(--surface-muted);border-color:var(--border)}.settings-main{max-width:640px;margin:0 auto;padding:3rem 2rem 5rem;animation:.4s cubic-bezier(.16,1,.3,1) settings-fade}@keyframes settings-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.settings-header{margin-bottom:2.25rem}.settings-header h1{letter-spacing:-.02em;color:var(--text-h);margin:0;font-size:2.25rem;font-weight:800;line-height:1.15}.settings-header p{color:var(--text-muted);margin:.6rem 0 0}.settings-card{background:var(--surface-card);border:1px solid var(--border);border-radius:20px;flex-direction:column;gap:1.35rem;margin-bottom:1.5rem;padding:2rem;display:flex}.settings-card.danger{flex-direction:row;justify-content:space-between;align-items:center;gap:1.5rem}.settings-row-text h2{color:var(--text-h);margin:0 0 .45rem;font-size:1.05rem;font-weight:700}.settings-row-text p{color:var(--text-muted);margin:0;font-size:.92rem;line-height:1.5}.settings-field{flex-direction:column;gap:.35rem;display:flex}.settings-field span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.settings-field input{background:var(--surface-muted);color:var(--text);border:1.5px solid #0000;border-radius:12px;outline:none;padding:.8rem 1rem;font-size:1rem;font-weight:600;transition:border-color .15s,background .15s,box-shadow .15s}.settings-field input:focus{background:var(--surface-card);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.settings-actions{justify-content:flex-end;display:flex}.settings-save{background:var(--accent);color:var(--text-inverse);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:.5rem;padding:.7rem 1.2rem;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.settings-save:hover{background:var(--accent-hover);box-shadow:0 8px 18px var(--accent-shadow);transform:translateY(-1px)}.settings-signout{background:var(--surface-card);color:var(--danger);border:1px solid var(--danger-border);cursor:pointer;white-space:nowrap;border-radius:12px;align-items:center;gap:.5rem;padding:.7rem 1.2rem;font-weight:700;transition:background .15s,transform .15s;display:inline-flex}.settings-signout:hover{background:var(--danger-soft);transform:translateY(-1px)}@media (width<=720px){.settings-topbar{padding:.85rem 1rem}.settings-main{padding:2rem 1rem 4rem}.settings-header{margin-bottom:1.75rem}.settings-header h1{font-size:1.85rem}.settings-card{border-radius:18px;padding:1.5rem}.settings-actions{justify-content:stretch}.settings-save{justify-content:center;width:100%}}@media (width<=540px){.settings-card.danger{flex-direction:column;align-items:flex-start}.settings-signout{justify-content:center;width:100%}}@media (width<=420px){.settings-topbar{padding:.75rem .85rem}.settings-main{padding:1.5rem .85rem 3.5rem}.settings-header h1{font-size:1.55rem}}
