:root {--imp29-bg:#f4f7fb; --imp29-card:#ffffff; --imp29-ink:#0f172a; --imp29-muted:#64748b; --imp29-line:#e2e8f0; --imp29-sky:#0284c7; --imp29-green:#059669; --imp29-rose:#e11d48; --imp29-amber:#d97706; --sidebar-width:240px!important;}
html, body {scroll-behavior:auto!important; background:var(--imp29-bg)!important; color:var(--imp29-ink)!important;}
#paneMainApplication, .app-workspace-fluid {background:var(--imp29-bg)!important; overflow-x:hidden!important;}
#impHeaderProfileV8, .header-user-badge {background:linear-gradient(135deg,#0f172a,#075985)!important; color:#fff!important; border:1px solid rgba(125,211,252,.28)!important; border-radius:18px!important; padding:9px 12px!important; box-shadow:0 12px 26px rgba(15,23,42,.14)!important; display:flex!important; align-items:center!important; gap:10px!important; min-width:0!important;}
.imp-profile-avatar-v8 {width:38px!important; height:38px!important; min-width:38px!important; border-radius:14px!important; display:flex!important; align-items:center!important; justify-content:center!important; background:linear-gradient(135deg,#38bdf8,#10b981)!important; color:#fff!important; font-weight:950!important;}
.imp-profile-name-v8 {font-weight:950!important; color:#fff!important; line-height:1.1!important; max-width:170px!important; white-space:nowrap!important; overflow:hidden!important; text-overflow:ellipsis!important;}
.imp-profile-meta-v8 {display:flex!important; gap:6px!important; align-items:center!important; color:#dbeafe!important; font-size:.68rem!important; font-weight:850!important; text-transform:uppercase!important; letter-spacing:.35px!important;}
.imp-profile-meta-v8 i {font-size:.43rem!important; color:#22c55e!important;}
body:not([data-role="Admin"]) #bMasterBody td.imp29-lock-cell, body:not([data-role="Admin"]) #bSupplierBody td.imp29-lock-cell, body:not([data-role="Admin"]) #bMasukBody td.imp29-lock-cell, body:not([data-role="Admin"]) #bKeluarBody td.imp29-lock-cell {width:52px!important; min-width:52px!important; max-width:52px!important; text-align:center!important; vertical-align:middle!important; padding:4px!important; position:relative!important; background:#fff!important; overflow:hidden!important;}
body:not([data-role="Admin"]) td.imp29-lock-cell::before {content:"\f023"!important; font-family:"Font Awesome 6 Free"!important; font-weight:900!important; display:inline-flex!important; align-items:center!important; justify-content:center!important; width:28px!important; height:28px!important; min-width:28px!important; min-height:28px!important; border-radius:50%!important; background:#e0f2fe!important; color:#0284c7!important; border:1px solid #bae6fd!important; font-size:13px!important; line-height:1!important; margin:0 auto!important; animation:none!important; transition:none!important; transform:none!important; box-shadow:none!important; filter:none!important; opacity:1!important;}
body[data-role="Admin"] td.imp29-lock-cell::before {content:none!important; display:none!important;}
.aksi-locked-pill, .aksi-user-locked-final, .aksi-user-locked-v48, .role-user-locked-pill {animation:none!important; transition:none!important; transform:none!important; box-shadow:none!important; filter:none!important; background:transparent!important; border:0!important; color:#0284c7!important;}
#tab-stokGudang, #tab-stokGudang *, #bStokBody, #bStokBody *, #tabelSisaStok, #tabelSisaStok *, #tabelDaftarMaterial, #tabelDaftarMaterial * {animation:none!important; transition:none!important; transform:none!important; filter:none!important;}
#tab-stokGudang .table tbody tr:hover, #bStokBody tr:hover {transform:none!important; box-shadow:none!important;}
#tab-dashboard {padding:0!important; background:transparent!important; border:0!important; box-shadow:none!important;}
.imp29-dashboard {display:grid!important; gap:15px!important; max-width:1480px!important; margin:0 auto 20px!important;}
.imp29-hero {position:relative!important; overflow:hidden!important; border-radius:30px!important; padding:24px!important; background:radial-gradient(circle at 86% 15%,rgba(255,255,255,.18),transparent 28%),linear-gradient(135deg,#0f172a 0%,#075985 56%,#059669 100%)!important; color:#fff!important; box-shadow:0 24px 54px rgba(15,23,42,.22)!important;}
.imp29-hero-top {display:flex!important; justify-content:space-between!important; gap:14px!important; align-items:flex-start!important; flex-wrap:wrap!important;}
.imp29-hero h2 {margin:0!important; color:#fff!important; font-family:'Space Grotesk',sans-serif!important; font-size:clamp(1.65rem,3vw,2.55rem)!important; font-weight:950!important; letter-spacing:-1.1px!important; line-height:1.05!important;}
.imp29-hero p {margin:9px 0 0!important; color:#dbeafe!important; font-weight:750!important; max-width:850px!important; line-height:1.55!important;}
.imp29-chip {display:inline-flex!important; align-items:center!important; gap:8px!important; border-radius:999px!important; background:rgba(255,255,255,.14)!important; border:1px solid rgba(255,255,255,.24)!important; color:#fff!important; padding:8px 12px!important; font-size:.72rem!important; font-weight:950!important; text-transform:uppercase!important; letter-spacing:.45px!important; white-space:nowrap!important;}
.imp29-hero-mini, .imp29-kpi-grid {display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:12px!important;}
.imp29-hero-mini {margin-top:18px!important;}
.imp29-hero-mini div {border-radius:18px!important; background:rgba(255,255,255,.12)!important; border:1px solid rgba(255,255,255,.18)!important; padding:12px!important; min-height:74px!important;}
.imp29-hero-mini span, .imp29-kpi span {display:block!important; font-size:.68rem!important; font-weight:950!important; text-transform:uppercase!important; letter-spacing:.52px!important; color:#64748b!important;}
.imp29-hero-mini span {color:#bfdbfe!important;}
.imp29-hero-mini b, .imp29-kpi b {display:block!important; margin-top:6px!important; font-family:'Space Grotesk',sans-serif!important; font-size:clamp(1.08rem,2vw,1.56rem)!important; font-weight:950!important; line-height:1.08!important; word-break:break-word!important;}
.imp29-hero-mini b {color:#fff!important;}
.imp29-kpi {position:relative!important; overflow:hidden!important; border-radius:22px!important; background:#fff!important; border:1px solid var(--imp29-line)!important; padding:17px!important; box-shadow:0 14px 30px rgba(15,23,42,.06)!important; min-height:118px!important;}
.imp29-kpi:before {content:""!important; position:absolute!important; left:0!important; top:0!important; bottom:0!important; width:5px!important; background:linear-gradient(#0ea5e9,#10b981)!important;}
.imp29-kpi b {color:#0f172a!important;}
.imp29-kpi small {display:block!important; margin-top:8px!important; color:#64748b!important; font-size:.72rem!important; font-weight:800!important; line-height:1.35!important;}
.imp29-main-grid {display:grid!important; grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr)!important; gap:14px!important;}
.imp29-panel {border-radius:24px!important; background:#fff!important; border:1px solid var(--imp29-line)!important; box-shadow:0 14px 30px rgba(15,23,42,.055)!important; padding:16px!important; overflow:hidden!important;}
.imp29-panel-head {display:flex!important; justify-content:space-between!important; gap:10px!important; align-items:center!important; margin-bottom:12px!important;}
.imp29-panel-head h4 {margin:0!important; color:#0f172a!important; font-family:'Space Grotesk',sans-serif!important; font-size:1.05rem!important; font-weight:950!important;}
.imp29-panel-head span {font-size:.69rem!important; color:#0284c7!important; font-weight:950!important; text-transform:uppercase!important; letter-spacing:.45px!important; background:#e0f2fe!important; border:1px solid #bae6fd!important; padding:5px 9px!important; border-radius:999px!important;}
.imp29-feature-grid {display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:10px!important;}
.imp29-feature {display:grid!important; grid-template-columns:42px 1fr!important; gap:10px!important; align-items:center!important; text-align:left!important; border:1px solid #e2e8f0!important; background:linear-gradient(135deg,#fff,#f8fafc)!important; border-radius:18px!important; padding:12px!important; min-height:86px!important; cursor:pointer!important; transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;}
.imp29-feature:hover {transform:translateY(-2px)!important; box-shadow:0 14px 26px rgba(14,165,233,.09)!important; border-color:#bae6fd!important;}
.imp29-feature i {grid-row:1/3!important; width:42px!important; height:42px!important; border-radius:15px!important; display:flex!important; align-items:center!important; justify-content:center!important; background:#0f172a!important; color:#7dd3fc!important;}
.imp29-feature b {font-size:.86rem!important; font-weight:950!important; color:#0f172a!important; line-height:1.2!important;}
.imp29-feature p {margin:3px 0 0!important; color:#64748b!important; font-size:.72rem!important; font-weight:750!important; line-height:1.35!important;}
.imp29-bars {display:grid!important; gap:10px!important;}
.imp29-bar-row {display:grid!important; grid-template-columns:132px 1fr 132px!important; gap:10px!important; align-items:center!important;}
.imp29-bar-row span, .imp29-bar-row b {font-size:.72rem!important; font-weight:950!important; color:#334155!important; word-break:break-word!important;}
.imp29-bar-row div {height:10px!important; background:#e2e8f0!important; border-radius:999px!important; overflow:hidden!important;}
.imp29-bar-row em {display:block!important; height:100%!important; border-radius:999px!important; background:linear-gradient(90deg,#0ea5e9,#10b981)!important;}
.imp29-feed {display:grid!important; gap:8px!important;}
.imp29-empty {padding:18px!important; text-align:center!important; color:#64748b!important; font-weight:850!important; background:#f8fafc!important; border:1px dashed #cbd5e1!important; border-radius:16px!important;}
.stream-log-item .imp29-log-clock {display:block!important; margin-top:7px!important; padding:6px 10px!important; width:max-content!important; max-width:100%!important; border-radius:999px!important; background:#f8fafc!important; border:1px solid #e2e8f0!important; color:#475569!important; font-size:.72rem!important; font-weight:900!important; white-space:normal!important;}
.stream-log-item .imp29-log-clock i {color:#0ea5e9!important;}
@media(max-width:1100px) {
.imp29-hero-mini, .imp29-kpi-grid, .imp29-feature-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important}
.imp29-main-grid {grid-template-columns:1fr!important}
.imp29-bar-row {grid-template-columns:105px 1fr 105px!important}
}
@media(max-width:560px) {
.imp29-hero {padding:18px!important;border-radius:24px!important}
.imp29-hero-mini, .imp29-kpi-grid, .imp29-feature-grid {grid-template-columns:1fr!important}
.imp29-bar-row {grid-template-columns:1fr!important}
.imp29-feature {grid-template-columns:38px 1fr!important}
.stream-log-item .imp29-log-clock {font-size:.64rem!important;padding:5px 8px!important}
}
