/* /Components/Layout/MainLayout.razor.rz.scp.css */
.layout[b-ph9cdrxsem] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--color-background);
}

/* ===== Header ===== */

.layout__header[b-ph9cdrxsem] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    border-bottom: 1px solid var(--color-primary);
    box-shadow: var(--shadow-sm);
}

.layout__header-inner[b-ph9cdrxsem] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 1rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 2rem;
}

.brand[b-ph9cdrxsem] {
    display: inline-flex;
    align-items: baseline;
    gap: 0.5rem;
    text-decoration: none;
    color: inherit;
}

.brand__moon[b-ph9cdrxsem] {
    font-size: 1.5rem;
    color: var(--color-accent);
    line-height: 1;
}

.brand__name[b-ph9cdrxsem] {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.01em;
}

.brand__tagline[b-ph9cdrxsem] {
    font-family: var(--font-body);
    font-size: 0.6875rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: var(--color-accent);
    margin-left: 0.25rem;
}

.layout__nav[b-ph9cdrxsem] {
    display: flex;
    gap: 2rem;
    margin-left: 2rem;
}

.layout__nav-link[b-ph9cdrxsem] {
    color: var(--color-text-on-primary);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 500;
    text-decoration: none;
    padding: 0.25rem 0;
    border-bottom: 2px solid transparent;
    transition: all 120ms ease-in-out;
}

.layout__nav-link:hover[b-ph9cdrxsem] {
    color: var(--color-accent);
    border-bottom-color: var(--color-accent);
}

/* ===== Dropdown (CSS-only, hover + focus-within) ===== */

.layout__nav-dropdown[b-ph9cdrxsem] {
    position: relative;
}

.layout__nav-link--dropdown[b-ph9cdrxsem] {
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    padding: 0.25rem 0;
}

.layout__nav-dropdown-menu[b-ph9cdrxsem] {
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 50%;
    transform: translateX(-50%) translateY(-4px);
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-lg);
    min-width: 200px;
    padding: 0.375rem;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 120ms ease, transform 120ms ease, visibility 0s linear 120ms;
}

/* Láthatatlan híd a menüpont és a lenyíló közti 0.5rem résen át — hogy
   lefelé húzva a kurzor ne essen ki a hover-zónából (ne záruljon be). */
.layout__nav-dropdown-menu[b-ph9cdrxsem]::before {
    content: "";
    position: absolute;
    top: -0.5rem;
    left: 0;
    right: 0;
    height: 0.5rem;
}

.layout__nav-dropdown:hover .layout__nav-dropdown-menu[b-ph9cdrxsem],
.layout__nav-dropdown:focus-within .layout__nav-dropdown-menu[b-ph9cdrxsem] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
    transition: opacity 120ms ease, transform 120ms ease, visibility 0s linear 0s;
}

.layout__nav-dropdown-item[b-ph9cdrxsem] {
    display: block;
    padding: 0.5rem 0.875rem;
    color: var(--color-text-strong);
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: var(--radius-sm);
    white-space: nowrap;
    transition: background 80ms ease;
}

.layout__nav-dropdown-item:hover[b-ph9cdrxsem] {
    background: var(--color-surface-alt);
    color: var(--color-accent);
}

.layout__actions[b-ph9cdrxsem] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* ===== Gombok ===== */

[b-ph9cdrxsem] .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1.25rem;
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 120ms ease-in-out;
    border: 1px solid transparent;
    cursor: pointer;
}

[b-ph9cdrxsem] .btn--primary {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
}
[b-ph9cdrxsem] .btn--primary:hover {
    background: var(--color-accent-hover);
}

[b-ph9cdrxsem] .btn--ghost {
    background: transparent;
    color: var(--color-text-on-primary);
    border-color: rgba(255, 255, 255, 0.2);
}
[b-ph9cdrxsem] .btn--ghost:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: var(--color-accent);
    color: var(--color-accent);
}

/* ===== Main ===== */

.layout__main[b-ph9cdrxsem] {
    flex: 1;
    width: 100%;
}

/* ===== Footer ===== */

.layout__footer[b-ph9cdrxsem] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    padding: 2.5rem 1.5rem;
    margin-top: 4rem;
}

.layout__footer-inner[b-ph9cdrxsem] {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 2rem;
    align-items: center;
}

.layout__footer-brand[b-ph9cdrxsem] {
    display: inline-flex;
    align-items: baseline;
    gap: 0.5rem;
}

.layout__footer-desc[b-ph9cdrxsem] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--color-text-on-primary);
    opacity: 0.85;
    text-align: center;
}

.layout__footer-nav[b-ph9cdrxsem] {
    display: flex;
    gap: 1.5rem;
}

.layout__footer-nav a[b-ph9cdrxsem] {
    color: var(--color-text-on-primary);
    font-size: 0.875rem;
    text-decoration: none;
    transition: color 120ms ease-in-out;
    opacity: 0.85;
}

.layout__footer-nav a:hover[b-ph9cdrxsem] {
    color: var(--color-accent);
    opacity: 1;
}

/* ===== Responsive ===== */

@media (max-width: 900px) {
    .layout__header-inner[b-ph9cdrxsem] {
        flex-wrap: wrap;
        gap: 1rem;
    }
    .layout__nav[b-ph9cdrxsem] {
        margin-left: 0;
        order: 3;
        width: 100%;
        gap: 1rem;
    }
    .layout__footer-inner[b-ph9cdrxsem] {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .layout__footer-nav[b-ph9cdrxsem] {
        justify-content: center;
    }
}

/* ===== Error UI (Blazor default) ===== */

#blazor-error-ui[b-ph9cdrxsem] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-ph9cdrxsem] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-ozm6l1a8t5],
.components-reconnect-repeated-attempt-visible[b-ozm6l1a8t5],
.components-reconnect-failed-visible[b-ozm6l1a8t5],
.components-pause-visible[b-ozm6l1a8t5],
.components-resume-failed-visible[b-ozm6l1a8t5],
.components-rejoining-animation[b-ozm6l1a8t5] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-retrying[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-failed[b-ozm6l1a8t5],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-ozm6l1a8t5] {
    display: block;
}


#components-reconnect-modal[b-ozm6l1a8t5] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-ozm6l1a8t5 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-ozm6l1a8t5 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-ozm6l1a8t5 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-ozm6l1a8t5]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-ozm6l1a8t5 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-ozm6l1a8t5 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-ozm6l1a8t5 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-ozm6l1a8t5 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-ozm6l1a8t5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-ozm6l1a8t5] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-ozm6l1a8t5] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-ozm6l1a8t5] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-ozm6l1a8t5] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-ozm6l1a8t5] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-ozm6l1a8t5] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-ozm6l1a8t5 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-ozm6l1a8t5] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-ozm6l1a8t5 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/AdminAudit.razor.rz.scp.css */
.admin[b-vxobapm80i] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.admin__inner[b-vxobapm80i] {
    max-width: 1400px;
    margin: 0 auto;
}

/* ===== Subnav (Raw ↔ Domain switch) ===== */

.admin__subnav[b-vxobapm80i] {
    display: flex;
    gap: 0;
    margin-bottom: 1.5rem;
    border-bottom: 2px solid var(--color-border);
}

.admin__subnav-link[b-vxobapm80i] {
    padding: 0.625rem 1.25rem;
    background: transparent;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 500;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    text-decoration: none;
    transition: all 120ms ease-in-out;
}

.admin__subnav-link:hover[b-vxobapm80i] {
    color: var(--color-text-strong);
}

.admin__subnav-link--active[b-vxobapm80i] {
    color: var(--color-primary);
    border-bottom-color: var(--color-accent);
    font-weight: 600;
}

.admin__header[b-vxobapm80i] {
    margin-bottom: 1.5rem;
}

.admin__header h1[b-vxobapm80i] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: var(--color-text-strong);
    margin: 0 0 0.375rem 0;
}

.admin__lead[b-vxobapm80i] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

/* ===== Notices (warn / error) ===== */

.admin__notice[b-vxobapm80i] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
}

.admin__notice--warn[b-vxobapm80i] {
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}

.admin__notice--error[b-vxobapm80i] {
    background: rgba(185, 28, 28, 0.08);
    border: 1px solid rgba(185, 28, 28, 0.25);
    color: var(--color-danger);
}

.admin__notice p[b-vxobapm80i] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ===== Records Browser ===== */

.records-browser[b-vxobapm80i] {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 1.5rem;
    min-height: 500px;
}

.records-browser__sidebar[b-vxobapm80i] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1rem;
    overflow: hidden;
}

.records-browser__sidebar-title[b-vxobapm80i] {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    margin: 0 0 0.75rem 0;
    font-weight: 600;
}

.records-browser__table-list[b-vxobapm80i] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.records-browser__table-btn[b-vxobapm80i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 0.625rem;
    background: transparent;
    border: none;
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    text-align: left;
    cursor: pointer;
    transition: all 80ms ease-in-out;
}

.records-browser__table-btn:hover[b-vxobapm80i] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
}

.records-browser__table-btn--active[b-vxobapm80i] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

.records-browser__table-name[b-vxobapm80i] {
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table-count[b-vxobapm80i] {
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
    color: var(--color-accent);
    font-weight: 600;
    font-size: 0.75rem;
}

.records-browser__content[b-vxobapm80i] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1.25rem;
    overflow: hidden;
}

.records-browser__empty-state[b-vxobapm80i] {
    text-align: center;
    padding: 4rem 1rem;
    color: var(--color-text);
}

.records-browser__moon[b-vxobapm80i] {
    font-size: 3rem;
    color: var(--color-accent);
    line-height: 1;
    margin-bottom: 0.5rem;
    opacity: 0.6;
}

.records-browser__loading[b-vxobapm80i],
.records-browser__empty[b-vxobapm80i] {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.875rem;
}

.records-browser__toolbar[b-vxobapm80i] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.records-browser__title[b-vxobapm80i] {
    font-family: var(--font-mono);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    margin: 0 0 0.25rem 0;
}

.records-browser__meta[b-vxobapm80i] {
    color: var(--color-text);
    font-size: 0.8125rem;
    margin: 0;
}

.records-browser__table-wrap[b-vxobapm80i] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}

.records-browser__table[b-vxobapm80i] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
    font-family: var(--font-body);
}

.records-browser__table th[b-vxobapm80i] {
    text-align: left;
    padding: 0.5rem 0.625rem;
    background: var(--color-surface-alt);
    color: var(--color-text);
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.6875rem;
    letter-spacing: 0.06em;
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
}

.records-browser__table td[b-vxobapm80i] {
    padding: 0.5rem 0.625rem;
    color: var(--color-text-strong);
    border-bottom: 1px solid var(--color-border);
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table tr:last-child td[b-vxobapm80i] { border-bottom: none; }
.records-browser__table tr:hover td[b-vxobapm80i] { background: var(--color-surface-alt); }

@media (max-width: 900px) {
    .records-browser[b-vxobapm80i] { grid-template-columns: 1fr; }
    .records-browser__sidebar[b-vxobapm80i] { max-height: 240px; overflow-y: auto; }
}

/* ===== Toolbar + filterek ===== */

.admin__toolbar[b-vxobapm80i] {
    display: flex; align-items: center; gap: 0.625rem;
    margin-bottom: 1.5rem; flex-wrap: wrap;
}

.admin__filter[b-vxobapm80i] {
    padding: 0.5rem 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.875rem;
    color: var(--color-text-strong);
    cursor: pointer; min-width: 160px;
}

.admin__filter--text[b-vxobapm80i] { cursor: text; min-width: 220px; }
.admin__filter:focus[b-vxobapm80i] { outline: none; border-color: var(--color-accent); }

.admin__filter-btn[b-vxobapm80i] {
    padding: 0.5rem 1rem;
    background: var(--color-accent); color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent); border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.875rem; font-weight: 600;
    cursor: pointer;
}
.admin__filter-btn:disabled[b-vxobapm80i] { opacity: 0.6; cursor: not-allowed; }

.admin__stats[b-vxobapm80i] {
    margin-left: auto;
    color: var(--color-text); font-size: 0.875rem; font-weight: 500;
}

.admin__loading[b-vxobapm80i] {
    padding: 3rem; text-align: center; color: var(--color-text); font-size: 0.9375rem;
}

.admin__pagination[b-vxobapm80i] {
    display: flex; justify-content: center; padding: 1.5rem 0;
}

/* ===== Decision-list ===== */

.admin__decisions-list[b-vxobapm80i] {
    display: flex; flex-direction: column; gap: 0.5rem;
    margin-bottom: 1.5rem;
}

.admin__decision[b-vxobapm80i] {
    padding: 0.75rem 1rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}

.admin__decision-head[b-vxobapm80i] {
    display: flex; align-items: center; gap: 0.75rem;
    flex-wrap: wrap; margin-bottom: 0.375rem;
}

.admin__decision-target[b-vxobapm80i] {
    color: var(--color-text-strong); font-size: 0.8125rem;
}

.admin__decision-target code[b-vxobapm80i] {
    font-family: var(--font-mono); font-size: 0.75rem;
    background: var(--color-surface-alt);
    padding: 0.0625rem 0.3rem; border-radius: var(--radius-sm);
}

.admin__decision-target a[b-vxobapm80i] {
    color: var(--color-accent); text-decoration: none;
}
.admin__decision-target a:hover[b-vxobapm80i] { text-decoration: underline; }

.admin__decision-meta[b-vxobapm80i] {
    margin-left: auto;
    color: var(--color-text); opacity: 0.7;
    font-size: 0.75rem;
    font-variant-numeric: tabular-nums;
}

.admin__decision-reason[b-vxobapm80i] {
    margin: 0.25rem 0 0.375rem 0;
    color: var(--color-text);
    font-size: 0.8125rem;
}

.admin__decision-toggle[b-vxobapm80i] {
    padding: 0.1875rem 0.5rem;
    background: transparent;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-size: 0.6875rem; font-weight: 500;
    cursor: pointer;
}
.admin__decision-toggle:hover[b-vxobapm80i] {
    background: var(--color-surface-alt);
    color: var(--color-accent);
}

.admin__decision-json[b-vxobapm80i] {
    margin: 0.5rem 0 0.25rem 0;
    padding: 0.625rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--color-text-strong);
    white-space: pre-wrap;
    overflow-x: auto;
    max-height: 360px;
    line-height: 1.4;
}

[b-vxobapm80i] .badge {
    display: inline-flex; align-items: center;
    padding: 0.125rem 0.5rem; border-radius: var(--radius-sm);
    font-size: 0.6875rem; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.05em;
}
[b-vxobapm80i] .badge--decision-success { background: rgba(21, 128, 61, 0.15); color: var(--color-success); }
[b-vxobapm80i] .badge--decision-danger  { background: rgba(185, 28, 28, 0.12); color: var(--color-danger); }
[b-vxobapm80i] .badge--decision-warning { background: rgba(161, 98, 7, 0.12);  color: var(--color-warning); }
[b-vxobapm80i] .badge--decision-info    { background: rgba(11, 29, 51, 0.10);  color: var(--color-primary); }
/* /Components/Pages/AdminBatches.razor.rz.scp.css */
.admin[b-s3o07yaqae] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.admin__inner[b-s3o07yaqae] {
    max-width: 1400px;
    margin: 0 auto;
}

/* ===== Subnav (Raw ↔ Domain switch) ===== */

.admin__subnav[b-s3o07yaqae] {
    display: flex;
    gap: 0;
    margin-bottom: 1.5rem;
    border-bottom: 2px solid var(--color-border);
}

.admin__subnav-link[b-s3o07yaqae] {
    padding: 0.625rem 1.25rem;
    background: transparent;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 500;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    text-decoration: none;
    transition: all 120ms ease-in-out;
}

.admin__subnav-link:hover[b-s3o07yaqae] {
    color: var(--color-text-strong);
}

.admin__subnav-link--active[b-s3o07yaqae] {
    color: var(--color-primary);
    border-bottom-color: var(--color-accent);
    font-weight: 600;
}

.admin__header[b-s3o07yaqae] {
    margin-bottom: 1.5rem;
}

.admin__header h1[b-s3o07yaqae] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: var(--color-text-strong);
    margin: 0 0 0.375rem 0;
}

.admin__lead[b-s3o07yaqae] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

/* ===== Notices (warn / error) ===== */

.admin__notice[b-s3o07yaqae] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
}

.admin__notice--warn[b-s3o07yaqae] {
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}

.admin__notice--error[b-s3o07yaqae] {
    background: rgba(185, 28, 28, 0.08);
    border: 1px solid rgba(185, 28, 28, 0.25);
    color: var(--color-danger);
}

.admin__notice p[b-s3o07yaqae] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ===== Records Browser ===== */

.records-browser[b-s3o07yaqae] {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 1.5rem;
    min-height: 500px;
}

.records-browser__sidebar[b-s3o07yaqae] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1rem;
    overflow: hidden;
}

.records-browser__sidebar-title[b-s3o07yaqae] {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    margin: 0 0 0.75rem 0;
    font-weight: 600;
}

.records-browser__table-list[b-s3o07yaqae] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.records-browser__table-btn[b-s3o07yaqae] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 0.625rem;
    background: transparent;
    border: none;
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    text-align: left;
    cursor: pointer;
    transition: all 80ms ease-in-out;
}

.records-browser__table-btn:hover[b-s3o07yaqae] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
}

.records-browser__table-btn--active[b-s3o07yaqae] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

.records-browser__table-name[b-s3o07yaqae] {
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table-count[b-s3o07yaqae] {
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
    color: var(--color-accent);
    font-weight: 600;
    font-size: 0.75rem;
}

.records-browser__content[b-s3o07yaqae] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1.25rem;
    overflow: hidden;
}

.records-browser__empty-state[b-s3o07yaqae] {
    text-align: center;
    padding: 4rem 1rem;
    color: var(--color-text);
}

.records-browser__moon[b-s3o07yaqae] {
    font-size: 3rem;
    color: var(--color-accent);
    line-height: 1;
    margin-bottom: 0.5rem;
    opacity: 0.6;
}

.records-browser__loading[b-s3o07yaqae],
.records-browser__empty[b-s3o07yaqae] {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.875rem;
}

.records-browser__toolbar[b-s3o07yaqae] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.records-browser__title[b-s3o07yaqae] {
    font-family: var(--font-mono);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    margin: 0 0 0.25rem 0;
}

.records-browser__meta[b-s3o07yaqae] {
    color: var(--color-text);
    font-size: 0.8125rem;
    margin: 0;
}

.records-browser__table-wrap[b-s3o07yaqae] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}

.records-browser__table[b-s3o07yaqae] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
    font-family: var(--font-body);
}

.records-browser__table th[b-s3o07yaqae] {
    text-align: left;
    padding: 0.5rem 0.625rem;
    background: var(--color-surface-alt);
    color: var(--color-text);
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.6875rem;
    letter-spacing: 0.06em;
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
}

.records-browser__table td[b-s3o07yaqae] {
    padding: 0.5rem 0.625rem;
    color: var(--color-text-strong);
    border-bottom: 1px solid var(--color-border);
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table tr:last-child td[b-s3o07yaqae] { border-bottom: none; }
.records-browser__table tr:hover td[b-s3o07yaqae] { background: var(--color-surface-alt); }

@media (max-width: 900px) {
    .records-browser[b-s3o07yaqae] { grid-template-columns: 1fr; }
    .records-browser__sidebar[b-s3o07yaqae] { max-height: 240px; overflow-y: auto; }
}

/* ===== Toolbar + filterek (közös admin lista stílusok) ===== */

.admin__toolbar[b-s3o07yaqae] {
    display: flex; align-items: center; gap: 0.625rem;
    margin-bottom: 1.5rem; flex-wrap: wrap;
}

.admin__filter[b-s3o07yaqae] {
    padding: 0.5rem 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.875rem;
    color: var(--color-text-strong);
    cursor: pointer; min-width: 160px;
}

.admin__filter--text[b-s3o07yaqae] { cursor: text; min-width: 220px; }
.admin__filter:focus[b-s3o07yaqae] { outline: none; border-color: var(--color-accent); }

.admin__filter-btn[b-s3o07yaqae] {
    padding: 0.5rem 1rem;
    background: var(--color-accent); color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent); border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.875rem; font-weight: 600;
    cursor: pointer;
}
.admin__filter-btn:disabled[b-s3o07yaqae] { opacity: 0.6; cursor: not-allowed; }

.admin__stats[b-s3o07yaqae] {
    margin-left: auto;
    color: var(--color-text); font-size: 0.875rem; font-weight: 500;
}

.admin__loading[b-s3o07yaqae] {
    padding: 3rem; text-align: center; color: var(--color-text); font-size: 0.9375rem;
}

/* ===== Admin tábla ===== */

.admin__table-wrap[b-s3o07yaqae] {
    overflow-x: auto;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
}

.admin__table[b-s3o07yaqae] {
    width: 100%; border-collapse: collapse; font-size: 0.875rem;
}

.admin__table th[b-s3o07yaqae] {
    text-align: left;
    padding: 0.625rem 0.75rem;
    background: var(--color-surface-alt);
    color: var(--color-text-strong); font-weight: 600;
    border-bottom: 1px solid var(--color-border);
    font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.05em;
}

.admin__table td[b-s3o07yaqae] {
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-text); vertical-align: top;
}

.admin__table tbody tr:last-child td[b-s3o07yaqae] { border-bottom: none; }
.admin__table tbody tr:hover[b-s3o07yaqae] { background: var(--color-surface-alt); }

.admin__cell-time[b-s3o07yaqae] {
    font-variant-numeric: tabular-nums; white-space: nowrap;
    color: var(--color-text); font-family: var(--font-mono);
    font-size: 0.8125rem;
}

.admin__cell-stats[b-s3o07yaqae] {
    color: var(--color-text); opacity: 0.85;
    font-size: 0.75rem; font-family: var(--font-mono);
}

.admin__pagination[b-s3o07yaqae] {
    display: flex; justify-content: center; padding: 1.5rem 0;
}

[b-s3o07yaqae] .badge {
    display: inline-flex; align-items: center;
    padding: 0.125rem 0.5rem; border-radius: var(--radius-sm);
    font-size: 0.6875rem; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.05em;
    background: var(--color-surface-alt); color: var(--color-text);
}
[b-s3o07yaqae] .badge--success { background: rgba(21, 128, 61, 0.15); color: var(--color-success); }
[b-s3o07yaqae] .badge--danger  { background: rgba(185, 28, 28, 0.12); color: var(--color-danger); }
[b-s3o07yaqae] .badge--warning { background: rgba(161, 98, 7, 0.12);  color: var(--color-warning); }
[b-s3o07yaqae] .badge--info    { background: rgba(11, 29, 51, 0.10);  color: var(--color-primary); }

/* ===== Rollback UI ===== */

.admin__rollback-btn[b-s3o07yaqae] {
    padding: 0.25rem 0.625rem;
    background: var(--color-surface);
    border: 1px solid var(--color-warning);
    color: var(--color-warning);
    border-radius: var(--radius-sm);
    font-size: 0.75rem; font-weight: 600;
    cursor: pointer;
}
.admin__rollback-btn:hover:not(:disabled)[b-s3o07yaqae] {
    background: var(--color-warning);
    color: white;
}
.admin__rollback-btn:disabled[b-s3o07yaqae] { opacity: 0.5; cursor: not-allowed; }

.admin__rollback-already[b-s3o07yaqae] {
    color: var(--color-success);
    font-size: 0.75rem; font-weight: 600;
}

.admin__rollback-confirm[b-s3o07yaqae] {
    display: flex; gap: 0.25rem;
    flex-wrap: wrap; align-items: center;
}

.admin__rollback-reason[b-s3o07yaqae] {
    padding: 0.25rem 0.5rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body);
    font-size: 0.75rem;
    min-width: 140px;
    flex: 1;
}
.admin__rollback-reason:focus[b-s3o07yaqae] {
    outline: none;
    border-color: var(--color-accent);
}

.admin__rollback-confirm-btn[b-s3o07yaqae],
.admin__rollback-cancel-btn[b-s3o07yaqae] {
    padding: 0.25rem 0.625rem;
    border-radius: var(--radius-sm);
    font-size: 0.6875rem; font-weight: 600;
    cursor: pointer;
}

.admin__rollback-confirm-btn[b-s3o07yaqae] {
    background: var(--color-danger);
    color: white;
    border: 1px solid var(--color-danger);
}
.admin__rollback-confirm-btn:hover:not(:disabled)[b-s3o07yaqae] {
    background: rgb(120, 18, 18);
}

.admin__rollback-cancel-btn[b-s3o07yaqae] {
    background: transparent;
    border: 1px solid var(--color-border);
    color: var(--color-text);
}
.admin__rollback-cancel-btn:hover:not(:disabled)[b-s3o07yaqae] {
    background: var(--color-surface-alt);
}

.admin__rollback-confirm-btn:disabled[b-s3o07yaqae],
.admin__rollback-cancel-btn:disabled[b-s3o07yaqae] { opacity: 0.5; cursor: not-allowed; }

.admin__message[b-s3o07yaqae] {
    margin: 0 0 1rem 0;
    padding: 0.625rem 1rem;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-size: 0.875rem;
}
.admin__message--error[b-s3o07yaqae] {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger);
}
/* /Components/Pages/AdminDomain.razor.rz.scp.css */
.admin[b-lssze4e0vt] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.admin__inner[b-lssze4e0vt] {
    max-width: 1400px;
    margin: 0 auto;
}

/* ===== Subnav (Raw ↔ Domain switch) ===== */

.admin__subnav[b-lssze4e0vt] {
    display: flex;
    gap: 0;
    margin-bottom: 1.5rem;
    border-bottom: 2px solid var(--color-border);
}

.admin__subnav-link[b-lssze4e0vt] {
    padding: 0.625rem 1.25rem;
    background: transparent;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 500;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    text-decoration: none;
    transition: all 120ms ease-in-out;
}

.admin__subnav-link:hover[b-lssze4e0vt] {
    color: var(--color-text-strong);
}

.admin__subnav-link--active[b-lssze4e0vt] {
    color: var(--color-primary);
    border-bottom-color: var(--color-accent);
    font-weight: 600;
}

.admin__header[b-lssze4e0vt] {
    margin-bottom: 1.5rem;
}

.admin__header h1[b-lssze4e0vt] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: var(--color-text-strong);
    margin: 0 0 0.375rem 0;
}

.admin__lead[b-lssze4e0vt] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

/* ===== Notices (warn / error) ===== */

.admin__notice[b-lssze4e0vt] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
}

.admin__notice--warn[b-lssze4e0vt] {
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}

.admin__notice--error[b-lssze4e0vt] {
    background: rgba(185, 28, 28, 0.08);
    border: 1px solid rgba(185, 28, 28, 0.25);
    color: var(--color-danger);
}

.admin__notice p[b-lssze4e0vt] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ===== Records Browser ===== */

.records-browser[b-lssze4e0vt] {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 1.5rem;
    min-height: 500px;
}

.records-browser__sidebar[b-lssze4e0vt] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1rem;
    overflow: hidden;
}

.records-browser__sidebar-title[b-lssze4e0vt] {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    margin: 0 0 0.75rem 0;
    font-weight: 600;
}

