:root{
  --ui-font:"Vazirmatn","IRANSansX","Segoe UI",Tahoma,Arial,sans-serif;
  --ui-navy:#07111f;
  --ui-navy-2:#102438;
  --ui-paper:#f3f6f8;
  --ui-card:#fff;
  --ui-text:#132231;
  --ui-muted:#718292;
  --ui-line:#e1e8ec;
  --ui-lime:#d9ff62;
  --ui-cyan:#61dfff;
  --ui-shadow:0 22px 70px rgba(7,17,31,.1);
}
html{font-family:var(--ui-font);font-synthesis:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,button,input,select,textarea{font-family:var(--ui-font)!important}
body{font-feature-settings:"ss01" 1,"tnum" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
::selection{background:var(--ui-lime);color:var(--ui-navy)}
button,input,select,textarea{letter-spacing:0}
input::placeholder,textarea::placeholder{color:#9aa8b3;opacity:1}

/* One visual language for every authentication and error page. */
body.login-page{position:relative;isolation:isolate;overflow-x:hidden;background:
  radial-gradient(circle at 78% 8%,rgba(97,223,255,.17),transparent 25rem),
  radial-gradient(circle at 10% 90%,rgba(217,255,98,.11),transparent 24rem),
  linear-gradient(145deg,#07111f,#0b1a2a 58%,#07111f);color:var(--ui-text)}
body.login-page:before{content:"";position:fixed;z-index:-1;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 85%,transparent)}
.login-card{position:relative;border:1px solid rgba(255,255,255,.65)!important;border-radius:25px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 35px 110px rgba(0,0,0,.42),inset 0 1px #fff;padding:30px!important;overflow:hidden}
.login-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--ui-lime),var(--ui-cyan),#8c76ff)}
.login-card h1{color:var(--ui-navy);font-weight:900;letter-spacing:-.025em}
.login-card .btn{min-height:46px;border-radius:13px}
.login-card .btn-primary{background:linear-gradient(135deg,#c9f34f,var(--ui-lime));color:#172207;box-shadow:0 10px 28px rgba(176,217,50,.22)}
.login-card input,.login-card select,.login-card textarea{min-height:45px;border-color:#dce5e9;background:#f9fbfc;border-radius:12px}
.login-card input:focus,.login-card select:focus,.login-card textarea:focus{background:#fff;border-color:#a6cf35;box-shadow:0 0 0 4px rgba(185,228,53,.13)}
.auth-mark{background:linear-gradient(145deg,var(--ui-lime),#b8e737)!important;box-shadow:0 10px 28px rgba(176,217,50,.2)}
.brand-mark-image{overflow:visible!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important}.brand-mark-image:after{display:none}.brand-mark-image img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 15px rgba(0,0,0,.22))}.account-brand img{display:block;width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 5px 10px rgba(7,17,31,.2))}.admin-logo img{display:block;width:42px;height:42px;flex:0 0 42px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.22))}

/* Administration */
body.admin-v55{background:
  radial-gradient(circle at 76% -8%,rgba(97,223,255,.14),transparent 31rem),
  radial-gradient(circle at 8% 10%,rgba(217,255,98,.1),transparent 26rem),var(--ui-paper)!important;color:var(--ui-text)}
.admin-v55 .admin-main{background:transparent}
.admin-v55 .admin-panel,.admin-v55 .admin-kpi{border-color:var(--ui-line);box-shadow:0 15px 48px rgba(7,17,31,.06)}
.admin-v55 .table-wrap{border:1px solid #e8edef;border-radius:16px;background:#fff}
.admin-v55 table{margin:0}.admin-v55 thead th{background:#f6f9fa;color:#657887;font-weight:800;white-space:nowrap}
.admin-v55 tbody tr:last-child td{border-bottom:0}
.admin-v55 tbody tr:hover{background:#fbfef4}
.appointment-toolbar{align-items:flex-start!important;gap:18px}.appointment-toolbar p{margin:4px 0 0;color:var(--ui-muted);font-size:9px}.appointment-toolbar .actions{justify-content:flex-end}.appointment-toolbar .btn{min-height:34px!important;padding:7px 10px!important;font-size:9px!important}.appointment-status-form{min-width:220px}.appointment-status-form select{min-width:125px}
.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:14px}.health-card{display:flex;align-items:center;gap:11px;padding:16px;border:1px solid var(--ui-line);border-radius:17px;background:#fff;box-shadow:0 12px 38px rgba(7,17,31,.05)}.health-card>span{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;font-weight:900}.health-card.is-ok>span{background:#e8fadf;color:#28774c}.health-card.is-bad>span{background:#fff0f0;color:#b23e3e}.health-card small,.health-card strong{display:block}.health-card small{font-size:8px;color:var(--ui-muted)}.health-card strong{font-size:11px;margin-top:4px}.health-details .admin-panel{margin-top:0}.health-list{display:grid;gap:7px;margin:0}.health-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px;border-bottom:1px solid #edf1f3}.health-list dt{font-size:9px;color:var(--ui-muted)}.health-list dd{margin:0;font-size:10px;font-weight:800}.route-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.route-check{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #e8edef;border-radius:12px}.route-check i{font-style:normal;width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#edf3f4}.route-check.is-ok i{background:#e8fadf;color:#28774c}.route-check.is-bad i{background:#fff0f0;color:#b23e3e}.route-check b,.route-check small{display:block}.route-check b{font-size:8px}.route-check small{font-size:7px;color:var(--ui-muted);margin-top:2px;overflow-wrap:anywhere}

/* Customer account */
body.account-page{background:
  radial-gradient(circle at 80% -4%,rgba(97,223,255,.13),transparent 28rem),
  radial-gradient(circle at 8% 20%,rgba(217,255,98,.1),transparent 24rem),var(--ui-paper)!important;color:var(--ui-text)}
.account-top{position:sticky;z-index:50;top:0;background:rgba(243,246,248,.82);border-bottom:1px solid rgba(225,232,236,.75);backdrop-filter:blur(18px)}
.account-side,.account-card,.account-section{border-color:var(--ui-line)!important;box-shadow:0 14px 44px rgba(7,17,31,.055)}
.account-menu a:hover,.account-menu a:focus-visible{background:#f4f9e7!important;color:var(--ui-navy)!important}
.account-section .table-wrap{border:1px solid #e8edef;border-radius:15px}

/* Public service pages and installer */
body.seo-page{background:var(--ui-paper)!important;color:var(--ui-text)}
.seo-page .seo-header{background:rgba(7,17,31,.93);backdrop-filter:blur(18px)}
.seo-page .service-seo-card,.seo-page .detail-main,.seo-page .side-card{border-color:var(--ui-line);box-shadow:0 16px 52px rgba(7,17,31,.06)}
body.install-page{font-family:var(--ui-font)!important;background:
  radial-gradient(circle at 78% 0,rgba(97,223,255,.16),transparent 27rem),
  radial-gradient(circle at 7% 90%,rgba(217,255,98,.09),transparent 25rem),linear-gradient(145deg,#07111f,#0c1d2e)!important}
.install-page .installer{border:1px solid rgba(255,255,255,.12);box-shadow:0 35px 120px rgba(0,0,0,.45)!important}
.install-page .installer-head{background:linear-gradient(135deg,#07111f,#102a40)!important}

/* Customer-facing vehicle file shared by SMS link. */
body.public-record-page{min-height:100vh;background:radial-gradient(circle at 78% -8%,rgba(97,223,255,.16),transparent 28rem),radial-gradient(circle at 8% 18%,rgba(217,255,98,.12),transparent 24rem),#eef3f5;color:var(--ui-text)}
.public-record-shell{width:min(920px,calc(100% - 28px));margin:auto;padding:22px 0 45px}.public-record-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}.public-record-brand{display:flex;align-items:center;gap:10px;color:var(--ui-navy);font-weight:900}.public-record-brand img{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 7px 14px rgba(7,17,31,.2))}.public-record-brand small{display:block;color:var(--ui-muted);font-size:9px;margin-top:2px}.record-badge{padding:8px 12px;border-radius:999px;background:#e8fadf;color:#28774c;font-size:10px;font-weight:800}.public-record-hero{display:flex;align-items:stretch;justify-content:space-between;gap:18px;padding:26px;border-radius:25px;background:linear-gradient(135deg,#07111f,#12334b);color:#fff;box-shadow:0 28px 80px rgba(7,17,31,.2)}.public-record-hero h1{margin:6px 0;font-size:clamp(24px,5vw,42px)}.public-record-hero p{margin:0;color:#a9bdc8;direction:ltr;text-align:right}.public-car-card{min-width:220px;align-self:center;padding:17px;border:1px solid rgba(255,255,255,.14);border-radius:17px;background:rgba(255,255,255,.07)}.public-car-card small,.public-car-card span{display:block;color:#a9bdc8;font-size:10px}.public-car-card strong{display:block;margin:5px 0;font-size:18px}.public-record-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:14px 0}.public-record-kpis>div,.public-record-panel{background:#fff;border:1px solid #e0e8ec;border-radius:20px;box-shadow:0 14px 42px rgba(7,17,31,.06)}.public-record-kpis>div{padding:17px}.public-record-kpis small{display:block;color:var(--ui-muted);font-size:9px}.public-record-kpis strong{display:block;margin-top:5px;font-size:17px}.public-record-panel{padding:20px;margin-top:14px}.public-record-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.public-record-panel h2{margin:3px 0 0;font-size:18px}.public-due-list,.public-history-list{display:grid;gap:8px}.public-due-row,.public-history-list article{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10px;align-items:center;padding:12px;border:1px solid #edf1f3;border-radius:14px}.public-due-row span,.public-history-list small{font-size:10px;color:var(--ui-muted)}.public-history-list article{grid-template-columns:1fr auto}.public-history-list article strong,.public-history-list article span{display:block}.public-history-list article span{margin-top:3px;color:var(--ui-muted);font-size:10px}.public-history-list article b{display:block;margin-top:3px;font-size:11px}.record-empty{padding:25px;text-align:center;border:1px dashed #dbe3e7;border-radius:14px;color:var(--ui-muted);font-size:11px}.public-record-foot{display:flex;justify-content:space-between;gap:12px;padding:18px 3px;color:var(--ui-muted);font-size:10px}.public-record-foot a{color:#28774c;font-weight:800}.share-link-card{display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center;padding:14px 16px;margin:12px 0;border:1px solid #dceab9;border-radius:17px;background:#fbfff0}.share-link-card strong,.share-link-card small{display:block}.share-link-card small{margin-top:3px;color:#68805b;font-size:10px}.share-link-card code{grid-column:1/-1;display:block;padding:10px;border-radius:10px;background:#fff;border:1px solid #e6efd2;color:#3d5c32;font-size:10px;overflow:auto;white-space:nowrap}
.service-check-grid-modern .service-check{min-height:76px}.service-check-grid-modern .service-check-title{height:100%;align-items:center}.service-check-grid-modern .service-check-title small{color:#81909c}.service-entry-panel .field-highlight{background:#fbfff0;border-color:#dceab9}.field-note{justify-content:center;padding:10px 12px;border:1px dashed #dbe5e8;border-radius:12px;background:#f8fafb}.field-note label{font-size:10px}.field-note small{color:var(--ui-muted);font-size:10px;line-height:1.8}


/* v5.8.3 — public vehicle file: absolute-route safe + readable Persian mobile UI */
.public-record-page{overflow-x:hidden;line-height:1.75}
.public-record-shell{max-width:100%;overflow:hidden}
.public-record-brand span{font-size:15px;line-height:1.55}
.public-record-brand small{font-size:12px;line-height:1.7;font-weight:500}
.record-badge{font-size:12px;line-height:1.4}
.public-record-hero>div:first-child{min-width:0}
.public-record-hero .eyebrow,.public-record-panel .eyebrow{font-size:11px;font-weight:800;letter-spacing:0;color:inherit;opacity:.72}
.public-record-hero h1{line-height:1.45;overflow-wrap:anywhere}
.public-record-hero p{font-size:13px;line-height:1.8}
.public-car-card small,.public-car-card span{font-size:12px;line-height:1.8}
.public-car-card strong{font-size:20px;line-height:1.6;overflow-wrap:anywhere}
.public-record-kpis small{font-size:12px;line-height:1.7}
.public-record-kpis strong{font-size:18px;line-height:1.6}
.public-record-panel-head{min-width:0}
.public-record-panel-head>div{min-width:0}
.public-record-panel h2{font-size:20px;line-height:1.6}
.public-record-panel .mini-label{font-size:11px;white-space:nowrap;color:var(--ui-muted)}
.public-due-row strong{font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.public-due-row span,.public-history-list small{font-size:12px;line-height:1.8}
.public-history-list article strong{font-size:14px;line-height:1.8}
.public-history-list article span{font-size:12px;line-height:1.85;overflow-wrap:anywhere}
.public-history-list article b{font-size:13px;line-height:1.7}
.record-empty{font-size:13px;line-height:2}
.public-record-foot{font-size:12px;line-height:1.9}

@media(max-width:760px){

  .public-record-shell{width:calc(100% - 20px);padding:14px 0 28px}
  .public-record-head{gap:10px;margin-bottom:14px}
  .public-record-brand img{width:42px;height:42px}
  .public-record-hero{padding:19px 16px;border-radius:20px}
  .public-record-hero h1{font-size:25px;margin:7px 0 3px}
  .public-car-card{padding:14px;border-radius:14px}
  .public-record-kpis{gap:8px;margin:9px 0}
  .public-record-kpis>div{padding:13px 14px;border-radius:15px}
  .public-record-panel{padding:15px 13px;margin-top:9px;border-radius:16px}
  .public-record-panel-head{align-items:flex-start;margin-bottom:10px}
  .public-record-panel h2{font-size:18px}
  .public-due-list,.public-history-list{gap:7px}
  .public-due-row{grid-template-columns:1fr;padding:11px 12px;gap:3px;border-radius:12px}
  .public-due-row strong{grid-column:auto;margin-bottom:3px}
  .public-history-list article{grid-template-columns:1fr;padding:11px 12px;gap:9px;border-radius:12px}
  .public-history-list article>div:last-child{padding-top:8px;border-top:1px dashed #e4eaed}
  .public-record-foot{gap:5px;padding:14px 3px}

  .login-card{padding:23px!important;border-radius:21px!important}
  .appointment-toolbar{display:block!important}.appointment-toolbar .actions{margin-top:13px;justify-content:flex-start}
  .appointment-status-form{min-width:190px}.account-top{position:relative}
  .health-grid,.route-check-grid{grid-template-columns:1fr}.system-welcome{align-items:flex-start}.system-welcome form,.system-welcome button{width:100%}
  .public-record-hero{display:block}.public-car-card{margin-top:18px;min-width:0}.public-record-kpis{grid-template-columns:1fr}.public-record-head,.public-record-foot{align-items:flex-start;flex-direction:column}.public-due-row{grid-template-columns:1fr 1fr}.public-due-row strong{grid-column:1/-1}.share-link-card{grid-template-columns:1fr}.share-link-card .btn{width:100%}
}
