.internet-alert-card { box-sizing: border-box; width: calc(100% - 48px); max-width: 1000px; margin: 12px auto 24px; padding: 16px 18px; border: 1px solid #dbe4f5; border-radius: 12px; background: #f7f9fe; color: #202b43; text-align: left; font: 15px/1.5 system-ui, sans-serif; }
.internet-alert-card[hidden], .internet-alert-card [hidden], .internet-alert-page [hidden] { display: none !important; }
[data-internet-alert-slot] .internet-alert-card { width: 100%; margin: 20px 0 24px; }
.internet-alert-card summary { cursor: pointer; font-weight: 600; color: #273f78; }
.internet-alert-card form { margin-top: 14px; }
.internet-alert-card label, .internet-alert-page label { display: block; margin: 12px 0; font-weight: 600; }
.internet-alert-card input, .internet-alert-card select, .internet-alert-page input[type="email"], .internet-alert-page select { display: block; box-sizing: border-box; width: 100%; height: 44px; margin-top: 5px; padding: 9px 11px; border: 1px solid #aab7cf; border-radius: 7px; background: #fff; color: #17223b; font: 16px/1.25 system-ui, sans-serif; }
.internet-alert-card select, .internet-alert-page select { -webkit-appearance: none; appearance: none; padding-right: 36px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23526079' stroke-width='2'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 12px 8px; }
.internet-alert-card button, .internet-alert-page button { min-height: 44px; padding: 10px 16px; border: 0; border-radius: 7px; background: #294a91; color: #fff; cursor: pointer; font: 600 15px system-ui, sans-serif; }
.internet-alert-card button:disabled, .internet-alert-page button:disabled { opacity: .55; cursor: wait; }
.internet-alert-card :focus-visible, .internet-alert-page :focus-visible { outline: 3px solid #739ae9; outline-offset: 3px; }
.internet-alert-note { font-size: 13px; color: #526079; }
.internet-alert-card .internet-alert-note, .internet-alert-page .internet-alert-note { margin-bottom: 16px; }
.internet-alert-location { margin: 12px 0; }
.internet-alert-location-label { font-weight: 600; }
.internet-alert-location-value { display: flex; align-items: center; gap: 6px; margin-top: 4px; }
#internet-alert-address { overflow-wrap: anywhere; }
.internet-alert-edit { display: inline-flex; flex: 0 0 32px; height: 32px; align-items: center; justify-content: center; border-radius: 6px; color: #526079; }
.internet-alert-edit:hover { background: #e8eef9; color: #294a91; }
.internet-alert-another { display: inline-block; margin-top: 4px; color: #294a91; font-size: 14px; }
.internet-alert-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
#internet-alert-status { margin-bottom: 0; }
#internet-alert-status:not(:empty) { margin-top: 16px; }
.internet-alert-page { margin: 0; background: #f5f7fb; color: #202b43; font: 16px/1.6 system-ui, sans-serif; }
.internet-alert-signup-page { background: transparent; }
.internet-alert-page main { max-width: 520px; margin: 8vh auto; padding: 30px; border: 1px solid #e0e5ee; border-radius: 14px; background: white; }
.internet-alert-page h1 { font-size: 28px; line-height: 1.25; }
.internet-alert-page a { color: #294a91; }
.internet-alert-page .internet-alert-secondary { background: #edf0f6; color: #344562; margin-left: 6px; }
#internet-alert-geocoder .mapboxgl-ctrl-geocoder { width: 100%; max-width: none; min-width: 0; border: 1px solid #aab7cf; border-radius: 7px; box-shadow: none; font: 16px/1.25 system-ui, sans-serif; }
#internet-alert-geocoder .mapboxgl-ctrl-geocoder--input { height: 44px; padding: 9px 40px; color: #17223b; }
#internet-alert-geocoder .mapboxgl-ctrl-geocoder--icon-search { top: 11px; width: 20px; height: 20px; }
#internet-alert-geocoder button { min-height: 0; padding: 0; background: white; }
#internet-alert-geocoder .mapboxgl-ctrl-geocoder--icon-close { margin-top: 4px; }
@media (max-width: 600px) { .internet-alert-card { width: calc(100% - 32px); margin: 10px auto 24px; padding: 14px; } .internet-alert-page main { margin: 24px 12px; padding: 24px; } }