.records-browser__table-list[b-lssze4e0vt] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.records-browser__table-btn[b-lssze4e0vt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 0.625rem;
    background: transparent;
    border: none;
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    text-align: left;
    cursor: pointer;
    transition: all 80ms ease-in-out;
}

.records-browser__table-btn:hover[b-lssze4e0vt] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
}

.records-browser__table-btn--active[b-lssze4e0vt] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

.records-browser__table-name[b-lssze4e0vt] {
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table-count[b-lssze4e0vt] {
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
    color: var(--color-accent);
    font-weight: 600;
    font-size: 0.75rem;
}

.records-browser__content[b-lssze4e0vt] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1.25rem;
    overflow: hidden;
}

.records-browser__empty-state[b-lssze4e0vt] {
    text-align: center;
    padding: 4rem 1rem;
    color: var(--color-text);
}

.records-browser__moon[b-lssze4e0vt] {
    font-size: 3rem;
    color: var(--color-accent);
    line-height: 1;
    margin-bottom: 0.5rem;
    opacity: 0.6;
}

.records-browser__loading[b-lssze4e0vt],
.records-browser__empty[b-lssze4e0vt] {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.875rem;
}

.records-browser__toolbar[b-lssze4e0vt] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.records-browser__title[b-lssze4e0vt] {
    font-family: var(--font-mono);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    margin: 0 0 0.25rem 0;
}

.records-browser__meta[b-lssze4e0vt] {
    color: var(--color-text);
    font-size: 0.8125rem;
    margin: 0;
}

.records-browser__table-wrap[b-lssze4e0vt] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}

.records-browser__table[b-lssze4e0vt] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
    font-family: var(--font-body);
}

.records-browser__table th[b-lssze4e0vt] {
    text-align: left;
    padding: 0.5rem 0.625rem;
    background: var(--color-surface-alt);
    color: var(--color-text);
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.6875rem;
    letter-spacing: 0.06em;
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
}

.records-browser__table td[b-lssze4e0vt] {
    padding: 0.5rem 0.625rem;
    color: var(--color-text-strong);
    border-bottom: 1px solid var(--color-border);
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table tr:last-child td[b-lssze4e0vt] { border-bottom: none; }
.records-browser__table tr:hover td[b-lssze4e0vt] { background: var(--color-surface-alt); }

@media (max-width: 900px) {
    .records-browser[b-lssze4e0vt] { grid-template-columns: 1fr; }
    .records-browser__sidebar[b-lssze4e0vt] { max-height: 240px; overflow-y: auto; }
}
/* /Components/Pages/AdminImport.razor.rz.scp.css */
.admin[b-ugsn5pwizs] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.admin__inner[b-ugsn5pwizs] {
    max-width: 1400px;
    margin: 0 auto;
}

/* ===== Subnav ===== */

.admin__subnav[b-ugsn5pwizs] {
    display: flex;
    gap: 0;
    margin-bottom: 1.5rem;
    border-bottom: 2px solid var(--color-border);
}

.admin__subnav-link[b-ugsn5pwizs] {
    padding: 0.625rem 1.25rem;
    background: transparent;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 500;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    text-decoration: none;
    transition: all 120ms ease-in-out;
}

.admin__subnav-link:hover[b-ugsn5pwizs] {
    color: var(--color-text-strong);
}

.admin__subnav-link--active[b-ugsn5pwizs] {
    color: var(--color-primary);
    border-bottom-color: var(--color-accent);
    font-weight: 600;
}

/* ===== Header ===== */

.admin__header[b-ugsn5pwizs] {
    margin-bottom: 2rem;
}

.admin__header h1[b-ugsn5pwizs] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: var(--color-text-strong);
    margin: 0 0 0.375rem 0;
}

.admin__lead[b-ugsn5pwizs] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
    max-width: 70ch;
}

/* ===== Import grid (form + help aside) ===== */

.admin__import-grid[b-ugsn5pwizs] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.5rem;
    align-items: start;
}

@media (max-width: 900px) {
    .admin__import-grid[b-ugsn5pwizs] {
        grid-template-columns: 1fr;
    }
}

.admin__import-form[b-ugsn5pwizs],
.admin__import-help[b-ugsn5pwizs] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1.5rem;
}

.admin__import-section-title[b-ugsn5pwizs] {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    margin: 0 0 1rem 0;
    font-weight: 600;
}

/* ===== Form ===== */

.admin__import-label[b-ugsn5pwizs] {
    display: block;
    margin-bottom: 1rem;
    color: var(--color-text-strong);
    font-size: 0.875rem;
    font-weight: 500;
}

.admin__import-input[b-ugsn5pwizs] {
    display: block;
    width: 100%;
    margin-top: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text-strong);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    box-sizing: border-box;
}

.admin__import-input:focus[b-ugsn5pwizs] {
    outline: none;
    border-color: var(--color-accent);
}

.admin__import-input:disabled[b-ugsn5pwizs] {
    opacity: 0.6;
    cursor: not-allowed;
}

.admin__import-file[b-ugsn5pwizs] {
    display: block;
    width: 100%;
    margin-top: 0.375rem;
    padding: 0.5rem;
    background: var(--color-surface-alt);
    border: 1px dashed var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.875rem;
    cursor: pointer;
}

.admin__import-file:hover:not(:disabled)[b-ugsn5pwizs] {
    border-color: var(--color-accent);
}

.admin__import-file:disabled[b-ugsn5pwizs] {
    opacity: 0.6;
    cursor: not-allowed;
}

.admin__import-file-info[b-ugsn5pwizs] {
    padding: 0.625rem 0.875rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-size: 0.8125rem;
    margin: 0 0 1rem 0;
}

.admin__import-run-btn[b-ugsn5pwizs] {
    display: inline-block;
    padding: 0.625rem 1.25rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-sm);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 120ms ease-in-out;
}

.admin__import-run-btn:hover:not(:disabled)[b-ugsn5pwizs] {
    opacity: 0.9;
}

.admin__import-run-btn:disabled[b-ugsn5pwizs] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ===== Message banner ===== */

.admin__message[b-ugsn5pwizs] {
    margin-top: 1.25rem;
    padding: 0.875rem 1rem;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-size: 0.875rem;
    line-height: 1.5;
}

.admin__message--error[b-ugsn5pwizs] {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger);
}

.admin__message-link[b-ugsn5pwizs] {
    display: inline-block;
    margin-left: 0.5rem;
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
}

/* ===== Help aside ===== */

.admin__import-help p[b-ugsn5pwizs] {
    color: var(--color-text);
    font-size: 0.875rem;
    line-height: 1.55;
    margin: 0 0 0.75rem 0;
}

.admin__import-help-list[b-ugsn5pwizs] {
    list-style: none;
    margin: 0 0 1rem 0;
    padding: 0;
}

.admin__import-help-list li[b-ugsn5pwizs] {
    padding: 0.25rem 0;
    color: var(--color-text);
    font-size: 0.8125rem;
    line-height: 1.5;
}

.admin__import-help-list code[b-ugsn5pwizs] {
    display: inline-block;
    padding: 0.0625rem 0.375rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-accent);
    font-family: var(--font-mono);
    font-size: 0.75rem;
    margin-right: 0.375rem;
}

.admin__import-example-title[b-ugsn5pwizs] {
    font-family: var(--font-display);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-text);
    margin: 1rem 0 0.5rem 0;
    font-weight: 600;
}

.admin__import-example[b-ugsn5pwizs] {
    padding: 0.75rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text-strong);
    font-family: var(--font-mono);
    font-size: 0.75rem;
    line-height: 1.45;
    overflow-x: auto;
    margin: 0 0 0.75rem 0;
    white-space: pre;
}

.admin__import-note[b-ugsn5pwizs] {
    color: var(--color-text);
    font-size: 0.75rem;
    line-height: 1.5;
    font-style: italic;
    opacity: 0.85;
    margin: 0;
}
/* /Components/Pages/AdminMediaExtract.razor.rz.scp.css */
.extract[b-8eo4w93q0c] {
    padding: 1.5rem 1rem 4rem;
}

.extract__header[b-8eo4w93q0c] {
    max-width: 100%;
    margin-bottom: 1rem;
}

.extract__header h1[b-8eo4w93q0c] {
    margin: 0.25rem 0;
    color: var(--color-primary);
    font-size: 1.4rem;
}

.extract__back[b-8eo4w93q0c] {
    font-size: 0.875rem;
    color: var(--color-primary);
    text-decoration: none;
}

.extract__back:hover[b-8eo4w93q0c] { text-decoration: underline; }

.extract__meta[b-8eo4w93q0c] {
    margin: 0 0 0.5rem;
    font-size: 0.85rem;
    opacity: 0.8;
}

.extract__layout[b-8eo4w93q0c] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    align-items: start;
}

@media (max-width: 980px) {
    .extract__layout[b-8eo4w93q0c] { grid-template-columns: 1fr; }
}

.extract__pane[b-8eo4w93q0c] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.extract__pane--image[b-8eo4w93q0c] {
    position: sticky;
    top: 1rem;
    max-height: calc(100vh - 2rem);
    overflow: auto;
}

.extract__image[b-8eo4w93q0c] {
    display: block;
    max-width: 100%;
    height: auto;
}

.extract__image-placeholder[b-8eo4w93q0c] {
    padding: 4rem 2rem;
    text-align: center;
    opacity: 0.6;
    font-size: 0.9rem;
}

.extract__pane--data[b-8eo4w93q0c] {
    padding: 1rem;
}

/* ===== Vezérlő-csík (collapsible) ===== */

.extract__controls[b-8eo4w93q0c] {
    margin-bottom: 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
}

.extract__controls-summary[b-8eo4w93q0c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    user-select: none;
}

.extract__controls-summary:hover[b-8eo4w93q0c] { background: rgba(58, 125, 93, 0.04); }

.extract__chevron[b-8eo4w93q0c] { font-size: 0.7rem; opacity: 0.6; }

.extract__controls-label[b-8eo4w93q0c] {
    display: flex;
    flex: 1;
    gap: 0.4rem;
    flex-wrap: wrap;
    align-items: center;
    min-width: 0;
}

