:root {
  --brand-primary: #1b2233;
  --brand-accent: #c05a2a;
  --brand-logo: none;
  --font-body: "Nanum Gothic", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif;
  --color-paper: #f7f5f1;
  --color-card: #ffffff;
  --color-ink: #1b2233;
  --color-muted: #667085;
  --color-line: #d9dde5;
  --color-soft: #ece7df;
  --color-accent-soft: #f8eadd;
  --color-success-soft: #e6f3e9;
  --color-warning-soft: #fff3d6;
  --color-white: #ffffff;
  --shadow-card: 0 0.35rem 1.4rem rgba(27, 34, 51, 0.08);
  --radius-small: 0.45rem;
  --radius: 0.8rem;
  --radius-large: 1.2rem;
}

* { box-sizing: border-box; }
body { margin: 0; color: var(--color-ink); background: var(--color-paper); font-family: var(--font-body); line-height: 1.55; }
a { color: inherit; }
button, input, select { color: inherit; font: inherit; }
img { max-width: 100%; }
.shell { width: min(100% - 2rem, 76rem); margin-inline: auto; }
.site-header { position: relative; z-index: 10; background: var(--color-card); border-bottom: 1px solid var(--color-line); }
.gnb-primary { display: grid; grid-template-columns: auto minmax(12rem, 1fr) auto; align-items: center; gap: 1.5rem; min-height: 4.8rem; }
.brand { display: inline-flex; align-items: center; gap: 0.55rem; font-size: 1.3rem; font-weight: 900; text-decoration: none; white-space: nowrap; }
.brand-logo { display: inline-block; width: 1.7rem; aspect-ratio: 1; background-image: var(--brand-logo); background-position: center; background-repeat: no-repeat; background-size: contain; border: 0.35rem solid var(--brand-accent); border-radius: 50%; }
.desktop-search, .mobile-search form { display: flex; }
.desktop-search input, .mobile-search input { width: 100%; padding: 0.8rem 1rem; background: var(--color-paper); border: 2px solid var(--brand-primary); border-radius: 999rem 0 0 999rem; }
.desktop-search button, .mobile-search button { padding: 0.8rem 1.15rem; color: var(--color-white); background: var(--brand-primary); border: 0; border-radius: 0 999rem 999rem 0; font-weight: 800; }
.gnb-links { display: flex; gap: 1rem; font-size: 0.9rem; white-space: nowrap; }
.gnb-links a { text-decoration: none; }
.category-nav { display: flex; align-items: stretch; gap: 0.15rem; min-height: 2.8rem; }
.all-categories, .category-menu > a { display: flex; align-items: center; padding: 0.65rem 0.9rem; text-decoration: none; font-weight: 750; }
.all-categories { color: var(--color-white); background: var(--brand-primary); }
.category-menu { position: relative; }
.category-menu ul { position: absolute; top: 100%; left: 0; display: none; width: max-content; margin: 0; padding: 0.45rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius-small); box-shadow: var(--shadow-card); list-style: none; }
.category-menu:hover ul, .category-menu:focus-within ul { display: block; }
.category-menu li a { display: block; padding: 0.55rem 0.8rem; text-decoration: none; white-space: nowrap; }
.category-menu li a:hover, .category-menu li a:focus { background: var(--color-soft); }
.mobile-search, .mobile-category-link { display: none; }
main { width: min(100% - 2rem, 76rem); margin-inline: auto; padding: 2.5rem 0 5rem; }
.hero { padding: clamp(2.8rem, 8vw, 6rem) 0; }
.hero h1 { max-width: 48rem; margin: 0.15em 0; font-size: clamp(2.2rem, 6vw, 4.8rem); line-height: 1.05; letter-spacing: -0.04em; }
.eyebrow, .brand-name { color: var(--brand-accent); font-weight: 900; letter-spacing: 0.04em; }
.home-section { margin-top: 3.5rem; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem; }
.section-heading h2 { margin: 0; }
.section-heading > span { color: var(--color-muted); font-size: 0.9rem; }
.category-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.8rem; }
.category-tiles a { display: grid; gap: 0.25rem; padding: 1.1rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); text-decoration: none; }
.category-tiles span { color: var(--color-muted); font-size: 0.88rem; }
.product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.product-card { min-width: 0; min-inline-size: 0; padding: 0.9rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); box-shadow: var(--shadow-card); }
.product-card > a { min-width: 0; text-decoration: none; }
.product-card img, .image-placeholder { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: var(--color-soft); border-radius: calc(var(--radius) - 0.2rem); }
.product-card h3 { min-width: 0; min-height: 2.9em; margin: 0.3rem 0; font-size: 1rem; line-height: 1.45; overflow-wrap: anywhere; }
.product-card .brand-name { display: block; min-width: 0; margin-top: 0.8rem; font-size: 0.8rem; overflow-wrap: anywhere; }
.card-price { margin-bottom: 0.25rem; }
.card-meta { margin: 0; color: var(--color-muted); font-size: 0.83rem; }
.badge-row { display: flex; flex-wrap: wrap; gap: 0.35rem; margin: 0.65rem 0 0; }
.checkout-badge, .shipping-badge, .active-filters li { display: inline-flex; padding: 0.18rem 0.48rem; background: var(--color-accent-soft); border-radius: 999rem; font-size: 0.76rem; font-weight: 750; }
.merchant-list { display: flex; flex-wrap: wrap; gap: 0.65rem; padding: 0; list-style: none; }
.merchant-list li { padding: 0.65rem 0.9rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: 999rem; }
.marketplace-strip { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; margin-top: 3.5rem; padding: 1.5rem; color: var(--color-white); background: var(--brand-primary); border-radius: var(--radius-large); }
.marketplace-strip h2, .marketplace-strip p { margin: 0; }
.secondary-button, .buy-button, .filter-submit, .pagination a { display: inline-flex; justify-content: center; align-items: center; padding: 0.7rem 1rem; color: var(--color-white); background: var(--brand-accent); border: 0; border-radius: 999rem; font-weight: 800; text-decoration: none; }
.page-heading { margin-bottom: 1.5rem; }
.page-heading h1 { margin: 0; font-size: clamp(1.8rem, 4vw, 3.2rem); }
.category-groups { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.category-groups section { padding: 1.2rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); }
.category-groups h2 { margin-top: 0; }
.category-groups ul { padding-left: 1.1rem; }
.category-groups li a { display: flex; justify-content: space-between; gap: 1rem; }
.catalog-layout { display: grid; grid-template-columns: 15rem minmax(0, 1fr); gap: 1.5rem; align-items: start; }
.catalog-layout > *, .product-grid > *, .product-detail > *, .offer-row > * { min-width: 0; }
.catalog-filters { position: sticky; top: 1rem; padding: 1rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); }
.catalog-filters summary, .catalog-filters legend { font-weight: 850; }
.catalog-filters fieldset { display: grid; gap: 0.45rem; margin: 1rem 0; padding: 0.8rem 0 0; border: 0; border-top: 1px solid var(--color-line); }
.catalog-filters label { display: flex; align-items: center; gap: 0.4rem; }
.filter-links { display: grid; gap: 0.35rem; padding: 0; list-style: none; }
.filter-links a { display: block; padding: 0.35rem 0.5rem; border-radius: var(--radius-small); text-decoration: none; }
.filter-links a[aria-current="true"] { background: var(--color-accent-soft); font-weight: 800; }
.disabled-option { color: var(--color-muted); }
.sort-control { display: grid !important; gap: 0.35rem !important; margin: 1rem 0; font-weight: 800; }
.sort-control select { padding: 0.6rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius-small); }
.filter-submit { width: 100%; }
.active-filters { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0 0 1rem; padding: 0; list-style: none; }
.pagination { display: flex; justify-content: center; align-items: center; gap: 1rem; margin-top: 2rem; }
.breadcrumb { margin-bottom: 1rem; color: var(--color-muted); }
.product-detail { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.2rem; align-items: start; }
.product-summary { min-width: 0; overflow-wrap: anywhere; }
.gallery-main, .image-placeholder.large { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius-large); }
.gallery-thumbnails { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.5rem; margin-top: 0.6rem; }
.gallery-thumbnails button { padding: 0; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius-small); overflow: hidden; }
.gallery-thumbnails img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }
.product-summary h1 { min-width: 0; margin: 0.15rem 0 0.8rem; font-size: clamp(1.8rem, 4vw, 3.2rem); line-height: 1.15; overflow-wrap: anywhere; }
.lowest-offer { display: grid; gap: 0.4rem; margin-top: 2rem; padding: 1.3rem; background: var(--color-card); border: 2px solid var(--brand-accent); border-radius: var(--radius); }
.lowest-offer strong { font-size: 1.8rem; }
.lowest-offer p { margin: 0; color: var(--color-muted); }
.lowest-offer .buy-button { justify-self: start; margin-top: 0.4rem; }
.offer-table { display: grid; gap: 0.7rem; }
.offer-row { display: grid; grid-template-columns: 1.3fr 0.8fr 1fr auto; align-items: center; gap: 1rem; padding: 1rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); }
.offer-row div { display: grid; }
.attributes { display: grid; grid-template-columns: 10rem minmax(0, 1fr); }
.attributes dt, .attributes dd { margin: 0; padding: 0.7rem; border-bottom: 1px solid var(--color-line); overflow-wrap: anywhere; }
.product-reviews { margin-top: 2rem; }
.review-summary { margin: 0; font-size: 1.1rem; font-weight: 850; }
.review-verified-note, .review-empty { margin: 0.35rem 0 0; color: var(--color-muted); }
.review-list { display: grid; gap: 0.8rem; margin: 1rem 0 0; padding: 0; list-style: none; }
.review { padding: 1rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); overflow-wrap: anywhere; }
.review-meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.6rem; margin: 0; color: var(--color-muted); font-size: 0.9rem; }
.review-rating { color: var(--brand-accent); font-size: 1rem; }
.review-body { margin: 0.6rem 0; white-space: pre-line; }
.review-images { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.5rem; margin: 0.6rem 0; }
.review-images img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; background: var(--color-soft); border-radius: var(--radius-small); }
.review-origin, .review-edited { margin: 0.2rem 0 0; padding: 0.35rem 0.6rem; background: var(--color-paper); border-radius: var(--radius-small); color: var(--color-muted); font-size: 0.85rem; }
.stale-offers { margin-top: 1.2rem; padding: 1rem; background: var(--color-warning-soft); border-radius: var(--radius); }
.stale-offers article { padding: 0.7rem 0; }
.affiliate-notice { color: var(--color-muted); font-size: 0.9rem; }
.related-products { margin-top: 3rem; }
.static-page { max-width: 48rem; min-height: 24rem; }
.static-page p { white-space: pre-line; }
.not-found { min-height: 24rem; }
.auth-shell { display: grid; place-items: center; min-height: 34rem; }
.auth-card { width: min(100%, 32rem); padding: clamp(1.4rem, 5vw, 2.4rem); background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius-large); box-shadow: var(--shadow-card); }
.auth-card h1 { margin: 0.15rem 0; font-size: clamp(2rem, 6vw, 3rem); }
.auth-lead, .passwordless-note { color: var(--color-muted); }
.social-login-list, .terms-form { display: grid; gap: 0.75rem; margin-top: 1.5rem; }
.social-login-list { width: min(100%, 336px); margin-inline: auto; }
/* Official Kakao/Naver button images: narrow screens trim only the empty side padding so the
   symbol and label keep their guide size (Naver N logo >= 16px at 48px height). */
