:root{ --bg:#0b0f14; --panel:#0f1621; --ink:#e6edf3; --muted:#9fb3c8; --teal:#20c997; --border:rgba(255,255,255,.10);}
body{ background:var(--bg); color:var(--ink); }
.navbar{ background:#081018; border-bottom:1px solid var(--border); }
.card{ background:var(--panel); border:1px solid var(--border); border-radius:18px; }
.table{ --bs-table-bg:transparent; }
.table td,.table th{ border-top-color:rgba(255,255,255,.08); }
.table thead th{ border-bottom-color:rgba(255,255,255,.12); color:var(--muted); font-weight:700; }
.form-control,.form-select{ background:#0b1220; color:var(--ink); border-color:rgba(255,255,255,.14); border-radius:14px; }
.form-control:focus,.form-select:focus{ box-shadow:none; border-color:var(--teal); }
.btn-teal{ background:var(--teal); border-color:var(--teal); color:#062a23; font-weight:900; border-radius:14px; }
.btn-teal:hover{ filter:brightness(.95); color:#062a23; }
.badge-soft{ background:rgba(32,201,151,.14); color:#74ffd6; border:1px solid rgba(32,201,151,.25); border-radius:999px; }
.text-muted{ color:var(--muted)!important; }
a{ color:#7ee2c2; text-decoration:none; }
a:hover{ color:#a7ffe3; text-decoration:underline; }
.thumb{ width:72px; height:72px; object-fit:cover; border-radius:14px; border:1px solid rgba(255,255,255,.12); background:#0b1220; }
.gallery-thumb{ width:150px; height:150px; object-fit:cover; border-radius:16px; border:1px solid rgba(255,255,255,.12); background:#0b1220; }
.kpi{ font-size:2.1rem; font-weight:900; letter-spacing:-.02em; }
.code{ font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace; }


.actionbar{
  position: sticky;
  top: 62px;
  z-index: 1020;
  backdrop-filter: blur(10px);
  background: rgba(11,15,20,.72);
  border: 1px solid var(--border);
  border-radius: 18px;
}
.card-car{ transition: transform .08s ease; }
.card-car:active{ transform: scale(.99); }
.modal-fullscreen .modal-content{ background: rgba(8,12,18,.98); color: var(--ink); }
.viewer-img{
  width: 100%;
  height: 70vh;
  object-fit: contain;
  background: #05080c;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
}
.inline-pill{
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.15rem .55rem; border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(15,22,33,.65);
  font-size:.85rem;
}
.inline-pill button{
  border:none; background:transparent; color:inherit; padding:0 .2rem;
}
.table thead th{ white-space:nowrap; }
