.app{max-width:1100px;margin:0 auto;padding:32px 24px 48px}.app-header{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border)}.app-header h1{margin:0 0 6px;font-size:26px;font-weight:700;letter-spacing:-.01em}.tagline{margin:0;color:var(--text-dim);font-size:14px}.app-main{display:grid;gap:20px}.card{background:var(--bg-1);border:1px solid var(--border);border-radius:10px;padding:22px 24px}.card h2{margin:0 0 16px;font-size:16px;font-weight:600;letter-spacing:-.005em}.upload-zone{border:2px dashed var(--border);border-radius:8px;padding:32px 20px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.upload-zone:hover,.upload-zone.dragover{border-color:var(--accent);background:var(--bg-2)}.upload-zone input{display:none}.upload-zone .primary-text{font-size:14px;color:var(--text);margin:0 0 4px}.upload-zone .hint{font-size:12px;color:var(--text-muted);margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:16px}.stats-cell{background:var(--bg-2);border:1px solid var(--border);padding:12px 14px;border-radius:6px}.stats-cell .label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.stats-cell .value{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.koder-liste{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.kode-chip{background:var(--bg-2);border:1px solid var(--border);padding:3px 8px;border-radius:4px;font-size:11px;font-family:SF Mono,Monaco,Consolas,monospace}.kode-chip b{color:var(--accent);margin-left:4px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.form-section{padding:14px 0;border-top:1px solid var(--border);margin-top:8px}.form-section:first-child{border-top:none;padding-top:0;margin-top:0}.form-section h3{margin:0 0 12px;font-size:12px;text-transform:uppercase;color:var(--text-dim);letter-spacing:.06em}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:13px;padding:6px 0}.checkbox-row input[type=checkbox]{width:auto}.download-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.sign-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;padding-top:16px;border-top:1px solid var(--border)}.sign-form .full-width{grid-column:1 / -1}.signed-banner{background:var(--success-bg);border:1px solid var(--success);padding:12px 16px;border-radius:6px;color:#a6e0bb;font-size:13px;margin-top:12px}.signed-banner a{color:#a6e0bb}.error-banner{background:var(--danger-bg);border:1px solid var(--danger);padding:12px 16px;border-radius:6px;color:#e8a8a8;font-size:13px}.mode-picker{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.mode-label{font-size:13px;color:var(--text);margin-bottom:10px}.mode-hint{color:var(--text-dim);font-size:12px}.mode-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-choice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border);border-radius:6px;background:var(--bg-2);cursor:pointer;transition:border-color .15s,background .15s}.mode-choice:hover{border-color:var(--accent)}.mode-choice.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--bg-2))}.mode-choice input[type=radio]{width:auto;margin-top:3px}.mode-title{font-size:13px;font-weight:600;color:var(--text)}.mode-sub{font-size:11px;color:var(--text-dim);margin-top:2px}.app-footer{margin-top:40px;padding-top:20px;border-top:1px solid var(--border);color:var(--text-muted);font-size:12px;text-align:center}.app-footer a{color:var(--accent);text-decoration:none}.app-footer a:hover{text-decoration:underline}:root{--bg-0: #0f1117;--bg-1: #12141f;--bg-2: #1a1d2c;--border: #242837;--text: #e6e8ee;--text-dim: #8b92a6;--text-muted: #5a6075;--accent: #3a7ab2;--accent-hover: #4a8bc4;--success: #1b7a3a;--success-bg: #13331f;--danger: #c73a3a;--danger-bg: #331717;--warn: #d48b0a;--warn-bg: #332414;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-0);color:var(--text)}body{min-height:100vh}#root{min-height:100vh;width:100%}button{font-family:inherit;cursor:pointer;background:var(--accent);color:#fff;border:none;border-radius:6px;padding:10px 18px;font-size:14px;font-weight:500;transition:background .15s}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{background:var(--border);color:var(--text-muted);cursor:not-allowed}button.secondary{background:var(--bg-2);border:1px solid var(--border)}button.secondary:hover:not(:disabled){background:var(--border)}input,select{font-family:inherit;font-size:13px;background:var(--bg-1);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:8px 10px;width:100%}input:focus,select:focus{outline:none;border-color:var(--accent)}label{display:block;font-size:12px;color:var(--text-dim);margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}code{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.9em;background:var(--bg-1);padding:2px 5px;border-radius:3px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-1)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#2f3547}
