:root{--fs: 17px;--bg: #f7f2e8;--card: #ffffff;--text: #221f1b;--muted: #6f6a63;--line: #eae1d1;--line-strong: #d8ccb8;--accent: #d96334;--accent-weak: #fdeee6;--ok: #2f9e5f;--ok-bg: #e9f7ee;--ok-line: #9fd6b4;--bad: #d1445c;--bad-bg: #fcebed;--bad-line: #eda6b2;--c-teal: #1f9d8b;--c-berry: #c94f6d;--c-amber: #dfa019;--c-leaf: #69a84f;--tint-teal: #e6f6f3;--tint-berry: #fbeaef;--tint-amber: #fdf3dc;--tint-leaf: #eef6e8;--hero-bg: #d96334;--on-solid: #ffffff;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 2px rgba(60, 42, 28, .06), 0 2px 6px rgba(60, 42, 28, .05);--shadow-lift: 0 6px 18px rgba(60, 42, 28, .1);--safe-bottom: env(safe-area-inset-bottom, 0px)}[data-theme=dark]{--bg: #17130f;--card: #221e1a;--text: #ece6dd;--muted: #a49c92;--line: #332c24;--line-strong: #443c33;--accent: #f08a5d;--accent-weak: #2e2018;--ok: #5bc585;--ok-bg: #16281d;--ok-line: #2f6444;--bad: #ef7b90;--bad-bg: #2c181d;--bad-line: #6d3341;--c-teal: #4fc3b1;--c-berry: #e5859c;--c-amber: #e5b34f;--c-leaf: #94c47a;--tint-teal: #172a27;--tint-berry: #2b1c21;--tint-amber: #2b2416;--tint-leaf: #1f2a19;--hero-bg: #b8502a;--on-solid: #101010;--shadow: none;--shadow-lift: none}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:var(--fs);line-height:1.6;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}h1,h2,h3,p,figure{margin:0}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer;touch-action:manipulation}a{color:var(--accent);text-decoration:none}.page{min-height:100%;padding:16px 16px calc(24px + var(--safe-bottom));max-width:720px;margin:0 auto}.page--tab{padding-bottom:calc(72px + var(--safe-bottom))}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.muted{color:var(--muted)}.row{display:flex;align-items:center;gap:8px}.spacer{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);font-weight:500;transition:opacity .15s ease}.btn:active{opacity:.7}.btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}[data-theme=dark] .btn--primary{color:#0b1220}.btn--ghost{border-color:transparent;background:transparent;color:var(--muted)}.btn:disabled{opacity:.45;cursor:default}.field{display:block;width:100%;min-height:48px;padding:12px 14px;font-size:1rem;color:var(--text);background:var(--card);border:1px solid var(--line-strong);border-radius:var(--radius-sm);outline:none}.field:focus{border-color:var(--accent)}.stem{font-size:1.06rem;line-height:1.75;letter-spacing:.002em;overflow-wrap:anywhere}.stem .blank{display:inline-block;min-width:3.2em;border-bottom:1.5px solid var(--text);vertical-align:baseline;text-indent:-9999px;overflow:hidden;height:1em;margin:0 .15em}.toast{position:fixed;left:50%;bottom:calc(84px + var(--safe-bottom));transform:translate(-50%);padding:10px 16px;border-radius:999px;background:#16181deb;color:#fff;font-size:.9rem;z-index:100;max-width:80vw;text-align:center}
