/* admin console visual layer (dashboard.html, admin sections). Load after dashboard-delight.css */
:root{--ad-cu:#b4561f;--ad-cu2:#f0a35e;--ad-navy:#0b1530}
@keyframes adIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* dark ops sidebar */
body.is-admin .dash-sidebar{background:radial-gradient(300px 200px at 90% 0,rgba(240,163,94,.3),transparent 60%),linear-gradient(180deg,#0b1530,#14244d)!important;border:0!important;color:#fff;box-shadow:0 26px 60px rgba(11,21,48,.35)!important}
body.is-admin .dash-profile{border-bottom-color:rgba(255,255,255,.14)!important}
body.is-admin .dash-profile strong{color:#fff}
body.is-admin .dash-profile [data-role-label]{color:#ffd9b0!important;font-weight:700}
body.is-admin .dash-nav__label{color:rgba(255,255,255,.55);letter-spacing:0}
body.is-admin .dash-nav--ops{border-top:0!important;margin-top:0}
body.is-admin .dash-nav--ops a{color:rgba(255,255,255,.82)!important;font-size:14px;font-weight:600;padding:11px 14px!important;border-radius:16px!important;transition:background .2s,transform .25s,color .2s}
body.is-admin .dash-nav--ops a svg{opacity:.9;stroke:currentColor}
body.is-admin .dash-nav--ops a:hover{background:rgba(255,255,255,.12)!important;color:#fff!important;transform:translateX(-4px)}
body.is-admin .dash-nav--ops a.is-active{background:linear-gradient(135deg,var(--ad-cu),var(--ad-cu2))!important;color:#fff!important;font-weight:800;box-shadow:0 12px 26px rgba(180,86,31,.5)}
/* page head */
.dash-section[data-admin-only] .dash-section-title{display:flex;align-items:center;gap:12px}
.dash-section[data-admin-only] .dash-section-title::before{content:"";width:8px;height:34px;border-radius:8px;background:linear-gradient(180deg,var(--ad-cu),var(--ad-cu2));-webkit-text-fill-color:initial}
.dash-section[data-admin-only]{animation:adIn .4s both}
/* KPI */
.admin-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))!important;gap:18px!important}
.admin-stat{position:relative;overflow:hidden;padding:22px!important;border-radius:24px!important;border:1px solid #fff!important;background:#fff!important;box-shadow:0 14px 38px rgba(11,21,48,.08)!important;transition:transform .3s,box-shadow .3s;animation:adIn .5s both}
.admin-stat::before{content:"";position:absolute;inset-inline:0;top:0;height:5px;background:linear-gradient(90deg,var(--ad-cu),var(--ad-cu2))}
.admin-stat:nth-child(4n+2)::before{background:linear-gradient(90deg,#0f766e,#27d17f)}.admin-stat:nth-child(4n+3)::before{background:linear-gradient(90deg,#4b7bff,#9bb6ff)}.admin-stat:nth-child(4n)::before{background:linear-gradient(90deg,#f59e0b,#fde68a)}
.admin-stat:hover{transform:translateY(-5px);box-shadow:0 24px 50px rgba(180,86,31,.16)!important}
.admin-stat strong{font-size:2rem!important;font-weight:800;color:var(--ad-navy)!important}
.admin-stat span{font-size:13px!important;font-weight:700;color:#64748b!important}
/* toolbar + search */
.admin-toolbar{padding:14px 20px;border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(11,21,48,.07);margin-bottom:16px!important}
.admin-toolbar h3{font-weight:800;color:var(--ad-navy)}
.adm-search{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:6px 16px;border-radius:99px;background:#fff;border:2px solid #e5e9f2;max-width:460px;transition:.25s}
.adm-search:focus-within{border-color:var(--ad-cu);box-shadow:0 0 0 5px rgba(180,86,31,.14)}
.adm-search input{flex:1;border:0;outline:0;background:transparent;font:inherit;min-height:38px}
.adm-search__count{font-size:12px;color:#94a3b8;white-space:nowrap}
/* tables */
.admin-table-wrap{max-height:68vh;overflow:auto;border-radius:24px!important;border:1px solid #fff!important;background:#fff;box-shadow:0 16px 44px rgba(11,21,48,.09)}
.admin-table{border-collapse:separate!important;border-spacing:0}
.admin-table th{position:sticky;top:0;z-index:2;background:linear-gradient(180deg,#f8fafd,#eef2f9)!important;padding:14px 16px!important;color:#475569;font-weight:800;border-bottom:2px solid #e3e9f5!important}
.admin-table td{padding:13px 16px!important;border-bottom:1px solid #eef1f8!important;vertical-align:middle}
.admin-table tbody tr:nth-child(even){background:#fafbfe}
.admin-table tbody tr{transition:background .15s}.admin-table tbody tr:hover{background:#fff6ec!important}
.admin-table td:first-child{font-weight:700;color:var(--ad-navy)}
.admin-table select{min-height:38px;max-width:160px!important;border-radius:12px;border:2px solid #e5e9f2;padding-inline:10px;background:#fff;font-weight:600;transition:.2s}
.admin-table select:focus{outline:0;border-color:var(--ad-cu);box-shadow:0 0 0 4px rgba(180,86,31,.14)}
.admin-table .btn{border-radius:99px;font-weight:700}
.badge,.badge-admin{border-radius:99px!important;font-weight:700;padding:4px 12px!important}
/* forms */
.admin-form{padding:clamp(18px,2.4vw,28px);border-radius:26px;background:#fff;border:1px solid #fff;box-shadow:0 18px 50px rgba(11,21,48,.09);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:18px!important;margin-bottom:20px;animation:adIn .4s both}
.admin-form .form-field label{font-size:13px!important;font-weight:800;color:var(--ad-navy)}
.admin-form input,.admin-form select,.admin-form textarea{min-height:48px;border-radius:14px;border:2px solid #e5e9f2;padding:10px 14px;font:inherit;background:#fff;transition:.25s}
.admin-form textarea{min-height:110px}
.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus{outline:0;border-color:var(--ad-cu);box-shadow:0 0 0 5px rgba(180,86,31,.14)}
.admin-form .form-actions{padding-top:6px;position:sticky;bottom:0;background:linear-gradient(transparent,#fff 35%)}
.admin-form .btn,.admin-toolbar .btn,.blog-admin .btn{min-height:44px;border-radius:99px;font-weight:800;padding-inline:22px}
.admin-form .btn-primary,.admin-toolbar .btn-primary,.blog-admin .btn-primary{background:linear-gradient(135deg,var(--ad-cu),#e08a45)!important;border:0!important;box-shadow:0 12px 26px rgba(180,86,31,.4)}
/* blog admin */
.blog-admin__list,.blog-admin__editor{border-radius:26px!important;border:1px solid #fff!important;box-shadow:0 16px 44px rgba(11,21,48,.08)!important;background:#fff}
.blog-admin__editor-empty{border:2px dashed #f0d9c4;border-radius:22px;background:linear-gradient(160deg,#fff8f0,#fff);font-weight:600}
.blog-cover-upload{border-radius:20px!important;border-color:#f0d9c4!important}
@media(max-width:900px){.admin-table-wrap{max-height:none}.admin-stats{grid-template-columns:1fr 1fr!important}}
@media(prefers-reduced-motion:reduce){.dash-section[data-admin-only],.admin-stat,.admin-form{animation:none!important}}

/* users: tools, requests panel, modal */
.adm-tools{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 16px}
.adm-tools .btn{min-height:46px;border-radius:99px;font-weight:800;padding-inline:24px}
.adm-reqs{margin:0 0 18px;padding:18px 20px;border-radius:24px;background:linear-gradient(160deg,#fff7ed,#fff);border:1px solid #fed7aa;box-shadow:0 14px 36px rgba(180,86,31,.12);animation:adIn .4s both}
.adm-reqs[hidden]{display:none}
.adm-reqs h3{margin:0 0 12px;font-size:1.05rem;font-weight:800;color:#9a3412}
.adm-req{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:18px;background:#fff;margin-top:8px;box-shadow:0 6px 16px rgba(11,21,48,.05)}
.adm-req__who{display:grid;gap:2px;min-width:0}
.adm-req__who strong{color:#0b1530}.adm-req__who span{font-size:13px;color:#475569;direction:ltr;text-align:right}.adm-req__who small{color:#94a3b8}
.adm-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-inline-start:auto;border-radius:99px;background:#ef4444;color:#fff;font-size:12px;font-weight:800;box-shadow:0 4px 10px rgba(239,68,68,.5)}
.adm-badge[hidden]{display:none}
.adm-key{white-space:nowrap;margin-inline-start:8px}
.adm-modal{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:16px;background:rgba(11,21,48,.55);backdrop-filter:blur(6px)}
.adm-modal[hidden]{display:none}
.adm-modal__box{width:min(520px,100%);max-height:90vh;overflow:auto;padding:24px;border-radius:28px;background:#fff;box-shadow:0 40px 90px rgba(11,21,48,.45);animation:adIn .3s both}
.adm-modal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.adm-modal__head h3{margin:0;font-weight:800;color:#0b1530}
.adm-modal__x{width:38px;height:38px;border:0;border-radius:12px;background:#f1f5fb;cursor:pointer;font-size:16px}
.adm-form-mini{display:grid;gap:14px}
.adm-form-mini label{display:grid;gap:6px;font-weight:800;font-size:13px;color:#0b1530}
.adm-form-mini input,.adm-form-mini select,.adm-copy input{min-height:48px;border-radius:14px;border:2px solid #e5e9f2;padding:8px 14px;font:inherit;background:#fff}
.adm-form-mini input:focus,.adm-form-mini select:focus,.adm-copy input:focus{outline:0;border-color:#b4561f;box-shadow:0 0 0 4px rgba(180,86,31,.14)}
.adm-copy{display:flex;gap:8px;margin:10px 0}.adm-copy input{flex:1;min-width:0;direction:ltr;font-size:12px}
.adm-note{margin:0 0 6px;color:#475569;line-height:1.9;font-size:.92rem}
.adm-warn{margin:12px 0 0;padding:10px 14px;border-radius:14px;background:#fff7ed;color:#9a3412;font-size:.85rem}
.adm-err{margin:0;color:#dc2626;font-weight:700;min-height:1.2em}
