:root{--bg: var(--vbg, #0f172a);--card: var(--vcard, #111827);--accent: var(--vaccent, #06b6d4);--text: var(--vtext, #e5e7eb)}@media (prefers-color-scheme: light){:root{--bg: #f8fafc;--card: #ffffff;--accent: #0ea5e9;--text: #0f172a}}html,body,#root{height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button{font:inherit}.container{max-width:960px;margin:0 auto;padding:24px}.card{background:var(--card);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:20px;box-shadow:0 10px 30px #00000026}.input{width:100%;min-width:0;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text);padding:12px 14px;border-radius:10px;outline:none;transition:border .2s ease,box-shadow .2s ease;box-sizing:border-box}input[type=file].input{padding:8px 0}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #06b6d440}.row,.row-2{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width: 480px){.row-2{grid-template-columns:1fr 1fr;gap:18px}}@media (min-width: 900px){.row-2{grid-template-columns:1fr 1fr;gap:24px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;background:var(--accent);color:#001018;padding:12px 16px;border-radius:10px;cursor:pointer;transition:transform .05s ease,filter .2s ease,opacity .2s ease}.btn:hover{filter:brightness(1.05)}.btn:active{transform:translateY(1px)}.btn.secondary{background:transparent;color:var(--text);border:1px solid rgba(255,255,255,.15)}.header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0}.brand{font-weight:700;letter-spacing:.3px}.helper{color:#ffffffa6}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:12px;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:top}.table th{color:#ffffffa6;font-weight:500}.center{display:grid;place-items:center}.spacer{height:16px}.notice{padding:10px 12px;border-radius:10px;background:#06b6d41f;border:1px solid rgba(6,182,212,.2);color:var(--text)}.error{padding:10px 12px;border-radius:10px;background:#ef44441f;border:1px solid rgba(239,68,68,.25);color:var(--text)}.small{font-size:12px;opacity:.8}footer{margin-top:40px;font-size:12px;opacity:.7;text-align:center}
