*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-display);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;position:relative;overflow-x:hidden}::selection{background:var(--accent-primary);color:var(--bg-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:root{color-scheme:light;--ink: #17322d;--muted: #647a74;--line: #d9e4df;--paper: #f5f8f5;--card: #ffffff;--mint: #c9f27a;--deep: #204d43;--mono: "DM Mono", monospace;--sans: "Manrope", sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse at 82% 5%,#e7f2df 0,transparent 36%),var(--paper)}button,select,textarea{font:inherit}.page-shell{width:min(100% - 48px,920px);min-height:100vh;margin:auto;display:flex;flex-direction:column}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{color:var(--deep);font:500 12px var(--mono);letter-spacing:.06em;text-decoration:none}.brand span{color:#82968e}.privacy-mark,.eyebrow,.step-heading>span,footer{font:500 10px var(--mono);letter-spacing:.09em}.privacy-mark{color:var(--muted);display:flex;align-items:center;gap:8px}.privacy-mark span{width:7px;height:7px;border-radius:50%;background:#70ad4d;box-shadow:0 0 0 3px #70ad4d22}main{flex:1;padding:64px 0 44px}.intro{max-width:610px;margin:0 auto 34px}.eyebrow{color:var(--deep)}.eyebrow span{color:#92a59d;margin-left:8px}h1{margin:12px 0 10px;font-size:clamp(42px,8vw,68px);line-height:1.02;letter-spacing:-.065em;font-weight:700}h1 em{color:#749952;font-style:normal}.lede{margin:0;max-width:500px;color:var(--muted);line-height:1.7;font-size:15px}.workspace{max-width:610px;margin:auto;background:var(--card);border:1px solid #e2eae5;border-radius:10px;box-shadow:0 18px 55px #234c3d0c;padding:26px}.step-heading{display:flex;align-items:center;gap:12px}.step-heading>span{color:#8ca198}h2{margin:0;font-size:15px;font-weight:700;letter-spacing:-.02em}.upload-zone{position:relative;margin:16px 0 28px;min-height:110px;border:1px dashed #b8cbc1;border-radius:7px;background:#f8faf8;display:flex;align-items:center;gap:15px;padding:18px;cursor:pointer;transition:border-color .18s ease,background .18s ease}.upload-zone:hover,.upload-zone--dragover{border-color:#749952;background:#f2f8e8}.upload-zone:focus-visible{outline:3px solid #8bb565;outline-offset:3px}.upload-zone input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload-glyph{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:6px;background:#eaf3df;color:#436b3a;font-size:24px}.upload-zone strong,.upload-zone div span{display:block}.upload-zone strong{font-size:13px}.upload-zone div span,.file-meta{margin-top:5px;color:var(--muted);font-size:11px}.file-name{display:none;margin-left:auto;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:11px var(--mono)}.file-meta{display:none}.has-file .upload-zone div{min-width:0}.has-file .upload-zone div span{display:none}.has-file .file-name{display:block}.file-meta:not(:empty){display:block}.controls{padding-bottom:25px;border-bottom:1px solid #e9efeb}.field-label{display:block;margin:19px 0 7px;font-size:11px;font-weight:700}select{width:100%;height:46px;border:1px solid #ccd9d2;border-radius:5px;padding:0 13px;color:var(--ink);background:#fff;font-size:13px}select:disabled{color:#9aa9a2;background:#f8faf8}:focus-visible{outline:3px solid #8bb565;outline-offset:2px}.cleanup-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.toggle-row{min-height:64px;border:1px solid #e1e9e4;border-radius:6px;display:flex;align-items:center;gap:10px;padding:10px;cursor:pointer}.toggle-row input{position:absolute;opacity:0;width:1px;height:1px}.toggle{width:30px;height:18px;padding:2px;flex:0 0 auto;border-radius:99px;background:#d2ddd6;transition:background .18s ease}.toggle:after{content:"";display:block;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .18s ease;box-shadow:0 1px 3px #17322d33}.toggle-row input:checked+.toggle{background:#71964c}.toggle-row input:checked+.toggle:after{transform:translate(12px)}.toggle-row input:focus-visible+.toggle{outline:3px solid #8bb565;outline-offset:2px}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{font-size:11px}.toggle-row small{margin-top:3px;color:var(--muted);font-size:10px}.output-section{padding-top:24px}.output-heading,.output-actions{display:flex;justify-content:space-between;align-items:center;gap:14px}.output-meta{color:var(--muted);font:10px var(--mono)}textarea{display:block;width:100%;min-height:155px;resize:vertical;margin-top:14px;padding:14px;border:1px solid #d8e3dc;border-radius:5px;background:#f8faf8;color:#24493f;font:12px/1.7 var(--mono)}textarea::placeholder{color:#96a69e}.output-actions{margin-top:12px}.format-note{color:#788b83;font-size:10px}.copy-button{height:40px;padding:0 15px;border:0;border-radius:5px;color:#fff;background:var(--deep);font-size:11px;font-weight:700;cursor:pointer;transition:background .18s ease,transform .18s ease}.copy-button:hover{background:#326457;transform:translateY(-1px)}.copy-button span{margin-left:9px;color:var(--mint)}.status{min-height:20px;margin:14px 0 0;color:#61766e;font-size:11px}.privacy-note{margin:18px auto 0;text-align:center;color:#6b8177;font:10px var(--mono)}.privacy-note span{margin-right:5px;color:#71964c}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:19px 0;color:#82938c;font-size:9px}@media (max-width: 600px){.page-shell{width:min(100% - 32px,920px)}.topbar{height:64px}.privacy-mark{font-size:8px}main{padding:44px 0 30px}.workspace{padding:19px}.cleanup-options{grid-template-columns:1fr;gap:8px}.output-actions{align-items:flex-start;flex-direction:column}.copy-button{width:100%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