.social-login-button { display: flex; justify-content: center; align-items: center; min-height: 48px; border-radius: 8px; overflow: hidden; text-decoration: none; }
.social-login-button > img { display: block; width: 100%; height: 48px; object-fit: cover; }
/* Google light theme: #FFFFFF fill, 1px #747775 inside stroke, #1F1F1F Roboto Medium 14/20. */
.social-login-button.google { gap: 10px; padding: 0 12px; background: #ffffff; border: 1px solid #747775; border-radius: 4px; color: #1f1f1f; font-family: Roboto, "Noto Sans KR", system-ui, sans-serif; font-size: 14px; font-weight: 500; line-height: 20px; }
.google-logo { flex: none; width: 1.25rem; height: 1.25rem; overflow: hidden; }
.google-logo img { display: block; width: 2.5rem; max-width: none; height: 2.5rem; margin: -0.625rem; }
.passwordless-note { margin: 1.5rem 0 0; padding: 1rem; background: var(--color-paper); border-radius: var(--radius-small); }
.terms-form label { display: flex; justify-content: space-between; gap: 1rem; padding: 0.85rem 0; border-bottom: 1px solid var(--color-line); }
.terms-form input { margin-right: 0.45rem; }
.terms-agree-all label { font-weight: 850; border-bottom-width: 0.125rem; }
.terms-notice { margin: 0.45rem 0 0; color: var(--color-muted); font-size: 0.88rem; }
.terms-form a { color: var(--brand-accent); white-space: nowrap; }
.auth-submit { width: 100%; padding: 0.85rem 1rem; color: var(--color-white); background: var(--brand-accent); border: 0; border-radius: 999rem; font-weight: 850; }
.form-error { padding: 0.8rem; color: #8b1d1d; background: #fdecec; border-radius: var(--radius-small); }
.account-details { display: grid; gap: 0.8rem; margin: 1.5rem 0; }
.account-details div { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 1rem; }
.account-details dt { color: var(--color-muted); }
.account-details dd { margin: 0; overflow-wrap: anywhere; }
.seller-shell { display: grid; grid-template-columns: 14rem minmax(0, 1fr); gap: 1.5rem; align-items: start; }
.seller-sidebar, .seller-panel, .status-card, .admin-shell { padding: 1.25rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); }
.seller-sidebar { position: sticky; top: 1rem; }
.seller-sidebar nav { display: grid; gap: 0.35rem; }
.seller-sidebar a { padding: 0.7rem 0.8rem; border-radius: var(--radius-small); text-decoration: none; }
.seller-sidebar a:hover, .seller-sidebar a:focus { background: var(--color-soft); }
.seller-content { display: grid; gap: 1rem; }
.status-card { border-left: 0.35rem solid var(--brand-accent); }
.status-label { margin: 0 0 0.45rem; color: var(--brand-primary); font-size: 1.35rem; font-weight: 900; }
.seller-form { display: grid; gap: 1rem; padding: 1.25rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); }
.seller-form label, .seller-form fieldset { display: grid; gap: 0.35rem; font-weight: 750; }
.seller-form input, .seller-form textarea, .seller-form select, .review-filter select { width: 100%; padding: 0.7rem; background: var(--color-white); border: 1px solid var(--color-line); border-radius: var(--radius-small); }
.seller-form textarea { min-height: 6rem; resize: vertical; }
.seller-form fieldset { margin: 0; padding: 1rem; border: 1px solid var(--color-line); border-radius: var(--radius-small); }
.seller-form.compact { margin-top: 1rem; }
.listing-image-preview { display: grid; grid-template-columns: repeat(auto-fill, minmax(6rem, 1fr)); gap: 0.6rem; }
.listing-image-preview img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: var(--radius-small); border: 1px solid var(--color-line); }
.locked-value { padding: 0.7rem; color: var(--color-muted); background: var(--color-paper); border-radius: var(--radius-small); }
.document-list { display: grid; gap: 0.55rem; padding: 0; list-style: none; }
.document-list li { display: flex; justify-content: space-between; gap: 1rem; padding: 0.7rem; background: var(--color-paper); border-radius: var(--radius-small); }
.document-list time { color: var(--color-muted); }
.admin-shell { display: grid; gap: 1.25rem; }
.connection-card h2 { margin-top: 0; }
.connection-actions, .row-actions { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }
.connection-actions form, .row-actions form { margin: 0; }
.connection-note { color: var(--color-muted); font-size: 0.92rem; }
.guide-steps { margin: 0 0 1rem; padding-left: 1.25rem; display: grid; gap: 0.35rem; }
.table-scroll { overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; background: var(--color-card); }
.data-table th, .data-table td { padding: 0.6rem; border-bottom: 1px solid var(--color-line); text-align: left; vertical-align: middle; }
.data-table tr.is-disabled { color: var(--color-muted); background: var(--color-soft); }
.browse-thumbnail { width: 3rem; height: 3rem; object-fit: cover; border-radius: var(--radius-small); }
.purchase-notice { margin-top: 0.75rem; font-size: 0.9rem; color: var(--color-muted); }
.detail-html { overflow-wrap: anywhere; }
.detail-html img { max-width: 100%; height: auto; }
.detail-html table { max-width: 100%; border-collapse: collapse; }
.detail-html td, .detail-html th { border: 1px solid var(--color-line); padding: 0.4rem; }
.review-filter { display: flex; align-items: end; gap: 0.7rem; }
.review-list { display: grid; gap: 0.7rem; }
.review-list article { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem; background: var(--color-paper); border-radius: var(--radius-small); }
.review-list article div { display: flex; flex-wrap: wrap; gap: 0.6rem; }
.review-actions { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem; }
.review-actions form { display: grid; align-content: start; gap: 0.7rem; padding: 1rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); }
.review-actions textarea { min-height: 7rem; padding: 0.7rem; resize: vertical; }
.danger-button { padding: 0.85rem 1rem; color: var(--color-white); background: #8b1d1d; border: 0; border-radius: 999rem; font-weight: 850; }
.site-footer { color: var(--color-white); background: var(--brand-primary); }
.footer-grid { display: grid; grid-template-columns: 1.2fr 1.2fr 0.8fr; gap: 2rem; padding-block: 2.5rem; }
.footer-grid h2 { font-size: 1rem; }
.company-info { margin: 0; }
.company-info div { display: grid; grid-template-columns: 8rem minmax(0, 1fr); gap: 0.6rem; }
.company-info dt { color: var(--color-soft); }
.company-info dd { margin: 0; overflow-wrap: anywhere; }
.marketplace-notice, .footer-note { color: var(--color-soft); font-size: 0.82rem; }
.footer-note { margin: 0; padding: 1rem; text-align: center; border-top: 1px solid var(--color-muted); }
.sr-only { position: absolute; width: 0.0625rem; height: 0.0625rem; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

@media (max-width: 768px) {
  .shell, main { width: min(100% - 1rem, 76rem); }
  .gnb-primary { grid-template-columns: minmax(0, 1fr) auto; min-height: 3.8rem; gap: 0.6rem; }
  .brand { overflow: hidden; text-overflow: ellipsis; }
  .brand-logo { width: 1.35rem; }
  .desktop-search, .gnb-links, .category-nav { display: none; }
  .mobile-search { display: block; position: relative; }
  .mobile-search summary { padding: 0.45rem 0.7rem; font-size: 1.45rem; cursor: pointer; list-style: none; }
  .mobile-search form { position: absolute; top: 100%; right: 0; width: min(88vw, 26rem); padding: 0.6rem; background: var(--color-card); border: 1px solid var(--color-line); border-radius: var(--radius); box-shadow: var(--shadow-card); }
  .mobile-category-link { display: flex; gap: 0.45rem; align-items: center; padding: 0.65rem 1rem; color: var(--color-white); background: var(--brand-primary); text-decoration: none; font-weight: 800; }
  main { padding-top: 1.5rem; }
  .hero { padding: 2.5rem 0; }
  .category-tiles, .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; }
  .product-card { padding: 0.65rem; }
  .product-card h3 { font-size: 0.9rem; }
  .category-groups, .product-detail, .footer-grid, .seller-shell, .review-actions { grid-template-columns: minmax(0, 1fr); }
  .seller-sidebar { position: static; }
  .catalog-layout { display: block; }
  .catalog-filters { position: static; margin-bottom: 1rem; }
  .catalog-filters > details:not([open]) + form { display: none; }
  .offer-row { grid-template-columns: 1fr; align-items: stretch; }
  .offer-row .buy-button { width: 100%; }
  .attributes { grid-template-columns: 35% minmax(0, 1fr); }
  .review-images { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .marketplace-strip { align-items: flex-start; flex-direction: column; }
  .company-info div { grid-template-columns: 7rem minmax(0, 1fr); }
}

/* ORDER-058 seller apply: 3-step progress, type cards, digit boxes and address search. */
.seller-form [hidden] { display: none !important; }
.apply-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem; margin: 0 0 1rem; padding: 0; list-style: none; }
.apply-steps li { display: flex; gap: 0.45rem; align-items: center; padding: 0.6rem 0.75rem; color: var(--color-muted); background: var(--color-card); border: 1px solid var(--color-line); border-top: 0.25rem solid var(--color-line); border-radius: var(--radius-small); font-weight: 800; }
.apply-steps li span { display: inline-grid; place-items: center; width: 1.6rem; height: 1.6rem; color: var(--color-white); background: var(--color-muted); border-radius: 999rem; font-size: 0.85rem; }
.apply-steps li.is-done { color: var(--color-ink); border-top-color: var(--brand-primary); }
.apply-steps li.is-done span { background: var(--brand-primary); }
.apply-steps li[aria-current="step"] { color: var(--color-ink); border-top-color: var(--brand-accent); }
.apply-steps li[aria-current="step"] span { background: var(--brand-accent); }
.apply-step { display: grid; gap: 1rem; }
.apply-step h2 { margin: 0; font-size: 1.1rem; }
.form-notice { padding: 0.8rem; background: var(--color-warning-soft); border-radius: var(--radius-small); }
.kind-options { grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); }
.kind-options legend { padding: 0 0.25rem; }
.seller-form .kind-option { display: flex; gap: 0.5rem; align-items: center; padding: 0.8rem; background: var(--color-white); border: 1px solid var(--color-line); border-radius: var(--radius-small); cursor: pointer; }
.seller-form .kind-option input { width: auto; margin: 0; }
.seller-form .kind-option:has(input:checked) { background: var(--color-accent-soft); border-color: var(--brand-accent); }
.seller-form .kind-option.is-disabled { color: var(--color-muted); background: var(--color-paper); cursor: not-allowed; }
.kind-option em { margin-left: auto; padding: 0.1rem 0.45rem; color: var(--color-muted); background: var(--color-soft); border-radius: 999rem; font-size: 0.8rem; font-style: normal; }
.kind-options .field-note { grid-column: 1 / -1; }
.field-group { display: grid; gap: 0.35rem; }
.field-label { font-weight: 750; }
.field-note { margin: 0; color: var(--color-muted); font-size: 0.88rem; font-weight: 400; }
.digit-boxes, .postcode-row { display: flex; gap: 0.4rem; align-items: center; }
.seller-form .digit-boxes input { width: auto; min-width: 0; flex: 3 1 0; text-align: center; letter-spacing: 0.08em; }
.seller-form .digit-boxes input[maxlength="2"] { flex-grow: 2; }
.seller-form .digit-boxes input[maxlength="5"] { flex-grow: 5; }
.seller-form .digit-boxes input[maxlength="6"] { flex-grow: 6; }
.seller-form .digit-boxes input[maxlength="7"] { flex-grow: 7; }
.seller-form .postcode-row input { flex: 0 1 9rem; }
.inline-button { flex: none; padding: 0.7rem 0.9rem; color: var(--brand-primary); background: var(--color-white); border: 1px solid var(--brand-primary); border-radius: var(--radius-small); font-weight: 800; cursor: pointer; }
.check-message { margin: 0; padding: 0.6rem 0.8rem; border-radius: var(--radius-small); }
.check-message p { margin: 0; }
.check-message.is-ok { background: var(--color-success-soft); }
.check-message.is-error { color: #8b1d1d; background: #fdecec; }
.apply-nav { display: flex; gap: 0.6rem; align-items: center; }
.apply-nav .auth-submit { flex: 1; }