.extract__chip[b-8eo4w93q0c] {
    display: inline-block;
    padding: 0.1rem 0.5rem;
    background: var(--color-bg, rgba(0, 0, 0, 0.04));
    border: 1px solid var(--color-border);
    border-radius: 999px;
    font-size: 0.72rem;
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.extract__chip--empty[b-8eo4w93q0c] { opacity: 0.55; font-style: italic; }

.extract__run-compact[b-8eo4w93q0c] {
    padding: 0.4rem 1rem;
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
    border: 0;
    border-radius: var(--radius-sm, 6px);
    font-weight: 600;
    font-size: 0.85rem;
    cursor: pointer;
    flex-shrink: 0;
}

.extract__run-compact:disabled[b-8eo4w93q0c] { opacity: 0.6; cursor: default; }

.extract__controls-body[b-8eo4w93q0c] {
    padding: 0.5rem 0.75rem 0.75rem;
    border-top: 1px solid var(--color-border);
}

.extract__guide[b-8eo4w93q0c] {
    margin-bottom: 0.5rem;
    padding: 0.4rem 0.6rem;
    background: rgba(58, 125, 93, 0.06);
    border: 1px dashed var(--color-border);
    border-radius: var(--radius-sm, 6px);
}

.extract__guide summary[b-8eo4w93q0c] {
    cursor: pointer;
    font-weight: 600;
    font-size: 0.85rem;
}

.extract__guide-text[b-8eo4w93q0c] {
    margin: 0.5rem 0 0;
    font-size: 0.85rem;
    white-space: pre-wrap;
    font-family: inherit;
}

.extract__instructions[b-8eo4w93q0c] { margin-bottom: 1rem; }

/* ===== Tab fejléc ===== */
.extract__tabs[b-8eo4w93q0c] {
    display: flex;
    border-bottom: 2px solid var(--color-border);
    margin-bottom: 0.75rem;
}

.extract__tab[b-8eo4w93q0c] {
    padding: 0.5rem 0.85rem;
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    font-size: 0.85rem;
    cursor: pointer;
    color: var(--color-text);
    opacity: 0.7;
}

.extract__tab:hover[b-8eo4w93q0c] { opacity: 1; }
.extract__tab.is-active[b-8eo4w93q0c] {
    opacity: 1;
    border-bottom-color: var(--color-accent, #d4af37);
    font-weight: 600;
}
.extract__tab:disabled[b-8eo4w93q0c] { cursor: default; opacity: 0.35; }

.extract__tab-panel[b-8eo4w93q0c] { /* csak rendezés */ }

.extract__empty[b-8eo4w93q0c] { opacity: 0.6; padding: 1rem 0; }

/* ===== Token-budget bar ===== */
.extract__budget[b-8eo4w93q0c] {
    position: relative;
    height: 18px;
    margin: 0.25rem 0 0.5rem;
    background: rgba(0, 0, 0, 0.06);
    border-radius: 999px;
    overflow: hidden;
}

.extract__budget-bar[b-8eo4w93q0c] {
    position: absolute;
    inset: 0 auto 0 0;
    background: linear-gradient(90deg, #15803d, #65a30d);
    transition: width 0.3s ease;
}

.extract__budget.is-warn .extract__budget-bar[b-8eo4w93q0c] { background: linear-gradient(90deg, #ca8a04, #ea580c); }
.extract__budget.is-danger .extract__budget-bar[b-8eo4w93q0c] { background: linear-gradient(90deg, #b91c1c, #ef4444); }

.extract__budget-text[b-8eo4w93q0c] {
    position: relative;
    z-index: 1;
    display: block;
    padding: 0 0.6rem;
    line-height: 18px;
    font-size: 0.7rem;
    color: #fff;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
    font-family: var(--font-mono, monospace);
}

/* ===== Filter checkbox a view-toggle mellett ===== */
.extract__filter[b-8eo4w93q0c] {
    margin-left: auto;
    font-size: 0.78rem;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    opacity: 0.85;
}

/* ===== Confidence színkód az esemény-kártyán ===== */
.extract__event.is-conf-high[b-8eo4w93q0c] { border-left: 4px solid #15803d; }
.extract__event.is-conf-medium[b-8eo4w93q0c] { border-left: 4px solid #ca8a04; }
.extract__event.is-conf-low[b-8eo4w93q0c] { border-left: 4px solid #b91c1c; }

.extract__event-copy[b-8eo4w93q0c] {
    margin-left: auto;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 0.85rem;
    opacity: 0.6;
    padding: 0.1rem 0.3rem;
}
.extract__event-copy:hover[b-8eo4w93q0c] { opacity: 1; }

/* ===== Compare tab ===== */
.extract__compare-picker[b-8eo4w93q0c] {
    display: flex;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.extract__compare-picker label[b-8eo4w93q0c] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    font-size: 0.78rem;
    font-weight: 600;
    opacity: 0.85;
}

.extract__compare-picker select[b-8eo4w93q0c] {
    padding: 0.3rem 0.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    font-size: 0.8rem;
}

.extract__compare-grid[b-8eo4w93q0c] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

@media (max-width: 1100px) {
    .extract__compare-grid[b-8eo4w93q0c] { grid-template-columns: 1fr; }
}

.extract__compare-pane[b-8eo4w93q0c] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    padding: 0.6rem;
    max-height: 70vh;
    overflow: auto;
}

.extract__compare-pane h4[b-8eo4w93q0c] {
    margin: 0;
    font-size: 0.85rem;
    font-family: var(--font-mono, monospace);
}

.extract__compare-pane small[b-8eo4w93q0c] {
    display: block;
    margin: 0 0 0.4rem;
    font-size: 0.7rem;
    opacity: 0.7;
}

/* ===== History entry — star + preferred ===== */
.extract__history-entry.is-preferred[b-8eo4w93q0c] {
    border-color: var(--color-accent, #d4af37);
    background: rgba(212, 175, 55, 0.1);
}

.extract__star[b-8eo4w93q0c] {
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 1.05rem;
    color: var(--color-accent, #d4af37);
    padding: 0;
    line-height: 1;
}

.extract__label[b-8eo4w93q0c] {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    opacity: 0.85;
}

.extract__textarea[b-8eo4w93q0c] {
    width: 100%;
    padding: 0.5rem 0.6rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    font-family: inherit;
    font-size: 0.85rem;
    resize: vertical;
}

.extract__run[b-8eo4w93q0c] {
    margin-top: 0.5rem;
    padding: 0.5rem 1.2rem;
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
    border: 0;
    border-radius: var(--radius-sm, 6px);
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.extract__run:disabled[b-8eo4w93q0c] {
    opacity: 0.6;
    cursor: default;
}

.extract__loading[b-8eo4w93q0c] {
    margin: 1.5rem 0;
    text-align: center;
}

.extract__spinner[b-8eo4w93q0c] {
    display: inline-block;
    width: 28px;
    height: 28px;
    border: 3px solid var(--color-border);
    border-top-color: var(--color-primary);
    border-radius: 50%;
    animation: extract-spin-b-8eo4w93q0c 0.8s linear infinite;
}

@keyframes extract-spin-b-8eo4w93q0c { to { transform: rotate(360deg); } }

.extract__error[b-8eo4w93q0c] {
    margin-top: 1rem;
    padding: 0.75rem;
    background: rgba(185, 28, 28, 0.1);
    border: 1px solid var(--color-danger, #b91c1c);
    border-radius: var(--radius-sm, 6px);
}

.extract__error p[b-8eo4w93q0c] { margin: 0.5rem 0 0; font-size: 0.85rem; }

.extract__result-meta[b-8eo4w93q0c] {
    font-size: 0.75rem;
    color: var(--color-primary);
    margin: 0.5rem 0;
}

.extract__view-toggle[b-8eo4w93q0c] {
    display: inline-flex;
    margin-bottom: 0.75rem;
    border: 1px solid var(--color-border);
    border-radius: 999px;
    overflow: hidden;
}

.extract__view-btn[b-8eo4w93q0c] {
    border: 0;
    background: transparent;
    padding: 0.3rem 0.8rem;
    font-size: 0.8rem;
    cursor: pointer;
    color: var(--color-text);
}

.extract__view-btn.is-active[b-8eo4w93q0c] {
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
}

.extract__json[b-8eo4w93q0c] {
    margin: 0;
    padding: 0.75rem;
    background: rgba(0, 0, 0, 0.04);
    border-radius: var(--radius-sm, 6px);
    font-family: var(--font-mono, monospace);
    font-size: 0.72rem;
    line-height: 1.4;
    max-height: 65vh;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
}

.extract__hint[b-8eo4w93q0c] { opacity: 0.7; font-size: 0.85rem; }

.extract__summary[b-8eo4w93q0c] {
    font-style: italic;
    background: rgba(212, 175, 55, 0.08);
    padding: 0.5rem 0.75rem;
    border-left: 3px solid var(--color-accent, #d4af37);
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
}

.extract__small[b-8eo4w93q0c] {
    margin: 0.3rem 0 1rem;
    font-size: 0.78rem;
    opacity: 0.85;
}

.extract__event[b-8eo4w93q0c] {
    background: rgba(58, 125, 93, 0.03);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    padding: 0.75rem;
    margin-bottom: 0.75rem;
}

.extract__event-header[b-8eo4w93q0c] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    align-items: center;
    margin-bottom: 0.5rem;
}

.extract__event-type[b-8eo4w93q0c] {
    font-weight: 700;
    font-family: var(--font-display);
    color: var(--color-primary);
}

.extract__event-date[b-8eo4w93q0c] {
    font-family: var(--font-mono, monospace);
    font-size: 0.85rem;
    opacity: 0.85;
}

.extract__event-confidence[b-8eo4w93q0c] {
    padding: 0.05rem 0.4rem;
    font-size: 0.65rem;
    text-transform: uppercase;
    border-radius: 999px;
    margin-left: auto;
}

.extract__event-confidence--high[b-8eo4w93q0c] { background: rgba(34, 197, 94, 0.15); color: #15803d; }
.extract__event-confidence--medium[b-8eo4w93q0c] { background: rgba(234, 179, 8, 0.15); color: #a16207; }
.extract__event-confidence--low[b-8eo4w93q0c] { background: rgba(185, 28, 28, 0.15); color: #b91c1c; }

.extract__event-primary[b-8eo4w93q0c] {
    font-size: 0.95rem;
    margin-bottom: 0.3rem;
}

.extract__sex[b-8eo4w93q0c] { margin-left: 0.25rem; opacity: 0.7; }

.extract__event-related[b-8eo4w93q0c] {
    list-style: none;
    margin: 0 0 0.4rem;
    padding-left: 0;
    font-size: 0.85rem;
}

.extract__event-related li[b-8eo4w93q0c] { padding: 0.1rem 0; }
.extract__event-related em[b-8eo4w93q0c] { opacity: 0.7; }

.extract__event-meta[b-8eo4w93q0c] {
    margin-bottom: 0.4rem;
    display: flex;
    gap: 0.35rem;
    flex-wrap: wrap;
}

.extract__chip[b-8eo4w93q0c] {
    display: inline-block;
    padding: 0.1rem 0.5rem;
    background: var(--color-bg, rgba(0, 0, 0, 0.04));
    border: 1px solid var(--color-border);
    border-radius: 999px;
    font-size: 0.72rem;
}

.extract__event-notes[b-8eo4w93q0c] {
    font-size: 0.8rem;
    margin: 0.3rem 0;
    opacity: 0.85;
}

.extract__event-transcription[b-8eo4w93q0c] {
    margin-top: 0.4rem;
    font-size: 0.78rem;
}

.extract__event-transcription summary[b-8eo4w93q0c] {
    cursor: pointer;
    opacity: 0.7;
}

.extract__event-transcription blockquote[b-8eo4w93q0c] {
    margin: 0.4rem 0 0;
    padding: 0.4rem 0.6rem;
    border-left: 2px solid var(--color-border);
    font-style: italic;
    opacity: 0.85;
    white-space: pre-wrap;
}

/* ===== History ===== */

.extract__truncated[b-8eo4w93q0c] {
    margin: 0.5rem 0;
    padding: 0.55rem 0.75rem;
    background: rgba(234, 179, 8, 0.15);
    border: 1px solid #ca8a04;
    border-radius: var(--radius-sm, 6px);
    font-size: 0.82rem;
    color: #713f12;
}

.extract__truncated p[b-8eo4w93q0c] {
    margin: 0.25rem 0 0;
    font-size: 0.78rem;
    line-height: 1.4;
}

.extract__historical-banner[b-8eo4w93q0c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.65rem;
    background: rgba(212, 175, 55, 0.12);
    border: 1px dashed var(--color-accent, #d4af37);
    border-radius: var(--radius-sm, 6px);
    font-size: 0.8rem;
    margin-bottom: 0.5rem;
}

.extract__historical-close[b-8eo4w93q0c] {
    margin-left: auto;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 0.85rem;
    opacity: 0.7;
    padding: 0.1rem 0.4rem;
}

.extract__historical-close:hover[b-8eo4w93q0c] { opacity: 1; }

.extract__history[b-8eo4w93q0c] {
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--color-border);
}

.extract__history h2[b-8eo4w93q0c] {
    margin: 0 0 0.5rem;
    font-size: 0.95rem;
}

.extract__history-list[b-8eo4w93q0c] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.extract__history-entry[b-8eo4w93q0c] {
    padding: 0.5rem 0.65rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
}

.extract__history-entry.is-current[b-8eo4w93q0c] {
    border-color: var(--color-accent, #d4af37);
    background: rgba(212, 175, 55, 0.06);
}

.extract__history-head[b-8eo4w93q0c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.extract__history-time[b-8eo4w93q0c] {
    font-family: var(--font-mono, monospace);
    font-size: 0.78rem;
    opacity: 0.85;
}

.extract__history-badge[b-8eo4w93q0c] {
    padding: 0.05rem 0.4rem;
    font-size: 0.65rem;
    background: var(--color-accent, #d4af37);
    color: var(--color-text-on-primary, #fff);
    border-radius: 999px;
    text-transform: uppercase;
}

.extract__history-meta[b-8eo4w93q0c] {
    margin-left: auto;
    font-size: 0.72rem;
    opacity: 0.75;
    font-family: var(--font-mono, monospace);
}

.extract__history-custom[b-8eo4w93q0c] {
    margin: 0.3rem 0;
    font-size: 0.78rem;
    opacity: 0.9;
}

.extract__history-custom--empty[b-8eo4w93q0c] { opacity: 0.55; font-style: italic; }

.extract__history-actions[b-8eo4w93q0c] {
    display: flex;
    gap: 0.35rem;
}

.extract__history-btn[b-8eo4w93q0c] {
    padding: 0.2rem 0.55rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: transparent;
    color: var(--color-text);
    font-size: 0.72rem;
    cursor: pointer;
    transition: border-color 0.15s ease;
}

.extract__history-btn:hover[b-8eo4w93q0c] {
    border-color: var(--color-accent, #d4af37);
}

/* ===== JSON szerkesztés + beküldés (Step 3 + 4) ===== */

.extract__json-toolbar[b-8eo4w93q0c] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.25rem;
}

.extract__json--edit[b-8eo4w93q0c] {
    width: 100%;
    font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
    font-size: 0.85rem;
    padding: 0.75rem;
    border: 1px solid var(--color-border, #ccc);
    border-radius: 4px;
    resize: vertical;
    min-height: 320px;
    box-sizing: border-box;
}

.extract__edit-actions[b-8eo4w93q0c] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.5rem;
}

.extract__error-line[b-8eo4w93q0c] {
    color: #b00020;
    font-size: 0.9rem;
    margin: 0.5rem 0;
}

.extract__btn[b-8eo4w93q0c] {
    background: transparent;
    border: 1px solid var(--color-border, #ccc);
    border-radius: 4px;
    padding: 0.4rem 0.85rem;
    cursor: pointer;
    font-size: 0.9rem;
}

.extract__btn:hover:not(:disabled)[b-8eo4w93q0c] {
    border-color: var(--color-accent, #d4af37);
}

.extract__btn:disabled[b-8eo4w93q0c] {
    opacity: 0.5;
    cursor: not-allowed;
}

.extract__btn--primary[b-8eo4w93q0c] {
    background: var(--color-accent, #d4af37);
    color: #1a1a1a;
    border-color: var(--color-accent, #d4af37);
}

.extract__btn--primary:hover:not(:disabled)[b-8eo4w93q0c] {
    filter: brightness(1.05);
}

.extract__btn--ghost[b-8eo4w93q0c] {
    color: var(--color-text-muted, #666);
}

.extract__btn--large[b-8eo4w93q0c] {
    padding: 0.6rem 1.25rem;
    font-size: 1rem;
    font-weight: 600;
}

.extract__submit[b-8eo4w93q0c] {
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px dashed var(--color-border, #ccc);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.4rem;
}

.extract__submit-hint[b-8eo4w93q0c] {
    margin: 0;
    font-size: 0.85rem;
    color: var(--color-text-muted, #666);
}

/* ===== Loading screen progress log ===== */

.extract__loading-step[b-8eo4w93q0c] {
    margin: 0.5rem 0;
    font-weight: 500;
}

.extract__progress-log[b-8eo4w93q0c] {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0.75rem;
    border: 1px solid var(--color-border, #ccc);
    border-radius: 4px;
    background: var(--color-surface-alt, rgba(0, 0, 0, 0.03));
    max-height: 320px;
    overflow-y: auto;
    font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
    font-size: 0.82rem;
    line-height: 1.55;
}

.extract__progress-item[b-8eo4w93q0c] {
    display: grid;
    grid-template-columns: 70px 1fr;
    gap: 0.5rem;
    padding: 0.2rem 0;
}

.extract__progress-time[b-8eo4w93q0c] {
    color: var(--color-text-muted, #777);
    white-space: nowrap;
}

.extract__progress-msg[b-8eo4w93q0c] {
    word-break: break-word;
}

.extract__progress-item--warn .extract__progress-msg[b-8eo4w93q0c] {
    color: #b8860b;
}

.extract__progress-item--error .extract__progress-msg[b-8eo4w93q0c] {
    color: #b00020;
}

.extract__progress-hint[b-8eo4w93q0c] {
    margin: 0.75rem 0 0;
    font-size: 0.85rem;
    color: var(--color-text-muted, #777);
    font-style: italic;
}

.extract__history-error[b-8eo4w93q0c] {
    margin: 0.5rem 0 0;
    padding: 0.5rem 0.75rem;
    background: rgba(176, 0, 32, 0.08);
    border-left: 3px solid #b00020;
    border-radius: 3px;
    color: #b00020;
    font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
    font-size: 0.82rem;
    line-height: 1.5;
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 200px;
    overflow-y: auto;
}

.extract__history-error--pending[b-8eo4w93q0c] {
    background: rgba(212, 175, 55, 0.1);
    border-left-color: #d4af37;
    color: var(--color-text, #444);
    font-family: inherit;
}
/* /Components/Pages/AdminRaw.razor.rz.scp.css */
.admin[b-kwrbwzbhz6] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.admin__inner[b-kwrbwzbhz6] {
    max-width: 1400px;
    margin: 0 auto;
}

/* ===== Subnav (Raw ↔ Domain switch) ===== */

.admin__subnav[b-kwrbwzbhz6] {
    display: flex;
    gap: 0;
    margin-bottom: 1.5rem;
    border-bottom: 2px solid var(--color-border);
}

.admin__subnav-link[b-kwrbwzbhz6] {
    padding: 0.625rem 1.25rem;
    background: transparent;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 500;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    text-decoration: none;
    transition: all 120ms ease-in-out;
}

.admin__subnav-link:hover[b-kwrbwzbhz6] {
    color: var(--color-text-strong);
}

.admin__subnav-link--active[b-kwrbwzbhz6] {
    color: var(--color-primary);
    border-bottom-color: var(--color-accent);
    font-weight: 600;
}

.admin__header[b-kwrbwzbhz6] {
    margin-bottom: 1.5rem;
}

.admin__header h1[b-kwrbwzbhz6] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: var(--color-text-strong);
    margin: 0 0 0.375rem 0;
}

.admin__lead[b-kwrbwzbhz6] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

/* ===== Notices (warn / error) ===== */

.admin__notice[b-kwrbwzbhz6] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
}

.admin__notice--warn[b-kwrbwzbhz6] {
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}

.admin__notice--error[b-kwrbwzbhz6] {
    background: rgba(185, 28, 28, 0.08);
    border: 1px solid rgba(185, 28, 28, 0.25);
    color: var(--color-danger);
}

.admin__notice p[b-kwrbwzbhz6] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ===== Records Browser ===== */

.records-browser[b-kwrbwzbhz6] {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 1.5rem;
    min-height: 500px;
}

.records-browser__sidebar[b-kwrbwzbhz6] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1rem;
    overflow: hidden;
}

.records-browser__sidebar-title[b-kwrbwzbhz6] {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    margin: 0 0 0.75rem 0;
    font-weight: 600;
}

.records-browser__table-list[b-kwrbwzbhz6] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.records-browser__table-btn[b-kwrbwzbhz6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 0.625rem;
    background: transparent;
    border: none;
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    text-align: left;
    cursor: pointer;
    transition: all 80ms ease-in-out;
}

.records-browser__table-btn:hover[b-kwrbwzbhz6] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
}

.records-browser__table-btn--active[b-kwrbwzbhz6] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

.records-browser__table-name[b-kwrbwzbhz6] {
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table-count[b-kwrbwzbhz6] {
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
    color: var(--color-accent);
    font-weight: 600;
    font-size: 0.75rem;
}

.records-browser__content[b-kwrbwzbhz6] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1.25rem;
    overflow: hidden;
}

.records-browser__empty-state[b-kwrbwzbhz6] {
    text-align: center;
    padding: 4rem 1rem;
    color: var(--color-text);
}

.records-browser__moon[b-kwrbwzbhz6] {
    font-size: 3rem;
    color: var(--color-accent);
    line-height: 1;
    margin-bottom: 0.5rem;
    opacity: 0.6;
}

.records-browser__loading[b-kwrbwzbhz6],
.records-browser__empty[b-kwrbwzbhz6] {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.875rem;
}

.records-browser__toolbar[b-kwrbwzbhz6] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.records-browser__title[b-kwrbwzbhz6] {
    font-family: var(--font-mono);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    margin: 0 0 0.25rem 0;
}

.records-browser__meta[b-kwrbwzbhz6] {
    color: var(--color-text);
    font-size: 0.8125rem;
    margin: 0;
}

.records-browser__table-wrap[b-kwrbwzbhz6] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}

.records-browser__table[b-kwrbwzbhz6] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
    font-family: var(--font-body);
}

.records-browser__table th[b-kwrbwzbhz6] {
    text-align: left;
    padding: 0.5rem 0.625rem;
    background: var(--color-surface-alt);
    color: var(--color-text);
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.6875rem;
    letter-spacing: 0.06em;
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
}

.records-browser__table td[b-kwrbwzbhz6] {
    padding: 0.5rem 0.625rem;
    color: var(--color-text-strong);
    border-bottom: 1px solid var(--color-border);
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.records-browser__table tr:last-child td[b-kwrbwzbhz6] { border-bottom: none; }
.records-browser__table tr:hover td[b-kwrbwzbhz6] { background: var(--color-surface-alt); }

@media (max-width: 900px) {
    .records-browser[b-kwrbwzbhz6] { grid-template-columns: 1fr; }
    .records-browser__sidebar[b-kwrbwzbhz6] { max-height: 240px; overflow-y: auto; }
}
/* /Components/Pages/AdminResolveOccupations.razor.rz.scp.css */
.resolve-occ[b-vbxijpv9i3] {
    padding: 1.5rem 1rem 4rem;
    max-width: 1200px;
    margin: 0 auto;
}

.resolve-occ__head[b-vbxijpv9i3] { margin-bottom: 1.5rem; }
.resolve-occ__head h1[b-vbxijpv9i3] { margin: 0 0 0.5rem; }
.resolve-occ__lead[b-vbxijpv9i3] { color: var(--color-text-muted, #666); margin: 0; }

.resolve-occ__count[b-vbxijpv9i3] {
    font-size: 0.95rem;
    color: var(--color-text-muted, #666);
    margin: 1rem 0;
}

.resolve-occ__empty[b-vbxijpv9i3] {
    padding: 2rem;
    text-align: center;
    color: var(--color-success, #2a8a2a);
    font-size: 1.1rem;
    font-weight: 500;
}

.resolve-occ__list[b-vbxijpv9i3] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.resolve-occ__row[b-vbxijpv9i3] {
    padding: 1rem 1.25rem;
    border: 1px solid var(--color-border, #ccc);
    border-radius: 6px;
    background: var(--color-surface, transparent);
}

.resolve-occ__row.is-saved[b-vbxijpv9i3] {
    background: rgba(42, 138, 42, 0.06);
    border-color: rgba(42, 138, 42, 0.3);
    opacity: 0.85;
}

.resolve-occ__row-head[b-vbxijpv9i3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 0.75rem;
}

.resolve-occ__raw strong[b-vbxijpv9i3] {
    font-size: 1.05rem;
    color: var(--color-accent, #d4af37);
}

.resolve-occ__count-badge[b-vbxijpv9i3] {
    margin-left: 0.75rem;
    padding: 0.15rem 0.5rem;
    background: rgba(0, 0, 0, 0.06);
    border-radius: 3px;
    font-size: 0.82rem;
    color: var(--color-text-muted, #666);
}

.resolve-occ__saved-badge[b-vbxijpv9i3] {
    color: #2a8a2a;
    font-size: 0.9rem;
    font-weight: 500;
}

.resolve-occ__choice[b-vbxijpv9i3] {
    display: flex;
    gap: 1.5rem;
    margin: 0.5rem 0 0.75rem;
}

.resolve-occ__choice-option[b-vbxijpv9i3] {
    cursor: pointer;
    font-size: 0.95rem;
}

.resolve-occ__choice-option input[b-vbxijpv9i3] { margin-right: 0.4rem; }

.resolve-occ__suggestions[b-vbxijpv9i3] {
    margin: 0.5rem 0;
    padding: 0.75rem;
    background: rgba(0, 0, 0, 0.03);
    border-radius: 4px;
}

.resolve-occ__suggestions-hint[b-vbxijpv9i3] {
    margin: 0 0 0.5rem;
    font-size: 0.85rem;
    color: var(--color-text-muted, #666);
}

.resolve-occ__no-match[b-vbxijpv9i3] {
    margin: 0;
    color: var(--color-text-muted, #888);
    font-style: italic;
}

.resolve-occ__suggestion[b-vbxijpv9i3] {
    display: grid;
    grid-template-columns: auto 1fr auto auto;
    gap: 0.5rem;
    padding: 0.4rem 0.5rem;
    align-items: center;
    cursor: pointer;
    border-radius: 3px;
}

.resolve-occ__suggestion:hover[b-vbxijpv9i3] { background: rgba(0, 0, 0, 0.05); }

.resolve-occ__sug-name[b-vbxijpv9i3] { font-weight: 500; }
.resolve-occ__sug-alt[b-vbxijpv9i3] {
    color: var(--color-text-muted, #888);
    font-size: 0.88rem;
    font-style: italic;
}

.resolve-occ__sug-score[b-vbxijpv9i3] {
    padding: 0.1rem 0.4rem;
    border-radius: 3px;
    font-size: 0.78rem;
    font-family: ui-monospace, monospace;
    color: white;
}

.resolve-occ__suggestion.is-strong .resolve-occ__sug-score[b-vbxijpv9i3] { background: #2a8a2a; }
.resolve-occ__suggestion.is-medium .resolve-occ__sug-score[b-vbxijpv9i3] { background: #d4af37; color: #1a1a1a; }
.resolve-occ__suggestion.is-weak .resolve-occ__sug-score[b-vbxijpv9i3] { background: #888; }

.resolve-occ__new-form[b-vbxijpv9i3] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin: 0.5rem 0;
    padding: 0.75rem;
    background: rgba(0, 0, 0, 0.03);
    border-radius: 4px;
}

.resolve-occ__field[b-vbxijpv9i3] {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 0.5rem;
    align-items: center;
    font-size: 0.92rem;
}

.resolve-occ__field input[b-vbxijpv9i3] {
    padding: 0.4rem 0.6rem;
    border: 1px solid var(--color-border, #ccc);
    border-radius: 3px;
    font-size: 0.95rem;
}

.resolve-occ__actions[b-vbxijpv9i3] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 0.5rem;
}

.resolve-occ__save[b-vbxijpv9i3] {
    padding: 0.5rem 1rem;
    background: var(--color-accent, #d4af37);
    color: #1a1a1a;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    font-size: 0.95rem;
}

.resolve-occ__save:disabled[b-vbxijpv9i3] {
    opacity: 0.5;
    cursor: not-allowed;
}

.resolve-occ__save:hover:not(:disabled)[b-vbxijpv9i3] { filter: brightness(1.05); }

.resolve-occ__error[b-vbxijpv9i3] {
    color: #b00020;
    font-size: 0.88rem;
}
/* /Components/Pages/AdminSourceMedia.razor.rz.scp.css */
.source-media[b-9u63lao3u8] { padding: 2rem 1rem 4rem; }
.source-media__inner[b-9u63lao3u8] { max-width: 1200px; margin: 0 auto; }

.source-media__header[b-9u63lao3u8] { margin-bottom: 1.25rem; }
.source-media__header h1[b-9u63lao3u8] { margin: 0 0 0.25rem; color: var(--color-primary); }
.source-media__source-line[b-9u63lao3u8] { margin: 0 0 0.35rem; font-size: 0.95rem; }
.source-media__source-link[b-9u63lao3u8] { color: var(--color-text-strong); text-decoration: none; font-weight: 600; }
.source-media__source-link:hover[b-9u63lao3u8] { text-decoration: underline; }
.source-media__lead[b-9u63lao3u8] { margin: 0 0 0.5rem; opacity: 0.85; }
.source-media__back[b-9u63lao3u8] { font-size: 0.875rem; color: var(--color-primary); text-decoration: none; }
.source-media__back:hover[b-9u63lao3u8] { text-decoration: underline; }

.source-media__warning[b-9u63lao3u8] {
    background: rgba(212, 175, 55, 0.12);
    border: 1px solid var(--color-accent, #d4af37);
    border-radius: var(--radius-md);
    padding: 1rem;
    margin: 1rem 0;
}
.source-media__warning p[b-9u63lao3u8] { margin: 0.5rem 0 0; font-size: 0.875rem; }

.source-media__upload[b-9u63lao3u8] {
    background: var(--color-surface);
    border: 1px dashed var(--color-accent, #d4af37);
    border-radius: var(--radius-md);
    padding: 1rem;
    margin-bottom: 1.5rem;
}
.source-media__upload h2[b-9u63lao3u8] { margin: 0 0 0.35rem; font-size: 1.1rem; }
.source-media__upload-lead[b-9u63lao3u8] { margin: 0 0 0.75rem; font-size: 0.85rem; opacity: 0.8; }
.source-media__file-input[b-9u63lao3u8] {
    display: block;
    padding: 0.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: var(--color-bg, #fff);
    width: 100%;
    max-width: 600px;
}

.source-media__progress[b-9u63lao3u8] {
    margin-top: 0.5rem;
    font-size: 0.85rem;
    color: var(--color-primary);
    font-weight: 600;
}

.source-media__msg[b-9u63lao3u8] {
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: var(--radius-sm, 6px);
    background: rgba(58, 125, 93, 0.1);
    font-size: 0.875rem;
}
.source-media__msg--error[b-9u63lao3u8] {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger);
}

.source-media__list-title[b-9u63lao3u8] { margin-top: 0; font-size: 1.1rem; }
.source-media__empty[b-9u63lao3u8] { opacity: 0.7; }

.source-media__grid[b-9u63lao3u8] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 0.85rem;
    margin-top: 0.75rem;
}

.source-media__card[b-9u63lao3u8] {
    margin: 0;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.source-media__card img[b-9u63lao3u8] {
    display: block;
    width: 100%;
    height: 170px;
    object-fit: cover;
    background: rgba(0, 0, 0, 0.04);
}

.source-media__placeholder[b-9u63lao3u8] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 170px;
    background: rgba(0, 0, 0, 0.04);
    color: var(--color-text);
    opacity: 0.6;
    font-size: 0.75rem;
    padding: 0.5rem;
    text-align: center;
    overflow: hidden;
}

.source-media__card figcaption[b-9u63lao3u8] {
    padding: 0.4rem 0.6rem;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.source-media__card figcaption strong[b-9u63lao3u8] {
    font-size: 0.85rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.source-media__card figcaption small[b-9u63lao3u8] {
    font-size: 0.7rem;
    opacity: 0.7;
}

.source-media__extract-btn[b-9u63lao3u8] {
    margin-top: 0.4rem;
    padding: 0.3rem 0.6rem;
    border: 1px solid var(--color-accent, #d4af37);
    border-radius: var(--radius-sm, 6px);
    background: transparent;
    color: var(--color-primary);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s ease;
}

.source-media__extract-btn:hover:not(:disabled)[b-9u63lao3u8] {
    background: rgba(212, 175, 55, 0.1);
}

.source-media__extract-btn:disabled[b-9u63lao3u8] {
    opacity: 0.6;
    cursor: default;
}

.source-media__extract-result[b-9u63lao3u8] {
    margin-top: 0.5rem;
    padding-top: 0.4rem;
    border-top: 1px dashed var(--color-border);
}

.source-media__extract-stats[b-9u63lao3u8] {
    display: block;
    font-size: 0.7rem;
    color: var(--color-primary);
    margin-bottom: 0.3rem;
}

.source-media__extract-error[b-9u63lao3u8] {
    color: var(--color-danger, #b91c1c);
    font-size: 0.75rem;
    display: block;
}

.source-media__extract-json[b-9u63lao3u8] {
    margin: 0;
    padding: 0.5rem;
    background: rgba(0, 0, 0, 0.04);
    border-radius: var(--radius-sm, 6px);
    font-family: var(--font-mono, monospace);
    font-size: 0.65rem;
    line-height: 1.35;
    max-height: 400px;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
}
/* /Components/Pages/BundleDetail.razor.rz.scp.css */
.bundle-detail[b-mdrwic3g7t] {
    padding: 2rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.bundle-detail__inner[b-mdrwic3g7t] {
    max-width: 1600px;
    margin: 0 auto;
}

.bundle-detail__back[b-mdrwic3g7t] {
    margin-bottom: 1rem;
}

.bundle-detail__back a[b-mdrwic3g7t] {
    color: var(--color-text);
    text-decoration: none;
    font-size: 0.875rem;
}

.bundle-detail__back a:hover[b-mdrwic3g7t] { color: var(--color-primary); }

.bundle-detail__loading[b-mdrwic3g7t] { padding: 3rem; text-align: center; color: var(--color-text); }

/* ===== Header ===== */

.bundle-detail__header[b-mdrwic3g7t] {
    padding: 1.25rem 1.5rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    margin-bottom: 1rem;
}

.bundle-detail__header-row[b-mdrwic3g7t] {
    display: flex; align-items: center; justify-content: space-between;
    gap: 1rem; flex-wrap: wrap; margin-bottom: 0.5rem;
}

.bundle-detail__title[b-mdrwic3g7t] {
    font-family: var(--font-display);
    font-size: clamp(1.25rem, 2.5vw, 1.75rem);
    color: var(--color-text-strong);
    margin: 0;
}

.bundle-detail__meta[b-mdrwic3g7t] {
    display: flex; align-items: center; gap: 0.75rem;
    flex-wrap: wrap; color: var(--color-text); font-size: 0.875rem;
}

.bundle-detail__chip[b-mdrwic3g7t] {
    display: inline-block;
    padding: 0.125rem 0.5rem; border-radius: var(--radius-sm);
    background: var(--color-surface-alt);
    color: var(--color-accent);
    font-size: 0.6875rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.08em;
}

.bundle-detail__meta-item[b-mdrwic3g7t] { font-variant-numeric: tabular-nums; }

.bundle-detail__confidence[b-mdrwic3g7t] { font-weight: 700; color: var(--color-accent); }

[b-mdrwic3g7t] .badge {
    display: inline-flex; align-items: center;
    padding: 0.25rem 0.625rem; border-radius: var(--radius-sm);
    font-size: 0.6875rem; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.05em;
    background: var(--color-surface-alt); color: var(--color-text);
}
[b-mdrwic3g7t] .badge--success { background: rgba(21, 128, 61, 0.12); color: var(--color-success); }
[b-mdrwic3g7t] .badge--warning { background: rgba(161, 98, 7, 0.12);  color: var(--color-warning); }
[b-mdrwic3g7t] .badge--danger  { background: rgba(185, 28, 28, 0.12); color: var(--color-danger); }
[b-mdrwic3g7t] .badge--info    { background: rgba(11, 29, 51, 0.08);  color: var(--color-primary); }

/* ===== 3-hasábos törzs ===== */

.bundle-detail__columns[b-mdrwic3g7t] {
    display: grid;
    grid-template-columns: 320px 1fr 320px;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

@media (max-width: 1200px) {
    .bundle-detail__columns[b-mdrwic3g7t] { grid-template-columns: 1fr; }
}

.bundle-detail__col[b-mdrwic3g7t] {
    padding: 1rem 1.25rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    min-width: 0;
}

.bundle-detail__col-title[b-mdrwic3g7t] {
    font-family: var(--font-display);
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--color-text-strong);
    text-transform: uppercase; letter-spacing: 0.08em;
    margin: 0 0 1rem 0;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--color-accent);
}

.bundle-detail__col-subtitle[b-mdrwic3g7t] {
    font-family: var(--font-display);
    font-size: 0.875rem; font-weight: 600;
    color: var(--color-text-strong);
    margin: 1.25rem 0 0.5rem 0;
    display: flex; align-items: center; gap: 0.375rem;
}

.bundle-detail__count[b-mdrwic3g7t] {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 20px; height: 18px; padding: 0 0.375rem;
    background: var(--color-accent); color: var(--color-text-on-accent);
    border-radius: 999px;
    font-size: 0.625rem; font-weight: 700;
}

/* ===== Bal hasáb: forrás ===== */

.bundle-detail__meta-list[b-mdrwic3g7t] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.25rem 0.75rem;
    font-size: 0.8125rem;
    margin: 0 0 0.75rem 0;
}

.bundle-detail__meta-list dt[b-mdrwic3g7t] {
    color: var(--color-text); opacity: 0.7;
    font-weight: 500;
}

.bundle-detail__meta-list dd[b-mdrwic3g7t] {
    color: var(--color-text-strong);
    margin: 0;
    word-break: break-word;
}

.bundle-detail__short[b-mdrwic3g7t] {
    font-family: var(--font-mono); font-size: 0.75rem;
    background: var(--color-surface-alt);
    padding: 0.0625rem 0.25rem; border-radius: var(--radius-sm);
}

.bundle-detail__json[b-mdrwic3g7t] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
    font-family: var(--font-mono);
    font-size: 0.6875rem;
    padding: 0.625rem;
    border-radius: var(--radius-sm);
    border: 1px solid var(--color-border);
    overflow-x: auto;
    max-height: 400px;
    line-height: 1.4;
    margin: 0;
    white-space: pre-wrap; word-break: break-word;
}

/* ===== Közép hasáb: javaslat ===== */

.bundle-detail__card[b-mdrwic3g7t] {
    padding: 0.75rem 0.875rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-left: 3px solid var(--color-accent);
    border-radius: var(--radius-sm);
    margin-bottom: 0.625rem;
    font-size: 0.875rem;
}

.bundle-detail__card-head[b-mdrwic3g7t] {
    display: flex; align-items: center; justify-content: space-between;
    gap: 0.5rem; margin-bottom: 0.375rem;
}

.bundle-detail__role-badge[b-mdrwic3g7t],
.bundle-detail__type-badge[b-mdrwic3g7t] {
    display: inline-block;
    padding: 0.125rem 0.5rem; border-radius: var(--radius-sm);
    background: var(--color-primary); color: var(--color-text-on-primary);
    font-size: 0.625rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.06em;
}

.bundle-detail__sex[b-mdrwic3g7t] { font-size: 1rem; }

.bundle-detail__card-name[b-mdrwic3g7t] {
    font-family: var(--font-display);
    font-size: 1rem; font-weight: 600;
    color: var(--color-text-strong);
    margin-bottom: 0.375rem;
}

.bundle-detail__card-date[b-mdrwic3g7t] {
    font-family: var(--font-mono); font-size: 0.8125rem;
    color: var(--color-accent); font-weight: 700;
}

.bundle-detail__card-line[b-mdrwic3g7t] {
    color: var(--color-text); line-height: 1.5;
    margin-top: 0.25rem;
}

.bundle-detail__card-line small[b-mdrwic3g7t] {
    color: var(--color-text); opacity: 0.7;
    margin-right: 0.25rem;
}

.bundle-detail__card-foot[b-mdrwic3g7t] {
    margin-top: 0.5rem; padding-top: 0.375rem;
    border-top: 1px solid var(--color-border);
    color: var(--color-text); opacity: 0.7;
    font-size: 0.75rem;
}

.bundle-detail__linked[b-mdrwic3g7t] {
    color: var(--color-success); font-weight: 600;
    font-size: 0.75rem; margin-left: 0.375rem;
}

.bundle-detail__unlinked[b-mdrwic3g7t] {
    color: var(--color-warning); font-weight: 600;
    font-size: 0.75rem; margin-left: 0.375rem;
}

/* Lookup candidate-ek */

.bundle-detail__lookup[b-mdrwic3g7t] {
    padding: 0.5rem 0.625rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    margin-bottom: 0.375rem;
    font-size: 0.8125rem;
}

.bundle-detail__lookup-head[b-mdrwic3g7t] {
    display: flex; align-items: center; gap: 0.5rem;
    flex-wrap: wrap; margin-bottom: 0.125rem;
}

.bundle-detail__kind[b-mdrwic3g7t] {
    color: var(--color-primary); font-weight: 700;
    font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.06em;
}

.bundle-detail__raw[b-mdrwic3g7t] {
    font-family: var(--font-mono); font-size: 0.75rem;
    background: var(--color-surface);
    padding: 0.0625rem 0.25rem; border-radius: var(--radius-sm);
    color: var(--color-text);
}

.bundle-detail__lookup-body[b-mdrwic3g7t] { color: var(--color-text-strong); }

.bundle-detail__score[b-mdrwic3g7t] {
    color: var(--color-text); opacity: 0.7; font-size: 0.75rem;
}

/* Lookup decision badge (jelenlegi állapot) */

.bundle-detail__lookup-decision[b-mdrwic3g7t] {
    display: inline-block;
    padding: 0.0625rem 0.4rem; border-radius: var(--radius-sm);
    font-size: 0.625rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.06em;
    background: var(--color-surface);
    color: var(--color-text);
    margin-left: auto;
}

.bundle-detail__lookup-decision--linked[b-mdrwic3g7t]   { background: rgba(21, 128, 61, 0.15); color: var(--color-success); }
.bundle-detail__lookup-decision--new[b-mdrwic3g7t]      { background: rgba(11, 29, 51, 0.12); color: var(--color-primary); }
.bundle-detail__lookup-decision--synonym[b-mdrwic3g7t]  { background: rgba(200, 169, 106, 0.18); color: var(--color-accent); }
.bundle-detail__lookup-decision--typo[b-mdrwic3g7t]     { background: rgba(200, 169, 106, 0.18); color: var(--color-accent); }
.bundle-detail__lookup-decision--deferred[b-mdrwic3g7t] { background: rgba(161, 98, 7, 0.12); color: var(--color-warning); }

/* Lookup action buttons */

.bundle-detail__lookup-actions[b-mdrwic3g7t] {
    display: flex; gap: 0.25rem; flex-wrap: wrap;
    margin-top: 0.375rem;
}

.bundle-detail__lookup-btn[b-mdrwic3g7t] {
    display: inline-flex; align-items: center;
    padding: 0.25rem 0.5rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.6875rem;
    font-weight: 600;
    color: var(--color-text);
    cursor: pointer;
    transition: all 100ms ease-in-out;
}

.bundle-detail__lookup-btn:hover:not(:disabled)[b-mdrwic3g7t] {
    background: var(--color-surface-alt);
    border-color: var(--color-accent);
}

.bundle-detail__lookup-btn:disabled[b-mdrwic3g7t] { opacity: 0.5; cursor: not-allowed; }

.bundle-detail__lookup-btn--active[b-mdrwic3g7t] {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-color: var(--color-accent);
}

.bundle-detail__lookup-btn--active:hover:not(:disabled)[b-mdrwic3g7t] {
    background: var(--color-accent-hover);
    color: var(--color-text-on-accent);
}

.bundle-detail__lookup-btn--reset[b-mdrwic3g7t] {
    margin-left: auto;
    padding: 0.25rem 0.4rem;
    font-size: 0.75rem;
    opacity: 0.6;
}

.bundle-detail__lookup-btn--reset:hover:not(:disabled)[b-mdrwic3g7t] { opacity: 1; }

/* ===== Jobb hasáb: egyezések ===== */

.bundle-detail__col--matches[b-mdrwic3g7t] { min-height: 200px; }

.bundle-detail__person-search[b-mdrwic3g7t] {
    display: flex;
    gap: 0.375rem;
    margin-bottom: 0.625rem;
}

.bundle-detail__person-search-input[b-mdrwic3g7t] {
    flex: 1; min-width: 0;
    padding: 0.375rem 0.5rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.8125rem;
    color: var(--color-text-strong);
}

.bundle-detail__person-search-input:focus[b-mdrwic3g7t] {
    outline: none;
    border-color: var(--color-accent);
}

.bundle-detail__person-search-btn[b-mdrwic3g7t] {
    padding: 0.375rem 0.625rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
}
.bundle-detail__person-search-btn:disabled[b-mdrwic3g7t] { opacity: 0.5; cursor: not-allowed; }

.bundle-detail__match-lead[b-mdrwic3g7t] {
    font-size: 0.75rem;
    color: var(--color-text); opacity: 0.7;
    margin: 0 0 0.5rem 0;
}

.bundle-detail__match-card[b-mdrwic3g7t] {
    padding: 0.625rem 0.75rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    margin-bottom: 0.5rem;
    transition: border-color 100ms ease;
}

.bundle-detail__match-card--linked[b-mdrwic3g7t] {
    border-color: var(--color-success);
    background: rgba(21, 128, 61, 0.08);
}

.bundle-detail__match-card-head[b-mdrwic3g7t] {
    display: flex; align-items: center; gap: 0.375rem;
    margin-bottom: 0.25rem;
}

.bundle-detail__match-name[b-mdrwic3g7t] {
    font-family: var(--font-display);
    font-size: 0.875rem; font-weight: 600;
    color: var(--color-text-strong);
    text-decoration: none;
}
.bundle-detail__match-name:hover[b-mdrwic3g7t] { color: var(--color-accent); }

.bundle-detail__match-sex[b-mdrwic3g7t] { font-size: 0.875rem; }

.bundle-detail__match-score[b-mdrwic3g7t] {
    margin-left: auto;
    padding: 0.0625rem 0.4rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.bundle-detail__match-sep[b-mdrwic3g7t] {
    margin: 0.75rem 0;
    border: none;
    border-top: 1px dashed var(--color-border);
}

.bundle-detail__match-years[b-mdrwic3g7t] {
    font-size: 0.75rem;
    color: var(--color-text); opacity: 0.75;
    font-variant-numeric: tabular-nums;
    margin-bottom: 0.5rem;
}

.bundle-detail__match-actions[b-mdrwic3g7t] {
    display: flex; gap: 0.25rem;
}

.bundle-detail__match-btn[b-mdrwic3g7t] {
    padding: 0.25rem 0.625rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body); font-size: 0.6875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 100ms ease;
}

.bundle-detail__match-btn--link[b-mdrwic3g7t] {
    background: var(--color-surface);
    color: var(--color-primary);
    border-color: var(--color-primary);
}
.bundle-detail__match-btn--link:hover:not(:disabled)[b-mdrwic3g7t] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

.bundle-detail__match-btn--unlink[b-mdrwic3g7t] {
    background: var(--color-success);
    color: white;
    border-color: var(--color-success);
}
.bundle-detail__match-btn--unlink:hover:not(:disabled)[b-mdrwic3g7t] {
    background: rgb(17, 105, 50);
}

.bundle-detail__match-btn:disabled[b-mdrwic3g7t] { opacity: 0.5; cursor: not-allowed; }

.bundle-detail__create-new[b-mdrwic3g7t] {
    margin-top: 0.75rem;
    padding-top: 0.625rem;
    border-top: 1px solid var(--color-border);
}

.bundle-detail__create-new-active[b-mdrwic3g7t] {
    margin: 0;
    color: var(--color-accent);
    font-size: 0.8125rem;
    font-weight: 600;
}

.bundle-detail__create-new-note[b-mdrwic3g7t] {
    margin: 0;
    color: var(--color-text); opacity: 0.7;
    font-size: 0.75rem; font-style: italic;
}

/* ===== Alsó akciósáv ===== */

.bundle-detail__actions[b-mdrwic3g7t] {
    padding: 1rem 1.5rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
}

.bundle-detail__actions-note[b-mdrwic3g7t] {
    color: var(--color-text); opacity: 0.75;
    font-size: 0.8125rem; margin: 0 0 0.75rem 0;
    font-style: italic;
}

.bundle-detail__actions-row[b-mdrwic3g7t] {
    display: flex; gap: 0.625rem; flex-wrap: wrap;
}

[b-mdrwic3g7t] .btn {
    display: inline-flex; align-items: center;
    padding: 0.5rem 1rem; border-radius: var(--radius-md);
    font-family: var(--font-body); font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 120ms ease-in-out;
    cursor: pointer; border: 1px solid transparent;
}

[b-mdrwic3g7t] .btn--ghost-dark {
    background: transparent;
    color: var(--color-primary);
    border-color: var(--color-primary);
}
[b-mdrwic3g7t] .btn--ghost-dark:hover:not(:disabled) {
    background: var(--color-primary); color: var(--color-text-on-primary);
}
[b-mdrwic3g7t] .btn--primary {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-color: var(--color-accent);
}
[b-mdrwic3g7t] .btn--primary:hover:not(:disabled) { background: var(--color-accent-hover); }
[b-mdrwic3g7t] .btn:disabled { opacity: 0.5; cursor: not-allowed; }

.bundle-detail__message[b-mdrwic3g7t] {
    margin-top: 0.75rem; padding: 0.5rem 0.75rem;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-size: 0.8125rem;
}

.bundle-detail__message--error[b-mdrwic3g7t] {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger);
}

.bundle-detail__approved-note[b-mdrwic3g7t] {
    margin: 0 0 0.75rem 0;
    padding: 0.75rem 1rem;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-size: 0.875rem;
    font-weight: 600;
}

.bundle-detail__approved-link[b-mdrwic3g7t] {
    margin-left: 0.625rem;
    color: var(--color-success);
    text-decoration: underline;
    font-weight: 700;
}

[b-mdrwic3g7t] .btn--approve {
    background: var(--color-success);
    color: white;
    border-color: var(--color-success);
}
[b-mdrwic3g7t] .btn--approve:hover:not(:disabled) {
    background: rgb(17, 105, 50);
    border-color: rgb(17, 105, 50);
}

[b-mdrwic3g7t] .btn--reject {
    background: var(--color-surface);
    color: var(--color-danger);
    border-color: var(--color-danger);
}
[b-mdrwic3g7t] .btn--reject:hover:not(:disabled) {
    background: var(--color-danger);
    color: white;
}

/* ===== Status banner (Rejected / Deferred) ===== */

.bundle-detail__status-banner[b-mdrwic3g7t] {
    margin: 0 0 0.875rem 0;
    padding: 0.875rem 1rem;
    border-radius: var(--radius-sm);
    font-size: 0.875rem;
    line-height: 1.5;
    border-left: 4px solid;
}

.bundle-detail__status-banner--rejected[b-mdrwic3g7t] {
    background: rgba(185, 28, 28, 0.08);
    color: var(--color-danger);
    border-left-color: var(--color-danger);
}

.bundle-detail__status-banner--deferred[b-mdrwic3g7t] {
    background: rgba(161, 98, 7, 0.08);
    color: var(--color-warning);
    border-left-color: var(--color-warning);
}

.bundle-detail__status-banner strong[b-mdrwic3g7t] {
    display: block;
    font-size: 0.9375rem;
    margin-bottom: 0.25rem;
}

.bundle-detail__status-banner-meta[b-mdrwic3g7t] {
    color: var(--color-text);
    font-size: 0.75rem;
    opacity: 0.85;
    margin-bottom: 0.5rem;
}

.bundle-detail__status-banner-meta code[b-mdrwic3g7t] {
    font-family: var(--font-mono);
    background: var(--color-surface-alt);
    padding: 0.0625rem 0.375rem;
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    color: var(--color-text-strong);
}

.bundle-detail__status-banner-reason[b-mdrwic3g7t] {
    margin: 0;
    color: var(--color-text-strong);
    font-size: 0.875rem;
}

.bundle-detail__status-banner-reason em[b-mdrwic3g7t] {
    font-style: italic;
    opacity: 0.95;
}

/* ===== Inline reject/defer confirm panel ===== */

.bundle-detail__confirm-panel[b-mdrwic3g7t] {
    margin: 0 0 0.875rem 0;
    padding: 0.875rem 1rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
}

.bundle-detail__confirm-label[b-mdrwic3g7t] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--color-text-strong);
    margin-bottom: 0.5rem;
}

.bundle-detail__confirm-reason[b-mdrwic3g7t] {
    display: block;
    width: 100%;
    padding: 0.5rem 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body);
    font-size: 0.875rem;
    color: var(--color-text-strong);
    box-sizing: border-box;
    resize: vertical;
    min-height: 64px;
}

.bundle-detail__confirm-reason:focus[b-mdrwic3g7t] {
    outline: none;
    border-color: var(--color-accent);
}

.bundle-detail__confirm-actions[b-mdrwic3g7t] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.625rem;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.bundle-detail__empty[b-mdrwic3g7t] {
    color: var(--color-text); opacity: 0.6;
    font-size: 0.8125rem; font-style: italic; margin: 0;
}

/* Pinned variant of the match button (📍 állapot) */
.bundle-detail__match-btn--pinned[b-mdrwic3g7t] {
    background: var(--color-accent) !important;
    color: var(--color-text-on-accent) !important;
    border-color: var(--color-accent) !important;
}
/* /Components/Pages/Centrality.razor.rz.scp.css */
.centrality[b-p6i7z6pxq5] {
    padding: 2rem 1rem 4rem;
}

.centrality__inner[b-p6i7z6pxq5] {
    max-width: 1100px;
    margin: 0 auto;
}

.centrality__header[b-p6i7z6pxq5] {
    margin-bottom: 1rem;
}

.centrality__header h1[b-p6i7z6pxq5] {
    margin: 0 0 0.25rem;
    color: var(--color-primary);
}

.centrality__lead[b-p6i7z6pxq5] {
    margin: 0 0 0.5rem;
    opacity: 0.85;
}

.centrality__back[b-p6i7z6pxq5] {
    font-size: 0.875rem;
    color: var(--color-primary);
    text-decoration: none;
}

.centrality__back:hover[b-p6i7z6pxq5] { text-decoration: underline; }

.centrality__weights[b-p6i7z6pxq5] {
    margin: 0 0 1rem;
    padding: 0.5rem 0.75rem;
    border: 1px dashed var(--color-border);
    border-radius: var(--radius-md);
    font-size: 0.8rem;
    opacity: 0.85;
}

.centrality__weights summary[b-p6i7z6pxq5] {
    cursor: pointer;
    font-weight: 600;
    user-select: none;
}

.centrality__weights ul[b-p6i7z6pxq5] {
    margin: 0.5rem 0 0;
    padding-left: 1.2rem;
    line-height: 1.6;
}

.centrality__loading[b-p6i7z6pxq5],
.centrality__empty[b-p6i7z6pxq5] { opacity: 0.7; }

.centrality-table-wrap[b-p6i7z6pxq5] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
}

.centrality-table[b-p6i7z6pxq5] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88rem;
}

.centrality-table__th[b-p6i7z6pxq5] {
    text-align: left;
    padding: 0.55rem 0.75rem;
    font-weight: 600;
    background: var(--color-bg, rgba(0, 0, 0, 0.03));
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.85;
}

.centrality-table__th--num[b-p6i7z6pxq5] { text-align: right; }

.centrality-table__row[b-p6i7z6pxq5] {
    cursor: pointer;
    transition: background 0.1s ease;
}

.centrality-table__row:hover[b-p6i7z6pxq5] { background: rgba(58, 125, 93, 0.06); }

.centrality-table__cell[b-p6i7z6pxq5] {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--color-border);
    vertical-align: middle;
}

.centrality-table__cell--name[b-p6i7z6pxq5] {
    font-family: var(--font-display);
    font-weight: 500;
    color: var(--color-text-strong);
}

.centrality-table__cell--num[b-p6i7z6pxq5] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.centrality-table__rank[b-p6i7z6pxq5] {
    color: var(--color-accent, #d4af37);
    font-weight: 700;
    font-family: var(--font-display);
}

.centrality-table__score[b-p6i7z6pxq5] {
    font-weight: 700;
}

.centrality-table__sex[b-p6i7z6pxq5] {
    margin-left: 0.35rem;
    font-size: 0.85em;
    opacity: 0.7;
}

.centrality-table__sex--female[b-p6i7z6pxq5] { color: #c026d3; }
.centrality-table__sex--male[b-p6i7z6pxq5]   { color: #2563eb; }

.centrality-table__chip[b-p6i7z6pxq5] {
    display: inline-block;
    margin: 0 0.15rem;
    padding: 0.05rem 0.4rem;
    background: var(--color-bg, rgba(0, 0, 0, 0.04));
    border: 1px solid var(--color-border);
    border-radius: 999px;
    font-size: 0.7rem;
    line-height: 1.5;
    white-space: nowrap;
}

.centrality__note[b-p6i7z6pxq5] {
    margin-top: 0.75rem;
    font-size: 0.8rem;
    opacity: 0.7;
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* =====================================================================
   HOME PAGE — Dea Lunae landing
   Szekciók: hero (cím + Dudó portré), features (6-card grid), workflow (5-step)
   ===================================================================== */

/* ===== HERO ===== */

.hero[b-nokv5z7hma] {
    background: linear-gradient(180deg, var(--color-background) 0%, var(--color-surface-alt) 100%);
    padding: 5rem 1.5rem 5rem;
    border-bottom: 1px solid var(--color-border);
}

.hero__inner[b-nokv5z7hma] {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.hero__copy[b-nokv5z7hma] {
    max-width: 580px;
}

.hero__title[b-nokv5z7hma] {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4.5vw, 3.25rem);
    line-height: 1.15;
    color: var(--color-text-strong);
    margin: 0 0 1.5rem 0;
    font-weight: 600;
}

.hero__subtitle[b-nokv5z7hma] {
    font-size: 1.0625rem;
    line-height: 1.65;
    color: var(--color-text);
    margin: 0 0 2.25rem 0;
}

.hero__actions[b-nokv5z7hma] {
    display: inline-flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 2.5rem;
}

.hero__quote[b-nokv5z7hma] {
    margin: 0;
    padding: 1rem 0 0 1.25rem;
    border-left: 3px solid var(--color-accent);
    font-style: italic;
    color: var(--color-text);
}

.hero__quote p[b-nokv5z7hma] { margin: 0 0 0.375rem 0; line-height: 1.55; font-size: 0.9375rem; }
.hero__quote cite[b-nokv5z7hma] { display: block; font-style: normal; font-size: 0.8125rem; color: var(--color-text); opacity: 0.75; }

/* ----- Gombok ----- */

[b-nokv5z7hma] .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md);
    text-decoration: none;
    font-family: var(--font-body);
    font-weight: 600;
    transition: all 120ms ease-in-out;
    border: 1px solid transparent;
    cursor: pointer;
}

[b-nokv5z7hma] .btn--lg {
    padding: 0.75rem 1.75rem;
    font-size: 1rem;
}

[b-nokv5z7hma] .btn--primary {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
}
[b-nokv5z7hma] .btn--primary:hover {
    background: var(--color-accent-hover);
}

[b-nokv5z7hma] .btn--ghost-dark {
    background: transparent;
    color: var(--color-primary);
    border-color: var(--color-primary);
}
[b-nokv5z7hma] .btn--ghost-dark:hover {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

/* ----- Hero jobb oldal: Dudó portré ----- */

.hero__portrait[b-nokv5z7hma] {
    position: relative;
    width: 100%;
    max-width: 440px;
    aspect-ratio: 4 / 5;
    margin: 0 auto;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero__portrait-glow[b-nokv5z7hma] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 12rem;
    color: var(--color-accent);
    opacity: 0.2;
    line-height: 1;
    z-index: 0;
    pointer-events: none;
}

.hero__portrait-img[b-nokv5z7hma] {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.hero__portrait-placeholder-text[b-nokv5z7hma] {
    display: none;
    position: relative;
    z-index: 1;
    padding: 1rem 1.5rem;
    color: var(--color-accent);
    font-family: var(--font-display);
    font-size: 1rem;
    text-align: center;
    line-height: 1.5;
    opacity: 0.85;
}

.hero__portrait--placeholder .hero__portrait-placeholder-text[b-nokv5z7hma] {
    display: block;
}

@media (max-width: 1024px) {
    .hero__inner[b-nokv5z7hma] { grid-template-columns: 1fr; gap: 3rem; }
    .hero__portrait[b-nokv5z7hma] { max-width: 360px; }
}

/* ===== FEATURES — 6 card grid ===== */

.features[b-nokv5z7hma] {
    padding: 4rem 1.5rem;
    background: var(--color-background);
    border-bottom: 1px solid var(--color-border);
}

.features__inner[b-nokv5z7hma] {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 1.5rem;
}

@media (max-width: 1100px) {
    .features__inner[b-nokv5z7hma] { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 640px) {
    .features__inner[b-nokv5z7hma] { grid-template-columns: repeat(2, 1fr); }
}

/* ===== WORKFLOW — 5 step ===== */

.workflow[b-nokv5z7hma] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    padding: 4rem 1.5rem;
}

.workflow__inner[b-nokv5z7hma] {
    max-width: 1400px;
    margin: 0 auto;
}

.workflow__title[b-nokv5z7hma] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2.25rem);
    color: var(--color-text-on-primary);
    margin: 0 0 3rem 0;
    text-align: center;
    font-weight: 600;
}

.workflow__steps[b-nokv5z7hma] {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* =====================================================================
   CONTROL CENTER — bejelentkezett user landing
   ===================================================================== */

.control-center[b-nokv5z7hma] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.control-center__inner[b-nokv5z7hma] {
    max-width: 1400px;
    margin: 0 auto;
}

.control-center__welcome[b-nokv5z7hma] {
    margin-bottom: 2.5rem;
}

.control-center__welcome h1[b-nokv5z7hma] {
    font-family: var(--font-display);
    font-size: clamp(1.625rem, 3vw, 2.125rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
    font-weight: 600;
}

.control-center__welcome p[b-nokv5z7hma] {
    color: var(--color-text);
    font-size: 1rem;
    margin: 0;
    line-height: 1.55;
    max-width: 70ch;
}

.control-center__loading[b-nokv5z7hma] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.9375rem;
}

/* ===== Section heads ===== */

.cc-section[b-nokv5z7hma] {
    margin-bottom: 2.5rem;
}

.cc-section__header[b-nokv5z7hma] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 1rem;
    gap: 1rem;
}

.cc-section__title[b-nokv5z7hma] {
    font-family: var(--font-display);
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    margin: 0 0 1rem 0;
    font-weight: 600;
}

.cc-section__header .cc-section__title[b-nokv5z7hma] {
    margin: 0;
}

.cc-section__link[b-nokv5z7hma] {
    color: var(--color-accent);
    font-size: 0.8125rem;
    text-decoration: none;
    font-weight: 500;
}

.cc-section__link:hover[b-nokv5z7hma] { text-decoration: underline; }

/* ===== Quick actions (4 kártya) ===== */

.cc-actions[b-nokv5z7hma] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.cc-action-card[b-nokv5z7hma] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 1.25rem 1.25rem 1.125rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-decoration: none;
    color: var(--color-text-strong);
    transition: all 120ms ease-in-out;
}

.cc-action-card:hover[b-nokv5z7hma] {
    border-color: var(--color-accent);
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
}

.cc-action-card__icon[b-nokv5z7hma] {
    font-size: 1.5rem;
    color: var(--color-accent);
    margin-bottom: 0.25rem;
}

.cc-action-card__title[b-nokv5z7hma] {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-text-strong);
}

.cc-action-card__desc[b-nokv5z7hma] {
    font-size: 0.8125rem;
    color: var(--color-text);
    line-height: 1.45;
}

/* ===== Domain stats (4 számkártya) ===== */

.cc-stats[b-nokv5z7hma] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.875rem;
}

.cc-stat-card[b-nokv5z7hma] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    padding: 1.125rem 1.25rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-decoration: none;
    color: var(--color-text-strong);
    transition: border-color 120ms ease-in-out;
}

.cc-stat-card:hover[b-nokv5z7hma] {
    border-color: var(--color-accent);
}

.cc-stat-card--static[b-nokv5z7hma] {
    cursor: default;
}

.cc-stat-card--static:hover[b-nokv5z7hma] {
    border-color: var(--color-border);
}

.cc-stat-card__num[b-nokv5z7hma] {
    font-family: var(--font-mono);
    font-size: 1.75rem;
    font-weight: 600;
    color: var(--color-text-strong);
    line-height: 1.1;
}

.cc-stat-card__label[b-nokv5z7hma] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-text);
    font-weight: 500;
}

/* ===== Review queue grid ===== */

.cc-review-grid[b-nokv5z7hma] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 0.875rem;
}

.cc-review-card[b-nokv5z7hma] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    padding: 1rem 1.125rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    border-left: 3px solid var(--color-border);
}

.cc-review-card__num[b-nokv5z7hma] {
    font-family: var(--font-mono);
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--color-text-strong);
    line-height: 1.1;
}

.cc-review-card__label[b-nokv5z7hma] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-text);
    font-weight: 500;
}

.cc-review-card--ready[b-nokv5z7hma] { border-left-color: var(--color-accent); }
.cc-review-card--in[b-nokv5z7hma] { border-left-color: var(--color-primary); }
.cc-review-card--partial[b-nokv5z7hma] { border-left-color: rgb(161, 98, 7); }
.cc-review-card--deferred[b-nokv5z7hma] { border-left-color: rgb(120, 120, 120); }
.cc-review-card--approved[b-nokv5z7hma] { border-left-color: var(--color-success); }

/* ===== Két oszlop layout ===== */

.cc-two-col[b-nokv5z7hma] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.5rem;
}

@media (max-width: 900px) {
    .cc-two-col[b-nokv5z7hma] { grid-template-columns: 1fr; }
}

/* ===== Activity list ===== */

.cc-activity-list[b-nokv5z7hma],
.cc-batch-list[b-nokv5z7hma] {
    list-style: none;
    margin: 0;
    padding: 0;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.cc-activity-item[b-nokv5z7hma] {
    display: flex;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--color-border);
}

.cc-activity-item:last-child[b-nokv5z7hma] { border-bottom: none; }

.cc-activity-item__icon[b-nokv5z7hma] {
    flex-shrink: 0;
    width: 1.75rem;
    height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-surface-alt);
    border-radius: 50%;
    color: var(--color-accent);
    font-size: 0.9375rem;
}

.cc-activity-item__body[b-nokv5z7hma] {
    flex: 1;
    min-width: 0;
}

.cc-activity-item__line[b-nokv5z7hma] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    color: var(--color-text-strong);
    font-size: 0.875rem;
}

.cc-activity-item__line strong[b-nokv5z7hma] { font-weight: 600; }

.cc-activity-item__entity[b-nokv5z7hma] {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--color-text);
    opacity: 0.85;
}

.cc-activity-item__meta[b-nokv5z7hma] {
    margin-top: 0.125rem;
    color: var(--color-text);
    font-size: 0.75rem;
    opacity: 0.85;
}

.cc-activity-item__meta code[b-nokv5z7hma] {
    font-family: var(--font-mono);
    background: var(--color-surface-alt);
    padding: 0.0625rem 0.375rem;
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
}

.cc-activity-item__reason[b-nokv5z7hma] {
    margin-top: 0.25rem;
    color: var(--color-text);
    font-size: 0.8125rem;
    font-style: italic;
    line-height: 1.45;
}

/* ===== Batch list ===== */

.cc-batch-item[b-nokv5z7hma] {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--color-border);
}

.cc-batch-item:last-child[b-nokv5z7hma] { border-bottom: none; }

.cc-batch-item__head[b-nokv5z7hma] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.25rem;
}

.cc-batch-item__source[b-nokv5z7hma] {
    color: var(--color-text-strong);
    font-weight: 600;
    text-decoration: none;
    font-size: 0.9375rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cc-batch-item__source:hover[b-nokv5z7hma] {
    color: var(--color-accent);
    text-decoration: underline;
}

.cc-batch-item__meta[b-nokv5z7hma] {
    color: var(--color-text);
    font-size: 0.75rem;
    opacity: 0.85;
}

.cc-batch-item__meta code[b-nokv5z7hma] {
    font-family: var(--font-mono);
    background: var(--color-surface-alt);
    padding: 0.0625rem 0.375rem;
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
}

.cc-empty[b-nokv5z7hma] {
    padding: 1.5rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    color: var(--color-text);
    font-size: 0.875rem;
    text-align: center;
    font-style: italic;
}

/* ===== Badge (status pill) ===== */

[b-nokv5z7hma] .badge {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.5rem;
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: var(--color-surface-alt);
    color: var(--color-text);
    flex-shrink: 0;
}

[b-nokv5z7hma] .badge--success { background: rgba(21, 128, 61, 0.15); color: var(--color-success); }
[b-nokv5z7hma] .badge--danger  { background: rgba(185, 28, 28, 0.12); color: var(--color-danger); }
[b-nokv5z7hma] .badge--warning { background: rgba(161, 98, 7, 0.12);  color: var(--color-warning); }
[b-nokv5z7hma] .badge--info    { background: rgba(11, 29, 51, 0.10);  color: var(--color-primary); }
/* /Components/Pages/LineageDetail.razor.rz.scp.css */
.lineage-detail[b-6xydzuocgq] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.lineage-detail__inner[b-6xydzuocgq] {
    max-width: 1100px;
    margin: 0 auto;
}

.lineage-detail__back[b-6xydzuocgq] {
    margin-bottom: 1rem;
}

.lineage-detail__back a[b-6xydzuocgq] {
    color: var(--color-accent);
    font-size: 0.875rem;
    text-decoration: none;
}

.lineage-detail__back a:hover[b-6xydzuocgq] {
    text-decoration: underline;
}

.lineage-detail__loading[b-6xydzuocgq] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
}

.lineage-detail__header[b-6xydzuocgq] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem 1.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    margin-bottom: 1.75rem;
}

.lineage-detail__icon[b-6xydzuocgq] {
    font-size: 2.25rem;
    color: var(--color-success);
    line-height: 1;
}

.lineage-detail__title-block[b-6xydzuocgq] {
    flex: 1;
}

.lineage-detail__title-block h1[b-6xydzuocgq] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
    font-weight: 600;
}

.lineage-detail__meta[b-6xydzuocgq] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0 0 0.75rem 0;
    line-height: 1.5;
}

.lineage-detail__code[b-6xydzuocgq] {
    margin-right: 0.25rem;
}

.lineage-detail__code strong[b-6xydzuocgq] {
    display: inline-block;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    padding: 0.0625rem 0.5rem;
    border-radius: var(--radius-sm);
    font-family: var(--font-mono);
    font-weight: 700;
    margin-left: 0.125rem;
}

.lineage-detail__meta a[b-6xydzuocgq] {
    color: var(--color-accent);
    text-decoration: none;
}

.lineage-detail__meta a:hover[b-6xydzuocgq] {
    text-decoration: underline;
}

.lineage-detail__notes[b-6xydzuocgq] {
    margin: 0.75rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
    line-height: 1.55;
    font-style: italic;
}

/* ===== Edit form (Name + Notes) ===== */

.lineage-detail__title-row[b-6xydzuocgq] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.lineage-detail__edit-btn[b-6xydzuocgq] {
    flex-shrink: 0;
    padding: 0.375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 100ms ease-in-out;
}

.lineage-detail__edit-btn:hover[b-6xydzuocgq] {
    border-color: var(--color-accent);
    color: var(--color-accent);
}

.lineage-detail__save-message[b-6xydzuocgq] {
    margin: 0.75rem 0 0 0;
    color: var(--color-success);
    font-size: 0.8125rem;
    font-weight: 500;
}

.lineage-detail__edit-form[b-6xydzuocgq] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.lineage-detail__edit-label[b-6xydzuocgq] {
    display: block;
    color: var(--color-text-strong);
    font-size: 0.8125rem;
    font-weight: 600;
}

.lineage-detail__edit-input[b-6xydzuocgq],
.lineage-detail__edit-textarea[b-6xydzuocgq] {
    display: block;
    width: 100%;
    margin-top: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    box-sizing: border-box;
}

.lineage-detail__edit-textarea[b-6xydzuocgq] {
    resize: vertical;
    min-height: 80px;
    font-weight: 400;
}

.lineage-detail__edit-input:focus[b-6xydzuocgq],
.lineage-detail__edit-textarea:focus[b-6xydzuocgq] {
    outline: none;
    border-color: var(--color-accent);
}

.lineage-detail__edit-actions[b-6xydzuocgq] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
}

.lineage-detail__section-title[b-6xydzuocgq] {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    margin: 0 0 1rem 0;
    font-weight: 600;
}

.lineage-detail__members-head[b-6xydzuocgq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.lineage-detail__members-head .lineage-detail__section-title[b-6xydzuocgq] {
    margin: 0;
}

.lineage-detail__view-toggle[b-6xydzuocgq] {
    display: inline-flex;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.lineage-detail__view-btn[b-6xydzuocgq] {
    padding: 0.375rem 0.875rem;
    background: var(--color-surface);
    border: none;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 100ms ease-in-out;
}

.lineage-detail__view-btn:not(:last-child)[b-6xydzuocgq] {
    border-right: 1px solid var(--color-border);
}

.lineage-detail__view-btn--active[b-6xydzuocgq] {
    background: var(--color-success);
    color: white;
    font-weight: 600;
}

/* ===== Generáció-sávos vizualizáció ===== */

.lineage-tree[b-6xydzuocgq] {
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
}

.lineage-tree__band[b-6xydzuocgq] {
    display: grid;
    grid-template-columns: 130px 1fr;
    gap: 1.25rem;
    padding: 1rem 0;
    border-top: 1px solid var(--color-border);
    position: relative;
}

.lineage-tree__band:first-child[b-6xydzuocgq] {
    border-top: none;
}

/* Függőleges "gerinc" vonal a generációk között */
.lineage-tree__band[b-6xydzuocgq]::before {
    content: "";
    position: absolute;
    left: 14px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--color-border);
}

.lineage-tree__band:first-child[b-6xydzuocgq]::before { top: 50%; }
.lineage-tree__band:last-child[b-6xydzuocgq]::before { bottom: 50%; }

.lineage-tree__band-label[b-6xydzuocgq] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
    position: relative;
    padding-left: 2rem;
}

/* A generáció-csomópont a gerincen */
.lineage-tree__band-label[b-6xydzuocgq]::before {
    content: "";
    position: absolute;
    left: 9px;
    top: 0.25rem;
    width: 12px;
    height: 12px;
    background: var(--color-success);
    border: 2px solid var(--color-surface);
    border-radius: 50%;
    box-shadow: 0 0 0 1px var(--color-success);
}

.lineage-tree__gen-num[b-6xydzuocgq] {
    font-family: var(--font-mono);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-success);
    line-height: 1.1;
}

.lineage-tree__gen-text[b-6xydzuocgq] {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-text);
}

.lineage-tree__gen-text--none[b-6xydzuocgq] {
    font-style: italic;
    opacity: 0.8;
}

.lineage-tree__band-count[b-6xydzuocgq] {
    margin-top: 0.25rem;
    font-size: 0.6875rem;
    color: var(--color-text);
    opacity: 0.7;
    font-variant-numeric: tabular-nums;
}

.lineage-tree__band-members[b-6xydzuocgq] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-content: flex-start;
}

.lineage-tree__node[b-6xydzuocgq] {
    display: inline-flex;
    align-items: baseline;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-decoration: none;
    color: var(--color-text-strong);
    font-size: 0.8125rem;
    transition: all 100ms ease-in-out;
}

.lineage-tree__node:hover[b-6xydzuocgq] {
    border-color: var(--color-success);
    background: rgba(21, 128, 61, 0.06);
    transform: translateY(-1px);
}

.lineage-tree__node-name[b-6xydzuocgq] {
    font-weight: 600;
}

.lineage-tree__node-sex[b-6xydzuocgq] {
    font-size: 0.8125rem;
    font-weight: 600;
}

.lineage-tree__node-years[b-6xydzuocgq] {
    font-family: var(--font-mono);
    font-size: 0.6875rem;
    color: var(--color-text);
    opacity: 0.8;
}

@media (max-width: 640px) {
    .lineage-tree__band[b-6xydzuocgq] {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    .lineage-tree__band[b-6xydzuocgq]::before { display: none; }
    .lineage-tree__band-label[b-6xydzuocgq] { padding-left: 0; }
    .lineage-tree__band-label[b-6xydzuocgq]::before { display: none; }
}

.lineage-detail__member-list[b-6xydzuocgq] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 0.875rem;
}

.member-card[b-6xydzuocgq] {
    display: block;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 0.875rem 1rem;
    text-decoration: none;
    color: inherit;
    transition: all 120ms ease-in-out;
}

.member-card:hover[b-6xydzuocgq] {
    border-color: var(--color-accent);
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);
}

.member-card__head[b-6xydzuocgq] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-bottom: 0.375rem;
}

.member-card__generation[b-6xydzuocgq] {
    flex-shrink: 0;
    padding: 0.0625rem 0.5rem;
    background: var(--color-surface-alt);
    border-radius: var(--radius-sm);
    color: var(--color-accent);
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    cursor: help;
}

.member-card__name[b-6xydzuocgq] {
    flex: 1;
    color: var(--color-text-strong);
    font-weight: 600;
    font-size: 0.9375rem;
}

.member-card__sex[b-6xydzuocgq] {
    font-size: 0.875rem;
    font-weight: 600;
}

.member-card__body[b-6xydzuocgq] {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.member-card__years[b-6xydzuocgq] {
    color: var(--color-text);
    font-family: var(--font-mono);
    font-size: 0.8125rem;
}

.member-card__raw[b-6xydzuocgq] {
    cursor: help;
}

.member-card__raw code[b-6xydzuocgq] {
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    padding: 0.0625rem 0.375rem;
    font-family: var(--font-mono);
    font-size: 0.6875rem;
    color: var(--color-text);
}

.member-card__disc[b-6xydzuocgq] {
    color: var(--color-warning);
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: help;
}
/* /Components/Pages/Lineages.razor.rz.scp.css */
.lineages[b-9who9mm2eb] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.lineages__inner[b-9who9mm2eb] {
    max-width: 1400px;
    margin: 0 auto;
}

.lineages__header[b-9who9mm2eb] {
    margin-bottom: 2rem;
}

.lineages__header h1[b-9who9mm2eb] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2.125rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
    font-weight: 600;
}

.lineages__lead[b-9who9mm2eb] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
    max-width: 70ch;
}

.lineages__notice[b-9who9mm2eb] {
    padding: 1rem 1.25rem;
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    border-radius: var(--radius-md);
    color: var(--color-warning);
    margin-bottom: 1.5rem;
}

.lineages__notice p[b-9who9mm2eb] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ---- Toolbar ---- */

.lineages__toolbar[b-9who9mm2eb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.lineages__search-wrap[b-9who9mm2eb] {
    display: flex;
    gap: 0.5rem;
    flex: 1;
    min-width: 300px;
    max-width: 640px;
    flex-wrap: wrap;
}

.lineages__search[b-9who9mm2eb] {
    flex: 1;
    min-width: 200px;
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
}

.lineages__search:focus[b-9who9mm2eb] {
    outline: none;
    border-color: var(--color-accent);
}

[b-9who9mm2eb] .lineages__search-btn {
    padding: 0.625rem 1.25rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-weight: 600;
    cursor: pointer;
}

[b-9who9mm2eb] .lineages__search-btn:hover:not(:disabled) {
    background: var(--color-accent-hover);
}

[b-9who9mm2eb] .lineages__search-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.lineages__stats[b-9who9mm2eb] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0;
    font-weight: 500;
}

.lineages__loading[b-9who9mm2eb] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
}

/* ---- Grid + Card ---- */

.lineages__grid[b-9who9mm2eb] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.25rem;
    margin-bottom: 2rem;
}

.lineage-card[b-9who9mm2eb] {
    display: block;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1.125rem 1.25rem;
    text-decoration: none;
    color: inherit;
    transition: all 120ms ease-in-out;
}

.lineage-card:hover[b-9who9mm2eb] {
    border-color: var(--color-accent);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.lineage-card__head[b-9who9mm2eb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.lineage-card__icon[b-9who9mm2eb] {
    font-size: 1.25rem;
    color: var(--color-success);
}

.lineage-card__code[b-9who9mm2eb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-family: var(--font-mono);
    font-size: 1rem;
    font-weight: 700;
}

.lineage-card__name[b-9who9mm2eb] {
    font-family: var(--font-display);
    font-size: 1rem;
    color: var(--color-text-strong);
    margin: 0 0 0.375rem 0;
    font-weight: 600;
}

.lineage-card__count[b-9who9mm2eb] {
    color: var(--color-text);
    font-size: 0.8125rem;
    margin: 0 0 0.625rem 0;
    font-weight: 500;
}

.lineage-card__samples[b-9who9mm2eb] {
    list-style: none;
    margin: 0 0 0.625rem 0;
    padding: 0;
    border-left: 2px solid var(--color-border);
    padding-left: 0.75rem;
}

.lineage-card__samples li[b-9who9mm2eb] {
    color: var(--color-text);
    font-size: 0.8125rem;
    line-height: 1.5;
}

.lineage-card__samples-more[b-9who9mm2eb] {
    color: var(--color-text);
    opacity: 0.7;
    font-style: italic;
    font-size: 0.75rem !important;
}

.lineage-card__source[b-9who9mm2eb] {
    color: var(--color-text);
    font-size: 0.75rem;
    margin: 0;
    opacity: 0.8;
}

.lineage-card__source em[b-9who9mm2eb] {
    font-style: italic;
    color: var(--color-text-strong);
}

.lineages__pagination[b-9who9mm2eb] {
    display: flex;
    justify-content: center;
    padding: 1.5rem 0;
}
/* /Components/Pages/Map.razor.rz.scp.css */
.map[b-nd0khjb5ub] {
    padding: 2rem 1rem 4rem;
}

.map__inner[b-nd0khjb5ub] {
    max-width: 1100px;
    margin: 0 auto;
}

.map__header[b-nd0khjb5ub] {
    margin-bottom: 1.25rem;
}

.map__header h1[b-nd0khjb5ub] {
    margin: 0 0 0.25rem;
    color: var(--color-primary);
}

.map__lead[b-nd0khjb5ub] {
    margin: 0 0 0.5rem;
    opacity: 0.85;
}

.map__back[b-nd0khjb5ub] {
    font-size: 0.875rem;
    color: var(--color-primary);
    text-decoration: none;
}

.map__back:hover[b-nd0khjb5ub] {
    text-decoration: underline;
}

.map__loading[b-nd0khjb5ub],
.map__empty[b-nd0khjb5ub] {
    opacity: 0.7;
}

.map__filters[b-nd0khjb5ub] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 0.75rem;
    padding: 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
}

.map__field[b-nd0khjb5ub] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.8rem;
}

.map__field-label[b-nd0khjb5ub] {
    font-weight: 600;
    opacity: 0.75;
}

.map__field select[b-nd0khjb5ub],
.map__year[b-nd0khjb5ub] {
    padding: 0.35rem 0.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: var(--color-bg, #fff);
    color: var(--color-text);
    font-size: 0.85rem;
}

.map__year-range[b-nd0khjb5ub] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.map__year[b-nd0khjb5ub] {
    width: 5.5rem;
}

.map__filter-actions[b-nd0khjb5ub] {
    display: flex;
    gap: 0.5rem;
    margin-left: auto;
}

.map__btn[b-nd0khjb5ub] {
    padding: 0.4rem 0.9rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: transparent;
    color: var(--color-text);
    font-size: 0.85rem;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
}

.map__btn:hover:not(:disabled)[b-nd0khjb5ub] {
    border-color: var(--color-accent);
}

.map__btn--apply[b-nd0khjb5ub] {
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
    border-color: var(--color-primary);
}

.map__btn:disabled[b-nd0khjb5ub] {
    opacity: 0.5;
    cursor: default;
}

.map__note--empty[b-nd0khjb5ub] {
    color: var(--color-accent, #b8860b);
    font-weight: 600;
    opacity: 1;
}

.map__controls[b-nd0khjb5ub] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 0.75rem;
}

.map__toggle[b-nd0khjb5ub] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    cursor: pointer;
    user-select: none;
}

.map__metric-label[b-nd0khjb5ub] {
    font-size: 0.85rem;
    opacity: 0.7;
    margin-left: auto;
}

.map__metric[b-nd0khjb5ub] {
    display: inline-flex;
    border: 1px solid var(--color-border);
    border-radius: 999px;
    overflow: hidden;
}

.map__metric-btn[b-nd0khjb5ub] {
    border: 0;
    background: transparent;
    padding: 0.3rem 0.85rem;
    font-size: 0.8rem;
    cursor: pointer;
    color: var(--color-text);
    transition: background 0.15s ease, color 0.15s ease;
}

.map__metric-btn.is-active[b-nd0khjb5ub] {
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
}

.map__canvas[b-nd0khjb5ub] {
    background: linear-gradient(160deg, rgba(58, 125, 93, 0.06), rgba(11, 29, 51, 0.04));
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 0.4rem;
}

/* A Leaflet konténernek KÖTELEZŐ explicit magasság, különben 0px-es lesz. */
.map__leaflet[b-nd0khjb5ub] {
    width: 100%;
    height: 600px;
    border-radius: var(--radius-sm, 6px);
    z-index: 0; /* a Leaflet panes ne lógjon a fejléc/dropdown fölé */
}

@media (max-width: 720px) {
    .map__leaflet[b-nd0khjb5ub] {
        height: 440px;
    }
}

.map__note[b-nd0khjb5ub] {
    margin-top: 0.75rem;
    font-size: 0.8rem;
    opacity: 0.7;
}
/* /Components/Pages/Overview.razor.rz.scp.css */
.overview[b-d0jrtoc6ix] {
    padding: 2rem 1rem 4rem;
}

.overview__inner[b-d0jrtoc6ix] {
    max-width: 1100px;
    margin: 0 auto;
}

.overview__header[b-d0jrtoc6ix] {
    margin-bottom: 1.5rem;
}

.overview__header h1[b-d0jrtoc6ix] {
    margin: 0 0 0.25rem;
    color: var(--color-primary);
}

.overview__lead[b-d0jrtoc6ix] {
    margin: 0 0 0.5rem;
    color: var(--color-text);
    opacity: 0.85;
}

.overview__back[b-d0jrtoc6ix] {
    font-size: 0.875rem;
    color: var(--color-primary);
    text-decoration: none;
}

.overview__back:hover[b-d0jrtoc6ix] {
    text-decoration: underline;
}

.overview__loading[b-d0jrtoc6ix] {
    color: var(--color-text);
    opacity: 0.7;
}

/* === Számlálókártyák === */
.overview__cards[b-d0jrtoc6ix] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.overview__card[b-d0jrtoc6ix] {
    background: var(--color-surface, #fff);
    border: 1px solid rgba(11, 29, 51, 0.12);
    border-radius: var(--radius-md, 0.5rem);
    padding: 1.1rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    text-align: center;
}

.overview__card-num[b-d0jrtoc6ix] {
    font-size: 1.9rem;
    font-weight: 700;
    color: var(--color-primary);
    line-height: 1.1;
}

.overview__card-label[b-d0jrtoc6ix] {
    font-size: 0.8125rem;
    color: var(--color-text);
    opacity: 0.8;
}

.overview__card--pending[b-d0jrtoc6ix] {
    background: rgba(212, 160, 23, 0.08);
    border-color: rgba(212, 160, 23, 0.4);
}

/* === Megoszlás-panelek === */
.overview__grid[b-d0jrtoc6ix] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 1.5rem;
}

.overview__panel[b-d0jrtoc6ix] {
    background: var(--color-surface, #fff);
    border: 1px solid rgba(11, 29, 51, 0.12);
    border-radius: var(--radius-md, 0.5rem);
    padding: 1.1rem 1.25rem 1.25rem;
}

.overview__panel h2[b-d0jrtoc6ix] {
    margin: 0 0 0.85rem;
    font-size: 1.05rem;
    color: var(--color-primary);
}

.overview__bars[b-d0jrtoc6ix] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.overview__bar-row[b-d0jrtoc6ix] {
    display: grid;
    grid-template-columns: minmax(90px, 38%) 1fr auto;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.84rem;
}

.overview__bar-label[b-d0jrtoc6ix] {
    color: var(--color-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.overview__bar-track[b-d0jrtoc6ix] {
    background: rgba(11, 29, 51, 0.07);
    border-radius: 999px;
    height: 0.55rem;
    overflow: hidden;
}

.overview__bar-fill[b-d0jrtoc6ix] {
    display: block;
    height: 100%;
    background: var(--color-primary);
    border-radius: 999px;
    min-width: 2px;
}

.overview__bar-count[b-d0jrtoc6ix] {
    font-variant-numeric: tabular-nums;
    color: var(--color-text);
    opacity: 0.75;
    font-size: 0.8rem;
}
/* /Components/Pages/PersonDetail.razor.rz.scp.css */
.person-detail[b-tw2fcg5au3] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.person-detail__inner[b-tw2fcg5au3] {
    max-width: 900px;
    margin: 0 auto;
}

.person-detail__back[b-tw2fcg5au3] {
    margin-bottom: 1.5rem;
}

.person-detail__back a[b-tw2fcg5au3] {
    color: var(--color-text);
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 120ms ease-in-out;
}

.person-detail__back a:hover[b-tw2fcg5au3] {
    color: var(--color-primary);
}

.person-detail__loading[b-tw2fcg5au3] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
}

/* ===== Header ===== */

.person-detail__header[b-tw2fcg5au3] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 1.5rem 1.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    margin-bottom: 2rem;
}

.person-detail__avatar[b-tw2fcg5au3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    background: var(--color-primary);
    color: var(--color-accent);
    border-radius: 50%;
    font-family: var(--font-display);
    font-size: 1.75rem;
    font-weight: 700;
    flex-shrink: 0;
}

.person-detail__header-body[b-tw2fcg5au3] {
    min-width: 0;
    flex: 1;
}

.person-detail__name[b-tw2fcg5au3] {
    font-family: var(--font-display);
    font-size: 2rem;
    color: var(--color-text-strong);
    margin: 0 0 0.25rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.person-detail__sex[b-tw2fcg5au3] {
    font-size: 1.25rem;
}
.person-detail__sex--female[b-tw2fcg5au3] { color: #c026d3; }
.person-detail__sex--male[b-tw2fcg5au3]   { color: #2563eb; }

.person-detail__years[b-tw2fcg5au3] {
    margin: 0 0 0.625rem 0;
    color: var(--color-text);
    font-size: 1rem;
    font-variant-numeric: tabular-nums;
}

.person-detail__badges[b-tw2fcg5au3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

[b-tw2fcg5au3] .badge {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: var(--radius-sm);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: var(--color-surface-alt);
    color: var(--color-text);
}

[b-tw2fcg5au3] .badge--review {
    background: rgba(11, 29, 51, 0.08);
    color: var(--color-primary);
}

[b-tw2fcg5au3] .badge--lineage {
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    font-weight: 600;
    cursor: help;
}

[b-tw2fcg5au3] .badge--duplicate {
    background: rgba(161, 98, 7, 0.12);
    color: var(--color-warning);
    font-family: var(--font-mono);
    font-weight: 600;
    cursor: help;
}

/* ===== Lineage section (ADR 0016) ===== */

.person-detail__lineage-members[b-tw2fcg5au3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.5rem;
}

.lineage-member-chip[b-tw2fcg5au3] {
    display: inline-flex;
    align-items: baseline;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-decoration: none;
    color: var(--color-text-strong);
    font-size: 0.8125rem;
    transition: all 100ms ease-in-out;
}

.lineage-member-chip:hover[b-tw2fcg5au3] {
    border-color: var(--color-success);
    background: rgba(21, 128, 61, 0.08);
}

.lineage-member-chip__gen[b-tw2fcg5au3] {
    font-family: var(--font-mono);
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--color-success);
}

.lineage-member-chip__name[b-tw2fcg5au3] {
    font-weight: 600;
}

.lineage-member-chip__years[b-tw2fcg5au3] {
    font-family: var(--font-mono);
    font-size: 0.6875rem;
    color: var(--color-text);
    opacity: 0.8;
}

.person-detail__lineage-all[b-tw2fcg5au3] {
    display: inline-block;
    margin-top: 0.875rem;
    color: var(--color-success);
    font-size: 0.8125rem;
    font-weight: 600;
    text-decoration: none;
}

.person-detail__lineage-all:hover[b-tw2fcg5au3] {
    text-decoration: underline;
}

/* ===== Section ===== */

.person-detail__parents[b-tw2fcg5au3] {
    margin: 0.35rem 0 0;
    font-size: 0.875rem;
    color: var(--color-text);
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.person-detail__parents a[b-tw2fcg5au3] {
    color: var(--color-primary);
    text-decoration: none;
}

.person-detail__parents a:hover[b-tw2fcg5au3] {
    text-decoration: underline;
}

.person-detail__facts[b-tw2fcg5au3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin: -0.75rem 0 1.75rem;
}

.person-detail__fact[b-tw2fcg5au3] {
    display: inline-flex;
    align-items: baseline;
    gap: 0.4rem;
    padding: 0.35rem 0.8rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-size: 0.85rem;
}

.person-detail__fact--wide[b-tw2fcg5au3] {
    flex: 1 1 16rem;
}

.person-detail__fact-label[b-tw2fcg5au3] {
    opacity: 0.7;
}

.person-detail__fact-value[b-tw2fcg5au3] {
    font-weight: 600;
    color: var(--color-primary);
}

.person-detail__section[b-tw2fcg5au3] {
    margin-bottom: 2rem;
    padding: 1.5rem 1.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
}

.person-detail__section--traceability[b-tw2fcg5au3] {
    background: var(--color-surface-alt);
}

.person-detail__section h2[b-tw2fcg5au3] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    color: var(--color-text-strong);
    margin: 0 0 1rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.person-detail__count[b-tw2fcg5au3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 22px;
    padding: 0 0.5rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: 999px;
    font-family: var(--font-body);
    font-size: 0.75rem;
    font-weight: 700;
}

.person-detail__lead[b-tw2fcg5au3] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0 0 1rem 0;
    line-height: 1.55;
}

.person-detail__notes[b-tw2fcg5au3] {
    color: var(--color-text);
    line-height: 1.6;
    margin: 0;
}

.person-detail__empty[b-tw2fcg5au3] {
    color: var(--color-text);
    opacity: 0.6;
    font-size: 0.875rem;
    margin: 0;
    font-style: italic;
}

/* ===== Listák ===== */

.person-detail__list[b-tw2fcg5au3] {
    list-style: none;
    margin: 0;
    padding: 0;
    /* Több hasáb a rövid tételeknél (nevek, kapcsolatok) */
    columns: 18rem;
    column-gap: 1.5rem;
}

.person-detail__list li[b-tw2fcg5au3] {
    break-inside: avoid;
    padding: 0.15rem 0;
}

.person-detail__list li[b-tw2fcg5au3] {
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--color-border);
    font-size: 0.9375rem;
    color: var(--color-text);
}

.person-detail__list li:last-child[b-tw2fcg5au3] {
    border-bottom: none;
}

.person-detail__list--mono code[b-tw2fcg5au3] {
    font-family: var(--font-mono);
    font-size: 0.8125rem;
    background: var(--color-surface);
    padding: 0.125rem 0.375rem;
    border-radius: var(--radius-sm);
}

.person-detail__list-meta[b-tw2fcg5au3] {
    color: var(--color-text);
    opacity: 0.65;
    font-size: 0.8125rem;
    margin-left: 0.5rem;
}

/* ===== Events ===== */

.person-detail__events[b-tw2fcg5au3] {
    list-style: none;
    margin: 0;
    padding: 0;
    /* Széles képernyőn több hasáb — kevesebb görgetés, több adat egyben */
    columns: 22rem;
    column-gap: 2rem;
}

.person-detail__event[b-tw2fcg5au3] {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 1rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--color-border);
    break-inside: avoid;
}

.person-detail__event:last-child[b-tw2fcg5au3] {
    border-bottom: none;
}

.person-detail__event-date[b-tw2fcg5au3] {
    font-family: var(--font-mono);
    font-size: 0.8125rem;
    color: var(--color-accent);
    font-variant-numeric: tabular-nums;
    padding-top: 0.125rem;
}

.person-detail__event-body[b-tw2fcg5au3] {
    color: var(--color-text);
}

.person-detail__event-body strong[b-tw2fcg5au3] {
    color: var(--color-text-strong);
    font-weight: 600;
}

.person-detail__event-place[b-tw2fcg5au3] {
    color: var(--color-text);
    margin-left: 0.25rem;
}

.person-detail__event-fvh[b-tw2fcg5au3] {
    display: inline-block;
    margin-left: 0.375rem;
    padding: 0.0625rem 0.4rem;
    background: rgba(11, 29, 51, 0.10);
    color: var(--color-primary);
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    cursor: help;
    vertical-align: middle;
}

.person-detail__event-extra[b-tw2fcg5au3] {
    font-size: 0.8125rem;
    color: var(--color-text);
    opacity: 0.85;
    margin-top: 0.25rem;
}

.person-detail__event-register[b-tw2fcg5au3] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-top: 0.3rem;
    font-size: 0.78125rem;
    color: var(--color-primary);
    text-decoration: none;
    opacity: 0.9;
}

.person-detail__event-register:hover[b-tw2fcg5au3] {
    text-decoration: underline;
    opacity: 1;
}

.person-detail__rel-event[b-tw2fcg5au3] {
    color: var(--color-text);
    opacity: 0.7;
    font-size: 0.875rem;
}

.person-detail__timeline[b-tw2fcg5au3] {
    width: 100%;
    height: auto;
    display: block;
}

.person-detail__tl-legend[b-tw2fcg5au3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.person-detail__tl-item[b-tw2fcg5au3] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8rem;
    color: var(--color-text);
}

.person-detail__tl-item i[b-tw2fcg5au3] {
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 50%;
    display: inline-block;
}

.person-detail__rel-group[b-tw2fcg5au3] {
    margin-bottom: 1rem;
}

.person-detail__rel-group:last-child[b-tw2fcg5au3] {
    margin-bottom: 0;
}

.person-detail__rel-group-title[b-tw2fcg5au3] {
    font-size: 0.9rem;
    margin: 0 0 0.4rem;
    color: var(--color-text);
    opacity: 0.85;
    font-weight: 600;
}

@media (max-width: 720px) {
    .person-detail__header[b-tw2fcg5au3] {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
    }
    .person-detail__event[b-tw2fcg5au3] {
        grid-template-columns: 1fr;
        gap: 0.25rem;
    }
}

/* ===== Y ülés — Superseded banner + matches szekció ===== */

.person-detail__superseded-banner[b-tw2fcg5au3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    margin-bottom: 1.5rem;
    background: rgba(161, 98, 7, 0.12);
    border: 1px solid var(--color-warning);
    border-left: 4px solid var(--color-warning);
    border-radius: var(--radius-md);
    color: var(--color-warning);
}

.person-detail__superseded-icon[b-tw2fcg5au3] { font-size: 1.25rem; }
.person-detail__superseded-text[b-tw2fcg5au3] { flex: 1; font-size: 0.875rem; }

.person-detail__superseded-link[b-tw2fcg5au3] {
    color: var(--color-warning);
    font-weight: 700;
    text-decoration: underline;
    margin-left: 0.5rem;
}

.person-detail__superseded-undo[b-tw2fcg5au3] {
    padding: 0.375rem 0.75rem;
    background: transparent;
    color: var(--color-warning);
    border: 1px solid var(--color-warning);
    border-radius: var(--radius-sm);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
}
.person-detail__superseded-undo:hover:not(:disabled)[b-tw2fcg5au3] {
    background: var(--color-warning);
    color: white;
}

.person-detail__section--matches[b-tw2fcg5au3] { border-left: 4px solid var(--color-accent); }

.person-detail__match-list[b-tw2fcg5au3] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.person-detail__match-item[b-tw2fcg5au3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--color-border);
    flex-wrap: wrap;
}

.person-detail__match-item:last-child[b-tw2fcg5au3] { border-bottom: none; }

.person-detail__match-item--confirmed[b-tw2fcg5au3] {
    background: rgba(21, 128, 61, 0.06);
}

.person-detail__match-info[b-tw2fcg5au3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    flex: 1;
    min-width: 0;
}

.person-detail__match-name[b-tw2fcg5au3] {
    font-family: var(--font-display);
    font-weight: 600;
    color: var(--color-text-strong);
    text-decoration: none;
    font-size: 0.9375rem;
}
.person-detail__match-name:hover[b-tw2fcg5au3] { color: var(--color-accent); }

.person-detail__match-years[b-tw2fcg5au3] {
    font-size: 0.8125rem;
    color: var(--color-text);
    opacity: 0.75;
    font-variant-numeric: tabular-nums;
}

.person-detail__match-score[b-tw2fcg5au3] {
    padding: 0.0625rem 0.4rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

[b-tw2fcg5au3] .badge--match-confirmed { background: rgba(21, 128, 61, 0.15); color: var(--color-success); }
[b-tw2fcg5au3] .badge--match-different { background: rgba(185, 28, 28, 0.15); color: var(--color-danger); }
[b-tw2fcg5au3] .badge--match-likely    { background: rgba(200, 169, 106, 0.18); color: var(--color-accent); }
[b-tw2fcg5au3] .badge--match-open      { background: var(--color-surface-alt); color: var(--color-text); }

.person-detail__match-actions[b-tw2fcg5au3] {
    display: flex;
    gap: 0.375rem;
    align-items: center;
}

.person-detail__match-btn[b-tw2fcg5au3] {
    padding: 0.375rem 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-accent);
    color: var(--color-accent);
    border-radius: var(--radius-sm);
    font-family: var(--font-body);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 100ms ease;
}

.person-detail__match-btn--merge:hover:not(:disabled)[b-tw2fcg5au3] {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
}

.person-detail__match-btn:disabled[b-tw2fcg5au3] { opacity: 0.5; cursor: not-allowed; }

.person-detail__match-note[b-tw2fcg5au3] {
    font-size: 0.75rem;
    color: var(--color-success);
    font-weight: 600;
}

.person-detail__merge-message[b-tw2fcg5au3] {
    margin-top: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-size: 0.8125rem;
}

.person-detail__merge-message--error[b-tw2fcg5au3] {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger);
}

/* ===== Korrekciós szerkesztő ===== */

.person-detail__edit-row[b-tw2fcg5au3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0.5rem 0 1rem;
}

.person-detail__edit-btn[b-tw2fcg5au3] {
    padding: 0.4rem 0.9rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: transparent;
    color: var(--color-text);
    font-size: 0.85rem;
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease;
}

.person-detail__edit-btn:hover:not(:disabled)[b-tw2fcg5au3] {
    border-color: var(--color-accent);
    background: rgba(212, 175, 55, 0.06);
}

.person-detail__edit-msg[b-tw2fcg5au3] {
    font-size: 0.85rem;
    color: var(--color-text);
    opacity: 0.8;
}

.person-detail__edit-msg--error[b-tw2fcg5au3] {
    color: var(--color-danger);
    opacity: 1;
}

.person-detail__edit-panel[b-tw2fcg5au3] {
    background: var(--color-surface);
    border: 1px dashed var(--color-accent);
}

.person-detail__edit-lead[b-tw2fcg5au3] {
    margin: 0 0 1rem;
    font-size: 0.8rem;
    opacity: 0.75;
}

.person-detail__edit-grid[b-tw2fcg5au3] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.85rem 1rem;
    margin-bottom: 1rem;
}

.person-detail__edit-field[b-tw2fcg5au3] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    font-size: 0.85rem;
}

.person-detail__edit-field > span[b-tw2fcg5au3] {
    font-weight: 600;
    opacity: 0.8;
}

.person-detail__edit-field select[b-tw2fcg5au3],
.person-detail__edit-field input[b-tw2fcg5au3],
.person-detail__edit-field textarea[b-tw2fcg5au3] {
    padding: 0.4rem 0.55rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: var(--color-bg, #fff);
    color: var(--color-text);
    font-size: 0.9rem;
    font-family: inherit;
}

.person-detail__edit-field--wide[b-tw2fcg5au3] {
    grid-column: 1 / -1;
}

.person-detail__edit-actions[b-tw2fcg5au3] {
    display: flex;
    gap: 0.5rem;
}

.person-detail__edit-save[b-tw2fcg5au3] {
    padding: 0.4rem 1.1rem;
    border: 1px solid var(--color-primary);
    border-radius: var(--radius-sm, 6px);
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
}

.person-detail__edit-save:disabled[b-tw2fcg5au3],
.person-detail__edit-cancel:disabled[b-tw2fcg5au3] {
    opacity: 0.5;
    cursor: default;
}

.person-detail__edit-cancel[b-tw2fcg5au3] {
    padding: 0.4rem 0.9rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: transparent;
    color: var(--color-text);
    font-size: 0.9rem;
    cursor: pointer;
}
/* /Components/Pages/PlaceDetail.razor.rz.scp.css */
.place-detail[b-56d7aaubsl] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.place-detail__inner[b-56d7aaubsl] {
    max-width: 1100px;
    margin: 0 auto;
}

.place-detail__back[b-56d7aaubsl] {
    margin-bottom: 1.5rem;
}

.place-detail__back a[b-56d7aaubsl] {
    color: var(--color-text);
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 120ms ease-in-out;
}

.place-detail__back a:hover[b-56d7aaubsl] {
    color: var(--color-primary);
}

.place-detail__loading[b-56d7aaubsl] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
}

/* ===== Breadcrumb ===== */

.place-detail__breadcrumb[b-56d7aaubsl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.375rem;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-size: 0.8125rem;
}

.place-detail__crumb[b-56d7aaubsl] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.25rem 0.625rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    text-decoration: none;
    color: var(--color-text);
    transition: all 120ms ease-in-out;
}

.place-detail__crumb:hover[b-56d7aaubsl] {
    border-color: var(--color-accent);
    color: var(--color-text-strong);
}

.place-detail__crumb--current[b-56d7aaubsl] {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-color: var(--color-accent);
    pointer-events: none;
}

.place-detail__crumb-level[b-56d7aaubsl] {
    font-size: 0.625rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    opacity: 0.7;
    font-weight: 600;
}

.place-detail__crumb-name[b-56d7aaubsl] {
    font-weight: 500;
}

.place-detail__crumb-sep[b-56d7aaubsl] {
    color: var(--color-text);
    opacity: 0.5;
}

.place-detail__crumb-sep:last-child[b-56d7aaubsl] {
    display: none;
}

/* ===== Header ===== */

.place-detail__header[b-56d7aaubsl] {
    padding: 1.75rem 2rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    margin-bottom: 1.5rem;
}

.place-detail__level-badge[b-56d7aaubsl] {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 0.875rem;
    color: var(--color-primary);
    background: rgba(11, 29, 51, 0.08);
}

.place-detail__level-badge--country[b-56d7aaubsl] {
    background: rgba(200, 169, 106, 0.18);
    color: var(--color-accent);
}

.place-detail__level-badge--region[b-56d7aaubsl],
.place-detail__level-badge--county[b-56d7aaubsl] {
    background: rgba(11, 29, 51, 0.12);
    color: var(--color-primary);
}

.place-detail__level-badge--settlement[b-56d7aaubsl] {
    background: rgba(21, 128, 61, 0.10);
    color: var(--color-success);
}

.place-detail__name[b-56d7aaubsl] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2.125rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
    line-height: 1.25;
}

.place-detail__historical[b-56d7aaubsl] {
    margin: 0 0 0.75rem 0;
    color: var(--color-text);
    font-size: 1rem;
    font-style: italic;
    opacity: 0.85;
}

.place-detail__context[b-56d7aaubsl] {
    margin: 0 0 0.75rem 0;
    color: var(--color-text);
    font-size: 0.875rem;
    line-height: 1.5;
}

.place-detail__coords[b-56d7aaubsl] {
    margin: 0;
    color: var(--color-text);
    font-size: 0.8125rem;
    font-family: var(--font-mono);
    opacity: 0.85;
}

/* ===== Statisztika ===== */

.place-detail__stats[b-56d7aaubsl] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.place-detail__stat[b-56d7aaubsl] {
    padding: 1.25rem 1.5rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-align: center;
}

.place-detail__stat-value[b-56d7aaubsl] {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-accent);
    line-height: 1;
    margin-bottom: 0.375rem;
    font-variant-numeric: tabular-nums;
}

.place-detail__stat-label[b-56d7aaubsl] {
    color: var(--color-text);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    opacity: 0.85;
}

/* ===== Section ===== */

.place-detail__section[b-56d7aaubsl] {
    margin-bottom: 2rem;
    padding: 1.5rem 1.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
}

.place-detail__section h2[b-56d7aaubsl] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    color: var(--color-text-strong);
    margin: 0 0 1rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.place-detail__count[b-56d7aaubsl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 22px;
    padding: 0 0.5rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: 999px;
    font-family: var(--font-body);
    font-size: 0.75rem;
    font-weight: 700;
}

.place-detail__count-extra[b-56d7aaubsl] {
    font-family: var(--font-body);
    font-size: 0.8125rem;
    color: var(--color-text);
    opacity: 0.6;
    font-weight: 400;
}

.place-detail__lead[b-56d7aaubsl] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0 0 1rem 0;
    line-height: 1.55;
}

.place-detail__empty[b-56d7aaubsl] {
    color: var(--color-text);
    opacity: 0.6;
    font-size: 0.875rem;
    margin: 0;
    font-style: italic;
}

/* ===== Sub-places grid ===== */

.place-detail__sub-grid[b-56d7aaubsl] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 0.875rem;
}

