:root{
  --bg:#0a0b0f;--panel:#111319;--panel2:#171a21;--panel3:#1d212a;--line:#282d38;
  --text:#f5f7fa;--muted:#8f98a8;--faint:#5f6775;--accent:#9ef01a;--accent2:#d7ff8b;
  --warn:#ffba49;--danger:#ff5b62;--good:#6ee7a8;--blue:#77a9ff;
  --radius:22px;--shadow:0 18px 60px rgba(0,0,0,.35);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}body{min-height:100vh}.noise{position:fixed;inset:0;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;border-right:1px solid var(--line);background:rgba(10,11,15,.88);backdrop-filter:blur(20px);display:flex;flex-direction:column;z-index:10}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--text);color:#0a0b0f;display:grid;place-items:center;font-weight:950;font-size:22px;box-shadow:0 0 0 1px rgba(255,255,255,.08)}.brand-name{font-weight:900;letter-spacing:.08em;font-size:13px}.brand-sub{font-size:9px;letter-spacing:.18em;color:var(--faint);margin-top:3px}.nav-stack{margin-top:34px;display:grid;gap:6px}.nav-btn{appearance:none;border:0;background:transparent;color:var(--muted);border-radius:14px;padding:12px 14px;text-align:left;font:inherit;font-weight:700;display:flex;align-items:center;gap:11px;cursor:pointer;transition:.18s}.nav-btn:hover{background:var(--panel);color:var(--text)}.nav-btn.active{background:var(--panel2);color:var(--text);box-shadow:inset 3px 0 0 var(--accent)}.nav-icon{width:20px;text-align:center;opacity:.9}.sidebar-foot{margin-top:auto}.sync-pill{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:14px;padding:11px 12px;display:flex;align-items:center;gap:9px;font:inherit;font-size:11px;font-weight:850;letter-spacing:.08em;cursor:pointer}.dot{width:8px;height:8px;border-radius:50%;background:var(--warn);box-shadow:0 0 14px rgba(255,186,73,.4)}.sync-pill.online .dot{background:var(--accent);box-shadow:0 0 14px rgba(158,240,26,.4)}.micro{font-size:10px;color:var(--faint);text-align:center;margin-top:12px;letter-spacing:.08em}.main-stage{min-width:0;padding:34px 38px 56px;max-width:1550px;width:100%;margin:0 auto}.mobile-only{display:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.18em;color:var(--accent);text-transform:uppercase}.page-title{font-size:clamp(32px,4vw,54px);line-height:1;letter-spacing:-.045em;margin:7px 0 8px;font-weight:950}.page-sub{color:var(--muted);font-size:14px;max-width:700px;line-height:1.55}.actions{display:flex;gap:9px;flex-wrap:wrap}.btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:13px;padding:10px 14px;font:inherit;font-weight:800;font-size:13px;cursor:pointer;transition:.16s}.btn:hover{transform:translateY(-1px);border-color:#3d4553}.btn.primary{background:var(--accent);border-color:var(--accent);color:#0b0d0f}.btn.danger{color:#ffb2b5}.btn.ghost{background:transparent}.btn.small{padding:7px 10px;font-size:11px;border-radius:10px}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.layout-main{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.75fr);gap:18px}.card{background:linear-gradient(180deg,rgba(24,27,34,.92),rgba(16,18,23,.98));border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.card.flat{box-shadow:none}.card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.card-title{font-size:13px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.card-kicker{font-size:10px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.stat{padding:18px;border-radius:18px;background:var(--panel);border:1px solid var(--line)}.stat-label{font-size:10px;color:var(--muted);letter-spacing:.13em;text-transform:uppercase;font-weight:850}.stat-value{font-size:30px;letter-spacing:-.035em;font-weight:950;margin-top:7px}.stat-delta{font-size:11px;margin-top:5px;color:var(--muted)}.good{color:var(--good)!important}.bad{color:var(--danger)!important}.warn{color:var(--warn)!important}.accent{color:var(--accent)!important}.hero-mission{position:relative;overflow:hidden;padding:26px}.hero-mission:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(158,240,26,.14),transparent 65%);right:-130px;top:-170px}.quest-tag{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);font-weight:950}.quest-title{font-size:clamp(26px,3vw,40px);letter-spacing:-.04em;font-weight:950;max-width:700px;margin:9px 0 8px}.quest-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px}.chip{padding:6px 9px;border-radius:999px;background:#20242d;border:1px solid #2c323e;font-size:10px;font-weight:800;color:#bdc4cf}.chip.hot{color:#10120f;background:var(--accent);border-color:var(--accent)}.quest-actions{display:flex;gap:9px;margin-top:22px;flex-wrap:wrap}.progressbar{height:9px;background:#232731;border-radius:999px;overflow:hidden}.progressbar>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:inherit}.metric-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:12px 0}.metric-name{font-size:12px;color:#cdd2da;font-weight:750}.metric-val{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.task-list{display:grid;gap:9px}.task{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border-radius:15px;background:var(--panel);border:1px solid var(--line)}.task.done{opacity:.56}.task.done .task-name{text-decoration:line-through}.check{width:24px;height:24px;border-radius:9px;border:1px solid #3a414d;background:#11141a;display:grid;place-items:center;cursor:pointer;color:#071000;font-size:13px;font-weight:950}.task.done .check{background:var(--accent);border-color:var(--accent)}.task-name{font-size:13px;font-weight:800}.task-meta{font-size:10px;color:var(--muted);margin-top:3px}.xp{font-size:11px;font-weight:900;color:var(--accent);white-space:nowrap}.section-gap{margin-top:18px}.big-score{display:flex;align-items:center;gap:16px}.score-ring{--pct:72;width:102px;height:102px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--pct)*1%),#252a34 0);position:relative}.score-ring:after{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--panel)}.score-ring b{position:relative;z-index:1;font-size:25px}.score-copy b{font-size:20px}.score-copy span{display:block;color:var(--muted);font-size:11px;margin-top:4px;line-height:1.45}.coach{border-left:3px solid var(--accent);padding:14px 16px;background:rgba(158,240,26,.055);border-radius:0 14px 14px 0;color:#dce2e8;font-size:13px;line-height:1.55}.coach strong{color:var(--text)}.timeline{display:grid;gap:10px}.timeline-item{display:grid;grid-template-columns:66px 1fr;gap:12px}.time{font-size:11px;color:var(--muted);padding-top:3px}.time-block{border-left:2px solid var(--line);padding:0 0 13px 13px}.time-block b{font-size:12px}.time-block span{display:block;color:var(--muted);font-size:10px;margin-top:3px}.skill{padding:16px;border-radius:17px;border:1px solid var(--line);background:var(--panel)}.skill-top{display:flex;justify-content:space-between;gap:10px}.skill-name{font-weight:900;font-size:13px}.skill-level{font-size:11px;color:var(--accent);font-weight:900}.skill-desc{font-size:10px;color:var(--muted);margin:5px 0 11px;line-height:1.4}.goal{padding:17px;border-radius:18px;background:var(--panel);border:1px solid var(--line)}.goal-title{font-weight:900;font-size:14px}.goal-meta{font-size:10px;color:var(--muted);margin-top:5px}.goal-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.goal-pct{font-size:11px;font-weight:900}.input,select,textarea{width:100%;background:#0f1116;border:1px solid var(--line);color:var(--text);border-radius:12px;padding:11px 12px;font:inherit;font-size:13px;outline:none}.input:focus,select:focus,textarea:focus{border-color:#4d5668;box-shadow:0 0 0 3px rgba(119,169,255,.08)}textarea{min-height:90px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field label{display:block;font-size:10px;color:var(--muted);font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px}.field.full{grid-column:1/-1}.seg{display:flex;gap:6px;padding:5px;background:#0f1116;border:1px solid var(--line);border-radius:13px}.seg button{flex:1;border:0;border-radius:9px;background:transparent;color:var(--muted);padding:8px;font:inherit;font-size:11px;font-weight:850;cursor:pointer}.seg button.active{background:var(--panel3);color:var(--text)}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);font-size:11px}.table th{color:var(--faint);text-transform:uppercase;letter-spacing:.1em;font-size:9px}.empty{padding:34px 16px;text-align:center;color:var(--muted);font-size:12px}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;font-size:9px;color:var(--muted);font-weight:850}.badge.red{color:#ff9da1;border-color:#5d2d32;background:#26161a}.badge.green{color:#b7f6d2;border-color:#27563f;background:#10231a}.badge.yellow{color:#ffd489;border-color:#5f4924;background:#271f10}.ghost-bars{display:grid;gap:15px}.ghost-row{display:grid;grid-template-columns:110px 1fr 62px;gap:12px;align-items:center}.ghost-name{font-size:11px;color:#cbd1d8;font-weight:800}.ghost-track{height:22px;background:#151820;border:1px solid var(--line);border-radius:7px;overflow:hidden;position:relative}.ghost-prev,.ghost-now{position:absolute;left:0;height:6px;border-radius:99px}.ghost-prev{top:4px;background:#566070}.ghost-now{bottom:4px;background:var(--accent)}.ghost-delta{text-align:right;font-size:11px;font-weight:900}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(7px);z-index:100;display:grid;place-items:center;padding:18px}.modal{width:min(720px,100%);max-height:88vh;overflow:auto;background:#12151b;border:1px solid #303642;border-radius:24px;box-shadow:0 25px 100px rgba(0,0,0,.65);padding:22px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal-title{font-weight:950;font-size:20px;letter-spacing:-.02em}.close{border:0;background:#20242c;color:var(--text);border-radius:10px;width:34px;height:34px;cursor:pointer}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,25px);opacity:0;pointer-events:none;background:#f5f7fa;color:#0b0d10;padding:11px 15px;border-radius:12px;font-weight:850;font-size:12px;z-index:200;transition:.22s}.toast.show{transform:translate(-50%,0);opacity:1}.recovery-banner{padding:16px 18px;border:1px solid #5e4725;border-radius:18px;background:linear-gradient(135deg,#241c10,#16140f);display:flex;justify-content:space-between;align-items:center;gap:16px}.recovery-banner strong{font-size:13px}.recovery-banner span{display:block;color:#c9b389;font-size:11px;margin-top:3px}.hero-number{font-size:66px;font-weight:950;letter-spacing:-.06em;line-height:.85}.divider{height:1px;background:var(--line);margin:16px 0}.quote{font-size:21px;font-weight:900;letter-spacing:-.025em;line-height:1.25}.small-muted{font-size:11px;color:var(--muted);line-height:1.5}.pill-row{display:flex;gap:7px;flex-wrap:wrap}.danger-zone{border-color:#4f2a2e;background:linear-gradient(180deg,#1b1114,#121014)}
