/* Перенесено из customer/prototype/r-pharm.css (v40): экраны расширения Р-Фарм. Цвета — токены из tokens.css, .rpharm-logo → .brand-logo. */
:root{}
body{background:var(--gray-50)}
.brand{gap:10px}
.brand-logo{display:block;width:154px;height:auto;max-height:62px;object-fit:contain}
.brand-logo.compact{width:122px;max-height:50px}
.brand-sub{border-left:1px solid var(--gray-200);padding-left:10px;color:var(--gray-500);font-size:11px}
.driver-invite .brand-logo{background:var(--surface);border-radius:5px;padding:4px;width:170px}
.topbar{border-bottom-color:var(--gray-200)}
.nav-button.active,.mobile-nav :is(a,button).active{background:var(--brand-light);color:var(--brand-dark)}
.welcome-main{background:linear-gradient(140deg,var(--brand-hero-from),var(--brand-hero-to))}
.driver-invite{background:linear-gradient(135deg,var(--brand-hero-from),var(--brand-hero-to))}
.trip-hero{background:var(--brand-dark)}
.corporate-heading{margin-top:24px}
.corporate-heading .section-title{font-size:18px}
.corporate-heading small{display:block;margin-top:5px}
.corporate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}
.corporate-card{min-height:252px}
.corporate-field{padding:13px 0;border-bottom:1px solid var(--gray-100)}
.corporate-field:first-of-type{padding-top:2px}
.corporate-field:last-child,.corporate-field.corporate-last{border-bottom:0}
.corporate-field .detail-value{font-size:14px;line-height:1.4}
.corporate-field .detail-note{font-size:11px}
.corporate-field>small{display:block;margin-top:2px}
.sensitive-value{font-variant-numeric:tabular-nums;letter-spacing:.03em}
.reveal-button{margin-top:5px;padding:5px 0}
.assignment-card{margin-bottom:20px}
.assignment-actions{margin-top:14px}
.assignment-summary{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.assignment-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.assignment-manage-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid var(--gray-100)}
.assignment-manage-row:first-of-type{border-top:0}
.assignment-manage-row strong,.assignment-manage-row small{display:block}
.assignment-manage-row small{margin-top:4px;color:var(--muted);font-size:11px}
.ownership-card{margin-bottom:20px}
.lease-grid{margin-top:18px;padding-top:16px;border-top:1px solid var(--gray-100)}
.lease-fields{display:grid;gap:14px;margin-top:8px;padding:16px;background:var(--brand-surface);border:1px solid var(--brand-light);border-radius:12px}
.lease-fields[hidden]{display:none}
.fleet-controls{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin:12px 0 18px}
.fleet-controls .search{flex:1 1 235px;min-width:180px}
.fleet-select{display:grid;gap:5px;min-width:145px;color:var(--gray-700);font-size:11px;font-weight:700}
.fleet-select select{height:40px;min-width:145px;padding:0 11px;border:1px solid var(--gray-200);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px}
.fleet-status{margin-bottom:8px}
.fleet-car-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fleet-vip-badge{display:inline-flex;align-items:center;border-radius:6px;background:var(--vip-light);color:var(--vip-text);padding:4px 7px;font-size:11px;font-weight:800;letter-spacing:.03em;white-space:nowrap}
.data-table tr.fleet-vip-row td{background:var(--vip-surface)}
.data-table tr.fleet-vip-row td:first-child{box-shadow:inset 3px 0 var(--vip)}
.data-table tr.clickable.fleet-vip-row:hover td{background:var(--warning-light)}
.seg.pool{background:var(--success-bar)}.seg.assigned{background:var(--info-bar)}.seg.vip{background:var(--warning-bar)}
.current-assignment{display:flex;align-items:center;gap:12px;background:var(--brand-surface);padding:16px;border:1px solid var(--brand-light);border-radius:12px}
.current-assignment .avatar{background:var(--brand-light);color:var(--brand-dark);flex:none}
.current-assignment strong{display:block;font-size:13px}
.current-assignment small{display:block;margin-top:4px;color:var(--gray-600);font-size:11px}
.assignment-history{margin-top:22px}
.assignment-history h3{font-size:12px;margin:0 0 10px;color:var(--gray-700);text-transform:uppercase;letter-spacing:.08em}
.assignment-row{display:flex;align-items:center;gap:11px;padding:11px 0;border-top:1px solid var(--gray-100)}
.assignment-row .assignment-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--gray-300)}
.assignment-row .assignment-dot.active{background:var(--brand-hero-from)}
.assignment-row div{flex:1;min-width:0}
.assignment-row strong{display:block;font-size:12px}
.assignment-row small{display:block;color:var(--gray-500);font-size:11px;margin-top:3px}
.form-divider{height:1px;background:var(--gray-150);margin:25px 0}
.form-current{min-height:41px;border:1px solid var(--gray-200);background:var(--gray-50);border-radius:10px;padding:11px 12px;color:var(--gray-800);font-size:12px}
.driver-history-title{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-700);margin:20px 0 8px}
.driver-history-row{display:flex;align-items:center;gap:12px;border-top:1px solid var(--gray-100);padding:12px 0}
.driver-history-row>div{flex:1;min-width:0}
.driver-history-row strong,.driver-doc-row strong{display:block;font-size:12px;overflow-wrap:anywhere}
.driver-history-row small,.driver-doc-row small{display:block;color:var(--gray-500);font-size:11px;margin-top:4px;line-height:1.45}
.driver-history-row .badge{white-space:nowrap}
.driver-docs{margin-top:18px}
.driver-doc-row{display:flex;align-items:center;gap:9px;padding:12px 0;border-top:1px solid var(--gray-100);min-width:0}
.driver-doc-row .icon{flex:none;color:var(--brand)}
.driver-doc-row .text-button{flex:none;font-size:11px}
.driver-doc-upload{margin-top:15px}
.workflow-card{margin-top:18px}.workflow-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workflow-link{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:1px solid var(--gray-200);border-radius:11px;background:var(--gray-50);color:var(--brand-text);padding:13px 15px;font-weight:700;font-size:12px}.workflow-link:hover{background:var(--brand-light)}.workflow-note{margin-top:14px}.workflow-break{overflow-wrap:anywhere}.driver-details-button{font-size:11px;flex:none}.driver-car-head{flex-wrap:wrap}.driver-car-head .grow{min-width:100px}.print-document{line-height:1.55;color:var(--ink)}.print-document h1{font-size:21px;margin:8px 0 20px}.print-document table{width:100%;border-collapse:collapse;font-size:12px}.print-document th,.print-document td{border:1px solid var(--gray-150);padding:11px;text-align:left;vertical-align:top}.print-document th{width:35%;background:var(--gray-50);color:var(--gray-800)}.print-brand{color:var(--brand-hero-from);font-size:19px;font-weight:800}.print-signatures{display:flex;justify-content:space-between;gap:20px;margin-top:55px;font-size:12px}.print-note{margin-top:30px;color:var(--gray-500);font-size:11px}
.dashboard-waybills{margin-bottom:20px}.dashboard-waybills .card-head{margin-bottom:10px}.dashboard-card-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.dashboard-waybill-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-waybill-list .doc-row{min-width:0;border:1px solid var(--line);border-radius:11px;padding:12px}.dashboard-waybill-list .doc-row strong,.dashboard-waybill-list .doc-row small{overflow-wrap:anywhere}.dashboard-waybill-list .badge{align-self:flex-start}.dashboard-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px;align-items:start}.dashboard-columns>.card{min-width:0}.dashboard-returns .card-head{margin-bottom:4px}.dashboard-return{padding:14px 0;border-bottom:1px solid var(--line)}.dashboard-return-main{display:flex;gap:10px;align-items:flex-start;min-width:0}.dashboard-return-main>div{min-width:0}.dashboard-return-main strong,.dashboard-repair-row strong{display:block;font-size:13px}.dashboard-return-main small,.dashboard-repair-row small{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}.dashboard-return>.button{margin:11px 0 0 45px}.dashboard-history{margin-top:16px;padding-left:0}.dashboard-empty{color:var(--muted);font-size:12px;margin:12px 0 0}.dashboard-repairs{margin-top:20px}.dashboard-repairs .card-head{margin-bottom:10px}.dashboard-repair-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.dashboard-repair-row>div{min-width:0}
.dashboard-return-warning{display:block;margin-top:8px;color:var(--danger);font-size:11px;line-height:1.45;font-weight:700;overflow-wrap:anywhere}
.dashboard-return,.dashboard-repair-row{cursor:pointer}.dashboard-return:hover strong,.dashboard-return:focus-visible strong,.dashboard-repair-row:hover strong,.dashboard-repair-row:focus-visible strong{color:var(--brand)}.dashboard-return:focus-visible,.dashboard-repair-row:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}
.dashboard-side{display:grid;gap:20px;min-width:0;align-content:start}.dashboard-waybills{margin-bottom:0}.dashboard-waybill-list{grid-template-columns:1fr;gap:0}.dashboard-waybill-list .doc-row{border:0;border-top:1px solid var(--line);border-radius:0;padding:12px 0;flex-wrap:wrap}.dashboard-waybill-list .badge{margin-left:auto}.dashboard-show-all{display:block;margin-top:14px;padding-left:0}.dashboard-list-modal .dashboard-return{padding:15px 0}.dashboard-list-modal .dashboard-return:first-child{padding-top:0}.dashboard-modal-list .doc-row{padding:14px 0}.dashboard-modal-list .doc-row:first-child{border-top:0}
.dashboard-repairs{margin-top:0}.dashboard-repairs .card-head{flex-wrap:wrap}.dashboard-repair-row{align-items:flex-start;flex-direction:column;gap:5px}.dashboard-repair-row .text-button{padding-left:0}.dashboard-list-modal .dashboard-repair-row:first-child{border-top:0}
@media(max-width:650px){.dashboard-repairs .card-head>.button{margin-top:12px}}
@media(max-width:1100px){.dashboard-columns{grid-template-columns:1fr}.dashboard-waybill-list{grid-template-columns:1fr}.dashboard-return{display:flex;align-items:center;justify-content:space-between;gap:12px}.dashboard-return>.button{margin:0}}
@media(max-width:650px){.dashboard-card-actions{justify-content:flex-start}.dashboard-waybills .card-head,.dashboard-repairs .card-head{display:block}.dashboard-card-actions{margin-top:12px}.dashboard-return{display:block}.dashboard-return>.button{margin:11px 0 0 45px}.dashboard-repair-row{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.workflow-links{grid-template-columns:1fr}.print-signatures{display:block}.print-signatures>div{margin-top:25px}}
@media(max-width:650px){.driver-history-row{flex-wrap:wrap}.driver-history-row>div{flex-basis:55%}.driver-doc-row{flex-wrap:wrap}.driver-doc-row .grow{flex-basis:80%}}
@media(max-width:850px){.corporate-grid,.assignment-page-grid{grid-template-columns:1fr}.brand-logo{width:132px}.brand-sub{display:none}}
@media(max-width:650px){.brand-logo{width:105px}.brand-logo.compact{width:105px}.corporate-card{min-height:0}.assignment-row .badge{font-size:9px}.current-assignment{padding:13px}.driver-invite .brand-logo{width:150px}}/* v22: сдача и приёмка, журнал изменений, страхование, вывод из эксплуатации */

.group-dot.green{background:var(--success)}.group-dot.gray{background:var(--gray-400)}
.alert-icon.green{background:var(--success-light);color:var(--success)}.alert-icon.gray{background:var(--gray-100);color:var(--gray-600)}
.alert-group-head .group-link{margin-left:auto;font-size:12px}
.seg.returning{background:var(--info-bar)}.seg.blocked{background:var(--danger)}
.return-text{color:var(--info-text)!important;font-weight:800}
.now-row.returning-row{background:var(--info-surface)}.now-row.returning-row:hover{background:var(--info-light)}
.archived-row{opacity:.62}
.plate-history{margin:6px 0 0;font-size:12px;color:var(--muted)}
.decommission-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:var(--gray-75);border:1px solid var(--gray-200)}
.decommission-banner .button{flex:none}
.danger-zone .button{width:100%;justify-content:center;color:var(--danger);border-color:var(--danger-line)}
.reason-options{border:0;padding:0;margin:0}.reason-options legend{font-size:12px;font-weight:800;margin-bottom:4px;color:var(--ink)}.reason-options .check-row{margin:0;min-height:40px;font-weight:600}
.event-filters{margin:0 0 14px}
.timeline-dot.change{background:var(--info-bar);box-shadow:0 0 0 1px var(--info-bar)}.timeline-dot.expense{background:var(--warning-bar);box-shadow:0 0 0 1px var(--warning-bar)}
.change-list{list-style:none;margin:6px 0 0;padding:8px 10px;background:var(--gray-50);border-radius:9px;display:grid;gap:4px;font-size:11px;color:var(--muted)}
.change-list li span{color:var(--ink);font-weight:700}.change-list strong{color:var(--ink)}
.odo-history{margin-top:16px;padding-top:12px;border-top:1px solid var(--gray-100)}
.insurance-card .osago-field .detail-value{font-weight:800}
.insurance-policy-row{display:flex;align-items:flex-end;gap:14px}.insurance-policy-action{flex:none;padding-bottom:2px}
@media(max-width:650px){.insurance-policy-row{align-items:flex-start;flex-direction:column;gap:8px}}
.osago-file{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}
.file-actions{display:inline-flex;flex-wrap:wrap;gap:12px}.file-actions .text-button{display:inline-flex;align-items:center;gap:4px}
.compact-check{min-height:32px;margin:8px 0 0;font-size:13px;font-weight:600}
.acceptance-pin{position:sticky;top:52px;z-index:6;display:grid;gap:10px;background:var(--info-deep);color:var(--on-brand);border-radius:16px;padding:14px 16px;margin-bottom:16px;box-shadow:0 10px 24px color-mix(in srgb,var(--info-deep) 25%,transparent)}
.acceptance-pin strong{display:block;font-size:18px;letter-spacing:.04em}.acceptance-pin small{display:block;color:var(--on-info-muted);font-size:13px;line-height:1.5}.acceptance-pin .eyebrow{color:var(--on-info-muted);margin:0}
.acceptance-pin .button{background:var(--surface);color:var(--info-deep);justify-content:center}
.acceptance-card{border-color:var(--on-info-muted);background:var(--info-surface)}.acceptance-card .eyebrow{color:var(--info-text)}
.driver-city{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:13px;font-weight:700;color:var(--muted)}.driver-city select{flex:1;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:var(--surface);color:var(--ink);font:inherit}
.accept-photo{display:block;border-radius:12px;overflow:hidden;background:var(--photo-bg);border:1px solid var(--line)}.accept-photo img{display:block;width:100%;max-height:420px;object-fit:contain}
.reconcile{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.reconcile>div{background:var(--gray-50);border-radius:12px;padding:12px}.reconcile strong{display:block;font-size:17px;margin-top:4px}.reconcile small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.reconcile .reconcile-main{font-size:22px;color:var(--success)}
.check-line{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;border-radius:10px;font-size:13px;line-height:1.45;margin-bottom:8px}.check-line .icon{flex:none;margin-top:1px}
.check-line.green{background:var(--success-light);color:var(--success)}.check-line.amber{background:var(--warning-light);color:var(--warning-text)}.check-line.red{background:var(--danger-light);color:var(--danger-text)}
.accept-form{margin-top:12px}.accept-form .button.wide{justify-content:center}
.reject-box{border:1px solid var(--line);border-radius:12px;padding:10px 12px}.reject-box summary{cursor:pointer;font-weight:800;color:var(--muted-2)}.reject-box[open]{display:grid;gap:12px}
.result-box{background:var(--success-light);color:var(--success)}
.render-error{max-width:520px;margin:40px auto}
@media(max-width:650px){.reconcile{grid-template-columns:1fr}.decommission-banner{flex-direction:column}.osago-file{align-items:flex-start;flex-direction:column}}
@media(prefers-color-scheme:dark){.is-driver .acceptance-card{background:var(--dk-info-bg);border-color:var(--dk-info-line)}.is-driver .acceptance-card .eyebrow{color:var(--dk-info-text)}.is-driver .driver-city select{background:var(--dk-surface);color:var(--dk-ink);border-color:var(--dk-line)}}
.accept-split{grid-template-columns:minmax(0,1fr) minmax(340px,1fr)}.reconcile .detail-label{display:block;font-size:10px;line-height:1.3}
@media(max-width:1100px){.accept-split{grid-template-columns:1fr}}
.vehicle-todo{margin-bottom:18px;padding:18px 22px}.vehicle-todo .card-head{margin-bottom:8px}.vehicle-todo .attention-item{padding:10px 0}.vehicle-todo .doc-row{padding:9px 0}.vehicle-todo .attention-item:last-of-type{border-bottom:0}
.vehicle-facts{margin-bottom:20px;padding:18px 22px}.vehicle-facts .card-head{margin-bottom:16px}.vehicle-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}.vehicle-fact{min-width:0;padding:0 18px;border-left:1px solid var(--line)}.vehicle-fact:first-child{padding-left:0;border-left:0}.vehicle-fact:last-child{padding-right:0}.vehicle-fact .detail-value{font-size:16px}.vehicle-list .doc-row{padding:7px 0}.vehicle-list .detail-note{margin-bottom:6px}.fact-more{display:block;margin-top:4px;padding:6px 0 0;font-size:13px}.fact-more span{color:var(--muted);font-weight:700}.vehicle-repair{display:flex;flex-direction:column}.vehicle-repair .fact-action{align-self:flex-start;margin-top:auto;padding-top:12px}.vehicle-main-stack>.card+.card,.danger-zone{margin-top:18px}
@media(min-width:651px){.vehicle-fact:nth-child(odd){padding-left:0;border-left:0}.vehicle-fact:nth-child(even){padding-right:0}.vehicle-fact:nth-child(n+3){padding-top:18px;border-top:1px solid var(--line)}}
@media(max-width:650px){.vehicle-facts-grid{grid-template-columns:1fr}.vehicle-fact,.vehicle-fact:nth-child(even),.vehicle-fact:nth-child(odd){padding:14px 0;border-left:0;border-top:1px solid var(--line)}.vehicle-fact:first-child{padding-top:0;border-top:0}.vehicle-fact:last-child{padding-bottom:0}}/* v25: выбор периода перед выгрузкой */