/* ===== Table ===== */

.place-detail__table[b-56d7aaubsl] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.place-detail__table th[b-56d7aaubsl] {
    text-align: left;
    padding: 0.625rem 0.75rem;
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
    font-weight: 600;
    border-bottom: 1px solid var(--color-border);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.place-detail__table td[b-56d7aaubsl] {
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-text);
    vertical-align: top;
}

.place-detail__table tbody tr:last-child td[b-56d7aaubsl] {
    border-bottom: none;
}

.place-detail__table tbody tr:hover[b-56d7aaubsl] {
    background: var(--color-surface-alt);
}

.place-detail__cell-date[b-56d7aaubsl] {
    font-family: var(--font-mono);
    font-size: 0.8125rem;
    color: var(--color-accent);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.place-detail__event-type[b-56d7aaubsl] {
    color: var(--color-text-strong);
    font-weight: 500;
}

.place-detail__cell-desc[b-56d7aaubsl] {
    font-size: 0.8125rem;
    color: var(--color-text);
    opacity: 0.85;
}

.place-detail__placeholder[b-56d7aaubsl] {
    color: var(--color-text);
    opacity: 0.4;
}

@media (max-width: 720px) {
    .place-detail__table[b-56d7aaubsl] { font-size: 0.8125rem; }
    .place-detail__table th[b-56d7aaubsl], .place-detail__table td[b-56d7aaubsl] { padding: 0.5rem 0.5rem; }
}
/* /Components/Pages/Places.razor.rz.scp.css */
.places[b-zuhno5fk00] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.places__inner[b-zuhno5fk00] {
    max-width: 1200px;
    margin: 0 auto;
}

.places__header[b-zuhno5fk00] {
    margin-bottom: 2rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--color-border);
}

