/* Public page geometry only: typography, palette, controls and uploads use portal assets. */
#trc-complete .card-welcome .public-contact-intro{margin-bottom:0}
#trc-complete .contact-order-entry{padding:18px;margin:0 0 18px;border-radius:10px;background:color-mix(in srgb,var(--brand-primary) 7%,white)}
#trc-complete .contact-order-entry p{margin:0 0 14px;line-height:1.6}
#trc-complete .contact-category-grid+.contact-order-entry{margin:18px 0 0}
#trc-complete .contact-order-entry h3{margin:0 0 8px}
#trc-complete .contact-compose{border:0;padding:0;margin:0;min-width:0}
/* The gated fieldset needs its own spacing; the outer form's grid stops here. */
#trc-complete .contact-compose:not([hidden]){display:grid;gap:24px}
#trc-complete .contact-compose>.report-send{padding-top:24px}
/* Shared four-category picker: a compact 2x2 grid, followed by only the chosen topics. */
#trc-complete .contact-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#trc-complete .contact-category{display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:110px;padding:18px;text-align:center;white-space:normal;font-weight:600}
#trc-complete .contact-category>.portal-icon{width:24px;height:24px}
#trc-complete .contact-category[aria-expanded=true]{border-color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 8%,white)}
#trc-complete .contact-topic-options{border:0;padding:0;margin:24px 0 0;min-width:0}
#trc-complete .contact-topic-options legend{font-weight:600;padding:0;margin-bottom:12px}
#trc-complete .contact-topic-option{display:flex;align-items:center;gap:12px;border:1px solid var(--p-line);border-radius:8px;padding:12px 14px;margin:8px 0;cursor:pointer;font-weight:400}
#trc-complete .contact-topic-option:hover,#trc-complete .contact-topic-option:has(:checked){border-color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 5%,white)}
/* Draw the radio explicitly: native accent-color may add a dark contrast ring.
 * Keep the real input for keyboard navigation, labels and form semantics. */
#trc-complete .contact-topic-option input[type=radio]{appearance:none;-webkit-appearance:none;display:block;width:18px;height:18px;min-height:0;flex:0 0 18px;padding:0;margin:0;border:2px solid var(--p-line);border-radius:50%;background:#fff;box-shadow:none;cursor:pointer}
#trc-complete .contact-topic-option input[type=radio]:checked{border-color:var(--brand-primary);background:radial-gradient(circle,var(--brand-primary) 0 4px,#fff 4.5px)}
/* Show a branded focus indicator for keyboard use, without a second ring on pointer clicks. */
#trc-complete .contact-topic-option input[type=radio]:focus{outline:none;box-shadow:none}
#trc-complete .contact-topic-option:has(input:focus-visible){outline:2px solid var(--brand-primary);outline-offset:2px}
/* Let the system render accessible selection colors in forced-colors mode. */
@media(forced-colors:active){#trc-complete .contact-topic-option input[type=radio],#trc-complete .contact-topic-option input[type=radio]:checked{appearance:auto;-webkit-appearance:auto;background:revert;border:revert;accent-color:auto}#trc-complete .contact-topic-option:has(input:focus-visible){outline-color:Highlight}}
@media(max-width:400px){#trc-complete .contact-category{padding:12px 8px;font-size:14px;min-height:104px}}
#trc-complete.public-contact{min-height:100dvh}
#trc-complete .public-contact-content{max-width:840px;margin:32px auto 0}
#trc-complete .public-contact-welcome{padding:32px;margin-bottom:24px}
#trc-complete .public-contact-welcome .public-contact-paths{margin-bottom:0}
#trc-complete.public-contact .portal-shop-footer{padding-top:22px}
#trc-complete .public-contact-intro{margin-bottom:28px}
#trc-complete .public-contact-intro h1{font-size:clamp(28px,4vw,38px);margin:8px 0 14px}
#trc-complete .public-contact-intro p{line-height:1.6}
#trc-complete .public-contact-paths{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}
#trc-complete .public-contact-paths>a{padding:20px;align-items:flex-start;text-align:left;white-space:normal}
#trc-complete .public-contact-paths strong,#trc-complete .public-contact-paths small{display:block}
#trc-complete .public-contact-paths small{font-size:13px;font-weight:400;margin-top:8px;color:var(--p-muted)}
#trc-complete .public-contact-paths [aria-current=page]{border-color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 8%,white)}
#trc-complete .public-contact-panel{padding:32px}
#trc-complete .public-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
#trc-complete .public-contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#trc-complete .public-contact-fallback{padding-top:22px;text-align:center}
#trc-complete .public-contact-panel .report-step:first-child{padding-top:0;border-top:0}
#trc-complete .public-contact-panel .report-form{max-width:none}
#trc-complete .public-contact-panel .report-advice .action-link{align-self:flex-start}
@media(max-width:650px){#trc-complete .public-contact-welcome{padding:22px 18px}#trc-complete.public-contact .public-contact-content{margin-bottom:0}}
@media(max-width:650px){#trc-complete .public-contact-content{margin:24px auto}#trc-complete .public-contact-paths,#trc-complete .public-contact-fields{grid-template-columns:1fr}#trc-complete .public-contact-panel{padding:22px 18px}#trc-complete .public-contact-paths>a{padding:16px}}
