:root {
  color-scheme:light;
  --bg:#f4f7f5; --surface:#fff; --surface-2:#f7faf8; --text:#132018; --muted:#68756e;
  --line:#dce7e1; --brand:#16b878; --brand-strong:#0d9360; --brand-soft:#dcf8eb;
  --danger:#e14e55; --nav:#09150f; --shadow:0 18px 50px rgba(13,58,39,.12); --radius:18px;
}
html[data-admin-theme="dark"] { color-scheme:dark; --bg:#07110d; --surface:#0f1b16; --surface-2:#14231c; --text:#f4faf7; --muted:#9dafA6; --line:#254036; --brand:#42e59d; --brand-strong:#22cf85; --brand-soft:#123b2b; --danger:#ff7378; --nav:#050d09; --shadow:0 22px 60px rgba(0,0,0,.36); }
*{box-sizing:border-box} html,body{margin:0;min-height:100%;font-family:"Segoe UI","Noto Sans",Arial,sans-serif;background:var(--bg);color:var(--text)} button,input,select,textarea{font:inherit;color:inherit} button{cursor:pointer} a{color:inherit;text-decoration:none} [hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:16px;z-index:999;background:#111;color:#fff;padding:10px 14px;border-radius:8px}.skip-link:focus{top:16px}:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 70%,white);outline-offset:2px}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 30% 10%,color-mix(in srgb,var(--brand) 18%,transparent),transparent 38%),var(--bg)}.login-card{width:min(470px,100%);background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:var(--shadow)}.admin-brand{display:inline-flex;width:210px}.admin-brand img{width:100%;height:auto}.login-kicker,.top-kicker,.section-kicker,.panel-title p{color:var(--brand-strong);font-size:11px;font-weight:900;letter-spacing:.13em}.login-card h1{margin:12px 0 8px;font-size:34px;letter-spacing:-.04em}.login-copy{color:var(--muted);margin:0 0 24px}.login-form{display:grid;gap:9px;margin-top:14px}.login-form label,.edit-form>label,.settings-form>label,.dialog-card>label,.form-grid label{font-size:12px;font-weight:800;color:var(--muted);display:grid;gap:7px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);padding:11px 12px;outline:0}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 15%,transparent)}.otp-input{text-align:center;font-size:30px;font-weight:900;letter-spacing:.35em}.login-status{margin-top:18px;padding:12px 14px;border-radius:12px;background:var(--surface-2);color:var(--muted);font-size:12px;line-height:1.5}.login-status.error{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}.login-status.success{background:var(--brand-soft);color:var(--brand-strong)}.back-home{display:inline-block;margin-top:18px;color:var(--brand-strong);font-weight:800;font-size:13px}
.button{border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:11px 16px;font-weight:850}.button.primary{background:var(--brand);border-color:var(--brand);color:#fff}.button.primary:hover{background:var(--brand-strong)}.button.ghost:hover{border-color:var(--brand);color:var(--brand-strong)}.button.danger{background:color-mix(in srgb,var(--danger) 10%,var(--surface));border-color:color-mix(in srgb,var(--danger) 32%,var(--line));color:var(--danger)}.button.compact{padding:8px 12px;font-size:12px}
.admin-app{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:var(--nav);color:#d9e9e0;padding:24px 16px;display:flex;flex-direction:column;z-index:80}.sidebar-brand{display:grid;gap:8px;padding:0 10px 22px;border-bottom:1px solid #1d3328}.sidebar-brand img{width:180px}.sidebar-brand span{font-size:10px;color:#75d9aa;font-weight:900;letter-spacing:.18em}.admin-nav{display:grid;gap:7px;padding-top:22px}.admin-nav button{width:100%;border:1px solid transparent;border-radius:12px;background:transparent;color:#a9bbb2;padding:12px;text-align:left;font-weight:750;display:flex;align-items:center;gap:12px}.admin-nav button span{width:25px;color:#5f766a;font-size:10px}.admin-nav button:hover{background:#112219;color:#fff}.admin-nav button.active{background:#173a2a;border-color:#2d6d4e;color:#fff}.admin-nav button.active span{color:#54eca7}.sidebar-foot{margin-top:auto;display:grid;gap:8px;padding:18px 10px 2px;border-top:1px solid #1d3328;font-size:11px;color:#758a80}.sidebar-foot a{color:#74e5ac;font-weight:800}.admin-workspace{grid-column:2;min-width:0}.admin-topbar{position:sticky;top:0;z-index:60;min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 28px;background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.admin-topbar h1{margin:1px 0 0;font-size:25px;letter-spacing:-.03em}.top-kicker{margin:0}.top-actions{display:flex;align-items:center;gap:9px}.icon-button,.menu-toggle{width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:var(--surface);display:grid;place-items:center}.menu-toggle{display:none}.admin-main{padding:26px;max-width:1560px;margin:0 auto}.admin-page{display:none}.admin-page.active{display:block}.stats-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.stat-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:17px;box-shadow:0 5px 18px rgba(20,55,39,.04)}.stat-card span{display:block;color:var(--muted);font-size:11px;font-weight:800}.stat-card strong{display:block;margin:8px 0 2px;font-size:30px}.stat-card small{color:var(--muted);font-size:10px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.admin-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 5px 18px rgba(20,55,39,.04)}.panel-title,.page-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.panel-title{margin-bottom:16px}.panel-title p,.section-kicker{margin:0}.panel-title h2,.page-toolbar h2{margin:2px 0 0;font-size:22px}.link-button{border:0;background:none;color:var(--brand-strong);font-weight:850}.rank-list,.activity-list{display:grid;gap:8px}.rank-row,.activity-row{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-radius:11px;background:var(--surface-2)}.rank-row b{color:var(--brand-strong)}.rank-row span,.activity-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-row small,.activity-row small{color:var(--muted)}.activity-row{grid-template-columns:1fr auto}.activity-row strong{display:block;font-size:12px}.activity-row span{display:block;color:var(--muted);font-size:11px}.page-toolbar{margin-bottom:16px}.toolbar-actions{display:flex;align-items:center;gap:9px}.toolbar-actions select{min-width:190px}.table-panel{padding:0;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}td{font-size:12px}tbody tr:hover{background:var(--surface-2)}.table-title{font-weight:850}.table-sub{display:block;color:var(--muted);font-size:10px;margin-top:3px;max-width:440px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:var(--brand-soft);color:var(--brand-strong);font-size:10px;font-weight:900}.status-pill.draft{background:#fff1cf;color:#9a6800}.status-pill.archived{background:#e9edf0;color:#68727c}.row-actions{display:flex;justify-content:flex-end;gap:5px}.row-actions button{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:6px 9px;font-size:10px;font-weight:800}.row-actions button:hover{border-color:var(--brand);color:var(--brand-strong)}.row-actions .delete:hover{border-color:var(--danger);color:var(--danger)}
.calendar-admin-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px}.edit-form{display:grid;gap:13px;align-content:start}.edit-form h3{margin:0 0 4px}.check-row{display:flex!important;align-items:center;gap:9px!important;color:var(--text)!important}.check-row input{width:18px;height:18px}.form-actions{display:flex;gap:9px;margin-top:6px}.form-actions.end{justify-content:flex-end}.calendar-admin-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.calendar-admin-day{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:10px;text-align:left}.calendar-admin-day:hover{border-color:var(--brand)}.calendar-admin-day strong{display:block}.calendar-admin-day small{color:var(--muted)}.calendar-admin-badges{display:flex;gap:4px;margin-top:6px}.calendar-admin-badges span{font-size:9px;font-weight:900;padding:3px 5px;border-radius:5px;background:var(--brand-soft);color:var(--brand-strong)}.settings-form{max-width:780px;display:grid;gap:14px}.settings-form label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:800}
.admin-dialog{border:0;background:transparent;padding:18px;max-width:none;width:100%;height:100%}.admin-dialog::backdrop{background:rgba(3,12,8,.62);backdrop-filter:blur(4px)}.dialog-card{width:min(860px,100%);max-height:calc(100vh - 36px);overflow:auto;margin:auto;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}.small-dialog{width:min(520px,100%);display:grid;gap:13px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.dialog-head h2{margin:2px 0 0}.dialog-close{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid .span-2{grid-column:1/-1}.admin-toast{position:fixed;right:22px;bottom:22px;z-index:200;max-width:420px;background:#0f2018;color:#fff;border:1px solid #2d6d4e;border-radius:13px;padding:12px 16px;box-shadow:var(--shadow);transform:translateY(24px);opacity:0;pointer-events:none;transition:.2s}.admin-toast.show{transform:none;opacity:1}.admin-toast.error{background:#42191d;border-color:#8d343c}
.empty-state{padding:30px;text-align:center;color:var(--muted)}
@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(3,1fr)}.calendar-admin-list{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.admin-app{display:block}.admin-sidebar{transform:translateX(-100%);transition:transform .2s}.admin-sidebar.open{transform:none}.admin-workspace{grid-column:auto}.menu-toggle{display:grid}.admin-main{padding:18px}.dashboard-grid{grid-template-columns:1fr}.calendar-admin-grid{grid-template-columns:1fr}.calendar-admin-list{grid-template-columns:repeat(4,1fr)}}
@media(max-width:640px){.login-card{padding:24px}.admin-topbar{padding:12px 15px}.admin-topbar h1{font-size:20px}.top-kicker{display:none}.top-actions .button{font-size:0;width:40px;height:40px;padding:0}.top-actions .button::before{content:"↪";font-size:18px}.admin-main{padding:14px}.stats-grid{grid-template-columns:1fr 1fr}.page-toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%;flex-direction:column}.toolbar-actions select,.toolbar-actions .button{width:100%}.calendar-admin-list{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.dialog-card{padding:18px}.stat-card strong{font-size:25px}}
