/* Shared request UI. Primary page quote actions are unchanged. */
.kmr-trigger{display:inline-flex;align-items:center;gap:7px;background:transparent;border:0;color:inherit;font:inherit;white-space:nowrap;cursor:pointer;padding:8px 10px;min-height:40px}
#kh3-header .kmr-trigger [data-kmr-count]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#3b3b3b;color:#fff;font:700 11px/1 Barlow,Arial,sans-serif;font-variant-numeric:tabular-nums;text-decoration:none}
#kh3-header .kmr-trigger [data-kmr-count][hidden]{display:none!important}
.kmr-mobile-trigger{margin:12px 0 4px;min-height:44px;width:100%;justify-content:space-between;border-bottom:1px solid #ccc;font-weight:700;color:#111}
.kmr-open{overflow:hidden}.kmr-dialog{box-sizing:border-box;width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-top:4px solid #c8102d;background:#fff;color:#151515;font-family:Barlow,Arial,sans-serif;font-size:16px;line-height:1.4;overflow:clip;box-shadow:0 20px 80px #0008}
.kmr-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.kmr-dialog::backdrop{background:#000b}
.kmr-head{padding:18px 24px 14px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #ddd;background:#fff}.kmr-dialog h2{font-size:28px;margin:0;line-height:1.1}.kmr-dialog h3{font-size:18px;line-height:1.25;margin:0 0 5px;font-weight:700}.kmr-dialog p{margin:8px 0}.kmr-label{color:#b20d27;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin:0 0 4px!important}
.kmr-close{flex:none;width:44px;height:44px;font-size:28px;line-height:1;border:1px solid #ccc;background:#fff;color:#111;cursor:pointer}
.kmr-scroll{overflow-y:auto;overscroll-behavior:contain;padding:0 24px 8px;min-height:0;scroll-padding:16px}.kmr-footer{background:#fff;padding:14px 24px 16px;border-top:1px solid #ddd}.kmr-footer .kmr-primary{display:flex;width:100%;box-sizing:border-box}.kmr-footer-links{display:flex;align-items:center;justify-content:space-between;gap:12px}.kmr-footer .kmr-small{margin:6px 0 0;font-size:12px}.kmr-foot{font-size:12px;color:#626269;margin:4px 0 0!important}
.kmr-dialog button,.kmr-dialog a,.kmr-save button,.kmr-contact button{font-family:inherit;cursor:pointer}.kmr-dialog button:not(.kmr-close),.kmr-dialog a{min-height:44px}
.kmr-dialog a,.kmr-text,.kmr-links button{color:#a70d25;text-decoration:underline;text-underline-offset:4px;font-weight:600}.kmr-links button,.kmr-text{background:transparent;border:0;padding:8px 0;font-size:14px}
.kmr-project{padding:12px 0;border-bottom:1px solid #ddd;font-size:14px}.kmr-project>span{display:block;color:#606066;font-size:12px}.kmr-project>strong{display:block;margin-top:3px;overflow-wrap:anywhere}
.kmr-service{padding:14px 0 6px;border-bottom:1px solid #ddd}.kmr-service:last-child{border:0}.kmr-service-name{color:#b20d27;font-size:12px;font-weight:600;margin:0 0 4px!important}.kmr-description{font-size:14px;color:#52525a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:4px 0!important}.kmr-meta{font-size:12px;color:#626269;margin:4px 0!important}.kmr-price{font-size:16px;font-weight:700;margin:6px 0 0!important}.kmr-price small{font-size:12px;font-weight:400}.kmr-service details{margin-top:4px;font-size:13px}.kmr-service summary{cursor:pointer;padding:10px 0;min-height:24px;box-sizing:content-box;color:#444}.kmr-service dl{margin:0 0 10px}.kmr-service dl>div{display:grid;grid-template-columns:145px 1fr;gap:12px;margin:6px 0;font-size:13px}.kmr-service dt{color:#666}.kmr-service dd{margin:0;overflow-wrap:anywhere}.kmr-links{display:flex;align-items:center;gap:24px;margin-top:-6px}.kmr-links a{display:inline-flex;align-items:center;font-size:14px}
.kmr-primary,.kmr-secondary{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:11px 17px;border:1px solid #c8102d;font-weight:700;font-size:16px;text-align:center;line-height:1.3;text-decoration:none!important;border-radius:0}.kmr-primary{background:#c8102d;color:#fff!important}.kmr-secondary{background:#fff;color:#111}.kmr-small{font-size:13px;color:#626269}.kmr-review,.kmr-status{color:#a20d25}.kmr-status:empty{display:none}
/* Save controls own their layout; page button/grid rules must not position them. */
.kmr-save{display:block;position:static;float:none;clear:both;box-sizing:border-box;flex:0 0 auto;grid-column:1/-1;min-width:0;max-width:100%;height:auto;margin:12px 0;align-self:stretch;font-family:Barlow,Arial,sans-serif;line-height:1.4}
.kmr-save>button.kmr-save-link{display:flex!important;position:static!important;inset:auto!important;float:none!important;transform:none!important;box-sizing:border-box!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;grid-area:auto!important;margin:0!important;width:min(100%,172px)!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:44px!important;padding:11px 16px!important;border:1px solid #c8102d!important;border-radius:2px!important;background:#fff!important;color:#c8102d!important;box-shadow:none!important;font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:20px!important;letter-spacing:0!important;text-transform:none!important;text-align:center!important;text-decoration:none!important;white-space:normal!important;overflow-wrap:anywhere!important;cursor:pointer}
.kmr-save>button.kmr-save-link:hover{background:#fff1f3!important;color:#a70d25!important;border-color:#a70d25!important}
.kmr-save>button.kmr-save-link.kmr-added{color:#c8102d!important;cursor:default}
.kmr-save p{font-size:13px!important;line-height:1.4!important;margin:8px 0 0!important;color:#56565d;max-width:56ch;overflow-wrap:anywhere}
.kmr-save p:empty{display:none}.kmr-save [hidden]{display:none!important}.kmr-on-dark p{color:#dedee2!important}
/* One normal-flow action cell preserves subgrid alignment and grows with labels. */
.kmr-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;box-sizing:border-box;min-width:0;max-width:100%;width:100%;height:auto!important;min-height:0!important;margin:0!important;margin-top:auto!important;align-self:end;grid-column:1/-1}
.kmr-actions>.kmr-save{display:block!important;flex:0 0 auto!important;width:100%!important;margin:0!important;min-width:0;max-width:100%;height:auto!important}
.kmr-actions>.kmr-save>button.kmr-save-link{width:100%!important}
.kmr-actions>:first-child{position:static!important;inset:auto!important;box-sizing:border-box;flex:0 0 auto!important;grid-area:auto!important;width:100%;max-width:100%;margin:0!important;white-space:normal}
.kmr-save>button.kmr-save-link:focus-visible{outline:3px solid #c8102d!important;outline-offset:3px!important}
.kc-scroll-return.kmr-clear-save-target{visibility:hidden;pointer-events:none}

.kmr-conflict[open]{display:block;overflow:auto}.kmr-conflict-body{padding:24px}.kmr-conflict-actions{display:grid;gap:10px;margin-top:18px}.kmr-contact{border-left:3px solid #c8102d;padding:10px 14px;margin:0 0 14px;font-family:Barlow,Arial,sans-serif;font-size:15px;line-height:1.4}.kmr-contact>span{display:block;margin-top:4px}.kmr-contact p{font-size:13px;margin:8px 0 0}.kmr-reused-vehicle{font-size:14px!important;line-height:1.4!important}.kmr-sr{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.kmr-dialog :focus-visible,.kmr-trigger:focus-visible,.kmr-save :focus-visible,.kmr-contact :focus-visible{outline:3px solid #c8102d;outline-offset:3px}.kmr-on-dark :focus-visible{outline-color:#fff}
@media(min-width:1281px){.kh3-utility .kh3-shell{gap:14px}.kh3-utility .kh3-location{font-size:10px}.kh3-utility nav{gap:10px}.kh3-utility .kmr-trigger{padding-inline:4px;font-size:12px}}
@media(max-width:600px){.kmr-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.kmr-head{padding:14px 16px 12px}.kmr-scroll{padding:0 16px 8px}.kmr-footer{padding:10px 16px 12px}.kmr-service dl>div{grid-template-columns:1fr;gap:1px;margin:8px 0}.kmr-conflict-body{padding:20px}.kmr-foot{font-size:11px}.kmr-dialog h2{font-size:25px}}

.kmr-vehicle{padding:14px 0;border-bottom:1px solid #ddd}.kmr-vehicle[hidden]{display:none}.kmr-vehicle label{display:block;font-size:16px;font-weight:700}.kmr-vehicle label span{font-weight:400;font-size:12px;color:#626269}.kmr-vehicle #kmr-vehicle-help{font-size:13px;color:#626269;margin:2px 0 7px}.kmr-vehicle input{box-sizing:border-box;display:block;width:100%;min-width:0;min-height:44px;border:1px solid #999;border-radius:0;background:#fff;color:#151515;padding:9px 11px;font:inherit;font-size:16px}.kmr-vehicle #kmr-vehicle-status{font-size:13px;color:#a20d25;margin:7px 0 0}.kmr-vehicle #kmr-vehicle-status:empty{display:none}

.kmr-vehicle input[aria-invalid="true"]{border-color:#c8102d;box-shadow:0 0 0 1px #c8102d}

.kmr-coverage{padding:12px 0;border-bottom:1px solid #ddd}.kmr-coverage p{font-size:14px}.kmr-overlap-option{display:flex;align-items:flex-start;gap:10px;padding:12px 0;font-size:14px;cursor:pointer}.kmr-overlap-option input{flex:none;width:18px;height:18px;margin:1px 0 0}.kmr-conflict details{overflow-wrap:anywhere}.kmr-conflict dd{margin:0 0 8px}
/* Service-card actions can become a column on narrow screens. Do not give the save row a percentage height. */
.rv-card-actions>.kmr-actions{flex:0 0 auto;width:100%;min-width:0}
.kmr-save.kmr-inline{flex:0 1 auto;margin:0;min-width:0}
/* The fleet action row contains additional links. Let its save pair wrap. */
.cg-actions:has(>.kmr-actions),.vw-card-links:has(>.kmr-actions),.rv-card-actions:has(>.kmr-actions){flex-wrap:wrap}
.cg-actions>.kmr-actions,.vw-card-links>.kmr-actions{flex:0 1 auto}
@media(max-width:600px){.kmr-save>button.kmr-save-link{width:100%!important}.kmr-save.kmr-inline{flex:1 1 100%}}

/* A complete vehicle description replaces split identity fields in connected local forms. */
[data-kmr-legacy-vehicle]{display:none!important}
.kmr-page-vehicle{display:block;grid-column:1/-1;min-width:0;width:100%;margin:0 0 18px}
.kmr-page-vehicle>label{display:block;margin:0 0 5px;font-weight:700}
.kmr-page-vehicle>input{box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:44px;font:inherit}
.kmr-page-vehicle>p{font-size:14px!important;line-height:1.45!important;margin:4px 0 10px!important;font-weight:400!important}
.kmr-page-vehicle>[role=status],.kmr-page-vehicle-status{color:#a20d25;font-size:14px}
.kmr-page-vehicle>[role=status]:empty,.kmr-page-vehicle-status:empty{display:none}

/* One explicit electronics decision block; no controls on feature/accessory lists. */
iframe[data-kmr-loading]{visibility:hidden!important;pointer-events:none!important}
/* Explicit card actions retain their existing primary action and a 12px save row. */
.kmr-electronics-actions{align-self:stretch!important}
.kmr-section-actions,.kmr-section-save{width:100%;max-width:25rem!important}
.kmr-electronics-save{box-sizing:border-box;margin-top:12px!important;min-width:0;max-width:100%}
.kmr-electronics-save>button.kmr-save-link{box-sizing:border-box;width:100%!important;min-height:44px;white-space:normal;line-height:1.25}
.kmr-electronics-save [role=status]:empty{display:none}
.kmr-option-caption{display:block;font-weight:700;margin:0 0 6px}
.kmr-electronics-card{display:flex;flex-direction:column;min-width:0}
.kmr-electronics-card>.kmr-card-save{margin-top:auto!important;padding-top:12px}
.kmr-electronics-actions .kmr-save{margin:0!important}
.ap2-package:has(.kmr-electronics-actions){display:flex;flex-direction:column}
.ap2-package>.kmr-electronics-actions{margin-top:auto!important;padding-top:0}
.ap2-package>.kmr-electronics-actions>.btn{display:flex;align-items:center;justify-content:center;min-height:52px}
.ap2-package .kmr-save>button.kmr-save-link{min-height:52px}
.kmr-install-choices{display:grid;gap:12px;margin:20px 0}
.kmr-install-choices>button{text-align:left;white-space:normal;min-height:44px}
.kmr-electronics-edit{max-width:620px}
.kmr-edit-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.kmr-edit-fields label,.kmr-electronics-edit label{display:block;min-width:0;font-weight:600}
.kmr-edit-fields select,.kmr-electronics-edit textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:44px;margin-top:6px;padding:10px;background:#fff;color:#17171a;border:1px solid #777;font:400 16px Barlow,Arial,sans-serif}
.kmr-electronics-edit [hidden]{display:none!important}.kmr-edit-price{font-weight:700}
@media(max-width:540px){.kmr-edit-fields{grid-template-columns:minmax(0,1fr)}}
