:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f5f6f4;--surface:#fff;--fg:#1b1f1d;--muted:#5f6763;--line:#dfe3e0;--accent:#0a7d3b;--ruler:#fff6cc;--ruler-edge:#e9d98a;--tick:#1b1f1d;--warn:#9a5b00;--shadow:0 1px 2px #0000000f, 0 4px 16px #0000000d}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#101312;--surface:#1a1e1c;--fg:#ecefed;--muted:#a3aba7;--line:#2d3330;--accent:#2fa862;--ruler:#2b2717;--ruler-edge:#4a4223;--tick:#f3f1e6;--warn:#e0a645;--shadow:none}}:root[data-theme=dark]{--bg:#101312;--surface:#1a1e1c;--fg:#ecefed;--muted:#a3aba7;--line:#2d3330;--accent:#2fa862;--ruler:#2b2717;--ruler-edge:#4a4223;--tick:#f3f1e6;--warn:#e0a645;--shadow:none}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;color:var(--fg);flex-direction:column;margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}main{flex:1}a{color:var(--accent)}.wrap{width:100%;max-width:1100px;margin:0 auto;padding:0 16px}.muted{color:var(--muted)}button{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:10px;min-height:44px;padding:8px 14px;transition:background .15s,border-color .15s}button:hover{border-color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary,button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}button:disabled{opacity:.5;cursor:default}button.link{min-height:0;color:var(--accent);text-align:left;background:0 0;border:0;padding:0;text-decoration:underline}button.chip{border-radius:999px;min-height:36px;padding:4px 12px}input[type=text],select{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:10px;min-height:44px;padding:8px 10px}input[type=text]{width:5.5em}select{flex:220px;max-width:100%}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.icon{fill:currentColor;flex:none}.top{background:var(--surface);border-bottom:1px solid var(--line)}.top-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:10px;padding-bottom:10px;display:flex}.brand{color:var(--fg);align-items:center;gap:10px;text-decoration:none;display:flex}.brand span{flex-direction:column;line-height:1.25;display:flex}.brand strong{font-size:1.15rem}.brand small{color:var(--muted);font-size:.85rem}.menu{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.menu-btn,.theme{white-space:nowrap;min-height:40px;padding:6px 12px}.lang{border:1px solid var(--line);border-radius:10px;display:flex;overflow:hidden}.lang a{min-width:44px;min-height:38px;color:var(--fg);background:var(--surface);justify-content:center;align-items:center;padding:0 10px;font-weight:600;text-decoration:none;display:flex}.lang a+a{border-left:1px solid var(--line)}.lang a[aria-current=page]{background:var(--accent);color:#fff}.page-title{color:var(--muted);margin:16px auto 10px;font-size:1.05rem;font-weight:600}.ruler-wrap{margin-top:0}.popup .page-title{display:none}.ruler{background:var(--ruler);border-top:1px solid var(--ruler-edge);border-bottom:1px solid var(--ruler-edge);width:100%;box-shadow:var(--shadow)}.ruler svg{touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:crosshair;display:block}.ruler line{stroke:var(--tick);stroke-width:1px;shape-rendering:crispedges}.ruler text{fill:var(--tick);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.ruler .marker{stroke:#e02424;stroke-width:2px}.ruler-wrap:not(.vertical) .side{max-width:1100px;margin:0 auto}.side{gap:12px;padding:16px;display:grid}.controls{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.units,.tools{flex-wrap:wrap;gap:6px;display:flex}.units button{min-width:56px;font-weight:600}.tools button{align-items:center;gap:6px;display:inline-flex}.reading{text-align:right;font-variant-numeric:tabular-nums;flex:220px}.reading strong{color:var(--accent);font-size:1.6rem}.reading .label,.reading .hint{color:var(--muted)}.quick{box-shadow:none;background:0 0;border-style:dashed}.status{color:var(--muted);flex:260px;margin:0;font-size:.9rem}.badge{color:var(--warn)}@media (pointer:coarse){.popup-btn{display:none!important}}.ruler-wrap:fullscreen{background:var(--bg);margin:0;overflow:auto}.ruler-wrap.vertical{align-items:flex-start;margin-top:0;display:flex}.ruler-wrap.vertical .ruler{border:0;border-right:1px solid var(--ruler-edge);flex:none;width:110px;height:100dvh}.ruler-wrap.vertical .ruler svg{touch-action:pan-x}.ruler-wrap.vertical .side{flex:1;min-width:0}.ruler-wrap.vertical .controls{flex-direction:column;align-items:flex-start}.ruler-wrap.vertical .reading{text-align:left;flex:none}.popup .top,.popup .article,.popup .foot{display:none}.popup .ruler-wrap{margin-top:0}.article{padding-top:16px}.article h2{margin:32px 0 8px;font-size:1.3rem}.article h3{margin:20px 0 4px;font-size:1.05rem}.article li{margin:4px 0}.table-wrap{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:12px 0;overflow-x:auto}.article table{border-collapse:collapse;width:100%;font-size:.95rem}.article th,.article td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}.article th{background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.article tr:last-child td{border-bottom:0}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin:8px 0;padding:0 14px}.faq summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:600}.faq details[open] summary{border-bottom:1px solid var(--line)}.doc{max-width:760px;padding-top:24px;padding-bottom:32px}.doc h1{margin:0 0 4px;font-size:1.6rem}.doc h2{margin:24px 0 4px;font-size:1.1rem}.doc p{margin:6px 0}.foot{background:var(--surface);border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}.foot .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;padding-top:16px;padding-bottom:16px;display:flex}.foot p{margin:0}.foot-links{flex-wrap:wrap;gap:8px 20px;display:flex}.foot-links a{color:var(--fg);text-decoration:none}.foot-links a:hover{color:var(--accent);text-decoration:underline}.cal{background:var(--surface);width:min(560px,100vw - 16px);max-height:calc(100dvh - 16px);color:var(--fg);border:1px solid var(--line);border-radius:16px;padding:0 18px 18px;box-shadow:0 12px 40px #00000040}.cal::backdrop{background:#00000080}.cal-head{background:var(--surface);z-index:1;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;padding-bottom:4px;display:flex;position:sticky;top:0}.cal-head h2{margin:0;font-size:1.2rem}.cal-head p{margin:0}.cal p{color:var(--muted);margin:8px 0}.cal section{padding:12px 0}.cal h3{margin:0 0 4px;font-size:1rem}.cal input[type=range]{min-width:120px;accent-color:var(--accent);flex:1}.cal input[type=radio]{accent-color:var(--accent)}.cal .row button[aria-label]{width:44px;padding:0;font-size:1.25rem}.cal label{align-items:center;gap:4px;min-height:44px;display:inline-flex}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-top:8px;display:flex;overflow-x:auto}.tabs button{white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;padding:8px 12px}.tabs button[aria-selected=true]{border-bottom-color:var(--accent);color:var(--accent);font-weight:600}.cal-foot{border-top:1px solid var(--line);padding-top:12px}.cal.info section{border-top:1px solid var(--line)}.cal.info p{color:var(--fg)}.cal.card-mode{max-height:48dvh;margin:auto 8px 8px auto}.cal.card-mode::backdrop{background:#00000026}.card{text-align:center;color:var(--fg);box-shadow:inset 0 0 0 2px var(--accent);background:color-mix(in srgb, var(--accent) 18%, var(--surface));flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.8rem;display:flex;position:fixed;top:8px;left:0}