.places__header h1[b-zuhno5fk00] {
    font-family: var(--font-display);
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
}

.places__lead[b-zuhno5fk00] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

.places__notice[b-zuhno5fk00] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}

.places__notice p[b-zuhno5fk00] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ---- Toolbar ---- */

.places__toolbar[b-zuhno5fk00] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.places__search-wrap[b-zuhno5fk00] {
    display: flex;
    gap: 0.5rem;
    flex: 1;
    min-width: 300px;
    max-width: 760px;
    flex-wrap: wrap;
}

.places__search[b-zuhno5fk00] {
    flex: 1;
    min-width: 200px;
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    transition: border-color 120ms ease-in-out;
}

.places__search:focus[b-zuhno5fk00] {
    outline: none;
    border-color: var(--color-accent);
    box-shadow: 0 0 0 3px rgba(200, 169, 106, 0.15);
}

.places__level-filter[b-zuhno5fk00] {
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    cursor: pointer;
    min-width: 180px;
}

.places__level-filter:focus[b-zuhno5fk00] {
    outline: none;
    border-color: var(--color-accent);
}

[b-zuhno5fk00] .places__search-btn {
    padding: 0.625rem 1.25rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-weight: 600;
    cursor: pointer;
    transition: all 120ms ease-in-out;
}