.export-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}/* v26: поля формы не растягиваются по высоте ряда, если у соседнего поля есть подсказка */

.form-grid .field{align-content:start}
.waybill-close-form{max-width:none}/* v27: окно истории машины — по центру на компьютере, листом снизу на телефоне. Список прокручивается, кнопки внизу видны всегда */

.history-modal{overflow:hidden}
.history-list{flex:1 1 auto;min-height:0;overflow:auto;padding-right:4px;border-top:1px solid var(--line)}
.history-list .doc-row:first-child{border-top:0}
.history-row.clickable-item{border-radius:0}.history-row.clickable-item:hover strong,.history-row.clickable-item:focus-visible strong{color:var(--brand)}
.history-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px}
@media(min-width:651px){.drawer.history-modal{top:50%;left:50%;right:auto;bottom:auto;width:min(620px,calc(100vw - 48px));max-height:min(760px,calc(100vh - 48px));border-radius:18px;transform:translate(-50%,-50%);box-shadow:0 30px 80px color-mix(in srgb,var(--brand-ink) 28%,transparent);animation:history-in .18s ease-out}}
@keyframes history-in{from{opacity:.4;transform:translate(-50%,calc(-50% + 14px))}to{opacity:1;transform:translate(-50%,-50%)}}
@media(max-width:650px){.history-foot .button{flex:1 1 100%}}/* v28: проблема с машиной при сдаче — поля раскрываются галочкой «Есть проблема с машиной» */

