@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2) format("woff2-variations");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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2) format("woff2-variations");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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #f5efe3;--paper-raised: #fcf8ef;--paper-sunken: #ede4d2;--ink: #24201a;--ink-70: rgba(36, 32, 26, .72);--ink-45: rgba(36, 32, 26, .45);--rule: rgba(36, 32, 26, .16);--rule-strong: rgba(36, 32, 26, .34);--rubric: #bf3b1f;--rubric-deep: #96290f;--rubric-tint: rgba(191, 59, 31, .09);--pencil: #3f7fae;--pencil-tint: rgba(101, 155, 196, .16);--leaf: #4d6b44;--leaf-tint: rgba(77, 107, 68, .12);--font-display: "Fraunces Variable", "Iowan Old Style", Georgia, serif;--font-ui: "IBM Plex Sans", "Helvetica Neue", sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", monospace;--shadow-card: 0 1px 2px rgba(36, 32, 26, .08), 0 8px 24px -12px rgba(36, 32, 26, .25);--shadow-lift: 0 2px 4px rgba(36, 32, 26, .1), 0 18px 44px -16px rgba(36, 32, 26, .35)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.14 0 0 0 0 0.12 0 0 0 0 0.1 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E")}h1,h2,h3{font-family:var(--font-display);font-weight:560;line-height:1.08;letter-spacing:-.015em;margin:0 0 .5em}a{color:inherit}button{font:inherit;cursor:pointer}canvas{display:block}::selection{background:var(--pencil-tint)}.mono-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-45)}.rubric{color:var(--rubric)}.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:10px 22px;border-radius:3px;font-weight:600;font-size:15px;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:hover{background:#3a332a;transform:translateY(-1px);box-shadow:var(--shadow-card)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn--rubric{background:var(--rubric);border-color:var(--rubric)}.btn--rubric:hover{background:var(--rubric-deep)}.btn--ghost{background:transparent;color:var(--ink);border-color:var(--rule-strong)}.btn--ghost:hover{background:var(--paper-raised)}.btn--small{padding:6px 14px;font-size:13px}.crop{position:relative}.crop:before{content:"";position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;pointer-events:none;opacity:.55;background:linear-gradient(var(--ink) 0 0) left 0 top 0 / 1px 11px,linear-gradient(var(--ink) 0 0) left 0 top 0 / 11px 1px,linear-gradient(var(--ink) 0 0) right 0 top 0 / 1px 11px,linear-gradient(var(--ink) 0 0) right 0 top 0 / 11px 1px,linear-gradient(var(--ink) 0 0) left 0 bottom 0 / 1px 11px,linear-gradient(var(--ink) 0 0) left 0 bottom 0 / 11px 1px,linear-gradient(var(--ink) 0 0) right 0 bottom 0 / 1px 11px,linear-gradient(var(--ink) 0 0) right 0 bottom 0 / 11px 1px;background-repeat:no-repeat}.card{background:var(--paper-raised);border:1px solid var(--rule);border-radius:4px;box-shadow:var(--shadow-card)}.hairline{border:0;border-top:1px solid var(--rule);margin:0}.site-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(20px,4vw,48px);background:color-mix(in srgb,var(--paper) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}.wordmark{display:flex;align-items:baseline;gap:10px;font-family:var(--font-display);font-size:22px;font-weight:600;text-decoration:none;letter-spacing:-.01em}.wordmark .fold-glyph{width:18px;height:22px;align-self:center;border:1.5px solid var(--ink);border-radius:1px;position:relative;background:var(--paper-raised)}.wordmark .fold-glyph:after{content:"";position:absolute;top:-1.5px;bottom:-1.5px;left:50%;width:1.5px;background:var(--rubric)}.site-nav{display:flex;gap:26px;align-items:center}.site-nav a{text-decoration:none;font-size:14.5px;font-weight:500;color:var(--ink-70);padding-bottom:2px;border-bottom:1.5px solid transparent}.site-nav a:hover{color:var(--ink)}.site-nav a[data-status=active]{color:var(--ink);border-bottom-color:var(--rubric)}.site-footer{margin-top:96px;border-top:1px solid var(--rule);padding:36px clamp(20px,4vw,48px) 48px;display:flex;justify-content:space-between;align-items:baseline;gap:24px;flex-wrap:wrap;color:var(--ink-45);font-size:13.5px}.page{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}.hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,80px);align-items:center;padding-top:clamp(48px,9vh,110px);padding-bottom:clamp(40px,7vh,90px)}@media(max-width:860px){.hero{grid-template-columns:1fr}}.hero h1{font-size:clamp(42px,6vw,74px);font-variation-settings:"opsz" 72;margin-bottom:20px}.hero h1 em{font-style:italic;color:var(--rubric)}.hero .lede{font-size:clamp(17px,1.6vw,20px);color:var(--ink-70);max-width:34em;margin-bottom:32px}.reveal{opacity:0;transform:translateY(14px);animation:reveal .7s cubic-bezier(.2,.6,.2,1) forwards}@keyframes reveal{to{opacity:1;transform:none}}.fold-stage{perspective:1100px;display:grid;place-items:center;padding:24px 0}.fold-sheet{display:flex;transform-style:preserve-3d;filter:drop-shadow(0 24px 28px rgba(36,32,26,.28))}.fold-half{width:clamp(110px,12vw,150px);height:clamp(160px,17.5vw,218px);background:var(--paper-raised);border:1px solid var(--rule-strong);position:relative;overflow:hidden}.fold-half.left{border-right:none;border-radius:2px 0 0 2px}.fold-half.right{border-left:1px dashed var(--rule-strong);border-radius:0 2px 2px 0;transform-origin:left center;animation:foldloop 5.2s cubic-bezier(.65,0,.25,1) infinite}.fold-half .typeblock{position:absolute;top:14%;right:16%;bottom:14%;left:16%;background:linear-gradient(var(--ink-45) 0 0) 0 8% / 62% 7% no-repeat,repeating-linear-gradient(to bottom,var(--rule) 0 2px,transparent 2px 11px) 0 26% / 100% 74% no-repeat;opacity:.7}.fold-half.right .typeblock{backface-visibility:hidden}@keyframes foldloop{0%,14%{transform:rotateY(0)}46%,62%{transform:rotateY(-178deg)}94%,to{transform:rotateY(0)}}.fold-caption{margin-top:18px;text-align:center}.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.5vw,32px);margin:24px 0 8px}@media(max-width:860px){.features{grid-template-columns:1fr}}.feature{padding:26px 24px 28px}.feature h3{font-size:22px;margin-top:14px}.feature p{color:var(--ink-70);font-size:15px;margin:0}.section-head{display:flex;align-items:baseline;gap:16px;margin:72px 0 28px}.section-head:after{content:"";flex:1;border-top:1px solid var(--rule)}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.5vw,32px);counter-reset:step}@media(max-width:860px){.steps{grid-template-columns:1fr}}.step{counter-increment:step;padding-top:14px;border-top:2px solid var(--ink)}.step:before{content:counter(step,decimal-leading-zero);font-family:var(--font-mono);font-size:13px;color:var(--rubric);letter-spacing:.1em}.step h3{font-size:20px;margin:6px 0}.step p{color:var(--ink-70);font-size:15px;margin:0}.tool-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:28px;align-items:start;padding-top:28px}@media(max-width:880px){.tool-layout{grid-template-columns:1fr}}.rail{position:sticky;top:76px;display:flex;flex-direction:column;gap:18px}@media(max-width:880px){.rail{position:static}}.rail-section{padding:16px 18px 18px}.rail-section+.rail-section{border-top:1px solid var(--rule)}.rail-section .mono-label{display:block;margin-bottom:10px}.mode-toggle{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--rule-strong);border-radius:3px;overflow:hidden}.mode-toggle button{border:0;background:transparent;padding:9px 4px;font-size:13.5px;font-weight:600;color:var(--ink-70)}.mode-toggle button.on{background:var(--ink);color:var(--paper)}.field-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;font-size:14px}.field-row label{color:var(--ink-70)}input[type=text],input[type=number],select{font:inherit;font-size:14px;background:var(--paper-raised);color:var(--ink);border:1px solid var(--rule-strong);border-radius:3px;padding:6px 9px;max-width:130px}input[type=checkbox]{accent-color:var(--rubric);width:16px;height:16px}.preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preset{border:1px solid var(--rule-strong);background:var(--paper-raised);border-radius:3px;padding:8px 10px;text-align:left;font-size:12.5px;line-height:1.35;transition:border-color .1s,background .1s}.preset:hover{border-color:var(--ink)}.preset.on{border-color:var(--rubric);background:var(--rubric-tint);box-shadow:inset 0 0 0 1px var(--rubric)}.preset .dims{font-family:var(--font-mono);font-size:11px;color:var(--ink-45);display:block}.dropzone{margin-top:28px;min-height:380px;display:grid;place-items:center;text-align:center;border:1.5px dashed var(--rule-strong);border-radius:6px;background:var(--paper-raised);transition:border-color .15s,background .15s;cursor:pointer}.dropzone.armed{border-color:var(--pencil);background:var(--pencil-tint)}.dropzone h2{font-size:30px;margin-bottom:8px}.dropzone p{color:var(--ink-70);margin:0 0 4px}.pages-panel{padding:18px 20px 22px}.pages-scroll{height:min(62vh,720px);overflow-y:auto;margin-top:12px;padding-right:6px}.page-row{display:flex;gap:14px}.page-cell{position:relative;cursor:pointer;flex:none}.page-cell .thumb{background:#fff;border:1px solid var(--rule);box-shadow:0 1px 3px #24201a24;transition:box-shadow .12s,transform .12s}.page-cell:hover .thumb{box-shadow:var(--shadow-card);transform:translateY(-1px)}.page-cell .folio{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-45);text-align:center;margin-top:5px}.page-cell.song-start .thumb{outline:2px solid var(--pencil);outline-offset:1px}.page-cell .song-badge{position:absolute;top:-8px;left:-8px;width:22px;height:22px;border-radius:50%;background:var(--pencil);color:#fff;display:grid;place-items:center;font-size:12px;box-shadow:0 1px 3px #24201a4d}.gutter{flex:none;width:18px;align-self:stretch;position:relative;cursor:pointer;border-radius:2px}.gutter:after{content:"";position:absolute;left:50%;top:4px;bottom:22px;border-left:1.5px dashed transparent;transition:border-color .1s}.gutter:hover:after{border-color:var(--rubric)}.gutter.cut:after{border-left:1.5px solid var(--rubric)}.gutter.cut:before{content:"✂";position:absolute;top:-4px;left:50%;transform:translate(-50%) rotate(90deg);color:var(--rubric);font-size:13px}.plan-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.plan-chip{border:1px solid var(--rule-strong);background:var(--paper-raised);border-radius:3px;padding:8px 12px;font-size:12.5px;line-height:1.4}.plan-chip .mono-label{display:block;margin-bottom:2px}.plan-chip .pad-note{color:var(--rubric)}.warnings{margin-top:12px;padding:10px 14px;border-left:3px solid var(--rubric);background:var(--rubric-tint);font-size:13.5px;border-radius:0 3px 3px 0}.preview-panel{margin-top:26px;padding:20px}.preview-carousel{display:flex;gap:20px;overflow-x:auto;padding:16px 4px 10px}.preview-sheet{flex:none;text-align:center}.preview-sheet .thumb{background:#fff;border:1px solid var(--rule);box-shadow:var(--shadow-card)}.preview-sheet figcaption{font-family:var(--font-mono);font-size:11px;color:var(--ink-45);margin-top:8px}.downloads{margin-top:26px;padding:20px}.download-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin-top:14px}.download-card{border:1px solid var(--rule-strong);border-radius:4px;background:var(--paper-raised);padding:14px 16px;text-decoration:none;display:block;transition:transform .12s,box-shadow .12s}.download-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.download-card .name{font-weight:600;font-size:14px;word-break:break-all}.download-card .meta{font-family:var(--font-mono);font-size:11px;color:var(--ink-45);margin-top:4px}.flip-note{margin-top:14px;font-size:13.5px;color:var(--ink-70);border-left:3px solid var(--pencil);background:var(--pencil-tint);padding:10px 14px;border-radius:0 3px 3px 0}.doc-stats{display:flex;gap:26px;flex-wrap:wrap;align-items:baseline;padding:14px 20px;margin-top:20px}.doc-stats .stat .mono-label{display:block}.doc-stats .stat .value{font-family:var(--font-display);font-size:24px;font-weight:560}.price-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.5vw,32px);margin-top:36px}@media(max-width:860px){.price-cards{grid-template-columns:1fr}}.price-card{padding:28px 26px 30px;display:flex;flex-direction:column;gap:10px}.price-card .amount{font-family:var(--font-display);font-size:44px;font-weight:560}.price-card .amount small{font-size:16px;color:var(--ink-45);font-family:var(--font-ui)}.price-card ul{margin:0;padding:0 0 0 18px;color:var(--ink-70);font-size:14.5px;flex:1}.price-card li{margin-bottom:6px}.spin{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.fold-half.right{animation:none}.reveal{animation-duration:1ms}}