[b-zuhno5fk00] .places__search-btn:hover:not(:disabled) {
    background: var(--color-accent-hover);
}

[b-zuhno5fk00] .places__search-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.places__stats[b-zuhno5fk00] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0;
    font-weight: 500;
}

/* ---- Grid + lapozó ---- */

.places__loading[b-zuhno5fk00] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.9375rem;
}

.places__grid[b-zuhno5fk00] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.places__pagination[b-zuhno5fk00] {
    display: flex;
    justify-content: center;
    padding: 1rem 0;
}
/* /Components/Pages/Research.razor.rz.scp.css */
.research[b-gmpzzmiqmj] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.research__inner[b-gmpzzmiqmj] {
    max-width: 1200px;
    margin: 0 auto;
}

.research__header[b-gmpzzmiqmj] {
    margin-bottom: 2rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--color-border);
}

.research__header h1[b-gmpzzmiqmj] {
    font-family: var(--font-display);
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
}

.research__lead[b-gmpzzmiqmj] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

.research__notice[b-gmpzzmiqmj] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}

.research__notice p[b-gmpzzmiqmj] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ---- Toolbar (search) ---- */

.research__overview-link[b-gmpzzmiqmj] {
    display: inline-block;
    margin-top: 0.4rem;
    font-size: 0.875rem;
    color: var(--color-primary);
    text-decoration: none;
}

.research__overview-link:hover[b-gmpzzmiqmj] {
    text-decoration: underline;
}

.research__filters[b-gmpzzmiqmj] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
    width: 100%;
}

.research__filter[b-gmpzzmiqmj] {
    padding: 0.5rem 0.65rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.85rem;
    color: var(--color-text);
}

.research__filter--year[b-gmpzzmiqmj] {
    width: 6.5rem;
}

.research__filter-clear[b-gmpzzmiqmj] {
    border: none;
    background: transparent;
    color: var(--color-primary);
    font-size: 0.85rem;
    cursor: pointer;
    padding: 0.5rem 0.4rem;
}

.research__filter-clear:hover[b-gmpzzmiqmj] {
    text-decoration: underline;
}

.research__result-stats[b-gmpzzmiqmj] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    margin: -0.75rem 0 1.5rem;
    font-size: 0.8rem;
}

.research__rs-label[b-gmpzzmiqmj] {
    color: var(--color-text);
    opacity: 0.7;
    margin-right: 0.25rem;
}

.research__rs-chip[b-gmpzzmiqmj] {
    padding: 0.15rem 0.55rem;
    background: rgba(11, 29, 51, 0.06);
    border-radius: 999px;
    color: var(--color-text);
    white-space: nowrap;
}

.research__rs-chip--century[b-gmpzzmiqmj] {
    background: rgba(212, 160, 23, 0.12);
}

.research__toolbar[b-gmpzzmiqmj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.research__search-wrap[b-gmpzzmiqmj] {
    display: flex;
    gap: 0.5rem;
    flex: 1;
    min-width: 300px;
    max-width: 760px;
    flex-wrap: wrap;
}

.research__lineage-filter[b-gmpzzmiqmj] {
    padding: 0.625rem 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.875rem;
    color: var(--color-text-strong);
    cursor: pointer;
    min-width: 180px;
}

.research__lineage-filter:focus[b-gmpzzmiqmj] {
    outline: none;
    border-color: var(--color-accent);
}

.research__search[b-gmpzzmiqmj] {
    flex: 1;
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    transition: border-color 120ms ease-in-out;
}

.research__search:focus[b-gmpzzmiqmj] {
    outline: none;
    border-color: var(--color-accent);
    box-shadow: 0 0 0 3px rgba(200, 169, 106, 0.15);
}

[b-gmpzzmiqmj] .research__search-btn {
    padding: 0.625rem 1.25rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-weight: 600;
    cursor: pointer;
    transition: all 120ms ease-in-out;
}

[b-gmpzzmiqmj] .research__search-btn:hover:not(:disabled) {
    background: var(--color-accent-hover);
}

[b-gmpzzmiqmj] .research__search-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.research__stats[b-gmpzzmiqmj] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0;
    font-weight: 500;
}

/* ---- Grid + lapozó ---- */

.research__loading[b-gmpzzmiqmj] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.9375rem;
}

.research__grid[b-gmpzzmiqmj] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.research__pagination[b-gmpzzmiqmj] {
    display: flex;
    justify-content: center;
    padding: 1rem 0;
}

.research__view-toggle[b-gmpzzmiqmj] {
    display: inline-flex;
    margin-bottom: 0.75rem;
    border: 1px solid var(--color-border);
    border-radius: 999px;
    overflow: hidden;
}

.research__view-btn[b-gmpzzmiqmj] {
    border: 0;
    background: transparent;
    padding: 0.35rem 0.9rem;
    font-size: 0.8rem;
    cursor: pointer;
    color: var(--color-text);
    transition: background 0.15s ease, color 0.15s ease;
}

.research__view-btn.is-active[b-gmpzzmiqmj] {
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
}
/* /Components/Pages/Review.razor.rz.scp.css */
.review[b-jmunvvnd3p] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.review__inner[b-jmunvvnd3p] {
    max-width: 1200px;
    margin: 0 auto;
}

.review__header[b-jmunvvnd3p] {
    margin-bottom: 2rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--color-border);
}

.review__header h1[b-jmunvvnd3p] {
    font-family: var(--font-display);
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
}

.review__lead[b-jmunvvnd3p] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

.review__notice[b-jmunvvnd3p] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}
.review__notice p[b-jmunvvnd3p] { margin: 0.25rem 0 0 0; color: var(--color-text); font-size: 0.875rem; }

/* ---- Toolbar ---- */

.review__toolbar[b-jmunvvnd3p] {
    display: flex; align-items: center; justify-content: space-between;
    gap: 1rem; margin-bottom: 1.5rem; flex-wrap: wrap;
}
.review__search-wrap[b-jmunvvnd3p] {
    display: flex; gap: 0.5rem; flex: 1; min-width: 300px; max-width: 760px;
    flex-wrap: wrap;
}
.review__search[b-jmunvvnd3p] {
    flex: 1; min-width: 200px;
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body); font-size: 0.9375rem;
    color: var(--color-text-strong);
}
.review__search:focus[b-jmunvvnd3p] {
    outline: none; border-color: var(--color-accent);
    box-shadow: 0 0 0 3px rgba(200, 169, 106, 0.15);
}
.review__status-filter[b-jmunvvnd3p] {
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body); font-size: 0.9375rem;
    color: var(--color-text-strong);
    cursor: pointer; min-width: 200px;
}
[b-jmunvvnd3p] .review__search-btn {
    padding: 0.625rem 1.25rem;
    background: var(--color-accent); color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent); border-radius: var(--radius-md);
    font-family: var(--font-body); font-weight: 600; cursor: pointer;
}
[b-jmunvvnd3p] .review__search-btn:hover:not(:disabled) { background: var(--color-accent-hover); }
[b-jmunvvnd3p] .review__search-btn:disabled { opacity: 0.6; cursor: not-allowed; }

.review__stats[b-jmunvvnd3p] {
    color: var(--color-text); font-size: 0.875rem; margin: 0; font-weight: 500;
}

/* ---- Toolbar row 2 (forrás / esemény / év / sort) ---- */

.review__toolbar--row2[b-jmunvvnd3p] {
    margin-top: -0.75rem;
    margin-bottom: 1.5rem;
    padding: 0.75rem 0.875rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    gap: 0.875rem;
    align-items: flex-end;
    justify-content: flex-start;
}

.review__filter-label[b-jmunvvnd3p] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-text);
    font-weight: 600;
    flex: 1;
    min-width: 140px;
}

.review__filter-label--narrow[b-jmunvvnd3p] {
    flex: 0 0 auto;
    min-width: 90px;
}

.review__filter[b-jmunvvnd3p] {
    padding: 0.5rem 0.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-body);
    font-size: 0.875rem;
    color: var(--color-text-strong);
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
    cursor: pointer;
}

.review__filter:focus[b-jmunvvnd3p] {
    outline: none;
    border-color: var(--color-accent);
}

.review__filter--year[b-jmunvvnd3p] {
    cursor: text;
    width: 100%;
}

.review__clear-btn[b-jmunvvnd3p] {
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    align-self: flex-end;
    margin-bottom: 0;
    transition: all 100ms ease-in-out;
}

.review__clear-btn:hover:not(:disabled)[b-jmunvvnd3p] {
    background: var(--color-danger);
    color: white;
    border-color: var(--color-danger);
}

.review__clear-btn:disabled[b-jmunvvnd3p] { opacity: 0.5; cursor: not-allowed; }

/* ---- Bulk approve: select-all bar + sticky action bar ---- */

.review__bulk-bar[b-jmunvvnd3p] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    margin-bottom: 0.875rem;
    flex-wrap: wrap;
}

.review__select-all[b-jmunvvnd3p] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--color-text);
    font-size: 0.8125rem;
    cursor: pointer;
    user-select: none;
}

.review__select-all input[type="checkbox"][b-jmunvvnd3p] {
    width: 1rem;
    height: 1rem;
    accent-color: var(--color-accent);
    cursor: pointer;
}

.review__bulk-count[b-jmunvvnd3p] {
    color: var(--color-accent);
    font-size: 0.8125rem;
    font-weight: 600;
}

.review__bulk-result[b-jmunvvnd3p] {
    margin: 0 0 1rem 0;
    padding: 0.75rem 1rem;
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-size: 0.875rem;
    line-height: 1.5;
}

.review__bulk-result--error[b-jmunvvnd3p] {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger);
}

/* ---- Row checkbox column ---- */

.review__row-checkbox[b-jmunvvnd3p] {
    flex-shrink: 0;
    width: 1.75rem;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 0.5rem;
    cursor: pointer;
}

.review__row-checkbox input[type="checkbox"][b-jmunvvnd3p] {
    width: 1.0625rem;
    height: 1.0625rem;
    accent-color: var(--color-accent);
    cursor: pointer;
}

.review__row-checkbox input[type="checkbox"]:disabled[b-jmunvvnd3p] {
    cursor: not-allowed;
    opacity: 0.4;
}

.review__row-link[b-jmunvvnd3p] {
    flex: 1;
    min-width: 0;
    text-decoration: none;
    color: inherit;
    display: block;
}

/* A sorra alkalmazott --selected módosító */

.review__row--selected[b-jmunvvnd3p] {
    background: rgba(200, 169, 106, 0.07);
    border-color: var(--color-accent);
}

/* ---- Sticky action bar (lent megjelenő) ---- */

.review__bulk-action-bar[b-jmunvvnd3p] {
    position: sticky;
    bottom: 1rem;
    z-index: 20;
    margin: 1rem 0 0 0;
    pointer-events: none;
}

.review__bulk-action-bar-inner[b-jmunvvnd3p] {
    display: inline-flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.625rem 1.125rem;
    background: var(--color-text-strong);
    color: var(--color-text-on-primary, white);
    border-radius: var(--radius-md);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
    pointer-events: auto;
    margin: 0 auto;
}

.review__bulk-action-count[b-jmunvvnd3p] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--color-accent);
    padding-right: 0.5rem;
    border-right: 1px solid rgba(255, 255, 255, 0.15);
}

[b-jmunvvnd3p] .review__bulk-cancel-btn {
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: var(--radius-sm);
    color: white;
    font-family: var(--font-body);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
}

[b-jmunvvnd3p] .review__bulk-cancel-btn:hover:not(:disabled) {
    background: rgba(255, 255, 255, 0.1);
}

[b-jmunvvnd3p] .review__bulk-approve-btn {
    padding: 0.5rem 1.125rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-sm);
    font-family: var(--font-body);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
}

[b-jmunvvnd3p] .review__bulk-approve-btn:hover:not(:disabled) {
    opacity: 0.92;
}

[b-jmunvvnd3p] .review__bulk-approve-btn:disabled,
[b-jmunvvnd3p] .review__bulk-cancel-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Layout: a sor most flex (checkbox + link) — ezt ráerősítjük */

