@font-face{font-family:VCR;src:url('./vcr-osd.ttf') format('truetype');font-display:swap}
:root{color-scheme:dark;--ink:#d3dcad;--dim:#899176;--amber:#eda354;--line:#353c2c;--display:VCR,'Courier New',monospace}
*{box-sizing:border-box}body{margin:0;background:#11140e;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background-image:radial-gradient(ellipse at 25% 45%,#29301b44,transparent 60%)}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--amber);outline-offset:6px}.masthead{max-width:1320px;margin:auto;padding:32px 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font:26px var(--display);letter-spacing:1px;text-decoration:none;display:flex;align-items:center;gap:14px}.brand-light,.signal{display:inline-block;width:6px;height:6px;background:var(--amber);box-shadow:0 0 10px #eda35455}.archive{font:12px var(--display);letter-spacing:1px;color:var(--dim)}.archive span{margin-left:24px;color:var(--amber)}main{max-width:1170px;margin:0 auto;padding:62px 48px 74px;display:grid;grid-template-columns:minmax(280px,390px) minmax(300px,440px);gap:104px;align-items:center;justify-content:center}.preview{min-width:0}.preview-caption{font:11px var(--display);letter-spacing:1px;display:flex;align-items:center;gap:9px;margin-bottom:16px}.preview-caption>span:last-child{margin-left:auto;color:var(--dim)}.signal{width:5px;height:5px;background:#b7ce80;box-shadow:0 0 8px #c7e49a66}canvas{display:block;width:100%;height:auto;border:1px solid #4a4635;box-shadow:0 24px 80px #0009;background:#0b0e08;aspect-ratio:9/16}.preview-foot{text-align:center;font:10px var(--display);letter-spacing:2px;color:var(--dim);margin:16px 0 0}.eyebrow{font:12px/1.6 var(--display);letter-spacing:1px;color:var(--amber);margin:0 0 22px}h1{font:clamp(34px,4vw,52px)/1.05 var(--display);letter-spacing:-1px;font-weight:400;margin:0 0 22px}.intro{font-size:15px;line-height:1.75;color:#a9b197;max-width:405px;margin:0 0 30px}.receipt{padding:20px 0;margin:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:15px}.receipt>div{display:flex;justify-content:space-between;align-items:baseline;gap:20px}dt{font:12px var(--display);letter-spacing:1px;color:var(--dim)}dd{font:20px var(--display);margin:0;overflow-wrap:anywhere;text-align:right}.message{font-size:13px;line-height:1.5;min-height:20px;margin:22px 0 12px;color:#b7c09e}.message.error{color:#edaf83}.download{border:1px solid var(--amber);background:var(--amber);color:#15160e;width:100%;min-height:58px;cursor:pointer;font:16px var(--display);padding:16px 12px;transition:background .15s,border-color .15s}.download span{margin-right:10px;font:24px/16px monospace}.download:hover:not(:disabled){background:#ffc17e;border-color:#ffc17e}.download:disabled{opacity:.45;cursor:wait}.how-to{font-size:12px;line-height:1.65;color:var(--dim);margin:15px 0}.image-link{font-size:12px;text-underline-offset:4px;color:var(--amber)}.spec{display:flex;justify-content:space-between;gap:16px;padding-top:22px;margin-top:22px;border-top:1px solid var(--line);font:10px/1.6 var(--display);letter-spacing:.7px;color:var(--dim)}footer{max-width:1320px;margin:auto;padding:24px 48px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);color:var(--dim);font:10px/1.5 var(--display);letter-spacing:1px}.no-script{padding:20px;background:#291f11;position:fixed;bottom:0;width:100%}
@media(max-width:900px){main{gap:50px;padding:44px 32px;grid-template-columns:minmax(250px,340px) minmax(260px,380px)}.masthead{padding:26px 32px}.archive{font-size:10px}.archive span{display:none}.spec{font-size:9px}footer{padding:22px 32px}}
@media(max-width:640px){.masthead{padding:22px 22px}.wordmark{font-size:23px}.archive{font-size:9px;letter-spacing:0;max-width:118px;text-align:right;line-height:1.4}main{padding:34px 22px 42px;display:flex;flex-direction:column;gap:32px}.preview{width:min(100%,340px)}.details{width:min(100%,400px)}.eyebrow{margin-bottom:16px;font-size:11px}h1{font-size:37px}.intro{font-size:14px;margin-bottom:24px}.spec{font-size:9px}footer{padding:24px 22px;font-size:9px}footer>span:last-child{max-width:135px;text-align:right}.download{font-size:15px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
