*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}html,body{overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}textarea{font:inherit}:root{--bg:#f4efe6;--surface:#fbf8f2;--surface-2:#efe7d9;--ink:#2b2621;--ink-dim:#6a625a;--ink-faint:#a1978b;--line:#e5dccb;--accent:#c2622d;--accent-soft:#f1dcc7;--accent-ink:#fff;--ok:#4f8a4a;--ok-soft:#dcecd8;--warn:#b78321;--warn-soft:#f4e6c6;--no:#b8503f;--no-soft:#f2d9d2;--char-ab:#b5527e;--char-lera:#2f8f86;--char-mikhalych:#7a7358;--char-model:#7b5bd6;--char-default:var(--ink-dim);--font-ui:-apple-system, "Segoe UI", Roboto, system-ui, sans-serif;--font-story:Georgia, "Iowan Old Style", "Times New Roman", serif;--radius:16px;--radius-sm:11px;--shadow:0 2px 14px #3c2d1e17;--shadow-lift:0 6px 22px #3c2d1e24;--safe-top:calc(max(env(safe-area-inset-top,0px), var(--tg-safe-area-inset-top,0px)) + var(--tg-content-safe-area-inset-top,0px));--safe-bottom:calc(max(env(safe-area-inset-bottom,0px), var(--tg-safe-area-inset-bottom,0px)) + var(--tg-content-safe-area-inset-bottom,0px))}:root[data-theme=dark]{--bg:#1a1714;--surface:#241f1b;--surface-2:#2f2822;--ink:#efe7db;--ink-dim:#b3a899;--ink-faint:#7c7264;--line:#38312a;--accent:#e58c50;--accent-soft:#3a2a1c;--accent-ink:#1a1714;--ok:#7cb877;--ok-soft:#263127;--warn:#e0b45a;--warn-soft:#352c1b;--no:#e28471;--no-soft:#382320;--char-ab:#e888b0;--char-lera:#5fc2b6;--char-mikhalych:#bdb387;--char-model:#b39bff;--shadow:0 2px 16px #00000059;--shadow-lift:0 8px 26px #00000073}html{background:var(--bg)}body{font-family:var(--font-ui);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior-y:none;font-size:17px;line-height:1.5}.app{height:var(--app-h,100%);background:var(--bg);flex-direction:column;max-width:460px;margin:0 auto;display:flex;position:relative}.narrative,.msg-text,.post-body,.player-input,.insight-text,.ba-col,.spot-text,.task-instruction,.task-result,.note-title,.note-text{-webkit-user-select:text;user-select:text}.resbar{z-index:20;padding:calc(var(--safe-top) + 8px) 16px 9px;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);flex-direction:column;gap:7px;display:flex;position:sticky;top:0}.resbar-row{align-items:center;gap:12px;display:flex}.ep-row{align-items:center;gap:10px;display:flex}.ep-label{min-width:0;color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12.5px;font-weight:600;overflow:hidden}.ep-label-total{font-weight:500}.ep-segs{flex:none;gap:4px;display:flex}.ep-seg{background:var(--line);border-radius:2px;width:14px;height:4px;transition:background .5s}.ep-seg.done{background:color-mix(in srgb, var(--accent) 55%, var(--line))}.ep-seg.now{background:var(--accent)}.ep-seg--lock{border:1px dashed var(--ink-faint);width:18px;height:12px;color:var(--ink-faint);background:0 0;border-radius:4px;place-items:center;margin:-4px 0;display:grid}.res{color:var(--ink-dim);align-items:center;gap:7px;font-size:15px;font-weight:600;display:flex}.res-time{font-variant-numeric:tabular-nums;position:relative}.res-time .res-ico{color:var(--accent)}.res-ico{font-size:16px;line-height:1}.res-spacer{flex:1}.trust{flex-direction:column;align-items:flex-end;gap:4px;min-width:0;display:flex}.trust-bar{gap:3px;display:flex}.trust-seg{background:var(--line);border-radius:3px;width:15px;height:6px;transition:background .5s}.trust-seg.on{background:var(--accent)}.trust-seg--pop{animation:.7s cubic-bezier(.2,1.4,.4,1) both trust-pop}@keyframes trust-pop{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 60%, transparent);transform:scale(.6)}55%{box-shadow:0 0 10px 2px color-mix(in srgb, var(--accent) 45%, transparent);transform:scale(1.45)}to{box-shadow:none;transform:none}}.trust--down .trust-bar{animation:.5s both trust-shake}@keyframes trust-shake{0%,to{transform:none}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(1px)}}.res-chip{white-space:nowrap;pointer-events:none;border-radius:999px;margin-left:7px;padding:2px 8px;font-size:12.5px;font-weight:700;animation:1.8s both chip-float;position:absolute;top:50%;left:100%;transform:translateY(-50%)}.res-chip--neg{color:var(--no);background:var(--no-soft)}.res-chip--pos{color:var(--ok);background:var(--ok-soft)}@keyframes chip-float{0%{opacity:0;transform:translateY(calc(6px - 50%))}15%,70%{opacity:1;transform:translateY(-50%)}to{opacity:0;transform:translateY(calc(-50% - 8px))}}.trust-label{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:12.5px;font-weight:500;overflow:hidden}.notebook-btn{background:var(--surface-2);width:34px;height:34px;color:var(--ink-dim);border-radius:10px;justify-content:center;align-items:center;font-size:17px;display:flex;position:relative}.notebook-btn:before{content:"";position:absolute;inset:-6px}.feed{padding:18px 16px calc(var(--dock-h,96px) + 20px);flex-direction:column;flex:1;gap:16px;display:flex;overflow-y:auto}.feed-end{height:4px;scroll-margin-bottom:calc(var(--dock-h,96px) + 14px)}.block{scroll-margin-top:8px;scroll-margin-bottom:calc(var(--dock-h,96px) + 14px);animation:.42s cubic-bezier(.2,.7,.25,1) both rise}:is(.block:has(>.narrative),.block:has(>.chat--live),.block:has(>.insight--fresh)){animation:none}.block:has(>.player-input){justify-content:flex-end;display:flex}.block:has(>[data-testid=block-taskPrompt]){animation:.36s cubic-bezier(.25,1,.5,1) both task-prompt-in}@keyframes task-prompt-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.narrative{font-family:var(--font-story);color:var(--ink);white-space:pre-wrap;border-left:2px solid var(--accent-soft);padding:2px 2px 2px 14px;font-size:18px;line-height:1.62}.tw-caret{background:var(--accent);vertical-align:-.15em;width:2px;height:1.05em;margin-left:1px;animation:.9s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.tw-hint{height:0;font-family:var(--font-ui);color:var(--ink-faint);margin-top:6px;font-size:12px;transition:opacity .3s;overflow:visible}.tw-hint--off{opacity:0}.chat{flex-direction:column;gap:8px;display:flex}.msg-row{align-items:flex-end;gap:8px;display:flex}.msg-row--player{justify-content:flex-end}.msg-ava{object-fit:cover;border:1.5px solid var(--line);background:var(--surface-2);width:34px;height:34px;box-shadow:var(--shadow);border-radius:50%;flex:none}.msg-ava--letter{color:var(--char,var(--ink-dim));place-items:center;font-size:15px;font-weight:700;display:grid}.msg-ava-gap{flex:none;width:34px}.msg{background:var(--surface);max-width:84%;box-shadow:var(--shadow);border:1px solid var(--line);border-radius:16px 16px 16px 5px;padding:10px 13px}.msg--player{background:var(--accent);color:var(--accent-ink);border-radius:16px 16px 5px}.msg-name{color:var(--char,var(--char-default));margin-bottom:3px;font-size:12.5px;font-weight:700}.msg-text{white-space:pre-wrap;font-size:16.5px;line-height:1.42}.chat--live .msg--typing{animation:.26s cubic-bezier(.25,1,.5,1) both rise}.chat--live .msg:not(.msg--typing){animation:.28s cubic-bezier(.25,1,.5,1) both message-in}@keyframes message-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.typing-dots{gap:4px;padding:5px 2px 3px;display:inline-flex}.typing-dots i{background:var(--ink-faint);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite pulse}.typing-dots i:nth-child(2){animation-delay:.18s}.typing-dots i:nth-child(3){animation-delay:.36s}.post{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.post-tag{letter-spacing:.03em;text-transform:uppercase;color:var(--ink-faint);background:var(--surface-2);border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:8px 14px;font-size:12.5px;font-weight:700;display:flex}.post-body{white-space:pre-wrap;padding:14px;font-size:16.5px;line-height:1.5}.post--email .post-body{font-family:var(--font-story)}.post--model_chat{border-style:dashed;border-color:color-mix(in srgb, var(--char-model) 45%, var(--line))}.post--model_chat .post-tag{color:var(--char-model)}.post-caption{color:var(--ink-faint);padding:0 14px 12px;font-size:13.5px}.player-input{background:var(--accent);max-width:84%;color:var(--accent-ink);white-space:pre-wrap;box-shadow:var(--shadow);border-radius:16px 16px 5px;align-self:flex-end;padding:10px 14px;font-size:16.5px;line-height:1.42}.task-result{border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-dim);align-items:flex-start;gap:9px;padding:11px 14px;font-size:15.5px;line-height:1.45;display:flex}.task-result:before{content:"✦";color:var(--accent)}.insight{border-radius:var(--radius);background:linear-gradient(160deg, var(--accent-soft), var(--surface));border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));box-shadow:var(--shadow-lift);padding:18px;position:relative;overflow:hidden}.insight--fresh{animation:.5s cubic-bezier(.2,1.2,.4,1) both insight-in}.insight--fresh:after{content:"";background:linear-gradient(115deg, transparent 30%, color-mix(in srgb, var(--accent) 14%, transparent) 48%, transparent 62%);pointer-events:none;animation:1s .25s both insight-sweep;position:absolute;inset:0;transform:translate(-110%)}@keyframes insight-in{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:none}}@keyframes insight-sweep{to{transform:translate(110%)}}.insight-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.insight-stamp{border:1px solid color-mix(in srgb, var(--ok) 55%, var(--line));color:var(--ok);letter-spacing:.04em;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:11.5px;font-weight:700;display:inline-flex;transform:rotate(3deg)}.insight--fresh .insight-stamp{animation:.45s cubic-bezier(.2,1.6,.4,1) .35s both stamp-in}@keyframes stamp-in{0%{opacity:0;transform:rotate(10deg)scale(1.6)}to{opacity:1;transform:rotate(3deg)scale(1)}}.insight-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:700}.insight-title{margin:4px 0 8px;font-size:20px;font-weight:700;line-height:1.25}.insight-text{font-family:var(--font-story);white-space:pre-wrap;font-size:16.5px;line-height:1.55}.skill-delta{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.skill-chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:14px;font-weight:600;animation:.5s cubic-bezier(.2,1.4,.4,1) both pop;display:inline-flex}.skill-chip b{color:var(--ok)}@keyframes pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}.before-after{grid-template-columns:1fr 1fr;align-items:start;gap:10px;display:grid}.ba-col{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);white-space:pre-wrap;padding:13px;font-size:15px;line-height:1.45}.ba-col--after{border-color:color-mix(in srgb, var(--ok) 45%, var(--line));background:var(--ok-soft)}.ba-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);margin-bottom:6px;font-size:12px;font-weight:700}.ba-col--after .ba-label{color:var(--ok)}.chapter-end{text-align:center;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lift);padding:22px 16px;position:relative}.chapter-end-kicker{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:11.5px;font-weight:700}.chapter-credits{border-top:1px dashed var(--line);color:var(--ink-faint);margin-top:16px;padding-top:12px;font-size:12.5px;font-style:italic}.confetti{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.confetti-bit{top:-12px;left:var(--cx);opacity:0;width:7px;height:11px;transform:rotate(var(--cr));animation:confetti-fall 1.9s cubic-bezier(.25, .4, .6, 1) var(--cd) both;border-radius:2px;position:absolute}.confetti-bit--round{border-radius:50%;width:8px;height:8px}@keyframes confetti-fall{0%{opacity:0;transform:translateY(0) rotate(var(--cr))}12%{opacity:1}to{opacity:0;transform:translateY(300px) rotate(calc(var(--cr) * 6))}}.next-chapter{border-radius:var(--radius-sm);text-align:left;background:var(--surface-2);border:1px dashed color-mix(in srgb, var(--accent) 45%, var(--line));margin-top:16px;padding:16px 15px}.next-chapter-kicker{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);font-size:11.5px;font-weight:700}.next-chapter-title{margin:5px 0 9px;font-size:17.5px;font-weight:700}.next-chapter-list{color:var(--ink-dim);flex-direction:column;gap:7px;margin:0 0 14px;padding:0;font-size:15px;line-height:1.42;list-style:none;display:flex}.next-chapter-list li{padding-left:18px;position:relative}.next-chapter-list li:before{content:"🐾";font-size:11px;position:absolute;top:1px;left:0}.next-chapter-done{min-height:44px;color:var(--ok);align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.chapter-end h2{margin-bottom:4px;font-size:22px}.chapter-end p{color:var(--ink-dim);margin-bottom:12px;font-size:15.5px}.share-btn{border:1px solid var(--line);color:var(--accent,var(--ink));font:inherit;cursor:pointer;background:0 0;border-radius:999px;margin-top:14px;padding:10px 22px;font-size:15.5px}.share-btn:active{transform:scale(.97)}.radar{width:100%;max-width:280px;margin:0 auto;display:block;overflow:visible}.radar-web{fill:none;stroke:var(--line);stroke-width:1px}.radar-shape{fill:color-mix(in srgb, var(--accent) 28%, transparent);stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;animation:.9s both radar-in}@keyframes radar-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}.radar-axis{fill:var(--ink-dim);font-size:11px;font-weight:600}.radar-dot{fill:var(--accent)}.radar-note{color:var(--ink-faint);text-align:center;margin-top:6px;font-size:13px}.dock{z-index:15;overscroll-behavior:contain;max-height:min(40dvh,320px);padding:10px 16px calc(var(--safe-bottom) + 10px);background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);animation:.22s both dock-in;position:absolute;bottom:0;left:0;right:0;overflow:hidden auto}.app[data-interaction-mode=composing] .dock{animation:.26s cubic-bezier(.25,1,.5,1) both dock-in;overflow-y:hidden}@keyframes dock-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.btn{background:var(--accent);width:100%;min-height:52px;color:var(--accent-ink);box-shadow:var(--shadow);border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:17px;font-weight:600;transition:transform .12s,opacity .2s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:default}.btn--ghost{background:var(--surface-2);color:var(--ink);box-shadow:none}.btn--outline{color:var(--ink);border:1.5px solid var(--line);box-shadow:none;background:0 0}.options{flex-direction:column;gap:9px;display:flex}.options .option{animation:.24s both rise;animation-delay:calc(var(--opt-i,0) * 55ms)}.option{text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:13px;align-items:center;gap:10px;width:100%;min-height:50px;padding:12px 16px;font-size:16.5px;line-height:1.35;transition:transform .12s,border-color .15s;display:flex}.option:active{transform:scale(.99)}.option:disabled{opacity:.55;cursor:default}.option-num{width:24px;height:24px;color:var(--accent);background:var(--accent-soft);border-radius:8px;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.prompt-line{color:var(--ink-dim);margin-bottom:9px;padding:0 2px;font-size:14px}.composer{flex-direction:column;gap:8px;display:flex}.composer-meta{flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0;display:flex}.composer-info{color:var(--ink-faint);white-space:nowrap;margin-left:auto;font-size:12.5px}.chip{min-height:38px;color:var(--ink-dim);background:var(--surface-2);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:6px 11px;font-size:13.5px;font-weight:600;transition:transform .12s,border-color .2s cubic-bezier(.32,.72,0,1);display:inline-flex}.chip:active{transform:scale(.96)}.chip--accent{color:var(--accent);background:var(--accent-soft);border-color:#0000}.chip--on{color:var(--accent);border-color:var(--accent)}.composer-row{align-items:flex-end;gap:8px;display:flex}.composer-row textarea{resize:none;border:1.5px solid var(--line);background:var(--surface);min-height:44px;max-height:116px;color:var(--ink);border-radius:22px;outline:none;flex:1;padding:10px 15px;font-size:16.5px;line-height:1.4;transition:border-color .15s}.composer-row textarea:focus{border-color:var(--accent)}.composer-row textarea::placeholder{color:var(--ink-faint)}.send-btn{background:var(--accent);width:44px;height:44px;color:var(--accent-ink);box-shadow:var(--shadow);border-radius:50%;flex:none;place-items:center;transition:transform .12s,opacity .2s;display:grid}.send-btn:active{transform:scale(.96)}.send-btn:disabled{opacity:.4;cursor:default}.ti-counter{font-variant-numeric:tabular-nums}.ti-counter.over{color:var(--no);font-weight:700}.task-card{border-radius:var(--radius);background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));box-shadow:var(--shadow);padding:14px;transition:border-color .6s cubic-bezier(.32,.72,0,1),box-shadow .6s cubic-bezier(.32,.72,0,1)}.task-card--done{border-color:var(--line);box-shadow:none}.task-tag{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.task-card--done .task-tag{color:var(--ink-faint)}.task-tag-done{color:var(--ok);align-items:center;gap:4px;font-size:11px;display:inline-flex}.task-instruction{margin-bottom:12px;font-size:15.5px;line-height:1.45}.task-card--done .task-instruction{color:var(--ink-dim)}.task-card .checklist,.task-card .spot-progress:last-child,.task-card .task-instruction:last-child{margin-bottom:0}.task-card--done .phrase:disabled,.task-card--done .pick-card:disabled{opacity:.85}.spot-text{background:var(--bg);border:1px solid var(--line);white-space:pre-wrap;border-radius:14px;margin-bottom:12px;padding:14px;font-size:16.5px;line-height:1.55}.spot-phrases{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.phrase-wrap{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.phrase-wrap--feedback{flex:1 0 100%}.phrase{text-align:left;background:var(--surface);border:1.5px solid color-mix(in srgb, var(--accent) 40%, var(--line));border-radius:11px;min-height:44px;padding:9px 13px;font-size:15px;line-height:1.3;transition:background .2s,border-color .2s,transform .12s}.phrase:active{transform:scale(.97)}.phrase:disabled{cursor:default}.phrase.tapped{opacity:.95}.phrase--ok{background:var(--ok-soft);border-color:var(--ok)}.phrase--warn{background:var(--warn-soft);border-color:var(--warn)}.phrase--no{background:var(--no-soft);border-color:var(--no)}.spot-progress{color:var(--ink-dim);align-items:center;gap:10px;margin-bottom:10px;font-size:14px;display:flex}.spot-dots{gap:5px;display:flex}.spot-dot{background:var(--line);border-radius:50%;width:10px;height:10px}.spot-dot.on{background:var(--ok)}.feedback-tip{border-radius:11px;width:100%;margin-bottom:4px;padding:10px 12px;font-size:15px;line-height:1.4;animation:.3s both rise}.feedback-tip b{color:currentColor;font-weight:700}.feedback-tip--ok{background:var(--ok-soft);color:var(--ink);box-shadow:inset 3px 0 var(--ok)}.feedback-tip--warn{background:var(--warn-soft);color:var(--ink);box-shadow:inset 3px 0 var(--warn)}.feedback-tip--no{background:var(--no-soft);color:var(--ink);box-shadow:inset 3px 0 var(--no)}.pick{flex-direction:column;gap:9px;display:flex}.pick-card{text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:13px;min-height:44px;padding:13px 15px;font-size:16px;line-height:1.4;transition:border-color .15s,transform .12s}.pick-card:active{transform:scale(.99)}.pick-card.picked{border-color:var(--accent)}.pick-card--ok{border-color:var(--ok);background:var(--ok-soft)}.pick-card--warn{border-color:var(--warn);background:var(--warn-soft)}.pick-card--no{border-color:var(--no);background:var(--no-soft)}.pick-fb{color:var(--ink-dim);margin-top:7px;font-size:14px}.checklist{flex-direction:column;gap:4px;display:flex}.check-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:11px 4px;font-size:16px;display:flex}.check-row:last-child{border-bottom:none}.check-row span{flex:1}.switch{background:var(--line);border-radius:999px;flex:none;width:46px;height:28px;transition:background .2s;position:relative}.switch.on{background:var(--ok)}.switch:before{content:"";position:absolute;inset:-10px}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch.on:after{transform:translate(18px)}.pending{min-height:52px;color:var(--char-model);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:15.5px;font-weight:600;display:flex}.pending-main{align-items:center;gap:10px;display:flex}.pending-line{min-height:36px;color:var(--ink-faint);text-align:center;justify-content:center;align-items:center;font-size:13px;font-weight:500;line-height:1.35;display:flex}.pending-line>span{animation:.45s both fade}.dock--busy .btn:disabled,.dock--busy .option:disabled{animation:1s ease-in-out infinite busy-pulse}@keyframes busy-pulse{50%{opacity:.55}}.pending-dots{gap:4px;display:inline-flex}.pending-dots i{background:var(--char-model);border-radius:50%;width:8px;height:8px;animation:1.1s ease-in-out infinite pulse}.pending-dots i:nth-child(2){animation-delay:.18s}.pending-dots i:nth-child(3){animation-delay:.36s}@keyframes pulse{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.sheet-scrim{z-index:40;background:#0000006b;animation:.2s both fade;position:fixed;inset:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{background:var(--surface);max-height:78%;padding:8px 18px calc(var(--safe-bottom) + 22px);border-radius:20px 20px 0 0;animation:.28s cubic-bezier(.2,.7,.25,1) both slide-up;position:absolute;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -10px 40px #0000004d}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:none}}.sheet-grip{background:var(--line);border-radius:2px;width:40px;height:4px;margin:8px auto 14px}.sheet h3{margin-bottom:12px;font-size:18px}.note-item{border-bottom:1px solid var(--line);padding:12px 0}.note-item:last-child{border-bottom:none}.note-item-head{align-items:flex-start;gap:10px;display:flex}.note-title{flex:1;align-items:center;gap:6px;margin-bottom:3px;font-size:15.5px;font-weight:700;display:flex}.note-add{border:1px solid var(--line);background:var(--surface-2);min-height:36px;color:var(--accent);border-radius:10px;flex:none;margin-top:-5px;padding:6px 10px;font-size:13px;font-weight:700;line-height:1.2}.note-add:active{transform:scale(.97)}.note-add[aria-disabled=true]{color:var(--ink-faint)}.note-pin{color:var(--accent);font-size:13px}.note-text{color:var(--ink-dim);white-space:pre-wrap;font-size:15px;line-height:1.45}.note-empty{color:var(--ink-faint);text-align:center;padding:20px 0;font-size:15px;line-height:1.5}.note-empty-art{border:1px solid var(--line);border-radius:14px;width:132px;margin:0 auto 10px;display:block}.sheet-insert-footer{bottom:calc(0px - var(--safe-bottom) - 22px);margin:8px -18px calc(0px - var(--safe-bottom) - 22px);padding:6px 18px calc(var(--safe-bottom) + 14px);background:var(--surface);border-top:1px solid var(--line);position:sticky}.note-insert-status{min-height:22px;color:var(--ink-dim);text-align:center;margin-bottom:6px;font-size:13.5px;line-height:1.35}.intro{padding-bottom:calc(var(--safe-bottom) + 18px);flex-direction:column;flex:1;transition:opacity .24s;animation:.4s both fade;display:flex;overflow-y:auto}.intro--leaving{opacity:0;pointer-events:none}.intro-art{flex:none;position:relative}.intro-art img{aspect-ratio:920/518;object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.intro-art:after{content:"";background:linear-gradient(to bottom, transparent, var(--bg));height:42%;position:absolute;inset:auto 0 0}.intro-body{text-align:center;flex-direction:column;align-items:center;gap:12px;margin-top:-8px;padding:6px 26px 0;display:flex}.intro-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-size:11.5px;font-weight:700;animation:.5s .1s both rise}.intro-title{font-family:var(--font-story);letter-spacing:-.01em;font-size:40px;line-height:1.08;animation:.5s .18s both rise}.intro-sub{color:var(--ink-dim);max-width:320px;font-size:15.5px;line-height:1.5;animation:.5s .28s both rise}.intro-btn{max-width:260px;margin-top:8px;animation:.5s .4s both rise}.intro-meta{color:var(--ink-faint);font-size:12.5px;animation:.5s .5s both rise}:root[data-theme=dark] .intro-art img{filter:brightness(.92)}.screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:40px 28px;display:flex}.screen-emoji{font-size:46px}.screen h2{font-size:20px}.screen p{color:var(--ink-dim);max-width:300px;font-size:16px;line-height:1.5}.spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{left:50%;bottom:calc(var(--safe-bottom) + 96px);z-index:50;background:var(--ink);max-width:88%;color:var(--bg);box-shadow:var(--shadow-lift);border-radius:12px;padding:11px 18px;font-size:14.5px;animation:.3s both rise;position:fixed;transform:translate(-50%)}.devbar{top:calc(var(--safe-top) + 4px);z-index:60;background:color-mix(in srgb, var(--ink) 88%, transparent);box-shadow:var(--shadow-lift);border-radius:10px;gap:4px;max-width:96vw;padding:4px;display:flex;position:fixed;left:50%;overflow-x:auto;transform:translate(-50%)}.devbar button{color:var(--bg);white-space:nowrap;border-radius:7px;padding:5px 9px;font-size:12px;font-weight:600}.devbar button.active{background:var(--accent);color:var(--accent-ink)}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
