:root{
  --bg:#eef2f8;
  --bg-soft:#f8fafc;
  --text:#1f2937;
  --heading:#0f172a;
  --muted:#64748b;
  --card:#ffffff;
  --card-elevated:#ffffff;
  --border:#e2e8f0;
  --border-strong:#cbd5e1;
  --input-bg:#ffffff;
  --input-text:#0f172a;
  --table-bg:#ffffff;
  --table-head:#f8fafc;
  --table-stripe:#f8fafc;
  --table-hover:#eef6ff;
  --primary:#2563eb;
  --primary-strong:#1d4ed8;
  --primary-soft:#eff6ff;
  --shadow:0 12px 30px rgba(15,23,42,.08);
  --shadow-soft:0 8px 18px rgba(15,23,42,.05);
}
html[data-theme='dark']{
  --bg:#07111f;
  --bg-soft:#0b1220;
  --text:#e5e7eb;
  --heading:#f8fafc;
  --muted:#94a3b8;
  --card:#111827;
  --card-elevated:#0f172a;
  --border:#263244;
  --border-strong:#334155;
  --input-bg:#0b1220;
  --input-text:#f8fafc;
  --table-bg:#111827;
  --table-head:#0b1220;
  --table-stripe:#0f172a;
  --table-hover:#172033;
  --primary:#3b82f6;
  --primary-strong:#60a5fa;
  --primary-soft:#102345;
  --shadow:0 16px 36px rgba(0,0,0,.28);
  --shadow-soft:0 10px 24px rgba(0,0,0,.22);
}

