/* ============================================================
   Solar CRM Portal v1.2.13 — Design System
   Palette · type · spacing · radius · shadow · light + dark
   ============================================================ */
:root{
  color-scheme:light;
  /* Brand */
  --solar-navy:#0A1428;
  --solar-sidebar:#0A1428; --solar-sidebar-2:#0E2A3A;
  --solar-teal:#0F766E; --solar-teal-dark:#0B4F4A;
  --solar-primary:#0F766E; --solar-primary-dark:#0B4F4A; --solar-primary-soft:#CCFBF1;
  --solar-accent:#F59E0B; --solar-accent-2:#F97316; --solar-accent-soft:#FEF3C7;
  --solar-gold:#C9A227;
  --solar-success:#10B981;
  /* Surface */
  --solar-bg:#F3F6FA; --solar-card:#FFFFFF; --solar-inset:#F8FAFC;
  --solar-text:#102D39; --solar-heading:#0B3B38; --solar-border:#E2E8F0;
  --solar-muted:#64748B;
  /* Scale */
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:20px; --space-6:24px; --space-8:32px;
  --r-sm:8px; --r-md:12px; --r-lg:16px; --r-xl:20px;
  --shadow-sm:0 1px 2px rgba(16,45,57,.07);
  --shadow-md:0 1px 2px rgba(16,45,57,.06),0 8px 24px -12px rgba(16,45,57,.18);
  --shadow-lg:0 2px 4px rgba(16,45,57,.06),0 20px 44px -16px rgba(11,79,74,.25);
  --shadow-glow-teal:0 6px 14px -6px rgba(15,118,110,.6);
  --shadow-glow-green:0 6px 18px -6px rgba(16,185,129,.55);
  --shadow-pop:0 30px 80px -20px rgba(0,0,0,.55);
  --shadow-inset:inset 0 1px 2px rgba(16,45,57,.04);
  --ring:0 0 0 3px rgba(15,118,110,.15);
  --font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}
*{box-sizing:border-box}
html,body{height:100%}
html{margin-top:0!important}
#wpadminbar{display:none!important}
body.solar-portal-body{font-family:var(--font);background:var(--solar-bg) radial-gradient(1200px 400px at 80% -100px,rgba(20,184,166,.08),transparent 60%) fixed;color:var(--solar-text);margin:0;font-size:14.5px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--solar-primary)}
a:hover{color:var(--solar-primary-dark)}
h1,h2,h3,h4{line-height:1.25;letter-spacing:-.01em}
:focus-visible{outline:2px solid var(--solar-primary);outline-offset:2px}
.solar-ico{flex-shrink:0;vertical-align:-3px}

/* ---------- Shell ---------- */
.solar-shell{display:flex;min-height:100vh}
.solar-main{flex:1;min-width:0;display:flex;flex-direction:column}
.solar-content{padding:var(--space-6) var(--space-6);flex:1;min-width:0;max-width:1460px;width:100%;margin:0 auto}
.solar-footer{background:transparent;border-top:1px solid var(--solar-border);padding:14px var(--space-6);display:flex;justify-content:space-between;gap:var(--space-3);font-size:12px;color:var(--solar-muted);flex-wrap:wrap}
.solar-scrim{display:none}

