[hidden]{display:none!important}
.need-selector{border:0;margin:6px 0 0;padding:0}
.need-selector legend{font-weight:800;color:#101833;margin-bottom:4px}
.field-hint{margin:0 0 14px;color:#6f626f;font-size:.92rem}
.need-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.request-page form .need-chip{border:1px solid #e8cfc2;border-radius:16px;padding:13px 12px;background:#fffaf7;color:#1b2340;box-shadow:none;font:700 .86rem/1.2 inherit;text-align:left;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.request-page form .need-chip:hover,.request-page form .need-chip:focus-visible{transform:translateY(-2px);border-color:#bd6753;box-shadow:0 10px 22px rgba(119,64,54,.13)}
.request-page form .need-chip[aria-pressed="true"]{color:#fff;background:linear-gradient(135deg,#a94f40,#c8755f);border-color:#a94f40;box-shadow:0 9px 22px rgba(169,79,64,.25)}
.request-page form .need-chip[aria-pressed="true"]::before{content:"✓";display:inline-block;margin-right:7px}
.selection-error{min-height:1.2em;margin:8px 0 0;color:#9b372c;font-weight:700;font-size:.88rem}
.suggestion-preview{margin:4px 0 10px;padding:16px 18px;border:1px solid #ecd8c8;border-left:4px solid #c56d58;border-radius:16px;background:linear-gradient(135deg,#fffaf6,#f8efea)}
.suggestion-preview span,.confirmation-summary span{display:block;color:#ad5543;font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.suggestion-preview p{margin:6px 0 0;color:#1a2341;font-weight:700}
.optional{font-weight:500;color:#81737f}
.relief-confirmation{grid-column:2;padding:34px;border:1px solid #ead4c8;border-radius:28px;background:linear-gradient(145deg,#fff,#fff8f3);box-shadow:0 22px 55px rgba(73,43,53,.13)}
.relief-confirmation h2{margin:.2em 0;font-size:clamp(2rem,4vw,3.4rem);color:#111936}
.relief-confirmation>p{color:#655765}
.confirmation-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}
.confirmation-summary>div{padding:18px;border-radius:18px;background:#f8eee8}
.confirmation-summary ul{margin:10px 0 0;padding-left:20px;color:#202844}
.confirmation-summary li+li{margin-top:6px}
.confirmation-note{padding-top:16px;border-top:1px solid #ead8cf}
.request-page .secondary-action{border:1px solid #b65b49;border-radius:999px;padding:13px 20px;background:transparent;color:#9f493b;font-weight:800}
.request-page .secondary-action:hover{background:#fff2ec}
.guided-submit{margin-top:3px}
@media(max-width:900px){.relief-confirmation{grid-column:1}}
@media(max-width:760px){.need-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.confirmation-summary{grid-template-columns:1fr}.relief-confirmation{padding:24px}}
@media(max-width:440px){.need-grid{grid-template-columns:1fr}}

.request-reference{margin-top:16px;padding:14px 16px;border:1px solid rgba(23,34,58,.12);border-radius:14px;background:rgba(255,255,255,.82);display:grid;gap:4px}
.request-reference span,.request-reference small{font-size:.78rem;color:#6d6570}.request-reference strong{font-size:1.05rem;color:#17223a;letter-spacing:.04em}
