:root{--bg:#0f1114;--pane:#171a1e;--panel:#1d2126;--light:#f1f1ef;--muted:#adb4b9;--border:#363b40;--gold:#e2b675;--ink:#141516;--focus:#ffd28b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--light);font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.5}button,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.shell{max-width:1180px;margin:auto;padding:0 25px}.topbar{height:92px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #2c3034}.identity{display:flex;gap:13px;align-items:center;letter-spacing:.08em}.identity strong{font-size:15px}.identity small{display:block;color:#99a0a4;font-size:10px;font-weight:700;letter-spacing:.2em;margin-top:3px}.mark{width:43px;height:43px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);display:grid;place-items:center;font-size:22px;font-weight:700}.pilot{color:#d7b581;border:1px solid #786347;border-radius:100px;padding:7px 12px;font-size:11px;letter-spacing:.12em;font-weight:700}.intro{padding:57px 0 27px;max-width:840px}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--gold);font-weight:800}.intro h1{font-size:clamp(40px,5.3vw,66px);line-height:1.07;letter-spacing:-.05em;font-weight:750;margin:17px 0}.intro em{color:var(--gold);font-style:normal}.intro p{max-width:690px;color:#b7bec3;font-size:17px;margin:20px 0 0}.notice{border:1px solid #65543d;background:#231f1a;border-radius:10px;padding:14px 17px;display:flex;gap:13px;align-items:flex-start;color:#dcd4c8;font-size:12px;line-height:1.6;margin:8px 0 29px}.notice b{color:#f1dfbf}.notice-icon{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;font-family:serif;flex:none;color:var(--gold)}.workspace{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(275px,1fr);gap:20px;align-items:start}.chat-panel,.daily,.real-help{background:var(--pane);border:1px solid var(--border);border-radius:12px}.chat-panel{padding:27px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:19px}.section-head h2{margin:6px 0 0;font-size:26px;letter-spacing:-.035em}.reset{border:0;background:none;color:#b8bcc2;text-decoration:underline;text-underline-offset:4px;font-size:12px;white-space:nowrap}.tracks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:17px}.track{padding:12px 8px;text-align:left;background:#20242a;border:1px solid #40454b;color:#d7dce0;border-radius:7px;font-size:12px;transition:border-color .15s,background .15s}.track .symbol{color:var(--gold);font-size:17px;margin-right:5px;vertical-align:middle}.track:hover{background:#292f34}.track.active{background:#3d3325;border-color:var(--gold);color:#f8e7c9;font-weight:700}.conversation{height:328px;overflow:auto;background:#121417;border:1px solid #2d3237;border-radius:9px;padding:16px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.message{white-space:pre-wrap;overflow-wrap:anywhere;max-width:90%;padding:12px 15px;border-radius:9px;font-size:14px;line-height:1.7}.message.assistant{color:#e1e3e5;background:#272c31;border-bottom-left-radius:2px}.message.user{align-self:flex-end;background:#53422d;color:#fff3dd;border-bottom-right-radius:2px}.suggestions{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.suggestions button{color:#cbd1d6;border:1px solid #44484d;background:transparent;border-radius:100px;padding:7px 10px;font-size:11px}.suggestions button:hover{border-color:var(--gold)}.composer{border:1px solid #4a4e53;border-radius:10px;overflow:hidden}.composer textarea{width:100%;display:block;border:0;resize:vertical;min-height:85px;max-height:220px;padding:14px;background:#20252a;color:#fff;line-height:1.5}.composer textarea:focus{outline:0}.composer:focus-within{outline:2px solid #c69658}.compose-bottom{background:#20252a;padding:0 11px 11px;display:flex;justify-content:space-between;align-items:center;gap:10px}.region{color:#9da6aa;font-size:11px}.region select{background:transparent;border:0;color:#e2e5e5;max-width:145px}.region select option{background:#1d2126}.compose-bottom>button{background:var(--gold);border:0;border-radius:6px;color:#282019;font-weight:800;padding:11px 13px;font-size:12px}.compose-bottom>button[disabled]{opacity:.6;cursor:wait}.footnote{color:#889096;font-size:10px;line-height:1.6;margin:13px 0 0}.sidebar{display:grid;gap:20px}.daily,.real-help{padding:24px}.daily{background:linear-gradient(150deg,#2e281e,#1e2123 75%)}.sidebar h2{font-size:24px;letter-spacing:-.025em;line-height:1.18;margin:13px 0 14px}.sidebar p{font-size:13px;color:#c7cacf;line-height:1.65;margin:0 0 14px}.lesson-meta{color:#bda882;font-size:11px;padding-top:12px;border-top:1px solid #575044}.linkbutton{margin-top:14px;background:transparent;border:0;padding:0;color:var(--gold);text-align:left;text-decoration:underline;text-underline-offset:5px;font-size:12px;font-weight:800}.script{margin-top:13px;padding:12px;color:#e6ddd0;font-size:12px;line-height:1.7;border-left:2px solid var(--gold);background:#25221f;white-space:pre-wrap}.helplinks{display:grid;gap:1px}.helplinks a{display:block;padding:12px 2px;border-bottom:1px solid #353a40;text-decoration:none}.helplinks a:hover b{color:var(--gold)}.helplinks b{display:block;font-size:13px}.helplinks span{display:block;font-size:11px;color:#acb4ba;margin-top:2px}.resource-list{margin-top:13px;max-height:390px;overflow:auto}.resource-list a{font-size:11px;display:block;padding:8px 0;border-top:1px solid #333;overflow-wrap:anywhere}.resource-list small{display:block;color:#b2b6ba}.footer{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-top:1px solid #292e33;padding:27px 0 38px;margin-top:35px;font-size:11px;color:#a4abb0}.footer b{color:var(--gold);letter-spacing:.12em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:780px){.shell{padding:0 15px}.topbar{height:76px}.intro{padding:35px 0 21px}.intro h1{font-size:clamp(34px,8.5vw,52px)}.intro p{font-size:14px}.workspace{grid-template-columns:1fr}.chat-panel{padding:17px}.sidebar{grid-template-columns:1fr 1fr}.conversation{height:330px}.notice{font-size:11px}}@media(max-width:560px){.sidebar{grid-template-columns:1fr}.topbar .identity strong{font-size:12px}.identity small{font-size:8px}.pilot{font-size:9px;padding:6px 9px}.tracks{grid-template-columns:1fr 1fr}.track{font-size:11px;padding:10px 8px}.track .symbol{margin-right:2px}.section-head h2{font-size:22px}.conversation{height:300px}.message{font-size:13px}.intro h1 br{display:none}.footer{display:block}.footer span{display:block;margin:7px 0}}

.status-line { min-height: 1.3rem; margin: .25rem 1rem; font-size: .85rem; color: #a8b1bc; }

.ai-consent{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;background:#22262a;border-top:1px solid #4e555b;color:#e0e4e7;font-size:12px;line-height:1.5}.ai-consent[hidden]{display:none}.ai-consent input{accent-color:var(--gold);margin-top:3px;flex:none}.footnote{font-size:11px;color:#aab4ba}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Parent-brand emphasis. The Companion remains the product; KC leads visually. */
.topbar{height:auto;min-height:104px;gap:16px;padding:17px 0}
.topbar .identity{min-width:0;gap:16px;letter-spacing:normal}
.topbar .mark{width:55px;height:55px;flex:0 0 55px;font-size:27px;border-width:2px;box-shadow:0 0 0 3px rgba(226,182,117,.07)}
.topbar .brand-lockup{min-width:0}
.topbar .identity .brand-name{display:block;color:var(--light);font-size:clamp(22px,2.4vw,29px);font-weight:850;line-height:1.05;letter-spacing:-.025em;white-space:nowrap}
.topbar .identity .brand-name span{color:var(--gold)}
.topbar .brand-lockup small{font-size:10px;letter-spacing:.18em;margin-top:6px;color:#b7bbc0}
.topbar .pilot{flex:none}
@media (max-width:560px){
  .topbar{min-height:86px;padding:11px 0;gap:8px;flex-wrap:wrap}
  .topbar .identity{gap:9px}
  .topbar .mark{width:42px;height:42px;flex-basis:42px;font-size:21px}
  .topbar .identity .brand-name{font-size:clamp(18px,5vw,22px)}
  .topbar .brand-lockup small{font-size:8px;letter-spacing:.09em;margin-top:4px}
  .topbar .pilot{font-size:9px;letter-spacing:.02em;padding:6px 8px}
}


/* KC warm welcome refresh – presentation-only overrides */
:root{--bg:#11191d;--pane:#1c252a;--panel:#233036;--light:#f7f6f0;--muted:#b9c3c4;--border:#405055;--gold:#f2bf7c;--ink:#171a1a;--focus:#ffe0a4}
body{background:radial-gradient(ellipse at 82% 7%,rgba(106,157,138,.14),transparent 34%),radial-gradient(ellipse at 9% 22%,rgba(242,180,120,.085),transparent 42%),linear-gradient(180deg,#10171c,#121a1e 60%,#111417);background-attachment:fixed;color:var(--light)}
.shell{max-width:1220px;padding:0 28px}
.topbar{min-height:98px;padding:16px 0;border-bottom:1px solid rgba(255,234,200,.14)}
.topbar .mark{border-color:var(--gold);box-shadow:0 0 0 4px rgba(242,191,124,.07);background:linear-gradient(135deg,#2d2b24,#1c2d31)}
.topbar .identity .brand-name{font-size:clamp(24px,2.45vw,30px);letter-spacing:-.03em}
.topbar .brand-lockup small{color:#d4cbc0}
.topbar .pilot{padding:9px 14px;background:rgba(126,176,151,.10);border:1px solid rgba(151,198,172,.55);color:#b6e1c8;font-size:10px;letter-spacing:.09em;text-align:center}
.intro{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(245px,.8fr);gap:36px;align-items:center;max-width:none;padding:48px 0 34px}
.intro-copy{min-width:0}
.intro .eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.12em}
.eyebrow-star{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:rgba(242,191,124,.12);color:var(--gold);font-size:14px}
.intro h1{max-width:790px;margin:17px 0 18px;font-size:clamp(39px,4.25vw,62px);line-height:1.07;letter-spacing:-.052em;font-weight:800;text-wrap:balance}
.intro h1 em{color:var(--gold)}
.intro p{margin:0;max-width:640px;color:#d3dadd;font-size:16px;line-height:1.75}
.hero-promises{display:flex;flex-wrap:wrap;gap:9px 17px;margin-top:24px}
.hero-promises span{font-size:12px;font-weight:650;color:#e6e3d9;white-space:nowrap}
.hero-promises i{font-style:normal;display:inline-grid;place-items:center;margin-right:6px;width:19px;height:19px;border-radius:50%;background:#2b493f;color:#b8e6cc;font-size:11px}
.hero-art{height:274px;position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate;border:1px solid rgba(208,181,142,.22);border-radius:26px;background:radial-gradient(circle at 50% 45%,#34544c,#253838 36%,#212930 70%,#1b2429);box-shadow:0 20px 60px rgba(0,0,0,.13)}
.hero-art:before,.hero-art:after{content:"";position:absolute;border:1px solid rgba(248,209,154,.13);border-radius:50%;width:280px;height:280px;transform:translate(-33%,29%)}
.hero-art:after{width:330px;height:330px;transform:translate(48%,-28%)}
.hero-orbit{width:157px;height:157px;border:1px solid rgba(245,207,152,.43);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 15px rgba(245,207,152,.035),0 0 0 34px rgba(245,207,152,.028)}
.hero-orbit-inner{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#eac58f,#be8850);color:#28342f;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.hero-orbit-inner span{font-size:41px;font-weight:850;letter-spacing:-.065em}
.hero-art-caption{position:absolute;bottom:20px;right:22px;text-align:right;font-size:10px;line-height:1.5;letter-spacing:.19em;font-weight:750;color:#e9d5b8}
.notice{margin:0 0 24px;border-color:#596057;background:linear-gradient(100deg,rgba(48,60,54,.94),rgba(45,41,33,.95));border-radius:14px;padding:13px 17px;font-size:12px;color:#dddcd4;line-height:1.65}
.notice b{color:#fff1d9}
.notice-icon{width:27px;height:27px;font-size:15px;background:rgba(242,191,124,.08)}
.workspace{grid-template-columns:minmax(0,1.73fr) minmax(285px,1fr);gap:22px}
.chat-panel,.daily,.real-help{border-radius:20px;border-color:#455156;box-shadow:0 15px 38px rgba(0,0,0,.13)}
.chat-panel{padding:28px;background:linear-gradient(165deg,#202d32,#1c262b 36%,#1a2429)}
.section-head{margin-bottom:19px}
.section-head h2{font-size:27px;line-height:1.2;letter-spacing:-.036em}
.reset{color:#e1d0bb;font-size:12px;text-underline-offset:6px}
.eyebrow{font-size:10px;letter-spacing:.17em;color:#efba76}
.tracks{gap:10px;margin-bottom:18px}
.track{min-height:69px;display:flex;align-items:center;gap:10px;text-align:left;font-size:13px;font-weight:660;padding:12px 13px;border:1px solid #4c5a5d;border-radius:13px;color:#f0eeea;background:linear-gradient(135deg,#28343a,#222e33);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:transform .16s,border-color .16s,background .16s}
.track .symbol{flex:0 0 35px;width:35px;height:35px;display:inline-grid;place-items:center;border-radius:11px;background:#3b4749;color:#f2c48a;font-size:18px;margin:0}
.track.active{border-color:#f2bd79;background:linear-gradient(125deg,#54432f,#42392d);color:#fff3e3;box-shadow:0 0 0 1px rgba(242,191,124,.12)}
.track.active .symbol{background:#735637;color:#ffe3ac}
.track:hover{background:#354247;border-color:#91aa9f;transform:translateY(-1px)}
.track.active:hover{background:#5a4631;border-color:var(--gold)}
.conversation{height:328px;border-color:#39494b;background:linear-gradient(160deg,#141d21,#162025 76%);padding:19px;border-radius:15px;gap:13px}
.message{max-width:92%;font-size:14px;line-height:1.65;padding:15px 18px;border-radius:17px}
.message.assistant{background:linear-gradient(135deg,#34433f,#29383a);border:1px solid #4d665e;color:#f5f5ee;border-bottom-left-radius:4px}
.message.user{background:linear-gradient(135deg,#786044,#5d4b38);color:#fff6e8;border-bottom-right-radius:4px}
.suggestions{gap:9px;margin:15px 0}
.suggestions button{font-size:12px;padding:9px 13px;border-radius:11px;color:#e9e3d5;border:1px solid #626150;background:rgba(242,191,124,.065);transition:border-color .15s,background .15s}
.suggestions button:hover{background:rgba(242,191,124,.14);border-color:var(--gold)}
.composer{border-color:#60716d;border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.composer textarea{background:#233037;color:#fdfbf6;min-height:95px;padding:17px;font-size:14px}
.composer textarea::placeholder{color:#bac5c6;opacity:1}
.compose-bottom{background:#233037;padding:0 13px 13px}
.region{font-size:12px;color:#c3d1ce}
.region select{color:#fff6e8}
.compose-bottom>button{border-radius:10px;padding:12px 18px;min-height:43px;background:linear-gradient(135deg,#f9cf94,#ebae67);font-size:13px;box-shadow:0 5px 16px rgba(242,191,124,.13)}
.compose-bottom>button:hover{filter:brightness(1.07)}
.ai-consent{background:#283537;color:#e6edeb;font-size:12px;border-color:#586d67}
.status-line{color:#dae0d8}
.footnote{color:#b9c7c9;font-size:11px;line-height:1.7}
.sidebar{gap:21px}
.daily{background:linear-gradient(151deg,#433b2e,#2b302d 56%,#202a2d);border-color:#76634a;position:relative;overflow:hidden}
.daily:before{content:"✦";position:absolute;right:17px;top:8px;font-size:46px;color:rgba(244,201,140,.14);pointer-events:none}
.real-help{background:linear-gradient(145deg,#273b3b,#1c2a30 70%);border-color:#4b6863}
.daily,.real-help{padding:25px}
.sidebar h2{font-size:24px;line-height:1.22}
.sidebar p{color:#d5dcda;font-size:13px}
.lesson-meta{color:#edce99}
.helplinks a{padding:12px 4px;border-color:#455c5a;border-radius:7px}
.helplinks b{color:#f0f3ec}
.helplinks a:hover{background:rgba(255,255,255,.035)}
.helplinks span{color:#c1ccca}
.linkbutton{font-size:12px}
.footer{margin-top:34px;border-top-color:#3d4a4c;color:#c0c9c8}
.footer b{font-size:12px;letter-spacing:.13em}
@media(max-width:920px){.intro{grid-template-columns:1fr;gap:18px;padding:38px 0 22px}.hero-art{display:none}.workspace{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.shell{padding:0 18px}.intro h1{font-size:clamp(36px,7.5vw,53px)}.intro p{font-size:15px}.chat-panel{padding:22px}.sidebar{grid-template-columns:1fr 1fr}.notice{margin-bottom:20px}.track{min-height:62px}}
@media(max-width:600px){.shell{padding:0 15px}.topbar{min-height:79px;padding:12px 0;gap:8px}.topbar .identity{gap:9px}.topbar .mark{width:41px;height:41px;flex-basis:41px;font-size:21px}.topbar .identity .brand-name{font-size:clamp(17px,4.7vw,21px)}.topbar .brand-lockup small{font-size:8px;letter-spacing:.08em;margin-top:4px}.topbar .pilot{padding:6px 8px;font-size:9px;letter-spacing:0;max-width:103px;line-height:1.25}.intro{padding:27px 0 20px}.intro .eyebrow{font-size:9px;letter-spacing:.065em;gap:6px}.eyebrow-star{width:22px;height:22px}.intro h1{font-size:clamp(31px,8.5vw,42px);line-height:1.1;letter-spacing:-.043em;margin:12px 0}.intro p{font-size:14px;line-height:1.65}.hero-promises{margin-top:16px;gap:7px 12px}.hero-promises span{font-size:10px}.hero-promises i{width:16px;height:16px;margin-right:4px;font-size:9px}.notice{padding:12px 13px;font-size:11px;line-height:1.6;border-radius:13px}.chat-panel{padding:16px;border-radius:17px}.section-head h2{font-size:22px}.tracks{grid-template-columns:1fr 1fr;gap:8px}.track{min-height:64px;font-size:11px;gap:7px;padding:9px 8px;line-height:1.3}.track .symbol{flex-basis:29px;width:29px;height:29px;font-size:15px;border-radius:8px}.conversation{height:310px;padding:13px}.message{font-size:13px;padding:12px 13px}.suggestions button{font-size:11px;padding:9px 10px}.compose-bottom{flex-wrap:wrap}.compose-bottom>button{margin-left:auto}.sidebar{grid-template-columns:1fr;gap:15px}.daily,.real-help{padding:19px;border-radius:17px}.footer{display:block}.footer span{display:block;margin-top:7px}}
@media(max-width:360px){.topbar{flex-wrap:wrap}.topbar .pilot{margin-left:50px}.intro h1{font-size:31px}.track{font-size:10px}.hero-promises{gap:5px 9px}}
@media(prefers-reduced-motion:reduce){.track,.suggestions button{transition:none!important;transform:none!important}}


/* KC brand palette correction: charcoal, steel, ivory; restrained champagne-gold. */
:root{
  --bg:#101217;
  --pane:#1c2027;
  --panel:#272d36;
  --light:#f7f7f5;
  --muted:#b6bac3;
  --border:#464c55;
  --gold:#d6b47d;
  --ink:#18191e;
  --focus:#ffe0aa;
}
body{
  color:var(--light);
  background:radial-gradient(ellipse at 90% 9%,rgba(167,176,196,.105),transparent 42%),
             radial-gradient(ellipse at 0% 56%,rgba(95,102,116,.075),transparent 41%),
             linear-gradient(180deg,#111318 0%,#17191f 60%,#111216 100%);
  background-attachment:fixed;
}
.topbar{border-bottom-color:#363b44}
.topbar .mark{border-color:#d0b07c;background:linear-gradient(135deg,#292c31,#17191d);color:#e6c693;box-shadow:0 0 0 4px rgba(229,229,235,.035)}
.topbar .brand-lockup small{color:#c2c4cb}
.topbar .pilot{color:#e0e3e8;background:rgba(217,222,232,.07);border:1px solid #5b626d}
.intro .eyebrow,.eyebrow,.hero-art-caption{color:#c8ad89}
.eyebrow-star{background:#292a2b;color:#dcc094}
.intro h1 em{color:#ebe9e5}
.intro p{color:#c9cbd2}
.hero-promises span{color:#e3e3e2}
.hero-promises i{background:#343943;color:#e3e6ea;border:1px solid #5d6470}
.hero-art{
  border-color:#515663;
  background:radial-gradient(circle at 48% 36%,#414752 0%,#292e38 44%,#191e26 100%);
  box-shadow:0 20px 55px rgba(0,0,0,.18);
}
.hero-art:before,.hero-art:after{border-color:rgba(223,225,233,.12)}
.hero-orbit{border-color:rgba(224,227,235,.46);box-shadow:0 0 0 15px rgba(214,218,225,.035),0 0 0 34px rgba(214,218,225,.025)}
.hero-orbit-inner{background:linear-gradient(140deg,#f1f0e8,#adb2bc);color:#232934}
.hero-art-caption{color:#dadce3}
.notice{
 border-color:#4c515b;
 background:linear-gradient(100deg,#272b33,#24242a);
 color:#d3d6dd;
}
.notice b{color:#f6f6f2}
.notice-icon{color:#d6b47d;border-color:#a48a60;background:#31323a}
.chat-panel,.daily,.real-help{border-color:#464c56;box-shadow:0 15px 38px rgba(0,0,0,.13)}
.chat-panel{background:linear-gradient(160deg,#252932 0%,#1e222a 50%,#1a1e24 100%)}
.section-head h2{color:#f3f3f2}
.reset{color:#d8d8dc}
.track{border-color:#4b515b;background:linear-gradient(135deg,#303641,#282d36);color:#e5e7ed;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.track .symbol{background:#3e424d;color:#e4d2b7}
.track:hover{background:#414750;border-color:#8d949e}
.track.active{background:linear-gradient(125deg,#444751,#343841);border-color:#d6b47d;color:#fffdf7;box-shadow:inset 0 0 0 1px rgba(214,180,125,.08)}
.track.active .symbol{background:#5c544a;color:#ffe1b4}
.track.active:hover{background:#4a4b53;border-color:#e1c392}
.conversation{background:linear-gradient(165deg,#15191e,#1b2027);border-color:#3b424c}
.message.assistant{background:linear-gradient(135deg,#353b45,#2e343e);border-color:#545d6a;color:#f3f4f6}
.message.user{background:linear-gradient(135deg,#515666,#414855);color:#fff}
.suggestions button{color:#e4e4e8;border-color:#555b66;background:#2b3039}
.suggestions button:hover{background:#383d45;border-color:#c4a678}
.composer{border-color:#616772}
.composer textarea,.compose-bottom{background:#292e37;color:#fafafa}
.composer textarea::placeholder{color:#bfc2cb}
.compose-bottom>button{background:linear-gradient(135deg,#f0e9de,#d6d5d4);color:#25272a;box-shadow:0 5px 16px rgba(0,0,0,.16)}
.compose-bottom>button:hover{filter:brightness(1.08)}
.region{color:#d0d2d9}
.region select{color:#fafafa}
.ai-consent{background:#30343e;color:#e1e2e7;border-color:#545b66}
.status-line,.footnote{color:#bfc2cc}
.daily{background:linear-gradient(149deg,#393d46 0%,#282d36 56%,#20242c 100%);border-color:#555b66}
.daily:before{color:rgba(230,228,224,.11)}
.real-help{background:linear-gradient(145deg,#30363f,#20252d 78%);border-color:#555c69}
.sidebar p{color:#d5d6dc}
.lesson-meta{color:#cfc8bc}
.helplinks a{border-color:#474e59}
.helplinks b{color:#f0f0f3}
.helplinks span{color:#c7c8ce}
.linkbutton{color:#e6c38c}
.footer{border-top-color:#3d424a;color:#c4c6ca}
.footer b{color:#e0bd85}


/* First-visit informed-choice gate: do not render Companion before acceptance. */
body.kc-gated .shell{display:none!important}
.kc-gate[hidden]{display:none!important}
.kc-gate{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:28px 16px;box-sizing:border-box;background:radial-gradient(ellipse at 15% 0%,rgba(218,185,135,.12),transparent 44%),radial-gradient(ellipse at 90% 100%,rgba(126,133,150,.16),transparent 50%),#101217;color:#f7f7f5}
.kc-gate-panel{width:min(730px,100%);padding:32px 37px 28px;border:1px solid #494d56;border-radius:23px;background:linear-gradient(150deg,#242831,#1b2028 73%,#1b1d24);box-shadow:0 26px 70px rgba(0,0,0,.4);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}
.kc-gate-brand{display:flex;gap:12px;align-items:center}
.kc-gate-mark{width:44px;height:44px;display:grid;place-items:center;border:2px solid #d6b47d;border-radius:50%;color:#e6c693;font-size:23px;font-weight:800;flex:none}
.kc-gate-brand strong{font-size:21px;letter-spacing:-.03em;display:block;line-height:1.1}
.kc-gate-brand em{font-style:normal;color:#d6b47d}
.kc-gate-brand small{display:block;font-size:9px;letter-spacing:.17em;color:#bcc0c9;margin-top:4px;font-weight:700}
.kc-gate-kicker{margin:28px 0 8px;color:#d6b47d;font-size:10px;letter-spacing:.2em;font-weight:800}
.kc-gate h1{font-size:clamp(30px,5vw,42px);letter-spacing:-.047em;line-height:1.11;margin:8px 0 13px;max-width:660px}
.kc-gate h1 em{font-style:normal;color:#e8d0ab}
.kc-gate-intro{margin:0 0 21px;color:#d5d6dc;font-size:14px;line-height:1.65}
.kc-gate-rules{border:1px solid #4c5058;border-radius:14px;background:#191d24;padding:10px 18px;display:grid;gap:0}
.kc-gate-rules p{margin:0;padding:10px 0;font-size:12.5px;line-height:1.62;color:#cfd1d9}
.kc-gate-rules p+p{border-top:1px solid #333942}
.kc-gate-rules strong{color:#f2f2ef}
.kc-gate a{color:#f4cf96;text-decoration:underline;text-underline-offset:3px}
.kc-gate-mode{display:flex;align-items:center;gap:8px;margin:16px 0;color:#e8d6bd;font-size:12px;font-weight:700}
.kc-gate-mode:before{content:"●";color:#d6b47d;font-size:11px}
#entryGateForm{display:grid;gap:12px}
.kc-gate-check{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid #50545c;background:#292d36;border-radius:11px;cursor:pointer;font-size:13px;line-height:1.55;color:#e8e9ec}
.kc-gate-check input{margin-top:3px;flex:none;min-width:19px;min-height:19px;accent-color:#d6b47d;cursor:pointer}
#gateEnter{width:100%;min-height:50px;border:none;border-radius:12px;margin-top:5px;background:linear-gradient(135deg,#e4d3bb,#caa36b);color:#22252a;font-size:14px;font-weight:800;padding:14px 16px;transition:opacity .12s,filter .12s;cursor:pointer}
#gateEnter span{padding-left:7px}
#gateEnter:disabled{opacity:.43;cursor:not-allowed}
#gateEnter:not(:disabled):hover{filter:brightness(1.06)}
.kc-gate-foot{color:#aeb2bc;font-size:11px;text-align:center;margin:13px 0 0}
@media(max-width:560px){.kc-gate{display:block;padding:12px}.kc-gate-panel{padding:22px 18px;border-radius:17px}.kc-gate-kicker{margin-top:22px}.kc-gate h1{font-size:32px}.kc-gate-rules{padding:7px 12px}.kc-gate-rules p{font-size:12px}.kc-gate-check{font-size:12px;padding:11px}.kc-gate-brand strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){#gateEnter{transition:none}}


/* Kauri's Corner verified member sign-in screen */
.kc-member-signin{display:block;text-align:center;text-decoration:none;margin-top:24px;padding:15px 17px;border-radius:12px;background:linear-gradient(135deg,#f0e6d9,#d5b783);color:#252831;font-weight:800;font-size:14px;border:1px solid #d6b47d;box-shadow:0 6px 18px rgba(0,0,0,.14)}
.kc-member-signin:hover{filter:brightness(1.05);color:#171b22}
.kc-member-signin:focus-visible{outline:3px solid #ffdb98;outline-offset:4px}
.kc-gate a.kc-member-signin{color:#23262b;text-decoration:none}.kc-gate a.kc-member-signin:hover{color:#171a1e}
.kc-member-signin span{padding-left:7px}
#memberSignout{color:#d6b47d;text-decoration:underline;text-underline-offset:4px;font-size:12px}
#memberSignout[hidden]{display:none!important}
