:root{--bg:#f7f9ff;--text:#0b1220;--muted:#5b6475;--navy:#001e4d;--blue:#1a3b94;--blue-2:#2f5bff;--border:#0b12201a;--surface:#ffffffe0;--radius:16px;--shadow:0 10px 30px #001e4d1f;--danger:#b42318}*{box-sizing:border-box}html,body{height:100%}body{color:var(--text);background:radial-gradient(900px 420px at 12% -10%,#2f5bff38,transparent 60%),radial-gradient(900px 420px at 88% -10%,#1a3b9438,transparent 60%),linear-gradient(180deg,#fff 0%,var(--bg)80%);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}h1{letter-spacing:-.02em;margin:0 0 12px;font-size:22px}h2{letter-spacing:-.01em;margin:0 0 12px;font-size:18px}p{color:var(--muted);margin:0 0 10px}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.pageTitleRow{justify-content:space-between;align-items:center;gap:12px;display:flex}.card{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.input{border:1px solid var(--border);width:100%;color:var(--text);background:#ffffffeb;border-radius:12px;outline:none;padding:12px;font-size:14px}.input:focus{border-color:#1a3b9473;box-shadow:0 0 0 4px #1a3b9426}.btn{appearance:none;border:1px solid var(--border);color:var(--text);cursor:pointer;background:#ffffffe6;border-radius:12px;padding:11px 14px;font-weight:700;transition:transform 60ms,filter .15s,background .15s}.btn:hover{background:#fffffffa}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.6;cursor:not-allowed}.btnPrimary{color:#fff;background:linear-gradient(135deg,var(--navy),var(--blue));border:none;box-shadow:0 10px 20px #001e4d40}.btnPrimary:hover{filter:brightness(.98)}.error{color:var(--danger);font-weight:700}.tableWrap{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#ffffffeb;overflow:hidden}.table{border-collapse:collapse;width:100%}.table th{text-align:left;letter-spacing:.03em;color:#0b1220a6;border-bottom:1px solid var(--border);background:#001e4d0f;padding:12px;font-size:12px}.table td{border-bottom:1px solid var(--border);padding:12px}.table tr:last-child td{border-bottom:none}.badge{border:1px solid var(--border);color:var(--navy);background:#001e4d0f;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}
