/* ============================================================
   fix.css — pemulihan komponen yang kehilangan gaya
   1) chip akun header   2) halaman Akun Saya   3) kalender .avc
   4) kartu villa .villa-card (dipakai favorit & villa populer)
   ============================================================ */

/* ---------- ukuran ikon dasar ---------- */
.i{width:18px;height:18px;flex:none}
.i-lg{width:22px;height:22px;flex:none}

/* ---------- 1. chip akun di header ---------- */
.user-chip{
  display:inline-flex;align-items:center;gap:8px;
  height:42px;padding:4px 11px 4px 4px;
  background:#fff;border:1px solid var(--line);border-radius:999px;
  cursor:pointer;font:inherit;line-height:1;transition:border-color .15s,box-shadow .15s,background .15s;
}
.user-chip:hover{border-color:#bfdccf;box-shadow:0 6px 16px -10px rgba(8,57,44,.45)}
.user-chip .user-avatar{width:32px;height:32px;font-size:11px}
.user-chip>span:nth-child(2){
  display:flex;flex-direction:column;line-height:1.16;text-align:left;min-width:0;
}
.user-chip-name{
  font-size:11.8px;font-weight:800;color:var(--text);
  max-width:118px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.user-chip-role{font-size:9.8px;font-weight:600;color:var(--muted);letter-spacing:.01em;margin-top:1px}
.user-chip svg{width:13px;height:13px;flex:none;color:#7d948a}
.user-menu{position:relative;display:inline-flex}

/* ---------- 2. halaman Akun Saya ---------- */
.side-menu{
  background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:8px;display:flex;flex-direction:column;gap:2px;
  position:sticky;top:14px;box-shadow:0 1px 2px rgba(16,42,34,.04);
}
.side-menu a{
  display:flex;align-items:center;gap:9px;
  padding:10px 11px;border-radius:9px;
  font-size:12.4px;font-weight:700;color:#33473d;text-decoration:none;
  transition:background .14s,color .14s;
}
.side-menu a svg{width:16px;height:16px;flex:none;color:#7d948a}
.side-menu a:hover{background:#f4faf7}
.side-menu a.active{background:var(--mint);color:var(--green-800)}
.side-menu a.active svg{color:var(--green-700)}

.stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}
.stat-strip .s{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 13px;box-shadow:0 1px 2px rgba(16,42,34,.04)}
.stat-strip .l{font-size:10.4px;font-weight:700;color:var(--muted);margin-bottom:6px}
.stat-strip .v{font-size:20px;font-weight:800;color:var(--green-900);line-height:1}
@media (max-width:760px){
  .stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .side-menu{position:static;flex-direction:row;overflow-x:auto;gap:4px;padding:6px}
  .side-menu a{white-space:nowrap;padding:8px 10px;font-size:11.4px}
}

/* ---------- 4. kartu villa klasik ---------- */
.villa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.villa-card{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(16,42,34,.04);
  transition:box-shadow .18s,transform .18s;
}
.villa-card:hover{box-shadow:0 14px 30px -20px rgba(8,57,44,.5);transform:translateY(-2px)}
.vc-media{position:relative;aspect-ratio:4/3;background:#eef4f0;overflow:hidden}
.vc-media a{display:block;height:100%}
.vc-media img{width:100%;height:100%;object-fit:cover;display:block}
.vc-media .badge{
  position:absolute;left:10px;top:10px;z-index:2;background:var(--green-700);color:#fff;
  font-size:9.6px;font-weight:700;letter-spacing:.1px;padding:4px 9px;border-radius:6px;
  box-shadow:0 2px 6px rgba(0,0,0,.16);
}
.vc-media .badge.gold,.vc-media .badge.promo{background:var(--gold);color:#42310a}
.fav-btn{
  position:absolute;right:9px;top:9px;z-index:2;width:30px;height:30px;border-radius:50%;border:0;
  background:rgba(255,255,255,.94);display:grid;place-items:center;cursor:pointer;
  color:#5d736a;box-shadow:0 2px 8px rgba(0,0,0,.14);transition:transform .14s,color .14s;
}
.fav-btn:hover{transform:scale(1.06)}
.fav-btn.on{color:#e05b4e}
.fav-btn svg{width:14px;height:14px}
.vc-body{display:flex;flex-direction:column}
.vc-name{display:block;text-decoration:none;color:var(--text);font-weight:800}
.vc-rating{display:flex;align-items:center;gap:3px;color:var(--muted)}
.vc-rating svg{width:12px;height:12px;color:#f0b429;flex:none}
.vc-rating b{color:var(--text);font-weight:800}
.vc-meta{display:flex;flex-wrap:wrap;color:var(--muted)}
.vc-meta span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.vc-meta svg{width:12px;height:12px;flex:none;opacity:.8}
.vc-foot .price{color:var(--green-900);font-weight:800}
@media (max-width:760px){
  .villa-grid{grid-template-columns:1fr!important}
}

/* ---------- 3. kalender ketersediaan (.avc) ---------- */
.avc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.avc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.avc-title b{display:block;font-size:13.2px;font-weight:800;color:var(--green-900);letter-spacing:-.1px}
.avc-title span{display:block;font-size:11px;color:var(--muted);margin-top:2px;max-width:62ch}
.avc-nav{display:flex;align-items:center;gap:6px;flex:none}
.avc-nav b{font-size:12px;font-weight:800;color:var(--green-900);min-width:118px;text-align:center;text-transform:capitalize}
.avc-nav button{
  width:30px;height:30px;border-radius:9px;border:1px solid var(--line);background:#fff;
  display:grid;place-items:center;cursor:pointer;color:#33473d;transition:.14s;
}
.avc-nav button:hover:not(:disabled){background:#f4faf7;border-color:#bfdccf}
.avc-nav button:disabled{opacity:.38;cursor:not-allowed}
.avc-nav button svg{width:14px;height:14px}

.avc-legend{display:flex;flex-wrap:wrap;gap:14px;margin:6px 0 12px;font-size:10.6px;color:var(--muted);font-weight:600}
.avc-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.avc-legend .dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}
.avc-legend .dot.green{background:#2ea97e}
.avc-legend .dot.red{background:#e0665a}
.avc-legend .dot.grey{background:#b8c3bd}

.avc-dow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:5px}
.avc-dow span{text-align:center;font-size:9.8px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#84988e}
.avc-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}

.avc-day{
  position:relative;min-height:58px;min-width:0;
  display:flex;flex-direction:column;justify-content:space-between;gap:2px;
  border:1px solid var(--line);border-radius:9px;background:#fff;
  padding:5px 6px;text-align:left;font:inherit;cursor:pointer;
  transition:border-color .12s,background .12s,transform .12s;
}
.avc-day .d{font-size:11.6px;font-weight:800;color:var(--green-900);line-height:1}
.avc-day .s{
  display:inline-flex;align-items:center;gap:3px;
  font-size:8.4px;font-weight:700;color:#8ba79b;line-height:1.2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.avc-day .s svg{width:9px;height:9px;flex:none}
.avc-day .p{font-size:9.2px;font-weight:700;color:#556b60;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.avc-day.green{background:#f2fbf6;border-color:#d3eddf}
.avc-day.green .s{color:#1f8f68}
.avc-day.red{background:#fdf1ef;border-color:#f6d8d3;cursor:not-allowed}
.avc-day.red .d{color:#b04b3f}
.avc-day.red .s{color:#c2594c}
.avc-day.closed{background:#fff8e8;border-color:#f2e2bb}
.avc-day.closed .s{color:#a8802a}
.avc-day.past{background:#f7faf8;border-color:#eef3f0;cursor:not-allowed}
.avc-day.past .d{color:#b9c7bf}
.avc-day.past .s,.avc-day.past .p{opacity:.55}
.avc-day.empty{background:transparent;border-color:transparent;cursor:default;box-shadow:none}
.avc-day.off{cursor:not-allowed}
.avc-day.inrange{background:#eaf6f0;border-color:#cbe8d8}
.avc-day.sel{border-color:var(--green-600);background:#dff2e8;box-shadow:0 0 0 2px rgba(15,122,92,.16)}
.avc-day:hover:not(.empty):not(:disabled):not(.red):not(.past){border-color:#a9d6c2;transform:translateY(-1px)}

.avc-loading,.avc-error{padding:26px 10px;text-align:center;font-size:12px;color:var(--muted)}
.avc-error{color:#b4453a}
.avc-error button{margin-left:8px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 10px;font:inherit;font-size:11px;cursor:pointer}

.avc-action{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:11px;padding:10px 11px;
  background:#f4faf7;border:1px solid #dcefe4;border-radius:10px;
}
.avc-action .txt{flex:1 1 210px;min-width:0}
.avc-action .txt b{display:block;font-size:11.6px;font-weight:800;color:var(--green-900)}
.avc-action .txt span{display:block;font-size:10.4px;color:var(--muted);margin-top:1px}
.avc-action .input{height:32px;flex:0 1 250px;font-size:11.5px}
.avc-foot{margin-top:10px;font-size:10.6px;color:var(--muted)}

.avc-mini{padding:11px}
.avc-mini .avc-day{min-height:44px;padding:4px 5px}
.avc-mini .avc-day .p{display:none}
.avc-mini .avc-day .s{font-size:7.8px}

.avc-pop{position:fixed;inset:0;z-index:400;background:rgba(6,30,23,.42);display:flex;align-items:center;justify-content:center;padding:16px}
.avc-pop-in{width:100%;max-width:430px;background:#fff;border-radius:16px;padding:13px;box-shadow:0 24px 60px rgba(0,0,0,.3);max-height:92vh;overflow:auto}

@media (max-width:620px){
  .avc{padding:11px}
  .avc-day{min-height:50px;padding:4px 4px}
  .avc-day .d{font-size:10.4px}
  .avc-day .s{font-size:7.6px}
  .avc-day .p{font-size:8.2px}
  .avc-dow span{font-size:8.8px}
  .avc-nav b{min-width:96px;font-size:11px}
  .avc-title b{font-size:12.4px}
}

/* ---------- footer situs tidak boleh muncul di dashboard ---------- */
body.dash-mode .site-footer,
body.dash-mode .bottom-nav{display:none!important}

/* ---------- kalender versi mobile: angka saja + warna, legenda sebagai petunjuk ---------- */
@media (max-width:560px){
  .avc-days{gap:3px}
  .avc-day{min-height:46px;padding:4px 3px!important;justify-content:flex-start}
  .avc-day .d{font-size:11px}
  .avc-day .s,.avc-day .p{display:none!important}
  .avc-dow{font-size:8.2px;letter-spacing:.02em}
  .avc-head{gap:6px}
  .avc-legend{gap:8px;font-size:9.5px;flex-wrap:wrap}
}

/* ---------- baris chart + donut berdampingan ---------- */
.dash-row{display:grid!important;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:12px;align-items:start}
@media(max-width:1000px){.dash-row{grid-template-columns:1fr}}

/* ---------- chip akun di pojok kanan atas header, samping Favorit ---------- */
body.dash-mode .user-chip{display:inline-flex!important}
body.dash-mode .header-actions>.user-menu{margin-left:2px}

/* ---------- tabel dashboard: kolom villa cukup lebar ---------- */
.table-wrap table.data{table-layout:auto}
.table-wrap table.data th:first-child,
.table-wrap table.data td:first-child{min-width:238px}
.table-wrap table.data .member{display:flex;align-items:center;gap:10px;min-width:0}
.table-wrap table.data .member img{width:58px;height:44px;flex:0 0 58px;border-radius:8px;object-fit:cover}
.table-wrap table.data .member .n{font-size:12.8px;font-weight:700;color:#0d2b22;line-height:1.3;overflow-wrap:anywhere}
.table-wrap table.data .member .d{font-size:11px;color:#6c8078;margin-top:2px;white-space:nowrap}

/* ---------- legenda donut: label kiri, angka kanan ---------- */
.donut-legend .row{display:flex;align-items:center;gap:7px;min-width:0}
.donut-legend .row i{width:8px;height:8px;border-radius:50%;flex:none;display:block}
.donut-legend .row b{margin-left:auto;font-weight:800;color:#0d2b22}

/* ---------- tabel dashboard lebih padat agar tidak terpotong ---------- */
.table-wrap table.data th,
.table-wrap table.data td{padding:9px 10px;vertical-align:middle}
.table-wrap table.data td:nth-child(2){min-width:128px}
.table-wrap table.data td:nth-child(4),
.table-wrap table.data th:nth-child(4){white-space:nowrap}
.table-wrap table.data td:last-child,
.table-wrap table.data th:last-child{white-space:nowrap}
@media(min-width:861px){
  .table-wrap table.data{font-size:11.9px}
}

/* ---------- rasio kolom dashboard: kartu kiri lebih lega ---------- */
.dash-row{grid-template-columns:minmax(0,1fr) minmax(280px,318px)!important}
@media(max-width:1000px){.dash-row{grid-template-columns:1fr!important}}

/* ---------- tabel booking muat tanpa geser di desktop ---------- */
.table-wrap table.data th,
.table-wrap table.data td{padding:8px 9px}
.table-wrap table.data th:first-child,
.table-wrap table.data td:first-child{min-width:222px}
.table-wrap table.data td:nth-child(2){min-width:112px}
.table-wrap table.data{font-size:11.6px}
.table-wrap table.data .member img{width:52px;height:40px;flex:0 0 52px}

/* ---------- tabel Villa Saya: thumbnail lebih besar, lokasi dibatasi 2 baris ---------- */
.table-wrap table.data .member img{width:72px;height:52px;flex:0 0 72px;border-radius:9px}
.table-wrap table.data th:first-child,
.table-wrap table.data td:first-child{min-width:250px}
.table-wrap table.data td:nth-child(2){padding-right:14px;line-height:1.45}

/* ---------- tabel dashboard di mobile jadi kartu (tbl-stack) ---------- */
@media (max-width:860px){
  .table-wrap{overflow:visible!important}
  .tbl-hint{display:none!important}
  table.tbl-stack{display:block!important;width:100%;min-width:0!important;border:0;background:none}
  table.tbl-stack thead{display:none!important}
  table.tbl-stack tbody{display:block}
  table.tbl-stack tr{display:block;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:0 0 10px;background:#fff;box-shadow:0 1px 2px rgba(8,57,44,.04)}
  table.tbl-stack td{display:flex!important;align-items:center;justify-content:space-between;gap:10px;border:0!important;padding:4px 0!important;font-size:12.2px;min-width:0!important;text-align:right}
  table.tbl-stack td::before{content:attr(data-label);flex:0 0 96px;text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#7a8f85}
  table.tbl-stack td:first-child{display:block!important;padding:0 0 8px!important;border-bottom:1px dashed var(--line)!important}
  table.tbl-stack td:first-child::before{display:none}
  table.tbl-stack td:first-child .member{gap:10px}
  table.tbl-stack td:last-child{justify-content:flex-end;padding-top:9px!important;border-top:1px dashed var(--line)!important;margin-top:4px}
  table.tbl-stack td:last-child::before{display:none}
  table.tbl-stack .row-actions{justify-content:flex-end;width:100%}
}

/* ---------- KPI dashboard mobile: 2 kolom agar ringkas ---------- */
@media (max-width:560px){
  .dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .dash-grid .kpi{padding:12px 12px!important;border-radius:12px}
  .dash-grid .k-label{font-size:9.4px!important;letter-spacing:.02em}
  .dash-grid .k-value{font-size:19px!important;margin-top:4px!important}
  .dash-grid .k-sub{font-size:10px!important;line-height:1.35}
  .dash-grid .k-ic{width:24px!important;height:24px!important}
}

/* ---------- reset lebar kolom global, khususkan hanya untuk tabel Villa ---------- */
.table-wrap table.data th:first-child,
.table-wrap table.data td:first-child{min-width:0}
.table-wrap table.data td:nth-child(2){min-width:0;padding-right:0;line-height:1.5}
.table-wrap table.data td:nth-child(4),
.table-wrap table.data th:nth-child(4),
.table-wrap table.data td:last-child,
.table-wrap table.data th:last-child{white-space:normal}
.table-wrap table.data .member img{width:52px;height:40px;flex:0 0 52px;border-radius:8px;object-fit:cover}

table.data.tbl-villa th:first-child,
table.data.tbl-villa td:first-child{min-width:250px}
table.data.tbl-villa td:nth-child(2){padding-right:14px}
table.data.tbl-villa .member img{width:72px;height:52px;flex:0 0 72px;border-radius:9px}
table.data.tbl-villa td:nth-child(3),
table.data.tbl-villa td:last-child,
table.data.tbl-villa th:last-child{white-space:nowrap}

/* tabel di kartu dashboard: total & status jangan pecah baris */
.dash-card table.data td:nth-child(4),
.dash-card table.data td:nth-child(5){white-space:nowrap}

/* kode pesanan jangan pecah baris */
.table-wrap table.data td:first-child{white-space:nowrap}

/* ================= MENU AKUN (dropdown header) ================= */
.header-actions{overflow:visible!important}
.user-menu .dropdown{
  position:absolute;top:calc(100% + 10px);right:0;min-width:198px;
  display:flex;flex-direction:column;gap:2px;
  background:#fff;border:1px solid #e2ece7;border-radius:14px;
  box-shadow:0 22px 44px -22px rgba(8,57,44,.45),0 2px 8px -4px rgba(8,57,44,.12);
  padding:6px;z-index:95;
}
.user-menu .dropdown.hidden{display:none}
.user-menu .dropdown a,
.user-menu .dropdown button{
  display:flex;align-items:center;gap:9px;width:100%;
  padding:9px 11px;border:0;border-radius:10px;background:none;
  font:600 12.4px/1.2 'Plus Jakarta Sans',system-ui,sans-serif;color:#1d352b;
  text-align:left;text-decoration:none;cursor:pointer;white-space:nowrap;
}
.user-menu .dropdown a:hover,.user-menu .dropdown button:hover{background:#f0f7f3;color:var(--green-800,#0d5c46)}
.user-menu .dropdown a svg,.user-menu .dropdown button svg{width:15px;height:15px;flex:none;color:#6f8d80}
.user-menu .dropdown hr{border:0;border-top:1px solid #e9f0ec;margin:5px 3px}
.user-menu .dropdown #logoutBtn{color:#b23b2e}
.user-menu .dropdown #logoutBtn svg{color:#c9695c}
.user-menu .dropdown #logoutBtn:hover{background:#fdf1ef;color:#a3311f}
/* chip saat menu terbuka */
.user-menu:has(.dropdown:not(.hidden)) .user-chip{border-color:#bfdccf;box-shadow:0 6px 16px -10px rgba(8,57,44,.45)}
.user-menu:has(.dropdown:not(.hidden)) .user-chip>svg{transform:rotate(180deg)}
.user-menu .user-chip>svg{transition:transform .18s ease}

/* ================= DROPDOWN STATUS DI KOLOM AKSI ================= */
.table-wrap table.data select.sort-select{
  -webkit-appearance:none;appearance:none;
  width:100%;max-width:116px;margin:0 auto;
  padding:5px 22px 5px 10px!important;
  border:1px solid #d9e7e0;border-radius:999px;
  background:#f7fbf9 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236f8d80' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 7px center;
  background-size:11px 11px;
  font:700 10.5px/1.35 'Plus Jakarta Sans',system-ui,sans-serif;color:#1d3a2f;
  cursor:pointer;text-align:left;text-align-last:center;
}
.table-wrap table.data select.sort-select:hover{border-color:#b6d8c8;background-color:#eef7f3}
.table-wrap table.data select.sort-select:focus{outline:2px solid rgba(23,138,104,.28);outline-offset:1px;border-color:#7fc0a6}
.table-wrap table.data td:last-child:has(select.sort-select){width:124px}
.table-wrap table.data select.sort-select option{font-size:12.5px;font-weight:600;background:#fff;color:#1d352b}
@media (max-width:860px){
  .user-menu .dropdown{min-width:190px;right:-4px}
}

/* ---------- select filter di toolbar (Semua status / sumber) biar konsisten pill ---------- */
select.sort-select{
  -webkit-appearance:none;appearance:none;
  padding:7px 28px 7px 12px;
  border:1px solid #d9e7e0;border-radius:999px;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236f8d80' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 9px center;
  background-size:11px 11px;
  font:600 11.6px/1.3 'Plus Jakarta Sans',system-ui,sans-serif;color:#1d3a2f;cursor:pointer;
}
select.sort-select:hover{border-color:#b6d8c8;background-color:#f7fbf9}
select.sort-select:focus{outline:2px solid rgba(23,138,104,.26);outline-offset:1px;border-color:#7fc0a6}

/* ---------- warna pill status di kolom Aksi ---------- */
.table-wrap table.data select.sort-select:has(option[value="Menunggu"]:checked){background-color:#fff8e8;border-color:#f0dcae;color:#8a6212}
.table-wrap table.data select.sort-select:has(option[value="Dikonfirmasi"]:checked){background-color:#eef8f2;border-color:#bfe0cc;color:#136b47}
.table-wrap table.data select.sort-select:has(option[value="Selesai"]:checked){background-color:#eef2f8;border-color:#c9d6e8;color:#2a4b74}
.table-wrap table.data select.sort-select:has(option[value="Dibatalkan"]:checked){background-color:#fdf0ee;border-color:#f0cbc3;color:#a5342a}

/* ---------- warna pill status kolom Aksi (by data-st) ---------- */
.table-wrap table.data select.sort-select[data-st="Menunggu"]{background-color:#fff8e8!important;border-color:#efd9a8!important;color:#8a6212!important}
.table-wrap table.data select.sort-select[data-st="Dikonfirmasi"]{background-color:#ecf8f1!important;border-color:#b9dfc8!important;color:#116447!important}
.table-wrap table.data select.sort-select[data-st="Selesai"]{background-color:#eef2f9!important;border-color:#c6d4e8!important;color:#2a4b74!important}
.table-wrap table.data select.sort-select[data-st="Dibatalkan"]{background-color:#fdf0ee!important;border-color:#efc9c1!important;color:#a5342a!important}

/* ---------- kartu tabel mobile: baris aksi ikut berlabel & tidak meluber ---------- */
@media (max-width:860px){
  table.tbl-stack td:last-child{justify-content:space-between!important}
  table.tbl-stack td:last-child::before{display:block!important;content:attr(data-label)}
  table.tbl-stack td{overflow-wrap:anywhere}
  table.tbl-stack td>span,table.tbl-stack td>b{min-width:0}
}

@media (max-width:860px){
  table.tbl-stack td:last-child{white-space:nowrap!important}
  table.tbl-stack td:last-child select.sort-select{flex:0 0 auto!important;width:120px!important;max-width:120px!important}
  table.tbl-stack td:last-child .row-actions{flex:0 0 auto}
  table.tbl-stack td{white-space:normal}
  table.tbl-stack td>*{white-space:normal}
}

/* kartu mobile: sel dua-baris (nama+telepon, tanggal+malam) rata kanan rapi */
@media (max-width:860px){
  table.tbl-stack td:nth-child(2),table.tbl-stack td:nth-child(4){
    display:grid!important;grid-template-columns:94px minmax(0,1fr);column-gap:10px;
    text-align:right;align-items:center;row-gap:1px;
  }
  table.tbl-stack td:nth-child(2)::before,table.tbl-stack td:nth-child(4)::before{
    grid-column:1;grid-row:1/span 3;align-self:center;
  }
  table.tbl-stack td .d{font-size:10.8px;color:#7b9186;line-height:1.35}
}

/* ---------- jaga-jaga: tidak boleh ada chip akun kedua di dashboard ---------- */
body.dash-mode .dash-account,
body.dash-mode .dash-user,
body.dash-mode .dacc-tx{display:none!important}
