@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/5ece437c7024c161-s.woff2) format("woff2");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:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/9cc5b37ab1350db7-s.p.woff2) format("woff2");unicode-range:u+00??,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:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/35f3de0ebb1cfc70-s.woff2) format("woff2");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:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e6099e249fd938cc-s.p.woff2) format("woff2");unicode-range:u+00??,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:"Instrument Serif Fallback";src:local("Times New Roman");ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.00%;size-adjust:83.94%}.__className_1f5468{font-family:"Instrument Serif","Instrument Serif Fallback";font-weight:400}.__variable_1f5468{--font-display:"Instrument Serif","Instrument Serif Fallback"}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,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-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,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-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,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 Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_1bc20f{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_1bc20f{--font-sans:"IBM Plex Sans","IBM Plex Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");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-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");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-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");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-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");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-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,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-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");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-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");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-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");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-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");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-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,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 Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_46fe82{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_46fe82{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--bg:#0c0b0a;--panel:#131211;--panel-2:#191817;--raised:#201e1c;--line:#232120;--line-2:#302d2a;--fg:#f2efe9;--fg-2:#a29d95;--fg-3:#6d6862;--accent:#cfea5f;--accent-ink:#14180a;--accent-soft:rgba(207,234,95,0.12);--accent-line:rgba(207,234,95,0.4);--ok:#7ed9a0;--warn:#f2c063;--danger:#ff8874;--info:#8fb8f0;--r-xs:6px;--r-sm:8px;--r-md:11px;--r-lg:16px;--sidebar-w:244px;--header-h:61px;--font-ui:var(--font-sans),ui-sans-serif,system-ui,sans-serif;--font-head:var(--font-display),Georgia,serif;--font-code:var(--font-mono),ui-monospace,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-ui);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}::selection{background:var(--accent-soft);color:var(--fg)}a{color:inherit;text-decoration:none}code{font-family:var(--font-code);font-size:.86em;background:var(--raised);border:1px solid var(--line);border-radius:5px;padding:1px 5px;color:var(--fg-2)}.app{display:flex;min-height:100dvh}.sidebar{width:var(--sidebar-w);flex:0 0 var(--sidebar-w);border-right:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:10px;height:var(--header-h);padding:0 16px;border-bottom:1px solid var(--line);flex:0 0 auto}.brand-mark{width:26px;height:26px;border-radius:7px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:16px;line-height:1;padding-bottom:2px}.brand-mark,.brand-name{font-family:var(--font-head)}.brand-name{font-size:18px;letter-spacing:-.01em}.side-scroll{flex:1 1;overflow-y:auto;padding:14px 10px}.side-group{margin-bottom:20px}.side-label{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-3);padding:0 8px;margin-bottom:6px}.side-link{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--r-sm);color:var(--fg-2);font-size:13.5px;font-weight:500;border:1px solid transparent;transition:background .13s ease,color .13s ease;cursor:pointer;width:100%;background:none;font-family:inherit;text-align:left}.side-link:hover{background:var(--panel-2);color:var(--fg)}.side-link[aria-current=true]{background:var(--raised);border-color:var(--line-2);color:var(--fg)}.side-link[aria-current=true] svg{color:var(--accent)}.side-count{margin-left:auto;font-size:11px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--fg-3);background:var(--bg);border:1px solid var(--line-2);border-radius:999px;padding:0 6px;min-width:20px;text-align:center}.side-foot{border-top:1px solid var(--line);padding:12px;display:flex;align-items:center;gap:10px;flex:0 0 auto}.avatar{width:30px;height:30px;border-radius:8px;background:var(--raised);border:1px solid var(--line-2);display:grid;place-items:center;font-size:11.5px;font-weight:600;color:var(--fg-2);flex:0 0 auto}.side-id{min-width:0;flex:1 1}.side-id b{display:block;font-size:12.5px;font-weight:600}.side-id span{display:block;font-size:11px;color:var(--fg-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{width:30px;height:30px;border-radius:var(--r-sm);border:1px solid transparent;background:none;color:var(--fg-3);display:grid;place-items:center;cursor:pointer;transition:background .13s ease,color .13s ease;flex:0 0 auto}.icon-btn:hover{background:var(--raised);color:var(--fg)}.main{flex:1 1;min-width:0;display:flex;flex-direction:column}.pagehead{height:var(--header-h);display:flex;align-items:center;gap:14px;padding:0 26px;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20}.pagehead-title{font-family:var(--font-head);font-size:21px;font-weight:400;letter-spacing:-.01em;margin:0;white-space:nowrap}.pagehead-sub{font-size:12.5px;color:var(--fg-3);border-left:1px solid var(--line-2);padding-left:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pagehead-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.canvas{flex:1 1;padding:26px}.canvas-narrow{max-width:780px}.canvas-wide{max-width:1180px}.stack{gap:18px}.stack,.stack-tight{display:flex;flex-direction:column}.stack-tight{gap:10px}.section{border-top:1px solid var(--line);padding-top:20px;margin-top:4px}.section:first-child{border-top:none;padding-top:0;margin-top:0}.section-head{margin-bottom:16px}.section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--fg-3);margin:0 0 4px}.section-desc{font-size:13px;color:var(--fg-2);margin:0;max-width:62ch}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px}.panel-flush{padding:0;overflow:hidden}.muted{color:var(--fg-2);font-size:13px;line-height:1.6}.dim{color:var(--fg-3);font-size:12px}.row{display:flex;gap:8px;flex-wrap:wrap}.row>*{flex:1 1;min-width:132px}.row-auto>*{flex:0 0 auto;min-width:0}.field{margin-bottom:16px}.field:last-child{margin-bottom:0}label{display:block;font-size:12.5px;font-weight:500;color:var(--fg);margin-bottom:6px}.hint{font-size:12px;color:var(--fg-3);margin:6px 0 0;line-height:1.5}label+.hint{margin:-2px 0 7px}input,select,textarea{width:100%;background:var(--bg);border:1px solid var(--line-2);color:var(--fg);border-radius:var(--r-md);padding:9px 12px;font-size:14px;font-family:inherit;transition:border-color .13s ease,box-shadow .13s ease}input::placeholder,textarea::placeholder{color:var(--fg-3)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}input:-moz-read-only,textarea:-moz-read-only{color:var(--fg-2);background:var(--panel-2)}input:read-only,textarea:read-only{color:var(--fg-2);background:var(--panel-2)}textarea{resize:vertical;min-height:92px;font-family:var(--font-code);font-size:13px;line-height:1.65}input[type=file]{padding:7px 10px;font-size:12.5px;color:var(--fg-2)}input[type=file]::-webkit-file-upload-button{font:inherit;font-weight:500;margin-right:10px;padding:5px 11px;border-radius:var(--r-xs);border:1px solid var(--line-2);background:var(--raised);color:var(--fg);cursor:pointer}input[type=file]::file-selector-button{font:inherit;font-weight:500;margin-right:10px;padding:5px 11px;border-radius:var(--r-xs);border:1px solid var(--line-2);background:var(--raised);color:var(--fg);cursor:pointer}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 16px;gap:0 16px}.grid-2>.span-2{grid-column:1/-1}.actionbar{position:-webkit-sticky;position:sticky;bottom:0;display:flex;align-items:center;gap:10px;padding:14px 0 0;margin-top:4px;border-top:1px solid var(--line);background:linear-gradient(transparent,var(--bg) 34%)}.actionbar .spacer{flex:1 1}.steps{display:flex;flex-direction:column;gap:0}.step{display:grid;grid-template-columns:26px 1fr;grid-gap:14px;gap:14px}.step-rail{display:flex;flex-direction:column;align-items:center}.step-num{width:24px;height:24px;border-radius:50%;border:1px solid var(--line-2);background:var(--panel);color:var(--fg-3);font-size:11.5px;font-weight:600;display:grid;place-items:center;flex:0 0 auto;transition:all .16s ease}.step[data-done=true] .step-num{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.step[data-active=true] .step-num{border-color:var(--accent-line);color:var(--accent)}.step-line{flex:1 1;width:1px;background:var(--line);margin:6px 0}.step:last-child .step-line{display:none}.step-body{padding-bottom:22px;min-width:0}.step:last-child .step-body{padding-bottom:0}.step-title{font-size:13.5px;font-weight:600;margin:3px 0 2px}.step-desc{font-size:12.5px;color:var(--fg-3);margin:0 0 12px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line-2);background:var(--raised);color:var(--fg);padding:8px 13px;min-height:36px;border-radius:var(--r-md);font-family:inherit;font-size:13.5px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .13s ease,border-color .13s ease,opacity .13s ease}.btn:hover:not(:disabled){background:#2b2825;border-color:#3d3a36}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent-line)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn-primary:hover:not(:disabled){background:#dcf47f;border-color:#dcf47f}.btn-ghost{background:transparent;border-color:transparent;color:var(--fg-2)}.btn-ghost:hover:not(:disabled){background:var(--raised);color:var(--fg);border-color:transparent}.btn-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,var(--line-2))}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 12%,var(--raised))}.btn-sm{padding:5px 10px;min-height:30px;font-size:12.5px;border-radius:var(--r-sm)}.btn-lg{padding:11px 20px;min-height:44px;font-size:14.5px}.btn-block{width:100%}.dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto;background:var(--fg-3)}.dot-draft{background:var(--warn)}.dot-sent{background:var(--ok)}.dot-failed{background:var(--danger)}.chip{display:inline-flex;align-items:center;gap:6px;background:var(--raised);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:500;color:var(--fg-2);white-space:nowrap}.chip-accent{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.banner{display:flex;gap:10px;align-items:flex-start;border-radius:var(--r-md);padding:11px 13px;font-size:13px;line-height:1.55;border:1px solid var(--line);border-left-width:3px;background:var(--panel)}.banner svg{margin-top:2px}.banner-error{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 26%,var(--line));border-left-color:var(--danger)}.banner-warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 26%,var(--line));border-left-color:var(--warn)}.banner-ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 26%,var(--line));border-left-color:var(--ok)}.rows{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--panel)}.rowitem{display:flex;align-items:center;gap:12px;padding:13px 16px;width:100%;background:none;border:none;border-bottom:1px solid var(--line);font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background .12s ease}.rowitem:last-child{border-bottom:none}.rowitem:hover{background:var(--panel-2)}.rowitem[aria-current=true]{background:var(--raised);box-shadow:inset 2px 0 0 var(--accent)}.rowitem-main{min-width:0;flex:1 1}.rowitem-title{font-size:13.5px;font-weight:600}.rowitem-meta,.rowitem-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rowitem-meta{font-size:12px;color:var(--fg-3);margin-top:2px}.rowitem-actions{display:flex;gap:6px;flex:0 0 auto;opacity:0;transition:opacity .13s ease}.rowitem:focus-within .rowitem-actions,.rowitem:hover .rowitem-actions{opacity:1}@media (hover:none){.rowitem-actions{opacity:1}}.rowitem-static{cursor:default}.rowitem-static:hover{background:none}.rowdetail{padding:0 16px 16px;border-bottom:1px solid var(--line);background:var(--panel-2)}.split{display:grid;grid-template-columns:340px 1fr;grid-gap:0;gap:0;flex:1 1;min-height:0}.split-list{border-right:1px solid var(--line);min-width:0;display:flex;flex-direction:column}.split-detail{min-width:0;padding:24px 26px;overflow-y:auto}.toolbar{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}.searchbox{position:relative;flex:1 1;min-width:0}.searchbox svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--fg-3)}.searchbox input{padding-left:32px;font-size:13px}.seg{display:inline-flex;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:2px;gap:2px}.seg button{border:none;background:none;font:inherit;font-size:12px;font-weight:500;color:var(--fg-3);padding:4px 10px;border-radius:6px;cursor:pointer;transition:background .12s ease,color .12s ease}.seg button:hover{color:var(--fg-2)}.seg button[aria-pressed=true]{background:var(--raised);color:var(--fg)}.scrolllist{flex:1 1;overflow-y:auto}.empty{border:1px dashed var(--line-2);border-radius:var(--r-lg);padding:44px 28px;text-align:center}.empty-icon{width:42px;height:42px;border-radius:12px;background:var(--raised);border:1px solid var(--line-2);display:grid;place-items:center;margin:0 auto 14px;color:var(--fg-3)}.empty-title{font-family:var(--font-head);font-size:20px;margin:0 0 6px}.empty-desc{font-size:13px;color:var(--fg-3);margin:0 auto 16px;max-width:42ch;line-height:1.6}.skel{background:linear-gradient(90deg,var(--panel-2),var(--raised),var(--panel-2));background-size:200% 100%;border-radius:var(--r-sm);animation:shimmer 1.3s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid;border-top:2px solid transparent;opacity:.8;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(1turn)}}.dropzone{border:1px dashed var(--line-2);border-radius:var(--r-lg);background:var(--panel);padding:20px;transition:border-color .15s ease,background .15s ease}.dropzone[data-over=true]{border-color:var(--accent-line);background:var(--accent-soft)}.tray{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px}.thumb{position:relative;flex:0 0 auto;width:92px;height:122px;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line-2);background:var(--raised)}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb .idx{position:absolute;left:6px;bottom:6px;background:var(--accent);color:var(--accent-ink);font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px}.thumb .move,.thumb .x{position:absolute;top:6px;border:none;background:rgba(8,8,6,.82);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--fg);cursor:pointer;display:grid;place-items:center;transition:background .13s ease,color .13s ease}.thumb .x{right:6px;width:23px;height:23px;border-radius:50%;font-size:14px;line-height:1}.thumb .move{left:6px;font-size:11px;border-radius:var(--r-xs);padding:3px 6px}.thumb .x:hover{background:var(--danger);color:var(--bg)}.thumb .move:hover{background:var(--accent);color:var(--accent-ink)}.add-tile{flex:0 0 auto;width:92px;height:122px;border-radius:var(--r-md);border:1px dashed var(--line-2);background:transparent;color:var(--fg-3);cursor:pointer;display:grid;place-items:center;transition:all .14s ease}.add-tile:hover{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft)}.kv{display:grid;grid-template-columns:auto 1fr;grid-gap:8px 16px;gap:8px 16px;font-size:13px}.kv dt{color:var(--fg-3)}.kv dd{margin:0;color:var(--fg-2);min-width:0;overflow-wrap:anywhere}.mobilebar{display:none}@media (max-width:900px){:root{--header-h:56px}.sidebar{display:none}.app{flex-direction:column}.pagehead{padding:0 16px}.pagehead-sub{display:none}.canvas{padding:16px 16px 84px}.split{display:block}.split-list{border-right:none}.split-detail{padding:16px 16px 84px}.grid-2{grid-template-columns:1fr}.mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;height:62px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:40}.mobilebar a{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10.5px;font-weight:500;color:var(--fg-3);transition:color .13s ease}.mobilebar a[aria-current=true]{color:var(--accent)}.btn{min-height:40px}.btn-sm{min-height:32px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:var(--raised);border-radius:999px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--line-2)}.center-page{min-height:100dvh;display:grid;place-items:center;padding:24px}.page-title{font-family:var(--font-head);font-size:28px;font-weight:400;letter-spacing:-.015em;margin:0 0 6px}.only-mobile{display:none}@media (max-width:900px){.split[data-selected=false] .split-detail,.split[data-selected=true] .split-list{display:none}.only-mobile{display:inline-flex}div.only-mobile{display:block}}.public{max-width:760px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:0 24px}.public-head{justify-content:space-between;gap:16px;padding:22px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.public-brand,.public-head{display:flex;align-items:center}.public-brand{gap:10px}.public-nav{display:flex;align-items:center;gap:18px;font-size:13.5px;color:var(--fg-2)}.public-nav a{transition:color .13s ease}.public-nav a:hover{color:var(--fg)}.public-nav a.btn:hover{color:var(--accent-ink)}.public-body{flex:1 1;padding:44px 0 60px}.public-title{font-family:var(--font-head);font-size:40px;font-weight:400;line-height:1.1;letter-spacing:-.02em;margin:0 0 10px}.public-sub{color:var(--fg-3);font-size:15px;margin:0 0 34px}.public-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0 28px;border-top:1px solid var(--line);font-size:12.5px;color:var(--fg-3);flex-wrap:wrap}.prose{font-size:15px;line-height:1.72;color:var(--fg-2)}.prose p{margin:0 0 18px}.prose strong{color:var(--fg);font-weight:600}.prose a{color:var(--accent);text-decoration:underline}.prose h2{font-family:var(--font-head);font-size:23px;font-weight:400;letter-spacing:-.01em;color:var(--fg);margin:40px 0 12px;padding-top:20px;border-top:1px solid var(--line)}.prose h3{font-size:15px;font-weight:600;color:var(--fg);margin:26px 0 10px}.prose ul{margin:0 0 18px;padding-left:20px}.prose li{margin-bottom:9px}.prose li::marker{color:var(--fg-3)}@media (max-width:560px){.public{padding:0 18px}.public-title{font-size:30px}.public-body{padding:32px 0 44px}.prose h2{font-size:20px;margin-top:32px}}