/* Vale Alerta: regras finais de identidade e legibilidade. */
:root{--title:#153d58;--navy:#102f51;--gold:#d5aa61;--body-text:#435d6b;--card-radius:16px}
body{color:var(--title);line-height:1.5}
.card{border-radius:var(--card-radius)}
.card h2,.card h3{line-height:1.35;overflow-wrap:anywhere}
.card p,.card .small{color:var(--body-text)}
.card p{line-height:1.65}
.card.hero h2,.card.hero h3,.card.river-card h2,.card.river-card h3,
.service-card>.service-title,.service-card>.service-heading h2{color:#fff}
.card.hero p,.card.hero .small,.card.hero label,
.card.river-card .monitor-subtitle,.card.river-card .monitor-note,
.card.river-card .unit,.card.river-card .small{color:#dce8f3}
.card.river-card .monitor-number{color:#fff}
.service-card>.service-heading .tag{background:#e5f5ef;color:#07594f}
.service-card>.service-heading .tag.warn{background:#fff0d3;color:#714907}
.service-card>.service-heading .tag.danger{background:#ffe4df;color:#92271f}
.service-card>.service-heading .tag.neutral{background:#edf2f6;color:#405b6b}
.card a:not(.button):not(.emergency-call):not(.emergency-message){text-underline-offset:3px}
button,.button{font-weight:600;line-height:1.4;min-height:44px}
input,select,textarea{min-height:44px;max-width:100%}
input[type=checkbox],input[type=radio]{min-height:0;flex-shrink:0}
input::placeholder,textarea::placeholder{color:#617582;opacity:1}
.card form input,.card form select,.card form textarea{border-color:#8da7b8}
.card form label{color:var(--title)}
.card.hero form label{color:#dce8f3}
.emergency-call,.emergency-call strong,.emergency-call span{color:#fff}
.emergency-message strong{color:var(--title)}
.page-guide p{color:#365e63;margin:0}
.monitoring-meta p,footer,.legal-note{font-size:12px;line-height:1.65}
.card .banner{color:#654914}
.card .occurrence-highlight p{color:#4d3440}
.card .volunteer-invite p{color:#3e6159}
.tag{line-height:1.5}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible{outline:3px solid #247f8d;outline-offset:3px}
aside button:focus-visible,.river-card a:focus-visible,.hero a:focus-visible{outline-color:#f0c77e}
@media(max-width:700px){
 .card{border-radius:14px}
 .service-heading{align-items:flex-start}
 .service-heading h2{flex-basis:150px}
 .emergency-choice-grid>a{min-width:0;overflow-wrap:anywhere}
 .card .row{gap:12px}
 .card form select{width:100%}
}

.action-hub .action-heading p{color:#435d6b}
.info-disclosure{margin:12px 0;font-size:13px}.info-disclosure>summary{color:#234f68;min-height:44px;display:list-item;padding:10px 0}.info-disclosure p{margin:8px 0}.history-24h>p.small{margin:6px 0}

/* 0.87 · funções reconhecíveis e seções com hierarquia própria */
#view>.card,#view>.action-hub{margin-bottom:26px}
.quota-home>h2,.action-heading h2,.volunteer-invite h2,.alerts-signup-heading h2,.home-publications h2{font-size:24px;line-height:1.3}
.quota-home>.lookup-options{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0 16px}
.quota-home .lookup-option{display:flex;flex-direction:column;align-items:stretch;gap:0;background:#f4f8fb;border:1px solid #a8bfcd;border-top:4px solid #315e7b;border-radius:13px;padding:22px;margin:0;min-width:0}
.section-icon{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;color:#315e7b;margin-bottom:12px}
.quota-home .lookup-option label{font-size:19px;font-weight:700;margin:0;color:#153d58}
.quota-home .lookup-help{font-size:14px;color:#435d6b;margin:8px 0 18px}
.quota-home .lookup-fields{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}
.quota-home .lookup-fields input{flex:1 1 170px;min-width:0;font-size:16px}
.quota-home .lookup-fields button{flex:0 1 auto}
.quota-home .all-streets-button{padding:15px 18px;font-size:15px;background:white;border-color:#718fa3}
.action-hub .action-card{min-height:130px;padding:22px;align-items:center}
.action-card strong{font-size:19px}.action-card small{font-size:14px;margin-top:7px}.action-card svg{width:30px;height:30px}
.volunteer-invite{grid-template-columns:minmax(0,1fr);border-top:4px solid #4c8577;padding:26px}
.volunteer-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%}
.volunteer-actions button{min-height:104px;padding:20px;justify-content:flex-start;align-items:center}
.volunteer-actions button>span:nth-last-child(1){margin-left:auto}
.volunteer-actions .section-icon{color:currentColor;margin:0}
.volunteer-actions strong,.volunteer-actions small{display:block;text-align:left}
.volunteer-actions strong{font-size:18px}.volunteer-actions small{font-size:14px;font-weight:400;margin-top:6px;color:inherit}
.alerts-channel{border-top:4px solid #315e7b;padding:24px}
.alerts-channel.channel-whatsapp{border-top-color:#287b60;background:#f8fcfa}
.channel-whatsapp .section-icon{color:#216556}.channel-sms{background:#f6f9fd}
.alerts-channel h3{font-size:20px}.alerts-channel p{font-size:15px}
.home-publications{border-top-color:#315e7b}.home-publications .notice-item{margin-top:18px;padding:20px;border:1px solid #bfd0dc;border-left:4px solid #698e9f;border-radius:12px;background:#fafcfd}
.home-publications .notice-item h3{font-size:18px;line-height:1.45;margin-top:0}
.notice-summary{font-size:15px;line-height:1.65}
.quota-home>.small,.volunteer-invite>.small,.alerts-signup>.small{font-size:13px;line-height:1.65}
@media(max-width:760px){.quota-home>.lookup-options,.volunteer-actions{grid-template-columns:1fr}.quota-home .lookup-option{padding:18px}.action-hub .action-card{padding:18px;min-height:105px}.volunteer-invite{padding:20px}.quota-home>h2,.action-heading h2,.alerts-signup-heading h2,.home-publications h2{font-size:22px}.home-publications>.row{align-items:flex-start}}
@media(max-width:400px){.quota-home .lookup-fields button{width:100%}.volunteer-actions button{padding:16px;gap:12px}.volunteer-actions strong{font-size:17px}}

.compact-risk .row h2{margin-bottom:0}.compact-risk .risk-action-grid{margin:18px 0;gap:16px}.compact-risk .risk-action{padding:18px 20px;min-height:100px}.compact-risk .risk-action strong{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:19px}.compact-risk .risk-action strong span{font-size:22px;color:inherit}.compact-risk .risk-action>span{display:block;font-size:14px;margin-top:8px}.risk-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.risk-bottom .risk-call{margin:0;white-space:nowrap;flex-shrink:0}.risk-bottom>.small{font-size:12px;max-width:520px}@media(max-width:700px){.risk-bottom{flex-direction:column;align-items:flex-start}.compact-risk .risk-action{padding:17px}.compact-risk .risk-action strong{font-size:18px}}
