:root{--paper:#f5f4e9;--paper-2:#fbfaf2;--card:#fff;--ink:#10282e;--ink-soft:#465856;--ink-faint:#7e8b89;--line:#e6e2d2;--line-strong:#d8d2be;--juniper:#004054;--juniper-light:#2c6e7f;--juniper-pale:#e2edef;--acorn:#204a35;--conker:#3e1e00;--pinecone:#4e4400;--sunrise:#fecf52;--sunrise-pale:#fbf0d1;--terra-pale:#f4e2d6;--shadow:0 1px 2px #0040540d, 0 14px 38px #00405412;--shadow-lg:0 2px 4px #0040540f, 0 28px 60px #0040541f;--font-head:"DM Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-body:"Roboto", ui-sans-serif, system-ui, -apple-system, sans-serif;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}body{background:radial-gradient(1100px 560px at 88% -8%, #00405414, transparent 60%), radial-gradient(900px 520px at -8% 8%, #fecf521f, transparent 55%), var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:15px;line-height:1.55}.shell{max-width:880px;margin:0 auto;padding:40px 24px 72px}.masthead{margin-bottom:30px}.brand{align-items:center;gap:13px;margin-bottom:22px;display:flex}.brand-logo{width:auto;height:28px;display:block}.brand-eyebrow{font-family:var(--font-head);letter-spacing:.13em;text-transform:uppercase;color:var(--juniper);border-left:1px solid var(--line-strong);padding-left:13px;font-size:11px;font-weight:600;line-height:1.3}.masthead h1{font-family:var(--font-head);letter-spacing:-.02em;color:var(--juniper);margin-bottom:8px;font-size:34px;font-weight:600;line-height:1.15}.lede{color:var(--ink-soft);font-size:16px}.lede strong{color:var(--ink);font-weight:500}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:18px;padding:24px}.step{font-family:var(--font-head);letter-spacing:.11em;text-transform:uppercase;color:var(--juniper);align-items:center;gap:11px;margin-bottom:16px;font-size:12px;font-weight:600;display:flex}.num{background:var(--juniper);width:23px;height:23px;color:var(--paper);letter-spacing:0;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.drop{border:1.5px dashed var(--line-strong);background:var(--paper-2);text-align:center;cursor:pointer;border-radius:12px;place-items:center;gap:4px;padding:38px 20px;transition:border-color .15s,background .15s;display:grid}.drop:hover,.drop:focus-visible,.drop.over{border-color:var(--juniper-light);background:var(--juniper-pale);outline:none}.drop-icon{fill:none;width:28px;height:28px;stroke:var(--juniper-light);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;margin-bottom:6px}.drop-title{font-family:var(--font-head);font-size:16px;font-weight:500}.link{color:var(--juniper);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.drop-hint{color:var(--ink-faint);font-size:12.5px}.file-chip{border:1px solid var(--line-strong);background:var(--sunrise-pale);border-radius:10px;align-items:center;gap:10px;margin-top:14px;padding:11px 14px;display:flex}.chip-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.chip-meta{color:var(--pinecone);font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-size:13px}.chip-clear{color:var(--pinecone);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;padding:2px 5px;font-size:13px;line-height:1}.chip-clear:hover{color:var(--ink);background:#4e44001f}.formats{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (max-width:520px){.formats{grid-template-columns:1fr}}.format{border:1px solid var(--line-strong);background:var(--paper-2);cursor:pointer;border-radius:12px;padding:15px 16px 14px;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:block;position:relative}.format input{opacity:0;pointer-events:none;position:absolute}.format:hover{border-color:var(--juniper-light);background:var(--card);box-shadow:var(--shadow);transform:translateY(-1px)}.format:has(input:checked){border-color:var(--juniper);background:var(--juniper-pale);box-shadow:inset 0 0 0 1px var(--juniper)}.format:has(input:focus-visible){outline:2px solid var(--juniper);outline-offset:2px}.format-body{gap:3px;display:grid}.format-name{font-family:var(--font-head);color:var(--juniper);font-size:16px;font-weight:600;line-height:1.2}.format-ext{color:var(--ink-faint);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:12px;font-weight:500}.format:has(input:checked) .format-ext{color:var(--juniper-light)}.format-note{color:var(--ink-soft);margin-top:3px;font-size:12.5px;line-height:1.45}.actions{align-items:center;gap:14px;margin-top:22px;display:flex}.primary{appearance:none;background:var(--juniper);color:var(--paper);font-family:var(--font-head);letter-spacing:.01em;cursor:pointer;border:0;border-radius:999px;padding:11px 28px;font-size:15px;font-weight:600;text-decoration:none;transition:background .15s,box-shadow .15s;display:inline-block}.primary:hover:not(:disabled){background:var(--juniper-light);box-shadow:var(--shadow)}.primary:disabled{opacity:.35;cursor:not-allowed}.status{color:var(--ink-soft);font-size:13.5px}.notice{background:var(--juniper-pale);color:var(--juniper);border:1px solid #9fc0c9;border-radius:10px;margin-top:16px;padding:12px 15px;font-size:13.5px;line-height:1.55}.notice[data-tone=warn]{background:var(--sunrise-pale);border-color:var(--sunrise);color:var(--pinecone)}.notice[data-tone=error]{background:var(--terra-pale);color:var(--conker);border-color:#d8b49a}.result{border-color:var(--line-strong);box-shadow:var(--shadow-lg)}.result-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.result-file{flex:200px;gap:2px;min-width:0;display:grid}.result-name{font-family:var(--font-head);color:var(--juniper);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;overflow:hidden}.result-meta{color:var(--ink-faint);font-size:13px}.preview{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.preview summary{cursor:pointer;color:var(--juniper-light);font-size:13.5px}.preview pre{background:var(--paper-2);border:1px solid var(--line);white-space:pre-wrap;word-break:break-word;border-radius:10px;max-height:340px;margin-top:12px;padding:14px;font-size:12.5px;line-height:1.55;overflow:auto}.footnote{color:var(--ink-faint);text-align:center;margin-top:28px;font-size:12.5px}.footnote a{color:var(--juniper-light)}