html{min-height:100%}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 12% -10%,rgba(37,99,235,.13),transparent 34%),
    linear-gradient(180deg,var(--bg) 0%,var(--bg-soft) 100%)!important;
  color:var(--text)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html[data-theme='dark']{
  background:
    radial-gradient(circle at 16% -8%,rgba(59,130,246,.18),transparent 34%),
    radial-gradient(circle at 88% 4%,rgba(14,165,233,.08),transparent 28%),
    linear-gradient(180deg,#07111f 0%,#0b1220 100%)!important;
}

h1,h2,h3,h4,h5,h6{color:var(--heading);font-weight:750;letter-spacing:-.02em}
a{color:var(--primary);text-decoration:none}
a:hover{color:var(--primary-strong);text-decoration:none}
.text-muted{color:var(--muted)!important}
.bg-white{background-color:var(--card)!important;color:var(--text)!important}
.container{max-width:1320px}

/* Navbar */
.app-navbar{
  background:rgba(255,255,255,.92)!important;
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(148,163,184,.28)!important;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
}
html[data-theme='dark'] .app-navbar{
  background:rgba(17,24,39,.92)!important;
  border-bottom-color:rgba(51,65,85,.75)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.22);
}
.app-logo{height:32px;max-width:150px;object-fit:contain}
.brand-mark{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;box-shadow:0 10px 20px rgba(37,99,235,.22)}
.brand-title{font-weight:800;letter-spacing:-.02em;color:var(--heading)}
.app-nav{gap:.25rem}
.app-nav .nav-link{display:flex;align-items:center;gap:.45rem;border-radius:999px;padding:.55rem .85rem!important;font-weight:650;color:var(--muted)!important;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
.app-nav .nav-link:hover{background:var(--primary-soft);color:var(--primary-strong)!important;transform:translateY(-1px)}
.app-nav .nav-link.active{background:var(--primary);color:#fff!important;box-shadow:0 10px 18px rgba(37,99,235,.22)}
.navbar-actions{padding-left:.5rem}
.user-chip{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--border);background:var(--card-elevated);color:var(--text);border-radius:999px;padding:.45rem .75rem;font-weight:650;font-size:.9rem;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btn-nav-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border);background:var(--card-elevated);color:var(--text)}
.btn-nav-icon:hover{background:var(--table-hover);border-color:var(--border-strong);color:var(--heading)}
.btn-nav-logout{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;border:1px solid #fecaca;background:#fff;color:#b91c1c;font-weight:650;padding:.45rem .75rem}
.btn-nav-logout:hover{background:#fef2f2;color:#991b1b;border-color:#fca5a5}
html[data-theme='dark'] .btn-nav-logout{background:#1f1215;border-color:#7f1d1d;color:#fca5a5}
.navbar-toggler{border:1px solid var(--border-strong);border-radius:12px;color:var(--text)}
html[data-theme='dark'] .navbar-toggler-icon{filter:invert(1) grayscale(1)}

/* Core surfaces */
.page-hero{
  background:linear-gradient(135deg,var(--card) 0%,var(--card-elevated) 100%);
  border:1px solid var(--border);
  border-radius:18px;
  padding:1.25rem 1.5rem;
  box-shadow:var(--shadow-soft);
  margin-bottom:1rem;
}
.section-card,.card{
  background:var(--card)!important;
  color:var(--text)!important;
  border:1px solid var(--border)!important;
  border-radius:16px!important;
  box-shadow:var(--shadow-soft);
}
.section-card{padding:1rem 1.25rem}
.card-stat{position:relative;overflow:hidden;border-left:0!important;min-height:128px}
.card-stat::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--primary),#0ea5e9)}
.card-stat .card-body{position:relative;padding:1.15rem 1.25rem}
.card-stat h6{font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.45rem}
.card-stat h2{font-size:2.2rem;margin:0;color:var(--heading)}
.stat-icon{width:42px;height:42px;border-radius:14px;background:var(--primary-soft);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem}
.form-grid-block{background:var(--card-elevated)!important;border:1px solid var(--border);border-radius:14px;padding:14px;color:var(--text)}
.subsection-title{font-size:1rem;font-weight:750;color:var(--heading);padding:.7rem .95rem;border-left:4px solid var(--primary);background:var(--primary-soft);border-radius:12px}
.required-dot{color:#dc2626}

/* Bootstrap form hardening for dark theme */
.form-label{font-weight:650;color:var(--heading)}
.form-control,.form-select,.input-group-text{
  background-color:var(--input-bg)!important;
  color:var(--input-text)!important;
  border-color:var(--border)!important;
  box-shadow:none!important;
}
.form-control::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)}
.form-control:focus,.form-select:focus{
  border-color:var(--primary)!important;
  box-shadow:0 0 0 .22rem color-mix(in srgb,var(--primary) 20%,transparent)!important;
}
html[data-theme='dark'] .form-select{
  --bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23cbd5e1' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}
.form-check-input{background-color:var(--input-bg);border-color:var(--border-strong)}
.form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}

/* Tables: fixes white columns in dark theme */
.table{
  --bs-table-color:var(--text);
  --bs-table-bg:var(--table-bg);
  --bs-table-border-color:var(--border);
  --bs-table-striped-color:var(--text);
  --bs-table-striped-bg:var(--table-stripe);
  --bs-table-hover-color:var(--text);
  --bs-table-hover-bg:var(--table-hover);
  color:var(--text)!important;
  border-color:var(--border)!important;
  margin-bottom:0;
}
.table > :not(caption) > * > *{background-color:var(--bs-table-bg)!important;color:var(--bs-table-color)!important;border-bottom-color:var(--bs-table-border-color)!important;box-shadow:none!important;vertical-align:middle}
.table-striped > tbody > tr:nth-of-type(odd) > *{background-color:var(--bs-table-striped-bg)!important;color:var(--bs-table-striped-color)!important}
.table-hover > tbody > tr:hover > *{background-color:var(--bs-table-hover-bg)!important;color:var(--bs-table-hover-color)!important}
.table thead th,.table tbody tr:first-child th{
  background:var(--table-head)!important;
  color:var(--muted)!important;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:750;
  border-bottom:1px solid var(--border)!important;
}
.table-modern thead th{background:var(--table-head)!important;color:var(--muted)!important}
.table-responsive.section-card{padding:0!important;overflow:hidden}
.table-responsive.section-card .table{border-radius:16px;overflow:hidden}

/* Buttons, badges and alerts */
.btn{font-weight:650;border-radius:10px}
.btn-primary{background:var(--primary);border-color:var(--primary)}
.btn-primary:hover{background:var(--primary-strong);border-color:var(--primary-strong)}
.btn-secondary,.btn-outline-secondary{border-color:var(--border-strong)}
html[data-theme='dark'] .btn-secondary{background:#334155;border-color:#475569;color:#f8fafc}
html[data-theme='dark'] .btn-outline-secondary{color:#cbd5e1;border-color:#475569}
html[data-theme='dark'] .btn-outline-secondary:hover{background:#334155;color:#fff}
.btn-save-right{text-align:right}
.badge.text-bg-primary{background:var(--primary)!important;color:#fff!important}
.alert{border-radius:14px;border-color:var(--border);box-shadow:var(--shadow-soft)}
html[data-theme='dark'] .alert-info{background:#0b2942;color:#bfdbfe;border-color:#1e3a5f}
html[data-theme='dark'] .alert-success{background:#062d1c;color:#bbf7d0;border-color:#14532d}
html[data-theme='dark'] .alert-warning{background:#33250a;color:#fde68a;border-color:#854d0e}
html[data-theme='dark'] .alert-danger{background:#3a1014;color:#fecaca;border-color:#7f1d1d}

.status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border-radius:999px;font-size:.82rem;font-weight:700;white-space:nowrap}
.st-hazirlaniyor{background:#fff7ed;color:#9a3412}.st-gonderildi{background:#eff6ff;color:#1d4ed8}.st-yolda{background:#ecfeff;color:#0f766e}.st-teslim_edildi,.st-teslim_alindi{background:#ecfdf5;color:#166534}.st-iptal{background:#fef2f2;color:#b91c1c}
html[data-theme='dark'] .st-hazirlaniyor{background:#3b260d;color:#fdba74}html[data-theme='dark'] .st-gonderildi{background:#102345;color:#93c5fd}html[data-theme='dark'] .st-yolda{background:#0b2d31;color:#67e8f9}html[data-theme='dark'] .st-teslim_edildi,html[data-theme='dark'] .st-teslim_alindi{background:#052e1b;color:#86efac}html[data-theme='dark'] .st-iptal{background:#3b1115;color:#fca5a5}
.toggle-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .55rem;border-radius:999px;font-size:.8rem;font-weight:700}.toggle-on{background:#dcfce7;color:#166534}.toggle-off{background:#e5e7eb;color:#334155}
html[data-theme='dark'] .toggle-off{background:#1f2937;color:#cbd5e1}
.barcode-chip{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:.86rem;color:var(--text);background:var(--table-stripe);border:1px solid var(--border);border-radius:999px;padding:.18rem .45rem;display:inline-flex;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


/* Toggle switch polish */
.active-toggle{min-height:42px;display:flex;align-items:center;gap:.55rem;margin:0;padding:.45rem .55rem;border:1px solid var(--border);border-radius:14px;background:var(--card);color:var(--text);font-weight:650}
.active-toggle .form-check-input{width:2.75rem;height:1.45rem;margin-top:0;cursor:pointer;border-color:var(--border-strong);background-color:var(--muted);box-shadow:none!important}
.active-toggle .form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}
.active-toggle .form-check-input:focus{border-color:var(--primary);box-shadow:0 0 0 .18rem color-mix(in srgb,var(--primary) 18%,transparent)!important}
html[data-theme='dark'] .active-toggle{background:var(--card-elevated);border-color:var(--border)}

/* Detail/list polish */
ul{color:var(--text)}
.detail-list{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.detail-list li{display:flex;gap:.45rem;align-items:flex-start;color:var(--text)}
.detail-list li strong{min-width:132px;color:var(--muted);font-weight:700}
.timeline-list{list-style:none;padding:0;margin:0;display:grid;gap:.65rem}
.timeline-list li{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:.75rem .9rem;color:var(--text)}
.action-bar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}

/* Swap button */
.swap-row{display:flex;align-items:center;justify-content:center;min-height:116px;padding:18px 0;margin:0}
.swap-pro{width:78px;height:78px;border-radius:999px;border:1px solid var(--border);position:relative;background:var(--card);box-shadow:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.swap-pro:hover{transform:rotate(180deg) scale(1.03);border-color:var(--primary);background:var(--card-elevated);box-shadow:none}
.swap-pro::before{content:"";position:absolute;inset:0;background:center/48px 48px no-repeat url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M8 3l-4 4h3v10h2V7h3z' fill='%231e3a8a'/><path d='M16 21l4-4h-3V7h-2v10h-3z' fill='%2360a5fa'/></svg>")}
html[data-theme='dark'] .swap-pro::before{filter:brightness(1.4)}
@media (max-width:768px){.swap-row{min-height:94px;padding:10px 0}.swap-pro{width:64px;height:64px}.swap-pro::before{background-size:40px 40px}}

/* Scanner */
.scanner-card{border:1px solid #dbeafe;background:linear-gradient(135deg,#f8fafc,#eff6ff);border-radius:16px;padding:14px;color:var(--text)}
.scanner-frame{position:relative;width:min(100%,480px);background:#020617;border-radius:14px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 12px 24px rgba(15,23,42,.16)}
.scanner-video{display:block;width:100%;max-width:none;min-height:260px;object-fit:cover;border-radius:14px;background:#000}
.scanner-target{position:absolute;inset:20%;border:2px solid rgba(34,197,94,.9);border-radius:14px;box-shadow:0 0 0 999px rgba(2,6,23,.22)}
.scanner-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#dbeafe;color:#1d4ed8}
.scanner-status{display:inline-flex;align-items:center;border-radius:999px;padding:.35rem .65rem;background:#e2e8f0;color:#334155;font-weight:650}
.scanner-status-success{background:#dcfce7;color:#166534}
.scanner-status-info{background:#dbeafe;color:#1d4ed8}
html[data-theme='dark'] .scanner-card{background:linear-gradient(135deg,#0f172a,#111827);border-color:#334155}

.quick-scan-card{
  display:flex;
  flex-direction:column;
  gap:.8rem;
  border:1px solid var(--border);
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--card)),var(--card-elevated));
  border-radius:18px;
  padding:14px;
  box-shadow:var(--shadow-soft);
}
.quick-scan-copy{display:flex;flex-direction:column;gap:.18rem;color:var(--text)}
.quick-scan-copy strong{font-weight:900;font-size:1rem}
.quick-scan-copy small{color:var(--muted);line-height:1.35}
.quick-scan-card .btn{min-height:52px;border-radius:15px;font-weight:900;letter-spacing:.01em}
@media (max-width: 991.98px){
  #scanner_box{scroll-margin-top:112px}
  .scanner-card{margin-top:.2rem}
  .scanner-frame{width:100%}
  .scanner-video{min-height:300px}
  .scanner-info #scanner_close{width:100%;justify-content:center;min-height:46px}
}
@media (max-width: 575.98px){
  .quick-scan-card{margin-top:-.25rem;padding:12px;border-radius:16px}
  .scanner-video{min-height:280px}
}


/* Login */
.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:radial-gradient(circle at top,#dbeafe 10%,#f8fafc 60%)}
.login-card{max-width:460px;width:100%;border:none!important;border-radius:22px!important;box-shadow:0 20px 50px rgba(15,23,42,.16)}
.login-card h2{font-weight:800}

/* Print styles - compact, ink friendly A4 */
.print-body{
  background:#eef2f7!important;
  color:#000!important;
  font-family:Arial,Helvetica,sans-serif;
}
.print-toolbar{
  display:flex;
  gap:.5rem;
  align-items:center;
  justify-content:center;
  padding:12px;
  background:#0f172a;
  position:sticky;
  top:0;
  z-index:20;
}
.print-page.basic-print-page{
  position:relative;
  width:210mm;
  min-height:297mm;
  margin:12px auto;
  padding:8mm;
  background:#fff;
  color:#000;
  box-shadow:0 18px 45px rgba(15,23,42,.16);
  overflow:hidden;
}
.label-section{
  position:relative;
  border:1px solid #000;
  padding:6mm;
  margin-bottom:6mm;
  background:#fff;
  color:#000;
  page-break-inside:avoid;
  break-inside:avoid;
}
.label-section.has-barcode{
  padding-right:42mm;
  min-height:48mm;
}
.label-title{
  font-size:16pt;
  line-height:1.05;
  font-weight:800;
  margin-bottom:4mm;
  border-bottom:1px solid #000;
  padding-bottom:2mm;
  color:#000;
}
.label-section.has-barcode .label-title{
  margin-right:-34mm;
  padding-right:36mm;
}
.label-line{
  font-size:12pt;
  margin-bottom:2.4mm;
  line-height:1.32;
  color:#000;
  word-break:break-word;
}
.label-small{
  font-size:10pt;
  line-height:1.35;
}
.label-small>strong{
  display:block;
  font-size:10.5pt;
  margin-bottom:1.4mm;
  color:#000;
}
.label-small .label-line{
  font-size:10pt;
  margin-bottom:1.6mm;
}
.print-barcode-box{
  position:absolute;
  top:5mm;
  right:5mm;
  width:28mm;
  text-align:center;
  z-index:2;
  background:#fff;
  padding:0;
  color:#000;
}
.print-barcode-box img{
  width:25mm;
  height:25mm;
  display:block;
  margin:0 auto .8mm auto;
}
.print-barcode-text{
  font-size:6.6pt;
  line-height:1.15;
  font-family:Arial,Helvetica,sans-serif;
  font-weight:700;
  word-break:break-all;
  color:#000;
}

.cargo-info-section.has-info-barcode{
  padding-right:42mm;
  min-height:38mm;
}
.cargo-info-section.has-info-barcode>strong{
  padding-right:34mm;
}
.print-barcode-info-box{
  top:5mm;
  right:5mm;
}
@media (max-width: 900px){
  .cargo-info-section.has-info-barcode{padding-right:16px;padding-top:42mm;min-height:auto}
  .cargo-info-section.has-info-barcode>strong{padding-right:0}
  .print-barcode-info-box{top:12px;right:16px;width:32mm}
}
@media (max-width: 900px){
  .print-page.basic-print-page{width:100%;min-height:auto;margin:0;padding:16px;box-shadow:none}
  .label-section.has-barcode{padding-right:16px;min-height:auto;padding-top:42mm}
  .label-section.has-barcode .label-title{margin-right:0;padding-right:0}
  .print-barcode-box{top:12px;right:16px;width:32mm}
}
@media print{
  @page{size:A4;margin:8mm}
  html,body{width:100%;height:auto;background:#fff!important;color:#000!important}
  body{margin:0!important;background:#fff!important;color:#000!important;font-family:Arial,Helvetica,sans-serif!important;-webkit-print-color-adjust:economy;print-color-adjust:economy}
  .no-print,.app-navbar,.action-bar{display:none!important}
  .container{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
  .print-page.basic-print-page{
    position:relative!important;
    width:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#000!important;
    overflow:visible!important;
    page-break-after:avoid!important;
    break-after:avoid!important;
  }
  .label-section{
    border:1px solid #000!important;
    padding:6mm!important;
    margin-bottom:6mm!important;
    background:#fff!important;
    color:#000!important;
  }
  .label-section.has-barcode{
    padding-right:42mm!important;
    min-height:48mm!important;
  }
  .label-title{
    font-size:16pt!important;
    font-weight:800!important;
    margin-bottom:4mm!important;
    border-bottom:1px solid #000!important;
    padding-bottom:2mm!important;
    color:#000!important;
  }
  .label-section.has-barcode .label-title{
    margin-right:-34mm!important;
    padding-right:36mm!important;
  }
  .label-line{
    font-size:12pt!important;
    margin-bottom:2.4mm!important;
    line-height:1.32!important;
    color:#000!important;
  }
  .label-small{font-size:10pt!important;line-height:1.35!important}
  .label-small>strong{display:block!important;font-size:10.5pt!important;margin-bottom:1.4mm!important;color:#000!important}
  .label-small .label-line{font-size:10pt!important;margin-bottom:1.6mm!important}
  .cargo-info-section.has-info-barcode{
    padding-right:42mm!important;
    min-height:38mm!important;
  }
  .cargo-info-section.has-info-barcode>strong{
    padding-right:34mm!important;
  }
  .print-barcode-info-box{
    top:5mm!important;
    right:5mm!important;
  }
  .print-barcode-box{
    top:5mm!important;
    right:5mm!important;
    width:28mm!important;
    padding:0!important;
    background:#fff!important;
    color:#000!important;
  }
  .print-barcode-box img{width:25mm!important;height:25mm!important;margin:0 auto .8mm auto!important}
  .print-barcode-text{font-size:6.6pt!important;line-height:1.15!important;color:#000!important;font-weight:700!important}
}


/* Users / senders management */
.row-actions{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}
.row-actions form{margin:0}
.sender-profile-table td{max-width:280px}
.sender-address-preview{display:inline-block;max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.badge.text-bg-secondary{background:var(--table-stripe)!important;color:var(--text)!important;border:1px solid var(--border)!important}
.btn-outline-primary{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 65%,var(--border))}
.btn-outline-primary:hover{background:var(--primary);border-color:var(--primary);color:#fff}
.btn-outline-danger{border-color:#fecaca;color:#b91c1c;background:transparent}
.btn-outline-danger:hover{background:#dc2626;border-color:#dc2626;color:#fff}
html[data-theme='dark'] .btn-outline-danger{border-color:#7f1d1d;color:#fca5a5}
html[data-theme='dark'] .btn-outline-danger:hover{background:#991b1b;border-color:#991b1b;color:#fff}
html[data-theme='dark'] .btn:disabled{opacity:.45;color:#94a3b8;border-color:#334155;background:#111827}

/* Fix active toggle alignment inside narrow form cards */
.active-toggle.form-check,
.active-toggle.form-switch{
    padding-left:.55rem!important;
    box-sizing:border-box;
    min-width:0;
    justify-content:center;
}
.active-toggle .form-check-input{
    float:none!important;
    margin-left:0!important;
    flex:0 0 auto;
}
.active-toggle span{
    white-space:nowrap;
    line-height:1;
}
@media (max-width: 1199.98px){
    .active-toggle{justify-content:flex-start;}
}


.status-switch-form{display:inline-flex;align-items:center;margin:0;width:92px;min-width:92px;max-width:92px}
.inline-active-toggle{display:inline-flex!important;width:92px!important;min-width:92px!important;max-width:92px!important;min-height:34px!important;padding:.28rem .55rem!important;border-radius:999px!important;gap:.45rem!important;justify-content:flex-start!important;background:var(--card-elevated);white-space:nowrap}
.inline-active-toggle .form-check-input{width:2.35rem!important;min-width:2.35rem!important;height:1.18rem!important;margin:0!important}
.inline-active-toggle span{font-size:.82rem;font-weight:800;white-space:nowrap;min-width:32px}
.inline-active-toggle.is-disabled{opacity:.7;cursor:not-allowed}
.inline-active-toggle.is-disabled .form-check-input{cursor:not-allowed}
.form-active-toggle{max-width:240px;justify-content:flex-start!important}
html[data-theme='dark'] .inline-active-toggle{background:#0f172a;border-color:#334155;color:#e5e7eb}

/* Mobile layout hardening */
@media screen and (max-width: 991.98px){
  .app-navbar{margin-bottom:1rem!important}
  .app-navbar .container-fluid{padding-left:14px!important;padding-right:14px!important}
  .navbar-collapse{padding-top:.9rem}
  .app-nav{gap:.45rem}
  .app-nav .nav-link{border-radius:14px;padding:.75rem .9rem!important}
  .navbar-actions{padding:.85rem 0 0 0;border-top:1px solid var(--border);margin-top:.85rem;flex-wrap:wrap;align-items:stretch!important}
  .navbar-actions .user-chip{flex:1 1 100%;justify-content:center;max-width:none}
  .navbar-actions .btn-nav-icon{flex:0 0 46px;width:46px;height:42px;border-radius:14px}
  .navbar-actions .btn-nav-logout{flex:1 1 auto;justify-content:center;border-radius:14px}
}

@media screen and (max-width: 767.98px){
  body{font-size:15px;overflow-x:hidden}
  .container{max-width:100%;padding-left:12px!important;padding-right:12px!important}
  .brand-title{font-size:1.2rem;line-height:1.15}
  .brand-mark{width:34px;height:34px;border-radius:10px}
  .app-logo{height:30px;max-width:130px}
  .navbar-toggler{width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--card);box-shadow:var(--shadow-soft)}
  .page-hero{padding:1.05rem 1.15rem;border-radius:18px;margin-bottom:1rem}
  .page-hero h4{font-size:1.55rem;line-height:1.2;margin-bottom:.45rem!important}
  .page-hero p{font-size:1.02rem;line-height:1.55}
  .page-hero .badge{display:flex;justify-content:center;width:100%;font-size:.95rem;padding:.8rem 1rem!important;border-radius:999px!important}
  .section-card{padding:1rem!important;border-radius:18px!important;margin-bottom:1rem!important;overflow:visible!important}
  .card{border-radius:18px!important}
  .row.g-2>[class*="col-"],
  .row.g-3>[class*="col-"]{min-width:0}
  form.section-card .row>[class*="col-lg-"],
  form.section-card .row>[class*="col-md-"]{width:100%}
  form.section-card .row>.col-auto{flex:1 1 0;width:auto;min-width:0}
  form.section-card .btn{width:100%;min-height:46px;display:inline-flex;align-items:center;justify-content:center}
  .input-group{flex-wrap:nowrap;width:100%}
  .input-group .form-control{min-width:0;text-overflow:ellipsis}
  .form-control,.form-select,.input-group-text{min-height:48px;font-size:1rem}
  textarea.form-control{min-height:96px}

  /* Mobile tables become readable cards. */
  .table-responsive,
  .table-responsive.section-card,
  .section-card .table-responsive{overflow:visible!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .table{display:block;width:100%;border-collapse:separate!important;border-spacing:0!important;background:transparent!important}
  .table thead{display:none!important}
  .table tbody{display:block;width:100%}
  .table tbody tr{display:block;width:100%;margin:0 0 .85rem 0;border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--card)!important;box-shadow:var(--shadow-soft)}
  .table tbody tr:last-child{margin-bottom:0}
  .table tbody td,
  .table tbody th{display:grid!important;grid-template-columns:minmax(92px,34%) minmax(0,1fr);gap:.75rem;align-items:center;width:100%!important;min-height:48px;padding:.72rem .85rem!important;border-bottom:1px solid var(--border)!important;background:var(--card)!important;color:var(--text)!important;white-space:normal!important;word-break:break-word;overflow-wrap:anywhere;text-align:left!important}
  .table-striped>tbody>tr:nth-of-type(odd)>*{background:var(--card)!important}
  .table-hover>tbody>tr:hover>*{background:var(--table-hover)!important}
  .table tbody td:last-child,
  .table tbody th:last-child{border-bottom:0!important}
  .table tbody td::before,
  .table tbody th::before{content:attr(data-label);font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);line-height:1.25;min-width:0}
  .table tbody td[colspan]::before{display:none}
  .table tbody td[colspan]{display:block!important;text-align:center!important}
  .table td .btn,
  .table th .btn{width:100%;justify-content:center;white-space:normal}
  .row-actions{display:grid;grid-template-columns:1fr;gap:.45rem;width:100%}
  .row-actions .btn,
  .row-actions form,
  .row-actions button{width:100%}
  .status-badge,.toggle-pill,.barcode-chip{max-width:100%;white-space:normal;justify-content:center;text-align:center}
  .sender-address-preview{max-width:100%;white-space:normal;display:block}

  .scanner-card{padding:12px;border-radius:16px}
  .scanner-frame{width:100%}
  .scanner-video{min-height:220px}
  .scanner-target{inset:18%}
  .btn-save-right{text-align:stretch}
  .btn-save-right .btn{width:100%;min-height:46px}
  .detail-list li{display:grid;grid-template-columns:112px minmax(0,1fr);gap:.4rem}
  .detail-list li strong{min-width:0}
}

@media screen and (max-width: 420px){
  .container{padding-left:10px!important;padding-right:10px!important}
  .brand-title{font-size:1.08rem}
  .page-hero h4{font-size:1.38rem}
  .page-hero p{font-size:.98rem}
  form.section-card .row>.col-auto{flex:1 1 100%}
  .table tbody td,
  .table tbody th{grid-template-columns:86px minmax(0,1fr);gap:.6rem;padding:.68rem .75rem!important}
  .table tbody td::before,
  .table tbody th::before{font-size:.73rem}
}

/* Definitive mobile + theme fixes */
html[data-theme='light']{color-scheme:light}
html[data-theme='dark']{color-scheme:dark;background:#07111f;color:#e5e7eb}
html[data-theme='dark'] body{
  background:
    radial-gradient(circle at 16% -8%,rgba(59,130,246,.18),transparent 34%),
    radial-gradient(circle at 88% 4%,rgba(14,165,233,.08),transparent 28%),
    linear-gradient(180deg,#07111f 0%,#0b1220 100%)!important;
  color:var(--text)!important;
}
html[data-theme='dark'] .brand-title,
html[data-theme='dark'] h1,
html[data-theme='dark'] h2,
html[data-theme='dark'] h3,
html[data-theme='dark'] h4,
html[data-theme='dark'] h5,
html[data-theme='dark'] h6{color:var(--heading)!important}
html[data-theme='dark'] .text-muted{color:var(--muted)!important}
html[data-theme='dark'] .app-navbar,
html[data-theme='dark'] .navbar-collapse,
html[data-theme='dark'] .page-hero,
html[data-theme='dark'] .section-card,
html[data-theme='dark'] .card,
html[data-theme='dark'] .table tbody tr,
html[data-theme='dark'] .modal-content,
html[data-theme='dark'] .dropdown-menu{
  background-color:var(--card)!important;
  color:var(--text)!important;
  border-color:var(--border)!important;
}
html[data-theme='dark'] .app-navbar{
  background:rgba(17,24,39,.96)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.25)!important;
}
html[data-theme='dark'] .navbar-toggler{background:var(--card-elevated)!important;color:var(--text)!important;border-color:var(--border-strong)!important}
html[data-theme='dark'] .navbar-toggler-icon{filter:invert(1) grayscale(1)!important}
html[data-theme='dark'] .app-nav .nav-link{color:var(--muted)!important}
html[data-theme='dark'] .app-nav .nav-link:hover{background:var(--primary-soft)!important;color:var(--primary-strong)!important}
html[data-theme='dark'] .app-nav .nav-link.active{background:var(--primary)!important;color:#fff!important}
html[data-theme='dark'] .form-control,
html[data-theme='dark'] .form-select,
html[data-theme='dark'] .input-group-text{
  background-color:var(--input-bg)!important;
  color:var(--input-text)!important;
  border-color:var(--border)!important;
}
html[data-theme='dark'] .table{
  --bs-table-color:var(--text)!important;
  --bs-table-bg:var(--table-bg)!important;
  --bs-table-border-color:var(--border)!important;
  --bs-table-striped-bg:var(--table-stripe)!important;
  --bs-table-hover-bg:var(--table-hover)!important;
}
html[data-theme='dark'] .table > :not(caption) > * > *{
  background-color:var(--bs-table-bg)!important;
  color:var(--bs-table-color)!important;
  border-color:var(--bs-table-border-color)!important;
}
html[data-theme='dark'] .table-striped > tbody > tr:nth-of-type(odd) > *{background-color:var(--bs-table-striped-bg)!important}

@media screen and (max-width: 991.98px){
  html,body{max-width:100%;overflow-x:hidden}
  .container{max-width:100%!important;width:100%!important;padding-left:12px!important;padding-right:12px!important}
  .app-navbar{margin-bottom:1rem!important}
  .app-navbar .container-fluid{padding-left:14px!important;padding-right:14px!important}
  .navbar-collapse{margin-top:.85rem;padding:.75rem;border:1px solid var(--border);border-radius:18px;background:var(--card)!important;box-shadow:var(--shadow-soft)}
  .navbar-collapse:not(.show){box-shadow:none}
  .app-nav{gap:.35rem!important}
  .app-nav .nav-link{width:100%;border-radius:14px!important;padding:.72rem .85rem!important;display:flex!important;align-items:center!important;gap:.55rem!important;white-space:normal}
  .navbar-actions{padding:.8rem 0 0 0!important;border-top:1px solid var(--border);margin-top:.75rem!important;flex-wrap:wrap!important;align-items:stretch!important;gap:.55rem!important}
  .navbar-actions .user-chip{flex:1 1 100%!important;justify-content:center!important;max-width:none!important;min-height:42px}
  .navbar-actions .btn-nav-icon{width:46px!important;height:42px!important;border-radius:14px!important}
  .navbar-actions .btn-nav-logout{flex:1 1 auto!important;justify-content:center!important;border-radius:14px!important;min-height:42px}
  .page-hero{padding:1.05rem 1.15rem!important;border-radius:18px!important;margin-bottom:1rem!important}
  .page-hero h4{font-size:1.45rem!important;line-height:1.2!important;margin-bottom:.45rem!important}
  .page-hero p{font-size:1rem!important;line-height:1.5!important}
  .page-hero .badge{display:flex!important;justify-content:center!important;width:100%!important;font-size:.95rem!important;padding:.78rem 1rem!important;border-radius:999px!important}
  .section-card{padding:1rem!important;border-radius:18px!important;margin-bottom:1rem!important;overflow:visible!important}
  .card{border-radius:18px!important}
  form.section-card .row{--bs-gutter-y:.7rem!important}
  form.section-card .row>[class*="col-lg-"],
  form.section-card .row>[class*="col-md-"],
  form.section-card .row>.col-auto{flex:0 0 100%!important;width:100%!important;max-width:100%!important;min-width:0!important}
  form.section-card .btn{width:100%!important;min-height:46px;display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .input-group{flex-wrap:nowrap!important;width:100%!important;min-width:0!important}
  .input-group .form-control{min-width:0!important;text-overflow:ellipsis!important}
  .form-control,.form-select,.input-group-text{min-height:48px!important;font-size:1rem!important}

  .table-responsive,
  .table-responsive.section-card,
  .section-card .table-responsive{overflow:visible!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;width:100%!important;max-width:100%!important}
  table.table{display:block!important;width:100%!important;min-width:0!important;border-collapse:separate!important;border-spacing:0!important;background:transparent!important}
  table.table thead{display:none!important}
  table.table tbody{display:block!important;width:100%!important}
  table.table tbody tr{display:block!important;width:100%!important;margin:0 0 .85rem 0!important;border:1px solid var(--border)!important;border-radius:16px!important;overflow:hidden!important;background:var(--card)!important;box-shadow:var(--shadow-soft)!important}
  table.table tbody tr:last-child{margin-bottom:0!important}
  table.table tbody td,
  table.table tbody th{display:grid!important;grid-template-columns:minmax(92px,34%) minmax(0,1fr)!important;gap:.75rem!important;align-items:center!important;width:100%!important;max-width:100%!important;min-height:48px!important;padding:.72rem .85rem!important;border-bottom:1px solid var(--border)!important;background:var(--card)!important;color:var(--text)!important;white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere!important;text-align:left!important;box-shadow:none!important}
  table.table-striped>tbody>tr:nth-of-type(odd)>*{background:var(--card)!important}
  table.table-hover>tbody>tr:hover>*{background:var(--table-hover)!important}
  table.table tbody td:last-child,
  table.table tbody th:last-child{border-bottom:0!important}
  table.table tbody td::before,
  table.table tbody th::before{content:attr(data-label);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)!important;line-height:1.25;min-width:0}
  table.table tbody td[colspan]::before{display:none!important}
  table.table tbody td[colspan]{display:block!important;text-align:center!important}
  table.table td .btn,
  table.table th .btn{width:100%!important;justify-content:center!important;white-space:normal!important}
  .row-actions{display:grid!important;grid-template-columns:1fr!important;gap:.45rem!important;width:100%!important}
  .row-actions .btn,.row-actions form,.row-actions button{width:100%!important}
  .status-badge,.toggle-pill,.barcode-chip{max-width:100%!important;white-space:normal!important;justify-content:center!important;text-align:center!important}
  .sender-address-preview{max-width:100%!important;white-space:normal!important;display:block!important}
}

@media screen and (max-width: 420px){
  .container{padding-left:10px!important;padding-right:10px!important}
  .brand-title{font-size:1.08rem!important;line-height:1.15!important}
  .brand-mark{width:34px!important;height:34px!important;border-radius:10px!important}
  .page-hero h4{font-size:1.34rem!important}
  table.table tbody td,
  table.table tbody th{grid-template-columns:84px minmax(0,1fr)!important;gap:.6rem!important;padding:.68rem .74rem!important}
  table.table tbody td::before,
  table.table tbody th::before{font-size:.72rem!important}
}

/* Final theme hardening: data-theme + class fallback */
html.theme-dark,
html[data-theme='dark']{
  --bg:#07111f;
  --bg-soft:#0b1220;
  --text:#e5e7eb;
  --heading:#f8fafc;
  --muted:#94a3b8;
  --card:#111827;
  --card-elevated:#0f172a;
  --border:#263244;
  --border-strong:#334155;
  --input-bg:#0b1220;
  --input-text:#f8fafc;
  --table-bg:#111827;
  --table-head:#0b1220;
  --table-stripe:#0f172a;
  --table-hover:#172033;
  --primary:#3b82f6;
  --primary-strong:#60a5fa;
  --primary-soft:#102345;
  --shadow:0 16px 36px rgba(0,0,0,.28);
  --shadow-soft:0 10px 24px rgba(0,0,0,.22);
  background:#07111f!important;
  color-scheme:dark;
}
html.theme-light,
html[data-theme='light']{color-scheme:light}
html.theme-dark body,
body.theme-dark,
html[data-theme='dark'] body{
  background:
    radial-gradient(circle at 16% -8%,rgba(59,130,246,.18),transparent 34%),
    radial-gradient(circle at 88% 4%,rgba(14,165,233,.08),transparent 28%),
    linear-gradient(180deg,#07111f 0%,#0b1220 100%)!important;
  color:var(--text)!important;
}
html.theme-dark .section-card,
html.theme-dark .page-hero,
html.theme-dark .card,
html.theme-dark .modal-content,
html.theme-dark .dropdown-menu,
html[data-theme='dark'] .section-card,
html[data-theme='dark'] .page-hero,
html[data-theme='dark'] .card,
html[data-theme='dark'] .modal-content,
html[data-theme='dark'] .dropdown-menu{
  background:var(--card)!important;
  color:var(--text)!important;
  border-color:var(--border)!important;
}
html.theme-dark .app-navbar,
html[data-theme='dark'] .app-navbar{
  background:rgba(17,24,39,.96)!important;
  border-bottom-color:var(--border)!important;
}
html.theme-dark .navbar-collapse,
html[data-theme='dark'] .navbar-collapse{
  background:var(--card)!important;
  color:var(--text)!important;
  border-color:var(--border)!important;
}
html.theme-dark .brand-title,
html.theme-dark h1,html.theme-dark h2,html.theme-dark h3,html.theme-dark h4,html.theme-dark h5,html.theme-dark h6,
html[data-theme='dark'] .brand-title,
html[data-theme='dark'] h1,html[data-theme='dark'] h2,html[data-theme='dark'] h3,html[data-theme='dark'] h4,html[data-theme='dark'] h5,html[data-theme='dark'] h6{color:var(--heading)!important}
html.theme-dark .text-muted,
html[data-theme='dark'] .text-muted{color:var(--muted)!important}
html.theme-dark .app-nav .nav-link,
html[data-theme='dark'] .app-nav .nav-link{color:var(--muted)!important}
html.theme-dark .app-nav .nav-link:hover,
html[data-theme='dark'] .app-nav .nav-link:hover{background:var(--primary-soft)!important;color:var(--primary-strong)!important}
html.theme-dark .app-nav .nav-link.active,
html[data-theme='dark'] .app-nav .nav-link.active{background:var(--primary)!important;color:#fff!important}
html.theme-dark .form-control,
html.theme-dark .form-select,
html.theme-dark .input-group-text,
html[data-theme='dark'] .form-control,
html[data-theme='dark'] .form-select,
html[data-theme='dark'] .input-group-text{
  background-color:var(--input-bg)!important;
  color:var(--input-text)!important;
  border-color:var(--border)!important;
}
html.theme-dark .navbar-toggler,
html[data-theme='dark'] .navbar-toggler{background:var(--card-elevated)!important;border-color:var(--border-strong)!important;color:var(--text)!important}
html.theme-dark .navbar-toggler-icon,
html[data-theme='dark'] .navbar-toggler-icon{filter:invert(1) grayscale(1)!important}

/* Real mobile cards for shipment-heavy pages */
.mobile-card-list{display:grid;gap:.85rem;width:100%;max-width:100%;min-width:0}
.shipment-mobile-card{
  background:var(--card);
  color:var(--text);
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow:var(--shadow-soft);
  padding:1rem;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
}
.mobile-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.85rem;min-width:0}
.mobile-card-code{font-weight:850;color:var(--heading);font-size:1.08rem;line-height:1.2;overflow-wrap:anywhere}
.mobile-card-sub{color:var(--muted);font-size:.88rem;margin-top:.15rem}
.mobile-card-icon{font-size:1.55rem;color:var(--muted)}
.mobile-card-route{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:.7rem;
  align-items:center;
  padding:.8rem;
  border:1px solid var(--border);
  background:var(--card-elevated);
  border-radius:14px;
  margin-bottom:.85rem;
}
.mobile-card-route i{color:var(--muted)}
.mobile-card-route span,
.mobile-card-grid span{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.18rem}
.mobile-card-route strong,
.mobile-card-grid strong{display:block;color:var(--heading);font-weight:750;line-height:1.28;overflow-wrap:anywhere}
.mobile-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-bottom:.9rem}
.mobile-card-grid>div{border:1px solid var(--border);background:var(--card-elevated);border-radius:12px;padding:.65rem;min-width:0}
.mobile-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.mobile-card-actions form{margin:0;display:block;min-width:0}
.mobile-card-actions .btn{width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:center;white-space:normal}
.barcode-action-card .mobile-card-actions{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
.compact-mobile-card{box-shadow:none}
.trash-mobile-card .mobile-card-actions{grid-template-columns:1fr}

@media (max-width: 991.98px){
  html,body{max-width:100%;overflow-x:hidden!important}
  .desktop-table{display:none!important}
  .container{width:100%!important;max-width:100%!important;padding-left:12px!important;padding-right:12px!important;overflow-x:hidden!important}
  .app-navbar{margin-bottom:1rem!important}
  .app-navbar .container-fluid{padding-left:14px!important;padding-right:14px!important}
  .navbar-collapse{margin-top:.85rem;padding:.85rem;border:1px solid var(--border);border-radius:18px;background:var(--card)!important;box-shadow:var(--shadow-soft)}
  .navbar-collapse:not(.show){display:none!important}
  .app-nav .nav-link{font-size:1rem;gap:.65rem!important;border-radius:14px!important;padding:.78rem .9rem!important}
  .navbar-actions{padding-top:.75rem!important;margin-top:.75rem!important;border-top:1px solid var(--border);display:grid!important;grid-template-columns:1fr auto 1fr;gap:.55rem!important;width:100%}
  .navbar-actions .user-chip{grid-column:1/-1;justify-content:center;max-width:none!important;border-radius:14px!important}
  .navbar-actions .btn-nav-icon{width:48px!important;height:44px!important;border-radius:14px!important}
  .navbar-actions .btn-nav-logout{height:44px!important;border-radius:14px!important;justify-content:center!important}
  .page-hero{padding:1rem!important;border-radius:18px!important;margin-bottom:1rem!important}
  .page-hero h4{font-size:1.35rem!important;line-height:1.22!important}
  .page-hero p{font-size:.98rem!important;line-height:1.5!important}
  .page-hero .badge{display:flex!important;width:100%!important;justify-content:center!important;padding:.75rem!important}
  .section-card{padding:1rem!important;border-radius:18px!important;overflow:hidden!important}
  form.section-card .row>[class*="col-"],
  form.section-card .row>.col-auto{flex:0 0 100%!important;width:100%!important;max-width:100%!important}
  form.section-card .btn{width:100%!important;min-height:46px;display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .input-group{width:100%;flex-wrap:nowrap!important;min-width:0}
  .input-group .form-control{min-width:0!important}
  .form-control,.form-select,.input-group-text{min-height:48px!important;font-size:1rem!important}
  .table-responsive:not(.desktop-table){overflow:hidden!important;max-width:100%!important}
  .action-bar{display:grid!important;grid-template-columns:1fr!important;gap:.5rem!important}
  .action-bar .btn{width:100%;justify-content:center}
  .detail-list li{grid-template-columns:100px minmax(0,1fr)!important}
}
@media (max-width: 420px){
  .container{padding-left:10px!important;padding-right:10px!important}
  .brand-title{font-size:1.08rem!important}
  .brand-mark{width:34px!important;height:34px!important}
  .mobile-card-actions{grid-template-columns:1fr}
  .mobile-card-grid{grid-template-columns:1fr}
  .mobile-card-route{grid-template-columns:1fr;gap:.45rem}
  .mobile-card-route i{transform:rotate(90deg);justify-self:start}
  .status-badge{font-size:.78rem;padding:.32rem .5rem}
}

/* Barkod tarama açıldığında önizleme alanının mobilde doğru konuma gelmesi için */
#scanner_box{scroll-margin-top:96px}
@media (max-width:991.98px){#scanner_box{scroll-margin-top:128px}.scanner-info{width:100%}.scanner-info #scanner_close{width:100%;justify-content:center}}

/* QR/Barkod sonrası kargo detayındaki hızlı işlem alanı */
#quick-actions{scroll-margin-top:112px}
.quick-actions-card{position:relative;overflow:hidden}
.quick-actions-highlight{border-color:rgba(37,99,235,.45)!important;box-shadow:0 18px 45px rgba(37,99,235,.16)!important}
.scan-success-banner{display:flex;align-items:flex-start;gap:.8rem;border:1px solid rgba(22,163,74,.26);background:rgba(22,163,74,.08);border-radius:16px;padding:.85rem 1rem;color:var(--text)}
.scan-success-banner i{font-size:1.35rem;color:#16a34a;line-height:1}
.scan-success-banner strong{display:block;color:var(--heading);font-weight:850;margin-bottom:.1rem}
.scan-success-banner span{display:block;color:var(--muted);font-size:.92rem;line-height:1.35}
.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:.6rem;align-items:stretch}
.quick-actions-grid form{margin:0;display:block;min-width:0}
.quick-actions-grid .btn{width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:normal}
html.theme-dark .scan-success-banner,
html[data-theme='dark'] .scan-success-banner{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.32)}
@media (max-width: 991.98px){
  #quick-actions{scroll-margin-top:126px}
  .quick-actions-grid{grid-template-columns:1fr}
}

/* Shipment create preset and recent address helpers */
.shipment-create-form .party-block{position:relative;overflow:hidden}
.shipment-create-form .party-block::after{content:"";position:absolute;inset:auto 18px 0 auto;width:120px;height:120px;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 12%,transparent),transparent 68%);pointer-events:none;opacity:.65}
.party-user-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border);border-radius:999px;padding:.2rem .55rem;background:var(--card);color:var(--muted);font-size:.75rem;font-weight:700;white-space:nowrap}
.party-user-chip.is-linked{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 28%,var(--border));color:var(--primary)}
.recent-address-panel{border:1px dashed var(--border-strong);background:color-mix(in srgb,var(--card-elevated) 72%,transparent);border-radius:14px;padding:.75rem;position:relative;z-index:1}
.recent-address-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem;color:var(--heading);font-weight:750}
.recent-address-head small{color:var(--muted);font-weight:650;font-size:.75rem}
.recent-address-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.55rem}
.recent-address-card{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:13px;padding:.65rem .75rem;text-align:left;display:flex;flex-direction:column;gap:.18rem;min-height:72px;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}
.recent-address-card strong{font-size:.88rem;color:var(--heading);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.recent-address-card span{font-size:.78rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.recent-address-card:hover,.recent-address-card:focus{border-color:var(--primary);background:var(--primary-soft);transform:translateY(-1px);box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 12%,transparent);outline:none}
.party-warning{border:1px solid #f59e0b;background:#fffbeb;color:#92400e;border-radius:14px;padding:.75rem .9rem;font-weight:700}
html[data-theme='dark'] .party-warning{background:#33250a;color:#fde68a;border-color:#854d0e}
@media (max-width:768px){
  .shipment-create-form .party-block::after{display:none}
  .recent-address-panel{padding:.65rem}
  .recent-address-head{align-items:flex-start;flex-direction:column;gap:.15rem}
  .recent-address-list{grid-template-columns:1fr}
  .recent-address-card{min-height:auto}
  .party-user-chip{width:100%;justify-content:center}
}

/* Print page UI refresh */
.print-toolbar-title{display:flex;align-items:center;gap:10px;color:#fff;font-weight:800;letter-spacing:.01em}
.print-toolbar-title small{display:block;color:#94a3b8;font-weight:600;font-size:12px;margin-top:2px}
.print-toolbar-icon{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 8px 20px rgba(37,99,235,.35)}
.print-toolbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.print-action{appearance:none;border:1px solid transparent;border-radius:12px;padding:10px 14px;font-weight:800;text-decoration:none;cursor:pointer;line-height:1.1;display:inline-flex;align-items:center;gap:8px;transition:.18s ease}
.print-action-primary{background:#2563eb;color:#fff;box-shadow:0 10px 22px rgba(37,99,235,.32)}
.print-action-primary:hover{background:#1d4ed8;color:#fff;transform:translateY(-1px)}
.print-action-secondary{background:rgba(255,255,255,.06);color:#e2e8f0;border-color:rgba(148,163,184,.38)}
.print-action-secondary:hover{background:rgba(255,255,255,.12);color:#fff}
.cargo-info-section{display:flex;align-items:flex-start;gap:8mm;min-height:35mm}
.cargo-info-content{flex:1;min-width:0}
.print-qr-panel{flex:0 0 31mm;width:31mm;margin-left:auto;text-align:center;color:#000}
.print-qr-panel img{display:block;width:26mm;height:26mm;margin:0 auto 1mm auto;image-rendering:pixelated}
@media print{.print-toolbar{display:none!important}.cargo-info-section{display:flex!important;align-items:flex-start!important;gap:7mm!important;min-height:32mm!important}.cargo-info-content{flex:1 1 auto!important;min-width:0!important}.print-qr-panel{flex:0 0 30mm!important;width:30mm!important;margin-left:auto!important;text-align:center!important;color:#000!important}.print-qr-panel img{width:25mm!important;height:25mm!important;margin:0 auto .8mm auto!important}}

/* Shipment report export controls */
.report-export-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.8rem .9rem;
  border:1px solid var(--border);
  border-radius:16px;
  background:color-mix(in srgb,var(--card-elevated) 82%,transparent);
}
.report-export-bar strong{display:block;color:var(--heading);font-weight:850}
.report-export-bar small{display:block;color:var(--muted);font-size:.82rem;margin-top:.12rem}
.report-export-actions{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap}
.report-export-actions .btn{font-weight:800}
@media (max-width: 991.98px){
  .report-export-bar{align-items:stretch;flex-direction:column}
  .report-export-actions{display:grid;grid-template-columns:1fr;gap:.55rem}
  .report-export-actions .btn{width:100%;justify-content:center;min-height:46px}
}

/* Dashboard v2 widgets */
.dashboard-hero-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.dashboard-hero-actions .btn{font-weight:800;border-radius:12px}
.dashboard-stat-grid .card-stat{overflow:hidden;position:relative}
.dashboard-stat-card::after{content:"";position:absolute;inset:auto -38px -48px auto;width:132px;height:132px;border-radius:50%;background:color-mix(in srgb,var(--primary) 10%,transparent);pointer-events:none}
.dashboard-stat-card .card-body{position:relative;z-index:1}
.dashboard-stat-label{display:block;font-size:.82rem;font-weight:850;color:var(--muted);letter-spacing:.01em;margin-bottom:.22rem}
.dashboard-stat-card h2{margin:0;color:var(--heading);font-size:2rem;line-height:1;font-weight:900}
.dashboard-stat-card small{display:block;color:var(--muted);font-weight:650;margin-top:.32rem}
.dashboard-stat-card .stat-icon{flex:0 0 48px;width:48px;height:48px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;font-size:1.35rem;background:var(--primary-soft);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border))}
.dashboard-stat-success .stat-icon{background:rgba(22,163,74,.12);color:#16a34a;border-color:rgba(22,163,74,.24)}
.dashboard-stat-warning .stat-icon{background:rgba(245,158,11,.13);color:#d97706;border-color:rgba(245,158,11,.26)}
.dashboard-stat-danger .stat-icon{background:rgba(239,68,68,.12);color:#ef4444;border-color:rgba(239,68,68,.26)}
.dashboard-panel{min-height:100%}
.dashboard-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.dashboard-panel-head h5{font-weight:900;color:var(--heading)}
.dashboard-panel-head p{font-size:.92rem}
.dashboard-total-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--primary-soft);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));font-weight:850;font-size:.82rem;padding:.35rem .7rem;white-space:nowrap}
.activity-timeline{display:flex;flex-direction:column;gap:.65rem}
.activity-item{display:grid;grid-template-columns:40px minmax(0,1fr);gap:.75rem;align-items:flex-start;text-decoration:none;color:inherit;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--card-elevated) 72%,transparent);padding:.75rem;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.activity-item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 34%,var(--border));background:var(--primary-soft);box-shadow:0 14px 30px color-mix(in srgb,var(--primary) 10%,transparent);color:inherit}
.activity-icon{width:40px;height:40px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary);font-size:1.08rem;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border))}
.activity-content{min-width:0;display:block}
.activity-content strong{display:block;color:var(--heading);font-weight:850;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.activity-meta{display:block;color:var(--muted);font-size:.82rem;font-weight:650;margin-top:.18rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.activity-content em{display:block;color:var(--muted);font-style:normal;font-size:.82rem;margin-top:.28rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.empty-state-small{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.25rem;border:1px dashed var(--border-strong);border-radius:16px;padding:1.35rem;color:var(--muted);min-height:150px}
.empty-state-small i{font-size:1.7rem;color:var(--primary)}
.empty-state-small strong{color:var(--heading);font-weight:850}
.empty-state-small span{font-size:.9rem}
.status-chart-list{display:flex;flex-direction:column;gap:.8rem}
.status-chart-row{display:flex;flex-direction:column;gap:.38rem}
.status-chart-top{display:flex;align-items:center;justify-content:space-between;gap:.8rem;font-size:.9rem;color:var(--text);font-weight:750}
.status-chart-top>span{display:inline-flex;align-items:center;gap:.45rem;min-width:0}
.status-chart-top strong{color:var(--heading);font-weight:900;white-space:nowrap}
.status-chart-top small{color:var(--muted);font-weight:750}
.status-dot{width:10px;height:10px;border-radius:999px;display:inline-block;background:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}
.status-dot.st-hazirlaniyor{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.14)}
.status-dot.st-gonderildi{background:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.14)}
.status-dot.st-yolda{background:#8b5cf6;box-shadow:0 0 0 4px rgba(139,92,246,.14)}
.status-dot.st-teslim_edildi,.status-dot.st-teslim_alindi{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.14)}
.status-dot.st-iptal{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.14)}
.status-chart-track,.sender-rank-track{height:9px;border-radius:999px;background:color-mix(in srgb,var(--border) 55%,transparent);overflow:hidden}
.status-chart-track span,.sender-rank-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),#60a5fa);min-width:0;transition:width .25s ease}
.sender-rank-list{display:flex;flex-direction:column;gap:.75rem}
.sender-rank-item{display:grid;grid-template-columns:36px minmax(0,1fr);gap:.75rem;align-items:center;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--card-elevated) 72%,transparent);padding:.72rem}
.sender-rank-no{width:36px;height:36px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary);font-weight:900;border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border))}
.sender-rank-content{min-width:0;display:flex;flex-direction:column;gap:.4rem}
.sender-rank-top{display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-width:0}
.sender-rank-top strong{color:var(--heading);font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.sender-rank-top span{color:var(--muted);font-size:.82rem;font-weight:800;white-space:nowrap}
html[data-theme='dark'] .dashboard-stat-card::after,html.theme-dark .dashboard-stat-card::after{background:color-mix(in srgb,var(--primary) 16%,transparent)}
html[data-theme='dark'] .activity-item,html.theme-dark .activity-item,
html[data-theme='dark'] .sender-rank-item,html.theme-dark .sender-rank-item{background:color-mix(in srgb,var(--card-elevated) 84%,transparent)}
@media (max-width: 991.98px){
  .dashboard-hero-actions{display:grid;grid-template-columns:1fr;gap:.55rem;width:100%}
  .dashboard-hero-actions .btn{width:100%;min-height:46px;display:inline-flex;align-items:center;justify-content:center}
  .dashboard-panel-head{flex-direction:column;align-items:stretch;gap:.6rem}
  .dashboard-panel-head .btn,.dashboard-total-pill{width:100%;justify-content:center}
  .dashboard-stat-card h2{font-size:1.8rem}
  .activity-item{grid-template-columns:34px minmax(0,1fr);padding:.65rem;border-radius:14px}
  .activity-icon{width:34px;height:34px;border-radius:12px;font-size:.96rem}
  .activity-content strong,.activity-meta{white-space:normal}
  .sender-rank-top{align-items:flex-start;flex-direction:column;gap:.1rem}
}

/* Shipment advanced filters */
.shipment-filter-card .form-label{font-weight:800;margin-bottom:.32rem;color:var(--muted)}
.filter-action-row{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}
.filter-action-row .btn{font-weight:850;border-radius:12px;min-height:42px;display:inline-flex;align-items:center;justify-content:center}
.shipment-filter-card select.form-select,.shipment-filter-card input.form-control{min-height:42px}
@media (max-width: 767.98px){
  .filter-action-row{display:grid;grid-template-columns:1fr;gap:.55rem}
  .filter-action-row .btn{width:100%;min-height:48px}
  .shipment-filter-card .form-label{font-size:.78rem}
}

/* Settings branding upload panels */
.mini-panel{
  background:var(--card-elevated)!important;
  color:var(--text)!important;
  border:1px solid var(--border)!important;
  border-radius:16px!important;
  padding:1rem;
  box-shadow:var(--shadow-soft);
}
.mini-panel h6{color:var(--heading)}
.mini-panel .form-text{color:var(--muted)!important}

/* Create shipment barcode scanner */
.barcode-scan-input .btn{white-space:nowrap;font-weight:750}
.create-scanner-card{scroll-margin-top:96px}
.scan-filled{box-shadow:0 0 0 .25rem rgba(34,197,94,.22)!important;border-color:#22c55e!important}
@media (max-width:991.98px){
  .create-scanner-card{scroll-margin-top:128px}
  .barcode-scan-input{display:grid;grid-template-columns:1fr;gap:.55rem}
  .barcode-scan-input>.form-control,
  .barcode-scan-input>.btn{width:100%;border-radius:12px!important}
  .create-scanner-card .scanner-info #create_scanner_close{width:100%;justify-content:center}
}

/* Mobile navbar hamburger icon fix: do not rely on Bootstrap's black SVG icon. */
.navbar-toggler,
.app-navbar .navbar-toggler{
  color:var(--heading)!important;
}
.navbar-toggler .navbar-toggler-icon,
.app-navbar .navbar-toggler .navbar-toggler-icon{
  background-image:none!important;
  background:none!important;
  filter:none!important;
  width:26px!important;
  height:20px!important;
  display:inline-block!important;
  position:relative!important;
  color:currentColor!important;
}
.navbar-toggler .navbar-toggler-icon::before,
.navbar-toggler .navbar-toggler-icon::after,
.app-navbar .navbar-toggler .navbar-toggler-icon::before,
.app-navbar .navbar-toggler .navbar-toggler-icon::after{
  content:"";
  position:absolute;
  left:0;
  width:100%;
  height:3px;
  border-radius:999px;
  background:currentColor!important;
}
.navbar-toggler .navbar-toggler-icon::before,
.app-navbar .navbar-toggler .navbar-toggler-icon::before{top:0;box-shadow:0 8.5px 0 currentColor;}
.navbar-toggler .navbar-toggler-icon::after,
.app-navbar .navbar-toggler .navbar-toggler-icon::after{bottom:0;}
html.theme-dark .navbar-toggler,
html[data-theme='dark'] .navbar-toggler,
body.theme-dark .navbar-toggler,
body[data-theme='dark'] .navbar-toggler,
html.theme-dark .app-navbar .navbar-toggler,
html[data-theme='dark'] .app-navbar .navbar-toggler{
  color:#f8fafc!important;
  background:rgba(15,23,42,.96)!important;
  border-color:rgba(148,163,184,.55)!important;
}
html.theme-dark .navbar-toggler .navbar-toggler-icon,
html[data-theme='dark'] .navbar-toggler .navbar-toggler-icon,
body.theme-dark .navbar-toggler .navbar-toggler-icon,
body[data-theme='dark'] .navbar-toggler .navbar-toggler-icon{
  color:#f8fafc!important;
  filter:none!important;
}

/* Click-to-copy barcode numbers */
.copyable-barcode{
  cursor:pointer;
  user-select:none;
  position:relative;
  align-items:center;
  gap:.35rem;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.copyable-barcode::after{
  content:"⧉";
  font-family:"bootstrap-icons";
  font-size:.78em;
  opacity:.65;
  line-height:1;
}
.copyable-barcode:hover,
.copyable-barcode:focus-visible{
  color:var(--primary-strong);
  border-color:var(--primary);
  background:var(--primary-soft);
  outline:none;
  box-shadow:0 0 0 .16rem color-mix(in srgb,var(--primary) 16%,transparent);
}
.copyable-barcode.copy-ok{
  color:#166534;
  border-color:#22c55e;
  background:#dcfce7;
}
html[data-theme='dark'] .copyable-barcode.copy-ok,
html.theme-dark .copyable-barcode.copy-ok{
  color:#86efac;
  border-color:#22c55e;
  background:#052e1b;
}
.copyable-barcode.copy-fail{
  color:#b91c1c;
  border-color:#ef4444;
  background:#fef2f2;
}
html[data-theme='dark'] .copyable-barcode.copy-fail,
html.theme-dark .copyable-barcode.copy-fail{
  color:#fecaca;
  border-color:#ef4444;
  background:#3b1115;
}
.copy-feedback{
  font-family:inherit;
  font-size:.72em;
  font-weight:800;
  margin-left:.15rem;
}
.mobile-card-grid .copyable-barcode{
  display:inline-flex;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
}

/* Status confirmation helper panels */
.confirm-helper-card{
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.85rem;
  border:1px solid var(--border);
  background:var(--surface-2);
  border-radius:14px;
}
.confirm-helper-icon{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  color:var(--primary-strong);
  background:var(--primary-soft);
}
.confirm-helper-content{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:.1rem;
}
.confirm-helper-content small{
  color:var(--muted);
  overflow-wrap:anywhere;
  word-break:break-word;
}
.confirm-helper-card .copy-value{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-weight:700;
  color:var(--text);
}

.confirm-helper-actions{
  display:inline-flex;
  gap:.5rem;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.copy-inline-feedback{
  font-weight:800;
}
html[data-theme='dark'] .confirm-helper-card,
html.theme-dark .confirm-helper-card{
  background:rgba(15,23,42,.72);
  border-color:rgba(148,163,184,.25);
}
@media (max-width:575.98px){
  .confirm-helper-card{align-items:stretch;flex-wrap:wrap;}
  .confirm-helper-card .btn{width:100%;}
  .confirm-helper-actions{width:100%;}
  .confirm-helper-content{flex:1 1 calc(100% - 52px);}
}

/* Reminder dashboard and settings */
.attention-panel{
  border-color:rgba(245,158,11,.34)!important;
  background:linear-gradient(135deg, rgba(255,247,237,.78), var(--surface) 58%);
}
html[data-theme='dark'] .attention-panel,
html.theme-dark .attention-panel{
  background:linear-gradient(135deg, rgba(120,53,15,.26), rgba(15,23,42,.82) 58%);
  border-color:rgba(251,191,36,.22)!important;
}
.attention-summary-row{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  margin:.75rem 0 1rem;
}
.attention-pill{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  padding:.5rem .75rem;
  border-radius:999px;
  font-size:.88rem;
  border:1px solid var(--border);
  background:var(--surface-2);
  color:var(--text);
}
.attention-pill.warning{background:#fffbeb;border-color:#fbbf24;color:#92400e;}
.attention-pill.primary{background:#eff6ff;border-color:#60a5fa;color:#1d4ed8;}
.attention-pill.success{background:#ecfdf5;border-color:#34d399;color:#047857;}
html[data-theme='dark'] .attention-pill.warning,
html.theme-dark .attention-pill.warning{background:rgba(146,64,14,.24);border-color:rgba(251,191,36,.32);color:#fcd34d;}
html[data-theme='dark'] .attention-pill.primary,
html.theme-dark .attention-pill.primary{background:rgba(29,78,216,.22);border-color:rgba(96,165,250,.32);color:#93c5fd;}
html[data-theme='dark'] .attention-pill.success,
html.theme-dark .attention-pill.success{background:rgba(4,120,87,.22);border-color:rgba(52,211,153,.32);color:#6ee7b7;}
.attention-list{display:grid;gap:.55rem;}
.attention-item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:.75rem;
  text-decoration:none;
  padding:.72rem .8rem;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface-2);
  color:var(--text);
}
.attention-item:hover{border-color:var(--primary);transform:translateY(-1px);}
.attention-status{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.32rem .55rem;
  font-size:.76rem;
  font-weight:800;
  white-space:nowrap;
  background:#eef2ff;
  color:#3730a3;
}
.attention-status.warning{background:#fffbeb;color:#92400e;}
.attention-status.primary{background:#eff6ff;color:#1d4ed8;}
.attention-status.success{background:#ecfdf5;color:#047857;}
html[data-theme='dark'] .attention-status,
html.theme-dark .attention-status{background:rgba(99,102,241,.18);color:#c7d2fe;}
html[data-theme='dark'] .attention-status.warning,
html.theme-dark .attention-status.warning{background:rgba(146,64,14,.24);color:#fcd34d;}
html[data-theme='dark'] .attention-status.primary,
html.theme-dark .attention-status.primary{background:rgba(29,78,216,.22);color:#93c5fd;}
html[data-theme='dark'] .attention-status.success,
html.theme-dark .attention-status.success{background:rgba(4,120,87,.22);color:#6ee7b7;}
.attention-main{min-width:0;display:flex;flex-direction:column;gap:.1rem;}
.attention-main small{color:var(--muted);overflow-wrap:anywhere;}
.attention-days{font-weight:900;color:var(--primary-strong);white-space:nowrap;}
.reminder-settings-panel .font-monospace{font-size:.82rem;}
@media (max-width: 575.98px){
  .attention-item{grid-template-columns:1fr;align-items:start;}
  .attention-status,.attention-days{width:max-content;}
}


/* Button / modal stability fixes */
body:not(.modal-open) .modal-backdrop,
.modal-backdrop:not(.show){pointer-events:none!important;display:none!important}
.btn.is-submitting{cursor:wait;opacity:.72;pointer-events:none}
@media (max-width:991.98px){.navbar-collapse.collapsing{display:block!important}}

/* Per-shipment reminder extension */
.reminder-extension-card{
  border-color:rgba(37,99,235,.18)!important;
  background:linear-gradient(135deg, rgba(239,246,255,.78), var(--surface) 60%);
}
html[data-theme='dark'] .reminder-extension-card,
html.theme-dark .reminder-extension-card{
  background:linear-gradient(135deg, rgba(30,58,138,.22), rgba(15,23,42,.84) 60%);
  border-color:rgba(96,165,250,.22)!important;
}
.reminder-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.75rem;
}
.reminder-metric{
  display:flex;
  align-items:center;
  gap:.65rem;
  padding:.8rem .85rem;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface-2);
  min-width:0;
}
.reminder-metric i{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:rgba(37,99,235,.12);
  color:var(--primary-strong);
  flex:0 0 auto;
}
.reminder-metric span{
  display:block;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.1;
}
.reminder-metric > div{
  min-width:0;
}
.reminder-metric strong{
  display:block;
  color:var(--text);
  font-size:.92rem;
  overflow-wrap:anywhere;
}
.reminder-metric .reminder-extra-days{
  font-size:1.08rem;
  line-height:1.1;
  color:#92400e;
  letter-spacing:.01em;
}
.reminder-extra-until{
  display:block;
  margin-top:.12rem;
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
  line-height:1.15;
}
html[data-theme='dark'] .reminder-metric .reminder-extra-days,
html.theme-dark .reminder-metric .reminder-extra-days{color:#fde68a;}
.reminder-metric.has-extra{
  border-color:rgba(245,158,11,.42);
  background:rgba(255,251,235,.74);
}
.reminder-metric.has-extra i{
  background:rgba(245,158,11,.16);
  color:#b45309;
}
html[data-theme='dark'] .reminder-metric.has-extra,
html.theme-dark .reminder-metric.has-extra{
  background:rgba(120,53,15,.22);
  border-color:rgba(251,191,36,.28);
}
html[data-theme='dark'] .reminder-metric.has-extra i,
html.theme-dark .reminder-metric.has-extra i{color:#fcd34d;background:rgba(251,191,36,.16);}
.attention-pill.info{background:#f0f9ff;border-color:#38bdf8;color:#0369a1;}
html[data-theme='dark'] .attention-pill.info,
html.theme-dark .attention-pill.info{background:rgba(3,105,161,.22);border-color:rgba(56,189,248,.32);color:#7dd3fc;}
.attention-status.info{background:#f0f9ff;color:#0369a1;}
html[data-theme='dark'] .attention-status.info,
html.theme-dark .attention-status.info{background:rgba(3,105,161,.22);color:#7dd3fc;}
@media (max-width:991.98px){
  .reminder-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:575.98px){
  .reminder-metrics{grid-template-columns:1fr;}
  .reminder-extension-card .btn{width:100%;}
}
.reminder-extended-panel{
  border-color:rgba(14,165,233,.28)!important;
  background:linear-gradient(135deg, rgba(240,249,255,.78), var(--surface) 60%);
}
html[data-theme='dark'] .reminder-extended-panel,
html.theme-dark .reminder-extended-panel{
  background:linear-gradient(135deg, rgba(12,74,110,.24), rgba(15,23,42,.84) 60%);
  border-color:rgba(56,189,248,.24)!important;
}

/* Professional reminder extension form */
.reminder-extension-form{
  margin-top:1rem;
  padding:1rem;
  border:1px solid rgba(37,99,235,.18);
  border-radius:16px;
  background:rgba(255,255,255,.52);
  box-shadow:0 10px 28px rgba(15,23,42,.04);
}
html[data-theme='dark'] .reminder-extension-form,
html.theme-dark .reminder-extension-form{
  background:rgba(15,23,42,.36);
  border-color:rgba(96,165,250,.18);
  box-shadow:none;
}
.reminder-form-grid{
  display:grid;
  grid-template-columns:minmax(190px,1.05fr) minmax(155px,.85fr) minmax(190px,1fr) minmax(260px,1.35fr) auto;
  gap:1rem;
  align-items:end;
}
.reminder-field{min-width:0;}
.reminder-field .form-label{
  display:flex;
  align-items:center;
  min-height:22px;
  margin-bottom:.45rem;
  font-weight:700;
  color:var(--text);
  letter-spacing:.01em;
}
.reminder-field .form-control,
.reminder-field .form-select,
.reminder-field .input-group-text{
  min-height:44px;
}
.reminder-field .form-text{
  min-height:34px;
  margin-top:.4rem;
  font-size:.78rem;
  line-height:1.3;
}
.reminder-field.is-disabled{
  opacity:.58;
}
.reminder-field.is-disabled .form-label{
  color:var(--muted);
}
.reminder-actions{
  display:flex;
  gap:.5rem;
  align-items:center;
  justify-content:flex-end;
  padding-bottom:34px;
}
.reminder-actions .btn{
  min-height:44px;
  white-space:nowrap;
}
.reminder-actions .btn-primary{
  min-width:136px;
}
.reminder-actions .btn-outline-secondary{
  width:44px;
  padding-left:0;
  padding-right:0;
}
@media (max-width:1199.98px){
  .reminder-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .reminder-field-note{grid-column:1 / -1;}
  .reminder-actions{grid-column:1 / -1;padding-bottom:0;justify-content:flex-end;}
}
@media (max-width:575.98px){
  .reminder-extension-form{padding:.85rem;}
  .reminder-form-grid{grid-template-columns:1fr;gap:.8rem;}
  .reminder-field .form-text{min-height:auto;}
  .reminder-actions{flex-direction:column;align-items:stretch;}
  .reminder-actions .btn,
  .reminder-actions .btn-primary,
  .reminder-actions .btn-outline-secondary{width:100%;min-width:0;}
}


/* Shipment list return focus */
.focus-return-card{
  display:flex;
  align-items:center;
  gap:.85rem;
  padding:.9rem 1rem;
  border:1px solid rgba(59,130,246,.26);
  border-radius:16px;
  background:linear-gradient(135deg, rgba(239,246,255,.88), rgba(255,255,255,.72));
  box-shadow:0 14px 32px rgba(15,23,42,.06);
}
.focus-return-icon{
  width:42px;
  height:42px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#1d4ed8;
  background:rgba(59,130,246,.14);
  flex:0 0 auto;
}
.focus-return-body{
  min-width:0;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:.12rem;
}
.focus-return-body span{color:var(--muted);font-size:.88rem;}
html[data-theme='dark'] .focus-return-card,
html.theme-dark .focus-return-card{
  background:linear-gradient(135deg, rgba(30,64,175,.22), rgba(15,23,42,.7));
  border-color:rgba(96,165,250,.28);
  box-shadow:none;
}
html[data-theme='dark'] .focus-return-icon,
html.theme-dark .focus-return-icon{color:#93c5fd;background:rgba(59,130,246,.18);}
.shipment-focused-row{
  position:relative;
  scroll-margin-top:120px;
  transition:outline-color .35s ease, box-shadow .35s ease, background .35s ease;
  outline:2px solid rgba(59,130,246,.55);
  outline-offset:-2px;
  box-shadow:inset 4px 0 0 rgba(59,130,246,.9), 0 10px 26px rgba(37,99,235,.10);
}
table .shipment-focused-row > *{
  background:rgba(37,99,235,.08)!important;
}

.shipment-focused-row.shipment-focus-soften{
  outline-color:rgba(59,130,246,.28);
  box-shadow:inset 4px 0 0 rgba(59,130,246,.45), 0 8px 18px rgba(37,99,235,.08);
}
html[data-theme='dark'] table .shipment-focused-row > *,
html.theme-dark table .shipment-focused-row > *{background:rgba(37,99,235,.18)!important;}
.shipment-mobile-card.shipment-focused-row{
  border-color:rgba(59,130,246,.55)!important;
  background:linear-gradient(135deg, rgba(59,130,246,.10), rgba(255,255,255,.04));
}
.focus-row-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  color:#1d4ed8;
  background:rgba(59,130,246,.14);
  vertical-align:middle;
}
html[data-theme='dark'] .focus-row-pill,
html.theme-dark .focus-row-pill{color:#bfdbfe;background:rgba(59,130,246,.22);}
@media (max-width:575.98px){
  .focus-return-card{align-items:flex-start;flex-direction:column;}
  .focus-return-card .btn{width:100%;}
}

/* Shipment create step wizard */
.shipment-create-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.shipment-wizard-form{padding:1.15rem!important}
.shipment-wizard{display:flex;flex-direction:column;gap:1rem}
.wizard-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;position:relative}
.wizard-step-tab{appearance:none;border:1px solid var(--border);background:var(--card-elevated);color:var(--text);border-radius:16px;padding:.8rem .9rem;display:flex;align-items:center;gap:.75rem;text-align:left;min-width:0;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.wizard-step-tab:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 34%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--card-elevated))}
.wizard-step-tab.active{border-color:color-mix(in srgb,var(--primary) 58%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 16%,var(--card-elevated)),var(--card-elevated));box-shadow:0 14px 30px color-mix(in srgb,var(--primary) 12%,transparent)}
.wizard-step-tab.completed{border-color:color-mix(in srgb,#22c55e 38%,var(--border));background:color-mix(in srgb,#22c55e 7%,var(--card-elevated))}
.wizard-index{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;background:var(--primary-soft);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));font-weight:900}
.wizard-step-tab.active .wizard-index{background:var(--primary);border-color:var(--primary);color:#fff}
.wizard-step-tab.completed .wizard-index{background:#16a34a;border-color:#16a34a;color:#fff}
.wizard-tab-copy{min-width:0;display:flex;flex-direction:column;gap:.12rem;line-height:1.18}
.wizard-tab-copy strong{color:var(--heading);font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wizard-tab-copy small{color:var(--muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wizard-step{display:none;animation:wizardStepIn .18s ease both}
.wizard-step.active{display:block}
.wizard-step[hidden]{display:none!important}
@keyframes wizardStepIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.wizard-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:.2rem 0 1rem 0;padding:.85rem 1rem;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--card-elevated) 78%,transparent)}
.wizard-section-head h5{margin:0 0 .25rem 0;font-weight:900;color:var(--heading);display:flex;align-items:center;gap:.45rem}
.wizard-section-head p{margin:0;color:var(--muted);line-height:1.45}
.wizard-nav{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}
.wizard-nav-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}
.wizard-nav-note{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);font-weight:650;font-size:.92rem}
.wizard-nav .btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;border-radius:12px;font-weight:850}
.wizard-nav-final{align-items:stretch}
.wizard-nav-final .btn-primary{min-width:190px}
.wizard-final-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:1rem;align-items:stretch}
.wizard-review-card{background:var(--card-elevated);border:1px solid var(--border);border-radius:14px;padding:14px;color:var(--text)}
.wizard-review-list{display:grid;gap:.65rem;margin:0}
.wizard-review-list>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:.7rem;align-items:start;border-bottom:1px dashed var(--border);padding-bottom:.55rem}
.wizard-review-list>div:last-child{border-bottom:0;padding-bottom:0}
.wizard-review-list dt{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;font-weight:900;margin:0}
.wizard-review-list dd{color:var(--heading);font-weight:750;margin:0;min-width:0;word-break:break-word}
.shipment-wizard .form-grid-block{padding:16px}
.shipment-wizard .subsection-title{border-left:0;padding:.65rem .8rem;display:inline-flex;align-items:center;gap:.45rem}
.shipment-wizard .party-user-chip{white-space:nowrap}
.shipment-wizard .is-invalid{border-color:#dc2626!important;box-shadow:0 0 0 .18rem rgba(220,38,38,.16)!important}
@media (max-width: 1199.98px){
  .wizard-progress{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wizard-final-grid{grid-template-columns:1fr}
}
@media (max-width: 767.98px){
  .shipment-create-hero{display:block}
  .shipment-wizard-form{padding:.85rem!important}
  .wizard-progress{grid-template-columns:1fr;gap:.55rem}
  .wizard-step-tab{padding:.75rem;border-radius:14px}
  .wizard-index{width:32px;height:32px;flex-basis:32px;border-radius:11px}
  .wizard-section-head{flex-direction:column;align-items:stretch;padding:.8rem;border-radius:14px}
  .wizard-section-head .party-user-chip{justify-content:center;width:100%}
  .wizard-nav{flex-direction:column;align-items:stretch;gap:.65rem}
  .wizard-nav-actions{display:grid;grid-template-columns:1fr;gap:.55rem;width:100%}
  .wizard-nav .btn,.wizard-nav-note{width:100%;justify-content:center;text-align:center}
  .wizard-review-list>div{grid-template-columns:1fr;gap:.15rem}
}

/* Kargo listesi kapsam sekmeleri */
.shipment-scope-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.85rem;
}
.shipment-scope-tab{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:.22rem;
  min-height:96px;
  padding:1rem 1.05rem;
  border:1px solid rgba(148,163,184,.24);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(248,250,252,.74));
  color:var(--bs-body-color);
  text-decoration:none;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.shipment-scope-tab::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:3px;
  background:transparent;
  transition:background .18s ease;
}
.shipment-scope-tab:hover{
  transform:translateY(-1px);
  border-color:rgba(59,130,246,.55);
  box-shadow:0 14px 30px rgba(15,23,42,.10);
}
.shipment-scope-tab.active{
  border-color:rgba(37,99,235,.72);
  background:linear-gradient(135deg,rgba(37,99,235,.13),rgba(14,165,233,.08));
  box-shadow:0 14px 34px rgba(37,99,235,.14);
}
.shipment-scope-tab.active::after{background:linear-gradient(90deg,#2563eb,#38bdf8);}
.scope-tab-main{font-weight:900;font-size:.98rem;display:flex;align-items:center;color:inherit;}
.shipment-scope-tab strong{font-size:1.45rem;line-height:1.05;font-weight:950;letter-spacing:-.02em;}
.shipment-scope-tab small{color:var(--bs-secondary-color);font-size:.78rem;line-height:1.25;}
html[data-theme='dark'] .shipment-scope-tab,
html.theme-dark .shipment-scope-tab{
  background:linear-gradient(135deg,rgba(15,23,42,.86),rgba(15,23,42,.64));
  border-color:rgba(148,163,184,.18);
  box-shadow:0 14px 32px rgba(0,0,0,.24);
}
html[data-theme='dark'] .shipment-scope-tab.active,
html.theme-dark .shipment-scope-tab.active{
  border-color:rgba(59,130,246,.62);
  background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(14,165,233,.10));
}
@media (max-width: 991.98px){
  .shipment-scope-tabs{grid-template-columns:1fr;gap:.65rem;}
  .shipment-scope-tab{min-height:auto;padding:.85rem 1rem;}
  .shipment-scope-tab strong{font-size:1.25rem;}
}

/* Barcode quick operation panel v16 */
.barcode-action-page{position:relative}
.barcode-scan-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:center}
.barcode-scan-toolbar .barcode-manual-search{margin:0;min-width:0}
.barcode-scan-toolbar .js-barcode-scan-toggle{white-space:nowrap;font-weight:850;border-radius:14px}
#barcode_scanner_box{scroll-margin-top:96px}
.barcode-found-summary .eyebrow{display:inline-flex;align-items:center;color:#16a34a;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}
.barcode-not-found-card .btn{font-weight:800}
.barcode-quick-sheet{
  border:1px solid var(--border);
  background:linear-gradient(180deg,var(--card) 0%,var(--card-elevated) 100%);
  border-radius:24px;
  box-shadow:0 24px 64px rgba(15,23,42,.18);
  padding:1rem;
  color:var(--text);
}
.barcode-sheet-handle{width:48px;height:5px;border-radius:999px;background:var(--border-strong);margin:0 auto .85rem;opacity:.85}
.barcode-sheet-topbar{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.85rem}
.barcode-sheet-topbar span{font-size:.82rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}
.barcode-sheet-topbar-actions{display:flex;align-items:center;gap:.45rem;flex-shrink:0}
.barcode-sheet-topbar-actions .btn{border-radius:999px;font-weight:800}
.barcode-quick-sheet.is-hidden{display:none!important}
.barcode-success-strip{display:flex;gap:.75rem;align-items:flex-start;border:1px solid rgba(22,163,74,.28);background:rgba(22,163,74,.08);border-radius:16px;padding:.8rem;margin-bottom:.85rem}
.barcode-success-strip i{font-size:1.35rem;color:#16a34a;line-height:1}
.barcode-success-strip strong{display:block;color:var(--heading);font-weight:900;line-height:1.1}
.barcode-success-strip span{display:block;color:var(--muted);font-size:.9rem;margin-top:.12rem}
.barcode-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.9rem}
.barcode-sheet-code{font-size:1.28rem;font-weight:950;color:var(--heading);line-height:1.15;overflow-wrap:anywhere}
.barcode-sheet-route{font-size:.88rem;color:var(--muted);margin-top:.18rem;line-height:1.3;overflow-wrap:anywhere}
.barcode-sheet-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-bottom:.9rem}
.barcode-sheet-meta>div{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:.65rem;min-width:0}
.barcode-sheet-meta span{display:block;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.18rem}
.barcode-sheet-meta strong{display:block;color:var(--heading);font-weight:800;line-height:1.26;overflow-wrap:anywhere}
.barcode-primary-action-form{margin:0 0 .7rem 0}
.barcode-primary-action-btn{width:100%;min-height:58px;border-radius:16px;font-weight:950;font-size:1.08rem;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 16px 32px rgba(37,99,235,.22)}
.barcode-secondary-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.55rem;margin-bottom:.75rem}
.barcode-secondary-action-form{margin:0;min-width:0}
.barcode-secondary-actions .btn,.barcode-sheet-actions .btn{width:100%;min-height:44px;font-weight:800;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;white-space:normal}
.barcode-sheet-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}
.barcode-no-action-note{border:1px dashed var(--border-strong);background:color-mix(in srgb,var(--card) 76%,transparent);border-radius:15px;padding:.85rem;margin-bottom:.75rem;color:var(--muted);font-weight:750}
html.theme-dark .barcode-quick-sheet,html[data-theme='dark'] .barcode-quick-sheet{box-shadow:0 24px 64px rgba(0,0,0,.42)}
html.theme-dark .barcode-success-strip,html[data-theme='dark'] .barcode-success-strip{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.34)}

@media (max-width: 991.98px){
  .barcode-scan-toolbar{grid-template-columns:1fr;padding:.85rem!important}
  .barcode-scan-toolbar .input-group{flex-wrap:nowrap!important}
  .barcode-scan-toolbar .btn{min-height:48px}
  #barcode_scanner_box{scroll-margin-top:128px}
  #barcode_scanner_close{width:100%;justify-content:center}
  .barcode-action-page.has-quick-sheet{padding-bottom:330px}
  .barcode-quick-sheet{
    position:fixed;
    left:10px;
    right:10px;
    bottom:10px;
    z-index:1040;
    max-height:calc(100dvh - 92px);
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    touch-action:pan-y;
    padding:.9rem .9rem calc(.9rem + env(safe-area-inset-bottom));
    border-radius:24px;
    box-shadow:0 -18px 58px rgba(15,23,42,.28),0 18px 58px rgba(15,23,42,.18);
  }
  .barcode-sheet-header{align-items:flex-start}
  .barcode-sheet-code{font-size:1.18rem}
  .barcode-sheet-route{font-size:.82rem}
  .barcode-sheet-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}
  .barcode-sheet-meta>div{padding:.55rem;border-radius:12px}
  .barcode-primary-action-btn{min-height:60px;font-size:1.08rem}
  .barcode-secondary-actions{grid-template-columns:1fr 1fr}
  .barcode-sheet-actions{
    grid-template-columns:1fr 1fr 1fr;
    position:sticky;
    bottom:calc(-.9rem - env(safe-area-inset-bottom));
    margin-left:-.9rem;
    margin-right:-.9rem;
    margin-bottom:calc(-.9rem - env(safe-area-inset-bottom));
    padding:.65rem .9rem calc(.75rem + env(safe-area-inset-bottom));
    background:linear-gradient(180deg,color-mix(in srgb,var(--card-elevated) 68%,transparent),var(--card-elevated) 38%);
    backdrop-filter:blur(10px);
    border-top:1px solid var(--border);
    z-index:1;
  }
  .barcode-sheet-handle{touch-action:none;cursor:grab}
  .barcode-quick-sheet.is-dragging{transition:none!important}
}
@media (max-width: 420px){
  .barcode-action-page.has-quick-sheet{padding-bottom:380px}
  .barcode-quick-sheet{left:8px;right:8px;bottom:8px;max-height:calc(100dvh - 76px)}
  .barcode-sheet-topbar{align-items:flex-start}
  .barcode-sheet-topbar-actions{flex-direction:column;align-items:stretch}
  .barcode-sheet-topbar-actions .btn{width:100%;justify-content:center}
  .barcode-sheet-header{flex-direction:column;gap:.55rem}
  .barcode-sheet-header .status-badge{align-self:flex-start}
  .barcode-sheet-meta{grid-template-columns:1fr}
  .barcode-secondary-actions,.barcode-sheet-actions{grid-template-columns:1fr}
}

/* Barcode scanner professional status panel v20 */
.scanner-card-pro{
  border:1px solid rgba(59,130,246,.22)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--card) 88%,#2563eb 12%),color-mix(in srgb,var(--card-elevated) 92%,#0ea5e9 8%))!important;
  border-radius:22px!important;
  padding:1rem!important;
  box-shadow:0 18px 42px rgba(15,23,42,.10);
  overflow:hidden;
}
.scanner-pro-layout{
  display:grid;
  grid-template-columns:minmax(260px,480px) minmax(0,1fr);
  gap:1rem;
  align-items:stretch;
}
.scanner-frame-pro{
  border-radius:20px!important;
  min-height:280px;
  border:1px solid rgba(148,163,184,.22);
}
.scanner-frame-pro .scanner-video{
  min-height:280px;
  border-radius:20px!important;
}
.scanner-frame-pro .scanner-target{
  inset:18%;
  border:2px solid rgba(34,197,94,.98);
  border-radius:18px;
  box-shadow:0 0 0 999px rgba(2,6,23,.28),0 0 28px rgba(34,197,94,.22);
}
.scanner-frame-caption{
  position:absolute;
  left:50%;
  bottom:14px;
  transform:translateX(-50%);
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.44rem .75rem;
  border-radius:999px;
  background:rgba(2,6,23,.72);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:.82rem;
  font-weight:850;
  white-space:nowrap;
  backdrop-filter:blur(10px);
}
.scanner-info-pro{
  display:flex;
  flex-direction:column;
  gap:.85rem;
  min-width:0;
}
.scanner-panel-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:.75rem;
  padding:.15rem 0 .35rem;
}
.scanner-icon-live{
  background:linear-gradient(135deg,rgba(37,99,235,.18),rgba(14,165,233,.14))!important;
  color:var(--primary-strong)!important;
  box-shadow:inset 0 0 0 1px rgba(59,130,246,.18);
}
.scanner-panel-title{min-width:0}
.scanner-panel-title strong{
  display:block;
  color:var(--heading);
  font-weight:950;
  line-height:1.15;
  font-size:1.02rem;
}
.scanner-panel-title small{
  display:block;
  color:var(--muted);
  line-height:1.35;
  margin-top:.12rem;
}
.scanner-stop-btn{
  border-radius:999px!important;
  min-height:38px;
  font-weight:850!important;
  white-space:nowrap;
}
.scanner-progress-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:.72rem;
  align-items:center;
  border:1px solid var(--border);
  background:color-mix(in srgb,var(--card) 78%,transparent);
  border-radius:18px;
  padding:.85rem;
}
.scanner-progress-card strong{
  display:block;
  color:var(--heading);
  font-weight:950;
  line-height:1.15;
  margin-bottom:.16rem;
}
.scanner-progress-card span.scanner-status-text,
.scanner-status-text{
  display:block;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.35;
}
.scanner-live-dot{
  width:14px;
  height:14px;
  border-radius:999px;
  background:#22c55e;
  box-shadow:0 0 0 5px rgba(34,197,94,.13),0 0 22px rgba(34,197,94,.44);
  position:relative;
}
.scanner-live-dot::after{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:inherit;
  border:1px solid rgba(34,197,94,.34);
  animation:scannerPulse 1.55s ease-out infinite;
}
.scanner-card-pro[data-scan-state='success'] .scanner-live-dot{background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.16),0 0 24px rgba(34,197,94,.50)}
.scanner-card-pro[data-scan-state='danger'] .scanner-live-dot{background:#ef4444;box-shadow:0 0 0 5px rgba(239,68,68,.12),0 0 20px rgba(239,68,68,.36)}
@keyframes scannerPulse{0%{transform:scale(.7);opacity:.72}100%{transform:scale(1.55);opacity:0}}
.scanner-tips{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.5rem;
  margin-top:auto;
}
.scanner-tips span{
  display:flex;
  align-items:center;
  gap:.35rem;
  min-width:0;
  padding:.55rem .6rem;
  border:1px solid var(--border);
  border-radius:14px;
  background:color-mix(in srgb,var(--card) 62%,transparent);
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
  line-height:1.25;
}
.scanner-tips i{color:var(--primary-strong);font-size:.95rem;flex:0 0 auto}
.js-scan-toggle.is-scanning,
.js-barcode-scan-toggle.is-scanning{
  border-color:rgba(34,197,94,.45)!important;
  background:rgba(34,197,94,.10)!important;
  color:#16a34a!important;
}
html[data-theme='dark'] .scanner-card-pro,
html.theme-dark .scanner-card-pro{
  background:linear-gradient(135deg,rgba(15,23,42,.90),rgba(15,23,42,.72))!important;
  border-color:rgba(59,130,246,.22)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.28);
}
html[data-theme='dark'] .scanner-progress-card,
html.theme-dark .scanner-progress-card,
html[data-theme='dark'] .scanner-tips span,
html.theme-dark .scanner-tips span{
  background:rgba(15,23,42,.54);
  border-color:rgba(148,163,184,.18);
}
@media (max-width: 991.98px){
  .scanner-card-pro{padding:.85rem!important;border-radius:20px!important}
  .scanner-pro-layout{grid-template-columns:1fr;gap:.85rem}
  .scanner-frame-pro,.scanner-frame-pro .scanner-video{min-height:250px}
  .scanner-panel-head{grid-template-columns:auto minmax(0,1fr);gap:.65rem}
  .scanner-stop-btn{grid-column:1/-1;width:100%;justify-content:center;min-height:44px}
  .scanner-tips{grid-template-columns:1fr;gap:.42rem}
  .scanner-tips span{justify-content:flex-start;font-size:.82rem;padding:.58rem .65rem}
  .scanner-frame-caption{bottom:10px;font-size:.78rem;max-width:calc(100% - 24px);white-space:normal;text-align:center;justify-content:center}
}
@media (max-width:420px){
  .scanner-frame-pro,.scanner-frame-pro .scanner-video{min-height:220px}
  .scanner-progress-card{padding:.72rem;border-radius:16px}
  .scanner-panel-title strong{font-size:.98rem}
}
