@font-face{font-family:'Bricolage Grotesque';src:url('/gengen/fonts/bricolage-grotesque.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
:root{font-family:'Bricolage Grotesque',sans-serif;color-scheme:light;--paper:#fafafa;--surface:#fff;--ink:#242424;--muted:#626262;--line:#e3e3e3;--silver:#cdcdcd;--stage:#070808;--metal:#636970;--radius:10px;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a,input{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,p,figure{margin:0}p{line-height:1.6}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.shell{width:calc(100% - 96px);max-width:1200px;margin-inline:auto}.header{height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.wordmark{font-size:25px;font-weight:750;letter-spacing:-1.1px}.wordmark span{color:var(--muted)}.back{min-height:44px;display:flex;align-items:center;gap:8px;font-size:14px}.back:hover{text-decoration:underline;text-underline-offset:5px}.intro{padding:64px 0 48px}.eyebrow{font-size:11px;letter-spacing:1.4px;font-weight:650}.intro h1{font-size:clamp(44px,6vw,76px);font-weight:650;line-height:1.06;letter-spacing:-3px;margin:16px 0 24px}.intro>p:not(.eyebrow){font-size:18px;color:var(--muted)}.intro .privacy{font-size:13px!important;margin-top:16px}.editor{display:grid;grid-template-columns:320px minmax(0,1fr);gap:48px;align-items:start;border-top:1px solid var(--line);padding-top:32px}.control-section{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--line)}.control-section h2{font-size:18px;font-weight:650;display:flex;gap:12px;align-items:center;margin-bottom:12px;letter-spacing:-.3px}.step{font-size:11px;color:var(--muted);font-weight:500;letter-spacing:1px}.control-section>p{font-size:13px;color:var(--muted)}.file-button{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:64px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:14px;font-weight:600;margin-top:16px;overflow:hidden;cursor:pointer}.file-button span{font-size:11px;font-weight:400;color:var(--muted);margin-top:4px}.file-button:hover{border-color:var(--metal)}.file-button:focus-within{outline:2px solid var(--ink);outline-offset:4px}.file-button input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.file-detail{margin-top:12px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.file-detail p{font-size:12px}.fine{font-size:11px!important;color:var(--muted);line-height:1.6;margin-top:8px}.quiet{background:none;border:0;border-bottom:1px solid var(--line);padding:0;min-height:44px;font-size:12px;color:var(--ink)}.quiet:hover{border-color:var(--ink)}fieldset{border:0;margin:16px 0 0;padding:0}fieldset:disabled{opacity:.45}.slider-label{font-size:12px;display:flex;justify-content:space-between;margin-top:12px;gap:12px}.slider-label output{font-variant-numeric:tabular-nums;color:var(--muted)}input[type=range]{width:100%;height:44px;margin:0;accent-color:var(--ink);cursor:pointer}.crop-actions{display:flex;gap:24px}input[type=text]{width:100%;min-height:48px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px 16px;color:var(--ink);font-size:14px}.name-section{border-bottom:0;margin-bottom:0}.workspace{min-width:0}.formats{display:flex;gap:4px;flex-wrap:wrap;padding-bottom:16px}.formats button{min-height:44px;background:transparent;border:1px solid transparent;border-radius:7px;padding:0 16px;font-size:13px;color:var(--muted);white-space:nowrap}.formats button:hover{color:var(--ink);border-color:var(--line)}.formats button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.canvas-stage{min-height:396px;display:flex;align-items:center;justify-content:center;padding:32px;background:linear-gradient(145deg,#24262a,var(--stage));border:1px solid var(--metal);border-radius:var(--radius);overflow:hidden}canvas{display:block;width:auto;max-width:100%;height:auto;max-height:520px;object-fit:contain}canvas.draggable{cursor:grab;touch-action:none}canvas.dragging{cursor:grabbing}.preview figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:12px;font-size:11px;color:var(--muted)}.preview figcaption span:last-child{max-width:32ch;text-align:right}.export-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.export-row>div>p:first-child{font-size:13px}.export-row button{flex-shrink:0;min-height:52px;border:1px solid var(--ink);border-radius:7px;background:var(--ink);color:var(--paper);font-weight:600;font-size:14px;padding:0 24px;display:flex;align-items:center;gap:16px}.export-row button:hover:enabled{background:var(--stage)}.export-row button:disabled{background:var(--line);border-color:var(--line);color:var(--muted)}.status{min-height:40px;font-size:12px;color:var(--muted);margin-top:16px;overflow-wrap:anywhere}footer{display:flex;justify-content:space-between;gap:24px;padding-block:32px;border-top:1px solid var(--line);margin-top:48px;font-size:11px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:8px;left:8px;transform:translateY(-160%);padding:16px;background:var(--surface);z-index:2}.skip:focus{transform:translateY(0)}.noscript{padding:24px;border:1px solid var(--ink)}[hidden]{display:none!important}
@media(max-width:1000px){.shell{width:calc(100% - 48px)}.editor{grid-template-columns:280px minmax(0,1fr);gap:24px}.canvas-stage{padding:24px;min-height:320px}.formats button{padding-inline:12px}.export-row{flex-direction:column;align-items:stretch;gap:16px}.export-row button{justify-content:center}}
@media(max-width:700px){.shell{width:calc(100% - 32px)}.header{height:80px}.wordmark{font-size:22px}.intro{padding:40px 0 32px}.intro h1{letter-spacing:-2px}.intro>p:not(.eyebrow){font-size:16px}.editor{grid-template-columns:1fr;gap:24px}.workspace{grid-row:1}.canvas-stage{min-height:240px;padding:16px}canvas{max-height:420px}.formats{gap:4px}.formats button{font-size:12px;padding-inline:10px}.preview figcaption{font-size:10px;gap:8px}.preview figcaption span:last-child{max-width:22ch}.export-row{margin-top:24px}.controls{display:grid;grid-template-columns:1fr}.control-section:last-child{padding-bottom:0}.back{font-size:12px}footer{flex-direction:column;gap:8px;margin-top:32px}}
.next-input{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.certificate-help{display:flex;flex-wrap:wrap;column-gap:16px;margin-top:8px}.certificate-help a{display:inline-flex;align-items:center;min-height:44px;font-size:11px;text-decoration:underline;text-underline-offset:4px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
/* Keep the working canvas near the top; this is an editor, not another landing page. */
@media(min-width:701px){
 .header{height:80px}
 .intro{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;align-items:center;padding:28px 0}
 .intro .eyebrow{grid-column:1;grid-row:1}
 .intro h1{grid-column:1;grid-row:2;margin:8px 0 0;font-size:56px;letter-spacing:-2.6px}
 .intro>p:not(.eyebrow):not(.privacy){grid-column:2;grid-row:1/3;font-size:16px}
 .intro .privacy{grid-column:2;grid-row:3;margin-top:8px}
 .workspace{position:sticky;top:24px}
 .canvas-stage{min-height:300px;padding:24px}
 canvas{max-height:420px}
}
