/* Theme — light (municipal administrative identity) */

:root,
[data-theme="light"] {
    color-scheme: light;

    --color-brand-primary: #123a5c;
    --color-brand-accent: #0f4c6e;
    --color-brand-muted: #3d5a73;

    --surface-app: #e6ecf2;
    --surface-header: #f5f8fb;
    --surface-nav: #eef3f7;
    --surface-raised: #ffffff;
    --surface-sunken: #e8eef4;
    --surface-nav-active: #dce8f2;
    --surface-scope: #f8fafc;

    --color-row-selected: #dceaf4;
    --color-focus-ring: #0f4c6e;
}

[data-theme="light"] .pe-header {
    background: linear-gradient(180deg, var(--surface-header) 0%, #eef4f9 100%);
    border-bottom-color: #c5d4e0;
    box-shadow: inset 0 -1px 0 rgba(18, 58, 92, 0.06);
}

[data-theme="light"] .pe-topnav {
    background: var(--surface-sunken);
    border-bottom-color: #c5d4e0;
}

[data-theme="light"] .pe-topnav__item.is-active > .pe-topnav__link {
    background: var(--surface-raised);
    border-color: var(--color-brand-accent);
    color: var(--color-brand-primary);
    box-shadow: inset 0 -2px 0 var(--color-brand-accent);
}

[data-theme="light"] .pe-scope-bar {
    background: var(--surface-scope);
}

[data-theme="light"] .pe-module-nav__link.is-active {
    background: var(--surface-nav-active);
    border-left-color: var(--color-brand-accent);
}

[data-theme="light"] .pe-inspector__head {
    background: var(--surface-sunken);
    border-bottom-color: #c5d4e0;
}

/* GenericTable — minimal light bridges via tokens */
[data-theme="light"] .gt-table tbody tr.gt-row--selected {
    background: var(--color-row-selected);
}

[data-theme="light"] .gt-table tbody tr.gt-row--selected:hover {
    background: #d0e2ef;
}

[data-theme="light"] .gt-btn:focus-visible,
[data-theme="light"] .gt-search:focus-visible,
[data-theme="light"] .gt-select:focus-visible,
[data-theme="light"] .pe-btn:focus-visible,
[data-theme="light"] .pe-topnav__link:focus-visible,
[data-theme="light"] .pe-module-nav__link:focus-visible {
    outline: 2px solid var(--color-focus-ring);
    outline-offset: 1px;
}
