/* G4.1-PEN-HUB-IJ1 · integration layer. No Penal palette or parallel design system. */
.bac-penal-hub-page{overflow-x:clip}
.bac-penal-hub-safety{max-width:60rem;margin-inline:auto}
.bac-penal-hub-safety .bac-safety-row{min-height:56px}
.bac-penal-hub-workspace{max-width:50rem;margin-inline:auto;scroll-margin-top:calc(var(--bac-sticky-offset,9rem) + 1rem)}
.bac-penal-hub-workspace[data-mode="result"]{max-width:56rem}
.bac-penal-hub-workspace[data-mode="protected"]{max-width:50rem}
.bac-penal-hub-workspace[data-mode="privacy_reset"]{max-width:48rem}
.bac-route-selector,.bac-safety-list,.bac-options,.bac-result-routes,.bac-boundary-list,.bac-resource-list,.bac-faq-list{display:grid;gap:0}
.bac-route-row,.bac-safety-row,.bac-service-option{display:flex;width:100%;min-height:56px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;text-decoration:none}
.bac-route-row:last-child,.bac-safety-row:last-child,.bac-service-option:last-child{border-bottom:1px solid var(--line)}
.bac-route-row>span:first-child,.bac-safety-row>span:first-child{display:grid;gap:.15rem;min-width:0}
.bac-route-row span span,.bac-safety-row span span{color:var(--muted);font-size:.94rem}
.bac-service-option[aria-pressed="true"]{border-left:4px solid var(--institutional);padding-left:.8rem;background:var(--paper)}
.bac-orientation-controls{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.bac-control{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--institutional);padding:.72rem 1rem;background:transparent;color:var(--institutional);font-weight:750;cursor:pointer}
.bac-orientation-surface{min-width:0}
.bac-result-routes{margin:1.4rem 0}
.bac-result-routes .bac-service-evaluation-link{width:100%;border-top:1px solid var(--line);border-left:0;padding:1rem 0;justify-content:space-between;text-decoration:none}
.bac-result-routes .bac-service-evaluation-link:last-child{border-bottom:1px solid var(--line)}
.bac-service-map{display:grid;gap:0}
.bac-service-map article,.bac-boundary-list article,.bac-resource-list article{padding:1.5rem 0;border-top:1px solid var(--line);min-width:0}
.bac-service-map article:last-child,.bac-boundary-list article:last-child,.bac-resource-list article:last-child{border-bottom:1px solid var(--line)}
.bac-resource-meta,.bac-static-note,.bac-form-note,.bac-privacy-note,.bac-common-disclaimer{color:var(--muted);font-size:.95rem}
.bac-professional-details{display:grid;gap:1rem}
.bac-faq-list details{border-top:1px solid var(--line)}
.bac-faq-list details:last-child{border-bottom:1px solid var(--line)}
.bac-faq-list summary{min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:1rem;cursor:pointer;font-weight:750;padding:1rem 0}
.bac-faq-list summary::after{content:"+";font-size:1.5rem}
.bac-faq-list details[open] summary::after{content:"−"}
.bac-faq-list details p{padding-bottom:1rem;margin:0}
.bac-privacy-box{border-left:3px solid var(--accent);padding:1rem 1.2rem;background:var(--paper)}
.bac-no-js-routes{display:grid;gap:.5rem;margin-top:1rem}
.bac-no-js-routes a{min-height:48px;display:flex;align-items:center}
.bac-live{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.js-enabled [data-js-only][hidden]{display:block!important}
@media(max-width:767px){.bac-control{max-width:100%}.bac-orientation-controls{flex-direction:column;align-items:stretch}}
@media(max-width:359px){.bac-penal-hub-page .shell{width:calc(100vw - 24px)}}
@media(min-width:768px){.bac-service-map{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2.5rem}.bac-resource-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2.5rem}}
@media(prefers-reduced-motion:reduce){.bac-penal-hub-page{scroll-behavior:auto}.bac-penal-hub-page *,.bac-penal-hub-page *::before,.bac-penal-hub-page *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
@media(forced-colors:active){.bac-penal-hub-page :focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}.bac-control,.bac-route-row,.bac-safety-row,.bac-service-option{border-color:CanvasText}.bac-service-option[aria-pressed="true"]{background:Highlight;color:HighlightText}}
