.circuits-viewer{background:#fff;border:1px solid #e2e8f0;border-radius:1.5rem;margin-top:2rem;padding:1.5rem 1.25rem;box-shadow:0 4px 12px #1018200a}.circuits-viewer__header{align-items:center;gap:1.25rem;margin-bottom:1.75rem;display:flex}.circuits-viewer__icon{color:#0d9488;background:#e6fcfb;border-radius:999px;flex-shrink:0;width:4.5rem;height:4.5rem;padding:1.25rem}.circuits-viewer__title{color:#0f172a;margin:0;font-size:1.5rem;font-weight:700;line-height:1.2}.circuits-viewer__subtitle{color:#475569;margin:4px 0 0;font-size:.95rem}.circuits-tabs-container{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 -1.25rem 1.5rem;overflow-x:auto}.circuits-tabs-container::-webkit-scrollbar{display:none}.circuits-tabs{gap:1rem;width:max-content;padding:0 1.25rem .5rem;display:flex}.circuits-tab{color:#0f172a;text-align:left;scroll-snap-align:start;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;min-width:160px;padding:.85rem 1.25rem;transition:all .2s;display:flex}.circuits-tab:hover{background:#f8fafc;border-color:#cbd5e1}.circuits-tab.active{color:#fff;background:#0f172a;border-color:#0f172a}.circuits-tab-name{text-transform:uppercase;letter-spacing:.05em;opacity:.8;margin-bottom:2px;font-size:.7rem;font-weight:700}.circuits-tab-title{font-size:.95rem;font-weight:600;line-height:1.2}.circuits-map-display{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;overflow:hidden}.circuits-map-image-wrapper{-webkit-overflow-scrolling:touch;cursor:ew-resize;background:#fff;width:100%;padding:0;position:relative;overflow-x:auto}.circuits-map-image-wrapper::-webkit-scrollbar{display:none}.circuits-map-image{object-fit:contain;pointer-events:none;width:150%;min-width:600px;max-width:none;height:auto;display:block}.circuits-map-footer{background:#fff;border-top:1px solid #e2e8f0;justify-content:center;padding:1.5rem 1rem;display:flex}.circuits-map-duration{color:#0d9488;background:#e6fcfb;border-radius:999px;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.9rem;font-weight:700;display:inline-flex}
