:root{--bg:#05070b;--panel:#0f172a;--line:#263244;--text:#e5e7eb;--muted:#94a3b8;--blue:#2563eb;--red:#dc2626;--green:#16a34a;--paper:#202124;--paperText:#e8eaed;--paperLine:#94a3b8;--answer:#ef4f91}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:72px 16px 32px;font-family:"Microsoft JhengHei","Noto Sans TC","Segoe UI",sans-serif;background:radial-gradient(circle at top left,#172554 0,#070b12 36%,#05070b 100%);color:var(--text)}
.ka-topbar{position:fixed;inset:0 0 auto;z-index:1000;min-height:56px;display:flex;align-items:center;gap:10px;padding:8px 14px;background:rgba(5,7,11,.94);border-bottom:1px solid var(--line);box-shadow:0 8px 30px rgba(0,0,0,.35);backdrop-filter:blur(12px)}
.ka-brand{font-weight:900;font-size:15px;white-space:nowrap}.ka-brand a{color:inherit;text-decoration:none}.ka-brand span{color:#7dd3fc;margin-left:5px}.back-link{text-decoration:none;color:#bae6fd;border:1px solid #334155;background:#0b1220;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:900;white-space:nowrap}.ka-time{font-size:12px;color:var(--muted);white-space:nowrap}.ka-actions{margin-left:auto;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.btn{border:1px solid transparent;cursor:pointer;font-size:13px;padding:7px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;color:var(--text);font-weight:800;background:transparent;white-space:nowrap}.btn:hover{filter:brightness(1.08)}.btn-blue{background:var(--blue);color:#fff}.btn-red{background:var(--red);color:#fff}.btn-green{background:var(--green);color:#fff}.btn-outline{background:#111827;border-color:#334155}.btn.active{background:#22c55e;color:#fff}.lang-btn{border:1px solid #334155;background:#0b1220;color:#cbd5e1;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900;cursor:pointer}.lang-btn.active{background:#0c4a6e;color:#bae6fd;border-color:#38bdf8}
.settings-panel{background:rgba(17,24,39,.96);padding:9px 12px;border-radius:16px;margin:0 auto 10px;display:flex;flex-wrap:nowrap;gap:10px;align-items:center;justify-content:center;border:1px solid var(--line);max-width:1180px;box-shadow:0 12px 34px rgba(0,0,0,.26);overflow-x:auto}.tool-title{font-size:16px;font-weight:900;color:#f8fafc;white-space:nowrap}.setting-group{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.setting-group label{font-size:14px;font-weight:900;color:#cbd5e1}.setting-group select,.setting-group input{padding:7px 9px;border-radius:7px;border:1px solid #334155;font-size:14px;background:#0b1220;color:#e5e7eb}.setting-group select{min-width:360px}.setting-group input{width:72px}
.precheck-panel{max-width:1180px;margin:0 auto 14px;padding:12px 15px;border-radius:17px;border:1px solid rgba(56,189,248,.28);background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(2,6,23,.84));box-shadow:0 12px 34px rgba(0,0,0,.22)}.precheck-title{font-weight:950;color:#f8fafc;margin-bottom:5px}.precheck-text{font-size:13px;line-height:1.65;color:#cbd5e1}.precheck-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.precheck-links a{display:inline-flex;text-decoration:none;color:#bae6fd;border:1px solid #334155;background:#0b1220;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}
.page-container{width:210mm;margin:0 auto;position:relative}.page{background:var(--paper);color:var(--paperText);width:100%;min-height:296mm;margin:0 auto;box-shadow:0 18px 48px rgba(0,0,0,.38);position:relative;border:1px solid #475569}.math-content{padding:9mm 10mm;display:flex;flex-direction:column;height:296mm}.paper-head{border-bottom:2px solid var(--paperLine);padding-bottom:6px;margin-bottom:7px}.math-title{text-align:center;font-size:18px;font-weight:900;line-height:1.3}.paper-subtitle{text-align:center;font-size:11px;font-weight:800;color:#cbd5e1;margin:2px 0 5px}.meta-row{display:flex;justify-content:space-between;font-size:12px;margin-top:7px;color:#cbd5e1}.math-body{display:grid;grid-template-columns:1fr 1fr;gap:0;flex:1;min-height:0}.math-col{padding:0 12px;display:flex;flex-direction:column;min-width:0}.math-col:first-child{border-right:1px dashed #64748b}.col-title{text-align:center;font-weight:900;font-size:14px;margin:3px 0 2px;border-bottom:1.5px solid var(--paperLine);padding-bottom:3px}.col-desc{text-align:center;font-size:10.5px;color:#cbd5e1;margin-bottom:5px}.question-list{display:flex;flex-direction:column;gap:4px}.question-row{display:flex;align-items:flex-start;font-size:13.2px;line-height:1.36;min-height:var(--row-min,38px);break-inside:avoid;border-bottom:1px dotted rgba(148,163,184,.3);padding:2px 0 4px}.q-num{width:26px;color:#cbd5e1;font-size:10.5px;text-align:right;margin-right:6px;flex-shrink:0;padding-top:2px}.q-text{flex:1;min-width:0}.q-prompt{min-height:1.35em}.choices{display:grid;grid-template-columns:1fr 1fr;column-gap:7px;font-size:11.5px;margin-top:2px}.answer-line{height:1.45em;line-height:1.35;border-bottom:1.35px solid var(--paperLine);display:flex;align-items:flex-end;margin-top:3px;overflow:hidden}.answer-label{font-size:10px;color:#94a3b8;flex:0 0 auto;margin-right:3px}.answer-value{color:var(--answer);font-weight:900;visibility:hidden;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.answers-visible .answer-value{visibility:visible}.geom-wrap{display:flex;justify-content:center;align-items:center;height:86px;margin:2px 0}.geom-wrap.tall{height:112px}.geom{width:100%;height:100%;overflow:visible}.geom .shape{stroke:currentColor;stroke-width:2;fill:none}.geom .aux{stroke:#60a5fa;stroke-width:1.8;fill:none}.geom .mark{stroke:#f59e0b;stroke-width:1.6;fill:none}.geom .dash{stroke-dasharray:5 4}.geom .point{fill:currentColor}.geom text{fill:currentColor;font-size:11px;font-family:"Microsoft JhengHei","Noto Sans TC",sans-serif}.geom .small{font-size:9px}.footer{margin-top:auto;border-top:1px solid var(--paperLine);padding-top:5px;text-align:center;font-size:11px;font-weight:800;white-space:nowrap}.paper-watermark{margin-top:3px;text-align:right;font-size:8.5px;color:#94a3b8;opacity:.58}
.geom .axis{stroke:currentColor;stroke-width:1.35;fill:none}.geom .range{stroke:#38bdf8;stroke-width:4;fill:none}.geom .open-dot{fill:var(--paper);stroke:#38bdf8;stroke-width:2}.geom .closed-dot{fill:#38bdf8;stroke:#38bdf8;stroke-width:2}.geom .bar{fill:#60a5fa;stroke:#1d4ed8;stroke-width:1}.geom .bar.hi{fill:#f59e0b}.geom .chart-line{fill:none;stroke:#60a5fa;stroke-width:2}.geom .grid-cell{fill:none;stroke:currentColor;stroke-width:1}.geom .grid-cell.filled{fill:#60a5fa;stroke:#1d4ed8}.geom .cube-top{fill:#bfdbfe;stroke:#1e3a8a;stroke-width:1}.geom .cube-left{fill:#60a5fa;stroke:#1e3a8a;stroke-width:1}.geom .cube-right{fill:#3b82f6;stroke:#1e3a8a;stroke-width:1}.data-table{border-collapse:collapse;margin:4px auto;font-size:10.5px;min-width:72%}.data-table th,.data-table td{border:1px solid currentColor;padding:2px 5px;text-align:center}.data-table th{font-weight:900}.answer-value{max-width:calc(100% - 26px)}
#drawingCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:10;cursor:crosshair;touch-action:none;pointer-events:none}.drawing-toolbar{display:none;margin:0 auto 16px;padding:9px;background:rgba(17,24,39,.96);border:1px solid #334155;border-radius:14px;max-width:760px;text-align:center;gap:7px;justify-content:center}.tool-btn{min-width:36px;height:34px;border-radius:999px;border:1px solid #334155;background:#0b1220;color:#e5e7eb;font-weight:900;cursor:pointer}.tool-btn.active{background:#0c4a6e;color:#bae6fd;border-color:#38bdf8}.pen-dot{display:inline-block;width:14px;height:14px;border-radius:50%}.red{background:#dc3545}.blue{background:#0d6efd}.black{background:#111;border:1px solid #aaa}
body.light-paper{--paper:#fff;--paperText:#111827;--paperLine:#334155}body.light-paper .page{background:#fff;color:#111827;border:none}body.light-paper .paper-subtitle,body.light-paper .col-desc,body.light-paper .q-num,body.light-paper .meta-row{color:#64748b}.mjx-svg{font-size:102%!important}
@media(max-width:900px){body{padding-top:118px}.ka-topbar{height:auto;flex-wrap:wrap}.ka-actions{margin-left:0}.settings-panel{justify-content:flex-start}.page-container{transform:scale(.78);transform-origin:top center;margin-bottom:-60mm}}
@media print{.no-print{display:none!important}body{background:#fff;padding:0}.page-container{margin:0;width:100%;transform:none}.page{box-shadow:none;border:none;width:100%;height:auto;background:#fff!important;color:#111827!important}.math-content{height:296mm}.paper-head,.col-title,.footer,.answer-line{border-color:#111827!important}.math-col:first-child{border-color:#999!important}.paper-subtitle,.col-desc,.q-num,.meta-row{color:#444!important}@page{size:A4;margin:0}}
