/* Iran 65 — service-ledger visual system. */

/* ── Tokens ─────────────────────────────────────────────── */
:root{
  --i65-white:#fff;--i65-black:#152b38;--i65-teal:#126d64;
  --i65-bg:#f2f4ef;--i65-surface:#fff;--i65-surface-2:#e9eee8;
  --i65-text:#152b38;--i65-muted:#536a72;--i65-border:#d5ded7;--i65-border-strong:#afc0b9;
  --i65-primary:#126d64;--i65-primary-hover:#0c554f;--i65-primary-soft:#e0eee8;
  --i65-on-primary:#FFFFFF;
  --i65-danger:#B42318;
  --i65-radius-sm:3px;--i65-radius:4px;--i65-radius-lg:6px;--i65-control-h:46px;
  --i65-focus:0 0 0 3px rgba(15,118,110,.22);
  --i65-ease:.15s ease;
  color-scheme:light;
}
/* Dark theme is kept for when the toggle is re-enabled (theme.js currently pins light). */
html[data-theme="dark"]{
  --i65-bg:#111111;--i65-surface:#171717;--i65-surface-2:#1F1F1F;
  --i65-text:#FFFFFF;--i65-muted:#A8B0AE;--i65-border:#2B2F2E;--i65-border-strong:#3A403E;
  --i65-primary:#2BA89D;--i65-primary-hover:#4BBDB3;--i65-primary-soft:#12302D;
  --i65-on-primary:#0A0A0A;
  --i65-danger:#F0857B;
  --i65-focus:0 0 0 3px rgba(43,168,157,.35);
  color-scheme:dark;
}

