.customs-shell { width: min(1040px, calc(100% - 32px)); margin: 0 auto; padding: 64px 0 88px; }
.customs-hero { max-width: 780px; margin-bottom: 32px; }
.customs-hero h1 { margin: 0; font: clamp(42px, 7vw, 72px)/1 var(--font-heading); letter-spacing: -.045em; }
.customs-hero > p:last-child { max-width: 680px; color: var(--muted); font-size: 18px; line-height: 1.65; }
.customs-about a { color: var(--color-china-red); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.customs-about a:hover { color: var(--color-china-red-hover); }
.customs-app { max-width: 820px; min-height: 360px; }
.customs-search label { display: block; margin-bottom: 9px; font-weight: 800; }
.customs-search-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.customs-search-row input { min-width: 0; min-height: 52px; padding: 0 16px; border: 1px solid var(--line); border-radius: var(--radius-md); font: inherit; }
.customs-results { display: grid; gap: 8px; margin-top: 16px; }
.customs-result-button { width: 100%; display: grid; gap: 4px; padding: 15px; text-align: left; border: 1px solid var(--line); border-radius: var(--radius-md); background: white; cursor: pointer; }
.customs-result-button:hover, .customs-result-button:focus-visible { border-color: var(--color-china-red); background: var(--green-soft); }
.customs-result-button small { color: var(--muted); }
.customs-suggestions, .customs-categories { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--line); }
.customs-suggestions h2, .customs-categories h2 { margin: 0 0 13px; font-size: 16px; }
.customs-chip-grid, .customs-categories > div { display: flex; flex-wrap: wrap; gap: 8px; }
.customs-chip-grid button, .customs-categories a { padding: 9px 12px; color: var(--ink); border: 1px solid var(--line); border-radius: 999px; background: white; text-decoration: none; cursor: pointer; }
.customs-flow-heading h2 { margin: 0 0 8px; font-size: clamp(27px, 4vw, 38px); }
.customs-progress { color: var(--muted); font-size: 13px; font-weight: 750; }
.customs-question { display: grid; gap: 16px; margin-top: 24px; }
.customs-question label { font-size: 18px; font-weight: 800; }
.customs-question input[type="text"], .customs-question input[type="number"], .customs-question select, .customs-question textarea { width: 100%; min-height: 50px; padding: 12px; border: 1px solid var(--line); border-radius: var(--radius-md); }
.customs-options { display: grid; gap: 9px; }
.customs-option { display: flex; gap: 10px; padding: 13px; border: 1px solid var(--line); border-radius: var(--radius-md); }
.customs-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.customs-review { display: grid; gap: 8px; margin: 22px 0; }
.customs-review div { display: flex; justify-content: space-between; gap: 20px; padding: 12px; background: var(--color-surface-muted); border-radius: var(--radius-md); }
.customs-status { margin: 18px 0; padding: 20px; border-radius: var(--radius-lg); border: 1px solid var(--line); }
.customs-status--prohibited { background: var(--red-soft); }
.customs-status--restricted, .customs-status--declare, .customs-status--manual_verification { background: var(--amber-soft); }
.customs-status--generally_allowed { background: var(--color-success-soft); }
.customs-status h2 { margin: 6px 0 8px; }
.customs-detail-list { display: grid; gap: 16px; }
.customs-detail-list h3 { margin: 0 0 7px; font-size: 16px; }
.customs-sources { overflow-wrap: anywhere; }
.customs-feedback { margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--line); }
.customs-feedback textarea { width: 100%; min-height: 90px; margin: 8px 0; padding: 10px; }
@media (max-width: 600px) { .customs-shell { width: min(100% - 20px, 620px); padding-top: 34px; } .customs-search-row { grid-template-columns: 1fr; } .customs-search-row .button { width: 100%; } .customs-review div { display: grid; gap: 4px; } }
