:root{--navy:#1e3a8a;--blue:#2563eb;--blue-hover:#1d4ed8;--blue-light:#dbeafe;--blue-text:#1e40af;--white:#fff;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-400:#94a3b8;--gray-500:#64748b;--gray-700:#374151;--gray-900:#0f172a;--red:#dc2626;--red-light:#fef2f2;--red-border:#fecaca;--green:#166534;--green-bg:#2e7d32;--font:"Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;font-family:var(--font);color:var(--gray-900);background:var(--white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.5}*,:before,:after{box-sizing:border-box}body{margin:0}#root{text-align:left;flex-direction:column;width:100%;max-width:100%;min-height:100vh;display:flex}h1,h2,h3{color:var(--blue);letter-spacing:-.02em;margin:0 0 12px;font-weight:700;line-height:1.25}h1{font-size:26px}h2{font-size:21px}h3{font-size:16px}h4{color:var(--gray-900);margin:0 0 8px;font-size:14px;font-weight:600}p{margin:0 0 8px}p:last-child{margin-bottom:0}a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-hover);text-decoration:underline}input[type=text],input[type=password],input[type=number],input[type=email],input[type=search],select,textarea{font-family:var(--font);color:var(--gray-900);background:var(--white);border:1px solid var(--gray-200);border-radius:4px;outline:none;width:100%;padding:7px 10px;font-size:14px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}input::placeholder{color:var(--gray-400)}label{color:var(--gray-700);font-size:13px;font-weight:600}button{font-family:var(--font);cursor:pointer;border-radius:4px;transition:background .15s,border-color .15s,opacity .15s}button:disabled{cursor:not-allowed;opacity:.6}table{border-collapse:collapse;width:100%}th{background:var(--gray-50);color:var(--gray-500);text-transform:uppercase;letter-spacing:.06em;text-align:left;border-bottom:2px solid var(--gray-200);padding:8px 10px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--gray-100);padding:8px 10px;font-size:14px}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--gray-50)}[role=alert]{border:1px solid var(--red-border);background:var(--red-light);color:var(--red);border-radius:4px;padding:8px 12px;font-size:13px}hr{border:none;border-top:1px solid var(--gray-200);margin:20px 0}