/* ---------- Sidebar ---------- */
.solar-sidebar{width:272px;background:linear-gradient(180deg,var(--solar-sidebar) 0%,var(--solar-sidebar-2) 130%);color:#CBD5E1;position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;flex-shrink:0;z-index:1040;border-right:1px solid rgba(255,255,255,.06);scrollbar-width:thin;scrollbar-color:#334155 transparent;transition:width .22s ease}
.solar-brand{display:flex;align-items:center;gap:var(--space-3);padding:20px var(--space-4) var(--space-4)}
.solar-brand-logo{width:40px;height:40px;flex-shrink:0;filter:drop-shadow(0 4px 10px rgba(245,158,11,.35))}
.solar-brand-text{min-width:0}
.solar-brand-text strong{display:block;color:#fff;font-size:15.5px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.solar-brand-text small{color:#8AA0B4;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
/* ---------- Account dropdown ---------- */
.solar-account{position:relative}
.solar-avatar-btn{position:relative}
.solar-avatar-btn .presence{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:#22C55E;border:2px solid #fff}
html.solar-dark .solar-avatar-btn .presence{border-color:#0B1428}
.solar-account-drop{position:absolute;right:0;top:48px;width:264px;background:#fff;border:1px solid var(--solar-border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);z-index:1050;overflow:hidden;padding:6px}
.solar-account-head{display:flex;gap:11px;align-items:center;padding:12px;border-radius:var(--r-md);background:var(--solar-inset);margin-bottom:6px}
.solar-account-head .avatar{width:40px;height:40px;flex-shrink:0;border-radius:50%;background:linear-gradient(135deg,var(--solar-accent),var(--solar-accent-2));color:#0A1428;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px}
.solar-account-head .meta{min-width:0}
.solar-account-head .meta strong{display:block;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.solar-account-head .meta small{color:var(--solar-muted);font-size:11px;font-weight:600}
.solar-account-drop a{display:flex;gap:10px;align-items:center;padding:9px 12px;border-radius:var(--r-md);font-size:13.5px;font-weight:500;color:var(--solar-text);text-decoration:none}
.solar-account-drop a:hover{background:#F0FDF9;color:var(--solar-primary-dark)}
.solar-account-drop a.logout{color:#DC2626}
.solar-account-drop a.logout:hover{background:#FEF2F2;color:#991B1B}
.solar-account-drop hr{margin:6px 4px;border:0;border-top:1px solid var(--solar-border)}
html.solar-dark .solar-account-drop{background:#121E35}
html.solar-dark .solar-account-drop a{color:#E2E8F0}
html.solar-dark .solar-account-drop a:hover{background:#16233F;color:#5EEAD4}
html.solar-dark .solar-account-drop a.logout{color:#FCA5A5}
html.solar-dark .solar-account-drop hr{border-color:#26375A}
.solar-nav{padding:2px var(--space-3) var(--space-3);flex:1}
.solar-nav-group{margin-bottom:var(--space-1)}
.solar-nav-label{width:100%;background:transparent;border:0;color:#5EEAD4;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;display:flex;gap:8px;align-items:center;padding:12px var(--space-2) 5px;cursor:pointer;opacity:.85;border-radius:var(--r-md);transition:.15s}
.solar-nav-label:hover{opacity:1;background:rgba(255,255,255,.05)}
.solar-nav-label .lbl-ico{display:inline-flex;color:#8AA0B4;flex-shrink:0}
.solar-nav-label .chev{margin-left:auto}
.solar-nav-label .chev{display:inline-flex;color:#475569;margin-left:auto}
.solar-nav-label .chev svg{transition:transform .28s ease}
.solar-nav-group.collapsed .chev svg{transform:rotate(-90deg)}
/* Smooth accordion: grid-rows animation (best practice, no JS measuring) */
.solar-nav-items{display:grid;grid-template-rows:1fr;transition:grid-template-rows .28s ease}
.solar-nav-group.collapsed .solar-nav-items{grid-template-rows:0fr}
.solar-nav-slide{overflow:hidden;min-height:0}
/* Mini-rail link: one icon per parent group, desktop collapsed mode only */
.solar-nav-rail{display:none}
.solar-nav-rail[hidden]{display:none!important}
.solar-nav-link{display:flex;gap:10px;align-items:center;color:#C3D0E0;text-decoration:none;padding:9px 11px;border-radius:var(--r-md);font-size:13.5px;font-weight:500;margin:1px 0;border:1px solid transparent;transition:background .15s,color .15s}
.solar-nav-link .ico{display:inline-flex;opacity:.9}
.solar-nav-link .lbl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.solar-nav-link:hover{background:rgba(255,255,255,.07);color:#fff;text-decoration:none}
.solar-nav-link.active{background:linear-gradient(90deg,#0F766E,#10B981);color:#fff;font-weight:700;box-shadow:var(--shadow-glow-green);border-color:rgba(255,255,255,.12)}
.solar-side-foot{margin:var(--space-2) var(--space-3) var(--space-4);padding:13px 14px;border-radius:var(--r-md);background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.3);font-size:12.5px}
.solar-side-foot strong{display:block;color:#FEF3C7;font-size:13px;margin-bottom:2px}
.solar-side-foot span{display:block;margin-bottom:var(--space-2);color:#D6C79A}
.solar-side-foot a{color:#FBBF24;font-weight:700;text-decoration:none}
.solar-side-foot a:hover{color:#FDE68A}

/* Mini (collapsed) sidebar — desktop: rail of parent-group icons */
@media(min-width:993px){
  body.sidebar-mini .solar-sidebar{width:88px}
  body.sidebar-mini .solar-brand{justify-content:center;padding:20px var(--space-2) var(--space-4)}
  body.sidebar-mini .solar-brand-text{display:none}
  body.sidebar-mini .solar-nav{padding:2px var(--space-2) var(--space-3)}
  body.sidebar-mini .solar-nav-label,body.sidebar-mini .solar-nav-items{display:none}
  body.sidebar-mini .solar-nav-rail{display:flex;align-items:center;justify-content:center;height:44px;border-radius:var(--r-md);color:#C3D0E0;margin:3px 0;border:1px solid transparent}
  body.sidebar-mini .solar-nav-rail:hover{background:rgba(255,255,255,.07);color:#fff}
  body.sidebar-mini .solar-nav-rail.active{background:linear-gradient(90deg,var(--solar-teal),#10B981);color:#fff;box-shadow:var(--shadow-glow-green);border-color:rgba(255,255,255,.12)}
  body.sidebar-mini .solar-side-foot{display:none}
}

/* ---------- Topbar ---------- */
.solar-topbar{position:sticky;top:0;z-index:1030;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--solar-border);display:flex;align-items:center;gap:var(--space-3);padding:10px 22px;transition:box-shadow .2s ease}
.solar-topbar.scrolled{box-shadow:0 8px 24px -12px rgba(16,45,57,.25)}
.only-mobile{display:none!important}
.icon-btn{background:#fff;border:1px solid var(--solar-border);border-radius:var(--r-md);min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;text-decoration:none;color:var(--solar-text);box-shadow:var(--shadow-sm);transition:.15s}
.icon-btn:hover{border-color:var(--solar-primary);color:var(--solar-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.icon-btn .ico-moon{display:none}
html.solar-dark .icon-btn .ico-moon{display:inline-flex}
html.solar-dark .icon-btn .ico-sun{display:none}
.solar-topbar-search{flex:1;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--solar-border);border-radius:var(--r-md);padding:0 14px;max-width:540px;box-shadow:var(--shadow-inset);transition:.15s}
.solar-topbar-search:focus-within{border-color:var(--solar-primary);box-shadow:var(--ring)}
.solar-topbar-search .search-ico{display:inline-flex;color:var(--solar-muted)}
.solar-topbar-search input{border:0;background:transparent;flex:1;height:40px;outline:none;font-size:14px;color:var(--solar-text);min-width:0}
.solar-topbar-actions{margin-left:auto;display:flex;align-items:center;gap:9px}
.count-badge{position:absolute;top:-6px;right:-6px;background:#EF4444;color:#fff;font-size:10px;font-weight:700;border-radius:999px;padding:1px 6px;box-shadow:0 0 0 2px #fff}
.solar-avatar-btn{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--solar-primary),var(--solar-primary-dark));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;text-decoration:none;box-shadow:var(--shadow-glow-teal);transition:.15s}
.solar-avatar-btn:hover{transform:translateY(-1px);color:#fff}
.solar-notif{position:relative}
.solar-notif-drop{position:absolute;right:0;top:48px;width:350px;max-width:90vw;background:#fff;border:1px solid var(--solar-border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);z-index:1050;overflow:hidden}
.solar-notif-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--solar-border);background:var(--solar-inset)}
.link-btn{background:none;border:0;color:var(--solar-primary);cursor:pointer;font-size:12px;font-weight:700;padding:0}
.link-btn:hover{text-decoration:underline}
.solar-notif-list{max-height:360px;overflow:auto;padding:var(--space-2)}
.solar-notif-item{padding:10px 12px;border-radius:var(--r-md);border-bottom:1px solid #F1F5F9;font-size:13px}
.solar-notif-item:last-child{border-bottom:0}
.solar-notif-item.unread{background:#EFFDF9;border:1px solid #A7F3D0}
.solar-notif-item small{color:var(--solar-muted)}

/* ---------- Page head ---------- */
.solar-page-head{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start;margin-bottom:20px;flex-wrap:wrap}
.solar-page-title{font-size:23px;font-weight:800;color:var(--solar-heading);margin:0;display:flex;gap:10px;align-items:center}
.solar-title-ico{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;border-radius:var(--r-md);background:linear-gradient(135deg,var(--solar-teal),var(--solar-teal-dark));color:#fff;box-shadow:var(--shadow-glow-teal)}
.solar-crumb{color:var(--solar-muted);font-size:12.5px;margin-top:5px}
.solar-page-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}

/* ---------- Cards & grids ---------- */
.solar-card{background:var(--solar-card);border:1px solid var(--solar-border);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:20px;margin-bottom:18px}
.solar-card h2,.solar-card h3{color:var(--solar-heading);margin-top:0}
.solar-card h3{font-size:16px}
.solar-grid{display:grid;gap:var(--space-4)}
.solar-grid.kpi,.solar-grid.kpi4{margin-bottom:10px}
.solar-grid.kpi{grid-template-columns:repeat(6,1fr)}
.solar-grid.kpi4{grid-template-columns:repeat(4,1fr)}
.solar-grid.two{grid-template-columns:1fr 1fr}
.solar-grid.three{grid-template-columns:repeat(3,1fr)}
.kpi-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--solar-border);border-radius:var(--r-lg);padding:18px 16px 16px;box-shadow:var(--shadow-md);transition:transform .18s,box-shadow .18s}
.kpi-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--solar-primary),#10B981)}
.kpi-card.tone-teal::before{background:linear-gradient(90deg,#0F766E,#10B981)}
.kpi-card.tone-amber::before{background:linear-gradient(90deg,#F59E0B,#F97316)}
.kpi-card.tone-violet::before{background:linear-gradient(90deg,#8B5CF6,#6366F1)}
.kpi-card.tone-cyan::before{background:linear-gradient(90deg,#0EA5E9,#22D3EE)}
.kpi-card.tone-green::before{background:linear-gradient(90deg,#10B981,#059669)}
.kpi-card.tone-red::before{background:linear-gradient(90deg,#EF4444,#F43F5E)}
.kpi-card.tone-grey::before{background:linear-gradient(90deg,#64748B,#94A3B8)}
.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.kpi-card .k{font-size:11.5px;color:var(--solar-muted);font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.kpi-card .v{font-size:28px;font-weight:800;color:var(--solar-heading);margin-top:5px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kpi-card .s{font-size:12px;color:var(--solar-muted);margin-top:3px;line-height:1.45}
.chart-wrap.has-empty{display:flex;align-items:center;justify-content:center;min-height:210px}

/* ---------- Buttons (theme pair; Bootstrap utilities untouched) ---------- */
.btn-solar{background:linear-gradient(180deg,#14C38E,#0DA271);border:1px solid #0B8A5F;color:#fff;font-weight:700;box-shadow:var(--shadow-glow-green);transition:.15s}
.btn-solar:hover,.btn-solar:focus{background:linear-gradient(180deg,#0DA271,#0B8A5F);border-color:#0B8A5F;color:#fff;transform:translateY(-1px)}
.btn-solar:disabled{opacity:.65;transform:none}
.btn-teal{background:linear-gradient(180deg,#129188,#0B6B64);border:1px solid #0A5A55;color:#fff;font-weight:600;transition:.15s}
.btn-teal:hover,.btn-teal:focus{background:linear-gradient(180deg,#0B6B64,#0B4F4A);color:#fff;transform:translateY(-1px)}
.solar-badge{font-size:11px;font-weight:700;padding:5px 11px;border-radius:999px;letter-spacing:.02em;white-space:nowrap}

/* ---------- Tables ---------- */
.solar-table-wrap{overflow-x:auto;border:1px solid var(--solar-border);border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-md)}
table.solar-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:720px;margin:0}
table.solar-table th{background:var(--solar-heading);color:#D7EEE9;text-align:left;padding:12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border:0;white-space:nowrap}
table.solar-table td{padding:11px 12px;border-bottom:1px solid #F1F5F9;vertical-align:middle}
table.solar-table tbody tr{transition:background .12s}
table.solar-table tbody tr:hover{background:#F0FDF9}
table.solar-table tr:last-child td{border-bottom:0}
table.solar-table th.num,table.solar-table td.num{text-align:right}
.table-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;align-items:center}
.table-toolbar input,.table-toolbar select{height:42px;border:1px solid var(--solar-border);border-radius:var(--r-md);padding:0 13px;font-size:14px;background:#fff;color:var(--solar-text);transition:.15s}
.table-toolbar input:focus,.table-toolbar select:focus{border-color:var(--solar-primary);outline:none;box-shadow:var(--ring)}
.solar-pagination{display:flex;gap:var(--space-2);align-items:center;justify-content:flex-end;margin-top:12px;font-size:13px;color:var(--solar-muted)}

/* ---------- Forms ---------- */
.solar-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.solar-form-grid .full{grid-column:1/-1}
.solar-field label{display:block;font-size:12.5px;font-weight:700;margin-bottom:6px;color:var(--solar-heading)}
.solar-field input,.solar-field select,.solar-field textarea{width:100%;min-height:44px;border:1px solid var(--solar-border);border-radius:var(--r-md);padding:10px 13px;font-size:14px;background:#FBFDFE;color:var(--solar-text);transition:.15s}
.solar-field input:focus,.solar-field select:focus,.solar-field textarea:focus{border-color:var(--solar-primary);background:#fff;outline:none;box-shadow:var(--ring)}
.solar-field textarea{min-height:90px;resize:vertical}
.solar-field .err{color:#DC2626;font-size:12px;font-weight:600;margin-top:4px;display:none}
.solar-field.invalid input,.solar-field.invalid select{border-color:#DC2626}
.solar-field.invalid .err{display:block}
.solar-form-error{font-size:13px}
.form-section{border:1px solid var(--solar-border);border-radius:var(--r-lg);padding:18px;margin-bottom:16px;background:#fff;box-shadow:var(--shadow-md)}
.form-section>h3{margin:0 0 14px;font-size:14px;font-weight:800;color:var(--solar-heading);border-bottom:1px solid #F1F5F9;padding-bottom:10px;padding-left:12px;position:relative}
.form-section>h3::before{content:"";position:absolute;left:0;top:2px;bottom:10px;width:4px;border-radius:var(--r-sm);background:linear-gradient(180deg,var(--solar-accent),var(--solar-accent-2))}

/* ---------- Products ---------- */
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
.product-card{background:#fff;border:1px solid var(--solar-border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-md);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#99E4D4}
.product-card img{width:100%;height:170px;object-fit:cover;background:linear-gradient(135deg,#E6F6F1,#FEF3C7)}
.product-fallback{display:flex;align-items:center;justify-content:center;height:170px;background:linear-gradient(135deg,#E6F6F1,#FEF3C7);color:var(--solar-primary)}
.product-card .p-body{padding:15px;display:flex;flex-direction:column;gap:var(--space-2);flex:1}
.product-card .product-sub{font-size:12px}
.product-card h3{font-size:15px;margin:0;color:var(--solar-heading)}
.product-card .price{font-weight:800;color:var(--solar-heading);font-size:18px}
.product-card .stock{font-size:12px;font-weight:600}
.product-actions{display:flex;gap:var(--space-2);margin-top:auto}

/* ---------- Quote editor ---------- */
.quote-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-4);align-items:start}
.quote-preview{position:sticky;top:84px;background:linear-gradient(180deg,#0B3B38,#0E5A54)!important;border-color:#0B3B38!important;color:#E6FFFA}
.quote-preview h3{color:#5EEAD4!important}
.quote-preview .muted{color:#9FD8CE!important}
.sys-type-pills{display:flex;gap:var(--space-2);flex-wrap:wrap}
.sys-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:9px 14px;border:1px solid var(--solar-border);border-radius:999px;cursor:pointer;font-weight:600;font-size:13.5px;background:#fff;transition:.15s}
.sys-pill input{accent-color:var(--solar-primary);margin:0}
.sys-pill:has(input:checked){border-color:var(--solar-primary);background:#EFFDF9;box-shadow:var(--ring)}
.preview-total{font-size:26px;font-weight:800;color:var(--solar-heading);letter-spacing:-.02em}
/* Live quotation preview (renders on the dark preview card) */
.pv-client{font-size:17px;font-weight:800;color:#fff;letter-spacing:-.01em}
.pv-sub{font-size:12.5px;color:#9FD8CE;margin-top:3px}
.pv-chips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 0}
.pv-chip{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#E6FFFA;white-space:nowrap}
.pv-chip.sys{background:linear-gradient(90deg,#F59E0B,#F97316);border:0;color:#fff}
.pv-price{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-md);padding:14px;margin:14px 0 4px}
.pv-price .lbl{font-size:10.5px;color:#9FD8CE;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.pv-price .val{font-size:30px;font-weight:800;color:#fff;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.2}
.pv-tax{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:11.5px;color:#C9E8E2;margin-top:8px}
.pv-sec{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5EEAD4;margin:14px 0 8px}
.pv-sec em{font-style:normal;font-weight:600;color:#9FD8CE;text-transform:none;letter-spacing:0}
.pv-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pv-stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:10px 12px;min-width:0}
.pv-stat .t{font-size:10.5px;color:#9FD8CE;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-stat .n{font-size:15px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}
.pv-ico{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:rgba(245,158,11,.18);border:1px solid rgba(252,211,77,.45);color:#FCD34D}
.pv-scene{border-radius:var(--r-md);overflow:hidden;margin-top:12px;border:1px solid rgba(255,255,255,.14)}
.pv-scene svg{display:block;width:100%;height:auto}
.pv-cap{font-size:11px;color:#9FD8CE;margin:8px 0 0}

/* ---------- Support / replies / activity ---------- */
.solar-reply,.solar-activity{border-bottom:1px solid #F1F5F9;padding:10px 0}
.solar-reply:last-child,.solar-activity:last-child{border-bottom:0}

/* ---------- Modal ---------- */
.modal-content{border:1px solid var(--solar-border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg)}
.modal-header{border-bottom:1px solid var(--solar-border);padding:16px 20px}
.modal-title{font-weight:800;color:var(--solar-heading);font-size:17px}
.modal-body{padding:20px}
.modal-footer{border-top:1px solid var(--solar-border);padding:14px 20px}
.solar-modal-price{font-size:24px;font-weight:800;color:var(--solar-heading);margin:4px 0 8px}
.solar-specs{margin:12px 0 0;border:1px solid var(--solar-border);border-radius:var(--r-md);overflow:hidden}
.solar-specs div{display:grid;grid-template-columns:140px 1fr;gap:10px;padding:8px 12px;font-size:13px}
.solar-specs div:nth-child(odd){background:var(--solar-inset)}
.solar-specs dt{font-weight:700;color:var(--solar-heading)}
.solar-specs dd{margin:0}

/* ---------- Login ---------- */
.solar-login-wrap{min-height:100vh;display:flex;padding:24px;background:#0A1428 radial-gradient(900px 500px at 15% 10%,rgba(245,158,11,.14),transparent 60%),radial-gradient(1000px 600px at 90% 90%,rgba(20,184,166,.22),transparent 60%),linear-gradient(140deg,#0A1428 0%,#0B3B38 65%,#0F766E 130%)}
.solar-login-card{margin:auto;background:#fff;border-radius:var(--r-xl);box-shadow:var(--shadow-pop);width:min(1020px,96vw);display:grid;grid-template-columns:1.05fr 1fr;overflow:hidden}
.solar-login-side{position:relative;background:linear-gradient(165deg,#0A2E2B 0%,#0B4F4A 55%,#0F766E 100%);color:#fff;padding:44px 40px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.solar-login-side::after{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(245,158,11,.5),rgba(245,158,11,0) 65%)}
.solar-login-logo{width:52px;height:52px;margin-bottom:6px;position:relative;z-index:1}
.solar-login-side h2{font-size:30px;line-height:1.2;margin:14px 0 10px;position:relative;z-index:1;color:#fff}
.solar-login-side h2 em{font-style:normal;color:#FCD34D}
.solar-login-side p{color:#C9E8E2;font-size:14.5px;position:relative;z-index:1}
.solar-login-points{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:11px;position:relative;z-index:1}
.solar-login-points li{display:flex;gap:10px;align-items:center;font-size:13.5px;font-weight:600;color:#E6FFFA}
.solar-login-points .tick{width:24px;height:24px;flex-shrink:0;border-radius:50%;background:rgba(245,158,11,.2);border:1px solid rgba(252,211,77,.6);color:#FCD34D;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.solar-login-points .tick{display:inline-flex}
.solar-login-points .tick svg{width:13px;height:13px}
.solar-login-form{padding:44px 42px}
.solar-login-form h1{color:var(--solar-heading);font-size:24px;margin:0 0 6px}
.password-wrap{position:relative}
.password-wrap button{position:absolute;right:8px;top:8px;border:0;background:#F1F5F9;border-radius:var(--r-sm);padding:6px 10px;cursor:pointer;font-size:12px;font-weight:700;color:var(--solar-primary)}
.password-wrap button:hover{background:#E2E8F0}

/* ---------- States ---------- */
.solar-empty{text-align:center;padding:44px 20px;color:var(--solar-muted)}
.solar-empty-icon{font-size:42px;margin-bottom:8px;color:#CBD5E1}
.solar-empty h3{color:var(--solar-heading);font-size:17px;margin:0 0 6px}
.solar-empty p{margin:0 0 4px}
.solar-skel{background:linear-gradient(90deg,#EDF2F7,#E2E8F0,#EDF2F7);border-radius:var(--r-sm);min-height:18px;animation:pulse 1.2s infinite}
@keyframes pulse{50%{opacity:.6}}
.solar-toast-zone{position:fixed;right:16px;bottom:16px;z-index:2000;display:flex;flex-direction:column;gap:8px}
.solar-toast{background:#0F172A;color:#fff;padding:12px 16px;border-radius:var(--r-md);box-shadow:var(--shadow-lg);font-size:13.5px;max-width:340px;border:1px solid rgba(255,255,255,.12)}
.solar-toast.success{background:#065F46}
.solar-toast.error{background:#991B1B}
.muted{color:var(--solar-muted)}
.solar-nav-link[href*="/marketing/"]{background:linear-gradient(90deg,#B45309,#F59E0B);color:#fff;font-weight:700}
.solar-nav-link[href*="/marketing/"]:hover{color:#fff}

/* ---------- Dark mode ---------- */
html.solar-dark{color-scheme:dark;--solar-bg:#0B1220;--solar-card:#121E35;--solar-inset:#0B1428;--solar-text:#E2E8F0;--solar-heading:#F1F5F9;--solar-border:#26375A;--solar-muted:#93A3BC;--shadow-md:0 1px 2px rgba(0,0,0,.4),0 12px 28px -12px rgba(0,0,0,.5);--shadow-lg:0 2px 6px rgba(0,0,0,.45),0 24px 50px -16px rgba(0,0,0,.6)}
html.solar-dark body.solar-portal-body{background:var(--solar-bg) radial-gradient(1200px 400px at 80% -100px,rgba(20,184,166,.1),transparent 60%) fixed}
html.solar-dark .solar-topbar{background:rgba(14,24,44,.9)}
html.solar-dark .solar-topbar-search{background:#0B1428}
html.solar-dark .solar-topbar-search input{color:#E2E8F0}
html.solar-dark .solar-topbar-search .search-ico{color:#93A3BC}
html.solar-dark .icon-btn{background:#0B1428;color:#E2E8F0}
html.solar-dark .icon-btn:hover{color:#5EEAD4;border-color:#0F766E}
html.solar-dark .count-badge{box-shadow:0 0 0 2px #0B1428}
html.solar-dark .solar-card,html.solar-dark .kpi-card,html.solar-dark .product-card,html.solar-dark .form-section{background:var(--solar-card)}
html.solar-dark .kpi-card .k,html.solar-dark .kpi-card .s{color:#93A3BC}
html.solar-dark .muted,html.solar-dark .solar-crumb{color:#93A3BC}
html.solar-dark .solar-field label,html.solar-dark .form-section>h3{color:#F1F5F9}
html.solar-dark .solar-empty h3{color:#F1F5F9}
html.solar-dark .solar-empty-icon{color:#334155}
html.solar-dark table.solar-table a{color:#5EEAD4}
html.solar-dark .solar-table-wrap{background:var(--solar-card)}
html.solar-dark table.solar-table th{background:#0B1428;color:#9FD8CE}
html.solar-dark table.solar-table td{border-color:#1E2C4E}
html.solar-dark table.solar-table tbody tr:hover{background:#16233F}
html.solar-dark .solar-field input,html.solar-dark .solar-field select,html.solar-dark .solar-field textarea,html.solar-dark .table-toolbar input,html.solar-dark .table-toolbar select{background:#0B1428;border-color:#26375A;color:#E2E8F0}
html.solar-dark .solar-field input::placeholder,html.solar-dark .table-toolbar input::placeholder{color:#5B6B8C}
html.solar-dark .solar-footer{color:#8AA0B4}
html.solar-dark .solar-notif-drop{background:#121E35}
html.solar-dark .solar-notif-head{background:#0B1428}
html.solar-dark .solar-notif-item{border-color:#1E2C4E}
html.solar-dark .solar-notif-item.unread{background:#0B2E2B;border-color:#0F766E}
html.solar-dark .solar-skel{background:linear-gradient(90deg,#16233F,#26375A,#16233F)}
html.solar-dark .alert-danger{background:#3B0F14;border-color:#7F1D1D;color:#FECACA}
html.solar-dark .alert-info{background:#0C2A3A;border-color:#155E75;color:#A5F3FC}
html.solar-dark .alert-success{background:#052E22;border-color:#065F46;color:#A7F3D0}
html.solar-dark .alert-warning{background:#33240A;border-color:#92400E;color:#FDE68A}
html.solar-dark .btn-outline-secondary{color:#CBD5E1;border-color:#3B4F7E}
html.solar-dark .btn-outline-secondary:hover{background:#1E2C4E;color:#fff}
html.solar-dark .btn-outline-danger{color:#FCA5A5;border-color:#7F1D1D}
html.solar-dark .link-btn{color:#5EEAD4}
html.solar-dark .solar-login-card{background:#121E35}
html.solar-dark .solar-login-form h1{color:#F1F5F9}
html.solar-dark .password-wrap button{background:#1E2C4E;color:#5EEAD4}
html.solar-dark .sys-pill{background:#0B1428}
html.solar-dark .sys-pill:has(input:checked){background:#0B2E2B}
html.solar-dark .modal-content{background:#121E35}
html.solar-dark .modal-title{color:#F1F5F9}
html.solar-dark .btn-close{filter:invert(1)}
html.solar-dark .solar-specs div:nth-child(odd){background:#0B1428}
html.solar-dark .solar-specs dt{color:#F1F5F9}
html.solar-dark .solar-reply{border-color:#1E2C4E}
html.solar-dark .solar-activity{border-color:#1E2C4E}
html.solar-dark .product-card img,html.solar-dark .product-fallback{filter:saturate(.85)}
html.solar-dark .quote-preview{border-color:#0F766E!important}

/* ---------- Motion ---------- */
@media (prefers-reduced-motion: no-preference){
  body.solar-portal-body,.solar-card,.kpi-card,.product-card,.form-section,.solar-topbar,.solar-table-wrap,.solar-field input,.solar-field select,.solar-field textarea,.table-toolbar input,.table-toolbar select,.icon-btn,.solar-nav-link,.solar-nav-items{transition:background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease,transform .18s ease,grid-template-rows .28s ease}
}
@media (prefers-reduced-motion: reduce){
  .solar-splash img,.solar-splash .solar-splash-bar i{animation:none}
  .solar-skel{animation:none}
  .solar-nav-items{transition:none}
}

/* ---------- Responsive ---------- */
@media(max-width:1200px){
  .solar-grid.kpi{grid-template-columns:repeat(3,1fr)}
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .quote-layout{grid-template-columns:1fr}
  .quote-preview{position:static}
}
@media(max-width:992px){
  .solar-sidebar{position:fixed;left:0;top:0;transform:translateX(-105%);transition:transform .25s;width:272px!important}
  body.nav-open .solar-sidebar{transform:none}
  body.nav-open .solar-scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1035}
  body.sidebar-mini .solar-sidebar{width:272px!important}
  body.sidebar-mini .solar-brand-text,body.sidebar-mini .solar-nav-label,body.sidebar-mini .solar-side-foot{display:block}
  body.sidebar-mini .solar-nav-link .lbl{display:inline}
  body.sidebar-mini .solar-nav-link{justify-content:flex-start}
  .solar-grid.kpi4,.solar-grid.two,.solar-grid.three{grid-template-columns:1fr 1fr}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .solar-content{padding:var(--space-4)}
  .solar-login-wrap{padding:12px}
}
@media(max-width:640px){
  .solar-login-card{grid-template-columns:1fr}
  .solar-login-side{display:none}
  .solar-login-form{padding:30px 24px}
  .solar-grid.kpi,.solar-grid.kpi4,.solar-grid.two,.solar-grid.three,.solar-form-grid{grid-template-columns:1fr}
  .product-grid{grid-template-columns:1fr}
  .solar-topbar-search{display:none}
  .solar-content{padding:12px}
  .solar-side-foot{display:none}
  .solar-page-title{font-size:19px}
}
@media print{
  .solar-sidebar,.solar-topbar,.solar-footer,.solar-page-actions,.table-toolbar,.solar-pagination,.solar-toast-zone,.solar-splash,.cart-drawer,.cart-scrim{display:none!important}
  .solar-content{padding:0;max-width:none}
  .solar-card,.kpi-card,.product-card{box-shadow:none}
}

/* ============================================================
   v1.2.9 LAYER — catalogue chips, qty steppers, cart drawer
   ============================================================ */
.cat-chip{border:1px solid var(--solar-border);background:#fff;border-radius:999px;padding:7px 15px;font-size:12.5px;font-weight:600;color:var(--solar-text);cursor:pointer;transition:.15s}
.cat-chip:hover{border-color:var(--solar-primary);color:var(--solar-primary)}
.cat-chip.active{background:linear-gradient(90deg,var(--solar-teal),#10B981);border-color:transparent;color:#fff;box-shadow:var(--shadow-glow-green)}
.qty-step{display:inline-flex;align-items:center;border:1px solid var(--solar-border);border-radius:999px;overflow:hidden;background:#fff}
.qty-step button{width:30px;height:32px;border:0;background:transparent;font-weight:800;font-size:15px;color:var(--solar-primary);cursor:pointer;line-height:1}
.qty-step button:hover{background:#EFFDF9}
.qty-step span{min-width:26px;text-align:center;font-weight:700;font-size:13px}
.product-card .product-fallback{color:var(--solar-primary)}
.product-card .product-actions{flex-wrap:wrap}
/* Mini cart drawer */
.cart-scrim{position:fixed;inset:0;background:rgba(10,20,40,.5);z-index:1060}
.cart-scrim[hidden]{display:none}
.cart-drawer{position:fixed;top:0;right:0;height:100dvh;width:min(400px,94vw);background:#fff;border-left:1px solid var(--solar-border);z-index:1070;transform:translateX(105%);transition:transform .28s ease;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.cart-drawer.open{transform:none}
.cart-drawer-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--solar-border)}
.cart-drawer-head h3{margin:0;font-size:17px}
.cart-drawer-body{flex:1;overflow-y:auto;padding:6px 18px}
.cart-drawer-foot{padding:16px 18px;border-top:1px solid var(--solar-border);display:flex;flex-direction:column;gap:10px}
.cart-subtotal{display:flex;justify-content:space-between;align-items:center;font-size:15px}
.cart-subtotal strong{font-size:18px}
.cart-item{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;padding:12px 0;border-bottom:1px solid #F1F5F9;font-size:13.5px}
.cart-item:last-child{border-bottom:0}
.cart-prod{display:flex;gap:10px;align-items:center;min-width:0}
.cart-thumb{width:44px;height:44px;border-radius:10px;object-fit:cover;flex-shrink:0;background:linear-gradient(135deg,#E6F6F1,#FEF3C7)}
.cart-thumb-art{display:inline-flex;align-items:center;justify-content:center;color:var(--solar-primary)}
html.solar-dark .cat-chip{background:#0B1428}
html.solar-dark .qty-step{background:#0B1428}
html.solar-dark .cart-drawer{background:#121E35}
html.solar-dark .cart-item{border-color:#1E2C4E}

/* ============================================================
   v1.2.1 LAYER — dashboard hero, KPI icons, proper header
   ============================================================ */

/* Dashboard hero */
.dash-hero{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;background:linear-gradient(120deg,#0A1428 0%,#0B4F4A 70%,#0F766E 130%);border:1px solid #0B4F4A;color:#fff;border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:22px;margin-bottom:18px;position:relative;overflow:hidden}
.dash-hero::after{content:"";position:absolute;right:-60px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(245,158,11,.22),rgba(245,158,11,0) 68%)}
.dash-hero-id{display:flex;gap:14px;align-items:center;position:relative;z-index:1;min-width:0}
.dash-avatar{width:52px;height:52px;flex-shrink:0;border-radius:50%;background:linear-gradient(135deg,var(--solar-accent),var(--solar-accent-2));color:#0A1428;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;box-shadow:0 0 0 3px rgba(255,255,255,.2)}
.dash-hero .dash-date{display:block;color:#9FD8CE;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.dash-hero h2{margin:2px 0;font-size:21px;color:#fff}
.dash-hero p{margin:0;color:#C9E8E2;font-size:13.5px}
.dash-hero-actions{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1}
.btn-ghost-light{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.55);color:#fff;font-weight:700;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:.15s}
.btn-ghost-light:hover{background:rgba(255,255,255,.26);border-color:#fff;color:#fff;transform:translateY(-1px)}

/* KPI icon chips */
.kpi-top{display:flex;align-items:center;gap:10px}
.kpi-ico{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:var(--r-md);background:#EFFDF9;color:var(--solar-primary);border:1px solid #A7F3D0}
.kpi-card.tone-amber .kpi-ico{background:#FFFBEB;color:#B45309;border-color:#FDE68A}
.kpi-card.tone-violet .kpi-ico{background:#F5F3FF;color:#6D28D9;border-color:#DDD6FE}
.kpi-card.tone-cyan .kpi-ico{background:#F0F9FF;color:#0369A1;border-color:#BAE6FD}
.kpi-card.tone-green .kpi-ico{background:#EFFDF9;color:#047857;border-color:#A7F3D0}
.kpi-card.tone-red .kpi-ico{background:#FEF2F2;color:#B91C1C;border-color:#FECACA}
.kpi-card.tone-grey .kpi-ico{background:#F1F5F9;color:#475569;border-color:#E2E8F0}
.kpi-card .kpi-top .k{flex:1;min-width:0}
.dash-check{display:flex;gap:8px;align-items:baseline;margin:0 0 8px;font-size:13.5px}
.dash-check:last-child{margin-bottom:0}
.dash-check::before{content:"";width:8px;height:8px;flex-shrink:0;border-radius:50%;background:var(--solar-success);transform:translateY(-1px)}

/* Mobile expanding search */
@media(max-width:640px){
  .only-mobile{display:inline-flex!important}
  .solar-topbar{position:sticky}
  .solar-topbar.search-open .solar-topbar-search{display:flex;position:absolute;top:calc(100% + 8px);left:12px;right:12px;max-width:none;box-shadow:var(--shadow-lg);z-index:1040}
}
/* Dark-mode KPI icon chips */
html.solar-dark .kpi-ico{background:#0B2E2B;color:#5EEAD4;border-color:#0F766E}
html.solar-dark .kpi-card.tone-amber .kpi-ico{background:#33240A;color:#FCD34D;border-color:#92400E}
html.solar-dark .kpi-card.tone-violet .kpi-ico{background:#221C4E;color:#C4B5FD;border-color:#5B21B6}
html.solar-dark .kpi-card.tone-cyan .kpi-ico{background:#0C2A3A;color:#7DD3FC;border-color:#155E75}
html.solar-dark .kpi-card.tone-green .kpi-ico{background:#052E22;color:#6EE7B7;border-color:#065F46}
html.solar-dark .kpi-card.tone-red .kpi-ico{background:#3B0F14;color:#FCA5A5;border-color:#7F1D1D}
html.solar-dark .kpi-card.tone-grey .kpi-ico{background:#1E2C4E;color:#CBD5E1;border-color:#334155}

/* ============================================================
   v1.1.0 PREMIUM LAYER — primary button, table crowns, sidebar
   accent, splash, premium empty states, 404, inline-style
   replacement utilities (0 inline styles theme-wide)
   ============================================================ */

/* Primary button: 135deg teal gradient, md radius, lift on hover */
.btn-primary,.btn.btn-primary{background:linear-gradient(135deg,var(--solar-teal),var(--solar-teal-dark));border:1px solid var(--solar-teal-dark);border-radius:var(--r-md);font-weight:700;box-shadow:var(--shadow-glow-teal);transition:.15s}
.btn-primary:hover,.btn-primary:focus,.btn.btn-primary:hover,.btn.btn-primary:focus{background:linear-gradient(135deg,#129188,#0B6B64);border-color:#0A5A55;color:#fff;transform:translateY(-1px)}

/* Sidebar radial accent + active pill */
.solar-sidebar{background:linear-gradient(180deg,var(--solar-navy) 0%,var(--solar-sidebar-2) 130%),radial-gradient(420px 200px at 50% -60px,rgba(20,184,166,.16),transparent 70%)}
.solar-nav-link.active{background:linear-gradient(90deg,var(--solar-teal),#10B981)}

/* Table header crown: navy with rounded top corners */
.solar-table-wrap{overflow:hidden}
.solar-table-wrap table.solar-table{margin-bottom:0}
table.solar-table thead th:first-child{border-top-left-radius:calc(var(--r-lg) - 1px)}
table.solar-table thead th:last-child{border-top-right-radius:calc(var(--r-lg) - 1px)}

/* Loading splash */
.solar-splash{position:fixed;inset:0;z-index:3000;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;background:linear-gradient(140deg,#0A1428 0%,#0B3B38 65%,#0F766E 130%);opacity:1;transition:opacity .6s ease}
.solar-splash.done{opacity:0;pointer-events:none}
.solar-splash img{width:76px;height:76px;animation:solar-pulse 1.4s ease-in-out infinite}
.solar-splash .solar-splash-bar{width:180px;height:4px;border-radius:999px;background:rgba(255,255,255,.15);overflow:hidden}
.solar-splash .solar-splash-bar i{display:block;height:100%;width:40%;border-radius:999px;background:linear-gradient(90deg,var(--solar-accent),var(--solar-accent-2));animation:solar-slide 1.1s ease-in-out infinite}
.solar-splash span{color:#9FD8CE;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
@keyframes solar-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.85}}
@keyframes solar-slide{0%{transform:translateX(-100%)}100%{transform:translateX(450%)}}

/* Premium empty state: dashed dropzone-style card */
.solar-empty{border:2px dashed var(--solar-border);border-radius:var(--r-lg);background:var(--solar-inset)}
.solar-empty-premium{border:2px dashed #99E4D4;background:linear-gradient(180deg,#F0FDF9,transparent)}
html.solar-dark .solar-empty-premium{border-color:#0F766E;background:linear-gradient(180deg,#0B2E2B,transparent)}
.solar-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--r-lg);background:linear-gradient(135deg,var(--solar-teal),var(--solar-teal-dark));color:#fff;box-shadow:var(--shadow-glow-teal);margin-bottom:12px}
.solar-empty-icon svg{width:26px;height:26px}
.solar-empty h3{font-size:17px}
.solar-empty .btn{margin-top:12px}
/* Compact empty state for dashboard panels */
.solar-empty-compact{display:flex;gap:12px;align-items:center;text-align:left;padding:14px 16px;flex-wrap:wrap}
.solar-empty-compact .solar-empty-icon{width:40px;height:40px;margin:0;flex-shrink:0;border-radius:var(--r-md)}
.solar-empty-compact .solar-empty-icon svg{width:20px;height:20px}
.solar-empty-compact h3{font-size:14px;margin:0 0 2px}
.solar-empty-compact p{margin:0;font-size:12.5px}
.solar-empty-compact .btn{margin:0 0 0 auto;flex-shrink:0}
/* Panel header row: title left, action link right */
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.panel-head h3{margin:0;font-size:16px}
.panel-link{font-size:12.5px;font-weight:700;white-space:nowrap}
/* Certificate hero row */
.cert-hero{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;border:1px solid #FDE68A;border-radius:var(--r-md);background:linear-gradient(180deg,#FFFBEB,transparent)}
.cert-hero strong{font-size:16px}

/* 404 */
.solar-404{text-align:center;max-width:640px;margin:48px auto;padding:48px 32px}
.solar-404-mark{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:var(--r-xl);background:linear-gradient(135deg,var(--solar-accent),var(--solar-accent-2));color:#fff;box-shadow:0 12px 28px -8px rgba(245,158,11,.6);margin-bottom:8px}
.solar-404-code{font-size:72px;font-weight:800;letter-spacing:-.04em;color:var(--solar-heading);line-height:1}
.solar-404 .solar-page-title{justify-content:center}
.solar-404-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:20px}

/* Login hero (photo-ready: swap login-hero.svg for login-hero.webp) */
.solar-login-media{position:relative;z-index:1;margin-top:24px;border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 44px -16px rgba(0,0,0,.5)}
.solar-login-media img{display:block;width:100%;height:190px;object-fit:cover}
.solar-login-glass{position:absolute;left:12px;right:12px;bottom:12px;display:flex;gap:8px}
.solar-login-glass div{flex:1;border-radius:var(--r-md);padding:10px 12px;background:rgba(10,20,40,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18);color:#fff}
.solar-login-glass strong{display:block;font-size:16px}
.solar-login-glass small{color:#C9E8E2;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.solar-login-points .tick{display:inline-flex}
.solar-login-points .tick svg{width:13px;height:13px}

/* Inline-style replacement utilities */
.u-mb-2{margin-bottom:8px}.u-mb-3{margin-bottom:12px}.u-mt-2{margin-top:8px}.u-mt-3{margin-top:12px}.u-mt-4{margin-top:16px}.u-mt-5{margin-top:18px}
.f-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.center-card{max-width:720px;margin:40px auto}
.lead-list{line-height:2}
.nowrap{white-space:nowrap}
.fw-700{font-weight:700}
.text-11{font-size:11px}.text-12{font-size:12px}.text-13{font-size:13px}.text-15{font-size:15px}
.section-h{font-size:15px;color:var(--solar-heading);margin:22px 0 10px}
.section-h:first-of-type{margin-top:2px}
.toolbar-search-grow{flex:1;min-width:200px}
.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.qty-input{width:84px;height:40px;border:1px solid var(--solar-border);border-radius:11px;padding:0 10px;font-size:14px;font-weight:600;color:var(--solar-text);background:#fff}
.qty-input:focus{border-color:var(--solar-primary);outline:none;box-shadow:var(--ring)}
html.solar-dark .qty-input{background:#0B1428}
/* Bootstrap layers must sit above the mini-cart drawer (1070) */
:root{--bs-modal-zindex:1080;--bs-backdrop-zindex:1075}
.w-70{width:70px}.w-90{width:90px}
.maxw-200{max-width:200px}
.table-auto{min-width:0}
.cart-total{text-align:right;font-weight:800}
.stock-strong{font-weight:600}
.modal-img{width:100%;border-radius:var(--r-md);margin-bottom:12px}
.plan-pre{white-space:pre-wrap;font-size:12px;font-family:inherit;margin:0;color:var(--solar-muted)}
.result-list{line-height:1.9;font-size:13px;margin-bottom:0}
.chart-wrap{position:relative;max-width:420px;margin:0 auto}
.result-note{font-size:12px}
.quote-preview .solar-empty{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.05)}
.quote-preview .solar-empty h3{color:#fff}
.remember-row{display:flex;gap:8px;align-items:center;font-size:13px;margin-bottom:14px}
.login-btn{height:48px;font-size:15px}
.fine-print{margin-top:14px;font-size:12.5px}
.skel-lg{height:52px}
.modal-field{margin-bottom:12px}
