/* COMM-1B1: full-page records under existing GreenCore semantic themes. */
.company-profile { display: grid; gap: 20px; min-width: 0; max-width: 1180px; margin-inline: auto; }
.company-profile > *, .company-profile article > * { min-width: 0; }
.company-profile h1 { font-size: clamp(1.6rem, 3vw, 2rem); margin: 6px 0 12px; overflow-wrap: anywhere; }
.company-profile h2 { font-size: 1.2rem; margin: 0 0 12px; }
.company-profile h3 { font-size: 1.05rem; margin: 0; overflow-wrap: anywhere; }
.company-profile p { color: var(--gc-muted); line-height: 1.55; overflow-wrap: anywhere; }
.company-profile button, .company-profile a { min-height: 44px; min-width: 44px; }
.company-profile button { height: auto; white-space: normal; }
.company-back { justify-self: start; }
.company-header, .company-section-head, .company-record-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.company-header > div { flex: 1 1 280px; min-width: 0; }
.company-identity-line { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.company-contact-strip { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; padding: 20px; border: 1px solid var(--gc-border); border-radius: var(--gc-radius-md); background: var(--gc-surface); }
.company-contact-strip > div { min-width: 0; display: grid; gap: 6px; overflow-wrap: anywhere; }
.company-contact-strip span { color: var(--gc-muted); font-size: .85rem; }
.company-overview-grid, .company-record-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.company-summary, .company-record, .company-empty { padding: 22px; }
.company-record { display: grid; align-content: start; gap: 12px; }
.company-record p { margin: 0; }
.company-record > button { justify-self: start; }
.company-profile dl { display: grid; gap: 12px; margin: 12px 0 0; }
.company-profile dt { color: var(--gc-muted); font-size: .85rem; }
.company-profile dd { margin: 4px 0 0; overflow-wrap: anywhere; }
.company-profile address { font-style: normal; line-height: 1.7; overflow-wrap: anywhere; }
.company-tabs { display: flex; flex-wrap: wrap; gap: 4px; padding: 4px; background: var(--gc-surface); border: 1px solid var(--gc-border); border-radius: var(--gc-radius-md); }
.company-tabs button { flex: 1 1 max-content; word-break: normal; overflow-wrap: normal; border: 0; border-radius: var(--gc-radius-sm); padding: 10px 12px; font: inherit; font-weight: 600; background: transparent; color: var(--gc-text); cursor: pointer; }
.company-tabs [aria-selected='true'] { background: var(--gc-brand-soft); box-shadow: inset 0 -3px 0 var(--gc-text); }
.company-profile .gc-status { color: var(--gc-text); white-space: normal; opacity: 1; }
.company-primary { font-size: .85rem; color: var(--gc-text); font-weight: 700; }
.company-feedback { padding: 16px; background: var(--gc-surface); border: 1px solid var(--gc-danger); border-radius: var(--gc-radius-md); margin-bottom: 16px; }
.company-notice { color: var(--gc-text) !important; }
.company-section-head { margin-bottom: 16px; }
.company-editor { width: min(540px, 100vw); }
.company-editor h2 { font-size: 1.2rem; margin: 0; }
.company-editor .drawer-head { flex-wrap: wrap; }
.company-editor .drawer-head h2 { min-width: 0; flex: 1 1 200px; overflow-wrap: anywhere; }
.company-editor .drawer-head > button { margin-left: auto; }
.company-field { display: grid; gap: 7px; }
.company-editor fieldset { border: 0; margin: 0; padding: 0; min-width: 0; display: grid; gap: 14px; }
.company-editor .company-choice-group { border: 1px solid var(--gc-muted); border-radius: var(--gc-radius-sm); padding: 12px; gap: 4px; }
.company-editor legend { font-weight: 600; padding-inline: 4px; }
.company-editor .company-check { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; }
.company-editor .company-check input { width: 20px; height: 20px; min-height: 20px; flex: 0 0 20px; margin: 0; accent-color: var(--gc-brand); }
.company-editor input:not([type='checkbox']), .company-editor select { min-height: 44px; height: auto; min-width: 0; width: 100%; box-sizing: border-box; padding: 12px; font: inherit; color: var(--gc-text); background: var(--gc-surface); border: 1px solid var(--gc-muted); border-radius: var(--gc-radius-sm); }
.company-editor .company-check input { padding: 0; border-color: var(--gc-muted); }
.company-editor input:focus-visible, .company-editor select:focus-visible { outline: 2px solid var(--gc-text); outline-offset: 2px; }
.company-editor textarea { min-height: 100px; resize: vertical; min-width: 0; width: 100%; box-sizing: border-box; padding: 12px; font: inherit; color: var(--gc-text); background: var(--gc-surface); border: 1px solid var(--gc-muted); border-radius: var(--gc-radius-sm); }
.company-editor textarea:focus-visible { outline: 2px solid var(--gc-text); outline-offset: 2px; }
.company-note-filters { display: flex; flex-wrap: wrap; gap: 12px; margin-block: 16px; }
.company-note-filters label { display: grid; gap: 6px; flex: 1 1 180px; min-width: 0; }
.company-note-filters input, .company-note-filters select { min-height: 44px; width: 100%; min-width: 0; box-sizing: border-box; font: inherit; padding: 10px; color: var(--gc-text); background: var(--gc-surface); border: 1px solid var(--gc-muted); border-radius: var(--gc-radius-sm); }
.company-note-body { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.55; margin-block: 16px; }
.company-editor button, .company-editor summary { min-height: 44px; white-space: normal; height: auto; }
.company-form-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.company-field-help { color: var(--gc-muted); font-size: .85rem; line-height: 1.5; margin: 0; }
.company-field-error { color: var(--gc-danger); font-size: .9rem; }
.company-editor .form-alert { display: grid; gap: 12px; }
.company-discard { padding: 14px; border: 1px solid var(--gc-muted); border-radius: var(--gc-radius-sm); margin-bottom: 16px; }
.company-discard button { margin: 0 8px 8px 0; }
.company-latest { margin: 12px 0; }
.company-latest summary { display: flex; align-items: center; cursor: pointer; text-decoration: underline; }
.company-latest dl { overflow-wrap: anywhere; }
.company-registration-group { margin-top: 24px; }
.company-registration-group h4 { margin: 0; font-size: 1rem; overflow-wrap: anywhere; }
.company-registration-group summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; text-decoration: underline; }
.company-registration-history { padding-inline-start: 22px; overflow-wrap: anywhere; }
@media (max-width: 760px) {
  .company-overview-grid, .company-record-grid, .company-contact-strip { grid-template-columns: minmax(0,1fr); }
  .company-summary, .company-record, .company-contact-strip { padding: 16px; }
  .company-tabs button { padding-inline: 6px; }
}