#return-form .problem-toggle{margin:14px 0 4px;font-size:15px;font-weight:700}
.return-problem{display:none;margin:4px 0 6px;padding:14px 14px 4px;border:1px solid var(--warning-line);border-radius:14px;background:var(--warning-surface)}
.return-problem.open{display:block}
.return-problem .driver-label-sm{padding:0;margin-bottom:8px}
.return-problem .check-row{margin:6px 0 8px}
.return-sent{margin:12px 0 4px;font-size:14px}
#return-photo-warning .soft-warning,#return-problem-warning .soft-warning{font-size:14px;margin:8px 0 10px}
.return-after{margin-top:10px}
@media(prefers-color-scheme:dark){.is-driver .return-problem{background:var(--brand-ink);border-color:var(--dk-line-strong)}}/* v29: ремонт — активный ремонт подсвечен в карточке машины и в «Что сделать», история ремонтов в том же блоке */

.fact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:10px 0 2px}
.fact-sub{margin:16px 0 2px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted-2)}
.vehicle-fact .detail-note{line-height:1.5}
.vehicle-facts-grid .vehicle-repair.is-active{background:var(--danger-surface);border:1px solid var(--danger-line);border-radius:14px;padding:14px 16px}
.vehicle-repair.is-active .detail-label{color:var(--danger)}
.vehicle-repair.is-active>.detail-value{color:var(--danger-deep);font-size:17px}
.vehicle-todo .repair-todo{background:var(--danger-surface);border:1px solid var(--danger-line);border-radius:12px;padding:12px 14px;margin:2px 0 10px}
.repair-form .form-actions,.repair-active-card .form-actions,.repair-nocost-card .form-actions{flex-wrap:wrap}
.field .field-label{display:block;font-size:11px;font-weight:800;color:var(--gray-800);margin-bottom:6px}
.field .doc-drop{color:var(--brand);font-size:14px;font-weight:700}
.doc-drop.compact-drop{padding:12px 14px}
.doc-drop small{display:block;color:var(--muted);font-weight:600;font-size:12px}
.repair-summary{margin-bottom:10px}/* v29: маршрутные листы — в приложении водителя только активный лист */