/* ── Base & typography ──────────────────────────────────── */
:root body,:root html{background:var(--i65-bg)!important;color:var(--i65-text)!important}
:root body{
  font-family:'Vazirmatn',system-ui,sans-serif!important;font-size:15px;line-height:1.85;
  background-image:none!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
html{scroll-behavior:smooth;scroll-padding-top:76px}
:root h1,:root h2,:root h3,:root h4,:root h5,:root strong,:root label,:root th,
:root .nav-brand,:root .brand,:root .ch h2,:root .feat-txt,:root .search-label,:root .admin-name,
:root .group-name,:root .cust-name,:root .vhead h3,:root .pred-title,:root .slbl{color:var(--i65-text)!important}
:root h1{font-size:clamp(1.55rem,3.6vw,2.1rem)!important;font-weight:800;line-height:1.5;letter-spacing:0}
:root h1 span{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--i65-primary)!important}
:root h2{font-size:1.1rem;font-weight:700}
:root h3{font-size:1rem;font-weight:700}
:root p,:root small,:root .sub,:root .hint,:root .search-hint,:root .back,:root .ch p,:root .fhint,
:root .vhead p,:root .pred-note,:root .pred-msg,:root .cust-sub,:root .admin-user,:root .stat-lbl,
:root .kmsub,:root .muted,:root footer{color:var(--i65-muted)!important}
:root .sub{font-size:1rem}
/* Landing page: a quiet, editorial service record rather than a generic hero. */
:root body:has(>.nav)>.hero{min-height:500px;position:relative;overflow:hidden;gap:1.35rem;padding:clamp(48px,8vw,100px) 20px 60px;background-color:#edf5f2!important;background-image:radial-gradient(ellipse 700px 420px at 50% 0%,rgba(111,189,153,.2),transparent 72%),linear-gradient(90deg,transparent calc(50% - 1px),rgba(18,109,100,.08) 50%,transparent calc(50% + 1px))!important}
:root body:has(>.nav)>.hero::before{content:"KM  /  65";position:absolute;inset:auto auto 0 50%;transform:translateX(-50%);font:600 clamp(72px,16vw,190px)/.8 'Vazirmatn',sans-serif;letter-spacing:-.08em;color:rgba(21,43,56,.045);white-space:nowrap;pointer-events:none}
:root body:has(>.nav)>.hero>*{position:relative}
:root body:has(>.nav)>.hero h1{font-size:clamp(2.5rem,7vw,5.1rem)!important;line-height:1.32;letter-spacing:-.045em;max-width:800px}
:root body:has(>.nav)>.hero h1 span{color:var(--i65-primary)!important}
:root body:has(>.nav)>.hero .sub{max-width:600px;font-size:.98rem}
:root body:has(>.nav)>.hero .hero-badge{border-radius:2px;background:transparent!important;border:0!important;border-bottom:1px solid var(--i65-primary)!important;padding:2px 0 6px}
:root body:has(>.nav)>.hero .search-card{max-width:420px;padding:16px 20px;border-radius:4px}
:root body:has(>.nav)>.hero .search-card .search-hint{display:none!important}
:root body:has(>.nav)>.features-section .feat{border-radius:4px!important;align-items:flex-start;text-align:right;min-height:175px;justify-content:center}
:root body:has(>.nav)>.features-section .feat-icon{width:42px;height:42px;border-radius:3px!important}
:root body:has(>.nav)>.features-section .features{gap:10px}
:root body:has(>.nav)>.featured-section,:root body:has(>.nav)>.features-section{width:min(1080px,calc(100% - 40px))}
:root body:has(>.nav)>.featured-section,:root body:has(>.nav)>.features-section{position:relative}
:root body:has(>.nav)>.featured-section::before,:root body:has(>.nav)>.features-section::before{content:"";position:absolute;inset:0 auto 0 -24px;width:3px;background:var(--i65-primary)}
:root body:has(>.card>.logo-wrap)>.card{width:min(900px,100%);max-width:900px;min-height:min(540px,calc(100dvh - 70px));margin:auto;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(300px,1.2fr);align-content:center;gap:0;padding:clamp(26px,5vw,60px)!important;border-top:3px solid var(--i65-primary)!important;background:linear-gradient(90deg,var(--i65-surface-2) 0 34%,var(--i65-surface) 34%)!important}
:root body:has(>.card>.logo-wrap)>.card .logo-wrap{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:right;padding-inline-end:24px;border-inline-start:0;border-inline-end:1px solid var(--i65-border);margin:0}
:root body:has(>.card>.logo-wrap)>.card .logo-wrap .logo{margin:0 0 22px;width:52px;height:52px}
:root body:has(>.card>.logo-wrap)>.card .logo-wrap h1{font-size:clamp(1.55rem,3vw,2rem)!important}
:root body:has(>.card>.logo-wrap)>.card>.fgrp,:root body:has(>.card>.logo-wrap)>.card>.err,:root body:has(>.card>.logo-wrap)>.card>.ok,:root body:has(>.card>.logo-wrap)>.card>.btn,:root body:has(>.card>.logo-wrap)>.card>.back{grid-column:2;margin-inline-start:clamp(18px,4vw,44px)}
:root body:has(>.card>.logo-wrap)>.card .roles{margin-bottom:12px}
:root a{color:var(--i65-primary);text-decoration:none;transition:color var(--i65-ease)}
:root a:hover{color:var(--i65-primary-hover);text-decoration:underline;text-underline-offset:3px}
:root a.btn,:root a.btn-p,:root a.btn-primary,:root a.nav-btn,:root a.btn-s{text-decoration:none}
:root .btn:hover,:root .btn-p:hover,:root .btn-primary:hover{color:var(--i65-on-primary)}
:focus-visible{outline:2px solid var(--i65-primary)!important;outline-offset:2px!important;box-shadow:var(--i65-focus)}
button,input,select,textarea{font:inherit}
button,a,[role=button]{-webkit-tap-highlight-color:transparent}

/* ── Navigation ─────────────────────────────────────────── */
:root .nav,:root .navbar,:root nav,:root header,:root .topbar{
  background:var(--i65-surface)!important;color:var(--i65-text)!important;
  border:0!important;border-bottom:1px solid var(--i65-border)!important;
  box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
:root .nav,:root .topbar{min-height:60px;padding-inline:clamp(14px,3vw,32px)!important;gap:12px;align-items:center}
:root .nav-brand,:root .brand{font-weight:700;font-size:1rem}
:root .nav-right{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
:root .nav-logo,:root .brand-ico,:root .logo,:root .ch-ico,:root .admin-avatar,:root .group-avatar,:root .feat-icon-wrap{
  background:var(--i65-primary)!important;background-image:none!important;color:var(--i65-on-primary)!important;
  border:0!important;box-shadow:none!important;border-radius:var(--i65-radius-sm)!important;
}
:root .nav-logo,:root .brand-ico,:root .logo{border-radius:3px!important;background:#fff!important;background-color:#fff!important;background-image:none!important}
:root .ch-ico{background:var(--i65-primary-soft)!important;color:var(--i65-primary)!important}
:root .nav-badge,:root .group-count,:root .hero-badge{
  background:var(--i65-primary-soft)!important;color:var(--i65-primary)!important;
  border:1px solid transparent!important;border-radius:999px;font-weight:600;box-shadow:none!important;
}
:root .hero{background:none!important}
:root .badge-dot{background:var(--i65-primary)!important;box-shadow:none!important;animation:none!important}

/* ── Surfaces: flat, bordered, no shadows ───────────────── */
:root .card,:root .vcard,:root .admin-card,:root .search-card,:root .feat,:root .content-card,
:root .form-card,:root .login-card,:root .register-card,:root .stat-card,:root .service-card,
:root .vehicle-card,:root .box,:root .km-hero,:root .htable,:root .pc,:root .sr-item,:root .vp,
:root .hist-row,:root .history-entry,:root .featured-card,:root .tok-box,
:root .group-header,:root .group-body,:root .dashboard-panel{
  background:var(--i65-surface)!important;background-image:none!important;color:var(--i65-text)!important;
  border:1px solid var(--i65-border)!important;border-radius:var(--i65-radius-lg)!important;box-shadow:none!important;
}
:root .ch,:root .cb,:root .stat-pill,:root .admin-stats,:root .pred-grid div,:root .modal-footer,:root .kmform{
  background:transparent!important;color:var(--i65-text)!important;border-color:var(--i65-border)!important;box-shadow:none!important;
}
:root .ch{padding:14px 18px!important;gap:12px;border-bottom:1px solid var(--i65-border)!important}
:root .cb{padding:clamp(14px,2vw,22px)!important}
:root .stat-pill,:root .pred-grid div{background:var(--i65-surface-2)!important;border-radius:var(--i65-radius)}
:root .modal,:root .modal-content,:root [role=dialog]{
  background:var(--i65-surface)!important;color:var(--i65-text)!important;border:1px solid var(--i65-border)!important;
  border-radius:var(--i65-radius-lg)!important;box-shadow:0 12px 32px rgba(17,17,17,.14)!important;
  max-width:min(94vw,720px);max-height:90dvh;overflow:auto;
}
:root .pred{background:var(--i65-surface)!important;border:1px solid var(--i65-border)!important;border-radius:var(--i65-radius)!important;box-shadow:none!important;color:var(--i65-text)!important}
:root .pred.ok{background:var(--i65-primary-soft)!important;border-color:transparent!important}
:root .pred.warn{background:var(--i65-surface-2)!important;border:1px solid var(--i65-black)!important;color:var(--i65-text)!important}
:root .pred.danger{background:var(--i65-surface)!important;border:1px solid var(--i65-danger)!important;color:var(--i65-text)!important}
html[data-theme="dark"] .pred.warn{border-color:var(--i65-text)!important}
:root .empty-state,:root .empty{
  padding:22px!important;border:1px dashed var(--i65-border-strong);border-radius:var(--i65-radius);
  background:var(--i65-surface-2);text-align:center;line-height:1.9;color:var(--i65-muted)!important;
}
:root footer{border-color:var(--i65-border)!important}
:root hr{border:0;border-top:1px solid var(--i65-border)}

/* ── Tabs ───────────────────────────────────────────────── */
:root .tabs,:root .dashboard-tabs{
  background:var(--i65-surface-2)!important;border:1px solid var(--i65-border)!important;
  border-radius:var(--i65-radius)!important;box-shadow:none!important;padding:4px;gap:4px;
}
:root .tab,:root .dashboard-tab,:root .role{
  background:transparent!important;color:var(--i65-muted)!important;border:1px solid transparent!important;
  border-radius:var(--i65-radius-sm)!important;font-weight:600;transition:background var(--i65-ease),color var(--i65-ease);
}
:root .tab:hover,:root .dashboard-tab:hover,:root .role:hover{color:var(--i65-primary)!important;background:var(--i65-primary-soft)!important}
:root .tab.on,:root .tab.active,:root .dashboard-tab.active,:root .role.on{
  background:var(--i65-surface)!important;color:var(--i65-primary)!important;border-color:var(--i65-primary)!important;
}

/* ── Buttons ────────────────────────────────────────────── */
:root button{min-height:38px}
:root .btn,:root .btn-p,:root .btn-primary,:root .search-btn,:root .btn-km,:root .btn-srch.primary,
:root .nav-btn,:root .btn-s,:root .btn-srch,:root .btn-sm,:root .btn-clr,:root .btn-cp,:root .dpr{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;
  padding:8px 16px!important;border-radius:var(--i65-radius)!important;font-weight:600;line-height:1.5;
  white-space:normal;box-shadow:none!important;background-image:none!important;cursor:pointer;
  transition:background var(--i65-ease),border-color var(--i65-ease),color var(--i65-ease);
}
:root .btn-sm,:root .btn-clr,:root .btn-cp,:root .dpr{min-height:32px;padding:5px 10px!important;font-size:.8rem}
:root .btn,:root .btn-p,:root .btn-primary,:root .search-btn,:root .btn-km,:root .btn-srch.primary{
  background:var(--i65-primary)!important;color:var(--i65-on-primary)!important;border:1px solid var(--i65-primary)!important;
}
:root .btn,:root .btn-p,:root .btn-primary,:root .search-btn,:root .btn-km{background:#126d64!important;background-image:none!important;border-color:#126d64!important}
:root .btn:hover,:root .btn-p:hover,:root .btn-primary:hover,:root .search-btn:hover,:root .btn-km:hover,:root .btn-srch.primary:hover{
  background:var(--i65-primary-hover)!important;border-color:var(--i65-primary-hover)!important;opacity:1;
}
:root .nav-btn,:root .btn-s,:root .btn-srch,:root .btn-sm,:root .btn-clr,:root .btn-cp,:root .dpr{
  background:var(--i65-surface)!important;color:var(--i65-text)!important;border:1px solid var(--i65-border-strong)!important;
}
:root .nav-btn:hover,:root .btn-s:hover,:root .btn-srch:hover,:root .btn-sm:hover,:root .btn-clr:hover,:root .btn-cp:hover,:root .dpr:hover{
  background:var(--i65-primary-soft)!important;border-color:var(--i65-primary)!important;color:var(--i65-primary)!important;
}
:root .btn:active,:root .btn-p:active,:root .search-btn:active{transform:none}
:root button:disabled,:root .btn:disabled{opacity:.55;cursor:not-allowed}
:root .btn-danger,:root .btn-d,:root .btn-del{
  background:var(--i65-surface)!important;color:var(--i65-danger)!important;border:1px solid var(--i65-danger)!important;
}
#theme-toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--i65-border-strong);
  border-radius:var(--i65-radius);background:var(--i65-surface);color:var(--i65-text);font-size:.8rem;
  padding:7px 11px;cursor:pointer;white-space:nowrap;
}

/* ── Forms ──────────────────────────────────────────────── */
:root input:not([type=checkbox]):not([type=radio]):not([type=range]),:root select,:root textarea,
:root .fi,:root .fsel,:root .form-control,:root .search-input,:root .km-input{
  min-width:0;max-width:100%;min-height:var(--i65-control-h);padding:9px 12px!important;line-height:1.5;
  background:var(--i65-surface)!important;color:var(--i65-text)!important;
  border:1px solid var(--i65-border-strong)!important;border-radius:var(--i65-radius)!important;
  box-shadow:none!important;transition:border-color var(--i65-ease),box-shadow var(--i65-ease);
}
:root textarea{min-height:96px;resize:vertical}
:root input:hover,:root select:hover,:root textarea:hover{border-color:var(--i65-primary)!important}
:root input:focus,:root select:focus,:root textarea:focus{border-color:var(--i65-primary)!important;box-shadow:var(--i65-focus)!important;outline:none!important}
:root input::placeholder,:root textarea::placeholder{color:var(--i65-muted)!important;opacity:.8}
:root select option{background:var(--i65-surface);color:var(--i65-text)}
:root input[type=checkbox],:root input[type=radio]{accent-color:var(--i65-primary);width:18px;height:18px;vertical-align:middle}
:root label{font-size:.88rem;font-weight:600;line-height:1.7}
.i65-auto-label{display:block;margin:0 0 6px}
:root .fgrp,:root .form-group,:root .field{min-width:0;text-align:right;display:grid;gap:6px;align-content:start}
:root .fgrp input,:root .fgrp select,:root .fgrp textarea{width:100%}
:root .fg,:root .featured-admin-form{align-items:start;gap:14px}
:root .fg>*,:root .featured-admin-form>*{min-width:0}
:root .req{color:var(--i65-primary)}
:root input[aria-invalid="true"],:root select[aria-invalid="true"],:root textarea[aria-invalid="true"],:root .i65-field-error{
  border:1px solid var(--i65-danger)!important;box-shadow:0 0 0 3px rgba(180,35,24,.12)!important;background:var(--i65-surface)!important;
}
.i65-error-text{display:block;color:var(--i65-danger);font-size:.8rem;font-weight:600;margin-top:5px}
:root .err,:root .error,:root .alert-error,:root .search-err{
  background:var(--i65-surface)!important;color:var(--i65-danger)!important;border:1px solid var(--i65-danger)!important;
  border-radius:var(--i65-radius);box-shadow:none!important;
}
:root .ok,:root .success,:root .alert-success{
  background:var(--i65-primary-soft)!important;color:var(--i65-primary)!important;border:1px solid transparent!important;
  border-radius:var(--i65-radius);box-shadow:none!important;
}
:root #toast{
  background:var(--i65-black)!important;color:#FFFFFF!important;border:0!important;border-radius:var(--i65-radius);
  padding:12px 16px;box-shadow:none!important;max-width:min(92vw,480px);
}

/* ── Tables ─────────────────────────────────────────────── */
:root table{width:100%;border-collapse:collapse;color:var(--i65-text)!important;font-variant-numeric:tabular-nums}
:root th,:root td{text-align:right;vertical-align:middle;line-height:1.7;padding:10px 12px;border:0!important;border-bottom:1px solid var(--i65-border)!important}
:root th{font-weight:700;font-size:.82rem;white-space:nowrap;background:var(--i65-surface-2)!important;color:var(--i65-muted)!important}
:root tbody tr:hover{background:var(--i65-surface-2)}
:root tbody tr:last-child td{border-bottom:0!important}
.table-wrap,.cb>div[style*="overflow:auto"],[style*="overflow-x:auto"]{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}

/* ── Key figures & status ───────────────────────────────── */
:root .stat-num,:root .vp-km .kv,:root .sri-km,:root .kmval,:root .km-hero-val{color:var(--i65-primary)!important}
:root .pc .prog{background:var(--i65-surface-2)!important;border-radius:999px}
:root .pc .prog>*,:root .pc .prog-bar,:root .prog-fill{background:var(--i65-primary)!important;background-image:none!important}
:root .pc.ok .pc-km-big,:root .pc.ok .pc-badge{color:var(--i65-primary)!important}
:root .pc.warn .pc-km-big,:root .pc.warn .pc-badge{color:var(--i65-text)!important;font-weight:800}
:root .pc.danger .pc-km-big,:root .pc.danger .pc-badge{color:var(--i65-danger)!important}
:root .pc-name,:root .pc-km-lbl,:root .pc-foot,:root .pc-foot span,:root .km-hero-sub,:root .pc-none .pc-km-big{color:var(--i65-text)!important}
:root .pc-km-lbl,:root .pc-foot,:root .km-hero-sub{color:var(--i65-muted)!important}
.km-form{display:flex;gap:9px;flex-wrap:wrap}.km-form .km-input{flex:1;min-width:0}
@media(max-width:520px){.km-form{flex-direction:column}.km-form .btn-km{width:100%}}

/* ── Customer panel: mileage entry & history (RTL) ──────── */
#list .kmrow{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,410px);align-items:center!important;gap:16px!important}
#list .kmrow>div:first-child{min-width:0}
#list .kmform{display:grid!important;grid-template-columns:minmax(0,1fr) 120px!important;align-items:stretch!important;gap:8px!important;width:100%!important;max-width:none!important;min-width:0!important;flex:none!important;padding:0!important}
#list .kmform input{width:100%!important;min-width:0!important;height:44px!important;text-align:center!important;direction:ltr!important;margin:0!important}
#list .kmform button{width:100%!important;min-width:0!important;height:44px!important;margin:0!important;padding:8px 10px!important}
#list .kmval{line-height:1.3;white-space:nowrap}
#list .vhead,#list .vbody,#list .pred{min-width:0}
#list .pred{overflow:hidden}
#list .pred table th,#list .pred table td{padding:10px 12px;overflow-wrap:anywhere}
#list .pred table td.km-cell{direction:rtl;white-space:nowrap}
#list .pred table td:nth-child(2),#list .pred table td:nth-child(3){white-space:nowrap}
#list .pred-title{line-height:1.8}
.ch,.admin-card-head,.vhead,.kmrow,.sr-item{align-items:center}

/* ── Charts (SVG/CSS, presentation only) ────────────────── */
:root .i65-chart-card{margin:12px 0;padding:16px!important;border:1px solid var(--i65-border)!important;border-radius:var(--i65-radius-lg)!important;background:var(--i65-surface)!important;box-shadow:none!important;min-width:0}
:root .i65-chart-title{font-size:.92rem;font-weight:700!important;margin-bottom:12px;color:var(--i65-text)!important}
.i65-bars{display:grid;gap:13px}.i65-bar-row{min-width:0}
.i65-bar-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:.82rem;margin-bottom:5px}
.i65-bar-head span{overflow-wrap:anywhere}.i65-bar-head strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.i65-bar-track{height:8px;border-radius:999px;background:var(--i65-surface-2);overflow:hidden}
.i65-bar-track span{display:block;height:100%;min-width:2px;border-radius:999px;background:var(--i65-primary)}
.i65-line-wrap{width:100%;min-width:0}.i65-line-wrap svg{display:block;width:100%;height:auto;min-height:150px;overflow:visible}
.i65-line{fill:none;stroke:var(--i65-primary);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.i65-point{fill:var(--i65-primary);stroke:var(--i65-surface);stroke-width:2}
.i65-axis{stroke:var(--i65-border);stroke-width:1}.i65-line-wrap text{font-size:11px;fill:var(--i65-muted)}
.i65-chart-note{font-size:.72rem;color:var(--i65-muted);margin-top:6px}
.i65-chart-empty{padding:24px;text-align:center;border:1px dashed var(--i65-border-strong);border-radius:var(--i65-radius);background:var(--i65-surface-2);color:var(--i65-muted)}
.i65-pie-wrap{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:12px 0}
.i65-pie{width:180px;height:180px;max-width:45vw;border-radius:50%;flex:0 0 auto;border:6px solid var(--i65-surface);box-shadow:0 0 0 1px var(--i65-border)}
.i65-pie-legend{list-style:none;padding:0;margin:0;display:grid;gap:9px;min-width:220px;flex:1}
.i65-pie-legend li{display:grid;grid-template-columns:12px minmax(90px,1fr) auto;align-items:center;gap:8px;color:var(--i65-text)}
.i65-pie-legend small{grid-column:2/4;color:var(--i65-muted)}.i65-pie-dot{width:10px;height:10px;border-radius:3px}
.i65-record-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:11px 0;border-bottom:1px solid var(--i65-border)}
.i65-record-row small{grid-column:1/-1;color:var(--i65-muted)}.i65-record-row b{white-space:nowrap;font-variant-numeric:tabular-nums}
[data-money-toman]+.money-words{display:block;margin-top:6px;color:var(--i65-muted);font-size:.82rem;line-height:1.8}

/* ── Jalali date picker ─────────────────────────────────── */
:root .jalali-picker,:root #jalali-cal{background:var(--i65-surface)!important;color:var(--i65-text)!important;border:1px solid var(--i65-border)!important;border-radius:var(--i65-radius)!important;box-shadow:0 10px 28px rgba(17,17,17,.14)!important}
:root .jp-grid,:root .jalali-picker .jp-grid{background:transparent!important}
:root .jp-day,:root .jp-head button,:root .jalali-date-btn,:root #jalali-cal button{background:var(--i65-surface-2)!important;color:var(--i65-text)!important;border:1px solid var(--i65-border)!important;border-radius:var(--i65-radius-sm)!important}
:root .jp-day:hover,:root .jp-head button:hover,:root #jalali-cal button:hover{background:var(--i65-primary-soft)!important;color:var(--i65-primary)!important}
:root .jp-day.selected{background:var(--i65-primary)!important;color:var(--i65-on-primary)!important;border-color:var(--i65-primary)!important}
:root #jalali-cal select{background:var(--i65-surface)!important;color:var(--i65-text)!important;border:1px solid var(--i65-border)!important}
:root #jalali-cal [style*="color:#4b5563"]{color:var(--i65-muted)!important}
.i65-jalali-popup{background:var(--i65-surface)!important;border-color:var(--i65-border)!important;box-shadow:0 10px 28px rgba(17,17,17,.14)!important}
.i65-jalali-wrap{display:inline-flex;position:relative;align-items:stretch;width:100%;min-width:0;direction:ltr}
.i65-jalali-wrap>input{flex:1;min-width:0;width:1%;text-align:center;direction:ltr}
.i65-jalali-btn{flex:0 0 38px;width:38px;min-height:38px;padding:4px!important;margin-inline-start:5px;border:1px solid var(--i65-border-strong);border-radius:3px;background:var(--i65-surface-2);color:var(--i65-primary);cursor:pointer}
.i65-jp-grid>button:hover,.i65-jp-grid>button.selected{background:var(--i65-primary)!important;color:var(--i65-on-primary)!important}
.i65-jalali-btn,.i65-jp-head button,.i65-jp-grid>button{border-color:var(--i65-border);background:var(--i65-surface-2);color:var(--i65-text)}
.i65-jalali-popup[hidden]{display:none!important}
.i65-jalali-popup:not([hidden]){display:block!important;position:fixed!important;z-index:10000!important;width:270px;max-width:calc(100vw - 16px);padding:12px;direction:rtl;border:1px solid var(--i65-border)!important;border-radius:12px!important;background:var(--i65-surface)!important;color:var(--i65-text)!important;box-shadow:0 12px 32px rgba(15,35,28,.2)!important;font-family:inherit}
.i65-jp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.i65-jp-head strong{font-size:.92rem}
.i65-jp-head button,.i65-jp-grid>button{min-width:32px;min-height:32px;border:1px solid var(--i65-border)!important;border-radius:7px!important;cursor:pointer;font:inherit}
.i65-jp-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.i65-jp-grid>span{display:grid;place-items:center;min-height:28px;color:var(--i65-muted);font-size:.78rem;font-weight:700}
.i65-jp-grid>i{min-height:32px}
.i65-jp-grid>button{padding:3px}

/* ── National plate artwork: intentionally keeps its real-world colors ── */
.plate-widget,.plate-mini,.vp-plate,.plate-body,.pm-iran,.pm-seg,.pw-iran,.pw-two,.pw-letter,.pw-three,.pw-iran-num{color:#111!important;background:#fff!important}
.plate-invalid{display:inline-block;padding:7px 10px;border:1px dashed var(--i65-danger);border-radius:7px;color:var(--i65-danger);font-size:.8rem}

/* ── Plate renderers (geometry preserved) ── */
.plate-mini{display:inline-flex;align-items:stretch;direction:ltr;overflow:hidden;background:#fff;color:#111;border:1.5px solid #555;border-radius:5px;min-height:34px;white-space:nowrap;font-weight:800}
.plate-mini .pm-blue{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0033cc;padding:2px 4px;min-width:27px}
.plate-mini .pm-blue-flag{display:flex;flex-direction:column;gap:1px;margin-bottom:1px}
.plate-mini .pm-blue-flag span{display:block;width:10px;height:2px}
.plate-mini .pm-blue-flag span:nth-child(1){background:#239f40}.plate-mini .pm-blue-flag span:nth-child(2){background:#fff}.plate-mini .pm-blue-flag span:nth-child(3){background:#ef3340}
.plate-mini .pm-blue small{color:#fff;font-size:.38rem}
.plate-mini .pm-seg{display:flex;align-items:center;justify-content:center;padding:0 5px;min-width:22px;border-right:1px solid #cbd5e1;color:#111;font-size:.8rem}
.plate-mini .pm-iran{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:34px;padding:1px 4px;background:#fff}
.plate-mini .pm-iran-t{font-size:.42rem;line-height:1;color:#111}.plate-mini .pm-iran-n{font-size:.78rem;line-height:1.2;color:#111}


.i65-plate{display:inline-flex;align-items:stretch;direction:ltr;height:64px;min-width:300px;max-width:100%;box-sizing:border-box;overflow:hidden;background:#fff!important;border:3px solid #252525;border-radius:9px;color:#111!important;box-shadow:0 1px 3px #0002;vertical-align:middle}
.i65-plate>*{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:0;background:#fff!important;color:#111!important;font-family:Arial,'Vazirmatn',sans-serif;font-weight:800}
.i65-plate-blue{width:48px;flex:0 0 48px;flex-direction:column;gap:5px;background:#0038a8!important;color:#fff!important;border-right:2px solid #222}
.i65-plate-blue small{background:transparent!important;color:#fff!important;font-size:11px;line-height:1}
.i65-flag{display:flex;flex-direction:column;gap:2px;background:transparent!important}.i65-flag b{display:block;width:22px;height:4px}.i65-flag b:nth-child(1){background:#239f40}.i65-flag b:nth-child(2){background:#fff}.i65-flag b:nth-child(3){background:#da291c}
.i65-plate-three{flex:1 1 82px;font-size:26px;border-right:2px solid #aab3bb}.i65-plate-letter{flex:0 0 48px;font-size:25px;border-right:2px solid #aab3bb}.i65-plate-two{flex:0 0 58px;font-size:25px;border-right:2px solid #aab3bb}.i65-plate-iran{flex:0 0 56px;flex-direction:column;gap:2px}.i65-plate-iran small{font-size:10px}.i65-plate-iran b{font-size:23px}
.i65-plate-mini{height:42px;min-width:205px;border-width:2px;border-radius:6px}.i65-plate-mini .i65-plate-blue{width:32px;flex-basis:32px;gap:3px}.i65-plate-mini .i65-flag b{width:16px;height:3px}.i65-plate-mini .i65-plate-blue small{font-size:8px}.i65-plate-mini .i65-plate-three{font-size:18px}.i65-plate-mini .i65-plate-letter{flex-basis:32px;font-size:18px}.i65-plate-mini .i65-plate-two{flex-basis:38px;font-size:18px}.i65-plate-mini .i65-plate-iran{flex-basis:42px}.i65-plate-mini .i65-plate-iran small{font-size:7px}.i65-plate-mini .i65-plate-iran b{font-size:16px}
#plate-reg{height:54px;width:240px;min-width:240px;max-width:240px;display:flex;align-items:stretch;box-sizing:border-box;overflow:hidden;justify-content:flex-start}
#plate-reg input,#plate-reg select{height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0 2px!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:#fff!important;color:#111!important;line-height:1!important;font:800 24px Arial,'Vazirmatn',sans-serif!important;text-align:center!important;box-sizing:border-box!important;appearance:none;-webkit-appearance:none}
#plate-reg .pw-blue{width:30px;flex:0 0 30px}#plate-reg .pw-three{width:5ch!important;min-width:5ch!important;max-width:5ch!important;flex:0 0 5ch!important;border-right:2px solid #aab3bb!important}#plate-reg .pw-letter{width:34px;flex:0 0 34px;border-right:2px solid #aab3bb!important}#plate-reg .pw-two{width:40px;flex:0 0 40px;border-right:2px solid #aab3bb!important}#plate-reg .pw-iran{width:27px;flex:0 0 27px;padding:0!important;margin:0!important;border:0!important;overflow:hidden;gap:0!important;background:transparent!important}#plate-reg .pw-iran-text{font-size:6px!important;line-height:1!important;margin:0!important;white-space:nowrap}#plate-reg .pw-iran-num{width:25px!important;min-width:0!important;max-width:25px!important;flex:0 0 25px!important;height:27px!important;font-size:18px!important;padding:0!important;background:transparent!important}
[data-money-toman]+.money-words{display:block;margin-top:6px;color:var(--i65-muted);font-size:.82rem;line-height:1.8}
@media(max-width:520px){.i65-plate{height:54px;min-width:260px}.i65-plate-three{font-size:22px}.i65-plate-letter{flex-basis:40px;font-size:21px}.i65-plate-two{flex-basis:48px;font-size:21px}.i65-plate-iran{flex-basis:48px}.i65-plate-iran b{font-size:19px}#plate-reg{height:50px;width:240px;min-width:240px;max-width:240px}#plate-reg input,#plate-reg select{font-size:20px!important}#plate-reg .pw-blue{width:30px;flex-basis:30px}#plate-reg .pw-letter{width:34px;flex-basis:34px}#plate-reg .pw-two{width:40px;flex-basis:40px}#plate-reg .pw-iran{width:27px;flex-basis:27px;padding:0!important;margin:0!important;overflow:hidden;gap:0!important;background:transparent!important}#plate-reg .pw-iran-text{font-size:6px!important;line-height:1!important;margin:0!important;white-space:nowrap}}
#plate-reg .pw-letter:has(option[value=""]:checked){font-size:.72rem;font-weight:600;color:#6b7280!important;padding:0}

/* ── Responsive ── */
@media(max-width:760px){
  :root .layout,:root .page{width:100%;padding-inline:14px!important}
  #list .kmrow{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
  :root .fg,:root .prediction-pair,:root .service-form,:root .featured-admin-form{grid-template-columns:minmax(0,1fr)!important}
  .fg2{grid-column:auto!important}
  :root .tabs{overflow-x:auto;justify-content:flex-start;-webkit-overflow-scrolling:touch}
  :root .tab{flex:0 0 auto;min-width:max-content}
  :root .nav,:root .topbar{flex-wrap:wrap;align-items:center!important}
  :root .nav-right{width:100%;justify-content:flex-start}
  :root .admin-grid,:root .features{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important}
  .km-hero-val{font-size:2rem}
  :root .i65-chart-card{padding:12px!important}
  table{min-width:520px}
  #list .pred table{min-width:390px}
  #list .pred table th,#list .pred table td{padding:8px 9px}
}
@media(max-width:420px){
  :root body{font-size:14px}
  #list .kmform{grid-template-columns:1fr!important}
  :root .nav-btn,:root .btn-srch,:root .btn-p,:root .btn{padding:7px 12px!important;font-size:.85rem}
  .i65-bar-head{font-size:.76rem;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ── Legacy leftovers: older inline page styles mapped onto the palette ── */
:root .stat,:root .stat.accent{background:var(--i65-surface-2)!important;border:1px solid var(--i65-border)!important;border-radius:var(--i65-radius)!important;box-shadow:none!important;color:var(--i65-text)!important}
:root .stat .lbl,:root .stat .sub,:root .stat small{color:var(--i65-muted)!important}
:root .stat .val,:root .stat.accent .val{color:var(--i65-text)!important}
:root .stat.accent .val{color:var(--i65-primary)!important}
:root .ts,:root .tag,:root .pc .pc-badge,:root .pc .pc-badge.b-none{
  background:var(--i65-surface-2)!important;color:var(--i65-muted)!important;border:1px solid var(--i65-border)!important;border-radius:999px;box-shadow:none!important}
:root .pc.ok .pc-badge{background:var(--i65-primary-soft)!important;border-color:transparent!important}
:root .km-hero-label,:root .kmlbl,:root .pred-title{color:var(--i65-primary)!important;letter-spacing:0;text-transform:none}
:root #back-home{color:var(--i65-primary)!important}
:root .sp{border-color:var(--i65-border)!important;border-top-color:var(--i65-primary)!important}
:root .sr-item:hover,:root .sr-item.sel{border-color:var(--i65-primary)!important;background:var(--i65-primary-soft)!important}
:root .cal-day:hover{background:var(--i65-primary-soft)!important}
:root .cal-day.today{color:var(--i65-primary)!important}
:root .cal-day.selected{background:var(--i65-primary)!important;color:var(--i65-on-primary)!important}
:root .fdiv{border-color:var(--i65-border)!important}
:root .pc{transition:border-color var(--i65-ease)}
:root .pc:hover{transform:none!important;border-color:var(--i65-primary)!important}
:root thead{background:var(--i65-surface-2)!important}
:root .pred-grid .l{color:var(--i65-muted)!important}:root .pred-grid .v,:root .pred-main{color:var(--i65-text)!important}
:root .km-hero{margin:1rem 0}
/* inline style attributes written by page scripts */
:root [style*="#3b82f6"],:root [style*="#6366f1"],:root [style*="#818cf8"],:root [style*="#93c5fd"],:root [style*="#a78bfa"],:root [style*="#7c3aed"]{
  border-color:var(--i65-primary)!important}
:root span[style*="background:#3b82f6"],:root span[style*="background:#6366f1"]{background:var(--i65-primary)!important;color:var(--i65-on-primary)!important}
:root button[style*="rgba(99,102,241"],:root button[style*="#6366f1"]{background:var(--i65-surface)!important;color:var(--i65-primary)!important;border:1px solid var(--i65-primary)!important}
:root [style*="color:#93c5fd"],:root [style*="color:#818cf8"],:root [style*="color:#3b82f6"],:root [style*="color:#a78bfa"]{color:var(--i65-primary)!important}
:root [style*="background:#111827"],:root [style*="background:#0b0f19"],:root [style*="background:#1e2535"]{background:var(--i65-surface)!important;color:var(--i65-text)!important;border-color:var(--i65-border)!important}
:root [style*="border-top:1px solid #1e293b"]{border-color:var(--i65-border)!important}
:root .pc.warn .prog-fill{background:var(--i65-text)!important}
:root .pc.danger .prog-fill{background:var(--i65-danger)!important}
:root .pc.warn .pc-badge{border-color:var(--i65-text)!important;color:var(--i65-text)!important;background:var(--i65-surface)!important}
:root .pc.danger .pc-badge{border-color:var(--i65-danger)!important;color:var(--i65-danger)!important;background:var(--i65-surface)!important}
:root span[style*="background:#7c3aed"]{background:var(--i65-primary)!important;color:var(--i65-on-primary)!important}
:root [style*="#4ade80"],:root [style*="#22c55e"],:root .sbox-h strong{color:var(--i65-primary)!important;border-color:var(--i65-primary)!important}
:root .stat-num{color:var(--i65-primary)!important}
:root .admin-card:hover{border-color:var(--i65-primary)!important}
:root .btn-cp:hover,:root .btn-cp.cp{border-color:var(--i65-primary)!important;color:var(--i65-primary)!important}
/* mileage form: field labels span the full row, input + button share the next one */
#list .kmform{grid-template-columns:minmax(0,1fr) auto!important}
#list .kmform>label,#list .kmform>.i65-auto-label{grid-column:1/-1;margin:0}
#list .kmform button{width:auto!important;min-width:112px!important}
@media(max-width:420px){#list .kmform{grid-template-columns:1fr!important}#list .kmform button{width:100%!important}}

/* Iran 65 professional automotive iconography */
.i65-icon-svg{display:block;flex:0 0 auto;color:currentColor;overflow:visible}
.nav-logo,.ch-ico,.admin-avatar,.group-avatar,.feat-icon,.cust-ico{display:inline-flex!important;align-items:center!important;justify-content:center!important}
.nav-logo{color:#fff!important;background:linear-gradient(145deg,#176f91,#0c5476)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 3px 9px rgba(8,73,104,.18)!important}
.ch-ico{color:#176f91!important;background:linear-gradient(145deg,#edf6fa,#e2eef4)!important;border:1px solid #cbdfe9!important;border-radius:10px!important}
.admin-avatar,.group-avatar{color:#176f91!important;background:linear-gradient(145deg,#edf5f8,#dceaf1)!important;border:1px solid #cbdde6!important}
.feat-icon{width:54px;height:54px;border-radius:15px;color:#176f91!important;background:linear-gradient(145deg,#f1f7fa,#e3eef4)!important;border:1px solid #d2e2ea!important;box-shadow:0 3px 10px rgba(27,73,98,.07);margin-bottom:5px}
.feat-icon .i65-icon-svg{width:28px;height:28px;stroke-width:1.65}
.cust-ico{width:34px;height:34px;border-radius:10px;color:#176f91!important;background:#edf5f8!important;border:1px solid #d7e5ec!important}
.ch-ico .i65-icon-svg,.admin-avatar .i65-icon-svg,.group-avatar .i65-icon-svg{width:20px;height:20px}
@media(prefers-reduced-motion:no-preference){.feat-icon{transition:transform .18s ease,box-shadow .18s ease}.feat:hover .feat-icon{transform:translateY(-2px);box-shadow:0 6px 14px rgba(27,73,98,.12)}}

/* Release UI consistency pass: predictable controls, aligned forms and responsive actions */
:root{--i65-control-h:44px;--i65-focus:#1682b4}
button,.btn,.btn-p,.btn-s,.btn-primary,.btn-secondary,.nav-btn,.tab{font-family:'Vazirmatn',sans-serif;min-height:40px;line-height:1.5;white-space:normal;cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(22,130,180,.32)!important;outline-offset:2px}
input,select,textarea,.fi,.fsel{min-height:var(--i65-control-h);max-width:100%;font:inherit;border-radius:9px;line-height:1.5}
textarea{min-height:100px;resize:vertical}
.fg,.fg2,.form-grid,.form-row{min-width:0;align-items:start}
.fg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.fgrp{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0 0 2px}
.fgrp>label{font-weight:650;line-height:1.8}
.fgrp small,.fhint,.hint{line-height:1.8}
.btn-row,.report-actions,.form-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.btn-row>*{min-width:120px}
.btn-row .btn-p{flex:1}
.site-credit{display:block;width:min(100% - 28px,1180px);margin:26px auto 0!important;padding:16px 12px 22px!important;text-align:center;line-height:1.9;color:#536b7c!important;border-top:1px solid #d6e1e8!important;font-size:.8rem}
.roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.role{min-height:46px;justify-content:center;text-align:center}
[hidden]{display:none!important}
.provider-mechanical #p2 .fg{grid-template-columns:repeat(2,minmax(0,1fr))}
.provider-mechanical #stype{order:1}
.provider-mechanical #slabor-wrap{order:2}
.provider-mechanical #sprice-wrap{order:3}
.provider-mechanical #sdate-wrap{order:4}
.provider-mechanical #skm-wrap{order:5}
@media(max-width:720px){.fg,.provider-mechanical #p2 .fg{grid-template-columns:minmax(0,1fr)!important;gap:12px}.fg2{grid-column:auto!important}.btn-row{flex-direction:column-reverse;align-items:stretch}.btn-row>*{width:100%;min-width:0}.roles{grid-template-columns:1fr}.site-credit{width:calc(100% - 20px)}}

/* Optical corrections for dashboards and small screens. */
:root .card,:root .vcard,:root .admin-card,:root .search-card,:root .feat,:root .content-card,:root .form-card,:root .login-card,:root .register-card,:root .stat-card,:root .service-card,:root .vehicle-card,:root .box,:root .km-hero,:root .htable,:root .pc,:root .sr-item,:root .vp,:root .hist-row,:root .history-entry,:root .featured-card,:root .tok-box,:root .group-header,:root .group-body,:root .dashboard-panel,:root .i65-chart-card{border-radius:4px!important;box-shadow:none!important}
:root .tabs,:root .dashboard-tabs,:root .tab,:root .dashboard-tab,:root .role,:root input,:root select,:root textarea,:root .fi,:root .fsel,:root .btn,:root .btn-p,:root .btn-s,:root .nav-btn,:root .search-btn{border-radius:3px!important}
:root .nav{position:sticky;backdrop-filter:none}
:root .search-card,:root .card{border-top:2px solid var(--i65-primary)!important}
:root body:has(>.nav)>.hero .search-card{border-top:2px solid var(--i65-primary)!important}
:root .feat:hover,:root .admin-card:hover,:root .featured-card:hover{transform:translateY(-2px);transition:transform .18s ease,border-color .18s ease}
:root .featured-card:hover{box-shadow:none!important}
:root .site-credit{letter-spacing:.01em}
:root body:has(>.nav)>.site-credit{width:100%;max-width:none;margin:30px 0 0!important;padding:20px 14px!important;border-top:1px solid var(--i65-border)!important;background:#e7eeea;color:var(--i65-muted)!important}
:root body:has(>.nav){overflow-x:hidden}
:root body:has(>.nav)>.hero{flex:0 0 auto}
:root body:has(>.nav)>.featured-section{margin-top:36px;margin-bottom:24px}
:root body:has(>.nav)>.features-section{margin-top:24px;margin-bottom:28px}
:root body:has(>.nav)>.featured-section::before,:root body:has(>.nav)>.features-section::before{left:0}
@media(max-width:600px){:root body:has(>.nav)>.featured-section,:root body:has(>.nav)>.features-section{width:calc(100% - 32px);min-width:0}:root body:has(>.nav)>.featured-section::before,:root body:has(>.nav)>.features-section::before{left:0}:root body:has(>.nav)>.featured-grid,:root body:has(>.nav)>.features-section .features{grid-template-columns:minmax(0,1fr)!important;max-width:100%;width:100%;gap:10px}:root body:has(>.nav)>.featured-section .featured-card{min-width:0;grid-template-columns:80px minmax(0,1fr)}:root body:has(>.nav)>.featured-section .featured-photo{min-width:0;max-width:100%}:root body:has(>.nav)>.site-credit{margin-top:12px!important;padding:14px 12px!important}}
:root input,:root select,:root textarea,:root .fi,:root .fsel{min-height:var(--i65-control-h)!important;border-radius:3px!important}
:root :focus-visible{box-shadow:var(--i65-focus)!important}
:root .topbar .ts{color:var(--i65-muted)!important}
@media(prefers-reduced-motion:reduce){:root *, :root *::before,:root *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:720px){:root body:has(>.nav)>.hero{min-height:420px;padding:54px 18px 42px}:root body:has(>.nav)>.hero::before{font-size:20vw}:root body:has(>.nav)>.features-section .feat{min-height:150px;padding:18px 14px}:root .nav-right{gap:5px}}
@media(max-width:680px){:root body:has(>.card>.logo-wrap)>.card{width:100%;min-height:0;grid-template-columns:minmax(0,1fr);gap:0;padding:24px!important;background:var(--i65-surface)!important}:root body:has(>.card>.logo-wrap)>.card .logo-wrap{grid-column:1;grid-row:auto;align-items:center;text-align:center;padding:0 0 20px;margin-bottom:20px;border:0;border-bottom:1px solid var(--i65-border)}:root body:has(>.card>.logo-wrap)>.card .logo-wrap .logo{margin:0 auto 12px}:root body:has(>.card>.logo-wrap)>.card>.fgrp,:root body:has(>.card>.logo-wrap)>.card>.err,:root body:has(>.card>.logo-wrap)>.card>.ok,:root body:has(>.card>.logo-wrap)>.card>.btn,:root body:has(>.card>.logo-wrap)>.card>.back{grid-column:1;margin-inline-start:0}}
@media(max-width:420px){:root body:has(>.nav)>.hero h1{font-size:2.35rem!important}:root body:has(>.nav)>.hero .sub{font-size:.9rem}:root body:has(>.nav)>.features-section .features{grid-template-columns:1fr}:root .dashboard-tabs{grid-template-columns:1fr!important}}

/* Manager controls: compact actions and radio indicators beside their labels. */
:root body:has(#manager-sidebar) button,:root body:has(#manager-sidebar) .btn,:root body:has(#manager-sidebar) .btn-p,:root body:has(#manager-sidebar) .btn-s,:root body:has(#manager-sidebar) .btn-sm,:root body:has(#manager-sidebar) .nav-btn,:root body:has(#manager-sidebar) .tab{min-height:34px!important;padding:5px 10px!important;font-size:.8rem!important;line-height:1.45!important;gap:6px}
:root body:has(#manager-sidebar) .tabs .tab{min-height:38px!important;padding:7px 10px!important}
:root body:has(#manager-sidebar) .roles .role{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;gap:9px!important;min-height:38px!important;padding:6px 11px!important;text-align:right!important}
:root body:has(#manager-sidebar) .roles .role input[type=radio]{display:inline-block!important;position:static!important;opacity:1!important;width:16px!important;height:16px!important;flex:0 0 16px!important;margin:0!important;accent-color:var(--i65-primary)}
:root body:has(#manager-sidebar) .roles .role::before,:root body:has(#manager-sidebar) .roles .role::after{content:none!important;display:none!important}
:root body:has(#manager-sidebar) .roles .role:has(input[type=radio]){transform:none!important}
:root body:has(#manager-sidebar) .roles{display:flex!important;flex-direction:column!important;gap:6px!important;max-width:100%!important}
:root body:has(#manager-sidebar) .roles .role{width:100%!important;min-height:36px!important;height:auto!important;background:var(--i65-surface)!important;border:1px solid var(--i65-border)!important;border-radius:3px!important}
:root body:has(#manager-sidebar) .roles .role.on{background:var(--i65-primary-soft)!important;border-color:var(--i65-primary)!important;color:var(--i65-primary)!important}
:root #edit-modal{overflow-y:auto;align-items:flex-start!important}
:root #edit-modal>.card{margin:auto;max-height:calc(100dvh - 32px)!important;width:min(100%,760px)!important;padding:clamp(16px,3vw,28px)!important}
:root #edit-km-logs .edit-km-row{grid-template-columns:minmax(120px,1fr) minmax(100px,1fr) 38px!important}
:root #edit-km-logs .edit-km-remove{width:38px;min-width:38px;padding:4px!important;font-size:1.25rem!important;color:var(--i65-danger)!important}
:root #vp .btn-clr{width:34px;min-width:34px;height:34px;padding:0!important;border:1px solid var(--i65-border-strong)!important;border-radius:3px!important;background:var(--i65-surface)!important;color:var(--i65-danger)!important;font-size:1.25rem!important;line-height:1}
:root .btn-customer-remove{min-width:32px!important;width:32px;height:32px;padding:0!important;font-size:1.25rem!important;line-height:1;color:var(--i65-danger)!important;border-color:var(--i65-danger)!important}
@media(max-width:560px){:root #edit-km-logs .edit-km-row{grid-template-columns:minmax(0,1fr) 38px!important}:root #edit-km-logs .edit-km-row label{grid-column:1}:root #edit-km-logs .edit-km-remove{grid-column:2;grid-row:1/3;align-self:center}:root #edit-modal{padding:8px!important}:root #edit-modal>.card{max-height:calc(100dvh - 16px)!important}}

/* Compact, consistent plate entry fields across registration and edit forms. */
#plate-reg .pw-three{width:5ch!important;min-width:5ch!important;max-width:5ch!important;flex:0 0 5ch!important}#plate-edit .pw-three{width:3ch!important;min-width:3ch!important;max-width:3ch!important;flex:0 0 3ch!important}
#plate-reg .pw-letter,#plate-edit .pw-letter{font-family:'Vazirmatn',sans-serif!important}
#plate-edit{height:54px;width:min(100%,310px);min-width:270px;display:flex;align-items:stretch;box-sizing:border-box;overflow:hidden}
#plate-edit input,#plate-edit select{height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0 2px!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:#fff!important;color:#111!important;line-height:1!important;font:800 24px Arial,'Vazirmatn',sans-serif!important;text-align:center!important;box-sizing:border-box!important;appearance:none;-webkit-appearance:none}
#plate-edit .pw-blue{width:38px;flex:0 0 38px}#plate-edit .pw-three{width:4ch!important;min-width:4ch!important;max-width:4ch!important;flex:0 0 4ch!important;border-right:2px solid #aab3bb!important}#plate-edit .pw-letter{width:40px;flex:0 0 40px;border-right:2px solid #aab3bb!important}#plate-edit .pw-two{width:48px;flex:0 0 48px;border-right:2px solid #aab3bb!important}#plate-edit .pw-iran{width:48px;flex:0 0 48px;padding:2px!important;border:0!important}#plate-edit .pw-iran-num{width:100%;height:27px!important;font-size:20px!important}
@media(max-width:520px){#plate-edit{height:50px;min-width:260px;width:min(100%,300px)}#plate-edit input,#plate-edit select{font-size:20px!important}#plate-edit .pw-blue{width:34px;flex-basis:34px}#plate-edit .pw-letter{width:38px;flex-basis:38px}#plate-edit .pw-two{width:44px;flex-basis:44px}#plate-edit .pw-iran{width:44px;flex-basis:44px}}
.nav-logo,.brand-ico,.logo{overflow:hidden!important;background:#fff!important;background-color:#fff!important;background-image:none!important;border:1px solid #e5bd36!important;border-radius:7px!important;padding:2px!important;flex:0 0 auto!important}
.nav-logo{width:clamp(38px,5vw,48px)!important;height:clamp(38px,5vw,48px)!important}
.brand-ico{width:clamp(36px,5vw,46px)!important;height:clamp(36px,5vw,46px)!important}
.logo{width:clamp(112px,28vw,156px)!important;height:auto!important;aspect-ratio:1.5!important;margin:0 auto 1rem!important}
.brand-logo-image{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;border-radius:4px!important;background:#fff!important}
.feature-brand-logo{width:46px!important;height:46px!important;padding:3px;background:#fff;border:1px solid #e5bd36;border-radius:8px;object-fit:contain}
.logo-wrap .logo{box-shadow:0 6px 20px rgba(0,0,0,.12)!important}
.logo-wrap .logo{background:#fff!important;background-color:#fff!important;border:0!important;box-shadow:none!important;padding:0!important}
@media(max-width:600px){.nav-logo{width:38px!important;height:38px!important}.brand-ico{width:34px!important;height:34px!important}.logo{width:min(136px,40vw)!important}}
body:has(#manager-sidebar) .layout>.tabs,body:has(#admin-sidebar) .layout>.tabs,body:has(#customer-sidebar) .page>.dashboard-tabs{position:fixed!important;inset:0 auto 0 0!important;right:0!important;left:auto!important;width:min(320px,88vw)!important;height:100vh!important;height:100dvh!important;max-height:none!important;z-index:1001!important;overflow-y:auto!important;overscroll-behavior:contain;transform:translateX(105%)!important;transition:transform .24s ease!important;border-radius:0!important;box-shadow:0 12px 36px rgba(15,35,28,.22)!important}
body:has(#manager-sidebar) .layout.sidebar-open>.tabs,body:has(#admin-sidebar) .layout.sidebar-open>.tabs,body:has(#customer-sidebar) .page.sidebar-open>.dashboard-tabs{transform:translateX(0)!important}
body:has(#manager-sidebar) .layout.sidebar-open:before,body:has(#admin-sidebar) .layout.sidebar-open:before,body:has(#customer-sidebar) .page.sidebar-open:before{content:""!important;display:block!important;position:fixed!important;inset:0!important;z-index:1000!important;background:rgba(12,25,20,.38)!important}