.review__row[b-jmunvvnd3p] {
    display: flex !important;
    align-items: stretch;
    gap: 0.25rem;
    padding: 0 !important;
}

.review__row-checkbox[b-jmunvvnd3p] {
    padding-left: 0.875rem;
    padding-right: 0.25rem;
}

.review__row-link[b-jmunvvnd3p] {
    padding: 1rem 1.25rem 1rem 0.75rem;
}

.review__loading[b-jmunvvnd3p] { padding: 3rem; text-align: center; color: var(--color-text); }

/* ---- List ---- */

.review__list[b-jmunvvnd3p] {
    display: flex; flex-direction: column; gap: 0.75rem; margin-bottom: 2rem;
}

.review__row[b-jmunvvnd3p] {
    display: block;
    padding: 1rem 1.25rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-accent);
    border-radius: var(--radius-md);
    transition: box-shadow 120ms ease, transform 120ms ease;
    text-decoration: none;
    color: inherit;
}
.review__row:hover[b-jmunvvnd3p] {
    box-shadow: var(--shadow-md);
    transform: translateY(-1px);
    border-color: var(--color-accent);
}

.review__row--success[b-jmunvvnd3p]  { border-left-color: var(--color-success); }
.review__row--warning[b-jmunvvnd3p]  { border-left-color: var(--color-warning); }
.review__row--danger[b-jmunvvnd3p]   { border-left-color: var(--color-danger); }
.review__row--info[b-jmunvvnd3p]     { border-left-color: var(--color-accent); }

.review__row-head[b-jmunvvnd3p] {
    display: flex; align-items: center; justify-content: space-between;
    gap: 0.75rem; margin-bottom: 0.5rem; flex-wrap: wrap;
}
.review__row-source[b-jmunvvnd3p] {
    color: var(--color-text); font-size: 0.8125rem;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.review__row-locator[b-jmunvvnd3p] { opacity: 0.65; font-family: var(--font-mono); font-size: 0.75rem; }

[b-jmunvvnd3p] .badge {
    display: inline-flex; align-items: center;
    padding: 0.25rem 0.625rem; border-radius: var(--radius-sm);
    font-size: 0.6875rem; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.05em;
    background: var(--color-surface-alt); color: var(--color-text);
}
[b-jmunvvnd3p] .badge--success { background: rgba(21, 128, 61, 0.12); color: var(--color-success); }
[b-jmunvvnd3p] .badge--warning { background: rgba(161, 98, 7, 0.12);  color: var(--color-warning); }
[b-jmunvvnd3p] .badge--danger  { background: rgba(185, 28, 28, 0.12); color: var(--color-danger); }
[b-jmunvvnd3p] .badge--info    { background: rgba(11, 29, 51, 0.08);  color: var(--color-primary); }

.review__row-body[b-jmunvvnd3p] {
    display: flex; align-items: center; gap: 0.75rem;
    margin-bottom: 0.5rem; flex-wrap: wrap;
}
.review__row-type[b-jmunvvnd3p] {
    display: inline-block;
    padding: 0.125rem 0.5rem; border-radius: var(--radius-sm);
    background: var(--color-surface-alt);
    color: var(--color-accent);
    font-size: 0.6875rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.08em;
}
.review__row-person[b-jmunvvnd3p] {
    font-family: var(--font-display); font-size: 1.0625rem;
    color: var(--color-text-strong); font-weight: 600;
}
.review__row-meta[b-jmunvvnd3p] {
    color: var(--color-text); font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}
.review__row-year[b-jmunvvnd3p] { font-weight: 500; color: var(--color-text-strong); }
.review__row-place[b-jmunvvnd3p] { opacity: 0.85; }

.review__row-foot[b-jmunvvnd3p] {
    display: flex; align-items: center; gap: 1rem;
    padding-top: 0.5rem; border-top: 1px solid var(--color-border);
    color: var(--color-text); font-size: 0.75rem;
    flex-wrap: wrap;
}
.review__row-confidence[b-jmunvvnd3p] {
    font-weight: 700; color: var(--color-accent);
    font-variant-numeric: tabular-nums;
}
.review__row-created[b-jmunvvnd3p] { opacity: 0.7; font-variant-numeric: tabular-nums; }
.review__row-assigned[b-jmunvvnd3p] { opacity: 0.85; }
.review__row-soon[b-jmunvvnd3p] {
    margin-left: auto; opacity: 0.5; font-style: italic;
}

.review__pagination[b-jmunvvnd3p] {
    display: flex; justify-content: center; padding: 1rem 0;
}
/* /Components/Pages/SourceDetail.razor.rz.scp.css */
.source-detail[b-7tfoeo7df4] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.source-detail__inner[b-7tfoeo7df4] {
    max-width: 1100px;
    margin: 0 auto;
}

.source-detail__back[b-7tfoeo7df4] {
    margin-bottom: 1.5rem;
}

.source-detail__back a[b-7tfoeo7df4] {
    color: var(--color-text);
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 120ms ease-in-out;
}

.source-detail__back a:hover[b-7tfoeo7df4] {
    color: var(--color-primary);
}

.source-detail__loading[b-7tfoeo7df4] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
}

/* ===== Header ===== */

.source-detail__header[b-7tfoeo7df4] {
    padding: 1.75rem 2rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    margin-bottom: 1.5rem;
}

.source-detail__type-badge[b-7tfoeo7df4] {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 0.875rem;
}

.source-detail__title[b-7tfoeo7df4] {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2.125rem);
    color: var(--color-text-strong);
    margin: 0 0 0.75rem 0;
    line-height: 1.25;
}

.source-detail__repo[b-7tfoeo7df4] {
    margin: 0 0 0.75rem 0;
    color: var(--color-text-strong);
    font-size: 0.9375rem;
    font-weight: 500;
}

.source-detail__desc[b-7tfoeo7df4] {
    margin: 0 0 0.875rem 0;
    color: var(--color-text);
    font-size: 0.9375rem;
    line-height: 1.6;
}

.source-detail__meta[b-7tfoeo7df4] {
    margin: 0;
    color: var(--color-text);
    font-size: 0.8125rem;
    opacity: 0.75;
    font-variant-numeric: tabular-nums;
}

/* ===== Statisztika kártyák ===== */

.source-detail__stats[b-7tfoeo7df4] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.source-detail__stat[b-7tfoeo7df4] {
    padding: 1.25rem 1.5rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-align: center;
}

.source-detail__stat-value[b-7tfoeo7df4] {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-accent);
    line-height: 1;
    margin-bottom: 0.375rem;
    font-variant-numeric: tabular-nums;
}

.source-detail__stat-label[b-7tfoeo7df4] {
    color: var(--color-text);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    opacity: 0.85;
}

/* ===== Section ===== */

.source-detail__section[b-7tfoeo7df4] {
    margin-bottom: 2rem;
    padding: 1.5rem 1.75rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
}

.source-detail__section h2[b-7tfoeo7df4] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    color: var(--color-text-strong);
    margin: 0 0 1rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.source-detail__count[b-7tfoeo7df4] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 22px;
    padding: 0 0.5rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: 999px;
    font-family: var(--font-body);
    font-size: 0.75rem;
    font-weight: 700;
}

.source-detail__count-extra[b-7tfoeo7df4] {
    font-family: var(--font-body);
    font-size: 0.8125rem;
    color: var(--color-text);
    opacity: 0.6;
    font-weight: 400;
}

.source-detail__lead[b-7tfoeo7df4] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0 0 1rem 0;
    line-height: 1.55;
}

.source-detail__empty[b-7tfoeo7df4] {
    color: var(--color-text);
    opacity: 0.6;
    font-size: 0.875rem;
    margin: 0;
    font-style: italic;
}

/* ===== Table ===== */

.source-detail__table[b-7tfoeo7df4] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.source-detail__table th[b-7tfoeo7df4] {
    text-align: left;
    padding: 0.625rem 0.75rem;
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
    font-weight: 600;
    border-bottom: 1px solid var(--color-border);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.source-detail__table td[b-7tfoeo7df4] {
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-text);
    vertical-align: top;
}

.source-detail__table tbody tr:last-child td[b-7tfoeo7df4] {
    border-bottom: none;
}

.source-detail__table tbody tr:hover[b-7tfoeo7df4] {
    background: var(--color-surface-alt);
}

.source-detail__cell-time[b-7tfoeo7df4] {
    font-variant-numeric: tabular-nums;
    color: var(--color-text);
    white-space: nowrap;
}

.source-detail__mono[b-7tfoeo7df4] {
    font-family: var(--font-mono);
    font-size: 0.8125rem;
    background: var(--color-surface-alt);
    padding: 0.125rem 0.4rem;
    border-radius: var(--radius-sm);
    color: var(--color-text-strong);
}

.source-detail__placeholder[b-7tfoeo7df4] {
    color: var(--color-text);
    opacity: 0.4;
}

/* ===== Badge variánsok ===== */

[b-7tfoeo7df4] .badge {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: var(--radius-sm);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: var(--color-surface-alt);
    color: var(--color-text);
}

[b-7tfoeo7df4] .badge--success {
    background: rgba(21, 128, 61, 0.12);
    color: var(--color-success);
}

[b-7tfoeo7df4] .badge--danger {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger);
}

[b-7tfoeo7df4] .badge--warning {
    background: rgba(161, 98, 7, 0.12);
    color: var(--color-warning);
}

[b-7tfoeo7df4] .badge--info {
    background: rgba(11, 29, 51, 0.08);
    color: var(--color-primary);
}

.source-detail__media-cta[b-7tfoeo7df4] {
    margin: 1rem 0 1.5rem;
}

.source-detail__media-link[b-7tfoeo7df4] {
    display: inline-block;
    padding: 0.55rem 1rem;
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
    border-radius: var(--radius-sm, 6px);
    text-decoration: none;
    font-weight: 600;
    font-size: 0.9rem;
    transition: opacity 0.15s ease;
}

.source-detail__media-link:hover[b-7tfoeo7df4] {
    opacity: 0.85;
    text-decoration: none;
}

.source-detail__guide[b-7tfoeo7df4] {
    margin: 1rem 0 1.5rem;
    padding: 1rem;
    background: var(--color-surface);
    border: 1px dashed var(--color-accent, #d4af37);
    border-radius: var(--radius-md);
}

.source-detail__guide h2[b-7tfoeo7df4] {
    margin: 0 0 0.35rem;
    font-size: 1rem;
}

.source-detail__guide-lead[b-7tfoeo7df4] {
    margin: 0 0 0.75rem;
    font-size: 0.8rem;
    opacity: 0.78;
}

.source-detail__guide-empty[b-7tfoeo7df4] {
    margin: 0 0 0.75rem;
    font-style: italic;
    opacity: 0.6;
}

.source-detail__guide-text[b-7tfoeo7df4] {
    margin: 0 0 0.75rem;
    padding: 0.6rem 0.75rem;
    background: rgba(0, 0, 0, 0.04);
    border-radius: var(--radius-sm, 6px);
    font-family: inherit;
    font-size: 0.85rem;
    white-space: pre-wrap;
}

.source-detail__guide-textarea[b-7tfoeo7df4] {
    width: 100%;
    padding: 0.55rem 0.7rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    font-family: inherit;
    font-size: 0.85rem;
    resize: vertical;
    margin-bottom: 0.5rem;
}

.source-detail__guide-actions[b-7tfoeo7df4] {
    display: flex;
    gap: 0.5rem;
}

.source-detail__guide-btn[b-7tfoeo7df4],
.source-detail__guide-save[b-7tfoeo7df4],
.source-detail__guide-cancel[b-7tfoeo7df4] {
    padding: 0.35rem 0.85rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm, 6px);
    background: transparent;
    color: var(--color-text);
    font-size: 0.85rem;
    cursor: pointer;
}

.source-detail__guide-save[b-7tfoeo7df4] {
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
    border-color: var(--color-primary);
}

.source-detail__guide-save:disabled[b-7tfoeo7df4],
.source-detail__guide-cancel:disabled[b-7tfoeo7df4],
.source-detail__guide-btn:disabled[b-7tfoeo7df4],
.source-detail__guide-suggest:disabled[b-7tfoeo7df4] {
    opacity: 0.55;
    cursor: default;
}

.source-detail__guide-suggest[b-7tfoeo7df4] {
    margin-left: auto;
    padding: 0.35rem 0.85rem;
    border: 1px solid var(--color-accent, #d4af37);
    border-radius: var(--radius-sm, 6px);
    background: rgba(212, 175, 55, 0.08);
    color: var(--color-text-strong);
    font-size: 0.85rem;
    cursor: pointer;
    transition: background 0.15s ease;
}

.source-detail__guide-suggest:hover:not(:disabled)[b-7tfoeo7df4] {
    background: rgba(212, 175, 55, 0.18);
}

.source-detail__guide-msg[b-7tfoeo7df4] {
    margin: 0.5rem 0 0;
    padding: 0.4rem 0.6rem;
    background: rgba(58, 125, 93, 0.1);
    border-radius: var(--radius-sm, 6px);
    font-size: 0.8rem;
}

.source-detail__guide-msg--error[b-7tfoeo7df4] {
    background: rgba(185, 28, 28, 0.12);
    color: var(--color-danger, #b91c1c);
}

.source-detail__guide-hint[b-7tfoeo7df4] {
    margin: 0.5rem 0 0;
    font-size: 0.78rem;
    opacity: 0.7;
    font-style: italic;
}

@media (max-width: 720px) {
    .source-detail__inner[b-7tfoeo7df4] { padding: 0; }
    .source-detail__table[b-7tfoeo7df4] { font-size: 0.8125rem; }
    .source-detail__table th[b-7tfoeo7df4], .source-detail__table td[b-7tfoeo7df4] { padding: 0.5rem 0.5rem; }
}
/* /Components/Pages/Sources.razor.rz.scp.css */
.sources[b-n2xuzc5ya6] {
    padding: 3rem 1.5rem;
    background: var(--color-background);
    min-height: 70vh;
}

.sources__inner[b-n2xuzc5ya6] {
    max-width: 1200px;
    margin: 0 auto;
}

.sources__header[b-n2xuzc5ya6] {
    margin-bottom: 2rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--color-border);
}

.sources__header h1[b-n2xuzc5ya6] {
    font-family: var(--font-display);
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
}

.sources__lead[b-n2xuzc5ya6] {
    color: var(--color-text);
    font-size: 0.9375rem;
    margin: 0;
    line-height: 1.55;
}

.sources__notice[b-n2xuzc5ya6] {
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
    background: rgba(161, 98, 7, 0.08);
    border: 1px solid rgba(161, 98, 7, 0.25);
    color: var(--color-warning);
}

.sources__notice p[b-n2xuzc5ya6] {
    margin: 0.25rem 0 0 0;
    color: var(--color-text);
    font-size: 0.875rem;
}

/* ---- Toolbar (search + type filter) ---- */

.sources__toolbar[b-n2xuzc5ya6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.sources__search-wrap[b-n2xuzc5ya6] {
    display: flex;
    gap: 0.5rem;
    flex: 1;
    min-width: 300px;
    max-width: 760px;
    flex-wrap: wrap;
}

.sources__search[b-n2xuzc5ya6] {
    flex: 1;
    min-width: 200px;
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    transition: border-color 120ms ease-in-out;
}

.sources__search:focus[b-n2xuzc5ya6] {
    outline: none;
    border-color: var(--color-accent);
    box-shadow: 0 0 0 3px rgba(200, 169, 106, 0.15);
}

.sources__type-filter[b-n2xuzc5ya6] {
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--color-text-strong);
    cursor: pointer;
    min-width: 180px;
}

.sources__type-filter:focus[b-n2xuzc5ya6] {
    outline: none;
    border-color: var(--color-accent);
}

[b-n2xuzc5ya6] .sources__search-btn {
    padding: 0.625rem 1.25rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-weight: 600;
    cursor: pointer;
    transition: all 120ms ease-in-out;
}

[b-n2xuzc5ya6] .sources__search-btn:hover:not(:disabled) {
    background: var(--color-accent-hover);
}

[b-n2xuzc5ya6] .sources__search-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.sources__stats[b-n2xuzc5ya6] {
    color: var(--color-text);
    font-size: 0.875rem;
    margin: 0;
    font-weight: 500;
}

/* ---- Grid + lapozó ---- */

.sources__loading[b-n2xuzc5ya6] {
    padding: 3rem;
    text-align: center;
    color: var(--color-text);
    font-size: 0.9375rem;
}

.sources__grid[b-n2xuzc5ya6] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.sources__pagination[b-n2xuzc5ya6] {
    display: flex;
    justify-content: center;
    padding: 1rem 0;
}
/* /Components/Pages/Trends.razor.rz.scp.css */
.trends[b-mmye8umdxd] {
    padding: 2rem 1rem 4rem;
}

.trends__inner[b-mmye8umdxd] {
    max-width: 1100px;
    margin: 0 auto;
}

.trends__header[b-mmye8umdxd] {
    margin-bottom: 1.5rem;
}

.trends__header h1[b-mmye8umdxd] {
    margin: 0 0 0.25rem;
    color: var(--color-primary);
}

.trends__lead[b-mmye8umdxd] {
    margin: 0 0 0.5rem;
    opacity: 0.85;
}

.trends__back[b-mmye8umdxd] {
    font-size: 0.875rem;
    color: var(--color-primary);
    text-decoration: none;
}

.trends__back:hover[b-mmye8umdxd] {
    text-decoration: underline;
}

.trends__loading[b-mmye8umdxd],
.trends__empty[b-mmye8umdxd] {
    opacity: 0.7;
}

.trends__toolbar[b-mmye8umdxd] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
    align-items: flex-end;
}

.trends__field[b-mmye8umdxd] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.8rem;
}

.trends__field span[b-mmye8umdxd] {
    opacity: 0.75;
}

.trends__field select[b-mmye8umdxd],
.trends__field input[b-mmye8umdxd] {
    padding: 0.5rem 0.65rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
    font-size: 0.85rem;
    color: var(--color-text);
}

.trends__field input[type=number][b-mmye8umdxd] {
    width: 7rem;
}

.trends__chart[b-mmye8umdxd] {
    display: flex;
    align-items: flex-end;
    gap: 0.5rem;
    overflow-x: auto;
    padding-bottom: 0.5rem;
    min-height: 290px;
}

.trends__col[b-mmye8umdxd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3rem;
    min-width: 42px;
}

.trends__stack[b-mmye8umdxd] {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    height: 240px;
    border-radius: var(--radius-sm, 0.25rem);
    overflow: hidden;
    background: rgba(11, 29, 51, 0.05);
}

.trends__seg[b-mmye8umdxd] {
    width: 100%;
}

.trends__total[b-mmye8umdxd] {
    font-size: 0.7rem;
    opacity: 0.65;
    font-variant-numeric: tabular-nums;
}

.trends__xlabel[b-mmye8umdxd] {
    font-size: 0.72rem;
    opacity: 0.8;
}

.trends__legend[b-mmye8umdxd] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.trends__legend-item[b-mmye8umdxd] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.82rem;
    border: none;
    background: none;
    cursor: pointer;
    color: var(--color-text);
    padding: 0.1rem 0.2rem;
}

.trends__legend-item:hover[b-mmye8umdxd] {
    opacity: 0.8;
}

.trends__legend-item--off[b-mmye8umdxd] {
    opacity: 0.4;
    text-decoration: line-through;
}

.trends__legend-item i[b-mmye8umdxd] {
    width: 0.85rem;
    height: 0.85rem;
    border-radius: 3px;
    display: inline-block;
}

.trends__modes[b-mmye8umdxd] {
    display: inline-flex;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.trends__mode[b-mmye8umdxd] {
    border: none;
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.8rem;
    padding: 0.5rem 0.7rem;
    cursor: pointer;
}

.trends__mode--active[b-mmye8umdxd] {
    background: var(--color-primary);
    color: #fff;
}

.trends__chart--line[b-mmye8umdxd] {
    display: block;
    overflow-x: visible;
    min-height: auto;
    align-items: stretch;
}

.trends__linechart[b-mmye8umdxd] {
    width: 100%;
    height: auto;
    display: block;
}
/* /Components/Shared/BundleMergePreview.razor.rz.scp.css */
.merge-preview[b-gwxf6de6aw] {
    background: var(--color-surface);
    border: 2px solid var(--color-accent);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-lg);
    padding: 1rem 1.25rem;
    margin: 0.75rem 0;
}

.merge-preview__header[b-gwxf6de6aw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid var(--color-border);
}

.merge-preview__title[b-gwxf6de6aw] {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-accent);
    margin: 0;
}

.merge-preview__close[b-gwxf6de6aw] {
    padding: 0.25rem 0.625rem;
    background: transparent;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-size: 0.75rem;
    cursor: pointer;
}

.merge-preview__close:hover:not(:disabled)[b-gwxf6de6aw] {
    background: var(--color-surface-alt);
}

.merge-preview__cols[b-gwxf6de6aw] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.875rem;
    margin-bottom: 1rem;
}

@media (max-width: 768px) {
    .merge-preview__cols[b-gwxf6de6aw] { grid-template-columns: 1fr; }
}

.merge-preview__col[b-gwxf6de6aw] {
    padding: 0.75rem 0.875rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}

.merge-preview__col--bundle[b-gwxf6de6aw] {
    border-left: 3px solid var(--color-accent);
}

.merge-preview__col--existing[b-gwxf6de6aw] {
    border-left: 3px solid var(--color-primary);
}

.merge-preview__col-title[b-gwxf6de6aw] {
    font-family: var(--font-display);
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--color-text-strong);
    margin: 0 0 0.625rem 0;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.merge-preview__fields[b-gwxf6de6aw] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.25rem 0.625rem;
    font-size: 0.8125rem;
    margin: 0 0 0.75rem 0;
}

.merge-preview__fields dt[b-gwxf6de6aw] {
    color: var(--color-text);
    opacity: 0.7;
    font-weight: 500;
}

.merge-preview__fields dd[b-gwxf6de6aw] {
    margin: 0;
    color: var(--color-text-strong);
}

/* Mező-összehasonlítás színkódok */
.merge-preview__field--match[b-gwxf6de6aw] {
    color: var(--color-success);
    font-weight: 600;
}
.merge-preview__field--soft-match[b-gwxf6de6aw] {
    color: var(--color-accent);
    font-weight: 600;
}
.merge-preview__field--add[b-gwxf6de6aw] {
    color: var(--color-warning);
}
.merge-preview__field--conflict[b-gwxf6de6aw] {
    color: var(--color-danger);
    font-weight: 600;
}
.merge-preview__field--neutral[b-gwxf6de6aw] {
    color: var(--color-text);
    opacity: 0.85;
}

.merge-preview__events-title[b-gwxf6de6aw] {
    font-family: var(--font-display);
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-text-strong);
    margin: 0.625rem 0 0.375rem 0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.merge-preview__events[b-gwxf6de6aw] {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0.75rem;
}

.merge-preview__events li[b-gwxf6de6aw] {
    padding: 0.25rem 0;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-text);
}

.merge-preview__events li:last-child[b-gwxf6de6aw] {
    border-bottom: none;
}

.merge-preview__events li strong[b-gwxf6de6aw] {
    color: var(--color-text-strong);
    margin-right: 0.375rem;
}

.merge-preview__event-meta[b-gwxf6de6aw] {
    color: var(--color-text);
    opacity: 0.8;
    margin-left: 0.25rem;
}

.merge-preview__empty[b-gwxf6de6aw] {
    margin: 0;
    color: var(--color-text);
    opacity: 0.6;
    font-style: italic;
    font-size: 0.75rem;
}

/* Summary szekció */
.merge-preview__summary[b-gwxf6de6aw] {
    padding: 0.625rem 0.875rem;
    background: var(--color-surface-alt);
    border-radius: var(--radius-sm);
    margin-bottom: 1rem;
}

.merge-preview__summary-lead[b-gwxf6de6aw] {
    margin: 0 0 0.5rem 0;
    color: var(--color-text);
    font-size: 0.8125rem;
    font-weight: 600;
}

.merge-preview__summary-list[b-gwxf6de6aw] {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0.8125rem;
}

.merge-preview__summary-list li[b-gwxf6de6aw] {
    padding: 0.25rem 0;
}

.merge-preview__summary-add[b-gwxf6de6aw] {
    color: var(--color-success);
}

.merge-preview__summary-conflict[b-gwxf6de6aw] {
    color: var(--color-warning);
    font-weight: 600;
}

/* Akciósor */
.merge-preview__actions[b-gwxf6de6aw] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    padding-top: 0.625rem;
    border-top: 1px solid var(--color-border);
}

.merge-preview__action-btn[b-gwxf6de6aw] {
    padding: 0.375rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 100ms ease;
}

.merge-preview__action-btn:hover:not(:disabled)[b-gwxf6de6aw] {
    background: var(--color-surface-alt);
}

.merge-preview__action-btn--link[b-gwxf6de6aw] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    border-color: var(--color-primary);
}
.merge-preview__action-btn--link:hover:not(:disabled)[b-gwxf6de6aw] {
    background: var(--color-primary-hover);
}

.merge-preview__action-btn--unlink[b-gwxf6de6aw] {
    background: var(--color-success);
    color: white;
    border-color: var(--color-success);
}
.merge-preview__action-btn--unlink:hover:not(:disabled)[b-gwxf6de6aw] {
    background: rgb(17, 105, 50);
}

.merge-preview__action-btn:disabled[b-gwxf6de6aw] {
    opacity: 0.5;
    cursor: not-allowed;
}
/* /Components/Shared/DevBanner.razor.rz.scp.css */
.dev-banner[b-xvs4x1tz16] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.375rem 1rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    border-bottom: 1px solid var(--color-accent-hover);
}

.dev-banner__pulse[b-xvs4x1tz16] {
    display: inline-block;
    font-size: 0.6875rem;
    color: var(--color-primary);
    animation: dev-banner-pulse-b-xvs4x1tz16 2s ease-in-out infinite;
}

@keyframes dev-banner-pulse-b-xvs4x1tz16 {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%       { opacity: 0.5; transform: scale(0.85); }
}

.dev-banner__text[b-xvs4x1tz16] {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.08em;
}
/* /Components/Shared/EmptyState.razor.rz.scp.css */
.empty-state[b-zzkxaa1ori] {
    text-align: center;
    padding: 4rem 1.5rem;
    max-width: 540px;
    margin: 0 auto;
}

.empty-state__moon[b-zzkxaa1ori] {
    font-size: 3.5rem;
    color: var(--color-accent);
    line-height: 1;
    margin-bottom: 1rem;
    opacity: 0.7;
}

.empty-state__title[b-zzkxaa1ori] {
    font-family: var(--font-display);
    font-size: 1.5rem;
    color: var(--color-text-strong);
    margin: 0 0 0.75rem 0;
    font-weight: 600;
}

.empty-state__description[b-zzkxaa1ori] {
    color: var(--color-text);
    font-size: 0.9375rem;
    line-height: 1.6;
    margin: 0 0 1.5rem 0;
}

.empty-state__action[b-zzkxaa1ori] {
    display: inline-flex;
    align-items: center;
    padding: 0.625rem 1.5rem;
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.9375rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 120ms ease-in-out;
    background: transparent;
    color: var(--color-primary);
    border: 1px solid var(--color-primary);
    cursor: pointer;
}

