:root{
  --navy:#071a3d;--navy-2:#0b2d66;--blue:#1567e9;--blue-2:#3a8dff;--cyan:#18b6d9;--orange:#ff8a1f;--orange-2:#ffb44c;
  --green:#15a36d;--red:#df3b3b;--amber:#d89018;--purple:#7558f4;--ink:#14213d;--muted:#68758d;--soft:#8e99ab;
  --line:#e7edf5;--line-2:#dbe4ef;--bg:#f4f7fb;--panel:#ffffff;--panel-2:#f9fbfd;--sidebar-text:#d9e6fb;
  --shadow-sm:0 6px 18px rgba(24,49,83,.07);--shadow:0 14px 36px rgba(20,42,78,.10);--shadow-lg:0 30px 70px rgba(13,34,70,.18);
  --radius:18px;--radius-lg:26px;--transition:.22s ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:radial-gradient(circle at 100% 0,#eef6ff 0,transparent 31%),var(--bg);min-height:100vh;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{color:inherit}
::selection{background:#cfe2ff;color:#08285f}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c7d2e0;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.app-shell{min-height:100vh}.mobile-backdrop{display:none}

/* Sidebar */
.sidebar{position:fixed;inset:0 auto 0 0;width:286px;background:linear-gradient(180deg,#061633 0%,#082653 48%,#0a3470 100%);color:#fff;padding:16px 14px 14px;z-index:40;display:flex;flex-direction:column;box-shadow:18px 0 45px rgba(5,24,59,.16);overflow:hidden}
.sidebar:after{content:"";position:absolute;inset:auto -130px -150px auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(25,153,255,.24),rgba(25,153,255,0) 68%);pointer-events:none}
.sidebar-glow{position:absolute;left:-80px;top:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,152,53,.20),transparent 65%);pointer-events:none}
.brand{display:flex;align-items:center;gap:12px;padding:4px 5px 16px;position:relative;z-index:2}
.brand-mark{width:52px;height:52px;border-radius:16px;background:linear-gradient(145deg,#fff,#dcecff);display:grid;place-items:center;color:#0a2f67;font-weight:950;letter-spacing:-1px;box-shadow:0 12px 28px rgba(0,0,0,.25),inset 0 1px 0 #fff;position:relative;overflow:hidden;flex:0 0 auto}
.brand-mark:before{content:"";position:absolute;inset:auto -14px -18px auto;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#ff9b22,#ffc468)}
.brand-mark span{position:relative;z-index:2;font-size:14px}.brand-mark i{position:absolute;right:3px;bottom:1px;font-size:11px;z-index:2;font-style:normal;color:#fff}
.brand-copy strong{display:block;font-size:14px;letter-spacing:.11em}.brand-copy small{display:block;color:#a9c2e9;font-size:11px;margin-top:3px;letter-spacing:.03em}.sidebar-close{display:none;margin-left:auto;border:0;background:rgba(255,255,255,.09);color:#fff;width:34px;height:34px;border-radius:11px;font-size:20px}
.workspace-chip{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.12);padding:11px 12px;border-radius:14px;margin:0 3px 10px;position:relative;z-index:2;backdrop-filter:blur(12px)}
.workspace-dot{width:10px;height:10px;border-radius:50%;background:#31d690;box-shadow:0 0 0 5px rgba(49,214,144,.12)}.workspace-chip strong{font-size:12px;display:block}.workspace-chip small{font-size:10px;color:#a9c2e9;display:block;margin-top:2px}
.sidebar nav{padding:4px 2px 10px;overflow-y:auto;overflow-x:hidden;position:relative;z-index:2;flex:1}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18)}
.nav-section{padding:13px 11px 5px;text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:.16em;color:#6f91c1}.nav-link{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:12px;color:var(--sidebar-text);margin:2px 0;font-size:13px;font-weight:650;position:relative;transition:var(--transition)}
.nav-link:hover{background:rgba(255,255,255,.09);color:#fff;transform:translateX(2px)}.nav-link.active{background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.08));color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.10),0 7px 20px rgba(0,0,0,.08)}
.nav-ico{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.08);font-size:13px;font-weight:900;transition:var(--transition);flex:0 0 auto}.nav-link.active .nav-ico{background:linear-gradient(135deg,#ff9b28,#ffb94f);color:#fff;box-shadow:0 7px 18px rgba(255,143,26,.24)}.nav-current{margin-left:auto;width:7px;height:7px;border-radius:50%;background:#ffc168;box-shadow:0 0 0 5px rgba(255,193,104,.10)}
.sidebar-foot{position:relative;z-index:2;margin-top:auto;padding:10px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.10);border-radius:15px;display:flex;align-items:center;gap:10px}.mini-avatar{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#24a2ff,#7267f3);display:grid;place-items:center;font-size:11px;font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.16)}.sidebar-user{min-width:0;flex:1}.sidebar-user small,.sidebar-user span{display:block;font-size:9px;color:#9eb9df}.sidebar-user strong{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:1px 0}.sidebar-logout{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#bfd1ed}

/* Main/topbar */
.main{margin-left:286px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:82px;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(221,230,240,.88);display:flex;align-items:center;padding:0 28px;gap:16px;position:sticky;top:0;z-index:25;box-shadow:0 5px 22px rgba(21,44,78,.035)}
.icon-btn{display:none;border:0;background:#eef4fb;border-radius:11px;width:40px;height:40px;place-items:center;cursor:pointer}.page-head{flex:1;min-width:0}.page-kicker{text-transform:uppercase;letter-spacing:.11em;font-size:9px;font-weight:850;color:#8391a7;margin-bottom:3px}.page-head h1{margin:0;font-size:21px;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{display:flex;align-items:center;gap:9px}.command-search{height:40px;min-width:210px;padding:0 10px 0 12px;background:#f5f8fc;border:1px solid var(--line);border-radius:12px;color:#58677e;font-size:12px;display:flex;align-items:center;gap:8px;transition:var(--transition)}.command-search:hover{border-color:#cbd9ea;background:#fff;box-shadow:var(--shadow-sm)}.command-search span{font-size:17px}.command-search b{font-weight:650;flex:1}.command-search kbd{font-family:inherit;font-size:10px;color:#8692a5;background:#fff;border:1px solid #dce4ef;border-bottom-width:2px;border-radius:6px;padding:2px 6px}
.top-create{height:40px;padding:0 13px;border-radius:12px;background:linear-gradient(135deg,#1769eb,#1054c9);color:#fff;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800;box-shadow:0 8px 20px rgba(21,103,233,.20)}.top-create:hover{transform:translateY(-1px);box-shadow:0 11px 24px rgba(21,103,233,.25)}
.theme-toggle{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:15px}.profile-wrap{display:flex;align-items:center;gap:8px;padding-left:7px;border-left:1px solid var(--line)}.avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#0f69ea,#6c5cf3);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;box-shadow:0 8px 17px rgba(67,86,191,.20)}.profile-copy{line-height:1.05}.profile-copy strong{display:block;font-size:11px}.profile-copy small{display:block;font-size:9px;color:#8b96a7;margin-top:4px}.logout{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;color:#8995a8;font-size:12px}.logout:hover{background:#fff0ef;color:#c1322d}
.content{padding:26px 28px 34px;max-width:1700px;width:100%;margin:0 auto;flex:1}.footer{padding:20px 28px;color:#8b96a7;font-size:11px;display:flex;justify-content:space-between;border-top:1px solid rgba(226,233,242,.75)}.footer-secure{color:#5a886f}

/* Layout primitives */
.grid{display:grid;gap:16px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{background:linear-gradient(180deg,#fff,#fdfefe);border:1px solid rgba(228,235,244,.92);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px;position:relative;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.card:hover{border-color:#dce6f1}.card h2,.card h3{margin:0 0 14px;letter-spacing:-.02em}.card h2{font-size:18px}.card h3{font-size:15px}.card p{line-height:1.55}
.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 12px}.section-title h2{margin:0;font-size:18px;letter-spacing:-.03em}.section-title a:not(.btn){color:var(--blue);font-size:12px;font-weight:750}

/* Hero */
.hero{background:linear-gradient(125deg,#061a3c 0%,#0a3a82 48%,#0f73ea 100%);color:#fff;border-radius:var(--radius-lg);padding:27px 29px;position:relative;overflow:hidden;box-shadow:0 22px 50px rgba(13,66,143,.20);isolation:isolate}.hero:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;right:-140px;top:-220px;background:radial-gradient(circle,rgba(255,255,255,.23),rgba(255,255,255,0) 66%);z-index:-1}.hero:after{content:"";position:absolute;right:44px;bottom:-56px;width:190px;height:190px;border-radius:42% 58% 62% 38%;background:linear-gradient(135deg,rgba(255,181,76,.22),rgba(255,255,255,.02));transform:rotate(28deg);z-index:-1}.hero h2{font-size:28px;line-height:1.12;margin:0 0 8px;letter-spacing:-.04em}.hero p{margin:0;color:#d7e7ff;font-size:13px;max-width:760px;line-height:1.6}
.hero .brand-mark{box-shadow:none}

/* Metrics */
.metric-card{padding:17px 17px 16px;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-sm);border:1px solid #e8eef6;position:relative;overflow:hidden;min-height:145px;transition:transform var(--transition),box-shadow var(--transition)}.metric-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.metric-card:after{content:"";position:absolute;right:-34px;top:-48px;width:118px;height:118px;border-radius:50%;background:var(--metric-soft,#eaf3ff);opacity:.82}.metric-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--metric,#1567e9)}.metric-top{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.metric-icon{width:35px;height:35px;border-radius:11px;background:var(--metric-soft,#eaf3ff);color:var(--metric,#1567e9);display:grid;place-items:center;font-weight:950;font-size:14px}.metric-spark{display:flex;align-items:flex-end;gap:2px;height:24px;margin-right:2px;opacity:.6}.metric-spark i{display:block;width:3px;border-radius:99px;background:var(--metric,#1567e9)}.metric-spark i:nth-child(1){height:8px}.metric-spark i:nth-child(2){height:15px}.metric-spark i:nth-child(3){height:11px}.metric-spark i:nth-child(4){height:20px}.metric-label{font-size:11px;color:#78859a;font-weight:750;margin-top:12px;position:relative;z-index:2}.metric-value{font-size:28px;font-weight:900;margin:3px 0 3px;letter-spacing:-.05em;position:relative;z-index:2;color:#16233f}.metric-sub{font-size:10px;color:#8a96a9;position:relative;z-index:2;display:flex;align-items:center;gap:6px}.metric-pulse{width:6px;height:6px;border-radius:50%;background:var(--metric,#1567e9);box-shadow:0 0 0 4px var(--metric-soft,#eaf3ff)}
.tone-blue{--metric:#1567e9;--metric-soft:#e9f2ff}.tone-orange{--metric:#f18b27;--metric-soft:#fff1df}.tone-green{--metric:#15a36d;--metric-soft:#e5f8f0}.tone-red{--metric:#dd3f43;--metric-soft:#fdebed}.tone-purple{--metric:#7058ef;--metric-soft:#eeeaff}

/* Dashboard advanced */
.dashboard-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px;margin-top:16px}.insight-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:19px;box-shadow:var(--shadow-sm)}.insight-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:17px}.insight-head h3{margin:0;font-size:15px}.insight-head p{margin:4px 0 0;font-size:10px;color:#8793a6}.stage-list{display:grid;gap:9px}.stage-row{display:grid;grid-template-columns:minmax(125px,1fr) 2.5fr 44px;align-items:center;gap:10px}.stage-name{font-size:10px;color:#59677e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-track{height:8px;background:#eef3f8;border-radius:99px;overflow:hidden}.stage-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#1b6dea,#41a0ff);min-width:3px}.stage-count{font-size:10px;font-weight:850;text-align:right;color:#53617a}.health-wrap{display:flex;align-items:center;gap:20px;min-height:160px}.health-ring{width:142px;height:142px;border-radius:50%;display:grid;place-items:center;position:relative;flex:0 0 auto;background:conic-gradient(#17a36d var(--health-good,0%),#ef9b33 0 var(--health-warn,0%),#df4747 0 var(--health-end,0%),#edf2f7 0)}.health-ring:before{content:"";position:absolute;inset:15px;background:#fff;border-radius:50%;box-shadow:inset 0 0 0 1px #edf1f6}.health-center{position:relative;z-index:2;text-align:center}.health-center strong{display:block;font-size:23px;letter-spacing:-.05em}.health-center small{font-size:9px;color:#8c97a8}.health-legend{display:grid;gap:10px;flex:1}.legend-row{display:flex;align-items:center;justify-content:space-between;font-size:10px}.legend-label{display:flex;align-items:center;gap:7px;color:#637087}.legend-dot{width:8px;height:8px;border-radius:3px}.legend-row strong{font-size:11px}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.quick-action{padding:13px 12px;border:1px solid #e5ebf3;border-radius:14px;background:linear-gradient(180deg,#fff,#fafcfe);display:flex;align-items:center;gap:9px;transition:var(--transition);font-size:10px;font-weight:800;color:#526078}.quick-action:hover{border-color:#cfdceb;transform:translateY(-2px);box-shadow:var(--shadow-sm);color:#1f4e94}.quick-action-icon{width:31px;height:31px;border-radius:10px;background:#eaf3ff;color:#1567e9;display:grid;place-items:center;font-size:14px;flex:0 0 auto}

/* Buttons/forms */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:11px;padding:9px 13px;font-weight:800;font-size:11px;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),background var(--transition),border-color var(--transition)}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,#1769e8,#1055c9);color:#fff;box-shadow:0 7px 16px rgba(21,103,233,.15)}.btn-secondary{background:#f2f6fb;color:#2b4d78;border-color:#e4ebf4}.btn-secondary:hover{background:#eaf2fb}.btn-orange{background:linear-gradient(135deg,#ff8c20,#f47312);color:#fff;box-shadow:0 7px 16px rgba(242,116,18,.15)}.btn-danger{background:#fff0ef;color:#b72f2c;border-color:#ffdedd}.btn-sm{padding:6px 9px;font-size:10px;border-radius:9px}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.search{min-width:240px;flex:1}
.form-control,.form-select,textarea{width:100%;padding:10px 11px;border:1px solid #dce5f0;border-radius:10px;background:#fff;color:#17233b;outline:none;font-size:12px;transition:var(--transition);box-shadow:inset 0 1px 1px rgba(35,52,77,.02)}.form-control:hover,.form-select:hover,textarea:hover{border-color:#cbd8e7}.form-control:focus,.form-select:focus,textarea:focus{border-color:#77a9f6;box-shadow:0 0 0 4px rgba(32,111,235,.09)}.form-control::placeholder,textarea::placeholder{color:#a5afbe}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-group label{display:block;font-size:10px;font-weight:850;color:#526078;margin:0 0 6px;text-transform:uppercase;letter-spacing:.045em}.form-group.full{grid-column:1/-1}

/* Tables */
.table-wrap{overflow:auto;border-radius:14px;border:1px solid #e7edf4;background:#fff}.table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;min-width:850px}.table th{background:#f7f9fc;color:#748196;font-size:9px;text-transform:uppercase;letter-spacing:.07em;padding:11px 12px;text-align:left;border-bottom:1px solid #e7edf4;font-weight:900;position:sticky;top:0;z-index:1}.table td{padding:12px;border-bottom:1px solid #edf1f6;font-size:11px;vertical-align:middle;color:#3f4c62}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background var(--transition)}.table tbody tr:hover td{background:#fafdff}.table strong{color:#1c2b45}.table a[style*="font-weight:800"]{color:#1567e9!important}

/* Badges */
.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.85}.badge-primary{background:#eaf2ff;color:#155cc9}.badge-info{background:#e8f7fb;color:#0d8099}.badge-warning{background:#fff3dd;color:#a06b10}.badge-danger{background:#fdeceb;color:#bd3734}.badge-success{background:#e7f7ef;color:#0e8154}.badge-muted{background:#eef2f6;color:#6d7888}
.alert{padding:11px 13px;border-radius:12px;margin-bottom:15px;transition:.4s;display:flex;align-items:center;gap:9px;font-size:11px;border:1px solid transparent;box-shadow:var(--shadow-sm)}.alert-dot{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px currentColor;opacity:.16}.alert-success{background:#ecfaf2;color:#0f7c50;border-color:#d8f1e4}.alert-danger{background:#fff0ef;color:#b93632;border-color:#fbdad8}.alert-warning{background:#fff7e9;color:#986b17;border-color:#faeccf}.alert.fade{opacity:0;transform:translateY(-6px)}

/* Empty state */
.empty-state{text-align:center;background:linear-gradient(180deg,#fff,#fbfdff);border:1px dashed #cad7e7;padding:48px 20px;border-radius:20px;box-shadow:var(--shadow-sm)}.empty-orbit{width:76px;height:76px;border:1px dashed #c8d8ec;border-radius:50%;margin:0 auto 13px;display:grid;place-items:center;animation:orbit 9s linear infinite}.empty-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#fff0d9,#ffd89b);display:grid;place-items:center;font-size:22px;box-shadow:0 10px 22px rgba(236,152,48,.18);animation:orbitReverse 9s linear infinite}.empty-state h3{margin:0 0 6px;font-size:16px}.empty-state p{color:var(--muted);margin:0 auto 16px;font-size:11px;max-width:520px;line-height:1.6}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes orbitReverse{to{transform:rotate(-360deg)}}

/* Roadmap */
.roadmap-wrap{overflow:auto;padding:11px 4px 3px}.roadmap{display:flex;min-width:1160px;align-items:flex-start;position:relative;padding:7px 4px 18px}.roadmap:before{content:"";position:absolute;top:28px;left:58px;right:58px;height:4px;background:linear-gradient(90deg,#dce5ef,#e9eff5);border-radius:99px}.road-stop{position:relative;z-index:2;flex:1;text-align:center}.road-node{width:43px;height:43px;border-radius:14px;margin:auto;display:grid;place-items:center;font-weight:950;border:4px solid #fff;box-shadow:0 6px 16px rgba(31,45,61,.12);background:#e3eaf2;color:#6c7889;transform:rotate(45deg);transition:var(--transition)}.road-node span{transform:rotate(-45deg);font-size:10px}.road-label{margin:11px auto 0;max-width:102px;display:flex;flex-direction:column;gap:2px}.road-label b{font-size:8px;color:#a0aaba;letter-spacing:.08em}.road-label span{font-size:9px;line-height:1.25;color:#69768a;font-weight:720}.road-stop.done .road-node{background:linear-gradient(135deg,#1db87c,#119c68);color:#fff}.road-stop.current .road-node{background:linear-gradient(135deg,#ff9c2a,#ff7c17);color:#fff;box-shadow:0 0 0 7px rgba(255,140,31,.12),0 7px 18px rgba(220,104,16,.20);transform:rotate(45deg) scale(1.08)}.road-stop.problem .road-node{background:linear-gradient(135deg,#ea4b4b,#c93030);color:#fff;box-shadow:0 0 0 7px rgba(217,45,32,.10)}.road-stop.current .road-label span,.road-stop.problem .road-label span{font-weight:900;color:#24324a}

/* Details */
.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.detail{background:linear-gradient(180deg,#f9fbfd,#f5f8fb);border:1px solid #ecf1f6;border-radius:13px;padding:11px 12px}.detail small{display:block;color:#8793a6;font-size:9px;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.detail strong{font-size:11px;color:#25344f;line-height:1.35;display:block}

/* Login */
.login-page{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;background:#fff}.login-art{background:linear-gradient(145deg,#061731,#092b61 55%,#0d65d7);color:#fff;padding:56px 62px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;isolation:isolate}.login-art:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-250px;top:-210px;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 67%);z-index:-1}.login-art:after{content:"";position:absolute;left:-120px;bottom:-150px;width:360px;height:360px;border-radius:45% 55% 62% 38%;background:linear-gradient(135deg,rgba(255,161,48,.24),rgba(255,255,255,.02));transform:rotate(24deg);z-index:-1}.login-art h1{font-size:47px;line-height:1.03;margin:0;max-width:650px;letter-spacing:-.055em}.login-art p{max-width:580px;color:#d3e5ff;font-size:14px;line-height:1.7}.login-art small{color:#abc4e9;font-size:10px;letter-spacing:.04em}.login-panel{display:grid;place-items:center;padding:35px;background:radial-gradient(circle at 90% 10%,#eef6ff,transparent 35%),#fff}.login-box{width:min(420px,100%);background:#fff;border:1px solid #edf1f6;border-radius:25px;padding:28px;box-shadow:0 28px 70px rgba(29,50,87,.10)}.login-logo{display:flex;gap:11px;align-items:center;margin-bottom:27px}.login-logo strong{font-size:13px;letter-spacing:.08em}.login-box h2{font-size:27px;letter-spacing:-.04em;margin:0 0 6px}.login-box>p{color:var(--muted);margin:0 0 22px;font-size:11px}.login-box .form-group{margin-bottom:13px}.login-box .btn{width:100%;padding:11px}.login-note{margin-top:17px;font-size:10px;line-height:1.7;color:#8b96a8;text-align:center}.login-note a{color:#236edb;font-weight:750}

/* Reveal */
.reveal{opacity:0;transform:translateY(8px)}.reveal.reveal-in{opacity:1;transform:none;transition:opacity .35s ease,transform .35s ease}
.print-only{display:none}

/* Dark appearance */
body[data-theme="dark"]{--ink:#e7edf7;--muted:#9daac0;--soft:#7f8ca1;--line:#26364d;--line-2:#314157;--bg:#0c1524;--panel:#111d2e;--panel-2:#152238;background:radial-gradient(circle at 100% 0,#10294c 0,transparent 28%),#0c1524;color:#e7edf7}
body[data-theme="dark"] .topbar{background:rgba(13,24,40,.88);border-bottom-color:#253349}body[data-theme="dark"] .card,body[data-theme="dark"] .metric-card,body[data-theme="dark"] .insight-card,body[data-theme="dark"] .empty-state{background:linear-gradient(180deg,#121f31,#101b2c);border-color:#26364d}body[data-theme="dark"] .metric-value,body[data-theme="dark"] .card strong,body[data-theme="dark"] .section-title h2,body[data-theme="dark"] .page-head h1,body[data-theme="dark"] .detail strong{color:#edf3fc}body[data-theme="dark"] .command-search,body[data-theme="dark"] .theme-toggle,body[data-theme="dark"] .form-control,body[data-theme="dark"] .form-select,body[data-theme="dark"] textarea,body[data-theme="dark"] .table,body[data-theme="dark"] .table td{background:#111d2e;color:#dce6f3;border-color:#2a3a52}body[data-theme="dark"] .table th{background:#16243a;color:#9ba9bd;border-color:#2b3a50}body[data-theme="dark"] .table tbody tr:hover td{background:#142238}body[data-theme="dark"] .detail{background:#142238;border-color:#26364d}body[data-theme="dark"] .road-stop.current .road-label span,body[data-theme="dark"] .road-stop.problem .road-label span{color:#edf3fc}body[data-theme="dark"] .health-ring:before{background:#111d2e;box-shadow:inset 0 0 0 1px #2b3b52}body[data-theme="dark"] .quick-action{background:#132136;border-color:#283850;color:#aebbd0}body[data-theme="dark"] .footer{border-color:#243349}body[data-theme="dark"] .command-search kbd{background:#18263b;border-color:#304159;color:#aebbd0}

/* Responsive */
@media(max-width:1320px){.grid-4{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,1fr)}.command-search{min-width:175px}.profile-copy{display:none}}
@media(max-width:1080px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.quick-actions{grid-template-columns:repeat(2,1fr)}.top-create b,.command-search b,.command-search kbd{display:none}.command-search{min-width:auto;width:40px;justify-content:center;padding:0}.top-create{width:40px;padding:0;justify-content:center}}
@media(max-width:900px){.sidebar{transform:translateX(-105%);transition:transform .28s cubic-bezier(.2,.8,.2,1);box-shadow:25px 0 70px rgba(0,0,0,.22)}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-open .mobile-backdrop{display:block;position:fixed;inset:0;background:rgba(4,12,26,.48);backdrop-filter:blur(3px);z-index:35}.sidebar-close{display:grid;place-items:center}.main{margin-left:0}.icon-btn{display:grid}.topbar{padding:0 16px;height:74px}.content{padding:20px 16px 28px}.login-page{grid-template-columns:1fr}.login-art{display:none}.login-panel{min-height:100vh}.footer{padding:18px 16px}}
@media(max-width:640px){.content{padding:15px 12px 24px}.topbar{padding:0 12px;gap:10px}.page-kicker{display:none}.page-head h1{font-size:17px}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.form-group.full{grid-column:auto}.profile-wrap{padding-left:0;border-left:0}.profile-wrap .logout{display:none}.theme-toggle{display:none}.metric-card{min-height:132px}.metric-value{font-size:25px}.hero{padding:22px 20px;border-radius:21px}.hero h2{font-size:23px}.hero p{font-size:11px}.card{padding:15px}.section-title{align-items:flex-start}.section-title .toolbar{justify-content:flex-end}.health-wrap{flex-direction:column;align-items:flex-start}.health-legend{width:100%}.stage-row{grid-template-columns:98px 1fr 34px}.quick-actions{grid-template-columns:1fr 1fr}.login-panel{padding:14px}.login-box{padding:22px 18px;border-radius:20px}.footer{flex-direction:column;gap:5px}.top-create{display:none}}
@media print{.sidebar,.topbar,.footer,.no-print,.mobile-backdrop{display:none!important}.main{margin:0}.content{padding:0;max-width:none}.card{box-shadow:none;border:0}.print-only{display:block}body{background:#fff!important;color:#111!important}.reveal{opacity:1!important;transform:none!important}}
.login-eyebrow{font-size:9px;font-weight:900;letter-spacing:.16em;color:#bcd5fa;margin-bottom:16px;display:flex;align-items:center;gap:8px}.login-eyebrow span{width:24px;height:2px;border-radius:99px;background:#ffac43}.login-art h1 em{font-style:normal;color:#ffbd64}.login-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:520px;margin-top:24px}.login-feature{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.075);backdrop-filter:blur(9px);padding:12px;border-radius:14px}.login-feature b{font-size:20px;display:block;letter-spacing:-.04em}.login-feature span{font-size:9px;color:#bcd2f2;display:block;margin-top:3px}.security-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:#ecfaf3;color:#11764e;font-size:9px;font-weight:850;margin-bottom:15px}.security-pill span{font-size:8px;color:#1bb476}

/* =========================================================
   V3 SMART MULTICOLOUR OPERATIONS UI
   ========================================================= */
:root{
  --stage-1:#2f80ed;--stage-2:#00a8c6;--stage-3:#7357e8;--stage-4:#ff9f1c;--stage-5:#f05d5e;
  --stage-6:#18a96f;--stage-7:#0096c7;--stage-8:#7b2cbf;--stage-9:#d97706;--stage-10:#0f766e;
  --pink:#e8528f;--lime:#65a30d;--teal:#0f9c94;
}
body[data-page="customers"]{--page-accent:#00a8c6}body[data-page="projects"],body[data-page="project_view"]{--page-accent:#2f80ed}
body[data-page="surveys"]{--page-accent:#7357e8}body[data-page="quotations"],body[data-page="payments"]{--page-accent:#ff9f1c}
body[data-page="orders"],body[data-page="dispatch"]{--page-accent:#f05d5e}body[data-page="quality"],body[data-page="testing"]{--page-accent:#18a96f}
body[data-page="net_metering"]{--page-accent:#7b2cbf}body[data-page="handover"],body[data-page="maintenance"]{--page-accent:#0f766e}
body[data-page="tickets"]{--page-accent:#e8528f}body[data-page="partners"],body[data-page="employees"]{--page-accent:#0096c7}
body[data-page="reports"],body[data-page="audit"],body[data-page="settings"]{--page-accent:#7357e8}
.topbar:after{content:"";position:absolute;left:0;bottom:-1px;width:130px;height:2px;background:linear-gradient(90deg,var(--page-accent,#1567e9),transparent);pointer-events:none}
.nav-link.active .nav-ico{background:linear-gradient(135deg,var(--page-accent,#ff9b28),color-mix(in srgb,var(--page-accent,#ff9b28) 72%,#fff));box-shadow:0 8px 20px color-mix(in srgb,var(--page-accent,#ff9b28) 28%,transparent)}

/* Smart operations assistant */
.smart-command-bar{margin-top:16px;background:linear-gradient(115deg,#071a3d 0%,#0e326a 54%,#123b75 100%);border-radius:21px;padding:15px 16px;display:grid;grid-template-columns:minmax(210px,.75fr) minmax(520px,2fr);gap:14px;align-items:center;box-shadow:0 15px 35px rgba(8,38,85,.15);position:relative;overflow:hidden}
.smart-command-bar:after{content:"";position:absolute;right:-70px;top:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(0,199,255,.18),transparent 68%);pointer-events:none}
.smart-command-copy{display:flex;align-items:center;gap:11px;color:#fff;position:relative;z-index:2}.smart-command-copy strong{display:block;font-size:13px;letter-spacing:-.01em}.smart-command-copy small{display:block;color:#a9c3e9;font-size:9px;margin-top:3px;line-height:1.35}.smart-ai-dot{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#ff9f1c,#ffca6a);box-shadow:0 8px 22px rgba(255,159,28,.28);flex:0 0 auto}
.smart-priority-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;position:relative;z-index:2}.smart-priority{min-width:0;padding:10px;border-radius:13px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);color:#fff;transition:.2s ease}.smart-priority:hover{transform:translateY(-2px);background:rgba(255,255,255,.13)}.smart-priority b{display:block;font-size:18px;line-height:1;font-weight:950}.smart-priority span{display:block;font-size:9px;font-weight:850;margin-top:5px}.smart-priority small{display:block;font-size:8px;color:#b8cae5;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.smart-priority:before{content:"";display:block;width:21px;height:3px;border-radius:99px;margin-bottom:8px;background:var(--priority)}.priority-purple{--priority:#a78bfa}.priority-red{--priority:#fb7185}.priority-orange{--priority:#fbbf24}.priority-cyan{--priority:#22d3ee}.priority-pink{--priority:#f472b6}

/* Multicolour roadmap */
.roadmap-summary{display:grid;grid-template-columns:145px minmax(160px,1fr);gap:8px 13px;align-items:center;padding:11px 13px;background:linear-gradient(90deg,#f6f9fd,#fff);border:1px solid #e7edf5;border-radius:14px;margin-bottom:10px}.roadmap-summary>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:7px}.roadmap-summary span{font-size:8px;font-weight:900;letter-spacing:.11em;color:#8794a8}.roadmap-summary strong{font-size:13px}.roadmap-summary small{grid-column:2;font-size:9px;color:#69768a}.roadmap-progress{height:8px;border-radius:99px;background:#eaf0f6;overflow:hidden}.roadmap-progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--stage-1),var(--stage-2),var(--stage-3),var(--stage-4),var(--stage-6),var(--stage-8));box-shadow:0 0 14px rgba(47,128,237,.25)}
.road-stop.stage-1{--stage:var(--stage-1)}.road-stop.stage-2{--stage:var(--stage-2)}.road-stop.stage-3{--stage:var(--stage-3)}.road-stop.stage-4{--stage:var(--stage-4)}.road-stop.stage-5{--stage:var(--stage-5)}.road-stop.stage-6{--stage:var(--stage-6)}.road-stop.stage-7{--stage:var(--stage-7)}.road-stop.stage-8{--stage:var(--stage-8)}.road-stop.stage-9{--stage:var(--stage-9)}.road-stop.stage-10{--stage:var(--stage-10)}
.road-stop.done .road-node{background:linear-gradient(135deg,var(--stage),color-mix(in srgb,var(--stage) 78%,#071a3d));color:#fff}.road-stop.current .road-node{background:linear-gradient(135deg,var(--stage),color-mix(in srgb,var(--stage) 75%,#fff));box-shadow:0 0 0 7px color-mix(in srgb,var(--stage) 13%,transparent),0 8px 20px color-mix(in srgb,var(--stage) 26%,transparent)}.road-stop.current .road-label b{color:var(--stage)}.road-stop.future .road-node{background:color-mix(in srgb,var(--stage) 11%,#eef3f8);color:color-mix(in srgb,var(--stage) 58%,#64748b);border-color:#fff}.road-stop.future .road-label b{color:color-mix(in srgb,var(--stage) 65%,#9aa7ba)}

/* Project smart guide */
.project-smart-strip{--stage-color:#2f80ed;margin-bottom:14px;padding:15px 17px;border-radius:18px;background:linear-gradient(110deg,color-mix(in srgb,var(--stage-color) 10%,#fff),#fff 54%);border:1px solid color-mix(in srgb,var(--stage-color) 24%,#e4ebf4);display:grid;grid-template-columns:minmax(0,1fr) 120px auto;align-items:center;gap:15px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.project-smart-strip:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--stage-color)}.stage-theme-1{--stage-color:var(--stage-1)}.stage-theme-2{--stage-color:var(--stage-2)}.stage-theme-3{--stage-color:var(--stage-3)}.stage-theme-4{--stage-color:var(--stage-4)}.stage-theme-5{--stage-color:var(--stage-5)}.stage-theme-6{--stage-color:var(--stage-6)}.stage-theme-7{--stage-color:var(--stage-7)}.stage-theme-8{--stage-color:var(--stage-8)}.stage-theme-9{--stage-color:var(--stage-9)}.stage-theme-10{--stage-color:var(--stage-10)}
.project-smart-main{min-width:0}.project-smart-kicker{display:block;font-size:8px;font-weight:950;letter-spacing:.14em;color:var(--stage-color);margin-bottom:4px}.project-smart-main strong{display:block;font-size:13px;color:#20304b;line-height:1.35}.project-smart-main small{display:block;font-size:9px;color:#7a879a;margin-top:3px}.project-smart-progress{text-align:center;border-left:1px solid color-mix(in srgb,var(--stage-color) 20%,#e7edf5);border-right:1px solid color-mix(in srgb,var(--stage-color) 20%,#e7edf5);padding:3px 12px}.project-smart-progress b{display:block;font-size:22px;color:var(--stage-color);letter-spacing:-.05em}.project-smart-progress span{font-size:8px;color:#8b97a8}.btn-smart{background:var(--stage-color);color:#fff;border:0;box-shadow:0 9px 20px color-mix(in srgb,var(--stage-color) 24%,transparent)}.btn-smart:hover{filter:brightness(.96);transform:translateY(-1px)}
.smart-field-note{display:block;font-size:9px;color:#7b8797;margin-top:5px}

/* More obvious multicolour analytics */
.stage-row:nth-child(1) .stage-fill{background:var(--stage-1)}.stage-row:nth-child(2) .stage-fill{background:var(--stage-2)}.stage-row:nth-child(3) .stage-fill{background:var(--stage-3)}.stage-row:nth-child(4) .stage-fill{background:var(--stage-4)}.stage-row:nth-child(5) .stage-fill{background:var(--stage-5)}.stage-row:nth-child(6) .stage-fill{background:var(--stage-6)}.stage-row:nth-child(7) .stage-fill{background:var(--stage-7)}.stage-row:nth-child(8) .stage-fill{background:var(--stage-8)}.stage-row:nth-child(9) .stage-fill{background:var(--stage-9)}.stage-row:nth-child(10) .stage-fill{background:var(--stage-10)}
.quick-action:nth-child(8n+1) .quick-action-icon{background:#e8f1ff;color:#2f80ed}.quick-action:nth-child(8n+2) .quick-action-icon{background:#e6fbff;color:#00a8c6}.quick-action:nth-child(8n+3) .quick-action-icon{background:#f0ebff;color:#7357e8}.quick-action:nth-child(8n+4) .quick-action-icon{background:#fff4df;color:#e58a00}.quick-action:nth-child(8n+5) .quick-action-icon{background:#ffe9ea;color:#df4c51}.quick-action:nth-child(8n+6) .quick-action-icon{background:#e9faf3;color:#159663}.quick-action:nth-child(8n+7) .quick-action-icon{background:#e7f7ff;color:#008db8}.quick-action:nth-child(8n+8) .quick-action-icon{background:#f9eaff;color:#8a35b8}

/* Easier forms and data entry */
.form-group label{display:flex;align-items:center;gap:5px}.form-control:focus,.form-select:focus,textarea:focus{border-color:var(--page-accent,#2f80ed)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--page-accent,#2f80ed) 11%,transparent)!important}.form-group:focus-within label{color:var(--page-accent,#2f80ed)}
.smart-capacity-chip{display:none;margin-top:5px;font-size:9px;font-weight:800;color:#0e7c60;background:#e9faf4;border:1px solid #c9efe1;border-radius:8px;padding:5px 7px;width:max-content}.smart-capacity-chip.show{display:inline-flex}

/* dark mode v3 */
body[data-theme="dark"] .smart-command-bar{background:linear-gradient(115deg,#07111f,#0b2447)}body[data-theme="dark"] .roadmap-summary{background:#132136;border-color:#293951}body[data-theme="dark"] .project-smart-strip{background:linear-gradient(110deg,color-mix(in srgb,var(--stage-color) 15%,#101b2c),#111d2e 60%);border-color:#2a3a52}body[data-theme="dark"] .project-smart-main strong{color:#e8eef8}body[data-theme="dark"] .roadmap-progress{background:#26364a}body[data-theme="dark"] .road-stop.future .road-node{border-color:#111d2e}

@media(max-width:1180px){.smart-command-bar{grid-template-columns:1fr}.smart-priority-grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:820px){.smart-priority-grid{grid-template-columns:repeat(3,1fr)}.project-smart-strip{grid-template-columns:1fr auto}.project-smart-progress{border-right:0}.project-smart-strip .btn-smart{grid-column:1/-1;justify-content:center}.roadmap-summary{grid-template-columns:120px 1fr}}
@media(max-width:560px){.smart-command-bar{padding:13px;border-radius:17px}.smart-priority-grid{grid-template-columns:repeat(2,1fr)}.smart-priority:last-child{grid-column:1/-1}.project-smart-strip{grid-template-columns:1fr}.project-smart-progress{text-align:left;border:0;padding:0;display:flex;align-items:baseline;gap:7px}.project-smart-progress b{font-size:19px}.roadmap-summary{grid-template-columns:1fr}.roadmap-summary small{grid-column:1}.smart-command-copy small{max-width:250px}}

/* Mobile-first operational tables become readable record cards */
@media(max-width:700px){
  .table-wrap{overflow:visible;border:0;background:transparent;border-radius:0}.table{display:block;min-width:0;background:transparent}.table thead{display:none}.table tbody{display:grid;gap:10px}.table tbody tr{display:block;background:#fff;border:1px solid #e3eaf3;border-radius:15px;padding:6px 11px;box-shadow:0 7px 18px rgba(24,49,83,.06)}.table tbody td{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 2px;border-bottom:1px dashed #e9eef5;background:transparent!important;text-align:right;min-height:32px;flex-wrap:wrap}.table tbody td:last-child{border-bottom:0}.table tbody td:before{content:attr(data-label);font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:#8b97a8;font-weight:900;text-align:left;max-width:42%}.table tbody td>*{margin-left:auto}.table tbody td .toolbar{justify-content:flex-end;width:100%}.table tbody td .form-select{max-width:190px}.toolbar .search{min-width:100%;width:100%}
  body[data-theme="dark"] .table tbody tr{background:#111d2e;border-color:#293951}
}

/* v5 quotation permanent ledger */
.quotation-proof-card{background:linear-gradient(135deg,rgba(13,110,253,.06),rgba(255,138,0,.05));border:1px solid rgba(13,110,253,.14)}
.proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;position:relative}
.proof-step{position:relative;padding:16px 14px 14px 48px;background:var(--card,#fff);border:1px solid #e8edf5;border-radius:14px;min-height:92px}
.proof-step>span{position:absolute;left:13px;top:15px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eef3fb;color:#0a2a66;font-weight:900;font-size:12px}
.proof-step.proof-done>span{background:#0d6efd;color:#fff;box-shadow:0 5px 16px rgba(13,110,253,.22)}
.proof-step small{display:block;color:#8994a6;font-size:9px;font-weight:900;letter-spacing:.12em;margin-bottom:4px}
.proof-step strong{display:block;font-size:13px;color:var(--text,#172033);line-height:1.35}
.proof-step em{display:block;font-style:normal;color:#6e7888;font-size:10px;line-height:1.4;margin-top:5px}
.history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf1f6}
.history-row:last-child{border-bottom:0}.history-row small{display:block;color:#7b8797;margin-top:3px}
.timeline-event{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #edf1f6}
.timeline-event>span{width:9px;height:9px;border-radius:50%;background:#0d6efd;margin-top:5px;box-shadow:0 0 0 4px rgba(13,110,253,.1);flex:0 0 auto}
.timeline-event strong{display:block;font-size:13px}.timeline-event small{display:block;color:#7b8797;margin-top:3px;font-size:10px}
@media(max-width:980px){.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.proof-grid{grid-template-columns:1fr}.history-row{align-items:flex-start;flex-direction:column}}

/* V9 — Installation QC evidence upload + mobile camera capture */
.qc-help-strip{margin-top:16px;padding:15px 18px;border-radius:18px;border:1px solid #d8e5ff;background:linear-gradient(100deg,#f5f9ff,#fff8ed 55%,#f4efff);display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 8px 24px rgba(20,54,100,.06)}
.qc-help-strip>div{display:flex;flex-direction:column;gap:4px}.qc-help-strip strong{font-size:14px;color:#122447}.qc-help-strip span{font-size:12px;color:#66758d}.qc-help-strip small{font-size:11px;font-weight:800;color:#7058ef;white-space:nowrap;background:#fff;border:1px solid #e6e0ff;padding:7px 10px;border-radius:999px}
.qc-table th:nth-child(4){min-width:300px}.qc-table th:last-child{min-width:310px}
.qc-step-name{font-weight:750;color:#1c3155;line-height:1.32;max-width:230px}.qc-step-hint{display:block;margin-top:6px;color:#94a0b3;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.qc-evidence-cell{min-width:300px}.qc-evidence-meta{display:flex;align-items:center;gap:8px;margin-bottom:7px}.qc-evidence-meta strong{font-size:12px;color:#15335f}.qc-evidence-meta span{font-size:10px;color:#8a97aa}
.qc-thumb-row{display:flex;gap:6px;align-items:center;margin:6px 0 7px}.qc-thumb-link{width:52px;height:44px;border-radius:10px;border:1px solid #dce5f1;background:#f7f9fd;overflow:hidden;display:grid;place-items:center;transition:.18s ease}.qc-thumb-link:hover{transform:translateY(-2px);box-shadow:0 5px 14px rgba(28,62,116,.15)}.qc-thumb{width:100%;height:100%;object-fit:cover;display:block}.qc-file-tile{font-size:9px;font-weight:900;color:#6a58d7;letter-spacing:.08em}
.qc-last-proof{font-size:10px;color:#6e7d92;margin-bottom:8px}.qc-no-evidence{font-size:11px;color:#9a6670;background:#fff4f5;border:1px dashed #f0c6cc;border-radius:10px;padding:7px 9px;margin-bottom:8px;width:max-content}
.qc-upload-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.qc-evidence-form{margin:0}.qc-file-button,.qc-camera-button{cursor:pointer;white-space:nowrap;user-select:none}.qc-file-button{background:linear-gradient(135deg,#ff9e2f,#f17422)!important;color:#fff!important;border-color:transparent!important}.qc-camera-button{background:#eef5ff!important;color:#1458b8!important;border-color:#cfdef4!important}.qc-camera-button:hover{background:#deedff!important}
.qc-update-grid{display:grid;grid-template-columns:minmax(150px,1fr) minmax(140px,1fr);gap:7px;min-width:310px}.qc-update-grid button{width:max-content}.qc-uploading{opacity:.65;pointer-events:none;position:relative}.qc-uploading:after{content:'Uploading…';font-size:10px;font-weight:800;color:#1458b8;margin-left:7px}
[data-theme="dark"] .qc-help-strip{background:linear-gradient(100deg,#18243b,#2c241a 55%,#251f39);border-color:#33466a}.qc-help-strip strong,[data-theme="dark"] .qc-step-name{color:inherit}[data-theme="dark"] .qc-help-strip span,[data-theme="dark"] .qc-last-proof{color:#9eabc0}[data-theme="dark"] .qc-help-strip small{background:#20283b;border-color:#413a6b;color:#a99df8}[data-theme="dark"] .qc-thumb-link{background:#182236;border-color:#35435b}[data-theme="dark"] .qc-no-evidence{background:#382328;border-color:#68404a;color:#f1b7c2}
@media(max-width:1180px){.qc-table th:nth-child(4){min-width:260px}.qc-update-grid{grid-template-columns:1fr;min-width:220px}}
@media(max-width:760px){.qc-help-strip{align-items:flex-start;flex-direction:column}.qc-help-strip small{white-space:normal}.qc-upload-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.qc-file-button,.qc-camera-button{width:100%;justify-content:center}.qc-evidence-cell{min-width:0}.qc-update-grid{min-width:0}.qc-thumb-link{width:58px;height:50px}}


/* v10 Hierarchy & Access Control */
.access-matrix .access-group td{background:linear-gradient(90deg,#edf4ff,#fff5e9);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:#173d77;padding:10px 14px}
.access-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}.access-switch input{position:absolute;opacity:0;pointer-events:none}.access-switch span{width:42px;height:24px;border-radius:999px;background:#d8e0eb;position:relative;transition:.2s}.access-switch span:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:3px;left:3px;box-shadow:0 2px 5px rgba(0,0,0,.18);transition:.2s}.access-switch input:checked+span{background:linear-gradient(90deg,#1167e9,#7555ee)}.access-switch input:checked+span:after{transform:translateX(18px)}.access-switch b{font-size:10px;color:#65748b}.access-switch input:checked~b{color:#1167e9}
body[data-page="access_control"] .content{background:radial-gradient(circle at 88% 3%,rgba(120,82,238,.08),transparent 30%),radial-gradient(circle at 4% 10%,rgba(255,153,51,.08),transparent 28%)}

/* V11 — Automatic workflow board: no manual stage dropdown. */
.workflow-legend{display:flex;flex-wrap:wrap;gap:8px 15px;align-items:center;margin:10px 0 2px;padding:9px 12px;background:#f8fafc;border:1px solid #e7edf5;border-radius:12px;font-size:9px;font-weight:800;color:#66758b}.workflow-legend span{display:flex;align-items:center;gap:6px}.wf-dot,.wf-job-bullet{display:inline-block;width:11px;height:11px;border-radius:50%;flex:0 0 auto;border:2px solid #fff;box-shadow:0 0 0 1px #d8e0ea}.wf-dot.pending,.wf-job-bullet.pending{background:#cbd5e1}.wf-dot.uploaded,.wf-job-bullet.uploaded{background:#ff9418}.wf-dot.verified,.wf-job-bullet.verified{background:#2376e5}.wf-dot.complete,.wf-job-bullet.completed{background:#14a66f}.wf-job-bullet.verified{background:#2376e5}.wf-job-bullet.uploaded{background:#ff9418}.wf-job-bullet.rejected{background:#e34b4b}.wf-job-bullet.pending{background:#cbd5e1}

.auto-roadmap:before{top:24px;height:3px}.auto-roadmap .road-stop{min-width:105px}.auto-roadmap .road-node{width:42px;height:42px;border-radius:50%;transform:none!important;background:#e8edf4;color:#738196;border:4px solid #fff}.auto-roadmap .road-node span{transform:none!important}.auto-roadmap .road-stop.state-pending .road-node{background:#dce3ec;color:#66758b}.auto-roadmap .road-stop.state-uploaded .road-node{background:linear-gradient(135deg,#ffad3d,#ff8510);color:#fff;box-shadow:0 0 0 6px rgba(255,148,24,.11),0 7px 17px rgba(201,100,0,.18)}.auto-roadmap .road-stop.state-verified .road-node{background:linear-gradient(135deg,#3b8df0,#1264d7);color:#fff;box-shadow:0 0 0 6px rgba(35,118,229,.11),0 7px 17px rgba(24,87,171,.18)}.auto-roadmap .road-stop.state-complete .road-node{background:linear-gradient(135deg,#25bd83,#0c9563);color:#fff;box-shadow:0 0 0 6px rgba(20,166,111,.10),0 7px 17px rgba(10,113,74,.18)}.auto-roadmap .road-stop.state-rejected .road-node{background:linear-gradient(135deg,#ef6565,#d53535);color:#fff}.auto-roadmap .road-stop.current .road-node{outline:3px solid rgba(20,45,82,.11);outline-offset:4px}.auto-roadmap .road-label small{display:block;margin-top:3px;font-size:7px;color:#9aa6b6;font-weight:800}.auto-roadmap .road-stop.state-uploaded .road-label b{color:#ec7d00}.auto-roadmap .road-stop.state-verified .road-label b{color:#176bd9}.auto-roadmap .road-stop.state-complete .road-label b{color:#0f9867}.auto-roadmap .road-stop.state-rejected .road-label b{color:#d83838}

.workflow-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.workflow-stage-card{background:#fff;border:1px solid #e5ebf3;border-radius:18px;overflow:hidden;box-shadow:0 5px 18px rgba(31,45,61,.04);position:relative}.workflow-stage-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#dbe3ec}.workflow-stage-card.state-uploaded:before{background:#ff9418}.workflow-stage-card.state-verified:before{background:#2376e5}.workflow-stage-card.state-complete:before{background:#14a66f}.workflow-stage-card.state-rejected:before{background:#e34b4b}.workflow-stage-card.is-active{box-shadow:0 9px 28px rgba(28,80,145,.10);border-color:#cfdaea}.workflow-stage-head{display:grid;grid-template-columns:46px 1fr auto;gap:11px;align-items:center;padding:15px 16px 12px}.wf-stage-circle{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:950;background:#dce3ec;color:#68768a;border:4px solid #fff;box-shadow:0 0 0 1px #dfe6ee}.wf-stage-circle.uploaded{background:#ff9418;color:#fff;box-shadow:0 0 0 5px rgba(255,148,24,.10)}.wf-stage-circle.verified{background:#2376e5;color:#fff;box-shadow:0 0 0 5px rgba(35,118,229,.10)}.wf-stage-circle.complete{background:#14a66f;color:#fff;box-shadow:0 0 0 5px rgba(20,166,111,.10)}.wf-stage-circle.rejected{background:#e34b4b;color:#fff}.wf-stage-title span{display:block;font-size:7px;font-weight:950;letter-spacing:.14em;color:#95a2b3}.wf-stage-title h3{margin:2px 0;font-size:13px;color:#24344e}.wf-stage-title small{font-size:8px;color:#8794a6}.wf-stage-percent{font-size:15px;font-weight:950;color:#486079}.workflow-stage-card.state-uploaded .wf-stage-percent{color:#e47e0c}.workflow-stage-card.state-verified .wf-stage-percent{color:#1f6dd5}.workflow-stage-card.state-complete .wf-stage-percent{color:#109765}.workflow-job-list{border-top:1px solid #edf1f6;background:#fbfcfe}.workflow-job{display:grid;grid-template-columns:15px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 14px;border-bottom:1px solid #edf1f6}.workflow-job:last-child{border-bottom:0}.wf-job-copy{min-width:0}.wf-job-copy strong{display:block;font-size:9px;color:#33445d}.wf-job-copy small{display:block;font-size:8px;color:#8591a2;margin-top:2px}.wf-job-action{font-size:8px;font-weight:900;color:#1d68d2;background:#edf5ff;border:1px solid #d7e8ff;padding:6px 8px;border-radius:8px;white-space:nowrap}.workflow-job.state-uploaded .wf-job-action{color:#c96d00;background:#fff4e6;border-color:#ffe0ba}.workflow-job.state-rejected .wf-job-action{color:#c93737;background:#fff0f0;border-color:#ffd6d6}.workflow-job.state-verified .wf-job-action,.workflow-job.state-completed .wf-job-action{color:#16815c;background:#edf9f5;border-color:#d4f1e6}
.auto-workflow-note{margin-top:12px;padding:11px 13px;border-radius:12px;background:linear-gradient(90deg,#eef6ff,#fff8ed);border:1px solid #dce8f5;font-size:9px;color:#627187}.auto-workflow-note strong{color:#1e4f91}

body[data-theme="dark"] .workflow-legend{background:#132136;border-color:#293951;color:#b4c0d2}body[data-theme="dark"] .workflow-stage-card{background:#111d2e;border-color:#293951}body[data-theme="dark"] .workflow-job-list{background:#101a29;border-color:#293951}body[data-theme="dark"] .workflow-job{border-color:#293951}body[data-theme="dark"] .wf-stage-title h3,body[data-theme="dark"] .wf-job-copy strong{color:#e9eef7}body[data-theme="dark"] .wf-stage-title small,body[data-theme="dark"] .wf-job-copy small{color:#9fabc0}body[data-theme="dark"] .auto-workflow-note{background:#152338;border-color:#2b3d57;color:#b7c3d4}
@media(max-width:900px){.workflow-board{grid-template-columns:1fr}}@media(max-width:560px){.workflow-stage-head{grid-template-columns:42px 1fr auto;padding:13px 12px 10px}.wf-stage-circle{width:38px;height:38px}.workflow-job{grid-template-columns:13px 1fr auto;padding:10px 11px}.wf-job-action{padding:6px 7px}.workflow-legend{gap:7px 10px}.auto-roadmap .road-stop{min-width:92px}}

/* v12 GST quotation builder + project ledger */
.price-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.price-mode-card{display:flex;gap:12px;align-items:flex-start;border:1px solid #dce5f2;border-radius:16px;padding:16px;background:linear-gradient(135deg,#fff,#f7faff);cursor:pointer;transition:.2s}.price-mode-card:hover{border-color:#7eacf2;transform:translateY(-1px);box-shadow:0 10px 24px rgba(19,69,136,.08)}.price-mode-card:has(input:checked){border:2px solid #1f6dd5;background:linear-gradient(135deg,#eef5ff,#fff8e9)}.price-mode-card input{margin-top:4px;accent-color:#1f6dd5}.price-mode-card span{display:flex;flex-direction:column;gap:4px}.price-mode-card b{font-size:14px;color:#10284f}.price-mode-card small{color:#70809a;line-height:1.45}.quote-table{min-width:1180px}.quote-money{white-space:nowrap;font-weight:700;color:#24558c}.quote-money.strong{color:#0f8f62}.quote-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.quote-summary>div{border:1px solid #e2e9f3;border-radius:14px;padding:14px;background:#f8fbff;display:flex;flex-direction:column;gap:5px}.quote-summary small{font-size:10px;letter-spacing:.08em;color:#74829a;font-weight:800}.quote-summary strong{font-size:18px;color:#173c70}.quote-summary .quote-summary-total{background:linear-gradient(135deg,#072a63,#1469d9);border:none}.quote-summary .quote-summary-total small,.quote-summary .quote-summary-total strong{color:#fff}.quote-summary .quote-summary-total strong{font-size:22px}.ledger-stat{border-radius:18px;padding:20px;box-shadow:0 10px 30px rgba(13,44,88,.08);display:flex;flex-direction:column;gap:6px;border:1px solid #e5ebf4}.ledger-stat small{font-size:10px;letter-spacing:.11em;font-weight:900;color:#70809a}.ledger-stat strong{font-size:28px;color:#0c315f}.ledger-stat span{font-size:12px;color:#8190a5}.ledger-total{background:linear-gradient(135deg,#f4f8ff,#fff)}.ledger-paid{background:linear-gradient(135deg,#ecfbf4,#fff)}.ledger-paid strong{color:#0b8a5d}.ledger-pending{background:linear-gradient(135deg,#fff4e5,#fff)}.ledger-pending strong{color:#d56a00}.ledger-quote-strip,.customer-ledger-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:center;background:linear-gradient(135deg,#071f48,#124a96);border-radius:18px;padding:18px;margin-top:18px;color:#fff}.ledger-quote-strip>div,.customer-ledger-strip>div{display:flex;flex-direction:column;gap:4px}.ledger-quote-strip small,.customer-ledger-strip small{font-size:9px;letter-spacing:.1em;color:#bcd2f3;font-weight:900}.ledger-quote-strip strong,.customer-ledger-strip strong{font-size:20px;color:#fff}.ledger-quote-strip strong.paid,.customer-ledger-strip strong.paid{color:#72e0ac}.ledger-quote-strip strong.pending,.customer-ledger-strip strong.pending{color:#ffc269}.ledger-quote-strip span{font-size:11px;color:#bcd2f3}.customer-ledger-strip{grid-template-columns:repeat(3,minmax(0,1fr));background:linear-gradient(135deg,#f6f9ff,#fff8eb);color:#122b53;border:1px solid #dce7f6}.customer-ledger-strip small{color:#6c7c92}.customer-ledger-strip strong{color:#123c75}.customer-ledger-strip strong.paid{color:#0b8a5d}.customer-ledger-strip strong.pending{color:#d56a00}
@media(max-width:800px){.price-mode-grid,.quote-summary{grid-template-columns:1fr}.ledger-quote-strip,.customer-ledger-strip{grid-template-columns:1fr}.ledger-quote-strip .btn{width:100%}}

/* V13 — Site Survey actions: no manual status dropdown. */
.survey-status-box{min-height:42px;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid #dfe7f1;border-radius:11px;background:#f8fbff}.survey-status-box small{font-size:8px;color:#7d8a9e;font-weight:700}.survey-action-panel{display:flex;flex-direction:column;gap:10px;padding:13px;border:1px solid #dfe8f4;border-radius:14px;background:linear-gradient(90deg,#f6faff,#fffaf2)}.survey-action-panel>div:first-child{display:flex;flex-direction:column;gap:3px}.survey-action-panel strong{font-size:10px;color:#29405f}.survey-action-panel small{font-size:8px;color:#7a8799;line-height:1.45}body[data-theme="dark"] .survey-status-box,body[data-theme="dark"] .survey-action-panel{background:#132136;border-color:#2a3b54}body[data-theme="dark"] .survey-action-panel strong{color:#e8eef8}body[data-theme="dark"] .survey-status-box small,body[data-theme="dark"] .survey-action-panel small{color:#a8b5c8}

/* ========================================================================== */
/* v15 — MULTICOLOUR INFOGRAPHIC COMMAND UI                                  */
/* ========================================================================== */
.v15-command-hero{position:relative;overflow:hidden;border-radius:28px;padding:30px 32px;background:linear-gradient(125deg,#061a3d 0%,#0b3f88 48%,#087ea4 100%);color:#fff;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:30px;box-shadow:0 24px 60px rgba(8,45,103,.20);isolation:isolate}.v15-command-hero:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-150px;top:-200px;background:radial-gradient(circle,rgba(255,157,51,.35),rgba(255,157,51,0) 68%);z-index:-1}.v15-command-hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;left:36%;bottom:-300px;background:radial-gradient(circle,rgba(61,211,255,.30),rgba(61,211,255,0) 70%);z-index:-1}.v15-live-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);font-size:9px;font-weight:900;letter-spacing:.13em;color:#cce7ff}.v15-live-chip i{width:8px;height:8px;border-radius:50%;background:#35dc99;box-shadow:0 0 0 5px rgba(53,220,153,.14);animation:v15pulse 1.8s infinite}.v15-hero-copy h2{font-size:36px;line-height:1.02;margin:18px 0 10px;letter-spacing:-.045em;max-width:650px}.v15-hero-copy h2 em{font-style:normal;background:linear-gradient(90deg,#ffbc5a,#ff8c2b);-webkit-background-clip:text;background-clip:text;color:transparent}.v15-hero-copy p{max-width:760px;color:#c6d9f2;font-size:13px;line-height:1.7;margin:0}.v15-hero-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}.btn-light{background:#fff!important;color:#0a3470!important;border-color:#fff!important}.btn-glass{background:rgba(255,255,255,.10)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important}.v15-scoreboard{display:flex;flex-direction:column;gap:13px;justify-content:center}.v15-score{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);padding:13px 14px;border-radius:16px}.v15-score span{display:block;font-size:9px;color:#bad3f2;font-weight:800;letter-spacing:.06em}.v15-score strong{display:block;font-size:21px;margin:4px 0 7px}.v15-score>i{height:5px;background:rgba(255,255,255,.13);border-radius:99px;display:block;overflow:hidden}.v15-score>i>b{height:100%;display:block;border-radius:99px;background:linear-gradient(90deg,#38d6ff,#4ee39a,#ffc457)}
@keyframes v15pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.75}}

.v15-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:16px 0}.v15-kpi{--k:#2563eb;--ksoft:#eff6ff;position:relative;display:flex;align-items:center;gap:13px;background:#fff;border:1px solid #e6edf6;border-radius:18px;padding:15px 16px;box-shadow:0 7px 24px rgba(24,48,83,.055);overflow:hidden;transition:.22s}.v15-kpi:after{content:"";position:absolute;right:-22px;bottom:-42px;width:100px;height:100px;border-radius:50%;background:var(--ksoft);opacity:.8}.v15-kpi:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(24,48,83,.10);border-color:#d9e4f2}.v15-kpi .kpi-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--ksoft);color:var(--k);font-size:16px;font-weight:950;position:relative;z-index:2}.v15-kpi>div{position:relative;z-index:2;min-width:0}.v15-kpi small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#7c899e;font-weight:900}.v15-kpi strong{display:block;font-size:23px;letter-spacing:-.035em;color:#173252;margin:2px 0}.v15-kpi em{display:block;font-style:normal;font-size:9px;color:#8c98aa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-blue{--k:#2563eb;--ksoft:#edf4ff}.kpi-cyan{--k:#0891b2;--ksoft:#ecfeff}.kpi-green{--k:#059669;--ksoft:#ecfdf5}.kpi-orange{--k:#ea6b0b;--ksoft:#fff7ed}.kpi-purple{--k:#7c3aed;--ksoft:#f5f3ff}.kpi-red{--k:#dc2626;--ksoft:#fef2f2}.kpi-pink{--k:#db2777;--ksoft:#fdf2f8}.kpi-teal{--k:#0f9f93;--ksoft:#f0fdfa}

.v15-panel{background:#fff;border:1px solid #e5ecf5;border-radius:21px;padding:19px 20px;box-shadow:0 8px 28px rgba(21,46,80,.055);min-width:0}.v15-panel-wide{margin-top:15px}.v15-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:15px}.v15-panel-head .eyebrow{font-size:8px;font-weight:950;letter-spacing:.13em;color:#71829a}.v15-panel-head h3{font-size:15px;margin:3px 0 2px;color:#173352;letter-spacing:-.018em}.v15-panel-head p{font-size:9px;color:#8491a4;margin:0;line-height:1.45}.panel-number{font-size:17px;color:#0c4b9b;white-space:nowrap}.panel-link{font-size:9px;font-weight:900;color:#1567e9;padding-top:3px}.v15-dashboard-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:15px;margin-top:15px}.info-empty{height:190px;display:grid;place-items:center;color:#95a1b2;font-size:10px;background:linear-gradient(145deg,#fafcff,#f6f9fd);border-radius:14px;border:1px dashed #e0e8f2}

.stage-pipeline{display:grid;grid-template-columns:repeat(10,minmax(72px,1fr));gap:7px;align-items:end;min-height:235px;padding:14px 2px 0;overflow-x:auto}.pipeline-stage{min-width:72px;display:grid;grid-template-rows:40px 118px auto;gap:7px;align-items:end;text-align:center;padding:6px 5px;border-radius:14px;transition:.2s}.pipeline-stage:hover{background:#f7faff;transform:translateY(-2px)}.pipeline-value b{display:block;font-size:16px;color:#263951}.pipeline-value small{font-size:7px;color:#8592a5;display:block;margin-top:1px}.pipeline-column{height:118px;border-radius:10px;background:linear-gradient(180deg,#f2f6fb,#f8fafc);display:flex;align-items:flex-end;justify-content:center;padding:4px;overflow:hidden}.pipeline-column i{display:block;width:100%;border-radius:7px;background:linear-gradient(180deg,color-mix(in srgb,var(--stage-color) 72%,white),var(--stage-color));box-shadow:0 8px 14px color-mix(in srgb,var(--stage-color) 22%,transparent);min-height:8px;transition:height .65s cubic-bezier(.2,.8,.2,1)}.pipeline-name strong{display:block;font-size:8px;color:var(--stage-color);letter-spacing:.08em}.pipeline-name span{display:block;font-size:7px;color:#5f6f84;line-height:1.2;margin-top:2px}

.donut-layout{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:center;gap:18px;min-height:210px}.info-donut{width:178px;height:178px;border-radius:50%;display:grid;place-items:center;position:relative;margin:auto;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}.info-donut:after{content:"";position:absolute;inset:29px;background:#fff;border-radius:50%;box-shadow:0 0 0 1px #eef2f7}.info-donut>div{position:relative;z-index:2;text-align:center}.info-donut strong{display:block;font-size:24px;letter-spacing:-.04em;color:#173451}.info-donut small{display:block;color:#8290a4;font-size:8px;margin-top:3px}.donut-legend{display:flex;flex-direction:column;gap:9px}.donut-legend-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:8px;border-bottom:1px solid #eef2f7}.donut-legend-row span{font-size:9px;color:#617086;display:flex;align-items:center;gap:7px}.donut-legend-row i{width:9px;height:9px;border-radius:3px;display:inline-block}.donut-legend-row strong{font-size:10px;color:#2c3f58}

.hbar-chart{display:flex;flex-direction:column;gap:11px;padding:3px 0}.hbar-row{min-width:0}.hbar-label{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:5px}.hbar-label span{font-size:9px;color:#43536a;font-weight:800;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbar-label span small{display:block;color:#93a0b1;font-size:7px;font-weight:600;margin-top:2px}.hbar-label strong{font-size:10px;color:#243952;white-space:nowrap}.hbar-track{height:8px;border-radius:99px;background:#edf2f7;overflow:hidden}.hbar-track i{height:100%;display:block;border-radius:99px;background:linear-gradient(90deg,color-mix(in srgb,var(--bar-color) 72%,white),var(--bar-color));box-shadow:0 2px 8px color-mix(in srgb,var(--bar-color) 25%,transparent);transition:width .7s cubic-bezier(.2,.8,.2,1)}

.line-chart{position:relative;height:218px;padding:2px 3px 26px}.line-chart svg{width:100%;height:184px;overflow:visible}.line-grid line{stroke:#e9eef5;stroke-width:.45}.line-area{fill:url(#leaLineFill)}.line-path{fill:none;stroke:#2563eb;stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.line-dots circle{fill:#fff;stroke:#2563eb;stroke-width:1.8;vector-effect:non-scaling-stroke;cursor:pointer}.line-axis-labels{position:absolute;left:2px;right:2px;bottom:0;height:18px}.line-axis-labels span{position:absolute;transform:translateX(-50%);font-size:7px;color:#8491a3;white-space:nowrap;font-weight:700}

.info-ring{--ring:#2563eb;width:132px;height:132px;border-radius:50%;background:conic-gradient(var(--ring) var(--ring-p),#e9eff6 0);display:grid;place-items:center;position:relative;margin:auto}.info-ring:before{content:"";position:absolute;inset:13px;background:#fff;border-radius:50%;box-shadow:0 0 0 1px #edf1f6}.info-ring-core{position:relative;z-index:1;text-align:center}.info-ring-core strong{display:block;font-size:22px;letter-spacing:-.035em;color:#173552}.info-ring-core small{display:block;font-size:7px;color:#8290a3;margin-top:3px}.info-ring.tone-teal{--ring:#14b8a6}.info-ring.tone-green{--ring:#22c55e}.info-ring.tone-orange{--ring:#f97316}.info-ring.tone-purple{--ring:#7c3aed}.qc-infographic{display:grid;grid-template-columns:155px 1fr;gap:20px;align-items:center;min-height:210px}.qc-metrics{display:flex;flex-direction:column;gap:9px}.qc-metrics>div{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;padding:10px;border-radius:11px;background:#f8fafc}.qc-metrics i{width:8px;height:8px;border-radius:50%}.qc-ok{background:#14b8a6}.qc-wait{background:#f59e0b}.qc-bad{background:#ef4444}.qc-metrics span{font-size:9px;color:#66758a}.qc-metrics strong{font-size:11px;color:#2c4059}

.v15-attention-strip{margin-top:15px;border-radius:18px;background:linear-gradient(110deg,#10284f,#143f78);padding:12px 14px;display:grid;grid-template-columns:minmax(220px,1.3fr) repeat(5,minmax(95px,.55fr));gap:8px;color:#fff;box-shadow:0 12px 30px rgba(12,42,83,.13)}.v15-attention-strip>div{display:grid;grid-template-columns:36px 1fr;column-gap:8px;align-items:center}.v15-attention-strip>div>span{grid-row:1/3;width:34px;height:34px;border-radius:11px;background:rgba(255,255,255,.11);display:grid;place-items:center}.v15-attention-strip>div strong{font-size:11px}.v15-attention-strip>div small{font-size:7px;color:#b8cbe5}.v15-attention-strip>a{border:1px solid rgba(255,255,255,.10);border-radius:11px;padding:8px 9px;background:rgba(255,255,255,.06);font-size:8px;color:#bed1e9;transition:.2s}.v15-attention-strip>a:hover{background:rgba(255,255,255,.12);transform:translateY(-1px)}.v15-attention-strip>a b{font-size:15px;color:#fff;display:block;margin-bottom:2px}

.v15-project-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v15-project-card{position:relative;background:#fff;border:1px solid #e5ebf4;border-radius:17px;padding:14px;box-shadow:0 6px 20px rgba(24,48,83,.05);transition:.22s;overflow:hidden}.v15-project-card:after{content:"";position:absolute;right:-35px;top:-35px;width:95px;height:95px;border-radius:50%;background:#f4f8fd}.v15-project-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(24,48,83,.10)}.project-card-top{display:flex;justify-content:space-between;gap:7px;position:relative;z-index:2}.stage-chip{font-size:7px;font-weight:950;letter-spacing:.09em;color:var(--stage-color);background:color-mix(in srgb,var(--stage-color) 10%,white);border:1px solid color-mix(in srgb,var(--stage-color) 20%,white);border-radius:999px;padding:5px 7px}.v15-project-card>strong{font-size:9px;color:#1d64c7;display:block;margin-top:14px}.v15-project-card h4{font-size:13px;margin:4px 0 9px;color:#273b54}.project-card-meta{display:flex;gap:7px;flex-wrap:wrap}.project-card-meta span{font-size:8px;background:#f6f9fc;padding:5px 7px;border-radius:8px;color:#6c7a8f}.project-card-progress{height:5px;background:#edf2f7;border-radius:99px;margin:12px 0 8px;overflow:hidden}.project-card-progress i{height:100%;display:block;background:var(--stage-color);border-radius:99px}.v15-project-card>small{font-size:7px;color:#8996a8}

.analytics-hero{border-radius:25px;padding:25px 28px;background:linear-gradient(130deg,#0b2e67,#154fa4 54%,#7c3aed);color:#fff;display:flex;justify-content:space-between;gap:24px;align-items:center;box-shadow:0 18px 45px rgba(26,67,143,.17);margin-bottom:15px}.analytics-hero>div>span{font-size:8px;letter-spacing:.13em;color:#c6d7fb;font-weight:900}.analytics-hero h2{font-size:31px;margin:7px 0 6px;letter-spacing:-.04em}.analytics-hero h2 em{font-style:normal;color:#ffc55f}.analytics-hero p{font-size:10px;color:#cfddf6;margin:0;max-width:640px}.analytics-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:8px;min-width:380px}.analytics-hero-stats>div{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:12px}.analytics-hero-stats small{font-size:7px;color:#c7d9f4;display:block}.analytics-hero-stats strong{font-size:18px;display:block;margin-top:3px}

.project-intelligence-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0}.project-intel-card{background:#fff;border:1px solid #e4ebf4;border-radius:17px;padding:14px 15px;box-shadow:0 7px 22px rgba(24,48,83,.045);min-width:0}.project-intel-card>span{font-size:7px;font-weight:950;letter-spacing:.12em;color:#8290a4}.project-intel-card>strong{display:block;font-size:20px;color:#173552;margin:5px 0 2px}.project-intel-card>small{display:block;font-size:8px;color:#7d899a}.project-intel-card>em{display:block;font-size:7px;color:#8793a4;margin-top:5px;font-style:normal}.project-intel-card.intel-progress{display:grid;grid-template-columns:92px 1fr;align-items:center}.project-intel-card.intel-progress>span,.project-intel-card.intel-progress>small{grid-column:2}.project-intel-card.intel-progress .info-ring{grid-row:1/4;width:82px;height:82px}.project-intel-card.intel-progress .info-ring:before{inset:9px}.project-intel-card.intel-progress .info-ring-core strong{font-size:15px}.micro-progress{height:6px;background:#edf2f7;border-radius:99px;overflow:hidden;margin-top:9px}.micro-progress i{height:100%;display:block;border-radius:99px;background:linear-gradient(90deg,#2563eb,#06b6d4)}.micro-progress.tone-purple i{background:linear-gradient(90deg,#7c3aed,#a855f7)}.micro-progress.tone-teal i{background:linear-gradient(90deg,#0f9f93,#34d399)}

.customer-track-overview{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;border:1px solid #e1eaf5;border-radius:18px;padding:16px;background:linear-gradient(135deg,#f7fbff,#fffaf2);margin:12px 0 17px}.customer-track-overview .info-ring{width:118px;height:118px}.customer-track-copy>span{font-size:8px;letter-spacing:.12em;font-weight:950;color:#6d7e95}.customer-track-copy>strong{font-size:16px;color:#173755;display:block;margin:4px 0}.customer-track-copy>small{font-size:9px;color:#78869a;display:block;line-height:1.5}.mini-stage-strip{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin-top:12px}.mini-stage{height:26px;border-radius:7px;background:#e3e9f1;display:grid;place-items:center;position:relative}.mini-stage i{font-style:normal;font-size:7px;color:#65758a;font-weight:900}.mini-stage.state-uploaded{background:#ff9418}.mini-stage.state-verified{background:#2376e5}.mini-stage.state-complete{background:#14a66f}.mini-stage.state-rejected{background:#e34b4b}.mini-stage.state-uploaded i,.mini-stage.state-verified i,.mini-stage.state-complete i,.mini-stage.state-rejected i{color:#fff}

body[data-theme="dark"] .v15-kpi,body[data-theme="dark"] .v15-panel,body[data-theme="dark"] .v15-project-card,body[data-theme="dark"] .project-intel-card{background:#111d2e;border-color:#293951}.body[data-theme="dark"] .v15-kpi strong{color:#fff}body[data-theme="dark"] .v15-kpi strong,body[data-theme="dark"] .v15-panel h3,body[data-theme="dark"] .v15-project-card h4,body[data-theme="dark"] .project-intel-card>strong{color:#eaf0f9}body[data-theme="dark"] .v15-kpi em,body[data-theme="dark"] .v15-panel p,body[data-theme="dark"] .pipeline-name span,body[data-theme="dark"] .hbar-label span,body[data-theme="dark"] .customer-track-copy>small{color:#9ba9bc}body[data-theme="dark"] .pipeline-column,body[data-theme="dark"] .hbar-track,body[data-theme="dark"] .micro-progress{background:#1d2a3d}body[data-theme="dark"] .info-donut:after,body[data-theme="dark"] .info-ring:before{background:#111d2e;box-shadow:0 0 0 1px #293951}body[data-theme="dark"] .info-donut strong,body[data-theme="dark"] .info-ring-core strong,body[data-theme="dark"] .hbar-label strong,body[data-theme="dark"] .donut-legend-row strong{color:#e8eef8}body[data-theme="dark"] .donut-legend-row{border-color:#293951}body[data-theme="dark"] .qc-metrics>div{background:#152338}body[data-theme="dark"] .customer-track-overview{background:#132136;border-color:#293951}body[data-theme="dark"] .customer-track-copy>strong{color:#e9eef7}

@media(max-width:1250px){.v15-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v15-project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v15-attention-strip{grid-template-columns:repeat(3,1fr)}.v15-attention-strip>div{grid-column:1/-1}.stage-pipeline{min-width:850px}.v15-panel-wide{overflow:hidden}}
@media(max-width:900px){.v15-command-hero{grid-template-columns:1fr;padding:24px}.v15-scoreboard{display:grid;grid-template-columns:repeat(3,1fr)}.v15-dashboard-layout{grid-template-columns:1fr}.analytics-hero{align-items:flex-start;flex-direction:column}.analytics-hero-stats{min-width:0;width:100%}.project-intelligence-grid{grid-template-columns:repeat(2,1fr)}.donut-layout{grid-template-columns:160px 1fr}.info-donut{width:150px;height:150px}.v15-attention-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.v15-command-hero{border-radius:21px;padding:20px}.v15-hero-copy h2{font-size:29px}.v15-scoreboard{grid-template-columns:1fr}.v15-kpi-grid{grid-template-columns:1fr}.v15-project-card-grid{grid-template-columns:1fr}.v15-dashboard-layout{gap:11px;margin-top:11px}.v15-panel{padding:15px;border-radius:17px}.donut-layout{grid-template-columns:1fr}.qc-infographic{grid-template-columns:1fr}.v15-attention-strip{grid-template-columns:1fr}.v15-attention-strip>div{grid-column:auto}.analytics-hero{padding:20px}.analytics-hero h2{font-size:27px}.analytics-hero-stats{grid-template-columns:1fr}.project-intelligence-grid{grid-template-columns:1fr}.customer-track-overview{grid-template-columns:1fr;text-align:center}.mini-stage-strip{gap:2px}.mini-stage{height:22px}.line-axis-labels span{font-size:6px}.v15-panel-head{align-items:flex-start}.v15-panel-head .panel-number{font-size:14px}}

/* v26 Driver Delivery Command */
.dispatch-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 26px;border-radius:22px;background:linear-gradient(135deg,#071a3d 0%,#0d3f88 58%,#1769e0 100%);color:#fff;box-shadow:0 18px 42px rgba(9,44,101,.18)}
.dispatch-hero h2{margin:4px 0 8px;font-size:28px;color:#fff}.dispatch-hero p{margin:0;color:#dbeafe;max-width:760px}.dispatch-hero .page-kicker{color:#93c5fd}.dispatch-progress-ring{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);border:8px solid rgba(255,255,255,.22);flex:0 0 96px}.dispatch-progress-ring strong{font-size:24px;line-height:1}.dispatch-progress-ring span{font-size:11px;color:#dbeafe;margin-top:-18px}.delivery-progress,.mini-delivery-progress{height:8px;background:#e9eef7;border-radius:20px;overflow:hidden}.delivery-progress{margin-top:10px;height:10px}.delivery-progress i,.mini-delivery-progress i{display:block;height:100%;background:linear-gradient(90deg,#1769e0,#10b981);border-radius:inherit}.mini-delivery-progress{width:150px;margin:7px 0 3px;height:6px}
.dispatch-step-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px}.dispatch-step{margin:0}.dispatch-step button{width:100%;min-height:118px;text-align:left;border:1px solid #dfe7f3;background:#fff;border-radius:16px;padding:14px;cursor:pointer;transition:.18s;display:flex;flex-direction:column;gap:7px}.dispatch-step button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,63,135,.1);border-color:#9cc2f6}.dispatch-step button>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf3fb;color:#5f6f86;font-weight:800}.dispatch-step button b{font-size:13px;color:#132544}.dispatch-step button small{font-size:11px;color:#7a8797}.dispatch-step.done button{background:#f1fbf7;border-color:#b7ead5}.dispatch-step.done button>span{background:#14a36d;color:#fff}.dispatch-step.current button{background:#eef6ff;border:2px solid #2f7fe8;box-shadow:0 8px 22px rgba(47,127,232,.12)}.dispatch-step.current button>span{background:#1769e0;color:#fff}.dispatch-step.next button{opacity:.9}
.evidence-upload-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.evidence-upload-card{border:1px solid #dce6f3;border-radius:18px;padding:16px;background:#fbfdff;display:flex;flex-direction:column;gap:9px}.evidence-upload-card .evidence-icon{font-size:26px}.evidence-upload-card strong{color:#122645}.evidence-upload-card small{color:#77859a;min-height:30px}.evidence-upload-card input[type=file]{font-size:12px;padding:9px;background:#fff}.dispatch-evidence-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:18px}.dispatch-evidence-item{display:flex;gap:10px;padding:10px;border:1px solid #e1e8f2;border-radius:14px;text-decoration:none;background:#fff;align-items:center}.dispatch-evidence-item img,.file-proof{width:72px;height:58px;border-radius:10px;object-fit:cover;background:#eef3f9}.file-proof{display:grid;place-items:center;font-size:10px;font-weight:800;color:#4a5d75}.dispatch-evidence-item span{display:flex;flex-direction:column;gap:4px}.dispatch-evidence-item b{font-size:12px;color:#172c4d}.dispatch-evidence-item small{font-size:10px;color:#7b8899}.delivery-activity{display:grid;gap:12px}.delivery-activity>div{display:flex;gap:12px;align-items:flex-start}.delivery-activity>div>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#eaf9f2;color:#0d9b64;font-weight:900}.delivery-activity section{padding-bottom:12px;border-bottom:1px solid #edf1f6;flex:1}.delivery-activity b{display:block;color:#172c4d}.delivery-activity small{display:block;color:#7d8998;margin-top:3px}.driver-help{display:grid;grid-template-columns:34px 1fr;gap:12px 10px;align-items:start}.driver-help b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eaf2ff;color:#1769e0}.driver-help span{padding-top:5px;color:#52637a}
@media(max-width:980px){.evidence-upload-grid{grid-template-columns:repeat(2,1fr)}.dispatch-hero{align-items:flex-start}.dispatch-progress-ring{width:82px;height:82px;flex-basis:82px}}
@media(max-width:640px){.dispatch-hero{padding:18px;flex-direction:column}.dispatch-progress-ring{align-self:flex-end;margin-top:-64px}.dispatch-hero h2{font-size:22px;padding-right:90px}.dispatch-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-step button{min-height:108px;padding:11px}.evidence-upload-grid{grid-template-columns:1fr}.mini-delivery-progress{width:110px}}

/* =========================================================
   v27 · FINAL UI POLISH — SVG NAVIGATION + OPERATIONS CLARITY
   ========================================================= */
.ui-svg{display:block;max-width:100%;max-height:100%;pointer-events:none}
.sidebar{width:294px;padding:14px 14px 13px;background:linear-gradient(180deg,#06152f 0%,#082a5a 52%,#0b4d91 145%)!important;box-shadow:20px 0 48px rgba(4,22,55,.18)}
.main{margin-left:294px}
.brand{margin:0 3px 8px;padding:4px 3px 10px;border-bottom:1px solid rgba(255,255,255,.07)}
.brand-mark{box-shadow:0 10px 28px rgba(0,0,0,.15),inset 0 0 0 1px rgba(255,255,255,.65)}
.workspace-chip{margin:2px 3px 8px;padding:11px 12px;border-radius:15px;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.055));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.sidebar nav{padding:2px 1px 12px}
.nav-section{display:flex;align-items:center;gap:9px;padding:13px 11px 5px;color:#7e9dcc}
.nav-section span{font-size:9px;font-weight:900;letter-spacing:.16em;white-space:nowrap}
.nav-section i{height:1px;flex:1;background:linear-gradient(90deg,rgba(143,177,222,.24),transparent);border-radius:999px}
.nav-link{--nav-accent:#73a8e6;min-height:47px;gap:11px;padding:7px 9px;margin:2px 0;border-radius:13px;color:#dbe9fb;font-size:12px;font-weight:720;letter-spacing:-.005em;border:1px solid transparent}
.nav-link.group-overview{--nav-accent:#70a5ff}.nav-link.group-operations{--nav-accent:#4aa7ff}.nav-link.group-crm{--nav-accent:#8b7cf6}.nav-link.group-supply-chain{--nav-accent:#ff9e4a}.nav-link.group-service{--nav-accent:#48c997}.nav-link.group-network{--nav-accent:#34c7d9}.nav-link.group-management{--nav-accent:#b188ff}
.nav-link:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--nav-accent) 13%,transparent),rgba(255,255,255,.055));border-color:color-mix(in srgb,var(--nav-accent) 21%,transparent);transform:translateX(3px);box-shadow:0 7px 18px rgba(3,20,48,.08)}
.nav-ico{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--nav-accent) 10%,rgba(255,255,255,.06));border:1px solid color-mix(in srgb,var(--nav-accent) 18%,rgba(255,255,255,.06));color:color-mix(in srgb,var(--nav-accent) 74%,#fff);font-size:0;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}
.nav-link:hover .nav-ico{transform:scale(1.04);background:color-mix(in srgb,var(--nav-accent) 18%,rgba(255,255,255,.07));border-color:color-mix(in srgb,var(--nav-accent) 34%,rgba(255,255,255,.10));color:#fff}
.nav-link.active{background:linear-gradient(100deg,color-mix(in srgb,var(--page-accent,#2f80ed) 25%,rgba(255,255,255,.10)),rgba(255,255,255,.07))!important;border-color:color-mix(in srgb,var(--page-accent,#2f80ed) 35%,rgba(255,255,255,.08));box-shadow:inset 3px 0 0 color-mix(in srgb,var(--page-accent,#2f80ed) 86%,#fff),inset 0 0 0 1px rgba(255,255,255,.035),0 9px 24px rgba(2,20,50,.12)!important;transform:none}
.nav-link.active .nav-ico{background:linear-gradient(145deg,color-mix(in srgb,var(--page-accent,#2f80ed) 90%,#fff),var(--page-accent,#2f80ed))!important;border-color:rgba(255,255,255,.22);color:#fff;box-shadow:0 8px 22px color-mix(in srgb,var(--page-accent,#2f80ed) 28%,transparent)!important}
.nav-link.active .nav-text{color:#fff;font-weight:820}
.nav-current{margin-left:auto;width:8px;height:8px;background:#ffd06e;box-shadow:0 0 0 5px rgba(255,208,110,.10),0 0 12px rgba(255,184,68,.42)}
.sidebar-foot{padding:10px 11px;border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.055));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.sidebar-logout,.profile-wrap .logout{font-size:0}.sidebar-logout .ui-svg,.profile-wrap .logout .ui-svg{width:16px;height:16px}
.sidebar-logout:hover{background:rgba(255,255,255,.14);color:#fff}
.topbar{height:80px;padding:0 30px;background:rgba(255,255,255,.92);box-shadow:0 1px 0 rgba(23,52,88,.06),0 8px 30px rgba(23,52,88,.035)}
.topbar:after{height:2px;width:160px;background:linear-gradient(90deg,var(--page-accent,#1567e9) 0%,color-mix(in srgb,var(--page-accent,#1567e9) 45%,transparent) 58%,transparent)}
.page-head h1{letter-spacing:-.035em}
.command-search,.theme-toggle,.profile-wrap{border-color:#e3ebf5;box-shadow:0 5px 14px rgba(27,55,91,.035)}
.command-search:hover,.theme-toggle:hover{border-color:color-mix(in srgb,var(--page-accent,#2f80ed) 22%,#dce5f0);background:#f8fbff}
.top-action-ico{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#edf4fd;color:#527195}
.top-create .top-action-ico{width:24px;height:24px;background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.12)}
.top-create{box-shadow:0 10px 23px color-mix(in srgb,var(--page-accent,#1769e8) 18%,transparent)}
.top-create:hover{transform:translateY(-1px);box-shadow:0 13px 28px color-mix(in srgb,var(--page-accent,#1769e8) 24%,transparent)}
.content{padding:24px 28px 34px;background:radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--page-accent,#2f80ed) 6%,transparent),transparent 27%),linear-gradient(180deg,#f5f9fe 0,#f3f7fc 100%)}
.card{border-color:#dfe8f3;box-shadow:0 10px 30px rgba(22,49,85,.06)}
.card:hover{box-shadow:0 13px 34px rgba(22,49,85,.075)}
.form-control,.form-select,textarea{border-color:#d8e4f1;background:#fff;box-shadow:inset 0 1px 2px rgba(23,52,88,.025);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.form-control:hover,.form-select:hover,textarea:hover{border-color:#c6d7ea}
.form-group label{font-weight:850;color:#526985;letter-spacing:.02em}
.btn{border-radius:10px;min-height:38px;padding:8px 13px;box-shadow:0 5px 13px rgba(25,53,90,.05)}
.btn-primary{background:linear-gradient(135deg,color-mix(in srgb,var(--page-accent,#1769e8) 94%,#fff),color-mix(in srgb,var(--page-accent,#1055c9) 82%,#061f46));box-shadow:0 8px 20px color-mix(in srgb,var(--page-accent,#1769e8) 18%,transparent)}
.btn-secondary{background:linear-gradient(180deg,#f7f9fc,#eff4f9)}
.table-wrap{box-shadow:inset 0 0 0 1px rgba(224,232,242,.6)}
.table th{letter-spacing:.055em}
.alert{box-shadow:0 8px 22px rgba(25,53,90,.06)}

/* Dispatch receives an operational orange accent and tighter final layout. */
body[data-page="dispatch"],body[data-page="dispatch_view"],body[data-page="drivers"]{--page-accent:#ef6d28}
body[data-page="dispatch"] .card:first-of-type{position:relative;overflow:hidden}
body[data-page="dispatch"] .card:first-of-type:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,#f05d5e,#ff9f43,#ffd166)}
body[data-page="dispatch"] .form-grid{gap:15px 17px}
body[data-page="dispatch"] .form-control,body[data-page="dispatch"] .form-select,body[data-page="dispatch"] textarea{min-height:47px;border-radius:12px}
body[data-page="dispatch"] textarea{min-height:92px}

/* Complete page accent coverage for consistent active navigation. */
body[data-page="dashboard"],body[data-page="analytics"]{--page-accent:#2f80ed}
body[data-page="customers"]{--page-accent:#06a7c7}body[data-page="quotations"]{--page-accent:#ef8f19}body[data-page="invoices"]{--page-accent:#6957e8}body[data-page="ledger"]{--page-accent:#13a06b}body[data-page="approvals"]{--page-accent:#8b5cf6}body[data-page="documents"]{--page-accent:#4486d8}
body[data-page="orders"]{--page-accent:#e98924}body[data-page="eway_bills"]{--page-accent:#0f9c94}
body[data-page="maintenance"]{--page-accent:#16a074}body[data-page="tickets"]{--page-accent:#e8528f}
body[data-page="partners"],body[data-page="employees"]{--page-accent:#039bb8}
body[data-page="reports"],body[data-page="audit"],body[data-page="settings"],body[data-page="admin_profiles"],body[data-page="access_control"]{--page-accent:#7357e8}

body[data-theme="dark"] .nav-link:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--nav-accent) 15%,transparent),rgba(255,255,255,.04))}
body[data-theme="dark"] .content{background:radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--page-accent,#2f80ed) 8%,transparent),transparent 28%),#0d1827}
body[data-theme="dark"] .top-action-ico{background:#16263a;color:#abc2de}
body[data-theme="dark"] .card{box-shadow:0 10px 30px rgba(0,0,0,.13)}

@media(max-width:1100px){.sidebar{width:282px}.main{margin-left:282px}.topbar{padding:0 22px}.content{padding-left:22px;padding-right:22px}}
@media(max-width:900px){.sidebar{width:294px}.main{margin-left:0}.topbar{padding:0 16px}.content{padding:20px 16px 28px}}
@media(max-width:640px){.nav-link{min-height:46px}.topbar{height:72px}.content{padding:14px 12px 24px}.card{border-radius:17px}}

/* v28 — WhatsApp Work Links & Payment Sharing */
.btn-whatsapp{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;background:#ecfdf3!important;border:1px solid #b9ebcc!important;color:#08783f!important;box-shadow:0 4px 12px rgba(20,143,79,.08)!important;font-weight:850!important}.btn-whatsapp:hover{background:#dcf8e7!important;border-color:#85dca7!important;color:#056934!important;transform:translateY(-1px)}.wa-mark{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 4px;border-radius:999px;background:#16a35b;color:#fff;font-size:7px;font-weight:950;letter-spacing:.04em;line-height:1}.btn-sm.btn-whatsapp .wa-mark{min-width:18px;height:18px;font-size:6px}.whatsapp-action-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.whatsapp-action-row .btn{margin:0}.row-actions .btn-whatsapp{white-space:nowrap}body[data-theme="dark"] .btn-whatsapp{background:#123423!important;border-color:#235b3d!important;color:#8be0ad!important}body[data-theme="dark"] .btn-whatsapp:hover{background:#17452d!important;border-color:#2e7a50!important;color:#b7f2ce!important}@media(max-width:760px){.btn-whatsapp{white-space:normal;text-align:center}.section-title>.row-actions{width:100%;justify-content:flex-start}}

/* v30 — Feasibility separated from Net Metering */
.info-banner{padding:14px 16px;border:1px solid #d8e5f3;border-left:4px solid var(--page-accent,#6d5be7);border-radius:12px;background:linear-gradient(135deg,#f8fbff,#f3f7ff);color:#506782;line-height:1.55}.info-banner strong{color:#17345b}body[data-theme="dark"] .info-banner{background:#13243a;border-color:#2a4668;color:#abc1da}body[data-theme="dark"] .info-banner strong{color:#e7f1ff}


/* v35 manual workflow completion — compact dual-action controls */
.workflow-job{grid-template-columns:15px minmax(0,1fr) auto}.wf-job-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.wf-mark-form{display:inline-flex;margin:0}.wf-mark-done,.wf-mark-undo{appearance:none;border:0;cursor:pointer;font:inherit;font-size:8px;font-weight:950;line-height:1;padding:7px 9px;border-radius:8px;white-space:nowrap}.wf-mark-done{background:#eaf9f2;color:#087c53;border:1px solid #bfead7}.wf-mark-done:hover{background:#dff5eb;transform:translateY(-1px)}.wf-mark-undo{background:#f6f8fb;color:#66758b;border:1px solid #dfe6ee}.wf-manual-done{font-size:8px;font-weight:950;color:#087c53;background:#eaf9f2;border:1px solid #c6edda;padding:7px 9px;border-radius:8px;white-space:nowrap}.wf-job-detail{display:block;margin-top:3px;font-style:normal;font-size:7px;line-height:1.35;color:#9aa6b5}.wf-legend-note{margin-left:auto;color:#4a6079!important;background:#eef6ff;border:1px solid #d7e9ff;padding:5px 8px;border-radius:8px}.workflow-job.state-completed .wf-job-copy strong{color:#167a58}
@media(max-width:780px){.workflow-job{grid-template-columns:13px minmax(0,1fr)}.wf-job-actions{grid-column:2;justify-content:flex-start}.wf-legend-note{margin-left:0;width:100%}}
/* LEA ENERGY v17 — SOLAR ERP COMMAND CENTRE FULL RELEASE
   Dedicated file name prevents stale Hostinger/browser cache from reusing an older dashboard stylesheet. */
:root{
  --erp-navy:#071b3c;--erp-blue:#1463df;--erp-cyan:#06a6d7;--erp-green:#0aa66d;--erp-orange:#f28a1b;
  --erp-purple:#7652e8;--erp-red:#e3424f;--erp-pink:#d94c91;--erp-bg:#f3f7fc;--erp-card:#fff;--erp-ink:#17324f;
  --erp-muted:#75869b;--erp-line:#e3eaf3;--erp-shadow:0 12px 36px rgba(31,65,110,.08);
}
/* Global polish that remains safe for non-dashboard modules */
body:not([data-theme="dark"]){background:var(--erp-bg)}
.content{background:radial-gradient(circle at 82% -10%,rgba(40,129,230,.07),transparent 24%),linear-gradient(180deg,#f5f9fe 0,#f3f7fc 100%)}
.topbar{box-shadow:0 1px 0 rgba(25,54,92,.06)}
.sidebar{background:linear-gradient(180deg,#071731 0%,#0a2e63 58%,#0b4c8f 150%)!important}
.nav-link.active{background:linear-gradient(110deg,rgba(255,255,255,.16),rgba(255,255,255,.08))!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.10)}

.erp16-shell{max-width:1540px;margin:0 auto;padding-bottom:24px}.erp16-shell *{box-sizing:border-box}
.erp16-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.72fr);gap:32px;padding:34px 36px;border-radius:30px;overflow:hidden;color:#fff;background:linear-gradient(122deg,#061733 0%,#0a3476 46%,#0876a6 100%);box-shadow:0 28px 70px rgba(11,53,111,.20);isolation:isolate}
.erp16-hero:before{content:"";position:absolute;inset:auto -130px -190px auto;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(255,173,62,.45),rgba(255,173,62,0) 67%);z-index:-1}.erp16-hero:after{content:"";position:absolute;left:38%;top:-270px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(38,214,255,.25),rgba(38,214,255,0) 66%);z-index:-1}
.erp16-live{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900;letter-spacing:.10em;color:#d3eaff}.erp16-live span{width:8px;height:8px;border-radius:50%;background:#42e39a;box-shadow:0 0 0 5px rgba(66,227,154,.13);animation:erp16pulse 1.8s infinite}
.erp16-hero h2{font-size:42px;line-height:1.02;letter-spacing:-.05em;margin:20px 0 12px;max-width:720px}.erp16-hero h2 em{font-style:normal;background:linear-gradient(90deg,#ffd078,#ff9d30);-webkit-background-clip:text;background-clip:text;color:transparent}.erp16-hero p{max-width:730px;color:#c7d9ef;font-size:14px;line-height:1.75;margin:0}.erp16-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.erp16-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 15px;border-radius:12px;font-weight:800;font-size:11px;border:1px solid transparent;transition:.2s;text-decoration:none}.erp16-btn:hover{transform:translateY(-2px)}.erp16-btn-primary{background:linear-gradient(100deg,#ff9b31,#ffb743);color:#17263a;box-shadow:0 8px 22px rgba(243,149,44,.24)}.erp16-btn-glass{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.16);color:#fff}.erp16-btn.small{min-height:36px;padding:0 12px;font-size:10px}
.erp16-pulse-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-self:center}.erp16-ring{--p:0;--ring:#38bdf8;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--ring) calc(var(--p)*1%),rgba(255,255,255,.13) 0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.erp16-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:linear-gradient(145deg,rgba(4,34,74,.96),rgba(9,69,122,.92));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.erp16-ring>div{position:relative;text-align:center;z-index:1}.erp16-ring strong{display:block;font-size:24px;letter-spacing:-.04em}.erp16-ring span{display:block;color:#bcd3eb;font-size:8px;line-height:1.35;margin-top:3px;text-transform:uppercase;letter-spacing:.06em}

.erp16-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:16px 0}.erp16-kpi{--tone:#1463df;--soft:#edf4ff;position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 20px;align-items:center;gap:11px;padding:15px 14px;background:#fff;border:1px solid var(--erp-line);border-radius:18px;box-shadow:0 7px 24px rgba(28,59,101,.055);overflow:hidden;text-decoration:none;transition:.22s}.erp16-kpi:after{content:"";position:absolute;width:105px;height:105px;border-radius:50%;right:-48px;bottom:-55px;background:var(--soft)}.erp16-kpi:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(28,59,101,.11);border-color:#d6e1ef}.erp16-kpi-icon{width:42px;height:42px;border-radius:14px;background:var(--soft);display:grid;place-items:center;color:var(--tone);font-size:17px;font-weight:950}.erp16-kpi>div{min-width:0;position:relative;z-index:1}.erp16-kpi small{display:block;color:#8090a5;font-size:7px;font-weight:900;letter-spacing:.08em}.erp16-kpi strong{display:block;color:#173451;font-size:23px;line-height:1.1;letter-spacing:-.04em;margin:3px 0}.erp16-kpi em{display:block;font-style:normal;color:#8a98a9;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erp16-kpi>b{position:relative;z-index:1;color:var(--tone);font-size:16px}.erp16-kpi.blue{--tone:#2563eb;--soft:#edf4ff}.erp16-kpi.cyan{--tone:#0891b2;--soft:#ecfeff}.erp16-kpi.green{--tone:#059669;--soft:#ecfdf5}.erp16-kpi.orange{--tone:#e66d11;--soft:#fff7ed}.erp16-kpi.purple{--tone:#7c3aed;--soft:#f5f3ff}.erp16-kpi.red{--tone:#dc3b48;--soft:#fff1f2}

.erp16-command-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.8fr);gap:14px;margin-top:14px}.erp16-command-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.erp16-card{background:#fff;border:1px solid var(--erp-line);border-radius:22px;padding:20px;box-shadow:var(--erp-shadow);min-width:0;overflow:hidden}.erp16-card-wide{grid-row:span 2}.erp16-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.erp16-card-head>div{min-width:0}.erp16-card-head span{display:block;font-size:8px;font-weight:950;letter-spacing:.11em;color:#7d8da1;text-transform:uppercase}.erp16-card-head h3{font-size:18px;line-height:1.2;letter-spacing:-.025em;color:#173451;margin:5px 0 4px}.erp16-card-head p{margin:0;color:#8997a9;font-size:9px;line-height:1.55}.erp16-card-head>a{white-space:nowrap;color:#1760be;font-size:9px;font-weight:850;background:#f3f7fd;border:1px solid #e2eaf4;padding:7px 9px;border-radius:9px}

.erp16-stage-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;position:relative}.erp16-stage{--s:#2563eb;--ss:#eef4ff;position:relative;min-height:132px;border:1px solid color-mix(in srgb,var(--s) 16%,#e4ebf4);border-radius:16px;background:linear-gradient(180deg,#fff,var(--ss));padding:13px 12px;text-decoration:none;overflow:hidden;transition:.2s}.erp16-stage:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--s)}.erp16-stage:hover{transform:translateY(-3px);box-shadow:0 12px 28px color-mix(in srgb,var(--s) 15%,transparent)}.erp16-stage-top{display:flex;justify-content:space-between;align-items:center}.erp16-stage-top span{width:29px;height:29px;border-radius:9px;background:var(--s);color:#fff;display:grid;place-items:center;font-size:8px;font-weight:950}.erp16-stage-top strong{font-size:25px;color:#173451;letter-spacing:-.04em}.erp16-stage-meter{height:5px;background:#eaf0f6;border-radius:99px;overflow:hidden;margin:12px 0 10px}.erp16-stage-meter i{display:block;height:100%;background:var(--s);border-radius:99px}.erp16-stage h4{font-size:10px;line-height:1.25;color:#314861;margin:0 0 5px}.erp16-stage small{font-size:8px;color:#8291a4}.erp16-stage.s1{--s:#2563eb;--ss:#f4f8ff}.erp16-stage.s2{--s:#06a6d7;--ss:#f1fcff}.erp16-stage.s3{--s:#7652e8;--ss:#f7f5ff}.erp16-stage.s4{--s:#d9a20f;--ss:#fffbed}.erp16-stage.s5{--s:#f07818;--ss:#fff8f0}.erp16-stage.s6{--s:#14a892;--ss:#effcf8}.erp16-stage.s7{--s:#e3424f;--ss:#fff4f5}.erp16-stage.s8{--s:#4f55d8;--ss:#f4f5ff}.erp16-stage.s9{--s:#28a65c;--ss:#f2fbf5}.erp16-stage.s10{--s:#d94c91;--ss:#fff3f9}

.erp16-money-main{display:flex;align-items:baseline;gap:9px}.erp16-money-main strong{font-size:31px;letter-spacing:-.045em;color:#173451}.erp16-money-main span{font-size:9px;color:#8a98aa}.erp16-money-track{height:9px;border-radius:99px;background:#edf2f7;overflow:hidden;margin:12px 0}.erp16-money-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#10b981,#22c55e,#65d988)}.erp16-money-split{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:14px}.erp16-money-split>div{padding:9px 10px;border-radius:11px;background:#f7f9fc;border:1px solid #edf1f6}.erp16-money-split small{display:block;color:#8b98a9;font-size:7px}.erp16-money-split b{display:block;color:#31465e;font-size:10px;margin-top:3px}.erp16-trend-title{display:flex;justify-content:space-between;border-top:1px solid #eef2f6;padding-top:12px}.erp16-trend-title span{font-size:8px;color:#697b90;font-weight:850}

.erp16-alert-list{display:flex;flex-direction:column;gap:8px}.erp16-alert-list a{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;background:#f8fafc;border:1px solid #eef2f6;text-decoration:none;transition:.18s}.erp16-alert-list a:hover{transform:translateX(3px);border-color:#dce6f2;background:#fff;box-shadow:0 7px 20px rgba(28,58,97,.07)}.erp16-alert-list i{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-style:normal;font-weight:950;font-size:13px}.erp16-alert-list i.purple{color:#7c3aed;background:#f5f3ff}.erp16-alert-list i.red{color:#dc2626;background:#fff1f2}.erp16-alert-list i.orange{color:#e66d11;background:#fff7ed}.erp16-alert-list i.pink{color:#d9468c;background:#fff1f7}.erp16-alert-list i.green{color:#059669;background:#ecfdf5}.erp16-alert-list strong{display:block;color:#30465e;font-size:9px}.erp16-alert-list small{display:block;color:#919dad;font-size:7px;margin-top:2px}.erp16-alert-list b{font-size:19px;color:#173451;letter-spacing:-.04em}

.erp16-health-grid{display:grid;grid-template-columns:repeat(2,112px);gap:16px;justify-content:center;margin:6px 0 16px}.erp16-mini-ring{--p:0;--c:#2563eb;width:108px;height:108px;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--c) calc(var(--p)*1%),#edf2f7 0)}.erp16-mini-ring:before{content:"";position:absolute;inset:11px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #edf1f5}.erp16-mini-ring strong,.erp16-mini-ring span{position:relative;z-index:1}.erp16-mini-ring strong{font-size:21px;color:#173451}.erp16-mini-ring span{font-size:7px;color:#8594a7;margin-top:-24px;text-transform:uppercase;font-weight:850}.erp16-health-rows{display:grid;gap:6px}.erp16-health-rows>div{display:flex;justify-content:space-between;align-items:center;padding:8px 9px;border-bottom:1px solid #eef2f6}.erp16-health-rows span{font-size:8px;color:#718197}.erp16-health-rows strong{font-size:10px;color:#2f465e}

.erp16-recent{margin-top:14px}.erp16-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.erp16-project{position:relative;background:linear-gradient(180deg,#fff,#f9fbfd);border:1px solid #e5ebf3;border-radius:16px;padding:14px;text-decoration:none;transition:.2s;overflow:hidden}.erp16-project:after{content:"";position:absolute;width:105px;height:105px;border-radius:50%;right:-55px;top:-55px;background:#f1f6fc}.erp16-project:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(28,58,97,.10)}.erp16-project-head{display:flex;justify-content:space-between;gap:7px;align-items:center;position:relative;z-index:1}.erp16-project-head .stage{--s:#2563eb;color:var(--s);background:color-mix(in srgb,var(--s) 9%,white);border:1px solid color-mix(in srgb,var(--s) 18%,white);font-size:7px;font-weight:950;letter-spacing:.08em;border-radius:999px;padding:5px 7px}.erp16-project-head .stage.s1{--s:#2563eb}.erp16-project-head .stage.s2{--s:#06a6d7}.erp16-project-head .stage.s3{--s:#7652e8}.erp16-project-head .stage.s4{--s:#d9a20f}.erp16-project-head .stage.s5{--s:#f07818}.erp16-project-head .stage.s6{--s:#14a892}.erp16-project-head .stage.s7{--s:#e3424f}.erp16-project-head .stage.s8{--s:#4f55d8}.erp16-project-head .stage.s9{--s:#28a65c}.erp16-project-head .stage.s10{--s:#d94c91}.erp16-project>strong{display:block;color:#1d62be;font-size:9px;margin-top:13px;position:relative;z-index:1}.erp16-project h4{font-size:13px;color:#2c435c;margin:4px 0 8px;position:relative;z-index:1}.erp16-project-meta{display:flex;gap:6px;flex-wrap:wrap;position:relative;z-index:1}.erp16-project-meta span{font-size:7px;color:#6f8095;background:#f2f6fa;border-radius:7px;padding:4px 6px}.erp16-project-progress{height:5px;background:#edf2f7;border-radius:99px;overflow:hidden;margin:11px 0 8px}.erp16-project-progress i{--s:#2563eb;display:block;height:100%;background:var(--s);border-radius:99px}.erp16-project-progress i.s1{--s:#2563eb}.erp16-project-progress i.s2{--s:#06a6d7}.erp16-project-progress i.s3{--s:#7652e8}.erp16-project-progress i.s4{--s:#d9a20f}.erp16-project-progress i.s5{--s:#f07818}.erp16-project-progress i.s6{--s:#14a892}.erp16-project-progress i.s7{--s:#e3424f}.erp16-project-progress i.s8{--s:#4f55d8}.erp16-project-progress i.s9{--s:#28a65c}.erp16-project-progress i.s10{--s:#d94c91}.erp16-project>small{font-size:7px;color:#8a98aa}.erp16-zero{text-align:center;padding:35px 20px;background:linear-gradient(180deg,#fbfdff,#f6f9fc);border:1px dashed #d9e4ef;border-radius:16px}.erp16-zero>div{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;margin:auto;background:#fff4e6;font-size:23px}.erp16-zero h4{color:#233e5a;font-size:16px;margin:10px 0 5px}.erp16-zero p{color:#8a98aa;font-size:9px;margin:0 0 14px}

/* Stable CSS-native trend chart. No SVG/canvas = no black render failure. */
.erp-trend-bars{height:164px;display:grid;grid-template-columns:repeat(auto-fit,minmax(38px,1fr));gap:8px;align-items:end;padding:8px 2px 0}.erp-trend-col{height:100%;display:grid;grid-template-rows:18px 1fr 16px;gap:4px;text-align:center;min-width:0}.erp-trend-value{font-size:7px;color:#65768a;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erp-trend-track{height:100%;background:linear-gradient(180deg,#f6f9fc,#edf3f9);border-radius:8px 8px 3px 3px;display:flex;align-items:flex-end;overflow:hidden;border:1px solid #edf1f6}.erp-trend-track i{display:block;width:100%;min-height:4%;background:linear-gradient(180deg,#43b6ff,#2563eb);border-radius:7px 7px 2px 2px;box-shadow:0 -4px 14px rgba(37,99,235,.12)}.erp-trend-col:nth-child(2n) .erp-trend-track i{background:linear-gradient(180deg,#3dd6cb,#0ea5a0)}.erp-trend-col span{font-size:7px;color:#8a98a9;font-weight:750}.erp-trend-bars.empty .erp-trend-track i{background:#dfe7f1}

/* Improve existing v15 analytics reliability after cache-bust */
.v15-panel,.analytics-hero,.v15-command-hero,.v15-kpi{max-width:100%}.stage-pipeline{overflow-x:auto;padding-bottom:6px}.line-chart{display:none!important}

/* Dark mode */
body[data-theme="dark"] .content{background:#0c1625}body[data-theme="dark"] .erp16-card,body[data-theme="dark"] .erp16-kpi,body[data-theme="dark"] .erp16-project{background:#101d2e;border-color:#29394e}body[data-theme="dark"] .erp16-card-head h3,body[data-theme="dark"] .erp16-kpi strong,body[data-theme="dark"] .erp16-money-main strong,body[data-theme="dark"] .erp16-alert-list b,body[data-theme="dark"] .erp16-project h4,body[data-theme="dark"] .erp16-mini-ring strong,body[data-theme="dark"] .erp16-stage-top strong{color:#e8eef7}body[data-theme="dark"] .erp16-stage{background:linear-gradient(180deg,#101d2e,#122238);border-color:#2b3c52}body[data-theme="dark"] .erp16-stage h4,body[data-theme="dark"] .erp16-money-split b,body[data-theme="dark"] .erp16-alert-list strong,body[data-theme="dark"] .erp16-health-rows strong{color:#cdd9e8}body[data-theme="dark"] .erp16-money-split>div,body[data-theme="dark"] .erp16-alert-list a{background:#142238;border-color:#263750}body[data-theme="dark"] .erp16-mini-ring:before{background:#101d2e;box-shadow:0 0 0 1px #29394e}body[data-theme="dark"] .erp-trend-track{background:#18263a;border-color:#26374d}body[data-theme="dark"] .erp16-project-meta span{background:#15243a;color:#9dadc1}

@keyframes erp16pulse{0%,100%{box-shadow:0 0 0 5px rgba(66,227,154,.13)}50%{box-shadow:0 0 0 9px rgba(66,227,154,.03)}}
@media(max-width:1380px){.erp16-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.erp16-stage-flow{grid-template-columns:repeat(5,minmax(115px,1fr))}.erp16-command-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.erp16-command-grid-3>.erp16-card:last-child{grid-column:1/-1}.erp16-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1080px){.erp16-hero{grid-template-columns:1fr;padding:28px}.erp16-pulse-panel{max-width:520px}.erp16-command-grid{grid-template-columns:1fr}.erp16-card-wide{grid-row:auto}.erp16-stage-flow{overflow-x:auto;display:flex;padding-bottom:5px}.erp16-stage{min-width:145px}.erp16-command-grid-3{grid-template-columns:1fr}.erp16-command-grid-3>.erp16-card:last-child{grid-column:auto}}
@media(max-width:760px){.erp16-shell{padding:0}.erp16-hero{border-radius:22px;padding:22px 19px}.erp16-hero h2{font-size:33px}.erp16-pulse-panel{grid-template-columns:repeat(3,1fr);gap:7px}.erp16-ring strong{font-size:18px}.erp16-ring span{font-size:6px}.erp16-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.erp16-kpi{grid-template-columns:38px minmax(0,1fr);padding:12px}.erp16-kpi>b{display:none}.erp16-kpi-icon{width:37px;height:37px}.erp16-kpi strong{font-size:19px}.erp16-card{border-radius:17px;padding:15px}.erp16-card-head h3{font-size:16px}.erp16-money-split{grid-template-columns:1fr}.erp16-project-grid{grid-template-columns:1fr}.erp16-health-grid{grid-template-columns:repeat(2,95px)}.erp16-mini-ring{width:92px;height:92px}.erp16-hero-actions{display:grid;grid-template-columns:1fr}.erp16-btn{width:100%}}
@media(max-width:480px){.erp16-kpis{grid-template-columns:1fr}.erp16-pulse-panel{grid-template-columns:1fr 1fr 1fr}.erp16-ring{min-width:0}.erp16-hero h2{font-size:29px}.erp16-hero p{font-size:12px}.erp16-live{font-size:8px}.erp-trend-bars{gap:4px}.erp-trend-value{font-size:6px}}


/* v17 full-release polish: CRM/network forms and command-centre hierarchy */
.erp-directory-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;margin-bottom:14px;border-radius:20px;background:linear-gradient(118deg,#071b3c,#0e4d99);color:#fff;box-shadow:0 16px 36px rgba(18,66,130,.15)}
.erp-directory-hero h2{margin:0 0 5px;font-size:22px}.erp-directory-hero p{margin:0;color:#cfe0f5;font-size:12px}.erp-directory-hero .btn{background:#ff9f1c;color:#10233d;border-color:#ff9f1c}
.entity-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.entity-card{background:#fff;border:1px solid var(--erp-line);border-radius:18px;padding:15px;box-shadow:0 8px 24px rgba(28,59,101,.055)}.entity-card-head{display:flex;justify-content:space-between;gap:10px}.entity-code{font-size:8px;color:#7d8da1;font-weight:900;letter-spacing:.08em}.entity-card h4{margin:5px 0 8px;color:#203d5d;font-size:14px}.entity-meta{display:grid;gap:5px;color:#718197;font-size:9px}.entity-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid #edf2f7}.login-state{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:850}.login-state.on{background:#e9fbf3;color:#0a8355}.login-state.off{background:#fff1f2;color:#c33b4d}
body[data-theme="dark"] .entity-card{background:#101d2e;border-color:#29394e}body[data-theme="dark"] .entity-card h4{color:#e8eef7}body[data-theme="dark"] .erp-directory-hero{background:linear-gradient(118deg,#071324,#0b3568)}
@media(max-width:1100px){.entity-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.entity-card-grid{grid-template-columns:1fr}.erp-directory-hero{align-items:flex-start;flex-direction:column}}

/* v20 Official Payment Centre */
.quotation-pay-panel,.customer-payment-centre{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:20px;align-items:center;background:linear-gradient(135deg,#f8fbff 0%,#eef6ff 100%);border:1px solid #d7e5f5;border-radius:18px;padding:18px;overflow:hidden}
.quotation-pay-panel{min-height:205px}.quotation-pay-info{min-width:0}.payment-kicker{font-size:11px;font-weight:900;letter-spacing:.09em;color:#0a2a66;margin-bottom:13px}.payment-bank-grid{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 12px;font-size:12px;line-height:1.45}.payment-bank-grid span{color:#7b8797}.payment-bank-grid strong{color:#0a2a66;overflow-wrap:anywhere}.quotation-pay-qr,.customer-payment-qr{background:#fff;border:1px solid #dce7f5;border-radius:16px;padding:10px;text-align:center;box-shadow:0 9px 24px rgba(11,53,111,.08)}.quotation-pay-qr img,.customer-payment-qr img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}.quotation-pay-qr b,.customer-payment-qr strong{display:block;color:#0a2a66;font-size:11px;margin-top:8px}.quotation-pay-qr small,.customer-payment-qr small{display:block;color:#64748b;font-size:10px;margin-top:3px;overflow-wrap:anywhere}.customer-payment-centre{grid-template-columns:minmax(0,1fr) 210px;margin-top:16px;background:linear-gradient(135deg,#071d48,#0d4c9c);border-color:#1c5aa8;color:#fff}.customer-payment-copy .payment-kicker{color:#9fc7ff}.customer-payment-copy h3{margin:4px 0 8px;font-size:22px;color:#fff}.customer-payment-copy p{margin:0 0 14px;color:#d6e7ff;font-size:13px;line-height:1.55}.customer-payment-centre .payment-bank-grid span{color:#a9c7ec}.customer-payment-centre .payment-bank-grid strong{color:#fff}.customer-payment-qr{background:#fff}.payment-upi-btn{display:inline-flex;margin-top:15px;background:#ff9f1c!important;border-color:#ff9f1c!important;color:#fff!important;box-shadow:0 8px 20px rgba(255,159,28,.28)}
@media(max-width:760px){.quotation-pay-panel,.customer-payment-centre{grid-template-columns:1fr}.quotation-pay-qr,.customer-payment-qr{max-width:280px;width:100%;margin:0 auto}.payment-bank-grid{grid-template-columns:100px minmax(0,1fr)}}

/* v21 — Document Quick Approval + Super Admin Profiles */
.document-review-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,.72fr);gap:18px;align-items:start}.document-review-main,.document-decision-panel{min-width:0}.document-view-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.document-preview-frame{height:560px;border:1px solid #dce7f3;border-radius:18px;overflow:hidden;background:#f7f9fc;box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)}.document-preview-frame iframe{width:100%;height:100%;border:0;background:#fff}.document-preview-unavailable{display:grid;gap:5px;padding:28px;border:1px dashed #ccd9e9;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f4f8fd);text-align:center;color:#6f8095}.document-preview-unavailable strong{color:#274361}.decision-panel-head>span{display:inline-block;color:#2563eb;font-size:9px;font-weight:950;letter-spacing:.12em}.decision-panel-head h3{margin:6px 0 6px;font-size:20px;color:#1d3857}.decision-panel-head p{margin:0 0 18px;color:#7a8ba0;font-size:11px;line-height:1.6}.decision-action-stack{display:grid;gap:9px;margin-top:14px}.decision-btn{appearance:none;width:100%;display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;column-gap:11px;align-items:center;text-align:left;border:1px solid transparent;border-radius:15px;padding:12px 14px;cursor:pointer;transition:.2s;font-family:inherit}.decision-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(28,59,101,.12)}.decision-btn>span{grid-row:1/3;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:19px;font-weight:900}.decision-btn b{font-size:12px}.decision-btn small{font-size:9px;opacity:.75}.decision-btn.approve{background:#eefbf5;border-color:#c5edda;color:#087a50}.decision-btn.approve>span{background:#d9f6e8}.decision-btn.reject{background:#fff2f3;border-color:#f2cbd0;color:#b92e40}.decision-btn.reject>span{background:#ffe2e5}.decision-btn.correction{background:#fff7eb;border-color:#f6dec1;color:#c56b0b}.decision-btn.correction>span{background:#ffebcc}.decision-btn.pending{background:#f5f7fa;border-color:#e2e8f0;color:#64748b}.decision-btn.pending>span{background:#e8edf4}.decision-history{display:grid;gap:3px;margin-top:16px;padding-top:14px;border-top:1px solid #edf2f7}.decision-history small{color:#8a98aa}.decision-history strong{color:#274361}.decision-history span{font-size:10px;color:#7b8797}
.approval-action-table td>small,.approval-quote-row small,.admin-profile-table td>small,.admin-person small{display:block;color:#8291a4;font-size:9px;margin-top:3px}.quick-doc-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.quick-doc-actions form{margin:0}.quick-doc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border:1px solid transparent;border-radius:9px;font-size:9px;font-weight:850;text-decoration:none;cursor:pointer;font-family:inherit;white-space:nowrap}.quick-doc-btn.view{background:#eef5ff;border-color:#d4e4fb;color:#1559b7}.quick-doc-btn.approve{background:#eafaf2;border-color:#c5ecd8;color:#087a50}.quick-doc-btn.reject{background:#fff0f2;border-color:#f1c8cd;color:#bc3041}.quick-doc-btn.correction{background:#fff5e8;border-color:#f2d9b8;color:#c46a08}.quick-doc-btn.review{background:#f4f2ff;border-color:#ddd7ff;color:#6b4bd8}.approval-quote-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #eef2f6}.approval-quote-row:last-child{border-bottom:0}
.admin-profile-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.admin-hero-count{min-width:150px;text-align:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:18px;padding:18px}.admin-hero-count strong{display:block;color:#fff;font-size:36px;line-height:1}.admin-hero-count span{display:block;color:#d6e8ff;font-size:10px;font-weight:900;letter-spacing:.08em;margin-top:7px}.admin-hero-count small{display:block;color:#74e3b1;font-size:10px;margin-top:5px}.admin-check{display:flex!important;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #dce7f3;border-radius:13px;background:#f8fbff;cursor:pointer}.admin-check input{margin-top:3px}.admin-check span{display:grid;gap:3px}.admin-check b{color:#28445f;font-size:11px}.admin-check small{color:#7b8797;font-size:9px}.admin-security-list{display:grid;gap:10px;margin-top:14px}.admin-security-list>div{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:11px;border:1px solid #e7edf5;border-radius:13px;background:#fafcff}.admin-security-list>div>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#eaf2ff;color:#1761c1;font-weight:900}.admin-security-list p{margin:0}.admin-security-list b{display:block;color:#29445f;font-size:11px}.admin-security-list small{display:block;color:#8493a6;font-size:9px;margin-top:2px}.admin-person{display:flex;align-items:center;gap:9px}.admin-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.admin-row-actions form{margin:0}.admin-reset-form{display:flex;gap:5px;align-items:center}.admin-reset-form .form-control{width:145px;min-height:32px;padding:5px 8px;font-size:9px}
body[data-theme="dark"] .document-preview-unavailable,body[data-theme="dark"] .admin-security-list>div,body[data-theme="dark"] .admin-check{background:#132237;border-color:#2a3b52;color:#b8c6d8}body[data-theme="dark"] .document-preview-frame{border-color:#2a3b52;background:#0f1b2c}body[data-theme="dark"] .decision-panel-head h3,body[data-theme="dark"] .admin-security-list b,body[data-theme="dark"] .admin-check b{color:#e8eef7}body[data-theme="dark"] .decision-btn.pending{background:#18263a;border-color:#2b3c52;color:#b7c3d3}
@media(max-width:1180px){.document-review-grid{grid-template-columns:1fr}.document-decision-panel{order:-1}.document-preview-frame{height:500px}.admin-profile-table{min-width:980px}}@media(max-width:760px){.document-preview-frame{height:420px}.document-view-actions{display:grid;grid-template-columns:1fr}.document-view-actions .btn{width:100%}.quick-doc-actions{min-width:440px}.admin-profile-hero{align-items:flex-start;flex-direction:column}.admin-hero-count{width:100%}.admin-reset-form{width:100%}.admin-reset-form .form-control{width:100%;min-width:160px}}

/* v22 — Employee / Partner Assignment Control */
.assignment-name{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;background:#eef5ff;border:1px solid #d8e7fb;color:#1f5da8;font-size:9px;font-weight:850;white-space:nowrap}.assignment-name.is-unassigned{background:#f5f7fa;border-color:#e3e8ef;color:#8a97a8}.row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.assignment-auto-note{display:grid;gap:5px;padding:15px 16px;border:1px solid #cfe2fb;border-radius:15px;background:linear-gradient(135deg,#f5f9ff,#eef6ff);box-shadow:inset 4px 0 0 #2f76dc}.assignment-auto-note strong{font-size:12px;color:#184f96}.assignment-auto-note span{font-size:10px;line-height:1.55;color:#63758a}.assignment-control-layout{max-width:980px}.assignment-control-card{overflow:hidden}.assignment-control-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;border-bottom:1px solid #edf2f7}.assignment-control-head>div>span{display:block;color:#2563eb;font-size:9px;font-weight:950;letter-spacing:.12em}.assignment-control-head h3{margin:6px 0 6px;color:#173d67;font-size:22px}.assignment-control-head p{margin:0;color:#7a8a9d;font-size:11px;line-height:1.55}.assignment-current{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.assignment-current>div{padding:13px;border:1px solid #e2eaf4;border-radius:14px;background:#f8fbff}.assignment-current small{display:block;color:#8190a3;font-size:8px;font-weight:900;letter-spacing:.08em}.assignment-current strong{display:block;margin-top:5px;color:#264867;font-size:11px;line-height:1.4}body[data-theme="dark"] .assignment-auto-note,body[data-theme="dark"] .assignment-current>div{background:#132237;border-color:#2a3b52}body[data-theme="dark"] .assignment-auto-note strong,body[data-theme="dark"] .assignment-control-head h3,body[data-theme="dark"] .assignment-current strong{color:#e8eef7}@media(max-width:760px){.assignment-current{grid-template-columns:1fr}.assignment-control-head{flex-direction:column}.assignment-name{white-space:normal}.row-actions{min-width:140px}}


/* v23 Tax Invoice / E-Way Bill */
.tax-invoice-sheet{max-width:1120px;margin:0 auto;background:#fff;color:#111;border:1px solid #222;box-shadow:0 12px 35px rgba(15,23,42,.08);padding:18px;font-size:13px}
.invoice-title{text-align:center;font-weight:900;font-size:20px;letter-spacing:.08em;border-bottom:1px solid #222;padding:4px 0 12px}
.invoice-head-grid{display:grid;grid-template-columns:1.4fr 1fr;border-left:1px solid #222;border-bottom:1px solid #222}
.invoice-company{display:flex;gap:14px;padding:14px;border-top:1px solid #222;border-right:1px solid #222}
.invoice-company img{width:76px;height:62px;object-fit:contain}
.invoice-company h2{font-size:17px;margin:0 0 5px}.invoice-company p{margin:3px 0;line-height:1.45;font-size:12px}
.invoice-meta-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #222}
.invoice-meta-grid>div{padding:9px 10px;min-height:58px;border-right:1px solid #222;border-bottom:1px solid #222}.invoice-meta-grid>div:nth-last-child(-n+2){border-bottom:0}
.invoice-meta-grid small,.invoice-party-grid small,.invoice-words small{display:block;text-transform:uppercase;letter-spacing:.05em;font-size:10px;color:#4b5563;font-weight:800;margin-bottom:5px}
.invoice-meta-grid strong{font-size:12px}
.invoice-party-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid #222;border-bottom:1px solid #222}
.invoice-party-grid>div{padding:13px;border-right:1px solid #222;min-height:150px}.invoice-party-grid h3{margin:4px 0 8px;font-size:15px}.invoice-party-grid p{margin:4px 0;line-height:1.55}
.invoice-items-table{border-collapse:collapse;margin:0}.invoice-items-table th,.invoice-items-table td{border:1px solid #333!important;font-size:11px!important;vertical-align:top}
.invoice-summary-grid{display:grid;grid-template-columns:1.35fr .8fr;border-left:1px solid #222;border-bottom:1px solid #222}.invoice-summary-grid>div{border-right:1px solid #222}
.invoice-words{padding:12px;border-bottom:1px solid #222}.invoice-words strong{display:block;margin-top:4px}
.invoice-bank{padding:12px;line-height:1.6}.invoice-bank h4,.invoice-terms h4{margin:0 0 7px;font-size:13px}
.invoice-totals>div{display:flex;justify-content:space-between;gap:16px;padding:8px 10px;border-bottom:1px solid #222}.invoice-totals>div:last-child{border-bottom:0}.invoice-totals .invoice-grand{font-size:15px;font-weight:900;background:#f3f4f6}
.invoice-eway-strip{padding:10px 12px;border:1px solid #222;border-top:0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.invoice-terms{padding:12px;border:1px solid #222;border-top:0;font-size:11px;line-height:1.55}
.invoice-sign{text-align:right;padding:14px 12px 8px;border-left:1px solid #222;border-right:1px solid #222}
.invoice-generated{text-align:center;border:1px solid #222;border-top:0;padding:8px;font-size:10px;color:#4b5563;font-weight:700;letter-spacing:.03em}
@media(max-width:850px){.invoice-head-grid,.invoice-party-grid,.invoice-summary-grid{grid-template-columns:1fr}.invoice-company,.invoice-meta-grid,.invoice-party-grid>div,.invoice-summary-grid>div{border-right:1px solid #222}.tax-invoice-sheet{padding:8px}.invoice-company{flex-direction:column}}
@media print{
  body[data-page="invoices"] .sidebar,body[data-page="invoices"] .topbar,body[data-page="invoices"] .footer,body[data-page="invoices"] .no-print,body[data-page="invoices"] .alert{display:none!important}
  body[data-page="invoices"] .main,body[data-page="invoices"] .content{margin:0!important;padding:0!important;width:100%!important;max-width:none!important}
  body[data-page="invoices"] .tax-invoice-sheet{box-shadow:none;border:0;max-width:none;margin:0;padding:4mm}
}


/* v29 Stage 03 — Single Loan Process */
.loan-process-panel{padding:18px 20px;border:1px solid #d7c8ff;border-radius:18px;background:linear-gradient(135deg,#fbf9ff 0%,#f6f9ff 55%,#fffaf3 100%);box-shadow:0 12px 30px rgba(72,52,130,.07)}
.loan-process-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.loan-process-heading h3{margin:2px 0 4px;color:#172b4d;font-size:20px}.loan-process-heading p{margin:0;color:#63738b;line-height:1.55;max-width:760px}
.loan-kicker{display:block;font-size:11px;letter-spacing:.11em;font-weight:900;color:#7c3aed}.loan-status-pill{display:inline-flex;align-items:center;min-height:34px;padding:6px 12px;border:1px solid #dacbff;border-radius:999px;background:#fff;color:#6938c6;font-size:12px;font-weight:900;box-shadow:0 6px 16px rgba(92,60,180,.08)}
.loan-process-details{display:none;margin-top:15px;padding-top:15px;border-top:1px dashed #d9def0}.loan-process-details.is-visible{display:block}.loan-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-doc-box{padding:13px 14px;border:1px solid #dce5f2;border-radius:14px;background:rgba(255,255,255,.8)}
.loan-doc-state{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.loan-doc-state strong{font-size:13px;color:#213653;overflow-wrap:anywhere}.loan-doc-empty{font-size:13px;color:#7a8799}.loan-doc-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.loan-doc-actions .btn{white-space:nowrap}
@media(max-width:760px){.loan-process-panel{padding:15px}.loan-process-heading{display:block}.loan-status-pill{margin-top:10px}.loan-detail-grid{grid-template-columns:1fr}.loan-doc-actions .btn{width:100%;justify-content:center}}


.loan-process-page-card{padding:14px 16px}.loan-page-toolbar{align-items:center}.loan-process-workspace{padding:0;overflow:hidden}.loan-process-workspace .loan-process-panel{border:0;border-radius:0;box-shadow:none;padding:24px 26px;background:linear-gradient(135deg,#fbf9ff 0%,#f6f9ff 55%,#fffaf3 100%)}
.loan-status-rail{display:flex;align-items:center;gap:10px;margin-top:18px}.loan-status-rail span{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:999px;background:#fff;border:1px solid #dce4ef;color:#728197;font-size:11px;font-weight:800}.loan-status-rail span.active{border-color:#9e76ff;background:#f1eaff;color:#6530c7;box-shadow:0 5px 15px rgba(101,48,199,.10)}.loan-status-rail i{height:2px;min-width:24px;flex:1;background:linear-gradient(90deg,#d8e0eb,#d5c6f7)}.loan-save-row{display:flex;align-items:center;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid #e4e8f1}.loan-save-row small{color:#748196}
@media(max-width:760px){.loan-status-rail{align-items:stretch;flex-direction:column}.loan-status-rail i{width:2px;height:12px;min-width:0;margin-left:18px}.loan-status-rail span{width:100%}.loan-save-row{align-items:stretch;flex-direction:column}.loan-process-workspace .loan-process-panel{padding:16px}}


/* v31 Registration & Feasibility command workspace */
.registration-page-card{padding:14px 16px}
.registration-command-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:18px;align-items:start}
.registration-main-card,.registration-side-card{position:relative;overflow:hidden}
.registration-main-card:before,.registration-side-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#2563eb,#7c3aed,#f59e0b)}
.registration-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.registration-heading h3{margin:3px 0 5px;color:#13294b;font-size:20px}.registration-heading p{margin:0;color:#687991;line-height:1.55;max-width:760px}
.registration-kicker{font-size:11px;font-weight:900;letter-spacing:.11em;color:#6d36d3}
.registration-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.registration-doc-card{margin-top:18px;padding:15px 16px;border:1px solid #dfe8f5;border-radius:16px;background:linear-gradient(135deg,#f8fbff,#fff);display:flex;justify-content:space-between;gap:15px;align-items:center}
.registration-doc-card>div:first-child{display:flex;flex-direction:column;gap:5px}.registration-doc-card small,.registration-reminder-head small{font-size:10px;font-weight:900;letter-spacing:.1em;color:#72839b}.registration-doc-card strong{color:#193153}.registration-doc-card em{font-style:normal;color:#b45309;font-size:12px}
.registration-reminder-card{margin-top:16px;padding:16px;border:1px solid #f2d7a0;border-radius:16px;background:linear-gradient(135deg,#fffaf0,#fff 70%)}
.registration-reminder-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.registration-reminder-head>div{display:flex;flex-direction:column;gap:2px}.registration-reminder-head strong{font-size:17px;color:#263a58}
.registration-reminder-actions{justify-content:flex-end;margin-top:4px}.registration-save-row{display:flex;align-items:center;gap:12px;margin-top:18px;padding-top:16px;border-top:1px dashed #dce5f2}.registration-save-row small{color:#74839a}
.registration-side-card{background:linear-gradient(160deg,#fbfdff,#f8f6ff)}
.registration-feas-state{padding:14px;border:1px solid #dbe5f1;border-radius:14px;background:#fff;display:flex;flex-direction:column;gap:7px}.registration-feas-state strong{color:#17304e}.registration-feas-state small{color:#77859b}
.registration-empty-doc{padding:20px 15px;border:1px dashed #cad7e8;border-radius:14px;background:rgba(255,255,255,.7);text-align:center}.registration-empty-doc strong{display:block;color:#344b68}.registration-empty-doc span{display:block;margin-top:5px;color:#7b8aa0;font-size:13px}
.registration-checklist{display:grid;gap:9px;margin-top:18px}.registration-checklist>div{display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid #e1e8f2;border-radius:12px;background:#fff;color:#64748b}.registration-checklist span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#edf2f7;color:#718096;font-size:11px;font-weight:900}.registration-checklist b{font-size:13px}.registration-checklist>div.done{border-color:#b7e4d2;background:#f2fbf7;color:#147957}.registration-checklist>div.done span{background:#21b77a;color:#fff}
@media(max-width:980px){.registration-command-grid{grid-template-columns:1fr}.registration-form-grid{grid-template-columns:1fr}}
@media(max-width:680px){.registration-heading,.registration-doc-card,.registration-save-row{flex-direction:column;align-items:stretch}.registration-doc-card .row-actions,.registration-reminder-actions{justify-content:stretch}.registration-doc-card .btn,.registration-reminder-actions .btn,.registration-save-row .btn{width:100%;justify-content:center}}

/* v32 Feasibility Letter application data */
.registration-command-grid{grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr)}
.feasibility-meta-form{padding:15px;border:1px solid #ddd8f7;border-radius:16px;background:linear-gradient(145deg,#ffffff,#faf8ff);box-shadow:0 8px 22px rgba(75,50,140,.05)}
.feasibility-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.feasibility-form-grid .form-group{margin:0}.feasibility-form-grid label{font-size:11px;font-weight:900;letter-spacing:.03em;color:#475b78}
.feasibility-form-grid .form-control,.feasibility-form-grid .form-select{min-height:44px;background:#fff}
.feasibility-save-row{margin-top:13px;padding-top:13px}.feasibility-save-row small{font-size:11px;line-height:1.4}
.feasibility-document-divider{display:flex;align-items:center;gap:10px;margin:18px 0 12px;color:#7b6c9f;font-size:10px;font-weight:900;letter-spacing:.11em}.feasibility-document-divider:before,.feasibility-document-divider:after{content:"";height:1px;flex:1;background:#ded9ec}
@media(max-width:1100px){.registration-command-grid{grid-template-columns:1fr}.feasibility-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.feasibility-form-grid{grid-template-columns:1fr}.feasibility-save-row{flex-direction:column;align-items:stretch}.feasibility-save-row .btn{width:100%;justify-content:center}}

/* v33 — Final alignment system + Registration/Feasibility UX polish */
.top-back{height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #dbe5f2;border-radius:11px;background:linear-gradient(180deg,#fff,#f3f7fb);color:#355474;font-size:11px;font-weight:850;cursor:pointer;box-shadow:0 5px 14px rgba(24,49,83,.05);flex:0 0 auto}.top-back span{font-size:18px;line-height:1;margin-top:-1px}.top-back:hover{border-color:#c3d5e8;background:#eef5fc;transform:translateY(-1px)}
.top-approval-alert{position:relative;display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 11px;border:1px solid #dce7f4;border-radius:12px;background:#fff;color:#53667f;font-size:10px;font-weight:850;box-shadow:0 5px 15px rgba(20,50,90,.04)}.top-approval-alert .approval-bell{display:grid;place-items:center;width:23px;height:23px;border-radius:8px;background:#edf4ff;color:#2c67bd;font-weight:950}.top-approval-alert i{position:absolute;right:-5px;top:-7px;min-width:19px;height:19px;padding:0 4px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;font-size:8px;font-style:normal;font-weight:950;border:2px solid #fff;box-shadow:0 4px 10px rgba(239,68,68,.25)}.top-approval-alert.has-pending{border-color:#ffd4d4;background:#fffafa;color:#b42318}.top-approval-alert.has-pending .approval-bell{background:#fff0f0;color:#d62e2e}

/* Cross-portal control alignment */
.form-grid{align-items:start}.form-group{min-width:0}.form-control,.form-select,textarea{min-height:44px}.form-group>label{line-height:1.25}.row-actions{min-height:38px}.card>.section-title:first-child{margin-top:0}.toolbar>.form-select,.toolbar>.form-control{min-height:42px}.toolbar .btn{min-height:42px}

/* Registration + Feasibility visual balance */
body[data-page="registration_feasibility"] .content{max-width:1580px}
.registration-page-card{padding:13px 15px}.registration-page-card .toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.registration-page-card .search{min-width:0;width:100%}.registration-page-card .btn{white-space:nowrap}
.registration-command-grid{grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);gap:18px;align-items:start}.registration-main-card,.registration-side-card{padding:22px 24px;border-radius:20px}.registration-heading{min-height:105px;margin-bottom:17px}.registration-heading>div{min-width:0}.registration-heading h3{font-size:21px;line-height:1.2}.registration-heading p{font-size:12px;line-height:1.55;max-width:690px}.registration-form-grid{column-gap:14px;row-gap:13px}.registration-form-grid .form-group,.feasibility-form-grid .form-group{display:flex;flex-direction:column;min-width:0}.registration-form-grid .form-group>label,.feasibility-form-grid .form-group>label{min-height:31px;align-items:flex-end;margin-bottom:6px;line-height:1.25}.registration-form-grid .form-control,.registration-form-grid .form-select,.feasibility-form-grid .form-control,.feasibility-form-grid .form-select{height:46px;min-height:46px}.registration-form-grid .form-group.full>label,.feasibility-form-grid .form-group.full>label{min-height:auto;align-items:center}

/* Name-match tick control */
.registration-match-group{min-width:0}.verification-toggle{position:relative;display:flex!important;align-items:center!important;gap:11px!important;min-height:46px;padding:7px 11px!important;margin:0!important;border:1px solid #d7e3ef;border-radius:11px;background:#fff;text-transform:none!important;letter-spacing:0!important;cursor:pointer;transition:.18s ease}.verification-toggle:hover{border-color:#bcd0e5;background:#fbfdff}.verification-toggle input{position:absolute;opacity:0;pointer-events:none}.verification-box{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;border:1.5px solid #c8d6e6;background:#f5f8fc;color:transparent;font-size:16px;font-weight:950;flex:0 0 auto;transition:.18s}.verification-copy{display:flex;flex-direction:column;gap:1px;min-width:0}.verification-copy b{font-size:11px;color:#415673;text-transform:none;letter-spacing:0}.verification-copy small{font-size:9px;color:#8a98aa;line-height:1.25;text-transform:none;letter-spacing:0;font-weight:650}.verification-toggle.is-checked{border-color:#9fdcc6;background:#f2fbf7;box-shadow:0 0 0 3px rgba(34,181,122,.07)}.verification-toggle.is-checked .verification-box{border-color:#21b77a;background:#21b77a;color:#fff;box-shadow:0 5px 12px rgba(33,183,122,.18)}.verification-toggle.is-checked .verification-copy b{color:#137454}.verification-toggle.readonly{cursor:default}

/* Document and reminder blocks align to one visual rhythm */
.registration-doc-card{min-height:88px;padding:14px 15px;margin-top:16px}.registration-doc-card .row-actions{justify-content:flex-end}.registration-doc-card .btn{min-width:74px}.registration-reminder-card{padding:15px;margin-top:15px}.registration-reminder-card .form-grid{gap:12px 14px}.registration-reminder-card .form-group>label{min-height:17px}.registration-save-row{min-height:58px;justify-content:flex-start}.registration-save-row .btn{min-width:190px}.registration-save-row small{line-height:1.4}

/* Feasibility form fields, buttons, and document state */
.feasibility-meta-form{padding:14px;border-radius:15px}.feasibility-form-grid{gap:12px 13px}.feasibility-save-row{min-height:58px}.registration-side-card .registration-feas-state,.registration-side-card .registration-empty-doc{min-height:78px}.registration-side-card>.row-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}.registration-side-card>.row-actions .btn{width:100%;white-space:nowrap}.registration-side-card>.row-actions .btn-secondary,.registration-side-card>.row-actions .btn-primary{width:auto;min-width:72px}

/* Readiness checklist: clear and aligned, live status */
.registration-readiness-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:18px;padding-top:16px;border-top:1px dashed #dce5f2}.registration-readiness-head>div{display:flex;flex-direction:column;gap:2px}.registration-readiness-head span{font-size:8px;font-weight:950;letter-spacing:.12em;color:#7b69a8}.registration-readiness-head strong{font-size:14px;color:#2f4160}.registration-readiness-head small{font-size:9px;color:#8390a3;text-align:right;max-width:160px;line-height:1.35}.registration-checklist{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px}.registration-checklist>div{min-height:48px;padding:9px 10px}.registration-checklist>div:last-child{grid-column:1/-1}.registration-checklist span{width:26px;height:26px;flex:0 0 auto}.registration-checklist>div.done span{font-size:0}.registration-checklist>div.done span:after{content:"✓";font-size:13px;font-weight:950}.registration-checklist b{font-size:11px;line-height:1.25}

/* Better wrap rules for long field labels */
.feasibility-form-grid label,.registration-form-grid label{overflow-wrap:anywhere}.feasibility-form-grid .form-group:nth-child(4) label,.feasibility-form-grid .form-group:nth-child(6) label{max-width:180px}

body[data-theme="dark"] .top-back,body[data-theme="dark"] .top-approval-alert,body[data-theme="dark"] .verification-toggle{background:#132237;border-color:#2c405b;color:#d8e4f4}body[data-theme="dark"] .verification-toggle.is-checked{background:#123126;border-color:#286a50}body[data-theme="dark"] .verification-copy b{color:#dbe5f4}body[data-theme="dark"] .verification-copy small{color:#8ea0b7}body[data-theme="dark"] .registration-readiness-head strong{color:#e7edf7}

@media(max-width:1280px){.registration-command-grid{grid-template-columns:minmax(0,1fr) minmax(390px,.92fr)}.registration-main-card,.registration-side-card{padding:20px}.registration-heading{min-height:auto}}
@media(max-width:1080px){.registration-command-grid{grid-template-columns:1fr}.registration-heading{min-height:auto}.registration-side-card>.row-actions{grid-template-columns:repeat(3,max-content);justify-content:start}.registration-checklist{grid-template-columns:repeat(5,minmax(0,1fr))}.registration-checklist>div:last-child{grid-column:auto}.registration-readiness-head small{max-width:none}}
@media(max-width:760px){.top-back b,.top-approval-alert b{display:none}.top-back{width:38px;padding:0;justify-content:center}.top-approval-alert{width:40px;padding:0;justify-content:center}.registration-page-card .toolbar{grid-template-columns:1fr}.registration-page-card .btn{width:100%}.registration-main-card,.registration-side-card{padding:16px}.registration-heading{flex-direction:column;gap:8px}.registration-heading h3{font-size:19px}.registration-form-grid,.feasibility-form-grid{grid-template-columns:1fr}.registration-form-grid .form-group.full,.feasibility-form-grid .form-group.full{grid-column:auto}.registration-form-grid .form-group>label,.feasibility-form-grid .form-group>label{min-height:auto;align-items:center}.registration-side-card>.row-actions{grid-template-columns:1fr}.registration-side-card>.row-actions .btn,.registration-side-card>.row-actions .btn-secondary,.registration-side-card>.row-actions .btn-primary{width:100%}.registration-readiness-head{align-items:flex-start;flex-direction:column}.registration-readiness-head small{text-align:left}.registration-checklist{grid-template-columns:1fr}.registration-checklist>div:last-child{grid-column:auto}}
/* ========================================================================== */
/* LEA ENERGY SOLAR ERP — PROFESSIONAL UX SYSTEM v36                         */
/* Non-destructive visual/interaction layer loaded after the legacy styles.  */
/* ========================================================================== */
:root{
  --pro-navy:#071a3d;--pro-navy-2:#0b2d66;--pro-blue:#1769e8;--pro-cyan:#0aa6c2;
  --pro-green:#159669;--pro-orange:#f07a22;--pro-red:#d84d4d;--pro-purple:#7357e8;
  --pro-ink:#13233f;--pro-muted:#6b7c94;--pro-soft:#94a2b5;
  --pro-bg:#f4f7fb;--pro-surface:#fff;--pro-surface-2:#f8fbff;--pro-line:#e0e8f2;--pro-line-strong:#cfdae8;
  --pro-shadow-xs:0 2px 8px rgba(13,38,72,.04);--pro-shadow-sm:0 8px 24px rgba(13,38,72,.07);
  --pro-shadow-md:0 18px 42px rgba(13,38,72,.10);--pro-shadow-lg:0 28px 70px rgba(8,30,63,.16);
  --pro-r-sm:10px;--pro-r:14px;--pro-r-lg:20px;--pro-r-xl:26px;
  --pro-ease:cubic-bezier(.2,.75,.2,1);
}
html{background:var(--pro-bg)}
body{color:var(--pro-ink);background:linear-gradient(180deg,#f7faff 0,#f3f7fb 100%);font-feature-settings:"tnum" 1,"ss01" 1}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 86% -10%,color-mix(in srgb,var(--page-accent,#1769e8) 8%,transparent),transparent 28%);z-index:-1}
::selection{background:color-mix(in srgb,var(--page-accent,#1769e8) 24%,#fff);color:#0a2856}

/* ---------- App chrome ---------- */
.sidebar{width:294px;padding:18px 14px 14px;background:linear-gradient(180deg,#06152f 0%,#082754 50%,#0b356f 100%);box-shadow:18px 0 52px rgba(5,26,59,.17)}
.main{margin-left:294px}
.brand{padding:4px 6px 18px;gap:12px}
.brand-mark{width:54px;height:54px;border-radius:17px;box-shadow:0 12px 30px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.8)}
.brand-copy strong{font-size:15px;letter-spacing:.12em}.brand-copy small{font-size:11px;color:#adc7ed}
.workspace-chip{padding:12px 13px;border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.055));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 22px rgba(0,0,0,.06)}
.workspace-chip strong{font-size:12px}.workspace-chip small{font-size:10px}
.nav-section{display:flex;align-items:center;gap:9px;padding:15px 11px 6px;color:#7394c1;font-size:9px}.nav-section i{height:1px;background:rgba(255,255,255,.08);flex:1}
.nav-link{min-height:47px;padding:7px 9px;margin:2px 0;border:1px solid transparent;border-radius:13px;font-size:12.5px;font-weight:720;transition:transform .18s var(--pro-ease),background .18s var(--pro-ease),border-color .18s var(--pro-ease),box-shadow .18s var(--pro-ease)}
.nav-ico{width:34px;height:34px;border-radius:11px}.nav-link.active{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--page-accent,#2f80ed) 92%,#fff),inset 0 0 0 1px rgba(255,255,255,.05),0 10px 26px rgba(2,18,46,.14)!important}
.sidebar-foot{border-radius:17px;padding:11px}.mini-avatar{width:39px;height:39px;border-radius:12px}.sidebar-user strong{font-size:11.5px}

.topbar{height:78px;padding:0 30px;gap:14px;background:rgba(255,255,255,.91);backdrop-filter:blur(22px) saturate(150%);border-bottom:1px solid rgba(218,228,240,.86);box-shadow:0 10px 34px rgba(21,48,82,.045)}
.topbar:after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:180px;background:linear-gradient(90deg,var(--page-accent,#1769e8),color-mix(in srgb,var(--page-accent,#1769e8) 28%,transparent),transparent)}
.top-back{height:42px;display:inline-flex;align-items:center;gap:8px;padding:0 13px;border:1px solid #dce6f1;border-radius:12px;background:#fff;color:#48617d;cursor:pointer;box-shadow:var(--pro-shadow-xs);font-weight:800}.top-back:hover{background:#f7faff;border-color:#c9d8e9;transform:translateY(-1px)}.top-back span{font-size:21px;line-height:1}.top-back b{font-size:12px}
.page-kicker{font-size:9px;font-weight:900;letter-spacing:.13em;color:#8493a8}.page-head h1{font-size:22px;font-weight:850;letter-spacing:-.035em;color:#10213f}
.command-search,.top-create,.theme-toggle{height:42px;border-radius:12px}.command-search{min-width:218px;background:#f6f9fd}.top-create{padding:0 15px;font-size:12px}.theme-toggle{width:42px}.avatar{width:40px;height:40px;border-radius:12px}.profile-copy strong{font-size:11.5px}.profile-copy small{font-size:9px}
.top-approval-alert{height:42px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border-radius:12px;border:1px solid #e7e1fb;background:#faf8ff;color:#7357e8;font-size:11px;font-weight:850;position:relative}.top-approval-alert:hover{border-color:#d6c9ff;background:#f6f1ff}.top-approval-alert.has-pending{background:#fff7f2;border-color:#ffd9c4;color:#c6551b}.top-approval-alert i{position:absolute;right:-7px;top:-8px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#ef4e4e;color:#fff;display:grid;place-items:center;font-size:9px;font-style:normal;box-shadow:0 4px 10px rgba(226,60,60,.28)}
.approval-bell{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:rgba(115,87,232,.10)}

.content{max-width:1640px;padding:26px 30px 38px}.footer{padding:18px 30px;font-size:10.5px;background:rgba(255,255,255,.35)}

/* ---------- Typography and section rhythm ---------- */
.section-title{margin:24px 0 13px;min-height:42px;align-items:flex-end}.section-title:first-child{margin-top:0}.section-title h2{font-size:19px;font-weight:850;letter-spacing:-.025em;color:#152743}.section-title h3{font-size:16px;font-weight:850;color:#152743}.section-title small{display:block;margin-top:4px;color:#7d8ba0;font-size:10.5px;line-height:1.45}.eyebrow{font-size:9px!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase;color:var(--page-accent,#1769e8)!important}

/* ---------- Surfaces ---------- */
.card{border:1px solid var(--pro-line);border-radius:var(--pro-r-lg);padding:21px;background:linear-gradient(180deg,#fff 0%,#fefeff 100%);box-shadow:var(--pro-shadow-sm);transition:border-color .18s var(--pro-ease),box-shadow .18s var(--pro-ease),transform .18s var(--pro-ease)}
.card:hover{border-color:#d4dfec;box-shadow:0 13px 34px rgba(14,42,77,.075)}
.metric-card{border-radius:18px;border-color:#dfe7f1;box-shadow:var(--pro-shadow-sm)}
.detail{border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f7faff);border-color:#e2eaf3}.detail small{font-size:9px;letter-spacing:.06em}.detail strong{font-size:12.5px}
.info-banner{border-radius:14px;padding:15px 17px;background:linear-gradient(135deg,#f8fbff,#f5f8ff);box-shadow:var(--pro-shadow-xs)}

/* ---------- Forms ---------- */
.form-grid{gap:16px 18px}.form-group{gap:7px}.form-group label{font-size:10px;font-weight:850;letter-spacing:.045em;color:#50657f;text-transform:uppercase;line-height:1.35}.form-group label .required-mark,.required-mark{color:#e15353;margin-left:3px}
.form-control,.form-select,textarea{width:100%;min-height:47px;border:1px solid #d7e2ee;border-radius:12px;background:#fff;color:#152640;padding:10px 13px;font-size:12px;line-height:1.45;box-shadow:inset 0 1px 2px rgba(16,45,80,.025);outline:none;transition:border-color .16s var(--pro-ease),box-shadow .16s var(--pro-ease),background .16s var(--pro-ease),transform .16s var(--pro-ease)}
textarea{min-height:96px;resize:vertical}.form-control:hover,.form-select:hover,textarea:hover{border-color:#c3d3e5}.form-control:focus,.form-select:focus,textarea:focus{border-color:color-mix(in srgb,var(--page-accent,#1769e8) 65%,#a7c3e3);box-shadow:0 0 0 4px color-mix(in srgb,var(--page-accent,#1769e8) 11%,transparent),0 8px 18px rgba(16,45,80,.04);background:#fff}
.form-control::placeholder,textarea::placeholder{color:#a3afbf}.form-select{cursor:pointer;background-color:#fff}.form-control[readonly],.form-control:disabled,.form-select:disabled,textarea:disabled{background:#f3f6fa;color:#7b899c;cursor:not-allowed}
input[type="checkbox"],input[type="radio"]{accent-color:var(--page-accent,#1769e8)}
.form-help{font-size:9.5px;color:#8a98aa;line-height:1.45}

/* Verification / checkbox controls */
.verification-toggle{border-radius:14px;border-color:#dce6f1;background:#fbfdff;min-height:52px}.verification-toggle:has(input:checked){border-color:#b7e4d0;background:#f0fbf6;box-shadow:0 0 0 3px rgba(21,150,105,.06)}
.verification-box{border-radius:8px}.verification-copy strong{font-size:11px}.verification-copy small{font-size:9px}

/* ---------- Buttons ---------- */
.btn{min-height:40px;padding:9px 14px;border-radius:11px;font-size:11px;font-weight:850;letter-spacing:.005em;gap:7px;transition:transform .16s var(--pro-ease),box-shadow .16s var(--pro-ease),border-color .16s var(--pro-ease),background .16s var(--pro-ease)}
.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.985)}.btn-sm{min-height:34px;padding:7px 10px;border-radius:9px;font-size:9.5px}.btn-primary{background:linear-gradient(135deg,color-mix(in srgb,var(--page-accent,#1769e8) 96%,#fff),color-mix(in srgb,var(--page-accent,#1055c9) 78%,#061f46));border-color:transparent;box-shadow:0 9px 20px color-mix(in srgb,var(--page-accent,#1769e8) 18%,transparent)}.btn-primary:hover{box-shadow:0 12px 26px color-mix(in srgb,var(--page-accent,#1769e8) 24%,transparent)}
.btn-secondary{background:#f7f9fc;border-color:#dbe5ef;color:#405a78}.btn-secondary:hover{background:#fff;border-color:#c8d7e8}.btn-orange{background:linear-gradient(135deg,#ff8a24,#ef6b18);border-color:transparent;color:#fff;box-shadow:0 8px 20px rgba(240,112,27,.16)}.btn-danger{box-shadow:0 7px 18px rgba(214,64,64,.10)}.btn-whatsapp{border-radius:11px!important;min-height:40px!important}
button[disabled],.btn[aria-disabled="true"]{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}
.toolbar,.row-actions{gap:8px}.toolbar{align-items:center;flex-wrap:wrap}

/* ---------- Tables ---------- */
.table-wrap{border:1px solid #e0e8f2;border-radius:16px;background:#fff;overflow:auto;box-shadow:none;position:relative}.table{width:100%;border-collapse:separate;border-spacing:0}.table thead th{position:sticky;top:0;z-index:2;background:#f6f9fd;color:#687b93;font-size:9px;font-weight:900;letter-spacing:.075em;text-transform:uppercase;border-bottom:1px solid #dfe8f2;padding:12px 13px;white-space:nowrap}.table tbody td{padding:13px;border-bottom:1px solid #edf2f7;font-size:11px;color:#334862;vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr{transition:background .15s var(--pro-ease),box-shadow .15s var(--pro-ease)}.table tbody tr:hover{background:#f8fbff}.table td strong{color:#1b314e;font-size:11.5px}.table td small{display:block;color:#8a98aa;font-size:9px;line-height:1.45;margin-top:2px}
.table-wrap.pro-scrollable:after{content:"Scroll horizontally →";position:sticky;right:10px;bottom:8px;float:right;padding:4px 7px;border-radius:999px;background:#0d2f5f;color:#fff;font-size:8px;font-weight:800;opacity:.72;pointer-events:none}

/* ---------- Status ---------- */
.badge{border-radius:999px;padding:6px 9px;font-size:8.5px;font-weight:900;letter-spacing:.025em;border:1px solid transparent}.badge-success{background:#ebfaf4;border-color:#cbeedd;color:#0b8258}.badge-warning{background:#fff5e7;border-color:#ffe0b5;color:#b8660a}.badge-danger{background:#fff0f0;border-color:#ffd0d0;color:#ba3636}.badge-primary{background:#edf5ff;border-color:#d2e5ff;color:#175fbf}.badge-muted{background:#f1f4f8;border-color:#e0e6ee;color:#6a788b}
.alert{border-radius:13px;padding:12px 14px;font-size:10.5px;font-weight:650;border-width:1px;box-shadow:var(--pro-shadow-xs);animation:proToastIn .28s var(--pro-ease)}
@keyframes proToastIn{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}

/* ---------- Project intelligence & workflow ---------- */
.project-smart-strip{border-radius:20px;padding:20px 21px;box-shadow:0 16px 38px rgba(18,58,102,.09);border:1px solid #dae5f1;gap:18px}.project-smart-main strong{font-size:18px;line-height:1.2}.project-smart-main small{font-size:10px;line-height:1.55;max-width:760px}.project-smart-progress{min-width:106px;padding:11px 14px;border-radius:15px;background:rgba(255,255,255,.72);box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}.project-smart-progress b{font-size:24px}.project-smart-progress span{font-size:8.5px}
.project-intelligence-grid{gap:13px}.project-intel-card{border-radius:17px;padding:17px;border-color:#e0e8f2;box-shadow:var(--pro-shadow-xs);background:linear-gradient(180deg,#fff,#fbfdff)}.project-intel-card>span{font-size:8px;letter-spacing:.11em}.project-intel-card>strong{font-size:21px}.project-intel-card>small{font-size:9px}.project-intel-card>em{font-size:8.5px}
.workflow-legend{border-radius:14px;padding:11px 13px;gap:8px 13px;background:#f8fbff;border-color:#e1e9f2}.workflow-legend span{font-size:8.5px}.wf-legend-note{font-size:8px!important;border-radius:999px!important;padding:6px 9px!important}
.workflow-board{gap:16px;margin-top:16px}.workflow-stage-card{border-radius:18px;border-color:#dfe7f1;box-shadow:0 8px 24px rgba(19,48,84,.055);transition:transform .18s var(--pro-ease),box-shadow .18s var(--pro-ease),border-color .18s var(--pro-ease)}.workflow-stage-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(19,48,84,.085)}.workflow-stage-card.is-active{border-color:color-mix(in srgb,var(--page-accent,#1769e8) 28%,#d8e2ee);box-shadow:0 15px 38px color-mix(in srgb,var(--page-accent,#1769e8) 10%,transparent)}
.workflow-stage-head{grid-template-columns:48px 1fr auto;padding:16px 17px 13px}.wf-stage-circle{width:43px;height:43px;font-size:12px}.wf-stage-title span{font-size:7.5px}.wf-stage-title h3{font-size:13.5px;margin:3px 0}.wf-stage-title small{font-size:8.5px}.wf-stage-percent{font-size:16px}.workflow-job-list{background:#fbfdff}.workflow-job{padding:11px 14px;gap:10px}.wf-job-copy strong{font-size:9.5px}.wf-job-copy small{font-size:8.2px}.wf-job-detail{font-size:7.5px}.wf-job-action,.wf-mark-done,.wf-mark-undo,.wf-manual-done{min-height:29px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;font-size:8px;padding:7px 9px}.wf-job-action{background:#eef5ff;border-color:#d5e6fb}.wf-mark-done{background:#eaf9f2;color:#087c53;border:1px solid #bfead7;box-shadow:0 4px 10px rgba(12,127,85,.05)}.wf-mark-done:hover{background:#dbf5e8}.workflow-job.state-completed{background:linear-gradient(90deg,rgba(21,150,105,.045),transparent)}
.auto-workflow-note{font-size:9.5px;line-height:1.55;padding:13px 14px;border-radius:13px}
.roadmap-summary{border-radius:15px}.roadmap-wrap{border-radius:16px}.road-stop{transition:transform .18s var(--pro-ease)}.road-stop:hover{transform:translateY(-2px)}

/* ---------- Registration / feasibility ---------- */
.registration-feasibility-layout{gap:18px!important;align-items:start}.registration-side-card{border-radius:20px!important}.registration-heading h2{font-size:19px}.registration-heading p{font-size:10px!important;line-height:1.55}.registration-form-grid,.feasibility-form-grid{gap:14px 15px!important}.registration-readiness{border-radius:16px!important}.registration-checklist{gap:8px!important}.registration-checklist>div{border-radius:11px!important;min-height:45px!important}
.registration-save-row{position:sticky;bottom:10px;z-index:5;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid #e1e8f1;border-radius:14px;padding:9px 10px!important;box-shadow:0 12px 30px rgba(13,38,72,.10)}

/* ---------- Approval Centre ---------- */
body[data-page="approvals"] .metric-card{min-height:126px}.approval-action-table .quick-doc-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.quick-doc-btn{min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:7px 9px;border-radius:9px;font-size:8.5px;font-weight:900;border:1px solid #dce5ef;background:#fff;transition:.16s var(--pro-ease)}.quick-doc-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(13,38,72,.07)}.quick-doc-btn.approve{background:#ebfaf4;border-color:#c6eddc;color:#0b8058}.quick-doc-btn.reject{background:#fff1f1;border-color:#ffd3d3;color:#b63c3c}.quick-doc-btn.correction{background:#fff6e9;border-color:#ffe2b8;color:#ae650e}.quick-doc-btn.view,.quick-doc-btn.review{background:#f0f6ff;border-color:#d8e7fb;color:#1f65bd}.approval-quote-row{border-radius:13px!important;padding:13px 14px!important;background:#fbfdff!important;border:1px solid #e4eaf2!important;margin-bottom:8px!important}

/* ---------- Dispatch / QC ---------- */
body[data-page="dispatch"] .card:first-of-type{border-radius:20px}.mini-delivery-progress{height:7px!important;border-radius:999px!important;background:#eaf0f6!important;overflow:hidden}.mini-delivery-progress i{border-radius:999px!important;background:linear-gradient(90deg,#f07a22,#ffaf4b)!important}.qc-help-strip{border-radius:16px!important;box-shadow:var(--pro-shadow-xs)}.qc-table{min-width:1100px}.qc-thumb{border-radius:10px!important}.qc-upload-actions{gap:6px!important}.qc-update-grid{gap:6px!important}

/* ---------- Directory / commercial cards ---------- */
.entity-card-grid{gap:14px}.entity-card{border-radius:17px!important;box-shadow:var(--pro-shadow-xs)!important}.assignment-control-card{border-radius:20px}.assignment-current>div{border-radius:13px!important}.ledger-stat{border-radius:18px;box-shadow:var(--pro-shadow-sm)}.quote-summary>div{border-radius:14px}.price-mode-card{border-radius:16px}

/* ---------- Login / public tracking ---------- */
.login-page{background:#f4f7fb;min-height:100vh}.login-art{background:linear-gradient(145deg,#061733 0%,#0b3978 58%,#0d6b91 100%);position:relative;overflow:hidden}.login-art:before{content:"";position:absolute;width:460px;height:460px;border-radius:50%;right:-230px;top:-150px;background:radial-gradient(circle,rgba(255,165,61,.33),transparent 67%)}.login-art:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;left:30%;bottom:-270px;background:radial-gradient(circle,rgba(55,206,255,.22),transparent 70%)}.login-art h1{font-size:42px;letter-spacing:-.045em}.login-art p{max-width:620px;line-height:1.65}.login-box{border:1px solid #e1e8f1;border-radius:22px;box-shadow:0 26px 70px rgba(13,38,72,.12);padding:30px}.login-box h2{font-size:25px;letter-spacing:-.035em}.login-feature{border-radius:15px!important}.security-pill{border-radius:999px}.login-box .btn-primary{width:100%;min-height:48px;font-size:12px}

/* ---------- Advanced interaction chrome ---------- */
#proPageProgress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--page-accent,#1769e8),#4ebcff,#ff9d3f);z-index:9999;box-shadow:0 1px 8px color-mix(in srgb,var(--page-accent,#1769e8) 34%,transparent);opacity:0;transition:width .22s ease,opacity .22s ease}
#proBackToTop{position:fixed;right:22px;bottom:22px;width:42px;height:42px;border:1px solid #d9e4ef;border-radius:13px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);color:#315476;display:grid;place-items:center;box-shadow:0 12px 30px rgba(13,38,72,.12);cursor:pointer;z-index:30;opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s var(--pro-ease)}#proBackToTop.show{opacity:1;pointer-events:auto;transform:none}#proBackToTop:hover{color:var(--page-accent,#1769e8);border-color:#c7d7e8;transform:translateY(-2px)}
.pro-form-dirty{position:relative}.pro-form-dirty:after{content:"Unsaved";position:absolute;right:0;top:-17px;font-size:8px;font-weight:900;color:#b96e16;background:#fff4e5;border:1px solid #ffddb1;border-radius:999px;padding:3px 6px}
.pro-processing{pointer-events:none;opacity:.78}.pro-processing:after{content:"";width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;margin-left:7px;animation:proSpin .65s linear infinite}@keyframes proSpin{to{transform:rotate(360deg)}}
.pro-table-topfade{box-shadow:inset 0 10px 12px -12px rgba(14,42,77,.2)}

/* ---------- Dark mode ---------- */
body[data-theme="dark"]{--pro-ink:#eef4fc;--pro-muted:#aebbd0;--pro-bg:#0d1827;--pro-surface:#111e30;--pro-surface-2:#132237;--pro-line:#293b54;--pro-line-strong:#36506f;background:#0d1827;color:#e8eef7}
body[data-theme="dark"] .topbar{background:rgba(15,27,44,.92);border-color:#263950}body[data-theme="dark"] .page-head h1,body[data-theme="dark"] .section-title h2,body[data-theme="dark"] .section-title h3{color:#eef4fc}body[data-theme="dark"] .top-back,body[data-theme="dark"] .command-search,body[data-theme="dark"] .theme-toggle{background:#132237;border-color:#2a3d56;color:#b9c7da}body[data-theme="dark"] .card,body[data-theme="dark"] .metric-card,body[data-theme="dark"] .project-intel-card,body[data-theme="dark"] .table-wrap{background:#111e30;border-color:#293b54;box-shadow:0 12px 30px rgba(0,0,0,.16)}body[data-theme="dark"] .detail,body[data-theme="dark"] .workflow-job-list,body[data-theme="dark"] .table thead th{background:#132237;border-color:#2a3d56}body[data-theme="dark"] .table tbody td{border-color:#263850;color:#c2cede}body[data-theme="dark"] .table tbody tr:hover{background:#15263c}body[data-theme="dark"] .table td strong{color:#edf3fb}body[data-theme="dark"] .form-control,body[data-theme="dark"] .form-select,body[data-theme="dark"] textarea{background:#101d2e;border-color:#2b405b;color:#e8eef7}body[data-theme="dark"] .form-control:focus,body[data-theme="dark"] .form-select:focus,body[data-theme="dark"] textarea:focus{background:#122238}body[data-theme="dark"] .form-group label{color:#aab8cb}body[data-theme="dark"] .btn-secondary{background:#15243a;border-color:#31465f;color:#c5d0df}body[data-theme="dark"] .top-approval-alert{background:#1b2039;border-color:#393a68;color:#bcb0ff}body[data-theme="dark"] .registration-save-row{background:rgba(17,30,48,.94);border-color:#2b4059}body[data-theme="dark"] #proBackToTop{background:rgba(17,30,48,.94);border-color:#30455e;color:#c7d3e2}

/* ---------- Responsive ---------- */
@media(max-width:1220px){.sidebar{width:278px}.main{margin-left:278px}.topbar{padding:0 22px}.content{padding:23px 22px 34px}.profile-copy{display:none}.command-search{min-width:180px}.project-smart-strip{grid-template-columns:1fr auto!important}.project-smart-strip .btn-smart{grid-column:1/-1;justify-self:start}}
@media(max-width:900px){.sidebar{width:min(310px,88vw)}.main{margin-left:0}.topbar{height:72px;padding:0 15px}.icon-btn{display:grid}.top-back b{display:none}.top-back{width:40px;padding:0;justify-content:center}.page-head h1{font-size:18px}.page-kicker{display:none}.command-search{min-width:40px;width:40px;padding:0;justify-content:center}.command-search b,.command-search kbd{display:none}.top-create b{display:none}.top-create{width:42px;padding:0;justify-content:center}.top-approval-alert b{display:none}.top-approval-alert{width:42px;padding:0;justify-content:center}.content{padding:18px 14px 28px}.workflow-board{grid-template-columns:1fr}.project-intelligence-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.registration-save-row{bottom:8px}}
@media(max-width:640px){.topbar{gap:7px}.theme-toggle{display:none}.profile-wrap{padding-left:5px}.avatar{width:36px;height:36px}.content{padding:13px 10px 24px}.card{padding:15px;border-radius:16px}.section-title{align-items:flex-start;flex-direction:column}.section-title .toolbar{width:100%}.section-title .toolbar .btn{flex:1}.grid-2,.grid-3,.grid-4,.form-grid,.detail-grid,.project-intelligence-grid{grid-template-columns:1fr!important}.project-smart-strip{padding:16px;grid-template-columns:1fr!important}.project-smart-progress{justify-self:start}.workflow-stage-card{border-radius:15px}.workflow-stage-head{grid-template-columns:44px 1fr auto;padding:14px 12px 11px}.workflow-job{grid-template-columns:13px 1fr}.wf-job-actions{grid-column:2;justify-content:flex-start}.wf-job-action,.wf-mark-done,.wf-mark-undo,.wf-manual-done{min-height:32px;font-size:8.5px}.toolbar>.btn,.toolbar>.btn-whatsapp{flex:1 1 auto}.table-wrap{border-radius:13px}.table thead{display:none}.table,.table tbody,.table tr,.table td{display:block;width:100%}.table tbody tr{padding:9px 11px;border-bottom:1px solid #e7edf4}.table tbody tr:last-child{border-bottom:0}.table tbody td{border:0;padding:5px 0 5px 43%;position:relative;min-height:30px}.table tbody td:before{content:attr(data-label);position:absolute;left:0;top:6px;width:39%;font-size:8px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#8a98aa}.table-wrap.pro-scrollable:after{display:none}.login-page{display:block!important}.login-art{display:none!important}.login-panel{min-height:100vh!important;padding:18px!important}.login-box{padding:22px;border-radius:19px}.login-box h2{font-size:22px}#proBackToTop{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* LEA ENERGY SOLAR ERP — LOGIN IDENTITY & BRAND FINISH v37 */
.brand-mark{isolation:isolate;background:linear-gradient(145deg,#ffffff 0%,#eef7ff 100%)!important;border:1px solid rgba(255,255,255,.88);box-shadow:0 14px 34px rgba(0,0,0,.24),inset 0 1px 0 #fff!important;overflow:hidden!important;font-size:0!important}
.brand-mark:before{content:""!important;position:absolute!important;inset:4px!important;width:auto!important;height:auto!important;border-radius:0!important;background:url('../images/lea-energy-symbol.png') center/contain no-repeat!important;box-shadow:none!important;z-index:3!important}
.brand-mark:after{content:""!important;position:absolute!important;inset:-18% -30% 45% 15%!important;width:auto!important;height:auto!important;border-radius:50%!important;background:radial-gradient(circle,rgba(255,255,255,.92),rgba(255,255,255,0) 72%)!important;transform:none!important;z-index:4!important;pointer-events:none}
.brand-mark>span{opacity:0!important;font-size:0!important}.brand-mark>i{display:none!important}
.brand-premium{width:60px!important;height:60px!important;border-radius:19px!important;box-shadow:0 15px 34px rgba(0,0,0,.24),0 0 0 1px rgba(255,255,255,.05)!important}
.brand-premium:before{inset:3px!important}
.brand-copy strong{font-size:15.5px!important;letter-spacing:.105em!important}.brand-copy small{letter-spacing:.025em!important;color:#afc8ed!important}


.workspace-identity{align-items:flex-start!important;gap:11px!important;padding:12px 12px 13px!important;border-color:rgba(255,255,255,.15)!important;background:linear-gradient(145deg,rgba(255,255,255,.145),rgba(255,255,255,.055))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 12px 28px rgba(0,0,0,.08)!important}
.workspace-identity .workspace-dot{margin-top:7px;flex:0 0 auto}.workspace-identity-body{min-width:0;flex:1}.workspace-heading{display:flex;align-items:center;gap:7px;justify-content:space-between}.workspace-heading>strong{font-size:11.5px!important;color:#fff;white-space:nowrap}.workspace-role{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:999px;background:rgba(88,166,255,.15);border:1px solid rgba(124,184,255,.22);color:#cfe6ff;font-size:7.7px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.workspace-login-name{margin-top:7px;color:#fff;font-size:12.4px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-code,.workspace-territory{margin-top:5px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.workspace-code span,.workspace-territory span{font-size:7.6px;color:#8faed5;text-transform:uppercase;letter-spacing:.08em;font-weight:850;white-space:nowrap}.workspace-code b,.workspace-territory b{font-size:8.9px;color:#d9e9ff;text-align:right;line-height:1.25;overflow-wrap:anywhere}.workspace-code b{color:#ffd28a;letter-spacing:.035em}.workspace-territory{padding-top:5px;border-top:1px solid rgba(255,255,255,.07)}
.sidebar-user span{font-size:8.4px!important;color:#a9c3e7!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-foot{background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.045))!important}

/* Top profile now communicates login identity more clearly. */
.profile-copy strong{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-copy small{font-weight:750;letter-spacing:.02em}

/* Slightly more premium spacing after richer identity card. */
.sidebar nav{padding-top:1px}.nav-section{padding-top:13px}

[data-theme="dark"] .workspace-role{background:rgba(72,145,235,.18);border-color:rgba(104,174,255,.22)}
@media(max-width:1100px){.workspace-code b,.workspace-territory b{font-size:8.4px}}
/* LEA ENERGY SOLAR ERP — STRONG WORDMARK + HOME LINK v38 */

/* Sidebar brand: simple, confident, high-contrast wordmark. */
.brand{min-height:72px;align-items:center!important;padding:8px 4px 14px!important}
.brand-home-link{display:inline-flex;align-items:center;min-width:0;text-decoration:none!important;border-radius:15px;padding:9px 10px 9px 7px;position:relative;transition:transform .18s ease,background .18s ease,box-shadow .18s ease;outline:none}
.brand-home-link:hover{background:rgba(255,255,255,.065);transform:translateY(-1px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.055)}
.brand-home-link:focus-visible{box-shadow:0 0 0 3px rgba(77,157,255,.32),inset 0 0 0 1px rgba(255,255,255,.11)}
.lea-wordmark{display:inline-flex;align-items:baseline;gap:.28em;white-space:nowrap;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:950;line-height:.88;letter-spacing:-.055em;text-transform:uppercase;position:relative}
.lea-wordmark-lea{color:#fff}
.lea-wordmark-energy{color:#ffad37;position:relative}
.lea-wordmark-energy:after{content:"";position:absolute;left:1px;right:1px;bottom:-8px;height:3px;border-radius:999px;background:linear-gradient(90deg,#ff9a1f,#ffd16f 58%,rgba(255,209,111,0));box-shadow:0 2px 9px rgba(255,167,47,.28)}
.lea-wordmark-sidebar{font-size:23px;text-shadow:0 5px 18px rgba(0,0,0,.22)}
.brand .sidebar-close{margin-left:auto}

/* Remove old image-mark influence from the main sidebar brand. */
.brand .brand-mark,.brand .brand-copy{display:none!important}

/* Authentication screens use the same wordmark identity. */
.login-brand-home{display:inline-flex;text-decoration:none!important;border-radius:12px;outline:none}
.login-brand-home:focus-visible{box-shadow:0 0 0 3px rgba(72,145,235,.28)}
.lea-wordmark-login{font-size:28px;letter-spacing:-.06em;text-shadow:0 7px 24px rgba(0,0,0,.22)}
.lea-wordmark-panel{font-size:22px;letter-spacing:-.05em}
.login-panel .lea-wordmark-lea,.login-box .lea-wordmark-lea{color:#0a2f67}
.login-panel .lea-wordmark-energy,.login-box .lea-wordmark-energy{color:#ee8c14}
.login-logo{gap:10px!important;align-items:flex-end!important;flex-wrap:wrap}
.login-brand-sub{color:#6b7280;font-size:11px;font-weight:750;letter-spacing:.03em;padding-bottom:1px}

/* Small interaction hint on desktop only. */
@media(min-width:901px){.brand-home-link:after{content:"Home";position:absolute;right:-4px;top:-3px;opacity:0;transform:translateY(3px);font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#8fb5e7;transition:.18s ease}.brand-home-link:hover:after{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.lea-wordmark-sidebar{font-size:21px}.brand-home-link{padding-left:5px}}
@media(max-width:520px){.lea-wordmark-login{font-size:24px}.lea-wordmark-panel{font-size:20px}}
[data-theme="dark"] .login-panel .lea-wordmark-lea,[data-theme="dark"] .login-box .lea-wordmark-lea{color:#eaf3ff}

/* v39 Performance + Input Safety */
input[type="number"]{-moz-appearance:textfield;appearance:textfield}
input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
html.lea-lite-mode *,html.lea-lite-mode *::before,html.lea-lite-mode *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
html.lea-lite-mode .reveal{opacity:1!important;transform:none!important}
html.lea-lite-mode .card,html.lea-lite-mode .metric-card,html.lea-lite-mode .hero,html.lea-lite-mode .workflow-stage-card{box-shadow:none!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* LEA ENERGY v40 — Notifications, secure internal chat, approval reminders & Admin broadcasts */
.top-icon-action{position:relative;width:42px;height:42px;border:1px solid #dce6f2;border-radius:12px;background:#f7faff;color:#26415f;display:inline-grid;place-items:center;text-decoration:none;cursor:pointer;transition:.18s ease;flex:0 0 42px}.top-icon-action:hover{background:#fff;border-color:#bcd1eb;box-shadow:0 8px 24px rgba(25,70,125,.10);transform:translateY(-1px)}.top-icon-action svg{width:19px;height:19px;stroke:currentColor}.top-icon-badge{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 4px;border:2px solid #fff;border-radius:999px;background:#e53e3e;color:#fff;font-size:9px;font-weight:900;display:grid;place-items:center;line-height:1}.notify-wrap{position:relative;display:inline-flex}.notification-popover{position:absolute;right:0;top:51px;width:min(390px,calc(100vw - 24px));background:#fff;border:1px solid #dfe8f3;border-radius:17px;box-shadow:0 22px 60px rgba(24,50,84,.20);z-index:90;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-7px) scale(.985);transform-origin:top right;transition:.16s ease}.notify-wrap.open .notification-popover{opacity:1;visibility:visible;transform:none}.notification-popover-head{padding:14px 15px 11px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf2f7}.notification-popover-head strong{font-size:13px;color:#182b45}.notification-popover-head small{font-size:9px;color:#7f8ca0}.notification-mini-list{max-height:360px;overflow:auto}.notification-mini{display:grid;grid-template-columns:9px 1fr;gap:10px;padding:11px 15px;border-bottom:1px solid #eef3f8;text-decoration:none;color:inherit;background:#fff;transition:.15s}.notification-mini:hover{background:#f7faff}.notification-mini.is-unread{background:#f3f8ff}.notification-dot{width:8px;height:8px;border-radius:50%;background:#b9c5d3;margin-top:5px}.notification-mini.is-unread .notification-dot{background:#1769e8;box-shadow:0 0 0 4px rgba(23,105,232,.10)}.notification-mini strong{display:block;font-size:10.5px;color:#243a57;margin-bottom:2px}.notification-mini p{margin:0;color:#617086;font-size:9px;line-height:1.45}.notification-mini small{display:block;color:#98a4b3;font-size:8px;margin-top:4px}.notification-popover-empty{padding:24px 15px;text-align:center;color:#8190a3;font-size:10px}.notification-popover-foot{padding:10px 12px;background:#f8fbff;display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-between}.notification-popover-foot a{font-size:9px;font-weight:800;text-decoration:none}.notification-full-list{display:grid;gap:10px}.notification-full{display:grid;grid-template-columns:12px 1fr auto;gap:12px;align-items:start;padding:15px;border:1px solid #e1e9f3;border-radius:14px;background:#fff}.notification-full.is-unread{border-color:#bed5f3;background:#f6faff;box-shadow:inset 3px 0 0 #1769e8}.notification-full h4{font-size:12px;margin:0 0 3px;color:#203651}.notification-full p{margin:0;color:#657389;font-size:10px;line-height:1.55}.notification-full time{font-size:8px;color:#95a2b2;white-space:nowrap}.notification-filter-bar{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}

.portal-announcement{position:relative;display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;margin-bottom:14px;padding:13px 15px;border:1px solid #c9dbf2;border-radius:15px;background:linear-gradient(100deg,#f5f9ff,#fff);box-shadow:0 8px 26px rgba(32,72,122,.06)}.portal-announcement:before{content:"!";width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-size:16px;font-weight:950;background:#e7f1ff;color:#1769e8}.portal-announcement strong{font-size:11px;color:#203752;display:block}.portal-announcement p{margin:2px 0 0;color:#607087;font-size:9.5px;line-height:1.45}.portal-announcement small{font-size:8px;color:#8b98aa;white-space:nowrap}.portal-announcement.priority-important{border-color:#f0d6a5;background:linear-gradient(100deg,#fff9ed,#fff)}.portal-announcement.priority-important:before{background:#fff0cd;color:#b86f00}.portal-announcement.priority-urgent{border-color:#efb8b8;background:linear-gradient(100deg,#fff3f3,#fff)}.portal-announcement.priority-urgent:before{background:#ffe0e0;color:#c93737;content:"!!"}.portal-announcement.priority-info:before{content:"i"}

.chat-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:16px;align-items:stretch}.chat-contacts,.chat-window{border:1px solid #e0e8f2;border-radius:17px;background:#fff;box-shadow:0 8px 30px rgba(24,56,95,.055);overflow:hidden}.chat-contacts-head,.chat-window-head{padding:15px;border-bottom:1px solid #eaf0f6}.chat-contacts-head h3,.chat-window-head h3{margin:0;font-size:14px}.chat-contacts-head small,.chat-window-head small{color:#8390a3;font-size:9px}.chat-contact-list{max-height:560px;overflow:auto}.chat-contact{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid #eef3f8;text-decoration:none;color:inherit;transition:.15s}.chat-contact:hover,.chat-contact.active{background:#f3f8ff}.chat-contact.active{box-shadow:inset 3px 0 0 #1769e8}.chat-avatar{width:36px;height:36px;border-radius:12px;background:linear-gradient(145deg,#e8f3ff,#d9e9ff);display:grid;place-items:center;color:#155fc6;font-size:10px;font-weight:950;text-transform:uppercase}.chat-contact strong{display:block;font-size:10px;color:#253a55}.chat-contact small{display:block;font-size:8px;color:#8592a5;margin-top:2px}.chat-unread{min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#1769e8;color:#fff;font-size:8px;font-weight:900;display:grid;place-items:center}.chat-rule{margin:12px;padding:10px 11px;border:1px dashed #d6dfeb;border-radius:12px;background:#f9fbfe;color:#708096;font-size:8.5px;line-height:1.5}.chat-window{display:flex;flex-direction:column;min-height:570px}.chat-thread{padding:18px;flex:1;min-height:390px;max-height:520px;overflow:auto;background:linear-gradient(180deg,#f8fbff,#fff)}.chat-empty{height:100%;min-height:330px;display:grid;place-items:center;text-align:center;color:#8290a3}.chat-bubble-row{display:flex;margin:9px 0}.chat-bubble-row.mine{justify-content:flex-end}.chat-bubble{max-width:min(76%,620px);padding:10px 12px;border-radius:15px 15px 15px 4px;background:#fff;border:1px solid #e0e8f2;box-shadow:0 5px 14px rgba(24,56,95,.04)}.chat-bubble-row.mine .chat-bubble{background:linear-gradient(135deg,#1769e8,#0d55bf);border-color:transparent;color:#fff;border-radius:15px 15px 4px 15px}.chat-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:10px;line-height:1.55}.chat-bubble small{display:block;margin-top:5px;font-size:7.5px;color:#8d99a8}.chat-bubble-row.mine .chat-bubble small{color:rgba(255,255,255,.72)}.chat-compose{padding:13px;border-top:1px solid #e8eef5;display:grid;grid-template-columns:1fr auto;gap:9px;background:#fff}.chat-compose textarea{min-height:46px!important;max-height:110px!important;resize:none}.chat-compose .btn{align-self:end;min-height:44px}.broadcast-card{border-top:3px solid #ff9f1c}.announcement-admin-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #edf2f7}.announcement-admin-row:last-child{border-bottom:0}.announcement-admin-row strong{display:block;font-size:10px}.announcement-admin-row small{display:block;font-size:8px;color:#8693a6;margin:2px 0 5px}.approval-reminder-form{display:flex;gap:7px;align-items:center;min-width:310px}.approval-reminder-form .form-control{min-width:150px;height:34px}.approval-reminder-inline{display:inline-flex;margin:0}.approval-reminder-inbox{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.reminder-chip-list{display:flex;gap:7px;flex-wrap:wrap}.reminder-chip{padding:7px 9px;border:1px solid #f2d7a8;border-radius:10px;background:#fff8e9;font-size:8.5px;color:#82560d}.btn-warning{background:#fff4db;border:1px solid #f1cc80;color:#915b00}.btn-warning:hover{background:#ffe8b6;border-color:#e8b24b;color:#704300}

body[data-theme="dark"] .top-icon-action{background:#132238;border-color:#2b4058;color:#c6d6ea}body[data-theme="dark"] .top-icon-action:hover{background:#182b45}body[data-theme="dark"] .top-icon-badge{border-color:#0d1827}body[data-theme="dark"] .notification-popover,body[data-theme="dark"] .notification-mini,body[data-theme="dark"] .notification-full,body[data-theme="dark"] .chat-contacts,body[data-theme="dark"] .chat-window,body[data-theme="dark"] .chat-compose{background:#111d2e;border-color:#2a3c54}body[data-theme="dark"] .notification-popover-head,body[data-theme="dark"] .notification-mini,body[data-theme="dark"] .chat-contacts-head,body[data-theme="dark"] .chat-window-head,body[data-theme="dark"] .chat-contact,body[data-theme="dark"] .chat-compose{border-color:#27384f}body[data-theme="dark"] .notification-mini:hover,body[data-theme="dark"] .notification-mini.is-unread,body[data-theme="dark"] .chat-contact:hover,body[data-theme="dark"] .chat-contact.active{background:#152942}body[data-theme="dark"] .notification-popover-foot,body[data-theme="dark"] .chat-rule{background:#122137;border-color:#2b3e57}body[data-theme="dark"] .notification-popover-head strong,body[data-theme="dark"] .notification-mini strong,body[data-theme="dark"] .notification-full h4,body[data-theme="dark"] .chat-contact strong,body[data-theme="dark"] .chat-window-head h3,body[data-theme="dark"] .chat-contacts-head h3{color:#e8f0fa}body[data-theme="dark"] .notification-mini p,body[data-theme="dark"] .notification-full p,body[data-theme="dark"] .chat-rule{color:#a4b3c6}body[data-theme="dark"] .portal-announcement{background:linear-gradient(100deg,#132238,#111d2e);border-color:#30465f}body[data-theme="dark"] .portal-announcement strong{color:#e9f0f9}body[data-theme="dark"] .portal-announcement p{color:#aab7c8}body[data-theme="dark"] .portal-announcement.priority-important{background:linear-gradient(100deg,#2a2417,#151f2d);border-color:#5b4c2c}body[data-theme="dark"] .portal-announcement.priority-urgent{background:linear-gradient(100deg,#311d23,#151f2d);border-color:#62404a}body[data-theme="dark"] .chat-thread{background:linear-gradient(180deg,#0f1b2c,#101a29)}body[data-theme="dark"] .chat-bubble{background:#17263a;border-color:#2c4058;color:#dbe5f1}body[data-theme="dark"] .announcement-admin-row{border-color:#2a3b52}body[data-theme="dark"] .btn-warning{background:#3a2e16;border-color:#655027;color:#f5cd7a}

@media(max-width:1100px){.chat-layout{grid-template-columns:240px minmax(0,1fr)}.approval-reminder-form{min-width:240px;flex-wrap:wrap}.approval-reminder-form .form-control{min-width:130px;flex:1}}
@media(max-width:900px){.notification-popover{position:fixed;right:12px;top:67px}.chat-layout{grid-template-columns:1fr}.chat-contacts{max-height:330px}.chat-window{min-height:510px}.portal-announcement{grid-template-columns:34px 1fr}.portal-announcement small{grid-column:2}.top-icon-action{width:40px;height:40px;flex-basis:40px}}
@media(max-width:640px){.top-actions{gap:6px}.top-icon-action{width:38px;height:38px;flex-basis:38px;border-radius:11px}.top-icon-action svg{width:17px;height:17px}.notification-popover{right:8px;left:8px;width:auto;top:62px}.notification-full{grid-template-columns:10px 1fr}.notification-full time{grid-column:2}.portal-announcement{padding:11px 12px}.chat-thread{padding:12px}.chat-bubble{max-width:88%}.chat-compose{grid-template-columns:1fr}.chat-compose .btn{width:100%}.approval-reminder-form{min-width:0;width:100%}.approval-reminder-form .form-control{width:100%;min-width:0}.announcement-admin-row{align-items:flex-start;flex-direction:column}.notification-popover-foot{justify-content:flex-start}}
/* v40 markup compatibility / final alignment */
.top-icon-action>i{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 4px;border:2px solid #fff;border-radius:999px;background:#e53e3e;color:#fff;font-size:8px;font-style:normal;font-weight:900;display:grid;place-items:center;line-height:1}.notification-mini.unread{background:#f3f8ff}.notification-mini.unread .notification-dot{background:#1769e8;box-shadow:0 0 0 4px rgba(23,105,232,.10)}.notification-mini>div>small{display:block;color:#617086;font-size:9px;line-height:1.45}.notification-mini>div>em{display:block;color:#98a4b3;font-size:8px;font-style:normal;margin-top:4px}.notification-empty{padding:24px 15px;text-align:center;color:#8190a3;font-size:10px}.notification-full.unread{border-color:#bed5f3;background:#f6faff;box-shadow:inset 3px 0 0 #1769e8}.notification-status{width:8px;height:8px;border-radius:50%;background:#bcc8d5;margin-top:5px}.notification-full.unread .notification-status{background:#1769e8;box-shadow:0 0 0 4px rgba(23,105,232,.1)}.notification-full-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.notification-full-head strong{font-size:11px;color:#203651}.notification-full-head time{font-size:8px;color:#95a2b2;white-space:nowrap}.notification-arrow{font-size:16px;color:#8ea0b6}.portal-announcement:before{display:none}.portal-announcement{grid-template-columns:36px 1fr}.announcement-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-size:15px;font-weight:950;background:#e7f1ff;color:#1769e8}.priority-important .announcement-icon{background:#fff0cd;color:#b86f00}.priority-urgent .announcement-icon{background:#ffe0e0;color:#c93737}.announcement-kicker{font-size:7.5px;font-weight:900;letter-spacing:.08em;color:#8795a7;margin-bottom:2px}.chat-contacts.card,.chat-window.card{padding:0}.chat-panel-title{padding:14px 15px;border-bottom:1px solid #eaf0f6;display:flex;align-items:center;justify-content:space-between}.chat-panel-title strong{font-size:12px;color:#233a56}.chat-panel-title span{font-size:8px;color:#8a97a9}.chat-window-head{display:flex;align-items:center;gap:11px}.chat-window-head .chat-avatar.large{width:42px;height:42px;flex:0 0 42px}.chat-window-head strong{display:block;font-size:12px;color:#233a56}.chat-window-head small{display:block;margin-top:2px}.chat-contact>i{min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#1769e8;color:#fff;font-size:8px;font-style:normal;font-weight:900;display:grid;place-items:center}.chat-rule strong{display:block;font-size:8.5px;color:#52657d;margin-bottom:2px}.chat-rule span{display:block}.notification-summary-grid{margin-bottom:18px}.notification-centre-card{margin-top:0}.top-actions .message-top-link{display:inline-grid}
body[data-theme="dark"] .top-icon-action>i{border-color:#0d1827}body[data-theme="dark"] .notification-mini.unread,body[data-theme="dark"] .notification-full.unread{background:#152942}body[data-theme="dark"] .notification-mini>div>small,body[data-theme="dark"] .notification-mini>div>em{color:#9fb0c5}body[data-theme="dark"] .notification-full-head strong,body[data-theme="dark"] .chat-panel-title strong,body[data-theme="dark"] .chat-window-head strong{color:#e8f0fa}body[data-theme="dark"] .chat-panel-title{border-color:#27384f}body[data-theme="dark"] .announcement-icon{background:#17335a;color:#8fc2ff}body[data-theme="dark"] .priority-important .announcement-icon{background:#42331a;color:#f5c768}body[data-theme="dark"] .priority-urgent .announcement-icon{background:#48252d;color:#ff9aab}body[data-theme="dark"] .chat-rule strong{color:#c1cedd}
@media(max-width:640px){.notification-full-head{flex-direction:column;gap:3px}.portal-announcement{grid-template-columns:32px 1fr}.announcement-icon{width:30px;height:30px}.top-actions .message-top-link{display:none}}