.waybill-driver-card .driver-sub{margin:8px 0 12px}
.waybill-driver-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.waybill-print{overflow-x:auto}
.waybill-print .print-document th{width:40%}/* v29: дашборд «Использование парка» — цвета как у полосы «Парк сейчас» */

.usage-card{margin-bottom:18px}
.usage-card .card-head{flex-wrap:wrap;gap:10px}
.usage-periods{margin:0}
.usage-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:4px 0 14px}
.usage-stat{border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.usage-value{font-size:26px;font-weight:800;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.usage-value small{font-size:14px;color:var(--muted)}
.usage-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:1px}
.usage-bar{display:flex;gap:2px;height:12px;border-radius:6px;overflow:hidden;background:var(--gray-100)}
.usage-bar span{min-width:3px}
.usage-trip{background:var(--warning-bar)}.usage-free{background:var(--success-bar)}.usage-repair{background:var(--danger-bar)}.usage-other{background:var(--info-bar)}
.usage-other.usage-dot{margin-right:4px}
.usage-note{margin:10px 0 0}
.usage-toggle{margin-top:10px;padding-left:0}
.usage-table{margin-top:8px}
.usage-bar-cell{min-width:140px}
@media(max-width:650px){.usage-stats{grid-template-columns:1fr}.usage-stat{display:grid;grid-template-columns:1fr auto;align-items:baseline}.usage-stat .detail-note{grid-column:1/-1}.usage-value{font-size:22px}}/* v30: прогноз ТО и затраты по машинам */

.service-card{margin-top:18px}
.service-summary{margin:0 0 10px;font-weight:700}
.service-table td{vertical-align:top}
.per-car{font-size:12px;color:var(--muted)}
.car-cost-row .now-main{position:relative;padding-bottom:6px}
.cost-bar{position:absolute;left:0;bottom:0;height:3px;border-radius:2px;background:var(--danger-bar);opacity:.55}
.car-cost-idle{margin-top:8px}
.car-year-cost{margin:4px 0 6px}
.service-table .strong,.service-table td[data-label="По пробегу"],.service-table td[data-label="≈ Стоимость"]{white-space:nowrap}/* Реестр полей автомобиля по форме Р-Фарм */

.registry-card{margin:18px 0}
.registry-card .card-head{gap:16px;align-items:flex-start}
.registry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px}
.registry-field{min-width:0;padding:12px 0;border-top:1px solid var(--line)}
.registry-field .detail-value{overflow-wrap:anywhere;white-space:pre-wrap}
@media(max-width:850px){.registry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.registry-grid{grid-template-columns:1fr}}/* Фотографии сообщения доступны менеджеру и после смены экрана. */


.problem-attachments{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:14px 0}
.problem-attachment{min-width:0}
.problem-attachment img{display:block;width:100%;height:140px;object-fit:contain;background:var(--bg);border-radius:8px;margin-bottom:6px}
