.nop-global-nav,
.nop-global-footer {
    --nop-accent: #f97316;
    --nop-accent-soft: #fed7aa;
    font-family: "Noto Sans KR", system-ui, sans-serif;
    color: #f8fafc;
}

.nop-global-nav[data-accent="news"],
.nop-global-nav[data-accent="support"] {
    --nop-accent: #fb923c;
    --nop-accent-soft: #fed7aa;
}

.nop-global-nav[data-accent="records"] {
    --nop-accent: #22d3ee;
    --nop-accent-soft: #a5f3fc;
}

.nop-global-nav[data-accent="economy"] {
    --nop-accent: #34d399;
    --nop-accent-soft: #a7f3d0;
}

.nop-global-nav[data-accent="wrapped"] {
    --nop-accent: #c084fc;
    --nop-accent-soft: #e9d5ff;
}

.nop-global-nav[data-accent="market"] {
    --nop-accent: #38bdf8;
    --nop-accent-soft: #bae6fd;
}

.nop-global-nav[data-accent="legal"] {
    --nop-accent: #a78bfa;
    --nop-accent-soft: #ddd6fe;
}

.nop-global-nav {
    position: sticky;
    top: 0;
    z-index: 100;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(5, 2, 6, 0.88);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.nop-global-nav[data-overlay="true"] {
    position: fixed;
    border-bottom-color: transparent;
    background: linear-gradient(to bottom, rgba(5, 2, 6, 0.78), rgba(5, 2, 6, 0));
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.nop-global-nav[data-overlay="true"].is-scrolled,
.nop-global-nav.is-menu-open {
    border-bottom-color: rgba(255, 255, 255, 0.08);
    background: rgba(5, 2, 6, 0.9);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.24);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.nop-global-nav__inner {
    width: min(100% - 40px, 1280px);
    min-height: 76px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 28px;
}

.nop-global-nav__brand {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    text-decoration: none;
}

.nop-global-nav__brand img {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    object-fit: cover;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.nop-global-nav__brand span {
    overflow: hidden;
    color: #fff;
    font-family: Orbitron, sans-serif;
    font-size: 1.08rem;
    font-weight: 900;
    letter-spacing: 0.075em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nop-global-nav__brand:hover img,
.nop-global-nav__brand:focus-visible img {
    border-color: color-mix(in srgb, var(--nop-accent) 70%, transparent);
    box-shadow: 0 0 22px color-mix(in srgb, var(--nop-accent) 24%, transparent);
}

.nop-global-nav__links {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: clamp(18px, 2.1vw, 30px);
}

.nop-global-nav__link {
    position: relative;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    color: #9ca3af;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-decoration: none;
    text-transform: uppercase;
    transition: color 160ms ease;
}

.nop-global-nav__link::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 5px;
    left: 0;
    height: 2px;
    border-radius: 999px;
    background: var(--nop-accent);
    box-shadow: 0 0 12px color-mix(in srgb, var(--nop-accent) 42%, transparent);
    transform: scaleX(0);
    transition: transform 160ms ease;
}

.nop-global-nav__link:hover,
.nop-global-nav__link:focus-visible,
.nop-global-nav__link[aria-current="page"] {
    color: var(--nop-accent-soft);
}

.nop-global-nav__link:hover::after,
.nop-global-nav__link:focus-visible::after,
.nop-global-nav__link[aria-current="page"]::after {
    transform: scaleX(1);
}

.nop-global-nav__auth {
    min-height: 38px;
    min-width: 84px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border: 1px solid color-mix(in srgb, var(--nop-accent) 68%, transparent);
    border-radius: 3px;
    background: var(--nop-accent);
    box-shadow: 0 0 20px color-mix(in srgb, var(--nop-accent) 25%, transparent);
    color: #090709;
    font-size: 0.8rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-decoration: none;
    transition: filter 160ms ease, transform 160ms ease;
}

.nop-global-nav__auth:hover,
.nop-global-nav__auth:focus-visible {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

.nop-global-nav__menu-button {
    min-height: 40px;
    display: none;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.04);
    color: #fff;
    font: inherit;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    cursor: pointer;
}

.nop-global-nav__mobile {
    display: none;
    width: min(100% - 40px, 1280px);
    margin: 0 auto;
    padding: 6px 0 22px;
}

.nop-global-nav.is-menu-open .nop-global-nav__mobile {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.nop-global-nav__mobile .nop-global-nav__link {
    min-height: 46px;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    background: rgba(255, 255, 255, 0.025);
}

.nop-global-nav__mobile .nop-global-nav__link::after {
    right: 12px;
    left: 12px;
}

.nop-global-nav__mobile .nop-global-nav__auth {
    min-height: 46px;
}

.nop-global-footer {
    position: relative;
    z-index: 2;
    margin-top: 48px;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    background: #050206;
}

.nop-global-footer__inner {
    width: min(100% - 40px, 1280px);
    margin: 0 auto;
    padding: 56px 0 30px;
}

.nop-global-footer__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(160px, 0.7fr) minmax(200px, 0.75fr);
    gap: 48px;
    padding-bottom: 42px;
}

.nop-global-footer__brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    text-decoration: none;
}

.nop-global-footer__brand img {
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    object-fit: cover;
}

.nop-global-footer__brand span,
.nop-global-footer h2 {
    color: #fff;
    font-family: Orbitron, sans-serif;
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.nop-global-footer__description {
    max-width: 470px;
    margin: 18px 0 0;
    color: #6b7280;
    font-size: 0.86rem;
    line-height: 1.8;
}

.nop-global-footer h2 {
    margin: 0 0 18px;
    font-size: 0.76rem;
}

.nop-global-footer ul {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.nop-global-footer a:not(.nop-global-footer__brand),
.nop-global-footer li {
    color: #6b7280;
    font-size: 0.84rem;
    line-height: 1.55;
    text-decoration: none;
}

.nop-global-footer a:not(.nop-global-footer__brand):hover,
.nop-global-footer a:not(.nop-global-footer__brand):focus-visible {
    color: #fb923c;
}

.nop-global-footer__bottom {
    padding-top: 26px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    color: #4b5563;
    font-family: "JetBrains Mono", monospace;
    font-size: 0.72rem;
    text-align: center;
}

@media (max-width: 980px) {
    .nop-global-nav__links,
    .nop-global-nav__inner > .nop-global-nav__auth {
        display: none;
    }

    .nop-global-nav__menu-button {
        display: inline-flex;
    }
}

@media (max-width: 720px) {
    .nop-global-nav__inner {
        width: min(100% - 28px, 1280px);
        min-height: 68px;
    }

    .nop-global-nav__brand img {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }

    .nop-global-nav__brand span {
        font-size: 0.9rem;
    }

    .nop-global-nav__mobile {
        width: min(100% - 28px, 1280px);
    }

    .nop-global-footer__inner {
        width: min(100% - 32px, 1280px);
        padding-top: 42px;
    }

    .nop-global-footer__grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

@media (max-width: 430px) {
    .nop-global-nav.is-menu-open .nop-global-nav__mobile {
        grid-template-columns: 1fr;
    }
}
