/* BFP minimal kiosk theme: non-invasive overrides */
:root{--bfp-red:#b9252e;--bfp-ink:#162b39;--bfp-cream:#f8f9f8}
body{background:#f4f6f5!important;color:var(--bfp-ink)}
body::before{content:"BFP";position:fixed;right:-5vw;bottom:-12vh;font-size:clamp(13rem,42vw,42rem);font-weight:900;letter-spacing:-.1em;line-height:1;color:rgba(159,30,40,.035);pointer-events:none;z-index:0}
.top{background:#fff!important;border-bottom:3px solid var(--bfp-red);box-shadow:0 1px 12px #162b3910}
.top .brand{color:var(--bfp-red)!important;font-weight:800}.top nav a{color:var(--bfp-ink)!important}
.wrap{max-width:1440px!important;width:100%;position:relative;z-index:1}
.snap-app{background:transparent!important;color:var(--bfp-ink)!important;min-height:calc(100vh - 130px)}
.snap-orb{display:none!important}
.snap-shell{background:rgba(255,255,255,.94)!important;border:1px solid #e2e8e7!important;border-radius:24px!important;box-shadow:0 16px 45px #152f3910!important;max-width:1160px;margin:25px auto;padding:clamp(20px,4vw,48px)!important;position:relative;overflow:hidden}
.snap-shell::before{content:"BUREAU OF FIRE PROTECTION";position:absolute;right:-55px;top:45%;transform:rotate(-90deg);font-size:12px;letter-spacing:.25em;font-weight:900;color:rgba(177,35,44,.07);pointer-events:none}
.snap-heading{border-bottom:1px solid #e8eded!important;padding-bottom:20px!important;margin-bottom:26px!important}
.snap-heading h1,.snap-intro h2{color:var(--bfp-ink)!important;letter-spacing:-.035em}
.snap-heading em{color:var(--bfp-red)!important;font-style:normal}
.snap-kicker{color:var(--bfp-red)!important;font-weight:800;letter-spacing:.13em}
.snap-mark{background:#fff1f1!important;border:1px solid #f0d9d9!important;border-radius:14px!important}
.snap-progress,.snap-pill{display:none!important}
.snap-intro{text-align:center;margin:12px auto 24px!important}
.snap-intro h2{font-size:clamp(1.7rem,4vw,2.5rem)!important;font-weight:800!important}
.snap-intro p{color:#637581!important}
.snap-choice,.snap-tip,.snap-camera,.snap-photo,.snap-output,.snap-editor-tools,.snap-template-card{background:#fff!important;color:var(--bfp-ink)!important;border:1px solid #dfe7e8!important;box-shadow:0 8px 24px #102c3510!important;border-radius:18px!important}
.snap-choice{transition:transform .18s,border-color .18s,box-shadow .18s!important}
.snap-choice:hover,.snap-choice:focus-visible{transform:translateY(-3px);border-color:var(--bfp-red)!important;box-shadow:0 10px 24px #b9252e19!important}
.snap-choice strong{color:var(--bfp-ink)!important}.snap-choice small{color:#657883!important}
.snap-primary{background:var(--bfp-red)!important;border-color:var(--bfp-red)!important;color:#fff!important}
.snap-secondary,.snap-back{background:#f6f8f8!important;color:var(--bfp-ink)!important;border:1px solid #dce5e6!important}
.snap-notice{color:#9e2b2b!important}
.voice-invite{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:22px auto 8px;max-width:720px}
.voice-activate,.voice-replay{font:inherit;font-weight:750;border-radius:999px;padding:12px 20px;cursor:pointer;min-height:46px}
.voice-activate{background:var(--bfp-red);border:1px solid var(--bfp-red);color:white}.voice-activate[aria-pressed="true"]{background:#263b45;border-color:#263b45}
.voice-replay{background:#fff;border:1px solid #d7dfe1;color:var(--bfp-ink)}
#voiceStatus{flex-basis:100%;font-size:.85rem;color:#667984;text-align:center;min-height:1.3em}
.snap-sound{background:#f5f6f6!important;color:var(--bfp-ink)!important;border:1px solid #e3e9e9!important}
@media(max-width:700px){.snap-shell{margin:10px auto;border-radius:15px!important;padding:18px!important}.snap-heading{gap:12px!important}.snap-heading h1{font-size:1.5rem!important}.voice-invite{gap:9px}.voice-activate,.voice-replay{width:100%}}
