body.public-level-one-page[data-auth-state="pending"] {
    visibility: hidden;
}

body.public-level-one-overview[data-auth-state="pending"] #navbar-container {
    visibility: hidden;
}

.public-level-one-navbar {
    min-height: 64px;
    gap: 24px;
}

.public-level-one-location {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    margin-right: auto;
    color: #a9a294;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    letter-spacing: 0.04em;
}

.public-level-one-location a {
    color: #f4f1e8;
    text-underline-offset: 4px;
}

.public-level-one-location strong {
    overflow: hidden;
    color: #f4f1e8;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.public-level-one-overview-link,
.public-level-one-status {
    flex: 0 0 auto;
    padding: 8px 12px;
    border: 1px solid #a8744d;
    color: #f4f1e8;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    letter-spacing: 1px;
    text-decoration: none;
    text-transform: uppercase;
}

.public-level-one-status {
    border-color: #667d6a;
    color: #cbd8c8;
}

.public-level-one-overview-link:hover,
.public-level-one-overview-link:focus-visible {
    border-color: #f4f1e8;
    color: #fff;
}

.public-level-one-notice {
    width: min(1180px, calc(100% - 32px));
    margin: 24px auto;
    padding: 18px 20px;
    border: 1px solid #928978;
    border-left: 5px solid #2f7653;
    background: #f4f1e8;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.public-level-one-notice strong {
    color: #23201b;
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.public-level-one-notice p {
    max-width: 75ch;
    margin: 6px 0 0;
    color: #5f594e;
    line-height: 1.55;
}

.public-level-one-notice > a {
    flex: 0 0 auto;
    color: #286b49;
    font-weight: 700;
    text-underline-offset: 4px;
}

.public-level-one-notice-status {
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid #6f8d76;
    color: #286b49;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.public-level-one-next {
    margin-top: 18px;
    padding: 20px;
    border: 1px solid #82796d;
    background: #f4f1e8;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.public-level-one-next span {
    color: #a2432b;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.public-level-one-next h2 {
    margin: 5px 0;
}

.public-level-one-next p {
    margin: 0;
    color: #5f594e;
}

.public-level-one-next a {
    flex: 0 0 auto;
    padding: 11px 14px;
    border: 1px solid #23201b;
    background: #23201b;
    color: #fff;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    letter-spacing: 1px;
    text-decoration: none;
    text-transform: uppercase;
}

@media (max-width: 720px) {
    .public-level-one-navbar {
        gap: 12px;
        padding: 12px 16px;
    }

    .public-level-one-navbar .nav-logo-image {
        width: min(190px, 48vw);
    }

    .public-level-one-location {
        display: none;
    }

    .public-level-one-overview-link,
    .public-level-one-status {
        margin-left: auto;
        padding: 7px 9px;
        font-size: 9px;
    }

    .public-level-one-notice {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .public-level-one-next {
        align-items: stretch;
        flex-direction: column;
    }

    .public-level-one-next a {
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .public-level-one-page * {
        scroll-behavior: auto !important;
    }
}
/* Crawlable orientation below the dynamic exercise catalog. */
.exercise-seo-guide {
    margin-top: 56px;
    padding-top: 42px;
    border-top: 2px solid #23201b;
    color: #3d3930;
}
.exercise-seo-guide > header { max-width: 72ch; }
.exercise-seo-guide h2 { color: #23201b; font-size: clamp(1.55rem, 2.6vw, 2.2rem); }
.exercise-seo-guide p { line-height: 1.7; }
.exercise-seo-path { margin: 30px 0 0; padding: 0; list-style: none; border-top: 1px solid #dad3c2; }
.exercise-seo-path li { border-bottom: 1px solid #dad3c2; }
.exercise-seo-path a { display: grid; grid-template-columns: minmax(220px, .7fr) minmax(0, 1fr); gap: 28px; padding: 18px 10px; color: #23201b; text-decoration: none; }
.exercise-seo-path a:hover strong, .exercise-seo-path a:focus-visible strong { color: #b0492c; text-decoration: underline; }
.exercise-seo-path a:focus-visible { outline: 2px solid #b0492c; outline-offset: 3px; }
.exercise-seo-path span { color: #6e6757; }
.exercise-seo-method { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin-top: 38px; border: 1px solid #dad3c2; background: #fcfaf4; }
.exercise-seo-method > div { padding: 22px; }
.exercise-seo-method > div + div { border-left: 1px solid #dad3c2; }
.exercise-seo-method strong { color: #23201b; }
.exercise-seo-method p { margin: 8px 0 0; font-size: .95rem; }
.exercise-seo-faq { margin-top: 44px; max-width: 78ch; }
.exercise-seo-faq details { border-top: 1px solid #dad3c2; }
.exercise-seo-faq details:last-child { border-bottom: 1px solid #dad3c2; }
.exercise-seo-faq summary { padding: 17px 4px; cursor: pointer; color: #23201b; font-weight: 600; }
.exercise-seo-faq details p { margin: 0; padding: 0 4px 18px; }
.exercise-seo-faq a { color: #185fa5; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 760px) {
    .exercise-seo-guide { margin-top: 38px; padding-top: 30px; }
    .exercise-seo-path a { grid-template-columns: 1fr; gap: 5px; padding: 16px 4px; }
    .exercise-seo-method { grid-template-columns: 1fr; }
    .exercise-seo-method > div + div { border-left: 0; border-top: 1px solid #dad3c2; }
}
