:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f1f3f5;--text: #111418;--text-2: #5b626b;--border: #e3e6ea;--border-strong: #cfd4da;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-soft: #e8efff;--on-accent: #ffffff;--warn: #b45309;--shadow: 0 1px 2px rgb(16 24 40 / .05);--radius: 10px;font-family:system-ui,-apple-system,Segoe UI,Noto Sans TC,Microsoft JhengHei,sans-serif;color:var(--text)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0f1115;--surface: #171a20;--surface-2: #1f232b;--text: #e8eaed;--text-2: #9aa1ab;--border: #2a2f38;--border-strong: #3a404b;--accent: #4f8cff;--accent-hover: #6b9dff;--accent-soft: #1c2a47;--on-accent: #ffffff;--warn: #f0a44b;--shadow: none}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}.site{min-height:100vh;display:flex;flex-direction:column}.container,.topbar-inner,.footer-inner{width:100%;max-width:1120px;margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;font:inherit;font-size:14px;font-weight:500;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.small{height:32px;font-size:13px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.topbar-inner{display:flex;align-items:center;justify-content:space-between;height:60px}.brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:16px;color:var(--text);text-decoration:none}.logo{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:20px;line-height:1}.container{flex:1;padding-top:24px;padding-bottom:48px}.toolbar{display:flex;flex-wrap:wrap;gap:20px 32px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.control{display:flex;flex-direction:column;gap:8px;min-width:0}.label{font-size:12px;font-weight:600;color:var(--text-2);letter-spacing:.02em}.segmented{display:inline-flex;padding:3px;gap:2px;background:var(--surface-2);border-radius:8px;width:max-content}.segmented label{position:relative}.segmented input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;margin:0;cursor:pointer}.segmented span{display:block;padding:6px 14px;font-size:14px;border-radius:6px;color:var(--text-2);white-space:nowrap;transition:background .15s,color .15s}.segmented input:checked+span{background:var(--surface);color:var(--text);font-weight:600;box-shadow:0 1px 2px #0000001f}.segmented input:focus-visible+span{outline:2px solid var(--accent);outline-offset:1px}.count-input{width:96px;height:34px;padding:0 10px;font:inherit;font-size:14px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:8px}.control>.check{height:34px}.checks{display:flex;gap:16px;flex-wrap:wrap}.check{display:inline-flex;gap:8px;align-items:center;font-size:14px;cursor:pointer}.check input{width:16px;height:16px;margin:0;accent-color:var(--accent)}.check.disabled{color:var(--text-2);opacity:.6;cursor:default}.results{margin-top:28px}.results-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.summary{margin:0;font-size:18px;font-weight:600}.summary small{font-size:14px;font-weight:400;color:var(--text-2);margin-left:8px}.results-actions{display:flex;align-items:center;gap:16px}.switch{display:inline-flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;position:relative}.switch input{position:absolute;opacity:0;width:1px;height:1px}.switch .track{width:36px;height:20px;border-radius:999px;background:var(--border-strong);position:relative;transition:background .15s}.switch .track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 2px #0003}.switch input:checked+.track{background:var(--accent)}.switch input:checked+.track:after{transform:translate(16px)}.switch input:focus-visible+.track{outline:2px solid var(--accent);outline-offset:2px}.warning{margin:-4px 0 14px;font-size:13px;color:var(--warn)}.warning:empty{display:none}.cards{display:grid;gap:12px}.cards.horizontal{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.cards.vertical{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.card{position:relative;display:flex;align-items:center;justify-content:center;min-height:84px;padding:22px 16px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-num{position:absolute;top:8px;left:10px;font-size:12px;color:var(--text-2);font-variant-numeric:tabular-nums}.h-expr{font-size:22px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.ans{color:var(--accent);font-weight:700;visibility:hidden}.h-expr .ans{display:inline-block;min-width:3ch}.cards.show-answers .ans{visibility:visible}.v-expr{font-size:24px;font-weight:500;font-variant-numeric:tabular-nums;width:calc(var(--w) * 1ch + 1.6ch)}.v-row{display:flex;justify-content:space-between;line-height:1.35}.v-row.addend{border-bottom:2px solid var(--text)}.v-row.result{padding-top:2px;min-height:1.35em}.v-row .op{width:1.2ch}.footer{border-top:1px solid var(--border);background:var(--surface)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px;font-size:13px;color:var(--text-2)}.footer p{margin:0}@media(max-width:640px){.container,.topbar-inner,.footer-inner{padding-left:16px;padding-right:16px}.container{padding-top:16px}.brand{font-size:15px}#print span{display:none}#print:after{content:"列印"}.toolbar{flex-direction:column;gap:16px;padding:16px}.segmented{width:100%}.segmented label{flex:1;text-align:center}.cards.horizontal{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.cards.vertical{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.h-expr{font-size:19px}.v-expr{font-size:21px}}#print-root{--ink: #000;--muted: #555;--cell: 8.5mm;color:var(--ink);background:#fff;font-family:system-ui,-apple-system,Segoe UI,Noto Sans TC,Microsoft JhengHei,sans-serif}#print-root .sheet-header{border-bottom:2px solid var(--ink);padding-bottom:4mm;margin-bottom:7mm}#print-root .sheet-header h1{font-size:20pt;margin:0 0 3mm;text-align:center}#print-root .sheet-fields{display:flex;justify-content:space-between;font-size:12pt}#print-root .field{display:inline-flex;align-items:flex-end}#print-root .field .blank{display:inline-block;width:32mm;border-bottom:1px solid var(--ink);height:1.2em}#print-root .problems{display:grid;column-gap:6mm}#print-root .problems.horizontal{grid-template-columns:repeat(3,1fr);column-gap:4mm;row-gap:10mm}#print-root .problems.horizontal.with-space{row-gap:4mm}#print-root .problems.vertical{grid-template-columns:repeat(3,1fr);row-gap:10mm}#print-root .problem{break-inside:avoid}#print-root .num{font-size:10pt;color:var(--muted)}#print-root .hline{display:flex;align-items:baseline;gap:2mm;font-size:15pt;font-variant-numeric:tabular-nums;white-space:nowrap}#print-root .hline .num{min-width:8mm}#print-root .answer-blank{display:inline-block;width:16mm;border-bottom:1px solid var(--ink)}#print-root .work-space{height:30mm}#print-root .problem.vertical .num{margin-bottom:1mm}#print-root .vgrid{display:grid;grid-template-columns:repeat(var(--cols),var(--cell));width:max-content;font-size:17pt;font-variant-numeric:tabular-nums}#print-root .vgrid .cell{height:var(--cell);display:flex;align-items:center;justify-content:center}#print-root .vgrid .addend{border-bottom:.5mm solid var(--ink)}#print-root .vgrid .answer{height:calc(var(--cell) * 1.15)}#print-root .answers h2{font-size:16pt;text-align:center;border-bottom:2px solid var(--ink);padding-bottom:3mm;margin:0 0 6mm}#print-root .answer-list{display:grid;grid-template-columns:repeat(6,1fr);gap:3mm 6mm;font-size:13pt;font-variant-numeric:tabular-nums}#print-root .answer-item{display:flex;align-items:baseline;gap:2mm;break-inside:avoid}#print-root .answer-item .num{min-width:10mm}#print-root{display:none}@page{size:A4;margin:12mm}@media print{html,body{background:#fff!important;color:#000}.site{display:none!important}#print-root{display:block;-webkit-print-color-adjust:exact;print-color-adjust:exact}#print-root .sheet+.sheet{break-before:page}}
