/* Isolated public register and verification pages; no marketing-page dependencies. */
.public-register-shell { margin: 0; min-width: 0; background: #f4f7f6; color: #183b33; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 16px; line-height: 1.55; }
.public-register-shell *, .public-register-shell *::before, .public-register-shell *::after { box-sizing: border-box; }
.public-register-shell a { color: #075f4c; text-underline-offset: .2em; }
.public-register-shell a:focus-visible, .public-register-shell button:focus-visible, .public-register-shell input:focus-visible { outline: 3px solid #cc7b00; outline-offset: 3px; }
.public-register-shell .public-register-header { border-bottom: 1px solid #d7e2dd; background: #fff; }
.public-register-shell .public-register-header-inner { max-width: 1120px; margin: auto; padding: 14px 24px; display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.public-register-shell .register-brand { order: 0; color: #064839; font-size: 28px; font-weight: 800; letter-spacing: -.06em; text-decoration: none; display: inline-flex; align-items: center; min-height: 44px; }
.public-register-shell .register-language { order: 2; display: inline-flex; align-items: center; min-height: 44px; padding: 8px; font-weight: 600; }
.public-register-shell .public-register-nav { order: 1; margin-left: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.public-register-shell .public-register-nav a { min-height: 44px; display: inline-flex; align-items: center; padding: 10px 12px; border-radius: 6px; text-decoration: none; font-weight: 600; }
.public-register-shell .public-register-nav a[aria-current="page"] { color: #054737; background: #e8f2ec; }
.public-register-shell .public-register-nav a:hover { background: #f0f5f2; }
.public-register-shell .public-register-main { display: block; width: min(100%, 1120px); max-width: 1120px; padding: 42px 24px 52px; margin: 0 auto; min-width: 0; }
.public-register-shell .register-page-head { max-width: 780px; margin: 0 0 28px; }
.public-register-shell .register-eyebrow { color: #396454; font-size: 12px; font-weight: 750; letter-spacing: .12em; margin: 0 0 10px; }
.public-register-shell h1 { font-size: clamp(29px, 4vw, 42px); line-height: 1.16; letter-spacing: -.035em; margin: 0 0 14px; color: #0b3e31; }
.public-register-shell h2 { font-size: 23px; line-height: 1.3; letter-spacing: -.02em; margin: 0 0 10px; }
.public-register-shell h3 { font-size: 17px; line-height: 1.4; margin: 24px 0 8px; }
.public-register-shell p { margin: 0 0 14px; }
.public-register-shell .register-page-head > p:last-child { color: #486157; font-size: 17px; }
.public-register-shell .register-search { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; margin: 0 0 28px; padding: 22px; border: 1px solid #d7e2dd; border-radius: 14px; background: #fff; }
.public-register-shell .register-search-field { flex: 1 1 340px; min-width: 0; }
.public-register-shell .register-search label { display: block; margin: 0 0 8px; font-weight: 650; }
.public-register-shell .register-search input:not([type="hidden"]) { width: 100%; min-width: 0; height: 48px; padding: 10px 12px; border: 1px solid #8ca59a; border-radius: 7px; background: #fff; color: #183b33; font: inherit; font-size: 16px; }
.public-register-shell .btn { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; max-width: 100%; padding: 11px 19px; border-radius: 7px; font-size: 16px; font-weight: 650; line-height: 1.4; text-decoration: none; white-space: normal; text-align: center; }
.public-register-shell .btn-primary { background: #075e49; border: 1px solid #075e49; color: #fff; }
.public-register-shell .btn-primary:hover { background: #064d3d; }
.public-register-shell .register-search-help { flex: 1 1 100%; color: #52675f; font-size: 14px; margin: 0; }
.public-register-shell .register-clear { min-height: 48px; display: inline-flex; align-items: center; padding: 10px; }
.public-register-shell .register-result-count { color: #52675f; font-size: 14px; }
.public-register-shell .register-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.public-register-shell .register-card { min-width: 0; overflow-wrap: anywhere; background: #fff; border: 1px solid #d7e2dd; border-radius: 14px; }
.public-register-shell .register-directory-card, .public-register-shell .register-record-body { padding: 26px; }
.public-register-shell .register-company-heading { display: flex; align-items: flex-start; flex-wrap: wrap; justify-content: space-between; gap: 10px; margin: 0 0 20px; }
.public-register-shell .register-company-heading h2 { flex: 1 1 210px; min-width: 0; margin: 0; }
.public-register-shell .register-badge { display: inline-block; padding: 5px 10px; border: 1px solid #d0dcd6; border-radius: 6px; background: #edf1ee; color: #40594d; font-size: 13px; font-weight: 750; line-height: 1.4; }
.public-register-shell .register-badge-success { background: #e3f2e9; color: #145432; border-color: #c4dfce; }
.public-register-shell .register-badge-warning { background: #fff2d5; color: #704900; border-color: #e8d3a2; }
.public-register-shell .register-badge-danger { background: #ffe9e8; color: #902922; border-color: #e6c7c4; }
.public-register-shell .register-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 24px; margin: 0; }
.public-register-shell .register-facts > div { min-width: 0; }
.public-register-shell .register-facts dt { color: #52675f; font-size: 13px; margin: 0 0 4px; }
.public-register-shell .register-facts dd { color: #183b33; font-weight: 600; margin: 0; overflow-wrap: anywhere; }
.public-register-shell .register-directory-card .register-facts { grid-template-columns: minmax(0, 1fr); gap: 13px; }
.public-register-shell .register-record-title { margin-top: 24px; }
.public-register-shell .register-preserve-lines { white-space: pre-line; }
.public-register-shell .register-scope-note { padding: 16px; background: #f5f8f5; border-left: 3px solid #658878; border-radius: 0 6px 6px 0; margin: 20px 0; overflow-wrap: anywhere; }
.public-register-shell .register-scope-note strong { display: block; margin-bottom: 6px; }
.public-register-shell .register-scope-note p:last-child { margin-bottom: 0; }
.public-register-shell .register-open-record { margin-top: 2px; }
.public-register-shell .register-status-heading { padding: 24px 26px; border-radius: 13px 13px 0 0; border-bottom: 1px solid #d7e2dd; background: #edf1ee; color: #40594d; }
.public-register-shell .register-status-heading h2 { color: inherit; margin: 6px 0 10px; }
.public-register-shell .register-status-heading p { margin: 0; }
.public-register-shell .register-status-label { font-size: 12px; font-weight: 750; letter-spacing: .08em; }
.public-register-shell .register-status-success { background: #e3f2e9; color: #145432; }
.public-register-shell .register-status-warning { background: #fff2d5; color: #704900; }
.public-register-shell .register-status-danger { background: #ffe9e8; color: #902922; }
.public-register-shell .register-scope-items ul { padding: 0; margin: 16px 0; list-style: none; }
.public-register-shell .register-scope-items li { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: flex-start; padding: 14px 0; border-top: 1px solid #e0e8e3; }
.public-register-shell .register-scope-items li > span:first-child { flex: 1 1 220px; min-width: 0; }
.public-register-shell .register-supporting-note { margin: 28px 0 0; color: #52675f; font-size: 14px; max-width: 800px; overflow-wrap: anywhere; }
.public-register-shell .register-empty { background: #fff; border: 1px solid #d7e2dd; border-radius: 14px; padding: 30px; max-width: 800px; }
.public-register-shell .register-empty p { color: #486157; }
.public-register-shell .public-register-footer { max-width: 1120px; margin: 0 auto; padding: 22px 24px 30px; display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; color: #52675f; font-size: 13px; border-top: 1px solid #d7e2dd; }
@media (max-width: 700px) {
  .public-register-shell .public-register-header-inner { padding: 10px 16px; gap: 4px 14px; }
  .public-register-shell .register-language { order: 1; margin-left: auto; }
  .public-register-shell .public-register-nav { order: 2; flex: 1 1 100%; margin-left: 0; gap: 2px 4px; }
  .public-register-shell .public-register-nav a { padding: 10px 8px; font-size: 14px; }
  .public-register-shell .public-register-main { padding: 28px 16px 36px; }
  .public-register-shell .register-page-head { margin-bottom: 22px; }
  .public-register-shell .register-search { padding: 16px; gap: 12px; }
  .public-register-shell .register-search .btn { flex: 1 1 100%; }
  .public-register-shell .register-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .public-register-shell .register-record-body, .public-register-shell .register-directory-card { padding: 20px; }
  .public-register-shell .register-status-heading { padding: 20px; }
  .public-register-shell .register-facts { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .public-register-shell .register-empty { padding: 22px; }
  .public-register-shell .public-register-footer { margin: 0 16px; padding: 20px 0; }
}
