@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #e9edf0;--panel: #ffffff;--sunken: #f3f5f7;--ink: #14202c;--muted: #5b6875;--line: #d3d9df;--brass: #94650f;--brass-ink: #ffffff;--brass-soft: #f4e9d2;--ok: #1d6b45;--ok-soft: #dcefe4;--danger: #a8201a;--danger-soft: #f8e1df;--focus: #2a5bd7;--r-sm: 6px;--r-md: 10px;--r-lg: 18px;--shadow: 0 1px 0 rgba(20, 32, 44, .04), 0 8px 24px -12px rgba(20, 32, 44, .18);--sans: "IBM Plex Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0c1218;--panel: #131b23;--sunken: #0f161d;--ink: #e2e8ee;--muted: #93a0ad;--line: #24303b;--brass: #d9a441;--brass-ink: #1a1306;--brass-soft: #2a2214;--ok: #5cc28f;--ok-soft: #12261b;--danger: #f0817a;--danger-soft: #2c1513;--focus: #7aa2ff;--shadow: 0 1px 0 rgba(0, 0, 0, .3), 0 12px 32px -16px rgba(0, 0, 0, .6);color-scheme:dark}}:root[data-theme=dark]{--bg: #0c1218;--panel: #131b23;--sunken: #0f161d;--ink: #e2e8ee;--muted: #93a0ad;--line: #24303b;--brass: #d9a441;--brass-ink: #1a1306;--brass-soft: #2a2214;--ok: #5cc28f;--ok-soft: #12261b;--danger: #f0817a;--danger-soft: #2c1513;--focus: #7aa2ff;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--ink);font:400 15px/1.5 var(--sans);-webkit-font-smoothing:antialiased}#app{min-height:100%}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:30px;line-height:1.15}h2{font-size:21px;line-height:1.25}h3{font-size:16px}p{margin:0}.muted{color:var(--muted)}.small{font-size:13px}.mono{font-family:var(--mono)}a{color:var(--brass)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}button{font:inherit;color:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--panel);cursor:pointer;font-weight:500;white-space:nowrap}.btn:hover{border-color:var(--muted)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--brass);border-color:var(--brass);color:var(--brass-ink)}.btn.primary:hover{filter:brightness(1.06)}.btn.danger{color:var(--danger)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--sunken)}.btn.big{min-height:52px;padding:0 22px;font-size:16px;border-radius:var(--r-lg)}.btn.block{width:100%}.icon-btn{width:36px;height:36px;padding:0;border-radius:var(--r-sm);border:0;background:transparent;cursor:pointer;display:inline-grid;place-items:center;color:var(--muted)}.icon-btn:hover{background:var(--sunken);color:var(--ink)}label.field{display:grid;gap:6px}label.field>span{font-size:13px;font-weight:500;color:var(--muted)}input,textarea,select{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:9px 12px;width:100%}input:focus,textarea:focus,select:focus{outline:2px solid var(--focus);outline-offset:-1px;border-color:transparent}textarea{min-height:96px;resize:vertical}input.mono,textarea.mono{font-family:var(--mono)}.input-row{display:flex;gap:6px;align-items:center}.input-row>input{flex:1}.error{background:var(--danger-soft);color:var(--danger);padding:10px 12px;border-radius:var(--r-md);font-size:14px}.notice{background:var(--brass-soft);padding:12px 14px;border-radius:var(--r-md);font-size:14px}.okbox{background:var(--ok-soft);color:var(--ok);padding:10px 12px;border-radius:var(--r-md);font-size:14px}.stage{min-height:100vh;display:grid;place-items:center;padding:32px 16px}.stage-card{width:100%;max-width:440px;display:grid;gap:22px}.stage-card.wide{max-width:560px}.brand{display:flex;align-items:center;gap:10px;font-weight:600;letter-spacing:-.01em}.choice-list{display:grid;gap:10px}.choice{text-align:left;display:grid;gap:2px;padding:16px 18px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--panel);cursor:pointer;box-shadow:var(--shadow)}.choice:hover{border-color:var(--brass)}.choice strong{font-weight:600}.choice span{color:var(--muted);font-size:14px}.steps{display:flex;gap:6px}.steps i{height:3px;flex:1;border-radius:2px;background:var(--line)}.steps i.on{background:var(--brass)}.dial{width:168px;height:168px;margin:0 auto;display:block;color:var(--ink)}.dial .ring{transform-origin:100px 100px;transition:transform .9s cubic-bezier(.2,.8,.1,1)}.dial.turning .ring{transform:rotate(-200deg)}.dial.open .ring{transform:rotate(-360deg)}.dial .bolt{transition:transform .5s .7s ease,opacity .3s .7s;transform-origin:100px 100px}.dial.open .bolt{transform:scale(.6);opacity:0}.dial.wiggle{animation:wiggle .4s ease}@keyframes wiggle{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){.dial .ring,.dial .bolt{transition:none}.dial.wiggle{animation:none}}.pin{display:flex;gap:8px;justify-content:center}.pin input{width:46px;height:56px;text-align:center;font:600 22px var(--mono);padding:0}.kit{border:2px dashed var(--brass);border-radius:var(--r-lg);padding:20px;background:var(--panel);display:grid;gap:14px;justify-items:center}.kit-code{font:500 16px/1.7 var(--mono);text-align:center;word-break:break-all;letter-spacing:.04em}.kit svg{width:168px;height:168px}.fingerprint{font:500 22px/1.5 var(--mono);letter-spacing:.06em;text-align:center}.pair-code{font:600 40px/1.1 var(--mono);letter-spacing:.08em;text-align:center}.shell{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--panel)}.topbar .search{flex:1;max-width:520px}.topbar .spacer{flex:1}.sync{font-size:13px;color:var(--muted);display:inline-flex;align-items:center;gap:6px}.sync i{width:8px;height:8px;border-radius:50%;background:var(--ok)}.sync.offline i{background:var(--brass)}.sync.error i{background:var(--danger)}.panes{display:grid;grid-template-columns:minmax(260px,340px) 1fr;min-height:0;flex:1}.listpane{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;background:var(--sunken)}.tabs{display:flex;gap:4px;padding:10px 12px}.tabs button{border:0;background:transparent;padding:6px 10px;border-radius:999px;cursor:pointer;color:var(--muted);font-weight:500}.tabs button.on{background:var(--panel);color:var(--ink);box-shadow:var(--shadow)}.list{overflow-y:auto;padding:0 8px 16px;flex:1;min-height:0}.row{display:flex;gap:12px;align-items:center;padding:9px 10px;border-radius:var(--r-md);cursor:pointer;border:0;background:transparent;width:100%;text-align:left}.row:hover{background:var(--panel)}.row.on{background:var(--panel);box-shadow:inset 3px 0 0 var(--brass)}.row .t{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .s{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row>div{min-width:0}.mono-tile{width:36px;height:36px;flex:none;border-radius:9px;display:grid;place-items:center;font-weight:600;color:#fff;font-size:15px}.detail{overflow-y:auto;padding:28px 32px 48px}.detail-inner{max-width:620px;display:grid;gap:22px}.detail-head{display:flex;gap:14px;align-items:center}.detail-head .mono-tile{width:52px;height:52px;border-radius:13px;font-size:22px}.fields{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel)}.frow{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 16px;border-top:1px solid var(--line);align-items:center}.frow:first-child{border-top:0}.frow .k{font-size:12.5px;color:var(--muted);grid-column:1 / -1}.frow .v{overflow-wrap:anywhere}.frow .acts{display:flex;gap:2px}.totp{font:600 22px var(--mono);letter-spacing:.12em}.ring-timer{width:22px;height:22px}.empty{display:grid;place-items:center;align-content:center;height:100%;text-align:center;padding:32px;gap:12px;color:var(--muted)}.form{display:grid;gap:14px}.form-actions{display:flex;gap:8px;justify-content:flex-end}.strength{height:4px;border-radius:2px;background:var(--line);overflow:hidden}.strength i{display:block;height:100%}.back{display:none}.overlay{position:fixed;inset:0;background:#080e1473;display:grid;place-items:center;padding:16px;z-index:20}.sheet{background:var(--panel);border-radius:var(--r-lg);box-shadow:var(--shadow);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;padding:24px;display:grid;gap:18px}.sheet-head{display:flex;justify-content:space-between;align-items:center}.section{display:grid;gap:10px}.device{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line);align-items:center}.device:first-child{border-top:0}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:var(--r-md);font-size:14px;z-index:30;max-width:calc(100vw - 32px)}.gen-out{font:500 19px/1.4 var(--mono);padding:14px;background:var(--sunken);border-radius:var(--r-md);word-break:break-all;text-align:center}.toggle{display:flex;align-items:center;gap:8px}.toggle input{width:auto}@media(max-width:760px){.panes{grid-template-columns:1fr}.panes.has-detail .listpane{display:none}.panes:not(.has-detail) .detail{display:none}.back{display:inline-flex}.detail{padding:18px 16px 40px}.topbar{flex-wrap:wrap}.topbar .search{order:3;flex-basis:100%;max-width:none}.hide-sm{display:none}}@media print{body *{visibility:hidden}.kit,.kit *{visibility:visible}.kit{position:absolute;left:0;top:0;width:100%;border-color:#000}}.door{all:unset;box-sizing:border-box;position:fixed;inset:0;display:grid;place-items:center;background:#000;color:#f2f2f2;cursor:pointer;-webkit-tap-highlight-color:transparent}.door span{font:300 clamp(28px,6vw,64px)/1 var(--sans);letter-spacing:.02em;animation:door-in 2.4s ease-out both,door-breathe 6s ease-in-out 2.4s infinite}.door:hover span,.door:focus-visible span{text-shadow:0 0 24px rgba(255,255,255,.35)}.door:focus-visible{outline:none}@keyframes door-in{0%{opacity:0;filter:blur(12px)}to{opacity:1;filter:blur(0)}}@keyframes door-breathe{0%,to{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.door span{animation:none}}
