:root{--admin-bg: #f4f6f8;--admin-surface: #ffffff;--admin-border: #e3e6ea;--admin-text: #0a0e14;--admin-text-muted: #5b626c;--admin-accent: #0a8a3b;--admin-accent-soft: rgba(10, 138, 59, .08);--admin-danger: #c4302b;--admin-warning: #b97a00;--admin-info: #2257b3}*{box-sizing:border-box}html,body{margin:0;padding:0}body.admin-page{font-family:Outfit,ui-sans-serif,system-ui,sans-serif;background:var(--admin-bg);color:var(--admin-text);line-height:1.5;font-size:14px}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-side{background:#0a0e14;color:#fff;padding:22px 18px;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-brand{display:flex;align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-weight:800;font-size:18px;letter-spacing:-.3px;margin-bottom:32px;color:#fff;text-decoration:none}.admin-brand small{font-size:10px;letter-spacing:1.5px;color:#6b7280;margin-left:4px}.admin-nav{display:flex;flex-direction:column;gap:2px}.admin-nav a{display:block;padding:9px 12px;color:#a0a6b8;text-decoration:none;border-radius:6px;font-weight:500;transition:background .1s,color .1s}.admin-nav a:hover{background:#ffffff0a;color:#fff}.admin-nav a.is-active{background:#ffffff14;color:#fff}.admin-nav__group{font-size:11px;letter-spacing:1.4px;color:#6b7280;padding:18px 12px 6px;text-transform:uppercase;font-weight:600}.admin-side__foot{margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.06);font-size:12px;color:#6b7280}.admin-side__foot form{margin-top:8px}.admin-side__foot button{background:transparent;border:1px solid rgba(160,166,184,.22);color:#a0a6b8;padding:6px 10px;border-radius:6px;font-size:12px;cursor:pointer}.admin-side__foot button:hover{background:#ffffff0a;color:#fff}.admin-main{padding:32px 36px 56px;max-width:1400px}.admin-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.admin-head h1{font-size:26px;margin:0;font-weight:700;letter-spacing:-.2px}.admin-head p{margin:4px 0 0;color:var(--admin-text-muted);font-size:13px}.admin-head__actions{display:flex;gap:8px}.card{background:var(--admin-surface);border:1px solid var(--admin-border);border-radius:10px;padding:20px}.card+.card{margin-top:16px}.card-h{font-size:11px;letter-spacing:1.6px;color:var(--admin-text-muted);text-transform:uppercase;font-weight:700;margin:0 0 12px}.card-title{margin:0 0 14px;font-size:17px;font-weight:700}.grid{display:grid;gap:16px}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}.grid--2{grid-template-columns:1fr 1fr}@media (max-width: 1100px){.grid--4,.grid--3{grid-template-columns:1fr 1fr}}@media (max-width: 700px){.grid--4,.grid--3,.grid--2{grid-template-columns:1fr}}.metric{background:var(--admin-surface);border:1px solid var(--admin-border);border-radius:10px;padding:18px}.metric__lbl{font-size:11px;letter-spacing:1.6px;color:var(--admin-text-muted);text-transform:uppercase;font-weight:700}.metric__val{font-family:JetBrains Mono,monospace;font-size:32px;font-weight:800;margin-top:6px;letter-spacing:-1px}.metric__sub{color:var(--admin-text-muted);font-size:12px;margin-top:4px}table.tbl{width:100%;border-collapse:collapse}table.tbl th,table.tbl td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--admin-border);font-size:13px}table.tbl th{font-size:11px;letter-spacing:1.4px;color:var(--admin-text-muted);text-transform:uppercase;font-weight:700;background:#fafbfc}table.tbl tr:last-child td{border-bottom:none}table.tbl a{color:var(--admin-info);text-decoration:none}table.tbl a:hover{text-decoration:underline}.tbl__wrap{background:var(--admin-surface);border:1px solid var(--admin-border);border-radius:10px;overflow:hidden}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-weight:600;text-decoration:none;cursor:pointer;border:1px solid transparent;font-size:13px;font-family:inherit}.btn--primary{background:var(--admin-accent);color:#fff}.btn--primary:hover{background:#097031}.btn--ghost{background:transparent;border-color:var(--admin-border);color:var(--admin-text)}.btn--ghost:hover{background:#ecedef}.btn--danger{background:var(--admin-danger);color:#fff}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.3px}.badge--pending{background:#b97a001f;color:var(--admin-warning)}.badge--confirmed{background:var(--admin-accent-soft);color:var(--admin-accent)}input[type=text],input[type=email],input[type=password],input[type=date],textarea,select{width:100%;padding:10px 12px;border:1px solid var(--admin-border);border-radius:8px;background:#fff;font-family:inherit;font-size:14px;color:var(--admin-text)}input[type=file]{font-size:13px}textarea{resize:vertical;min-height:90px;font-family:inherit}label.fld{display:block;margin-bottom:14px}label.fld>span{display:block;font-size:11px;letter-spacing:1.4px;color:var(--admin-text-muted);text-transform:uppercase;font-weight:700;margin-bottom:4px}.errors{background:#fdecea;color:var(--admin-danger);padding:12px 14px;border-radius:8px;margin-bottom:16px;font-size:13px}.errors ul{margin:0;padding-left:18px}.flash{background:var(--admin-accent-soft);color:var(--admin-accent);padding:10px 14px;border-radius:8px;margin-bottom:16px;font-size:13px;font-weight:600}.muted{color:var(--admin-text-muted)}.mono{font-family:JetBrains Mono,monospace}.search-row{display:flex;gap:8px;margin-bottom:16px;align-items:center}.search-row input{flex:1;max-width:380px}.search-row select{width:auto}.pager{display:flex;gap:8px;align-items:center;margin-top:14px;font-size:13px;color:var(--admin-text-muted)}.pager a,.pager span.current{padding:6px 10px;border-radius:6px;border:1px solid var(--admin-border);text-decoration:none;color:var(--admin-text)}.pager span.current{background:var(--admin-text);color:#fff;border-color:var(--admin-text)}.login-shell{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--admin-bg)}.login-card{width:100%;max-width:380px;background:#fff;border-radius:14px;padding:32px;box-shadow:0 4px 24px #0a0e140a}.login-card h1{margin:0 0 6px;font-size:22px}.login-card p{color:var(--admin-text-muted);font-size:13px;margin:0 0 22px}
