:root { color-scheme: dark; --bg:#090b10; --panel:#141822; --line:#292f3d; --text:#f4f6fb; --muted:#9ca5b6; --accent:#ffb84d; --danger:#ff6577; --ok:#56d18b; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:radial-gradient(circle at 15% 0%,#222941 0,var(--bg) 36rem); color:var(--text); font-family:system-ui,-apple-system,"Segoe UI",sans-serif; }
a { color:var(--accent); }
.container { width:min(1180px,calc(100% - 32px)); margin:auto; padding:38px 0 64px; }
.topbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:28px; }
.topbar h1 { margin:0; }
.actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.btn { display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--line); border-radius:11px; padding:10px 14px; background:#1b2130; color:var(--text); text-decoration:none; font:inherit; cursor:pointer; }
.btn.primary { background:var(--accent); color:#251600; border-color:var(--accent); font-weight:800; }
.btn.danger { background:#401923; border-color:#7c2b3b; }
.btn.ok { background:#143b2a; border-color:#267a51; }
.auth-wrap { width:min(440px,calc(100% - 32px)); margin:8vh auto; }
.panel { border:1px solid var(--line); border-radius:18px; background:rgba(20,24,34,.96); padding:24px; box-shadow:0 20px 60px #0007; }
.panel h1,.panel h2 { margin-top:0; }
.field { display:grid; gap:7px; margin:16px 0; }
.field input { width:100%; border:1px solid var(--line); border-radius:11px; padding:12px 14px; background:#0d111a; color:var(--text); font:inherit; }
.field input:focus { outline:2px solid #ffb84d55; border-color:var(--accent); }
.message { border-radius:11px; padding:12px 14px; margin:14px 0; background:#222a3b; color:#dfe6f5; }
.message.error { background:#3c1820; color:#ffc4cd; }
.message.ok { background:#143727; color:#b8f5d2; }
.muted { color:var(--muted); }
.full { width:100%; }
.table-wrap { overflow:auto; border:1px solid var(--line); border-radius:15px; margin:16px 0 28px; }
table { width:100%; border-collapse:collapse; min-width:760px; background:var(--panel); }
th,td { padding:12px 14px; border-bottom:1px solid var(--line); text-align:left; vertical-align:middle; }
th { color:#c9d1e0; background:#10141d; font-size:.88rem; }
tr:last-child td { border-bottom:0; }
.badge { display:inline-block; padding:4px 8px; border-radius:999px; background:#293043; font-size:.8rem; }
.badge.pending { color:#ffd88b; }.badge.approved { color:#91edb7; }.badge.rejected { color:#ff9cab; }
.inline { display:inline; }
.stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:14px; margin-bottom:28px; }
.stat { padding:18px; border:1px solid var(--line); border-radius:15px; background:var(--panel); }
.stat strong { display:block; font-size:1.8rem; margin-top:6px; }
@media (max-width:680px) { .topbar{align-items:flex-start;flex-direction:column}.container{padding-top:24px}.actions{width:100%} }

