/* V47 — unified CMBTrades admin visual system. Loaded only on admin/private pages. */
:root{--cmb-ink:#0b2038;--cmb-navy:#071426;--cmb-blue:#2378f3;--cmb-cyan:#00c8ee;--cmb-yellow:#ffd95c;--cmb-pink:#ff8db5;--cmb-bg:#eef6fc;--cmb-card:#fff;--cmb-line:#d6e3ee;--cmb-muted:#60778d;--cmb-shadow:0 14px 36px rgba(16,45,71,.08)}
html{background:var(--cmb-bg)}body{background:linear-gradient(180deg,#f8fcff 0,#eef6fc 45%,#f8fbfe 100%);color:var(--cmb-ink);min-height:100vh}body::before{content:"";display:block;position:fixed;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--cmb-cyan),var(--cmb-blue),var(--cmb-pink),var(--cmb-yellow));z-index:10050;pointer-events:none}
.admin-header,.mobile-topbar,.desk-top{border-bottom:1px solid rgba(115,145,170,.22);box-shadow:0 6px 20px rgba(11,32,56,.05)}
.admin-header strong,.mobile-topbar strong,.desk-top strong{letter-spacing:-.015em}.admin-header span{color:#6a8296}
.admin-shell,.admin-main,.desktop-main{max-width:1460px;margin-left:auto;margin-right:auto}.admin-shell{padding-top:24px}.admin-hero,.admin-page-title,.quote-admin-heading{position:relative;overflow:hidden;background:linear-gradient(135deg,#071426 0%,#0d3563 72%,#126d9b 100%);color:#fff;border-radius:25px;padding:clamp(22px,4vw,36px);margin-bottom:22px;box-shadow:0 16px 36px rgba(7,20,38,.14)}.admin-hero::after,.admin-page-title::after,.quote-admin-heading::after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-45px;top:-65px;background:rgba(0,216,255,.14);box-shadow:-75px 110px 0 rgba(255,217,92,.08)}.admin-hero h1,.admin-page-title h1,.quote-admin-heading h1{color:#fff!important;margin:.2em 0!important;letter-spacing:-.045em;font-size:clamp(2rem,4vw,3.35rem)}.admin-hero p,.admin-page-title p,.quote-admin-heading p{color:#d6e9f7!important;max-width:900px;line-height:1.6}.admin-hero .eyebrow,.admin-page-title .eyebrow,.quote-admin-heading .eyebrow{color:#63e9ff!important}
.admin-card,.admin-panel,.safety-card,.v2-card,.metric-card,.stat-card,.desk-card,.mobile-card{background:var(--cmb-card)!important;border:1px solid var(--cmb-line)!important;border-radius:20px!important;box-shadow:var(--cmb-shadow)!important}.admin-card,.admin-panel,.safety-card{padding:clamp(17px,3vw,26px)!important;margin-bottom:18px}.admin-card:hover,.v2-card:hover{border-color:#c1d9ea!important}
.admin-section-head{border-bottom:1px solid #edf2f6;padding-bottom:14px;margin-bottom:16px}.admin-section-head h2{letter-spacing:-.025em}.eyebrow{font-weight:950;letter-spacing:.12em}.admin-muted,.muted{color:var(--cmb-muted)!important}
input,select,textarea{border:1px solid #c4d5e2!important;border-radius:12px!important;background:#fff!important;color:#132e47!important;box-sizing:border-box}input:focus,select:focus,textarea:focus{outline:3px solid rgba(35,120,243,.13)!important;border-color:var(--cmb-blue)!important;box-shadow:0 0 0 1px var(--cmb-blue)!important}label{color:#233b54}
.admin-primary,.v2-btn.primary,button.primary,.button.primary{background:linear-gradient(180deg,#3489ff,#176bdd)!important;color:#fff!important;border:1px solid #1264d6!important;border-radius:12px!important;font-weight:900!important;box-shadow:0 5px 0 #0f4fa7,0 9px 18px rgba(23,107,221,.16)!important;transition:.15s ease!important}.admin-primary:hover,.v2-btn.primary:hover{transform:translateY(-1px)}.admin-primary:active,.v2-btn.primary:active{transform:translateY(2px);box-shadow:0 2px 0 #0f4fa7!important}.admin-secondary,.v2-btn,.admin-link,.inline-button{background:#fff!important;color:#194f8f!important;border:1px solid #bed1e1!important;border-radius:12px!important;font-weight:850!important}.admin-secondary:hover,.v2-btn:hover,.admin-link:hover{background:#eef7ff!important;border-color:#83baf0!important}
.admin-notification-trigger,.admin-menu-trigger{border-radius:14px!important;box-shadow:0 5px 14px rgba(7,20,38,.08)!important}.admin-notification-trigger:hover,.admin-menu-trigger:hover{background:#eef9ff!important}.admin-notification-count{box-shadow:0 0 0 3px #fff}
.v2-grid{gap:16px!important}.v2-card{position:relative;overflow:hidden}.v2-card::before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:linear-gradient(var(--cmb-cyan),var(--cmb-blue))}.v2-card h3{letter-spacing:-.02em}.v2-card p{line-height:1.5}
.v2-table,.admin-table,table{background:#fff;border-radius:14px;overflow:hidden}.v2-table th,.admin-table th,table th{background:#f2f7fb;color:#425d75;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.v2-table tr:hover td,.admin-table tr:hover td,table tbody tr:hover td{background:#f9fcff}
.status-pill{border:1px solid #d4e7f4;background:#edf8ff!important;color:#17649f}.warn-pill{background:#fff4c9!important;color:#6c5714!important;border-color:#eedc89!important}.metric{letter-spacing:-.045em;color:#0f3f74}
.help-dot{background:#e5f8ff!important;color:#0069a0!important;border:1px solid #b8e8f5!important}.help-dot:hover{transform:scale(1.07)}
.admin-menu-drawer{background:linear-gradient(180deg,#f8fcff,#eef6fc)!important}.admin-menu-group a{transition:.13s ease}.admin-menu-group a:hover{transform:translateX(-2px);background:#e8f6ff!important}.admin-menu-group a.current{box-shadow:inset 4px 0 0 var(--cmb-blue)}
/* Give plain/older pages a usable centered canvas even when they lack newer wrappers. */
body>.admin-card,body>.admin-panel{max-width:1380px;margin-left:auto;margin-right:auto}.admin-status{padding:9px 12px;border-radius:10px;background:#effaf5}.error,.admin-error{background:#fff0f0!important;color:#a33434!important}
/* A little personality without turning the admin into a toy. */
.admin-card:nth-of-type(3n+1){border-top:3px solid rgba(0,200,238,.4)!important}.admin-card:nth-of-type(3n+2){border-top:3px solid rgba(255,141,181,.34)!important}.admin-card:nth-of-type(3n){border-top:3px solid rgba(255,217,92,.48)!important}
@media(max-width:760px){.admin-shell,.admin-main{padding-left:12px!important;padding-right:12px!important}.admin-hero,.admin-page-title,.quote-admin-heading{border-radius:19px;padding:21px}.admin-card,.admin-panel{border-radius:16px!important;padding:16px!important}.v2-grid{grid-template-columns:1fr!important}.admin-section-head{align-items:flex-start}.admin-section-head>*{max-width:100%}}