@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.layout-main{grid-template-columns:1fr}.main-stage{padding:28px 26px 50px}.app-shell{grid-template-columns:220px 1fr}}
@media(max-width:760px){body{padding-bottom:74px}.desktop-only{display:none!important}.mobile-only{display:flex}.app-shell{display:block}.mobile-header{position:sticky;top:0;z-index:40;height:68px;padding:12px 15px;justify-content:space-between;align-items:center;background:rgba(10,11,15,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(40,45,56,.7)}.brand-lockup.compact .brand-mark{width:35px;height:35px;border-radius:11px;font-size:19px}.brand-lockup.compact .brand-name{font-size:11px}.brand-lockup.compact .brand-sub{font-size:8px}.icon-button{width:36px;height:36px;border-radius:11px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:18px}.main-stage{padding:20px 14px 30px}.page-head{align-items:flex-start;display:block;margin-bottom:20px}.page-title{font-size:36px;margin-top:6px}.actions{margin-top:14px}.grid-2,.grid-3,.grid-4,.form-grid{grid-template-columns:1fr}.layout-main{display:block}.layout-main>*+*{margin-top:16px}.card{border-radius:19px;padding:16px}.hero-mission{padding:20px}.quest-title{font-size:28px}.hero-number{font-size:52px}.stat-value{font-size:26px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:70px;padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:rgba(10,11,15,.94);backdrop-filter:blur(18px);border-top:1px solid var(--line);z-index:50;justify-content:space-around}.mobile-nav .nav-btn{padding:7px 8px;display:grid;place-items:center;gap:2px;min-width:52px;text-align:center;border-radius:12px;font-size:9px}.mobile-nav .nav-btn.active{box-shadow:none;background:var(--panel2)}.mobile-nav .nav-icon{font-size:17px}.ghost-row{grid-template-columns:80px 1fr 48px;gap:8px}.task{grid-template-columns:auto 1fr auto}.page-sub{font-size:12px}.recovery-banner{align-items:flex-start;display:block}.recovery-banner .btn{margin-top:12px;width:100%}.score-ring{width:90px;height:90px}.modal{padding:17px;border-radius:20px}.field.full{grid-column:auto}.table{min-width:620px}.table-wrap{overflow:auto}.quote{font-size:18px}}
