/* ASPIRIN UI V215 — COMPLETE EXTERIOR INSPECTION MAP */

.a215-inspection-map {
    margin-top: 12px;
    position: relative;
    isolation: isolate;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-x: clip;
    contain: inline-size;
}

#screen-reception.active,
#screen-reception .a145-reception,
#screen-reception .a145-section,
#a5ReceptionContent {
    min-width: 0;
    max-width: 100%;
}

#screen-reception.active {
    width: 100%;
    max-width: 100vw;
    overflow-x: clip;
}

#screen-reception .a145-section {
    overflow-x: hidden;
}

.a215-view-tabs {
    display: flex;
    gap: 7px;
    padding: 2px 1px 6px;
}

.a215-view-button {
    min-width: 0;
    height: 38px;
    flex: 1 1 0;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 12px;
    background: rgba(255,255,255,.035);
    color: #8c9098;
    font-size: 9px;
    font-weight: 850;
}

.a215-view-button.active {
    border-color: rgba(217,255,67,.42);
    background: rgba(217,255,67,.12);
    color: #d9ff43;
}

.a215-map-stage {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 250px;
    display: grid;
    place-items: center;
    margin-top: 3px;
    overflow: hidden;
    border-radius: 18px;
    background:
        radial-gradient(circle at 50% 45%, rgba(217,255,67,.035), transparent 58%),
        rgba(0,0,0,.09);
    overscroll-behavior-x: contain;
}

.a215-map {
    display: block;
    width: 100%;
    height: auto;
    max-height: 580px;
    touch-action: manipulation;
    user-select: none;
}

.a215-map-top {
    max-width: 350px;
}

.a215-map-side {
    max-width: 540px;
}

.a215-map-face {
    max-width: 410px;
}

.a215-outline {
    fill: rgba(255,255,255,.018);
    stroke: rgba(255,255,255,.19);
    stroke-width: 3;
}

.a215-map .a146-zone {
    vector-effect: non-scaling-stroke;
    stroke-width: 1.7;
}

.a215-map .a146-zone:hover {
    stroke: rgba(217,255,67,.62);
}

.a215-map .a146-zone.selected {
    fill: rgba(217,255,67,.20);
    stroke: #d9ff43;
    stroke-width: 2.6;
}

.a215-map .a146-zone.issue {
    fill: rgba(255,92,72,.15);
    stroke: rgba(255,105,85,.86);
}

.a215-map .a146-zone.issue.selected {
    fill: rgba(217,255,67,.22);
    stroke: #d9ff43;
}

.a215-map .a215-glass {
    fill: rgba(70,143,178,.16);
    stroke: rgba(105,177,207,.42);
}

.a215-map .a215-light {
    fill: rgba(255,218,117,.10);
    stroke: rgba(255,222,135,.40);
}

.a215-map .a215-grille {
    fill: rgba(0,0,0,.28);
    stroke: rgba(255,255,255,.19);
}

.a215-map .a215-accessory {
    fill: rgba(255,255,255,.06);
    stroke: rgba(255,255,255,.23);
}

.a215-map .a215-pillar {
    fill: rgba(255,255,255,.055);
    stroke: rgba(255,255,255,.24);
}

.a215-map .a215-tire {
    fill: #30343a;
    stroke: rgba(255,255,255,.18);
}

.a215-map .a215-tire.selected {
    fill: rgba(217,255,67,.24);
    stroke: #d9ff43;
}

.a215-wheel-hub {
    pointer-events: none;
    fill: #14171a;
    stroke: rgba(255,255,255,.18);
    stroke-width: 3;
}

.a215-label {
    pointer-events: none;
    fill: #959aa3;
    font-size: 10px;
    font-weight: 800;
    text-anchor: middle;
    dominant-baseline: middle;
}

.a215-label.small {
    font-size: 8px;
}

.a215-label.micro {
    font-size: 6.5px;
}

.a215-label.glass-label {
    fill: #8aaaba;
    font-size: 8px;
}

.a215-label.view-title {
    fill: #747a84;
    font-size: 11px;
    letter-spacing: 1px;
}

.a215-label.pillar-label {
    fill: #b6bbc3;
    font-size: 8px;
}

.a215-map-hint {
    margin: 7px 4px 2px;
    color: #777c85;
    font-size: 8px;
    line-height: 1.45;
    text-align: center;
}

.a215-map-stage-left,
.a215-map-stage-right {
    justify-content: start;
    justify-items: start;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
}

.a215-map-stage-left .a215-map-side,
.a215-map-stage-right .a215-map-side,
.a215-map-stage-left .a146-zone,
.a215-map-stage-right .a146-zone {
    touch-action: pan-x pan-y;
}

.a215-map-stage-left::-webkit-scrollbar,
.a215-map-stage-right::-webkit-scrollbar {
    display: none;
}

@media (max-width: 390px) {
    .a215-view-button {
        height: 36px;
        font-size: 8px;
    }

    .a215-map-stage {
        min-height: 235px;
    }
}

@media (max-width: 600px) {
    .a215-map-stage-left,
    .a215-map-stage-right {
        display: block;
        min-height: 320px;
        padding: 3px 0 6px;
    }

    .a215-map-side {
        width: 540px;
        min-width: 540px;
        max-width: none;
        touch-action: pan-x pan-y;
    }
}
