@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_6d24ac{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_6d24ac{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}:root{color-scheme:light dark;--font-serif:var(--font-serif-cjk),var(--font-serif-latin),"Songti SC","SimSun",ui-serif,Georgia,serif;--font-sans:var(--font-sans-cjk),var(--font-sans-latin),"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;--font-mono:var(--font-mono),"SF Mono",Menlo,monospace;--paper:light-dark(oklch(0.968 0.012 78),oklch(0.2 0.012 68));--paper-raised:light-dark(oklch(0.94 0.012 78),oklch(0.24 0.013 68));--paper-sunken:light-dark(oklch(0.98 0.006 78),oklch(0.17 0.012 68));--ink:light-dark(oklch(0.23 0.025 52),oklch(0.94 0.014 82));--ink-muted:light-dark(oklch(0.48 0.02 56),oklch(0.72 0.018 80));--ink-subtle:light-dark(oklch(0.62 0.018 60),oklch(0.55 0.02 72));--rule:light-dark(oklch(0.82 0.014 78),oklch(0.33 0.012 68));--rule-strong:light-dark(oklch(0.7 0.02 68),oklch(0.45 0.015 68));--cinnabar:light-dark(oklch(0.54 0.19 32),oklch(0.7 0.17 32));--cinnabar-soft:light-dark(oklch(0.62 0.14 32),oklch(0.74 0.13 32));--cinnabar-ink:light-dark(oklch(0.98 0.01 80),oklch(0.15 0.01 68));--danger:light-dark(oklch(0.48 0.18 25),oklch(0.72 0.18 25));--danger-bg:light-dark(oklch(0.95 0.02 30),oklch(0.24 0.03 28));--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:72px;--space-4xl:96px;--ease-out:cubic-bezier(0.22,1,0.36,1)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}body,html{background:var(--paper);color:var(--ink);font-family:var(--font-sans);min-height:100vh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"ss01","cv11","kern"}body{background-image:radial-gradient(circle at 25% 30%,color-mix(in oklch,var(--ink) 3%,transparent),transparent .8px),radial-gradient(circle at 75% 70%,color-mix(in oklch,var(--ink) 2%,transparent),transparent .8px);background-size:3px 3px,5px 5px;background-position:0 0,1px 2px}button{cursor:pointer;background:none}button,input,select,textarea{font:inherit;border:none;color:inherit}input,select,textarea{background:transparent;outline:none}textarea{resize:vertical;font-family:inherit}::selection{background:color-mix(in oklch,var(--cinnabar) 25%,transparent)}a{color:inherit}.shell{max-width:1240px;margin:0 auto;padding:var(--space-2xl) var(--space-lg) var(--space-4xl)}.masthead{display:grid;grid-template-columns:auto 1fr auto;align-items:end;grid-gap:var(--space-lg);gap:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1.5px solid var(--ink);margin-bottom:var(--space-2xl)}.seal{width:52px;height:52px;background:var(--cinnabar);color:var(--cinnabar-ink);display:grid;place-items:center;font-family:var(--font-serif);font-weight:700;font-size:26px;letter-spacing:-1px;position:relative;border-radius:2px}.seal:after{content:"";position:absolute;inset:4px;border:1px solid color-mix(in oklch,var(--cinnabar-ink) 40%,transparent);border-radius:1px;pointer-events:none}.mast-title{display:grid;grid-gap:2px;gap:2px}.mast-title h1{font-family:var(--font-serif);font-weight:500;font-size:clamp(22px,2.6vw,28px);line-height:1.1;letter-spacing:-.3px}.mast-sub{font-family:var(--font-sans);font-size:12px;letter-spacing:.4px}.mast-meta,.mast-sub{color:var(--ink-muted);text-transform:uppercase}.mast-meta{display:grid;grid-gap:2px;gap:2px;text-align:right;font-family:var(--font-mono);font-size:11px;letter-spacing:.3px}.mast-meta .cinnabar{color:var(--cinnabar);font-weight:500}.mast-quota{position:relative;gap:10px;justify-content:flex-end}.mast-quota,.mast-redeem{display:inline-flex;align-items:center}.mast-redeem{padding:4px 12px;border:1px solid var(--cinnabar);border-radius:3px;background:transparent;color:var(--cinnabar);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.mast-redeem.is-open,.mast-redeem.is-urgent,.mast-redeem:hover{background:var(--cinnabar);color:var(--cinnabar-ink)}.mast-redeem.is-urgent{box-shadow:0 0 0 3px color-mix(in oklch,var(--cinnabar) 20%,transparent)}.mast-redeem.is-urgent:hover{filter:brightness(1.05)}.recharge-popover{position:absolute;top:calc(100% + 10px);right:0;width:min(360px,calc(100vw - var(--space-lg) * 2));padding:var(--space-sm) var(--space-sm) calc(var(--space-sm) - 2px);background:var(--paper);border:1px solid var(--ink);border-radius:3px;box-shadow:0 1px 0 var(--ink),0 12px 28px -12px color-mix(in oklch,var(--ink) 45%,transparent);text-align:left;text-transform:none;letter-spacing:normal;color:var(--ink);z-index:40;animation:recharge-popover-in .18s var(--ease-out)}.recharge-popover:after,.recharge-popover:before{content:"";position:absolute;right:18px;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent}.recharge-popover:before{top:-8px;border-bottom:8px solid var(--ink)}.recharge-popover:after{top:-7px;border-bottom:8px solid var(--paper)}@keyframes recharge-popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.recharge-popover{position:fixed;top:auto;right:var(--space-sm);left:var(--space-sm);bottom:var(--space-sm);width:auto}.recharge-popover:after,.recharge-popover:before{display:none}}.mast-auth{display:inline-flex;align-items:center;gap:8px;justify-content:flex-end}.mast-auth__btn{display:inline-block;padding:2px 8px;border:1px solid var(--ink-muted);border-radius:3px;background:transparent;color:var(--ink-muted);font-family:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;text-decoration:none;cursor:pointer;transition:color .15s,border-color .15s}.mast-auth__btn:hover{color:var(--cinnabar);border-color:var(--cinnabar)}.mast-auth__btn:disabled{cursor:not-allowed;opacity:.6}.mast-theme{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border:1px solid var(--ink-muted);border-radius:3px;background:transparent;color:var(--ink-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.3px;text-transform:uppercase;cursor:pointer;transition:color .15s ease,border-color .15s ease}.mast-theme:hover{color:var(--cinnabar);border-color:var(--cinnabar)}.mast-theme__glyph{font-size:12px;line-height:1}.sec{display:grid;grid-gap:var(--space-md);gap:var(--space-md)}.sec+.sec{margin-top:var(--space-2xl)}.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid var(--ink)}.sec-title{font-family:var(--font-serif);font-weight:500;font-size:20px;letter-spacing:-.2px}.sec-no{font-family:var(--font-mono);font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-muted)}.workbench{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);grid-gap:var(--space-xl);gap:var(--space-xl);align-items:stretch}@media (max-width:880px){.workbench{grid-template-columns:1fr}}.intent-col,.prompt-col{display:flex;flex-direction:column;gap:var(--space-md)}.micro-label{font-family:var(--font-mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-muted)}.intent-field{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.intent-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm)}.intent-count{font-family:var(--font-mono);font-size:10px;letter-spacing:.6px;color:var(--ink-subtle)}.intent-input{width:100%;padding:var(--space-md);font-family:var(--font-serif);font-size:17px;line-height:1.7;color:var(--ink);background:var(--paper-sunken);border:1px solid var(--rule);resize:vertical;min-height:140px;transition:border-color .18s var(--ease-out)}.intent-input::placeholder{color:var(--ink-subtle);font-style:italic;line-height:1.7}.intent-input:focus{border-color:var(--ink);outline:none}.intent-hint{font-family:var(--font-sans);font-size:12px;color:var(--ink-subtle);line-height:1.5}.tpl-field{display:grid;grid-gap:6px;gap:6px;margin-top:var(--space-xs);padding-top:var(--space-xs);border-top:1px dotted var(--rule-strong)}.tpl-select{width:100%;padding:8px 24px 8px 0;font-family:var(--font-serif);font-style:italic;font-size:14px;color:var(--ink);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--cinnabar) 50%),linear-gradient(-45deg,transparent 50%,var(--cinnabar) 50%);background-position:calc(100% - 10px) 55%,calc(100% - 6px) 55%;background-size:4px 4px,4px 4px;background-repeat:no-repeat;border-bottom:1px solid transparent;transition:border-color .15s ease,color .15s ease}.tpl-select:focus-visible,.tpl-select:hover{border-bottom-color:var(--rule-strong);color:var(--cinnabar)}.tpl-select option{font-style:normal;font-family:var(--font-sans);background:var(--paper);color:var(--ink)}.tpl-select optgroup{font-family:var(--font-serif);font-weight:600;font-style:normal;color:var(--ink-muted);background:var(--paper-sunken)}.tpl-hint{font-family:var(--font-sans);font-size:11px;color:var(--ink-subtle);line-height:1.5;letter-spacing:.01em}.styles{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.style-row{display:flex;flex-wrap:wrap;gap:6px}.style-chip{padding:6px 11px;font-family:var(--font-serif);font-size:13px;color:var(--ink-muted);background:transparent;border:1px solid var(--rule);transition:color .18s var(--ease-out),border-color .18s var(--ease-out),background .18s var(--ease-out)}.style-chip:hover:not(:disabled){color:var(--ink);border-color:var(--rule-strong)}.style-chip.is-on{color:var(--cinnabar-ink);background:var(--cinnabar);border-color:var(--cinnabar)}.style-chip-none{font-style:italic}.style-chip:disabled{opacity:.5;cursor:not-allowed}.muse-action{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 16px;font-family:var(--font-sans);font-size:13px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--ink);background:transparent;border:1px solid var(--ink);transition:background .18s var(--ease-out),color .18s var(--ease-out);align-self:flex-start}.muse-action:hover:not(:disabled){background:var(--ink);color:var(--paper)}.muse-action:disabled{color:var(--ink-subtle);border-color:var(--rule);cursor:wait}.muse-model{font-family:var(--font-mono);font-size:10px;color:var(--cinnabar);letter-spacing:1px;text-transform:uppercase;padding-left:8px;border-left:1px solid;margin-left:4px}.prompt-col{position:relative}.prompt-head{display:flex;justify-content:space-between;align-items:baseline}.prompt-origin{font-family:var(--font-mono);font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-subtle)}.prompt-origin .cinnabar{color:var(--cinnabar)}.prompt-area{width:100%;min-height:260px;resize:vertical;padding:var(--space-md);background:var(--paper-sunken);border:1px solid var(--rule);line-height:1.75;font-family:var(--font-serif);font-size:15px;color:var(--ink);transition:border-color .18s var(--ease-out),box-shadow .4s var(--ease-out)}.prompt-area::placeholder{color:var(--ink-subtle);font-style:italic}.prompt-area:focus{border-color:var(--ink)}.prompt-area.is-fresh{box-shadow:inset 0 0 0 2px var(--cinnabar-soft);animation:fresh-fade 1.2s var(--ease-out) forwards}@keyframes fresh-fade{0%{box-shadow:inset 0 0 0 2px var(--cinnabar-soft)}to{box-shadow:inset 0 0 0 0 transparent}}.prompt-foot{display:flex;justify-content:space-between;align-items:center}.clear-btn,.prompt-foot{font-family:var(--font-mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted)}.clear-btn{text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;text-underline-offset:3px;transition:color .15s ease}.clear-btn:hover:not(:disabled){color:var(--cinnabar)}.clear-btn:disabled{opacity:.4;cursor:default}.muse-error{font-family:var(--font-mono);font-size:11px;letter-spacing:.4px;color:var(--danger)}.commit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;margin-top:var(--space-xl);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}@media (max-width:880px){.commit-row{grid-template-columns:1fr}}.params-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:640px){.params-strip{grid-template-columns:repeat(2,1fr)}}.param-inline{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;padding:10px 16px;border-right:1px solid var(--rule);min-width:0}.param-hint{flex-basis:100%;margin-top:2px;font-family:var(--font-sans);font-size:11px;line-height:1.4;color:var(--ink-muted);letter-spacing:.2px}.param-inline:last-child{border-right:1px solid var(--rule)}@media (max-width:880px){.param-inline:last-child{border-right:none}}@media (max-width:640px){.param-inline:nth-child(2n){border-right:none}.param-inline:nth-child(-n+2){border-bottom:1px solid var(--rule)}}.param-inline .micro-label{font-size:10px;white-space:nowrap}.param-select{width:100%;padding:2px 18px 2px 0;font-family:var(--font-serif);font-size:15px;color:var(--ink);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-muted) 50%),linear-gradient(-45deg,transparent 50%,var(--ink-muted) 50%);background-position:calc(100% - 9px) 55%,calc(100% - 5px) 55%;background-size:4px 4px,4px 4px;background-repeat:no-repeat;transition:color .15s ease}.param-select:hover{color:var(--cinnabar)}.param-select option{background:var(--paper)}.hint-note,.param-select option{color:var(--ink);font-family:var(--font-sans)}.hint-note{margin-top:10px;padding:8px 12px;font-size:12px;line-height:1.5;background:color-mix(in srgb,var(--cinnabar) 8%,transparent);border-left:2px solid var(--cinnabar);letter-spacing:.3px}.side-notes{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm);margin-top:var(--space-md)}.press{padding:14px 28px;min-width:220px;background:var(--ink);color:var(--paper);font-family:var(--font-sans);font-weight:600;font-size:14px;letter-spacing:.8px;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-left:1px solid var(--ink);transition:background .18s var(--ease-out),color .18s var(--ease-out),transform .08s ease}@media (max-width:880px){.press{width:100%;border-left:none;border-top:1px solid var(--ink)}}.press:hover:not(:disabled){background:var(--cinnabar);color:var(--cinnabar-ink)}.press:active:not(:disabled){transform:translateY(1px)}.press:disabled{background:var(--paper-raised);color:var(--ink-subtle);cursor:not-allowed}.press-dash{font-family:var(--font-serif);font-weight:400;opacity:.5}.spinner{display:inline-block;width:12px;height:12px;border-radius:50%;border:1.5px solid color-mix(in oklch,currentColor 25%,transparent);border-top-color:currentcolor;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.error{padding:12px 14px;background:var(--danger-bg);border:1px solid var(--danger);color:var(--danger);font-family:var(--font-sans);font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word;max-width:640px}.quota-exhausted{color:var(--cinnabar);border-color:var(--cinnabar);background:color-mix(in oklch,var(--cinnabar) 8%,var(--paper))}.recharge-form{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.recharge-head{display:flex;justify-content:space-between;align-items:center}.recharge-title{font-family:var(--font-serif);font-size:14px;font-weight:600;color:var(--ink)}.recharge-close{font-family:var(--font-serif);font-size:18px;line-height:1;color:var(--ink-muted);padding:2px 6px;transition:color .15s ease}.recharge-close:hover{color:var(--cinnabar)}.recharge-row{display:grid;grid-template-columns:1fr auto;border:1px solid var(--ink)}.recharge-input{padding:10px 12px;font-family:var(--font-mono);font-size:13px;letter-spacing:1px;color:var(--ink);background:var(--paper-sunken);border-right:1px solid var(--ink);min-width:0}.recharge-input::placeholder{color:var(--ink-subtle);letter-spacing:.5px}.recharge-submit{padding:10px 16px;background:var(--ink);color:var(--paper);font-family:var(--font-sans);font-weight:600;font-size:12px;letter-spacing:.6px;text-transform:uppercase;transition:background .18s ease,color .18s ease}.recharge-submit:hover:not(:disabled){background:var(--cinnabar);color:var(--cinnabar-ink)}.recharge-submit:disabled{background:var(--paper-raised);color:var(--ink-subtle);cursor:not-allowed}.recharge-msg{font-family:var(--font-mono);font-size:11px;letter-spacing:.5px;padding:4px 2px}.recharge-msg-ok{color:var(--cinnabar)}.recharge-msg-err{color:var(--danger)}.gallery-sec{margin-top:var(--space-2xl)}.gallery-meta{font-family:var(--font-mono);font-size:11px;color:var(--ink-muted);letter-spacing:.6px;text-transform:uppercase}.plates{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(420px,100%),1fr));grid-gap:var(--space-xl);gap:var(--space-xl)}@media (min-width:1100px){.plates:has(>:nth-child(3)){grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}.plate{display:grid;grid-gap:10px;gap:10px;animation:rise .5s var(--ease-out) both}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.plate-frame{position:relative;background:var(--paper-sunken);border:1px solid var(--rule-strong);overflow:hidden}.plate-frame img{width:100%;height:auto;display:block;transition:transform .5s var(--ease-out)}.plate:hover .plate-frame img{transform:scale(1.02)}.plate-overlay{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;padding:var(--space-sm);opacity:0;transition:opacity .2s ease;background:linear-gradient(0deg,color-mix(in oklch,black 50%,transparent) 0,transparent 35%)}.plate:hover .plate-overlay{opacity:1}.plate-download,.plate-refine{padding:6px 12px;background:var(--paper);color:var(--ink);font-family:var(--font-mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;border:1px solid var(--ink);cursor:pointer;transition:background .15s ease,color .15s ease}.plate-refine:disabled{opacity:.5;cursor:not-allowed}.plate-download:hover,.plate-refine:not(:disabled):hover{background:var(--cinnabar);color:var(--cinnabar-ink);border-color:var(--cinnabar)}.overlay-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-md);background:color-mix(in oklch,black 55%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:overlay-fade-in .18s ease-out}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.overlay-panel{width:min(960px,100%);max-height:calc(100vh - 2 * var(--space-md));display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--ink);box-shadow:0 10px 40px color-mix(in oklch,black 30%,transparent);overflow:hidden}.overlay-head{display:flex;align-items:center;justify-content:space-between;padding:14px var(--space-md);border-bottom:1px solid var(--rule);font-family:var(--font-mono);font-size:12px;letter-spacing:1.2px;text-transform:uppercase}.overlay-close,.overlay-title{color:var(--ink)}.overlay-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;font-size:22px;line-height:1;cursor:pointer;border:1px solid transparent;transition:border-color .15s ease}.overlay-close:hover{border-color:var(--ink)}.overlay-body{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);grid-gap:var(--space-md);gap:var(--space-md);padding:var(--space-md);overflow:auto}@media (max-width:720px){.overlay-body{grid-template-columns:1fr}}.overlay-preview{display:flex;align-items:center;justify-content:center;min-height:240px;background:color-mix(in oklch,var(--ink) 5%,transparent);border:1px solid var(--rule)}.overlay-preview canvas{max-width:100%;max-height:60vh;height:auto;display:block}.overlay-error{padding:var(--space-md);color:var(--cinnabar);font-family:var(--font-sans);font-size:13px}.overlay-controls{display:grid;grid-gap:14px;gap:14px;align-content:start}.overlay-field{display:grid;grid-gap:6px;gap:6px}.overlay-input{width:100%;padding:8px 10px;border:1px solid var(--rule);background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:14px}.overlay-input:focus{outline:1px solid var(--cinnabar);outline-offset:-1px}.overlay-chips{display:flex;flex-wrap:wrap;gap:6px}.overlay-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--paper);color:var(--ink);border:1px solid var(--rule);font-family:var(--font-sans);font-size:12px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.overlay-chip:hover{border-color:var(--ink)}.overlay-chip.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.overlay-swatch{width:12px;height:12px;border:1px solid var(--rule);display:inline-block}.overlay-pos-grid{display:grid;grid-template-columns:repeat(3,40px);grid-template-rows:repeat(3,40px);grid-gap:4px;gap:4px}.overlay-pos{display:flex;align-items:center;justify-content:center;background:var(--paper);color:var(--ink);border:1px solid var(--rule);font-size:16px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.overlay-pos.is-active,.overlay-pos:hover{border-color:var(--ink)}.overlay-pos.is-active{background:var(--ink);color:var(--paper)}.overlay-foot{display:flex;justify-content:flex-end;gap:10px;padding:12px var(--space-md);border-top:1px solid var(--rule)}.overlay-apply,.overlay-cancel{padding:8px 18px;font-family:var(--font-mono);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;cursor:pointer;border:1px solid var(--ink);transition:background .15s ease,color .15s ease}.overlay-cancel{background:var(--paper);color:var(--ink)}.overlay-cancel:hover{background:color-mix(in oklch,var(--ink) 6%,var(--paper))}.overlay-apply{background:var(--ink);color:var(--paper)}.overlay-apply:disabled{opacity:.4;cursor:not-allowed}.overlay-apply:not(:disabled):hover{background:var(--cinnabar);border-color:var(--cinnabar);color:var(--cinnabar-ink)}.plate-refining{position:absolute;inset:0;align-items:center;justify-content:center;gap:10px;background:color-mix(in oklch,var(--paper) 78%,transparent);color:var(--ink);font-size:11px;letter-spacing:1.2px;z-index:2}.plate-caption,.plate-refining{display:flex;font-family:var(--font-mono);text-transform:uppercase}.plate-caption{justify-content:space-between;align-items:baseline;font-size:10px;letter-spacing:.8px;color:var(--ink-muted);padding-top:2px;border-top:1px solid var(--rule)}.plate-numeral{font-family:var(--font-serif);font-style:italic;font-size:13px;color:var(--ink);letter-spacing:0;text-transform:none;font-feature-settings:"onum";font-variant-numeric:oldstyle-nums}.empty-line{font-family:var(--font-serif);font-style:italic;font-size:14px;color:var(--ink-subtle);padding:var(--space-sm) 0;letter-spacing:.2px}.skeleton-plate{aspect-ratio:var(--ratio,1/1);background:linear-gradient(110deg,var(--paper-sunken) 30%,color-mix(in oklch,var(--ink) 4%,var(--paper-sunken)) 50%,var(--paper-sunken) 70%);background-size:200% 100%;animation:shimmer 1.6s ease-in-out infinite;border:1px solid var(--rule-strong)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.colophon{margin-top:var(--space-4xl);padding-top:var(--space-lg);border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-md);font-family:var(--font-mono);font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-subtle)}.colophon-mail{color:var(--ink-muted);text-decoration:none;border-bottom:1px dotted var(--rule-strong);padding-bottom:1px;text-transform:none;letter-spacing:.4px;transition:color .15s ease,border-color .15s ease}.colophon-mail:focus-visible,.colophon-mail:hover{color:var(--cinnabar);border-bottom-color:var(--cinnabar);outline:none}.colophon-seal{color:var(--cinnabar)}.mode-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:var(--space-xl);border:1px solid var(--ink);background:var(--paper-sunken)}.mode-tab{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 20px;text-align:left;background:transparent;color:var(--ink-muted);transition:background .18s var(--ease-out),color .18s var(--ease-out);border-right:1px solid var(--rule)}.mode-tab:last-child{border-right:none}.mode-tab:hover:not(.is-on){color:var(--ink);background:var(--paper)}.mode-tab.is-on{background:var(--ink);color:var(--paper)}.mode-tab-label{font-family:var(--font-serif);font-size:16px;font-weight:500;letter-spacing:-.1px}.mode-tab.is-on .mode-tab-label{color:var(--paper)}.mode-tab-hint{font-family:var(--font-mono);font-size:10px;letter-spacing:.8px;text-transform:uppercase;opacity:.8}.drop-zone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:260px;padding:var(--space-lg);border:1.5px dashed var(--rule-strong);background:var(--paper-sunken);cursor:pointer;transition:border-color .18s var(--ease-out),background .18s var(--ease-out)}.drop-zone:hover:not(.has-image){border-color:var(--ink);background:var(--paper)}.drop-zone.is-drag{border-color:var(--cinnabar);background:color-mix(in oklch,var(--cinnabar) 6%,var(--paper))}.drop-zone.is-flash:not(.has-image){animation:drop-zone-flash 1.2s var(--ease-out) 1}@keyframes drop-zone-flash{0%{border-color:var(--cinnabar);background:color-mix(in oklch,var(--cinnabar) 10%,var(--paper))}to{border-color:var(--rule-strong);background:var(--paper-sunken)}}.drop-zone.has-image{cursor:default;border-style:solid;border-color:var(--ink);padding:var(--space-md);background:var(--paper)}.drop-icon{font-size:36px;color:var(--ink-muted);line-height:1}.drop-icon,.drop-title{font-family:var(--font-serif)}.drop-title{font-size:16px;color:var(--ink)}.drop-hint{font-family:var(--font-mono);font-size:11px;letter-spacing:.4px;color:var(--ink-subtle)}.drop-preview{max-width:100%;max-height:320px;width:auto;height:auto;object-fit:contain;border:1px solid var(--rule);background:var(--paper-sunken)}.drop-meta{display:flex;justify-content:space-between;align-items:baseline;width:100%;gap:var(--space-md);font-family:var(--font-mono);font-size:11px;color:var(--ink-muted);letter-spacing:.3px;padding-top:4px}.drop-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.drop-actions{display:flex;gap:8px;width:100%;padding-top:4px}.drop-btn{flex:1 1;padding:8px 12px;font-family:var(--font-sans);font-size:12px;letter-spacing:.4px;color:var(--paper);background:var(--ink);border:1px solid var(--ink);transition:background .15s ease,color .15s ease}.drop-btn:hover{background:var(--cinnabar);border-color:var(--cinnabar);color:var(--cinnabar-ink)}.drop-btn-ghost{color:var(--ink);background:transparent}.drop-btn-ghost:hover{background:var(--paper-sunken);color:var(--danger);border-color:var(--danger)}.fidelity-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--rule);background:var(--paper-sunken);cursor:pointer;transition:border-color .15s ease}.fidelity-row:hover{border-color:var(--ink)}.fidelity-row input[type=checkbox]{margin-top:3px;width:14px;height:14px;accent-color:var(--cinnabar);cursor:pointer}.fidelity-label{display:flex;flex-direction:column;gap:2px}.fidelity-main{font-family:var(--font-serif);font-size:14px;color:var(--ink)}.fidelity-hint{font-family:var(--font-mono);font-size:10px;letter-spacing:.4px;color:var(--ink-subtle)}.edit-preset-row{display:flex;flex-wrap:wrap;gap:6px;flex:1 1}.edit-preset-chip{font-family:var(--font-sans);font-size:11px;letter-spacing:.3px;padding:4px 10px;border:1px solid var(--rule);color:var(--ink-muted);background:var(--paper);transition:color .15s ease,border-color .15s ease}.edit-preset-chip:hover{color:var(--cinnabar);border-color:var(--cinnabar)}.admin{min-height:100vh;padding:var(--space-2xl) var(--space-lg);background:var(--paper)}.admin__shell{max-width:960px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-xl)}.admin__shell--narrow{max-width:420px}.admin__header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);border-bottom:1px solid var(--rule);padding-bottom:var(--space-lg)}.admin__header-actions{display:flex;gap:var(--space-xs)}.admin__title{font-family:var(--font-serif);font-weight:600;font-size:28px;letter-spacing:.5px;color:var(--ink)}.admin__subtitle{margin-top:var(--space-xs);font-size:13px;color:var(--ink-muted)}.admin__hint{font-size:14px;color:var(--ink-muted);line-height:1.7}.admin__hint code{font-family:var(--font-mono);font-size:12px;padding:2px 6px;background:var(--paper-sunken);border:1px solid var(--rule);border-radius:3px}.admin__panel{background:var(--paper-raised);border:1px solid var(--rule);padding:var(--space-lg) var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md)}.admin__panel-title{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--ink);letter-spacing:.4px;border-bottom:1px solid var(--rule);padding-bottom:var(--space-xs)}.admin__form{display:flex;align-items:flex-end;gap:var(--space-md);flex-wrap:wrap}.admin__form--login{flex-direction:column;align-items:stretch}.admin__field{display:flex;flex-direction:column;gap:4px;flex:1 1;min-width:160px}.admin__field label{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-subtle)}.admin__field input{font-family:var(--font-mono);font-size:14px;padding:9px 10px;background:var(--paper);color:var(--ink);border:1px solid var(--rule-strong);border-radius:2px;outline:none;transition:border-color .15s ease}.admin__field input:focus{border-color:var(--cinnabar)}.admin__btn{font-family:var(--font-sans);font-size:13px;letter-spacing:.4px;padding:9px 16px;border:1px solid var(--rule-strong);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:2px;transition:background .15s ease,color .15s ease,border-color .15s ease}.admin__btn:hover{border-color:var(--ink)}.admin__btn:disabled{opacity:.5;cursor:not-allowed}.admin__btn--primary{background:var(--cinnabar);border-color:var(--cinnabar);color:var(--cinnabar-ink)}.admin__btn--primary:hover{background:var(--cinnabar-soft);border-color:var(--cinnabar-soft);color:var(--cinnabar-ink)}.admin__btn--ghost{background:transparent;border-color:var(--rule);color:var(--ink-muted)}.admin__btn--ghost:hover{color:var(--ink);border-color:var(--ink)}.admin__btn--danger{background:transparent;border-color:var(--danger);color:var(--danger);padding:5px 10px;font-size:12px}.admin__btn--danger:hover{background:var(--danger-bg)}.admin__msg{font-size:13px;padding:8px 12px;border-radius:2px}.admin__msg--err{color:var(--danger);background:var(--danger-bg);border:1px solid var(--danger)}.admin__msg--ok{color:var(--cinnabar);background:var(--paper-sunken);border:1px solid var(--rule)}.admin__table-wrap{overflow-x:auto}.admin__table{width:100%;border-collapse:collapse;font-size:13px}.admin__table td,.admin__table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--rule)}.admin__table th{font-weight:500;font-size:11px;letter-spacing:.6px;text-transform:uppercase;background:var(--paper-sunken)}.admin__table th,.admin__table tr.is-redeemed td{color:var(--ink-subtle)}.admin__codecell{font-family:var(--font-mono);font-size:13px;background:none;border:none;padding:0;color:var(--ink);cursor:pointer;letter-spacing:.3px}.admin__codecell:hover{color:var(--cinnabar)}.admin__cell-time{font-family:var(--font-mono);font-size:12px;color:var(--ink-muted);white-space:nowrap}.admin__cell-actions{text-align:right;white-space:nowrap}.admin__badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:999px;letter-spacing:.4px}.admin__badge--ok{color:var(--cinnabar);border:1px solid var(--cinnabar)}.admin__badge--used{color:var(--ink-subtle);border:1px solid var(--rule-strong)}.admin__badge--repeat{color:var(--ink);border:1px solid var(--ink)}.admin__badge--once{color:var(--ink-muted);border:1px solid var(--rule)}.admin__field--check{min-width:180px;justify-content:flex-end}.admin__check{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);letter-spacing:0;text-transform:none;cursor:pointer}.admin__check input{width:16px;height:16px;margin:0;accent-color:var(--cinnabar)}.admin__field-hint{font-size:11px;color:var(--ink-subtle);letter-spacing:.3px}@media (max-width:640px){.shell{padding:var(--space-lg) var(--space-md) var(--space-3xl)}.masthead{grid-template-columns:auto 1fr;grid-template-areas:"seal title" "meta meta";align-items:center;column-gap:var(--space-md);row-gap:var(--space-md);padding-bottom:var(--space-md);margin-bottom:var(--space-xl)}.seal{grid-area:seal;width:44px;height:44px;font-size:22px}.mast-title{grid-area:title;min-width:0}.mast-title h1{font-size:20px;line-height:1.2}.mast-sub{font-size:11px;letter-spacing:.3px}.mast-meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--space-md);row-gap:var(--space-xs);text-align:left;padding-top:var(--space-sm);border-top:1px dotted var(--rule);font-size:10px}.mast-meta>span:first-child,.mast-quota{flex:0 1 auto}.mast-quota{margin-left:auto;gap:8px}.mast-redeem{padding:3px 10px;font-size:11px}.mast-auth{flex:1 1 auto;justify-content:flex-start;min-width:0}.mast-theme{margin-left:auto;padding:3px 8px;font-size:10px}.mast-theme__label{display:none}.mast-theme__glyph{font-size:13px}.mode-tabs{margin-bottom:var(--space-lg)}.mode-tab{padding:10px 12px;gap:2px}.mode-tab-label{font-size:14px}.mode-tab-hint{font-size:9px;letter-spacing:.6px}.sec+.sec{margin-top:var(--space-xl)}.sec-title{font-size:18px}.sec-no{font-size:10px}.intent-input{min-height:120px;line-height:1.65}.intent-input,.prompt-area{font-size:16px;padding:var(--space-sm) var(--space-md)}.prompt-area{min-height:200px}.recharge-input{font-size:16px}.workbench{gap:var(--space-lg)}.intent-col,.prompt-col{gap:var(--space-sm)}.commit-row{margin-top:var(--space-lg)}.param-inline{padding:8px 12px}.param-select{font-size:14px}.param-hint{font-size:10px}.press{padding:14px 18px;font-size:13px;min-width:0;letter-spacing:.5px}.drop-zone{min-height:180px;padding:var(--space-md)}.drop-icon{font-size:28px}.drop-title{font-size:14px;text-align:center}.drop-preview{max-height:220px}.gallery-sec{margin-top:var(--space-xl)}.plates{gap:var(--space-lg)}.plate-overlay{opacity:1;padding:var(--space-xs);gap:6px;flex-wrap:wrap;background:linear-gradient(0deg,color-mix(in oklch,black 65%,transparent) 0,transparent 55%)}.plate-download,.plate-refine{padding:7px 10px;font-size:10px;letter-spacing:.6px}.plate:hover .plate-frame img{transform:none}.colophon{margin-top:var(--space-3xl);flex-direction:column;align-items:flex-start;gap:6px}}@media (hover:none){.plate-overlay{opacity:1}.plate:hover .plate-frame img{transform:none}}