:root{
  --brand:#2563eb;--brand-bright:#2f7df6;--brand2:#7c3aed;
  --bg:#061225;--bg2:#081a33;--surface:#0b1d37;--surface2:#0e2444;
  --text:#edf6ff;--muted:#8fa6c4;--line:rgba(148,163,184,.18);
  --danger:#ef4444;--warn:#f59e0b;--ok:#22c55e;--cyan:#06b6d4;
}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;background:radial-gradient(circle at 75% -10%,rgba(37,99,235,.18),transparent 30%),linear-gradient(145deg,#061225 0%,#071a33 55%,#06152a 100%);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(180deg,#020b1b 0%,#071a3d 55%,#081d43 100%);color:#fff;padding:24px 14px;position:sticky;top:0;height:100vh;border-right:1px solid rgba(96,165,250,.14);box-shadow:18px 0 55px rgba(0,0,0,.18);z-index:20}.brand{font-size:25px;font-weight:900;letter-spacing:.2px;margin:0 10px 4px;text-shadow:0 0 24px rgba(96,165,250,.2)}.subbrand{font-size:12px;color:#9eb4d2;margin:0 10px 25px}.nav a{display:flex;align-items:center;gap:11px;padding:12px 12px;border-radius:9px;margin:5px 0;color:#dbeafe;font-size:14px;font-weight:650;transition:.18s ease}.nav a:hover{background:rgba(37,99,235,.18);transform:translateX(2px)}.nav a.active{background:linear-gradient(135deg,#0f6af5,#1d4ed8);color:#fff;box-shadow:0 7px 22px rgba(37,99,235,.28),inset 0 1px 0 rgba(255,255,255,.18)}.nav-icon{width:22px;text-align:center;font-size:17px}.main{padding:22px 26px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.page-title{font-size:27px;font-weight:900;letter-spacing:-.2px}.small{font-size:12px;color:var(--muted)}.topbar-right{display:flex;align-items:center;gap:16px}.datetime-box{display:flex;align-items:center;gap:12px;padding:7px 12px;border-left:1px solid rgba(148,163,184,.22)}.date-icon,.clock-icon{font-size:22px}.date-main,.time-main{font-size:16px;font-weight:800;color:#f8fbff}.date-sub{font-size:11px;color:#7dd3fc;margin-top:1px}.time-main{font-size:20px}.realtime{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:#86efac;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.23);border-radius:999px;padding:3px 7px;margin-top:2px}.realtime:before{content:"";width:6px;height:6px;border-radius:50%;background:#22c55e;box-shadow:0 0 10px #22c55e}.notification-bell{position:relative;font-size:22px;padding:9px}.notification-count{position:absolute;right:0;top:0;min-width:18px;height:18px;padding:0 4px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;font-size:10px;font-weight:800;border:2px solid #061225}.card{background:linear-gradient(145deg,rgba(14,36,68,.96),rgba(8,28,54,.98));border:1px solid rgba(125,211,252,.18);border-radius:14px;padding:17px;box-shadow:0 16px 40px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.025)}.card h3{margin:0 0 14px;font-size:15px;color:#f1f7ff}.cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.kpi-card{position:relative;overflow:hidden;min-height:136px;padding:18px;border-radius:14px;border:1px solid rgba(255,255,255,.17);box-shadow:0 16px 36px rgba(0,0,0,.2)}.kpi-card:after{content:"";position:absolute;width:135px;height:135px;border-radius:50%;right:-44px;top:-55px;background:rgba(255,255,255,.09)}.kpi-blue{background:linear-gradient(135deg,#084db8,#0b63df)}.kpi-green{background:linear-gradient(135deg,#0e764c,#14985f)}.kpi-purple{background:linear-gradient(135deg,#4b2894,#6a3cb6)}.kpi-orange{background:linear-gradient(135deg,#ad5e05,#d2780b)}.kpi-cyan{background:linear-gradient(135deg,#087f8f,#0799ac)}.kpi-head{display:flex;align-items:center;gap:11px;position:relative;z-index:2}.kpi-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);font-size:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}.kpi-label{font-size:12px;color:#e7f1ff}.kpi-value{font-size:31px;font-weight:900;line-height:1;margin-top:6px}.kpi-unit{font-size:12px;font-weight:700;margin-left:4px;color:#dbeafe}.kpi-foot{position:absolute;left:18px;bottom:13px;font-size:10px;color:rgba(255,255,255,.75);z-index:2}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1.2fr) minmax(280px,.9fr);gap:12px;margin-top:12px}.span2dash{grid-column:span 2}.right-rail{grid-row:span 2}.chart-card{min-height:310px}.chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px}.chart-meta{font-size:10px;color:#7dd3fc}.chart-wrap{height:240px;position:relative}.chart-wrap canvas{width:100%;display:block}.pm-status-wrap{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:18px;min-height:245px}.donut{width:158px;height:158px;border-radius:50%;display:grid;place-items:center;position:relative;margin:auto;box-shadow:0 0 28px rgba(37,99,235,.12)}.donut:after{content:"";position:absolute;inset:30px;border-radius:50%;background:#0b1d37;box-shadow:inset 0 0 18px rgba(0,0,0,.22)}.donut-center{position:relative;z-index:2;text-align:center}.donut-center b{font-size:28px}.donut-center span{display:block;font-size:10px;color:var(--muted)}.legend-row{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;padding:6px 0;font-size:12px;color:#cbdcf1}.legend-row b{color:#fff}.legend-dot{width:8px;height:8px;border-radius:2px;box-shadow:0 0 10px currentColor}.dashboard-table{width:100%;border-collapse:collapse}.dashboard-table th,.dashboard-table td{padding:10px 10px;border-bottom:1px solid rgba(148,163,184,.13);font-size:11px}.dashboard-table th{color:#8fa6c4;background:rgba(255,255,255,.015);font-weight:700}.dashboard-table tr:last-child td{border-bottom:0}.micro{font-size:9px;color:#6f89aa;margin-top:2px}.live-badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}.live-badge.ok{background:rgba(34,197,94,.17);color:#86efac}.live-badge.info{background:rgba(37,99,235,.22);color:#93c5fd}.live-badge.warn{background:rgba(245,158,11,.18);color:#fcd34d}.live-badge.danger{background:rgba(239,68,68,.18);color:#fca5a5}.activity-list{max-height:346px;overflow:auto}.activity-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 2px;border-bottom:1px solid rgba(148,163,184,.12)}.activity-item:last-child{border-bottom:0}.activity-icon{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;font-weight:900}.activity-icon.info{background:rgba(37,99,235,.23);color:#93c5fd}.activity-icon.success{background:rgba(34,197,94,.18);color:#86efac}.activity-icon.warning{background:rgba(245,158,11,.18);color:#fcd34d}.activity-icon.danger{background:rgba(239,68,68,.18);color:#fca5a5}.activity-copy b{display:block;font-size:11px}.activity-copy div{font-size:9px;color:#8fa6c4;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-item time{font-size:9px;color:#6f89aa}.alert-list{display:grid;gap:8px}.alert-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px;border-radius:9px;background:rgba(255,255,255,.025);border:1px solid rgba(148,163,184,.09)}.alert-symbol{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-weight:900}.alert-row.danger .alert-symbol{background:rgba(239,68,68,.2);color:#fca5a5}.alert-row.warning .alert-symbol{background:rgba(245,158,11,.18);color:#fde68a}.alert-row.info .alert-symbol{background:rgba(37,99,235,.2);color:#93c5fd}.alert-row b{font-size:10px}.alert-row div div{font-size:9px;color:#8fa6c4;margin-top:2px}.alert-row>span{font-size:9px;color:#7590b2}.map-card{min-height:360px}.map-wrap{height:300px;border-radius:10px;overflow:hidden;background:#08182d;border:1px solid rgba(125,211,252,.12);position:relative}.map-wrap .leaflet-container{background:#071528}.map-fallback{position:absolute;inset:0;display:none;place-items:center;text-align:center;color:#8198b7;font-size:12px;background:radial-gradient(circle at 50% 40%,rgba(37,99,235,.16),transparent 45%),#08182d}.map-fallback span{font-size:32px;display:block;margin-bottom:8px}.empty{text-align:center;color:#7188a8!important;padding:24px!important}.last-refresh{font-size:9px;color:#6f89aa}.live-state{display:flex;align-items:center;gap:5px;color:#86efac}.live-state:before{content:"";width:6px;height:6px;border-radius:50%;background:#22c55e;box-shadow:0 0 9px #22c55e}.live-state.offline{color:#fca5a5}.live-state.offline:before{background:#ef4444;box-shadow:0 0 9px #ef4444}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.table-wrap{overflow:auto;background:linear-gradient(145deg,rgba(14,36,68,.96),rgba(8,28,54,.98));border:1px solid rgba(125,211,252,.16);border-radius:14px;margin-top:16px}table{width:100%;border-collapse:collapse}th,td{padding:12px 14px;text-align:left;border-bottom:1px solid rgba(148,163,184,.12);font-size:13px}th{background:rgba(255,255,255,.025);color:#9fb5d0}.badge{display:inline-block;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;background:#243a59}.b-danger{background:rgba(239,68,68,.17);color:#fca5a5}.b-warn{background:rgba(245,158,11,.18);color:#fcd34d}.b-ok{background:rgba(34,197,94,.17);color:#86efac}.b-info{background:rgba(37,99,235,.22);color:#93c5fd}.btn{display:inline-block;border:1px solid rgba(148,163,184,.16);border-radius:9px;padding:9px 13px;font-weight:750;cursor:pointer;background:#132a49;color:#dbeafe}.btn:hover{filter:brightness(1.12)}.btn-primary{background:linear-gradient(135deg,#1670f8,#2459d9);border-color:rgba(96,165,250,.5);color:white;box-shadow:0 5px 16px rgba(37,99,235,.2)}.btn-danger{background:#b91c1c;color:white}.btn-sm{padding:6px 9px;font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field label{display:block;font-size:11px;font-weight:750;color:#9fb5d0;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;padding:10px 11px;border:1px solid rgba(148,163,184,.22);border-radius:9px;background:#081a31;color:#eef6ff;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.field textarea{min-height:90px}.field option{background:#081a31;color:#fff}.span2{grid-column:span 2}.flash{padding:11px 13px;border-radius:10px;margin-bottom:16px;background:rgba(34,197,94,.16);color:#a7f3d0;border:1px solid rgba(34,197,94,.2)}.error{background:rgba(239,68,68,.15);color:#fecaca;border-color:rgba(239,68,68,.22)}.pm-list .pm{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(148,163,184,.12)}.pm:last-child{border-bottom:0}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 25%,rgba(37,99,235,.25),transparent 32%),linear-gradient(145deg,#030a16,#071a33)}.login-card{width:min(430px,92vw);background:linear-gradient(145deg,#0d2340,#07172d);padding:29px;border-radius:19px;border:1px solid rgba(125,211,252,.17);box-shadow:0 26px 70px rgba(0,0,0,.4)}.login-title{font-size:31px;font-weight:950;color:#f8fbff;text-shadow:0 0 24px rgba(59,130,246,.3)}.muted{color:var(--muted)}.sig{border:1px dashed #527094;border-radius:10px;background:#fff;width:100%;height:180px;touch-action:none}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#94a3b8;margin-right:6px}code{background:#07172d;border:1px solid rgba(148,163,184,.14);border-radius:6px;padding:2px 5px;color:#7dd3fc}
@media(max-width:1280px){.cards{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.right-rail{grid-row:auto}.pm-status-wrap{grid-template-columns:150px 1fr}}
@media(max-width:980px){.layout{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.nav{display:flex;overflow:auto}.nav a{white-space:nowrap}.main{padding:18px}.topbar{align-items:flex-start}.topbar-right{flex-wrap:wrap;justify-content:flex-end}.cards{grid-template-columns:1fr 1fr}.grid2,.grid3,.dashboard-grid{grid-template-columns:1fr}.span2dash{grid-column:auto}.datetime-box{display:none}.chart-card{min-height:auto}}
@media(max-width:620px){.main{padding:12px}.page-title{font-size:22px}.cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span2{grid-column:span 1}.topbar-right .btn{display:none}.pm-status-wrap{grid-template-columns:1fr}.dashboard-table th:nth-child(3),.dashboard-table td:nth-child(3),.dashboard-table th:nth-child(4),.dashboard-table td:nth-child(4){display:none}}

/* User Account & Permission Center V1.2 */
.user-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.user-kpi{display:flex;align-items:center;gap:14px;min-height:104px;padding:17px 18px;border-radius:14px;background:linear-gradient(145deg,rgba(14,36,68,.96),rgba(8,28,54,.98));border:1px solid rgba(125,211,252,.16);box-shadow:0 14px 34px rgba(0,0,0,.16)}.user-kpi .uk-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;font-size:23px;font-weight:900}.uk-icon.blue{background:rgba(37,99,235,.22);color:#93c5fd}.uk-icon.green{background:rgba(34,197,94,.18);color:#86efac}.uk-icon.purple{background:rgba(139,92,246,.2);color:#c4b5fd}.uk-icon.orange{background:rgba(245,158,11,.19);color:#fde68a}.user-kpi small{display:block;color:#8fa6c4;font-size:11px}.user-kpi b{font-size:27px;margin-right:5px}.user-kpi span:not(.uk-icon){font-size:10px;color:#8fa6c4}.user-toolbar{padding:13px 16px}.user-filter{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;align-items:end}.filter-action{display:flex;gap:7px;padding-bottom:1px}.section-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.section-title-row h3{margin-bottom:3px}.user-cell{display:flex;align-items:center;gap:10px;min-width:230px}.avatar-mini,.avatar-lg,.avatar-xl{display:grid;place-items:center;border-radius:50%;font-weight:900;color:#fff;background:linear-gradient(135deg,#1670f8,#7040c8);box-shadow:0 8px 24px rgba(37,99,235,.24)}.avatar-mini{width:36px;height:36px;font-size:14px}.avatar-lg{width:72px;height:72px;font-size:27px}.avatar-xl{width:96px;height:96px;font-size:36px;margin:0 auto 14px}.role-chip{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;background:rgba(37,99,235,.2);color:#bfdbfe;border:1px solid rgba(96,165,250,.14)}.role-owner{background:rgba(245,158,11,.18);color:#fde68a}.role-manager{background:rgba(139,92,246,.2);color:#ddd6fe}.role-admin{background:rgba(37,99,235,.2);color:#bfdbfe}.role-dispatcher{background:rgba(6,182,212,.18);color:#a5f3fc}.role-technician{background:rgba(34,197,94,.17);color:#bbf7d0}.role-sales{background:rgba(236,72,153,.16);color:#fbcfe8}.role-stock{background:rgba(148,163,184,.16);color:#cbd5e1}.role-accounting{background:rgba(14,165,233,.16);color:#bae6fd}.user-detail-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.user-identity{display:flex;align-items:center;gap:16px}.user-name-line{display:flex;align-items:center;gap:10px}.user-name-line h2{margin:0;font-size:23px}.user-tags{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:9px}.user-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);min-width:430px;border:1px solid rgba(148,163,184,.12);border-radius:12px;overflow:hidden}.user-mini-stats div{padding:14px;text-align:center;background:rgba(255,255,255,.02);border-right:1px solid rgba(148,163,184,.12)}.user-mini-stats div:last-child{border-right:0}.user-mini-stats b{display:block;font-size:20px}.user-mini-stats span{font-size:9px;color:#8fa6c4}.check-field{display:flex;align-items:end}.check-line{min-height:40px;display:flex!important;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(148,163,184,.18);border-radius:9px;background:#081a31;width:100%}.check-line input{width:auto!important}.read-profile p,.profile-meta p{display:flex;justify-content:space-between;gap:15px;padding:10px 0;margin:0;border-bottom:1px solid rgba(148,163,184,.11)}.read-profile span,.profile-meta span{color:#8fa6c4;font-size:11px}.read-profile b,.profile-meta b{font-size:12px}.security-list{display:grid;gap:9px}.security-list>div{display:flex;justify-content:space-between;gap:12px;padding:10px 11px;border-radius:9px;background:rgba(255,255,255,.025);border:1px solid rgba(148,163,184,.09)}.security-list span{font-size:10px;color:#8fa6c4}.security-list b{font-size:11px}.reset-box{margin-top:14px;padding-top:14px;border-top:1px solid rgba(148,163,184,.12);display:flex;align-items:end;gap:10px}.reset-box .field{flex:1}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.permission-card{display:flex;align-items:flex-start;gap:10px;padding:11px;border-radius:10px;background:rgba(255,255,255,.025);border:1px solid rgba(148,163,184,.11);cursor:pointer;min-height:64px}.permission-card:hover{border-color:rgba(96,165,250,.35)}.permission-card input{margin-top:3px;accent-color:#2563eb}.permission-card b{display:block;font-size:11px}.permission-card small{display:block;color:#7188a8;font-size:8px;margin-top:4px;word-break:break-word}.permission-grid.readonly .permission-card{cursor:default}.permission-card.allowed{border-color:rgba(34,197,94,.16)}.permission-card.denied{opacity:.55}.perm-mark{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:rgba(34,197,94,.16);color:#86efac;font-weight:900;flex:0 0 auto}.permission-card.denied .perm-mark{background:rgba(239,68,68,.14);color:#fca5a5}.permission-actions{display:flex;gap:8px;margin-top:12px;align-items:center}.login-log-list{display:grid;gap:7px}.login-log{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 10px;border-radius:9px;background:rgba(255,255,255,.022);border:1px solid rgba(148,163,184,.08)}.login-result{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-weight:900}.login-result.success{background:rgba(34,197,94,.17);color:#86efac}.login-result.failed{background:rgba(239,68,68,.15);color:#fca5a5}.login-log b{display:block;font-size:10px}.login-log small{display:block;color:#7891b1;font-size:8px;margin-top:2px}.profile-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px}.profile-card{text-align:center}.profile-meta{margin-top:18px;text-align:left}.force-password{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px;margin-bottom:16px;border-radius:12px;background:linear-gradient(135deg,rgba(245,158,11,.2),rgba(180,83,9,.18));border:1px solid rgba(245,158,11,.35);color:#fde68a}.force-password b{font-size:14px}.force-password span{font-size:11px;color:#fcd34d}.permission-mini-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.permission-mini-list div{font-size:10px;color:#86efac;padding:8px 10px;border-radius:8px;background:rgba(34,197,94,.07);border:1px solid rgba(34,197,94,.1)}.permission-mini-list span{color:#dbeafe;margin-left:5px}.profile-login-row{display:grid;grid-template-columns:12px 70px 1fr auto;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(148,163,184,.1);font-size:10px}.profile-login-row time,.profile-login-row span{color:#8fa6c4}.user-table-wrap table{min-width:980px}
@media(max-width:1100px){.user-kpis{grid-template-columns:1fr 1fr}.user-detail-head{align-items:flex-start;flex-direction:column}.user-mini-stats{min-width:0;width:100%}.permission-grid{grid-template-columns:1fr 1fr}.profile-layout{grid-template-columns:1fr}.profile-card{max-width:none}.user-filter{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.user-kpis{grid-template-columns:1fr}.user-filter{grid-template-columns:1fr}.permission-grid{grid-template-columns:1fr}.user-mini-stats{grid-template-columns:1fr}.user-mini-stats div{border-right:0;border-bottom:1px solid rgba(148,163,184,.12)}.user-identity{align-items:flex-start}.avatar-lg{width:54px;height:54px}.permission-mini-list{grid-template-columns:1fr}.force-password{align-items:flex-start;flex-direction:column}}

.system-version{display:inline-flex;margin:7px 16px 8px;padding:4px 8px;border-radius:999px;background:rgba(37,99,235,.16);border:1px solid rgba(96,165,250,.18);font-size:9px;font-weight:800;color:#93c5fd;letter-spacing:.03em}


/* ===== SAPKAT V1.3 Customer 360 / Assets / Contracts ===== */
.customer-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.customer-summary>div{background:linear-gradient(145deg,#0d2b55,#0a2142);border:1px solid #1e4777;border-radius:16px;padding:16px 20px;box-shadow:0 12px 28px #0002}.customer-summary b{display:block;font-size:27px;color:#fff}.customer-summary span{color:#8fb0d7;font-size:12px}.customer360-intro{display:flex;align-items:center;gap:22px;background:radial-gradient(circle at 18% 25%,#1a59a955,transparent 38%),linear-gradient(135deg,#0c2346,#101d3a)}.orb{width:98px;height:98px;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:900;background:linear-gradient(135deg,#1677ff,#7c3aed);box-shadow:0 0 40px #2d77ff55;border:6px solid #ffffff12;flex:0 0 auto}.metric-chip{display:inline-grid;place-items:center;min-width:34px;height:28px;border-radius:9px;background:#2563eb33;color:#7fb4ff;font-weight:800}.metric-chip.cyan{background:#06b6d433;color:#67e8f9}.metric-chip.purple{background:#8b5cf633;color:#c4b5fd}
.customer-hero{display:flex;gap:22px;align-items:center;justify-content:space-between;padding:26px;border-radius:20px;border:1px solid #28507e;background:radial-gradient(circle at 75% 0,#1b5dc835,transparent 30%),linear-gradient(135deg,#09254a,#081b36);margin-bottom:14px}.customer-hero h1,.asset-hero h1{margin:4px 0 6px;font-size:30px}.customer-hero p,.asset-hero p{color:#9bb6d7;margin:0}.eyebrow{color:#5ed9ff;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em}.hero-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.hero-tags a{text-decoration:none}.customer-hero-stats{display:grid;grid-template-columns:repeat(4,88px);gap:9px}.customer-hero-stats>div{padding:14px 8px;text-align:center;border-radius:14px;background:#07182f99;border:1px solid #274d7b}.customer-hero-stats b{display:block;font-size:24px}.customer-hero-stats span{font-size:11px;color:#87a5ca}.customer-tabs{position:sticky;top:0;z-index:4;display:flex;gap:8px;padding:8px;margin:0 0 16px;background:#06162fe8;backdrop-filter:blur(8px);border-radius:12px}.customer-tabs a{padding:8px 12px;border-radius:9px;text-decoration:none;color:#aec5e2;font-size:12px;border:1px solid transparent}.customer-tabs a:hover{background:#123769;border-color:#2b5c98;color:#fff}.section-block{margin-top:16px;scroll-margin-top:80px}.site-grid,.asset-grid,.contract-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.site-card,.asset-card,.contract-card{border:1px solid #24486f;border-radius:14px;padding:15px;background:#081d39;text-decoration:none;color:inherit;transition:.16s}.site-card:hover,.asset-card:hover,.contract-card:hover{transform:translateY(-2px);border-color:#3878be;background:#0b274b}.site-card{display:flex;gap:12px}.site-pin{font-size:22px;color:#38bdf8}.site-card p{font-size:12px;color:#93afd0;min-height:32px}.site-card small,.asset-card small{color:#7999bf}.asset-card{display:flex;gap:12px}.asset-icon{height:44px;width:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#1467cc,#13a9c7);font-size:22px}.asset-title{font-size:11px;color:#65d8ff;text-transform:uppercase}.asset-card b{display:block;margin:2px 0 7px}.asset-card small{display:block;margin-bottom:7px}.inline-create{margin-top:14px;border-top:1px solid #173a64;padding-top:12px}.inline-create summary{cursor:pointer;color:#6ee7ff;font-weight:800;margin-bottom:14px}.checkbox-field label{display:flex!important;align-items:center;gap:8px}.checkbox-field input{width:auto!important}.timeline-mini{display:flex;flex-direction:column;gap:8px}.timeline-mini>a,.timeline-mini>div{display:grid;grid-template-columns:100px 1fr 1fr auto;gap:8px;align-items:center;padding:10px 11px;border-radius:10px;background:#071a34;border:1px solid #17385f;text-decoration:none;color:inherit}.timeline-mini span{color:#6ddaff;font-size:11px}.timeline-mini em{font-style:normal;color:#89a7ca;font-size:11px}.contract-top{display:flex;justify-content:space-between;gap:8px}.contract-card h4{margin:10px 0 5px}.contract-card p{color:#8faed1;font-size:12px}.contract-dates{display:flex;align-items:center;gap:8px;font-size:12px;margin:10px 0}.contract-dates i{color:#4ad7ff}.pm-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pm-strip>div{border:1px solid #24496f;background:#081d39;border-radius:12px;padding:13px}.pm-strip time{display:block;color:#5bd9ff;font-size:11px}.pm-strip b,.pm-strip span,.pm-strip small{display:block;margin-top:5px}.pm-strip small{color:#819fc2}.asset-hero{display:flex;gap:18px;align-items:center;padding:24px;border:1px solid #27517f;border-radius:18px;background:radial-gradient(circle at 70% 0,#19b5d72d,transparent 30%),linear-gradient(135deg,#09264b,#081a35);margin-bottom:14px}.asset-big-icon{width:72px;height:72px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#1476df,#09a9c1);font-size:35px;box-shadow:0 0 30px #0ea5e944}.asset-hero>div:nth-child(2){flex:1}.asset-spec-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.asset-spec-grid>div{background:#091f3d;border:1px solid #21476f;border-radius:12px;padding:13px}.asset-spec-grid span{display:block;font-size:10px;color:#7f9fc4}.asset-spec-grid b{font-size:12px;word-break:break-all}.asset-timeline{position:relative;padding-left:22px}.asset-timeline:before{content:"";position:absolute;left:7px;top:5px;bottom:5px;width:2px;background:#1f4d7e}.asset-timeline>div{position:relative;padding:0 0 22px 12px}.asset-timeline i{position:absolute;left:-20px;top:5px;width:10px;height:10px;border-radius:50%;background:#32d5ff;box-shadow:0 0 12px #32d5ff}.asset-timeline time,.asset-timeline small{display:block;color:#7f9fc4;font-size:11px}.asset-timeline b{display:block;margin:3px 0}.asset-timeline p{margin:4px 0;color:#a9c0dc}.contract-list{display:flex;flex-direction:column;gap:10px}.contract-row{display:grid;grid-template-columns:2fr 1.2fr 1fr auto;gap:18px;align-items:center;padding:16px 18px;border-radius:14px;border:1px solid #244a75;background:#081e3c;text-decoration:none;color:inherit}.contract-row:hover{background:#0a294f;border-color:#3a78bb}.contract-row span{color:#66ddff;font-size:11px}.contract-row h3{margin:4px 0}.contract-row p{margin:0;color:#8daaca;font-size:12px}.contract-row small,.contract-row em{display:block;color:#7898bc;font-size:10px;font-style:normal}.contract-row b{font-size:12px}
@media(max-width:1100px){.customer-summary,.pm-strip{grid-template-columns:repeat(2,1fr)}.site-grid,.asset-grid,.contract-grid{grid-template-columns:repeat(2,1fr)}.customer-hero{align-items:flex-start;flex-direction:column}.asset-spec-grid{grid-template-columns:repeat(3,1fr)}.contract-row{grid-template-columns:1fr 1fr}.customer-tabs{overflow:auto}}@media(max-width:700px){.customer-summary,.site-grid,.asset-grid,.contract-grid,.pm-strip,.asset-spec-grid{grid-template-columns:1fr}.customer-hero-stats{grid-template-columns:repeat(4,1fr);width:100%}.timeline-mini>a,.timeline-mini>div{grid-template-columns:1fr}.contract-row{grid-template-columns:1fr}.customer360-intro{align-items:flex-start;flex-direction:column}.customer-tabs{position:static}}


/* SAPKAT.COM V1.4 — PM Field Workflow */
.pm-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.pm-kpis>div{background:linear-gradient(135deg,#102b55,#0b1f3d);border:1px solid #234a78;border-radius:16px;padding:18px}.pm-kpis b{display:block;font-size:28px;color:#fff}.pm-kpis span{color:#90afd2;font-size:13px}.workflow-mini{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0}.workflow-mini span{background:#123b72;border:1px solid #285c99;padding:9px 12px;border-radius:999px;font-weight:700}.workflow-mini i{color:#52c7ff}.pm-work-head{margin-bottom:16px}.pm-meta-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:16px}.pm-meta-grid>div{background:#081b36;border:1px solid #1d3c64;border-radius:12px;padding:11px}.pm-meta-grid small{display:block;color:#7ea1c8}.pm-meta-grid b{display:block;margin-top:5px}.pm-start-card{text-align:center;padding:44px}.btn-lg{padding:13px 20px;font-size:15px}.pm-checklist-table{overflow-x:auto}.pm-check-row{display:grid;grid-template-columns:minmax(260px,2fr) minmax(220px,1.2fr) 130px 150px minmax(180px,1fr);gap:8px;align-items:center;border-bottom:1px solid #17385e;padding:10px 4px;min-width:1000px}.pm-check-head{color:#7fa6d2;font-size:12px;font-weight:800;text-transform:uppercase}.pm-check-row small{display:block;color:#7899bc;margin-top:3px}.pm-check-row input,.pm-check-row select{width:100%}.pm-section{background:linear-gradient(90deg,#133f78,transparent);border-left:4px solid #36b9ff;padding:9px 12px;font-weight:800;margin-top:8px;min-width:1000px}.result-select:has(option:checked[value="pass"]){border-color:#22c55e}.result-select:has(option:checked[value="fail"]){border-color:#ef4444}.pm-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.pm-photo-grid>div{background:#07182f;border:1px solid #1c3d64;border-radius:12px;padding:8px}.pm-photo-grid img{display:block;width:100%;height:150px;object-fit:cover;border-radius:8px;margin:6px 0}.part-row{display:grid;grid-template-columns:1.3fr 1fr .6fr 1fr;gap:8px;padding:9px;border-bottom:1px solid #17385e}.part-add{margin-top:14px}.qty-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.pm-existing-sign{max-width:100%;max-height:100px;background:#fff;border-radius:8px;margin:8px 0}.pm-sig{background:#fff;width:100%;height:150px}.pm-actionbar{position:sticky;bottom:10px;z-index:20;display:flex;justify-content:flex-end;gap:10px;background:rgba(5,20,43,.94);backdrop-filter:blur(10px);border:1px solid #244b78;border-radius:14px;padding:12px;margin-top:16px}.template-layout{display:grid;grid-template-columns:360px 1fr;gap:16px}.template-link{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #1c3b62;border-radius:12px;margin-top:8px;text-decoration:none;color:#dbeafe;background:#081b36}.template-link.active{background:#123f7c;border-color:#3b82f6}.template-link small,.template-item small{display:block;color:#86a7cd;margin-top:3px}.template-item{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;border-bottom:1px solid #17385e;padding:10px 0}.sort-no{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#163e70;color:#8fd4ff;font-weight:800}
@media(max-width:1100px){.pm-kpis{grid-template-columns:repeat(2,1fr)}.pm-meta-grid{grid-template-columns:repeat(3,1fr)}.template-layout{grid-template-columns:1fr}.pm-photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.pm-kpis{grid-template-columns:1fr 1fr}.pm-meta-grid{grid-template-columns:1fr 1fr}.pm-photo-grid{grid-template-columns:1fr}.pm-actionbar{position:static;flex-wrap:wrap}.pm-actionbar>*{flex:1}.part-row{grid-template-columns:1fr 1fr}}

/* SAPKAT.COM V1.5 — Inventory / Stock / Job & PM Cost */
.stock-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.stock-kpi{position:relative;overflow:hidden;border:1px solid rgba(125,211,252,.18);border-radius:16px;padding:18px;background:#0b213f}.stock-kpi:after{content:"";position:absolute;width:95px;height:95px;border-radius:50%;right:-25px;top:-30px;background:rgba(255,255,255,.08)}.stock-kpi small,.stock-kpi span{display:block;color:#d4e6fb;font-size:11px}.stock-kpi b{display:block;font-size:30px;margin:5px 0;color:#fff}.stock-kpi.blue{background:linear-gradient(135deg,#0f60d6,#1746b8)}.stock-kpi.orange{background:linear-gradient(135deg,#d76b08,#b94a08)}.stock-kpi.green{background:linear-gradient(135deg,#0d8a57,#08734c)}.stock-kpi.purple{background:linear-gradient(135deg,#6d37c7,#4b2a9b)}.stock-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(360px,.8fr);gap:16px}.stock-request-form,.stock-issue-form{display:grid;grid-template-columns:minmax(260px,2fr) 130px minmax(180px,1fr) auto;gap:10px;align-items:end;margin:14px 0}.stock-request-button{align-self:end}.request-list{display:flex;flex-direction:column;gap:8px}.request-row{display:grid;grid-template-columns:minmax(240px,2fr) minmax(150px,1fr) 120px auto;gap:14px;align-items:center;padding:12px;border:1px solid #21456e;border-radius:12px;background:#071b35}.request-row b,.request-row small{display:block}.request-row small{color:#87a6ca;margin-top:4px}.request-no{color:#67dcff;font-size:11px;font-weight:800}.request-actions{display:flex;gap:7px}.stock-qty{font-weight:900}.stock-qty.in{color:#5eea9e}.stock-qty.out{color:#ff8b8b}.job-parts-list{display:flex;flex-direction:column;gap:8px}.job-part-row{display:grid;grid-template-columns:minmax(230px,2fr) minmax(140px,1fr) minmax(120px,.8fr) minmax(140px,1fr);gap:12px;align-items:center;padding:11px;border:1px solid #1e416b;border-radius:11px;background:#071b35}.job-part-row small{display:block;color:#829fc2;margin-top:3px}
@media(max-width:1200px){.stock-layout{grid-template-columns:1fr}.stock-request-form,.stock-issue-form{grid-template-columns:1fr 1fr}.request-row{grid-template-columns:1fr 1fr}.job-part-row{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.stock-kpis{grid-template-columns:1fr 1fr}.stock-request-form,.stock-issue-form,.request-row,.job-part-row{grid-template-columns:1fr}.request-actions{flex-wrap:wrap}}
