/* Tema TAPPS di atas Filament bawaan (CSS biasa, tanpa build Tailwind; tanpa CDN). Huruf Inter dari paket Filament (lokal). */
:root{--tapps-navy:#0f2d5c;--tapps-navy-2:#0a1f42;--tapps-emas:#c77700;--tapps-garis:rgba(15,45,92,.1);--tapps-transisi:.18s ease}
.fi-main,.tapps-kpi-angka{font-variant-numeric:tabular-nums}

/* Sidebar & topbar navy seperti TAPPS */
.fi-topbar{background:var(--tapps-navy)!important;border-bottom:1px solid rgba(255,255,255,.1);box-shadow:none;color:#fff}
.fi-topbar .fi-icon-btn{color:#dbe6f6}
.fi-topbar .fi-icon-btn:hover{background:rgba(255,255,255,.12);color:#fff}
.fi-sidebar{background:var(--tapps-navy)!important;color:#dbe6f6}
.fi-sidebar-header,.fi-sidebar-header-ctn{background:var(--tapps-navy)!important;border-color:rgba(255,255,255,.1);box-shadow:none}
.fi-sidebar .fi-icon-btn{color:#dbe6f6}
.fi-sidebar-group-label,.fi-sidebar-group-btn .fi-sidebar-group-label{color:#8fa8cf;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.fi-sidebar-group-collapse-btn{color:#8fa8cf}
.fi-sidebar-item-btn{border-radius:10px;transition:background var(--tapps-transisi),color var(--tapps-transisi);min-height:40px}
.fi-sidebar-item-label{color:#e6edf8;font-weight:500}
.fi-sidebar-item-icon{color:#a9bfe0}
.fi-sidebar-item-btn:hover,.fi-sidebar-item-btn:focus-visible{background:rgba(255,255,255,.09)!important}
.fi-sidebar-item.fi-active>.fi-sidebar-item-btn{background:rgba(255,255,255,.15)!important}
.fi-sidebar-item.fi-active .fi-sidebar-item-label{color:#fff;font-weight:600}
.fi-sidebar-item.fi-active .fi-sidebar-item-icon{color:#f5b84a}
.fi-sidebar-item-grouped-border-part{background:#7f98bf}
.fi-sidebar-item-grouped-border-part-not-first,.fi-sidebar-item-grouped-border-part-not-last{background:rgba(255,255,255,.28)}
.fi-sidebar-item.fi-active .fi-sidebar-item-grouped-border-part{background:#f5b84a}

/* Avatar topbar: lingkar putih tipis supaya inisial navy terlihat di atas topbar navy */
.fi-topbar .fi-user-menu-trigger .fi-avatar{box-shadow:0 0 0 2px rgba(255,255,255,.85);border-radius:9999px}

/* Merek */
.tapps-brand{display:inline-flex;align-items:center;gap:.6rem;color:#fff}
.tapps-brand-ikon{display:inline-flex;width:2.25rem;height:2.25rem;align-items:center;justify-content:center;background:#fff;border-radius:9px;flex:none}
.tapps-brand-ikon img{width:1.8rem;height:1.8rem;object-fit:contain}
.tapps-brand-teks{display:flex;flex-direction:column;line-height:1.1}
.tapps-brand-nama{font-weight:800;font-size:1.05rem;letter-spacing:.02em}
.tapps-brand-sub{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#a9bfe0}

/* Topbar: cari, tanggal, nama, tombol mode gelap */
.tapps-cari{display:flex;align-items:center;gap:.5rem;width:min(320px,28vw);height:2.5rem;padding:0 .75rem;border-radius:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);color:#c4d3ea;opacity:.75;cursor:not-allowed;margin-inline-end:.75rem}
.tapps-cari input{flex:1;min-width:0;background:none;border:0;padding:0;font-size:.85rem;color:inherit;cursor:not-allowed;box-shadow:none;outline:none}
.tapps-cari input::placeholder{color:#c4d3ea;opacity:1}
.tapps-cari-ikon{width:1.05rem;height:1.05rem;flex:none}
.tapps-topbar-info{display:flex;align-items:center;gap:.75rem;margin-inline-end:.6rem}
.tapps-topbar-teks{text-align:end;line-height:1.2;color:#fff;white-space:nowrap}
.tapps-topbar-nama{font-size:.85rem;font-weight:600}
.tapps-topbar-tgl{font-size:.72rem;color:#c4d3ea}
.tapps-tema{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:10px;color:#dbe6f6;background:rgba(255,255,255,.08);transition:background var(--tapps-transisi)}
.tapps-tema:hover{background:rgba(255,255,255,.16)}
.tapps-tema-ikon{width:1.2rem;height:1.2rem}
@media (max-width:767px){.tapps-cari,.tapps-topbar-teks{display:none}.tapps-topbar-info{margin-inline-end:.25rem}}

/* Kartu: sudut membulat, garis tipis, bayangan halus */
.fi-section,.fi-ta-ctn,.tapps-kpi{border-radius:16px}
.fi-section,.fi-ta-ctn{box-shadow:0 1px 3px rgba(11,28,48,.06);transition:box-shadow var(--tapps-transisi)}
.fi-btn{transition:background var(--tapps-transisi),box-shadow var(--tapps-transisi);border-radius:10px}
.tapps-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.tapps-kpi{display:flex;flex-direction:column;gap:.35rem;padding:1.15rem 1.25rem;background:#fff;border:1px solid var(--tapps-garis);box-shadow:0 1px 3px rgba(11,28,48,.06);transition:box-shadow var(--tapps-transisi),transform var(--tapps-transisi)}
.tapps-kpi:hover{box-shadow:0 6px 18px -8px rgba(11,28,48,.25)}
.tapps-kpi-ikon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:12px;margin-bottom:.35rem}
.tapps-kpi-ikon svg{width:1.3rem;height:1.3rem}
.tapps-kpi-navy .tapps-kpi-ikon{background:#e7eefa;color:var(--tapps-navy)}
.tapps-kpi-emas .tapps-kpi-ikon{background:#fdf1dc;color:var(--tapps-emas)}
.tapps-kpi-hijau .tapps-kpi-ikon{background:#e4f6ec;color:#15803d}
.tapps-kpi-ungu .tapps-kpi-ikon{background:#efe9fb;color:#6d3bd1}
.tapps-kpi-angka{font-size:1.65rem;font-weight:700;color:#0b1c30;line-height:1.1}
.tapps-kpi-label{font-size:.82rem;color:#5b6b82}
.dark .tapps-kpi{background:#111a2b;border-color:rgba(255,255,255,.1)}
.dark .tapps-kpi-angka{color:#f2f6fc}
.dark .tapps-kpi-label{color:#a3b2c9}
.dark .tapps-kpi-navy .tapps-kpi-ikon{background:rgba(90,134,199,.2);color:#9dbbe6}
.dark .tapps-kpi-emas .tapps-kpi-ikon{background:rgba(245,166,35,.16);color:#f5b84a}
.dark .tapps-kpi-hijau .tapps-kpi-ikon{background:rgba(34,197,94,.14);color:#6ee7a0}
.dark .tapps-kpi-ungu .tapps-kpi-ikon{background:rgba(139,92,246,.16);color:#c4b0f5}
@media (max-width:1024px){.tapps-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.tapps-kpi-grid{gap:.65rem}.tapps-kpi{padding:.9rem}.tapps-kpi-angka{font-size:1.4rem}}

/* Kondisi kosong */
.tapps-kosong{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem;padding:2.5rem 1rem}
.tapps-kosong-ikon{width:2.5rem;height:2.5rem;color:#9fb0c8;margin-bottom:.35rem}
.tapps-kosong-judul{font-weight:600;font-size:.98rem}
.tapps-kosong-teks{font-size:.85rem;color:#6b7a90}
.dark .tapps-kosong-teks{color:#a3b2c9}

/* Baris alat tabel: bagian kosong tidak memakan tempat */
.fi-ta-header-toolbar>div:not(:has(*)){display:none}

/* Target sentuh di HP & tanpa geser horizontal */
@media (max-width:767px){
  html,body{overflow-x:clip}
  .fi-btn,.fi-icon-btn,.fi-input-wrp input,.fi-select-input,.fi-dropdown-list-item{min-height:40px}
  .fi-icon-btn{min-width:40px}
  .fi-topbar-open-sidebar-btn,.fi-topbar-close-sidebar-btn,.fi-user-menu-trigger{min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}
}

/* Halaman login: merek + kartu (kesan login TAPPS sekarang) */
.fi-simple-layout:has(.tapps-merek){min-height:100dvh;background:linear-gradient(160deg,var(--tapps-navy) 0%,var(--tapps-navy-2) 100%)}
.fi-simple-layout:has(.tapps-merek) .fi-simple-main-ctn{flex:1;align-items:center;justify-content:center}
.fi-simple-layout:has(.tapps-merek) .fi-simple-main{background:#fff;border-radius:18px;box-shadow:0 18px 50px -20px rgba(3,12,28,.6);border:0;--tw-ring-color:transparent}
.dark .fi-simple-layout:has(.tapps-merek) .fi-simple-main{background:#111a2b}
.tapps-merek ~ .fi-simple-main-ctn .fi-logo{display:none}
.tapps-merek{color:#fff}
.tapps-merek-logo{display:inline-flex;background:#fff;border-radius:14px;padding:.55rem .8rem}
.tapps-merek-logo img{height:3.25rem;width:auto;display:block}
.tapps-merek-nama{font-size:3rem;font-weight:800;letter-spacing:.03em;line-height:1}
.tapps-merek-garis{width:4rem;height:4px;border-radius:2px;background:var(--tapps-emas);margin:1rem 0}
.tapps-merek-desk{font-size:1.05rem;color:#d6e2f4;max-width:26rem;line-height:1.45}
.tapps-merek-slogan{margin-top:.5rem;font-size:1rem;font-weight:600;color:#f5b84a}
@media (min-width:960px){
  .fi-simple-layout:has(.tapps-merek){display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center}
  .tapps-merek{padding:2.5rem 4rem;display:flex;flex-direction:column;gap:3rem;justify-content:center;min-height:100dvh}
  .tapps-merek-logo{align-self:flex-start}
}
@media (max-width:959px){
  .fi-simple-layout:has(.tapps-merek){display:flex;flex-direction:column}
  .tapps-merek{padding:2rem 1.25rem 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem}
  .tapps-merek-logo img{height:2.75rem}
  .tapps-merek-nama{font-size:2.25rem}
  .tapps-merek-garis{margin:.65rem auto}
  .tapps-merek-desk{font-size:.9rem;margin-inline:auto}
  .fi-simple-layout:has(.tapps-merek) .fi-simple-main-ctn{align-items:flex-start;padding-inline:1rem;padding-bottom:1.5rem}
}

/* ===== Work Order (kartu dipakai halaman WO & Dashboard) ===== */
:root{--tapps-permukaan:#fff;--tapps-garis-kartu:#e7edf5;--tapps-teks:#0b1c30;--tapps-teks-2:#53657d;--tapps-biru-teks:#1a4fa0;--tapps-biru-muda:#eaf1fb}
.dark{--tapps-permukaan:#111a2b;--tapps-garis-kartu:rgba(255,255,255,.1);--tapps-teks:#f2f6fc;--tapps-teks-2:#a3b2c9;--tapps-biru-teks:#9dbbe6;--tapps-biru-muda:rgba(90,134,199,.2)}
.tapps-wo-alat{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}
.tapps-wo-cari{display:flex;align-items:center;gap:.5rem;max-width:32rem;min-height:2.75rem;padding:0 .9rem;border-radius:999px;background:var(--tapps-permukaan);border:1px solid var(--tapps-garis-kartu);color:var(--tapps-teks-2)}
.tapps-wo-cari:focus-within{border-color:var(--tapps-biru-teks);box-shadow:0 0 0 3px var(--tapps-biru-muda)}
.tapps-wo-cari svg{width:1.15rem;height:1.15rem;flex:none}
.tapps-wo-cari input{flex:1;min-width:0;background:none;border:0;outline:0;padding:0;font-size:.95rem;color:var(--tapps-teks);box-shadow:none}
.tapps-wo-cari input::placeholder{color:var(--tapps-teks-2);opacity:1}
.tapps-chip-baris{display:flex;flex-wrap:wrap;gap:.5rem}
.tapps-chip{display:inline-flex;align-items:center;gap:.4rem;flex:none;min-height:2.5rem;padding:0 .85rem;border-radius:999px;background:var(--tapps-permukaan);border:1px solid var(--tapps-garis-kartu);color:var(--tapps-teks);font-size:.82rem;font-weight:600;white-space:nowrap;transition:background var(--tapps-transisi),color var(--tapps-transisi)}
.tapps-chip-angka{min-width:1.35rem;padding:.05rem .35rem;border-radius:999px;background:var(--tapps-biru-muda);color:var(--tapps-biru-teks);font-size:.72rem;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}
.tapps-chip.tapps-aktif{background:var(--tapps-navy);border-color:var(--tapps-navy);color:#fff}
.tapps-chip.tapps-aktif .tapps-chip-angka{background:rgba(255,255,255,.2);color:#fff}
.dark .tapps-chip.tapps-aktif{background:#2f5fa8;border-color:#2f5fa8}
.tapps-memuat{opacity:.55;transition:opacity var(--tapps-transisi)}
.tapps-wo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(20rem,100%),1fr));gap:1rem}
.tapps-wo-halaman{margin-top:1rem}
.tapps-kosong-kartu{background:var(--tapps-permukaan);border:1px solid var(--tapps-garis-kartu);border-radius:16px}
.tapps-kosong-aksi{margin-top:.6rem}
.tapps-tautan{font-size:.85rem;font-weight:600;color:var(--tapps-biru-teks);white-space:nowrap}
.tapps-tautan:hover{text-decoration:underline}
.tapps-wo{position:relative;display:flex;flex-direction:column;gap:.45rem;height:100%;padding:.9rem 1rem;background:var(--tapps-permukaan);border:1px solid var(--tapps-garis-kartu);border-radius:16px;box-shadow:0 1px 3px rgba(11,28,48,.06);transition:box-shadow var(--tapps-transisi)}
.tapps-wo:hover{box-shadow:0 6px 18px -8px rgba(11,28,48,.25)}
.tapps-wo:focus-within{outline:2px solid var(--tapps-biru-teks);outline-offset:2px}
.tapps-wo-p-tinggi{border-left:4px solid #ea580c;background:linear-gradient(rgba(245,158,11,.11),rgba(245,158,11,.11)),var(--tapps-permukaan)}
.tapps-wo-p-darurat{border-left:4px solid #d92d20;background:linear-gradient(rgba(220,38,38,.1),rgba(220,38,38,.1)),var(--tapps-permukaan)}
.tapps-wo-atas{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}
.tapps-wo-nomor-baris{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0}
.tapps-wo-buka,.tapps-wo-nomor{font-size:.78rem;font-weight:700;color:var(--tapps-biru-teks);letter-spacing:.01em;font-variant-numeric:tabular-nums}
/* Seluruh kartu bisa diketuk: area tombol nomor direntangkan menutupi kartu. */
.tapps-wo-buka{background:none;border:0;padding:0;outline:0;cursor:pointer}
.tapps-wo-buka::after{content:"";position:absolute;inset:0;border-radius:inherit}
.tapps-wo-contoh{padding:.05rem .4rem;border-radius:6px;background:rgba(83,101,125,.14);color:var(--tapps-teks-2);font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.tapps-wo-customer{font-size:.95rem;font-weight:700;color:var(--tapps-teks);line-height:1.3}
.tapps-wo-desk{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;font-size:.84rem;line-height:1.4;color:var(--tapps-teks-2)}
.tapps-wo-lokasi{display:flex;align-items:center;gap:.3rem;font-size:.78rem;color:var(--tapps-teks-2);min-width:0}
.tapps-wo-lokasi svg{width:.95rem;height:.95rem;flex:none}
.tapps-wo-lokasi span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tapps-wo-progres{display:flex;align-items:center;gap:.55rem;margin-top:auto;padding-top:.2rem}
.tapps-wo-progres-bar{flex:1;height:6px;border-radius:999px;background:rgba(83,101,125,.16);overflow:hidden}
.tapps-wo-progres-bar span{display:block;height:100%;border-radius:999px}
.tapps-wo-progres-angka{font-size:.75rem;font-weight:700;color:var(--tapps-teks-2);font-variant-numeric:tabular-nums}
.tapps-wo-bawah{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.tapps-wo-orang{display:flex;align-items:center;min-width:0}
.tapps-wo-inisial{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;margin-inline-end:-.3rem;border-radius:999px;background:var(--tapps-biru-muda);color:var(--tapps-biru-teks);border:2px solid var(--tapps-permukaan);font-size:.62rem;font-weight:700}
.tapps-wo-inisial-sisa{background:rgba(83,101,125,.16);color:var(--tapps-teks-2)}
.tapps-st,.tapps-prio{display:inline-flex;align-items:center;flex:none;padding:.15rem .55rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.tapps-st-survey{background:#fef3c7;color:#92400e}
.tapps-st-penawaran{background:#ede9fe;color:#5b21b6}
.tapps-st-negosiasi{background:#ffedd5;color:#9a3412}
.tapps-st-eksekusi{background:#dbeafe;color:#1e40af}
.tapps-st-selesai{background:#d1fae5;color:#065f46}
.tapps-st-invoice{background:#fee2e2;color:#991b1b}
.dark .tapps-st-survey{background:rgba(245,184,74,.16);color:#f5c469}
.dark .tapps-st-penawaran{background:rgba(139,92,246,.2);color:#c9b6fa}
.dark .tapps-st-negosiasi{background:rgba(234,88,12,.2);color:#fdba8c}
.dark .tapps-st-eksekusi{background:rgba(59,130,246,.2);color:#a9c9fb}
.dark .tapps-st-selesai{background:rgba(16,185,129,.18);color:#7be3bd}
.dark .tapps-st-invoice{background:rgba(239,68,68,.2);color:#fca5a5}
.tapps-pg-survey{background:#c77700}
.tapps-pg-penawaran{background:#7c3aed}
.tapps-pg-negosiasi{background:#ea580c}
.tapps-pg-eksekusi{background:#1a4fa0}
.tapps-pg-selesai{background:#0f8a5f}
.tapps-pg-invoice{background:#d92d20}
.dark .tapps-pg-eksekusi{background:#5a86c7}
.tapps-prio-normal{background:rgba(83,101,125,.12);color:var(--tapps-teks-2)}
.tapps-prio-tinggi{background:#ffedd5;color:#9a3412}
.tapps-prio-darurat{background:#fee2e2;color:#991b1b;text-transform:uppercase;letter-spacing:.05em}
.dark .tapps-prio-tinggi{background:rgba(234,88,12,.2);color:#fdba8c}
.dark .tapps-prio-darurat{background:rgba(239,68,68,.2);color:#fca5a5}
.tapps-wo-rinci{display:flex;flex-direction:column;gap:.6rem}
.tapps-wo-rinci-desk{font-size:.9rem;line-height:1.5;color:var(--tapps-teks)}
.tapps-wo-rinci-muat{padding:2rem 0;text-align:center;color:var(--tapps-teks-2);font-size:.88rem}
.tapps-wo-dl{display:flex;flex-direction:column;margin-top:.25rem;border-top:1px solid var(--tapps-garis-kartu)}
.tapps-wo-dl>div{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--tapps-garis-kartu);font-size:.86rem}
.tapps-wo-dl dt{flex:none;color:var(--tapps-teks-2)}
.tapps-wo-dl dd{text-align:end;font-weight:600;color:var(--tapps-teks);min-width:0;overflow-wrap:anywhere}

/* ===== Lembar bawah: HP = dari bawah, desktop = kotak di tengah ===== */
.tapps-lembar-tirai{position:fixed;inset:0;z-index:60;background:rgba(5,16,37,.55)}
.tapps-lembar{position:fixed;z-index:61;left:0;right:0;bottom:0;display:flex;flex-direction:column;max-height:88dvh;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--tapps-permukaan);color:var(--tapps-teks);border-radius:20px 20px 0 0;box-shadow:0 -12px 40px -12px rgba(5,16,37,.45)}
.tapps-lembar-gerak{transition:transform .18s ease,opacity .18s ease}
.tapps-lembar-dalam{transform:translateY(0);opacity:1}
.tapps-lembar-luar{transform:translateY(100%);opacity:1}
.tapps-lembar-pegangan{width:2.5rem;height:4px;margin:.55rem auto 0;border-radius:999px;background:rgba(83,101,125,.35)}
.tapps-lembar-kepala{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.25rem .5rem .25rem 1rem}
.tapps-lembar-judul{font-size:1rem;font-weight:700}
.tapps-lembar-tutup{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:999px;color:var(--tapps-teks-2)}
.tapps-lembar-tutup:hover{background:rgba(83,101,125,.12)}
.tapps-lembar-tutup svg{width:1.3rem;height:1.3rem}
.tapps-lembar-isi{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.25rem 1rem 1.25rem}
@media (min-width:768px){
  .tapps-lembar{left:50%;right:auto;bottom:auto;top:50%;translate:-50% -50%;width:min(34rem,calc(100vw - 2rem));max-height:85dvh;padding-bottom:0;border-radius:16px;box-shadow:0 24px 60px -20px rgba(5,16,37,.5)}
  .tapps-lembar-pegangan{display:none}
  .tapps-lembar-kepala{padding-top:.5rem}
  .tapps-lembar-luar{transform:translateY(12px);opacity:0}
}

/* ===== Kerangka HP (<=767px). Di desktop ketiganya tidak tampil. ===== */
.tapps-m,.tapps-m-header{display:none}
@media (max-width:767px){
  :root{--tapps-nav-tinggi:3.875rem}
  html:not(.dark) .fi-body{background:#f4f7fb}
  .fi-topbar-ctn,.fi-sidebar,.fi-sidebar-close-overlay,.fi-layout-sidebar-toggle-btn-ctn{display:none!important}
  .fi-header-heading,.fi-header-subheading,.fi-breadcrumbs,.fi-header:not(:has(.fi-header-actions-ctn)){display:none}

  /* Header gradasi biru -> navy, sudut bawah membulat */
  .tapps-m-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:max(.7rem,env(safe-area-inset-top,0px)) 1rem .7rem;background:linear-gradient(135deg,#1a4fa0 0%,#0f2d5c 100%);border-radius:0 0 20px 20px;box-shadow:0 4px 16px rgba(15,45,92,.22);color:#fff}
  .tapps-m-header-kiri{flex:none;line-height:1.25}
  .tapps-m-pt{font-size:.875rem;font-weight:700;letter-spacing:.005em;white-space:nowrap}
  .tapps-m-halaman{font-size:.75rem;font-weight:500;color:rgba(255,255,255,.88);white-space:nowrap}
  .tapps-m-header-kanan{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;flex:1;min-width:0}
  .tapps-m-user{flex:0 1 auto;min-width:0;text-align:end;line-height:1.25}
  .tapps-m-nama{font-size:.75rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tapps-m-tgl{font-size:.6875rem;color:rgba(255,255,255,.82);white-space:nowrap}
  .tapps-m-avatar{display:inline-flex;flex:none;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-inline-end:-.25rem}
  .tapps-m-avatar .fi-avatar{box-shadow:0 0 0 2px rgba(255,255,255,.85);border-radius:9999px}
  .tapps-m-header .tapps-tema{flex:none;width:2.75rem;height:2.75rem;margin-inline-end:-.25rem;background:none;color:#fff;border-radius:999px}

  /* Navigasi bawah */
  .tapps-m{display:block}
  .tapps-m-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;align-items:stretch;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--tapps-permukaan);border-top:1px solid var(--tapps-garis-kartu);box-shadow:0 -2px 10px rgba(11,28,48,.06)}
  .tapps-m-tab{position:relative;flex:1 1 0;min-width:0;min-height:var(--tapps-nav-tinggi);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.25rem .15rem;color:var(--tapps-teks-2);transition:color var(--tapps-transisi)}
  .tapps-m-tab-ikon{width:1.45rem;height:1.45rem}
  .tapps-m-tab-label{max-width:100%;font-size:.6875rem;font-weight:500;line-height:1.15;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tapps-m-tab.tapps-aktif{color:var(--tapps-biru-teks)}
  .tapps-m-tab.tapps-aktif .tapps-m-tab-label{font-weight:700}
  .tapps-m-tab.tapps-aktif::before{content:"";position:absolute;top:-1px;left:.8rem;right:.8rem;height:3px;border-radius:0 0 3px 3px;background:var(--tapps-biru-teks)}
  .tapps-m-tab-menu{justify-content:flex-end;padding-bottom:.45rem;color:var(--tapps-biru-teks)}
  .tapps-m-fab{position:absolute;top:-1.15rem;left:50%;margin-left:-1.6rem;display:flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;border-radius:999px;background:linear-gradient(135deg,#1a4fa0 0%,#0f2d5c 100%);color:#fff;border:3px solid var(--tapps-permukaan);box-shadow:0 6px 16px -4px rgba(26,79,160,.6);transition:transform .15s ease}
  .tapps-m-tab-menu:active .tapps-m-fab{transform:scale(.93)}
  .tapps-m-fab svg{width:1.5rem;height:1.5rem}
  .fi-main{padding-bottom:calc(var(--tapps-nav-tinggi) + env(safe-area-inset-bottom,0px) + 1.75rem)!important}

  /* Isi lembar menu */
  .tapps-menu-user{display:flex;align-items:center;gap:.7rem;padding:.35rem 0 .8rem;border-bottom:1px solid var(--tapps-garis-kartu)}
  .tapps-menu-user-teks{min-width:0}
  .tapps-menu-user-nama{font-weight:700;font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tapps-menu-user-sub{font-size:.78rem;color:var(--tapps-teks-2)}
  .tapps-menu-grup{margin-top:.9rem}
  .tapps-menu-grup-judul{margin-bottom:.5rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tapps-teks-2)}
  .tapps-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
  .tapps-menu-item{display:flex;flex-direction:column;align-items:center;gap:.3rem;min-height:5rem;padding:.65rem .3rem .55rem;border-radius:14px;background:rgba(83,101,125,.06);border:1px solid var(--tapps-garis-kartu);text-align:center;color:var(--tapps-teks)}
  .tapps-menu-item.tapps-aktif{background:var(--tapps-biru-muda);border-color:var(--tapps-biru-teks)}
  .tapps-menu-ikon{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;color:var(--tapps-biru-teks)}
  .tapps-menu-ikon svg{width:1.45rem;height:1.45rem}
  .tapps-menu-label{font-size:.74rem;font-weight:600;line-height:1.2;overflow-wrap:anywhere}
  .tapps-menu-induk{font-size:.62rem;color:var(--tapps-teks-2);line-height:1.15}
  .tapps-menu-keluar{margin-top:1rem}
  .tapps-menu-keluar button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:2.75rem;border-radius:999px;border:1px solid rgba(217,45,32,.35);color:#c0271c;font-size:.88rem;font-weight:600}
  .dark .tapps-menu-keluar button{color:#fca5a5;border-color:rgba(252,165,165,.35)}
  .tapps-menu-keluar svg{width:1.2rem;height:1.2rem}

  /* Kartu & tombol HP */
  .fi-section,.fi-ta-ctn{border-radius:16px;box-shadow:0 0 0 1px var(--tapps-garis-kartu),0 1px 3px rgba(11,28,48,.06)!important}
  .tapps-kpi{border-color:var(--tapps-garis-kartu)}
  .fi-btn{border-radius:999px}

  /* Kotak cari 16px supaya iOS tidak memperbesar halaman; chip status bergeser mendatar sampai tepi layar */
  .tapps-wo-cari{max-width:none}
  .tapps-wo-cari input{font-size:1rem}
  .tapps-chip-baris{flex-wrap:nowrap;overflow-x:auto;margin-inline:-1rem;padding-inline:1rem;padding-block:.1rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tapps-chip-baris::-webkit-scrollbar{display:none}
  .tapps-wo-grid{gap:.7rem}
  /* Kartu WO di dalam bagian Dashboard: padding bagian dirapatkan supaya kartu tidak sempit */
  .fi-section-content:has(>.tapps-wo-grid){padding:.75rem}
}

/* Semua transisi mati bila pengguna meminta kurangi gerakan */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
