/*
 * ALTEK · Dashboard V14 Motion Preview
 * Visual-only, reversible experiment based on ALTEK design 04/05 and video reference.
 * Scope is strictly .dashboard-shell while html.altek-v14 is present.
 * No styles target Plan/Orders/Analytics dedicated pages, dialogs or business actions.
 * Opt-in switch: ?altek_motion=1; default dashboard is unchanged.
 */
html.altek-v14 .dashboard-shell {
  --v14-surface: #ffffff;
  --v14-raised: #f7fafb;
  --v14-ink: #203640;
  --v14-subtle: #6d8490;
  --v14-line: #dbe5e9;
  --v14-shadow: 0 2px 5px rgba(24, 44, 56, .025), 0 16px 38px rgba(24, 44, 56, .065);
  --v14-shadow-up: 0 9px 18px rgba(24, 44, 56, .055), 0 24px 48px rgba(24, 44, 56, .12);
  --v14-teal: #438e89;
  --v14-blue: #5788b4;
  --v14-done-bg: #e7f4ec;
  --v14-done-border: #a9d3b6;
  --v14-done-text: #2f7a4a;
  --v14-doing-bg: #e8f2fa;
  --v14-doing-border: #afcbe3;
  --v14-doing-text: #356f9b;
  --v14-wait-bg: #f1f4f6;
  --v14-wait-border: #c9d2d8;
  --v14-wait-text: #536d7c;
  --v14-alert-bg: #fbeaea;
  --v14-alert-border: #e5b3b0;
  --v14-alert-text: #ad4c47;
  --v14-ease: cubic-bezier(.2, .82, .23, 1);
  isolation: isolate;
  color: var(--v14-ink);
}
html[data-theme="dark"].altek-v14 .dashboard-shell {
  --v14-surface: #1b2e38;
  --v14-raised: #223943;
  --v14-ink: #eaf4f5;
  --v14-subtle: #acc2ca;
  --v14-line: #36535f;
  --v14-shadow: 0 2px 5px rgba(0,0,0,.14), 0 16px 36px rgba(0,0,0,.22);
  --v14-shadow-up: 0 10px 24px rgba(0,0,0,.2), 0 26px 48px rgba(0,0,0,.34);
  --v14-teal: #86d2c4;
  --v14-blue: #acd4f4;
  --v14-done-bg: #21483b;
  --v14-done-border: #3a7a60;
  --v14-done-text: #bee9cc;
  --v14-doing-bg: #213f52;
  --v14-doing-border: #4d809f;
  --v14-doing-text: #c3e4fa;
  --v14-wait-bg: #2a3942;
  --v14-wait-border: #617985;
  --v14-wait-text: #dae6ed;
  --v14-alert-bg: #4b3136;
  --v14-alert-border: #87565d;
  --v14-alert-text: #f2b8b3;
}
html.altek-v14 .dashboard-shell .page-head {
  margin-bottom: 18px;
}
html.altek-v14 .dashboard-shell .page-title {
  color: var(--v14-ink);
  letter-spacing: -.035em;
}
html.altek-v14 .dashboard-shell .page-subtitle {
  color: var(--v14-subtle);
}
html.altek-v14 .dashboard-shell .kpi-card,
html.altek-v14 .dashboard-shell .dashboard-event-row > .card,
html.altek-v14 .dashboard-shell .dashboard-grid > .card,
html.altek-v14 .dashboard-shell .dashboard-bottom > .card,
html.altek-v14 .dashboard-shell .plan-dashboard-card {
  background: var(--v14-surface) !important;
  border: 1px solid var(--v14-line) !important;
  border-radius: 18px !important;
  box-shadow: var(--v14-shadow) !important;
  color: var(--v14-ink);
  transition: background-color 230ms ease, border-color 230ms ease, box-shadow 230ms ease, transform 230ms var(--v14-ease);
}
html.altek-v14 .dashboard-shell .dashboard-event-row > .card,
html.altek-v14 .dashboard-shell .dashboard-grid > .card,
html.altek-v14 .dashboard-shell .dashboard-bottom > .card {
  min-width: 0;
}
html.altek-v14 .dashboard-shell .dashboard-kpis {
  gap: 12px;
}
html.altek-v14 .dashboard-shell .kpi-card {
  position: relative;
  overflow: hidden;
  min-width: 0;
  padding: 16px 16px 16px 19px;
  gap: 13px;
}
html.altek-v14 .dashboard-shell .kpi-card::before {
  content: "";
  position: absolute;
  width: 3px;
  left: 0;
  top: 17px;
  bottom: 17px;
  border-radius: 3px;
  background: var(--v14-teal);
  pointer-events: none;
}
html.altek-v14 .dashboard-shell .kpi-card:nth-child(2)::before { background: #65a887; }
html.altek-v14 .dashboard-shell .kpi-card:nth-child(3)::before { background: #659acb; }
html.altek-v14 .dashboard-shell .kpi-card:nth-child(4)::before { background: #c39b55; }
html.altek-v14 .dashboard-shell .kpi-card:nth-child(5)::before { background: #c9756f; }
html.altek-v14 .dashboard-shell .kpi-card .kpi-icon {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border: 1px solid var(--v14-line);
  border-radius: 12px;
  color: var(--v14-teal);
  background: var(--v14-raised);
  transition: transform 240ms var(--v14-ease), background 240ms ease, color 240ms ease;
}
html.altek-v14 .dashboard-shell .kpi-icon svg {
  width: 21px;
  height: 21px;
}
html.altek-v14 .dashboard-shell .kpi-value,
html.altek-v14 .dashboard-shell .mini-value,
html.altek-v14 .dashboard-shell .plan-dashboard-stats b {
  color: var(--v14-ink) !important;
  font-variant-numeric: tabular-nums;
}
html.altek-v14 .dashboard-shell .kpi-title,
html.altek-v14 .dashboard-shell .kpi-note,
html.altek-v14 .dashboard-shell .mini-label,
html.altek-v14 .dashboard-shell .person-role,
html.altek-v14 .dashboard-shell .order-meta,
html.altek-v14 .dashboard-shell .dashboard-analytics-head .muted {
  color: var(--v14-subtle);
}
html.altek-v14 .dashboard-shell .section-head h2,
html.altek-v14 .dashboard-shell .dashboard-analytics-head h2,
html.altek-v14 .dashboard-shell .plan-dashboard-hero-head h2 {
  color: var(--v14-ink);
}
html.altek-v14 .dashboard-shell .section-link {
  color: var(--v14-teal);
  border-radius: 8px;
  transition: color 160ms ease, background 160ms ease;
}
html.altek-v14 .dashboard-shell .section-link:focus-visible,
html.altek-v14 .dashboard-shell .plan-dashboard-collapse-btn:focus-visible {
  outline: 2px solid var(--v14-teal);
  outline-offset: 3px;
}
html.altek-v14 .dashboard-shell .state-pill,
html.altek-v14 .dashboard-shell .plan-dashboard-status,
html.altek-v14 .dashboard-shell .plan-active-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 6px;
  border: 1px solid var(--v14-wait-border) !important;
  border-radius: 999px !important;
  background: var(--v14-wait-bg) !important;
  color: var(--v14-wait-text) !important;
  min-height: 25px;
  padding: 5px 10px !important;
  line-height: 1.25 !important;
  font-weight: 700;
  white-space: normal;
}
html.altek-v14 .dashboard-shell .state-ready,
html.altek-v14 .dashboard-shell .plan-dashboard-status.done,
html.altek-v14 .dashboard-shell .plan-active-badge {
  background: var(--v14-done-bg) !important;
  border-color: var(--v14-done-border) !important;
  color: var(--v14-done-text) !important;
}
html.altek-v14 .dashboard-shell .state-check,
html.altek-v14 .dashboard-shell .plan-dashboard-status.exec {
  background: var(--v14-doing-bg) !important;
  border-color: var(--v14-doing-border) !important;
  color: var(--v14-doing-text) !important;
}
html.altek-v14 .dashboard-shell .state-pick,
html.altek-v14 .dashboard-shell .state-break,
html.altek-v14 .dashboard-shell .state-order-pick {
  background: var(--v14-wait-bg) !important;
  border-color: #c6ac79 !important;
  color: #86652d !important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .state-pick,
html[data-theme="dark"].altek-v14 .dashboard-shell .state-break,
html[data-theme="dark"].altek-v14 .dashboard-shell .state-order-pick {
  border-color: #88704e !important;
  color: #e9cca0 !important;
}
html.altek-v14 .dashboard-shell .state-pill.state-problem,
html.altek-v14 .dashboard-shell .plan-dashboard-status.problem {
  background: var(--v14-alert-bg) !important;
  border-color: var(--v14-alert-border) !important;
  color: var(--v14-alert-text) !important;
}
html.altek-v14 .dashboard-shell .employee-row,
html.altek-v14 .dashboard-shell .current-order-row {
  border-color: var(--v14-line);
  border-radius: 11px;
  transition: background-color 180ms ease;
}
html.altek-v14 .dashboard-shell .avatar-sm {
  background: var(--v14-raised);
  color: var(--v14-teal);
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats > div,
html.altek-v14 .dashboard-shell .mini-stat {
  background: var(--v14-raised);
  border: 1px solid var(--v14-line) !important;
  border-radius: 13px !important;
  padding: 13px !important;
  min-width: 0;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats {
  gap: 12px !important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-driver-column,
html.altek-v14 .dashboard-shell .plan-dashboard-column {
  border-radius: 15px !important;
  transition: box-shadow 200ms ease, border-color 200ms ease;
}
html.altek-v14 .dashboard-shell .plan-dashboard-column .plan-dashboard-mini-item,
html.altek-v14 .dashboard-shell .plan-dashboard-driver-column .plan-dashboard-mini-item {
  border-radius: 11px;
}
html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar,
html.altek-v14 .dashboard-shell .plan-dashboard-stat-progress .plan-dashboard-overall-bar {
  overflow: hidden;
  border-radius: 99px;
  background: var(--v14-line);
}
html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar > span {
  transform-origin: left center;
  animation: altek-v14-grow-x 720ms var(--v14-ease) both;
}
html.altek-v14 .dashboard-shell .chart,
html.altek-v14 .dashboard-shell .chart-bars {
  overflow: hidden;
}
html.altek-v14 .dashboard-shell .chart .bar,
html.altek-v14 .dashboard-shell .chart-bars .bar,
html.altek-v14 .dashboard-shell .chart-bar-wrap .bar {
  transform-origin: center bottom;
  animation: altek-v14-grow-y 780ms var(--v14-ease) both;
}
html.altek-v14 .dashboard-shell .chart .bar:nth-child(2n),
html.altek-v14 .dashboard-shell .chart-bar-wrap:nth-child(2n) .bar {animation-delay: 90ms;}
html.altek-v14 .dashboard-shell .chart .bar:nth-child(3n),
html.altek-v14 .dashboard-shell .chart-bar-wrap:nth-child(3n) .bar {animation-delay: 150ms;}
html.altek-v14 .dashboard-shell .mini-stat .mini-value {
  letter-spacing: -.03em;
}
html.altek-v14 .dashboard-shell .altek-v14-watch {
  opacity: 0;
  transform: translate3d(0, 17px, 0);
  transition: opacity 530ms var(--v14-ease), transform 600ms var(--v14-ease);
  transition-delay: var(--v14-delay, 0ms);
}
html.altek-v14 .dashboard-shell .altek-v14-watch.altek-v14-in {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
@media (hover: hover) and (pointer: fine) {
  html.altek-v14 .dashboard-shell .kpi-card:hover,
  html.altek-v14 .dashboard-shell .dashboard-event-row > .card:hover,
  html.altek-v14 .dashboard-shell .dashboard-bottom > .card:hover,
  html.altek-v14 .dashboard-shell .dashboard-grid > .card:hover {
    transform: translate3d(0, -4px, 0);
    box-shadow: var(--v14-shadow-up) !important;
    border-color: var(--v14-teal) !important;
  }
  html.altek-v14 .dashboard-shell .kpi-card:hover .kpi-icon {
    transform: translate3d(0, -2px, 0) scale(1.04);
  }
  html.altek-v14 .dashboard-shell .section-link:hover {
    color: var(--v14-ink);
    background: var(--v14-raised);
  }
  html.altek-v14 .dashboard-shell .employee-row:hover,
  html.altek-v14 .dashboard-shell .current-order-row:hover {
    background: var(--v14-raised);
  }
}
@media (max-width: 820px) {
  html.altek-v14 .dashboard-shell .dashboard-kpis {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  html.altek-v14 .dashboard-shell .kpi-card {
    padding: 12px;
    gap: 9px;
  }
  html.altek-v14 .dashboard-shell .kpi-icon {
    width: 33px;
    height: 33px;
    flex-basis: 33px;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-stats {
    gap: 8px !important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-stats > div,
  html.altek-v14 .dashboard-shell .mini-stat {
    padding: 9px !important;
  }
}
@media (max-width: 390px) {
  html.altek-v14 .dashboard-shell .kpi-card {padding: 10px;}
  html.altek-v14 .dashboard-shell .kpi-icon {flex-basis: 28px; width: 28px; height: 28px;}
}
@media (prefers-reduced-motion: reduce) {
  html.altek-v14 .dashboard-shell *,
  html.altek-v14 .dashboard-shell *::before,
  html.altek-v14 .dashboard-shell *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
  html.altek-v14 .dashboard-shell .altek-v14-watch {
    opacity: 1 !important;
    transform: none !important;
  }
}
@keyframes altek-v14-grow-x {
  from {transform: scaleX(.04);}
  to {transform: scaleX(1);}
}
@keyframes altek-v14-grow-y {
  from {transform: scaleY(.02);}
  to {transform: scaleY(1);}
}


/* Experimental preview toggle: shown only while ?altek_preview=1 / ?altek_motion=1 is present. */
html.altek-v14-preview .dashboard-shell .page-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
html.altek-v14-preview .dashboard-shell .altek-v14-toggle {
  appearance: none;
  flex: 0 0 auto;
  min-width: 145px;
  min-height: 39px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
  padding: 9px 13px;
  border-radius: 12px;
  border: 1px solid var(--v14-line, #c7d7df);
  background: var(--v14-raised, #f5f8fa);
  color: var(--v14-ink, #203640);
  box-shadow: 0 2px 8px rgba(28, 50, 66, .06);
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  line-height: 1.2;
  white-space: nowrap;
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
html.altek-v14-preview .dashboard-shell .altek-v14-toggle[aria-pressed="true"] {
  border-color: #91bdb6;
  background: #e6f2ee;
  color: #316d63;
}
html[data-theme="dark"].altek-v14-preview .dashboard-shell .altek-v14-toggle {
  border-color: #46616d;
  background: #263c46;
  color: #deebee;
}
html[data-theme="dark"].altek-v14-preview .dashboard-shell .altek-v14-toggle[aria-pressed="true"] {
  border-color: #4b897b;
  background: #23493f;
  color: #b6ebd9;
}
html.altek-v14-preview .dashboard-shell .altek-v14-toggle:hover {
  border-color: #549c8c;
  box-shadow: 0 5px 12px rgba(28, 50, 66, .10);
}
html.altek-v14-preview .dashboard-shell .altek-v14-toggle:focus-visible {
  outline: 2px solid #4e968b;
  outline-offset: 3px;
}
@media (max-width: 820px) {
  html.altek-v14-preview .dashboard-shell .page-head {align-items: flex-start;}
  html.altek-v14-preview .dashboard-shell .altek-v14-toggle {min-height: 42px;min-width: 139px;}
}
@media (prefers-reduced-motion: reduce) {
  html.altek-v14-preview .dashboard-shell .altek-v14-toggle {transition: none !important; transform: none !important;}
}

/* ===== V14.2 corrections · selectively scoped, no business DOM rewrite ===== */
html.altek-v14 .dashboard-shell{
  --v142-ring:rgba(91,166,161,.30);
  --v142-chart-a:#5d9cd2;
  --v142-chart-b:#92d9ce;
  --v142-chart-hover:#b9e8fb;
  --v142-number:#182f3a;
  --v142-clock-bg:#e4f0f2;
  --v142-chip:#eff6f6;
  --v142-hover:rgba(55,129,128,.065);
}
html[data-theme="dark"].altek-v14 .dashboard-shell{
  --v142-ring:rgba(114,217,202,.28);
  --v142-chart-a:#5a9ccf;
  --v142-chart-b:#81d6c2;
  --v142-chart-hover:#b6e8fa;
  --v142-number:#f3fcff;
  --v142-clock-bg:#345562;
  --v142-chip:#2a424d;
  --v142-hover:rgba(138,209,207,.075);
  --v14-raised:#2a4350;
  --v14-subtle:#bcd0d7;
  --v14-line:#43606d;
}
/* Higher contrast & larger glyphs, varying hues rather than green-on-green. */
html.altek-v14 .dashboard-shell .kpi-card{
  min-height:112px; padding:15px 17px 15px 20px!important;
  border-radius:17px!important; gap:13px;
  background-image:linear-gradient(145deg,rgba(255,255,255,.055),transparent 62%)!important;
}
html.altek-v14 .dashboard-shell .kpi-card .kpi-icon,
html.altek-v14 .dashboard-shell .kpi-icon{
  width:49px!important;height:49px!important;flex:0 0 49px!important;
  border-radius:14px!important; border:1px solid var(--v14-line)!important;
  background:#e5f0f7!important;color:#346c9a!important;
  box-shadow:inset 0 1px rgba(255,255,255,.28);
}
html.altek-v14 .dashboard-shell .kpi-icon svg{width:29px!important;height:29px!important;display:block}
html.altek-v14 .dashboard-shell .kpi-card:nth-child(2) .kpi-icon{background:#e3f2e9!important;color:#287f51!important}
html.altek-v14 .dashboard-shell .kpi-card:nth-child(3) .kpi-icon{background:#e5eefb!important;color:#3e70ac!important}
html.altek-v14 .dashboard-shell .kpi-card:nth-child(4) .kpi-icon{background:#fff0dc!important;color:#9d7129!important}
html.altek-v14 .dashboard-shell .kpi-card:nth-child(5) .kpi-icon{background:#fae9e8!important;color:#b45452!important}
html[data-theme="dark"].altek-v14 .dashboard-shell .kpi-card .kpi-icon{background:#274356!important;color:#b6ddfd!important;border-color:#466575!important}
html[data-theme="dark"].altek-v14 .dashboard-shell .kpi-card:nth-child(2) .kpi-icon{background:#294d43!important;color:#b1f5d2!important;border-color:#3e7665!important}
html[data-theme="dark"].altek-v14 .dashboard-shell .kpi-card:nth-child(3) .kpi-icon{background:#2a4663!important;color:#afd7fa!important;border-color:#466d96!important}
html[data-theme="dark"].altek-v14 .dashboard-shell .kpi-card:nth-child(4) .kpi-icon{background:#4a3e30!important;color:#f0d08f!important;border-color:#86704a!important}
html[data-theme="dark"].altek-v14 .dashboard-shell .kpi-card:nth-child(5) .kpi-icon{background:#53343c!important;color:#ffbab4!important;border-color:#87585f!important}
html.altek-v14 .dashboard-shell .kpi-title{font-size:12px!important;line-height:1.35!important;font-weight:630}
html.altek-v14 .dashboard-shell .kpi-value{font-size:31px!important;line-height:1.12!important;color:var(--v142-number)!important}
html.altek-v14 .dashboard-shell .kpi-note{font-size:10px!important;line-height:1.25!important;color:var(--v14-subtle)!important}
html.altek-v14 .dashboard-shell .kpi-note.good{color:var(--v14-done-text)!important}
html.altek-v14 .dashboard-shell .kpi-note.bad{color:var(--v14-alert-text)!important}
html.altek-v14 .dashboard-shell .kpi-card:hover .kpi-icon{transform:translateY(-2px) rotate(-2deg)!important}
/* Plan status and action contrasts; retain mandatory finished-route green outline. */
html.altek-v14 .dashboard-shell .plan-dashboard-card{background:var(--v14-surface)!important}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress){
  display:grid!important;grid-template-columns:49px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;min-height:94px!important;
  align-items:center!important;column-gap:12px!important;padding:13px!important;
  background:var(--v14-raised)!important;border:1px solid var(--v14-line)!important;
  border-radius:14px!important;box-shadow:inset 0 1px rgba(255,255,255,.06)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>span{
  grid-row:1/3!important;display:grid!important;place-items:center!important;
  width:43px;height:43px;border-radius:13px;background:var(--v142-chip)!important;
  color:var(--v14-teal)!important;border:1px solid var(--v14-line)!important;
  font-size:27px!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div>span svg{width:25px;height:25px;display:block}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>b{
  font-size:28px!important;line-height:1.05!important;letter-spacing:-.04em;
  color:var(--v142-number)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>small{
  font-size:12px!important;line-height:1.2!important;color:var(--v14-subtle)!important;font-weight:580!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stat-progress{
  background:var(--v14-raised)!important;border-color:var(--v14-line)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stat-progress b,
html.altek-v14 .dashboard-shell .plan-dashboard-stat-progress strong{color:var(--v142-number)!important}
html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar{background:var(--v14-line)!important;border-radius:20px!important}
html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar>span{
  animation:none!important;background:linear-gradient(90deg,#4e9d82,#84c7ac)!important;
  box-shadow:0 0 10px rgba(58,154,122,.15)!important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .plan-dashboard-overall-bar>span{
  background:linear-gradient(90deg,#54b895,#a2edcb)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-driver-column,
html.altek-v14 .dashboard-shell .plan-dashboard-side-column{
  background:var(--v14-raised)!important;border:1px solid var(--v14-line)!important;
  box-shadow:0 3px 16px rgba(12,28,38,.05)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-driver-column:hover,
html.altek-v14 .dashboard-shell .plan-dashboard-side-column:hover{
  border-color:var(--v14-teal)!important;
  box-shadow:0 9px 25px rgba(25,65,80,.13)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-mini-item{
  transition:box-shadow 210ms ease,border-color 210ms ease,background 210ms ease!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-mini-item:hover{
  box-shadow:inset 3px 0 0 rgba(115,200,177,.5),0 5px 16px rgba(12,38,48,.08)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-status,
html.altek-v14 .dashboard-shell .plan-active-badge,
html.altek-v14 .dashboard-shell .state-pill{border-width:1px!important;font-weight:700!important;text-align:center!important}
/* Analytics: strong chromatic / luminance separation in dark theme. */
html.altek-v14 .dashboard-shell .analytics-mini .mini-stat{
  background:var(--v14-raised)!important;border:1px solid var(--v14-line)!important;
  border-radius:15px!important;min-height:154px;
  transition:border-color 200ms ease,background 200ms ease,box-shadow 200ms ease;
}
html.altek-v14 .dashboard-shell .analytics-mini .mini-stat:hover{
  background:var(--v142-hover)!important;border-color:var(--v14-teal)!important;
  box-shadow:0 7px 20px rgba(20,54,66,.11)!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .mini-label,
html.altek-v14 .dashboard-shell .analytics-mini .analytics-top-note,
html.altek-v14 .dashboard-shell .analytics-mini .chart-labels{color:var(--v14-subtle)!important;opacity:1!important}
html.altek-v14 .dashboard-shell .analytics-mini .mini-value{
  color:var(--v142-number)!important;font-size:26px!important;font-weight:780!important;
  text-shadow:none!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .mini-value span{color:var(--v14-subtle)}
html.altek-v14 .dashboard-shell .analytics-mini .delta.up{color:#368663!important}
html[data-theme="dark"].altek-v14 .dashboard-shell .analytics-mini .delta.up{color:#95e3c2!important}
html.altek-v14 .dashboard-shell .analytics-mini .chart-bar-wrap .bar{
  animation:none!important;opacity:1!important;transform:none;
  background:linear-gradient(0deg,var(--v142-chart-a),var(--v142-chart-b))!important;
  box-shadow:0 -2px 6px rgba(76,170,188,.13)!important;
  border-radius:6px 6px 2px 2px!important;
  transition:filter 180ms ease,box-shadow 180ms ease!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .chart-bar-wrap:hover .bar{
  background:linear-gradient(0deg,var(--v142-chart-a),var(--v142-chart-hover))!important;
  filter:brightness(1.1) saturate(1.2)!important;
  box-shadow:0 0 14px rgba(108,211,215,.42)!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .chart-bar-wrap:hover::after{
  opacity:1!important;z-index:7!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .time-visual{
  background:var(--v142-clock-bg)!important;border:3px solid #8cb4c0!important;
  box-shadow:0 0 0 3px rgba(88,166,172,.12), inset 0 1px 5px rgba(0,0,0,.08);
}
html[data-theme="dark"].altek-v14 .dashboard-shell .analytics-mini .time-visual{
  border-color:#a5ded6!important;box-shadow:0 0 0 4px rgba(126,212,199,.18),0 0 17px rgba(107,205,210,.16)!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .time-clock{
  background:var(--v14-surface)!important;border-color:var(--v14-teal)!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .time-hand{background:var(--v14-teal)!important}
html.altek-v14 .dashboard-shell .dashboard-tabell tbody tr{
  transition:background-color 190ms ease!important;
}
html.altek-v14 .dashboard-shell .dashboard-tabell tbody tr:hover{
  background:var(--v142-hover)!important;
}
html.altek-v14 .dashboard-shell .dashboard-tabell td:hover .tabell-dot{
  box-shadow:0 0 0 2px var(--v14-teal)!important;transform:scale(1.06);
}
html.altek-v14 .dashboard-shell .tabell-dot{transition:transform 190ms ease,box-shadow 190ms ease}
html.altek-v14 .dashboard-shell .employee-row:hover,
html.altek-v14 .dashboard-shell .current-order-row:hover{
  box-shadow:inset 3px 0 0 var(--v14-teal)!important;
}
/* Header + sidebar experiment only while viewing the active preview dashboard. */
html.altek-v14 .top{
  background:linear-gradient(115deg,rgba(19,33,42,.93),rgba(30,50,62,.92))!important;
  backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%);
  border-bottom:1px solid rgba(150,210,208,.18)!important;
  box-shadow:0 9px 27px rgba(10,25,33,.17),inset 0 1px rgba(255,255,255,.09)!important;
}
html.altek-v14 .altek-top-search input{
  border-radius:13px!important;background:rgba(255,255,255,.065)!important;
  border:1px solid rgba(192,225,231,.23)!important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.09);
  transition:background 180ms ease,border-color 180ms ease,box-shadow 180ms ease!important;
}
html.altek-v14 .altek-top-search input:focus{
  background:rgba(255,255,255,.11)!important;border-color:#7bc9be!important;
  box-shadow:0 0 0 3px rgba(102,197,185,.18)!important;
}
html.altek-v143-effects-on .sidebar{
  background:linear-gradient(165deg,rgba(22,39,49,.97),rgba(15,29,40,.985))!important;
  border-right:1px solid rgba(141,199,205,.17)!important;
  box-shadow:inset -1px 0 rgba(255,255,255,.025),8px 0 30px rgba(8,24,35,.12)!important;
}
html.altek-v143-effects-on .sidebar .side-item{
  position:relative;border-radius:11px!important;
  transition:background-color 200ms ease,box-shadow 200ms ease,transform 200ms ease!important;
}
html.altek-v143-effects-on .sidebar .side-item::before{
  content:"";position:absolute;left:0;top:18%;height:64%;width:3px;border-radius:9px;
  background:#88d2c2;opacity:0;transform:scaleY(.4);
  transition:opacity 200ms ease,transform 240ms cubic-bezier(.2,.8,.2,1);
}
html.altek-v143-effects-on .sidebar .side-item.on::before,
html.altek-v143-effects-on .sidebar .side-item:hover::before{opacity:1;transform:scaleY(1)}
html.altek-v143-effects-on .sidebar .side-item.on{
  background:rgba(84,166,154,.17)!important;color:#ddf5f0!important;
  box-shadow:inset 0 0 0 1px rgba(108,193,180,.17)!important;
}
html.altek-v143-effects-on .sidebar .side-item:hover{background:rgba(116,198,183,.12)!important;transform:translateX(2px)}
html.altek-v143-effects-on .sidebar .side-icon svg{transition:transform 190ms ease,stroke 190ms ease}
html.altek-v143-effects-on .sidebar .side-item:hover .side-icon svg{transform:scale(1.11)}
/* Persistent toggle lives outside the rerendered #app. */
.altek-v142-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  position:fixed;z-index:110;min-width:148px;min-height:39px;
  background:rgba(226,242,240,.94);color:#245f56;border:1px solid #8cbcb3;
  border-radius:11px;padding:8px 12px;font-size:12px;font-weight:740;
  box-shadow:0 8px 24px rgba(15,40,50,.18);cursor:pointer;
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  transition:background 190ms ease,border-color 190ms ease,box-shadow 190ms ease;
}
.altek-v142-toggle[aria-pressed="false"]{background:rgba(240,245,246,.96);color:#536d79;border-color:#aebdc6}
html[data-theme="dark"] .altek-v142-toggle{background:rgba(28,67,59,.94);color:#c1f3d9;border-color:#3d8672}
html[data-theme="dark"] .altek-v142-toggle[aria-pressed="false"]{background:rgba(32,50,62,.94);color:#cee0e6;border-color:#58707b}
.altek-v142-toggle:focus-visible{outline:3px solid #8acdbf;outline-offset:2px}
.altek-v142-toggle[hidden]{display:none!important}
.altek-v142-theme-flood{position:fixed;inset:0;pointer-events:none;z-index:200}
@media(max-width:820px){
  html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress){min-height:86px!important;grid-template-columns:34px minmax(0,1fr)!important;padding:9px!important;gap:8px!important}
  html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>span{width:32px;height:32px}
  html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>span svg{width:20px;height:20px}
  html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>b{font-size:23px!important}
  html.altek-v14 .dashboard-shell .kpi-card .kpi-icon{width:41px!important;height:41px!important;flex-basis:41px!important}
  html.altek-v14 .dashboard-shell .kpi-icon svg{width:24px!important;height:24px!important}
  .altek-v142-toggle{min-height:38px;min-width:140px;font-size:11px;padding:7px 9px}
}
@media(prefers-reduced-motion:reduce){
  html.altek-v14 .dashboard-shell *,html.altek-v14 .sidebar *,html.altek-v14 .top *{transition:none!important;animation:none!important}
}

/* ===== ALTEK V14.3 interaction / accessibility corrections ===== */
html.altek-v14 .dashboard-shell {
 --v143-soft-row:var(--v144-card-hover); --v143-row-stroke:var(--v144-accent);
 --v143-plan-track:#d5e2e3; --v143-name:#264451;
}
html[data-theme="dark"].altek-v14 .dashboard-shell {
 --v143-soft-row:var(--v144-card-hover); --v143-row-stroke:var(--v144-accent);
 --v143-plan-track:#3b5962; --v143-name:#e7f5f6;
}
/* Entire row opens the same native ALTEK profile/order button; nested controls stay independent. */
html.altek-v14 .dashboard-shell .altek-v143-row-link {
 cursor:pointer!important;border-radius:12px!important;
 transition:background-color 220ms ease,border-color 220ms ease,box-shadow 220ms ease,transform 240ms cubic-bezier(.2,.8,.2,1)!important;
}
html.altek-v14 .dashboard-shell .altek-v143-row-link:hover,
html.altek-v14 .dashboard-shell .altek-v143-row-link:focus-visible {
 background:var(--v143-soft-row)!important;
 border-color:var(--v143-row-stroke)!important;
 box-shadow:inset 3px 0 0 var(--v143-row-stroke),0 3px 14px rgba(23,74,80,.075)!important;
}
html.altek-v14 .dashboard-shell .altek-v143-row-link:focus-visible {outline:2px solid var(--v14-teal);outline-offset:2px}
/* A little response inside the events and plan rows, but no whole giant Plan block hover. */
html.altek-v14 .dashboard-shell .hr-event-row {transition:background-color 200ms ease,box-shadow 200ms ease,transform 200ms ease!important}
@media(hover:hover) and (pointer:fine) {
 html.altek-v14 .dashboard-shell .hr-event-row:hover {transform:translateX(3px);box-shadow:inset 3px 0 0 var(--v143-row-stroke)!important}
 html.altek-v14 .dashboard-shell .altek-v143-plan-row:hover {
   background:var(--v143-soft-row)!important;border-color:var(--v143-row-stroke)!important;
   box-shadow:inset 3px 0 0 var(--v143-row-stroke),0 5px 15px rgba(15,45,54,.07)!important;
 }
}
html.altek-v14 .dashboard-shell .plan-dashboard-mini-item.altek-v143-plan-row,
html.altek-v14 .dashboard-shell .plan-dashboard-carrier-row.altek-v143-plan-row {
 transition:background-color 230ms ease,border-color 230ms ease,box-shadow 240ms ease!important;
 border-radius:10px!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-carrier-row.altek-v143-row-link:hover .carrier-order-no {color:var(--v14-teal)!important}
html.altek-v14 .dashboard-shell .plan-dashboard-carrier-list {display:grid;gap:4px}
html.altek-v14 .dashboard-shell .plan-dashboard-carrier-list .plan-dashboard-carrier-row {padding:9px 10px!important;border:1px solid var(--v14-line)!important;background:var(--v14-surface)!important}
html.altek-v14 .dashboard-shell .plan-dashboard-carrier-list .plan-dashboard-carrier-row:hover {background:var(--v143-soft-row)!important}
/* Table: no full row tint; every editable day cell is its own interactive target. */
html.altek-v14 .dashboard-shell .dashboard-tabell tbody tr:hover,
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody tr:hover,
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody tr:hover td {background:transparent!important;box-shadow:none!important}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child {
 background:var(--v14-raised)!important;border-radius:9px;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child .person-link {
 color:var(--v143-name)!important;text-decoration:none!important;cursor:pointer!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child .person-link:hover,
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child .person-link:focus-visible {text-decoration:none!important}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:not(:first-child):hover {background:transparent!important}
html.altek-v14 .dashboard-shell .dashboard-attendance-table .day-select {
 border-radius:9px!important;transition:box-shadow 210ms ease,transform 210ms ease,border-color 210ms ease!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table .day-select:not(:disabled):hover,
html.altek-v14 .dashboard-shell .dashboard-attendance-table .day-select:not(:disabled):focus-visible {
 cursor:pointer!important;transform:translateY(-2px);
 border-color:var(--v14-teal)!important;box-shadow:0 0 0 2px var(--v143-row-stroke),0 5px 12px rgba(18,62,72,.11)!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table .day-select:disabled {opacity:.72;cursor:not-allowed}

/* V14.16: working-day chip only; dark-theme codes and other attendance states are unchanged. */
html.altek-v14:not([data-theme="dark"]) .dashboard-shell
 .dashboard-attendance-table .day-select.tabell-r {
  background:#b8ded0!important;
  border-color:#79ae9d!important;
  color:#1d604d!important;
}

/* Plan: slower independent total and driver progress animations driven by visible-only JS, not CSS render cycles. */
html.altek-v14 .dashboard-shell :is(.plan-dashboard-overall-bar,.plan-driver-progress-mini .plan-progress) {
 background:var(--v143-plan-track)!important;border-radius:99px!important;overflow:hidden;
}
html.altek-v14 .dashboard-shell .plan-driver-progress-mini .plan-progress>span,
html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar>span {transform-origin:left center;animation:none!important}
html.altek-v14 .dashboard-shell .plan-driver-progress-mini .plan-progress>span {
 background:linear-gradient(90deg,#4b9982,#83cdb3)!important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .plan-driver-progress-mini .plan-progress>span {
 background:linear-gradient(90deg,#5ab99b,#b1f1d0)!important;
}
/* Analytics hover labels + vertically centred time statistic. */
html.altek-v14 .dashboard-shell .analytics-mini .chart-bar-wrap::after {
 font-size:13px!important;font-weight:750!important;min-width:76px!important;
 padding:8px 11px!important;letter-spacing:.01em;line-height:1.2!important;
 box-shadow:0 8px 22px rgba(13,39,50,.22)!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .chart-bar-wrap .bar {animation:none!important}
html.altek-v14 .dashboard-shell .analytics-mini .mini-time-stat {
 display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:stretch!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .mini-time-stat .mini-label {width:100%;font-size:13px!important}
html.altek-v14 .dashboard-shell .analytics-mini .mini-time-stat .time-metric {
 width:100%;display:flex!important;justify-content:center!important;align-items:center!important;
 gap:16px!important;margin:auto 0!important;min-height:88px!important;
}
html.altek-v14 .dashboard-shell .analytics-mini .mini-time-stat .time-metric .mini-value {font-size:30px!important}
html.altek-v14 .dashboard-shell .analytics-mini .mini-time-stat .time-visual {flex-shrink:0}
/* Sidebar stays usable as an icon rail; class limited to experimental preview while viewing dashboard. */
@media(min-width:821px) {
 html.altek-v14.altek-v143-compact .app-shell {grid-template-columns:74px minmax(0,1fr)!important;transition:grid-template-columns 470ms cubic-bezier(.18,.76,.2,1)!important}
 html.altek-v14.altek-v143-compact .sidebar {width:74px!important;padding:18px 10px!important;overflow:hidden}
 html.altek-v14.altek-v143-compact .sidebar .side-item {justify-content:center!important;padding:11px 9px!important;gap:0!important}
 html.altek-v14.altek-v143-compact .sidebar .side-label,
 html.altek-v14.altek-v143-compact .sidebar .side-badge,
 html.altek-v14.altek-v143-compact .sidebar .sidebar-bottom {display:none!important}
 html.altek-v14.altek-v143-compact .sidebar .side-icon {width:25px;height:25px;flex:0 0 25px}
 html.altek-v14 .sidebar .altek-v143-sidebar-toggle {display:grid}
}
html.altek-v14 .sidebar .altek-v143-sidebar-toggle {
 place-items:center;margin:0 7px 10px auto;width:37px;height:32px;
 background:rgba(112,188,174,.10);color:#c2e9e2;border:1px solid rgba(116,192,182,.32);
 border-radius:10px;cursor:pointer;font-size:21px;font-weight:650;transition:background 220ms,border-color 220ms;
}
html.altek-v14 .sidebar .altek-v143-sidebar-toggle:hover {background:rgba(112,188,174,.22);border-color:#80ccb9}
@media(max-width:820px) {html.altek-v14 .sidebar .altek-v143-sidebar-toggle{display:none!important}}
/* Search shrinks to a clear circular magnifier and expands on click. Global search logic stays intact. */
html.altek-v14 .top .altek-top-search {
 position:relative;min-width:46px!important;width:46px!important;max-width:46px!important;
 min-height:44px!important;justify-self:start!important;overflow:visible;
 transition:width 460ms cubic-bezier(.2,.76,.19,1),max-width 460ms cubic-bezier(.2,.76,.19,1)!important;
}
html.altek-v14 .top .altek-top-search .altek-v143-search-toggle {
 position:absolute;top:1px;left:0;width:44px;height:42px;z-index:4;display:grid;place-items:center;
 background:rgba(255,255,255,.08);border:1px solid rgba(160,213,212,.29);
 border-radius:12px;color:#d5efee;cursor:pointer;
 transition:background 220ms,border-color 220ms,transform 220ms;
}
html.altek-v14 .top .altek-top-search .altek-v143-search-toggle:hover {background:rgba(123,203,185,.22);border-color:#84caba;transform:translateY(-1px)}
html.altek-v14 .top .altek-top-search>.search-icon {display:none!important}
html.altek-v14 .top .altek-top-search input {
 box-sizing:border-box!important;width:100%!important;height:44px!important;
 padding-left:51px!important;opacity:0!important;pointer-events:none!important;
 transition:opacity 280ms ease,background-color 280ms ease!important;
}
html.altek-v14 .top .altek-top-search .search-clear {opacity:0!important;pointer-events:none!important}
html.altek-v14.altek-v143-search-open .top .altek-top-search {
 width:min(470px,100%)!important;max-width:min(470px,100%)!important;
}
html.altek-v14.altek-v143-search-open .top .altek-top-search input {opacity:1!important;pointer-events:auto!important}
html.altek-v14.altek-v143-search-open .top .altek-top-search .search-clear {opacity:1!important;pointer-events:auto!important}
html.altek-v14.altek-v143-search-open .top .altek-top-search .altek-v143-search-toggle {
 border-color:#72bfae;background:rgba(54,126,115,.25);
}
@media(max-width:820px) {
 html.altek-v14 .top .altek-top-search {grid-row:2!important;grid-column:1/-1!important;justify-self:start!important}
 html.altek-v14.altek-v143-search-open .top .altek-top-search {width:100%!important;max-width:100%!important}
}
/* Deliberately no whole-dashboard fade/reflow during loading. */
html.altek-v14 .dashboard-shell .altek-v14-watch {opacity:1!important;transform:none!important;transition:none!important}
/* Smooth circular *content* reveal via browser View Transitions, no blanket colored flash. */
html.altek-v143-theme-transition::view-transition-old(root),
html.altek-v143-theme-transition::view-transition-new(root) {animation:none!important;mix-blend-mode:normal!important}
html.altek-v143-theme-transition::view-transition-new(root) {z-index:2}
html.altek-v143-theme-transition::view-transition-old(root) {z-index:1}
@media(prefers-reduced-motion:reduce) {
 html.altek-v14 .dashboard-shell *, html.altek-v14 .sidebar *,html.altek-v14 .top *{animation:none!important;transition:none!important}
 html.altek-v14 .dashboard-shell .altek-v143-plan-row:hover {transform:none!important}
}


/* Inserted navigation controls are invisible when the experiment is switched off. */
.sidebar .altek-v143-sidebar-toggle,.top .altek-v143-search-toggle{display:none}
/* Keep collapsed navigation and compact search across section navigation in preview mode. */
@media(min-width:821px){
 html.altek-v143-effects-on.altek-v143-compact .app-shell{grid-template-columns:74px minmax(0,1fr)!important;transition:grid-template-columns 470ms cubic-bezier(.18,.76,.2,1)!important}
 html.altek-v143-effects-on.altek-v143-compact .sidebar{width:74px!important;padding:18px 10px!important;overflow:hidden}
 html.altek-v143-effects-on.altek-v143-compact .sidebar .side-item{justify-content:center!important;padding:11px 9px!important;gap:0!important}
 html.altek-v143-effects-on.altek-v143-compact .sidebar :is(.side-label,.side-badge,.sidebar-bottom){display:none!important}
 html.altek-v143-effects-on.altek-v143-compact .sidebar .side-icon{width:25px;height:25px;flex:0 0 25px}
}
html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle{display:grid}
html.altek-v143-effects-on .top .altek-top-search{position:relative;min-width:46px!important;width:46px!important;max-width:46px!important;min-height:44px!important;justify-self:start!important;overflow:visible;transition:width 460ms cubic-bezier(.2,.76,.19,1),max-width 460ms cubic-bezier(.2,.76,.19,1)!important}
html.altek-v143-effects-on .top .altek-top-search .altek-v143-search-toggle{position:absolute;top:1px;left:0;width:44px;height:42px;z-index:4;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(160,213,212,.29);border-radius:12px;color:#d5efee;cursor:pointer}
html.altek-v143-effects-on .top .altek-top-search>.search-icon{display:none!important}
html.altek-v143-effects-on .top .altek-top-search input{box-sizing:border-box!important;width:100%!important;height:44px!important;padding-left:51px!important;opacity:0!important;pointer-events:none!important;transition:opacity 280ms ease!important}
html.altek-v143-effects-on .top .altek-top-search .search-clear{opacity:0!important;pointer-events:none!important}
html.altek-v143-effects-on.altek-v143-search-open .top .altek-top-search{width:min(470px,100%)!important;max-width:min(470px,100%)!important}
html.altek-v143-effects-on.altek-v143-search-open .top .altek-top-search input{opacity:1!important;pointer-events:auto!important}
html.altek-v143-effects-on.altek-v143-search-open .top .altek-top-search .search-clear{opacity:1!important;pointer-events:auto!important}
@media(max-width:820px){
 html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle{display:none!important}
 html.altek-v143-effects-on .top .altek-top-search{grid-row:2!important;grid-column:1/-1!important}
 html.altek-v143-effects-on.altek-v143-search-open .top .altek-top-search{width:100%!important;max-width:100%!important}
}

html.altek-v143-theme-transition::view-transition{pointer-events:none}


/* ===== V14.4 · Owner visual review corrections (0.5.63 R3 preview only) ===== */
html.altek-v14 .dashboard-shell {--v144-card-hover: #e0f0ef;--v144-accent:#518d80;--v144-done:#4b9f80;}
html[data-theme="dark"].altek-v14 .dashboard-shell {--v144-card-hover:#36545d;--v144-accent:#87bdb3;--v144-done:#8bc6ad;}
/* No layout-height/translate animation for the whole page. */
html.altek-v14 .dashboard-shell .page-head,
html.altek-v14 .dashboard-shell .dashboard-kpis,
html.altek-v14 .dashboard-shell .dashboard-event-row,
html.altek-v14 .dashboard-shell .dashboard-bottom {animation:none!important;will-change:auto!important;}
html.altek-v14 .dashboard-shell {overflow-anchor:none;}
/* Subtle separator-mounted sidebar chevron, not an inset toolbar button. */
@media(min-width:821px){
 html.altek-v143-effects-on .sidebar{overflow:visible!important;}
 html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle{
   display:grid!important;position:absolute!important;top:21px!important;right:-14px!important;
   z-index:24!important;width:27px!important;height:29px!important;min-width:27px!important;
   margin:0!important;padding:0!important;border-radius:50%!important;
   background:#203c46!important;color:#cceee8!important;border:1px solid #618e8e!important;
   box-shadow:0 3px 14px rgba(0,0,0,.14)!important;font-size:16px!important;
   transition:background .22s ease,transform .24s ease,border-color .24s ease!important;
 }
 html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle:hover{
   background:#357167!important;transform:scale(1.08)!important;border-color:#9dd3c5!important;
 }
}
/* Employee + order lines are clickable as a whole; names/numbers have no separate treatment. */
html.altek-v14 .dashboard-shell .employee-row .person-link.person-name,
html.altek-v14 .dashboard-shell .current-order-row .order-number-link,
html.altek-v14 .dashboard-shell .employee-row .person-link.person-name:hover,
html.altek-v14 .dashboard-shell .current-order-row .order-number-link:hover {
  text-decoration:none!important;box-shadow:none!important;background:transparent!important;
  border-color:transparent!important;transform:none!important;
}
/* Plan's native controls: feedback on hover/focus, no change to onclick permissions. */
html.altek-v14 .dashboard-shell :is(.plan-mode-switch .btn,.plan-dashboard-collapse-btn){
  transition:background-color .23s ease,border-color .23s ease,box-shadow .23s ease,transform .2s ease!important;
  cursor:pointer!important;
}
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell :is(.plan-mode-switch .btn,.plan-dashboard-collapse-btn):hover{
   transform:translateY(-2px)!important;border-color:var(--v144-accent)!important;
   box-shadow:0 5px 14px rgba(8,35,42,.15)!important;
 }
}
html.altek-v14 .dashboard-shell :is(.plan-mode-switch .btn,.plan-dashboard-collapse-btn):focus-visible{outline:2px solid var(--v144-accent)!important;outline-offset:3px;}
/* Four distinct Plan KPI icons: each chip uses different accent and a clear contrast. */
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress):nth-child(1)>span{
 color:#357e74!important;background:#dcefe9!important;border-color:#aed6c9!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:nth-child(2)>span{
 color:#376caa!important;background:#e0ebf9!important;border-color:#b4cceb!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:nth-child(3)>span{
 color:#936d36!important;background:#f7ecdc!important;border-color:#dfc9a6!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:nth-child(4)>span{
 color:#916b98!important;background:#f0e6f4!important;border-color:#d6c0dc!important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .plan-dashboard-stats>div:nth-child(1)>span{
 color:#b1ebd1!important;background:#285347!important;border-color:#4c846e!important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .plan-dashboard-stats>div:nth-child(2)>span{
 color:#b4d7ff!important;background:#2a4668!important;border-color:#567aa8!important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .plan-dashboard-stats>div:nth-child(3)>span{
 color:#f0d3a1!important;background:#55452f!important;border-color:#866e4e!important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .plan-dashboard-stats>div:nth-child(4)>span{
 color:#e8cbf4!important;background:#4c3857!important;border-color:#86618e!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>span{
 width:51px!important;height:51px!important;border-radius:15px!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>span svg{width:28px!important;height:28px!important;}
/* Driver header: note occupies an independent full-width grid row. */
html.altek-v14 .dashboard-shell .plan-dashboard-driver-column .plan-dashboard-column-head{
 display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
 grid-template-rows:auto auto!important;align-items:start!important;gap:9px 12px!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-driver-column .plan-dashboard-column-title{
 grid-column:1!important;grid-row:1!important;min-width:0!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-driver-column .plan-driver-progress-mini{
 grid-column:2!important;grid-row:1!important;align-self:center!important;
}
/* Driver metadata note: full-width horizontal sentence, not narrow dark capsule. */
html.altek-v14 .dashboard-shell .plan-dashboard-driver-note{
 grid-column:1/-1!important;grid-row:2!important;
 display:block!important;width:100%!important;max-width:none!important;
 margin:10px 0 2px!important;padding:7px 11px!important;box-sizing:border-box!important;
 background:transparent!important;color:var(--v14-ink)!important;
 border:1px solid var(--v14-line)!important;border-radius:10px!important;
 font-size:14px!important;font-weight:600!important;line-height:1.45!important;
 white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-driver-meta{
 font-size:13px!important;line-height:1.4!important;color:var(--v14-subtle)!important;
}
/* Completed routes: a single soft stroke + restrained accent, no double saturated glow. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-mini-item,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block{
 background:var(--v14-raised)!important;border:1px solid var(--v14-line)!important;
 box-shadow:none!important;transition:background .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-mini-item.is-done,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block.is-done{
 background:var(--v14-raised)!important;border-color:var(--v14-line)!important;
 box-shadow:inset 3px 0 0 var(--v144-done)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-mini-item.is-executing,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block.is-executing{
 background:var(--v14-raised)!important;border-color:var(--v14-line)!important;
 box-shadow:inset 3px 0 0 #689ebc!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-mini-item.is-done .plan-dashboard-subline{
 color:var(--v14-subtle)!important;font-weight:600!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-mini-item.is-executing .plan-dashboard-subline{
 color:var(--v14-subtle)!important;font-weight:600!important;
}
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 :is(.plan-dashboard-mini-item,.plan-dashboard-carrier-block,.plan-dashboard-carrier-head,.plan-dashboard-carrier-row):hover{
  background:var(--v144-card-hover)!important;border-color:var(--v144-accent)!important;
  box-shadow:inset 3px 0 0 var(--v144-accent),0 5px 16px rgba(14,40,48,.12)!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-mini-item.interactive:hover{cursor:pointer!important;}
}
/* Tabell: fixed uniform surfaces for sticky column, hover only individual name cell. */
html.altek-v14 .dashboard-shell .dashboard-attendance-table th:first-child,
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child,
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody tr:hover td:first-child,
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody tr:has(.day-select:hover) td:first-child{
 background:var(--v14-surface)!important;box-shadow:none!important;border-radius:0!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody tr:hover td:not(:first-child){
 background:transparent!important;box-shadow:none!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child .person-link,
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child .person-link:hover{
 display:block!important;width:100%!important;text-align:left!important;
 text-decoration:none!important;background:transparent!important;box-shadow:none!important;
 padding:5px 0!important;border:0!important;transform:none!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child.altek-v144-person-cell{
 cursor:pointer!important;transition:background-color .2s ease!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child.altek-v144-person-cell:hover,
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child.altek-v144-person-cell:focus-visible{
 background:var(--v144-card-hover)!important;box-shadow:inset 3px 0 0 var(--v144-accent)!important;
 border-radius:7px!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table td:not(:first-child):hover{
 background:transparent!important;box-shadow:none!important;
}
@media(max-width:820px){
 html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>span{
 width:32px!important;height:32px!important;border-radius:10px!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-stats>div:not(.plan-dashboard-stat-progress)>span svg{width:21px!important;height:21px!important;}
}
@media(prefers-reduced-motion:reduce){
 html.altek-v14 .dashboard-shell .dashboard-attendance-table td:first-child.altek-v144-person-cell,
 html.altek-v14 .dashboard-shell .plan-dashboard-mini-item {transition:none!important}
}


/* ===== ALTEK Dashboard V14.5 · owner acceptance refinements ===== */
/* Search: no double outer glowing outline during expansion. Preserve inner icon. */
html.altek-v143-effects-on .top .altek-top-search,
html.altek-v143-effects-on.altek-v143-search-open .top .altek-top-search,
html.altek-v143-effects-on .top .altek-top-search:focus-within {
 border:0!important;outline:0!important;box-shadow:none!important;
 background:transparent!important;
}
html.altek-v143-effects-on .top .altek-top-search input,
html.altek-v143-effects-on .top .altek-top-search input:focus {
 border:0!important;outline:0!important;box-shadow:none!important;
 background:rgba(150,192,190,.11)!important;
 border-radius:12px!important;
}
/* Theme action has the same physical response as search/other header buttons. */
html.altek-v143-effects-on .top [data-altek-theme-toggle] {
 cursor:pointer!important;
 transition:transform 210ms cubic-bezier(.18,.76,.23,1),
 background-color 210ms ease,border-color 210ms ease,box-shadow 210ms ease!important;
}
@media(hover:hover) and (pointer:fine){
 html.altek-v143-effects-on .top [data-altek-theme-toggle]:hover {
   transform:translate3d(0,-3px,0) scale(1.045)!important;
   background:rgba(113,192,180,.21)!important;
   box-shadow:0 7px 20px rgba(0,0,0,.16)!important;
 }
}
html.altek-v143-effects-on .top [data-altek-theme-toggle]:active {
 transform:translateY(0) scale(.96)!important;
}
html.altek-v143-effects-on .top [data-altek-theme-toggle]:focus-visible {
 outline:2px solid #81c4b5!important;outline-offset:3px;
}
/* Sidebar handle: midway down menu, center of divider. Top is set from actual
   first/last menu element bounds by JS, instead of an arbitrary pixel offset. */
@media(min-width:821px){
 html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle {
   top:var(--v145-sidebar-middle,50%)!important;right:-14px!important;transform:translateY(-50%)!important;
   width:25px!important;height:38px!important;border-radius:12px!important;
   border:1px solid #669994!important;
   background:var(--v14-surface,#1d3540)!important;
   box-shadow:0 3px 10px rgba(0,0,0,.12)!important;
 }
 html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle:hover {
   transform:translateY(-50%) scale(1.09)!important;
   background:#315b59!important;
 }
}
/* The row alone owns hover; the person-name never has a second glow/color. */
html.altek-v14 .dashboard-shell .employee-row .person-link.person-name,
html.altek-v14 .dashboard-shell .employee-row:hover .person-link.person-name,
html.altek-v14 .dashboard-shell .employee-row .person-link.person-name:hover,
html.altek-v14 .dashboard-shell .employee-row .person-link.person-name:focus {
 color:var(--v14-ink)!important;
 text-decoration:none!important;background:transparent!important;
 box-shadow:none!important;border:0!important;filter:none!important;
 outline:0!important;transform:none!important;
}
html.altek-v14 .dashboard-shell .employee-row .avatar-sm {
 margin-left:7px!important;box-sizing:border-box!important;
 flex-shrink:0!important;isolation:isolate;
}
/* Plan segmented controls: calmer, legible surfaces in light and dark. */
html.altek-v14 .dashboard-shell .plan-mode-switch {
 border:1px solid var(--v14-line)!important;
 background:var(--v14-raised)!important;
 border-radius:13px!important;padding:3px!important;gap:3px!important;
}
html.altek-v14 .dashboard-shell .plan-mode-switch .btn,
html.altek-v14 .dashboard-shell .plan-dashboard-collapse-btn {
 background:transparent!important;color:var(--v14-ink)!important;
 border:1px solid transparent!important;border-radius:10px!important;
 font-weight:700!important;
}
html.altek-v14 .dashboard-shell .plan-mode-switch .btn.on {
 color:#255e58!important;background:#ddf0e9!important;
 border-color:#9dc8b9!important;box-shadow:0 2px 7px rgba(28,70,66,.08)!important;
}
html[data-theme="dark"].altek-v14 .dashboard-shell .plan-mode-switch .btn.on {
 background:#305951!important;color:#dcf9ec!important;border-color:#609688!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-collapse-btn {
 border:1px solid var(--v14-line)!important;background:var(--v14-raised)!important;
}
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell .plan-mode-switch .btn:not(.on):hover,
 html.altek-v14 .dashboard-shell .plan-dashboard-collapse-btn:hover {
   background:var(--v144-card-hover)!important;
 }
}
/* Carrier cards have ONE hover surface. Never shade inner head independently. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block:hover {
 border-radius:13px!important;overflow:visible;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-head,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-head:hover,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block:hover > .plan-dashboard-carrier-head {
 background:transparent!important;box-shadow:none!important;
 border:0!important;outline:0!important;transform:none!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-carrier-head {
 display:flex!important;align-items:center!important;gap:11px!important;
 min-height:64px!important;
}

/* Keep nested order interactions distinct only after expanding a carrier. */
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block:hover {
   background:var(--v144-card-hover)!important;border-color:var(--v144-accent)!important;
   box-shadow:inset 3px 0 0 var(--v144-accent),0 6px 18px rgba(14,40,48,.12)!important;
 }
}
/* Warehouse contour has no route-specific "currently executing" border.
   Individual warehouse status badges remain intact. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
 :is(.plan-dashboard-mini-item.is-executing,.plan-dashboard-carrier-block.is-executing):not(:hover) {
 border-color:var(--v14-line)!important;
 box-shadow:none!important;background:var(--v14-raised)!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
 :is(.plan-dashboard-mini-item.is-executing,.plan-dashboard-carrier-block.is-executing)::before {
 display:none!important;
}
/* Text is not pressed against the tabell hover indicator. */
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody td:first-child.altek-v144-person-cell,
html.altek-v14 .dashboard-shell .dashboard-attendance-table thead th:first-child {
 padding-left:12px!important;
}
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody td:first-child .person-link,
html.altek-v14 .dashboard-shell .dashboard-attendance-table tbody td:first-child .person-link:hover {
 padding:7px 8px!important;
}
/* Prevent a pre-animation flash while real data and layout first settle. */
html.altek-v145-initializing.altek-v14 .dashboard-shell :is(.page-head,.kpi-card,.dashboard-event-row>.card,.plan-dashboard-card,.dashboard-bottom>.card){opacity:0!important;}
/* Entrance is opacity/blur-only, no layout displacement or repeated CSS timeline. */
html.altek-v14 .dashboard-shell .altek-v145-enter {transform:none!important;}
@media(max-width:820px){
 html.altek-v14 .dashboard-shell .plan-dashboard-carrier-head > .plan-dashboard-status {
   min-width:0!important;margin-left:0!important;
 }
}
@media(prefers-reduced-motion:reduce){
 html.altek-v143-effects-on .top [data-altek-theme-toggle]{transition:none!important;transform:none!important;}
}


/* ================ V14.6: aligned warehouse-plan carrier rows ================ */




/* Expanded order rows occupy the content lane, not the right status column. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block > .plan-dashboard-carrier-list {
  width:calc(100% - 156px)!important;max-width:calc(100% - 156px)!important;
  margin:0 144px 6px 12px!important;box-sizing:border-box!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-carrier-list .plan-dashboard-carrier-row {
  min-width:0;box-sizing:border-box!important;
}
/* Warehouse first-point hover without route-only blue executing marker. */
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
  .plan-dashboard-mini-item:hover,
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
  .plan-dashboard-mini-item.is-executing:hover {
    background:var(--v144-card-hover)!important;
    border-color:var(--v144-accent)!important;
    box-shadow:inset 3px 0 0 var(--v144-accent),0 5px 14px rgba(16,54,65,.11)!important;
 }
}
@media(max-width:640px){
 html.altek-v14 .dashboard-shell .plan-dashboard-carrier-head,
 html.altek-v14 .dashboard-shell .plan-dashboard-carrier-head:has(>.plan-dashboard-check){
   grid-template-columns:auto minmax(0,1fr)!important;row-gap:8px!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-carrier-head > .plan-dashboard-status {
   grid-column:1/-1!important;justify-self:start!important;width:auto!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block > .plan-dashboard-carrier-list {
   width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important;
   margin:0 12px 6px!important;
 }
}
/* ================= V14.6: refined light graphite palette ================= */
html.altek-v14:not([data-theme="dark"]) .dashboard-shell {
 --v14-surface:#f0f4f6;
 --v14-raised:#e8eff2;
 --v14-ink:#263e4a;
 --v14-subtle:#5a7180;
 --v14-line:#cbd7dd;
 --v14-shadow:0 3px 7px rgba(35,52,64,.03),0 13px 30px rgba(35,52,64,.055);
 background:#e5edf1!important;
}
html.altek-v14:not([data-theme="dark"]) .dashboard-shell .kpi-card,
html.altek-v14:not([data-theme="dark"]) .dashboard-shell .dashboard-event-row > .card,
html.altek-v14:not([data-theme="dark"]) .dashboard-shell .dashboard-grid > .card,
html.altek-v14:not([data-theme="dark"]) .dashboard-shell .dashboard-bottom > .card,
html.altek-v14:not([data-theme="dark"]) .dashboard-shell .plan-dashboard-card {
 background:#f0f4f6!important;
}
/* ============== V14.6: actual staged entrance ================== */
html.altek-v14 .dashboard-shell .altek-v146-pending {
 opacity:0!important;filter:blur(2px)!important;
 transition:none!important;
}
html.altek-v14 .dashboard-shell .altek-v146-pending.altek-v146-show {
 opacity:1!important;filter:blur(0px)!important;
 transition:opacity 920ms cubic-bezier(.18,.77,.23,1) var(--v146-delay,0ms),
            filter 980ms ease var(--v146-delay,0ms)!important;
}
html.altek-v14 .dashboard-shell .altek-v146-content.altek-v146-pending.altek-v146-show {
 transition-duration:760ms,820ms!important;
}
/* Hide content before the controller stages it; bootstrap class is installed
   in <head> before the app HTML is parsed, avoiding a static first paint. */
html.altek-v146-boot .dashboard-shell :is(.page-head,.dashboard-kpis>.kpi-card,.dashboard-event-row>.card,.plan-dashboard-card,.dashboard-bottom>.card) {
 opacity:0!important;
}
/* Force chart animation AFTER the chart is scrolled into view. Overrides the
   V14.3/V14.4 animation:none!important selector. */
@keyframes altek-v146-rise-bars {
  0% {transform:scaleY(.025);opacity:.18;}
  65% {opacity:1;}
  100% {transform:scaleY(1);opacity:1;}
}
@keyframes altek-v146-fill-progress {
  0% {transform:scaleX(.015)}
  100% {transform:scaleX(1)}
}
html.altek-v14 .dashboard-shell .analytics-mini .mini-stat .chart .chart-bar-wrap > .bar.altek-v146-bar-play {
 animation:altek-v146-rise-bars 1750ms cubic-bezier(.15,.75,.2,1) both!important;
 animation-delay:calc(var(--v146-index,0) * 125ms)!important;
 transform-origin:center bottom!important;
 will-change:transform,opacity;
}
html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar > span.altek-v146-progress-play,
html.altek-v14 .dashboard-shell .plan-driver-progress-mini .plan-progress > span.altek-v146-progress-play {
 animation:altek-v146-fill-progress 1650ms cubic-bezier(.18,.76,.21,1) both!important;
 animation-delay:calc(var(--v146-index,0) * 130ms)!important;
 transform-origin:left center!important;
}
@media(prefers-reduced-motion:reduce){
 html.altek-v14 .dashboard-shell .altek-v146-pending,
 html.altek-v14 .dashboard-shell .altek-v146-pending.altek-v146-show {
   opacity:1!important;filter:none!important;transition:none!important;
 }
 html.altek-v14 .dashboard-shell .analytics-mini .mini-stat .chart .chart-bar-wrap > .bar.altek-v146-bar-play,
 html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar > span.altek-v146-progress-play,
 html.altek-v14 .dashboard-shell .plan-driver-progress-mini .plan-progress > span.altek-v146-progress-play {
   animation:none!important;transform:none!important;opacity:1!important;
 }
}

/* V14.6: progress only animates on an observer-triggered class, not on every
   background render, avoiding a double fill on plan mode switching. */
html.altek-v14 .dashboard-shell .plan-dashboard-overall-bar > span:not(.altek-v146-progress-play),
html.altek-v14 .dashboard-shell .plan-driver-progress-mini .plan-progress > span:not(.altek-v146-progress-play) {
 animation:none!important;
}
/* Warehouse mode first stop: unmistakable hover even when the native
   is-executing selector enforces a neutral base surface. No route-blue border. */
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
 .plan-dashboard-mini-item:hover,
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
 .plan-dashboard-mini-item.is-executing:hover {
   filter:brightness(1.12)!important;
   outline:1.5px solid var(--v144-accent)!important;
   outline-offset:-1px!important;
 }
}

/* ==========================================================================
   V14.7 — user-approved 2+2+1 Plan alignment, without changing any KPI tile.
   The upper five KPI columns and their gaps are the source of truth.
   One driver occupies two KPI tracks plus their internal gap; same for the
   second driver; supplementary sections occupy exactly KPI #5.
   ========================================================================== */
@media (min-width:1280px) {
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair {
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:12px!important;
    align-items:start!important;
    min-width:0!important;
    width:100%!important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054 {
    display:contents!important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054 >.plan-dashboard-column:nth-child(1) {
    grid-column:1 / span 2!important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054 >.plan-dashboard-column:nth-child(2) {
    grid-column:3 / span 2!important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054 >.plan-dashboard-column {
    width:100%!important;max-width:none!important;min-width:0!important;
    margin:0!important;box-sizing:border-box!important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-extra-zone-v054 {
    grid-column:5!important;grid-row:1!important;
    width:100%!important;max-width:none!important;min-width:0!important;
    box-sizing:border-box!important;
    padding:10px!important;overflow-wrap:normal!important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-extra-zone-v054 .plan-dashboard-column {
    min-width:0!important;max-width:100%!important;width:100%!important;
    box-sizing:border-box!important;padding:10px!important;
  }
}
/* Small laptop/mobile: fall back to two columns, and then one.
   Do not widen or change the five KPI tiles at any viewport. */
@media(min-width:961px) and (max-width:1279px) {
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair {
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px!important;width:100%!important;
  }
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054{display:contents!important;}
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054 >.plan-dashboard-column{min-width:0!important;width:100%!important;max-width:none!important;}
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-extra-zone-v054{grid-column:1/-1!important;width:100%!important;max-width:none!important;min-width:0!important;}
}
@media(max-width:960px){
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-column:1!important;overflow:visible!important;}
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-driver-zone-v054 >.plan-dashboard-column{width:100%!important;min-width:0!important;max-width:none!important;}
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
    >.plan-dashboard-extra-zone-v054{grid-column:1!important;width:100%!important;max-width:none!important;min-width:0!important;}
}
/* Supplementary carrier cards: keep words horizontal even inside the fifth track. */





html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
 .plan-dashboard-extra-zone-v054 .plan-dashboard-carrier-subline {
  display:flex!important;flex-wrap:wrap!important;gap:3px 7px!important;
  align-items:center!important;min-width:0!important;
}

html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
 .plan-dashboard-extra-zone-v054 .plan-dashboard-carrier-block >.plan-dashboard-carrier-list {
  width:calc(100% - 16px)!important;max-width:calc(100% - 16px)!important;
  margin:0 8px 6px!important;
}
/* Regular driver points / carrier blocks have one standardized status lane.
   Carrier main row has a reserved chevron track matching standard points. */
@media(min-width:641px) {
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-carrier-head,
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-carrier-head:has(>.plan-dashboard-check) {
   display:grid!important;
   grid-template-columns:28px minmax(0,1fr) 112px 30px!important;
   gap:9px!important;align-items:center!important;
   min-height:60px!important;padding:9px 10px!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-carrier-head:not(:has(>.plan-dashboard-check)) {
   grid-template-columns:28px minmax(0,1fr) 112px 30px!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-carrier-head>.plan-dashboard-check{grid-column:1!important;grid-row:1!important;}
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-carrier-head>.plan-dashboard-carrier-main{grid-column:2!important;grid-row:1!important;min-width:0!important;}
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-carrier-head>.plan-dashboard-status {
   grid-column:3!important;grid-row:1!important;align-self:center!important;justify-self:center!important;
   min-width:0!important;max-width:112px!important;width:112px!important;height:29px!important;min-height:29px!important;
   font-size:10px!important;line-height:1.15!important;padding:4px 6px!important;box-sizing:border-box!important;
   display:flex!important;justify-content:center!important;align-items:center!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-mini-item>.plan-dashboard-status {
   width:112px!important;max-width:112px!important;min-width:0!important;
   height:29px!important;min-height:29px!important;font-size:10px!important;line-height:1.15!important;
   padding:4px 6px!important;box-sizing:border-box!important;
   justify-self:center!important;align-self:center!important;display:flex!important;
   align-items:center!important;justify-content:center!important;
 }
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-driver-zone-v054
   .plan-dashboard-carrier-block >.plan-dashboard-carrier-list {
   width:calc(100% - 166px)!important;max-width:calc(100% - 166px)!important;
   margin:0 154px 6px 12px!important;
 }
}
/* Sophisticated warm graphite rather than cold glaring pure-white surfaces. */
html.altek-v14:not([data-theme="dark"]) .dashboard-shell {
 --v14-surface:#e8e9e7;
 --v14-raised:#dfe3e2;
 --v14-ink:#293741;
 --v14-subtle:#54666c;
 --v14-line:#c3cbca;
 --v144-card-hover:#d6e6e1;
 background:#d9dedc!important;
}
html.altek-v14:not([data-theme="dark"]) .dashboard-shell :is(.kpi-card,.dashboard-event-row>.card,.dashboard-grid>.card,.dashboard-bottom>.card,.plan-dashboard-card) {
 background:#e9ebea!important;border-color:#c7cfce!important;
}
html.altek-v14:not([data-theme="dark"]) .dashboard-shell .plan-dashboard-main-grid-v054 :is(.plan-dashboard-column,.plan-dashboard-extra-zone-v054) {
 background:#e4e7e5!important;border-color:#c5cfcb!important;
}
html.altek-v14:not([data-theme="dark"]) .dashboard-shell .plan-dashboard-main-grid-v054 :is(.plan-dashboard-mini-item,.plan-dashboard-carrier-block):not(:hover) {
 background:#e8ece9!important;border-color:#c5cfcc!important;
}
/* Sidebar: real width animation, so opening does not snap back after toggling.
   Keep navigation click handlers untouched; animate only layout dimensions. */
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
 html.altek-v143-effects-on .app-shell {
   transition:grid-template-columns 560ms cubic-bezier(.2,.72,.2,1)!important;
 }
 html.altek-v143-effects-on .sidebar {
   transition:width 560ms cubic-bezier(.2,.72,.2,1),
     padding 560ms cubic-bezier(.2,.72,.2,1)!important;
 }
 html.altek-v143-effects-on .sidebar .side-item {
   transition:background-color 180ms ease,padding 480ms cubic-bezier(.2,.72,.2,1),
     gap 480ms cubic-bezier(.2,.72,.2,1)!important;
 }
 html.altek-v143-effects-on .sidebar .side-label {
   transition:opacity 250ms ease,transform 340ms ease!important;
 }
}
/* V14.7 — richer, intentionally sequenced first-page entrance.
   Geometry stays in place: only opacity, subtle scale and blur move. */
html.altek-v14 .dashboard-shell .altek-v146-pending:not(.altek-v146-show) {
 opacity:0!important;filter:blur(6px)!important;
 transform:translate3d(0,7px,0) scale(.985)!important;
 transition:none!important;
}
html.altek-v14 .dashboard-shell .altek-v146-pending.altek-v146-show {
 opacity:1!important;filter:blur(0)!important;transform:translate3d(0,0,0) scale(1)!important;
 transition:opacity 980ms cubic-bezier(.16,.77,.2,1) var(--v146-delay,0ms),
  filter 1030ms ease var(--v146-delay,0ms),
  transform 1040ms cubic-bezier(.14,.8,.2,1) var(--v146-delay,0ms)!important;
}
html.altek-v14 .dashboard-shell .altek-v146-content.altek-v146-pending.altek-v146-show {
 transition-duration:720ms,770ms,810ms!important;
}
@media(prefers-reduced-motion:reduce) {
 html.altek-v14 .dashboard-shell :is(.altek-v146-pending,.altek-v146-pending.altek-v146-show) {
   opacity:1!important;filter:none!important;transform:none!important;transition:none!important;
 }
}
/* V14.7 final parity: native KPI stats inset 0.75% per side. The lower
   2+2+1 grid uses exactly the same width and origin, rather than just ratios. */
@media(min-width:1280px){
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair {
  width:98.5%!important;max-width:98.5%!important;
  margin-left:auto!important;margin-right:auto!important;
 }
}
/* A collapsed icon rail must *animate* text, not snap with display:none. */
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
 html.altek-v143-effects-on .sidebar .sidebar-nav .side-item .side-label {
   display:inline-block!important;max-width:210px!important;opacity:1!important;
   overflow:hidden!important;white-space:nowrap!important;
   transition:max-width 480ms cubic-bezier(.2,.72,.2,1),opacity 240ms ease!important;
 }
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-nav .side-item .side-label {
   display:inline-block!important;max-width:0px!important;opacity:0!important;
   transition:max-width 450ms cubic-bezier(.2,.72,.2,1),opacity 180ms ease!important;
 }
}
/* Border handle must remain clickable even when dashboard cards overlap the
   sidebar edge; scoped to preview, desktop only. */
@media(min-width:821px){
 html.altek-v143-effects-on .sidebar{z-index:75!important;isolation:isolate;}
 html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle{
   position:absolute!important;z-index:76!important;pointer-events:auto!important;
 }
}
/* Size sidebar by the animated grid track, not an immediately applied 74px
   width. This prevents the nav rail from snapping while the content moves. */
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
 html.altek-v143-effects-on .app-shell > .sidebar,
 html.altek-v143-effects-on.altek-v143-compact .app-shell > .sidebar {
   width:100%!important;min-width:0!important;box-sizing:border-box!important;
 }
}


/* ===================== ALTEK V14.8 targeted corrections ===================== */
/* Critical regression fix: the 2+2+1 !important grid must NEVER override the
   native collapsed state. The native 0.5.63 toggle still owns the state. */
html.altek-v14 .dashboard-shell .plan-dashboard-card.plan-dashboard-collapsed
  .plan-dashboard-main-grid-v054.altek-v147-pair,
html.altek-v14 .dashboard-shell .plan-dashboard-card.plan-dashboard-collapsed
  .plan-dashboard-main-grid-v054 {
  display:none!important;visibility:hidden!important;height:0!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
}
/* Original event-item buttons keep their own click handlers; make separators
   consistent with employee and order rows without dividing text arbitrarily. */
html.altek-v14 .dashboard-shell .hr-events-dashboard-card .hr-events-list
  >.hr-event-item + .hr-event-item {
  border-top:1px solid var(--v14-line,#36515c)!important;
}
html.altek-v14 .dashboard-shell .hr-events-dashboard-card .hr-event-item {
  border-radius:9px!important;
  min-width:0;
  transition:background-color 180ms ease,box-shadow 180ms ease!important;
}
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell .hr-events-dashboard-card .hr-event-item:hover {
  background:var(--v144-card-hover)!important;
  border-color:var(--v144-accent)!important;
  box-shadow:inset 3px 0 0 var(--v144-accent),0 5px 16px rgba(14,40,48,.12)!important;
 }
}
/* Section titles are the navigation controls now. Retain the existing hidden
   button in DOM, and invoke its original handler, not a duplicated route. */
html.altek-v14 .dashboard-shell .altek-v148-original-navigation {
 display:none!important;
}
html.altek-v14 .dashboard-shell h2.altek-v148-heading-link {
 cursor:pointer!important;
 display:inline-flex;align-items:center;gap:8px;
 border-radius:6px;
 transition:color 170ms ease,opacity 170ms ease!important;
}
html.altek-v14 .dashboard-shell h2.altek-v148-heading-link::after {
 content:"↗";font-size:.58em;font-weight:750;color:var(--v14-teal,#6dc3b2);
 opacity:.7;transition:transform 180ms ease,opacity 180ms ease;
}
html.altek-v14 .dashboard-shell h2.altek-v148-heading-link:hover::after {
 opacity:1;transform:translate(2px,-2px);
}
html.altek-v14 .dashboard-shell h2.altek-v148-heading-link:focus-visible {
 outline:2px solid var(--v14-teal,#6dc3b2);outline-offset:4px;
}
/* Five KPI hover surfaces, including overall progress (no navigation). */
html.altek-v14 .dashboard-shell .plan-dashboard-stats > div {
 transition:background-color 210ms ease,border-color 210ms ease,
   box-shadow 240ms ease,transform 230ms cubic-bezier(.2,.8,.2,1)!important;
}
@media(hover:hover) and (pointer:fine) {
 html.altek-v14 .dashboard-shell .plan-dashboard-stats > div:hover {
  transform:translate3d(0,-3px,0)!important;
  border-color:var(--v14-teal,#6dc3b2)!important;
  box-shadow:0 9px 24px rgba(0,0,0,.16)!important;
  background:var(--v14-raised,#273b45)!important;
 }
}
/* Fifth KPI is the reference track. These sections are aligned by V14.7's
   exact browser-tested grid; do not change any KPI card width or position. */
@media(min-width:1280px) {
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair
  >.plan-dashboard-extra-zone-v054 {
   margin:0!important;min-width:0!important;
 }
}
/* Transport-company badges occupy a dedicated right lane and match ordinary
   point badges. Remove V14.7's intentional but visually wrong 13px offset. */
@media(min-width:641px) {
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
   .plan-dashboard-driver-zone-v054 .plan-dashboard-carrier-head > .plan-dashboard-status {
  transform:none!important;
  grid-column:3!important;grid-row:1!important;
  width:112px!important;max-width:112px!important;
  justify-self:center!important;align-self:center!important;
  height:29px!important;min-height:29px!important;
  margin:0!important;box-sizing:border-box!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
 }
}
/* Additional sections are a narrower KPI #5 track. Reserve the full width
   for the title, with a second aligned STATUS ROW at its RIGHT edge. This
   fixes invisible/covered TK DL status in warehouse mode. */





/* No fade/clip of a known transport badge in a special section. */
html.altek-v14 .dashboard-shell .plan-dashboard-extra-zone-v054
 .plan-dashboard-carrier-head .plan-dashboard-status {clip-path:none!important;}
/* On browsers supporting View Transitions, animate true native collapse
   without overriding live card height, therefore no overlap with analytics. */
/* V14.8 exact geometry: the measured 5-KPI x-coordinate and span win over
   the previous percentage approximation at wide screen sizes. */
@media(min-width:1280px){
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.altek-v147-pair:not(.unused) {
  width:var(--v148-width,98.5%)!important;max-width:none!important;
  margin-left:var(--v148-offset,auto)!important;margin-right:0!important;
 }
}
/* Page entrance must not move or scale the whole Plan layout. Widths are
   measured against KPI positions; transforms skew those measurements. */
html.altek-v14 .dashboard-shell .plan-dashboard-card.altek-v146-pending,
html.altek-v14 .dashboard-shell .plan-dashboard-card.altek-v146-pending.altek-v146-show {
 transform:none!important;
 transition:opacity 980ms cubic-bezier(.16,.77,.2,1) var(--v146-delay,0ms),
  filter 1030ms ease var(--v146-delay,0ms)!important;
}
/* Nested KPI rail is separately staged by the entrance choreography. Its
   transform formerly changed measured KPI x/width by 0.75% and left the
   lower grid misaligned after the reveal finished. */
html.altek-v14 .dashboard-shell .plan-dashboard-stats.altek-v146-pending,
html.altek-v14 .dashboard-shell .plan-dashboard-stats.altek-v146-pending.altek-v146-show {
 transform:none!important;
 transition:opacity 780ms ease var(--v146-delay,0ms),filter 800ms ease var(--v146-delay,0ms)!important;
}




/* ================= ALTEK V14.11 — unified layout fix =================
   No additional named View Transition exists on Plan. Only root is snapped
   while switching theme, preventing independently recoloured rectangles.
   Keep Plan header and all five KPI rectangles geometrically identical in
   expanded/collapsed states. The native collapse owns only the LOWER table. */
html.altek-v14 .dashboard-shell .plan-dashboard-card .plan-dashboard-hero-head,
html.altek-v14 .dashboard-shell .plan-dashboard-card.plan-dashboard-collapsed .plan-dashboard-hero-head {
  border-bottom:1px solid var(--v14-line,#36515c)!important;
  padding-bottom:14px!important;
  margin:0!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-card > .plan-dashboard-stats,
html.altek-v14 .dashboard-shell .plan-dashboard-card.plan-dashboard-collapsed > .plan-dashboard-stats {
  display:grid!important;
  visibility:visible!important;
  height:auto!important;
  opacity:1!important;
  overflow:visible!important;
  padding:0!important;
  margin:14px 0 18px!important;
  min-height:76px!important;
  transform:none!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-card.plan-dashboard-collapsed > .plan-dashboard-main-grid-v054 {
  display:none!important;
}
/* Reserve ONE status lane per row; nested orders never run beneath badges.
   The corresponding header placement is owned by reconcileCarrierGeometry(). */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-head {
  position:relative!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block {
  box-sizing:border-box!important;
  padding:0!important;
  min-width:0!important;
  overflow:visible!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-main {
  min-width:0!important;
  writing-mode:horizontal-tb!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-main b,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-subline,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-subline > span {
  word-break:normal!important;
  overflow-wrap:normal!important;
  writing-mode:horizontal-tb!important;
  white-space:normal!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-head > .plan-dashboard-status {
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:10px!important;
  line-height:1.15!important;
  height:29px!important;
  min-height:29px!important;
  max-height:29px!important;
  margin:0!important;
  transform:none!important;
  align-self:center!important;
}
/* V14.12 — transport-company linked orders: content-sized rows.
   Previous releases reserved a badge lane in the outer list but forced every
   inner .carrier-row to width:100%; the painted bar consequently invaded the
   visual status column. Fix the innermost painted row as well as its parent.
   Badges remain independently aligned by reconcileCarrierGeometry() above. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-block > .plan-dashboard-carrier-list {
  --v1412-status-reserve:150px;
  display:grid!important;
  grid-template-columns:minmax(0,max-content)!important;
  width:fit-content!important;
  max-width:calc(100% - var(--v1412-status-reserve))!important;
  min-width:0!important;
  justify-content:start!important;
  justify-items:start!important;
  gap:5px!important;
  margin:5px 0 9px 10px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
/* The KPI #5 extra zone has a narrower track, with a smaller fixed badge. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-extra-zone-v054 .plan-dashboard-carrier-block > .plan-dashboard-carrier-list {
  --v1412-status-reserve:104px;
  margin-left:10px!important;
}
/* Prevent a forced 100%-wide bar. Only the actual order/check/status text
   determines the length, capped before the reserved status column. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-block > .plan-dashboard-carrier-list > .plan-dashboard-carrier-row {
  display:inline-flex!important;
  flex-flow:row nowrap!important;
  align-items:center!important;
  gap:9px!important;
  justify-content:flex-start!important;
  width:max-content!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  box-sizing:border-box!important;
  padding:7px 9px!important;
  vertical-align:top!important;
  overflow:hidden!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-row :is(.carrier-order-no,.carrier-order-status) {
  display:inline-block!important;
  flex:0 0 auto!important;
  min-width:0!important;
  max-width:100%!important;
  writing-mode:horizontal-tb!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  overflow:hidden!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-row .carrier-order-status {
  margin-left:7px!important;
}
@media (max-width:960px) {
  html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
   .plan-dashboard-carrier-block > .plan-dashboard-carrier-list {
    --v1412-status-reserve:18px;
    max-width:calc(100% - 18px)!important;
  }
}
/* Prevent document-width jumps on modal open/close when the browser hides
   the vertical scrollbar. This is applied from initial preview load. */
html.altek-v143-preview {scrollbar-gutter:stable;}
@media(prefers-reduced-motion:reduce) {
  html.altek-v14 .dashboard-shell .plan-dashboard-carrier-head,
  html.altek-v14 .dashboard-shell .plan-dashboard-card {transition:none!important;animation:none!important;}
}

/* V14.13: do not let historical carrier pseudo-elements or fixed grid tracks
   compete with the measured status axis in the preview controller. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-block {
  isolation:isolate;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054 .plan-dashboard-carrier-head > .plan-dashboard-status {
  z-index:2!important;
  line-height:1.2!important;
  padding:4px 5px!important;
}
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-list > .plan-dashboard-carrier-row {
   justify-self:start!important;
   place-self:auto start!important;
   min-width:0!important;
   max-width:100%!important;
   width:max-content!important;
 }
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-row .carrier-order-status {margin-left:5px!important;}

/* V14.14 — FINAL visual polish, scoped to the dashboard Plan only.
   All status pills take the dimensions of the previously larger “0/0 отгружено”
   without moving their parent/slot, changing statuses or adjusting the grid.
   The JavaScript carrier geometry retains the existing axis and vertical anchor. */
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
  .plan-dashboard-mini-item .plan-dashboard-status,
html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
  .plan-dashboard-carrier-head > .plan-dashboard-status {
  box-sizing:border-box!important;
  width:112px!important;
  min-width:112px!important;
  max-width:112px!important;
  height:29px!important;
  min-height:29px!important;
  max-height:29px!important;
  padding:4px 7px!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:750!important;
  white-space:nowrap!important;
  text-align:center!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 112px!important;
}
/* All dashboard events, INCLUDING the first row, carry the same top separator.
   No new markup and no change to event click handlers. */
html.altek-v14 .dashboard-shell .hr-events-dashboard-card .hr-events-list
  > .hr-event-item:first-child {
  border-top:1px solid var(--v14-line,#36515c)!important;
}


/* ===========================================================================
   V14.17 — one hover intensity in Warehouse/General Plan.  The previous
   warehouse .mini-item:hover filter:brightness(1.12) made regular rows brighter
   than transport-company cards (which did not receive that filter). Remove
   the filter and preserve the existing single surface/card hover treatment.
   This is presentation-only: status colors and plan behavior are unchanged.
   =========================================================================== */
@media(hover:hover) and (pointer:fine){
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 :is(.plan-dashboard-mini-item,.plan-dashboard-carrier-block):hover,
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
 :is(.plan-dashboard-mini-item,.plan-dashboard-carrier-block):hover,
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054.warehouse-mode
 :is(.plan-dashboard-mini-item.is-executing,.plan-dashboard-carrier-block.is-executing):hover {
   background:var(--v144-card-hover)!important;
   border-color:var(--v144-accent)!important;
   box-shadow:inset 3px 0 0 var(--v144-accent),0 5px 16px rgba(14,40,48,.12)!important;
   filter:none!important;
   outline:none!important;
 }
 /* A TK card is one interactive unit: its inner head must never create a
    second competing/neutral hover surface. */
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-block:hover > .plan-dashboard-carrier-head,
 html.altek-v14 .dashboard-shell .plan-dashboard-main-grid-v054
 .plan-dashboard-carrier-head:hover {
   background:transparent!important;
   box-shadow:none!important;
   border-color:transparent!important;
   filter:none!important;
   outline:none!important;
 }
}

/* V14.17 — sidebar rail. Do not hide the whole bottom container when compact:
   the existing signout button and its native onclick="signout()" must remain.
   Keep icon dimensions, nav row heights, and the divider handle's Y anchor
   identical through the transition. Width is animated by the app shell grid. */
@media(min-width:821px){
 html.altek-v143-effects-on .sidebar .sidebar-nav .side-item {
   min-height:44px!important;height:44px!important;
   box-sizing:border-box!important;
   padding-top:0!important;padding-bottom:0!important;
   align-items:center!important;
 }
 html.altek-v143-effects-on .sidebar .side-icon {
   width:25px!important;height:25px!important;flex:0 0 25px!important;
   min-width:25px!important;display:grid!important;place-items:center!important;
 }
 html.altek-v143-effects-on .sidebar .side-icon svg {
   width:23px!important;height:23px!important;flex:none!important;
 }
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-nav .side-item {
   min-height:44px!important;height:44px!important;
   padding:0!important;justify-content:center!important;
 }
 html.altek-v143-effects-on .sidebar .sidebar-bottom,
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-bottom {
   display:flex!important;flex-direction:column!important;
   box-sizing:border-box!important;min-width:0!important;
   padding:14px 0 0!important;margin-top:auto!important;
   overflow:visible!important;
 }
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-bottom
   :is(.sidebar-tag,.sidebar-version) {display:none!important;}
 html.altek-v143-effects-on .sidebar .sidebar-bottom .side-item {
   box-sizing:border-box!important;
   display:flex!important;align-items:center!important;
   width:100%!important;height:44px!important;min-height:44px!important;
   margin:10px 0 0!important;
   padding:0 12px!important;gap:11px!important;
   flex-shrink:0!important;
 }
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-bottom .side-item {
   display:flex!important;justify-content:center!important;
   padding:0!important;gap:0!important;
 }
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-bottom .side-item .side-label {
   display:none!important;
 }
 html.altek-v143-effects-on .sidebar .altek-v143-sidebar-toggle {
   transition:background-color 220ms ease,border-color 220ms ease,
     box-shadow 220ms ease!important;
 }
}
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
 html.altek-v143-effects-on .app-shell,
 html.altek-v143-effects-on.altek-v143-compact .app-shell {
   transition:grid-template-columns 690ms cubic-bezier(.22,.78,.17,1)!important;
 }
 html.altek-v143-effects-on .app-shell > .sidebar,
 html.altek-v143-effects-on.altek-v143-compact .app-shell > .sidebar {
   transition:width 690ms cubic-bezier(.22,.78,.17,1),
     padding 690ms cubic-bezier(.22,.78,.17,1)!important;
 }
 html.altek-v143-effects-on .sidebar .sidebar-nav .side-item,
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-nav .side-item {
   transition:background-color 190ms ease,box-shadow 190ms ease,
     color 190ms ease!important;
 }
 html.altek-v143-effects-on .sidebar .sidebar-nav .side-item .side-label,
 html.altek-v143-effects-on.altek-v143-compact .sidebar .sidebar-nav .side-item .side-label {
   transition:max-width 590ms cubic-bezier(.22,.78,.17,1),
     opacity 390ms ease!important;
 }
}

/* V14.17 shell fix S1: shared sidebar visual language across all sections.
   Stable border handle is mounted under body (outside the patched #app).
   Drivers are visibly a truck before the first post-render JS scan. */
html.altek-v143-effects-on .sidebar-nav .side-item[onclick*="setView('drivers')"] .side-icon {
  position:relative!important;
}
html.altek-v143-effects-on .sidebar-nav .side-item[onclick*="setView('drivers')"] .side-icon svg {
  opacity:0!important;
}
html.altek-v143-effects-on .sidebar-nav .side-item[onclick*="setView('drivers')"] .side-icon::after {
  content:"";position:absolute;inset:1px;width:23px;height:23px;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6h11v11H3zM14 10h4l3 4v3h-7M5 18a2 2 0 1 0 4 0a2 2 0 0 0-4 0M16 18a2 2 0 1 0 4 0a2 2 0 0 0-4 0' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6h11v11H3zM14 10h4l3 4v3h-7M5 18a2 2 0 1 0 4 0a2 2 0 0 0-4 0M16 18a2 2 0 1 0 4 0a2 2 0 0 0-4 0' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  pointer-events:none;
}
html.altek-v143-effects-on .altek-v143-fixed-toggle[hidden]{display:none!important}
.altek-v143-fixed-toggle[hidden]{display:none!important}
@media(min-width:821px){
  html.altek-v143-effects-on .altek-v143-fixed-toggle {
    display:grid!important;place-items:center;
    position:fixed!important;left:211px;top:50%;
    width:25px!important;height:38px!important;min-width:25px!important;
    padding:0!important;margin:0!important;
    transform:translateY(-50%)!important;z-index:85!important;
    border:1px solid #669994!important;border-radius:12px!important;
    background:#1d3540!important;color:#cceee8!important;
    box-shadow:0 3px 10px rgba(0,0,0,.12)!important;
    font-size:16px!important;font-weight:650!important;line-height:1!important;
    cursor:pointer;pointer-events:auto!important;
    transition:background-color 220ms ease,border-color 220ms ease,
      box-shadow 220ms ease,left 690ms cubic-bezier(.22,.78,.17,1)!important;
  }
  html.altek-v143-effects-on.altek-v143-compact .altek-v143-fixed-toggle{left:61px}
  html.altek-v143-effects-on .altek-v143-fixed-toggle:hover{
    background:#315b59!important;border-color:#9dd3c5!important;
    box-shadow:0 4px 15px rgba(0,0,0,.2)!important;
  }
  html.altek-v143-effects-on .altek-v143-fixed-toggle:focus-visible{
    outline:2px solid #9dd3c5;outline-offset:3px;
  }
}
@media(max-width:820px){.altek-v143-fixed-toggle{display:none!important}}
@media(prefers-reduced-motion:reduce){.altek-v143-fixed-toggle{transition:none!important}}
