.service-feedback-callout{padding:20px;margin-top:22px;background:#e9eedf;border-radius:12px}.resolution-options{border:0;padding:0;margin:0}.resolution-options legend{font-weight:600;margin-bottom:10px}.resolution-options label{display:flex;align-items:center;gap:10px;padding:12px;background:#fff;border:1px solid #d4dccc;border-radius:8px;margin:7px 0}.resolution-options input{width:20px;min-height:20px}.qr-form details label{margin:15px 0}.qr-form summary,.feedback-method summary{cursor:pointer;padding:12px 0;font-weight:600}.heat-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:20px;align-items:start}.heat-layout #satisfaction-map{height:470px;border:1px solid #c9d5cb;border-radius:12px;background:#e4ece4}.heat-legend{display:flex;gap:14px;flex-wrap:wrap;padding:14px 0;font-size:13px}.heat-legend span{display:flex;align-items:center;gap:5px}.heat-legend i{width:16px;height:16px;border-radius:4px;display:inline-block}.heat-score{font-size:46px;font-weight:700;color:#176659}.feedback-distribution>div{display:flex;align-items:center;gap:8px;font-size:13px;margin:12px 0}.feedback-distribution progress{width:100%;min-width:30px;height:12px;accent-color:#176659}.feedback-distribution span{white-space:nowrap}.satisfaction-panel{margin-top:24px}.satisfaction-panel h2{margin-top:0}.feedback-method{margin-top:18px;font-size:14px;line-height:1.7}.mayor-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.mayor-metrics article{padding:20px;border:1px solid #d7ddce;border-radius:12px;background:#fffefa}.mayor-metrics strong{display:block;font-size:30px;margin:12px 0}.mayor-metrics span{font-size:13px}.review-flag{background:#fff0b8;padding:14px;border-radius:10px;margin:12px 0}@media(max-width:800px){.heat-layout{grid-template-columns:1fr}.heat-layout #satisfaction-map{height:360px}.mayor-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.satisfaction-panel .toolbar>*{min-width:0;width:100%}.satisfaction-panel{padding:16px}.satisfaction-panel h2{font-size:25px}}

#satisfaction{scroll-margin-top:105px}@media(max-width:600px){.satisfaction-panel .toolbar{display:flex;flex-direction:column;align-items:stretch}.satisfaction-panel .toolbar>*{width:100%}}
