@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(/assets/nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(/assets/nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(/assets/nunito-latin-ext-400-normal-CjMJVfGn.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(/assets/nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(/assets/nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(/assets/nunito-latin-ext-600-normal-BKUpuB78.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-ext-400-italic-B76xxBNn.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-400-italic-CEz18L3t.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-400-italic-ZssV-nwQ.woff2)format("woff2"),url(/assets/nunito-cyrillic-400-italic-kLw1qHb7.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/nunito-vietnamese-400-italic-B2PI3A8Y.woff2)format("woff2"),url(/assets/nunito-vietnamese-400-italic-DKD9zHau.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-italic--NHIeDzu.woff2)format("woff2"),url(/assets/nunito-latin-ext-400-italic-k9EPGpCk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-italic-BnrCcHbg.woff2)format("woff2"),url(/assets/nunito-latin-400-italic-CDISnx4K.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f0e8;--paper:#fffdf9;--panel:#faf6f0;--ink:#2a2420;--ink-2:#5b524a;--muted:#8e8478;--faint:#b9afa3;--line:#e8dfd3;--line-2:#ddd2c4;--accent:#5b3cf0;--accent-2:#4a2fd6;--accent-ink:#fff;--accent-soft:#ece7ff;--danger:#c8382e;--ok:#2e7d32;--shadow:0 1px 2px #3c28140f, 0 4px 16px #3c28140f;--shadow-lg:0 2px 6px #3c281414, 0 16px 48px #3c281424;--focus:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent);--c1:#c8382e;--c2:#c25f0a;--c3:#977000;--c4:#2e7d32;--c5:#00797a;--c6:#2459c8;--c7:#7b3fb0;--c8:#c2366e;--c9:#85582f;--c10:#56657a;--ui-font:"Nunito", ui-rounded, system-ui, sans-serif;--canvas-font:"Nunito", ui-rounded, system-ui, sans-serif;--canvas-scale:1;--canvas-measure:66ch;--radius:14px;--radius-sm:9px;--ease:cubic-bezier(.2, .7, .2, 1);--spring:cubic-bezier(.34, 1.56, .64, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#181512;--paper:#211d19;--panel:#1d1916;--ink:#ede6dc;--ink-2:#c4baad;--muted:#918679;--faint:#5f564d;--line:#342e28;--line-2:#423a33;--accent:#a491ff;--accent-2:#b8a8ff;--accent-ink:#17122e;--accent-soft:#2b2448;--danger:#ff7b6e;--ok:#74d07a;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--shadow-lg:0 2px 6px #00000059, 0 16px 48px #00000073;--c1:#ff7b6e;--c2:#ffa552;--c3:#e9c24a;--c4:#74d07a;--c5:#4fd1cf;--c6:#7fa8ff;--c7:#c99bff;--c8:#f27bb4;--c9:#d3a176;--c10:#a9b6c6}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#181512;--paper:#211d19;--panel:#1d1916;--ink:#ede6dc;--ink-2:#c4baad;--muted:#918679;--faint:#5f564d;--line:#342e28;--line-2:#423a33;--accent:#a491ff;--accent-2:#b8a8ff;--accent-ink:#17122e;--accent-soft:#2b2448;--danger:#ff7b6e;--ok:#74d07a;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--shadow-lg:0 2px 6px #00000059, 0 16px 48px #00000073;--c1:#ff7b6e;--c2:#ffa552;--c3:#e9c24a;--c4:#74d07a;--c5:#4fd1cf;--c6:#7fa8ff;--c7:#c99bff;--c8:#f27bb4;--c9:#d3a176;--c10:#a9b6c6}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--ui-font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:14px;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-family:ui-monospace,IBM Plex Mono,monospace;font-size:12.5px}.app{grid-template-columns:minmax(0,1fr) 340px;height:100%;display:grid}.app.sb-closed{grid-template-columns:minmax(0,1fr) 0}.main{flex-direction:column;min-width:0;height:100%;display:flex;position:relative}.canvas-wrap{flex:1;scroll-padding:80px 0;position:relative;overflow:hidden auto}.canvas-wrap.previewing>.canvas:not(.preview),.canvas-wrap.previewing>.preview-banner+.canvas:not(.preview){display:none}.header{align-items:center;gap:18px;min-height:56px;padding:14px 24px 10px;display:flex}.brand{letter-spacing:-.01em;color:var(--ink-2);white-space:nowrap;font-size:15px;font-weight:600}.brand b{color:var(--accent);font-weight:800}.modes{background:color-mix(in srgb, var(--paper) 70%, var(--bg));border:1px solid var(--line);border-radius:12px;gap:2px;margin:0 auto;padding:3px;display:flex}.mode-btn{color:var(--muted);transition:background .18s var(--ease), color .18s var(--ease);background:0 0;border:none;border-radius:9px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;font-weight:600;display:flex}.mode-btn:hover{color:var(--ink)}.mode-btn.on{background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}.mode-btn.on .ic{color:var(--accent)}.header-right{gap:6px;display:flex}.chip-btn{border:1px solid var(--line);background:var(--paper);color:var(--ink-2);border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:12.5px;font-weight:700;display:flex}.chip-btn:hover{border-color:var(--line-2)}.chip-btn.lang{letter-spacing:.04em}.canvas{padding:28px 24px 120px}.canvas-text .paper{max-width:var(--canvas-measure);--canvas-size:1.15rem;max-width:calc(var(--canvas-measure) + 32px + 200px);margin:2vh auto 0}.canvas-wrap{overflow-x:hidden}.canvas-text .cm-content{min-height:50vh}.canvas-var{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;max-width:980px;margin:0 auto;display:grid}.canvas-var.one-col{grid-template-columns:minmax(0,1fr);max-width:760px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-height:92px;transition:border-color .18s var(--ease), box-shadow .18s var(--ease);--canvas-size:1.2rem;flex-direction:column;padding:16px 18px 8px;display:flex}.card-wide{grid-column:1/-1}.card-focused{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));box-shadow:var(--shadow), 0 0 0 3px color-mix(in srgb, var(--accent) 10%, transparent)}.card-starred{background:linear-gradient(var(--paper), var(--paper)) padding-box, linear-gradient(135deg, color-mix(in srgb, var(--c3) 60%, var(--line)), var(--line)) border-box}.card-editor{flex:1}.card .cm-editor{margin-left:-32px}.card .fx-gutter{width:18px;margin-right:14px}.card-foot{color:var(--faint);align-items:center;gap:8px;min-height:22px;margin-top:10px;font-size:11.5px;display:flex}.card-num{color:var(--muted);min-width:14px;font-weight:800}.card-stats{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-left:auto;overflow:hidden}.star{color:var(--faint)}.star.on{color:var(--c3)}.star.on .ic path{fill:currentColor}.card-add-row{flex-wrap:wrap;grid-column:1/-1;justify-content:center;align-items:center;gap:16px;display:flex}.card-hint{color:var(--muted);align-items:center;gap:3px;font-size:12.5px;display:inline-flex}.card-add{border:1px dashed var(--line-2);min-height:38px;color:var(--muted);background:0 0;border-radius:20px;justify-self:center;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:600;display:flex}.card-add:hover{color:var(--ink);border-color:var(--muted)}.ring{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.ring-track{fill:none;stroke:var(--line);stroke-width:2.5px}.ring-value{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;transition:stroke-dashoffset .2s var(--ease), stroke .2s var(--ease)}.ring-near .ring-value{stroke:var(--c2)}.ring-over .ring-value{stroke:var(--danger)}.ring-over .ring-num{color:var(--danger)}.statusbar{border-top:1px solid var(--line);background:color-mix(in srgb, var(--bg) 85%, var(--paper));color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:16px;padding:8px 20px;font-size:12px;display:flex;overflow:hidden}.statusbar .spacer{flex:1}.offer,.tab-warning{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);animation:rise .22s var(--ease);border-radius:20px;align-items:center;gap:10px;margin:0 auto 8px;padding:6px 14px;font-size:13px;display:flex}.tab-warning{border-color:color-mix(in srgb, var(--c2) 50%, var(--line));margin:0 auto}.icon-btn{color:var(--muted);background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;padding:4px;display:inline-flex}.icon-btn:hover,.icon-btn.on{color:var(--ink);background:color-mix(in srgb, var(--ink) 6%, transparent)}.link-btn{color:var(--accent);font-weight:700;font-size:inherit;background:0 0;border:none;padding:0}.link-btn.muted{color:var(--muted)}.link-btn:hover{text-decoration:underline}.btn{border:1px solid var(--line-2);background:var(--paper);color:var(--ink);transition:background .15s var(--ease), transform .15s var(--ease);border-radius:9px;align-items:center;gap:6px;padding:7px 14px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:color-mix(in srgb, var(--ink) 4%, var(--paper))}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:default}.btn.small{border-radius:8px;padding:4px 10px;font-size:12.5px}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{background:var(--accent-2)}.btn kbd{border-color:color-mix(in srgb, currentColor 35%, transparent);color:inherit;background:0 0}:focus-visible{box-shadow:var(--focus);outline:none}.cm-content:focus-visible,.cm-editor:focus-visible{box-shadow:none}.sidebar{background:var(--panel);border-left:1px solid var(--line);flex-direction:column;min-width:0;height:100%;display:flex;overflow:hidden}.sb-closed .sidebar{border-left:none}.sb-head{flex-direction:column;gap:14px;padding:18px 18px 12px;display:flex}.sb-hero{align-items:center;gap:12px;display:flex}.sb-bubble{background:var(--paper);border:1px solid var(--line);min-width:0;color:var(--muted);box-shadow:var(--shadow);border-radius:14px;flex:1;padding:10px 13px;font-size:14px;font-weight:600;line-height:1.35;position:relative}.sb-bubble.on{color:var(--ink)}.sb-bubble:before{content:"";background:var(--paper);border-left:1px solid var(--line);border-bottom:1px solid var(--line);width:12px;height:12px;position:absolute;top:50%;left:-7px;transform:translateY(-50%)rotate(45deg)}.sb-bubble span{animation:fade-in .26s var(--ease);display:block}.sb-toggles{gap:8px;display:flex}.pill{border:1px solid var(--line-2);background:var(--paper);height:36px;color:var(--ink-2);transition:all .16s var(--ease);border-radius:10px;flex:1;justify-content:center;align-items:center;gap:7px;font-size:13.5px;font-weight:700;display:flex}.pill:hover{border-color:var(--muted)}.pill.on{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, transparent);color:var(--accent)}.sb-scan{padding:0 18px 12px}.scan-btn{background:var(--accent);width:100%;height:48px;color:var(--accent-ink);box-shadow:0 2px 10px color-mix(in srgb, var(--accent) 30%, transparent);transition:transform .15s var(--ease), background .15s var(--ease), opacity .15s;border:none;border-radius:12px;align-items:center;gap:10px;padding:0 16px;font-size:15px;font-weight:800;display:flex}.scan-btn:hover{background:var(--accent-2)}.scan-btn:active{transform:scale(.985)}.scan-btn:disabled{opacity:.45;cursor:default;box-shadow:none}.scan-btn.running{background:var(--accent-soft);color:var(--accent);box-shadow:none}.scan-meta{opacity:.85;margin-left:auto;font-size:13px;font-weight:700}.sb-notices{flex-direction:column;gap:8px;padding:0 18px;display:flex}.sb-notices:empty{display:none}.notice{background:var(--paper);border:1px solid var(--line);color:var(--ink-2);animation:rise .2s var(--ease);border-radius:10px;align-items:center;gap:8px;padding:9px 12px;font-size:13.5px;display:flex}.notice.quiet{color:var(--muted);background:0 0;border-style:dashed}.notice .icon-btn{margin-left:auto}.sb-modules{flex:1;padding:6px 10px 14px;overflow-y:auto}.sb-section{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:14px 10px 6px;font-size:11.5px;font-weight:800}.sb-empty{color:var(--muted);text-align:center;padding:24px}.mod-wrap.open{background:var(--paper);box-shadow:var(--shadow);border-radius:12px;margin:4px 0}.mod-row{transition:background .15s var(--ease);border-radius:12px;align-items:center;gap:4px;padding-right:6px;display:flex}.mod-row:hover{background:color-mix(in srgb, var(--ink) 4.5%, transparent)}.mod-wrap.open .mod-row:hover{background:0 0}.mod-row.mod-all.active{background:var(--paper);box-shadow:var(--shadow)}.mod-main,.mod-all{text-align:left;background:0 0;border:none;border-radius:12px;flex:1;align-items:center;gap:11px;min-width:0;min-height:52px;padding:8px;display:flex}.mod-all{width:100%;padding-right:14px}.mod-icon{width:34px;height:34px;color:var(--mc,var(--ink-2));background:color-mix(in srgb, var(--mc,var(--ink)) 12%, transparent);border-radius:10px;flex:none;place-items:center;display:grid}.mod-icon.neutral{color:var(--ink-2);background:color-mix(in srgb, var(--ink) 7%, transparent)}.mod-text{flex-direction:column;flex:1;min-width:0;display:flex}.mod-name{white-space:nowrap;text-overflow:ellipsis;color:var(--ink);font-size:14.5px;font-weight:700;overflow:hidden}.mod-status{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;font-size:12.5px;display:flex;overflow:hidden}.mod-status.err{color:var(--danger)}.mod-local{color:var(--c3);display:inline-flex}.badge{color:#fff;background:var(--mc);font-variant-numeric:tabular-nums;border-radius:12px;place-items:center;min-width:26px;height:24px;padding:0 8px;font-size:13px;font-weight:800;display:inline-grid}.badge.neutral{background:var(--ink-2);color:var(--paper)}.badge.stale{background:var(--faint)}.badge.pop,.mod-clean.pop{animation:pop .3s var(--spring)}.mod-clean{color:var(--ok);display:inline-flex}.run-btn{border:1px solid var(--line-2);background:var(--paper);width:36px;height:36px;color:var(--ink-2);transition:all .15s var(--ease);border-radius:10px;flex:none;place-items:center;display:grid}.run-btn:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 50%, var(--line));background:var(--accent-soft)}.spinner{border:2px solid color-mix(in srgb, currentColor 25%, transparent);border-top-color:currentColor;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}.spinner.small{width:16px;height:16px;color:var(--mc,var(--accent))}.switch{color:var(--ink-2);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.switch input{opacity:0;pointer-events:none;position:absolute}.switch-track{background:var(--line-2);width:34px;height:20px;transition:background .16s var(--ease);border-radius:10px;flex:none;position:relative}.switch-track:after{content:"";width:16px;height:16px;transition:transform .16s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track:after{transform:translate(14px)}.lens-card{border-left:2px solid color-mix(in srgb, var(--mc) 45%, transparent);animation:rise .2s var(--ease);margin:4px 4px 10px 30px;padding:8px 4px 4px 10px}.lens-list{max-height:340px;margin:0;padding:0;list-style:none;overflow-y:auto}.lens-item{cursor:pointer;border-radius:8px;grid-template-columns:auto 1fr;column-gap:6px;padding:6px 8px;font-size:12.5px;display:grid}.lens-item:hover{background:color-mix(in srgb, var(--mc) 8%, transparent)}.lens-item.touched,.lens-item.stale{opacity:.55}.lens-var{color:var(--muted);background:var(--line);border-radius:5px;grid-row:span 2;align-self:start;height:16px;margin-top:2px;padding:0 5px;font-size:10px;font-weight:800}.lens-item>.lens-quote,.lens-item>.lens-msg{grid-column:2}.lens-quote{font-family:var(--canvas-font);color:var(--ink);font-size:13.5px}.lens-orig{text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--mc) 70%, transparent);text-decoration-color:color-mix(in srgb, var(--mc) 70%, transparent);color:var(--ink-2)}.lens-fix{color:var(--mc)}.lens-msg{color:var(--muted);font-size:12px}.lens-actions{flex-wrap:wrap;align-items:center;gap:6px;padding:8px 4px 2px;display:flex}.lens-tally{color:var(--ok);gap:8px;margin-left:auto;font-size:11.5px;font-weight:700;display:flex}.lens-tally .link-btn{color:var(--muted);font-weight:600}.lens-error,.lens-stale{color:var(--danger);align-items:center;gap:6px;padding:4px 6px 8px;font-size:12px;display:flex}.lens-stale{color:var(--muted)}.chips{flex-wrap:wrap;align-items:center;gap:5px;padding:2px 4px 8px;display:flex}.chip-summary{color:var(--mc);margin-right:4px;font-size:12px;font-weight:800}.chip{border:1px solid color-mix(in srgb, var(--mc,var(--accent)) 35%, var(--line));background:var(--paper);color:var(--ink-2);cursor:pointer;border-radius:14px;padding:2px 9px;font-size:11.5px;font-weight:700}.chip:disabled{opacity:.45;cursor:default}.chip.on{background:var(--mc,var(--accent));border-color:var(--mc,var(--accent));color:#fff}.chip input{display:none}.unify-bar{background:color-mix(in srgb, var(--mc) 9%, transparent);border-radius:8px;align-items:center;gap:8px;margin:0 0 6px;padding:6px 8px;font-size:12px;display:flex}.unify-keys{gap:4px;margin-left:auto;display:flex}.loose{margin:6px 4px;font-size:12px}.loose-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:4px 0;font-size:10.5px;font-weight:800}.loose ul{margin:0;padding:0;list-style:none}.loose li{align-items:baseline;gap:6px;padding:3px 0;display:flex}.loose.notes li{color:var(--ink-2)}.sb-foot{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:12px;padding:8px 16px;font-size:11.5px;display:flex}.sb-session{font-variant-numeric:tabular-nums}.key-prompt{background:var(--paper);border:1px solid color-mix(in srgb, var(--accent) 35%, var(--line));animation:rise .22s var(--ease);border-radius:12px;margin:4px 0 8px;padding:12px}.key-title{align-items:center;gap:6px;font-weight:800;display:flex}.key-prompt p{color:var(--ink-2);margin:6px 0 10px;font-size:12.5px}.key-prompt form{gap:6px;display:flex}.key-prompt input,.sheet input,.sheet select,.sheet textarea,.signin input{border:1px solid var(--line-2);background:var(--bg);border-radius:8px;min-width:0;padding:6px 9px}.key-prompt input{flex:1}.key-bad{color:var(--danger);font-size:12px}.history{flex-direction:column;flex:1;min-height:0;padding:0 8px;display:flex}.history-head{align-items:center;gap:8px;padding:6px 8px 8px;font-weight:800;display:flex}.history-head .icon-btn{margin-left:auto}.history-list{border-radius:10px;flex:1;padding:2px;overflow-y:auto}.history-list:focus-visible{box-shadow:none}.h-item{cursor:pointer;border-radius:8px;grid-template-columns:22px 1fr auto auto;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;display:grid}.h-item.sel{background:var(--paper);box-shadow:var(--shadow)}.history-list:focus .h-item.sel{box-shadow:var(--shadow), inset 0 0 0 1.5px color-mix(in srgb, var(--accent) 45%, transparent)}.h-item.current{grid-template-columns:22px 1fr;font-weight:800}.h-dot{border:2px solid var(--accent);border-radius:50%;justify-self:center;width:9px;height:9px}.h-dot.filled{background:var(--accent)}.h-icon{color:var(--muted);place-items:center;display:grid}.h-label{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.h-pin{color:var(--accent);vertical-align:-1px;margin-left:4px}.h-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.h-bar{gap:1px;display:flex}.h-bar span{border-radius:2px;height:4px}.h-bar .add{background:color-mix(in srgb, var(--ok) 70%, transparent)}.h-bar .rem{background:color-mix(in srgb, var(--danger) 55%, transparent)}.h-bucket{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);padding:10px 8px 4px;font-size:10.5px;font-weight:800}.h-empty{color:var(--muted);padding:14px 10px;font-size:12.5px}.h-pin-form{padding:2px 8px 6px 38px}.h-pin-form input{border:1px solid var(--line-2);background:var(--paper);border-radius:7px;width:100%;padding:4px 8px}.history-keys{color:var(--faint);text-align:center;padding:8px;font-size:11px}.preview-banner{z-index:2;grid-column:1/-1;justify-content:center;height:0;display:flex;position:sticky;top:6px}.preview-banner span{height:26px;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);box-shadow:var(--shadow);border-radius:13px;margin-top:0;padding:3px 12px;font-size:12.5px;font-weight:700}.preview-paper{font-family:var(--canvas-font);font-size:calc(var(--canvas-size,1.125rem) * var(--canvas-scale));white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;color:var(--ink);flex:1;line-height:1.6}.canvas-text .preview-paper{padding:0 200px 0 32px}.preview .card{border-style:dashed}.preview ins{background:color-mix(in srgb, var(--ok) 18%, transparent);border-radius:3px;text-decoration:none}.preview .gone{vertical-align:-.15em;background:var(--danger);opacity:.7;cursor:help;border-radius:1px;width:2px;height:1.1em;margin:0 1px;display:inline-block}.history-list{overflow-x:hidden}.h-actions{animation:rise .16s var(--ease);flex-wrap:wrap;gap:6px;padding:4px 8px 8px 38px;display:flex}.overlay-scrim{background:color-mix(in srgb, var(--ink) 18%, transparent);z-index:300;animation:fade-in .15s var(--ease);justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.overlay-scrim.light{background:color-mix(in srgb, var(--ink) 8%, transparent)}.palette{background:var(--paper);border:1px solid var(--line);width:min(560px,100vw - 32px);box-shadow:var(--shadow-lg);animation:drop .18s var(--ease);border-radius:14px;overflow:hidden}.palette-input{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;padding:12px 14px;display:flex}.palette-input input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:15px}.palette-input input:focus-visible{box-shadow:none}.palette-list{max-height:52vh;padding:6px;overflow-y:auto}.palette-item{cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;display:flex}.palette-item.sel{background:var(--accent-soft)}.palette-item.active{color:var(--accent)}.pi-label{flex-direction:column;flex:1;min-width:0;font-weight:650;display:flex}.pi-sub{font-family:var(--ui-font);color:var(--muted);font-size:11.5px;font-weight:600}.pi-hint{color:var(--muted);font-size:12px}.palette-empty{color:var(--muted);text-align:center;padding:18px}.confirm{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--mc);box-shadow:var(--shadow-lg);animation:drop .18s var(--ease);border-radius:12px;align-items:center;gap:18px;margin-top:18vh;padding:14px 16px;display:flex}.confirm:focus-visible{box-shadow:var(--shadow-lg)}.confirm-title{font-weight:750}.confirm-keys{gap:6px;display:flex}.sheet{background:var(--paper);border:1px solid var(--line);width:min(640px,100vw - 32px);max-height:80vh;box-shadow:var(--shadow-lg);animation:drop .2s var(--ease);border-radius:16px;padding:16px 20px 18px;overflow-y:auto}.sheet:focus-visible{box-shadow:var(--shadow-lg)}.sheet-title{align-items:center;gap:8px;margin-bottom:12px;font-size:15px;font-weight:800;display:flex}.sheet-title .icon-btn{margin-left:auto}.layer-tag{color:var(--muted);background:var(--bg);border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700}.layer-tag.warn{color:var(--c2)}.sheet-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:16px;display:flex}.shortcuts dl{columns:2;column-gap:28px;margin:0}.sc-row{break-inside:avoid;justify-content:space-between;gap:10px;padding:4px 0;font-size:12.5px;display:flex}.sc-row dt{flex:none;gap:3px;display:flex}.sc-row dd{color:var(--ink-2);text-align:right;margin:0}.module-editor{width:min(980px,100vw - 32px)}.me-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;display:grid}.me-fields{flex-direction:column;gap:10px;display:flex}.me-fields label,.set-grid label{color:var(--ink-2);flex-direction:column;gap:4px;font-size:12px;font-weight:700;display:flex}.me-fields textarea{resize:vertical;font-family:var(--ui-font);font-weight:500;line-height:1.45}.me-fields fieldset{border:none;margin:0;padding:0}.me-fields legend{color:var(--ink-2);margin-bottom:4px;font-size:12px;font-weight:700}.me-row{gap:12px;display:flex}.me-row>*{flex:1}.chips-row{gap:4px;display:flex}.swatches{flex-wrap:wrap;gap:5px;display:flex}.swatch{cursor:pointer;outline-offset:2px;border-radius:50%;outline:2px solid #0000;width:20px;height:20px}.swatch.on{outline-color:var(--ink)}.swatch input{opacity:0;width:0;height:0}.swatch:focus-within{outline-color:var(--accent)}.me-test{background:var(--bg);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.me-test-head{justify-content:space-between;align-items:center;font-size:12.5px;font-weight:800;display:flex}.me-sample{resize:vertical;font-family:var(--canvas-font);font-size:14px}.me-result{background:var(--paper);border:1px solid var(--line);border-radius:9px;min-height:120px;padding:10px 12px}.test-render{white-space:pre-wrap;font-family:var(--canvas-font);font-size:14px;line-height:1.7}.set-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.set-grid label.check{flex-direction:row;grid-column:1/-1;align-items:center;gap:8px}.set-section{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.set-head{margin-bottom:8px;font-size:12.5px;font-weight:800}.set-head.small{margin-top:12px}.row{align-items:center;gap:8px;display:flex}.row input{flex:1}.members{border-collapse:collapse;width:100%;margin-bottom:8px;font-size:12.5px}.members td{padding:4px 6px 4px 0}.members .cap{width:80px}.spend b{font-size:18px}.signin{place-items:center;min-height:100%;padding:24px;display:grid}.signin-card{text-align:center;flex-direction:column;align-items:center;gap:12px;width:min(360px,100%);display:flex}.signin-card h1{margin:0 0 8px;font-size:20px}.signin-card form{flex-direction:column;gap:8px;width:100%;display:flex}.signin-card .btn{justify-content:center}.toasts{z-index:310;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;bottom:52px;left:50%;transform:translate(-50%)}.toast{background:var(--ink);color:var(--paper);animation:rise .2s var(--ease);box-shadow:var(--shadow-lg);border-radius:16px;padding:6px 14px;font-size:12.5px;font-weight:700}.sb-fab{display:none}.sk{transform-origin:50% 90%;flex:none;position:relative}.sk img{object-fit:contain;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 3px 6px #281e0a2e);transform-origin:50% 90%;width:100%;height:100%;display:block}.sk-badge{background:var(--paper);border:1px solid var(--line);width:26px;height:26px;color:var(--accent);box-shadow:var(--shadow);animation:pop .3s var(--spring);border-radius:50%;place-items:center;display:grid;position:absolute;top:2px;right:-2px}.sk-zzz,.sk-stars{color:var(--muted);letter-spacing:2px;font-size:13px;font-weight:800;position:absolute;top:-2px;right:-4px}.sk-stars{color:var(--c3);animation:fade-in .2s var(--ease)}.sk-idle img{animation:5s ease-in-out infinite breathe}@keyframes breathe{0%,86%,to{transform:none}92%{transform:scale(1.03,.98)}}.sk-scanning img{animation:rummage .9s var(--ease) infinite}@keyframes rummage{0%,to{transform:rotate(0)translateY(0)}25%{transform:rotate(-6deg)translateY(2px)}75%{transform:rotate(6deg)translateY(2px)}}.sk-thinking img{animation:1.6s ease-in-out infinite ponder}@keyframes ponder{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)translateY(1px)}}.sk-found img{animation:peek 1s var(--spring)}@keyframes peek{0%{transform:translateY(12px)scale(.92)}45%{transform:translateY(-6px)rotate(-8deg)}to{transform:none}}.sk-clean img{animation:shrug .9s var(--ease)}@keyframes shrug{30%{transform:translateY(-4px)rotate(-3deg)}60%{transform:translateY(-4px)rotate(3deg)}}.sk-allFixed img{animation:nap 1.1s var(--ease) forwards}@keyframes nap{to{opacity:.85;transform:translateY(4px)scale(.94,.9)rotate(-6deg)}}.sk-allFixed .sk-zzz{animation:2.4s ease-in-out 1s infinite zzz}@keyframes zzz{50%{opacity:.5;transform:translateY(-4px)}}.sk-error img{animation:trip 1s var(--ease)}@keyframes trip{30%{transform:rotate(20deg)translate(4px)}55%{transform:rotate(-8deg)}}.sk-noKey img{animation:hop .8s var(--spring)}@keyframes hop{40%{transform:translateY(-8px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(4px)}}@keyframes drop{0%{opacity:0;transform:translateY(-6px)scale(.99)}}@keyframes pop{0%{transform:scale(.6)}60%{transform:scale(1.18)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.sk img{animation:none!important}.badge.pop,.mod-clean.pop,.palette,.sheet,.confirm,.toast,.notice{animation-name:fade-in!important}}body{font-size:15px}.header{min-height:64px;padding:14px 22px 10px}.brand{font-size:16px}.modes{border-radius:13px;padding:4px}.mode-btn{white-space:nowrap;border-radius:10px;gap:8px;height:38px;padding:0 14px;font-size:14px}.header-right{align-items:center;gap:8px}.chip-btn{border-radius:10px;gap:7px;height:38px;padding:0 14px;font-size:14px}.chip-btn.on{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}.seg{border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 70%, var(--bg));border-radius:10px;height:38px;padding:3px;display:flex}.seg button{letter-spacing:.04em;color:var(--muted);background:0 0;border:none;border-radius:7px;padding:0 12px;font-size:13px;font-weight:800}.seg button.on{background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}.statusbar{gap:18px;min-height:46px;padding:6px 12px 6px 22px;font-size:13px}.statusbar b{color:var(--ink-2);font-weight:800}.sel-count{background:var(--accent-soft);color:var(--accent);animation:fade-in .12s var(--ease);border-radius:9px;align-items:center;gap:6px;padding:4px 12px;font-weight:700;display:inline-flex}.sel-count b{color:inherit}.bar-btn{height:34px;color:var(--ink-2);background:0 0;border:none;border-radius:9px;align-items:center;gap:6px;padding:0 11px;font-size:13px;font-weight:700;display:inline-flex}.bar-btn:hover,.bar-btn.on{background:color-mix(in srgb, var(--ink) 7%, transparent);color:var(--ink)}.link-btn.quiet{color:var(--muted);font-weight:600}.btn{min-height:36px}.btn.small{min-height:32px;padding:4px 12px;font-size:13.5px}.btn.ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.icon-btn{min-width:32px;min-height:32px}.select-like{justify-content:space-between;font-weight:600}.sb-foot{justify-content:space-between;padding:8px 12px 8px 18px;font-size:12.5px}.sb-foot .icon-btn{margin-left:0}.sb-spend .sep{color:var(--faint);margin:0 6px}.lens-card{animation:rise .2s var(--ease);border-left:none;margin:0;padding:4px 12px 12px 14px}.lens-item{padding:8px 10px;font-size:13.5px}.lens-quote{font-size:14.5px}.lens-msg{font-size:13px}.lens-actions{border-top:1px solid var(--line);gap:8px;margin-top:6px;padding-top:10px}.chip{padding:4px 11px;font-size:12.5px}.key-mask{background:var(--bg);border-radius:8px;flex:1;padding:7px 10px;font-size:13px}.set-hint{color:var(--muted);margin:-4px 0 10px;font-size:13px}.set-section.first{border-top:none;margin-top:0;margin-bottom:16px;padding-top:0}.set-section .row+.row{margin-top:8px}.palette-item{min-height:42px;font-size:14.5px}.palette-input input{font-size:16px}.main{container:main/inline-size}@container main (width<=1020px){.brand,.stat-time{display:none}}@container main (width<=860px){.mode-btn{padding:0 10px}.bar-btn span,.stat-avg{display:none}}@media (width<=900px){.app,.app.sb-closed{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:40;width:min(360px,92vw);box-shadow:var(--shadow-lg);transition:transform .24s var(--ease);position:fixed;top:0;bottom:0;right:0;transform:translate(105%)}.sidebar.open{transform:none}.sb-fab{border:1px solid var(--line);background:var(--paper);width:40px;height:40px;color:var(--accent);box-shadow:var(--shadow-lg);z-index:45;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:50px;right:14px}.brand{display:none}.modes{margin:0}.header{padding:10px 14px}.canvas{padding:18px 14px 100px}.cm-rhythm,.cm-linestats{display:none!important}.hide-narrow{display:none}.me-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.canvas-var{grid-template-columns:minmax(0,1fr)}.card-wide{grid-column:auto}.set-grid{grid-template-columns:minmax(0,1fr)}.shortcuts dl{columns:1}}.hist-drawer{z-index:35;width:290px;box-shadow:var(--shadow-lg);background:var(--panel);border-right:1px solid var(--line);min-width:0;height:100%;animation:slide-in-left .22s var(--ease);flex-direction:column;padding-top:14px;display:flex;position:fixed;top:0;bottom:0;left:0}.hist-drawer .history{padding:0 10px}.hist-tab{z-index:30;border:1px solid var(--line);background:var(--paper);color:var(--ink-2);box-shadow:var(--shadow);transition:padding .16s var(--ease), color .16s var(--ease);border-left:none;border-radius:0 12px 12px 0;flex-direction:column;align-items:center;gap:8px;padding:14px 8px;font-size:13px;font-weight:700;display:flex;position:fixed;top:50%;left:0;transform:translateY(-50%)}.hist-tab span{writing-mode:vertical-rl;letter-spacing:.02em;transform:rotate(180deg)}.hist-tab:hover{color:var(--accent);padding-left:12px}@keyframes slide-in-left{0%{opacity:0;transform:translate(-12px)}}@media (width<=900px){.hist-drawer{width:min(320px,88vw)}}@container main (width<=820px){.ll-unit{display:none}.ll{grid-template-columns:28px auto}.canvas-text .paper{max-width:calc(var(--canvas-measure) + 32px + 120px)}}.kind-picker{color:var(--ink-2);justify-content:space-between;align-items:center;gap:10px;margin:0 18px 12px;font-size:13.5px;font-weight:700;display:flex}.select-wrap{flex:1;max-width:190px;position:relative}.select-wrap select{appearance:none;border:1px solid var(--line-2);background:var(--paper);width:100%;height:36px;color:var(--ink);cursor:pointer;border-radius:10px;padding:0 32px 0 12px;font-size:13.5px;font-weight:700}.select-wrap select:hover{border-color:var(--muted)}.select-wrap .ic{pointer-events:none;color:var(--muted);position:absolute;top:50%;right:10px;transform:translateY(-50%)}.checklist{margin:0 0 4px;padding:0;list-style:none}.ck{border-radius:8px;align-items:flex-start;gap:10px;padding:7px 8px;font-size:13.5px;display:flex}.ck-link{cursor:pointer}.ck-link:hover{background:color-mix(in srgb, var(--mc) 8%, transparent)}.ck-mark{background:var(--line);width:22px;height:22px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.ck-ok .ck-mark{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok)}.ck-weak .ck-mark{background:color-mix(in srgb, var(--c2) 18%, transparent);color:var(--c2)}.ck-missing .ck-mark{background:color-mix(in srgb, var(--danger) 15%, transparent);color:var(--danger)}.ck-text{flex-direction:column;min-width:0;padding-top:2px;display:flex}.ck-label{color:var(--ink);font-weight:600}.ck-unknown .ck-label{color:var(--muted);font-weight:500}.ck-note{color:var(--muted);font-size:12.5px}.lens-error-detail{color:var(--muted);word-break:break-word;margin-top:2px;font-size:12px;display:block}.sb-switches{flex-direction:column;gap:6px;display:flex}.switch-row{border:1px solid var(--line);background:var(--paper);width:100%;min-height:40px;color:var(--ink-2);text-align:left;transition:border-color .15s var(--ease), color .15s var(--ease);border-radius:10px;align-items:center;gap:10px;padding:0 12px;font-size:14px;font-weight:700;display:flex}.switch-row:hover{border-color:var(--line-2)}.switch-row.on{color:var(--ink)}.switch-row.on .ic{color:var(--accent)}.switch-label{flex:1}.switch-row .switch-track{background:var(--line-2);width:34px;height:20px;transition:background .16s var(--ease);border-radius:10px;flex:none;position:relative}.switch-row .switch-track:after{content:"";width:16px;height:16px;transition:transform .16s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch-row.on .switch-track{background:var(--accent)}.switch-row.on .switch-track:after{transform:translate(14px)}.sb-section{justify-content:space-between;align-items:center;display:flex}.sb-section .link-btn{text-transform:none;letter-spacing:0;font-size:13px}.sb-hint{background:var(--accent-soft);color:var(--accent);border-radius:9px;margin:0 8px 8px;padding:8px 10px;font-size:13px;font-weight:600;line-height:1.4}.mod-wrap{transition:background .15s var(--ease);border-radius:12px;margin:2px 0}.mod-wrap.selected{background:color-mix(in srgb, var(--mc) 9%, var(--paper));box-shadow:inset 3px 0 0 var(--mc)}.mod-row.selected:hover{background:0 0}.mod-row.selected .mod-icon{background:var(--mc);color:#fff}:root[data-theme=dark] .mod-row.selected .mod-icon{color:var(--paper)}.row-btn{border:1px solid var(--line-2);background:var(--paper);width:34px;height:34px;color:var(--ink-2);transition:all .15s var(--ease);border-radius:9px;flex:none;place-items:center;display:grid}.row-btn:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 50%, var(--line))}.row-btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.row-btn.ghost:hover,.row-btn.ghost.on{background:color-mix(in srgb, var(--ink) 7%, transparent);color:var(--ink)}.menu-anchor{position:relative}.menu{z-index:20;background:var(--paper);border:1px solid var(--line);min-width:230px;box-shadow:var(--shadow-lg);animation:drop .14s var(--ease);border-radius:12px;padding:5px;position:absolute;top:calc(100% + 4px);right:0}.menu-item{width:100%;min-height:38px;color:var(--ink);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-size:14px;font-weight:600;display:flex}.menu-item:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.menu-item .ic{color:var(--muted)}.mini-switch{background:var(--line-2);border-radius:8px;flex:none;width:28px;height:16px;position:relative}.mini-switch:after{content:"";width:12px;height:12px;transition:transform .15s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.mini-switch.on{background:var(--accent)}.mini-switch.on:after{transform:translate(12px)}.mod-details{animation:rise .16s var(--ease);padding:0 12px 10px 18px}.md-error{color:var(--danger);word-break:break-word;padding:2px 0 6px;font-size:12.5px}.sb-tabs{background:color-mix(in srgb, var(--ink) 5%, transparent);border-radius:12px;gap:3px;margin:2px 18px 12px;padding:3px;display:flex}.sb-tab{min-width:0;height:36px;color:var(--muted);white-space:nowrap;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:none;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:13.5px;font-weight:700;display:flex}.sb-tab:hover{color:var(--ink)}.sb-tab.on{background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}.sb-tab.on .ic{color:var(--accent)}.sb-tab-count{background:var(--line-2);min-width:18px;height:18px;color:var(--ink-2);border-radius:9px;place-items:center;padding:0 5px;font-size:11px;font-weight:800;display:inline-grid}.sb-tab.on .sb-tab-count{background:var(--accent-soft);color:var(--accent)}.mod-icon-btn{background:0 0;border:none;border-radius:10px;flex:none;place-items:center;padding:8px 0 8px 8px;display:grid}.mod-icon-btn:hover .mod-icon{box-shadow:0 0 0 2px color-mix(in srgb, var(--mc) 45%, transparent)}.mod-row .mod-main{padding-left:4px}.mod-row.off-scan .mod-name{color:var(--muted)}.kind-picker{margin-top:0}.purpose-panel{flex-direction:column;gap:8px;margin:0 18px 12px;display:flex}.purpose-panel .kind-picker{margin:0}.purpose-field{color:var(--ink-2);justify-content:space-between;align-items:center;gap:10px;font-size:13.5px;font-weight:700;display:flex}.purpose-field input{border:1px solid var(--line-2);background:var(--paper);max-width:190px;height:36px;color:var(--ink);border-radius:10px;flex:1;padding:0 10px;font-size:13.5px;font-weight:500}.purpose-field input::placeholder{color:var(--faint)}.purpose-field input:focus{border-color:var(--accent);outline:none}.scan-dot-changed{background:var(--accent-ink);opacity:.8;border-radius:50%;flex:none;width:8px;height:8px}.target-ctl{position:relative}.target-pop{z-index:60;background:var(--paper);border:1px solid var(--line);width:290px;box-shadow:var(--shadow-lg);animation:drop .14s var(--ease);border-radius:14px;padding:12px;position:absolute;top:calc(100% + 6px);right:0}.target-row{align-items:baseline;gap:10px;display:flex}.target-row input{border:1px solid var(--line-2);background:var(--bg);font-variant-numeric:tabular-nums;width:96px;height:44px;color:var(--ink);border-radius:10px;padding:0 12px;font-size:24px;font-weight:800}.target-row input:focus{border-color:var(--accent);outline:none}.target-unit{color:var(--muted);font-size:13px;font-weight:600}.target-presets{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.target-presets .chip{padding:5px 12px;font-size:13px}.target-hint{color:var(--faint);margin-top:8px;font-size:11.5px}.ring-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;padding:2px 4px}.ring-btn:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.card-actions{opacity:0;transition:opacity .15s var(--ease);gap:2px;display:flex}.card:hover .card-actions,.card-focused .card-actions{opacity:1}.card-actions .icon-btn{min-width:28px;min-height:28px}.target-input{border:1px solid var(--line-2);background:var(--bg);font-variant-numeric:tabular-nums;width:100%;height:44px;color:var(--ink);border-radius:10px;padding:0 12px;font-size:20px;font-weight:800}.target-input:focus{border-color:var(--accent);outline:none}.target-input::placeholder{color:var(--faint);font-size:14px;font-weight:500}.target-scope{width:100%;margin-top:8px}.target-scope button{white-space:nowrap;text-transform:none;letter-spacing:0;flex:1;padding:0 8px}.over-lines{white-space:nowrap;color:var(--ok);cursor:pointer;background:0 0;border:none;border-radius:7px;flex:none;align-items:center;gap:4px;padding:2px 6px;font-size:11.5px;font-weight:700;display:inline-flex}.over-lines.bad{color:var(--danger);background:color-mix(in srgb, var(--danger) 9%, transparent)}.sel-check{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:none;border-radius:7px;align-items:center;gap:4px;margin-left:6px;padding:2px 8px;font-size:12px;font-weight:800;display:inline-flex}.elapsed,.scan-progress{font-variant-numeric:tabular-nums}.mod-status .elapsed{color:var(--faint)}.find-bar{z-index:45;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-lg);animation:find-rise .16s var(--ease);border-radius:14px;flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;bottom:58px;right:22px}@keyframes find-rise{0%{opacity:0;transform:translateY(8px)}}.find-row{align-items:center;gap:4px;display:flex}.find-spacer{flex:none;width:32px}.find-field{border:1px solid var(--line-2);background:var(--bg);width:300px;height:38px;color:var(--faint);transition:border-color .12s var(--ease);border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.find-field:focus-within{border-color:var(--accent);color:var(--accent)}.find-field.none{border-color:color-mix(in srgb, var(--danger) 55%, var(--line));background:color-mix(in srgb, var(--danger) 5%, var(--bg))}.find-field input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:15px}.find-count{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:700}.find-field.none .find-count{color:var(--danger)}.find-bar .icon-btn:disabled{opacity:.35}.find-bar .btn.small{white-space:nowrap;height:38px}.outline.wide{z-index:20;scrollbar-width:none;max-height:calc(100% - 190px);transition:opacity .18s var(--ease);position:absolute;top:112px;overflow-y:auto}.outline.away{opacity:0;pointer-events:none}.outline-title{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin:0 0 10px 14px;font-size:11px;font-weight:800}.outline ol{border-left:2px solid var(--line);margin:0;padding:0;list-style:none}.outline li{position:relative}.outline button{text-align:left;width:100%;color:var(--muted);font:inherit;cursor:pointer;touch-action:none;transition:color .12s var(--ease), background .12s var(--ease), border-color .12s var(--ease);background:0 0;border:none;border-left:2px solid #0000;border-radius:0 8px 8px 0;align-items:flex-start;gap:10px;margin-left:-2px;padding:6px 8px 6px 14px;font-size:13.5px;line-height:1.35;display:flex}.outline button:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 4%, transparent)}.outline .lvl-1 button{color:var(--ink-2);font-weight:700}.outline .lvl-2 button{padding-left:26px}.outline .lvl-3 button{padding-left:38px;font-size:13px}.outline li.on button{color:var(--accent);border-left-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent)}.outline-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;display:-webkit-box;overflow:hidden}.outline-words{color:var(--faint);font-variant-numeric:tabular-nums;flex:none;padding-top:1px;font-size:11px;font-weight:600}.outline-dash{display:none}.outline-pill-wrap{z-index:40;transition:opacity .18s var(--ease);position:absolute;top:70px}.outline-pill-wrap.away{opacity:0;pointer-events:none}.outline-pill{border:1px solid var(--line);background:var(--paper);max-width:min(420px,60vw);height:32px;color:var(--muted);font:inherit;box-shadow:var(--shadow);cursor:pointer;transition:color .12s var(--ease), border-color .12s var(--ease);border-radius:999px;align-items:center;gap:7px;padding:0 10px 0 12px;font-size:13px;display:inline-flex}.outline-pill:hover,.outline-pill.on{color:var(--ink);border-color:color-mix(in srgb, var(--accent) 35%, var(--line))}.outline-pill-label{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:800}.outline-pill-cur{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--accent);font-weight:700;overflow:hidden}.outline.menu{background:var(--paper);border:1px solid var(--line);width:300px;max-height:60vh;box-shadow:var(--shadow-lg);animation:drop .14s var(--ease);border-radius:14px;padding:10px 10px 10px 12px;position:absolute;top:calc(100% + 6px);left:0}.outline.dragging,.outline.dragging button{cursor:grabbing;-webkit-user-select:none;user-select:none}.outline li.drag-src button{opacity:.45}.outline li.drop-before:before,.outline li.drop-after:after{content:"";background:var(--accent);pointer-events:none;border-radius:2px;height:3px;position:absolute;left:8px;right:4px}.outline li.drop-before:before{top:-2px}.outline li.drop-after:after{bottom:-2px}.outline-ghost{z-index:80;pointer-events:none;background:var(--paper);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));max-width:240px;box-shadow:var(--shadow-lg);color:var(--accent);white-space:nowrap;text-overflow:ellipsis;border-radius:10px;padding:7px 12px;font-size:13px;font-weight:700;position:fixed;overflow:hidden;transform:rotate(-1.5deg)}.cm-editor{font-family:var(--canvas-font);color:var(--ink);font-size:calc(var(--canvas-size,1.125rem) * var(--canvas-scale));background:0 0}.cm-editor.cm-focused{outline:none}.cm-scroller{font-family:inherit;line-height:1.6;overflow:visible}.cm-content{caret-color:var(--accent);white-space:pre-wrap;padding:0}.cm-line{padding:0;position:relative}.cm-cursor{border-left:2px solid var(--accent);margin-left:-1px}.cm-selectionBackground{background:color-mix(in srgb, var(--accent) 22%, transparent)!important}.cm-content ::selection{background:color-mix(in srgb, var(--accent) 22%, transparent)!important}.cm-placeholder{color:var(--faint);font-style:normal}.cm-gutters{color:var(--faint);background:0 0;border:none}.cm-gutterElement{padding:0!important}.cm-rhythm{width:30px;margin-right:6px}.rh{flex-direction:column;align-items:flex-end;gap:3px;padding-top:.55em;display:flex}.rh span{background:var(--line-2);border-radius:2px;height:3px;display:block}.rh span.rh-long{background:color-mix(in srgb, var(--c10) 55%, var(--line-2))}.fx-gutter{width:22px;margin-right:10px}.fx-gut{height:100%;min-height:1.6em;font-family:var(--ui-font);justify-content:flex-end;align-items:flex-start;gap:2px;padding-top:.32em;display:flex;position:relative}.fx-bar{background:var(--fx-c);width:3px;opacity:var(--fx-o,1);border-radius:2px;position:absolute;top:0;bottom:0;right:0}.fx-bar+.fx-bar{right:5px}.fx-bar+.fx-bar+.fx-bar{right:10px}.fx-bar-stale{background:var(--faint)}.fx-glyph{color:var(--fx-c);opacity:var(--fx-o,1);margin-right:6px;font-size:9px;line-height:1.6em}.fx-count{color:var(--ink-2);background:var(--line);border-radius:8px;margin-right:6px;padding:0 5px;font-size:10px;font-weight:700;line-height:15px}.fx-more{color:var(--muted);margin-right:6px;font-size:11px;font-weight:700;line-height:1.6em}.cm-linestats{font-family:var(--ui-font);color:var(--faint);white-space:nowrap;font-variant-numeric:tabular-nums;min-width:92px;padding-left:18px;font-size:11px}.cm-linestats .cm-gutterElement{padding-top:.45em!important}.md-mark{color:var(--faint)}.md-bold{font-weight:700}.md-italic{font-style:italic}.md-link{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);text-underline-offset:3px}.md-url{color:var(--faint)}.md-list{color:var(--muted)}.cm-line.md-h{padding-top:.6em;font-weight:700;line-height:1.3}.cm-line.md-h1{font-size:1.55em}.cm-line.md-h2{font-size:1.25em}.cm-nbsp{background:radial-gradient(circle, var(--muted) 1.2px, transparent 1.6px) center / 100% 100% no-repeat}.cm-eol{width:0;color:var(--faint);pointer-events:none;display:inline-block;overflow:visible}.cm-over{color:var(--danger);background:color-mix(in srgb, var(--danger) 9%, transparent);border-radius:2px}.cm-line.cm-dim{opacity:.28;transition:opacity .2s var(--ease)}.fx{text-decoration-line:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--fx-c) calc(var(--fx-o) * 100%), transparent);text-decoration-color:color-mix(in srgb, var(--fx-c) calc(var(--fx-o) * 100%), transparent);text-underline-offset:var(--fx-off,3px);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;transition:text-decoration-color .2s var(--ease);text-decoration-thickness:1.5px}.fx-wavy{text-decoration-style:wavy;text-decoration-thickness:1.25px}.fx-dotted{text-decoration-style:dotted;text-decoration-thickness:2px}.fx-double{text-decoration-style:double;text-decoration-thickness:1px}.fx-dashed{text-decoration-style:dashed}.fx-solid{text-decoration-style:solid}.fx-role2{text-decoration-style:dashed;-webkit-text-decoration-color:color-mix(in srgb, color-mix(in srgb, var(--fx-c) 55%, var(--paper)) calc(var(--fx-o) * 100%), transparent);text-decoration-color:color-mix(in srgb, color-mix(in srgb, var(--fx-c) 55%, var(--paper)) calc(var(--fx-o) * 100%), transparent);text-decoration-thickness:2px}.fx-touched{text-decoration-thickness:1px}.fx-strike{color:var(--muted);text-decoration-line:underline line-through}.fx-ghost{color:var(--fx-c);opacity:.85;background:color-mix(in srgb, var(--fx-c) 10%, transparent);animation:fx-in .16s var(--ease);border-radius:4px;margin-left:.15em;padding:0 .15em;font-style:italic}.fx-wedge{vertical-align:baseline;pointer-events:none;width:0;height:0;display:inline-block;position:relative}.fx-wedge:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-bottom:6px solid var(--fx-c);opacity:var(--fx-o,1);position:absolute;top:2px;left:-4px}.fx-heat{background:color-mix(in srgb, var(--fx-c) var(--fx-heat), transparent);transition:background .2s var(--ease);border-radius:3px}.fx-stale{filter:grayscale()}.fx-range-on{background:color-mix(in srgb, var(--fx-c) 9%, transparent);border-radius:3px}.fx-pulse{animation:fx-pulse .9s var(--ease) 1}.fx-morph{animation:fx-morph .3s var(--ease);border-radius:3px}.fx-check,.fx-poof{pointer-events:none;width:0;height:0;display:inline-block;position:relative}.fx-check:after{content:"✓";font-family:var(--ui-font);color:var(--ok);animation:fx-pop .42s var(--spring) forwards;font-size:12px;font-weight:800;position:absolute;bottom:.2em;left:2px}.fx-poof:after{content:"";border:2px dotted var(--muted);width:10px;height:10px;animation:fx-poof .42s var(--ease) forwards;border-radius:50%;position:absolute;bottom:.3em;left:-2px}.fx-fadeout{animation:fx-fade .28s var(--ease) forwards}@keyframes fx-in{0%{opacity:0;transform:translateY(2px)}}@keyframes fx-morph{0%{background:color-mix(in srgb, var(--fx-c) 28%, transparent);filter:blur(.6px)}to{filter:none;background:0 0}}@keyframes fx-pop{0%{opacity:0;transform:scale(.4)translateY(2px)}50%{opacity:1;transform:scale(1.15)translateY(-4px)}to{opacity:0;transform:scale(1)translateY(-8px)}}@keyframes fx-poof{0%{opacity:.8;transform:scale(.4)}to{opacity:0;transform:scale(1.8)}}@keyframes fx-fade{to{text-decoration-color:#0000}}@keyframes fx-pulse{0%,to{background:0 0}40%{background:color-mix(in srgb, var(--fx-c) 16%, transparent)}}.cm-tooltip.fx-pop{background:0 0;border:none}.cm-tooltip:has(>.fx-pop){background:0 0;border:none}.fx-pop{font-family:var(--ui-font);color:var(--ink);background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--fx-c);box-shadow:var(--shadow-lg);min-width:180px;max-width:320px;animation:fx-in .15s var(--ease);border-radius:10px;padding:9px 12px 8px;font-size:13.5px;line-height:1.45}.fx-pop-head{color:var(--fx-c);text-transform:none;align-items:center;gap:6px;margin-bottom:2px;font-size:11.5px;font-weight:700;display:flex}.fx-pop-glyph{font-size:9px}.fx-pop-msg{font-weight:600}.fx-pop-fix{font-family:var(--canvas-font);margin-top:5px;font-size:14px}.fx-pop-fix s{color:var(--muted)}.fx-pop-fix b{color:var(--fx-c);font-weight:700}.fx-pop-arrow{color:var(--faint)}.fx-pop-keys{color:var(--muted);gap:12px;margin-top:7px;font-size:11.5px;display:flex}kbd{font-family:var(--ui-font);color:var(--ink-2);background:var(--panel);border:1px solid var(--line-2);text-align:center;border-bottom-width:2px;border-radius:5px;min-width:18px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:16px;display:inline-block}@media (prefers-reduced-motion:reduce){.fx-ghost,.fx-pop,.fx-morph,.fx-pulse{animation:.15s linear fx-fade-simple}.fx-check:after,.fx-poof:after{animation:.3s linear reverse forwards fx-fade-simple}@keyframes fx-fade-simple{0%{opacity:0}}}.cm-linelengths{box-sizing:border-box;flex-shrink:0;width:220px;padding-left:18px}.cm-gutter.cm-linelengths,.cm-linelengths .cm-gutterElement{overflow:visible!important}.ll{height:1.6em;font-family:var(--ui-font);white-space:nowrap;grid-template-columns:44px auto;align-items:center;column-gap:8px;display:grid}.ll-bar{background:var(--line-2);height:3px;transition:width .2s var(--ease), background .2s var(--ease);border-radius:2px;flex:none}.ll-on .ll-bar{background:color-mix(in srgb, var(--accent) 50%, var(--line-2))}.ll-label{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px;line-height:1}.ll-label b{color:var(--ink-2);font-weight:800}.ll-unit{color:var(--muted);font-size:11px}.ll-sep{color:var(--faint)}.ll-label.ll-compact{color:var(--faint);font-size:11px}.cm-gutterElement:hover .ll-compact{color:var(--muted)}.fx-hl{background:color-mix(in srgb, var(--fx-c) 16%, transparent);border-radius:2px}.fx-range-sel{background:color-mix(in srgb, var(--fx-c) 7%, transparent)}.fx-hl.fx-hl-tip{background:color-mix(in srgb, var(--fx-c) 9%, transparent)}.fx-pop-head{justify-content:space-between}.fx-pop-sev{text-transform:uppercase;letter-spacing:.05em;border-radius:6px;padding:1px 6px;font-size:10.5px;font-weight:800}.fx-sev-error{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent)}.fx-sev-tip{color:var(--muted);background:var(--line)}.fx-pop-why{color:var(--ink-2);margin-top:4px;font-size:13.5px;line-height:1.45}.fx-pop-fix{border:1px solid var(--line);background:var(--bg);width:100%;font:inherit;font-family:var(--canvas-font);color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;align-items:flex-start;gap:8px;margin-top:6px;padding:6px 8px;font-size:14px;display:flex}.fx-pop-fix:hover{border-color:var(--fx-c)}.fx-pop-fix kbd{flex:none}.fx-pop-rewrite{max-height:9em;line-height:1.5;display:block;overflow-y:auto}.fx-pop-rewrite ins{background:color-mix(in srgb, var(--ok) 20%, transparent);border-radius:2px;text-decoration:none}.fx-pop-rewrite del{color:var(--muted);-webkit-text-decoration-color:var(--danger);text-decoration-color:var(--danger)}.fx-pop{max-width:420px}.para-check-anchor{vertical-align:top;width:0;height:0;display:inline-block;position:relative}.para-check{border:1px solid var(--line-2);background:var(--paper);width:26px;height:26px;color:var(--accent);box-shadow:var(--shadow);cursor:pointer;opacity:.85;animation:fx-in .15s var(--ease);transition:opacity .15s var(--ease), transform .15s var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;top:.2em;left:-42px}.para-check:hover{opacity:1;border-color:var(--accent);transform:scale(1.08)}.card .para-check{left:-40px}.cm-gutters-before{pointer-events:none}.para-check{z-index:300}.cm-gutter.cm-paracheck{width:0;overflow:visible!important}.cm-paracheck .cm-gutterElement{position:relative;overflow:visible!important}.cm-paracheck .para-check{pointer-events:auto}.ll-target{color:var(--faint);font-weight:600}.ll-over .ll-bar{background:var(--danger)}.ll-over .ll-label,.ll-over .ll-label b,.ll-over .ll-target{color:var(--danger)}.para-check-sel{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);opacity:1}.cm-find{background:#f5b7004d;border-radius:2px}.cm-find-current{background:#f5b700b3;box-shadow:0 0 0 2px #f5b700b3}.cm-check-preview{background:color-mix(in srgb, var(--accent) 9%, transparent);border-radius:3px}
