/* Krytyczny pierwszy paint — wcześniej inline w index.html (CSP: style-src-elem bez inline <style>). */
html,
body {
    height: 100%;
    margin: 0;
    overflow: hidden;
    background-color: #0f0f10;
    color: #f2f3f5;
}
html[data-fct-theme="daylight"] {
    background-color: #eceef2;
    color: #111827;
}
html[data-fct-theme="daylight"] body {
    background-color: #eceef2;
}
#app {
    width: 100%;
    height: 100%;
    min-height: 100vh;
}
#app > * {
    width: 100%;
    height: 100%;
    min-height: 100vh;
}
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}
[aria-label="Loading…"],
[aria-label="Ładowanie…"],
[aria-label="Wczytywanie danych..."] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 1.5rem;
    min-height: 200px;
}
[aria-label="Loading…"] [aria-hidden],
[aria-label="Ładowanie…"] [aria-hidden],
[aria-label="Wczytywanie danych..."] [aria-hidden] {
    width: 32px;
    height: 32px;
    border: 3px solid #3f3f46;
    border-top-color: #5865f2;
    border-radius: 50%;
    animation: spin 0.7s linear infinite;
}
html[data-fct-theme="daylight"] #fct-initial-lcp .fct-spinner,
html[data-fct-theme="daylight"] [aria-label="Ładowanie…"] [aria-hidden] {
    border-color: #cbd5e1;
    border-top-color: #4f46e5;
}
#fct-initial-lcp {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 1.5rem;
    min-height: 100vh;
    box-sizing: border-box;
}
#fct-initial-lcp .fct-spinner {
    width: 32px;
    height: 32px;
    border: 3px solid #3f3f46;
    border-top-color: #5865f2;
    border-radius: 50%;
    animation: spin 0.7s linear infinite;
}
.fct-noscript-msg {
    padding: 2rem;
    text-align: center;
    font-family: system-ui, sans-serif;
}
