.vehicle-tab{gap:12px;display:grid}.vehicle-section{border-top:1px solid var(--line);padding-top:8px}.vehicle-section>summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;list-style:none;display:flex}.vehicle-section>summary::-webkit-details-marker{display:none}.vehicle-section>summary:before{content:"▸";color:var(--muted);transition:transform .15s}.vehicle-section[open]>summary:before{transform:rotate(90deg)}.vehicle-section>summary h3{font-size:var(--fs-base);margin:0}.vehicle-section__body{gap:10px;padding:4px 0 8px;display:grid}.vehicle-section h4{font-size:var(--fs-md);margin:8px 0 0}.vehicle-form,.vehicle-form fieldset{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.vehicle-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.vehicle-grid__wide{grid-column:1/-1}.vehicle-grid label,.vehicle-item-form>label{gap:4px;min-width:0;display:grid}.vehicle-grid input,.vehicle-grid select,.vehicle-grid textarea,.vehicle-item-form input{width:100%;min-height:44px}.vehicle-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.vehicle-actions .btn,.vehicle-actions button{min-height:44px}.vehicle-ok{color:var(--ok);background:var(--ok-soft);border-radius:10px;padding:8px 12px;font-weight:600}.vehicle-photo{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.vehicle-photo__frame{aspect-ratio:4/3;border:1px solid var(--line);width:200px;color:var(--muted);background:var(--canvas);border-radius:12px;place-items:center;display:grid;overflow:hidden}.vehicle-photo__frame img{object-fit:cover;width:100%;height:100%}.vehicle-photo__actions{align-content:start;gap:8px;display:grid}.vehicle-photo__actions .btn{min-height:44px}.vehicle-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px;margin:0;display:grid}.vehicle-facts dt{color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.02em;font-weight:700}.vehicle-facts dd{font-variant-numeric:tabular-nums;margin:2px 0 0}.vehicle-set{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.vehicle-set .btn{min-height:44px}.vehicle-items{gap:8px;margin:0;padding:0;list-style:none;display:grid}.vehicle-item{border:1px solid var(--line);background:var(--surface);border-left-width:4px;border-radius:10px;gap:6px;padding:10px 12px;display:grid}.vehicle-item--overdue{border-left-color:var(--bad)}.vehicle-item--soon{border-left-color:var(--warn)}.vehicle-item--ok{border-left-color:var(--ok)}.vehicle-item__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.vehicle-item__facts{color:var(--ink-2);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;gap:2px;display:grid}.vehicle-badge{font-size:var(--fs-sm);border-radius:999px;flex:none;padding:2px 10px;font-weight:700}.vehicle-badge--overdue{color:var(--bad-ink);background:var(--bad-soft)}.vehicle-badge--soon{color:var(--warn);background:var(--warn-soft)}.vehicle-badge--ok{color:var(--ok);background:var(--ok-soft)}.vehicle-badge--unknown{color:var(--muted);background:var(--idle-soft)}.vehicle-item-form{background:var(--canvas);border-radius:10px;gap:10px;padding:10px;display:grid}.vehicle-item-form p{margin:0}.vehicle-presets{flex-wrap:wrap;gap:6px;display:flex}.vehicle-presets .chip{min-height:40px}.vehicle-history{border-collapse:collapse;width:100%;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.vehicle-history th,.vehicle-history td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 4px}.vehicle-history th{color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase}.vehicle-summary{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:12px;margin:10px 0;padding:8px 10px;display:flex}.vehicle-summary__photo{object-fit:cover;border-radius:8px;flex:none;width:64px;height:48px}.vehicle-summary__text{min-width:0;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;gap:2px;display:grid}.vehicle-summary__text strong{font-size:var(--fs-md)}.vehicle-summary__service--overdue{color:var(--bad);font-weight:700}.vehicle-summary__service--soon{color:var(--warn);font-weight:700}.map-marker--photo{padding:0}.map-marker__photo{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.map-marker--photo .map-marker__icon{width:100%;height:100%;display:block}@media (width<=700px){.vehicle-grid,.vehicle-grid--3,.vehicle-facts{grid-template-columns:minmax(0,1fr)}.vehicle-photo__frame{width:100%;max-width:320px}.vehicle-history th:nth-child(5),.vehicle-history td:nth-child(5){display:none}}