.empty-state__action:hover[b-zzkxaa1ori] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}
/* /Components/Shared/FamilyTree.razor.rz.scp.css */
.family-tree[b-jbfhpv22sg] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0.5rem 0;
}

/* ===== Row layout ===== */

.family-tree__row[b-jbfhpv22sg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
}

.family-tree__row--focus[b-jbfhpv22sg] {
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.family-tree__row-label[b-jbfhpv22sg] {
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    opacity: 0.6;
}

/* ===== Members container ===== */

.family-tree__members[b-jbfhpv22sg] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
}

/* ===== Focus row groups ===== */

.family-tree__group[b-jbfhpv22sg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.family-tree__group-label[b-jbfhpv22sg] {
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-text);
    opacity: 0.6;
}

.family-tree__group--focus .family-tree__group-label[b-jbfhpv22sg] {
    color: var(--color-accent);
    opacity: 1;
}

/* ===== Connector line (vertical between rows) ===== */

.family-tree__connector[b-jbfhpv22sg] {
    width: 2px;
    height: 1.75rem;
    background: var(--color-accent);
    margin: 0 auto;
    opacity: 0.45;
}

/* ===== Member card ===== */

.family-tree__member[b-jbfhpv22sg] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-decoration: none;
    color: inherit;
    transition: all 150ms ease-in-out;
    min-width: 180px;
    max-width: 240px;
}

.family-tree__member:hover[b-jbfhpv22sg] {
    border-color: var(--color-accent);
    box-shadow: var(--shadow-md);
    transform: translateY(-1px);
}

.family-tree__member--focus[b-jbfhpv22sg] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    border-color: var(--color-accent);
    border-width: 2px;
    box-shadow: var(--shadow-md);
}

.family-tree__member--focus:hover[b-jbfhpv22sg] {
    transform: none;
    cursor: default;
}

.family-tree__avatar[b-jbfhpv22sg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: var(--color-primary);
    color: var(--color-accent);
    border-radius: 50%;
    font-family: var(--font-display);
    font-size: 0.8125rem;
    font-weight: 700;
    flex-shrink: 0;
}

.family-tree__member--focus .family-tree__avatar[b-jbfhpv22sg] {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
}

.family-tree__member-body[b-jbfhpv22sg] {
    min-width: 0;
    flex: 1;
}

.family-tree__name[b-jbfhpv22sg] {
    font-family: var(--font-display);
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.family-tree__member--focus .family-tree__name[b-jbfhpv22sg] {
    color: var(--color-text-on-primary);
}

.family-tree__sex[b-jbfhpv22sg] {
    font-size: 0.8125rem;
    margin-left: 0.125rem;
}

.family-tree__sex--female[b-jbfhpv22sg] { color: #d946ef; }
.family-tree__sex--male[b-jbfhpv22sg]   { color: #60a5fa; }

.family-tree__member--focus .family-tree__sex--female[b-jbfhpv22sg] { color: #f0abfc; }
.family-tree__member--focus .family-tree__sex--male[b-jbfhpv22sg]   { color: #93c5fd; }

.family-tree__years[b-jbfhpv22sg] {
    font-size: 0.75rem;
    margin-top: 0.125rem;
    opacity: 0.75;
    font-variant-numeric: tabular-nums;
}

/* ===== Expand controls (grandparents / grandchildren) ===== */

.family-tree__expand-wrap[b-jbfhpv22sg] {
    display: flex;
    justify-content: center;
    padding: 0.25rem 0;
}

.family-tree__expand[b-jbfhpv22sg] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.3rem 0.85rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--color-accent);
    background: transparent;
    border: 1px dashed var(--color-border);
    border-radius: 999px;
    cursor: pointer;
    transition: all 150ms ease-in-out;
}

.family-tree__expand:hover[b-jbfhpv22sg] {
    border-color: var(--color-accent);
    background: var(--color-surface);
}

/* Az extra generációk kicsit halványabbak — vizuálisan „távolabb". */
.family-tree__row--grandparents .family-tree__member[b-jbfhpv22sg],
.family-tree__row--grandchildren .family-tree__member[b-jbfhpv22sg] {
    opacity: 0.82;
    transform: scale(0.95);
}

.family-tree__row--grandparents .family-tree__member:hover[b-jbfhpv22sg],
.family-tree__row--grandchildren .family-tree__member:hover[b-jbfhpv22sg] {
    opacity: 1;
}

/* A származtatott testvérek szaggatott szegéllyel — „következtetett", nem explicit. */
.family-tree__row--derived-siblings .family-tree__member[b-jbfhpv22sg] {
    border-style: dashed;
    opacity: 0.9;
}

.family-tree__row--derived-siblings .family-tree__member:hover[b-jbfhpv22sg] {
    border-style: solid;
    opacity: 1;
}

/* ===== Mobile ===== */

@media (max-width: 720px) {
    .family-tree__row--focus[b-jbfhpv22sg] {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
    }
    .family-tree__member[b-jbfhpv22sg] {
        min-width: 160px;
        max-width: 280px;
    }
}
/* /Components/Shared/FeatureCard.razor.rz.scp.css */
.feature-card[b-7a4s322xiu] {
    text-align: center;
    padding: 1.5rem 1.25rem;
}

.feature-card__icon[b-7a4s322xiu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin: 0 auto 1rem;
    background: var(--color-primary);
    color: var(--color-accent);
    border-radius: 50%;
    font-size: 1.5rem;
    box-shadow: var(--shadow-sm);
}

.feature-card__title[b-7a4s322xiu] {
    font-family: var(--font-display);
    font-size: 1.0625rem;
    font-weight: 600;
    color: var(--color-text-strong);
    margin: 0 0 0.5rem 0;
}

.feature-card__description[b-7a4s322xiu] {
    font-size: 0.875rem;
    color: var(--color-text);
    margin: 0;
    line-height: 1.5;
}
/* /Components/Shared/LanguageSwitcher.razor.rz.scp.css */
.language-switcher[b-4r4liwiqcl] {
    display: inline-flex;
    align-items: center;
    gap: 0;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.language-switcher__option[b-4r4liwiqcl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 36px;
    padding: 0 0.625rem;
    background: transparent;
    border: none;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    transition: all 120ms ease-in-out;
}

.language-switcher__option:not(:last-child)[b-4r4liwiqcl] {
    border-right: 1px solid var(--color-border);
}

.language-switcher__option:hover[b-4r4liwiqcl] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
}

.language-switcher__option--active[b-4r4liwiqcl] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

.language-switcher__option--active:hover[b-4r4liwiqcl] {
    background: var(--color-primary-hover);
    color: var(--color-text-on-primary);
}
/* /Components/Shared/Pagination.razor.rz.scp.css */
.pagination[b-iso3znzjns] {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
}

.pagination__btn[b-iso3znzjns] {
    display: inline-flex;
    align-items: center;
    padding: 0.375rem 0.875rem;
    background: var(--color-surface);
    color: var(--color-text);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 120ms ease-in-out;
}

.pagination__btn:hover:not(:disabled)[b-iso3znzjns] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    border-color: var(--color-primary);
}

.pagination__btn:disabled[b-iso3znzjns] {
    opacity: 0.4;
    cursor: not-allowed;
}

.pagination__info[b-iso3znzjns] {
    font-family: var(--font-body);
    font-size: 0.8125rem;
    color: var(--color-text);
    letter-spacing: 0.02em;
}
/* /Components/Shared/PersonCard.razor.rz.scp.css */
.person-card[b-4llooc1amr] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-decoration: none;
    color: inherit;
    transition: all 150ms ease-in-out;
}

.person-card:hover[b-4llooc1amr] {
    border-color: var(--color-accent);
    box-shadow: var(--shadow-md);
    transform: translateY(-1px);
}

.person-card__avatar[b-4llooc1amr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: var(--color-primary);
    color: var(--color-accent);
    border-radius: 50%;
    font-family: var(--font-display);
    font-size: 0.9375rem;
    font-weight: 700;
    flex-shrink: 0;
}

.person-card__body[b-4llooc1amr] {
    min-width: 0;
    flex: 1;
}

.person-card__name[b-4llooc1amr] {
    font-family: var(--font-display);
    font-size: 1.0625rem;
    color: var(--color-text-strong);
    margin: 0 0 0.25rem 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.person-card__sex[b-4llooc1amr] {
    font-size: 0.875rem;
    flex-shrink: 0;
}

.person-card__sex--female[b-4llooc1amr] { color: #c026d3; }
.person-card__sex--male[b-4llooc1amr]   { color: #2563eb; }

.person-card__years[b-4llooc1amr] {
    margin: 0;
    color: var(--color-text);
    font-size: 0.8125rem;
    font-variant-numeric: tabular-nums;
}

.person-card__meta[b-4llooc1amr] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.5rem;
}

.person-card__chip[b-4llooc1amr] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    max-width: 100%;
    padding: 0.1rem 0.5rem;
    font-size: 0.7rem;
    line-height: 1.4;
    background: var(--color-bg, rgba(0, 0, 0, 0.04));
    border: 1px solid var(--color-border);
    border-radius: 999px;
    color: var(--color-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.person-card__chip--rank[b-4llooc1amr] {
    background: var(--color-primary);
    color: var(--color-text-on-primary, #fff);
    border-color: var(--color-primary);
    font-weight: 600;
}
/* /Components/Shared/PersonTable.razor.rz.scp.css */
.person-table-wrap[b-u5mz5umt0r] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
}

.person-table[b-u5mz5umt0r] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.person-table__th[b-u5mz5umt0r] {
    text-align: left;
    padding: 0.55rem 0.75rem;
    font-weight: 600;
    color: var(--color-text);
    background: var(--color-bg, rgba(0, 0, 0, 0.03));
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.85;
}

.person-table__th--num[b-u5mz5umt0r] { text-align: right; }

.person-table__th--sortable[b-u5mz5umt0r] {
    cursor: pointer;
    user-select: none;
}

.person-table__th--sortable:hover[b-u5mz5umt0r] {
    background: rgba(0, 0, 0, 0.06);
}

.person-table__row[b-u5mz5umt0r] {
    cursor: pointer;
    transition: background 0.1s ease;
}

.person-table__row:hover[b-u5mz5umt0r] {
    background: rgba(58, 125, 93, 0.06);
}

.person-table__cell[b-u5mz5umt0r] {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--color-border);
    vertical-align: middle;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.person-table__cell--name[b-u5mz5umt0r] {
    font-weight: 500;
    color: var(--color-text-strong);
    font-family: var(--font-display);
}

.person-table__cell--num[b-u5mz5umt0r] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.person-table__cell--mono[b-u5mz5umt0r] {
    font-family: var(--font-mono, monospace);
    font-size: 0.78rem;
    opacity: 0.85;
}

.person-table__sex[b-u5mz5umt0r] {
    margin-left: 0.35rem;
    opacity: 0.7;
    font-size: 0.85em;
}

.person-table__sex--female[b-u5mz5umt0r] { color: #c026d3; }
.person-table__sex--male[b-u5mz5umt0r]   { color: #2563eb; }
/* /Components/Shared/PinnedPersonPanel.razor.rz.scp.css */
.pinned-person[b-wemi9kwhac] {
    position: fixed;
    top: 88px;
    right: 1rem;
    width: 340px;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    background: var(--color-surface);
    border: 1px solid var(--color-accent);
    border-radius: var(--radius-md);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    z-index: 50;
    font-family: var(--font-body);
}

.pinned-person__head[b-wemi9kwhac] {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0.75rem;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: var(--radius-md) var(--radius-md) 0 0;
    border-bottom: 1px solid var(--color-border);
    z-index: 1;
}

.pinned-person__head-text[b-wemi9kwhac] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
}

.pinned-person__head-icon[b-wemi9kwhac] {
    font-size: 0.875rem;
}

.pinned-person__close[b-wemi9kwhac] {
    background: transparent;
    border: none;
    color: var(--color-text-on-accent);
    cursor: pointer;
    font-size: 1rem;
    line-height: 1;
    padding: 0.25rem 0.375rem;
    border-radius: var(--radius-sm);
}

.pinned-person__close:hover[b-wemi9kwhac] {
    background: rgba(0, 0, 0, 0.1);
}

.pinned-person__body[b-wemi9kwhac] {
    padding: 0.875rem 1rem 1rem;
}

.pinned-person__name[b-wemi9kwhac] {
    margin: 0 0 0.25rem 0;
    font-family: var(--font-display);
    font-size: 1.0625rem;
    color: var(--color-text-strong);
    font-weight: 600;
    line-height: 1.2;
    display: flex;
    align-items: baseline;
    gap: 0.375rem;
    flex-wrap: wrap;
}

.pinned-person__name a[b-wemi9kwhac] {
    color: inherit;
    text-decoration: none;
}

.pinned-person__name a:hover[b-wemi9kwhac] {
    color: var(--color-accent);
    text-decoration: underline;
}

.pinned-person__sex[b-wemi9kwhac] {
    font-size: 0.875rem;
    font-weight: 600;
}

.pinned-person__years[b-wemi9kwhac] {
    margin: 0 0 0.625rem 0;
    color: var(--color-text);
    font-family: var(--font-mono);
    font-size: 0.8125rem;
}

.pinned-person__chip[b-wemi9kwhac] {
    display: inline-block;
    margin: 0 0 0.625rem 0;
    padding: 0.0625rem 0.5rem;
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-size: 0.75rem;
}

.pinned-person__section[b-wemi9kwhac] {
    margin-top: 0.875rem;
    padding-top: 0.625rem;
    border-top: 1px solid var(--color-border);
}

.pinned-person__section-title[b-wemi9kwhac] {
    margin: 0 0 0.375rem 0;
    font-family: var(--font-display);
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-text);
    font-weight: 600;
}

.pinned-person__name-list[b-wemi9kwhac],
.pinned-person__event-list[b-wemi9kwhac] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.pinned-person__name-item[b-wemi9kwhac] {
    display: flex;
    align-items: baseline;
    gap: 0.375rem;
    color: var(--color-text-strong);
    font-size: 0.8125rem;
    line-height: 1.4;
}

.pinned-person__name-type[b-wemi9kwhac] {
    flex-shrink: 0;
    padding: 0.0625rem 0.375rem;
    background: var(--color-surface-alt);
    border-radius: var(--radius-sm);
    color: var(--color-text);
    font-size: 0.625rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pinned-person__event-item[b-wemi9kwhac] {
    display: grid;
    grid-template-columns: 2.75rem 1fr;
    column-gap: 0.5rem;
    align-items: baseline;
    padding: 0.25rem 0;
    border-bottom: 1px dashed var(--color-border);
    font-size: 0.8125rem;
}

.pinned-person__event-item:last-child[b-wemi9kwhac] {
    border-bottom: none;
}

.pinned-person__event-item--more[b-wemi9kwhac] {
    grid-template-columns: 1fr;
    color: var(--color-text);
    font-style: italic;
    font-size: 0.75rem;
    opacity: 0.85;
    text-align: center;
}

.pinned-person__event-year[b-wemi9kwhac] {
    font-family: var(--font-mono);
    color: var(--color-accent);
    font-weight: 600;
    font-size: 0.8125rem;
}

.pinned-person__event-type[b-wemi9kwhac] {
    grid-column: 2;
    color: var(--color-text-strong);
    font-weight: 500;
}

.pinned-person__event-place[b-wemi9kwhac],
.pinned-person__event-meta[b-wemi9kwhac] {
    grid-column: 2;
    color: var(--color-text);
    font-size: 0.75rem;
    opacity: 0.9;
}

.pinned-person__full-link[b-wemi9kwhac] {
    display: block;
    margin-top: 0.875rem;
    padding: 0.5rem 0.625rem;
    background: var(--color-surface-alt);
    border-radius: var(--radius-sm);
    color: var(--color-accent);
    text-decoration: none;
    text-align: center;
    font-weight: 600;
    font-size: 0.8125rem;
}

.pinned-person__full-link:hover[b-wemi9kwhac] {
    background: var(--color-accent);
    color: var(--color-text-on-accent);
}

/* Mobil: csak felugró overlay-ként, kisebb */
@media (max-width: 900px) {
    .pinned-person[b-wemi9kwhac] {
        position: fixed;
        bottom: 0;
        top: auto;
        right: 0;
        left: 0;
        width: 100%;
        max-height: 60vh;
        border-radius: var(--radius-md) var(--radius-md) 0 0;
        border-bottom: none;
    }
}
/* /Components/Shared/PlaceCard.razor.rz.scp.css */
.place-card[b-dqly0jdxii] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem 1.125rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
    text-decoration: none;
    color: inherit;
    transition: all 150ms ease-in-out;
}

.place-card:hover[b-dqly0jdxii] {
    border-color: var(--color-accent);
    box-shadow: var(--shadow-lg);
    transform: translateY(-1px);
}

.place-card__head[b-dqly0jdxii] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.place-card__level[b-dqly0jdxii] {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    border-radius: var(--radius-sm);
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-primary);
    background: rgba(11, 29, 51, 0.08);
}

.place-card__level--country[b-dqly0jdxii] {
    background: rgba(200, 169, 106, 0.18);
    color: var(--color-accent);
}

.place-card__level--region[b-dqly0jdxii],
.place-card__level--county[b-dqly0jdxii] {
    background: rgba(11, 29, 51, 0.12);
    color: var(--color-primary);
}

.place-card__level--settlement[b-dqly0jdxii] {
    background: rgba(21, 128, 61, 0.10);
    color: var(--color-success);
}

.place-card__coords[b-dqly0jdxii] {
    font-size: 0.875rem;
    opacity: 0.7;
}

.place-card__name[b-dqly0jdxii] {
    font-family: var(--font-display);
    font-size: 1.0625rem;
    font-weight: 600;
    color: var(--color-text-strong);
    margin: 0;
    line-height: 1.25;
}

.place-card__historical[b-dqly0jdxii] {
    margin: 0;
    color: var(--color-text);
    font-size: 0.8125rem;
    opacity: 0.75;
    font-style: italic;
}

.place-card__parent[b-dqly0jdxii] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--color-border);
    color: var(--color-text);
    font-size: 0.8125rem;
}

.place-card__parent-icon[b-dqly0jdxii] {
    color: var(--color-accent);
    font-weight: 700;
}
/* /Components/Shared/QuickSearch.razor.rz.scp.css */
.quick-search[b-ipmky9towr] {
    position: fixed;
    inset: 0;
    background: rgba(11, 29, 51, 0.55);
    backdrop-filter: blur(3px);
    z-index: 1000;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 12vh;
}

.quick-search__panel[b-ipmky9towr] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
    width: min(640px, calc(100vw - 2rem));
    max-height: 70vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.quick-search__input-row[b-ipmky9towr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.9rem;
    border-bottom: 1px solid var(--color-border);
}

.quick-search__icon[b-ipmky9towr] {
    font-size: 1rem;
    opacity: 0.7;
    flex-shrink: 0;
}

.quick-search__input[b-ipmky9towr] {
    flex: 1;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--color-text);
    font-family: var(--font-display);
    font-size: 1.0625rem;
    padding: 0.45rem 0;
}

.quick-search__input[b-ipmky9towr]::placeholder {
    opacity: 0.5;
}

.quick-search__close[b-ipmky9towr] {
    background: transparent;
    border: 0;
    color: var(--color-text);
    opacity: 0.6;
    cursor: pointer;
    font-size: 0.95rem;
    padding: 0.2rem 0.4rem;
    border-radius: var(--radius-sm, 6px);
}

.quick-search__close:hover[b-ipmky9towr] {
    opacity: 1;
    background: rgba(0, 0, 0, 0.05);
}

.quick-search__hint[b-ipmky9towr] {
    padding: 1.25rem 1rem;
    text-align: center;
    color: var(--color-text);
    opacity: 0.6;
    font-size: 0.875rem;
}

.quick-search__results[b-ipmky9towr] {
    list-style: none;
    margin: 0;
    padding: 0.35rem 0;
    overflow-y: auto;
    flex: 1;
}

.quick-search__item[b-ipmky9towr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.55rem 0.9rem;
    cursor: pointer;
    border-left: 3px solid transparent;
    transition: background 0.1s ease, border-color 0.1s ease;
}

.quick-search__item--selected[b-ipmky9towr] {
    background: rgba(58, 125, 93, 0.08);
    border-left-color: var(--color-accent, #d4af37);
}

.quick-search__item-main[b-ipmky9towr] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.quick-search__name[b-ipmky9towr] {
    font-family: var(--font-display);
    font-weight: 600;
    color: var(--color-text-strong);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.quick-search__meta[b-ipmky9towr] {
    font-size: 0.75rem;
    opacity: 0.7;
    margin-top: 0.1rem;
}

.quick-search__years[b-ipmky9towr] {
    font-size: 0.8125rem;
    font-variant-numeric: tabular-nums;
    opacity: 0.75;
    flex-shrink: 0;
}

.quick-search__footer[b-ipmky9towr] {
    display: flex;
    gap: 1rem;
    padding: 0.45rem 0.9rem;
    border-top: 1px solid var(--color-border);
    font-size: 0.7rem;
    opacity: 0.7;
    flex-wrap: wrap;
}

.quick-search__footer kbd[b-ipmky9towr] {
    display: inline-block;
    min-width: 1.2em;
    padding: 0.05rem 0.3rem;
    margin-right: 0.25rem;
    border: 1px solid var(--color-border);
    border-radius: 3px;
    background: var(--color-bg, rgba(0, 0, 0, 0.04));
    font-family: var(--font-mono, monospace);
    font-size: 0.7em;
    text-align: center;
}
/* /Components/Shared/SourceCard.razor.rz.scp.css */
.source-card[b-wadxd2e7r6] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: 1rem 1.125rem;
    box-shadow: var(--shadow-md);
    font-family: var(--font-body);
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease;
    text-decoration: none;
    color: inherit;
}

.source-card:hover[b-wadxd2e7r6] {
    transform: translateY(-1px);
    box-shadow: var(--shadow-lg);
    border-color: var(--color-accent);
}

.source-card__type[b-wadxd2e7r6] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--color-accent);
}

.source-card__body[b-wadxd2e7r6] {
    min-width: 0;
    flex: 1;
}

.source-card__title[b-wadxd2e7r6] {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-text-strong);
    margin: 0 0 0.375rem 0;
    line-height: 1.3;
}

.source-card__desc[b-wadxd2e7r6] {
    margin: 0;
    color: var(--color-text);
    font-size: 0.8125rem;
    line-height: 1.5;
}

.source-card__footer[b-wadxd2e7r6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding-top: 0.625rem;
    border-top: 1px solid var(--color-border);
    font-size: 0.75rem;
}

.source-card__repo[b-wadxd2e7r6] {
    color: var(--color-text);
    opacity: 0.85;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.source-card__repo--empty[b-wadxd2e7r6] {
    opacity: 0.4;
}

.source-card__date[b-wadxd2e7r6] {
    color: var(--color-text);
    opacity: 0.7;
    font-variant-numeric: tabular-nums;
    flex-shrink: 0;
}
/* /Components/Shared/ThemeSwitcher.razor.rz.scp.css */
.theme-switcher[b-0m01fdvv8w] {
    position: relative;
    display: inline-block;
}

.theme-switcher__toggle[b-0m01fdvv8w] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: transparent;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    color: var(--color-text);
    transition: all 120ms ease-in-out;
}

.theme-switcher__toggle:hover[b-0m01fdvv8w] {
    border-color: var(--color-accent);
    color: var(--color-accent);
    background: var(--color-surface-alt);
}

.theme-switcher__menu[b-0m01fdvv8w] {
    position: absolute;
    top: calc(100% + 0.25rem);
    right: 0;
    min-width: 160px;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
    overflow: hidden;
    z-index: 50;
}

.theme-switcher__option[b-0m01fdvv8w] {
    display: block;
    width: 100%;
    padding: 0.5rem 1rem;
    text-align: left;
    background: transparent;
    border: none;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 0.875rem;
    transition: background-color 80ms ease-in-out;
}

.theme-switcher__option:hover[b-0m01fdvv8w] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
}

.theme-switcher__option--active[b-0m01fdvv8w] {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}

.theme-switcher__option--active:hover[b-0m01fdvv8w] {
    background: var(--color-primary-hover);
    color: var(--color-text-on-primary);
}
/* /Components/Shared/UserMenu.razor.rz.scp.css */
.user-menu[b-sryh0txc4a] {
    position: relative;
    display: inline-block;
}

.user-menu__toggle[b-sryh0txc4a] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.625rem;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: var(--radius-md);
    color: var(--color-text-on-primary);
    font-family: var(--font-body);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 120ms ease-in-out;
}

.user-menu__toggle:hover[b-sryh0txc4a] {
    border-color: var(--color-accent);
    color: var(--color-accent);
    background: rgba(255, 255, 255, 0.06);
}

.user-menu__avatar[b-sryh0txc4a] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: var(--color-accent);
    color: var(--color-text-on-accent);
    border-radius: 50%;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.user-menu__name[b-sryh0txc4a] {
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.user-menu__dropdown[b-sryh0txc4a] {
    position: absolute;
    top: calc(100% + 0.25rem);
    right: 0;
    min-width: 180px;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
    overflow: hidden;
    z-index: 50;
}

.user-menu__item[b-sryh0txc4a] {
    display: block;
    padding: 0.625rem 1rem;
    color: var(--color-text);
    text-decoration: none;
    font-size: 0.875rem;
    transition: background-color 80ms ease-in-out;
}

.user-menu__item:hover[b-sryh0txc4a] {
    background: var(--color-surface-alt);
    color: var(--color-text-strong);
}

.user-menu__item--danger[b-sryh0txc4a] {
    color: var(--color-error);
    border-top: 1px solid var(--color-border);
}

.user-menu__item--danger:hover[b-sryh0txc4a] {
    background: rgba(185, 28, 28, 0.08);
    color: var(--color-error);
}
/* /Components/Shared/WorkflowStep.razor.rz.scp.css */
.workflow-step[b-say8ljlzym] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-width: 140px;
    max-width: 180px;
}

.workflow-step__node[b-say8ljlzym] {
    position: relative;
    width: 64px;
    height: 64px;
    margin-bottom: 1rem;
    background: var(--color-accent);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text-on-accent);
    font-size: 1.75rem;
    box-shadow: var(--shadow-md);
}

.workflow-step__number[b-say8ljlzym] {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 24px;
    height: 24px;
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    border-radius: 50%;
    font-family: var(--font-display);
    font-size: 0.8125rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--color-background);
}

.workflow-step__title[b-say8ljlzym] {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-text-on-primary);
    margin: 0 0 0.375rem 0;
}

.workflow-step__description[b-say8ljlzym] {
    font-size: 0.8125rem;
    color: var(--color-text-on-primary);
    opacity: 0.85;
    margin: 0;
    line-height: 1.45;
}

.workflow-step__arrow[b-say8ljlzym] {
    align-self: flex-start;
    margin-top: 1.25rem;
    font-size: 1.5rem;
    color: var(--color-accent);
    font-weight: 300;
    flex-shrink: 0;
}

@media (max-width: 900px) {
    .workflow-step__arrow[b-say8ljlzym] {
        display: none;
    }
}
