/* The palette and both theme scopes belong to ns-tokens.css. This sheet dresses page chrome only. */
.ns-polish-26.ns-gp {
    color: var(--ns-text);
    background-color: var(--ns-bg);
    font-family: var(--ns-font);
    min-width: 0;
    overflow-wrap: anywhere;
    line-height: 1.55;
}
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) *, :is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) *::before, :is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) *::after { box-sizing: border-box; }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) :is(h1, h2, h3, label, legend) { color: var(--ns-text); }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) :is(h1, h2, h3) { font-weight: 500; }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) a:not(.btn) { color: var(--ns-text); text-decoration: underline; }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select, textarea) {
    color: var(--ns-text);
    background-color: var(--ns-card);
    border-color: var(--ns-text-2);
    font: inherit;
    max-width: 100%;
    min-height: 44px;
}
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) ::placeholder { color: var(--ns-text-2); opacity: 1; }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) :focus-visible { outline: 2px solid var(--ns-text); outline-offset: 3px; }
.ns-polish-26.ns-gp:not(body) .btn {
    color: var(--ns-text);
    background: var(--ns-surface);
    border-color: var(--ns-border-strong);
    border-radius: var(--ns-radius);
    min-height: 44px;
    font-family: var(--ns-font);
}
.ns-polish-26.ns-gp:not(body) .btn-primary {
    color: var(--ns-on-accent);
    background: var(--ns-gold);
    border-color: var(--ns-gold);
}
.ns-polish-26.ns-gp:not(body) .btn-primary:hover { background: var(--ns-gold); border-color: var(--ns-text); }
.ns-polish-26.ns-gp:not(body) :is(.btn-danger, .btn-outline-danger) { border: 2px solid var(--ns-text); }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) .gv-page__hear { color: var(--ns-text); }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) .gv-page__voice label { min-width: 0; overflow-wrap: anywhere; }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) .voice-rec__status[data-tone="bad"] { font-weight: 600; }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) :is(.voice-rec__notice--stop, .voice-consent__errors, .gv-page__errors, .voice-made__stop) { border-inline-start: 3px solid var(--ns-text); }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) .nsk-btn--accept { color: var(--ns-on-accent); }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) .nsk-btn--accept:hover { background: var(--ns-gold); }
:is(.ns-polish-26.ns-gp:not(body), body.ns-polish-26 > main, body.ns-polish-26 > .wrap) .nsk-table thead th { color: var(--ns-text-2); }

/* The standalone rack keeps its existing class bindings and license labels. */
body.ns-polish-26 {
    --bg: var(--ns-bg);
    --card: var(--ns-card);
    --line: var(--ns-border);
    --text: var(--ns-text);
    --muted: var(--ns-text-2);
    --accent: var(--ns-gold-light);
    --badge-owned: var(--ns-surface);
    --badge-owned-text: var(--ns-text);
    --badge-ccby: var(--ns-surface);
    --badge-ccby-text: var(--ns-text);
}
body.ns-polish-26 .card-top { flex-wrap: wrap; }
body.ns-polish-26 .card, body.ns-polish-26 .empty { border-radius: var(--ns-radius); }
