/* Shared list and record-detail screens. */

.page-heading,
.client-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.25rem;
    margin-bottom: 1.25rem;
}
.page-heading .page-title { margin-bottom: 0.25rem; }
.page-heading p:not(.eyebrow) { margin: 0; color: var(--ink-soft); }
.page-heading .btn--primary { margin-top: 0; }
.eyebrow { margin: 0 0 0.25rem; color: var(--brand); font-size: 0.73rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }

.data-card { padding: 0; overflow: hidden; }
.client-list { display: grid; }
.client-row {
    min-height: 5.25rem;
    display: grid;
    grid-template-columns: minmax(12rem, 2fr) repeat(3, minmax(7rem, 1fr)) 1.5rem;
    align-items: center;
    gap: 1rem;
    padding: 0.9rem 1.25rem;
    border-bottom: 1px solid var(--line);
    color: var(--ink);
    text-decoration: none;
}
.client-row:last-child { border-bottom: 0; }
.client-row:hover { background: #f9fbfa; }
.client-row > span { display: grid; gap: 0.15rem; }
.client-row small { color: var(--ink-soft); font-size: 0.78rem; }
.client-row__name strong { font-size: 1rem; }
.row-arrow { color: var(--brand); font-size: 1.6rem; text-decoration: none; }

.breadcrumbs { margin-bottom: 1rem; }
.breadcrumbs a { color: var(--ink-soft); text-decoration: none; }
.breadcrumbs a:hover { color: var(--brand); }
.client-hero h1 { margin: 0; font-size: clamp(1.8rem, 5vw, 2.8rem); line-height: 1.1; text-transform: uppercase; }
.client-summary { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: baseline; margin: 0.75rem 0 0; color: var(--ink-soft); }
.client-summary strong { color: var(--ink); }
.concentration-alert { margin: -0.25rem 0 1.25rem; padding: 0.75rem 1rem; background: var(--warn-bg); border-radius: var(--radius-small); color: var(--warn); }

.client-meta { display: flex; align-items: center; gap: 2rem; margin-bottom: 1.8rem; }
.client-meta > div { display: grid; gap: 0.2rem; min-width: 8rem; }
.client-meta span { color: var(--ink-soft); font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.05em; }
.client-meta .btn { margin-left: auto; }
.anaf-form { align-items: end; display: flex; gap: 8px; margin-left: auto; }
.anaf-form label { margin: 0; }
.anaf-form input { min-width: 150px; }
.client-meta .anaf-form .btn { margin: 0; white-space: nowrap; }
.anaf-details { border-top: 1px solid var(--line); display: grid; flex: 1 0 100%; gap: 10px 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 4px; padding-top: 16px; }
.anaf-details p { display: grid; gap: 3px; margin: 0; }
.anaf-details .span-2 { grid-column: 1 / -1; }
.anaf-status { background: var(--brand-pale); border-radius: 8px; padding: 10px; }
.anaf-status.is-warning { background: var(--warn-bg); color: var(--warn); }
.btn:disabled { cursor: not-allowed; opacity: 0.55; }

.section-block { margin: 1.8rem 0; }
.section-heading { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.7rem; }
.section-heading h2 { margin: 0; font-size: 1.05rem; text-transform: uppercase; letter-spacing: 0.055em; }
.section-heading span { color: var(--ink-soft); font-size: 0.85rem; }
.table-wrap { overflow-x: auto; padding: 0; }
.data-table { width: 100%; border-collapse: collapse; }
.data-table th { padding: 0.8rem 1rem; color: var(--ink-soft); background: #f8faf9; font-size: 0.75rem; text-align: left; text-transform: uppercase; letter-spacing: 0.045em; }
.data-table td { padding: 0.9rem 1rem; border-top: 1px solid var(--line); vertical-align: middle; }
.data-table td a:not(.missing-value):not(.row-arrow) { display: grid; color: var(--ink); text-decoration: none; }
.data-table td small { display: block; color: var(--ink-soft); font-size: 0.75rem; }
.missing-value { display: inline-block; padding: 0.2rem 0.45rem; border-radius: 6px; background: var(--warn-bg); color: var(--warn); font-weight: 800; text-decoration: none; }
.text-warn { color: var(--warn) !important; }
.source-notes h2 { margin-top: 0; font-size: 0.9rem; text-transform: uppercase; letter-spacing: 0.05em; }
.source-notes p { white-space: pre-wrap; color: var(--ink-soft); }
.filter-pills { display: flex; gap: 0.45rem; overflow-x: auto; margin: -0.25rem 0 1rem; padding-bottom: 0.25rem; }
.filter-pills a { padding: 0.45rem 0.75rem; border: 1px solid var(--line); border-radius: 999px; color: var(--ink-soft); background: #fff; font-size: 0.82rem; text-decoration: none; white-space: nowrap; }
.filter-pills a.is-active, .filter-pills a:hover { color: var(--brand-dark); border-color: #a7d2ba; background: var(--brand-pale); }
.record-form { max-width: 58rem; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.1rem 1rem; }
.form-grid label { margin-top: 0.8rem; }
.form-grid .span-2 { grid-column: 1 / -1; }
.form-actions { display: flex; align-items: center; gap: 0.65rem; margin-top: 1.25rem; }
.form-actions .btn { margin-top: 0; }
.source-lock { padding: 0.7rem; border-radius: var(--radius-small); background: #eef2f6; color: var(--ink-soft); font-size: 0.82rem; }
.record-actions { display: flex; align-items: center; gap: 0.55rem; }
.danger-zone { margin-top: 2.5rem; padding-top: 1rem; border-top: 1px solid #edc7c4; text-align: right; }
.danger-zone button { padding: 0.5rem 0.75rem; border: 1px solid #edc7c4; border-radius: 8px; background: transparent; color: var(--error); cursor: pointer; }
.danger-zone button:hover { background: var(--error-bg); }
.search-page-form { margin-bottom: 28px; max-width: 760px; }
.search-page-form label { display: block; font-weight: 700; margin-bottom: 10px; }
.search-page-form__row { display: flex; gap: 10px; }
.search-page-form__row input { flex: 1; min-width: 0; }
.search-results-section { margin-top: 28px; }
.search-results-section h2 { align-items: center; display: flex; font-size: 18px; gap: 8px; margin: 0 0 12px; }
.search-results-section h2 span { background: var(--brand-pale); border-radius: 999px; color: var(--brand); font-size: 12px; padding: 3px 8px; }
.search-results-grid { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.search-result { color: inherit; display: flex; flex-direction: column; gap: 5px; text-decoration: none; transition: border-color .15s ease, transform .15s ease; }
.search-result:hover { border-color: var(--brand); transform: translateY(-1px); }
.search-result strong { color: var(--ink); font-size: 16px; }
.search-result small { color: var(--ink-soft); }
.search-result > span:last-child { color: var(--ink-soft); font-size: 12px; }
.search-result__type { color: var(--brand) !important; font-size: 10px !important; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.empty-state { max-width: 760px; text-align: center; }
.empty-state h2 { margin-top: 0; }

.site-hero p:last-child { margin: 0.6rem 0 0; color: var(--ink-soft); }
.status-pill { padding: 0.35rem 0.7rem; border-radius: 999px; font-size: 0.75rem; font-weight: 800; text-transform: uppercase; }
.status-pill--activ { background: var(--ok-bg); color: var(--ok); }
.status-pill--ridicat { background: #eef2f6; color: var(--ink-soft); }
.status-pill--suspendat { background: var(--warn-bg); color: var(--warn); }
.site-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-bottom: 1rem; }
.site-kpis > .card { min-height: 8.5rem; display: flex; flex-direction: column; justify-content: center; }
.site-kpis span { color: var(--ink-soft); font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.045em; }
.site-kpis strong, .price-display { margin-top: 0.3rem; font-size: 1.65rem; font-weight: 750; }
.price-display { padding: 0; border: 0; background: transparent; color: var(--ink); text-align: left; cursor: pointer; }
.price-display.is-missing { color: var(--warn); }
.price-display small { display: block; margin-top: 0.1rem; color: var(--ink-soft); font-size: 0.7rem; font-weight: 500; }
.price-editor label { margin-top: 0.4rem; }
.inline-controls { display: flex; align-items: center; gap: 0.45rem; }
.inline-controls input { min-width: 7rem; }
.inline-controls .btn { min-height: auto; margin-top: 0; white-space: nowrap; }
.inline-message { min-height: 1.2em; margin: 0.35rem 0 0; color: var(--error); font-size: 0.78rem; }
.site-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-bottom: 1rem; }
.detail-card h2 { font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.05em; }
.detail-card dl { margin: 0; display: grid; gap: 0.85rem; }
.detail-card dl div { display: grid; grid-template-columns: 7rem 1fr; gap: 1rem; }
.detail-card dt { color: var(--ink-soft); font-size: 0.8rem; }
.detail-card dd { margin: 0; overflow-wrap: anywhere; }
.detail-card a { color: var(--brand); }

@media (max-width: 760px) {
    .client-row { grid-template-columns: minmax(0, 1.6fr) repeat(2, minmax(4rem, 0.6fr)) 1rem; gap: 0.55rem; padding-inline: 1rem; }
    .client-row > span:nth-child(4) { display: none; }
    .client-meta { flex-wrap: wrap; gap: 1rem 2rem; }
    .client-meta .btn { width: 100%; margin-left: 0; }
    .anaf-form { align-items: stretch; flex-direction: column; margin-left: 0; width: 100%; }
    .anaf-details { grid-template-columns: 1fr; }
    .anaf-details .span-2 { grid-column: auto; }
    .site-list-table th:nth-child(2), .site-list-table td:nth-child(2) { display: none; }
    .search-results-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
    .page-heading, .client-hero { align-items: stretch; flex-direction: column; }
    .page-heading .btn, .client-hero .btn { text-align: center; }
    .client-row { grid-template-columns: minmax(0, 1fr) repeat(2, 3.8rem) 1rem; }
    .client-row small { font-size: 0.7rem; }
    .client-sites-table thead { display: none; }
    .client-sites-table tr { display: grid; grid-template-columns: 1fr 1fr; padding: 0.75rem 0.9rem; border-top: 1px solid var(--line); }
    .client-sites-table td { display: grid; align-content: start; gap: 0.15rem; padding: 0.45rem; border: 0; }
    .client-sites-table td::before { content: attr(data-label); color: var(--ink-soft); font-size: 0.68rem; text-transform: uppercase; }
    .client-sites-table td:first-child { grid-column: 1 / -1; }
    .client-sites-table td:last-child { display: none; }
    .site-kpis, .site-detail-grid { grid-template-columns: 1fr; }
    .site-kpis > .card { min-height: 7rem; }
    .inline-controls { flex-wrap: wrap; }
    .inline-controls input { flex: 1 1 100%; }
    .detail-card dl div { grid-template-columns: 5.5rem 1fr; }
    .form-grid { grid-template-columns: 1fr; }
    .form-grid .span-2 { grid-column: auto; }
    .form-actions { align-items: stretch; flex-direction: column; }
    .form-actions .btn { text-align: center; }
    .site-list-table thead { display: none; }
    .site-list-table tr { display: grid; grid-template-columns: 1fr 1fr; padding: 0.75rem 0.9rem; border-top: 1px solid var(--line); }
    .site-list-table td { display: grid; gap: 0.15rem; padding: 0.4rem; border: 0; }
    .site-list-table td::before { content: attr(data-label); color: var(--ink-soft); font-size: 0.68rem; text-transform: uppercase; }
    .site-list-table td:first-child { grid-column: 1 / -1; }
    .site-list-table td:nth-child(2), .site-list-table td:last-child { display: none; }
    .search-page-form__row { align-items: stretch; flex-direction: column; }
}
