
:root{
  --bg:#0a0f1c;
  --bg-soft:#0f1727;
  --sidebar:#0b1220;
  --panel:#121b2c;
  --panel-2:#182235;
  --panel-3:#1d2940;
  --text:#f7f9fc;
  --muted:#8fa0b8;
  --line:#26344b;
  --blue:#4f8cff;
  --blue-2:#2f6fe4;
  --green:#26c281;
  --amber:#f2a93b;
  --red:#f05c63;
  --purple:#9b7bff;
  --cyan:#4fd1c5;
  --shadow:0 18px 55px rgba(0,0,0,.28);
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  display:grid;
  grid-template-columns:270px 1fr;
  background:
    radial-gradient(circle at 15% 0%,rgba(79,140,255,.10),transparent 28%),
    radial-gradient(circle at 100% 100%,rgba(38,194,129,.08),transparent 24%),
    var(--bg);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.45;
}
button,input,select,textarea{font:inherit}
button{transition:.18s ease}
aside{
  position:sticky;top:0;height:100vh;
  background:linear-gradient(180deg,#0b1220 0%,#0a101c 100%);
  border-right:1px solid rgba(255,255,255,.06);
  padding:26px 20px;
  display:flex;flex-direction:column;
  box-shadow:14px 0 40px rgba(0,0,0,.16);
  z-index:10;
}
aside h1{margin:0;font-size:24px;letter-spacing:-.02em}
aside>small{color:var(--muted);margin-top:2px}
nav{display:flex;flex-direction:column;gap:6px;margin-top:28px}
nav button{
  position:relative;
  border:0;
  background:transparent;
  color:#b9c5d6;
  padding:11px 13px 11px 42px;
  text-align:left;
  border-radius:11px;
  cursor:pointer;
  font-weight:600;
}
nav button::before{
  position:absolute;left:13px;top:50%;transform:translateY(-50%);
  width:20px;text-align:center;opacity:.88
}
nav button[data-view="dashboard"]::before{content:"◫"}
nav button[data-view="today"]::before{content:"✓"}
nav button[data-view="journal"]::before{content:"✎"}
nav button[data-view="notes"]::before{content:"◧"}
nav button[data-view="books"]::before{content:"▤"}
nav button[data-view="movies"]::before{content:"▶"}
nav button[data-view="quotes"]::before{content:"❝"}
nav button[data-view="tasks"]::before{content:"⌂"}
nav button[data-view="weeks"]::before{content:"↻"}
nav button[data-view="garmin"]::before{content:"⌁"}
nav button[data-view="settings"]::before{content:"⚙"}
nav button:hover{background:#111b2d;color:white}
nav button.active{
  background:linear-gradient(90deg,rgba(79,140,255,.20),rgba(79,140,255,.06));
  color:white;
  box-shadow:inset 3px 0 0 var(--blue);
}
.logout{
  margin-top:auto;
  color:#aab7ca;
  text-decoration:none;
  padding:11px 13px;
  border-radius:10px;
  border:1px solid var(--line);
  text-align:center;
  font-weight:600;
}
.logout:hover{background:#131d2f;color:white}
main{padding:30px 36px 70px;min-width:0}
header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:24px;
}
header small{color:var(--muted);letter-spacing:.14em;font-weight:700}
header h2{margin:4px 0 0;font-size:32px;letter-spacing:-.03em}
#status{
  color:#b8c5d6;background:rgba(255,255,255,.035);
  border:1px solid var(--line);border-radius:999px;
  padding:9px 13px;font-size:13px;
}
#status::before{content:"●";color:var(--green);margin-right:8px;font-size:10px}
.view{display:none;animation:fade .18s ease}.view.active{display:block}
@keyframes fade{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
.hero{
  min-height:170px;
  padding:28px 30px;
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(13,27,58,.2),rgba(7,15,31,.10)),
    linear-gradient(135deg,#245fd6 0%,#1b7f72 100%);
  display:flex;justify-content:space-between;align-items:center;
  box-shadow:0 24px 55px rgba(28,95,214,.24);
  overflow:hidden;position:relative;
}
.hero::after{
  content:"";position:absolute;width:320px;height:320px;border-radius:50%;
  right:-90px;top:-110px;background:rgba(255,255,255,.08);
}
.hero small{letter-spacing:.13em;font-weight:800;opacity:.8}
.hero h3{font-size:30px;max-width:760px;line-height:1.18;margin:8px 0 0;letter-spacing:-.03em}
.hero #progress{
  position:relative;z-index:1;
  width:112px;height:112px;border-radius:50%;
  display:grid;place-items:center;
  border:12px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);
  font-size:28px;font-weight:850;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.kpis{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;margin:20px 0;
}
.kpi{
  position:relative;
  background:linear-gradient(180deg,var(--panel),#101827);
  border:1px solid var(--line);
  border-radius:16px;
  padding:17px 18px;
  min-height:104px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.kpi::after{
  content:"";position:absolute;right:-18px;bottom:-18px;
  width:72px;height:72px;border-radius:50%;background:rgba(79,140,255,.06)
}
.kpi small{display:block;color:var(--muted);font-weight:650;font-size:12px}
.kpi b{display:block;font-size:27px;margin-top:7px;letter-spacing:-.03em}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
article{
  background:linear-gradient(180deg,var(--panel),#101827);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:20px;
  box-shadow:var(--shadow);
  min-width:0;
}
article h3{margin:0 0 16px;font-size:18px;letter-spacing:-.01em}
.wide{grid-column:1/-1}
.heatmap{
  display:grid;grid-template-columns:repeat(15,1fr);gap:7px;
  padding-top:3px;
}
.heatmap span{
  aspect-ratio:1;border-radius:6px;background:#2b394f;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  transition:.18s ease;
}
.heatmap span:hover{transform:translateY(-2px);filter:brightness(1.15)}
.heatmap .high{background:linear-gradient(135deg,#1fb978,#32d393)}
.heatmap .mid{background:linear-gradient(135deg,#da8b24,#f3b343)}
.heatmap .low{background:linear-gradient(135deg,#da4b55,#f06a72)}
.stack{
  display:flex;justify-content:space-between;align-items:center;
  background:var(--panel-2);
  padding:11px 12px;margin:8px 0;border-radius:10px;
  border:1px solid rgba(255,255,255,.035)
}
.stack b{font-size:18px}
.toolbar{
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;margin-bottom:18px;
}
input,select,textarea{
  width:100%;
  background:var(--panel-2);
  border:1px solid var(--line);
  color:var(--text);
  padding:11px 12px;
  border-radius:10px;
  outline:none;
  transition:.18s ease;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(79,140,255,.12)
}
textarea{resize:vertical;min-height:88px}
button,.button{
  background:linear-gradient(180deg,#2c3950,#202b3d);
  border:1px solid var(--line);
  color:var(--text);
  padding:10px 14px;border-radius:10px;
  cursor:pointer;text-decoration:none;display:inline-block;
  font-weight:650;
}
button:hover,.button:hover{transform:translateY(-1px);filter:brightness(1.08)}
#saveSettings,#garminImport,#importBtn,.library-form button{
  background:linear-gradient(180deg,var(--blue),var(--blue-2));
  border-color:#4f8cff;color:white
}
.row{
  display:grid;grid-template-columns:minmax(210px,280px) 1fr;
  gap:14px;margin:12px 0;align-items:start
}
.row label{font-weight:650;color:#dbe5f3;padding-top:9px}
.habit{
  display:grid;grid-template-columns:1fr 120px;
  gap:12px;align-items:center;
  border-bottom:1px solid var(--line);
  padding:10px 0
}
.habit:last-child{border-bottom:0}
table{width:100%;border-collapse:separate;border-spacing:0;margin-top:14px}
th,td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{
  color:#b9c6d8;background:#111a2a;
  position:sticky;top:0;z-index:1;
  font-size:12px;text-transform:uppercase;letter-spacing:.05em
}
tr:hover td{background:rgba(255,255,255,.015)}
.library-form{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;margin-bottom:18px;
  background:var(--panel-2);padding:14px;border-radius:13px;border:1px solid var(--line)
}
.library-form textarea{grid-column:1/-1}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.card{
  background:var(--panel-2);border:1px solid var(--line);
  border-radius:14px;padding:16px;
  display:flex;flex-direction:column;min-height:170px
}
.card h4{margin:0 0 7px;font-size:17px}
.card small{color:var(--muted)}
.card p{white-space:pre-wrap;color:#c8d3e3;flex:1}
.card button{align-self:flex-start;color:#ffb3b7;border-color:#5a2a31}
label{color:#dce5f2}
.auth{
  display:grid;place-items:center;min-height:100vh;
  background:
    radial-gradient(circle at 20% 10%,rgba(79,140,255,.16),transparent 30%),
    radial-gradient(circle at 80% 90%,rgba(38,194,129,.12),transparent 28%),
    var(--bg)
}
.auth-card{
  width:min(430px,92vw);
  background:linear-gradient(180deg,var(--panel),#101827);
  border:1px solid var(--line);
  padding:30px;border-radius:22px;
  display:flex;flex-direction:column;gap:13px;
  box-shadow:0 30px 80px rgba(0,0,0,.35)
}
.auth-card h1{margin:0;font-size:30px}.auth-card p{margin:0 0 6px;color:var(--muted)}
.auth-card button{background:linear-gradient(180deg,var(--blue),var(--blue-2));color:white}
.error{color:#ff9aa0}
@media(max-width:1180px){
  .kpis{grid-template-columns:repeat(2,1fr)}
  .cards{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:980px){
  body{grid-template-columns:1fr}
  aside{position:relative;height:auto;padding:18px}
  nav{display:grid;grid-template-columns:repeat(3,1fr)}
  nav button{padding-left:38px}
  .logout{margin-top:16px}
  main{padding:22px}
  .grid{grid-template-columns:1fr}
  .wide{grid-column:auto}
}
@media(max-width:680px){
  nav{grid-template-columns:repeat(2,1fr)}
  .kpis{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .row{grid-template-columns:1fr}
  .row label{padding-top:0}
  .hero{align-items:flex-start;gap:18px;padding:22px}
  .hero h3{font-size:23px}
  .hero #progress{width:88px;height:88px;border-width:9px;font-size:23px}
  .heatmap{grid-template-columns:repeat(10,1fr)}
  header{align-items:flex-start;gap:14px}
  #status{display:none}
}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--green));font-weight:900;box-shadow:0 10px 28px rgba(79,140,255,.25)}.brand h1{font-size:21px}.brand small{color:var(--muted)}
nav button[data-view="analytics"]::before{content:"⌁"}nav button[data-view="game"]::before{content:"◆"}nav button[data-view="priorities"]::before{content:"!"}
.hero p{color:rgba(255,255,255,.78);margin:8px 0 0}.hero-metrics{text-align:center;z-index:2}.hero-metrics span{display:block;margin-top:7px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;opacity:.72}
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.section-head h3{margin:2px 0}.section-head>span,.section-head small{color:var(--muted)}
.chart-wrap{height:300px;position:relative}.chart-wrap.tall{height:390px}
.insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.insight{display:flex;gap:12px;align-items:flex-start;padding:13px;background:var(--panel-2);border:1px solid var(--line);border-radius:12px}.insight>span{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:rgba(79,140,255,.14);color:#86adff;font-weight:800;flex:0 0 auto}.insight p{margin:3px 0;color:#d5dfec}
.level-card{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:24px;padding:25px 28px;margin-bottom:18px;border-radius:20px;background:linear-gradient(135deg,#312e81,#1d4ed8 55%,#0f766e);box-shadow:0 22px 55px rgba(37,99,235,.25)}.level-card h3{font-size:31px;margin:5px 0}.level-card p{margin:0;color:rgba(255,255,255,.78)}.level-progress{height:16px;border-radius:999px;background:rgba(255,255,255,.18);overflow:hidden}.level-progress div{height:100%;width:0;background:linear-gradient(90deg,#fff,#99f6e4);border-radius:inherit;transition:width .5s ease}
.quest{display:flex;justify-content:space-between;align-items:center;padding:14px;margin:10px 0;border-radius:13px;background:var(--panel-2);border:1px solid var(--line)}.quest div{display:flex;flex-direction:column}.quest small{color:var(--blue);font-weight:800;letter-spacing:.12em}.quest strong{margin:3px 0}.quest span{color:var(--muted);font-size:12px}.quest>b{color:#a7f3d0}
.badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.badge{padding:15px;border-radius:14px;border:1px solid var(--line);background:var(--panel-2);display:grid;grid-template-columns:38px 1fr;column-gap:10px;align-items:center}.badge-icon{grid-row:1/3;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#253149}.badge strong{font-size:14px}.badge span{color:var(--muted);font-size:11px}.badge.locked{filter:grayscale(1);opacity:.48}.badge.unlocked{border-color:rgba(38,194,129,.45);background:linear-gradient(135deg,rgba(38,194,129,.12),var(--panel-2))}.badge.unlocked .badge-icon{color:#6ee7b7;background:rgba(38,194,129,.18)}
.priority-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:10px;margin-bottom:18px}.priority-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:13px 14px;margin:9px 0;border:1px solid var(--line);background:var(--panel-2);border-radius:12px}.priority-item input{width:18px;height:18px}.priority-item div{display:flex;flex-direction:column}.priority-item span{font-size:12px;color:var(--muted)}.priority-item.done{opacity:.52}.priority-item.done strong{text-decoration:line-through}.priority-item button{padding:6px 10px;color:#fca5a5}.empty{color:var(--muted);padding:20px;text-align:center}
.stack b small{display:block;color:var(--muted);font-size:10px;text-align:right;font-weight:500}.table-scroll{overflow:auto;max-height:70vh}.button-row{display:flex;gap:10px;flex-wrap:wrap}.settings-card{max-width:720px}.settings-card label{display:block;margin:12px 0}.settings-card label input{margin-top:6px}
@media(max-width:900px){.priority-form{grid-template-columns:1fr 1fr}.priority-form input:first-child{grid-column:1/-1}.level-card{grid-template-columns:1fr}.insights{grid-template-columns:1fr}.badge-grid{grid-template-columns:1fr}}

.command-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:14px;margin-bottom:18px}
.command-card{background:linear-gradient(180deg,var(--panel),#101827);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center;min-height:120px}
.command-card small{color:var(--muted);font-weight:750;letter-spacing:.08em}.command-card b{font-size:29px;margin:6px 0}.command-card span,.command-card p{color:var(--muted);margin:4px 0 0}
.primary-command{background:linear-gradient(135deg,#244f9e,#176b61);border-color:rgba(255,255,255,.12)}.primary-command small,.primary-command p{color:rgba(255,255,255,.78)}.primary-command h3{font-size:22px;margin:7px 0}
.close-day{background:linear-gradient(180deg,var(--green),#169765);border-color:transparent;color:white}
.alert{margin-top:14px;padding:12px 14px;border-radius:10px}.alert.success{background:rgba(38,194,129,.13);border:1px solid rgba(38,194,129,.35);color:#8ef0c2}.alert.error{background:rgba(240,92,99,.13);border:1px solid rgba(240,92,99,.35);color:#ffadb2}
.project-form,.routine-form{display:grid;grid-template-columns:1.4fr 1fr 1.6fr 1fr auto;gap:10px;margin-bottom:18px;background:var(--panel-2);padding:14px;border:1px solid var(--line);border-radius:13px}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-card{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;padding:16px}.project-card h4,.routine-item h4{margin:4px 0 7px;font-size:17px}.project-card p{color:var(--muted);min-height:42px}.project-progress{height:8px;background:#0c1422;border-radius:99px;overflow:hidden;margin:12px 0}.project-progress div{height:100%;background:linear-gradient(90deg,var(--blue),var(--green));border-radius:99px}.project-actions{display:flex;align-items:center;gap:10px}.project-actions input{flex:1;padding:0}
.routine-item{display:flex;justify-content:space-between;align-items:center;background:var(--panel-2);border:1px solid var(--line);border-radius:13px;padding:14px;margin:10px 0}.routine-item.overdue{border-color:rgba(240,92,99,.55);box-shadow:inset 3px 0 0 var(--red)}.routine-item small,.routine-item span{color:var(--muted)}.routine-item button{margin-left:7px}.empty-state{color:var(--muted);padding:20px;text-align:center}
@media(max-width:1100px){.command-grid{grid-template-columns:repeat(2,1fr)}.primary-command{grid-column:1/-1}.project-form,.routine-form{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr}}
@media(max-width:680px){.command-grid{grid-template-columns:1fr}.primary-command{grid-column:auto}.project-form,.routine-form{grid-template-columns:1fr}.routine-item{align-items:flex-start;gap:12px;flex-direction:column}}

.header-actions{display:flex;align-items:center;gap:10px}.ghost-action,.command-trigger{background:rgba(255,255,255,.035);border:1px solid var(--line);color:#c8d4e5}.command-trigger{font-size:12px;letter-spacing:.08em}
.premium-hero{display:grid;grid-template-columns:1fr 180px;gap:24px;align-items:center;padding:34px;border-radius:26px;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.14),transparent 26%),linear-gradient(135deg,#163a78,#0f665d);box-shadow:0 28px 70px rgba(19,82,160,.30)}.hero-copy h3{font-size:34px;line-height:1.13;margin:8px 0;max-width:760px}.hero-copy p{color:rgba(255,255,255,.76)}.hero-actions{display:flex;gap:10px;margin-top:22px}.primary-cta{background:#f0b84f;color:#17120a;border-color:#f0b84f}.hero-side{display:flex;justify-content:center}.life-score{width:145px;height:145px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:13px solid rgba(255,255,255,.22);background:rgba(4,13,30,.18)}.life-score span,.life-score small{font-size:11px;color:rgba(255,255,255,.76)}.life-score strong{font-size:32px}.today-strip{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:12px;margin:18px 0}.today-strip>div{background:linear-gradient(180deg,var(--panel),#101827);border:1px solid var(--line);border-radius:14px;padding:14px 16px}.today-strip small{display:block;color:var(--muted);font-size:10px;letter-spacing:.09em;font-weight:800}.today-strip strong{display:block;margin-top:5px}.premium-kpis{margin-top:0}.dashboard-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dashboard-main{grid-column:span 2}.dashboard-side{grid-column:span 1}.text-action{background:transparent;border:0;color:var(--muted);padding:0}.full-width{width:100%;margin-top:10px}.streak-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.streak-row:last-child{border:0}.streak-row small{display:block;color:var(--muted);margin-top:3px}.streak-row b{font-size:25px;color:#f0b84f}.timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.timeline-item{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.timeline-icon{width:34px;height:34px;border-radius:10px;background:var(--panel-2);display:grid;place-items:center;color:#f0b84f}.timeline-item small{color:var(--muted);font-size:10px}.timeline-item strong{display:block;margin-top:2px}.timeline-item p{margin:3px 0 0;color:var(--muted);font-size:13px}.command-palette{position:fixed;inset:0;z-index:100}.command-palette.hidden{display:none}.command-backdrop{position:absolute;inset:0;background:rgba(2,7,16,.72);backdrop-filter:blur(8px)}.command-modal{position:relative;width:min(660px,92vw);margin:12vh auto 0;background:#111a2a;border:1px solid #33435d;border-radius:18px;box-shadow:0 38px 110px rgba(0,0,0,.55);overflow:hidden}.command-search-row{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}.command-search-row input{border:0;background:transparent;box-shadow:none;padding:6px 0}.command-search-row kbd{font-size:11px;background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:4px 7px}.command-results{padding:8px;max-height:410px;overflow:auto}.command-item{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;background:transparent;border:0;padding:11px 12px}.command-item.selected{background:rgba(79,140,255,.13)}.command-item strong,.command-item small{display:block}.command-item small{color:var(--muted);margin-top:2px}.command-item em{font-style:normal;color:var(--muted)}.command-footer{display:flex;gap:18px;padding:10px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.command-empty{padding:28px;text-align:center;color:var(--muted)}.toast{position:fixed;right:24px;bottom:24px;z-index:120;background:#1e2b40;border:1px solid #38506f;border-radius:11px;padding:12px 16px;opacity:0;transform:translateY(12px);pointer-events:none;transition:.22s ease}.toast.show{opacity:1;transform:none}.identity-mode aside nav button:not([data-view="dashboard"]):not([data-view="today"]):not([data-view="analytics"]):not([data-view="game"]){display:none}.identity-mode .dashboard-layout article:nth-of-type(n+6){display:none}.identity-mode .premium-kpis .kpi:nth-child(n+5){display:none}.identity-mode main{max-width:1500px;margin:auto}.identity-mode .premium-hero{min-height:230px}
@media(max-width:1150px){.dashboard-layout{grid-template-columns:1fr 1fr}.dashboard-main,.dashboard-side{grid-column:auto}.today-strip{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:1fr}}@media(max-width:720px){.premium-hero{grid-template-columns:1fr;padding:24px}.hero-side{justify-content:flex-start}.hero-copy h3{font-size:27px}.today-strip,.dashboard-layout{grid-template-columns:1fr}.header-actions .ghost-action{display:none}.command-modal{margin-top:7vh}}

.nutrition-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nutrition-field{display:flex;flex-direction:column;gap:7px}
.nutrition-field.full{grid-column:1/-1}
.nutrition-check{display:flex;align-items:center;gap:10px;background:var(--panel-2);border:1px solid var(--line);border-radius:11px;padding:12px;cursor:pointer}
.nutrition-check input{width:18px;height:18px;accent-color:var(--green)}
.nutrition-score-badge{padding:7px 11px;border-radius:999px;background:rgba(38,194,129,.12);border:1px solid rgba(38,194,129,.35);color:#8ef0c2;font-weight:800}
@media(max-width:680px){.nutrition-form{grid-template-columns:1fr}.nutrition-field.full{grid-column:auto}}

.character-hero{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:26px;background:linear-gradient(135deg,#15233c,#102c35);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);margin-bottom:18px}
.character-avatar{position:relative;width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#315fc3,#198f79);font-size:28px;font-weight:900}.avatar-ring{position:absolute;inset:-7px;border:2px solid rgba(79,140,255,.45);border-radius:50%;box-shadow:0 0 28px rgba(79,140,255,.25)}
.character-identity small,.character-summary small{color:var(--muted);letter-spacing:.1em;font-weight:750}.character-identity h3{font-size:30px;margin:4px 0}.character-identity p{color:var(--muted);margin:0 0 10px}.character-level-bar{height:10px;background:#09111f;border-radius:99px;overflow:hidden}.character-level-bar div{height:100%;background:linear-gradient(90deg,var(--blue),var(--green));transition:width .5s ease}
.character-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.character-summary div{min-width:84px;padding:12px;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.07);border-radius:12px;text-align:center}.character-summary b{display:block;font-size:22px;margin-top:3px}
.rpg-tabs{display:flex;gap:8px;margin:18px 0}.rpg-tab{background:var(--panel-2)}.rpg-tab.active{background:linear-gradient(180deg,var(--blue),var(--blue-2));color:white}
.rpg-panel{display:none}.rpg-panel.active{display:block}
.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.skill-card{border-top:3px solid var(--skill)}.skill-head{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center}.skill-head h4{margin:2px 0;font-size:18px}.skill-head small{color:var(--muted)}.skill-head strong{font-size:18px}.skill-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:rgba(79,140,255,.1);color:var(--skill);font-size:21px}
.skill-progress,.quest-progress{height:8px;background:#09111f;border-radius:99px;overflow:hidden;margin:15px 0 8px}.skill-progress div{height:100%;background:var(--skill)}.quest-progress div{height:100%;background:linear-gradient(90deg,var(--blue),var(--green))}
.skill-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.mini-traits{display:flex;flex-direction:column;gap:5px;margin-top:13px}.mini-traits span{font-size:11px;padding:6px 8px;border-radius:7px;background:var(--panel-2)}.mini-traits .locked{opacity:.45}.mini-traits .unlocked{color:#8ef0c2}
.quest-create,.legacy-create{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:15px;background:var(--panel);border:1px solid var(--line);border-radius:15px;margin-bottom:16px}.quest-create textarea,.legacy-create textarea,.skill-allocation,.quest-create button,.legacy-create button{grid-column:1/-1}
.quest-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.quest-card{position:relative;overflow:hidden}.quest-card.boss{border-color:#8b5cf6;box-shadow:0 16px 42px rgba(139,92,246,.12)}.quest-card.completed{opacity:.78}.quest-banner{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em}.quest-card h4{font-size:18px;margin:10px 0 6px}.quest-card p{color:#c8d3e3;min-height:48px}.quest-card small{color:var(--muted)}.quest-controls{display:flex;gap:8px;align-items:center}.quest-controls input{width:68px}.quest-controls button{padding:8px 10px}.claimed{color:#8ef0c2;font-weight:700}
.skill-allocation{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px;background:var(--panel-2);border-radius:11px}.skill-allocation label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.skill-allocation input{width:72px}
.legacy-timeline{position:relative;margin-top:20px}.legacy-timeline::before{content:"";position:absolute;left:15px;top:4px;bottom:4px;width:2px;background:linear-gradient(var(--blue),var(--green))}.legacy-item{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:0;background:transparent;border:0;box-shadow:none;margin-bottom:14px}.legacy-marker{width:14px;height:14px;border-radius:50%;background:var(--blue);margin:18px 0 0 9px;box-shadow:0 0 0 5px rgba(79,140,255,.13);z-index:1}.legacy-content{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}.legacy-top{display:flex;justify-content:space-between;gap:14px}.legacy-top small{color:var(--muted)}.legacy-top h4{font-size:19px;margin:3px 0}.legacy-top strong{color:#8ef0c2}.legacy-content p{color:#c8d3e3;white-space:pre-wrap}.legacy-skills{font-size:12px;color:var(--muted);margin:9px 0}.legacy-content a{color:#8cb4ff;margin-right:12px}.legacy-content button{color:#ffadb2}
.trait-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trait-card{display:flex;align-items:center;gap:12px;padding:15px;background:var(--panel);border:1px solid var(--line);border-radius:13px}.trait-card>span{font-size:24px}.trait-card small{color:var(--muted)}.trait-card h4{margin:3px 0}.trait-card.locked{opacity:.42}.trait-card.unlocked{border-color:rgba(38,194,129,.4);box-shadow:inset 3px 0 0 var(--green)}
@media(max-width:1150px){.skill-grid,.quest-board,.trait-grid{grid-template-columns:repeat(2,1fr)}.quest-create,.legacy-create{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.character-hero{grid-template-columns:1fr;text-align:center}.character-avatar{margin:auto}.character-summary{grid-template-columns:repeat(3,1fr)}.rpg-tabs{overflow:auto}.skill-grid,.quest-board,.trait-grid,.quest-create,.legacy-create,.skill-allocation{grid-template-columns:1fr}.legacy-top{flex-direction:column}.skill-allocation label{justify-content:space-between}}

.life-map-grid,.knowledge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.life-domain,.knowledge-node{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;padding:16px}.life-domain small,.knowledge-node small{color:var(--muted)}.life-domain b,.knowledge-node b{display:block;font-size:19px;margin:5px 0}.domain-bar{height:8px;background:#09111f;border-radius:99px;overflow:hidden;margin:12px 0}.domain-bar div{height:100%;background:linear-gradient(90deg,var(--blue),var(--green))}.os-form{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}.focus-clock{display:flex;align-items:center;gap:12px;background:var(--panel-2);padding:18px;border-radius:15px;margin-bottom:14px}.focus-clock strong{font-size:42px;letter-spacing:.05em}.knowledge-node.tag{border-color:rgba(167,139,250,.45)}@media(max-width:900px){.life-map-grid,.knowledge-grid{grid-template-columns:repeat(2,1fr)}.os-form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.life-map-grid,.knowledge-grid,.os-form{grid-template-columns:1fr}}

.notification-item{display:flex;justify-content:space-between;gap:18px;padding:15px;background:var(--panel-2);border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;margin:10px 0}.notification-item.warning{border-left-color:var(--amber)}.notification-item.success{border-left-color:var(--green)}.notification-item.read{opacity:.55}.notification-item h4{margin:3px 0}.notification-item p{margin:4px 0;color:var(--muted)}
.memory-grid,.prediction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.memory-card,.prediction-card{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;padding:16px}.memory-card small,.prediction-card small{color:var(--muted)}.memory-card h4,.prediction-card h4{margin:5px 0}.memory-card p,.prediction-card p{color:#c8d3e3}
.difficulty-card{padding:22px;border-radius:17px;margin-bottom:16px;background:linear-gradient(135deg,#1d4ed8,#0f766e);box-shadow:var(--shadow)}.difficulty-card.recovery{background:linear-gradient(135deg,#7c3f16,#3c4b31)}.difficulty-card.ascend{background:linear-gradient(135deg,#5b21b6,#1d4ed8)}.difficulty-card h3{font-size:26px;margin:5px 0}.difficulty-card p{margin:3px 0 10px}
.prediction-ring{--p:50;width:100px;height:100px;border-radius:50%;display:grid;place-items:center;margin:14px auto;background:conic-gradient(var(--blue) calc(var(--p)*1%),#26344b 0)}.prediction-ring span{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:var(--panel-2);font-size:20px;font-weight:800}
.story-create{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;padding:14px;background:var(--panel-2);border-radius:13px;margin-bottom:18px}.story-create textarea,.story-create button{grid-column:1/-1}.story-entry{display:grid;grid-template-columns:110px 1fr;gap:18px}.story-date{color:var(--muted);font-weight:700;padding-top:4px}.story-entry h4{margin:3px 0}.story-entry p{white-space:pre-wrap;color:#c8d3e3}
#voiceTranscript{min-height:180px;margin-bottom:12px}.voice-analysis,.voice-entry{background:var(--panel-2);border:1px solid var(--line);border-radius:13px;padding:15px;margin:12px 0}.voice-entry small{color:var(--muted)}.voice-entry h4{margin:5px 0}.tag{display:inline-block;padding:4px 8px;border-radius:999px;background:rgba(79,140,255,.14);margin:3px;font-size:11px}
@media(max-width:900px){.memory-grid,.prediction-grid{grid-template-columns:repeat(2,1fr)}.story-create{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.memory-grid,.prediction-grid,.story-create{grid-template-columns:1fr}.story-entry{grid-template-columns:1fr}}
