.admin-login{min-height:100vh;font-family:var(--font-outfit), var(--font), sans-serif;background:radial-gradient(circle at 0 0,#56b87d2e,#0000 45%),linear-gradient(160deg,#0b0d10 0%,#152018 55%,#0b0d10 100%);justify-content:center;align-items:center;padding:32px 20px;display:flex}.admin-login-card{background:#fff;border-radius:24px;width:100%;max-width:440px;padding:40px 36px;box-shadow:0 24px 60px #00000040}.admin-login-brand{align-items:center;gap:12px;margin-bottom:28px;display:flex}.admin-login-brand img{width:auto;height:28px}.admin-login-brand span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:600}.admin-login-card h1{color:var(--dark);letter-spacing:-.02em;margin-bottom:8px;font-size:28px}.admin-login-card>p{color:var(--muted);margin-bottom:28px;font-size:15px}.admin-field{margin-bottom:16px}.admin-field label{color:var(--dark);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.admin-field input{border:1px solid var(--border);background:var(--light);border-radius:12px;outline:none;width:100%;padding:14px 16px;font-family:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s}.admin-field input:focus{border-color:var(--green);background:#fff;box-shadow:0 0 0 3px #56b87d2e}.admin-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-bottom:16px;padding:12px 14px;font-size:14px}.admin-login-submit{background:var(--green);color:#fff;cursor:pointer;border:none;border-radius:999px;width:100%;height:52px;margin-top:8px;font-family:inherit;font-size:15px;font-weight:700;transition:background .2s}.admin-login-submit:hover{background:var(--green-dark)}.admin-login-submit:disabled{opacity:.7;cursor:not-allowed}.admin-demo-box{background:var(--light);border:1px solid var(--border);border-radius:16px;margin-top:24px;padding:16px}.admin-demo-box h3{color:var(--dark);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:13px;font-weight:700}.admin-demo-box ul{margin:0;padding:0;list-style:none}.admin-demo-box li{color:var(--muted);margin-bottom:6px;font-size:13px;line-height:1.4}.admin-demo-box code{color:var(--dark);border:1px solid var(--border);background:#fff;border-radius:6px;padding:1px 6px;font-size:12px}.admin-shell{min-height:100vh;font-family:var(--font-outfit), var(--font), sans-serif;color:var(--dark);background:#f3f5f4;grid-template-columns:260px 1fr;display:grid}.admin-sidebar{color:#fff;background:#0b0d10;flex-direction:column;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.admin-sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;margin-bottom:20px;padding:0 10px 24px;display:flex}.admin-sidebar-brand img{width:auto;height:26px}.admin-role-badge{letter-spacing:.06em;text-transform:uppercase;color:#0b0d10;background:var(--green);border-radius:999px;align-self:flex-start;margin:0 10px 20px;padding:6px 12px;font-size:11px;font-weight:700;display:inline-flex}.admin-nav{flex-direction:column;flex:1;gap:4px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.admin-nav a{color:#ffffffb8;border-radius:12px;padding:12px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:block}.admin-nav a:hover{color:#fff;background:#ffffff0f}.admin-nav a.active{color:#fff;background:#56b87d2e}.admin-sidebar-footer{color:#ffffff73;border-top:1px solid #ffffff14;padding:16px 10px 0;font-size:12px}.admin-main{flex-direction:column;min-width:0;display:flex}.admin-topbar{border-bottom:1px solid var(--border);z-index:20;background:#fff;justify-content:space-between;align-items:center;height:72px;padding:0 28px;display:flex;position:sticky;top:0}.admin-topbar h1{letter-spacing:-.02em;font-size:20px;font-weight:700}.admin-topbar-user{align-items:center;gap:14px;display:flex}.admin-topbar-meta{text-align:right}.admin-topbar-meta strong{font-size:14px;display:block}.admin-topbar-meta span{color:var(--muted);font-size:12px}.admin-logout-btn{border:1px solid var(--border);color:var(--dark);cursor:pointer;background:#fff;border-radius:999px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600}.admin-logout-btn:hover{border-color:var(--green);color:var(--green-dark)}.admin-content{padding:28px}.admin-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.admin-kpi-card{border:1px solid var(--border);background:#fff;border-radius:18px;padding:22px 20px;box-shadow:0 8px 24px #00000008}.admin-kpi-card span{color:var(--muted);margin-bottom:10px;font-size:13px;font-weight:600;display:block}.admin-kpi-card strong{letter-spacing:-.03em;margin-bottom:6px;font-size:28px;display:block}.admin-kpi-card small{color:var(--green-dark);font-size:12px;font-weight:600}.admin-alerts{margin-top:24px}.admin-alerts-header{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.admin-alerts-header h2{font-size:18px}.admin-alerts-header span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.admin-alert-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.admin-alert-card{border:1px solid var(--border);background:#fff;border-radius:16px;padding:18px 20px}.admin-alert-card.warning{background:#fffbeb;border-color:#fcd34d}.admin-alert-card.danger{background:#fef2f2;border-color:#fca5a5}.admin-alert-card.info{background:#eff6ff;border-color:#93c5fd}.admin-alert-card h3{margin-bottom:6px;font-size:15px}.admin-alert-card p{color:var(--muted);font-size:13px;line-height:1.5}.admin-placeholder{text-align:center;background:#fff;border:1px dashed #0000001f;border-radius:20px;padding:48px 32px}.admin-placeholder span{letter-spacing:.06em;text-transform:uppercase;color:var(--green-dark);background:#56b87d1f;border-radius:999px;margin-bottom:16px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-block}.admin-placeholder h2{margin-bottom:10px;font-size:24px}.admin-placeholder p{color:var(--muted);max-width:480px;margin:0 auto;line-height:1.6}.admin-loading{min-height:100vh;color:var(--muted);justify-content:center;align-items:center;font-weight:600;display:flex}@media (max-width:1100px){.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-alert-grid{grid-template-columns:1fr}}@media (max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{height:auto;position:relative}.admin-content{padding:20px 16px}}
