/* Shell of the application. The cockpit has its own sheet. */

:root {
    color-scheme: dark;
    --ink: #e9eef5;
    --ink-dim: #93a1b5;
    --ground: #0d1117;
    --panel: #161b22;
    --edge: #2a323d;
    --accent: #4da3ff;
    --warn: #f2b807;
    --alarm: #ff4d4d;
    --ok: #2fbf71;
}

* { box-sizing: border-box; }

html, body {
    margin: 0;
    height: 100%;
    background: var(--ground);
    color: var(--ink);
    font: 15px/1.45 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

body { display: flex; flex-direction: column; }

/* Blazor renders the application inside #app, so the column has to go through it. */
#app { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; }

.appbar {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 0.4rem 1rem;
    padding-top: calc(0.4rem + env(safe-area-inset-top, 0px));
    background: var(--panel);
    border-bottom: 1px solid var(--edge);
    flex: 0 0 auto;
}

.appbar .brand {
    font-weight: 600;
    letter-spacing: 0.04em;
    color: var(--ink);
    text-decoration: none;
}

.appbar nav { display: flex; gap: 1rem; }
.appbar nav a { color: var(--ink-dim); text-decoration: none; padding: 0.15rem 0; }
.appbar nav a:hover { color: var(--ink); }
.appbar nav a.active { color: var(--accent); border-bottom: 2px solid var(--accent); }

main { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; }

.prose { max-width: 42rem; padding: 1.5rem 1rem; }
.prose h1 { margin: 0 0 0.25rem; font-size: 1.6rem; }
.prose .subtitle { margin: 0 0 1.25rem; color: var(--ink-dim); }

.cta {
    display: inline-block;
    padding: 0.55rem 1.1rem;
    border-radius: 6px;
    background: var(--accent);
    color: #06121f;
    font-weight: 600;
    text-decoration: none;
}

.loading { padding: 2rem 1rem; color: var(--ink-dim); }

#blazor-error-ui {
    background: var(--warn);
    color: #10131a;
    bottom: 0;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss { cursor: pointer; position: absolute; right: 0.75rem; top: 0.5rem; }

.loading-progress { display: none; }
.loading-progress-text { padding: 2rem; color: #93a1b5; font-family: system-ui, sans-serif; }
.loading-progress-text:after { content: "Zoiosa ATC…"; }

/* Pagina informazioni: l'avviso che il simulatore non vale per la navigazione, sempre in vista. */
.info__warning { padding: 0.6rem 0.8rem; border: 1px solid var(--warn); border-radius: 6px; background: rgba(242, 184, 7, 0.1); }
.info h2 { font-size: 1.15rem; margin: 1.2rem 0 0.4rem; }
.info a { color: var(--accent); }
