@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700;900&display=swap');
:root{--primary:#0f6fb3;--soft:#f4f9fd;--text:#1f2937;--muted:#64748b;--border:#e5e7eb;--red:#dc2626;--green:#16a34a;--orange:#f97316;--shadow:0 1px 3px rgba(15,23,42,.08)}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f8fafc;color:var(--text);font-size:16px}.app{width:min(100%,1100px);margin:auto;background:#fff;min-height:100vh}.topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:10px 12px;background:#fff;border-bottom:1px solid var(--border)}.topbar h1{margin:0;color:var(--primary);font-size:23px}.topbar p{margin:2px 0 0;color:var(--muted);font-weight:700}.menu,.logout{border:1px solid var(--border);border-radius:9px;padding:9px;text-decoration:none;color:var(--primary);font-weight:900;background:white}.logout{color:var(--red)}.panel,.detail-card,.section-card,.list-table{margin:12px;border:1px solid var(--border);border-radius:12px;background:white;box-shadow:var(--shadow)}.panel,.detail-card,.section-card{padding:14px}.sticky-filter{position:sticky;top:66px;z-index:30}.filter-grid{display:grid;grid-template-columns:1.4fr repeat(5,1fr) auto auto;gap:8px}.form-grid{display:grid;gap:10px}.form-grid label{font-weight:900}input,select,textarea{width:100%;min-height:44px;border:1px solid var(--border);border-radius:9px;padding:9px 10px;font:inherit;background:#fff}textarea{min-height:92px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:9px;padding:9px 12px;font-weight:900;text-decoration:none;border:1px solid var(--border);cursor:pointer}.btn.primary{background:var(--primary);border-color:var(--primary);color:white}.btn.secondary{background:#fff;color:var(--primary);border-color:var(--primary)}.btn.danger{background:#fff;color:var(--red);border-color:var(--red)}.btn.fit{width:auto}.btn.small{min-height:34px;padding:5px 9px}.dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:9px;margin:12px}.dash-card{display:flex;justify-content:space-between;gap:8px;align-items:center;text-decoration:none;color:var(--text);border:1px solid var(--border);border-radius:12px;background:#fff;padding:10px;box-shadow:var(--shadow)}.dash-card span{font-weight:900}.dash-card b{background:var(--primary);color:#fff;border-radius:99px;min-width:34px;height:30px;display:grid;place-items:center}.dash-card.total{background:var(--soft);border-color:#bfdbfe}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px}.toolbar p{margin:0;color:var(--muted);font-weight:800}.list-table{overflow:hidden}.list-header,.list-row{display:grid;grid-template-columns:1.6fr .75fr .8fr .8fr .85fr .8fr}.list-header{background:#edf6fc;color:#334155;font-weight:900;font-size:13px}.list-header>div,.list-row>div{padding:10px;border-right:1px solid #dbe6ef;border-bottom:1px solid #dbe6ef;overflow-wrap:anywhere}.list-row{color:inherit;text-decoration:none}.list-row:hover{background:#eef7ff}.list-row small{display:block;color:var(--muted);margin-top:4px}.status{display:inline-block;border-radius:99px;padding:5px 9px;color:white;background:#64748b;font-weight:900;font-size:12px}.status.opportunity{background:#14b8a6}.status.new{background:#0891b2}.status.rap{background:#2563eb}.status.quotation{background:#f59e0b}.status.lelang-user,.status.lelang-vendor{background:#ef4444}.status.kontrak-user{background:#8b5cf6}.status.kontrak-vendor{background:#f97316}.status.rks,.status.pr{background:#6366f1}.status.berlangsung{background:#10b981}.status.selesai{background:#64748b}.detail-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.detail-head h2,.section-card h3,.form-panel h2{margin:0 0 10px;color:var(--primary)}.chips{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.chips span{border:1px solid var(--border);border-radius:99px;padding:6px 9px;font-weight:800;background:#f8fafc}.desc{border-left:4px solid var(--primary);background:#f8fbff;padding:10px;border-radius:9px;line-height:1.45}.meta{margin-top:10px;color:var(--muted);font-size:13px}.detail-actions,.form-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.detail-actions form{margin:0}.remarks-thread{display:grid;gap:8px;max-height:360px;overflow:auto}.bubble{border:1px solid var(--border);background:#fff;padding:10px;border-radius:10px}.bubble p{white-space:pre-wrap}.bubble small,.activity-card small,.link-grid small{display:block;color:var(--muted)}.remark-form,.link-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.link-form{grid-template-columns:160px 1fr 1.4fr auto}.timeline{display:grid;gap:8px}.history-item{border-left:4px solid var(--primary);padding:9px 10px;background:#f8fbff;border-radius:9px}.history-item.backward{border-left-color:var(--red);background:#fff1f2}.history-item.start{border-left-color:#0ea5e9}.history-item small{display:block;color:var(--muted);margin-top:4px}.activity-board{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.activity-summary{border-radius:12px;padding:10px;background:#eff6ff;border:1px solid #bfdbfe;font-weight:900}.activity-summary b{font-size:24px;display:block}.activity-card{border:1px solid var(--border);border-radius:12px;padding:10px;margin-bottom:8px;background:#fff}.activity-card h4{margin:0 0 5px}.activity-row{display:grid;grid-template-columns:1fr 1.2fr .7fr .8fr .8fr 1fr 42px;gap:6px;margin:7px 0}.link-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:9px}.link-grid a{border:1px solid var(--border);border-radius:12px;padding:10px;text-decoration:none;color:var(--text);background:#f8fbff}.alert{margin:12px;padding:10px;border-radius:10px;background:#dcfce7;border:1px solid #bbf7d0;font-weight:800}.alert.danger{background:#fee2e2;border-color:#fecaca;color:#991b1b}.empty{padding:18px;text-align:center;color:var(--muted);font-weight:800}.pagination{display:flex;gap:6px;flex-wrap:wrap;margin:12px}.pagination a{padding:8px 11px;border:1px solid var(--border);border-radius:8px;text-decoration:none;color:var(--primary);font-weight:900}.pagination a.active{background:var(--primary);color:white}.login-page{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg,#eff6ff,#fff)}.login-card{width:min(92vw,420px);background:white;border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:0 20px 60px rgba(15,23,42,.16)}.login-card h1{color:var(--primary);margin-top:0}.login-card form{display:grid;gap:9px}.login-card small{display:block;margin-top:12px;color:var(--muted)}@media(max-width:850px){body{font-size:15px}.filter-grid,.list-header,.list-row,.activity-row,.link-form{grid-template-columns:1fr}.list-header{display:none}.list-row{border-bottom:1px solid var(--border)}.list-row>div{border-right:0}.sticky-filter{position:static}.remark-form{grid-template-columns:1fr}.activity-board{grid-template-columns:1fr}.topbar h1{font-size:18px}.dashboard{grid-template-columns:repeat(2,1fr)}}

/* Area 3 update v2 - mobile compact, clearer rows, admin, thumbnails */
.top-actions{display:flex;gap:6px;align-items:center}.navlink{border:1px solid var(--border);border-radius:8px;padding:8px;text-decoration:none;color:var(--primary);font-weight:900;background:#fff}.summary-toggle{display:none;margin:6px 8px 0;text-align:right}.summary-toggle button{border:0;background:transparent;color:var(--primary);font-size:12px;font-weight:900;text-decoration:underline;padding:2px}.dashboard.compact{gap:5px;margin:6px 8px}.dash-card{padding:6px 7px;border-radius:8px}.dash-card span{font-size:12px}.dash-card b{min-width:26px;height:24px;font-size:13px}.compact-panel{margin:6px 8px;padding:7px;border-radius:8px}.toolbar{margin:6px 8px}.toolbar p{font-size:12px}.btn{min-height:32px;border-radius:7px;padding:5px 8px;font-size:13px}.filter-grid{gap:4px}.filter-grid input,.filter-grid select,input,select,textarea{min-height:34px;border-radius:7px;padding:5px 7px;font-size:14px}.compact-list{margin:6px 8px;border-radius:8px}.list-header>div,.list-row>div{padding:5px 6px}.list-row:nth-child(odd){background:#ffffff}.list-row:nth-child(even){background:#eef7ff}.list-row:hover{background:#dff0ff}.list-row b{font-size:14px;line-height:1.18}.list-row small{font-size:11.5px;margin-top:1px;line-height:1.15}.status{padding:3px 6px;font-size:10.5px}.detail-status{font-size:11px;padding:4px 7px}.chips{gap:4px;margin:5px 0}.chips span{padding:3px 6px;font-size:12px}.desc{padding:6px;font-size:13px}.meta{font-size:11px;margin-top:5px}.section-card h3,.detail-head h2,.form-panel h2{font-size:17px;margin-bottom:5px}.bubble{padding:6px;border-radius:7px}.bubble p{margin:4px 0;font-size:13px}.remark-form,.link-form{gap:5px;margin-top:6px}.activity-board.plus-total{grid-template-columns:repeat(4,1fr);gap:5px}.activity-summary{padding:6px;border-radius:8px}.activity-summary span{font-size:11px}.activity-summary b{font-size:18px}.activity-list-graphic{display:grid;gap:7px}.activity-line-row{display:grid;grid-template-columns:minmax(0,180px) 1fr;gap:8px;align-items:stretch}.activity-side{border-radius:12px;padding:8px;color:#fff;background:#64748b;box-shadow:0 8px 16px rgba(15,23,42,.12)}.activity-side.rencana{background:#0f172a}.activity-side.berlangsung{background:#1d4ed8}.activity-side.selesai{background:#15803d}.activity-side b{display:block;font-size:13px;line-height:1.2}.activity-side small{font-size:11px;color:#fff}.activity-track{border:1px solid #dbeafe;border-radius:12px;padding:7px;background:#f8fbff}.activity-bar{height:28px;min-width:80px;max-width:100%;border-radius:99px;display:flex;align-items:center;justify-content:flex-end;padding:0 9px;color:#fff;font-size:11px;font-weight:900;background:#64748b;box-shadow:0 8px 14px rgba(15,23,42,.12)}.activity-bar.rencana{background:#0f172a;width:35%}.activity-bar.berlangsung{background:#1d4ed8;width:68%}.activity-bar.selesai{background:#15803d;width:100%}.activity-track p{font-size:12px;margin:5px 0}.activity-track small{font-size:11px;color:var(--muted)}.thumb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:7px}.thumb-card{border:1px solid var(--border);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--text);background:#fff;box-shadow:var(--shadow)}.thumb-card img,.thumb-fallback{height:82px;width:100%;display:grid;place-items:center;background:#eff6ff;object-fit:cover}.thumb-fallback span{width:42px;height:42px;border-radius:99px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:22px;font-weight:900}.thumb-fallback small{font-size:10px;color:var(--muted)}.thumb-card b{display:block;padding:5px 6px 0;font-size:12px}.thumb-card>small{display:block;padding:2px 6px 6px;font-size:10.5px;color:var(--muted)}.admin-tabs{display:flex;gap:6px;flex-wrap:wrap}.admin-tabs a{padding:6px 8px;border:1px solid var(--border);border-radius:8px;text-decoration:none;color:var(--primary);font-weight:900;font-size:13px}.admin-tabs a.active{background:var(--primary);color:white}.admin-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px}.checkline{display:flex;gap:5px;align-items:center;font-weight:800}.checkline input{width:auto;min-height:auto}.admin-user{grid-template-columns:1fr .7fr 1.1fr .5fr .4fr .8fr}.admin-master{grid-template-columns:1fr .5fr .5fr .8fr}.row-actions{display:flex!important;gap:6px;align-items:center;flex-direction:row!important}.row-actions a,.row-actions button{font-size:12px;border:0;background:transparent;color:var(--primary);font-weight:900;text-decoration:underline;padding:0;cursor:pointer}.row-actions button{color:var(--red)}.login-links{margin-top:8px}.login-links a{color:var(--primary);font-weight:900}.hint{color:var(--muted);font-size:12px}
@media(max-width:850px){.summary-toggle{display:block}.dashboard.compact{display:none}.dashboard.compact.show{display:grid;grid-template-columns:repeat(2,1fr)}.filter-grid{grid-template-columns:1fr 1fr}.filter-grid input[name=q]{grid-column:1 / -1}.filter-grid .btn{min-height:31px}.list-row{display:grid;grid-template-columns:1fr .42fr .45fr}.list-row>div{border-right:0;border-bottom:0;padding:4px 5px;font-size:12px}.list-row>div:nth-child(1){grid-column:1 / -1}.list-row>div:nth-child(4){display:none}.list-row>div:nth-child(6){grid-column:1 / -1;font-size:11px;color:var(--muted);padding-top:0}.activity-board.plus-total{grid-template-columns:repeat(2,1fr)}.activity-line-row{grid-template-columns:1fr}.activity-side{padding:7px}.activity-track{padding:6px}.detail-actions{gap:5px}.link-form{grid-template-columns:1fr}.admin-user,.admin-master{grid-template-columns:1fr}.row-actions{justify-content:flex-start}.topbar{grid-template-columns:34px 1fr auto;padding:6px 8px}.menu,.logout,.navlink{padding:6px;font-size:12px}.topbar h1{font-size:15px}.topbar p{font-size:11px}.panel,.detail-card,.section-card,.list-table{margin:5px}.panel,.detail-card,.section-card{padding:6px}.login-card{padding:14px}}
/* ===== Area 3 v4 ===== */
[hidden]{display:none!important}.home-hero{padding:18px}.home-hero h2{color:var(--primary);margin:0 0 14px}.home-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.home-big-btn{min-height:150px;border:1px solid #bfdbfe;border-radius:18px;background:linear-gradient(180deg,#fff,#f0f8ff);display:flex;flex-direction:column;justify-content:center;text-decoration:none;color:var(--text);padding:20px;box-shadow:0 12px 32px rgba(15,23,42,.10)}.home-big-btn span{font-size:30px;font-weight:900;color:var(--primary)}.home-big-btn small{margin-top:10px;color:var(--muted);font-weight:800;line-height:1.35}.home-big-btn.alat{background:linear-gradient(180deg,#fff,#f0fff4);border-color:#bbf7d0}.home-big-btn.alat span{color:#15803d}.notif-link b{background:#dc2626;color:#fff;border-radius:999px;padding:1px 5px;font-size:11px}.dashboard.compact{display:grid}.dashboard.compact[hidden]{display:none!important}.dash-card.active{outline:2px solid #0f172a}.pic-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.summary-toggle{display:block}.card-list{display:grid;gap:8px;margin:6px 8px}.alat-card{display:grid;grid-template-columns:1.2fr auto 1.4fr;gap:8px;align-items:center;text-decoration:none;color:var(--text);border:1px solid var(--border);border-left:8px solid #64748b;border-radius:12px;background:#fff;padding:8px;box-shadow:var(--shadow)}.alat-card:nth-child(even){background:#eef7ff}.alat-card h3{margin:0;color:var(--primary);font-size:16px}.alat-card p{margin:2px 0;font-weight:900}.alat-card small{color:var(--muted);font-weight:800}.alat-card.ready{border-left-color:#16a34a}.alat-card.ready-catatan{border-left-color:#facc15}.alat-card.breakdown{border-left-color:#f97316}.alat-card.accident{border-left-color:#dc2626}.alat-status{border-radius:6px;padding:6px 9px;font-weight:900;font-size:12px;color:#fff;background:#64748b}.alat-status.ready{background:#16a34a}.alat-status.ready-catatan{background:#facc15;color:#111827}.alat-status.breakdown{background:#f97316;color:#111827}.alat-status.accident{background:#dc2626}.alat-status.belum-update{background:#64748b}.alat-notes{font-size:13px;line-height:1.25}.alat-filter{grid-template-columns:1.4fr .7fr .7fr auto auto}.equipment-link-grid,.task-button-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}.equipment-mini-card,.task-button{border:1px solid var(--border);border-radius:12px;background:#f8fbff;padding:8px;text-decoration:none;color:var(--text);display:block}.equipment-mini-card b,.task-button b{display:block;color:var(--primary)}.equipment-mini-card span,.task-button span{font-size:13px;font-weight:800}.alat-search-form{display:grid;grid-template-columns:1fr auto;gap:6px;margin:8px 0}.alat-result-list{display:grid;gap:6px}.alat-result-row{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center;border:1px solid var(--border);border-radius:8px;padding:6px}.three-col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.history-card-safe-flow{display:flex;flex-wrap:wrap;gap:18px 26px;align-items:stretch;margin-top:10px}.history-card-safe-item{display:flex;align-items:center;gap:14px;flex:1 1 320px;max-width:430px}.history-card-safe{width:100%;border:6px solid #64748b;border-radius:9px;overflow:hidden;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.10)}.history-card-safe.rencana{border-color:#111827}.history-card-safe.berlangsung{border-color:#1d4ed8}.history-card-safe.selesai{border-color:#15803d}.history-card-safe.ready{border-color:#16a34a}.history-card-safe.ready-catatan{border-color:#facc15}.history-card-safe.breakdown{border-color:#f97316}.history-card-safe.accident{border-color:#dc2626}.history-card-safe-head{min-height:45px;display:grid;place-items:center;text-align:center;padding:7px;font-size:18px;font-weight:900;color:#fff;background:#64748b}.history-card-safe-head.rencana{background:#111827}.history-card-safe-head.berlangsung{background:#1d4ed8}.history-card-safe-head.selesai{background:#15803d}.history-card-safe-head.ready{background:#16a34a}.history-card-safe-head.ready-catatan{background:#facc15;color:#111827}.history-card-safe-head.breakdown{background:#f97316;color:#111827}.history-card-safe-head.accident{background:#dc2626}.history-card-safe-body{background:#fff;color:#001a3d;padding:7px 10px;font-size:13px;line-height:1.25;min-height:92px;overflow-wrap:anywhere}.history-card-safe-date{margin-bottom:3px}.history-card-safe-arrow{flex:0 0 auto;color:#3f3f46;font-size:34px;font-weight:900;line-height:1}.notif-list{display:grid;gap:8px}.notif-item{display:block;text-decoration:none;color:var(--text);border:1px solid var(--border);border-radius:10px;padding:9px;background:#fff}.notif-item.unread{background:#eff6ff;border-color:#bfdbfe}.notif-item p{margin:5px 0;white-space:pre-wrap}.notif-item small{color:var(--muted)}.thumb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:7px}.top-actions{flex-wrap:wrap}.activity-row{grid-template-columns:1fr 1.2fr .6fr .7fr .7fr .8fr 36px}.status-alat-form textarea{min-height:62px}.compact-details{margin-top:8px}.compact-details summary{cursor:pointer;font-weight:900;color:var(--primary)}
@media(max-width:850px){.home-menu-grid{grid-template-columns:1fr}.home-big-btn{min-height:120px}.home-big-btn span{font-size:24px}.pic-grid,.three-col,.alat-filter{grid-template-columns:1fr}.alat-card{grid-template-columns:1fr auto}.alat-notes{grid-column:1/-1}.history-card-safe-flow{display:grid;gap:10px}.history-card-safe-item{display:block;max-width:none;min-width:0}.history-card-safe-arrow{display:none}.history-card-safe-head{min-height:36px;font-size:15px}.history-card-safe-body{min-height:0;font-size:12px}.alat-search-form,.alat-result-row{grid-template-columns:1fr}.top-actions .navlink{font-size:11px;padding:5px}.top-actions{gap:3px}.dashboard.compact.show{grid-template-columns:repeat(2,1fr)}.equipment-link-grid,.task-button-grid{grid-template-columns:1fr}.activity-row{grid-template-columns:1fr}}

/* ===== Area 3 home picker clean card update ===== */
.home-hero{display:none!important}.app-picker-wrap{max-width:1040px;margin:18px auto 28px;padding:0 16px}.app-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.app-card{display:block;text-decoration:none;background:#fff;border:1px solid #e5e7eb;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(15,23,42,.07);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;color:var(--text)}.app-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(15,23,42,.12);border-color:#c4b5fd}.app-card-hero{height:168px;position:relative;overflow:hidden;background:linear-gradient(135deg,#8b7cf6 0%,#6d3be8 48%,#5b2fd6 100%)}.app-card-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.12) 0 22%,transparent 22% 38%,rgba(255,255,255,.10) 38% 55%,transparent 55% 70%,rgba(255,255,255,.08) 70% 100%)}.app-card-body{padding:20px 24px 24px}.app-card-body h2{margin:0 0 10px;font-size:22px;line-height:1.2;color:#111827;font-weight:900}.app-card-body p{margin:0 0 18px;font-size:15px;line-height:1.55;color:#4b5563}.app-card-action{min-height:34px;border:1px solid #e5e7eb;border-radius:10px;display:grid;place-items:center;color:#5b2fd6;font-size:13px;font-weight:900;background:#fff}.hero-task-pill{position:absolute;left:26px;top:54px;width:190px;height:72px;background:#fff;border-radius:999px;box-shadow:inset 0 0 0 12px rgba(99,102,241,.18);display:flex;align-items:center;gap:12px;padding:0 22px;color:#5b2fd6;font-size:24px}.hero-task-pill span{width:48px;height:24px;border-radius:999px;background:#cdd7fb;display:block}.hero-task-pill b{font-weight:900;letter-spacing:.2px}.hero-circle{position:absolute;right:46px;top:55px;width:88px;height:88px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 10px rgba(99,102,241,.16);display:flex;align-items:center;justify-content:center}.hero-circle .hero-icon{font-size:38px;color:#5b2fd6;font-weight:900}.hero-device{position:absolute;left:50%;top:50%;width:212px;height:76px;transform:translate(-50%,-50%);background:#fff;border-radius:24px;box-shadow:inset 0 0 0 10px rgba(99,102,241,.18)}.hero-device-screen{position:absolute;left:15px;top:14px;width:92px;height:48px;border-radius:17px;background:#cdd7fb}.hero-device-badge{position:absolute;right:14px;top:10px;width:88px;height:56px;border-radius:17px;background:#6737df;display:flex;align-items:center;justify-content:center}.hero-device-badge .hero-icon{font-size:31px;color:#fff}.app-card-status .app-card-hero{background:linear-gradient(135deg,#9b86fb 0%,#7853ee 45%,#6030de 100%)}
@media(max-width:850px){.app-picker-wrap{margin:10px auto 20px;padding:0 10px}.app-picker-grid{grid-template-columns:1fr;gap:14px}.app-card{border-radius:16px}.app-card-hero{height:138px}.app-card-body{padding:16px}.app-card-body h2{font-size:20px}.app-card-body p{font-size:13.5px;margin-bottom:13px}.hero-task-pill{left:18px;top:45px;width:158px;height:58px;padding:0 18px;font-size:20px;box-shadow:inset 0 0 0 9px rgba(99,102,241,.18)}.hero-task-pill span{width:38px;height:20px}.hero-circle{right:28px;top:43px;width:72px;height:72px;box-shadow:inset 0 0 0 8px rgba(99,102,241,.16)}.hero-circle .hero-icon{font-size:31px}.hero-device{width:178px;height:64px;border-radius:20px;box-shadow:inset 0 0 0 8px rgba(99,102,241,.18)}.hero-device-screen{left:13px;top:12px;width:74px;height:40px;border-radius:14px}.hero-device-badge{right:12px;top:9px;width:72px;height:46px;border-radius:14px}.hero-device-badge .hero-icon{font-size:26px}}

/* ===== Area 3 v6 compact status alat + task detail refinements ===== */
.alat-list-v6{gap:7px;margin:6px 8px}.alat-card-v6{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;padding:9px 12px!important;min-height:0!important}.alat-card-v6 .alat-card-main{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:start}.alat-card-v6 h3{grid-column:1/2;margin:0!important}.alat-card-v6 p{grid-column:1/2;margin:0!important;font-size:17px;line-height:1.15}.alat-card-v6 small{grid-column:1/2}.alat-card-v6 .alat-status{grid-column:2/3;grid-row:1/4;align-self:center;justify-self:end;margin:0}.alat-notes-v6{display:grid;grid-template-columns:1fr 1fr;gap:6px;border-top:1px dashed #d7e1ec;padding-top:6px;font-size:12px}.alat-notes-v6 div{display:grid;grid-template-columns:70px 1fr;gap:5px;min-width:0}.alat-notes-v6 b{color:#64748b}.alat-notes-v6 span{overflow-wrap:anywhere;color:#0f172a}.task-equipment-grid-v6{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.linked-task-title-card{display:block;text-decoration:none;color:#0f172a;background:#f8fbff;border:1px solid #dbeafe;border-left:6px solid #0f6fb3;border-radius:12px;padding:10px 12px;font-weight:900;line-height:1.25;box-shadow:0 4px 12px rgba(15,23,42,.05)}.linked-task-title-card:hover{background:#eef7ff}.equipment-link-grid-v6{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.equipment-mini-card-v6{border-left:6px solid #0f6fb3;background:linear-gradient(180deg,#fff,#f8fbff)}.equipment-mini-card-v6 b{font-size:16px}.equipment-mini-card-v6 span{display:block;margin:2px 0 3px}.row-actions-v6{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.row-actions-v6 form{display:inline}.alat-search-form-v6{display:grid;grid-template-columns:1.2fr .8fr auto;gap:7px;align-items:center}.alat-result-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px;margin-top:8px}.alat-result-card{border:1px solid #dbeafe;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 5px 14px rgba(15,23,42,.06);display:grid;grid-template-rows:auto 1fr auto}.alat-result-hero{background:linear-gradient(135deg,#0f6fb3,#38bdf8);color:#fff;padding:10px 12px;font-size:15px;font-weight:900}.alat-result-body{padding:9px 12px;display:grid;gap:4px}.alat-result-body strong{line-height:1.2}.alat-result-body small{color:#64748b;font-weight:900}.alat-result-card button{margin:0 10px 10px;width:auto}.activity-table-wrap-v6{width:100%;overflow-x:auto;border:1px solid #d8e7f8;border-radius:12px;background:#fff;margin-top:8px}.activity-table-v6{width:100%;min-width:1020px;border-collapse:collapse;font-size:13px}.activity-table-v6 th,.activity-table-v6 td{border-right:1px solid #e5eef8;border-bottom:1px solid #e5eef8;padding:7px 8px;vertical-align:top;line-height:1.25}.activity-table-v6 th{background:#0f6fb3;color:#fff;text-align:center;font-weight:900;white-space:nowrap}.activity-table-v6 tbody tr:nth-child(odd){background:#f8fbff}.activity-table-v6 tbody tr:hover{background:#eef7ff;cursor:pointer}.activity-table-v6 th:last-child,.activity-table-v6 td:last-child{border-right:0}.activity-status-pill-v6{display:inline-block;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900;color:#fff;background:#64748b;white-space:nowrap}.activity-status-pill-v6.rencana{background:#dc2626}.activity-status-pill-v6.berlangsung{background:#f59e0b;color:#111827}.activity-status-pill-v6.selesai{background:#16a34a}.activity-row{align-items:start}.activity-row textarea{min-height:42px}.compact-details summary{padding:8px 0}.btn.small{min-height:30px;padding:4px 8px;font-size:12px;border-radius:7px}.btn.fit{width:auto!important;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:850px){.alat-card-v6 .alat-card-main{grid-template-columns:1fr}.alat-card-v6 .alat-status{grid-column:1;grid-row:auto;justify-self:start;margin-top:4px}.alat-notes-v6{grid-template-columns:1fr}.alat-notes-v6 div{grid-template-columns:64px 1fr}.alat-search-form-v6{grid-template-columns:1fr}.equipment-link-grid-v6,.alat-result-card-grid,.task-equipment-grid-v6{grid-template-columns:1fr}.activity-table-v6{min-width:920px;font-size:12px}.activity-table-v6 th,.activity-table-v6 td{padding:6px}}

/* V7 - status alat update and two-way task/equipment relation fixes */
.alat-list-v7 { gap: 8px; }
.alat-card-v7 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 160px;
  gap: 8px;
  align-items: stretch;
  border-left-width: 8px;
  padding: 0;
}
.alat-card-v7 .alat-card-link {
  display: grid;
  grid-template-columns: minmax(210px, 1fr) minmax(260px, 1.25fr);
  gap: 10px;
  padding: 9px 10px;
  color: inherit;
  text-decoration: none;
}
.alat-card-v7 .alat-card-main h3 { margin: 0 0 3px; font-size: 15px; }
.alat-card-v7 .alat-card-main p { margin: 0 0 3px; font-size: 15px; font-weight: 900; }
.alat-card-v7 .alat-card-main small { font-weight: 900; color: var(--muted); }
.alat-notes-v7 { display: grid; gap: 3px; font-size: 12px; line-height: 1.25; }
.alat-notes-v7 div { display: grid; grid-template-columns: 72px 1fr; gap: 5px; align-items: start; }
.alat-notes-v7 b { color: var(--muted); }
.alat-quick-status {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 10px;
  border-left: 1px solid var(--border);
  background: rgba(255,255,255,.55);
}
.status-select {
  width: 100%;
  min-height: 34px;
  border-radius: 9px;
  font-size: 13px;
  font-weight: 900;
  padding: 6px 8px;
}
.status-select.ready { border-color: #16a34a; color: #15803d; }
.status-select.ready-catatan { border-color: #facc15; color: #854d0e; }
.status-select.breakdown { border-color: #f97316; color: #9a3412; }
.status-select.accident { border-color: #ef4444; color: #b91c1c; }
.equipment-detail-head-v7 { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.task-equipment-grid-v7 { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 8px; }
.linked-task-title-card-v7 {
  min-height: 54px;
  padding: 10px 12px;
  border-left: 5px solid var(--primary);
  border-radius: 10px;
  background: #f8fbff;
  color: #0f172a;
  text-decoration: none;
  font-weight: 900;
  line-height: 1.25;
  box-shadow: var(--shadow);
}
.linked-task-title-card-v7:hover { background: #eef7ff; }
.status-update-form-card .equipment-mini-card { margin: 8px 0 14px; }
.no-hover { cursor: default; }
.status-update-form textarea { min-height: 88px; }
.equipment-link-grid-v6 .empty { padding: 8px 10px; text-align: left; }
@media (max-width: 760px) {
  .alat-card-v7 { grid-template-columns: 1fr; }
  .alat-card-v7 .alat-card-link { grid-template-columns: 1fr; gap: 6px; padding: 8px; }
  .alat-quick-status { border-left: 0; border-top: 1px solid var(--border); justify-content: flex-start; }
  .status-select { max-width: 180px; }
  .alat-notes-v7 div { grid-template-columns: 68px 1fr; }
  .equipment-detail-head-v7 { display: block; }
  .equipment-detail-head-v7 .btn { margin-top: 8px; }
}


/* V8 - Roboto, mobile Activity Timeline cards, and Task Detail order refinements */
html, body, input, select, textarea, button { font-family: 'Roboto', Arial, sans-serif !important; }
.activity-mobile-cards-v8 { display: none; }
.activity-mobile-card-v8 { border: 1px solid #dbeafe; border-left: 6px solid #64748b; border-radius: 13px; background: #ffffff; box-shadow: var(--shadow); padding: 10px; margin-top: 8px; }
.activity-mobile-card-v8.rencana { border-left-color: #dc2626; }
.activity-mobile-card-v8.berlangsung { border-left-color: #f59e0b; }
.activity-mobile-card-v8.selesai { border-left-color: #16a34a; }
.activity-mobile-card-head-v8 { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.activity-mobile-card-head-v8 b { color: #0f172a; font-size: 14px; line-height: 1.25; overflow-wrap: anywhere; }
.activity-mobile-field-v8 { border-top: 1px dashed #dbeafe; padding-top: 7px; margin-top: 7px; }
.activity-mobile-field-v8 span, .activity-mobile-meta-v8 span { display: block; color: var(--muted); font-size: 11px; font-weight: 900; margin-bottom: 2px; }
.activity-mobile-field-v8 p { margin: 0; color: #0f172a; font-size: 13px; line-height: 1.35; overflow-wrap: anywhere; }
.activity-mobile-meta-v8 { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 7px; }
.activity-mobile-meta-v8 div { background: #f8fbff; border: 1px solid #e5eef8; border-radius: 9px; padding: 7px; min-width: 0; }
.activity-mobile-meta-v8 b { display: block; color: #0f172a; font-size: 12px; line-height: 1.25; overflow-wrap: anywhere; }
.activity-mobile-card-v8 > a { display: inline-block; margin-top: 8px; color: var(--primary); font-weight: 900; font-size: 12px; }
@media (max-width: 760px) {
  .activity-table-desktop-v8 { display: none; }
  .activity-mobile-cards-v8 { display: grid; gap: 7px; }
  .activity-board.plus-total { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .activity-summary { min-height: 48px; }
}
@media (min-width: 761px) {
  .activity-table-desktop-v8 { display: block; }
}

/* V9 - Purple gradient theme, Status Alat timeline table/mobile cards, Task Detail text buttons */
:root{
  --primary:#6d3df2;
  --primary-2:#8b5cf6;
  --primary-3:#a78bfa;
  --soft:#f5f3ff;
  --purple-soft:#f5f3ff;
  --purple-line:#ddd6fe;
  --shadow:0 6px 18px rgba(109,61,242,.10);
}
body{background:linear-gradient(180deg,#faf9ff 0%,#f8fafc 55%,#ffffff 100%);}
.topbar{border-bottom:1px solid var(--purple-line);box-shadow:0 4px 20px rgba(109,61,242,.06)}
.topbar h1,.detail-head h2,.section-card h3,.form-panel h2,.page-title{color:var(--primary)!important}
.btn.primary,.pagination a.active,.dash-card b{background:linear-gradient(135deg,var(--primary),var(--primary-2));border-color:var(--primary);color:#fff}
.btn.secondary,.navlink,.menu{color:var(--primary);border-color:var(--purple-line)}
.btn.secondary:hover,.navlink:hover,.menu:hover{background:var(--purple-soft)}
.desc{border-left-color:var(--primary);background:linear-gradient(180deg,#fff,#faf9ff)}
.dash-card.total,.activity-summary{background:linear-gradient(180deg,#fff,#f5f3ff);border-color:var(--purple-line)}
.activity-table-v6 th{background:linear-gradient(135deg,var(--primary),var(--primary-2))!important;color:#fff!important}
.activity-table-v6 tbody tr:nth-child(odd){background:#fff}.activity-table-v6 tbody tr:nth-child(even){background:#faf9ff}.activity-table-v6 tbody tr:hover{background:#f3e8ff}
.list-row:nth-child(even){background:#f5f3ff}.list-row:hover{background:#ede9fe}
.linked-task-title-card,.linked-task-title-card-v7,.equipment-mini-card-v6,.alat-result-hero{border-left-color:var(--primary)!important}
.alat-result-hero{background:linear-gradient(135deg,var(--primary),var(--primary-2))!important}
.app-card-hero,.app-card-tasklist .app-card-hero,.app-card-status .app-card-hero{background:linear-gradient(135deg,#8b5cf6 0%,#6d3df2 55%,#4c1d95 100%)!important}

.detail-text-actions-v9{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:10px}
.detail-text-actions-v9 form{margin:0;display:inline}.text-btn-v9{border:0!important;background:transparent!important;color:var(--primary)!important;padding:3px 2px!important;min-height:auto!important;border-radius:0!important;font-weight:900;text-decoration:underline;cursor:pointer;font-size:13px;font-family:inherit}.text-btn-v9.danger{color:#dc2626!important}.text-btn-v9.secondary{color:#475569!important}.text-btn-v9:hover{filter:brightness(.85)}

.status-timeline-section-v9{overflow:hidden}.status-timeline-table-v9{min-width:1080px}.status-timeline-table-v9 td{font-size:12.5px}.equipment-status-pill-v9{display:inline-block;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900;white-space:nowrap;background:#64748b;color:#fff}.equipment-status-pill-v9.ready{background:#16a34a}.equipment-status-pill-v9.ready-catatan{background:#facc15;color:#111827}.equipment-status-pill-v9.breakdown{background:#f97316;color:#111827}.equipment-status-pill-v9.accident{background:#dc2626;color:#fff}.equipment-status-pill-v9.belum-update{background:#64748b;color:#fff}
.status-timeline-mobile-cards-v9{display:none}.status-timeline-card-v9{border:1px solid var(--purple-line);border-left:6px solid #64748b;border-radius:13px;background:#fff;box-shadow:var(--shadow);padding:10px;margin-top:8px}.status-timeline-card-v9.ready{border-left-color:#16a34a}.status-timeline-card-v9.ready-catatan{border-left-color:#facc15}.status-timeline-card-v9.breakdown{border-left-color:#f97316}.status-timeline-card-v9.accident{border-left-color:#dc2626}.status-timeline-card-head-v9{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.status-timeline-card-head-v9 b{font-size:14px;line-height:1.25;color:#0f172a}.status-timeline-card-field-v9{border-top:1px dashed var(--purple-line);padding-top:7px;margin-top:7px}.status-timeline-card-field-v9 span,.status-timeline-card-meta-v9 span{display:block;color:var(--muted);font-size:11px;font-weight:900;margin-bottom:2px}.status-timeline-card-field-v9 p{margin:0;color:#0f172a;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.status-timeline-card-meta-v9{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:7px}.status-timeline-card-meta-v9 div{background:#faf9ff;border:1px solid var(--purple-line);border-radius:9px;padding:7px;min-width:0}.status-timeline-card-meta-v9 b{display:block;color:#0f172a;font-size:12px;line-height:1.25;overflow-wrap:anywhere}

@media(max-width:760px){.status-timeline-table-desktop-v9{display:none}.status-timeline-mobile-cards-v9{display:grid;gap:7px}.status-timeline-card-meta-v9{grid-template-columns:1fr}.detail-text-actions-v9{gap:10px}.text-btn-v9{font-size:13px}.section-card,.detail-card,.panel{border-radius:10px}}
@media(min-width:761px){.status-timeline-table-desktop-v9{display:block}}

/* V10 - wider desktop layout, remove Test Email menu, notification bell indicator */
.app{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
@media (min-width: 1024px){
  .panel,.detail-card,.section-card,.list-table,.toolbar,.dashboard,.summary-toggle,.compact-panel,.compact-list{
    margin-left:18px !important;
    margin-right:18px !important;
  }
  .filter-grid{grid-template-columns:1.8fr repeat(5,minmax(130px,1fr)) auto auto;}
  .topbar{padding-left:18px;padding-right:18px;}
  .list-header,.list-row{grid-template-columns:2.2fr .9fr .95fr .95fr .9fr .9fr;}
}
@media (min-width: 1400px){
  .panel,.detail-card,.section-card,.list-table,.toolbar,.dashboard,.summary-toggle,.compact-panel,.compact-list{
    margin-left:24px !important;
    margin-right:24px !important;
  }
}
.top-actions{flex-wrap:wrap;justify-content:flex-end;}
.notif-link{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding-right:10px;
}
.notif-bell{
  display:inline-block;
  transform-origin:50% 0%;
  line-height:1;
}
.notif-link.has-unread{
  border-color:#c084fc !important;
  background:linear-gradient(135deg,#faf5ff,#f3e8ff) !important;
  box-shadow:0 0 0 3px rgba(168,85,247,.10), 0 8px 18px rgba(109,61,242,.14);
}
.notif-link.has-unread .notif-bell{
  animation:notifBellShakeV10 1.15s ease-in-out infinite;
}
.notif-badge{
  min-width:19px;
  height:19px;
  padding:0 5px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  background:linear-gradient(135deg,#ef4444,#be123c);
  color:#fff;
  font-size:11px;
  font-weight:900;
  line-height:1;
  box-shadow:0 0 0 2px #fff;
}
@keyframes notifBellShakeV10{
  0%,45%,100%{transform:rotate(0deg)}
  8%{transform:rotate(18deg)}
  16%{transform:rotate(-15deg)}
  24%{transform:rotate(12deg)}
  32%{transform:rotate(-8deg)}
  40%{transform:rotate(5deg)}
}
@media (max-width:760px){
  .notif-text{display:none;}
  .notif-link{padding-left:9px;padding-right:9px;}
  .notif-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;font-size:10px;}
}

/* V11 - compact Pelindo logo header and clearer notification inbox */
.topbar-v11{
  grid-template-columns:38px auto minmax(0,1fr) !important;
  gap:10px !important;
  min-height:52px;
}
.brand-logo-v11{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-width:0;
  text-decoration:none;
  color:var(--primary);
  font-weight:900;
  white-space:nowrap;
}
.brand-logo-v11 img{
  display:block;
  width:auto;
  height:30px;
  max-width:86px;
  object-fit:contain;
}
.brand-logo-v11 span{
  font-size:12px;
  color:var(--muted);
  font-weight:900;
}
.topbar-v11 .top-actions{
  justify-self:end;
}
.notif-page-v11{
  max-width:980px;
}
@media (min-width:1024px){
  .notif-page-v11{max-width:none;}
}
.notif-page-head-v11{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.notif-page-head-v11 h3{margin-bottom:3px!important;}
.notif-page-head-v11 p{margin:0;color:var(--muted);font-weight:700;font-size:13px;}
.notif-page-head-v11>span{
  flex:0 0 auto;
  border:1px solid var(--purple-line);
  background:#faf5ff;
  color:var(--primary);
  border-radius:999px;
  padding:6px 10px;
  font-weight:900;
  font-size:12px;
}
.notif-list-v11{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(310px,1fr));
  gap:10px;
}
.notif-item-v11{
  border:1px solid var(--purple-line)!important;
  border-left:6px solid var(--primary)!important;
  border-radius:14px!important;
  padding:11px 12px!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(109,61,242,.08);
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.notif-item-v11:hover{
  transform:translateY(-2px);
  background:#faf9ff!important;
  box-shadow:0 12px 28px rgba(109,61,242,.14);
}
.notif-item-v11.unread{
  background:linear-gradient(180deg,#fff,#faf5ff)!important;
  border-left-color:#dc2626!important;
}
.notif-item-top-v11{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.notif-type-v11{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:3px 8px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  background:#ede9fe;
  color:#5b21b6;
}
.notif-type-v11.remarks{background:#dcfce7;color:#166534;}
.notif-type-v11.assignment{background:#fef3c7;color:#92400e;}
.notif-item-top-v11 small{color:var(--muted);font-weight:800;font-size:11px;white-space:nowrap;}
.notif-task-title-v11{
  display:block;
  color:#111827!important;
  font-size:15px;
  line-height:1.25;
  margin-bottom:7px;
  overflow-wrap:anywhere;
}
.notif-item-v11 p{
  margin:0!important;
  color:#334155;
  font-size:13px;
  line-height:1.4;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.notif-sender-v11{
  margin-top:9px;
  border-top:1px dashed var(--purple-line);
  padding-top:8px;
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}
.notif-sender-v11 strong{color:var(--primary);}
@media (max-width:760px){
  .topbar-v11{
    grid-template-columns:32px auto 1fr !important;
    min-height:44px;
    padding:5px 7px!important;
    gap:7px!important;
  }
  .brand-logo-v11 img{height:24px;max-width:66px;}
  .brand-logo-v11 span{display:none;}
  .topbar-v11 .top-actions{gap:4px;}
  .topbar-v11 .navlink,.topbar-v11 .logout,.topbar-v11 .menu{font-size:11px;padding:5px 6px;min-height:30px;}
  .notif-list-v11{grid-template-columns:1fr;gap:8px;}
  .notif-item-v11{padding:10px!important;border-radius:12px!important;}
  .notif-page-head-v11{display:block;}
  .notif-page-head-v11>span{display:inline-flex;margin-top:8px;}
}

/* V12 - fix tasklist rows, logo size, layout width, and summary toggle */
html, body { max-width: 100%; overflow-x: hidden; }
body { font-family: 'Roboto', Arial, sans-serif !important; }
.app{
  width: calc(100% - 40px) !important;
  max-width: 1720px !important;
  margin: 0 auto !important;
  background:#fff;
}
@media (min-width: 1024px){
  .panel,.detail-card,.section-card,.toolbar,.dashboard,.summary-toggle,.compact-panel,
  .compact-list,.tasklist-table-shell-v12,.list-table{
    margin-left:14px !important;
    margin-right:14px !important;
  }
  .topbar{padding-left:14px!important;padding-right:14px!important;}
}
@media (min-width: 1500px){
  .app{width: calc(100% - 64px) !important;}
}
.topbar-v11{overflow:hidden;}
.brand-logo-v11{max-width:96px!important;overflow:hidden;flex:0 0 auto;}
.brand-logo-v11 img,
.brand-logo-v11 .pelindo-logo-img-v12{
  width:74px!important;
  max-width:74px!important;
  height:24px!important;
  max-height:24px!important;
  object-fit:contain!important;
  display:block!important;
  flex:0 0 74px!important;
}
.topbar-v11 .top-actions{min-width:0;}
.summary-toggle{display:block!important;}
.summary-hidden-v12{display:none!important;}
#statusSummary:not(.summary-hidden-v12){display:grid!important;}
.tasklist-table-shell-v12{
  border:1px solid var(--purple-line);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow);
}
.tasklist-desktop-v12{display:block;overflow-x:auto;}
.tasklist-table-v12{width:100%;border-collapse:collapse;table-layout:fixed;min-width:980px;}
.tasklist-table-v12 th{
  text-align:left;
  background:linear-gradient(135deg,#f5f3ff,#eef2ff);
  color:#111827;
  font-size:12px;
  font-weight:900;
  padding:9px 10px;
  border-bottom:1px solid var(--purple-line);
  border-right:1px solid var(--purple-line);
}
.tasklist-table-v12 td{
  padding:9px 10px;
  border-bottom:1px solid #ede9fe;
  border-right:1px solid #ede9fe;
  vertical-align:top;
  font-size:13px;
  line-height:1.28;
  overflow-wrap:anywhere;
}
.tasklist-table-v12 th:nth-child(1),.tasklist-table-v12 td:nth-child(1){width:34%;}
.tasklist-table-v12 th:nth-child(2),.tasklist-table-v12 td:nth-child(2){width:14%;}
.tasklist-table-v12 th:nth-child(3),.tasklist-table-v12 td:nth-child(3){width:13%;}
.tasklist-table-v12 th:nth-child(4),.tasklist-table-v12 td:nth-child(4){width:13%;}
.tasklist-table-v12 th:nth-child(5),.tasklist-table-v12 td:nth-child(5){width:11%;}
.tasklist-table-v12 th:nth-child(6),.tasklist-table-v12 td:nth-child(6){width:15%;}
.tasklist-table-v12 tbody tr:nth-child(odd){background:#fff;}
.tasklist-table-v12 tbody tr:nth-child(even){background:#faf9ff;}
.tasklist-table-v12 tbody tr{cursor:pointer;}
.tasklist-table-v12 tbody tr:hover{background:#ede9fe;}
.tasklist-table-v12 b{font-size:13px;line-height:1.25;}
.tasklist-table-v12 small{display:block;margin-top:4px;color:var(--muted);font-size:11.5px;line-height:1.25;}
.tasklist-mobile-v12{display:none;}
.task-card-v12{display:block;text-decoration:none;color:#111827;border:1px solid var(--purple-line);border-left:6px solid var(--primary);border-radius:12px;background:#fff;padding:10px;box-shadow:var(--shadow);}
.task-card-v12:nth-child(even){background:#faf9ff;}
.task-card-v12 b{display:block;font-size:13px;line-height:1.25;overflow-wrap:anywhere;}
.task-card-v12 small{display:block;color:var(--muted);margin-top:5px;font-size:11.5px;line-height:1.3;}
.task-card-meta-v12{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;align-items:center;}
.task-card-meta-v12 span:not(.status){border:1px solid var(--purple-line);border-radius:999px;padding:3px 7px;background:#faf5ff;color:#5b21b6;font-weight:900;font-size:11px;}
.task-card-v12 em{display:block;margin-top:7px;color:var(--muted);font-style:normal;font-weight:800;font-size:11px;}
@media(max-width:760px){
  .app{width:100% !important;max-width:none!important;margin:0!important;}
  .topbar-v11{grid-template-columns:30px 78px 1fr !important;min-height:40px!important;padding:4px 6px!important;gap:5px!important;align-items:center!important;}
  .brand-logo-v11{width:76px!important;max-width:76px!important;min-width:0!important;}
  .brand-logo-v11 img,
  .brand-logo-v11 .pelindo-logo-img-v12{width:66px!important;max-width:66px!important;height:20px!important;max-height:20px!important;flex-basis:66px!important;}
  .topbar-v11 .menu{width:30px!important;min-height:30px!important;padding:5px!important;display:grid!important;place-items:center!important;}
  .topbar-v11 .top-actions{display:flex!important;justify-content:flex-end!important;gap:3px!important;overflow:visible!important;}
  .topbar-v11 .navlink,.topbar-v11 .logout{font-size:10px!important;line-height:1.05!important;padding:5px 4px!important;min-height:28px!important;border-radius:6px!important;}
  .notif-link{min-width:28px!important;}
  .toolbar{align-items:flex-start;}
  .tasklist-desktop-v12{display:none;}
  .tasklist-mobile-v12{display:grid;gap:7px;padding:7px;}
  .tasklist-table-shell-v12{margin:6px 7px!important;border-radius:10px;}
  .filter-grid{grid-template-columns:1fr!important;}
  .filter-grid input[name=q]{grid-column:auto!important;}
}


/* V13 - revert app width to the stable centered layout and unify summary toggle */
html, body{max-width:100%;overflow-x:hidden;}
body{font-family:'Roboto',Arial,sans-serif!important;}
.app{
  width:min(100%,1100px)!important;
  max-width:1100px!important;
  margin:0 auto!important;
  background:#fff!important;
  min-height:100vh;
}
@media (min-width:1024px){
  .panel,.detail-card,.section-card,.toolbar,.dashboard,.summary-toggle,.compact-panel,
  .compact-list,.tasklist-table-shell-v12,.list-table,.alat-list{
    margin-left:12px!important;
    margin-right:12px!important;
  }
  .topbar{padding-left:12px!important;padding-right:12px!important;}
  .filter-grid{grid-template-columns:1.4fr repeat(5,1fr) auto auto!important;}
  .alat-filter{grid-template-columns:1.5fr 1fr 1fr auto auto!important;}
}
.summary-toggle{display:block!important;}
.summary-hidden-v13,.summary-hidden-v12{display:none!important;}
#statusSummary.show{display:grid!important;}
#statusSummary:not(.summary-hidden-v13):not(.summary-hidden-v12){display:grid!important;}
.topbar-v11{overflow:visible!important;}
.brand-logo-v11{
  width:auto!important;
  max-width:104px!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  overflow:hidden!important;
}
.brand-logo-v11 img,.brand-logo-v11 .pelindo-logo-img-v12{
  display:block!important;
  width:auto!important;
  height:20px!important;
  max-width:82px!important;
  max-height:22px!important;
  object-fit:contain!important;
  flex:0 0 auto!important;
}
.brand-logo-v11 span{font-size:12px!important;line-height:1!important;white-space:nowrap;}
@media(max-width:760px){
  .app{width:100%!important;max-width:none!important;margin:0!important;}
  .topbar-v11{
    grid-template-columns:30px 72px 1fr!important;
    min-height:40px!important;
    padding:4px 6px!important;
    gap:5px!important;
    align-items:center!important;
  }
  .brand-logo-v11{width:72px!important;max-width:72px!important;overflow:hidden!important;}
  .brand-logo-v11 img,.brand-logo-v11 .pelindo-logo-img-v12{
    width:auto!important;
    height:18px!important;
    max-width:66px!important;
    max-height:18px!important;
  }
  .brand-logo-v11 span{display:none!important;}
  .topbar-v11 .menu{width:30px!important;min-height:30px!important;padding:5px!important;display:grid!important;place-items:center!important;}
  .topbar-v11 .top-actions{display:flex!important;justify-content:flex-end!important;gap:3px!important;overflow:visible!important;min-width:0!important;}
  .topbar-v11 .navlink,.topbar-v11 .logout{font-size:10px!important;line-height:1.05!important;padding:5px 4px!important;min-height:28px!important;border-radius:6px!important;}
  .notif-link{min-width:28px!important;}
  .filter-grid,.alat-filter{grid-template-columns:1fr!important;}
  .tasklist-table-shell-v12{margin:6px 7px!important;border-radius:10px;}
  .tasklist-desktop-v12{display:none!important;}
  .tasklist-mobile-v12{display:grid!important;gap:7px;padding:7px;}
}

/* V14 - default hide summary, better status search support, larger text */
html, body { font-size: 18px !important; font-family: 'Roboto', Arial, sans-serif !important; }
body, input, select, textarea, button, .btn, .navlink, .logout { font-family: 'Roboto', Arial, sans-serif !important; }
input, select, textarea { font-size: 16px !important; }
.btn, .navlink, .logout { font-size: 15px !important; }
.tasklist-table-v12 th, .tasklist-table-v12 td { font-size: 15px !important; }
.tasklist-table-v12 b { font-size: 15px !important; }
.tasklist-table-v12 small { font-size: 13.5px !important; }
.task-card-v12 b { font-size: 15px !important; }
.task-card-v12 small, .task-card-v12 em { font-size: 13.5px !important; }
.alat-card-main h3 { font-size: 16px !important; }
.alat-card-main p { font-size: 16px !important; }
.alat-card-main small, .alat-notes-v7, .toolbar p { font-size: 14px !important; }
.status, .equipment-status-pill-v9 { font-size: 14px !important; }
.summary-hidden-v13, .summary-hidden-v12 { display: none !important; }
#statusSummary.summary-hidden-v13, #statusSummary.summary-hidden-v12 { display: none !important; }
#statusSummary.show { display: grid !important; }
.summary-toggle { display: block !important; }
.summary-toggle button { font-size: 14px !important; }
.notif-task-title-v11 { font-size: 17px !important; }
.notif-item-v11 p { font-size: 15px !important; }
.notif-sender-v11, .notif-item-top-v11 small, .notif-type-v11 { font-size: 14px !important; }
@media(max-width:760px){
  html, body { font-size: 17px !important; }
  input, select, textarea { font-size: 16px !important; }
  .btn, .navlink, .logout { font-size: 12px !important; }
  .summary-toggle button { font-size: 13px !important; }
  .alat-card-main h3 { font-size: 15px !important; }
  .alat-card-main p { font-size: 15px !important; }
  .alat-card-main small, .alat-notes-v7 { font-size: 13px !important; }
  .status, .equipment-status-pill-v9 { font-size: 13px !important; }
}

/* V15 - role controls, more filter, import menu */
.hamburger-v15{position:relative;display:block;margin:0;z-index:80;}
.hamburger-v15 summary{list-style:none;cursor:pointer;}
.hamburger-v15 summary::-webkit-details-marker{display:none;}
.hamburger-panel-v15{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:#fff;border:1px solid var(--purple-line);border-radius:14px;box-shadow:0 18px 40px rgba(76,29,149,.16);padding:8px;display:grid;gap:4px;}
.hamburger-panel-v15 a{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;color:#4c1d95;font-weight:900;font-size:15px;}
.hamburger-panel-v15 a:hover{background:#f3e8ff;}
.more-filter-v15{grid-column:1/-1;border:1px dashed var(--purple-line);border-radius:12px;background:#faf9ff;padding:7px 9px;}
.more-filter-v15 summary{cursor:pointer;font-weight:900;color:var(--primary);}
.more-filter-grid-v15{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;}
.import-page-v15 .hint{font-weight:700;color:var(--muted);}
.import-steps-v15{background:#faf9ff;border:1px solid var(--purple-line);border-radius:14px;padding:12px;margin:10px 0;}
.import-steps-v15 h3{margin:0 0 8px;color:var(--primary);}
.import-steps-v15 ol{margin:0 0 10px 20px;padding:0;line-height:1.45;}
.import-result-v15{white-space:pre-wrap;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:10px;margin:8px 0;color:#7c2d12;font-weight:700;}
@media(max-width:760px){
  .hamburger-panel-v15{min-width:190px;max-width:calc(100vw - 16px);}
  .hamburger-panel-v15 a{font-size:14px;padding:9px 10px;}
  .more-filter-grid-v15{grid-template-columns:1fr;}
  .more-filter-v15{padding:8px;}
}

/* V16 - compact logo, aligned filter links, floating add, status-colored task bar, status pagination, mobile filter buttons */
.app{
  width:min(100%,1100px)!important;
  max-width:1100px!important;
  margin:0 auto!important;
}
.brand-logo-v11{
  width:62px!important;
  max-width:62px!important;
  min-width:62px!important;
  overflow:hidden!important;
  gap:0!important;
}
.brand-logo-v11 span{display:none!important;}
.brand-logo-v11 img,.brand-logo-v11 .pelindo-logo-img-v12{
  width:auto!important;
  height:15px!important;
  max-width:62px!important;
  max-height:17px!important;
  object-fit:contain!important;
}
.topbar-v11{
  grid-template-columns:30px 64px minmax(0,1fr)!important;
  min-height:42px!important;
  padding-top:5px!important;
  padding-bottom:5px!important;
}
.filter-link-row-v16{
  grid-column:1/2;
  align-self:center;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:28px;
}
.filter-link-row-v16 button,
.more-filter-inline-v16 > summary{
  appearance:none;
  border:0;
  background:transparent;
  color:var(--primary);
  font-weight:900;
  text-decoration:underline;
  cursor:pointer;
  padding:2px 0;
  line-height:1.1;
  font-size:14px;
}
.more-filter-v15.more-filter-inline-v16{
  grid-column:2/-1;
  border:0!important;
  background:transparent!important;
  padding:0!important;
  align-self:center;
}
.more-filter-v15.more-filter-inline-v16[open]{
  grid-column:1/-1;
  border:1px dashed var(--purple-line)!important;
  background:#faf9ff!important;
  padding:8px!important;
}
.status-filter-link-row-v16{grid-column:1/-1;justify-content:flex-start;}
.fab-add-task-v16{
  position:fixed!important;
  right:22px;
  bottom:22px;
  z-index:90;
  min-height:54px!important;
  border-radius:999px!important;
  padding:0 18px!important;
  box-shadow:0 16px 36px rgba(109,61,242,.28)!important;
}
/* warna garis kiri tasklist mengikuti status */
.task-status-opportunity{--task-status-color:#14b8a6;}
.task-status-new{--task-status-color:#0891b2;}
.task-status-rap{--task-status-color:#2563eb;}
.task-status-quotation{--task-status-color:#f59e0b;}
.task-status-lelang-user,.task-status-lelang-vendor{--task-status-color:#ef4444;}
.task-status-kontrak-user{--task-status-color:#8b5cf6;}
.task-status-kontrak-vendor{--task-status-color:#f97316;}
.task-status-rks,.task-status-pr{--task-status-color:#6366f1;}
.task-status-berlangsung{--task-status-color:#10b981;}
.task-status-selesai{--task-status-color:#64748b;}
.tasklist-table-v12 tbody tr td:first-child{
  border-left:7px solid var(--task-status-color,var(--primary))!important;
}
.task-card-v12{
  border-left-color:var(--task-status-color,var(--primary))!important;
}
.pagination{
  justify-content:center;
  padding-bottom:12px;
}
.pagination a{
  min-width:36px;
  text-align:center;
  background:#fff;
}
@media(min-width:761px){
  html, body{font-size:20px!important;}
  input, select, textarea{font-size:18px!important;}
  .btn,.navlink,.logout{font-size:17px!important;}
  .tasklist-table-v12 th,.tasklist-table-v12 td{font-size:17px!important;}
  .tasklist-table-v12 b{font-size:17px!important;}
  .tasklist-table-v12 small{font-size:15.5px!important;}
  .alat-card-main h3,.alat-card-main p{font-size:18px!important;}
  .alat-card-main small,.alat-notes-v7,.toolbar p{font-size:16px!important;}
  .status,.equipment-status-pill-v9{font-size:16px!important;}
}
@media(max-width:760px){
  .topbar-v11{
    grid-template-columns:30px 50px 1fr!important;
    min-height:38px!important;
    padding:4px 6px!important;
    gap:4px!important;
  }
  .brand-logo-v11{
    width:50px!important;
    max-width:50px!important;
    min-width:50px!important;
  }
  .brand-logo-v11 img,.brand-logo-v11 .pelindo-logo-img-v12{
    height:13px!important;
    max-height:14px!important;
    max-width:50px!important;
  }
  .topbar-v11 .navlink,.topbar-v11 .logout{
    font-size:10px!important;
    padding:5px 4px!important;
  }
  .filter-grid,.alat-filter{
    grid-template-columns:1fr 1fr!important;
  }
  .filter-grid input,
  .filter-grid select,
  .alat-filter input,
  .alat-filter select{
    grid-column:1/-1!important;
  }
  .filter-btn-v16{grid-column:1/2!important;width:100%!important;}
  .reset-btn-v16{grid-column:2/3!important;width:100%!important;}
  .filter-link-row-v16{
    grid-column:1/2!important;
    min-height:24px;
  }
  .more-filter-v15.more-filter-inline-v16{
    grid-column:2/3!important;
    text-align:left;
  }
  .more-filter-v15.more-filter-inline-v16[open]{grid-column:1/-1!important;}
  .status-filter-link-row-v16{grid-column:1/-1!important;}
  .filter-link-row-v16 button,
  .more-filter-inline-v16 > summary{font-size:13px!important;}
  .fab-add-task-v16{
    right:14px;
    bottom:14px;
    min-height:46px!important;
    padding:0 14px!important;
  }
}

/* V17 - Task detail refinements */
.detail-back-top-v17 {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 2px !important;
  margin-top: 8px !important;
  margin-bottom: -2px !important;
}
.back-list-link-v17 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}
.detail-actions.detail-text-actions-v9 {
  margin-top: 10px !important;
  align-items: center !important;
}
.remarks-thread .bubble b {
  display: block !important;
  color: #64748b !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  overflow-wrap: anywhere !important;
}
.remarks-thread .bubble p {
  font-size: inherit !important;
  line-height: 1.38 !important;
}
.remarks-thread .bubble small {
  font-size: 11px !important;
  color: #94a3b8 !important;
}
.section-card .empty,
.equipment-link-grid-v6 .empty,
.thumb-grid .empty {
  color: #94a3b8 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  padding: 8px 10px !important;
}
.equipment-link-grid-v6 .empty {
  text-align: left !important;
}
.thumb-grid .empty {
  grid-column: 1 / -1 !important;
  text-align: left !important;
}
@media (max-width: 850px) {
  .detail-back-top-v17 {
    margin-top: 6px !important;
    margin-bottom: -3px !important;
    padding-left: 0 !important;
  }
  .back-list-link-v17 {
    font-size: 13px !important;
  }
  .remarks-thread .bubble b {
    font-size: 11px !important;
  }
  .section-card .empty,
  .equipment-link-grid-v6 .empty,
  .thumb-grid .empty {
    font-size: 11.5px !important;
  }
}


/* ===== V18 - Task detail and login text refinement ===== */
.detail-card .desc,
.detail-card .desc p {
  font-size: 18px !important;
  line-height: 1.55 !important;
}
.detail-mini-summary-v18,
.compact-details > summary.detail-mini-summary-v18,
.equipment-search-details > summary.detail-mini-summary-v18 {
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: var(--muted) !important;
}
.remarks-thread .bubble p {
  font-size: 12.5px !important;
  line-height: 1.35 !important;
}
.remarks-thread .bubble b,
.remarks-thread .bubble small {
  font-size: 11px !important;
}
.login-card h1 {
  font-size: 24px !important;
  line-height: 1.2 !important;
  margin-bottom: 14px !important;
}
.login-card .login-links a {
  font-weight: 900;
}
@media (max-width: 760px) {
  .detail-card .desc,
  .detail-card .desc p {
    font-size: 16px !important;
    line-height: 1.5 !important;
  }
  .detail-mini-summary-v18,
  .compact-details > summary.detail-mini-summary-v18,
  .equipment-search-details > summary.detail-mini-summary-v18 {
    font-size: 12px !important;
  }
  .remarks-thread .bubble p {
    font-size: 12px !important;
  }
  .login-card h1 {
    font-size: 21px !important;
  }
}

/* ===== V19 - Remarks size, link CRUD, and master site sync UI polish ===== */
.remarks-thread .bubble{
  padding:5px 7px !important;
  border-radius:8px !important;
}
.remarks-thread .bubble p{
  font-size:6.5px !important;
  line-height:1.25 !important;
  margin:2px 0 !important;
}
.remarks-thread .bubble b,
.remarks-thread .bubble small{
  font-size:6px !important;
  line-height:1.2 !important;
}
.remarks-thread{
  gap:5px !important;
}
.doc-grid-v19{
  align-items:start;
}
.doc-card-v19{
  display:block !important;
  overflow:visible !important;
  padding:0 !important;
  background:#fff !important;
}
.doc-open-v19{
  display:block;
  text-decoration:none;
  color:var(--text);
}
.doc-actions-v19{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:space-between;
  padding:6px 8px 8px;
  border-top:1px solid var(--border);
}
.doc-actions-v19 form{margin:0;}
.doc-edit-v19{flex:1;}
.doc-edit-v19 summary,
.doc-delete-v19{
  border:0;
  background:transparent;
  color:var(--primary);
  font-weight:900;
  font-size:12px;
  text-decoration:underline;
  cursor:pointer;
  padding:0;
}
.doc-delete-v19{color:var(--red);}
.doc-edit-form-v19{
  display:grid;
  gap:6px;
  margin-top:7px;
}
.doc-edit-form-v19 input,
.doc-edit-form-v19 select{
  min-height:32px !important;
  font-size:12px !important;
}
@media (max-width:760px){
  .remarks-thread .bubble p{font-size:6px !important;}
  .remarks-thread .bubble b,
  .remarks-thread .bubble small{font-size:5.8px !important;}
  .doc-actions-v19{gap:6px;padding:5px 7px 7px;}
}

/* ===== V20 - Fix remarks, document cards, and site sync page ===== */
.remarks-thread .bubble{
  padding:8px 10px !important;
  border-radius:10px !important;
}
.remarks-thread .bubble p{
  font-size:15px !important;
  line-height:1.45 !important;
  margin:5px 0 !important;
  color:var(--text) !important;
}
.remarks-thread .bubble b{
  font-size:13px !important;
  line-height:1.25 !important;
  color:#64748b !important;
}
.remarks-thread .bubble small{
  font-size:12px !important;
  line-height:1.25 !important;
  color:#94a3b8 !important;
}
.remarks-thread{gap:8px !important;}
.doc-grid-v19{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
}
.doc-card-v19{
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  padding:0 !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:12px !important;
  box-shadow:var(--shadow) !important;
}
.doc-open-v19{
  display:block !important;
  padding:0 !important;
  text-decoration:none !important;
  color:var(--text) !important;
  flex:1 !important;
  min-width:0 !important;
}
.doc-card-v19 img,
.doc-card-v19 .thumb-fallback{
  width:100% !important;
  height:92px !important;
  object-fit:cover !important;
}
.doc-card-v19 b{
  display:block !important;
  padding:8px 9px 2px !important;
  font-size:14px !important;
  line-height:1.25 !important;
  overflow-wrap:anywhere !important;
  color:var(--text) !important;
}
.doc-card-v19 small,
.doc-card-v19 .thumb-fallback small{
  display:block !important;
  padding:0 9px 8px !important;
  font-size:12px !important;
  line-height:1.25 !important;
  color:var(--muted) !important;
}
.doc-actions-v19{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:7px 9px !important;
  border-top:1px solid var(--border) !important;
  background:#f8fafc !important;
}
.doc-edit-v19 summary,
.doc-delete-v19{
  font-size:13px !important;
  line-height:1.2 !important;
}
.doc-edit-form-v19 input,
.doc-edit-form-v19 select{
  min-height:34px !important;
  font-size:13px !important;
}
.site-sync-form-v20{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  gap:10px;
  align-items:end;
}
.site-sync-form-v20 label{font-weight:900;}
.site-sync-table-wrap-v20{overflow:auto;}
.site-sync-table-v20{width:100%;border-collapse:collapse;min-width:640px;}
.site-sync-table-v20 th,
.site-sync-table-v20 td{border:1px solid var(--border);padding:8px 10px;text-align:left;}
.site-sync-table-v20 th{background:#f3e8ff;color:#581c87;}
.site-sync-table-v20 tr.need-sync td{background:#fff7ed;}
.site-sync-table-v20 tr.is-ok td{background:#f8fafc;color:#64748b;}
@media (max-width:760px){
  .remarks-thread .bubble p{font-size:14px !important;}
  .remarks-thread .bubble b{font-size:12.5px !important;}
  .remarks-thread .bubble small{font-size:11.5px !important;}
  .doc-grid-v19{grid-template-columns:1fr 1fr !important;gap:8px !important;}
  .doc-card-v19 b{font-size:13px !important;}
  .doc-card-v19 small{font-size:11px !important;}
  .site-sync-form-v20{grid-template-columns:1fr;}
}

/* ===== V21 - Restore normal Remarks and tidy Dokumentasi/Gudang Dokumen cards ===== */
.remarks-thread .bubble{
  padding:10px 12px !important;
  border-radius:10px !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
}
.remarks-thread .bubble p{
  font-size:16px !important;
  line-height:1.45 !important;
  margin:6px 0 !important;
  color:var(--text) !important;
  font-weight:400 !important;
  white-space:pre-wrap !important;
}
.remarks-thread .bubble b{
  display:block !important;
  font-size:14px !important;
  line-height:1.25 !important;
  color:#475569 !important;
  font-weight:800 !important;
}
.remarks-thread .bubble small{
  display:block !important;
  font-size:13px !important;
  line-height:1.25 !important;
  color:#94a3b8 !important;
  font-weight:500 !important;
}
.remarks-thread{gap:10px !important;}

.doc-section-v19 .doc-grid-v19{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr)) !important;
  gap:12px !important;
  align-items:stretch !important;
}
.doc-section-v19 .doc-card-v19{
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  overflow:hidden !important;
  padding:0 !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:14px !important;
  box-shadow:var(--shadow) !important;
}
.doc-section-v19 .doc-open-v19{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  padding:0 !important;
  text-decoration:none !important;
  color:var(--text) !important;
}
.doc-section-v19 .doc-card-v19 img,
.doc-section-v19 .doc-card-v19 .thumb-fallback{
  width:100% !important;
  height:104px !important;
  object-fit:cover !important;
  display:grid !important;
  place-items:center !important;
  background:#f3e8ff !important;
}
.doc-section-v19 .doc-card-v19 .thumb-fallback span{
  width:42px !important;
  height:42px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:var(--primary) !important;
  color:#fff !important;
  font-size:22px !important;
  font-weight:900 !important;
}
.doc-section-v19 .doc-card-v19 b{
  display:block !important;
  padding:10px 11px 3px !important;
  margin:0 !important;
  color:var(--text) !important;
  font-size:15px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
  overflow-wrap:anywhere !important;
}
.doc-section-v19 .doc-card-v19 small,
.doc-section-v19 .doc-card-v19 .thumb-fallback small{
  display:block !important;
  padding:0 11px 10px !important;
  margin:0 !important;
  color:var(--muted) !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  overflow-wrap:anywhere !important;
}
.doc-section-v19 .doc-actions-v19{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:8px 10px !important;
  border-top:1px solid var(--border) !important;
  background:#f8fafc !important;
  flex-wrap:wrap !important;
}
.doc-section-v19 .doc-actions-v19 form{margin:0 !important;}
.doc-section-v19 .doc-edit-v19{flex:1 1 auto !important;min-width:120px !important;}
.doc-section-v19 .doc-edit-v19 summary,
.doc-section-v19 .doc-delete-v19{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:30px !important;
  padding:4px 8px !important;
  border:1px solid var(--border) !important;
  border-radius:8px !important;
  background:#fff !important;
  color:var(--primary) !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  cursor:pointer !important;
}
.doc-section-v19 .doc-delete-v19{color:var(--red) !important;}
.doc-section-v19 .doc-edit-form-v19{
  display:grid !important;
  gap:7px !important;
  margin-top:8px !important;
}
.doc-section-v19 .doc-edit-form-v19 input,
.doc-section-v19 .doc-edit-form-v19 select{
  width:100% !important;
  min-height:36px !important;
  font-size:14px !important;
  line-height:1.25 !important;
}

@media (max-width:760px){
  .remarks-thread .bubble p{font-size:15px !important;line-height:1.4 !important;}
  .remarks-thread .bubble b{font-size:13px !important;}
  .remarks-thread .bubble small{font-size:12px !important;}
  .doc-section-v19 .doc-grid-v19{grid-template-columns:1fr !important;gap:10px !important;}
  .doc-section-v19 .doc-card-v19 b{font-size:14px !important;}
  .doc-section-v19 .doc-card-v19 small{font-size:12px !important;}
}

/* V27 - Search return, progress, lighter badges, and linked equipment cards */
.tasklist-table-v12{table-layout:fixed;width:100%;}
.tasklist-table-v12 th:nth-child(1),.tasklist-table-v12 td:nth-child(1){width:34%;}
.tasklist-table-v12 th:nth-child(2),.tasklist-table-v12 td:nth-child(2){width:13%;}
.tasklist-table-v12 th:nth-child(3),.tasklist-table-v12 td:nth-child(3){width:12%;}
.tasklist-table-v12 th:nth-child(4),.tasklist-table-v12 td:nth-child(4){width:13%;}
.tasklist-table-v12 th:nth-child(5),.tasklist-table-v12 td:nth-child(5){width:10%;}
.tasklist-table-v12 th:nth-child(6),.tasklist-table-v12 td:nth-child(6){width:10%;}
.tasklist-table-v12 th:nth-child(7),.tasklist-table-v12 td:nth-child(7){width:13%;}
.progress-mini-v27{height:9px;border-radius:999px;background:#ede9fe;border:1px solid #ddd6fe;overflow:hidden;min-width:70px;max-width:150px;}
.progress-mini-v27 span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#7c3aed,#a855f7);width:0%;}
.task-card-progress-v27,.task-progress-detail-v27{display:flex;align-items:center;gap:8px;margin-top:8px;color:#4c1d95;font-weight:900;font-size:12px;}
.task-progress-detail-v27{margin:10px 0 2px;}
.task-progress-detail-v27 .progress-mini-v27{max-width:260px;flex:1;}
.readonly-progress-v27{background:#f8fafc;color:#4c1d95;font-weight:900;}
.status,.detail-status{box-shadow:0 1px 2px rgba(15,23,42,.015)!important;text-shadow:none!important;filter:none!important;}
.activity-status-pill-v6,.equipment-status-pill-v9{box-shadow:0 1px 2px rgba(15,23,42,.015)!important;text-shadow:none!important;filter:none!important;}
.activity-row-v27{grid-template-columns:1fr 1.15fr .62fr .72fr .7fr .62fr .62fr .9fr 42px!important;}
.activity-table-v6 th,.activity-table-v6 td{font-size:12.5px;vertical-align:top;}
.equipment-visual-grid-v27{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;}
.linked-graphic-card-v27{display:flex;flex-direction:column;gap:8px;border:1px solid #ddd6fe!important;border-left:7px solid var(--primary)!important;border-radius:14px!important;background:linear-gradient(180deg,#fff,#faf9ff)!important;padding:0!important;overflow:hidden;min-height:118px;box-shadow:0 4px 12px rgba(109,61,242,.08)!important;}
.linked-graphic-main-v27{display:flex;flex-direction:column;gap:4px;padding:12px 13px;text-decoration:none;color:#0f172a;min-height:82px;}
.linked-graphic-main-v27 b{font-size:15px;color:var(--primary);line-height:1.15;overflow-wrap:anywhere;}
.linked-graphic-main-v27 span{font-size:14px;font-weight:900;line-height:1.2;overflow-wrap:anywhere;}
.linked-graphic-main-v27 small{font-size:11px;color:#64748b;font-weight:900;letter-spacing:.02em;}
.linked-graphic-card-v27 .row-actions{padding:8px 10px;border-top:1px solid #ede9fe;background:#fff;}
@media(max-width:760px){
  .activity-row-v27{grid-template-columns:1fr!important;}
  .activity-mobile-meta-v8{grid-template-columns:1fr 1fr;}
  .equipment-visual-grid-v27{grid-template-columns:1fr;}
  .progress-mini-v27{max-width:none;width:100%;}
}

/* V28 - report sharing and sharper status badges */
.status,
.detail-status,
.activity-status-pill-v6,
.equipment-status-pill-v9,
.status-badge,
.task-status-badge,
.timeline-status,
.activity-table-v6 .status,
.activity-table-v6 .activity-status-pill-v6 {
  border-radius: 7px !important;
}
.status,
.detail-status,
.activity-status-pill-v6,
.equipment-status-pill-v9 {
  box-shadow: 0 1px 2px rgba(15,23,42,.01) !important;
  filter: none !important;
  text-shadow: none !important;
}
.share-btn-v28 { color: #6d3df2 !important; }
.equipment-head-actions-v28{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
@media(max-width:760px){.equipment-head-actions-v28{justify-content:flex-start;margin-top:8px;}}

/* V29 - Force card layout on non-laptop / narrow and foldable devices */
@media (max-width: 1199px){
  .tasklist-table-shell-v12{
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .tasklist-desktop-v12{
    display: none !important;
  }
  .tasklist-mobile-v12{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    padding: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .task-card-v12{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--border) !important;
    border-left-width: 6px !important;
    border-radius: 12px !important;
    background: #fff !important;
    padding: 11px 12px !important;
    text-decoration: none !important;
    color: var(--text) !important;
    box-shadow: 0 1px 4px rgba(15,23,42,.06) !important;
  }
  .task-card-v12 b,
  .task-card-v12 small,
  .task-card-v12 em,
  .task-card-v12 span{
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
  .task-card-v12 > b{
    display: block !important;
    font-size: 15.5px !important;
    line-height: 1.25 !important;
    margin-bottom: 5px !important;
  }
  .task-card-v12 > small{
    display: block !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    color: var(--muted) !important;
    margin-bottom: 8px !important;
  }
  .task-card-meta-v12{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    align-items: center !important;
    margin-top: 8px !important;
  }
  .task-card-meta-v12 > span:not(.status){
    display: inline-flex !important;
    align-items: center !important;
    min-height: 25px !important;
    padding: 4px 7px !important;
    border: 1px solid #e9d5ff !important;
    border-radius: 7px !important;
    background: #faf5ff !important;
    color: #4c1d95 !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
  }
  .task-card-progress-v27{
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 8px !important;
    align-items: center !important;
    margin-top: 9px !important;
  }
  .task-card-v12 em{
    display: block !important;
    margin-top: 8px !important;
    font-size: 12.5px !important;
    font-style: normal !important;
    color: var(--muted) !important;
    line-height: 1.35 !important;
  }
  .progress-mini-v27{
    width: 100% !important;
    max-width: none !important;
  }
  .fab-add-task-v16{
    right: 18px !important;
    bottom: 18px !important;
    max-width: calc(100vw - 36px) !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 1200px){
  .tasklist-desktop-v12{display:block !important;}
  .tasklist-mobile-v12{display:none !important;}
}

/* V30 - cleaner status radius, report-like application visuals, and progress fix support */
.status,
.detail-status,
.activity-status-pill-v6,
.equipment-status-pill-v9,
.report-status-pill-v30 {
  border-radius: 8px !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.035) !important;
  filter: none !important;
  text-shadow: none !important;
}

/* Make the main application closer to the public report style, without removing controls/actions. */
.app,
main.app,
.page,
.container {
  background: linear-gradient(135deg, rgba(250,245,255,.84), rgba(255,255,255,.94) 42%, rgba(238,242,255,.78)) !important;
}
.compact-panel,
.section-card,
.detail-card,
.filter-card,
.summary-grid,
.tasklist-table-shell-v12,
.status-card,
.equipment-mini-card,
.thumb-card,
.doc-card-v19,
.bubble,
.activity-mobile-card-v8,
.alat-result-card {
  border-color: #e9d5ff !important;
  box-shadow: 0 10px 28px rgba(109,61,242,.075) !important;
}
.detail-card,
.section-card,
.compact-panel {
  border-radius: 18px !important;
}
.btn.primary,
button.btn.primary,
.fab-add-task-v16 {
  background: linear-gradient(135deg,#6d3df2,#8b5cf6) !important;
  box-shadow: 0 8px 20px rgba(109,61,242,.20) !important;
}
.btn.secondary,
.text-btn-v9,
.top-nav a {
  border-color: #ddd6fe !important;
}
.tasklist-desktop-v12 table th,
.activity-table-v6 th,
.status-table-v9 th {
  background: linear-gradient(135deg,#f5f3ff,#eef2ff) !important;
  color: #24113f !important;
}
.progress-mini-v27,
.task-progress-detail-v27 .progress-mini-v27 {
  background: #ede9fe !important;
}
.progress-mini-v27 span {
  background: linear-gradient(90deg,#6d3df2,#8b5cf6) !important;
}
.linked-graphic-card-v27,
.equipment-mini-card-v6 {
  background: linear-gradient(135deg,#fff,#faf5ff) !important;
}

/* V30 - equipment cards in task detail should look like report mini cards */
.equipment-visual-grid-v27 {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 12px !important;
}
.linked-graphic-card-v27 {
  border-left: 7px solid #6d3df2 !important;
  border-radius: 18px !important;
  padding: 14px !important;
  min-width: 0 !important;
}
.linked-graphic-main-v27 {
  display: block !important;
  text-decoration: none !important;
  color: var(--text) !important;
}
.linked-graphic-main-v27 b,
.linked-graphic-main-v27 span,
.linked-graphic-main-v27 small {
  display: block !important;
  overflow-wrap: anywhere !important;
}
.linked-graphic-main-v27 b { color:#4c1d95 !important; font-weight:900 !important; }
.linked-graphic-main-v27 small { color:var(--muted) !important; font-weight:700 !important; margin-top:4px !important; }

@media (max-width:1199px){
  .section-card,
  .detail-card,
  .compact-panel { border-radius: 14px !important; }
  .equipment-visual-grid-v27 { grid-template-columns: 1fr !important; }
}

/* V31 - report style for editable application detail pages */
.status,
.detail-status,
.activity-status-pill-v6,
.equipment-status-pill-v9 {
  border-radius: 8px !important;
}

/* Task detail hero, following public report visual language */
.detail-card.compact-panel,
.detail-card.equipment-detail-head-v7 {
  position: relative !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 28px !important;
  padding: 26px 28px !important;
  color: #fff !important;
  background: linear-gradient(135deg,#4c1d95,#7c3aed 55%,#a78bfa) !important;
  box-shadow: 0 22px 60px rgba(76,29,149,.20) !important;
}
.detail-card.compact-panel::after,
.detail-card.equipment-detail-head-v7::after {
  content: "";
  position: absolute;
  right: 34px;
  top: 28px;
  width: 164px;
  height: 164px;
  border-radius: 999px;
  background: radial-gradient(circle at center, rgba(255,255,255,.24) 0 40%, transparent 41%), conic-gradient(rgba(255,255,255,.38), rgba(255,255,255,.10), rgba(255,255,255,.32));
  opacity: .55;
  pointer-events: none;
}
.detail-card .detail-head,
.detail-card.equipment-detail-head-v7 > * {
  position: relative;
  z-index: 1;
}
.detail-card .detail-head h2,
.detail-card.equipment-detail-head-v7 h2 {
  color: #fff !important;
  font-size: clamp(24px, 2.5vw, 34px) !important;
  line-height: 1.15 !important;
  max-width: 820px !important;
  margin: 0 0 10px !important;
}
.detail-card.equipment-detail-head-v7 p,
.detail-card .meta,
.detail-card .desc,
.detail-card .chips,
.detail-card .detail-actions,
.detail-card .task-progress-detail-v27 {
  position: relative;
  z-index: 1;
}
.detail-card .desc {
  color: #f8fafc !important;
  background: rgba(255,255,255,.10) !important;
  border-left: 6px solid rgba(255,255,255,.62) !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  padding: 16px 18px !important;
  max-width: 920px !important;
}
.detail-card .chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 10px 0 14px !important;
}
.detail-card .chips span,
.detail-card .detail-status {
  color: #0f172a !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(255,255,255,.55) !important;
  border-radius: 12px !important;
  padding: 7px 10px !important;
  font-weight: 900 !important;
  box-shadow: 0 6px 14px rgba(15,23,42,.10) !important;
}
.detail-card .detail-status {
  color: #fff !important;
  background: rgba(255,255,255,.20) !important;
  border-color: rgba(255,255,255,.35) !important;
}
.detail-card .meta {
  color: #ede9fe !important;
  font-weight: 700 !important;
}
.detail-card .text-btn-v9,
.detail-card .detail-actions a,
.detail-card .detail-actions button,
.equipment-detail-head-v7 .btn {
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  background: rgba(255,255,255,.16) !important;
  border-radius: 12px !important;
  padding: 8px 12px !important;
  text-decoration: none !important;
}
.detail-card .text-btn-v9.danger,
.detail-card button.danger {
  color: #fff !important;
  background: rgba(239,68,68,.38) !important;
}
.task-progress-detail-v27 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 10px !important;
  align-items: center !important;
  max-width: 520px !important;
  margin-top: 14px !important;
}
.task-progress-detail-v27 b { color: #fff !important; }
.detail-card .progress-mini-v27 {
  height: 14px !important;
  background: rgba(255,255,255,.22) !important;
  border-radius: 999px !important;
}
.detail-card .progress-mini-v27 span {
  background: #fff !important;
}

/* Section/card style like public report */
.section-card,
.compact-panel:not(.detail-card),
.activity-summary,
.bubble,
.linked-graphic-card-v27,
.doc-card-v19,
.thumb-card,
.doc-photo-card,
.linked-task-title-card-v7,
.status-timeline-card-v9,
.activity-mobile-card-v8 {
  border: 1px solid #e9d5ff !important;
  background: rgba(255,255,255,.92) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 28px rgba(109,61,242,.075) !important;
}
.section-card h3,
.compact-panel h3 {
  color: #4c1d95 !important;
  font-weight: 900 !important;
}
.activity-board.plus-total,
.cards,
.task-equipment-grid-v7,
.equipment-visual-grid-v27,
.doc-gallery {
  gap: 12px !important;
}
.activity-summary span {
  color: #64748b !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}
.activity-summary b { font-size: 22px !important; color: #0f172a !important; }
.activity-table-v6,
.status-timeline-table-v9 {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  border-radius: 14px !important;
}
.activity-table-v6 th,
.status-timeline-table-v9 th {
  background: linear-gradient(135deg,#6d3df2,#8b5cf6) !important;
  color: #fff !important;
  border: 0 !important;
}
.activity-table-v6 td,
.status-timeline-table-v9 td {
  background: #fff !important;
  border-bottom: 1px solid #e9d5ff !important;
}
.activity-table-v6 tr:nth-child(even) td,
.status-timeline-table-v9 tr:nth-child(even) td {
  background: #faf5ff !important;
}
.linked-graphic-card-v27,
.linked-task-title-card-v7,
.doc-photo-card {
  border-left: 7px solid #6d3df2 !important;
  background: linear-gradient(135deg,#fff,#faf5ff) !important;
}
.bubble {
  border-left: 5px solid #c4b5fd !important;
  padding: 14px 16px !important;
}
.bubble p,
.bubble-text {
  font-size: 16px !important;
  line-height: 1.45 !important;
}

/* Make status pills less feathered and same radius as Filter button */
.status,
.activity-status-pill-v6,
.equipment-status-pill-v9 {
  border-radius: 8px !important;
  box-shadow: 0 1px 1px rgba(15,23,42,.03) !important;
}

/* Progress inputs: text fields but visually numeric */
.activity-row-v27 input[name="progress_percent[]"],
.activity-row-v27 input[name="weight_percent[]"] {
  min-width: 92px !important;
}

@media (max-width: 1199px) {
  .detail-card.compact-panel,
  .detail-card.equipment-detail-head-v7 {
    border-radius: 22px !important;
    padding: 20px 18px !important;
  }
  .detail-card.compact-panel::after,
  .detail-card.equipment-detail-head-v7::after {
    width: 120px;
    height: 120px;
    right: -22px;
    top: 18px;
    opacity: .35;
  }
  .detail-card .detail-head h2,
  .detail-card.equipment-detail-head-v7 h2 {
    font-size: 23px !important;
  }
  .detail-card .desc { font-size: 16px !important; }
  .task-progress-detail-v27 { max-width: none !important; }
}


/* V38 - Upload dokumentasi gambar */
.link-form-upload-v38{align-items:stretch;gap:10px;}
.doc-upload-input-v38{background:#fff;border:1px dashed rgba(112,67,242,.35);border-radius:12px;padding:10px;font-size:.92rem;color:var(--text,#1e293b);}
.upload-note-v38{display:block;color:var(--muted,#64748b);font-size:.82rem;line-height:1.35;grid-column:1/-1;}
.doc-edit-form-v19 .doc-upload-input-v38{width:100%;font-size:.8rem;padding:8px;}
.thumb-card.doc-card-v19 img{height:145px;width:100%;object-fit:cover;background:#f7f3ff;}
@media(max-width:1199px){.thumb-card.doc-card-v19 img{height:190px}.upload-note-v38{font-size:.9rem}}

/* V41 - restore report-style visual for Status Alat detail after docs/remarks v40 */
.detail-report-hero-v31,
.equipment-report-hero-v40 {
  position: relative !important;
  overflow: hidden !important;
  margin: 12px !important;
  border: 0 !important;
  border-radius: 28px !important;
  padding: 28px 30px !important;
  color: #fff !important;
  background: linear-gradient(135deg,#4c1d95 0%,#6d3df2 46%,#a78bfa 100%) !important;
  box-shadow: 0 24px 70px rgba(76,29,149,.22) !important;
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 18px !important;
  align-items: start !important;
}
.detail-report-hero-v31::after,
.equipment-report-hero-v40::after {
  content: "";
  position: absolute;
  right: 34px;
  top: 28px;
  width: 170px;
  height: 170px;
  border-radius: 999px;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.23) 0 39%, transparent 40%),
    conic-gradient(rgba(255,255,255,.40), rgba(255,255,255,.08), rgba(255,255,255,.34));
  opacity: .60;
  pointer-events: none;
}
.detail-report-hero-main-v31,
.report-action-group-v40 {
  position: relative !important;
  z-index: 1 !important;
}
.report-label-v31 {
  color: #ede9fe !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
}
.detail-report-hero-v31 h1,
.equipment-report-hero-v40 h1 {
  margin: 0 0 10px !important;
  color: #fff !important;
  font-size: clamp(30px, 4vw, 46px) !important;
  line-height: 1.08 !important;
  font-weight: 950 !important;
  max-width: 850px !important;
}
.detail-report-hero-v31 p,
.equipment-report-hero-v40 p {
  margin: 0 0 14px !important;
  color: #f8fafc !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}
.detail-report-badges-v31 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 12px !important;
}
.detail-report-badges-v31 span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  border-radius: 12px !important;
  padding: 7px 11px !important;
  color: #1e1b4b !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(255,255,255,.58) !important;
  font-weight: 950 !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.09) !important;
}
.report-action-group-v40 {
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
}
.report-action-group-v40 .btn,
.equipment-report-hero-v40 .btn {
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.40) !important;
  background: rgba(255,255,255,.18) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
.report-action-group-v40 .btn.primary {
  background: rgba(255,255,255,.24) !important;
}
.report-panel-v31.section-card,
.section-card.report-panel-v31 {
  border: 1px solid #e9d5ff !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 14px 38px rgba(109,61,242,.08) !important;
  padding: 16px !important;
}
.report-panel-v31 h3,
.section-card.report-panel-v31 h3 {
  margin: 0 0 12px !important;
  color: #4c1d95 !important;
  font-weight: 950 !important;
}
.report-kpi-grid-v31 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}
.report-kpi-grid-v31 > div {
  border: 1px solid #e9d5ff !important;
  border-radius: 18px !important;
  padding: 14px 16px !important;
  background: linear-gradient(135deg,#fff,#faf5ff) !important;
  min-width: 0 !important;
}
.report-kpi-grid-v31 span,
.report-soft-box-v40 b,
.report-linked-card-v40 small {
  display: block !important;
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .02em !important;
}
.report-kpi-grid-v31 b {
  display: block !important;
  margin-top: 6px !important;
  color: #0f172a !important;
  font-size: 18px !important;
  overflow-wrap: anywhere !important;
}
.report-two-col-v40 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
}
.report-soft-box-v40 {
  border-left: 6px solid #7c3aed !important;
  border-radius: 18px !important;
  padding: 14px 16px !important;
  background: linear-gradient(135deg,#fff,#faf5ff) !important;
  min-width: 0 !important;
}
.report-soft-box-v40 p {
  margin: 8px 0 0 !important;
  line-height: 1.5 !important;
  color: #1f2937 !important;
  overflow-wrap: anywhere !important;
}
.report-linked-card-v40 {
  min-height: 94px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 8px !important;
  text-decoration: none !important;
}
.report-linked-card-v40 b {
  color: #0f172a !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
}
.status-timeline-section-v9.report-panel-v31 .activity-table-v6,
.status-timeline-section-v9.report-panel-v31 .status-timeline-table-v9 {
  width: 100% !important;
}
/* Keep v40 docs/remarks tidy inside report-like Status Alat detail */
.doc-grid-v19,
.thumb-grid.doc-grid-v19 {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
  gap: 12px !important;
}
.doc-card-v19.thumb-card,
.thumb-card.doc-card-v19 {
  overflow: hidden !important;
  border-left: 7px solid #6d3df2 !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg,#fff,#faf5ff) !important;
}
.doc-open-v19 {
  display: grid !important;
  gap: 8px !important;
  padding: 12px !important;
  color: #0f172a !important;
  text-decoration: none !important;
}
.doc-open-v19 img {
  width: 100% !important;
  height: 170px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
  border: 1px solid #e9d5ff !important;
  background: #faf5ff !important;
}
.doc-open-v19 b {
  font-size: 15px !important;
  line-height: 1.25 !important;
  overflow-wrap: anywhere !important;
}
.doc-open-v19 small {
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}
.doc-actions-v19 {
  display: flex !important;
  gap: 8px !important;
  align-items: start !important;
  justify-content: space-between !important;
  padding: 0 12px 12px !important;
}
.doc-actions-v19 form { margin: 0 !important; }
.doc-delete-v19,
.doc-edit-v19 summary {
  border: 1px solid #e9d5ff !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #6d3df2 !important;
  font-weight: 900 !important;
  padding: 7px 10px !important;
  cursor: pointer !important;
}
.doc-delete-v19 { color: #dc2626 !important; }
.doc-edit-form-v19 {
  display: grid !important;
  gap: 8px !important;
  margin-top: 8px !important;
  min-width: min(320px, 78vw) !important;
}
.link-form-upload-v38,
.link-form {
  border: 1px dashed #c4b5fd !important;
  border-radius: 16px !important;
  padding: 12px !important;
  background: #faf5ff !important;
}
.remarks-thread .bubble {
  border: 1px solid #e9d5ff !important;
  border-left: 5px solid #c4b5fd !important;
  background: #fff !important;
  border-radius: 16px !important;
  padding: 13px 15px !important;
}
.remarks-thread .bubble p {
  margin: 8px 0 !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
}
.remarks-thread .bubble small {
  color: #94a3b8 !important;
  font-weight: 800 !important;
}
@media (max-width:1199px) {
  .detail-report-hero-v31,
  .equipment-report-hero-v40 {
    grid-template-columns: 1fr !important;
    padding: 22px 18px !important;
    border-radius: 24px !important;
  }
  .detail-report-hero-v31::after,
  .equipment-report-hero-v40::after {
    width: 126px;
    height: 126px;
    right: -18px;
    top: 20px;
    opacity: .34;
  }
  .detail-report-hero-v31 h1,
  .equipment-report-hero-v40 h1 { font-size: 30px !important; }
  .detail-report-hero-v31 p,
  .equipment-report-hero-v40 p { font-size: 16px !important; }
  .report-kpi-grid-v31 { grid-template-columns: 1fr 1fr !important; }
  .report-two-col-v40 { grid-template-columns: 1fr !important; }
  .report-action-group-v40 { justify-content: flex-start !important; }
}
@media (max-width:760px) {
  .detail-report-hero-v31,
  .equipment-report-hero-v40 { margin: 8px !important; padding: 18px 16px !important; border-radius: 20px !important; }
  .detail-report-hero-v31 h1,
  .equipment-report-hero-v40 h1 { font-size: 26px !important; }
  .report-kpi-grid-v31 { grid-template-columns: 1fr !important; }
  .doc-grid-v19,
  .thumb-grid.doc-grid-v19 { grid-template-columns: 1fr !important; }
  .doc-open-v19 img { height: 190px !important; }
}

/* Inventory v42 */
.inventory-filter-panel{border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(109,40,217,.08);border:1px solid rgba(139,92,246,.18)}
.inventory-filter-grid{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(170px,.8fr) minmax(160px,.8fr) 110px 130px 120px 120px 150px;gap:8px;align-items:center}
.inventory-filter-grid input,.inventory-filter-grid select{width:100%;min-height:42px;border:1px solid #ddd6fe;border-radius:10px;padding:8px 12px;background:#fff;font-size:inherit}
.inventory-list-panel{border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#fff,#fbf8ff);border:1px solid #ddd6fe;box-shadow:0 18px 55px rgba(109,40,217,.07)}
.inventory-table-wrap{overflow:auto;border-radius:16px;border:1px solid #e7ddff;background:#fff}
.inventory-table th{white-space:nowrap;background:linear-gradient(135deg,#7c3aed,#8b5cf6)!important;color:#fff!important}
.inventory-table td{vertical-align:top;min-width:110px}.inventory-table td:first-child{min-width:160px}.inventory-table td:nth-child(2),.inventory-table td:nth-child(3){min-width:260px}.inventory-table small{display:block;color:#64748b;margin-top:4px;line-height:1.35}.status.inv-crit{background:#ede9fe;color:#5b21b6;border-radius:8px;padding:5px 8px}
.inventory-card-list{display:none}.inventory-card{display:block;background:#fff;border:1px solid #e9d5ff;border-radius:20px;padding:18px;box-shadow:0 12px 35px rgba(30,41,59,.08);border-left:7px solid #7c3aed;margin-bottom:14px}.inventory-card-head{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#5b21b6}.inventory-card h3{font-size:1.05rem;margin:10px 0 6px}.inventory-card p{color:#64748b;margin:0 0 10px}.inventory-metas{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.inventory-metas span{background:#f3e8ff;color:#4c1d95;border:1px solid #ddd6fe;border-radius:10px;padding:5px 8px;font-weight:800}.inventory-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:9999;padding:24px;overflow:auto}.inventory-modal{max-width:980px;margin:30px auto;background:#fff;border-radius:24px;padding:22px;box-shadow:0 25px 80px rgba(0,0,0,.25);position:relative}.modal-close{position:absolute;right:16px;top:12px;border:0;background:#f3e8ff;color:#5b21b6;border-radius:12px;font-size:24px;font-weight:900;width:42px;height:42px}.report-mini-hero{background:linear-gradient(135deg,#5b21b6,#8b5cf6);color:#fff;border-radius:20px;padding:22px;margin-bottom:16px}.report-mini-hero small{letter-spacing:.12em;font-weight:900;opacity:.8}.report-mini-hero h2{margin:8px 0 4px;font-size:1.8rem}.inventory-edit-form .form-grid{display:grid;gap:12px}.inventory-edit-form .form-grid.two{grid-template-columns:1fr 1fr}.inventory-edit-form .form-grid.four{grid-template-columns:2fr 1fr 1fr 1fr}.inventory-edit-form label{font-weight:800;color:#334155}.inventory-edit-form input,.inventory-edit-form textarea,.inventory-edit-form select{display:block;width:100%;margin-top:6px;border:1px solid #ddd6fe;border-radius:12px;padding:10px;background:#fff;font:inherit}.inventory-edit-form textarea{min-height:82px}.inventory-stock-edit-table{overflow:auto;margin:10px 0 14px}.inventory-add-site{background:#faf5ff;border:1px solid #e9d5ff;border-radius:16px;padding:12px;margin:12px 0}.inventory-import-panel{border-radius:24px;border:1px solid #ddd6fe;background:#fff;box-shadow:0 18px 55px rgba(109,40,217,.08)}.inventory-hero{margin-bottom:14px}.inventory-steps{line-height:1.7}.inventory-upload-form{margin-top:16px;display:flex;gap:10px;align-items:end;flex-wrap:wrap}.inventory-upload-form label{font-weight:800}.inventory-upload-form input[type=file]{display:block;margin-top:6px;border:1px dashed #a78bfa;border-radius:12px;padding:12px;background:#faf5ff}.pagination{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.pagination a,.pagination span{padding:8px 12px;border-radius:10px;border:1px solid #ddd6fe;text-decoration:none;font-weight:800}.pagination a.active{background:#7c3aed;color:#fff}
@media (max-width:1199px){.inventory-filter-grid{grid-template-columns:1fr 1fr}.inventory-filter-grid input[name=q]{grid-column:1/-1}.inventory-table-wrap{display:none}.inventory-card-list{display:block}.inventory-edit-form .form-grid.two,.inventory-edit-form .form-grid.four{grid-template-columns:1fr}.inventory-modal-backdrop{padding:10px}.inventory-modal{margin:10px auto;padding:16px}.inventory-upload-form{display:block}.inventory-upload-form .btn{width:100%;margin-top:10px}}
@media (max-width:640px){.inventory-filter-grid{grid-template-columns:1fr 1fr}.inventory-filter-grid input[name=q],.inventory-filter-grid select,.inventory-filter-grid input[name=soh_value]{grid-column:1/-1}.inventory-filter-grid .btn{width:100%}.inventory-card{padding:15px}.inventory-card h3{font-size:1rem}}

/* Inventory v43 - Criticality & SOH hidden in More Filter */
.inventory-filter-grid.inventory-filter-grid-v43{
  grid-template-columns:minmax(280px,1.4fr) minmax(180px,.8fr) 120px 120px 150px;
  gap:8px;
  align-items:center;
}
.inventory-filter-grid-v43 .inventory-more-filter-v43{
  grid-column:1/-1!important;
  width:100%;
  margin-top:2px;
}
.inventory-more-filter-v43 > summary{
  width:max-content;
}
.inventory-more-filter-v43 .inventory-more-filter-grid-v43{
  grid-template-columns:minmax(180px,1fr) minmax(140px,.6fr) minmax(160px,.8fr);
  align-items:center;
}
.inventory-more-filter-v43:not([open]){
  border:0!important;
  background:transparent!important;
  padding:0!important;
}
.inventory-more-filter-v43[open]{
  border:1px dashed var(--purple-line)!important;
  background:#faf9ff!important;
  padding:8px!important;
}
@media (max-width:1199px){
  .inventory-filter-grid.inventory-filter-grid-v43{
    grid-template-columns:1fr 1fr!important;
  }
  .inventory-filter-grid-v43 input[name=q],
  .inventory-filter-grid-v43 select[name=site_id],
  .inventory-filter-grid-v43 .inventory-more-filter-v43,
  .inventory-filter-grid-v43 .inventory-import-main-v43{
    grid-column:1/-1!important;
  }
  .inventory-more-filter-v43 .inventory-more-filter-grid-v43{
    grid-template-columns:1fr!important;
  }
  .inventory-filter-grid-v43 .btn{
    width:100%;
  }
}
@media (max-width:640px){
  .inventory-filter-grid.inventory-filter-grid-v43{
    grid-template-columns:1fr 1fr!important;
  }
  .inventory-filter-grid-v43 input[name=q],
  .inventory-filter-grid-v43 select[name=site_id],
  .inventory-filter-grid-v43 .inventory-more-filter-v43,
  .inventory-filter-grid-v43 .inventory-import-main-v43{
    grid-column:1/-1!important;
  }
  .inventory-filter-grid-v43 button.btn.primary,
  .inventory-filter-grid-v43 a.btn.secondary{
    grid-column:auto!important;
  }
}


/* Inventory v45 - desktop fullscreen, compact site cell, two-line table headings */
@media (min-width:1200px){
  .inventory-filter-panel,
  .inventory-list-panel,
  .toolbar:has(+ .inventory-list-panel),
  body:has(.inventory-list-panel) .toolbar{
    width:calc(100vw - 28px)!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw + 14px)!important;
    margin-right:calc(50% - 50vw + 14px)!important;
  }
  .inventory-table{width:100%; table-layout:fixed;}
  .inventory-table th{
    white-space:normal!important;
    line-height:1.12!important;
    text-align:left;
    vertical-align:middle;
    padding:10px 9px!important;
  }
  .inventory-table td{min-width:0!important; padding:10px 9px!important;}
  .inventory-table th:nth-child(1), .inventory-table td:nth-child(1){width:130px;}
  .inventory-table th:nth-child(2), .inventory-table td:nth-child(2){width:220px;}
  .inventory-table th:nth-child(3), .inventory-table td:nth-child(3){width:210px;}
  .inventory-table th:nth-child(4), .inventory-table td:nth-child(4){width:72px;}
  .inventory-table th:nth-child(5), .inventory-table td:nth-child(5){width:245px;}
  .inventory-table th:nth-child(6), .inventory-table td:nth-child(6){width:115px;}
  .inventory-table th:nth-child(7), .inventory-table td:nth-child(7){width:95px;}
  .inventory-table th:nth-child(8), .inventory-table td:nth-child(8),
  .inventory-table th:nth-child(9), .inventory-table td:nth-child(9){width:70px;}
  .inventory-table th:nth-child(10), .inventory-table td:nth-child(10){width:115px;}
  .inventory-table th:nth-child(11), .inventory-table td:nth-child(11){width:95px;}
  .inventory-table th:nth-child(12), .inventory-table td:nth-child(12){width:130px;}
  .inventory-table th:nth-child(13), .inventory-table td:nth-child(13){width:160px;}
  .inventory-table th:nth-child(14), .inventory-table td:nth-child(14){width:72px;}
}
.inventory-site-cell{overflow-wrap:anywhere;}
.inventory-site-main{font-weight:900;color:#111827;line-height:1.25;}
.inventory-site-detail{display:block!important;font-size:.72em!important;line-height:1.25!important;color:#94a3b8!important;font-weight:800!important;margin-top:4px!important;}
.inventory-table td:nth-child(5){background:linear-gradient(180deg,#fff,#faf8ff);}
@media (max-width:1199px){
  .inventory-table-wrap{display:none!important;}
  .inventory-card-list{display:block!important;}
  .inventory-filter-panel,.inventory-list-panel{width:auto!important;margin-left:12px!important;margin-right:12px!important;}
}


/* v51 Inventory integer SOH + delete action */
.inventory-edit-actions-v51 { align-items: center; gap: 10px; flex-wrap: wrap; }
.inventory-edit-actions-v51 .btn.danger { margin-left: auto; }
.inventory-table td:nth-child(7),
.inventory-table th:nth-child(7) { text-align: right; }
.inventory-card .inventory-metas span { white-space: normal; }
@media (max-width: 1199px) {
  .inventory-edit-actions-v51 .btn.danger { margin-left: 0; width: 100%; }
}

/* v52 - Inventory age and dashboard */
.inventory-hero-v52,.inventory-dashboard-hero-v52{margin-bottom:16px}
.dashboard-filter-card-v52{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);border-radius:18px;padding:14px;min-width:280px;backdrop-filter:blur(10px)}
.dashboard-filter-card-v52 label{display:grid;gap:6px;font-weight:800;color:#fff}
.dashboard-filter-card-v52 select{border-radius:12px;border:1px solid rgba(255,255,255,.4);padding:10px;background:#fff;color:#1f2937;font-weight:700}
.dashboard-print-actions-v52{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.dashboard-print-actions-v52 .btn{flex:1;min-width:120px;text-align:center}
.dashboard-grid-v52{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.dashboard-chart-card-v52{background:linear-gradient(180deg,#fff,#faf7ff);border:1px solid #eadcff;border-radius:24px;box-shadow:0 18px 45px rgba(88,28,135,.12);padding:18px;display:grid;gap:14px;min-width:0}.chart-card-head-v52{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.chart-card-head-v52 h2{margin:0;color:#3b0764;font-size:1.2rem}.chart-card-head-v52 span{font-weight:900;color:#7c3aed;background:#f3e8ff;border-radius:999px;padding:6px 10px;white-space:nowrap}.pie-v52{width:220px;height:220px;border-radius:50%;margin:6px auto;display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 16px 40px rgba(30,41,59,.16);text-decoration:none}.pie-v52:after{content:"";width:112px;height:112px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #ede9fe;position:absolute}.pie-v52 span{position:relative;z-index:1;font-weight:900;color:#4c1d95}.chart-legend-v52{display:grid;gap:8px}.chart-legend-v52 a,.chart-legend-v52 div{display:grid;grid-template-columns:14px 1fr auto;gap:9px;align-items:center;text-decoration:none;color:#1f2937;background:#fff;border:1px solid #eee7ff;border-radius:14px;padding:9px 10px}.chart-legend-v52 i{width:12px;height:12px;border-radius:4px}.chart-legend-v52 b{font-size:.9rem}.chart-legend-v52 span{font-weight:900;color:#6d28d9;font-size:.9rem}.inventory-age-table-v52 th,.inventory-age-table-v52 td{vertical-align:top}.age-badge{border-radius:8px!important;box-shadow:none!important}.age-le_3{background:#dcfce7!important;color:#166534!important}.age-gt3_le6{background:#dbeafe!important;color:#1d4ed8!important}.age-gt6_le9{background:#cffafe!important;color:#0e7490!important}.age-gt9_le12{background:#fef3c7!important;color:#92400e!important}.age-gt12{background:#fee2e2!important;color:#991b1b!important}.inventory-age-card-v52 .status{width:max-content}.report-app-hero{background:linear-gradient(135deg,#4c1d95,#7c3aed 50%,#2563eb);color:#fff;border-radius:28px;padding:24px;display:flex;justify-content:space-between;gap:20px;align-items:center;box-shadow:0 24px 60px rgba(76,29,149,.25)}.report-app-hero h1{margin:4px 0;font-size:2rem}.report-app-hero p{margin:0;opacity:.9;max-width:740px}.report-app-hero small{letter-spacing:.16em;font-weight:900;opacity:.86}.report-progress-circle{width:132px;height:132px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);flex:0 0 auto}.report-progress-circle span{font-size:1.6rem;font-weight:900}.report-progress-circle small{font-size:.75rem;letter-spacing:0;text-align:center}
@media (min-width:1200px){body:has(.inventory-list-panel) .app,body:has(.dashboard-grid-v52) .app{max-width:none;width:100%;padding-left:18px;padding-right:18px}.inventory-table-wrap{overflow-x:auto}.inventory-table{font-size:.92rem}}
@media (max-width:1199px){.dashboard-grid-v52{grid-template-columns:1fr}.dashboard-filter-card-v52{min-width:0;width:100%}.report-app-hero{display:grid;padding:18px;border-radius:22px}.report-progress-circle{width:104px;height:104px}.pie-v52{width:190px;height:190px}.pie-v52:after{width:96px;height:96px}.inventory-age-table-v52{display:none}.inventory-age-card-v52{display:grid}}
@media (max-width:640px){.dashboard-print-actions-v52{display:grid;grid-template-columns:1fr 1fr}.chart-legend-v52 a,.chart-legend-v52 div{grid-template-columns:12px 1fr;align-items:start}.chart-legend-v52 span{grid-column:2}.report-app-hero h1{font-size:1.45rem}.report-app-hero p{font-size:.92rem}}


/* v54 - Umur Stock compact columns and cleaner header */
.inventory-age-table-v52{
  table-layout: fixed;
  width: 100%;
}
.inventory-age-table-v52 th{
  white-space: normal !important;
  line-height: 1.12 !important;
  padding: 10px 8px !important;
}
.inventory-age-table-v52 td{
  padding: 10px 8px !important;
  vertical-align: top !important;
  overflow-wrap: anywhere;
}
.inventory-age-table-v52 .col-age-material{width:130px;}
.inventory-age-table-v52 .col-age-desc{width:260px;}
.inventory-age-table-v52 .col-age-uom{width:52px !important; max-width:52px !important; text-align:center;}
.inventory-age-table-v52 .col-age-site{width:190px !important; min-width:190px !important;}
.inventory-age-table-v52 .col-age-qty{width:78px !important; max-width:78px !important; text-align:right;}
.inventory-age-table-v52 .col-age-amount{width:120px; text-align:right;}
.inventory-age-table-v52 .col-age-group{width:150px;}
.inventory-age-table-v52 .col-age-date{width:105px;}
.inventory-age-table-v52 .col-age-days{width:82px; text-align:right;}
.inventory-age-table-v52 .col-age-class{width:155px;}
.age-uom-v54{
  display:inline-flex;
  min-width:30px;
  justify-content:center;
  font-weight:900;
  color:#4c1d95;
  background:#f3e8ff;
  border:1px solid #ddd6fe;
  border-radius:8px;
  padding:3px 5px;
  font-size:.82em;
}
.age-site-name-v54{
  display:block;
  font-size:.9em;
  font-weight:800;
  color:#334155;
  line-height:1.22;
}
.age-num-v54{
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.inventory-hero-v52 p{display:none!important;}
@media (min-width:1200px){
  .inventory-age-table-v52{font-size:.88rem;}
  .inventory-age-table-v52 .col-age-desc{width:280px;}
  .inventory-age-table-v52 .col-age-site{width:220px!important;}
  .inventory-age-table-v52 .col-age-uom{width:48px!important;}
  .inventory-age-table-v52 .col-age-qty{width:70px!important;}
}
@media (max-width:1199px){
  .inventory-age-card-v52 .inventory-metas span{font-size:.9em;}
  .inventory-age-card-v52 .inventory-card-head span{font-size:.86em;}
}


/* V56 - Pelindo logo/header, blue-cyan color system, and compact task detail metadata */
:root{
  --primary:#0072bc!important;
  --primary-2:#27aae1!important;
  --primary-3:#65d6ff!important;
  --soft:#eef9ff!important;
  --purple-soft:#eef9ff!important;
  --purple-line:#bfeaff!important;
  --shadow:0 8px 22px rgba(0,114,188,.10)!important;
}
body{background:linear-gradient(180deg,#f3fbff 0%,#fff 42%,#f7fbff 100%)!important;}
.btn.primary,.pagination a.active,.dash-card b,.activity-table-v6 th{
  background:linear-gradient(135deg,#0072bc,#27aae1)!important;
  border-color:#0072bc!important;
  color:#fff!important;
}
.status.detail-status,.status.quotation{box-shadow:none!important;}
.topbar-v11{
  grid-template-columns:44px minmax(108px,auto) 1fr!important;
  min-height:56px!important;
  padding:8px 12px!important;
  gap:10px!important;
  overflow:visible!important;
  border-bottom:1px solid rgba(39,170,225,.28)!important;
  box-shadow:0 5px 20px rgba(0,114,188,.08)!important;
}
.topbar-v11 .menu,
.hamburger-v15 > summary.menu{
  width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
  color:#0072bc!important;
  border-color:rgba(39,170,225,.35)!important;
  background:#fff!important;
  font-size:20px!important;
  line-height:1!important;
}
.brand-logo-v11{
  width:auto!important;
  max-width:132px!important;
  min-width:94px!important;
  height:34px!important;
  display:flex!important;
  align-items:center!important;
  overflow:visible!important;
  flex:0 0 auto!important;
}
.brand-logo-v11 img,
.brand-logo-v11 .pelindo-logo-img-v12{
  width:auto!important;
  height:24px!important;
  max-width:124px!important;
  max-height:28px!important;
  object-fit:contain!important;
  object-position:left center!important;
  display:block!important;
  flex:0 0 auto!important;
}
.brand-logo-v11 span{display:none!important;}
.topbar-v11 .top-actions{gap:6px!important;min-width:0!important;align-items:center!important;justify-content:flex-end!important;overflow:visible!important;}
.topbar-v11 .navlink,.topbar-v11 .logout{
  color:#0072bc!important;
  border-color:rgba(39,170,225,.35)!important;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(0,114,188,.06)!important;
}
.topbar-v11 .logout{color:#dc2626!important;}
.topbar-v11 .navlink:hover{background:#eef9ff!important;}
.detail-card{
  background:linear-gradient(135deg,#0072bc 0%,#27aae1 100%)!important;
}
.detail-card .chips.task-main-chips-v56 span{
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(255,255,255,.46)!important;
  color:#0f172a!important;
  border-radius:14px!important;
}
.task-plain-info-v56{
  display:flex;
  flex-wrap:wrap;
  gap:6px 14px;
  margin:6px 0 10px;
  color:rgba(255,255,255,.96);
  font-size:14px;
  line-height:1.35;
  font-weight:500;
}
.task-plain-info-v56 span{display:inline-flex;gap:4px;align-items:baseline;}
.task-plain-info-v56 b{font-weight:900;color:#fff;}
.detail-card .desc{background:rgba(255,255,255,.16)!important;border-left-color:rgba(255,255,255,.75)!important;color:#fff!important;}
.detail-card .meta{color:rgba(255,255,255,.9)!important;}
.detail-card .detail-head h2{color:#fff!important;}
.detail-card .task-progress-detail-v27 b{color:#fff!important;}
.detail-card .progress-mini-v27{background:rgba(255,255,255,.32)!important;border-color:rgba(255,255,255,.55)!important;}
.detail-card .progress-mini-v27 span{background:#fff!important;}
.detail-card .text-btn-v9{color:#fff!important;text-decoration:none!important;border:1px solid rgba(255,255,255,.34)!important;border-radius:10px!important;padding:8px 14px!important;background:rgba(255,255,255,.14)!important;}
.detail-card .text-btn-v9.danger{background:rgba(220,38,38,.55)!important;color:#fff!important;border-color:rgba(255,255,255,.25)!important;}
.detail-card .detail-status{background:rgba(255,255,255,.18)!important;border:1px solid rgba(255,255,255,.35)!important;color:#fff!important;}

@media(max-width:1199px){
  .topbar-v11{
    grid-template-columns:42px 104px 1fr!important;
    min-height:54px!important;
    padding:7px 10px!important;
    gap:8px!important;
  }
  .brand-logo-v11{min-width:96px!important;max-width:108px!important;width:108px!important;height:34px!important;}
  .brand-logo-v11 img,.brand-logo-v11 .pelindo-logo-img-v12{height:23px!important;max-width:108px!important;width:auto!important;}
  .topbar-v11 .menu,.hamburger-v15 > summary.menu{width:38px!important;height:38px!important;min-height:38px!important;font-size:19px!important;}
  .topbar-v11 .navlink,.topbar-v11 .logout{font-size:12px!important;padding:7px 8px!important;min-height:36px!important;border-radius:10px!important;}
}
@media(max-width:760px){
  .topbar-v11{
    grid-template-columns:40px 88px 1fr!important;
    min-height:52px!important;
    padding:6px 8px!important;
    gap:7px!important;
  }
  .brand-logo-v11{width:88px!important;max-width:88px!important;min-width:88px!important;height:32px!important;overflow:hidden!important;}
  .brand-logo-v11 img,.brand-logo-v11 .pelindo-logo-img-v12{height:22px!important;max-width:88px!important;width:auto!important;object-fit:contain!important;object-position:left center!important;}
  .topbar-v11 .menu,.hamburger-v15 > summary.menu{width:36px!important;height:36px!important;min-height:36px!important;font-size:18px!important;}
  .topbar-v11 .top-actions{gap:4px!important;}
  .topbar-v11 .navlink,.topbar-v11 .logout{font-size:11px!important;padding:6px 6px!important;min-height:34px!important;border-radius:9px!important;}
  .topbar-v11 .navlink[href="inventory.php"],
  .topbar-v11 .navlink[href="inventory_age.php"],
  .topbar-v11 .navlink[href="inventory_dashboard.php"]{display:none!important;}
  .notif-link .notif-text{display:none!important;}
  .task-plain-info-v56{font-size:13px;gap:4px 10px;}
}
@media(max-width:390px){
  .topbar-v11{grid-template-columns:36px 76px 1fr!important;gap:5px!important;padding:5px 6px!important;}
  .brand-logo-v11{width:76px!important;max-width:76px!important;min-width:76px!important;}
  .brand-logo-v11 img,.brand-logo-v11 .pelindo-logo-img-v12{height:20px!important;max-width:76px!important;}
  .topbar-v11 .menu,.hamburger-v15 > summary.menu{width:34px!important;height:34px!important;min-height:34px!important;}
  .topbar-v11 .navlink,.topbar-v11 .logout{font-size:10px!important;padding:5px 5px!important;min-height:32px!important;}
}


/* v58 - Perbesar logo aplikasi secara proporsional */
.topbar .brand-logo-v58{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  min-width:150px !important;
  max-width:220px !important;
  overflow:visible !important;
  padding:0 4px !important;
  gap:0 !important;
}
.topbar .brand-logo-v58 .app-logo-v58,
.topbar .brand-logo-v58 img.app-logo-v58,
.pelindo-logo-img-v12.app-logo-v58{
  display:block !important;
  width:auto !important;
  height:34px !important;
  max-height:38px !important;
  max-width:180px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
.topbar .menu,
.hamburger-v15 > summary.menu{
  min-width:44px !important;
  width:44px !important;
  height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}
@media (max-width: 900px){
  .topbar .brand-logo-v58{
    min-width:118px !important;
    max-width:150px !important;
    padding-left:2px !important;
  }
  .topbar .brand-logo-v58 .app-logo-v58,
  .topbar .brand-logo-v58 img.app-logo-v58,
  .pelindo-logo-img-v12.app-logo-v58{
    height:28px !important;
    max-height:30px !important;
    max-width:132px !important;
  }
  .topbar .menu,
  .hamburger-v15 > summary.menu{
    min-width:42px !important;
    width:42px !important;
    height:42px !important;
  }
}
@media (max-width: 430px){
  .topbar .brand-logo-v58{
    min-width:96px !important;
    max-width:118px !important;
  }
  .topbar .brand-logo-v58 .app-logo-v58,
  .topbar .brand-logo-v58 img.app-logo-v58,
  .pelindo-logo-img-v12.app-logo-v58{
    height:24px !important;
    max-height:26px !important;
    max-width:108px !important;
  }
}


/* V59 - replace image logo with compact text brand */
.brand-text-area3-v59{
  display:flex !important;
  align-items:center;
  text-decoration:none;
  min-width:0;
  height:38px;
  padding:0 4px;
}
.brand-text-area3-v59 span{
  display:block;
  color:#0072bc;
  font-weight:900;
  font-size:17px;
  line-height:1.05;
  letter-spacing:-.25px;
  white-space:nowrap;
  max-width:270px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.topbar .menu,
.hamburger-v15 summary.menu{
  width:42px;
  height:42px;
  min-width:42px;
  display:grid;
  place-items:center;
  padding:0 !important;
  line-height:1;
}
@media(max-width:760px){
  .topbar{grid-template-columns:44px minmax(0,1fr) auto;gap:6px;padding:6px 8px;}
  .brand-text-area3-v59{height:36px;padding:0 2px;}
  .brand-text-area3-v59 span{font-size:13px;max-width:170px;letter-spacing:-.2px;}
  .topbar .menu,.hamburger-v15 summary.menu{width:38px;height:38px;min-width:38px;}
}
@media(max-width:420px){
  .brand-text-area3-v59 span{font-size:12px;max-width:135px;}
}

/* V60 - fix text brand visibility and color */
.topbar-v11 .brand-logo-v11.brand-text-area3-v59,
.topbar .brand-logo-v11.brand-text-area3-v59,
.brand-logo-v11.brand-text-area3-v59{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:auto !important;
  min-width:210px !important;
  max-width:320px !important;
  height:42px !important;
  overflow:visible !important;
  padding:0 8px !important;
  flex:0 1 auto !important;
}
.topbar-v11 .brand-logo-v11.brand-text-area3-v59 span,
.topbar .brand-logo-v11.brand-text-area3-v59 span,
.brand-logo-v11.brand-text-area3-v59 span{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#0072bc !important;
  font-weight:900 !important;
  font-size:18px !important;
  line-height:1.05 !important;
  letter-spacing:-.25px !important;
  white-space:nowrap !important;
  max-width:none !important;
  overflow:visible !important;
  text-overflow:clip !important;
  text-shadow:none !important;
}
@media(max-width:760px){
  .topbar-v11 .brand-logo-v11.brand-text-area3-v59,
  .topbar .brand-logo-v11.brand-text-area3-v59,
  .brand-logo-v11.brand-text-area3-v59{
    min-width:160px !important;
    max-width:190px !important;
    height:38px !important;
    padding:0 4px !important;
  }
  .topbar-v11 .brand-logo-v11.brand-text-area3-v59 span,
  .topbar .brand-logo-v11.brand-text-area3-v59 span,
  .brand-logo-v11.brand-text-area3-v59 span{
    font-size:13px !important;
    letter-spacing:-.2px !important;
    white-space:normal !important;
    line-height:1.05 !important;
  }
}
@media(max-width:420px){
  .topbar-v11 .brand-logo-v11.brand-text-area3-v59,
  .topbar .brand-logo-v11.brand-text-area3-v59,
  .brand-logo-v11.brand-text-area3-v59{
    min-width:128px !important;
    max-width:150px !important;
  }
  .topbar-v11 .brand-logo-v11.brand-text-area3-v59 span,
  .topbar .brand-logo-v11.brand-text-area3-v59 span,
  .brand-logo-v11.brand-text-area3-v59 span{
    font-size:12px !important;
  }
}


/* V61 - short text logo Area 3 */
.brand-logo-v11.brand-text-area3-v59{
  width:auto!important;
  min-width:62px!important;
  max-width:78px!important;
  height:36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  text-decoration:none!important;
  flex:0 0 auto!important;
}
.brand-logo-v11.brand-text-area3-v59 span{
  display:inline-block!important;
  visibility:visible!important;
  opacity:1!important;
  color:#0072bc!important;
  font-weight:900!important;
  font-size:18px!important;
  line-height:1!important;
  letter-spacing:-.2px!important;
  white-space:nowrap!important;
  text-decoration:none!important;
}
@media (max-width: 768px){
  .brand-logo-v11.brand-text-area3-v59{
    min-width:50px!important;
    max-width:58px!important;
    height:30px!important;
  }
  .brand-logo-v11.brand-text-area3-v59 span{
    font-size:13px!important;
    letter-spacing:-.35px!important;
  }
}

/* =========================================================
   PATCH v62 - PELINDO BLUE / CYAN GLOBAL THEME
   Menyamakan warna grafis dengan tombol +Tambah Task
   ========================================================= */
:root{
  --primary:#0d7fd3 !important;
  --primary-2:#27b4f2 !important;
  --primary-3:#5ed2ff !important;
  --primary-dark:#0a66ad !important;
  --accent:#12b8e8 !important;
  --brand-blue-1:#0d7fd3 !important;
  --brand-blue-2:#27b4f2 !important;
  --brand-blue-3:#5ed2ff !important;
  --brand-blue-dark:#0a66ad !important;
  --brand-gradient:linear-gradient(135deg,#0d7fd3 0%,#27b4f2 100%) !important;
  --brand-gradient-2:linear-gradient(135deg,#0a66ad 0%,#0d7fd3 45%,#27b4f2 100%) !important;
  --brand-gradient-soft:linear-gradient(135deg,rgba(13,127,211,.10),rgba(39,180,242,.16)) !important;
  --brand-border:#b8def5 !important;
  --brand-shadow:0 12px 28px rgba(13,127,211,.22) !important;
  --brand-shadow-soft:0 5px 16px rgba(13,127,211,.13) !important;
  --brand-bg:#f4fbff !important;
  --brand-text:#0d7fd3 !important;
}

body{
  background:linear-gradient(180deg,#f8fdff 0%,#eef8ff 100%) !important;
  color:#17324a !important;
}

a{color:var(--brand-text) !important;}
a:hover{color:var(--brand-blue-dark) !important;}

/* Header */
.app-header,.topbar,.header,.navbar{
  background:#ffffff !important;
  border-bottom:1px solid #cceafd !important;
  box-shadow:0 3px 14px rgba(13,127,211,.08) !important;
}
.logo-text,.brand-text,.site-title,.app-logo-text{
  color:#0d7fd3 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
}

.menu-toggle,.hamburger-btn,.btn-menu,#sidebarToggle,.sidebar-toggle{
  color:#0d7fd3 !important;
  background:#fff !important;
  border:1px solid #b8def5 !important;
  box-shadow:var(--brand-shadow-soft) !important;
}
.menu-toggle:hover,.hamburger-btn:hover,.btn-menu:hover,#sidebarToggle:hover,.sidebar-toggle:hover{
  background:var(--brand-gradient-soft) !important;
}

/* Top menu */
.nav a,.topnav a,.top-menu a,.main-menu a,.header-menu a,.nav-btn,.menu-chip{
  color:#0d7fd3 !important;
  border-color:#b8def5 !important;
  background:#fff !important;
  box-shadow:0 4px 12px rgba(13,127,211,.10) !important;
}
.nav a:hover,.topnav a:hover,.top-menu a:hover,.main-menu a:hover,.header-menu a:hover,.nav-btn:hover,.menu-chip:hover{
  background:var(--brand-gradient-soft) !important;
  color:#0a66ad !important;
}

/* Buttons */
button[type="submit"],.btn-primary,.btn-filter,.btn-save,.btn-submit,.btn-import,.btn-share-primary,.primary-btn,.fab-add,.fab-add-task,.floating-add,.floating-action,
a.btn-primary{
  background:var(--brand-gradient) !important;
  color:#fff !important;
  border:none !important;
  box-shadow:var(--brand-shadow) !important;
}
button[type="submit"]:hover,.btn-primary:hover,.btn-filter:hover,.btn-save:hover,.btn-submit:hover,.btn-import:hover,.btn-share-primary:hover,.primary-btn:hover,.fab-add:hover,.fab-add-task:hover,.floating-add:hover,.floating-action:hover{
  filter:brightness(.98) !important;
  transform:translateY(-1px);
}
.btn-secondary,.btn-reset,.btn-outline,a.btn-outline,.secondary-btn{
  background:#fff !important;
  color:#0d7fd3 !important;
  border:1px solid #b8def5 !important;
  box-shadow:0 4px 12px rgba(13,127,211,.08) !important;
}

/* Panels / cards */
.card,.panel,.box,.section-card,.page-card,.filter-panel,.filter-card,.search-panel,.dashboard-card,.chart-card,.report-section,.share-section,
.task-card,.status-card,.inventory-card,.age-card,.home-app-card{
  border-color:#d1ebfb !important;
  box-shadow:0 7px 20px rgba(13,127,211,.10) !important;
}
.filter-panel,.filter-card,.search-panel{
  background:#fff !important;
}

input,select,textarea{
  border-color:#cfe5f4 !important;
}
input:focus,select:focus,textarea:focus{
  border-color:#65c7f4 !important;
  box-shadow:0 0 0 3px rgba(39,180,242,.16) !important;
  outline:none !important;
}

/* Hero/detail/report style */
.task-hero,.status-hero,.report-hero,.detail-hero,.task-detail-hero,.equipment-hero,.inventory-hero{
  background:var(--brand-gradient-2) !important;
  color:#fff !important;
  box-shadow:0 18px 42px rgba(13,127,211,.22) !important;
}
.task-hero h1,.task-hero h2,.status-hero h1,.status-hero h2,.report-hero h1,.report-hero h2,.detail-hero h1,.detail-hero h2,
.task-detail-hero h1,.task-detail-hero h2,.equipment-hero h1,.equipment-hero h2,.inventory-hero h1,.inventory-hero h2{
  color:#fff !important;
}
.task-hero::before,.status-hero::before,.report-hero::before,.detail-hero::before,.task-detail-hero::before,.equipment-hero::before,.inventory-hero::before{
  background:rgba(255,255,255,.13) !important;
}
.task-hero::after,.status-hero::after,.report-hero::after,.detail-hero::after,.task-detail-hero::after,.equipment-hero::after,.inventory-hero::after{
  background:rgba(255,255,255,.10) !important;
}

.info-chip,.meta-chip,.site-chip,.hero-chip,.report-chip{
  background:rgba(255,255,255,.92) !important;
  color:#123a5a !important;
  border:1px solid rgba(255,255,255,.55) !important;
}

/* Progress bars */
.progress,.progress-track,.progress-bg{
  background:#dceffc !important;
}
.progress-bar,.progress-fill,.progress-value{
  background:var(--brand-gradient) !important;
}

/* Tables */
table thead th,.data-table thead th,.timeline-table thead th,.inventory-table thead th{
  background:var(--brand-gradient) !important;
  color:#fff !important;
  border-color:#0d7fd3 !important;
}
table tbody tr:nth-child(even),.data-table tbody tr:nth-child(even){
  background:#f3fbff !important;
}
table tbody td,.data-table tbody td{
  border-color:#dcecf7 !important;
}

/* Sidebar / hamburger menu */
.sidebar,.drawer,.side-menu{
  border-right:1px solid #cceafd !important;
  box-shadow:10px 0 30px rgba(13,127,211,.10) !important;
}
.sidebar a,.drawer a,.side-menu a{
  color:#0d7fd3 !important;
}
.sidebar a:hover,.drawer a:hover,.side-menu a:hover{
  background:var(--brand-gradient-soft) !important;
}

/* Dashboard / home graphics */
.home-card-top,.home-app-card .hero,.home-app-visual,.app-card-visual{
  background:var(--brand-gradient-2) !important;
}
.home-app-card .btn,.home-app-card a.btn{
  color:#0d7fd3 !important;
  border-color:#b8def5 !important;
}

/* Badges: keep semantic background but remove purple dominance */
.badge,.status-badge,.badge-status,.timeline-status{
  box-shadow:none !important;
}

/* Floating add button */
.fab-add,.fab-add-task,.floating-add,.floating-action{
  border-radius:999px !important;
  background:var(--brand-gradient) !important;
  color:#fff !important;
  box-shadow:0 16px 34px rgba(13,127,211,.30) !important;
}

/* Pagination */
.pagination a,.pagination span{
  border-color:#b8def5 !important;
  color:#0d7fd3 !important;
}
.pagination .active,.pagination a.active{
  background:var(--brand-gradient) !important;
  color:#fff !important;
  border-color:transparent !important;
}

/* Notification */
.notif-badge,.notification-badge,.badge-unread{
  background:var(--brand-gradient) !important;
  color:#fff !important;
}

/* More filter / show summary links */
.more-filter-link,.summary-toggle,.toggle-summary,a[data-toggle-summary]{
  color:#0d7fd3 !important;
}

@media (max-width: 991.98px){
  .menu-toggle,.hamburger-btn,.btn-menu,#sidebarToggle,.sidebar-toggle{
    width:58px !important;
    height:58px !important;
  }
  .fab-add,.fab-add-task,.floating-add,.floating-action{
    right:16px !important;
    bottom:16px !important;
  }
}


/* =========================================================
   V69 - Tasklist detail progress ring + full report timeline
   ========================================================= */
.task-detail-report-hero-v69{
  position:relative !important;
  padding-right:240px !important;
  min-height:300px !important;
}
.task-detail-ring-v69{
  position:absolute;
  right:36px;
  top:42px;
  width:170px;
  height:170px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:conic-gradient(#fff var(--task-progress,0%), rgba(255,255,255,.22) 0) !important;
  box-shadow:inset 0 0 0 16px rgba(255,255,255,.18), 0 18px 38px rgba(0,0,0,.08);
  z-index:3;
}
.task-detail-ring-inner-v69{
  width:118px;
  height:118px;
  border-radius:999px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:2px;
  text-align:center;
  color:#fff;
  background:linear-gradient(135deg,rgba(15,111,179,.98),rgba(39,180,242,.95)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
}
.task-detail-ring-inner-v69 b{
  display:block;
  font-size:31px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:-.04em;
  color:#fff !important;
}
.task-detail-ring-inner-v69 span{
  display:block;
  font-size:12px !important;
  color:rgba(255,255,255,.92) !important;
  font-weight:800 !important;
}
.task-detail-report-hero-v69 .task-progress-detail-v27{
  max-width:640px;
}
@media(max-width:1199px){
  .task-detail-report-hero-v69{
    padding-right:30px !important;
    min-height:0 !important;
  }
  .task-detail-ring-v69{
    position:relative;
    right:auto;
    top:auto;
    width:150px;
    height:150px;
    margin:16px 0 12px;
  }
  .task-detail-ring-inner-v69{
    width:104px;
    height:104px;
  }
  .task-detail-ring-inner-v69 b{font-size:27px !important;}
}
@media(max-width:760px){
  .task-detail-ring-v69{
    width:132px;
    height:132px;
    box-shadow:inset 0 0 0 12px rgba(255,255,255,.18), 0 10px 24px rgba(0,0,0,.08);
  }
  .task-detail-ring-inner-v69{
    width:92px;
    height:92px;
  }
  .task-detail-ring-inner-v69 b{font-size:24px !important;}
}

/* =========================================================
   v70 - Customer Contract Management
   ========================================================= */
.contract-filter-card{margin-bottom:14px}
.contract-filter-form{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(180px,.8fr) minmax(180px,.8fr) auto auto;gap:8px;align-items:center}
.contract-filter-form input,.contract-filter-form select{min-height:44px;border:1px solid #c9e8f8;border-radius:12px;padding:8px 10px;background:#fff}
.contract-filter-form .more-filter-inline{grid-column:1/-1}
.contract-more-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:8px;margin-top:10px}
.contract-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 8px;flex-wrap:wrap}
.contract-table-wrap{overflow-x:auto;border-radius:16px;border:1px solid #c9e8f8;background:#fff;box-shadow:0 8px 22px rgba(13,127,211,.08)}
.contract-table{min-width:2200px;margin:0}
.contract-table th{white-space:nowrap;vertical-align:middle;text-align:left}
.contract-table td{vertical-align:top;font-size:.92rem;line-height:1.25;cursor:pointer}
.contract-terminal-cell{min-width:220px;font-weight:700;color:#16364f}
.contract-doc-col{display:none;min-width:170px;max-width:240px;word-break:break-word}
body.show-contract-docs .contract-doc-col{display:table-cell}
.contract-table .status.small{padding:5px 8px;border-radius:10px;font-size:.78rem;display:inline-block;background:#e8f6ff;color:#0b70b7}
.contract-table .status.process{background:linear-gradient(135deg,#0d7fd3,#27b4f2);color:#fff}
.contract-form-card textarea{min-height:90px}
.contract-hero-report{background:linear-gradient(135deg,#0d7fd3 0%,#27b4f2 60%,#5ed2ff 100%)!important;color:#fff;border:none;position:relative;overflow:hidden;border-radius:30px;box-shadow:0 18px 40px rgba(13,127,211,.22)}
.contract-hero-report:before{content:"";position:absolute;right:-70px;top:-30px;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.12)}
.contract-hero-report:after{content:"";position:absolute;right:60px;top:75px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.12)}
.contract-hero-top{display:flex;justify-content:space-between;gap:18px;position:relative;z-index:1}.contract-hero-top small{letter-spacing:.12em;font-weight:900;opacity:.9}.contract-hero-top h1{color:#fff!important;margin:.35rem 0;font-size:clamp(1.7rem,3vw,3rem)}.contract-hero-top p{font-size:1.08rem;max-width:760px}.contract-hero-chips{position:relative;z-index:1;display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.contract-hero-chips span{background:rgba(255,255,255,.92);color:#123a5a;border-radius:16px;padding:8px 13px;font-weight:800}.contract-hero-actions{position:relative;z-index:1;margin-top:16px}
.contract-kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.contract-kpi-grid>div{background:#fff;border:1px solid #d8edf8;border-radius:18px;padding:14px;box-shadow:0 5px 16px rgba(13,127,211,.07)}.contract-kpi-grid small,.contract-detail-grid small{display:block;color:#607b91;font-weight:900;font-size:.78rem;text-transform:uppercase}.contract-kpi-grid b{font-size:1.05rem}.contract-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.contract-detail-grid>div{background:#f8fcff;border:1px solid #d8edf8;border-radius:18px;padding:14px}.contract-detail-grid .wide{grid-column:1/-1}.contract-doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.contract-doc-card{background:#fff;border:1px solid #d8edf8;border-radius:18px;padding:14px;box-shadow:0 5px 16px rgba(13,127,211,.06);min-height:96px;display:flex;flex-direction:column;gap:7px;overflow:hidden}.contract-doc-card b{color:#0a5e9d}.contract-doc-card a{word-break:break-word}.contract-thumb{width:100%;height:150px;object-fit:cover;border-radius:14px;border:1px solid #d8edf8;background:#f4fbff}.contract-add-doc{margin-top:14px}.contract-add-doc summary{font-weight:800;color:#0d7fd3;cursor:pointer}.text-danger-link{border:0;background:transparent;color:#c91919;text-decoration:underline;cursor:pointer;padding:0;font-weight:700}
@media(max-width:1199px){.contract-filter-form{grid-template-columns:1fr 1fr}.contract-filter-form input{grid-column:1/-1}.contract-more-grid{grid-template-columns:1fr 1fr}.contract-table-wrap{border:0;box-shadow:none;background:transparent}.contract-table{min-width:0}.contract-table thead{display:none}.contract-table,.contract-table tbody,.contract-table tr,.contract-table td{display:block;width:100%}.contract-table tr{background:#fff;border:1px solid #d8edf8;border-radius:22px;margin:12px 0;padding:14px;box-shadow:0 8px 22px rgba(13,127,211,.08)}.contract-table td{border:0!important;padding:5px 0!important}.contract-table td:before{content:attr(data-label);display:block;font-size:.72rem;font-weight:900;color:#607b91;text-transform:uppercase}.contract-doc-col{display:none!important}body.show-contract-docs .contract-doc-col{display:block!important}.contract-kpi-grid{grid-template-columns:repeat(2,1fr)}.contract-detail-grid{grid-template-columns:1fr}}
@media(max-width:680px){.contract-filter-form{grid-template-columns:1fr}.contract-more-grid{grid-template-columns:1fr}.contract-kpi-grid{grid-template-columns:1fr}.contract-hero-top{display:block}.contract-hero-chips span{font-size:.86rem}.contract-doc-grid{grid-template-columns:1fr}}

/* V71 - Customer Contract: Tahun column + mobile card view */
.contract-year-filter{max-width:110px;min-width:90px}
.contract-mobile-cards-v71{display:none}
@media (max-width:1199px){
  .contract-table-wrap{display:none!important}
  .contract-mobile-cards-v71{display:grid;gap:14px;margin:12px 14px 20px}
  .contract-filter-form{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .contract-year-filter{max-width:none!important;min-width:0!important;width:100%!important}
  .contract-toolbar{display:grid!important;gap:10px;margin-left:14px!important;margin-right:14px!important}
  .contract-toolbar>div:last-child{display:grid!important;grid-template-columns:1fr 1fr;gap:10px}
  .contract-mobile-card-v71{background:#fff;border:1px solid #d6edf8;border-radius:22px;box-shadow:0 10px 26px rgba(13,127,211,.10);padding:16px;overflow:hidden;position:relative;cursor:pointer}
  .contract-mobile-card-v71:before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:linear-gradient(180deg,#0d7fd3,#27b4f2)}
  .contract-mobile-head-v71{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-left:4px}
  .contract-mobile-head-v71 small{display:block;color:#64748b;font-weight:900;font-size:12px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.02em}
  .contract-mobile-head-v71 h3{margin:0;color:#0f172a;font-size:20px;line-height:1.25;overflow-wrap:anywhere}
  .contract-mobile-meta-v71{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 12px 4px}
  .contract-mobile-meta-v71 span{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:12px;background:#f3fbff;border:1px solid #cfeafa;color:#0b66b0;font-weight:900;font-size:13px}
  .contract-mobile-grid-v71{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-left:4px}
  .contract-mobile-grid-v71 div{background:#f8fcff;border:1px solid #dcecf7;border-radius:14px;padding:9px;min-width:0}
  .contract-mobile-grid-v71 small{display:block;color:#64748b;font-size:11px;font-weight:900;margin-bottom:4px;text-transform:uppercase}
  .contract-mobile-grid-v71 b{display:block;color:#0f172a;font-size:14px;overflow-wrap:anywhere}
  .contract-mobile-note-v71{margin:12px 0 0 4px;color:#334155;font-size:14px;line-height:1.35;background:#f8fafc;border:1px solid #e5edf5;border-radius:14px;padding:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .contract-mobile-actions-v71{display:flex;gap:12px;margin:12px 0 0 4px}
  .contract-mobile-actions-v71 a{color:#0d7fd3;font-weight:900;text-decoration:underline}
  .contract-doc-col{display:none!important}
  body.show-contract-docs .contract-doc-col{display:table-cell!important}
}
@media (min-width:1200px){
  .contract-mobile-cards-v71{display:none!important}
  .contract-table-wrap{display:block!important}
}


/* =========================================================
   v72 - Contract Addendum, compact table, status colors, wide layout
   ========================================================= */
body.contract-wide-page-v72 .app{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
body.contract-wide-page-v72 .contract-filter-card,
body.contract-wide-page-v72 .contract-toolbar,
body.contract-wide-page-v72 .contract-table-wrap,
body.contract-wide-page-v72 .pagination{
  width:calc(100% - 24px) !important;
  max-width:none !important;
  margin-left:12px !important;
  margin-right:12px !important;
}
body.contract-wide-page-v72 .contract-table{
  min-width:2450px !important;
}
.contract-table th,
.contract-table td{
  font-size:9px !important;
  line-height:1.15 !important;
  padding:5px 6px !important;
}
.contract-table th{
  font-weight:900 !important;
  letter-spacing:0 !important;
}
.contract-table td{
  font-weight:500 !important;
}
.contract-table .status.small{
  border-radius:8px !important;
  padding:3px 6px !important;
  font-size:8.5px !important;
  font-weight:800 !important;
  box-shadow:none !important;
}
.contract-open-doc-v72{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:3px 8px;
  border-radius:8px;
  background:#eef8ff;
  border:1px solid #b8def5;
  color:#0d7fd3 !important;
  font-weight:900;
  text-decoration:none !important;
  white-space:nowrap;
}
.contract-open-doc-v72:hover{
  background:#dff3ff;
}
.contract-table .status.small.berlaku,
.contract-mobile-meta-v71 span.contract-status-berlaku,
.contract-hero-chips span.contract-status-berlaku{
  background:#e6f7ee !important;
  color:#177245 !important;
  border:1px solid #c7ecd8 !important;
}
.contract-table .status.small.berakhir,
.contract-mobile-meta-v71 span.contract-status-berakhir,
.contract-hero-chips span.contract-status-berakhir{
  background:#eef2f6 !important;
  color:#667085 !important;
  border:1px solid #dde5ec !important;
}
.contract-table .status.small.belum-ada,
.contract-mobile-meta-v71 span.contract-status-belum-ada,
.contract-hero-chips span.contract-status-belum-ada{
  background:#fff1f1 !important;
  color:#b54747 !important;
  border:1px solid #ffd1d1 !important;
}
@media (max-width:1199px){
  body.contract-wide-page-v72 .app{
    width:100% !important;
    max-width:none !important;
  }
  .contract-table th,
  .contract-table td{
    font-size:inherit !important;
    line-height:inherit !important;
    padding:inherit !important;
  }
}

/* =========================================================
   v74 - Contract table font +30%
   ========================================================= */
body.contract-wide-page-v72 .contract-table th,
body.contract-wide-page-v72 .contract-table td{
  font-size:12px !important;
  line-height:1.22 !important;
  padding:6px 7px !important;
}
body.contract-wide-page-v72 .contract-table .status.small{
  font-size:11px !important;
  padding:4px 7px !important;
}
body.contract-wide-page-v72 .contract-open-doc-v72{
  font-size:11.5px !important;
  min-height:24px !important;
  padding:4px 8px !important;
}
@media (max-width:1199px){
  body.contract-wide-page-v72 .contract-table th,
  body.contract-wide-page-v72 .contract-table td{
    font-size:inherit !important;
    line-height:inherit !important;
    padding:inherit !important;
  }
}

/* =========================================================
   v75 - Minimal Clean Standard Theme + Home Search
   ========================================================= */
:root{
  --clean-blue:#0b4b83;
  --clean-blue-2:#159ad6;
  --clean-blue-3:#35bce8;
  --clean-bg:#f7fafc;
  --clean-line:#d7e7f2;
  --clean-soft:#eef8fd;
  --clean-gradient:linear-gradient(135deg,#0b4b83 0%,#159ad6 62%,#35bce8 100%);
  --clean-shadow:0 10px 28px rgba(11,75,131,.12);
  --clean-radius:14px;
}
body{background:var(--clean-bg)!important;color:#102033!important;}
.app{max-width:none!important;width:100%!important;margin:0!important;background:transparent!important;}
.topbar{background:#0b4b83!important;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.18)!important;box-shadow:0 2px 10px rgba(15,23,42,.12)!important;}
.topbar .menu,.hamburger-v15 summary.menu{background:transparent!important;color:#fff!important;border:2px solid rgba(255,255,255,.85)!important;border-radius:0!important;box-shadow:none!important;width:42px!important;height:42px!important;font-size:28px!important;line-height:1!important;}
.brand-logo-v11,.brand-text-area3-v59{color:#fff!important;text-decoration:none!important;font-weight:900!important;font-size:26px!important;letter-spacing:.04em!important;margin-right:auto!important;}
.brand-logo-v11 span,.brand-text-area3-v59 span{color:#fff!important;display:inline!important;white-space:nowrap!important;}
.top-actions .navlink,.top-actions .logout{background:transparent!important;border:0!important;color:#fff!important;box-shadow:none!important;border-radius:6px!important;font-size:13px!important;font-weight:800!important;padding:10px 14px!important;}
.top-actions .navlink:hover,.top-actions .logout:hover{background:rgba(255,255,255,.16)!important;color:#fff!important;}
.top-actions .navlink.active,.top-actions .navlink[aria-current="page"]{background:rgba(255,255,255,.20)!important;}
.notif-badge{background:#35bce8!important;color:#083b63!important;}

/* Home search */
.home-search-page{min-height:calc(100vh - 90px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:70px 16px 40px;position:relative;overflow:hidden;background:#fff;}
.home-search-page h1{font-size:30px;letter-spacing:.02em;text-transform:uppercase;color:#3346d3;text-align:center;margin:150px 0 16px;font-weight:900;position:relative;z-index:2;}
.home-search-form{width:min(860px,92vw);position:relative;z-index:2;}
.home-search-box{height:58px;border-radius:999px;background:#fff;box-shadow:0 2px 7px rgba(15,23,42,.22);display:flex;align-items:center;padding:0 12px 0 22px;border:1px solid #e5e7eb;}
.home-search-box input{flex:1;border:0!important;outline:0!important;font-size:16px;background:transparent!important;box-shadow:none!important;min-width:0;height:100%;}
.home-search-box button{width:44px;height:44px;border:0;background:transparent;color:#6b7280;font-size:28px;cursor:pointer;}
.home-search-options{margin-top:38px;display:flex;justify-content:center;gap:10px;flex-wrap:wrap;}
.search-choice{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#f2f4f6;padding:9px 18px;font-size:13px;font-weight:800;color:#333;cursor:pointer;}
.search-choice input{appearance:none;width:18px;height:18px;border-radius:999px;border:2px solid #a8dcb2;background:#fff;position:relative;}
.search-choice input:checked{background:#48b85d;border-color:#48b85d;}
.search-choice input:checked::after{content:'✓';position:absolute;color:#fff;font-size:13px;font-weight:900;left:2px;top:-2px;}
.search-choice:has(input:checked){background:#e9f7ed;}
.home-search-mark{position:absolute;top:55px;left:50%;transform:translateX(-50%);width:min(980px,70vw);height:280px;opacity:1;pointer-events:none;}
.mark-line{display:block;position:absolute;background:#000;}
.mark-line-main{height:145px;width:100%;top:0;left:0;}
.mark-line-short{height:145px;width:260px;top:118px;left:38%;}
.mark-line-mid{height:80px;width:82px;top:145px;right:-38px;}

/* Standard table headers across main modules */
.timeline-table thead th,
.inventory-table thead th,
.contract-table thead th,
.status-table thead th,
.task-table thead th,
table.data-table thead th,
.panel table thead th{background:var(--clean-gradient)!important;color:#fff!important;border-color:rgba(255,255,255,.25)!important;font-weight:800!important;}

/* Standard primary buttons */
.btn.primary,.btn-primary,.btn-submit,.btn-save,.btn-filter,.fab-add,.fab-add-task,.floating-add,
button.primary,a.btn.primary,.import-btn,.add-btn,.btn-import{background:var(--clean-gradient)!important;color:#fff!important;border:0!important;box-shadow:0 12px 24px rgba(21,154,214,.22)!important;border-radius:14px!important;font-weight:900!important;}
.btn.secondary,.btn-reset,a.btn.secondary{background:#fff!important;color:var(--clean-blue)!important;border:1px solid #b9ddef!important;border-radius:14px!important;box-shadow:none!important;font-weight:800!important;}
.panel,.page-card,.section-card,.filter-panel,.inventory-filter-panel{border:1px solid var(--clean-line)!important;border-radius:18px!important;box-shadow:var(--clean-shadow)!important;background:#fff!important;}

/* Umur Stock remove oversized header behavior */
.standard-page-title{padding:10px 18px 0;margin:0 auto;max-width:100%;}
.standard-page-title h1{font-size:22px;margin:8px 0 12px;color:var(--clean-blue);font-weight:900;}
.compact-toolbar{padding:0 16px;margin:6px 0 8px;color:#64748b;font-size:13px;}
.compact-toolbar p{margin:0;}
.inventory-age-table-v52 th,.inventory-age-table-v52 td{font-size:13px!important;}

@media(max-width:991px){
  .topbar{gap:8px!important;overflow-x:auto!important;padding:8px 10px!important;}
  .brand-logo-v11,.brand-text-area3-v59{font-size:20px!important;min-width:max-content!important;}
  .top-actions{display:flex!important;gap:6px!important;overflow-x:auto!important;}
  .top-actions .navlink,.top-actions .logout{font-size:12px!important;padding:9px 10px!important;min-width:max-content!important;}
  .home-search-page{padding-top:34px;min-height:calc(100vh - 76px);}
  .home-search-page h1{font-size:22px;margin:116px 0 16px;}
  .home-search-mark{top:40px;width:84vw;height:210px;}
  .mark-line-main{height:90px;}.mark-line-short{height:90px;width:35vw;top:78px;left:38%;}.mark-line-mid{height:50px;width:50px;top:96px;right:-20px;}
  .home-search-box{height:54px;}
  .home-search-options{margin-top:24px;gap:8px;}
  .search-choice{font-size:12px;padding:8px 12px;}
}


/* =========================================================
   V76 - Clean standardized blue/cyan theme fixes
   ========================================================= */
:root{
  --primary:#0072bc !important;
  --primary-2:#21b4e8 !important;
  --primary-dark:#004b86 !important;
  --primary-soft:#eaf7ff !important;
  --brand:#0072bc !important;
  --brand2:#21b4e8 !important;
  --brand-gradient:linear-gradient(135deg,#0072bc 0%,#21b4e8 100%) !important;
  --brand-gradient-soft:linear-gradient(135deg,rgba(0,114,188,.10),rgba(33,180,232,.15)) !important;
  --brand-border:#b9e2f7 !important;
  --brand-shadow:0 10px 26px rgba(0,114,188,.18) !important;
  --purple:#0072bc !important;
  --purple-2:#21b4e8 !important;
  --purple-line:#b9e2f7 !important;
  --purple-soft:#eaf7ff !important;
}
body{font-family:Roboto,Arial,sans-serif;background:#f5fbff;color:#1f2937}
.app{background:#f5fbff}

/* Header: clean Pelindo blue */
.topbar,.topbar-v11,.app-header,.navbar{
  background:#0c4f84 !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 2px 10px rgba(3,45,75,.16) !important;
}
.topbar-v11{grid-template-columns:58px auto minmax(0,1fr)!important;min-height:64px!important;padding:8px 14px!important;gap:14px!important}
.hamburger-v15{display:block!important;min-width:52px!important;width:52px!important;height:52px!important;overflow:visible!important}
.hamburger-v15 summary.menu,.topbar .menu{
  width:52px!important;height:52px!important;min-height:52px!important;padding:0!important;border-radius:12px!important;
  border:2px solid rgba(255,255,255,.72)!important;background:transparent!important;color:#fff!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:30px!important;line-height:1!important;
  box-shadow:none!important;list-style:none!important;
}
.hamburger-v15 summary.menu::-webkit-details-marker{display:none!important}
.brand-logo-v11,.brand-text-area3-v59{display:inline-flex!important;align-items:center!important;text-decoration:none!important;min-width:52px!important;white-space:nowrap!important;overflow:visible!important}
.brand-logo-v11 span,.brand-text-area3-v59 span,.topbar h1,.site-title,.logo-text{
  display:inline!important;visibility:visible!important;opacity:1!important;color:#fff!important;font-size:22px!important;font-weight:900!important;line-height:1!important;
}
.top-actions{gap:8px!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important}.top-actions::-webkit-scrollbar{display:none!important}
.top-actions .navlink,.top-actions .logout,.header-menu a,.nav-btn{
  background:#0c4f84!important;color:#fff!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:10px!important;
  box-shadow:none!important;font-weight:800!important;min-height:40px!important;padding:9px 13px!important;text-decoration:none!important;
}
.top-actions .navlink:hover,.top-actions .logout:hover{background:#0f609c!important;color:#fff!important}
.top-actions .logout{color:#fff!important}.notif-badge{background:#21b4e8!important;color:#fff!important}
.hamburger-panel-v15{border:1px solid #b9e2f7!important;border-radius:14px!important;box-shadow:0 18px 35px rgba(0,72,120,.18)!important}.hamburger-panel-v15 a{color:#0c4f84!important}

/* Home search: remove black decorative boxes and align title color */
.home-search-page{min-height:calc(100vh - 72px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;padding:84px 18px 30px!important;background:#fff!important;position:relative!important}
.home-search-mark,.mark-line,.mark-line-main,.mark-line-short,.mark-line-mid{display:none!important}
.home-search-page h1{margin:0 0 26px!important;color:#0c4f84!important;font-size:34px!important;font-weight:900!important;letter-spacing:.02em!important;text-align:center!important;text-transform:uppercase!important}
.home-search-form{width:min(880px,92vw)!important}.home-search-box{display:grid!important;grid-template-columns:1fr 60px!important;border:1px solid #d8e6ef!important;border-radius:30px!important;overflow:hidden!important;box-shadow:0 8px 24px rgba(15,23,42,.13)!important;background:#fff!important}
.home-search-box input{border:0!important;border-radius:0!important;min-height:58px!important;padding:0 26px!important;font-size:18px!important;box-shadow:none!important;background:#fff!important}.home-search-box button{border:0!important;border-radius:0!important;background:var(--brand-gradient)!important;color:#fff!important;font-size:30px!important;font-weight:700!important;cursor:pointer!important}.home-search-options{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:12px!important;margin-top:34px!important}.search-choice{background:#f3f7fa!important;border:1px solid transparent!important;border-radius:999px!important;padding:10px 18px!important;display:inline-flex!important;gap:10px!important;align-items:center!important;font-weight:800!important;color:#1f2937!important}.search-choice:has(input:checked){background:#e8f8ee!important}.search-choice input{width:24px!important;height:24px!important;min-height:24px!important;accent-color:#22b573!important}

/* All colored buttons standardized */
.btn.primary,.btn-filter,.btn-submit,.btn-save,.btn-import,.btn-share-primary,.fab-add,.fab-add-task,a.btn-primary,
button[type=submit].primary,input[type=submit],.filter-grid .btn.primary,.filter-grid button,.search-panel button,.contract-add-btn,
.add-task-btn,.add-master-btn,.import-btn,.btn.btn-primary,.login-card button,.login-card .btn.primary,.home-search-box button{
  background:var(--brand-gradient)!important;background-color:#0072bc!important;color:#fff!important;border-color:transparent!important;
  border-radius:14px!important;box-shadow:0 9px 20px rgba(0,114,188,.22)!important;font-weight:900!important;
}
.btn.secondary,.btn-reset,.btn-outline,a.btn-outline,.filter-grid .btn.secondary,.filter-grid a.btn.secondary{
  background:#fff!important;color:#0c4f84!important;border:1px solid #b9e2f7!important;border-radius:14px!important;box-shadow:none!important;
}
.btn.danger,.text-btn-v9.danger{background:#fff!important;color:#dc2626!important;border-color:#fecaca!important}

/* Remove remaining purple buttons and links */
button,.btn,.navlink,.pagination a.active{--primary:#0072bc!important}.pagination a.active{background:var(--brand-gradient)!important;color:#fff!important}
.summary-toggle button,.more-filter-toggle,a{color:#0072bc}.summary-toggle button:hover,.more-filter-toggle:hover,a:hover{color:#004b86}

/* Tables: same header style */
.list-header,table thead th,.activity-table-v6 th,.contract-table th,.inventory-table th,.age-table th,.status-table th{
  background:#1f9ed8!important;background-image:none!important;color:#fff!important;border-color:#d7edf9!important;font-weight:900!important;
}
.list-header{color:#fff!important}.list-row:nth-child(even),table tbody tr:nth-child(even){background:#eef8fd!important}.list-row:hover,table tbody tr:hover{background:#e1f3fb!important}

/* Dashboard header and report heroes use blue/cyan, with proper spacing */
.dashboard-hero,.inventory-dashboard-hero,.task-hero,.status-hero,.report-hero,.detail-hero{
  background:var(--brand-gradient)!important;color:#fff!important;border-radius:22px!important;padding:28px 34px!important;box-shadow:0 16px 35px rgba(0,114,188,.18)!important;
}
.dashboard-hero h1,.dashboard-hero h2,.inventory-dashboard-hero h1,.inventory-dashboard-hero h2,.task-hero h1,.task-hero h2,.status-hero h1,.status-hero h2,.report-hero h1,.report-hero h2,.detail-hero h1,.detail-hero h2{color:#fff!important}
.dashboard-hero p,.inventory-dashboard-hero p{color:rgba(255,255,255,.94)!important;margin-top:8px!important;line-height:1.35!important}.dashboard-hero .btn,.inventory-dashboard-hero .btn{background:#fff!important;color:#0c4f84!important;box-shadow:none!important}

/* Login page */
.login-card h1{color:#0072bc!important}.login-card button,.login-card .btn.primary{background:var(--brand-gradient)!important;color:#fff!important;border:0!important}.login-card a{color:#0072bc!important}
.login-page{background:linear-gradient(135deg,#f1f9fd,#ffffff)!important}

/* Cards/panels softer and consistent */
.panel,.detail-card,.section-card,.list-table,.filter-panel,.filter-card,.search-panel,.dashboard-card,.chart-card,.page-card,.card,.box{border-color:#d7edf9!important;box-shadow:0 4px 14px rgba(0,114,188,.07)!important}

/* Status chips: less purple bias */
.status.kontrak-user,.status.rks,.status.pr{background:#0072bc!important}.status.quotation{background:#f59e0b!important}.status.berlangsung,.status.selesai{background:#22b573!important}
.progress-bar,.progress-fill{background:var(--brand-gradient)!important}

@media(max-width:991px){
  .topbar-v11{grid-template-columns:58px auto 1fr!important;min-height:68px!important;padding:8px 10px!important;gap:8px!important;overflow:hidden!important}
  .brand-logo-v11 span,.brand-text-area3-v59 span{font-size:20px!important;color:#fff!important}
  .top-actions .navlink,.top-actions .logout{min-height:42px!important;padding:8px 10px!important;font-size:13px!important;white-space:nowrap!important}
  .home-search-page{padding:58px 16px 24px!important}.home-search-page h1{font-size:24px!important;line-height:1.2!important;margin-bottom:22px!important}.home-search-form{width:100%!important}.home-search-box{grid-template-columns:1fr 54px!important;border-radius:24px!important}.home-search-box input{font-size:16px!important;min-height:54px!important;padding:0 18px!important}.home-search-options{gap:8px!important;margin-top:22px!important}.search-choice{padding:9px 13px!important;font-size:13px!important}
  .dashboard-hero,.inventory-dashboard-hero,.task-hero,.status-hero,.report-hero,.detail-hero{padding:22px 20px!important;border-radius:20px!important}
}

/* =========================================================
   v77 - Clean header/menu + contract terminal text + unified table headers
   ========================================================= */
:root{
  --area-blue:#00558c;
  --area-blue-2:#0072bc;
  --area-cyan:#21b4e8;
  --area-soft:#eaf7ff;
  --area-line:#c8e7f7;
  --area-text:#071b33;
  --area-gradient:linear-gradient(135deg,#0072bc 0%,#21b4e8 100%);
}

/* Header: no bordered pill buttons; Area 3 white */
.topbar-v11,
.topbar{
  background:#00558c!important;
  color:#fff!important;
  border-bottom:0!important;
  box-shadow:0 2px 8px rgba(0,0,0,.10)!important;
}
.topbar-v11 .brand-logo-v11,
.topbar-v11 .brand-text-area3-v59,
.topbar-v11 .brand-logo-v11 span,
.topbar-v11 .brand-text-area3-v59 span,
.brand-logo-v11.brand-text-area3-v59 span{
  color:#fff!important;
  opacity:1!important;
  text-shadow:none!important;
}
.topbar-v11 .top-actions .navlink,
.topbar-v11 .top-actions .logout,
.top-actions .navlink,
.top-actions .logout{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  color:#fff!important;
  border-radius:8px!important;
  padding:9px 12px!important;
  font-weight:800!important;
}
.topbar-v11 .top-actions .navlink:hover,
.topbar-v11 .top-actions .logout:hover,
.top-actions .navlink:hover,
.top-actions .logout:hover{
  background:rgba(255,255,255,.13)!important;
  color:#fff!important;
}
.topbar-v11 .top-actions .logout,
.top-actions .logout{color:#fff!important;}

/* Hamburger less boxy */
.topbar-v11 .menu,
.hamburger-v15 summary.menu,
.menu{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.30)!important;
  border-radius:12px!important;
  box-shadow:none!important;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  display:inline-grid!important;
  place-items:center!important;
  font-size:24px!important;
  line-height:1!important;
}
.topbar-v11 .menu:hover,
.hamburger-v15 summary.menu:hover{
  background:rgba(255,255,255,.16)!important;
}
.hamburger-panel-v15 a{
  color:var(--area-blue-2)!important;
}

/* Admin tabs: never blue text on blue background */
.admin-tabs a{
  background:#fff!important;
  color:var(--area-blue-2)!important;
  border:1px solid var(--area-line)!important;
  box-shadow:none!important;
}
.admin-tabs a.active{
  background:var(--area-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
}

/* Primary colored buttons: all same blue/cyan gradient */
.btn.primary,
button.btn.primary,
.btn-filter,
.btn-submit,
.btn-save,
.btn-import,
.fab-add,
.fab-add-task,
button[type="submit"],
input[type="submit"]{
  background:var(--area-gradient)!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 8px 18px rgba(0,114,188,.18)!important;
}
.btn.secondary,
.btn.reset,
.btn-reset{
  background:#fff!important;
  color:var(--area-blue)!important;
  border:1px solid var(--area-line)!important;
  box-shadow:none!important;
}

/* Uniform main table headers: match Tasklist light header style */
.list-header,
table thead th,
.timeline-table thead th,
.activity-table-v6 th,
.inventory-table th,
.age-table th,
.contract-table th,
.status-table th,
.contract-table thead th,
.inventory-age-table th,
.inventory-list-table th{
  background:#eef5fb!important;
  background-image:none!important;
  color:#071b33!important;
  border-color:#cfe5f3!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.timeline-table thead th:first-child,
.contract-table thead th:first-child,
table thead th:first-child{border-top-left-radius:12px!important;}
.timeline-table thead th:last-child,
.contract-table thead th:last-child,
table thead th:last-child{border-top-right-radius:12px!important;}

/* Contract list full width and compact but readable */
body.contract-wide-page-v72 .app,
body.contract-wide-page-v72 main,
body.contract-wide-page-v72 .content,
body.contract-wide-page-v72 .page,
body.contract-wide-page-v72 .container{
  max-width:none!important;
  width:100%!important;
}
body.contract-wide-page-v72 .contract-table-wrap,
body.contract-wide-page-v72 .contract-filter-card,
body.contract-wide-page-v72 .contract-toolbar{
  margin-left:8px!important;
  margin-right:8px!important;
}
body.contract-wide-page-v72 .contract-table th,
body.contract-wide-page-v72 .contract-table td{
  font-size:13px!important;
  line-height:1.18!important;
  padding:7px 8px!important;
}
body.contract-wide-page-v72 .contract-table .status.small{
  font-size:12px!important;
  border-radius:8px!important;
  padding:4px 7px!important;
}

/* Contract status soft colors */
.contract-table .status.small.berlaku,
.status.small.berlaku{
  background:#dff7ea!important;
  color:#167246!important;
}
.contract-table .status.small.berakhir,
.status.small.berakhir{
  background:#edf1f5!important;
  color:#64748b!important;
}
.contract-table .status.small.belum-ada,
.status.small.belum-ada{
  background:#ffe8e8!important;
  color:#b42323!important;
}

@media(max-width:1199px){
  .topbar-v11 .top-actions .navlink,
  .topbar-v11 .top-actions .logout{padding:8px 9px!important;font-size:12px!important;}
  .brand-logo-v11.brand-text-area3-v59 span{font-size:18px!important;}
}

/* =========================================================
   V78 - final header/menu/table consistency cleanup
   ========================================================= */
:root{
  --tasklist-header-bg:#eef5fb;
  --tasklist-header-text:#071b33;
  --tasklist-header-border:#cfe5f3;
  --area-main-blue:#0d5794;
  --area-main-blue-2:#0072bc;
  --area-cyan:#22b8e8;
  --area-button-gradient:linear-gradient(135deg,#0d5794 0%,#0072bc 58%,#22b8e8 100%);
}

/* Header: clean menu, no bordered button look */
.topbar,
.topbar-v11{
  background:#0d5794!important;
  border-bottom:0!important;
  box-shadow:0 2px 8px rgba(13,87,148,.16)!important;
}
.topbar-v11 .top-actions,
.top-actions{
  gap:14px!important;
}
.topbar-v11 .top-actions .navlink,
.topbar-v11 .top-actions .logout,
.topbar .top-actions .navlink,
.topbar .top-actions .logout{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  padding:8px 4px!important;
  border-radius:0!important;
  font-weight:900!important;
  text-decoration:none!important;
}
.topbar-v11 .top-actions .navlink:hover,
.topbar-v11 .top-actions .logout:hover,
.topbar .top-actions .navlink:hover,
.topbar .top-actions .logout:hover{
  color:#d7f3ff!important;
  background:transparent!important;
  text-decoration:none!important;
}
.topbar-v11 .top-actions .logout,
.topbar .top-actions .logout{
  color:#fff!important;
}

/* Area 3 beside hamburger must be white */
.brand-logo-v11,
.brand-logo-v11 span,
.brand-text-area3-v59,
.brand-text-area3-v59 span,
.topbar .brand-logo-v11 span,
.topbar-v11 .brand-logo-v11 span,
.site-title,
.logo-text,
.brand-text{
  color:#fff!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* Hamburger: rounded, proportional, not sharp square */
.hamburger-v15 summary.menu,
.hamburger-v15 > summary.menu,
.topbar .menu{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.75)!important;
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
  font-size:26px!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  box-shadow:none!important;
}
.hamburger-v15 summary.menu:hover,
.hamburger-v15 > summary.menu:hover,
.topbar .menu:hover{
  background:rgba(255,255,255,.14)!important;
}

/* Admin tabs: active tab readable, no blue-on-blue issue */
.admin-tabs a,
.admin-tab,
.admin-tab-nav a,
.tab-admin a{
  background:#fff!important;
  color:#0072bc!important;
  border:1px solid #cfe5f3!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.admin-tabs a.active,
.admin-tabs a[aria-current="page"],
.admin-tab.active,
.admin-tab-nav a.active,
.tab-admin a.active{
  background:#0072bc!important;
  color:#fff!important;
  border-color:#0072bc!important;
}

/* Show status summary: same concept as more filter, text/link only */
.summary-toggle,
.more-filter-v15,
.more-filter-v15.more-filter-inline-v16,
.more-filter-inline,
.more-filter-inline-v16{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
}
.summary-toggle button,
.more-filter-v15 summary,
.more-filter-inline summary,
.more-filter-inline-v16 > summary,
.inventory-more-filter-v43 > summary,
.more-filter-link,
.toggle-summary,
a[data-toggle-summary]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#0072bc!important;
  padding:0!important;
  text-decoration:underline!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.summary-toggle button:hover,
.more-filter-v15 summary:hover,
.more-filter-inline summary:hover,
.more-filter-inline-v16 > summary:hover,
.inventory-more-filter-v43 > summary:hover{
  color:#004b86!important;
}

/* Table headers: force Inventory, Umur Stock, Contract to match Tasklist light header */
table.inventory-table thead tr th,
.inventory-table thead tr th,
.inventory-table-wrap table thead tr th,
.inventory-list-panel table thead tr th,
table.inventory-age-table-v52 thead tr th,
.inventory-age-table-v52 thead tr th,
.inventory-age-table-v52 th,
table.contract-table thead tr th,
.contract-table thead tr th,
.contract-table-wrap table thead tr th,
.contract-table th,
.timeline-table.contract-table thead tr th,
.timeline-table.contract-table th,
.age-table thead tr th,
.status-table thead tr th{
  background:var(--tasklist-header-bg)!important;
  background-color:var(--tasklist-header-bg)!important;
  background-image:none!important;
  color:var(--tasklist-header-text)!important;
  border-color:var(--tasklist-header-border)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.inventory-table thead tr th *,
.inventory-age-table-v52 thead tr th *,
.contract-table thead tr th *{
  color:var(--tasklist-header-text)!important;
  text-shadow:none!important;
}

/* Main colored buttons: one clean blue-cyan gradient */
.btn.primary,
button.btn.primary,
a.btn.primary,
.btn-filter,
.btn-submit,
.btn-save,
.btn-import,
.fab-add,
.fab-add-task,
button[type="submit"],
input[type="submit"],
.inventory-import-main-v43,
.contract-toolbar .btn.primary{
  background:var(--area-button-gradient)!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 8px 18px rgba(0,114,188,.20)!important;
}
.btn.primary:hover,
button.btn.primary:hover,
a.btn.primary:hover,
button[type="submit"]:hover,
input[type="submit"]:hover{
  filter:brightness(.98)!important;
}

@media(max-width:1199px){
  .topbar-v11 .top-actions{gap:8px!important;}
  .topbar-v11 .top-actions .navlink,
  .topbar-v11 .top-actions .logout{font-size:12px!important;padding:8px 2px!important;}
  .brand-logo-v11.brand-text-area3-v59 span,
  .brand-logo-v11 span{font-size:18px!important;color:#fff!important;}
}

/* =========================================================
   v80 - Contract: Terminal column width -30%
   ========================================================= */
.contract-table .contract-terminal-cell,
body.contract-wide-page-v72 .contract-table .contract-terminal-cell{
  min-width:154px !important;
  width:154px !important;
  max-width:170px !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}

body.contract-wide-page-v72 .contract-table th.contract-terminal-col,
body.contract-wide-page-v72 .contract-table td.contract-terminal-cell{
  min-width:154px !important;
  width:154px !important;
  max-width:170px !important;
}

/* If the Terminal column is identified by data-label instead of class */
body.contract-wide-page-v72 .contract-table td[data-label="Terminal"]{
  min-width:154px !important;
  width:154px !important;
  max-width:170px !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

/* =========================================================
   v81 - Dashboard clean layout, no double/oversized header
   ========================================================= */
html, body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  background: #f7fbfe !important;
}
.app {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  background: #f7fbfe !important;
}
.topbar-v11,
.topbar {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  left: 0 !important;
  right: 0 !important;
}

/* Dashboard: replace the old purple hero with a compact control bar */
.report-app-hero.inventory-dashboard-hero-v52 {
  display: none !important;
}
.dashboard-page-v81 {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 16px 18px 28px !important;
  background: #f7fbfe !important;
}
.dashboard-control-v81 {
  width: 100% !important;
  margin: 0 0 14px !important;
  padding: 16px 18px !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(360px,520px) !important;
  gap: 18px !important;
  align-items: end !important;
  background: #ffffff !important;
  border: 1px solid #cfe5f3 !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 22px rgba(0,114,188,.08) !important;
}
.dashboard-title-v81 small {
  display: block !important;
  margin-bottom: 5px !important;
  color: #0f6fb3 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
}
.dashboard-title-v81 h1 {
  margin: 0 !important;
  color: #102a43 !important;
  font-size: clamp(24px, 2vw, 34px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}
.dashboard-title-v81 p {
  margin: 6px 0 0 !important;
  color: #516579 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}
.dashboard-filter-v81 label {
  display: block !important;
  margin-bottom: 7px !important;
  color: #0f6fb3 !important;
  font-weight: 900 !important;
}
.dashboard-filter-row-v81 {
  display: grid !important;
  grid-template-columns: 1fr auto auto !important;
  gap: 10px !important;
  align-items: center !important;
}
.dashboard-filter-row-v81 select {
  min-height: 42px !important;
  border-radius: 12px !important;
}
.dashboard-filter-row-v81 .btn {
  white-space: nowrap !important;
  min-height: 42px !important;
  border-radius: 12px !important;
}
.dashboard-grid-clean-v81 {
  margin: 0 !important;
  width: 100% !important;
  max-width: none !important;
  gap: 16px !important;
}
.dashboard-card-clean-v81 {
  border-color: #cfe5f3 !important;
  box-shadow: 0 8px 22px rgba(0,114,188,.08) !important;
}
.dashboard-card-clean-v81 h2 {
  color: #102a43 !important;
}
.dashboard-card-clean-v81 .chart-card-head-v52 span {
  background: #e6f4fc !important;
  color: #0f6fb3 !important;
}

@media (max-width: 900px) {
  .dashboard-page-v81 {
    padding: 10px 10px 22px !important;
  }
  .dashboard-control-v81 {
    grid-template-columns: 1fr !important;
    padding: 14px !important;
    border-radius: 16px !important;
  }
  .dashboard-filter-row-v81 {
    grid-template-columns: 1fr !important;
  }
  .dashboard-filter-row-v81 .btn {
    width: 100% !important;
  }
}

/* =========================================================
   V82 - Full width alignment for Inventory, Contract, Dashboard
   Make Inventory/Contract pages use the same edge-to-edge layout
   behavior as Tasklist and Status Alat.
   ========================================================= */

/* Full viewport wrapper for data-heavy modules */
body:has(.inventory-list-panel) .app,
body:has(.inventory-table-wrap) .app,
body:has(.contract-table-wrap) .app,
body:has(.contract-filter-card) .app,
body:has(.dashboard-page-v81) .app,
body.contract-wide-page-v72 .app {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: #f5fbff !important;
}

/* Keep header exactly flush with viewport */
body:has(.inventory-list-panel) .topbar,
body:has(.inventory-table-wrap) .topbar,
body:has(.contract-table-wrap) .topbar,
body:has(.contract-filter-card) .topbar,
body:has(.dashboard-page-v81) .topbar,
body.contract-wide-page-v72 .topbar {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 0 !important;
}

/* Inventory: filter, toolbar, table, pagination fill page with small consistent gutter */
body:has(.inventory-list-panel) .inventory-filter-panel,
body:has(.inventory-table-wrap) .inventory-filter-panel,
body:has(.inventory-list-panel) .toolbar,
body:has(.inventory-table-wrap) .toolbar,
body:has(.inventory-list-panel) .inventory-list-panel,
body:has(.inventory-table-wrap) .inventory-list-panel,
body:has(.inventory-list-panel) .pagination,
body:has(.inventory-table-wrap) .pagination {
  width: calc(100% - 20px) !important;
  max-width: none !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

body:has(.inventory-list-panel) .inventory-table-wrap,
body:has(.inventory-table-wrap) .inventory-table-wrap {
  width: 100% !important;
  max-width: none !important;
  overflow-x: auto !important;
}

body:has(.inventory-list-panel) .inventory-table,
body:has(.inventory-table-wrap) .inventory-table {
  width: 100% !important;
  min-width: 1500px !important;
}

/* Contract: filter, toolbar, table, pagination fill page with same gutter */
body.contract-wide-page-v72 .contract-filter-card,
body.contract-wide-page-v72 .contract-toolbar,
body.contract-wide-page-v72 .contract-table-wrap,
body.contract-wide-page-v72 .pagination,
body:has(.contract-table-wrap) .contract-filter-card,
body:has(.contract-table-wrap) .contract-toolbar,
body:has(.contract-table-wrap) .contract-table-wrap,
body:has(.contract-table-wrap) .pagination {
  width: calc(100% - 20px) !important;
  max-width: none !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

body.contract-wide-page-v72 .contract-table-wrap,
body:has(.contract-table-wrap) .contract-table-wrap {
  overflow-x: auto !important;
}

body.contract-wide-page-v72 .contract-table,
body:has(.contract-table-wrap) .contract-table {
  width: 100% !important;
  min-width: 1850px !important;
}

/* Dashboard: align to the same full-width gutter */
body:has(.dashboard-page-v81) .dashboard-page-v81 {
  width: calc(100% - 20px) !important;
  max-width: none !important;
  margin: 0 10px 24px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Reduce accidental horizontal blank space from old wrappers */
body:has(.inventory-list-panel) main,
body:has(.inventory-table-wrap) main,
body:has(.contract-table-wrap) main,
body:has(.contract-filter-card) main,
body:has(.dashboard-page-v81) main {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 1199px) {
  body:has(.inventory-list-panel) .inventory-table,
  body:has(.inventory-table-wrap) .inventory-table,
  body.contract-wide-page-v72 .contract-table,
  body:has(.contract-table-wrap) .contract-table {
    min-width: 0 !important;
  }
}

@media (max-width: 760px) {
  body:has(.inventory-list-panel) .inventory-filter-panel,
  body:has(.inventory-table-wrap) .inventory-filter-panel,
  body:has(.inventory-list-panel) .toolbar,
  body:has(.inventory-table-wrap) .toolbar,
  body:has(.inventory-list-panel) .inventory-list-panel,
  body:has(.inventory-table-wrap) .inventory-list-panel,
  body.contract-wide-page-v72 .contract-filter-card,
  body.contract-wide-page-v72 .contract-toolbar,
  body.contract-wide-page-v72 .contract-table-wrap,
  body:has(.contract-table-wrap) .contract-filter-card,
  body:has(.contract-table-wrap) .contract-toolbar,
  body:has(.contract-table-wrap) .contract-table-wrap,
  body:has(.dashboard-page-v81) .dashboard-page-v81 {
    width: calc(100% - 16px) !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
  }
}

/* ===== v83 - Tasklist Nilai integer + Activity Timeline sequence ===== */
.activity-row-v83{
  grid-template-columns: 72px minmax(170px,1.1fr) minmax(220px,1.4fr) 110px 130px 130px 110px 100px minmax(160px,1fr) 46px !important;
  align-items: stretch;
}
.activity-row-v83 .activity-seq-v83{
  text-align:center;
  font-weight:800;
}
@media (max-width: 1199px){
  .activity-row-v83{
    grid-template-columns: 1fr !important;
  }
  .activity-row-v83 .activity-seq-v83{
    text-align:left;
  }
}
.tasklist-table-v12 td:nth-child(4),
.tasklist-table-v12 th:nth-child(4){
  white-space: normal;
}

/* =========================================================
   V84 - Standardize toggle links (show status summary / more filter)
   Semua toggle dibuat seperti more filter Tasklist: tulisan sederhana,
   tanpa background, tanpa border, tanpa box grafis.
   ========================================================= */
.summary-toggle,
.status-summary-toggle,
.status-summary-link,
.toggle-summary-wrap,
.more-filter-v15,
.more-filter-v15.more-filter-inline-v16,
.more-filter-inline,
.more-filter-inline-v16,
.contract-filter-form details,
.contract-filter-form .more-filter-inline,
.contract-more-filter,
.inventory-more-filter-v43 {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  padding: 0 !important;
  margin-top: 6px !important;
  border-radius: 0 !important;
}

.summary-toggle button,
.summary-toggle .btn,
.summary-toggle a,
.status-summary-toggle button,
.status-summary-toggle .btn,
.status-summary-link,
.toggle-summary,
.toggle-summary.btn,
a.toggle-summary,
a.status-summary-link,
a[data-toggle-summary],
.more-filter-link,
.more-filter-toggle,
.more-filter-v15 > summary,
.more-filter-v15 summary,
.more-filter-inline > summary,
.more-filter-inline summary,
.more-filter-inline-v16 > summary,
.inventory-more-filter-v43 > summary,
.contract-filter-form details > summary,
.contract-filter-form .more-filter-inline > summary,
.contract-more-filter > summary {
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  line-height: 1.2 !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #0072bc !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  text-align: left !important;
  transform: none !important;
}

.summary-toggle button:hover,
.summary-toggle .btn:hover,
.summary-toggle a:hover,
.status-summary-toggle button:hover,
.status-summary-toggle .btn:hover,
.status-summary-link:hover,
.toggle-summary:hover,
a[data-toggle-summary]:hover,
.more-filter-link:hover,
.more-filter-toggle:hover,
.more-filter-v15 > summary:hover,
.more-filter-inline > summary:hover,
.more-filter-inline-v16 > summary:hover,
.inventory-more-filter-v43 > summary:hover,
.contract-filter-form details > summary:hover,
.contract-filter-form .more-filter-inline > summary:hover,
.contract-more-filter > summary:hover {
  color: #004b86 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Remove default marker spacing inconsistencies but keep marker text-like */
.more-filter-v15 > summary,
.more-filter-inline > summary,
.more-filter-inline-v16 > summary,
.inventory-more-filter-v43 > summary,
.contract-filter-form details > summary,
.contract-more-filter > summary {
  list-style-position: inside !important;
}

/* Keep opened content as clean panel only when needed */
.more-filter-v15[open],
.more-filter-inline[open],
.more-filter-inline-v16[open],
.inventory-more-filter-v43[open],
.contract-filter-form details[open],
.contract-more-filter[open] {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* If old btn classes leak into toggle links, neutralize them only inside toggle areas */
.summary-toggle .btn-primary,
.summary-toggle .btn-filter,
.summary-toggle .btn-submit,
.status-summary-toggle .btn-primary,
.status-summary-toggle .btn-filter,
.status-summary-toggle .btn-submit,
.more-filter-inline .btn-primary,
.more-filter-inline .btn-filter,
.contract-more-filter .btn-primary,
.contract-more-filter .btn-filter {
  background: transparent !important;
  color: #0072bc !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  text-decoration: underline !important;
}

/* ===== v85: sortable table links and task severity ===== */
.sort-link-v85{
  color: inherit !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-weight: inherit;
  line-height: 1.15;
}
.sort-link-v85:hover{
  text-decoration: underline !important;
}
.severity-badge-v85{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  height:26px;
  padding:0 8px;
  border-radius:10px;
  font-weight:800;
  color:#fff;
  background:#64748b;
}
.severity-badge-v85.severity-1{background:#dc2626;}
.severity-badge-v85.severity-2{background:#f97316;}
.severity-badge-v85.severity-3{background:#0ea5e9;}
.severity-badge-v85.severity-4{background:#22c55e;}
.severity-badge-v85.severity-5{background:#94a3b8;}
.tasklist-table-v12 th:first-child,
.tasklist-table-v12 td:first-child{width:72px;text-align:center;}
.activity-seq-v83{max-width:80px;}
@media (max-width: 1199px){
  .severity-badge-v85{min-width:24px;height:24px;font-size:.85em;}
}


/* =========================================================
   V87 - FIX FULL CSS + Tasklist column widths
   Dibuat dari style.css v85 penuh agar tidak menghancurkan tampilan.
   - Severity tetap kolom kecil dan header ditampilkan sebagai "S"
   - Nama Pekerjaan diperbesar sekitar 50%
   - PIC diperkecil sekitar 60%
   ========================================================= */

@media (min-width: 1200px){
  .tasklist-table-v12{
    table-layout: fixed !important;
    width: 100% !important;
  }

  /* Struktur setelah severity: S | Nama Pekerjaan | Site | Tipe | Nilai | Status | Progress | PIC */
  .tasklist-table-v12 th:nth-child(1),
  .tasklist-table-v12 td:nth-child(1){
    width: 4% !important;
    min-width: 48px !important;
    max-width: 58px !important;
    text-align: center !important;
    white-space: nowrap !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  .tasklist-table-v12 th:nth-child(2),
  .tasklist-table-v12 td:nth-child(2){
    width: 43% !important;
    min-width: 420px !important;
  }

  .tasklist-table-v12 th:nth-child(3),
  .tasklist-table-v12 td:nth-child(3){
    width: 10% !important;
  }

  .tasklist-table-v12 th:nth-child(4),
  .tasklist-table-v12 td:nth-child(4){
    width: 8% !important;
  }

  .tasklist-table-v12 th:nth-child(5),
  .tasklist-table-v12 td:nth-child(5){
    width: 10% !important;
  }

  .tasklist-table-v12 th:nth-child(6),
  .tasklist-table-v12 td:nth-child(6){
    width: 8% !important;
  }

  .tasklist-table-v12 th:nth-child(7),
  .tasklist-table-v12 td:nth-child(7){
    width: 8% !important;
  }

  .tasklist-table-v12 th:nth-child(8),
  .tasklist-table-v12 td:nth-child(8){
    width: 9% !important;
    max-width: 130px !important;
    overflow-wrap: anywhere !important;
  }

  /* Header Severity ditampilkan sebagai S tanpa perlu ubah PHP */
  .tasklist-table-v12 th:nth-child(1) .sort-link-v85,
  .tasklist-table-v12 th:nth-child(1) a{
    font-size: 0 !important;
    justify-content: center !important;
    width: 100% !important;
  }

  .tasklist-table-v12 th:nth-child(1) .sort-link-v85::after,
  .tasklist-table-v12 th:nth-child(1) a::after{
    content: "S" !important;
    font-size: 14px !important;
    font-weight: 950 !important;
    line-height: 1.15 !important;
  }

  .severity-badge-v85{
    min-width: 26px !important;
    height: 24px !important;
    padding: 0 6px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 1199px){
  /* Card mode tetap aman di HP/tablet/foldable */
  .task-card-v12 .severity-badge-v85{
    min-width: 24px !important;
    height: 24px !important;
    padding: 0 6px !important;
    border-radius: 8px !important;
  }
}

/* ===== V89 - visible sort icons for sortable table headers ===== */
.sort-link-v89{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  width:100% !important;
  min-height:24px !important;
  color:inherit !important;
  text-decoration:none !important;
  line-height:1.15 !important;
  cursor:pointer !important;
  white-space:normal !important;
}
.sort-link-v89:hover .sort-label-v89{text-decoration:underline !important;}
.sort-label-v89{display:inline-block !important;min-width:0 !important;overflow-wrap:anywhere !important;}
.sort-icon-v89{
  flex:0 0 auto !important;
  display:inline-grid !important;
  place-items:center !important;
  width:18px !important;
  height:18px !important;
  border-radius:6px !important;
  border:1px solid #dbe6ef !important;
  background:#ffffff !important;
  color:#64748b !important;
  font-size:11px !important;
  font-weight:950 !important;
  line-height:1 !important;
}
.sort-link-v89.active .sort-icon-v89{
  border-color:var(--primary) !important;
  background:#eff6ff !important;
  color:var(--primary) !important;
}
.tasklist-table-v12 th:nth-child(1) .sort-link-v85,
.tasklist-table-v12 th:nth-child(1) a.sort-link-v89{
  font-size:inherit !important;
  justify-content:center !important;
}
.tasklist-table-v12 th:nth-child(1) .sort-link-v85::after,
.tasklist-table-v12 th:nth-child(1) a.sort-link-v89::after{
  content:none !important;
}
.tasklist-table-v12 th:nth-child(1) .sort-label-v89{
  font-size:14px !important;
  font-weight:950 !important;
}
.tasklist-table-v12 th:nth-child(1) .sort-icon-v89{
  width:16px !important;
  height:16px !important;
  font-size:10px !important;
}
@media(max-width:760px){
  .sort-icon-v89{width:16px !important;height:16px !important;font-size:10px !important;}
}

/* ===== V90 - Force show status summary / more filter as plain text links ===== */
.summary-toggle,
.status-summary-toggle,
.status-filter-link-row-v16,
.filter-link-row-v16,
.more-filter-v15,
.more-filter-v15.more-filter-inline-v16,
.more-filter-inline,
.more-filter-inline-v16,
.contract-more-filter,
.inventory-more-filter-v43{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  border-radius:0 !important;
  padding:0 !important;
}

.summary-toggle button,
.summary-toggle button.btn,
.summary-toggle .btn,
.summary-toggle a,
.status-summary-toggle button,
.status-summary-toggle button.btn,
.status-summary-toggle .btn,
.status-summary-toggle a,
.status-filter-link-row-v16 button,
.status-filter-link-row-v16 button.btn,
.status-filter-link-row-v16 .btn,
.filter-link-row-v16 button,
.filter-link-row-v16 button.btn,
.filter-link-row-v16 .btn,
.toggle-summary,
.toggle-summary.btn,
.more-filter-v15 > summary,
.more-filter-v15 summary,
.more-filter-inline > summary,
.more-filter-inline summary,
.more-filter-inline-v16 > summary,
.contract-more-filter > summary,
.inventory-more-filter-v43 > summary{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:0 !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  color:#0072bc !important;
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  text-align:left !important;
  text-decoration:underline !important;
  cursor:pointer !important;
  transform:none !important;
  filter:none !important;
}

.summary-toggle button::before,
.summary-toggle button::after,
.status-summary-toggle button::before,
.status-summary-toggle button::after,
.status-filter-link-row-v16 button::before,
.status-filter-link-row-v16 button::after,
.filter-link-row-v16 button::before,
.filter-link-row-v16 button::after,
.toggle-summary::before,
.toggle-summary::after{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.summary-toggle button:hover,
.summary-toggle .btn:hover,
.summary-toggle a:hover,
.status-summary-toggle button:hover,
.status-summary-toggle .btn:hover,
.status-summary-toggle a:hover,
.status-filter-link-row-v16 button:hover,
.status-filter-link-row-v16 .btn:hover,
.filter-link-row-v16 button:hover,
.filter-link-row-v16 .btn:hover,
.toggle-summary:hover,
.more-filter-v15 > summary:hover,
.more-filter-inline > summary:hover,
.more-filter-inline-v16 > summary:hover,
.contract-more-filter > summary:hover,
.inventory-more-filter-v43 > summary:hover{
  background:transparent !important;
  background-image:none !important;
  color:#004b86 !important;
  box-shadow:none !important;
  transform:none !important;
  filter:none !important;
}

/* ===== V91 - Remove visible sort icons, keep sort function active ===== */
.sort-icon-v89{display:none !important; width:0 !important; height:0 !important; margin:0 !important; padding:0 !important; border:0 !important; overflow:hidden !important;}
.sort-link-v89,.sort-link-v85{gap:0 !important; width:auto !important; min-height:0 !important; display:inline !important;}
.sort-link-v89.active,.sort-link-v85.active{color:inherit !important; text-decoration:underline !important; text-underline-offset:2px;}
.tasklist-table-v12 th:nth-child(1) a.sort-link-v89::after{content:none !important;}

/* ===== V92 - Notification prompter popup ===== */
.notif-prompter-v92{
  position:fixed!important;
  top:86px!important;
  left:50%!important;
  transform:translate(-50%,-18px)!important;
  z-index:9999!important;
  width:min(620px,calc(100vw - 28px))!important;
  display:flex!important;
  align-items:stretch!important;
  gap:0!important;
  opacity:0!important;
  pointer-events:auto!important;
  transition:opacity .2s ease,transform .2s ease!important;
  filter:drop-shadow(0 18px 38px rgba(15,23,42,.22))!important;
}
.notif-prompter-v92.show{opacity:1!important;transform:translate(-50%,0)!important;}
.notif-prompter-body-v92{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px 16px!important;
  color:#fff!important;
  text-decoration:none!important;
  background:linear-gradient(135deg,#0f6fb3,#11a8d8)!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-right:0!important;
  border-radius:18px 0 0 18px!important;
}
.notif-prompter-icon-v92{
  flex:0 0 auto!important;
  width:36px!important;
  height:36px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.18)!important;
  font-size:18px!important;
}
.notif-prompter-copy-v92{display:block!important;min-width:0!important;line-height:1.25!important;}
.notif-prompter-text-v92{display:block!important;font-size:18px!important;font-weight:950!important;color:#fff!important;overflow-wrap:anywhere!important;}
.notif-prompter-copy-v92 small{display:block!important;margin-top:2px!important;color:rgba(255,255,255,.86)!important;font-size:12px!important;font-weight:700!important;overflow-wrap:anywhere!important;}
.notif-prompter-close-v92{
  flex:0 0 46px!important;
  width:46px!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-left:1px solid rgba(255,255,255,.18)!important;
  border-radius:0 18px 18px 0!important;
  background:#075985!important;
  color:#fff!important;
  font-size:28px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.notif-prompter-close-v92:hover{background:#0f6fb3!important;}
@media(max-width:760px){
  .notif-prompter-v92{top:74px!important;width:calc(100vw - 18px)!important;}
  .notif-prompter-body-v92{padding:11px 12px!important;gap:10px!important;}
  .notif-prompter-text-v92{font-size:15px!important;}
  .notif-prompter-copy-v92 small{font-size:11px!important;}
  .notif-prompter-icon-v92{width:32px!important;height:32px!important;font-size:16px!important;}
  .notif-prompter-close-v92{flex-basis:40px!important;width:40px!important;font-size:24px!important;}
}

/* =========================================================
   V111 - Header/menu stability fix: desktop 2-line wrap + mobile hamburger
   ========================================================= */
html, body { max-width:100% !important; }
.app { overflow:visible !important; }
.topbar-v11,
.topbar {
  display:grid !important;
  grid-template-columns:46px 82px minmax(0,1fr) !important;
  align-items:center !important;
  gap:8px 10px !important;
  min-height:52px !important;
  height:auto !important;
  padding:7px 12px !important;
  overflow:visible !important;
  position:sticky !important;
  top:0 !important;
  z-index:10000 !important;
}
.brand-logo-v11,
.brand-text-area3-v59 {
  width:auto !important;
  min-width:70px !important;
  max-width:82px !important;
  overflow:visible !important;
  display:flex !important;
  align-items:center !important;
}
.brand-logo-v11 span,
.brand-text-area3-v59 span,
.brand-logo-v11.brand-text-area3-v59 span {
  display:inline-block !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.topbar-v11 .top-actions,
.topbar .top-actions,
.top-actions {
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:4px 10px !important;
  row-gap:3px !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:visible !important;
}
.topbar-v11 .top-actions .navlink,
.topbar-v11 .top-actions .logout,
.topbar .top-actions .navlink,
.topbar .top-actions .logout,
.top-actions .navlink,
.top-actions .logout {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:24px !important;
  height:auto !important;
  padding:3px 5px !important;
  margin:0 !important;
  font-size:11px !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#fff !important;
  text-decoration:none !important;
  border-radius:6px !important;
}
.topbar-v11 .top-actions .navlink:hover,
.topbar-v11 .top-actions .logout:hover,
.topbar .top-actions .navlink:hover,
.topbar .top-actions .logout:hover {
  background:rgba(255,255,255,.14) !important;
  color:#fff !important;
}
.hamburger-v15 {
  position:relative !important;
  z-index:10020 !important;
  display:block !important;
  overflow:visible !important;
}
.hamburger-v15 summary.menu,
.hamburger-v15 > summary.menu,
.topbar-v11 .menu,
.menu {
  width:38px !important;
  min-width:38px !important;
  height:38px !important;
  min-height:38px !important;
  border-radius:10px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  font-size:22px !important;
  line-height:1 !important;
}
.hamburger-panel-v15 {
  position:absolute !important;
  top:calc(100% + 8px) !important;
  left:0 !important;
  min-width:250px !important;
  max-width:min(360px, calc(100vw - 18px)) !important;
  max-height:calc(100vh - 78px) !important;
  overflow:auto !important;
  z-index:10050 !important;
  background:#fff !important;
  border:1px solid #cfe5f3 !important;
  border-radius:14px !important;
  box-shadow:0 18px 46px rgba(7,27,51,.22) !important;
  padding:8px !important;
}
.hamburger-panel-v15 a {
  display:block !important;
  padding:10px 12px !important;
  border-radius:10px !important;
  color:#0d5794 !important;
  background:#fff !important;
  text-decoration:none !important;
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
}
.hamburger-panel-v15 a:hover { background:#eaf7ff !important; }

@media (min-width:1200px){
  .topbar-v11 .top-actions .navlink,
  .topbar-v11 .top-actions .logout,
  .top-actions .navlink,
  .top-actions .logout {
    font-size:12px !important;
    padding:4px 6px !important;
  }
}

@media (max-width:900px){
  .topbar-v11,
  .topbar {
    grid-template-columns:44px 1fr auto !important;
    gap:8px !important;
    min-height:50px !important;
    padding:6px 8px !important;
  }
  .brand-logo-v11,
  .brand-text-area3-v59 {
    min-width:0 !important;
    max-width:none !important;
    width:auto !important;
  }
  .brand-logo-v11 span,
  .brand-text-area3-v59 span,
  .brand-logo-v11.brand-text-area3-v59 span {
    display:inline-block !important;
    font-size:18px !important;
  }
  .topbar-v11 .top-actions,
  .top-actions {
    justify-content:flex-end !important;
    gap:6px !important;
  }
  .topbar-v11 .top-actions .navlink,
  .top-actions .navlink {
    display:none !important;
  }
  .topbar-v11 .top-actions .logout,
  .top-actions .logout {
    display:inline-flex !important;
    min-height:32px !important;
    padding:6px 8px !important;
    font-size:12px !important;
    border:1px solid rgba(255,255,255,.25) !important;
    border-radius:8px !important;
  }
  .hamburger-panel-v15 {
    position:fixed !important;
    top:54px !important;
    left:8px !important;
    right:8px !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    max-height:calc(100vh - 66px) !important;
    overflow:auto !important;
  }
  .hamburger-panel-v15 a {
    min-height:40px !important;
    display:flex !important;
    align-items:center !important;
    font-size:15px !important;
  }
}

@media (max-width:420px){
  .brand-logo-v11 span,
  .brand-text-area3-v59 span,
  .brand-logo-v11.brand-text-area3-v59 span { font-size:16px !important; }
  .topbar-v11 .top-actions .logout,
  .top-actions .logout { font-size:11px !important; padding:5px 7px !important; }
}

/* =========================================================
   V112 - FORCE Area 3 logo text white (final override)
   Diletakkan paling bawah agar menang dari CSS lama yang saling timpa.
   ========================================================= */
.topbar .brand-logo-v11,
.topbar-v11 .brand-logo-v11,
.topbar .brand-text-area3-v59,
.topbar-v11 .brand-text-area3-v59,
.topbar .brand-logo-v11 span,
.topbar-v11 .brand-logo-v11 span,
.topbar .brand-text-area3-v59 span,
.topbar-v11 .brand-text-area3-v59 span,
.topbar h1,
.topbar-v11 h1,
.site-title,
.logo-text,
.brand-text,
a.brand-logo-v11,
a.brand-text-area3-v59,
a.brand-logo-v11:link,
a.brand-logo-v11:visited,
a.brand-logo-v11:hover,
a.brand-logo-v11:active,
a.brand-text-area3-v59:link,
a.brand-text-area3-v59:visited,
a.brand-text-area3-v59:hover,
a.brand-text-area3-v59:active {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.topbar .brand-logo-v11 *,
.topbar-v11 .brand-logo-v11 *,
.topbar .brand-text-area3-v59 *,
.topbar-v11 .brand-text-area3-v59 * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* =========================================================
   V113 - Status Timeline Heatmap on Dashboard
   ========================================================= */
.status-heatmap-v113{margin:18px!important;padding:16px!important;border:1px solid #dbeafe!important;border-radius:18px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 10px 28px rgba(15,23,42,.07)!important;}
.hm-head-v113{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px;}
.hm-head-v113 h2{margin:0 0 4px!important;color:#0f4c81!important;font-size:22px!important;font-weight:900!important;}
.hm-head-v113 p{margin:0;color:#64748b;font-size:14px;font-weight:700;line-height:1.4;}
.hm-filter-v113{display:grid;grid-template-columns:1fr 1fr 150px 150px auto;gap:8px;align-items:end;margin:12px 0 14px;}
.hm-filter-v113 label{font-size:12px;font-weight:900;color:#475569;display:grid;gap:4px;}
.hm-filter-v113 input,.hm-filter-v113 select{min-height:38px!important;font-size:14px!important;border-radius:10px!important;}
.hm-check-v113{display:flex!important;align-items:center!important;gap:7px!important;font-size:12px!important;font-weight:900!important;color:#475569!important;align-self:center!important;}
.hm-check-v113 input{width:auto!important;min-height:auto!important;}
.hm-note-v113{padding:12px 14px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc;color:#475569;font-weight:800;line-height:1.45;}
.hm-summary-v113{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:10px 0 14px;}
.hm-summary-card-v113{border:1px solid #e2e8f0;border-radius:14px;background:#fff;padding:9px 10px;}
.hm-summary-card-v113 small{display:block;color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase;}
.hm-summary-card-v113 b{display:block;color:#0f172a;font-size:22px;font-weight:900;line-height:1.1;margin-top:3px;}
.hm-legend-v113{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:8px 0 12px;color:#475569;font-size:12px;font-weight:800;}
.hm-legend-v113 span{display:inline-flex;align-items:center;gap:5px;}
.hm-box-v113{display:inline-block;width:15px;height:15px;border-radius:2px;border:1px solid rgba(15,23,42,.16);vertical-align:middle;}
.hm-box-v113.ready,.hm-cell-v113.ready{background:#22c55e;}
.hm-box-v113.ready-catatan,.hm-cell-v113.ready-catatan{background:#facc15;}
.hm-box-v113.breakdown,.hm-cell-v113.breakdown{background:#f97316;}
.hm-box-v113.accident,.hm-cell-v113.accident{background:#ef4444;}
.hm-box-v113.belum-update,.hm-cell-v113.belum-update{background:#cbd5e1;}
.hm-box-v113.carry{background:repeating-linear-gradient(135deg,#fff 0,#fff 2px,#94a3b8 2px,#94a3b8 4px);}
.hm-scroll-v113{width:100%;overflow:auto;border:1px solid #e2e8f0;border-radius:14px;background:#fff;}
.hm-table-v113{border-collapse:separate;border-spacing:0;min-width:900px;width:100%;font-size:12px;}
.hm-table-v113 th,.hm-table-v113 td{border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:4px;text-align:center;vertical-align:middle;}
.hm-table-v113 th{position:sticky;top:0;background:#f8fafc;z-index:2;color:#334155;font-weight:900;white-space:nowrap;}
.hm-table-v113 th:first-child,.hm-table-v113 td:first-child{position:sticky;left:0;background:#fff;z-index:3;text-align:left;min-width:230px;max-width:300px;}
.hm-table-v113 thead th:first-child{background:#f8fafc;z-index:4;}
.hm-equipment-v113 b{display:block;color:#0f172a;font-size:12.5px;line-height:1.2;overflow-wrap:anywhere;}
.hm-equipment-v113 small{display:block;color:#64748b;font-size:11px;line-height:1.2;margin-top:2px;overflow-wrap:anywhere;}
.hm-cell-v113{display:block;width:20px;height:20px;border-radius:2px;margin:auto;border:1px solid rgba(15,23,42,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);}
.hm-cell-v113.carry{background-image:linear-gradient(135deg,rgba(255,255,255,.38) 0 25%,transparent 25% 50%,rgba(255,255,255,.38) 50% 75%,transparent 75% 100%);background-size:8px 8px;}
.hm-cell-v113:hover{outline:2px solid #0f4c81;outline-offset:1px;}
.hm-analysis-v113{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;}
.hm-analysis-card-v113{border:1px solid #e2e8f0;border-left:6px solid #0f6fb3;border-radius:14px;background:#fff;padding:11px 12px;}
.hm-analysis-card-v113.warn{border-left-color:#f97316;}
.hm-analysis-card-v113.danger{border-left-color:#ef4444;}
.hm-analysis-card-v113.good{border-left-color:#22c55e;}
.hm-analysis-card-v113 h3{margin:0 0 6px!important;color:#0f172a!important;font-size:15px!important;}
.hm-analysis-card-v113 p{margin:0;color:#334155;font-size:13px;line-height:1.45;font-weight:700;}
.hm-ai-list-v113{margin:6px 0 0 0;padding:0;list-style:none;display:grid;gap:5px;}
.hm-ai-list-v113 li{font-size:12.5px;line-height:1.35;color:#334155;font-weight:700;border-top:1px dashed #e2e8f0;padding-top:5px;}
@media(max-width:900px){.hm-filter-v113{grid-template-columns:1fr 1fr}.hm-filter-v113 .btn{grid-column:1/-1}.hm-summary-v113{grid-template-columns:repeat(2,1fr)}.hm-analysis-v113{grid-template-columns:1fr}.hm-table-v113 th:first-child,.hm-table-v113 td:first-child{min-width:180px}.hm-cell-v113{width:18px;height:18px}.status-heatmap-v113{margin:10px 8px!important;padding:12px!important}}

/* =========================================================
   V114 - Dashboard filter separation and Status Alat heatmap placement
   ========================================================= */
.dashboard-filter-note-v114{
  color:#64748b!important;
  font-size:12px!important;
  font-weight:800!important;
  align-self:center!important;
  justify-self:end!important;
  text-align:right!important;
}
.inventory-card-filter-v114{
  border:1px solid #dbeafe!important;
  background:#f8fbff!important;
  border-radius:14px!important;
  padding:8px!important;
  margin:8px 0 10px!important;
  display:grid!important;
  gap:6px!important;
}
.inventory-card-filter-v114 label{
  color:#0f4c81!important;
  font-size:12px!important;
  font-weight:900!important;
  margin:0!important;
}
.inventory-card-filter-v114>div{
  display:grid!important;
  grid-template-columns:1fr auto auto!important;
  gap:6px!important;
  align-items:center!important;
}
.inventory-card-filter-v114 select{min-height:36px!important;font-size:13px!important;border-radius:10px!important;}
.inventory-card-filter-v114 .btn{min-height:36px!important;font-size:12px!important;padding:6px 9px!important;white-space:nowrap!important;}
.status-heatmap-inside-card-v114{
  margin:14px 0 0!important;
  padding:12px!important;
  border-color:#bae6fd!important;
  background:#f8fbff!important;
  box-shadow:none!important;
}
.status-heatmap-inside-card-v114 .hm-head-v113 h2{font-size:18px!important;color:#0f4c81!important;}
.status-heatmap-inside-card-v114 .hm-head-v113 p{font-size:12px!important;}
.status-heatmap-inside-card-v114 .hm-filter-v113{
  grid-template-columns:minmax(150px,1fr) minmax(170px,1.2fr) 132px 132px auto!important;
  gap:7px!important;
}
.status-heatmap-inside-card-v114 .hm-filter-v113 .btn{grid-column:1/-1!important;min-height:34px!important;font-size:12px!important;}
.status-heatmap-inside-card-v114 .hm-summary-card-v113{padding:7px 8px!important;border-radius:10px!important;}
.status-heatmap-inside-card-v114 .hm-summary-card-v113 b{font-size:18px!important;}
.status-heatmap-inside-card-v114 .hm-table-v113{min-width:760px!important;}
.status-heatmap-inside-card-v114 .hm-table-v113 th:first-child,
.status-heatmap-inside-card-v114 .hm-table-v113 td:first-child{min-width:190px!important;max-width:240px!important;}
.status-heatmap-inside-card-v114 .hm-cell-v113{width:17px!important;height:17px!important;border-radius:2px!important;}
.status-heatmap-inside-card-v114 .hm-analysis-v113{grid-template-columns:1fr!important;}
.status-heatmap-inside-card-v114 .hm-analysis-card-v113{padding:9px 10px!important;border-radius:12px!important;}
.status-heatmap-inside-card-v114 .hm-analysis-card-v113 h3{font-size:14px!important;}
.status-heatmap-inside-card-v114 .hm-analysis-card-v113 p,
.status-heatmap-inside-card-v114 .hm-ai-list-v113 li{font-size:12px!important;}
@media(max-width:1100px){
  .status-heatmap-inside-card-v114 .hm-filter-v113{grid-template-columns:1fr 1fr!important;}
  .status-heatmap-inside-card-v114 .hm-check-v113{grid-column:1/-1!important;}
}
@media(max-width:760px){
  .dashboard-filter-note-v114{text-align:left!important;justify-self:start!important;}
  .inventory-card-filter-v114>div{grid-template-columns:1fr!important;}
  .inventory-card-filter-v114 .btn{width:100%!important;}
  .status-heatmap-inside-card-v114{margin-top:10px!important;padding:10px!important;}
  .status-heatmap-inside-card-v114 .hm-filter-v113{grid-template-columns:1fr!important;}
  .status-heatmap-inside-card-v114 .hm-summary-v113{grid-template-columns:1fr 1fr!important;}
}


/* =========================================================
   V115 - Status Alat heatmap layout fix and robust containment
   ========================================================= */
.dashboard-chart-card-v52:has(.status-heatmap-inside-card-v115){
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  overflow:hidden!important;
}
.dashboard-chart-card-v52:has(.status-heatmap-inside-card-v115) .chart-card-head-v52{order:0!important;}
.dashboard-chart-card-v52:has(.status-heatmap-inside-card-v115) .status-heatmap-inside-card-v115{order:1!important;}
.dashboard-chart-card-v52:has(.status-heatmap-inside-card-v115) .pie-v52{order:2!important;}
.dashboard-chart-card-v52:has(.status-heatmap-inside-card-v115) .chart-legend-v52{order:3!important;}
.status-heatmap-inside-card-v115{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  margin:10px 0 12px!important;
  padding:10px!important;
}
.status-heatmap-inside-card-v115 .hm-head-v113{margin-bottom:8px!important;}
.status-heatmap-inside-card-v115 .hm-head-v113 h2{font-size:16px!important;line-height:1.15!important;}
.status-heatmap-inside-card-v115 .hm-head-v113 p{font-size:11.5px!important;line-height:1.35!important;}
.status-heatmap-inside-card-v115 .hm-filter-v113{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  width:100%!important;
  max-width:100%!important;
  margin:8px 0 10px!important;
}
.status-heatmap-inside-card-v115 .hm-filter-v113 label,
.status-heatmap-inside-card-v115 .hm-check-v113,
.status-heatmap-inside-card-v115 .hm-filter-v113 .btn{
  grid-column:1/-1!important;
  width:100%!important;
  min-width:0!important;
}
.status-heatmap-inside-card-v115 .hm-filter-v113 input,
.status-heatmap-inside-card-v115 .hm-filter-v113 select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  font-size:12px!important;
}
.status-heatmap-inside-card-v115 .hm-check-v113{justify-content:flex-start!important;}
.status-heatmap-inside-card-v115 .hm-check-v113 input{width:auto!important;}
.status-heatmap-inside-card-v115 .hm-note-v113{font-size:12px!important;padding:10px!important;overflow-wrap:anywhere!important;}
.status-heatmap-inside-card-v115 .hm-scroll-v113{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
.status-heatmap-inside-card-v115 .hm-table-v113{
  min-width:640px!important;
  width:max-content!important;
  max-width:none!important;
}
.status-heatmap-inside-card-v115 .hm-equipment-v113 b{font-size:11.5px!important;}
.status-heatmap-inside-card-v115 .hm-equipment-v113 small{font-size:10.5px!important;}
.status-heatmap-inside-card-v115 .hm-summary-v113{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.status-heatmap-inside-card-v115 .hm-legend-v113{font-size:11px!important;gap:6px!important;}
.status-heatmap-inside-card-v115 .hm-analysis-v113{grid-template-columns:1fr!important;}
@media(min-width:1200px){
  .dashboard-chart-card-v52:has(.status-heatmap-inside-card-v115){grid-column:auto!important;}
}

/* =========================================================
   V116 - Heatmap full-width below dashboard, status-alat scope only
   ========================================================= */
.status-heatmap-full-v116{
  margin:18px 12px 24px!important;
  width:auto!important;
  max-width:none!important;
  overflow:visible!important;
  clear:both!important;
}
.status-heatmap-full-v116 .hm-head-v113{
  align-items:flex-start!important;
  margin-bottom:12px!important;
}
.status-heatmap-full-v116 .hm-head-v113 h2{
  font-size:22px!important;
  color:#0f4c81!important;
}
.status-heatmap-full-v116 .hm-head-v113 p{
  max-width:1100px!important;
  font-size:13px!important;
}
.status-heatmap-full-v116 .hm-filter-v113,
.status-heatmap-full-v116 .hm-filter-wide-v116{
  display:grid!important;
  grid-template-columns:minmax(230px,1.05fr) minmax(260px,1.35fr) 150px 150px minmax(190px,auto) auto!important;
  gap:9px!important;
  align-items:end!important;
  width:100%!important;
  max-width:100%!important;
  margin:12px 0 14px!important;
}
.status-heatmap-full-v116 .hm-filter-v113 label,
.status-heatmap-full-v116 .hm-check-v113,
.status-heatmap-full-v116 .hm-filter-v113 .btn{
  min-width:0!important;
}
.status-heatmap-full-v116 .hm-filter-v113 input,
.status-heatmap-full-v116 .hm-filter-v113 select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  font-size:14px!important;
}
.status-heatmap-full-v116 .hm-check-v113{
  min-height:38px!important;
  justify-content:flex-start!important;
  white-space:normal!important;
}
.status-heatmap-full-v116 .hm-check-v113 input{width:auto!important;}
.status-heatmap-full-v116 .hm-summary-v113{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
.status-heatmap-full-v116 .hm-scroll-v113{
  width:100%!important;
  max-width:100%!important;
  overflow:auto!important;
  border-radius:14px!important;
}
.status-heatmap-full-v116 .hm-table-v113{
  width:max-content!important;
  min-width:100%!important;
  max-width:none!important;
}
.status-heatmap-full-v116 .hm-table-v113 th:first-child,
.status-heatmap-full-v116 .hm-table-v113 td:first-child{
  min-width:260px!important;
  max-width:360px!important;
}
.status-heatmap-full-v116 .hm-cell-v113{
  width:20px!important;
  height:20px!important;
  border-radius:2px!important;
}
.status-heatmap-full-v116 .hm-analysis-v113{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
@media(max-width:1200px){
  .status-heatmap-full-v116 .hm-filter-v113,
  .status-heatmap-full-v116 .hm-filter-wide-v116{grid-template-columns:1fr 1fr 140px 140px!important;}
  .status-heatmap-full-v116 .hm-check-v113,
  .status-heatmap-full-v116 .hm-filter-v113 .btn{grid-column:auto!important;width:100%!important;}
  .status-heatmap-full-v116 .hm-analysis-v113{grid-template-columns:1fr 1fr!important;}
}
@media(max-width:760px){
  .status-heatmap-full-v116{margin:10px 7px 18px!important;padding:12px!important;}
  .status-heatmap-full-v116 .hm-filter-v113,
  .status-heatmap-full-v116 .hm-filter-wide-v116{grid-template-columns:1fr!important;}
  .status-heatmap-full-v116 .hm-summary-v113{grid-template-columns:1fr 1fr!important;}
  .status-heatmap-full-v116 .hm-analysis-v113{grid-template-columns:1fr!important;}
  .status-heatmap-full-v116 .hm-table-v113 th:first-child,
  .status-heatmap-full-v116 .hm-table-v113 td:first-child{min-width:190px!important;max-width:240px!important;}
}

/* =========================================================
   V124 - Gemini-like home search and camera documentation upload
   ========================================================= */
.home-gemini-v124{
  min-height:calc(100vh - 58px)!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  overflow:hidden!important;
  background:#101010!important;
  color:#f8fafc!important;
  margin:0!important;
  padding:40px 18px!important;
}
.home-gemini-glow-v124{
  position:absolute!important;
  inset:auto auto 18% 50%!important;
  width:min(760px,88vw)!important;
  height:340px!important;
  transform:translateX(-50%)!important;
  background:radial-gradient(ellipse at center, rgba(34,67,167,.42) 0%, rgba(25,49,124,.28) 35%, rgba(16,16,16,0) 72%)!important;
  filter:blur(8px)!important;
  pointer-events:none!important;
}
.home-gemini-inner-v124{
  position:relative!important;
  z-index:1!important;
  width:min(760px,94vw)!important;
  display:grid!important;
  justify-items:center!important;
  gap:26px!important;
}
.home-gemini-inner-v124 h1{
  margin:0!important;
  color:#e5e7eb!important;
  font-size:clamp(30px,4vw,44px)!important;
  font-weight:400!important;
  letter-spacing:-.03em!important;
  line-height:1.15!important;
  text-align:center!important;
}
.home-gemini-search-v124{
  width:100%!important;
  min-height:64px!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto 42px!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  background:#242424!important;
  box-shadow:0 24px 70px rgba(16,24,64,.38)!important;
  border:1px solid rgba(255,255,255,.06)!important;
}
.home-gemini-search-v124 input,
.home-gemini-search-v124 select{
  min-height:44px!important;
  border:0!important;
  background:transparent!important;
  color:#e5e7eb!important;
  box-shadow:none!important;
  outline:0!important;
  font-size:17px!important;
  padding:0 8px!important;
}
.home-gemini-search-v124 input::placeholder{color:#cbd5e1!important;opacity:.88!important;}
.home-gemini-search-v124 select{
  width:auto!important;
  color:#e5e7eb!important;
  font-size:14px!important;
  font-weight:800!important;
  border-radius:999px!important;
  padding:0 8px!important;
  max-width:145px!important;
}
.home-gemini-search-v124 select option{background:#242424!important;color:#fff!important;}
.home-gemini-plus-v124,
.home-gemini-submit-v124{
  width:38px!important;
  height:38px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#e5e7eb!important;
  font-size:28px!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
}
.home-gemini-submit-v124{font-size:24px!important;}
.home-gemini-plus-v124:hover,
.home-gemini-submit-v124:hover{background:rgba(255,255,255,.09)!important;}
.home-gemini-shortcuts-v124{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:10px!important;
}
.home-gemini-shortcuts-v124 a{
  color:#cbd5e1!important;
  text-decoration:none!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.045)!important;
  border-radius:999px!important;
  padding:8px 12px!important;
  font-size:13px!important;
  font-weight:800!important;
}
.home-gemini-shortcuts-v124 a:hover{background:rgba(255,255,255,.10)!important;color:#fff!important;}
.doc-camera-row-v124{
  display:grid!important;
  grid-template-columns:auto minmax(120px,1fr)!important;
  gap:8px!important;
  align-items:center!important;
}
.doc-camera-input-v124{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.doc-camera-btn-v124{
  white-space:nowrap!important;
  min-height:38px!important;
}
.doc-camera-name-v124{
  color:var(--muted)!important;
  font-size:13px!important;
  font-weight:800!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
@media(max-width:760px){
  .home-gemini-v124{min-height:calc(100vh - 44px)!important;padding:28px 12px!important;}
  .home-gemini-search-v124{grid-template-columns:36px minmax(0,1fr) 38px!important;border-radius:26px!important;min-height:58px!important;}
  .home-gemini-search-v124 select{grid-column:2/3;width:100%!important;max-width:none!important;min-height:28px!important;font-size:12px!important;padding:0 4px!important;}
  .home-gemini-submit-v124{grid-column:3/4;grid-row:1/3;}
  .home-gemini-plus-v124{grid-row:1/3;}
  .doc-camera-row-v124{grid-template-columns:1fr!important;}
  .doc-camera-btn-v124{width:100%!important;}
}

/* ===== V133 - Status Alat list spacing restore ===== */
.alat-card-v7 .alat-card-main h3,
.alat-card-v7 .alat-card-main p,
.alat-card-v7 .alat-card-main a,
.alat-card-v7 .alat-card-link h3,
.alat-card-v7 .alat-card-link p{
  color:#111827!important;
  text-decoration:none!important;
}
.alat-card-v7 .alat-card-link{color:#111827!important;}
.alat-notes-v7{
  display:grid!important;
  gap:7px!important;
  line-height:1.35!important;
}
.alat-notes-v7 div{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  column-gap:16px!important;
  align-items:start!important;
}
.alat-notes-v7 b{
  color:#475569!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.alat-notes-v7 b::after{
  content:' :';
}
.alat-notes-v7 span{
  color:#0f172a!important;
  overflow-wrap:anywhere!important;
  min-width:0!important;
}
@media(max-width:760px){
  .alat-notes-v7 div{grid-template-columns:110px minmax(0,1fr)!important;column-gap:10px!important;}
}

/* ===== V134 - status timeline pagination and consecutive-status filter ===== */
.alat-filter{
  grid-template-columns:minmax(220px,1.45fr) minmax(130px,.8fr) minmax(130px,.8fr) minmax(150px,.85fr) minmax(105px,.55fr) auto auto!important;
}
.alat-card-v7 .alat-card-main h3,
.alat-card-v7 .alat-card-main p{
  color:#0f172a!important;
}
.alat-notes-v7{
  gap:6px!important;
}
.alat-notes-v7 div{
  grid-template-columns:118px minmax(0,1fr)!important;
  column-gap:14px!important;
  align-items:start!important;
}
.alat-notes-v7 b{
  color:#475569!important;
  font-weight:900!important;
  white-space:nowrap!important;
  position:relative!important;
  padding-right:10px!important;
}
.alat-notes-v7 b::after{
  content:':'!important;
  position:absolute!important;
  right:0!important;
}
.alat-notes-v7 span{
  color:#0f172a!important;
  line-height:1.35!important;
  overflow-wrap:anywhere!important;
}
.timeline-page-info-v134{
  margin:0 0 10px!important;
  color:#64748b!important;
  font-weight:800!important;
  font-size:13px!important;
}
.timeline-pagination-v134{
  margin:12px 0 0!important;
  padding-bottom:0!important;
  justify-content:flex-start!important;
}
@media(max-width:900px){
  .alat-filter{grid-template-columns:1fr 1fr!important;}
  .alat-filter input[name="q"]{grid-column:1/-1!important;}
  .alat-filter .filter-btn-v16{grid-column:1/2!important;}
  .alat-filter .reset-btn-v16{grid-column:2/3!important;}
  .alat-notes-v7 div{grid-template-columns:104px minmax(0,1fr)!important;column-gap:10px!important;}
}
@media(max-width:560px){
  .alat-filter{grid-template-columns:1fr!important;}
  .alat-filter .filter-btn-v16,.alat-filter .reset-btn-v16{grid-column:auto!important;width:100%!important;}
  .alat-notes-v7 div{grid-template-columns:1fr!important;gap:2px!important;}
  .alat-notes-v7 b::after{content:''!important;}
}


/* ===== V145 - Linimasa desktop table and mobile cards ===== */
.linimasa-panel-v145{overflow:hidden}
.linimasa-head-v145{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.linimasa-head-v145 h3{margin:0 0 4px}
.linimasa-head-v145 p{margin:0;color:var(--muted);font-weight:700}
.linimasa-head-v145>span{white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:7px 11px;background:#f8fafc;font-weight:900;color:var(--primary)}
.linimasa-table-wrap-v145{overflow:auto;border:1px solid var(--border);border-radius:12px}
.linimasa-table-v145{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;background:#fff}
.linimasa-table-v145 th{text-align:left;padding:11px 10px;background:#edf6fc;color:#334155;font-size:12px;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #dbe6ef}
.linimasa-table-v145 th:nth-child(1){width:54px}.linimasa-table-v145 th:nth-child(2){width:110px}.linimasa-table-v145 th:nth-child(3){width:165px}.linimasa-table-v145 th:nth-child(6){width:190px}
.linimasa-table-v145 td{padding:10px;border-bottom:1px solid #e7eef4;vertical-align:top;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.linimasa-table-v145 tbody tr:last-child td{border-bottom:0}
.linimasa-row-v145{cursor:pointer;transition:background .15s ease}.linimasa-row-v145:hover,.linimasa-row-v145:focus{background:#f2f8fd;outline:none}
.linimasa-no-v145{text-align:center;font-weight:900;color:var(--muted)}
.linimasa-date-v145{white-space:nowrap;color:#475569;font-size:12px}.linimasa-content-v145{min-width:280px;white-space:normal}
.linimasa-type-v145{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;white-space:nowrap}
.linimasa-type-v145.remarks{background:#f3e8ff;color:#6b21a8}.linimasa-type-v145.tasklist{background:#dbeafe;color:#1d4ed8}
.linimasa-mobile-v145{display:none}.linimasa-pagination-v145 span.active{padding:8px 11px;border-radius:8px;background:var(--primary);color:#fff;font-weight:900}
@media(max-width:760px){
  .linimasa-table-wrap-v145{display:none}.linimasa-mobile-v145{display:grid;gap:9px}.linimasa-head-v145{align-items:center}.linimasa-head-v145 p{font-size:13px}
  .linimasa-card-v145{display:block;text-decoration:none;color:var(--text);border:1px solid var(--border);border-left:5px solid var(--primary);border-radius:12px;padding:11px;background:#fff;box-shadow:var(--shadow)}
  .linimasa-card-v145.remarks{border-left-color:#9333ea}
  .linimasa-card-head-v145{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.linimasa-card-head-v145 small{color:var(--muted);font-size:11px;text-align:right}
  .linimasa-card-v145>b{display:block;margin-bottom:6px;font-size:14px;line-height:1.35}.linimasa-card-v145 p{margin:0;padding-top:7px;border-top:1px dashed var(--border);font-size:13px;line-height:1.45;overflow-wrap:anywhere}
  .linimasa-card-foot-v145{display:flex;justify-content:space-between;gap:8px;margin-top:9px;padding-top:8px;border-top:1px dashed var(--border);color:var(--muted);font-size:11px;font-weight:800}.linimasa-card-foot-v145 span:last-child{text-align:right;overflow-wrap:anywhere}
}

/* ===== V146 - Linimasa single-column cards + master site names ===== */
.linimasa-panel-v146{max-width:100%}
.linimasa-head-v146{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.linimasa-head-v146 h3{margin-bottom:4px}
.linimasa-head-v146 p{margin:0;color:var(--muted);font-weight:700}
.linimasa-head-v146>span{flex:0 0 auto;border:1px solid var(--border);border-radius:999px;padding:7px 11px;background:#f8fafc;font-weight:900;color:var(--primary)}
.linimasa-list-v146{display:flex;flex-direction:column;gap:10px}
.linimasa-card-v146{display:block;width:100%;text-decoration:none;color:var(--text);border:1px solid var(--border);border-left:6px solid var(--primary);border-radius:12px;padding:13px 14px;background:#fff;box-shadow:var(--shadow);transition:transform .12s ease,box-shadow .12s ease}
.linimasa-card-v146.remarks{border-left-color:#9333ea}
.linimasa-card-v146:hover{transform:translateY(-1px);box-shadow:0 5px 16px rgba(15,23,42,.10)}
.linimasa-card-head-v146{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.linimasa-card-order-v146{display:flex;align-items:center;gap:8px;min-width:0}
.linimasa-number-v146{display:grid;place-items:center;flex:0 0 auto;min-width:30px;height:30px;padding:0 7px;border-radius:999px;background:#eef6fc;color:var(--primary);font-size:12px;font-weight:950}
.linimasa-card-head-v146 time{color:var(--muted);font-size:12px;font-weight:800;text-align:right}
.linimasa-card-v146 h4{margin:0 0 8px;color:#0f172a;font-size:15px;line-height:1.4}
.linimasa-content-v146{padding:9px 10px;border-radius:9px;background:#f8fafc;border:1px solid #edf2f7;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.linimasa-card-foot-v146{margin-top:9px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.linimasa-card-foot-v146 strong{color:#334155}
.linimasa-pagination-v146{margin-left:0;margin-right:0}
@media(max-width:760px){
  .linimasa-head-v146{align-items:center}
  .linimasa-head-v146 p{font-size:13px}
  .linimasa-card-v146{padding:11px 12px;border-radius:11px}
  .linimasa-card-head-v146{align-items:flex-start}
  .linimasa-card-head-v146 time{font-size:11px;max-width:46%}
  .linimasa-card-v146 h4{font-size:14px}
}

/* =========================================================
   V147 - Tipografi Linimasa disamakan dengan Tasklist
   ========================================================= */
.linimasa-head-v146 h3{
  font-size:22px !important;
  line-height:1.25 !important;
}
.linimasa-head-v146 p,
.linimasa-head-v146 > span{
  font-size:13.5px !important;
  line-height:1.4 !important;
}
.linimasa-card-v146 h4{
  font-size:15px !important;
  line-height:1.4 !important;
}
.linimasa-content-v146{
  font-size:13.5px !important;
  line-height:1.5 !important;
}
.linimasa-card-foot-v146,
.linimasa-card-head-v146 time{
  font-size:13.5px !important;
  line-height:1.4 !important;
}
.linimasa-type-v145,
.linimasa-number-v146{
  font-size:13px !important;
}
@media (max-width:760px){
  .linimasa-card-v146 h4{
    font-size:15px !important;
  }
  .linimasa-content-v146,
  .linimasa-card-foot-v146,
  .linimasa-card-head-v146 time{
    font-size:13.5px !important;
  }
}

/* =========================================================
   V148 - Teks Remarks Linimasa dibuat lebih gelap
   ========================================================= */
.linimasa-card-v146.remarks .linimasa-content-v146{
  color:#172033 !important;
}
.linimasa-card-v146.remarks h4{
  color:#111827 !important;
}


/* V170 Inventory detail */
.inventory-material-link-v170{color:#0f6fb3;text-decoration:none}.inventory-material-link-v170:hover{text-decoration:underline}
.inventory-card-actions-v170{display:flex;gap:8px;flex-wrap:wrap}.inventory-detail-hero-v170{overflow:visible}
.inventory-detail-grid-v170{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.inventory-detail-grid-v170>div{padding:14px;border:1px solid #dbe5ef;border-radius:12px;background:#f8fbfe}.inventory-detail-grid-v170 small{display:block;color:#64748b;margin-bottom:5px}.inventory-detail-grid-v170 b{overflow-wrap:anywhere}
@media(max-width:800px){.inventory-detail-grid-v170{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.inventory-detail-grid-v170{grid-template-columns:1fr}}


/* V171 - Inventory list/detail layout refinement */
.inventory-table{table-layout:fixed;min-width:1420px}
.inventory-table th,.inventory-table td{vertical-align:top;overflow-wrap:anywhere}
.inventory-table .inv-col-material-number-v171{width:112px}
.inventory-table .inv-col-description-v171{width:230px}
.inventory-table .inv-col-uom-v171{width:64px}
.inventory-table .inv-col-group-v171{width:190px}
.inventory-table .inv-col-site-v171{width:120px}
.inventory-table .inv-col-valuation-v171{width:86px;text-align:center}
.inventory-table .inv-col-soh-v171{width:62px;text-align:center}
.inventory-table .inv-col-minmax-v171{width:64px;text-align:center}
.inventory-table .inv-col-criticality-v171{width:82px}
.inventory-table .inv-col-delivery-v171{width:72px}
.inventory-table .inv-col-supplier-v171{width:145px}
.inventory-table .inv-col-remarks-v171{width:110px}
.inventory-table .inv-col-action-v171{width:70px;text-align:center}

.inventory-material-description-v171{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.inventory-stock-wrap-v171{width:100%;overflow-x:auto}
.inventory-stock-table-v171{width:100%;min-width:620px;table-layout:fixed}
.inventory-stock-table-v171 col.stock-site-v171{width:46%}
.inventory-stock-table-v171 col.stock-valuation-v171{width:22%}
.inventory-stock-table-v171 col.stock-number-v171{width:10.666%}
.inventory-stock-table-v171 th,.inventory-stock-table-v171 td{padding:9px 12px;vertical-align:middle}
.inventory-stock-table-v171 th:nth-child(n+2),.inventory-stock-table-v171 td:nth-child(n+2){text-align:center}

.inventory-remark-form-v171{display:block!important}
.inventory-remark-form-v171 .tox-tinymce{width:100%!important}
.inventory-remark-submit-row-v171{display:flex;justify-content:flex-start;margin-top:10px}
.inventory-remark-submit-v171{width:auto!important;min-width:92px!important;align-self:auto!important;padding:7px 18px!important}

@media(max-width:850px){
 .inventory-stock-table-v171{min-width:560px}
 .inventory-remark-submit-row-v171{justify-content:flex-start}
}

/* V172 - Paksa Material Description pada hero detail Inventory selalu putih. */
.inventory-detail-hero-v170 .inventory-material-description-v171,
.inventory-detail-hero-v170 h3.inventory-material-description-v171,
.detail-card.inventory-detail-hero-v170 .inventory-material-description-v171,
.detail-card.inventory-detail-hero-v170 h3.inventory-material-description-v171,
.inventory-detail-hero-v170 .inventory-material-description-v171 *,
.inventory-detail-hero-v170 .inventory-material-description-v171 a,
.inventory-detail-hero-v170 .inventory-material-description-v171 span,
.inventory-detail-hero-v170 .inventory-material-description-v171 strong,
.inventory-detail-hero-v170 .inventory-material-description-v171 b {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}


/* V174 - Rapikan form Dokumentasi Inventory dan paksa deskripsi putih pada semua viewport. */
.inventory-detail-hero-v170 h3.inventory-material-description-v171 {
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  opacity:1 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.32) !important;
}

.inventory-doc-form-v173 {
  display:grid !important;
  grid-template-columns:160px minmax(220px,1fr) minmax(320px,1.4fr) !important;
  gap:10px 12px !important;
  align-items:center !important;
  padding:12px !important;
}
.inventory-doc-form-v173 > select,
.inventory-doc-form-v173 > input[name="title"],
.inventory-doc-form-v173 > input[name="link"] {
  width:100% !important;
  min-width:0 !important;
  height:42px !important;
  margin:0 !important;
}
.inventory-doc-picker-v174 {
  grid-column:1 / -1 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:center !important;
  margin:0 !important;
}
.inventory-doc-help-v174 {
  grid-column:1 / -1 !important;
  display:block !important;
  margin:0 !important;
  color:#64748b !important;
  line-height:1.35 !important;
  max-width:760px !important;
}
.inventory-doc-submit-row-v174 {
  grid-column:1 / -1 !important;
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  margin-top:2px !important;
}
.inventory-doc-submit-v174 {
  width:auto !important;
  min-width:170px !important;
  max-width:220px !important;
  min-height:40px !important;
  padding:8px 16px !important;
  margin:0 !important;
  align-self:auto !important;
}

@media(max-width:850px){
  .inventory-doc-form-v173 {
    grid-template-columns:1fr !important;
  }
  .inventory-doc-picker-v174,
  .inventory-doc-help-v174,
  .inventory-doc-submit-row-v174 {
    grid-column:1 !important;
  }
  .inventory-doc-submit-v174 {
    min-width:0 !important;
    width:auto !important;
  }
  .inventory-detail-hero-v170 h3.inventory-material-description-v171 {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
}

/* V178 - Task form: larger description and clear vertical PIC fields */
.form-panel .task-description-v178{
  min-height:184px!important;
  height:184px;
  line-height:1.5;
  resize:vertical;
}
.form-panel .pic-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  width:100%;
}
.form-panel .pic-field-v178{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  width:100%;
}
.form-panel .pic-field-v178 label{
  display:block;
  margin:0;
  font-weight:900;
}
.form-panel .pic-field-v178 select{
  width:100%;
}
@media(max-width:850px){
  .form-panel .task-description-v178{
    min-height:184px!important;
    height:184px;
  }
  .form-panel .pic-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
}
/* V178 - 3 jalur upload dokumentasi */
.area3-doc-form-v178{display:grid!important;grid-template-columns:minmax(145px,180px) minmax(220px,1fr) minmax(280px,1.4fr)!important;gap:10px!important;align-items:center!important}
.area3-doc-form-v178 .area3-doc-buttons-v178{grid-column:1/-1;display:flex!important;flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px}
.area3-doc-form-v178 .area3-doc-buttons-v178 .btn,.area3-doc-form-v178 .area3-doc-buttons-v178 label{width:auto!important;min-width:0!important;min-height:38px!important;margin:0!important;padding:8px 14px!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer}
.area3-doc-form-v178 .upload-note-v38,.area3-doc-form-v178 .inventory-doc-help-v174{grid-column:1/-1;margin:0!important}
.area3-doc-buttons-v178 .is-uploading-v178{opacity:.6;pointer-events:none}
@media(max-width:760px){.area3-doc-form-v178{grid-template-columns:1fr!important}.area3-doc-form-v178>*{grid-column:1!important}.area3-doc-buttons-v178{display:grid!important;grid-template-columns:1fr!important}.area3-doc-buttons-v178 .btn,.area3-doc-buttons-v178 label{width:100%!important}}

/* =========================================================
   V179 - Unified UI cleanup + Notes
   ========================================================= */
:root{--ui-bg:#f5f8fc;--ui-card:#fff;--ui-line:#dbe6f0;--ui-navy:#0b2440;--ui-blue:#096faa;--ui-cyan:#1aaed8;--ui-radius:16px}
html{background:var(--ui-bg)}
body{min-width:0;overflow-x:hidden;background:var(--ui-bg)!important;color:#14263a}
.app{min-width:0;background:transparent!important}
.topbar-v11{background:#0d5f98!important;border:0!important;box-shadow:0 2px 14px rgba(6,44,76,.16)!important;color:#fff;padding:8px 12px!important}
.topbar-v11 .brand-logo-v11,.topbar-v11 .brand-logo-v11 span,.topbar-v11 .navlink,.topbar-v11 .logout{color:#fff!important}
.topbar-v11 .navlink,.topbar-v11 .logout{border:0!important;background:transparent!important;padding:7px 8px!important;font-size:12px!important;text-decoration:none!important;white-space:nowrap}
.topbar-v11 .navlink:hover,.topbar-v11 .logout:hover{background:rgba(255,255,255,.13)!important;border-radius:9px!important}
.topbar-v11 .menu{color:#fff!important;background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.55)!important}
.top-actions{gap:2px!important;flex-wrap:nowrap!important;overflow:visible}
.panel,.detail-card,.section-card,.list-table,.compact-panel{border-color:var(--ui-line)!important;border-radius:var(--ui-radius)!important;box-shadow:0 3px 14px rgba(15,45,75,.055)!important}
input,select,textarea{border-color:#cddbe7!important;border-radius:11px!important;box-shadow:none!important}
input:focus,select:focus,textarea:focus{outline:0!important;border-color:#1a9fd0!important;box-shadow:0 0 0 3px rgba(26,159,208,.12)!important}
.btn{border-radius:11px!important}.btn.primary{background:linear-gradient(135deg,#0873b5,#1aadd8)!important;border:0!important}.btn.secondary{color:#086ba7!important;border-color:#9fd1e8!important}

.home-gemini-v124{min-height:calc(100vh - 56px)!important;padding:72px 20px 40px!important;background:#101112!important}
.home-gemini-inner-v124{width:min(760px,100%)!important}
.home-gemini-inner-v124 h1{font-size:clamp(32px,4vw,48px)!important;letter-spacing:-.035em!important;margin-bottom:22px!important}
.home-gemini-search-v124{display:grid!important;grid-template-columns:44px minmax(0,1fr) minmax(128px,160px) 46px!important;align-items:center!important;width:100%!important;min-height:62px!important;padding:6px 7px!important;border:1px solid rgba(255,255,255,.10)!important;background:#262626!important;border-radius:999px!important;overflow:hidden!important}
.home-gemini-search-v124 input{min-width:0!important;background:transparent!important;border:0!important;color:#fff!important;box-shadow:none!important;padding:0 8px!important}
.home-gemini-search-v124 select{width:100%!important;min-width:0!important;height:44px!important;min-height:44px!important;border:0!important;border-radius:22px!important;background:#202020!important;color:#fff!important;padding:0 34px 0 12px!important;font-weight:800!important;appearance:auto!important}
.home-gemini-plus-v124,.home-gemini-submit-v124{position:static!important;transform:none!important}
.home-gemini-shortcuts-v124{display:flex!important;justify-content:center!important;gap:9px!important;flex-wrap:wrap!important;margin-top:20px!important}
.home-gemini-shortcuts-v124 a{padding:8px 13px!important;border-radius:999px!important;background:#172038!important;border:1px solid #33415c!important;color:#fff!important;white-space:nowrap!important}

.notes-page-v179{padding:18px;max-width:1500px;margin:0 auto}
.notes-composer-v179,.note-card-v179{background:#fff;border:1px solid var(--ui-line);border-radius:18px;box-shadow:0 4px 18px rgba(15,45,75,.06)}
.notes-composer-v179{padding:18px;margin-bottom:16px}
.notes-title-v179{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.notes-title-v179 small{color:#0873b5;font-weight:900;letter-spacing:.14em}.notes-title-v179 h1{margin:5px 0 4px;font-size:clamp(24px,3vw,38px);color:#102a43}.notes-title-v179 p{margin:0;color:#61758a}.notes-title-v179>span{white-space:nowrap;background:#eaf7fd;color:#0873b5;padding:8px 12px;border-radius:999px;font-weight:900}
.notes-mode-row-v179{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.notes-mode-row-v179 button,.notes-mode-row-v179 label{border:1px solid #cbddea;background:#fff;color:#174666;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}.notes-mode-row-v179 .active{background:#e9f6fc;border-color:#8ac9e5;color:#056a9f}
#noteContentV179{min-height:220px;line-height:1.55;padding:14px;font-size:15px}.notes-attachment-v179{margin-top:8px;color:#657b8d;font-size:13px}.notes-submit-row-v179{margin-top:10px;display:flex;justify-content:flex-start}.notes-submit-row-v179 .btn{width:auto!important}
.notes-list-v179{display:flex;flex-direction:column;gap:12px}.note-card-v179{padding:15px}.note-card-v179 header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px}.note-card-v179 header b,.note-card-v179 header time{display:block}.note-card-v179 header time{font-size:12px;color:#718398;margin-top:3px}.note-card-v179 header form{margin:0}.note-card-v179 header button{border:0;background:transparent;color:#c62828;font-weight:800;cursor:pointer}.note-content-v179{white-space:normal;overflow-wrap:anywhere;line-height:1.55;color:#14263a}.note-file-v179{margin-top:10px}.note-file-v179 img{display:block;max-width:min(100%,780px);max-height:680px;object-fit:contain;border-radius:12px;border:1px solid var(--ui-line)}.note-file-v179 audio{width:min(100%,620px)}.note-ai-v179{margin-top:12px;padding:12px;border:1px solid #cfe7f3;border-radius:13px;background:#f4fbfe}.note-ai-v179 strong{color:#086b9f}.note-ai-v179 p{margin:5px 0 0;line-height:1.5}.notes-pagination-v179{margin:16px 0!important}

/* Stabilkan form dokumentasi dan editor di seluruh modul */
.area3-doc-form-v178,.inventory-doc-form-v173{grid-template-columns:minmax(140px,180px) minmax(220px,.9fr) minmax(280px,1.4fr)!important;align-items:center!important}
.area3-doc-buttons-v178{align-items:center!important}.area3-doc-buttons-v178 .btn,.area3-doc-buttons-v178 label{flex:0 0 auto!important;width:auto!important}
.remark-form,.equipment-remark-form-v169,.inventory-remark-form-v171{display:block!important}.remark-form>.btn,.equipment-remark-form-v169>.btn,.inventory-remark-submit-v171{width:auto!important;min-width:96px!important;margin-top:10px!important}
.tox-tinymce{max-width:100%!important;border-radius:12px!important;overflow:hidden!important}.tox .tox-toolbar__group{padding:0 3px!important}
.table-wrap,.inventory-stock-wrap-v171,.activity-table-wrap-v6{max-width:100%;overflow:auto!important}

@media(max-width:1180px){.topbar-v11 .top-actions{display:none!important}.topbar-v11{grid-template-columns:44px 1fr auto!important}}
@media(max-width:760px){
 .notes-page-v179{padding:10px}.notes-composer-v179{padding:13px}.notes-title-v179{align-items:center}.notes-title-v179 h1{font-size:24px}.notes-title-v179 p{font-size:13px}.notes-mode-row-v179{display:grid;grid-template-columns:1fr 1fr}.notes-mode-row-v179 button,.notes-mode-row-v179 label{text-align:center}.home-gemini-v124{padding:54px 14px 30px!important}.home-gemini-search-v124{grid-template-columns:38px minmax(0,1fr) 44px!important;border-radius:24px!important}.home-gemini-search-v124 select{grid-column:1/-1;grid-row:2;margin:4px 4px 2px;width:calc(100% - 8px)!important;background:#191919!important}.home-gemini-submit-v124{grid-column:3;grid-row:1}.home-gemini-plus-v124{grid-column:1;grid-row:1}.home-gemini-search-v124 input{grid-column:2;grid-row:1}.area3-doc-form-v178,.inventory-doc-form-v173{grid-template-columns:1fr!important}.area3-doc-buttons-v178{display:grid!important;grid-template-columns:1fr!important}.area3-doc-buttons-v178 .btn,.area3-doc-buttons-v178 label{width:100%!important}.notes-title-v179>span{font-size:12px;padding:6px 9px}
}

/* ===== V180 Area 3 AI read-only ===== */
.ai-chat-page-v180,.ai-status-page-v180{max-width:1180px;margin:0 auto;padding:22px 18px 48px}.ai-chat-hero-v180,.ai-answer-card-v180{background:#fff;border:1px solid #d7e4f2;border-radius:24px;padding:24px;box-shadow:0 12px 35px rgba(15,74,120,.08)}.ai-chat-hero-v180 small{font-weight:900;letter-spacing:.14em;color:#0879bd}.ai-chat-hero-v180 h1{margin:8px 0 6px;color:#0b2942}.ai-chat-hero-v180 p{color:#587083}.ai-chat-form-v180{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;margin-top:18px}.ai-chat-form-v180 textarea{width:100%;min-height:120px;resize:vertical;border:1px solid #bdd5e8;border-radius:16px;padding:16px;font:inherit}.ai-chat-form-v180 button{min-width:130px}.ai-answer-card-v180{margin-top:18px}.ai-answer-card-v180 header{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.ai-answer-card-v180 header span{background:#e8f5ff;color:#086eaa;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.ai-answer-card-v180>div{white-space:normal;line-height:1.65;color:#173247;margin-bottom:18px}.note-ai-v179 p{white-space:pre-wrap;line-height:1.6}.ai-status-page-v180 code{word-break:break-all}@media(max-width:700px){.ai-chat-page-v180,.ai-status-page-v180{padding:12px 10px 32px}.ai-chat-hero-v180,.ai-answer-card-v180{border-radius:18px;padding:16px}.ai-chat-form-v180{grid-template-columns:1fr}.ai-chat-form-v180 button{width:auto;justify-self:start}}


/* V181 - AI confirmation action */
.ai-action-card-v181{margin-top:16px;padding:16px;border:1px solid #bfdbfe;border-radius:16px;background:#eff6ff;color:#0f172a}
.ai-action-card-v181 h3{margin:0 0 12px;color:#075985;font-size:18px}
.ai-action-card-v181 dl{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 12px;margin:0 0 14px}
.ai-action-card-v181 dt{font-weight:800;color:#475569}.ai-action-card-v181 dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.ai-action-card-v181 form{display:flex;justify-content:flex-start}.ai-action-card-v181 .btn{width:auto;min-width:110px}
@media(max-width:640px){.ai-action-card-v181 dl{grid-template-columns:1fr;gap:2px}.ai-action-card-v181 dd{margin-bottom:8px}.ai-action-card-v181 .btn{width:100%}}

/* ===== V183 Notes mobile, Input and Google Calendar action ===== */
.notes-title-actions-v183{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.notes-title-actions-v183>span{white-space:nowrap;background:#eaf7fd;color:#0873b5;padding:8px 12px;border-radius:999px;font-weight:900}
.notes-input-btn-v183{width:auto!important;min-width:92px}
.ai-calendar-card-v183 .calendar-send-btn-v183{display:inline-flex;align-items:center;justify-content:center;min-width:210px}
.calendar-sent-actions-v183{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.calendar-sent-badge-v183{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:900}
.calendar-sent-actions-v183 .btn{width:auto!important}
@media(max-width:760px){
 .notes-page-v179{padding:8px!important}
 .notes-composer-v179,.note-card-v179{border-radius:14px!important}
 .notes-composer-v179{padding:12px!important;margin-bottom:10px!important}
 .notes-title-v179{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;align-items:start!important}
 .notes-title-v179 h1{font-size:22px!important;line-height:1.18!important;margin-top:3px!important}
 .notes-title-v179 p{font-size:12.5px!important;line-height:1.45!important}
 .notes-title-actions-v183{justify-content:space-between;width:100%}
 .notes-title-actions-v183>span{font-size:11px;padding:6px 9px}
 .notes-input-btn-v183{min-width:86px;padding:8px 13px!important}
 .notes-mode-row-v179{gap:6px!important;margin-bottom:8px!important}
 .notes-mode-row-v179 button,.notes-mode-row-v179 label{padding:9px 7px!important;font-size:12px!important;line-height:1.25!important}
 #noteContentV179{min-height:150px!important;padding:12px!important;font-size:14px!important;border-radius:12px!important}
 .notes-submit-row-v179{margin-top:9px!important}
 .notes-submit-row-v179 .btn{width:100%!important}
 .notes-list-v179{gap:9px!important}
 .note-card-v179{padding:12px!important}
 .note-card-v179 header{align-items:center!important;margin-bottom:8px!important}
 .note-content-v179,.note-ai-v179 p{font-size:13.5px!important;line-height:1.5!important}
 .note-ai-v179{padding:10px!important;border-radius:11px!important}
 .note-file-v179 img{max-height:420px!important;border-radius:10px!important}
 .ai-action-card-v181{padding:12px!important;border-radius:13px!important}
 .ai-action-card-v181 h3{font-size:16px!important;margin-bottom:10px!important}
 .ai-calendar-card-v183 .calendar-send-btn-v183,.calendar-sent-actions-v183 .btn{width:100%!important;min-width:0!important}
 .calendar-sent-actions-v183{display:grid!important;grid-template-columns:1fr!important}
 .calendar-sent-badge-v183{justify-content:center}
}


/* V184.5 - halaman depan tanpa header */
body.home-no-header-v1845 .app{width:100%!important;max-width:none!important;background:#101112!important;}
body.home-no-header-v1845 .home-gemini-v124{min-height:100vh!important;padding-top:40px!important;padding-bottom:40px!important;}
body.home-no-header-v1845 .home-gemini-shortcuts-v124{max-width:760px!important;}
@media (max-width:640px){
  body.home-no-header-v1845 .home-gemini-v124{min-height:100svh!important;padding:28px 14px!important;}
}

/* V184.6 - Notes editor restored and compact title */
.notes-title-compact-v1846{align-items:center!important;margin-bottom:12px!important}
.notes-title-compact-v1846 small{display:block;font-size:16px;line-height:1.2}
.notes-wysiwyg-v1843{display:block!important;width:100%!important;border:1px solid #32aee8!important;border-radius:13px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 0 0 2px rgba(50,174,232,.08)!important}
.notes-editor-toolbar-v1843{display:flex!important;gap:5px!important;flex-wrap:wrap!important;padding:7px 9px!important;border-bottom:1px solid #d8e9f3!important;background:#f7fbfe!important}
.notes-editor-toolbar-v1843 button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:38px!important;min-height:32px!important;border:1px solid #c7dce9!important;border-radius:8px!important;background:#fff!important;color:#174666!important;font-weight:800!important;cursor:pointer!important;padding:5px 9px!important}
.notes-editor-v1843{display:block!important;width:100%!important;min-height:220px!important;height:auto!important;line-height:1.55!important;padding:14px!important;font-size:15px!important;outline:0!important;overflow-wrap:anywhere!important;background:#fff!important;color:#14263a!important;box-sizing:border-box!important}
.notes-editor-v1843:empty:before{content:attr(data-placeholder);color:#7a7a7a;pointer-events:none}
.notes-inline-preview-v1843{display:block;max-width:min(100%,680px);max-height:420px;object-fit:contain;border:1px solid #cfe0ea;border-radius:10px;margin:10px 0;background:#f8fbfd}
.notes-camera-only-v184{display:none!important}
@media (hover:none), (pointer:coarse), (max-width:900px){.notes-camera-only-v184{display:inline-flex!important}}
@media(max-width:700px){
 .notes-title-compact-v1846{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:8px!important}
 .notes-title-compact-v1846 .notes-title-actions-v183{width:auto!important;justify-content:flex-end!important}
 .notes-editor-toolbar-v1843{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
 .notes-editor-toolbar-v1843 button{width:100%!important;min-height:40px!important}
 .notes-editor-v1843{min-height:190px!important;padding:12px!important;font-size:16px!important}
}


/* v184.8 - Search Notes dan respons AI */
.notes-search-v1848{margin:0 0 14px;background:#fff;border:1px solid var(--ui-line);border-radius:15px;padding:12px;box-shadow:0 4px 18px rgba(15,45,75,.05)}
.notes-search-form-v1848{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin:0}
.notes-search-form-v1848 input[type=search]{width:100%;min-height:42px;border:1px solid #c9dce9;border-radius:11px;padding:9px 13px;font-size:15px;color:#14263a;background:#fff;outline:0}
.notes-search-form-v1848 input[type=search]:focus{border-color:#22a6df;box-shadow:0 0 0 3px rgba(34,166,223,.12)}
.notes-search-form-v1848 .btn{width:auto!important;min-width:88px;margin:0!important;text-align:center}
.notes-search-summary-v1848{margin-top:9px;color:#536b80;font-size:13px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:700px){
 .notes-search-form-v1848{grid-template-columns:minmax(0,1fr) auto}
 .notes-search-form-v1848 .btn.secondary{grid-column:1/-1;width:100%!important}
 .notes-search-form-v1848 .btn.primary{min-width:76px}
}

/* V184.10 - speech-to-text controls */
.speech-input-row-v18410{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0 10px}
.speech-btn-v18410{white-space:nowrap}
.speech-btn-v18410.is-listening{box-shadow:0 0 0 4px rgba(14,165,233,.18);animation:area3MicPulseV18410 1.2s infinite}
@keyframes area3MicPulseV18410{50%{transform:scale(1.025)}}
.ai-task-card-v18410 dl{display:grid;grid-template-columns:140px 1fr;gap:8px 14px}
.ai-task-card-v18410 dt{font-weight:700}.ai-task-card-v18410 dd{margin:0}
@media(max-width:700px){.speech-input-row-v18410 .btn{width:100%}.ai-task-card-v18410 dl{grid-template-columns:1fr}.ai-task-card-v18410 dt{margin-top:6px}}


/* V184.10d - compact Mic button and stable responsive home search */
.home-gemini-search-v124{
  grid-template-columns:44px minmax(120px,1fr) 54px minmax(74px,104px) 46px!important;
  column-gap:4px!important;
}
.home-gemini-mic-v18410c{
  width:50px!important;
  height:32px!important;
  min-width:50px!important;
  min-height:32px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  background:#202020!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  padding:0 10px!important;
  box-shadow:none!important;
}
.home-gemini-mic-v18410c:hover{background:#303030!important;}
.home-gemini-mic-v18410c.is-listening{
  background:#b91c1c!important;
  border-color:#ef4444!important;
  box-shadow:0 0 0 3px rgba(239,68,68,.18)!important;
}
@media(max-width:700px){
  .home-gemini-search-v124{
    grid-template-columns:34px minmax(0,1fr) 48px 48px 40px!important;
    min-height:58px!important;
    padding:6px!important;
    column-gap:2px!important;
    border-radius:999px!important;
  }
  .home-gemini-plus-v124{grid-column:1;grid-row:1;}
  .home-gemini-search-v124 input{grid-column:2;grid-row:1;padding:0 4px!important;font-size:15px!important;}
  .home-gemini-mic-v18410c{grid-column:3;grid-row:1;width:46px!important;min-width:46px!important;height:30px!important;min-height:30px!important;padding:0 7px!important;font-size:11px!important;}
  .home-gemini-search-v124 select{
    grid-column:4!important;
    grid-row:1!important;
    width:46px!important;
    min-width:46px!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0 4px!important;
    border-radius:17px!important;
    font-size:11px!important;
    text-align:center!important;
    background:#202020!important;
  }
  .home-gemini-submit-v124{grid-column:5;grid-row:1;width:38px!important;height:38px!important;min-width:38px!important;}
}


/* V184.12 - Activity Timeline columns + hidden AI input */
.activity-table-wrap-v6{overflow-x:auto!important}
.activity-table-v6{min-width:1180px!important;table-layout:fixed}
.activity-table-v6 th:nth-child(1){width:42px}
.activity-table-v6 th:nth-child(2){width:130px}
.activity-table-v6 th:nth-child(3){width:190px}
.activity-table-v6 th:nth-child(4){width:66px}
.activity-table-v6 th:nth-child(5),.activity-table-v6 th:nth-child(6){width:92px}
.activity-table-v6 th:nth-child(7){width:54px}
.activity-table-v6 th:nth-child(8){width:105px}
.activity-table-v6 th:nth-child(9){width:92px}
.activity-table-v6 th:nth-child(10),.activity-table-v6 th:nth-child(11){width:66px}
.activity-table-v6 th:nth-child(12){width:150px}
.activity-table-v6 th:nth-child(13){width:70px}
.activity-table-v6 td{overflow-wrap:anywhere}
.activity-tools-v18412{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-top:8px}
.activity-tool-v18412{flex:1 1 360px;min-width:0;margin-top:0!important;border:1px solid var(--border);border-radius:12px;background:#fff;padding:0 10px 10px}
.activity-tool-v18412>summary{white-space:nowrap}
.activity-row-v18412{display:grid!important;grid-template-columns:48px minmax(120px,1.15fr) minmax(150px,1.35fr) 72px 126px 126px 62px 110px 102px 78px 78px minmax(110px,.9fr) 38px!important;gap:6px!important;overflow-x:auto;padding-bottom:4px}
.activity-row-v18412>*{min-width:0}
.activity-row-v18412 input,.activity-row-v18412 select,.activity-row-v18412 textarea{font-size:12px;padding:7px 8px}
.activity-row-v18412 textarea{min-height:38px!important;resize:vertical}
.activity-ai-form-v18412{display:grid;gap:8px;padding-top:6px}
.activity-ai-form-v18412 textarea{width:100%;min-height:150px;resize:vertical}
.activity-ai-actions-v18412{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.activity-ai-actions-v18412 .meta{flex:1 1 160px;overflow-wrap:anywhere}
@media(max-width:850px){
  .activity-tools-v18412{display:grid;grid-template-columns:1fr}
  .activity-tool-v18412{width:100%;min-width:0}
  .activity-row-v18412{grid-template-columns:1fr!important;overflow:visible}
  .activity-ai-form-v18412 textarea{min-height:130px}
}

/* V184.12c - Activity Timeline default read-only; edit opens on demand. */
@media (min-width: 901px){
  .activity-tools-v18412{
    display:grid;
    grid-template-columns:minmax(0,3fr) minmax(220px,1fr);
    align-items:start;
    gap:10px;
  }
  .activity-tools-v18412 > #activityEditor{grid-column:1;min-width:0;width:100%}
  .activity-tools-v18412 > #activityAiInput{grid-column:2;min-width:0;width:100%}
}
@media (max-width: 900px){
  .activity-tools-v18412{display:grid;grid-template-columns:1fr;gap:8px}
  .activity-tools-v18412 > #activityEditor,
  .activity-tools-v18412 > #activityAiInput{width:100%;min-width:0}
}

/* V184.13 - Non Execution / Execution Activity Timeline */

.activity-progress-header-v18413{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px;margin:12px 0}
.activity-progress-card-v18413{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.18);border-radius:0;background:rgba(255,255,255,.08)}
.activity-progress-card-v18413 .task-detail-ring-v69{position:relative;inset:auto;flex:0 0 auto;width:84px;height:84px;box-shadow:inset 0 0 0 8px rgba(255,255,255,.10),0 8px 18px rgba(0,0,0,.08);background:conic-gradient(rgba(255,255,255,.75) var(--task-progress,0%), rgba(255,255,255,.12) 0) !important}
.activity-progress-card-v18413 .task-detail-ring-inner-v69{width:58px;height:58px;background:linear-gradient(135deg,rgba(15,111,179,.92),rgba(39,180,242,.88)) !important}
.activity-progress-card-v18413 .task-detail-ring-inner-v69 b{font-size:18px !important}
.activity-progress-card-v18413 .task-detail-ring-inner-v69 span{font-size:9px !important;line-height:1.15 !important;padding:0 4px}
.activity-progress-line-v18413{flex:1;display:flex;align-items:center;gap:8px}.activity-progress-line-v18413>div{height:8px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden;flex:1}.activity-progress-line-v18413 span{display:block;height:100%;background:linear-gradient(90deg,#d8b4fe,#a78bfa);border-radius:999px}.activity-progress-line-v18413 b{font-size:12px;color:rgba(255,255,255,.88);min-width:56px;text-align:right}
.activity-formula-v18413{padding:10px 12px;background:#f5f0ff;border:1px solid #d8c6ff;border-radius:12px;margin-bottom:12px;color:#4c1d95}
.activity-group-v18413{border:1px solid #d8c6ff;border-radius:16px;padding:12px;margin-top:14px;background:#fff}.activity-group-head-v18413{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.activity-group-head-v18413 h4{margin:0;color:#4c1d95}.activity-group-head-v18413 small{font-weight:700;color:#64748b}.activity-group-bar-v18413{width:min(380px,42%);height:10px;border-radius:999px;background:#ebe5f6;overflow:hidden}.activity-group-bar-v18413 span{display:block;height:100%;background:linear-gradient(90deg,#6d28d9,#a78bfa)}
.task-detail-report-hero-v69{border-radius:0 !important}
@media(max-width:760px){.activity-progress-header-v18413{grid-template-columns:1fr}.activity-progress-card-v18413{align-items:center;padding:8px 10px}.activity-progress-card-v18413 .task-detail-ring-v69{width:72px;height:72px;box-shadow:inset 0 0 0 7px rgba(255,255,255,.10),0 6px 14px rgba(0,0,0,.08)}.activity-progress-card-v18413 .task-detail-ring-inner-v69{width:50px;height:50px}.activity-progress-card-v18413 .task-detail-ring-inner-v69 b{font-size:14px !important}.activity-progress-card-v18413 .task-detail-ring-inner-v69 span{font-size:8px !important}.activity-group-head-v18413{display:block}.activity-group-bar-v18413{width:100%;margin-top:8px}.activity-group-v18413{padding:8px}.activity-master-v18413{padding:8px}.activity-group-v18413 .activity-board{grid-template-columns:repeat(2,1fr)}.activity-group-v18413 .activity-tools-v18412{grid-template-columns:1fr!important}}


/* V184 Rev3 - task detail hero and status normalization */
.task-detail-report-hero-v69,
.detail-card.compact-panel.task-detail-report-hero-v69{
  border-radius:0 !important;
  overflow:hidden !important;
}
.task-detail-report-hero-v69::after,
.detail-card.compact-panel.task-detail-report-hero-v69::after{
  content:none !important;
  display:none !important;
}

/* Progress cards inside purple hero: smaller and more transparent */
.activity-progress-card-v18413{
  border-radius:0 !important;
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(255,255,255,.14) !important;
  padding:8px 10px !important;
}
.activity-progress-card-v18413 .task-detail-ring-v69{
  width:52px !important;
  height:52px !important;
  box-shadow:inset 0 0 0 5px rgba(255,255,255,.10),0 4px 10px rgba(0,0,0,.06) !important;
  background:conic-gradient(rgba(255,255,255,.45) var(--task-progress,0%), rgba(255,255,255,.08) 0) !important;
}
.activity-progress-card-v18413 .task-detail-ring-inner-v69{
  width:36px !important;
  height:36px !important;
  background:rgba(255,255,255,.12) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12) !important;
}
.activity-progress-card-v18413 .task-detail-ring-inner-v69 b{
  font-size:11px !important;
  line-height:1 !important;
  color:#fff !important;
}
.activity-progress-card-v18413 .task-detail-ring-inner-v69 span{
  font-size:6px !important;
  line-height:1.05 !important;
  color:rgba(255,255,255,.88) !important;
  padding:0 2px !important;
}
.activity-progress-line-v18413{gap:6px !important;}
.activity-progress-line-v18413 > div{
  height:6px !important;
  background:rgba(255,255,255,.10) !important;
}
.activity-progress-line-v18413 span{
  background:rgba(255,255,255,.35) !important;
}
.activity-progress-line-v18413 b{
  color:rgba(255,255,255,.88) !important;
  font-size:11px !important;
  min-width:50px !important;
}

/* Status badges: square corners, fixed width, and consistent colors */
.status,
.detail-status,
.status-badge,
.badge-status,
.timeline-status,
.task-status-badge{
  border-radius:0 !important;
}
.list-row .status,
.list-table .status,
.detail-head .detail-status{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:128px !important;
  min-width:128px !important;
  text-align:center !important;
  white-space:nowrap !important;
}
.detail-head .detail-status{
  padding:7px 12px !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Match detail status colors to list status colors */
.detail-head .detail-status.new{background:#0891b2 !important;color:#fff !important;}
.detail-head .detail-status.opportunity{background:#14b8a6 !important;color:#fff !important;}
.detail-head .detail-status.rap{background:#2563eb !important;color:#fff !important;}
.detail-head .detail-status.quotation{background:#f59e0b !important;color:#fff !important;}
.detail-head .detail-status.lelang-user,
.detail-head .detail-status.lelang-vendor{background:#ef4444 !important;color:#fff !important;}
.detail-head .detail-status.kontrak-user,
.detail-head .detail-status.rks,
.detail-head .detail-status.pr{background:#0072bc !important;color:#fff !important;}
.detail-head .detail-status.kontrak-vendor{background:#f97316 !important;color:#fff !important;}
.detail-head .detail-status.berlangsung,
.detail-head .detail-status.selesai{background:#22b573 !important;color:#fff !important;}
.detail-head .detail-status:not(.new):not(.opportunity):not(.rap):not(.quotation):not(.lelang-user):not(.lelang-vendor):not(.kontrak-user):not(.rks):not(.pr):not(.kontrak-vendor):not(.berlangsung):not(.selesai){
  background:#64748b !important;
  color:#fff !important;
}

@media(max-width:760px){
  .list-row .status,
  .list-table .status,
  .detail-head .detail-status{
    width:112px !important;
    min-width:112px !important;
    font-size:11px !important;
  }
  .activity-progress-card-v18413 .task-detail-ring-v69{
    width:46px !important;
    height:46px !important;
  }
  .activity-progress-card-v18413 .task-detail-ring-inner-v69{
    width:32px !important;
    height:32px !important;
  }
  .activity-progress-card-v18413 .task-detail-ring-inner-v69 b{font-size:10px !important;}
  .activity-progress-card-v18413 .task-detail-ring-inner-v69 span{font-size:5.5px !important;}
}

/* V184 Rev4 - move progress titles outside rings */
.activity-progress-card-v18413{
  display:block !important;
}
.activity-progress-card-title-v18413{
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
  color:#ffffff !important;
  margin-bottom:6px !important;
}
.activity-progress-card-body-v18413{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}
.activity-progress-card-v18413 .task-detail-ring-inner-v69{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.activity-progress-card-v18413 .task-detail-ring-inner-v69 span{
  display:none !important;
}
@media(max-width:760px){
  .activity-progress-card-title-v18413{
    font-size:11px !important;
    margin-bottom:5px !important;
  }
  .activity-progress-card-body-v18413{
    gap:8px !important;
  }
}

/* V184 Rev5 - mobile progress cards side by side and much smaller */
@media(max-width:760px){
  .activity-progress-header-v18413{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    align-items:start !important;
  }
  .activity-progress-card-v18413{
    padding:8px 6px !important;
  }
  .activity-progress-card-title-v18413{
    font-size:10px !important;
    line-height:1.15 !important;
    margin-bottom:6px !important;
    min-height:24px !important;
  }
  .activity-progress-card-body-v18413{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:6px !important;
  }
  .activity-progress-card-v18413 .task-detail-ring-v69{
    width:34px !important;
    height:34px !important;
    margin:0 auto !important;
    box-shadow:inset 0 0 0 4px rgba(255,255,255,.10),0 2px 6px rgba(0,0,0,.05) !important;
  }
  .activity-progress-card-v18413 .task-detail-ring-inner-v69{
    width:24px !important;
    height:24px !important;
  }
  .activity-progress-card-v18413 .task-detail-ring-inner-v69 b{
    font-size:7px !important;
  }
  .activity-progress-line-v18413{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:4px !important;
  }
  .activity-progress-line-v18413 > div{
    width:100% !important;
    height:4px !important;
  }
  .activity-progress-line-v18413 b{
    min-width:0 !important;
    text-align:center !important;
    font-size:10px !important;
  }
}


/* ===== V185 - isolated PR/PO Procurement Tracker ===== */
.proc-tabs-v185{display:flex;gap:6px;flex-wrap:wrap;margin:8px 12px}.proc-tabs-v185 a{padding:8px 12px;border:1px solid #c4b5fd;background:#fff;color:#5b21b6;text-decoration:none;font-weight:900}.proc-hero-v185{background:linear-gradient(135deg,#4c1d95,#7c3aed);color:#fff;border:0!important;border-radius:0!important}.proc-hero-v185 h1{color:#fff;margin:4px 0}.proc-search-v185,.proc-filter-v185{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:12px}.proc-filter-v185{grid-template-columns:1fr 220px auto}.proc-kpi-v185{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:12px}.proc-kpi-v185 div{background:#fff;border:1px solid #ddd6fe;padding:10px;box-shadow:0 6px 18px rgba(76,29,149,.07)}.proc-kpi-v185 span{display:block;color:#64748b;font-weight:800;font-size:12px}.proc-kpi-v185 b{display:block;color:#4c1d95;font-size:24px;margin-top:4px}.proc-table-wrap-v185{overflow:auto;width:100%}.proc-table-v185{width:100%;border-collapse:collapse;min-width:900px;font-size:13px}.proc-table-v185 th{background:#ede9fe;color:#3b0764;text-align:left;padding:8px;white-space:nowrap}.proc-table-v185 td{padding:8px;border-bottom:1px solid #ede9fe;vertical-align:top}.proc-table-v185 tbody tr:hover{background:#faf5ff}.proc-status-v185{display:inline-flex;align-items:center;justify-content:center;min-width:125px;padding:5px 8px;background:#64748b;color:#fff;font-weight:900}.proc-status-v185.s-n{background:#0891b2}.proc-status-v185.s-f{background:#f59e0b;color:#111827}.proc-status-v185.s-c,.proc-status-v185.s-a{background:#22b573}.proc-detail-grid-v185{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:10px 0}.proc-detail-grid-v185 span{padding:10px;background:#f5f3ff}.proc-detail-grid-v185 b{display:block;color:#6d28d9;font-size:12px;margin-bottom:4px}.proc-upload-grid-v185{display:grid;grid-template-columns:1fr 1fr;gap:14px}.proc-upload-grid-v185 form{border:1px solid #ddd6fe;padding:16px;background:#faf5ff;display:grid;gap:10px}.proc-upload-grid-v185 input[type=file]{background:#fff}.proc-table-v185 a{color:#6d28d9;font-weight:900}@media(max-width:760px){.proc-filter-v185,.proc-search-v185{grid-template-columns:1fr}.proc-upload-grid-v185{grid-template-columns:1fr}.proc-kpi-v185{grid-template-columns:repeat(2,1fr);margin:8px}.proc-tabs-v185{margin:8px}.proc-tabs-v185 a{flex:1;text-align:center;min-width:80px}}

/* V186 - isolated Procurement Tracker refinements */
.proc-list-panel-v186 h1{margin-bottom:18px}
.proc-filter-site-v186{grid-template-columns:minmax(320px,1fr) minmax(180px,240px) minmax(160px,220px) auto!important;margin:0 0 16px!important;align-items:center}
.proc-item-filter-v186{grid-template-columns:minmax(320px,1fr) minmax(180px,260px) auto!important;margin:0 0 16px!important;align-items:center}
.proc-list-panel-v186 .proc-table-wrap-v185{margin-top:4px}
.proc-pagination-v186{max-height:132px;overflow:auto;padding:2px 0 8px;margin-left:0!important;margin-right:0!important}
.proc-item-table-v186 td[rowspan]{background:#f8fbff;border-right:1px solid #dbeafe;vertical-align:top}
.proc-item-sub-row-v186 td{border-top:1px dashed #cbd5e1;background:#fcfdff}
.proc-doc-type-v186{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:2px 5px;margin-right:4px;background:#e0f2fe;color:#075985;font-size:10px;font-weight:900}
.proc-item-table-v186 .proc-status-v185{min-width:118px}
@media(max-width:900px){.proc-filter-site-v186,.proc-item-filter-v186{grid-template-columns:1fr!important}.proc-pagination-v186{max-height:170px}}

/* V189 - procurement sort controls and mobile card views */
.proc-filter-site-v186{grid-template-columns:minmax(280px,1fr) 210px 210px 220px auto!important;gap:8px!important;align-items:center!important}
.proc-item-filter-v186{grid-template-columns:minmax(280px,1fr) 220px 240px auto!important;gap:8px!important;align-items:center!important}
.proc-mobile-cards-v189{display:none}
@media(max-width:760px){
  .proc-filter-site-v186,.proc-item-filter-v186{grid-template-columns:1fr!important;gap:7px!important}
  .proc-list-panel-v186{padding:10px!important;margin:8px!important}
  .proc-list-panel-v186 h1{font-size:22px!important;margin:4px 0 10px!important}
  .proc-list-panel-v186 .proc-table-wrap-v185{display:none!important}
  .proc-mobile-cards-v189{display:grid!important;gap:9px;margin-top:10px}
  .proc-mobile-card-v189{display:block!important;border:1px solid #dbeafe;background:#fff;padding:11px;text-decoration:none!important;color:#0f172a!important;box-shadow:0 5px 14px rgba(15,23,42,.06)}
  .proc-mobile-card-head-v189{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
  .proc-mobile-card-head-v189 b{font-size:15px;line-height:1.2;color:#075985}
  .proc-mobile-card-head-v189>span:not(.proc-status-v185){font-size:11px;font-weight:900;color:#64748b}
  .proc-mobile-card-v189 .proc-status-v185{min-width:94px!important;font-size:10px!important;padding:4px 6px!important}
  .proc-mobile-card-desc-v189{font-size:13px;font-weight:800;line-height:1.3;margin:7px 0;color:#334155}
  .proc-mobile-meta-v189{display:grid;grid-template-columns:1fr 1fr;gap:6px;border-top:1px dashed #dbeafe;padding-top:8px}
  .proc-mobile-meta-v189 span{font-size:12px;font-weight:800;overflow-wrap:anywhere}
  .proc-mobile-meta-v189 small{display:block;font-size:10px;color:#64748b;margin-bottom:2px}
  .proc-mobile-empty-v189{text-align:center;padding:18px;color:#64748b;font-weight:800;background:#fff;border:1px solid #e2e8f0}
  .proc-mobile-site-v189{font-size:11px;font-weight:900;color:#6d28d9;margin:4px 0 8px}
  .proc-mobile-docs-v189{display:grid;gap:7px}
  .proc-mobile-doc-row-v189{border-top:1px solid #e2e8f0;padding-top:7px;display:grid;gap:5px}
  .proc-mobile-doc-row-v189 a{font-weight:900;color:#0369a1}
  .proc-mobile-doc-meta-v189{display:flex;justify-content:space-between;gap:8px;font-size:11px;font-weight:800;color:#475569}
  .proc-mobile-doc-row-v189 small{font-size:10.5px;color:#64748b;line-height:1.25}
  .proc-item-mobile-v189 .proc-mobile-card-v189{padding:10px}
  .proc-pagination-v186{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:4px}
  .proc-pagination-v186 a{flex:0 0 auto}
}

/* V190 - Procurement overview dashboard */
.proc-tabs-v185{margin-bottom:8px!important}
.proc-tabs-v185 a.active{background:#0d7fd3!important;color:#fff!important;border-color:#0d7fd3!important}
.proc-dashboard-v190{margin:0 12px 12px;padding:18px;background:linear-gradient(135deg,#4c1d95,#6d28d9 58%,#8b5cf6);color:#fff;box-shadow:0 16px 36px rgba(76,29,149,.18)}
.proc-dashboard-title-v190{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.proc-dashboard-title-v190 small{font-size:11px;font-weight:900;letter-spacing:.12em;color:#ddd6fe}
.proc-dashboard-title-v190 h1{margin:4px 0 5px;color:#fff;font-size:28px}
.proc-dashboard-title-v190 p{margin:0;color:#ede9fe;font-weight:700}
.proc-dashboard-date-v190{text-align:right;padding:9px 12px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.09);font-size:12px}
.proc-dashboard-date-v190 b{font-size:18px;color:#fff}
.proc-chart-grid-v190{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:12px}
.proc-chart-card-v190,.proc-progress-card-v190{background:rgba(255,255,255,.96);color:#0f172a;padding:14px;min-width:0;box-shadow:0 9px 24px rgba(15,23,42,.12)}
.proc-chart-head-v190{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.proc-chart-head-v190 small{font-size:10px;color:#64748b;font-weight:900;letter-spacing:.08em}
.proc-chart-head-v190 h3{margin:3px 0 0;color:#24113f;font-size:16px}
.proc-chart-head-v190>a{font-size:11px;font-weight:900;color:#0d7fd3;text-decoration:none}
.proc-chart-head-v190>b{font-size:20px;color:#6d28d9}
.proc-chart-body-v190{display:grid;grid-template-columns:132px 1fr;gap:12px;align-items:center;margin-top:12px}
.proc-pie-v190{width:124px;height:124px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--c1) 0 var(--p1),var(--c2) var(--p1) var(--p2),var(--c3) var(--p2) 100%);position:relative}
.proc-pie-v190:after{content:"";position:absolute;inset:22px;border-radius:50%;background:#fff}
.proc-pie-v190 span{position:relative;z-index:1;text-align:center;display:grid}
.proc-pie-v190 b{font-size:22px;color:#24113f}.proc-pie-v190 small{font-size:10px;color:#64748b;font-weight:900}
.proc-legend-v190{display:grid;gap:8px}.proc-legend-v190 div{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;font-size:11px}.proc-legend-v190 i{width:9px;height:9px;border-radius:50%}.proc-legend-v190 span{color:#475569;font-weight:800}.proc-legend-v190 b{color:#0f172a}.c-pr-new,.c-po-new{background:#0891b2}.c-pr-partial{background:#f59e0b}.c-pr-completed,.c-po-approved{background:#22b573}.c-po-open{background:#ef4444}
.proc-progress-card-v190 hr{border:0;border-top:1px solid #e2e8f0;margin:14px 0}
.proc-wide-progress-v190{height:10px;background:#e2e8f0;overflow:hidden;margin:10px 0 8px}.proc-wide-progress-v190 span{display:block;height:100%;background:linear-gradient(90deg,#0891b2,#38bdf8)}.proc-wide-progress-v190.green span{background:linear-gradient(90deg,#16a34a,#4ade80)}
.proc-progress-numbers-v190{display:grid;grid-template-columns:1fr 1fr;gap:8px}.proc-progress-numbers-v190 span{background:#f8fafc;padding:8px}.proc-progress-numbers-v190 small{display:block;font-size:10px;color:#64748b;font-weight:800}.proc-progress-numbers-v190 b{font-size:18px;color:#24113f}
.proc-kpi-dashboard-v190{margin:12px 0 0!important}.proc-kpi-dashboard-v190 div{box-shadow:none!important;border-color:rgba(255,255,255,.20)!important;background:rgba(255,255,255,.94)!important}
.proc-universal-search-v190{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(420px,1.3fr);gap:16px;align-items:center;margin-top:0!important;padding:14px 16px!important;min-height:0!important}
.proc-search-copy-v190 h2{margin:0 0 4px;font-size:18px}.proc-search-copy-v190 p{margin:0;color:#64748b;font-size:12px;font-weight:700}
.proc-universal-search-v190 .proc-search-v185{margin:0!important}
.proc-search-result-v190{margin-top:10px!important}
@media(max-width:1050px){.proc-chart-grid-v190{grid-template-columns:1fr 1fr}.proc-progress-card-v190{grid-column:1/-1}}
@media(max-width:760px){.proc-dashboard-v190{margin:0 8px 8px;padding:12px}.proc-dashboard-title-v190{display:block}.proc-dashboard-title-v190 h1{font-size:23px}.proc-dashboard-date-v190{text-align:left;margin-top:10px}.proc-chart-grid-v190{grid-template-columns:1fr}.proc-progress-card-v190{grid-column:auto}.proc-chart-body-v190{grid-template-columns:104px 1fr}.proc-pie-v190{width:96px;height:96px}.proc-pie-v190:after{inset:17px}.proc-pie-v190 b{font-size:17px}.proc-universal-search-v190{grid-template-columns:1fr;margin:8px!important;padding:12px!important}.proc-kpi-dashboard-v190{grid-template-columns:repeat(2,minmax(0,1fr))!important}.proc-kpi-dashboard-v190 b{font-size:18px!important}.proc-search-result-v190{margin:8px!important}}

/* V202 - procurement retained filters, reset, supplier filter, and back button */
.proc-detail-back-v202{display:flex;justify-content:flex-start;margin:0 0 12px}
.proc-filter-v185 .btn.secondary,.proc-item-filter-v186 .btn.secondary{white-space:nowrap}
@media(max-width:760px){
  .proc-detail-back-v202 .btn{width:100%;justify-content:center}
  .proc-filter-v185 .btn,.proc-item-filter-v186 .btn{width:100%}
}

/* V203 - compact PR/PO/Item filter actions on desktop and mobile */
.proc-pr-filter-v203{
  grid-template-columns:minmax(280px,1fr) minmax(150px,210px) minmax(160px,210px) minmax(190px,240px) auto !important;
}
.proc-po-filter-v203{
  grid-template-columns:minmax(260px,1fr) minmax(145px,190px) minmax(190px,260px) minmax(145px,190px) minmax(190px,235px) auto !important;
}
.proc-item-filter-v203{
  grid-template-columns:minmax(280px,1fr) minmax(170px,220px) minmax(200px,250px) auto !important;
}
.proc-filter-actions-v203{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  width:auto;
  min-width:max-content;
}
.proc-filter-actions-v203 .btn{
  width:auto !important;
  min-width:68px;
  min-height:34px !important;
  padding:5px 12px !important;
  border-radius:10px !important;
  font-size:13px !important;
  line-height:1.1 !important;
}
@media(max-width:1180px) and (min-width:761px){
  .proc-pr-filter-v203,.proc-po-filter-v203,.proc-item-filter-v203{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .proc-filter-actions-v203{
    justify-self:end;
  }
}
@media(max-width:760px){
  .proc-pr-filter-v203,.proc-po-filter-v203,.proc-item-filter-v203{
    grid-template-columns:1fr !important;
    gap:7px !important;
  }
  .proc-filter-actions-v203{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:7px;
    width:100%;
    min-width:0;
  }
  .proc-filter-actions-v203 .btn{
    width:100% !important;
    min-height:36px !important;
    padding:6px 10px !important;
    font-size:13px !important;
  }
}

/* V204 - searchable supplier dropdown for PO filter */
.proc-supplier-combobox-v204{
  position:relative;
  min-width:0;
  width:100%;
}
.proc-supplier-trigger-v204{
  width:100%;
  min-height:34px;
  padding:5px 10px;
  border:1px solid var(--border,#dbe3ee);
  border-radius:9px;
  background:#fff;
  color:#111827;
  font:inherit;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  cursor:pointer;
  text-align:left;
}
.proc-supplier-trigger-v204 span:first-child{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.proc-supplier-menu-v204{
  position:absolute;
  z-index:1200;
  top:calc(100% + 5px);
  left:0;
  width:min(440px,90vw);
  background:#fff;
  border:1px solid #cbd5e1;
  box-shadow:0 18px 48px rgba(15,23,42,.18);
  padding:8px;
}
.proc-supplier-search-wrap-v204{
  position:sticky;
  top:0;
  z-index:2;
  background:#fff;
  padding-bottom:7px;
}
.proc-supplier-search-wrap-v204 input{
  width:100%;
  min-height:36px;
  border:1px solid #94a3b8;
  border-radius:8px;
  padding:7px 9px;
  background:#fff;
  color:#111827;
}
.proc-supplier-options-v204{
  max-height:320px;
  overflow:auto;
  display:grid;
  gap:3px;
}
.proc-supplier-option-v204{
  width:100%;
  border:0;
  background:#fff;
  color:#111827;
  padding:8px 9px;
  text-align:left;
  font:inherit;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}
.proc-supplier-option-v204:hover,
.proc-supplier-option-v204:focus{
  background:#eaf6fc;
  color:#075985;
  outline:none;
}
.proc-supplier-empty-v204{
  padding:12px 9px;
  color:#64748b;
  text-align:center;
  font-size:12px;
  font-weight:700;
}
@media(max-width:760px){
  .proc-supplier-menu-v204{
    position:fixed;
    left:12px;
    right:12px;
    top:18%;
    width:auto;
    max-height:68vh;
  }
  .proc-supplier-options-v204{max-height:52vh;}
  .proc-supplier-option-v204{font-size:13px;padding:10px 9px;}
}

/* =========================================================
   V205 - Status Alat responsive view isolation
   Desktop: table only. Mobile: cards only.
   Keep this block at the END of the stylesheet so later module
   patches cannot expose both layouts at the same time.
   ========================================================= */
.status-desktop-table-v198{
  display:block !important;
}
.status-mobile-cards-v198{
  display:none !important;
}

@media screen and (max-width:900px){
  .status-desktop-table-v198{
    display:none !important;
  }
  .status-mobile-cards-v198{
    display:grid !important;
  }
}

@media screen and (min-width:901px){
  .status-desktop-table-v198{
    display:block !important;
  }
  .status-mobile-cards-v198{
    display:none !important;
  }
}

/* =========================================================
   V206 - Status Alat desktop table readability
   Smaller text, roomier cells. Mobile card view unchanged.
   ========================================================= */
@media screen and (min-width:901px){
  .status-table-v198{
    font-size:11px !important;
  }
  .status-table-v198 th,
  .status-table-v198 td{
    padding:10px 12px !important;
    line-height:1.45 !important;
  }
  .status-table-v198 thead th{
    font-size:11px !important;
    line-height:1.3 !important;
    vertical-align:middle !important;
  }
  .status-table-v198 .status-select-table-v198{
    font-size:11px !important;
    min-height:34px !important;
    padding:6px 24px 6px 9px !important;
    line-height:1.2 !important;
  }
  .status-table-v198 a{
    line-height:1.35 !important;
  }
}

/* =========================================================
   V207 - Status Alat desktop full width + restored font size
   Keep roomy padding, use the available screen width completely.
   Mobile card view unchanged.
   ========================================================= */
@media screen and (min-width:901px){
  .status-desktop-table-v198,
  .status-desktop-table-v198.section-card,
  .status-desktop-table-v198.compact-panel{
    width:calc(100% - 12px) !important;
    max-width:none !important;
    margin-left:6px !important;
    margin-right:6px !important;
  }
  .status-table-wrap-v198{
    width:100% !important;
    max-width:none !important;
    overflow-x:auto !important;
  }
  .status-table-v198{
    width:100% !important;
    min-width:1180px !important;
    table-layout:fixed !important;
    font-size:13px !important;
  }
  .status-table-v198 th,
  .status-table-v198 td{
    padding:10px 12px !important;
    line-height:1.45 !important;
    vertical-align:middle !important;
    overflow-wrap:anywhere !important;
  }
  .status-table-v198 thead th{
    font-size:13px !important;
    line-height:1.25 !important;
  }
  .status-table-v198 .status-select-table-v198{
    width:100% !important;
    max-width:150px !important;
    font-size:13px !important;
    min-height:36px !important;
    padding:7px 26px 7px 10px !important;
  }
  .status-table-v198 a{
    font-size:13px !important;
    line-height:1.35 !important;
  }
  .status-table-v198 th:nth-child(1),
  .status-table-v198 td:nth-child(1){width:7% !important;}
  .status-table-v198 th:nth-child(2),
  .status-table-v198 td:nth-child(2){width:16% !important;}
  .status-table-v198 th:nth-child(3),
  .status-table-v198 td:nth-child(3){width:8% !important;}
  .status-table-v198 th:nth-child(4),
  .status-table-v198 td:nth-child(4){width:10% !important;}
  .status-table-v198 th:nth-child(5),
  .status-table-v198 td:nth-child(5){width:20% !important;}
  .status-table-v198 th:nth-child(6),
  .status-table-v198 td:nth-child(6){width:24% !important;}
  .status-table-v198 th:nth-child(7),
  .status-table-v198 td:nth-child(7){width:8% !important;}
  .status-table-v198 th:nth-child(8),
  .status-table-v198 td:nth-child(8){width:7% !important;}
}

/* =========================================================
   V208 - Status Alat desktop table font +1px
   ========================================================= */
@media screen and (min-width:901px){
  .status-table-v198,
  .status-table-v198 th,
  .status-table-v198 td,
  .status-table-v198 thead th,
  .status-table-v198 a,
  .status-table-v198 .status-select-table-v198{
    font-size:14px !important;
  }
}


/* =========================================================
   V211 - Restore Vendor Stock navigation and inventory widths
   Base UOM compact, Material Group wider (Inventory + Vendor Stock).
   ========================================================= */
@media screen and (min-width:1200px){
  .inventory-table .inv-col-uom-v171{
    width:42px !important;
    min-width:42px !important;
    max-width:42px !important;
    text-align:center !important;
    white-space:normal !important;
  }
  .inventory-table .inv-col-group-v171{
    width:230px !important;
    min-width:230px !important;
    max-width:230px !important;
  }
}

/* =========================================================
   V212 - Logout visibility lock
   Keep Logout readable even when older header/button rules are loaded.
   ========================================================= */
.topbar-v11 .top-actions .logout,
.topbar .top-actions .logout,
.top-actions .logout,
a.logout {
  background:#dc2626 !important;
  border:1px solid #dc2626 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  text-shadow:none !important;
  box-shadow:none !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
.topbar-v11 .top-actions .logout:hover,
.topbar .top-actions .logout:hover,
.top-actions .logout:hover,
a.logout:hover {
  background:#b91c1c !important;
  border-color:#b91c1c !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.topbar-v11 .top-actions .logout:focus-visible,
.topbar .top-actions .logout:focus-visible,
.top-actions .logout:focus-visible,
a.logout:focus-visible {
  outline:3px solid rgba(220,38,38,.28) !important;
  outline-offset:2px !important;
}
@media(max-width:900px){
  .topbar-v11 .top-actions .logout,
  .topbar .top-actions .logout,
  .top-actions .logout,
  a.logout {
    background:#dc2626 !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
  }
}

/* =========================================================
   V213 - Mobile hamburger two-column compact menu + logout lock
   Must stay after all legacy header/button rules.
   ========================================================= */
@media screen and (max-width:900px){
  .topbar-v11 .hamburger-panel-v15,
  .topbar .hamburger-panel-v15,
  details.hamburger-v15 .hamburger-panel-v15,
  .hamburger-panel-v15{
    width:min(94vw,420px) !important;
    min-width:0 !important;
    max-width:94vw !important;
    max-height:calc(100vh - 72px) !important;
    overflow-y:auto !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-flow:row !important;
    gap:7px !important;
    padding:9px !important;
    border-radius:12px !important;
    background:#f8fbff !important;
  }

  .topbar-v11 .hamburger-panel-v15 > a,
  .topbar .hamburger-panel-v15 > a,
  details.hamburger-v15 .hamburger-panel-v15 > a,
  .hamburger-panel-v15 > a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:0 !important;
    min-height:40px !important;
    margin:0 !important;
    padding:6px 7px !important;
    border:1px solid #d7e8f5 !important;
    border-radius:7px !important;
    background:#ffffff !important;
    color:#0c4f84 !important;
    -webkit-text-fill-color:#0c4f84 !important;
    font-size:11px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    box-shadow:0 2px 7px rgba(15,23,42,.04) !important;
  }

  .topbar-v11 .hamburger-panel-v15 > a:hover,
  .topbar .hamburger-panel-v15 > a:hover,
  details.hamburger-v15 .hamburger-panel-v15 > a:hover,
  .hamburger-panel-v15 > a:hover{
    background:#eaf7ff !important;
    border-color:#9ed6f3 !important;
    color:#0c4f84 !important;
    -webkit-text-fill-color:#0c4f84 !important;
  }

  .topbar-v11 .hamburger-panel-v15 > a.logout,
  .topbar .hamburger-panel-v15 > a.logout,
  details.hamburger-v15 .hamburger-panel-v15 > a.logout,
  .hamburger-panel-v15 > a.logout,
  .hamburger-panel-v15 a[href*="logout"]{
    background:#dc2626 !important;
    border-color:#dc2626 !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    font-weight:900 !important;
    opacity:1 !important;
  }

  .topbar-v11 .hamburger-panel-v15 > a.logout:hover,
  .topbar .hamburger-panel-v15 > a.logout:hover,
  details.hamburger-v15 .hamburger-panel-v15 > a.logout:hover,
  .hamburger-panel-v15 > a.logout:hover,
  .hamburger-panel-v15 a[href*="logout"]:hover{
    background:#b91c1c !important;
    border-color:#b91c1c !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
  }
}

@media screen and (max-width:360px){
  .topbar-v11 .hamburger-panel-v15,
  .topbar .hamburger-panel-v15,
  details.hamburger-v15 .hamburger-panel-v15,
  .hamburger-panel-v15{
    gap:5px !important;
    padding:7px !important;
  }
  .topbar-v11 .hamburger-panel-v15 > a,
  .topbar .hamburger-panel-v15 > a,
  details.hamburger-v15 .hamburger-panel-v15 > a,
  .hamburger-panel-v15 > a{
    min-height:38px !important;
    padding:5px 6px !important;
    font-size:10px !important;
  }
}
