:root{
 --p:#1769e0;--p2:#0f56bd;--ink:#182230;--muted:#718096;--bg:#f5f7fa;--surface:#fff;--line:#e5e9ef;
 --green:#159a62;--orange:#d98216;--red:#d64545;--sidebar:#111827;--sidebar2:#182234;--sidebar-w:236px;
 --radius:14px;--shadow:0 4px 18px rgba(15,23,42,.055);--font:'AparatNaskh','Tahoma',Arial,sans-serif;
}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:13px;line-height:1.8}body,button,input,select,textarea{font-family:var(--font)}a{color:inherit}button{cursor:pointer}.btn{border-radius:10px;font-weight:600;padding:.55rem .9rem}.form-control,.form-select{border-radius:10px;border-color:#dce2ea;min-height:42px;font-size:13px}.form-control:focus,.form-select:focus{border-color:#7aa8ed;box-shadow:0 0 0 .18rem rgba(23,105,224,.1)}.card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}.table{font-size:12px}.badge{font-weight:600}.alert{border-radius:10px;border:0}
/* shell */
.app-shell{min-height:100vh}.app-sidebar{position:fixed;inset:0 0 0 auto;width:var(--sidebar-w);background:var(--sidebar);color:#cbd5e1;z-index:1050;padding:13px 10px;overflow-y:auto;transition:width .18s,transform .22s;scrollbar-width:thin}.app-brand{display:flex;align-items:center;gap:10px;padding:5px 8px 13px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:10px}.app-brand-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#2180ff,#1257bd);color:#fff;font-size:17px;flex:none}.app-brand strong{display:block;color:#fff;font-size:15px;font-weight:800}.app-brand small{display:block;color:#8492a6;font-size:9px;line-height:1.4}.app-nav-label{font-size:9px;color:#68778c;font-weight:700;padding:9px 9px 4px}.app-nav a{display:flex;align-items:center;gap:9px;min-height:38px;padding:7px 9px;margin:2px 0;border-radius:9px;color:#b9c4d3;text-decoration:none;font-size:11px;transition:.14s}.app-nav a i{width:19px;text-align:center;color:#8290a4;font-size:14px}.app-nav a:hover{background:#1c2637;color:#fff}.app-nav a.active{background:#1769e0;color:#fff;box-shadow:0 5px 14px rgba(23,105,224,.2)}.app-nav a.active i{color:#fff}.app-sidebar-footer{border-top:1px solid rgba(255,255,255,.07);margin-top:12px;padding:11px 8px}.app-user-mini{display:flex;align-items:center;gap:8px}.app-avatar{width:32px;height:32px;border-radius:50%;background:#263449;color:#fff;display:grid;place-items:center;font-weight:700;font-size:12px;flex:none}.app-user-mini strong{display:block;color:#fff;font-size:10px}.app-user-mini small{display:block;color:#78869b;font-size:9px}.app-logout{color:#ffaaaa!important;margin-top:7px!important}.app-main{margin-right:var(--sidebar-w);min-height:100vh}.app-topbar{height:62px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:1000}.app-page-title h1{font-size:16px;margin:0;font-weight:800}.app-page-title small{font-size:9px;color:#8b97a8}.app-top-actions{display:flex;gap:6px;align-items:center}.app-icon-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#59687c;display:grid;place-items:center;text-decoration:none}.app-mobile-menu{display:none}.app-content{padding:18px 20px 28px;max-width:1500px;margin:0 auto}.app-overlay{display:none}
/* common page */
.page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.page-head h2{font-size:18px;font-weight:800;margin:0}.page-head p{font-size:10px;color:var(--muted);margin:2px 0 0}.page-actions{display:flex;gap:7px;flex-wrap:wrap}.section-card{padding:15px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.section-head h3{font-size:13px;font-weight:800;margin:0}.section-head a{font-size:10px;color:var(--p);text-decoration:none}.data-card{overflow:hidden}.data-card .table{margin-bottom:0}.data-card .table th{font-size:10px;color:#7b8798;font-weight:700;background:#fafbfd;border-bottom:1px solid var(--line);white-space:nowrap}.data-card .table td{vertical-align:middle;border-color:#edf0f4}.empty-state{text-align:center;padding:28px 10px;color:#9aa6b6}
/* dashboard compact */
.dashboard-welcome{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.dashboard-welcome h2{font-size:18px;font-weight:800;margin:0 0 1px}.dashboard-welcome p{font-size:10px;color:var(--muted);margin:0}.quick-actions{display:flex;gap:6px;flex-wrap:wrap}.quick-actions .btn{font-size:10px;padding:7px 10px}.dashboard-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:10px}.kpi-card{grid-column:span 2;padding:13px;min-height:93px;position:relative;overflow:hidden}.kpi-icon{width:33px;height:33px;border-radius:9px;display:grid;place-items:center;background:#edf4ff;color:var(--p);font-size:13px;margin-bottom:7px}.kpi-label{font-size:9px;color:var(--muted)}.kpi-value{font-size:15px;font-weight:800;white-space:nowrap;line-height:1.5}.kpi-sub{font-size:8px;color:#a0aaba}.dashboard-wide{grid-column:span 8}.dashboard-side{grid-column:span 4}.action-list{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.action-item{padding:10px;border:1px solid var(--line);border-radius:10px;text-decoration:none;background:#fbfcfe}.action-item strong{display:block;font-size:16px;line-height:1.4}.action-item span{font-size:8px;color:var(--muted)}.shortcut-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.shortcut{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:10px;text-decoration:none;min-height:48px}.shortcut i{width:28px;height:28px;display:grid;place-items:center;background:#edf4ff;color:var(--p);border-radius:8px;font-size:11px;flex:none}.shortcut span{font-size:9px;font-weight:600}.notice-row{display:flex;gap:8px;align-items:flex-start;padding:8px 0;border-bottom:1px solid #eef1f5;font-size:9px}.notice-row:last-child{border-bottom:0}.mini-chart{display:flex;align-items:end;gap:8px;height:130px;padding:8px 5px 0}.mini-bar-wrap{flex:1;height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:5px}.mini-bar{width:min(30px,70%);min-height:4px;background:linear-gradient(#3b82f6,#1769e0);border-radius:6px 6px 2px 2px}.mini-bar.green{background:linear-gradient(#35b77e,#159a62)}.mini-bar-label{font-size:8px;color:#8995a5;max-width:70px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mini-bar-value{font-size:8px;color:#69778a}
/* auth */
.auth-page{min-height:100vh;background:#f4f7fb;display:grid;grid-template-columns:1fr 470px;direction:ltr}.auth-brand-panel{background:linear-gradient(145deg,#0d1728,#172b4d);color:#fff;display:flex;align-items:center;justify-content:center;padding:50px;position:relative;overflow:hidden}.auth-brand-panel:after{content:'';position:absolute;width:480px;height:480px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-180px;bottom:-180px}.auth-brand-inner{direction:rtl;max-width:520px;position:relative;z-index:1}.auth-brand-mark{width:58px;height:58px;border-radius:16px;background:#1769e0;display:grid;place-items:center;font-size:25px;margin-bottom:22px}.auth-brand-inner h2{font-size:30px;font-weight:800;margin:0 0 9px}.auth-brand-inner p{font-size:13px;color:#aebbd0;max-width:430px;line-height:2}.auth-points{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:25px}.auth-point{border:1px solid rgba(255,255,255,.08);border-radius:11px;padding:10px;color:#dce5f3;font-size:10px}.auth-point i{color:#55a0ff;margin-left:5px}.auth-form-panel{direction:rtl;background:#fff;display:flex;align-items:center;justify-content:center;padding:30px}.auth-card{width:100%;max-width:370px}.auth-logo{width:50px;height:50px;border-radius:14px;background:#1769e0;color:#fff;display:grid;place-items:center;font-size:20px;margin-bottom:16px}.auth-card h1{font-size:22px;font-weight:800;margin:0 0 3px}.auth-subtitle{font-size:10px;color:var(--muted);margin-bottom:22px}.auth-label{font-size:10px;font-weight:700;margin-bottom:6px;color:#465365}.auth-input-wrap{position:relative}.auth-input-wrap i{position:absolute;right:13px;top:13px;color:#a1adbb;z-index:2}.auth-input{padding-right:38px!important;min-height:46px!important;background:#f9fafb!important}.auth-submit{min-height:46px;border:0;background:linear-gradient(135deg,#1769e0,#1257bd);box-shadow:0 7px 18px rgba(23,105,224,.18)}.auth-footer{text-align:center;color:#a0aaba;font-size:9px;margin-top:20px}.auth-page .form-check-label{font-size:9px;color:#758196}.auth-page a{font-size:9px;color:var(--p)}
/* responsive */
@media(max-width:1200px){.kpi-card{grid-column:span 4}.dashboard-wide{grid-column:span 8}.dashboard-side{grid-column:span 4}.shortcut-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:991px){.app-sidebar{transform:translateX(105%);box-shadow:-20px 0 45px rgba(0,0,0,.22)}.app-sidebar.open{transform:translateX(0)}.app-main{margin-right:0}.app-mobile-menu{display:grid}.app-overlay{position:fixed;inset:0;background:rgba(10,18,30,.35);z-index:1040}.app-overlay.show{display:block}.app-topbar{padding:0 13px}.app-content{padding:15px 13px 24px}.auth-page{grid-template-columns:1fr}.auth-brand-panel{display:none}}
@media(max-width:767px){body{font-size:12px}.app-topbar{height:58px}.app-page-title h1{font-size:14px}.app-page-title small{display:none}.dashboard-welcome{align-items:flex-start;flex-direction:column}.quick-actions{width:100%}.quick-actions .btn{flex:1}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:8px}.kpi-card{grid-column:span 1;min-height:88px}.dashboard-wide,.dashboard-side{grid-column:span 2}.action-list{grid-template-columns:repeat(2,1fr)}.action-item:last-child{grid-column:span 2}.shortcut-grid{grid-template-columns:repeat(2,1fr)}.page-head{align-items:flex-start;flex-direction:column}.page-actions{width:100%}.page-actions .btn{flex:1}.table-responsive{overflow-x:auto}.auth-form-panel{padding:24px 18px}.auth-card{max-width:420px}.auth-card h1{font-size:20px}}
@media(max-width:420px){.app-content{padding:12px 10px 20px}.shortcut-grid{gap:6px}.shortcut{padding:8px}.shortcut span{font-size:8px}.kpi-value{font-size:13px}.action-item{padding:8px}.auth-form-panel{padding:18px 14px}}

/* ===== UI refinement / Jalali / sales ===== */
.form-control,.form-select,.input-group-text{border-radius:12px!important}
.form-control,.form-select{min-height:44px}
.form-select{background-position:left .8rem center!important;padding-left:2.45rem!important;padding-right:.9rem!important}
select.form-select{direction:rtl}
.jalali-input{cursor:pointer;background:#fff!important}
.jalali-picker{position:absolute;width:310px;background:#fff;border:1px solid #e4eaf2;border-radius:18px;box-shadow:0 18px 55px rgba(15,23,42,.16);z-index:3000;padding:12px;display:none;direction:rtl}
.jalali-picker.show{display:block}
.jp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.jp-head button{border:0;background:#f3f6fa;width:34px;height:34px;border-radius:10px;font-size:22px;color:#26364a}
.jp-title{font-weight:800;font-size:13px}
.jp-week,.jp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}
.jp-week span{font-size:9px;color:#8995a5;padding:4px 0}
.jp-day{border:0;background:#fff;height:34px;border-radius:9px;font-size:11px;color:#243246}
.jp-day:hover{background:#edf4ff;color:var(--p)}
.jp-day.today{box-shadow:inset 0 0 0 1px #b9d1f6}
.jp-day.selected{background:var(--p);color:#fff;font-weight:800}
.jp-footer{display:flex;justify-content:space-between;margin-top:9px;border-top:1px solid #edf0f4;padding-top:8px}
.jp-footer button{border:0;background:transparent;color:var(--p);font-size:10px;font-weight:700}
.money-input{text-align:left;direction:ltr;font-variant-numeric:tabular-nums}
.required-hint{font-size:9px;color:#d64545;background:#fff1f1;border-radius:20px;padding:5px 9px}
.section-muted,.form-help{display:block;color:#8995a5;font-size:9px;margin-top:3px}
.customer-search-wrap,.item-search-wrap{position:relative}
.customer-search-wrap>i,.item-search-wrap>i{position:absolute;left:13px;top:14px;color:#9aa7b7;z-index:2}
.customer-search-wrap .form-control,.item-search-wrap .form-control{padding-left:38px}
.search-dropdown{position:absolute;top:calc(100% + 6px);right:0;left:0;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 16px 45px rgba(15,23,42,.13);z-index:2500;overflow:hidden;display:none;max-height:300px;overflow-y:auto}
.search-dropdown.show{display:block}
.search-option{width:100%;border:0;background:#fff;display:flex;align-items:center;gap:10px;text-align:right;padding:10px 12px;border-bottom:1px solid #f0f2f5}
.search-option:hover{background:#f7faff}
.search-option b,.search-option small{display:block}.search-option b{font-size:11px}.search-option small{font-size:9px;color:#8c98a8;margin-top:2px}
.option-avatar,.option-product-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#edf4ff;color:var(--p);font-weight:800;flex:none}
.search-no-result{padding:15px;text-align:center;color:#8995a5;font-size:10px}
.selected-customer{margin-top:8px;padding:10px 12px;border:1px solid #cdebdc;background:#f2fbf6;border-radius:12px;display:flex;align-items:center;gap:8px;color:#26764f;font-size:10px}
.selected-customer>i{font-size:17px}.selected-customer span{color:#758196}.selected-customer button{margin-right:auto;border:0;background:transparent;color:#a06d6d}
.sales-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;align-items:start}
.sale-side{min-width:0}.sticky-sale-summary{position:sticky;top:76px}
.sale-summary-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #edf0f4;font-size:10px}
.summary-input{max-width:145px;min-height:38px!important}
.grand-total-box{margin:12px 0;padding:14px;border-radius:14px;background:linear-gradient(135deg,#eef5ff,#f8fbff);border:1px solid #dbe8fb;display:flex;justify-content:space-between;align-items:center}
.grand-total-box span{font-size:10px;color:#617089}.grand-total-box strong{font-size:16px;color:#1769e0}
.sale-submit{min-height:48px}
.add-item-panel{margin-top:16px;padding:13px;border:1px dashed #ccd7e6;border-radius:15px;background:#fbfcfe}
.add-item-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:9px}.add-item-title span{font-size:11px;font-weight:800}.add-item-title small{font-size:8px;color:#9aa6b6}
.add-item-row{display:grid;grid-template-columns:140px minmax(0,1fr) 75px 110px;gap:8px;align-items:center}
.item-type-switch{display:flex;background:#eef2f7;padding:3px;border-radius:11px}.item-type-switch button{flex:1;border:0;background:transparent;border-radius:8px;padding:8px;font-size:10px;color:#748094}.item-type-switch button.active{background:#fff;color:var(--p);box-shadow:0 2px 8px rgba(15,23,42,.08);font-weight:800}
.qty-input{text-align:center}.add-item-btn{min-height:44px}
.selected-item-preview{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:8px 10px;background:#f1f6ff;border-radius:10px;color:#365477;font-size:9px}.selected-item-preview i{color:#159a62}
.invoice-empty{min-height:150px;border:1px dashed #dce4ee;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#9aa6b6;gap:5px}.invoice-empty i{font-size:28px;color:#c5d1df;margin-bottom:2px}.invoice-empty b{font-size:11px;color:#68778a}.invoice-empty span{font-size:9px}
.invoice-items{display:flex;flex-direction:column;gap:8px}
.invoice-line{display:grid;grid-template-columns:32px minmax(160px,1fr) 70px 150px 140px 125px;gap:8px;align-items:center;padding:10px;border:1px solid #e7ebf1;border-radius:13px;background:#fff}
.invoice-line-number{width:28px;height:28px;border-radius:9px;background:#edf4ff;color:var(--p);display:grid;place-items:center;font-size:10px;font-weight:800}
.invoice-line-info>b{display:block;font-size:10px}.invoice-line-info>small{display:block;color:#99a4b2;font-size:8px;margin-bottom:5px}.line-description{min-height:34px!important;font-size:9px!important}
.line-field label,.line-total small{display:block;font-size:8px;color:#8c98a8;margin-bottom:3px}.line-field .form-control{min-height:36px!important;font-size:10px}
.line-total{position:relative;text-align:left;padding-left:27px}.line-total b{font-size:11px;display:block;direction:ltr}.remove-line{position:absolute;left:0;bottom:0;border:0;background:#fff0f0;color:#c65353;width:24px;height:24px;border-radius:7px}
.customer-grid,.vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.customer-card,.vehicle-card{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #e6ebf1;border-radius:17px;padding:14px;box-shadow:0 5px 20px rgba(15,23,42,.045);transition:.18s}
.customer-card:hover,.vehicle-card:hover{transform:translateY(-2px);border-color:#c9dbf5;box-shadow:0 13px 30px rgba(15,23,42,.09)}
.customer-card-head{display:flex;align-items:center;gap:10px}.customer-avatar{width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,#eaf3ff,#d8e8ff);color:#1769e0;display:grid;place-items:center;font-weight:800;font-size:15px}.customer-main{min-width:0;flex:1}.customer-main strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-main span{display:block;font-size:9px;color:#8995a5;direction:ltr;text-align:right;margin-top:2px}.status-pill{font-size:8px;padding:4px 7px;border-radius:20px;background:#edf4ff;color:#1769e0}.status-active{background:#eaf9f1;color:#159a62}.status-inactive{background:#f2f4f7;color:#788494}.status-blocked{background:#fff0f0;color:#c44b4b}
.customer-card-bottom{display:flex;justify-content:space-between;gap:8px;margin-top:14px;padding-top:10px;border-top:1px solid #eff2f5;color:#8995a5;font-size:8px}.customer-card-bottom i{margin-left:4px}.customer-open{color:#1769e0;font-weight:700}
.vehicle-card-top{display:flex;justify-content:space-between}.vehicle-icon{width:42px;height:42px;border-radius:13px;background:#eef5ff;color:#1769e0;display:grid;place-items:center;font-size:17px}.vehicle-arrow{color:#a1adbb}.vehicle-plate{margin-top:12px;font-size:15px;font-weight:900;letter-spacing:.4px}.vehicle-name{font-size:10px;color:#66758a;margin-top:1px}.vehicle-meta{display:flex;justify-content:space-between;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid #eff2f5;color:#8995a5;font-size:8px}.vehicle-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vehicle-meta i{margin-left:4px;color:#1769e0}
.invoice-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px}.invoice-detail-list{display:flex;flex-direction:column}.invoice-detail-row{display:grid;grid-template-columns:minmax(0,1fr) 160px 150px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0f4}.invoice-detail-row b,.invoice-detail-row small{display:block}.invoice-detail-row b{font-size:10px}.invoice-detail-row small{font-size:8px;color:#9aa6b6;margin-top:3px}.invoice-detail-row>span{font-size:9px;color:#778498}.invoice-detail-row>strong{font-size:10px;text-align:left}.summary-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #edf0f4;font-size:10px}.summary-grand{display:flex;justify-content:space-between;padding:12px 0;font-size:11px}.summary-grand strong{color:#1769e0}.summary-row.due{color:#c24b4b}.payment-form .form-control{min-height:44px}
.accounting-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.accounting-kpis .card{display:flex;justify-content:space-between;align-items:center;text-decoration:none}.accounting-kpis span{font-size:10px;color:#778498}.accounting-kpis strong{font-size:13px}.channel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.channel-card{display:flex;gap:10px;align-items:center;border:1px solid #e7ebf1;border-radius:14px;padding:11px}.channel-icon{width:38px;height:38px;border-radius:11px;background:#edf4ff;color:#1769e0;display:grid;place-items:center}.channel-card b,.channel-card strong,.channel-card small{display:block}.channel-card b{font-size:8px;color:#8b97a8}.channel-card strong{font-size:10px}.channel-card small{font-size:8px;color:#98a4b3;margin-top:2px}.channel-add-form{display:grid;grid-template-columns:150px 1fr 1fr 1fr auto;gap:7px}
@media(max-width:1100px){.sales-layout,.invoice-detail-grid{grid-template-columns:1fr}.sticky-sale-summary{position:static}.customer-grid,.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.add-item-row{grid-template-columns:130px minmax(0,1fr) 65px 105px}.channel-grid{grid-template-columns:repeat(2,1fr)}.channel-add-form{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.customer-grid,.vehicle-grid{grid-template-columns:1fr}.invoice-line{grid-template-columns:30px minmax(0,1fr) 70px 90px}.invoice-line-info{grid-column:2/5}.price-field,.discount-field{grid-row:2}.line-total{grid-column:4;grid-row:2}.add-item-row{grid-template-columns:1fr 70px 100px}.item-type-switch{grid-column:1/-1}.channel-grid,.channel-add-form{grid-template-columns:1fr}.invoice-detail-row{grid-template-columns:1fr 110px}.invoice-detail-row>strong{grid-column:2;grid-row:1}.accounting-kpis{grid-template-columns:1fr}.jalali-picker{width:min(310px,calc(100vw - 16px))}}

.payment-history{border-top:1px solid #edf0f4;padding-top:10px}.payment-history-row{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:6px;padding:7px 0;border-bottom:1px solid #f0f2f5;font-size:8px;align-items:center}.payment-history-row b{text-align:center;font-size:9px}.payment-history-row small{text-align:left;color:#778498}

.technician-form{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.5fr auto;gap:9px;align-items:end}.technician-form .form-label{font-size:9px;font-weight:700}.tech-submit{min-height:44px}.tech-note{min-width:0}@media(max-width:1100px){.technician-form{grid-template-columns:repeat(3,1fr)}.tech-note{grid-column:span 2}}@media(max-width:650px){.technician-form{grid-template-columns:1fr}.tech-note{grid-column:auto}}

/* UI refinement / AJAX / Jalali */
body{font-size:14px}.app-content{font-size:14px}.form-control,.form-select{font-size:14px;min-height:46px;border-radius:10px}.btn{font-size:14px;cursor:pointer;user-select:none;-webkit-user-select:none}.btn,.btn *{cursor:pointer;user-select:none;-webkit-user-select:none}.form-select{background-position:left .8rem center;padding-left:2.35rem;padding-right:.9rem}.form-control,.form-select,textarea{border-radius:10px!important}.input-group .form-control{border-radius:0 10px 10px 0!important}.input-group .input-group-text{border-radius:10px 0 0 10px!important}.table{font-size:14px}.table th{font-weight:800}.jalali-input{direction:rtl;text-align:center;cursor:pointer;background:#fff}.jalali-picker{position:absolute;width:330px;background:#fff;border:1px solid #dfe5ee;border-radius:18px;box-shadow:0 18px 50px rgba(15,23,42,.18);z-index:3000;padding:12px;display:none}.jalali-picker.show{display:block}.jp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.jp-head button,.jp-footer button{border:0;background:#f1f5f9;border-radius:9px;min-width:38px;height:36px;cursor:pointer}.jp-title{font-weight:900;font-size:15px}.jp-week,.jp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.jp-week span{font-size:11px;color:#64748b;font-weight:800;padding:4px}.jp-day{height:36px;border:0;background:#fff;border-radius:9px;cursor:pointer;font-weight:600}.jp-day:hover{background:#eaf2ff}.jp-day.selected{background:var(--p);color:#fff}.jp-day.today{outline:2px solid #7aa8ed}.jp-footer{display:flex;justify-content:space-between;margin-top:10px;border-top:1px solid #eef2f7;padding-top:10px}.jp-footer button{padding:0 12px;font-family:inherit}.app-toast{position:fixed;top:18px;left:50%;transform:translate(-50%,-18px);opacity:0;z-index:5000;min-width:280px;max-width:min(92vw,520px);display:flex;align-items:center;gap:10px;padding:13px 15px;border-radius:13px;background:#fff;border:1px solid #dce4ee;box-shadow:0 14px 38px rgba(15,23,42,.18);font-size:14px;font-weight:700;transition:.22s}.app-toast.show{opacity:1;transform:translate(-50%,0)}.app-toast i{font-size:18px}.app-toast button{margin-right:auto;border:0;background:transparent;font-size:20px;color:#64748b;cursor:pointer}.toast-success i{color:#159a62}.toast-error i{color:#d64545}.toast-warning i{color:#d98216}.ajax-loading:after{content:'';position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--p),transparent);z-index:6000;animation:ajaxbar 1s linear infinite}@keyframes ajaxbar{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.customer-grid,.vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}.customer-card,.vehicle-card{border-radius:18px!important;transition:transform .16s,box-shadow .16s}.customer-card:hover,.vehicle-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(15,23,42,.1)}
.appointment-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.appointment-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow);position:relative;overflow:hidden}.appointment-card:before{content:'';position:absolute;inset:0 auto 0 4px;width:4px;background:var(--p);border-radius:4px}.appointment-time{font-size:20px;font-weight:900}.appointment-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin-top:8px}.appointment-status{margin-top:12px}.technician-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:15px}.technician-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px;box-shadow:var(--shadow)}.technician-card-head{display:flex;align-items:center;gap:12px}.technician-avatar{width:48px;height:48px;border-radius:15px;background:#eaf2ff;color:var(--p);display:grid;place-items:center;font-weight:900;font-size:18px}.technician-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px}.technician-stat{background:#f8fafc;border-radius:12px;padding:10px}.technician-stat small{display:block;color:var(--muted)}.technician-stat strong{font-size:15px}
@media(max-width:700px){.jalali-picker{width:min(330px,calc(100vw - 16px));left:8px!important}.customer-grid,.vehicle-grid,.appointment-grid,.technician-grid{grid-template-columns:1fr}.app-toast{top:10px}.table{font-size:13px}}
.search-wrap{position:relative}.table-live-search{position:relative;max-width:420px;margin:0 0 10px}.table-live-search i{position:absolute;right:14px;top:14px;color:#94a3b8}.table-live-search input{width:100%;height:44px;border:1px solid #dce2ea;border-radius:11px;padding:0 40px 0 12px;font-family:inherit;font-size:14px;outline:none}.table-live-search input:focus{border-color:#7aa8ed;box-shadow:0 0 0 .18rem rgba(23,105,224,.1)}.quick-check{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #e4eaf2;border-radius:12px;background:#f8fafc;cursor:pointer}.quick-check input{width:18px;height:18px;cursor:pointer}
\n.pin-modal{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:7000;display:grid;place-items:center;padding:16px}.pin-modal[hidden]{display:none}.pin-modal-card{width:min(420px,100%);background:#fff;border-radius:24px;padding:28px;box-shadow:0 25px 80px rgba(15,23,42,.25);position:relative;text-align:center}.pin-modal-icon,.pin-lock-icon{width:68px;height:68px;border-radius:20px;background:#eaf2ff;color:var(--p);display:grid;place-items:center;margin:0 auto 16px;font-size:28px}.pin-modal-close{position:absolute;left:14px;top:10px;border:0;background:transparent;font-size:28px;cursor:pointer}.pin-input{text-align:center;letter-spacing:10px;font-size:24px;font-weight:900;direction:ltr}.pin-lock-page{min-height:100vh;background:linear-gradient(135deg,#eef5ff,#f8fafc);display:grid;place-items:center;padding:20px}.pin-lock-card{width:min(390px,100%);background:#fff;border:1px solid #e3e9f1;border-radius:26px;padding:32px;box-shadow:0 25px 70px rgba(15,23,42,.14);text-align:center}.pin-lock-card h1{font-size:24px;font-weight:900}.pin-lock-card p{color:#718096;font-size:15px}.pin-error{color:#d64545;min-height:24px;margin-top:8px;font-weight:700}.app-top-actions .app-icon-btn{cursor:pointer}.app-nav a,.app-icon-btn,.btn{cursor:pointer;user-select:none;-webkit-user-select:none}.app-nav a.active{font-weight:900}.category-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#edf4ff;color:var(--p);font-size:12px;font-weight:800}.bulk-price-card{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:18px}.price-preview{font-size:13px;color:#64748b}.report-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.report-choice{display:block;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;text-decoration:none;color:inherit;transition:.15s}.report-choice:hover{transform:translateY(-2px);border-color:#8db3eb;box-shadow:0 12px 30px rgba(15,23,42,.08)}.report-choice i{font-size:22px;color:var(--p);margin-bottom:9px}.report-choice b,.report-choice small{display:block}.report-choice b{font-size:15px}.report-choice small{color:#718096;margin-top:4px;font-size:12px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:16px}.summary-card span{display:block;color:#718096;font-size:12px}.summary-card strong{display:block;font-size:20px;margin-top:8px}@media(max-width:900px){.summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:550px){.summary-grid{grid-template-columns:1fr}}\n
/* readability */
.app-sidebar .app-nav a,.app-nav-label{font-size:14px}.app-sidebar .app-nav-label{font-weight:800}.app-page-title h1{font-size:20px}.app-page-title small{font-size:12px}.form-label{font-size:13px}.table td,.table th{font-size:13px}.card h5,.card h6{font-size:17px}
/* App lock */
.app-lock-screen{position:fixed;inset:0;background:rgba(15,23,42,.72);backdrop-filter:blur(8px);z-index:10000;display:grid;place-items:center;padding:20px}.app-lock-card{width:min(390px,100%);background:#fff;border-radius:24px;padding:30px;box-shadow:0 25px 80px rgba(0,0,0,.3);text-align:center}.app-lock-icon{width:68px;height:68px;border-radius:22px;background:#edf4ff;color:var(--p);display:grid;place-items:center;font-size:28px;margin:0 auto 15px}.app-lock-card h2{font-size:22px;font-weight:900}.app-lock-card p{color:var(--muted);font-size:14px}.app-pin-input{text-align:center;letter-spacing:12px;font-size:26px;font-weight:900;direction:ltr}.app-top-actions .app-icon-btn{cursor:pointer}
/* Slightly larger everyday UI */
body{font-size:15px}.app-content{font-size:15px}.form-control,.form-select{font-size:15px;min-height:48px}.btn{font-size:15px}.table{font-size:14px}

/* Final typography refinement */
body{font-size:15px}.app-content{font-size:15px}.form-control,.form-select{font-size:15px;min-height:48px}.btn{font-size:15px}.table{font-size:14px}.form-label{font-size:14px}

.top-user-menu{display:flex;align-items:center;gap:6px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:3px 5px}.top-user-name{font-size:13px;font-weight:700;padding:0 8px;white-space:nowrap}.logout-top{color:#dc2626!important}@media(max-width:600px){.top-user-name{display:none}}

/* =========================================================
   LAstikYar / Tire-first product skin
   Keeps the existing business modules but makes the daily
   workshop flow the primary experience.
   ========================================================= */
:root{--tire-blue:#1769e0;--tire-dark:#0c1b2e;--tire-bg:#f4f7fb;--tire-line:#e7edf4;--tire-radius:18px;--tire-shadow:0 8px 28px rgba(15,35,60,.06)}
body{background:var(--tire-bg)}
.app-sidebar{background:#fff;color:#59687c;border-left:1px solid #e8edf3;box-shadow:-8px 0 30px rgba(15,35,60,.035)}
.app-brand{border-bottom:1px solid #edf1f5}.app-brand strong{color:var(--tire-dark);font-size:17px}.app-brand small{color:#8793a3}.app-brand-icon{box-shadow:0 8px 20px rgba(23,105,224,.18)}
.app-nav-label{color:#98a4b3!important}.app-nav a{color:#647286}.app-nav a i{color:#8b98a9}.app-nav a:hover{background:#f2f6fb;color:var(--tire-dark)}.app-nav a.active{background:#1769e0;color:#fff}.app-nav a.nav-hot{background:#eef5ff;color:#1769e0;font-weight:900}.app-nav a.nav-hot i{color:#1769e0}.app-nav a.nav-hot.active{background:#1769e0;color:#fff}.app-nav a.nav-hot.active i{color:#fff}
.app-sidebar-footer{border-top:1px solid #edf1f5}.app-user-mini strong{color:#26364b}.app-user-mini small{color:#8b97a7}.app-main{background:var(--tire-bg)}.app-topbar{background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid #e8edf3}.app-page-title h1{font-size:18px;color:var(--tire-dark)}.app-page-title small{color:#8b98a9}.app-content{max-width:1480px;padding:20px 24px 38px}
.tire-dashboard,.seller-workspace{max-width:1280px;margin:0 auto}.tire-hero,.seller-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 26px;border-radius:24px;background:linear-gradient(135deg,#0b1a2c,#153a68);color:#fff;box-shadow:0 15px 45px rgba(11,27,44,.14);margin-bottom:14px;position:relative;overflow:hidden}.tire-hero:after,.seller-welcome:after{content:'';position:absolute;width:310px;height:310px;border:1px solid rgba(255,255,255,.08);border-radius:50%;left:-130px;bottom:-210px}.tire-hero-copy,.seller-welcome>div{position:relative;z-index:1}.eyebrow{display:inline-flex;align-items:center;gap:7px;color:#8dbbff;font-size:11px;font-weight:800;margin-bottom:5px}.tire-hero h2,.seller-welcome h2{font-size:25px;font-weight:900;margin:0}.tire-hero p,.seller-welcome p{margin:3px 0 0;color:#c1d0e3;font-size:12px}.tire-hero-actions{display:flex;gap:8px;position:relative;z-index:1}.tire-btn-primary{background:#1769e0;border:0;color:#fff!important;border-radius:12px;padding:10px 16px;font-weight:900;box-shadow:0 8px 20px rgba(23,105,224,.2)}.tire-btn-primary:hover{background:#1257bd}.tire-btn-light{background:#fff;border:0;color:#12304f;border-radius:12px;padding:10px 16px;font-weight:800}
.tire-service-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:14px}.tire-service-card{background:#fff;border:1px solid var(--tire-line);border-radius:17px;padding:12px;display:flex;align-items:center;gap:9px;text-decoration:none;color:#23364e;box-shadow:0 3px 15px rgba(15,35,60,.03);transition:.16s}.tire-service-card:hover{transform:translateY(-2px);border-color:#cfe0f7}.tire-service-card b{display:block;font-size:12px}.tire-service-card small{display:block;color:#8b98a9;font-size:9px}.tire-service-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:none;font-size:16px}.tire-service-icon.green{background:#e9f8f0;color:#159a62}.tire-service-icon.orange{background:#fff4df;color:#d98216}.tire-service-icon.blue{background:#eaf2ff;color:#1769e0}.tire-service-icon.purple{background:#f0eaff;color:#7146c7}.tire-service-icon.red{background:#fff0f0;color:#d64545}
.tire-stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:14px}.tire-stat{display:flex;align-items:center;gap:10px;padding:13px;background:#fff;border:1px solid var(--tire-line);border-radius:17px;text-decoration:none;color:#23364e;box-shadow:0 3px 15px rgba(15,35,60,.025)}.tire-stat>span{width:38px;height:38px;border-radius:12px;background:#edf4ff;color:#1769e0;display:grid;place-items:center}.tire-stat.primary{border-color:#bcd6fa;background:#f8fbff}.tire-stat small,.tire-stat em{display:block;color:#8794a5;font-size:9px;font-style:normal}.tire-stat strong{display:block;font-size:17px;font-weight:900;line-height:1.45;color:#152b45}.tire-stat.money strong{font-size:13px}.tire-stat.money em{color:#159a62}
.tire-dashboard-columns,.seller-columns{display:grid;grid-template-columns:1.55fr 1fr;gap:14px;margin-bottom:14px}.tire-dashboard-columns.lower{grid-template-columns:1.45fr .9fr}.tire-panel{background:#fff;border:1px solid var(--tire-line);border-radius:20px;box-shadow:var(--tire-shadow);padding:16px}.tire-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.tire-panel-head h3{margin:0;font-size:15px;font-weight:900;color:#172d47}.tire-panel-head p{margin:2px 0 0;color:#8a96a6;font-size:9px}.tire-panel-head a{color:#1769e0;text-decoration:none;font-size:10px;font-weight:800}.tire-head-icon{width:35px;height:35px;border-radius:11px;background:#edf4ff;color:#1769e0;display:grid;place-items:center}.tire-visit-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #eef2f6}.tire-visit-row:last-child{border-bottom:0}.tire-visit-icon{width:36px;height:36px;border-radius:11px;background:#edf4ff;color:#1769e0;display:grid;place-items:center;flex:none}.tire-visit-main{min-width:0;flex:1}.tire-visit-main b,.tire-visit-service b{display:block;font-size:11px;color:#263b55}.tire-visit-main span,.tire-visit-service small{display:block;color:#8a97a8;font-size:9px}.tire-visit-service{min-width:90px}.tire-visit-price{font-size:10px;white-space:nowrap;color:#159a62}.tire-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#8996a7;gap:5px}.tire-empty i{font-size:31px;color:#c3ceda}.tire-empty b{font-size:13px;color:#526276}.tire-empty span{font-size:10px}.tire-empty .btn{margin-top:8px}.tire-empty.compact{min-height:130px}.tire-task-list>a{display:flex;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid #eef2f6;text-decoration:none;color:#53647a}.tire-task-list>a:last-child{border-bottom:0}.tire-task-list>a>i:first-child{width:32px;height:32px;border-radius:10px;background:#f1f5f9;display:grid;place-items:center;color:#1769e0}.tire-task-list>a span{flex:1;font-size:10px}.tire-task-list>a b{color:#172d47;font-size:12px}.tire-task-list>a>i:last-child{color:#a0abba}.tire-finance-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px;padding-top:12px;border-top:1px solid #edf1f5}.tire-finance-mini div{background:#f8fafc;border-radius:11px;padding:8px}.tire-finance-mini small,.tire-finance-mini b{display:block}.tire-finance-mini small{font-size:8px;color:#8c98a7}.tire-finance-mini b{font-size:10px;margin-top:3px;color:#23364e}.tire-management-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tire-management-grid a{border:1px solid #edf1f5;border-radius:13px;padding:11px;text-decoration:none;color:#263a52;background:#fbfcfe}.tire-management-grid a i{color:#1769e0;font-size:15px;display:block;margin-bottom:7px}.tire-management-grid a b{font-size:10px;display:block}.tire-management-grid a small{font-size:8px;color:#8b97a6;display:block}.tire-product-row{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #eef2f6}.tire-product-row:last-child{border-bottom:0}.tire-product-wheel{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#edf4ff;color:#1769e0}.tire-product-row div{flex:1}.tire-product-row b,.tire-product-row small{display:block}.tire-product-row b{font-size:10px}.tire-product-row small{font-size:8px;color:#8b97a6}.tire-product-row>i{color:#b0bac6}
/* seller */.seller-welcome{margin-bottom:12px}.seller-main-action{position:relative;z-index:2}.seller-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.seller-action{background:#fff;border:1px solid var(--tire-line);border-radius:17px;padding:14px;text-decoration:none;color:#263a52}.seller-action i{width:38px;height:38px;border-radius:12px;background:#edf4ff;color:#1769e0;display:grid;place-items:center;margin-bottom:9px}.seller-action b,.seller-action small{display:block}.seller-action b{font-size:12px}.seller-action small{font-size:9px;color:#8996a7}.seller-action.hot{background:#f8fbff;border-color:#bfd8fa}.seller-action.hot i{background:#1769e0;color:#fff}.seller-mini-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.seller-mini-stats>div{background:#fff;border:1px solid var(--tire-line);border-radius:15px;padding:10px 12px;display:grid;grid-template-columns:30px 1fr;column-gap:8px}.seller-mini-stats i{grid-row:span 2;width:30px;height:30px;border-radius:9px;background:#edf4ff;color:#1769e0;display:grid;place-items:center}.seller-mini-stats span{font-size:9px;color:#8996a7}.seller-mini-stats b{font-size:15px}.status-pill{font-size:8px;padding:4px 7px;border-radius:999px;background:#fff4df;color:#b36c0d}.status-pill.done{background:#e8f8ef;color:#168050}.seller-appointment{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #eef2f6}.seller-appointment:last-child{border-bottom:0}.seller-appointment>b{font-size:15px;color:#1769e0;min-width:42px}.seller-appointment strong,.seller-appointment small{display:block}.seller-appointment strong{font-size:10px}.seller-appointment small{font-size:8px;color:#8a97a8}
/* reception */.quick-reception-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.quick-reception-head h2{margin:0;font-size:21px;font-weight:900}.quick-reception-head p{margin:2px 0 0;color:#8996a7;font-size:10px}.reception-progress{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--tire-line);border-radius:15px;padding:10px 14px;margin-bottom:12px}.reception-progress span{display:flex;align-items:center;gap:6px;color:#8996a7;font-size:10px;font-weight:700}.reception-progress span.active{color:#1769e0}.reception-progress b,.step-badge{width:24px;height:24px;border-radius:8px;background:#edf4ff;color:#1769e0;display:grid;place-items:center}.reception-progress i{height:1px;background:#e4eaf1;flex:1}.reception-layout{display:grid;grid-template-columns:1.45fr .72fr;gap:14px}.reception-main{padding:0}.reception-section{padding:16px;border-bottom:1px solid #eef2f6}.reception-section.last{border-bottom:0}.reception-section .tire-panel-head{margin-bottom:10px}.service-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.service-choice{border:1px solid #e2e8f0;background:#fff;border-radius:14px;padding:10px;text-align:right;cursor:pointer;font-family:inherit;transition:.15s}.service-choice:hover,.service-choice.selected{border-color:#77a9e8;background:#f6faff;box-shadow:0 4px 14px rgba(23,105,224,.07)}.service-choice-icon{width:34px;height:34px;border-radius:10px;background:#edf4ff;color:#1769e0;display:grid;place-items:center;margin-bottom:7px}.service-choice strong,.service-choice small{display:block}.service-choice strong{font-size:10px}.service-choice small{font-size:8px;color:#8996a7;margin-top:2px}.reception-search{position:relative}.reception-search>i{position:absolute;right:14px;top:14px;color:#9aa6b5;z-index:2}.reception-search .form-control{padding-right:38px}.new-customer-link{display:inline-block;margin-top:7px;font-size:9px;color:#1769e0;text-decoration:none}.reception-side{min-width:0}.sticky-reception{position:sticky;top:82px;text-align:center}.reception-summary-icon{width:58px;height:58px;border-radius:18px;background:#edf4ff;color:#1769e0;display:grid;place-items:center;font-size:24px;margin:0 auto 8px}.sticky-reception h3{font-size:16px;margin:0 0 14px}.summary-line{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #eef2f6;text-align:right}.summary-line span{font-size:9px;color:#8996a7}.summary-line b{font-size:9px;color:#263a52}.summary-total{padding:12px;background:#f7faff;border-radius:13px;margin:12px 0}.summary-total small,.summary-total strong{display:block}.summary-total small{font-size:9px;color:#8996a7}.summary-total strong{font-size:17px;color:#1769e0}.reception-note{font-size:8px;color:#8c98a7;line-height:1.8;margin:10px 0 0}.queue-mini{margin-top:12px}.queue-mini-row{display:grid;grid-template-columns:42px 1fr;gap:2px 8px;padding:8px 0;border-bottom:1px solid #eef2f6}.queue-mini-row span{grid-row:span 2;font-size:9px;color:#1769e0}.queue-mini-row b{font-size:9px}.queue-mini-row small{font-size:8px;color:#8996a7}
.mobile-bottom-nav{display:none}
@media(max-width:1100px){.tire-stats-grid{grid-template-columns:repeat(3,1fr)}.tire-service-strip{grid-template-columns:repeat(3,1fr)}.tire-service-card:nth-child(n+4){display:none}.reception-layout{grid-template-columns:1fr}.sticky-reception{position:relative;top:auto}.reception-side{display:grid;grid-template-columns:1fr 1fr;gap:10px}.queue-mini{margin-top:0}.tire-dashboard-columns,.seller-columns{grid-template-columns:1fr}.tire-dashboard-columns.lower{grid-template-columns:1fr}.seller-mini-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.app-content{padding:12px 10px 82px}.app-sidebar{width:286px}.tire-hero,.seller-welcome{padding:18px;display:block}.tire-hero h2,.seller-welcome h2{font-size:21px}.tire-hero-actions{margin-top:12px}.tire-hero-actions .btn{flex:1;text-align:center}.tire-service-strip{grid-template-columns:repeat(2,1fr)}.tire-service-card{padding:10px}.tire-service-card:nth-child(n+5){display:none}.tire-stats-grid{grid-template-columns:repeat(2,1fr)}.tire-stat{padding:10px}.tire-stat strong{font-size:15px}.tire-management-grid{grid-template-columns:repeat(2,1fr)}.seller-quick-grid{grid-template-columns:repeat(2,1fr)}.seller-welcome .seller-main-action{display:block;text-align:center;margin-top:12px}.seller-mini-stats{grid-template-columns:repeat(2,1fr)}.reception-progress span{font-size:8px}.service-choice-grid{grid-template-columns:repeat(2,1fr)}.quick-reception-head{display:block}.quick-reception-head .btn{margin-top:8px}.reception-side{display:block}.queue-mini{display:none}.mobile-bottom-nav{position:fixed;display:flex;right:8px;left:8px;bottom:8px;height:62px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border:1px solid #dfe7f0;border-radius:18px;z-index:1100;box-shadow:0 12px 40px rgba(15,35,60,.15);justify-content:space-around;align-items:center}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:#8290a2;font-size:8px;font-weight:800;min-width:60px}.mobile-bottom-nav a i{font-size:16px}.mobile-bottom-nav a.active{color:#1769e0}.mobile-bottom-nav .mobile-bottom-main{width:54px;height:54px;border-radius:17px;background:#1769e0;color:#fff;transform:translateY(-12px);box-shadow:0 8px 20px rgba(23,105,224,.28)}.mobile-bottom-nav .mobile-bottom-main i{font-size:20px}.mobile-bottom-nav .mobile-bottom-main span{font-size:7px}}
/* ===== Tire-first reception workflow v3 ===== */
.reception-app{max-width:1500px;margin:0 auto}.reception-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;background:linear-gradient(135deg,#08192c,#123b6c);color:#fff;border-radius:22px;box-shadow:0 16px 42px rgba(9,29,52,.15);margin-bottom:12px;position:relative;overflow:hidden}.reception-hero:after{content:'';position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.08);border-radius:50%;left:-160px;bottom:-250px}.reception-hero h2{font-size:25px;font-weight:900;margin:0}.reception-hero p{margin:4px 0 0;color:#c7d6e8;font-size:11px}.reception-hero>div{position:relative;z-index:1}.reception-hero-actions{display:flex;gap:8px}.reception-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:14px}.reception-card{margin-bottom:14px}.customer-vehicle-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reception-search label,.modal-section>label,.tire-modal label{display:block;font-size:10px;font-weight:800;color:#51647b;margin-bottom:6px}.reception-search{position:relative}.reception-search>i,.product-search>i{position:absolute;right:13px;top:37px;color:#94a0ae;z-index:2}.reception-search .form-control,.product-search .form-control{padding-right:36px}.selected-chip{margin-top:7px;padding:7px 10px;border-radius:10px;background:#eef7f1;color:#187a4d;font-size:9px;font-weight:800}.vehicle-work-card{overflow:hidden}.vehicle-diagram-wrap{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center}.vehicle-diagram{height:320px;position:relative;display:flex;align-items:center;justify-content:center}.vehicle-diagram.large{height:360px}.car-body{width:145px;height:265px;border-radius:54px 54px 42px 42px;background:linear-gradient(180deg,#eef3f8,#d7e0ea);border:5px solid #b8c5d2;position:relative;box-shadow:inset 0 0 0 8px #f8fafc,0 16px 30px rgba(20,45,70,.12)}.car-cabin{position:absolute;top:55px;left:18px;right:18px;height:105px;border-radius:30px;background:linear-gradient(180deg,#b9d4e8,#e8f1f7);border:3px solid #a9bbc9}.car-glass.front,.car-glass.rear{position:absolute;left:27px;right:27px;height:28px;background:#8db5d0;border-radius:14px;opacity:.6}.car-glass.front{top:30px}.car-glass.rear{bottom:28px}.car-label{position:absolute;bottom:82px;left:0;right:0;text-align:center;font-size:10px;font-weight:900;color:#64768b}.tire-node{position:absolute;width:74px;height:56px;border:0;border-radius:15px;background:#101b27;color:#fff;box-shadow:0 8px 20px rgba(15,30,48,.18);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:.15s;font-family:inherit}.tire-node i{font-size:20px;color:#78adf2}.tire-node span{font-size:8px}.tire-node:hover,.tire-node.has-tire{transform:scale(1.05);background:#1769e0}.front-right{right:calc(50% + 85px);top:74px}.front-left{left:calc(50% + 85px);top:74px}.rear-right{right:calc(50% + 85px);bottom:74px}.rear-left{left:calc(50% + 85px);bottom:74px}.vehicle-side-info{background:#f8fafc;border:1px solid #e5ebf2;border-radius:18px;padding:14px}.info-title{font-size:12px;font-weight:900;color:#20354e;margin-bottom:10px}.visit-lines{max-height:260px;overflow:auto}.visit-empty{text-align:center;padding:38px 8px;color:#9aa6b5;font-size:10px}.visit-line{display:flex;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid #e9eef3}.visit-line-icon{width:31px;height:31px;border-radius:10px;background:#edf4ff;color:#1769e0;display:grid;place-items:center}.visit-line-main{flex:1;min-width:0}.visit-line-main b,.visit-line-main small{display:block}.visit-line-main b{font-size:9px;color:#263c56}.visit-line-main small{font-size:8px;color:#8b98a7;margin-top:2px}.visit-line>strong{font-size:9px;color:#159a62;white-space:nowrap}.visit-line>button{border:0;background:none;color:#a1acb8;font-size:18px}.visit-total{display:flex;justify-content:space-between;padding-top:12px;margin-top:5px}.visit-total span{font-size:9px;color:#8b98a7}.visit-total b{font-size:13px;color:#1769e0}.reception-summary-card{text-align:right}.summary-caption{font-size:8px;color:#8b98a7}.reception-summary-card h3{font-size:15px;margin:2px 0}.reception-summary-card>#summary-vehicle{font-size:9px;color:#65758a}.summary-divider{height:1px;background:#edf1f5;margin:12px 0}.summary-line{padding:8px 0}.reception-services{grid-template-columns:repeat(5,1fr)}.modal-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.modal-service{border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:9px 5px;font-family:inherit;cursor:pointer;color:#334861}.modal-service i{display:block;font-size:15px;color:#1769e0;margin-bottom:4px}.modal-service span{font-size:8px}.modal-service.selected{border-color:#1769e0;background:#eef5ff;box-shadow:0 0 0 2px rgba(23,105,224,.08)}.tire-modal{border:0;border-radius:20px;overflow:hidden;box-shadow:0 22px 70px rgba(12,30,50,.25)}.tire-modal .modal-header{border-bottom:1px solid #edf1f5;padding:16px 18px}.tire-modal .modal-body{padding:18px}.tire-modal .modal-footer{border-top:1px solid #edf1f5}.modal-eyebrow{display:block;font-size:8px;color:#1769e0;font-weight:900}.tire-modal h5{font-size:17px;font-weight:900;margin:2px 0}.modal-section{margin-bottom:16px}.selected-product{margin-top:7px;background:#edf8f2;color:#14794d;border-radius:10px;padding:8px;font-size:9px;font-weight:800}.vehicle-profile-page{max-width:1450px;margin:0 auto}.vehicle-profile-hero{display:flex;justify-content:space-between;align-items:center;padding:22px;background:linear-gradient(135deg,#08192c,#123b6c);color:#fff;border-radius:22px;margin-bottom:14px}.vehicle-profile-hero h2{margin:0;font-size:24px;font-weight:900}.vehicle-profile-hero p{margin:6px 0 0;color:#c5d3e4;font-size:10px}.plate-badge{display:inline-block;margin-top:8px;background:#fff;color:#162d48;border-radius:8px;padding:5px 11px;font-weight:900;font-size:12px;letter-spacing:1px}.vehicle-profile-grid{display:grid;grid-template-columns:1.5fr .8fr;gap:14px}.vehicle-inspection{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:14px}.tire-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tire-detail-card{border:1px solid #e7edf3;border-radius:13px;padding:9px}.tire-detail-card span,.tire-detail-card b,.tire-detail-card small,.tire-detail-card em{display:block}.tire-detail-card span{font-size:8px;color:#8a98a8}.tire-detail-card b{font-size:9px;margin-top:4px;color:#293e56}.tire-detail-card small,.tire-detail-card em{font-size:7px;color:#8996a6;margin-top:2px}.tire-detail-card em{font-style:normal;color:#1769e0}.tire-detail-card .muted{color:#a0aab5}.vehicle-visit{display:flex;align-items:center;gap:9px;border-bottom:1px solid #edf1f5;padding:10px 0}.vehicle-visit-date{font-size:8px;color:#1769e0;min-width:55px}.vehicle-visit>div:nth-child(2){flex:1}.vehicle-visit b,.vehicle-visit small{display:block}.vehicle-visit b{font-size:10px}.vehicle-visit small{font-size:8px;color:#8996a6;margin-top:2px}.vehicle-visit a{width:30px;height:30px;border-radius:9px;background:#edf4ff;color:#1769e0;display:grid;place-items:center}.history-table-wrap{overflow:auto}.history-table-wrap table{font-size:9px}.history-table-wrap th{font-size:8px;color:#8a97a7;white-space:nowrap}.history-type{display:inline-block;border-radius:8px;padding:4px 7px;font-size:7px}.history-type.service{background:#edf4ff;color:#1769e0}.history-type.tire{background:#eef8f2;color:#16804e}.modal-tire-current{background:#f6f9fc;border-radius:14px;padding:13px}.modal-tire-current b,.modal-tire-current span,.modal-tire-current small{display:block}.modal-tire-current b{font-size:12px}.modal-tire-current span,.modal-tire-current small{font-size:8px;color:#7f8da0;margin-top:4px}.history-modal-row{display:grid;grid-template-columns:70px 1fr;gap:3px;padding:8px 0;border-bottom:1px solid #edf1f5}.history-modal-row b{font-size:8px;color:#1769e0}.history-modal-row span,.history-modal-row small{font-size:8px}.history-modal-row small{grid-column:2;color:#8996a6}
@media(max-width:1100px){.reception-workspace,.vehicle-profile-grid{grid-template-columns:1fr}.vehicle-side-info{margin-top:8px}.reception-services{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.reception-hero{display:block;padding:17px}.reception-hero h2{font-size:20px}.reception-hero-actions{margin-top:12px}.reception-hero-actions .btn{flex:1}.customer-vehicle-grid,.vehicle-diagram-wrap,.vehicle-inspection{grid-template-columns:1fr}.vehicle-diagram{height:310px}.front-right,.rear-right{right:calc(50% + 70px)}.front-left,.rear-left{left:calc(50% + 70px)}.reception-services{grid-template-columns:repeat(2,1fr)}.modal-service-grid{grid-template-columns:repeat(3,1fr)}.vehicle-profile-hero{display:block}.vehicle-profile-hero .btn{margin-top:12px}.tire-detail-grid{grid-template-columns:1fr 1fr}}

/* ===== Standard responsive profiles: Management = desktop, Seller = tablet ===== */
.layout-admin .app-content{max-width:1600px}
.layout-admin .app-sidebar{width:248px}
.layout-admin .app-main{margin-right:248px}
.layout-admin .app-content{padding-left:26px;padding-right:26px}
.layout-admin .app-topbar{min-height:68px}
.layout-admin .page-head h2{font-size:20px}
.layout-admin .card,.layout-admin .section-card{border-radius:16px}

/* Seller is designed first for 8–11 inch tablets: large touch targets, compact navigation, no desktop sidebar. */
@media (max-width:1199px){
  .layout-seller .app-sidebar{transform:translateX(105%);box-shadow:-20px 0 45px rgba(0,0,0,.22);width:286px}
  .layout-seller .app-sidebar.open{transform:translateX(0)}
  .layout-seller .app-main{margin-right:0}
  .layout-seller .app-mobile-menu{display:grid}
  .layout-seller .app-content{max-width:1100px;padding:18px 20px 82px}
  .layout-seller .app-topbar{height:68px;padding:0 18px}
  .layout-seller .app-page-title h1{font-size:18px}
  .layout-seller .app-page-title small{font-size:10px}
  .layout-seller .btn{min-height:46px;padding:.65rem 1rem}
  .layout-seller .form-control,.layout-seller .form-select{min-height:48px;font-size:14px}
  .layout-seller .tire-service-card,.layout-seller .seller-quick-card,.layout-seller .tire-stat{min-height:92px}
  .layout-seller .reception-workspace{grid-template-columns:minmax(0,1.6fr) minmax(290px,.65fr)}
  .layout-seller .reception-services{grid-template-columns:repeat(4,1fr)}
  .layout-seller .vehicle-diagram{height:360px}
  .layout-seller .tire-node{width:88px;height:64px}
  .layout-seller .mobile-bottom-nav{display:flex}
}

@media (min-width:768px) and (max-width:1199px){
  .layout-seller .app-content{padding-left:24px;padding-right:24px}
  .layout-seller .tire-dashboard-columns,.layout-seller .seller-columns{grid-template-columns:1.35fr .9fr}
  .layout-seller .tire-stats-grid{grid-template-columns:repeat(3,1fr)}
  .layout-seller .tire-service-strip{grid-template-columns:repeat(4,1fr)}
  .layout-seller .seller-quick-grid{grid-template-columns:repeat(4,1fr)}
  .layout-seller .customer-vehicle-grid{grid-template-columns:1fr 1fr}
  .layout-seller .vehicle-diagram-wrap,.layout-seller .vehicle-inspection{grid-template-columns:1.1fr .9fr}
  .layout-seller .modal-service-grid{grid-template-columns:repeat(4,1fr)}
  .layout-seller .mobile-bottom-nav{right:22px;left:22px;bottom:14px;height:66px;border-radius:20px}
  .layout-seller .mobile-bottom-nav a{font-size:10px;min-width:82px}
  .layout-seller .mobile-bottom-nav a i{font-size:18px}
}

@media (max-width:767px){
  .layout-admin .app-main{margin-right:0}
  .layout-admin .app-sidebar{width:286px}
  .layout-admin .app-content{padding-left:10px;padding-right:10px}
}

/* Permission editor */
.permission-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px;border:1px solid #dce7f4;background:#f8fbff;border-radius:16px}
.permission-toolbar h5{font-weight:900;color:#20344d}
.permission-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.permission-toolbar + .d-flex{padding-bottom:2px}
.perm-select{font-weight:800}
@media(max-width:700px){.permission-toolbar{display:block}.permission-actions{margin-top:12px;justify-content:flex-start}.permission-actions .btn{flex:1;min-width:120px}}
/* Permission editor V6 */
.permission-editor{border:1px solid #e7ebf0;border-radius:14px;overflow:hidden;background:#fff}.permission-row{display:grid;grid-template-columns:1fr 150px;gap:16px;align-items:center;padding:14px 16px;border-bottom:1px solid #edf0f3;text-decoration:none;color:inherit}.permission-row:last-child{border-bottom:0}.permission-row-head{background:#f6f8fa;color:#657080;font-size:.85rem}.permission-row span:first-child{display:flex;flex-direction:column;gap:3px}.permission-row small{color:#98a2ad;font-size:.72rem}.permission-group-title{padding:11px 16px;background:#eef5fb;font-weight:800;color:#244d70;border-top:1px solid #dfe9f1}.access-toggle{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:8px!important;cursor:pointer}.access-toggle input{position:absolute;opacity:0;pointer-events:none}.access-toggle i{width:44px;height:24px;border-radius:20px;background:#cbd2d9;position:relative;transition:.18s}.access-toggle i:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:3px;right:3px;transition:.18s;box-shadow:0 1px 3px #999}.access-toggle input:checked+i{background:#198754}.access-toggle input:checked+i:after{right:23px}.access-toggle b{font-size:.78rem;color:#6c757d}.access-toggle input:checked~b{color:#198754}.sticky-save{position:sticky;bottom:10px;display:flex;justify-content:flex-start;padding-top:14px;background:linear-gradient(transparent,#fff 25%)}
.permission-quick-access{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.permission-quick-card{border:1px solid #e5e9ee;border-radius:12px;padding:13px 15px;display:flex;align-items:center;justify-content:space-between;background:#fafbfc}.permission-quick-card strong{display:block}.permission-quick-card small{color:#7b8490}.perm-select-new{min-width:150px}@media(max-width:700px){.permission-row{grid-template-columns:1fr 110px;padding:12px}.permission-quick-access{grid-template-columns:1fr}}
