:root{--bg:#050807;--panel:#0e1311;--raised:#111614;--raised-2:#171d1b;--raised-3:#18201d;--on-bg:#14201b;--line:#ffffff0f;--line-2:#ffffff14;--line-3:#ffffff1a;--text:#fff;--text-2:#e3e8e6;--muted:#c9cfcd;--dim:#a3ada9;--faint:#8e9894;--track:#26302c;--track-2:#2e3935;--accent:#c2f7e1;--ink:#06110d;--amber:#ffc97a;--amber-2:#ffd59e;--amber-hot:#ffb547;--blue:#a8c8ff;--red:#e5484d;--wrong:#ff8a8d;--green:#4ade80;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-tap-highlight-color:transparent;font-family:Outfit,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--text);overscroll-behavior:none;margin:0;line-height:1.4}button{font:inherit;color:inherit;cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:default}input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}p{margin:0}.accent{color:var(--accent)}.error{color:var(--wrong)}.safe-top{padding-top:calc(var(--safe-top) + 10px)}.safe-bottom{padding-bottom:calc(var(--safe-bottom) + 12px)}.screen{background:var(--bg);flex-direction:column;gap:16px;width:100%;max-width:480px;min-height:100dvh;margin:0 auto;padding:0 16px;display:flex;position:relative}.screen.tabbed{padding-bottom:calc(var(--safe-bottom) + 96px)}.splash{justify-content:center;align-items:center}.kicker{letter-spacing:1.2px;color:var(--dim);text-transform:uppercase;font-size:11px}.kicker.accent{color:var(--accent)}.sq-btn{background:var(--raised);border:1px solid var(--line-2);min-width:44px;height:44px;color:var(--text);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;font-size:15px;display:inline-flex}.sq-btn.wide{border-color:var(--line-3);padding:0 14px}.sq-spacer{width:44px}.bar{align-items:center;gap:12px;min-height:56px;display:flex}.bar.spread{justify-content:space-between}.bar-center{font-size:17px;font-weight:600}.bar-titles{flex-direction:column;gap:1px;display:flex}.bar-titles b{font-size:18px;font-weight:600}.bar-titles span{color:var(--dim);font-size:13px}.text-link{color:var(--text);font-size:14px}.text-link.plain{color:var(--muted);height:44px;padding:0 4px;font-size:15px;text-decoration:none}.cta{background:var(--accent);width:100%;height:58px;color:var(--ink);border-radius:18px;justify-content:space-between;align-items:center;padding:0 22px;font-size:18px;font-weight:600;transition:transform .12s,opacity .2s;display:flex}.cta:active:not(:disabled){transform:scale(.98)}.cta:disabled{opacity:.4}.cta-call{background:var(--accent);width:100%;height:52px;color:var(--ink);border-radius:16px;justify-content:center;align-items:center;gap:8px;font-size:17px;font-weight:600;display:flex}.cta-call:active{transform:scale(.98)}.btn-dark{background:#141b18;border:1px solid #ffffff1f;border-radius:16px;flex-shrink:0;height:54px;padding:0 22px;font-size:16px;font-weight:500}.ghost-link{height:44px;color:var(--text);justify-content:center;align-items:center;width:100%;font-size:16px;display:flex}.soft-note{text-align:center;color:var(--accent);font-size:13px}.chip-btn{height:28px;color:var(--muted);letter-spacing:0;border:1px solid #ffffff24;border-radius:8px;padding:0 10px;font-size:12px}.chip-btn.retry{color:var(--accent);align-self:flex-start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:16px}.search{background:var(--panel);border:1px solid var(--line-3);height:46px;color:var(--dim);border-radius:16px;flex-shrink:0;align-items:center;gap:12px;padding:0 16px;display:flex}.search input{min-width:0;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:16px}.search input::placeholder{color:var(--dim)}.switch{background:var(--track-2);border-radius:15px;flex-shrink:0;justify-content:flex-start;width:50px;height:30px;padding:3px;transition:background .2s;display:flex}.switch i{background:var(--muted);border-radius:50%;width:24px;height:24px;transition:transform .2s,background .2s}.switch.on{background:var(--accent)}.switch.on i{background:var(--ink);transform:translate(20px)}.radio{width:24px;height:24px;color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 0 0 1.5px #ffffff40}.radio.on{background:var(--accent);box-shadow:none}.row-link{text-align:left;border-radius:20px;align-items:center;gap:14px;width:100%;padding:14px 16px;display:flex}.row-icon{width:44px;height:44px;color:var(--muted);background:#0a0f0d;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.row-icon.blue{color:#b9c8f5;background:#1a1f2e}.row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-text b{font-size:16px;font-weight:600}.row-text span{color:var(--dim);font-size:13px}.row-link>.icon{color:var(--dim);flex-shrink:0}.welcome{gap:0;padding:0 24px;overflow:hidden}.welcome-top{padding-top:calc(var(--safe-top) + 22px);justify-content:space-between;align-items:center;display:flex}.mode-pill{border:1px solid var(--line-3);letter-spacing:1px;height:30px;color:var(--muted);background:#121816;border-radius:10px;align-items:center;gap:6px;padding:0 12px;font-size:12px;display:flex}.mode-pill .icon{color:var(--accent)}.cast{flex-shrink:0;height:368px;margin:16px -24px 0;position:relative}.cast-card{background:var(--tint-bg);border:1px solid var(--line-3);border-radius:24px;flex-direction:column;gap:10px;padding:8px;animation:.7s cubic-bezier(.2,.9,.3,1.1) both deal;display:flex;position:absolute;box-shadow:0 16px 36px #0000008c}.cast-card.left{z-index:1;width:132px;height:210px;top:46px;left:14px;transform:rotate(-8deg)}.cast-card.right{z-index:1;width:132px;height:210px;animation-delay:80ms;top:46px;left:auto;right:14px;transform:rotate(8deg)}.cast-card.lead{z-index:2;border:1.5px solid var(--tint);width:160px;height:250px;margin-left:-80px;animation-delay:.16s;top:10px;left:50%}@keyframes deal{0%{opacity:0;translate:0 24px}}.cast-art{background:#00000059;border:1.5px dashed #ffffff2e;border-radius:18px;flex:1;justify-content:center;align-items:flex-end;display:flex;overflow:hidden}.cast-art .avatar{width:100%;height:100%}.cast-meta{flex-direction:column;gap:2px;padding:0 4px 2px;display:flex}.cast-name{white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600;overflow:hidden}.cast-role{letter-spacing:1px;color:var(--tint);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.cast-picker{flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;top:290px;left:0;right:0}.cast-dots{border:1px solid var(--line-3);background:#0f1513;border-radius:999px;align-items:center;gap:8px;padding:6px;display:flex}.cast-dots>span:not(.cast-dots-label){background:var(--tint-bg);border:1.5px solid var(--tint);border-radius:50%;width:34px;height:34px}.cast-dots>span.on{border-width:2px;width:40px;height:40px;box-shadow:0 0 0 4px #c2f7e124}.cast-dots-label{color:var(--muted);padding:0 10px 0 4px;font-size:13px}.cast-caption{letter-spacing:1.2px;color:var(--dim);font-size:12px}.welcome-copy{flex-direction:column;margin-top:auto;display:flex}.welcome-copy h1{letter-spacing:-.6px;margin:0;font-size:38px;font-weight:600;line-height:1.12}.welcome-copy>p:not(.fine):not(.soft-note){color:var(--dim);margin-top:12px;font-size:16px;line-height:1.45}.welcome-copy .cta{margin-top:22px}.welcome-copy .ghost-link{margin-top:4px}.fine{color:var(--dim);text-align:center;margin-top:4px;font-size:12px;line-height:1.55}.fine button{color:var(--muted);text-underline-offset:2px;text-decoration:underline}.step{gap:0;height:100dvh;min-height:0;padding:0}.step-head{flex-shrink:0;align-items:center;gap:14px;min-height:56px;padding-left:16px;padding-right:16px;display:flex}.step-progress{flex-direction:column;flex:1;gap:6px;display:flex}.step-progress>span:first-child{letter-spacing:1.5px;color:var(--dim);font-size:12px}.step-bars{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.step-bars i{background:var(--track);border-radius:3px;height:5px;transition:background .3s}.step-bars i.on{background:var(--accent)}.skip{min-width:32px;height:44px;color:var(--muted);flex-shrink:0;align-items:center;padding:0 6px;font-size:15px;display:flex}.step-body{flex-direction:column;flex:1;min-height:0;padding:22px 20px 8px;display:flex;overflow-y:auto}.step-body h1{letter-spacing:-.3px;margin:0;font-size:30px;font-weight:600;line-height:1.2}.step-body h1.h28{margin-top:20px;font-size:28px}.lede{color:var(--dim);font-size:15px;line-height:1.45;margin-top:10px!important}.step-foot{padding:14px 20px 0;padding-bottom:calc(var(--safe-bottom) + 16px);flex-shrink:0}.step .search{margin-top:14px}.pick{background:var(--raised);border:1.5px solid var(--line);text-align:left;border-radius:18px;width:100%;transition:background .2s,border-color .2s}.pick.on{background:var(--on-bg);border-color:var(--accent)}.pick-text{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.pick-text b{font-size:16px;font-weight:600}.pick-text span{color:var(--dim);font-size:12px;line-height:1.3}.tick{background:var(--accent);width:22px;height:22px;color:var(--ink);opacity:0;border-radius:50%;justify-content:center;align-items:center;transition:opacity .2s;display:flex}.pick.on .tick{opacity:1}.lang-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.pick.lang{flex-direction:column;justify-content:space-between;height:100px;padding:12px 14px;display:flex}.pick.lang.soon{opacity:.55}.pick-top{justify-content:space-between;align-items:flex-start;width:100%;display:flex}.world-card{background:var(--tint-bg);border:1px solid var(--tint-line);border-radius:22px;align-items:center;gap:14px;padding:16px;display:flex}.world-icon{width:60px;height:60px;color:var(--tint);background:#00000059;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.world-text{flex-direction:column;gap:3px;min-width:0;display:flex}.world-kicker{letter-spacing:1.2px;color:var(--tint,var(--amber));font-size:11px}.world-text b{font-size:22px;font-weight:600}.world-switch{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.world-switch button{background:var(--raised);border:1px solid var(--line-3);height:34px;color:var(--muted);border-radius:11px;padding:0 12px;font-size:13px}.world-switch button.on{background:var(--on-bg);border-color:var(--accent);color:var(--text)}.cast-list{flex-direction:column;gap:8px;margin-top:16px;display:flex}.cast-row{background:var(--panel);border:1px solid var(--line);border-radius:18px;align-items:center;gap:12px;padding:10px;display:flex}.cast-thumb{background:var(--tint-bg);border:1.5px dashed #ffffff2e;border-radius:14px;flex-shrink:0;align-items:flex-end;width:56px;height:64px;display:flex;overflow:hidden}.cast-thumb .avatar{width:100%;height:100%}.cast-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.cast-row-text b{font-size:17px;font-weight:600}.cast-row-text>span:last-child{color:var(--dim);font-size:13px;line-height:1.35}.level-list{flex-direction:column;gap:10px;margin-top:22px;display:flex}.pick.level{align-items:center;gap:14px;min-height:76px;padding:14px;display:flex}.pick.level .pick-text{flex:1;gap:3px}.pick.level .pick-text span{font-size:13px;line-height:1.35}.level-icon{background:#0a0f0d;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.tip{background:var(--panel);color:var(--muted);border-radius:14px;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.tip .icon{color:var(--accent);flex-shrink:0}.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.pick.goal{border-radius:20px;flex-direction:column;justify-content:space-between;align-items:flex-start;height:126px;padding:16px;display:flex}.goal-top{justify-content:space-between;align-items:flex-start;width:100%;display:flex}.goal-label{letter-spacing:1px;color:var(--dim);font-size:13px}.goal-num{color:var(--muted);white-space:nowrap;align-items:baseline;gap:4px;font-size:15px;display:flex}.goal-num b{color:var(--text);font-size:40px;font-weight:600;line-height:1}.reminder{background:var(--raised);border:1.5px solid var(--line);text-align:left;border-radius:18px;align-items:center;gap:14px;width:100%;height:68px;margin-top:14px;padding:0 16px;display:flex}.reminder .pick-text{flex:1}.reminder .pick-text span{font-size:13px}.reminder-icon{width:40px;height:40px;color:var(--muted);background:#0a0f0d;border-radius:12px;justify-content:center;align-items:center;display:flex}.notebook-hero{background:#0c110f;border:1px solid #ffffff12;border-radius:26px;flex-shrink:0;justify-content:center;align-items:center;gap:18px;height:176px;display:flex}.hero-a,.hero-b{border-radius:28px;justify-content:center;align-items:center;width:96px;height:96px;display:flex}.hero-a{background:var(--accent);color:var(--ink);transform:rotate(-6deg)}.hero-b{background:#1a211e;border:1px solid #ffffff1f;transform:rotate(6deg)}.hero-plus{background:var(--raised);border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.notebook-hero+h1{margin-top:24px!important}.tips{flex-direction:column;gap:12px;margin:20px 0 0;padding:0;list-style:none;display:flex}.tips li{color:var(--text-2);align-items:center;gap:12px;font-size:15px;line-height:1.35;display:flex}.tips li>span{background:var(--raised);border:1px solid var(--line-2);width:34px;height:34px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tips li>span.warm{color:var(--amber)}.tips li>span.cool{color:#b9c8f5}.name-field{flex-direction:column;gap:8px;margin-top:22px;display:flex}.name-field span{letter-spacing:.3px;color:var(--dim);font-size:13px}.name-field input{background:var(--panel);border:1px solid var(--line-3);border-radius:14px;outline:none;height:50px;padding:0 14px;font-size:16px}.name-field input:focus{border-color:var(--accent)}.home-head{padding-top:calc(var(--safe-top) + 16px);justify-content:space-between;align-items:center;display:flex}.home-head>div:first-child{flex-direction:column;gap:2px;display:flex}.hello{color:var(--dim);font-size:14px}.home-head h1{margin:0;font-size:26px;font-weight:600}.home-badges{align-items:center;gap:8px;display:flex}.streak-badge{height:40px;color:var(--amber);white-space:nowrap;background:#1c160b;border:1px solid #ffb5474d;border-radius:12px;align-items:center;gap:6px;padding:0 12px;font-size:16px;font-weight:600;display:flex}.streak-badge .icon{color:var(--amber-hot)}.streak-badge.sm{border-radius:11px;height:36px;font-size:14px}.me-btn{background:var(--raised-3);border:1.5px solid var(--accent);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.streak-panel{flex-direction:column;gap:14px;display:flex}.streak-row{justify-content:space-between;align-items:center;display:flex}.streak-row>div{flex-direction:column;gap:2px;display:flex}.streak-row b{font-size:20px;font-weight:600}.streak-row span{color:var(--dim);font-size:13px}.streak-row .flame-big{color:var(--amber-hot)}.week{justify-content:space-between;display:flex}.day{color:var(--dim);flex-direction:column;align-items:center;gap:6px;font-size:11px;display:flex}.day .dot{background:var(--raised-3);width:34px;height:34px;color:var(--amber-hot);border-radius:50%;justify-content:center;align-items:center;display:flex}.day .dot.played{background:#3a2a0e}.day .dot.today{border:2px dashed var(--amber-hot);background:0 0}.who{flex-direction:column;gap:10px;display:flex}.section-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.section-head h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:18px;font-weight:600;overflow:hidden}.section-head .text-link{flex-shrink:0}.who-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.who-tab{background:var(--panel);border:1.5px solid var(--line);text-align:center;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:108px;padding:10px 6px;display:flex}.who-tab.on{background:var(--tint-bg);border-color:var(--tint)}.who-avatar{background:var(--tint-bg);border:2px dashed #ffffff2e;border-radius:50%;width:44px;height:44px;display:flex;overflow:hidden}.who-tab.on .who-avatar{border:2px solid var(--tint)}.who-avatar .avatar{width:100%;height:100%}.who-tab b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:600;overflow:hidden}.who-tab>span:last-child{color:var(--dim);font-size:11px}.call-card{background:var(--tint-bg);border:1px solid var(--tint);border-radius:24px;flex-direction:column;gap:14px;padding:16px;display:flex}.call-card-row{gap:14px;display:flex}.art{background:#0e1512;border:1.5px dashed #ffffff2e;border-radius:20px;flex-shrink:0;align-items:flex-end;width:92px;height:112px;display:flex;overflow:hidden}.art.sm{background:#00000059;border-radius:18px;width:76px;height:92px}.art.md{border-radius:18px;width:84px;height:100px}.art .avatar{width:100%;height:100%}.call-card-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.call-card-text b{font-size:22px;font-weight:600;line-height:1.15}.call-card-text .ep{color:var(--muted);font-size:14px}.call-card-text .hook{color:var(--dim);margin-top:6px;font-size:13px;line-height:1.4}.note-banner{color:#f2e6d2;background:#1c1810;border:1px solid #ffd59e40;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.note-banner .icon{color:var(--amber-2);flex-shrink:0}.story-card{background:var(--tint-bg);border:1px solid var(--line-3);border-radius:22px;flex-direction:column;gap:12px;padding:14px;display:flex}.story-row{gap:14px;display:flex}.story-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.story-text b{font-size:20px;font-weight:600}.story-text .sub{color:var(--muted);font-size:13px}.eps{gap:3px;margin-top:6px;display:grid}.eps i{background:var(--track-2);border-radius:2px;height:4px}.eps i.on{background:var(--tint)}.story-card .small,.story-text .small{color:var(--dim);font-size:12px}.trust-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.trust{flex-direction:column;flex:1;gap:5px;display:flex}.trust>span{color:var(--muted);font-size:12px}.trust-bar{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden}.trust-bar i{background:var(--tint);border-radius:3px;height:100%;transition:width .6s;display:block}.call-sm{background:var(--accent);height:40px;color:var(--ink);border-radius:12px;align-items:center;gap:8px;padding:0 16px;font-size:15px;font-weight:600;display:flex}.about{flex-direction:column;gap:8px;display:flex}.about p{color:var(--muted);font-size:14px;line-height:1.5}.other-worlds{flex-direction:column;gap:8px;display:flex}.recap{gap:0;height:100dvh;min-height:0}.recap .bar{flex-shrink:0}.recap-body{flex-direction:column;flex:1;gap:24px;min-height:0;padding:10px 4px 18px;display:flex;overflow-y:auto}.recap-hero{align-items:flex-end;gap:14px;display:flex}.recap-hero>div{flex-direction:column;gap:4px;display:flex}.recap-hero .kicker{letter-spacing:1.5px;font-size:12px}.recap-hero h1{margin:0;font-size:30px;font-weight:600;line-height:1.1}.recap-hero .sub{color:var(--muted);font-size:14px}.recap-summary{color:var(--text-2);font-size:16px;line-height:1.55}.recap-summary b{font-weight:500}.recap-section{flex-direction:column;gap:14px;display:flex}.recap-section h2{letter-spacing:1.2px;color:var(--dim);margin:0;font-size:13px;font-weight:500}.timeline{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.timeline li{--tint:var(--accent);flex-direction:column;gap:3px;padding-left:32px;display:flex;position:relative}.timeline li.you{--tint:var(--amber-2)}.timeline .node{background:var(--bg);border:2px solid var(--tint);border-radius:50%;width:18px;height:18px;position:absolute;top:4px;left:0}.timeline li:not(:last-child):before{content:"";background:var(--track);width:2px;position:absolute;top:22px;bottom:-14px;left:8px}.timeline .who{letter-spacing:1.2px;color:var(--tint);font-size:11px}.timeline .said{font-size:15px;line-height:1.4}.timeline .tr{color:var(--dim);font-size:13px;line-height:1.4}.word-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.word-chip{background:var(--panel);border:1px solid var(--line-2);text-align:left;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.word-chip>span:last-child{flex-direction:column;gap:1px;min-width:0;display:flex}.word-chip b{font-size:15px;font-weight:600}.word-chip>span:last-child>span{color:var(--dim);font-size:12px}.play-dot{width:30px;height:30px;color:var(--accent);background:#141b18;border:1px solid #c2f7e14d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.quick-check{border-color:var(--line-2);border-radius:20px;flex-direction:column;gap:10px;display:flex}.quick-check .kicker{font-size:12px}.quick-check .q{font-size:17px;font-weight:600}.quick-check .q-sub{color:var(--dim);margin-top:-6px;font-size:13px}.answer{border:1.5px solid var(--line-2);text-align:left;background:#141917;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:48px;padding:10px 14px;font-size:15px;display:flex}.answer.right{background:var(--on-bg);border-color:var(--accent)}.answer.wrong{border-color:var(--wrong);background:#221413}.answer.reveal{border-style:dashed;border-color:var(--accent)}.answer .mark{color:var(--accent);flex-shrink:0;font-size:13px;font-weight:600}.answer.wrong .mark{color:var(--wrong)}.dock{padding:12px 16px 0;padding-bottom:calc(var(--safe-bottom) + 14px);background:#080c0b;border-top:1px solid #ffffff12;flex-shrink:0;margin:0 -16px}.dock .cta-call{border-radius:18px;height:56px}.dock-row{gap:10px;display:flex}.dock-row .cta-call{flex:1;height:54px;font-size:16px}.call{gap:0;height:100dvh;min-height:0;padding:0;overflow:hidden}.call .bar{padding:0 16px;padding-top:calc(var(--safe-top) + 6px);flex-shrink:0}.call-title{text-align:center;flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex}.call-title b{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:16px;font-weight:600;overflow:hidden}.call-title>span{color:var(--dim);white-space:nowrap;align-items:center;gap:6px;max-width:100%;font-size:13px;display:flex;overflow:hidden}.live-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:7px;height:7px}.portrait-zone{flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:10px;height:196px;display:flex}.portrait{border:2px dashed #ffffff2e;border-radius:28px;width:128px;height:148px;padding:4px;transition:box-shadow .3s,border-color .3s}.portrait.live{border:2px solid var(--accent);box-shadow:0 0 0 6px #c2f7e11a,0 0 36px #c2f7e14d}.portrait.talking{animation:1.3s ease-in-out infinite glow}.portrait.listening{border-color:var(--amber-2);box-shadow:0 0 0 6px #ffd59e1f,0 0 36px #ffd59e40}@keyframes glow{50%{box-shadow:0 0 0 10px #c2f7e124,0 0 52px #c2f7e16b}}.portrait-inner{background:#0e1512;border-radius:24px;justify-content:center;align-items:flex-end;width:100%;height:100%;display:flex;overflow:hidden}.portrait-inner .avatar{width:100%;height:100%}.call-status{color:var(--accent);text-align:center;min-height:20px;padding:0 16px;font-size:14px}.call-status.muted{color:var(--dim)}.transcript{background:#0c110f;border:1px solid #ffffff12;border-radius:26px;flex-direction:column;flex:1;gap:12px;min-height:0;margin:0 12px;padding:16px 16px 0;display:flex;overflow:hidden}.transcript-head{letter-spacing:1.5px;color:var(--dim);justify-content:space-between;align-items:center;font-size:12px;display:flex}.transcript-list{scrollbar-width:none;flex-direction:column;flex:1;gap:16px;min-height:0;padding-bottom:16px;display:flex;overflow-y:auto}.transcript-list::-webkit-scrollbar{display:none}.t-line{align-items:flex-start;gap:10px;display:flex}.t-line>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.play-btn{width:36px;height:36px;color:var(--accent);background:#141b18;border:1px solid #c2f7e14d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.play-btn.on{background:var(--accent);border-color:var(--accent);color:var(--ink)}.t-line .who{letter-spacing:1.5px;color:var(--dim);font-size:11px}.t-line .who.accent{color:var(--accent)}.t-text{color:var(--muted);margin:0;font-size:16px;line-height:1.4}.t-text .words-text{font-size:inherit;line-height:inherit}.t-text.live{color:#5e6a66;font-size:18px;font-weight:500}.t-text.live .said{color:var(--text)}.t-text.draft{color:var(--dim);font-style:italic}.t-tr{color:var(--dim);margin:0;font-size:13px;line-height:1.4}.t-line.narrator .t-text{font-size:15px;font-style:italic}.struck{text-decoration:line-through;-webkit-text-decoration-color:var(--amber-2);text-decoration-color:var(--amber-2);color:var(--dim)}.fix-box{background:#1c1810;border:1px solid #ffd59e47;border-radius:12px;flex-direction:column;gap:3px;margin-top:3px;padding:10px 12px;display:flex}.fix-text{color:var(--text);font-size:15px}.fix-text .added,.added{color:var(--amber-2);font-weight:600}.fix-note{color:#c9c2b4;font-size:12px;line-height:1.4}.dots{gap:6px;margin:14px 0;display:flex}.dots i{background:var(--accent);opacity:.3;border-radius:50%;width:7px;height:7px;animation:1s infinite dots}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dots{40%{opacity:1;transform:translateY(-3px)}}.type-row{flex-shrink:0;gap:8px;margin:10px 12px 0;display:flex}.type-row input{background:var(--panel);border:1px solid var(--line-3);border-radius:14px;outline:none;flex:1;min-width:0;height:48px;padding:0 14px;font-size:16px}.type-row input:focus{border-color:var(--accent)}.send-btn{background:var(--accent);width:48px;height:48px;color:var(--ink);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.send-btn:disabled{opacity:.4}.call-error{text-align:center;color:var(--amber-2);margin:6px 16px 0;font-size:13px}.controls{padding:16px 22px 0;padding-bottom:calc(var(--safe-bottom) + 16px);flex-shrink:0;justify-content:space-between;align-items:flex-start;display:flex}.ctl{width:64px;color:var(--dim);flex-direction:column;align-items:center;gap:6px;font-size:12px;display:flex}.round{background:var(--raised-2);border:1px solid var(--line-3);width:60px;height:60px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:flex}.round:disabled{opacity:.4}.round.inverse{color:var(--ink);background:#fff;border-color:#fff}.round.accent{background:var(--accent);border-color:var(--accent);color:var(--ink)}.round.end{background:var(--red);border-color:var(--red)}.ctl-text{font-size:15px;font-weight:600}.sheet-backdrop{z-index:50;background:#0000008c;justify-content:center;align-items:flex-end;animation:.2s fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.bottom-sheet{width:100%;max-width:480px;max-height:86dvh;padding:12px 20px;padding-bottom:calc(var(--safe-bottom) + 22px);background:#0c110f;border:1px solid #ffffff12;border-bottom:0;border-radius:26px 26px 0 0;flex-direction:column;gap:12px;animation:.3s cubic-bezier(.2,.9,.3,1) rise;display:flex;position:relative;overflow-y:auto}@keyframes rise{0%{opacity:0;transform:translateY(40px)}}.grabber{background:#2a322f;border-radius:3px;align-self:center;width:40px;height:5px;margin-bottom:4px}.sheet-text{color:var(--text-2);font-size:16px;line-height:1.45}.hint-say{background:var(--panel);border:1px solid var(--line-2);border-radius:14px;flex-direction:column;gap:6px;padding:14px;display:flex}.hint-say .words-text{font-size:20px;font-weight:600}.goal-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.goal-list li{align-items:center;gap:12px;font-size:15px;display:flex}.goal-list li.done{color:var(--dim)}.goal-list li.done .radio{background:var(--accent);box-shadow:none}.goal-list .radio{width:22px;height:22px}.set-line{justify-content:space-between;align-items:center;gap:14px;min-height:48px;font-size:15px;display:flex}.segmented,.seg{background:var(--raised-3);border-radius:11px;flex-shrink:0;gap:3px;padding:3px;display:inline-flex}.segmented button,.seg button{height:30px;color:var(--muted);border-radius:9px;padding:0 10px;font-size:13px}.segmented button.on,.seg button.on{background:var(--accent);color:var(--ink);font-weight:600}.end-sheet{overflow:hidden}.end-sheet h2{margin:0;font-size:28px;font-weight:600}.confetti{pointer-events:none;position:absolute;inset:0}.confetti i{top:-10px;left:calc(var(--i) * 6%);background:hsl(calc(var(--i) * 47), 70%, 70%);width:6px;height:11px;animation:fall calc(1.6s + var(--i) * 50ms) ease-in forwards;animation-delay:calc(var(--i) * 40ms);border-radius:2px;position:absolute}@keyframes fall{to{transform:translateY(380px) rotate(calc(var(--i) * 70deg));opacity:0}}.option{background:var(--raised);border:1.5px solid var(--line);border-radius:14px;justify-content:space-between;align-items:center;width:100%;min-height:50px;padding:0 14px;font-size:15px;display:flex}.option.on{background:var(--on-bg);border-color:var(--accent)}.option .icon{color:var(--accent)}.sheet-input{background:var(--panel);border:1px solid var(--line-3);border-radius:14px;outline:none;width:100%;height:50px;margin:10px 0 12px;padding:0 14px;font-size:16px}.sheet-input:focus{border-color:var(--accent)}.tabbar{z-index:40;width:100%;max-width:480px;padding:8px 10px 0;padding-bottom:calc(var(--safe-bottom) + 10px);background:#080c0b;border-top:1px solid #ffffff12;justify-content:space-between;align-items:flex-start;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab{width:64px;height:50px;color:var(--faint);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;display:flex}.tab.on{color:var(--accent)}.tab .icon{width:24px;height:24px}.tab-create{background:var(--accent);width:56px;height:56px;color:var(--ink);border-radius:20px;justify-content:center;align-items:center;margin-top:-18px;display:flex;box-shadow:0 6px 20px #c2f7e140}.page-head{padding-top:calc(var(--safe-top) + 16px);justify-content:space-between;align-items:center;gap:12px;display:flex}.page-head>div{flex-direction:column;gap:2px;min-width:0;display:flex}.page-head h1,.page-h1{letter-spacing:-.3px;margin:0;font-size:28px;font-weight:600}.page-h1{padding-top:calc(var(--safe-top) + 16px)}.page-head>div>span{color:var(--dim);font-size:14px}.create-btn{background:var(--accent);height:44px;color:var(--ink);border-radius:14px;flex-shrink:0;align-items:center;gap:6px;padding:0 16px;font-size:15px;font-weight:600;display:flex}.community .search{height:48px}.chips{scrollbar-width:none;flex-shrink:0;gap:8px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips.wrap{flex-wrap:wrap;overflow:visible}.chips button{background:var(--raised);border:1px solid var(--line-3);height:36px;color:var(--text-2);border-radius:11px;flex-shrink:0;padding:0 14px;font-size:14px}.chips button.on{background:var(--accent);border-color:var(--accent);color:var(--ink)}.soon-card{text-align:center;background:#101a16;border:1px solid #c2f7e12e;border-radius:24px;flex-direction:column;align-items:center;gap:10px;padding:22px 18px;display:flex}.soon-icon{width:64px;height:64px;color:var(--accent);background:#00000059;border-radius:20px;justify-content:center;align-items:center;display:flex}.soon-card b{font-size:20px;font-weight:600}.soon-card p{color:var(--muted);font-size:14px;line-height:1.45}.soon-card .cta-call{border-radius:14px;height:44px;margin-top:6px;font-size:15px}.create{gap:0;height:100dvh;min-height:0}.create .bar{flex-shrink:0}.create-body{flex-direction:column;flex:1;gap:18px;min-height:0;padding:8px 0 16px;display:flex;overflow-y:auto}.idea-card{background:#101a16;border:1px solid #c2f7e133;border-radius:18px;align-items:center;gap:12px;padding:14px;display:flex}.idea-card .pick-text b{font-size:15px}.idea-card .pick-text span{font-size:13px;line-height:1.35}.idea-icon{background:var(--accent);width:40px;height:40px;color:var(--ink);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field>span{letter-spacing:1px;color:var(--dim);font-size:13px}.field input,.field textarea,.field select{background:var(--panel);border:1px solid var(--line-3);width:100%;color:var(--text);border-radius:14px;outline:none;padding:13px 14px;font-size:15px}.field select{appearance:none;height:48px;padding:0 14px}.field textarea{resize:none;line-height:1.45}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent)}.two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.level-seg{background:var(--panel);border:1px solid var(--line-3);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;height:48px;padding:4px;display:grid}.level-seg button{color:var(--muted);border-radius:10px;font-size:13px}.level-seg button.on{background:var(--accent);color:var(--ink);font-weight:600}.char-row{background:var(--panel);border:1px solid var(--line-2);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.initials{color:#ff9a9a;background:#2a1013;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:600;display:flex}.char-inputs{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.char-inputs input{background:0 0;border:0;border-radius:0;padding:2px 0;font-size:15px;font-weight:600}.char-inputs input+input{color:var(--dim);font-size:12px;font-weight:400}.icon-sq{width:36px;height:36px;color:var(--muted);border:1px solid #ffffff1f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.add-char{height:48px;color:var(--muted);text-align:center;border:1.5px dashed #fff3;border-radius:14px;font-size:15px}.settings{gap:22px}.profile-card{background:#101a16;border:1px solid #c2f7e129;border-radius:22px;align-items:center;gap:14px;padding:16px;display:flex}.profile-pic{background:var(--raised-3);border:2px solid var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.profile-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.profile-text b{font-size:18px;font-weight:600}.profile-text span{color:var(--dim);font-size:13px}.edit-btn{border:1px solid #ffffff29;border-radius:11px;flex-shrink:0;height:36px;padding:0 14px;font-size:14px}.set-section{flex-direction:column;gap:8px;display:flex}.set-section h2{letter-spacing:1.2px;color:var(--dim);margin:0 0 0 4px;font-size:13px;font-weight:500}.set-group{background:var(--panel);border:1px solid var(--line);border-radius:20px;overflow:hidden}.set-row{text-align:left;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;font-size:15px;display:flex;position:relative}.set-row+.set-row:before{content:"";background:var(--line);height:1px;position:absolute;top:0;left:60px;right:0}.set-icon{background:var(--raised-3);width:34px;height:34px;color:var(--muted);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.set-label{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.set-label small{color:var(--dim);font-size:12px}.set-value{color:var(--dim);white-space:nowrap;font-size:14px}.set-row .chev{color:var(--dim);flex-shrink:0}.foot-note{text-align:center;color:var(--faint);font-size:12px}.legal{gap:0;height:100dvh;min-height:0}.legal .bar{flex-shrink:0}.legal-tabs{background:var(--panel);border:1px solid var(--line-2);border-radius:14px;flex-shrink:0;grid-template-columns:1fr 1fr 1.5fr;gap:4px;margin:4px 0 12px;padding:4px;display:grid}.legal-tabs button{height:36px;color:var(--muted);text-align:center;border-radius:10px;font-size:14px}.legal-tabs button.on{background:var(--accent);color:var(--ink);font-weight:600}.legal-body{flex-direction:column;flex:1;gap:20px;min-height:0;padding:8px 4px 24px;display:flex;overflow-y:auto}.legal-title{flex-direction:column;gap:6px;display:flex}.legal-title h1{letter-spacing:-.3px;margin:0;font-size:28px;font-weight:600}.legal-title span{color:var(--dim);font-size:13px}.short-box{background:#101a16;border:1px solid #c2f7e129;border-radius:18px;flex-direction:column;gap:10px;padding:16px;display:flex}.short-box .kicker{font-size:12px}.short-box ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.short-box li{color:var(--text-2);padding-left:16px;font-size:14px;line-height:1.5;position:relative}.short-box li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:0}.legal-body section{flex-direction:column;gap:8px;display:flex}.legal-body h3{margin:0;font-size:17px;font-weight:600}.legal-body p{color:var(--muted);font-size:15px;line-height:1.6}.page-title-row{padding-top:calc(var(--safe-top) + 16px);justify-content:space-between;align-items:flex-start;display:flex}.page-title{letter-spacing:-.3px;margin:0;font-size:28px;font-weight:600}.page-title-row p{color:var(--dim);margin-top:2px;font-size:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:16px}.review-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:190px;display:flex}.review-card .kicker{font-size:12px}.review-card .kicker.mint{color:var(--accent)}.flash{align-items:center;gap:10px;font-size:32px;font-weight:600;display:inline-flex}.flash .icon{color:var(--accent)}.flash-gloss{font-size:18px}.example{font-size:14px;font-style:italic}.dim{color:var(--dim)}.small{font-size:13px}.two-btns{gap:10px;width:100%;display:flex}.two-btns .btn-dark{flex:1}.cta-wide{background:var(--accent);width:100%;height:52px;color:var(--ink);border-radius:16px;flex:1;justify-content:center;align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.segmented.wide{background:var(--panel);border:1px solid var(--line-2);border-radius:14px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.segmented.wide button{height:36px;font-size:14px}.list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.list .row-link{border-radius:16px;padding:10px 12px}.round-icon{width:36px;height:36px;color:var(--accent);background:#141b18;border:1px solid #c2f7e14d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.star{color:var(--dim);padding:4px 8px;font-size:22px}.star.on{color:var(--amber)}.fix-card{flex-direction:column;gap:4px;display:flex}.fix-card .t-text{color:var(--text);font-size:15px}.empty{text-align:center;color:var(--dim);padding:24px}.words{position:relative}.words-text{overflow-wrap:anywhere;margin:0}.word{text-underline-offset:4px;border-radius:5px;margin:0 -1px;padding:0 1px;-webkit-text-decoration:underline dotted #ffffff47;text-decoration:underline dotted #ffffff47}.word.active{background:#c2f7e133}.word.saved{-webkit-text-decoration:underline solid var(--amber);text-decoration:underline solid var(--amber);text-decoration-thickness:2px}.ghost{visibility:hidden}.words.under .words-text{flex-wrap:wrap;align-items:flex-start;gap:4px 6px;display:flex}.words.under .word{flex-direction:column;align-items:flex-start;text-decoration:none;display:inline-flex}.words.under .w{text-underline-offset:5px;-webkit-text-decoration:underline #ffffff8c;text-decoration:underline #ffffff8c;text-decoration-thickness:2px}.words.under .g{color:var(--dim);margin-top:4px;font-size:11px;font-weight:400}.word-pop{color:var(--text);background:#161c1a;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;font-size:14px;font-style:normal;font-weight:400;display:flex}.word-pop .lemma{font-weight:600}.word-pop .meaning{min-width:5em;color:var(--dim);flex:1}.word-pop .chip{border:1px solid var(--line-3);border-radius:9px;padding:4px 10px;font-size:12px}.word-pop .chip.on{background:var(--amber);border-color:var(--amber);color:#2a1d0b}.avatar{-webkit-user-select:none;user-select:none;position:relative}.avatar svg,.avatar img{width:100%;height:100%;display:block}.avatar.portrait img{object-fit:cover;object-position:top}.avatar .breathe{transform-origin:100px 240px;animation:4.2s ease-in-out infinite breathe}@keyframes breathe{50%{transform:translateY(1.8px)scaleY(.995)}}.avatar .head{transform-box:view-box;transition:transform .5s cubic-bezier(.3,1.4,.5,1)}.avatar .blink{transform-origin:100px 106px;transform-box:view-box;animation:5.2s infinite blink}@keyframes blink{0%,94%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}.avatar .mouth-talk{opacity:0;transform-origin:100px 133px;transform-box:view-box}.avatar.speaking .mouth-shape{opacity:0}.avatar.speaking .mouth-talk{opacity:1;animation:.22s ease-in-out infinite alternate talk}@keyframes talk{0%{transform:scaleY(.25)scaleX(.9)}to{transform:scaleY(1.1)}}.flag{flex-shrink:0}.level-bars{display:block}@media (height<=700px){.cast{height:330px}.welcome-copy h1{font-size:32px}.portrait-zone{height:160px}.portrait{width:104px;height:120px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.avatar.placeholder{flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;display:flex}.avatar.placeholder svg{width:32%;min-width:18px;max-width:38px;height:auto}.avatar.placeholder span{letter-spacing:1px;color:var(--faint);text-align:center;font-size:11px;line-height:1.4}.cast-art,.cast-thumb,.art,.portrait-inner,.who-avatar{justify-content:center;align-items:center}.who-avatar .avatar.placeholder svg{width:22px}
