:root{--font-scale:1;--bg:#f4f6f8;--surface:#fff;--surface-2:#eef2f5;--border:#dfe5ea;--text:#13202b;--muted:#5d6b78;--accent:#0e7c86;--accent-ink:#fff;--accent-soft:#dff3f4;--ok:#1f8a4c;--ok-soft:#e1f4e8;--mid:#a66300;--mid-soft:#fdf0dc;--bad:#c62839;--bad-soft:#fde4e6;--new:#6b3fd4;--new-soft:#ece5fd;--shadow:0 1px 2px #10202b0f, 0 4px 16px #10202b0d;--radius:16px;--tabbar-h:64px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0b1418;--surface:#13212a;--surface-2:#1a2c36;--border:#253a46;--text:#e6eef2;--muted:#93a7b3;--accent:#3cc4cd;--accent-ink:#062226;--accent-soft:#123c42;--ok:#4fd18a;--ok-soft:#133524;--mid:#f2b350;--mid-soft:#3a2b12;--bad:#ff7a86;--bad-soft:#3f1a20;--new:#b9a0ff;--new-soft:#2a2148;--shadow:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b1418;--surface:#13212a;--surface-2:#1a2c36;--border:#253a46;--text:#e6eef2;--muted:#93a7b3;--accent:#3cc4cd;--accent-ink:#062226;--accent-soft:#123c42;--ok:#4fd18a;--ok-soft:#133524;--mid:#f2b350;--mid-soft:#3a2b12;--bad:#ff7a86;--bad-soft:#3f1a20;--new:#b9a0ff;--new-soft:#2a2148;--shadow:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{font-size:calc(16px * var(--font-scale));-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.45}a{color:var(--accent);text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}h1,h2,h3{margin:0;line-height:1.2}.app{min-height:100dvh;padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 16px)}.page{max-width:760px;margin:0 auto;padding:0 16px}.topbar{z-index:20;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(180%)blur(16px);padding-top:env(safe-area-inset-top);border-bottom:1px solid #0000;position:sticky;top:0}.topbar.scrolled{border-bottom-color:var(--border)}.topbar-inner{align-items:center;gap:8px;max-width:760px;min-height:52px;margin:0 auto;padding:0 8px;display:flex}.topbar-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:1.05rem;font-weight:650;overflow:hidden}.icon-btn{width:40px;height:40px;color:var(--text);background:0 0;border:none;border-radius:12px;place-items:center;display:inline-grid}.icon-btn:active{background:var(--surface-2)}.icon-btn.on{color:#f5b301}.large-title{letter-spacing:-.02em;margin:8px 0 4px;font-size:1.9rem;font-weight:750}.subtitle{color:var(--muted);margin:0 0 16px}.section-h{justify-content:space-between;align-items:baseline;margin:28px 0 10px;display:flex}.section-h h2{font-size:1.15rem;font-weight:700}.section-h a{font-size:.9rem}.tabbar{z-index:30;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(180%)blur(16px);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}.tabbar nav{max-width:760px;height:var(--tabbar-h);grid-template-columns:repeat(5,1fr);margin:0 auto;display:grid}.tabbar a{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.7rem;font-weight:600;display:flex}.tabbar a.active{color:var(--accent)}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border)}.pad{padding:16px}.list{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.row{color:var(--text);border-top:1px solid var(--border);align-items:center;gap:12px;min-height:56px;padding:13px 14px;display:flex}.row:first-child{border-top:none}.row:active{background:var(--surface-2)}.row-main{flex:1;min-width:0}.row-title{font-size:.98rem;font-weight:600}.row-sub{color:var(--muted);margin-top:1px;font-size:.86rem}.row-chev{color:var(--muted);flex:none}.dot{border-radius:50%;flex:none;width:10px;height:10px}.group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:20px 4px 8px;font-size:.78rem;font-weight:700}.grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (width>=600px){.grid{grid-template-columns:repeat(3,1fr)}}.tile{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);min-height:112px;color:var(--text);flex-direction:column;gap:6px;padding:14px;display:flex;position:relative;overflow:hidden}.tile:before{content:"";background:var(--c);width:5px;position:absolute;inset:0 auto 0 0}.tile-icon{background:color-mix(in srgb, var(--c) 16%, transparent);width:34px;height:34px;color:var(--c);border-radius:10px;place-items:center;display:grid}.tile-name{font-size:.98rem;font-weight:700}.tile-blurb{color:var(--muted);font-size:.78rem;line-height:1.3}.tile-count{color:var(--muted);font-size:.75rem;font-weight:600;position:absolute;top:12px;right:12px}.badge{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.badge.new{background:var(--new-soft);color:var(--new)}.badge.upd{background:var(--accent-soft);color:var(--accent)}.chips{scrollbar-width:none;gap:8px;padding:2px 0 6px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;flex:none;padding:7px 12px;font-size:.86rem;font-weight:600}.chip.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.searchbox{background:var(--surface);border:1px solid var(--border);height:46px;color:var(--muted);border-radius:14px;align-items:center;gap:8px;padding:0 12px;display:flex}.searchbox input{font:inherit;color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:1rem}.btn{background:var(--accent);color:var(--accent-ink);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:.98rem;font-weight:700;display:inline-flex}.btn.secondary{background:var(--surface-2);color:var(--text)}.btn.ghost{color:var(--accent);background:0 0;padding:8px 10px}.btn.block{width:100%}.btn:disabled{opacity:.45}.btn-row{gap:10px;display:flex}.btn-row>*{flex:1}.card-head{padding:8px 0 4px}.card-kicker{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.card-title{letter-spacing:-.015em;font-size:1.55rem;font-weight:750}.card-name{color:var(--accent);margin-top:4px;font-size:1.08rem;font-weight:650}.summary{margin:14px 0 6px;font-size:1.02rem}.block{margin:16px 0}.block-caption{margin:0 0 8px;font-size:.92rem;font-weight:700}.tbl-wrap{border:1px solid var(--border);background:var(--surface);border-radius:14px;overflow-x:auto}table.tbl{border-collapse:collapse;width:100%;font-size:.92rem}.tbl th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface-2);padding:9px 12px;font-size:.74rem;font-weight:700}.tbl td{border-top:1px solid var(--border);vertical-align:top;padding:10px 12px}.tbl td:first-child{white-space:nowrap;font-weight:700}.tbl-note{color:var(--muted);margin:8px 2px 0;font-size:.84rem}@media (width<=640px){.tbl.stack thead{display:none}.tbl.stack,.tbl.stack tbody,.tbl.stack tr,.tbl.stack td{width:100%;display:block}.tbl.stack tr{border-top:1px solid var(--border);padding:8px 0}.tbl.stack tr:first-child{border-top:none}.tbl.stack td{white-space:normal;border:none;padding:3px 14px}.tbl.stack td:first-child{padding-top:6px;font-size:1rem}.tbl.stack td:not(:first-child):before{content:attr(data-label);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.7rem;font-weight:700;display:block}}.callout{border:1px solid #0000;border-radius:14px;padding:12px 14px;font-size:.94rem}.callout-title{align-items:center;gap:6px;margin-bottom:3px;font-weight:750;display:flex}.callout.info{background:var(--surface-2)}.callout.tip{background:var(--ok-soft)}.callout.warn{background:var(--mid-soft)}.callout.new{background:var(--new-soft)}.callout.new .callout-title{color:var(--new)}.blist{margin:0;padding-left:20px}.blist li{margin:6px 0}.steps{margin:0;padding:0;list-style:none;position:relative}.step{padding:0 0 14px 30px;position:relative}.step:before{content:"";background:var(--border);width:2px;position:absolute;top:22px;bottom:0;left:9px}.step:last-child:before{display:none}.step-dot{background:var(--accent-soft);width:20px;height:20px;color:var(--accent);border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid;position:absolute;top:2px;left:0}.step-if{color:var(--muted);font-size:.84rem;font-weight:650}.pearls li{margin:6px 0}.refs{color:var(--muted);margin:0;padding-left:22px;font-size:.84rem}.refs li{margin:8px 0}.refs a{white-space:nowrap;margin-left:4px;font-weight:650}.calc-item{margin:14px 0}.calc-label{margin-bottom:6px;font-size:.92rem;font-weight:650}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg button{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:10px;padding:8px 11px;font-size:.86rem}.seg button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:650}.seg-pts{opacity:.65;margin-left:4px;font-size:.78rem}.calc-segment{border-top:1px dashed var(--border);margin-top:12px;padding-top:4px}.calc-segment-name{color:var(--accent);margin-top:10px;font-weight:750}.calc-result{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 8px);box-shadow:var(--shadow);border:1px solid var(--border);background:var(--surface);border-radius:14px;align-items:center;gap:14px;margin-top:16px;padding:12px 14px;display:flex;position:sticky}.calc-score{text-align:center;min-width:52px;font-size:1.9rem;font-weight:800}.tone-ok{color:var(--ok)}.tone-mid{color:var(--mid)}.tone-bad{color:var(--bad)}.bg-ok{background:var(--ok-soft)}.bg-mid{background:var(--mid-soft)}.bg-bad{background:var(--bad-soft)}.stat-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{text-align:center;padding:14px 10px}.stat-n{font-size:1.6rem;font-weight:800}.stat-l{color:var(--muted);font-size:.76rem;font-weight:600}.progress{background:var(--surface-2);border-radius:999px;height:6px;overflow:hidden}.progress>div{background:var(--accent);border-radius:999px;height:100%;transition:width .25s}.q-text{white-space:pre-line;margin:18px 0 16px;font-size:1.12rem;font-weight:650}.opt{text-align:left;border:1.5px solid var(--border);background:var(--surface);border-radius:14px;width:100%;margin:0 0 10px;padding:14px;font-size:.98rem;display:block}.opt.right{border-color:var(--ok);background:var(--ok-soft)}.opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.opt:disabled{color:var(--text)}.flash{text-align:center;white-space:pre-line;flex-direction:column;justify-content:center;min-height:260px;padding:24px 18px;display:flex}.flash-front{font-size:1.15rem;font-weight:700}.flash-back{border-top:1px dashed var(--border);color:var(--text);margin-top:18px;padding-top:18px;font-size:1rem}.empty{text-align:center;color:var(--muted);padding:40px 16px}.notes-area{border:1px solid var(--border);background:var(--surface);width:100%;min-height:140px;color:var(--text);font:inherit;resize:vertical;border-radius:14px;padding:12px}.disclaimer{color:var(--muted);margin:24px 0 8px;font-size:.8rem}.hero{background:linear-gradient(135deg, var(--accent) 0%, color-mix(in srgb, var(--accent) 60%, #2a4cc9) 100%);color:#fff;border:none}.hero .btn{color:#0b4f55;background:#fff}.hscroll{scroll-snap-type:x mandatory;scrollbar-width:none;gap:10px;margin:0 -16px;padding:2px 16px 8px;display:flex;overflow-x:auto}.hscroll::-webkit-scrollbar{display:none}.news-card{scroll-snap-align:start;width:250px;color:var(--text);flex-direction:column;flex:none;gap:6px;padding:14px;display:flex}.news-card .row-sub{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.toast{left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 16px);background:var(--text);color:var(--bg);z-index:50;border-radius:12px;padding:10px 16px;font-size:.9rem;font-weight:600;position:fixed;transform:translate(-50%)}.kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}
