:root{--bg:#f2f4f8;--surface:#ffffff;--line:#d9dee8;--text:#0e1a2b;--muted:#51607a;--action:#1241a6;--action-contrast:#ffffff;--danger:#b42318}*{box-sizing:border-box}body{color:var(--text);background:linear-gradient(180deg,#eef2f8,#f8fafc);font-family:Avenir Next,Montserrat,Trebuchet MS,sans-serif}body,h1,h2,p{margin:0}.centered{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-shell{position:relative;overflow:hidden;background:radial-gradient(circle at 12% 18%,rgba(242,121,35,.18),transparent 32%),radial-gradient(circle at 82% 74%,rgba(18,65,166,.2),transparent 34%),linear-gradient(145deg,#edf2fb,#f5f7fc 52%,#ebf0f8)}.login-shell:after,.login-shell:before{content:"";position:absolute;z-index:0;border-radius:999px;filter:blur(8px)}.login-shell:before{width:360px;height:360px;top:-140px;right:-120px;background:linear-gradient(135deg,rgba(242,121,35,.25),rgba(255,255,255,.04))}.login-shell:after{width:440px;height:440px;left:-180px;bottom:-210px;background:linear-gradient(160deg,rgba(24,37,90,.24),rgba(18,65,166,.1))}.container{max-width:1200px;margin:0 auto;padding:1rem}.stack{display:grid;grid-gap:1rem;gap:1rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1rem}.login-card{position:relative;z-index:1;width:min(560px,92vw);padding:1.5rem;border:1px solid rgba(255,255,255,.55);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.9));box-shadow:0 18px 44px rgba(17,38,84,.16),inset 0 2px 0 rgba(255,255,255,.6);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);gap:.8rem}.login-logo{width:min(300px,74%);height:auto;margin:0 auto .5rem;display:block}.login-card h1{margin-top:.2rem;font-size:clamp(2rem,2.8vw,2.65rem);line-height:1.08;color:#14223d;letter-spacing:-.03em}.login-card label{margin-top:.35rem;font-weight:600;font-size:.96rem;color:#3f5475}.login-card input{height:46px;border:1px solid #cfd8e8;background:rgba(252,253,255,.96)}.login-card input:focus-visible{outline:none;border-color:#1241a6;box-shadow:0 0 0 4px rgba(18,65,166,.12)}.login-card button{height:46px;margin-top:.35rem;border:none;border-radius:12px;font-weight:700;letter-spacing:.01em;background:linear-gradient(120deg,#173f9f,#1f56c4);box-shadow:0 12px 24px rgba(24,66,164,.24);transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.login-card button:hover{transform:translateY(-1px);filter:brightness(1.04)}.login-card button:active{transform:translateY(0)}label{color:var(--muted);font-size:.95rem}button,input,select{width:100%;border-radius:10px;border:1px solid var(--line);padding:.7rem .8rem;font-size:.95rem}button{background:var(--action);color:var(--action-contrast);border-color:var(--action);cursor:pointer}button.ghost{background:transparent;color:var(--action)}button:disabled{opacity:.7;cursor:not-allowed}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-shell{max-width:1280px;min-height:100vh;padding-top:1.5rem;padding-bottom:2rem;position:relative}.admin-shell:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 18% 20%,rgba(242,121,35,.12),transparent 28%),radial-gradient(circle at 82% 10%,rgba(18,65,166,.14),transparent 30%),linear-gradient(155deg,#eef2fa,#f4f6fb 52%,#e9eef8)}.admin-topbar{padding:.9rem 1.1rem;border:1px solid rgba(255,255,255,.66);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.78));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 14px 32px rgba(18,39,92,.1)}.brand{display:flex;align-items:center;gap:1rem}.brand-logo{width:148px;height:auto}.actions{display:flex;align-items:center;gap:.8rem}.brand-content h1{font-size:clamp(2rem,2.8vw,2.7rem);line-height:1.02;letter-spacing:-.03em}.admin-subtitle{margin-top:.2rem;color:#536786;font-size:.95rem;font-weight:600}.admin-actions .ghost{width:auto;padding:.62rem 1.35rem;border-radius:999px;border:1px solid #2c56bf;font-weight:700;color:#1e4bb3;background:rgba(255,255,255,.68)}.header-logo{width:122px;height:auto;margin-right:.25rem}.manager-chip{text-transform:uppercase;letter-spacing:.02em;font-weight:700;color:#3f5575;background:rgba(18,65,166,.08);border:1px solid rgba(18,65,166,.14);border-radius:12px;padding:.42rem .65rem}.manager{color:var(--muted);font-size:.95rem}.filter-card{border-radius:16px;border-color:#cfdaeb;box-shadow:0 10px 26px rgba(15,35,80,.08);padding:.9rem}.filters{display:grid;grid-template-columns:1fr 156px;grid-gap:.75rem;gap:.75rem}.filters input{height:48px;border-radius:13px;border-color:#c9d3e6;background:#fcfdff}.filters input:focus-visible{outline:none;border-color:#2453bc;box-shadow:0 0 0 4px rgba(36,83,188,.12)}.filters button{height:48px;border-radius:13px;border:none;font-weight:700;background:linear-gradient(120deg,#1a46ab,#2456c9);box-shadow:0 12px 20px rgba(21,66,168,.24)}.table-wrapper{overflow-x:auto}.table-card{border-radius:16px;border-color:#cfdaeb;padding:.7rem 1rem .9rem;box-shadow:0 16px 32px rgba(12,34,84,.09)}.results-meta{color:#445b7d;font-weight:600;font-size:.96rem;background:#f3f6fc;border:1px solid #dbe4f3;border-radius:999px;padding:.35rem .8rem;width:-moz-fit-content;width:fit-content}table{width:100%;border-collapse:collapse;min-width:900px}td,th{border-bottom:1px solid var(--line);text-align:left;padding:.7rem;font-size:.92rem}th{color:#405878;font-weight:600;font-size:.95rem;border-bottom-width:2px}tbody tr:nth-child(odd) td{background:rgba(245,248,254,.58)}tbody tr:hover td{background:rgba(223,233,250,.55)}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:.35rem}.pagination a{color:#1e4cb4;text-decoration:none;font-weight:700;border:1px solid #c8d7f1;border-radius:999px;padding:.42rem .95rem;background:#f6f9ff}.pagination a.disabled{color:#93a0b4;background:#f3f5f9;border-color:#dee3eb;pointer-events:none}.error{color:var(--danger)}@media (max-width:900px){.filters{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}.actions{width:100%;justify-content:space-between}.brand{flex-direction:column;align-items:flex-start;gap:.45rem}.brand-content h1{font-size:2rem}.admin-actions .ghost{width:auto}.header-logo{width:108px;margin-right:0}}