/* =========================================================
   NEXOARENA PRO - Foundation 0.1.2-alpha
   Landing + Platform Visual Polish
   ========================================================= */

:root {
    color-scheme: dark;
    --na-primary:#8B5CF6;
    --na-secondary:#FF2D8D;
    --na-accent:#00D4FF;
    --na-bg:#050508;
    --na-surface:#121218;
    --na-surface-2:#191923;
    --na-ui:#262633;
    --na-line:rgba(255,255,255,.09);
    --na-line-strong:rgba(255,255,255,.18);
    --na-white:#FFFFFF;
    --na-muted:#A8ADBE;
    --na-muted-2:#6F7280;
    --na-success:#39FF88;
    --na-warning:#F8C14A;
    --na-danger:#FF4D6D;
    --na-radius-sm:10px;
    --na-radius-md:15px;
    --na-radius-lg:22px;
    --na-radius-xl:28px;
    --na-shadow-soft:0 24px 80px rgba(0,0,0,.38);
    --na-glow-primary:0 0 28px rgba(139,92,246,.34);
    --na-glow-secondary:0 0 32px rgba(255,45,141,.26);
    --na-glow-accent:0 0 28px rgba(0,212,255,.24);
    --na-font-display:"Rajdhani","Exo 2","Segoe UI",system-ui,sans-serif;
    --na-font-body:"Inter","Segoe UI",system-ui,sans-serif;
    --na-sidebar-width:228px;
    --na-topbar-height:66px;
}

@media (min-width:1121px){:root{--na-topbar-height:84px}}

*{box-sizing:border-box}
html,body{min-height:100%;margin:0;background:var(--na-bg);color:var(--na-white);font-family:var(--na-font-body);overflow-x:hidden}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
h1,h2,h3,h4{font-family:var(--na-font-display);text-transform:uppercase;letter-spacing:.035em}

body::before{content:"";position:fixed;inset:0;z-index:-5;background:radial-gradient(circle at 20% 15%,rgba(139,92,246,.18),transparent 30%),radial-gradient(circle at 80% 18%,rgba(255,45,141,.16),transparent 32%),radial-gradient(circle at 70% 85%,rgba(0,212,255,.15),transparent 32%),linear-gradient(135deg,#040405 0%,#08080d 42%,#060916 100%)}
.na-bg-grid{position:fixed;inset:0;z-index:-4;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.82),rgba(0,0,0,.35) 72%,transparent);opacity:.82}
.na-bg-grid::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,212,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,45,141,.055) 1px,transparent 1px);background-size:216px 216px;opacity:.8}
.na-bg-network{position:fixed;left:-8vw;right:-8vw;bottom:-20vh;height:66vh;z-index:-3;pointer-events:none;background:radial-gradient(circle at 12% 70%,rgba(255,45,141,.85) 0 2px,transparent 3px),radial-gradient(circle at 24% 45%,rgba(139,92,246,.72) 0 2px,transparent 3px),radial-gradient(circle at 40% 66%,rgba(255,45,141,.62) 0 2px,transparent 3px),radial-gradient(circle at 55% 42%,rgba(139,92,246,.76) 0 2px,transparent 3px),radial-gradient(circle at 70% 68%,rgba(0,212,255,.78) 0 2px,transparent 3px),radial-gradient(circle at 86% 48%,rgba(0,212,255,.82) 0 2px,transparent 3px),linear-gradient(118deg,transparent 0 12%,rgba(255,45,141,.28) 12% 12.18%,transparent 12.18% 27%,rgba(139,92,246,.23) 27% 27.18%,transparent 27.18% 46%,rgba(0,212,255,.20) 46% 46.18%,transparent 46.18%),linear-gradient(64deg,transparent 0 18%,rgba(255,45,141,.17) 18% 18.2%,transparent 18.2% 34%,rgba(139,92,246,.18) 34% 34.2%,transparent 34.2% 58%,rgba(0,212,255,.16) 58% 58.2%,transparent 58.2%);opacity:.82;filter:blur(.15px);transform:perspective(900px) rotateX(60deg) translateY(10vh);transform-origin:center bottom;mask-image:linear-gradient(to top,rgba(0,0,0,.9),rgba(0,0,0,.5) 43%,transparent 100%)}

/* Shared UI */
.na-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;border:1px solid transparent;font-weight:900;letter-spacing:.035em;text-transform:uppercase;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;white-space:nowrap}.na-button:hover{transform:translateY(-1px)}.na-button-md{height:42px;padding:0 18px;font-size:.78rem}.na-button-lg{height:46px;padding:0 22px;font-size:.78rem}.na-button-primary{background:linear-gradient(135deg,var(--na-primary),var(--na-secondary));color:white;box-shadow:var(--na-glow-secondary)}.na-button-ghost{background:rgba(255,255,255,.035);border-color:var(--na-line-strong);color:white}.na-button-ghost:hover{border-color:rgba(0,212,255,.5);box-shadow:var(--na-glow-accent)}
.na-card{position:relative;border:1px solid var(--na-line);border-radius:var(--na-radius-lg);background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025));box-shadow:var(--na-shadow-soft);overflow:hidden}.na-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0%,rgba(139,92,246,.14),transparent 34%),radial-gradient(circle at 100% 100%,rgba(0,212,255,.10),transparent 38%);pointer-events:none}.na-badge{display:inline-flex;width:max-content;align-items:center;gap:8px;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(0,212,255,.32);background:rgba(0,212,255,.09);color:var(--na-accent);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.na-eyebrow{display:block;color:var(--na-accent);font-size:.72rem;font-weight:950;letter-spacing:.18em;text-transform:uppercase}.na-loader{display:inline-flex;gap:6px}.na-loader span{width:8px;height:8px;border-radius:999px;background:var(--na-accent);animation:na-bounce 1s infinite ease-in-out}.na-loader span:nth-child(2){animation-delay:.12s}.na-loader span:nth-child(3){animation-delay:.24s}@keyframes na-bounce{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}

/* Landing */
.na-landing-shell{min-height:100vh;position:relative;isolation:isolate}.na-landing{width:min(1160px,calc(100vw - 36px));margin:0 auto;padding:16px 0 48px}.na-landing-nav{position:sticky;top:12px;z-index:40;min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(7,7,10,.66);box-shadow:0 18px 60px rgba(0,0,0,.32);backdrop-filter:blur(18px)}.na-landing-brand img{display:block;width:158px;max-height:52px;object-fit:contain;object-position:left center}.na-landing-links{display:flex;align-items:center;gap:18px;color:var(--na-muted);font-size:.78rem;font-weight:850}.na-landing-links a{transition:color .18s ease,background .18s ease,border-color .18s ease}.na-landing-links a:hover{color:white}.na-login-link{height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,45,141,.32);display:inline-flex;align-items:center;color:white!important;background:rgba(255,45,141,.08)}.na-landing-hero{min-height:calc(100svh - 92px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 0 42px}.na-landing-kicker{color:var(--na-accent);font-size:.70rem;font-weight:950;letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px}.na-landing-hero h1{font-size:clamp(4rem,10vw,8.2rem);line-height:.80;margin:0;letter-spacing:.012em}.na-landing-subtitle{width:min(680px,100%);margin:24px auto 0;color:#D9DCE8;font-size:clamp(.98rem,1.55vw,1.10rem);line-height:1.62}.na-landing-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px}.na-landing-statement,.na-landing-showcase,.na-landing-closing,.na-landing-flow{border:1px solid var(--na-line);border-radius:var(--na-radius-xl);background:linear-gradient(145deg,rgba(255,255,255,.052),rgba(255,255,255,.022));box-shadow:var(--na-shadow-soft);backdrop-filter:blur(12px)}.na-landing-statement{padding:34px;margin:0 0 18px}.na-landing-statement h2{width:min(880px,100%);margin:12px 0 12px;font-size:clamp(2.2rem,5vw,4.8rem);line-height:.88}.na-landing-statement p{width:min(760px,100%);margin:0;color:var(--na-muted);line-height:1.65}.na-landing-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.na-landing-feature-grid article{position:relative;min-height:218px;padding:22px;border:1px solid var(--na-line);border-radius:var(--na-radius-lg);background:rgba(255,255,255,.034);box-shadow:var(--na-shadow-soft);overflow:hidden}.na-landing-feature-grid article::before{content:"";position:absolute;inset:auto 0 0 0;height:2px;background:linear-gradient(90deg,var(--na-accent),var(--na-secondary));opacity:.78}.na-feature-number{display:inline-flex;margin-bottom:24px;color:var(--na-accent);font-size:.72rem;font-weight:950;letter-spacing:.16em}.na-landing-feature-grid h3{margin:0 0 10px;font-size:1.16rem;line-height:1}.na-landing-feature-grid p{margin:0;color:var(--na-muted);line-height:1.58;font-size:.93rem}.na-landing-showcase{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px;align-items:center;padding:32px;margin:18px 0}.na-landing-showcase h2,.na-landing-closing h2{margin:12px 0 10px;font-size:clamp(2.1rem,4.7vw,4.3rem);line-height:.92}.na-landing-showcase p,.na-landing-closing p{color:var(--na-muted);line-height:1.65}.na-live-card{padding:20px;border:1px solid var(--na-line);border-radius:var(--na-radius-lg);background:linear-gradient(135deg,rgba(139,92,246,.13),rgba(255,45,141,.07),rgba(0,212,255,.08));box-shadow:var(--na-shadow-soft)}.na-live-top{display:flex;align-items:center;gap:9px;color:var(--na-muted);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.na-live-top span{width:8px;height:8px;border-radius:999px;background:var(--na-secondary);box-shadow:var(--na-glow-secondary)}.na-live-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:26px 0}.na-live-score strong{font-family:var(--na-font-display);font-size:3.6rem}.na-live-score small{color:var(--na-muted);font-weight:900;text-align:center}.na-live-meta{display:flex;justify-content:space-between;color:var(--na-accent);font-size:.76rem;font-weight:900}.na-landing-flow{padding:30px;margin:18px 0}.na-flow-line{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:18px}.na-flow-line::before{content:"";position:absolute;left:8%;right:8%;top:22px;height:1px;background:linear-gradient(90deg,transparent,var(--na-secondary),var(--na-accent),transparent);opacity:.45}.na-flow-line article{position:relative;padding:54px 14px 16px;border:1px solid var(--na-line);border-radius:18px;background:rgba(5,5,8,.52)}.na-flow-line article::before{content:"";position:absolute;top:15px;left:16px;width:14px;height:14px;border-radius:999px;background:var(--na-accent);box-shadow:var(--na-glow-accent)}.na-flow-line strong{display:block;font-family:var(--na-font-display);font-size:1rem;text-transform:uppercase}.na-flow-line span{display:block;margin-top:4px;color:var(--na-muted);font-size:.82rem;line-height:1.35}.na-landing-closing{text-align:center;padding:40px;margin:18px 0 26px}.na-landing-closing p{width:min(720px,100%);margin:0 auto}

/* Platform shell */
.na-shell{min-height:100vh;display:grid;grid-template-columns:var(--na-sidebar-width) 1fr;position:relative;isolation:isolate}.na-main{min-width:0;display:flex;flex-direction:column;min-height:100vh}.na-content{width:min(1320px,calc(100vw - var(--na-sidebar-width) - 48px));margin:0 auto;padding:24px;flex:1}.na-sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;border-right:1px solid var(--na-line);background:linear-gradient(180deg,rgba(14,14,19,.78),rgba(8,8,10,.88));backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:22px}.na-brand{display:flex;justify-content:center}.na-brand-logo{width:156px;max-height:132px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(255,45,141,.14))}.na-nav{display:grid;gap:6px}.na-nav-link{min-height:36px;display:flex;align-items:center;gap:12px;padding:0 13px;border-radius:12px;color:var(--na-muted);font-size:.84rem;font-weight:800;transition:background .18s ease,color .18s ease,border-color .18s ease}.na-nav-link span{width:16px;color:var(--na-accent);font-size:.82rem}.na-nav-link:hover,.na-nav-link.active{color:white;background:rgba(255,45,141,.09);box-shadow:inset 0 0 0 1px rgba(255,45,141,.23)}.na-nav-divider{height:1px;background:var(--na-line);margin:10px 0}.na-dev-link span{color:var(--na-warning)}.na-sidebar-footer{margin-top:auto;min-height:38px;padding:0 12px;border:1px solid var(--na-line);border-radius:12px;display:flex;align-items:center;justify-content:space-between;color:var(--na-muted);font-size:.72rem}.na-sidebar-footer strong{color:var(--na-accent)}
.na-topbar{height:var(--na-topbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--na-line);background:rgba(7,7,10,.62);backdrop-filter:blur(14px)}.na-topbar h1{margin:4px 0 0;font-size:1.7rem;line-height:1}.na-topbar-actions{display:flex;gap:10px;align-items:center}.na-status-pill{height:34px;display:flex;align-items:center;gap:8px;padding:0 13px;border:1px solid var(--na-line);border-radius:999px;color:var(--na-muted);background:rgba(255,255,255,.04);font-size:.78rem}.na-status-pill span{width:8px;height:8px;border-radius:999px;background:var(--na-success);box-shadow:0 0 12px var(--na-success)}.na-user-button{width:36px;height:36px;border-radius:999px;border:0;color:white;background:linear-gradient(135deg,var(--na-primary),var(--na-secondary));font-weight:900}.na-footer{display:flex;justify-content:space-between;padding:18px 28px;color:var(--na-muted-2);font-size:.78rem}.na-footer nav{display:flex;gap:18px}
.na-page-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:24px}.na-page-header h2{margin:8px 0 8px;font-size:clamp(2.1rem,5vw,4.4rem);line-height:.86;max-width:760px}.na-page-header p{max-width:690px;color:var(--na-muted);line-height:1.6;margin:0}.na-page-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.na-section{margin-top:26px}.na-section-header{margin-bottom:14px}.na-section-header h3{margin:0 0 6px;font-size:1.22rem}.na-section-header p{margin:0;color:var(--na-muted)}
.na-dashboard-intro{min-height:230px;display:flex;align-items:end;padding:28px;border:1px solid var(--na-line);border-radius:var(--na-radius-xl);background:linear-gradient(135deg,rgba(139,92,246,.16),rgba(255,45,141,.07),rgba(0,212,255,.07));box-shadow:var(--na-shadow-soft)}.na-dashboard-intro h3{font-size:clamp(2.2rem,5.8vw,4.8rem);line-height:.86;margin:18px 0 10px}.na-dashboard-intro p{color:var(--na-muted);line-height:1.65;max-width:720px}.na-stat-grid,.na-roadmap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}.na-stat-card,.na-roadmap-card,.na-empty-card{padding:18px}.na-stat-card span,.na-roadmap-card span{position:relative;display:block;color:var(--na-muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.na-stat-card strong{position:relative;display:block;margin:12px 0 4px;font-family:var(--na-font-display);font-size:2.5rem;line-height:1}.na-stat-card small,.na-roadmap-card p,.na-empty-card p{position:relative;color:var(--na-muted);line-height:1.55}.na-roadmap-card strong{position:relative;display:inline-grid;place-items:center;width:42px;height:42px;margin-bottom:12px;border-radius:14px;color:white;background:rgba(255,255,255,.06);border:1px solid var(--na-line)}.na-roadmap-card.is-active strong{background:linear-gradient(135deg,var(--na-primary),var(--na-secondary));box-shadow:var(--na-glow-primary)}.na-empty-card{max-width:720px}.na-empty-card h3{position:relative;margin:16px 0 6px;font-size:1.7rem}

.valid.modified:not([type=checkbox]){outline:1px solid var(--na-success)}.invalid{outline:1px solid var(--na-danger)}.validation-message{color:var(--na-danger)}#blazor-error-ui{color:white;background:rgba(255,77,109,.96);bottom:0;box-shadow:0 -4px 24px rgba(0,0,0,.35);display:none;left:0;padding:.9rem 1.25rem;position:fixed;width:100%;z-index:9999}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem}

@media (max-width:1120px){:root{--na-sidebar-width:220px}.na-shell{grid-template-columns:1fr}.na-sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--na-line)}.na-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.na-content{width:100%}.na-page-header{align-items:flex-start;flex-direction:column}.na-stat-grid,.na-roadmap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.na-landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.na-landing-showcase{grid-template-columns:1fr}.na-live-card{max-width:520px}.na-flow-line{grid-template-columns:repeat(2,minmax(0,1fr))}.na-flow-line::before{display:none}}
@media (max-width:760px){.na-landing{width:min(100vw - 24px,1160px);padding-top:10px}.na-landing-nav{top:8px;align-items:center;gap:12px;flex-direction:column;border-radius:18px}.na-landing-brand img{width:138px}.na-landing-links{width:100%;justify-content:center;gap:8px;flex-wrap:wrap;font-size:.72rem}.na-landing-links a:not(.na-login-link){padding:6px 4px}.na-login-link{height:32px;padding:0 12px}.na-landing-hero{min-height:calc(100svh - 120px);padding:28px 0}.na-landing-hero h1{font-size:clamp(3.5rem,18vw,5.6rem)}.na-landing-subtitle{font-size:.98rem;margin-top:20px}.na-landing-actions{flex-direction:column;width:100%;align-items:stretch}.na-landing-actions .na-button{width:100%}.na-landing-statement,.na-landing-showcase,.na-landing-closing,.na-landing-flow{padding:22px}.na-landing-statement h2,.na-landing-showcase h2,.na-landing-closing h2{font-size:clamp(2rem,11vw,3.2rem)}.na-landing-feature-grid,.na-stat-grid,.na-roadmap-grid,.na-flow-line{grid-template-columns:1fr}.na-landing-feature-grid article{min-height:0}.na-live-score{gap:10px}.na-live-score strong{font-size:2.8rem}.na-content,.na-topbar,.na-footer{padding-left:16px;padding-right:16px}.na-topbar,.na-footer{align-items:flex-start;flex-direction:column;height:auto;padding-top:14px;padding-bottom:14px}.na-nav{grid-template-columns:1fr}.na-brand-logo{width:144px}.na-page-actions{justify-content:flex-start}}

/* Foundation 1.3 - Developer diagnostics */
.na-test-card {
    position: relative;
    min-height: 150px;
}

.na-test-card h3 {
    margin: 0 0 var(--na-space-2);
    font-size: 1rem;
}

.na-test-card p {
    margin: 0;
    color: var(--na-text-muted);
}

.na-test-state {
    position: absolute;
    top: var(--na-space-4);
    right: var(--na-space-4);
    font-family: var(--na-font-display);
    font-weight: 800;
    letter-spacing: .12em;
    font-size: .7rem;
    padding: .25rem .5rem;
    border-radius: 999px;
}

.na-test-card-ok .na-test-state {
    color: #0a0a0a;
    background: var(--na-accent);
    box-shadow: 0 0 18px rgba(0, 212, 255, .22);
}

.na-test-card-fail .na-test-state {
    color: #fff;
    background: var(--na-secondary);
    box-shadow: 0 0 18px rgba(255, 45, 141, .22);
}

/* Platform Core 3.0 - Workspace Runtime */
.na-workspace-runtime-page .na-card,
.na-dev-center-page .na-card {
    --na-card-padding: 24px;
}

.na-runtime-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    gap: 18px;
    margin-bottom: 18px;
}

.na-runtime-hero {
    min-height: 240px;
}

.na-runtime-score {
    margin: 18px 0 10px;
    font-family: var(--na-font-display);
    font-size: clamp(4rem, 10vw, 7rem);
    line-height: .8;
    font-weight: 900;
    letter-spacing: -.05em;
    color: #fff;
}

.na-runtime-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0 26px;
}

.na-runtime-check-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
}

.na-runtime-check-card span {
    display: block;
    color: var(--na-muted);
    font-family: var(--na-font-display);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .76rem;
}

.na-runtime-check-card strong {
    display: block;
    margin: 14px 0 8px;
    font-family: var(--na-font-display);
    font-size: 1.45rem;
    letter-spacing: .06em;
}

.na-runtime-check-card p,
.na-runtime-note p {
    color: var(--na-muted);
    line-height: 1.6;
}

.na-runtime-check-card.is-ok {
    border-color: rgba(0, 255, 166, .35);
}

.na-runtime-check-card.is-ok strong {
    color: var(--na-success);
}

.na-runtime-check-card.is-fail {
    border-color: rgba(255, 45, 141, .45);
}

.na-runtime-check-card.is-fail strong {
    color: var(--na-secondary);
}

@media (max-width: 1120px) {
    .na-runtime-grid,
    .na-runtime-stat-grid,
    .na-runtime-check-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .na-runtime-grid,
    .na-runtime-stat-grid,
    .na-runtime-check-grid {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Adaptive Identity Engine - base theme + club identity layer
   ========================================================= */
:root {
    --club-watermark-image: none;
    --club-logo-image: none;
    --club-watermark-opacity: 0;
}

:root[data-theme="light"] {
    color-scheme: light;
    --na-bg:#EDEAE3;
    --na-surface:#F6F3EC;
    --na-surface-2:#E5E1D8;
    --na-ui:#D6D1C7;
    --na-line:rgba(31,35,43,.12);
    --na-line-strong:rgba(31,35,43,.24);
    --na-white:#24262D;
    --na-muted:#656874;
    --na-muted-2:#858792;
    --na-shadow-soft:0 22px 58px rgba(60,55,45,.14);
}

:root[data-theme="light"] body::before {
    background:radial-gradient(circle at 20% 15%,color-mix(in srgb,var(--na-primary) 13%,transparent),transparent 31%),radial-gradient(circle at 80% 18%,color-mix(in srgb,var(--na-secondary) 11%,transparent),transparent 33%),radial-gradient(circle at 70% 85%,color-mix(in srgb,var(--na-accent) 10%,transparent),transparent 32%),linear-gradient(135deg,#F3F0E9 0%,#E8E5DE 45%,#F2EFE8 100%);
}
:root[data-theme="light"] .na-bg-grid {background-image:linear-gradient(rgba(42,44,52,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(42,44,52,.055) 1px,transparent 1px)}
:root[data-theme="light"] .na-bg-grid::after {background-image:linear-gradient(color-mix(in srgb,var(--na-accent) 12%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--na-secondary) 10%,transparent) 1px,transparent 1px)}
:root[data-theme="light"] .na-bg-network {opacity:.34}
:root[data-theme="light"] .na-sidebar {background:linear-gradient(180deg,rgba(246,243,236,.90),rgba(229,225,216,.94))}
:root[data-theme="light"] .na-topbar {background:rgba(246,243,236,.82)}
:root[data-theme="light"] .na-card,
:root[data-theme="light"] .na-landing-statement,
:root[data-theme="light"] .na-landing-showcase,
:root[data-theme="light"] .na-landing-closing,
:root[data-theme="light"] .na-landing-flow {background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(242,238,230,.82))}
:root[data-theme="light"] .na-button-ghost {color:var(--na-white);background:rgba(255,255,255,.48)}
:root[data-theme="light"] .na-nav-link:hover,
:root[data-theme="light"] .na-nav-link.active {color:#202229;background:color-mix(in srgb,var(--na-secondary) 10%,transparent)}

/* Club identity stays an accent layer. Semantic success/warning/danger colors remain untouched. */
:root[data-identity="club"] {
    --na-glow-primary:0 0 30px color-mix(in srgb,var(--na-primary) 34%,transparent);
    --na-glow-secondary:0 0 32px color-mix(in srgb,var(--na-secondary) 28%,transparent);
    --na-glow-accent:0 0 28px color-mix(in srgb,var(--na-accent) 26%,transparent);
}
:root[data-identity="club"] .na-card::after,
:root[data-identity="club"] .na-dashboard-intro::after,
:root[data-identity="club"] .na-runtime-card::after {
    content:"";
    position:absolute;
    right:-3%;
    bottom:-12%;
    width:min(230px,48%);
    aspect-ratio:1;
    background-image:var(--club-watermark-image);
    background-position:center;
    background-repeat:no-repeat;
    background-size:contain;
    opacity:var(--club-watermark-opacity);
    filter:grayscale(.16) saturate(.86);
    pointer-events:none;
    z-index:0;
}
:root[data-identity="club"] .na-card > *,
:root[data-identity="club"] .na-dashboard-intro > *,
:root[data-identity="club"] .na-runtime-card > * {position:relative;z-index:1}
:root[data-identity="club"] .na-dashboard-intro {position:relative;overflow:hidden}
:root[data-identity="club"] .na-nav-link span,
:root[data-identity="club"] .na-eyebrow {color:var(--na-accent)}
:root[data-identity="club"] ::selection {background:color-mix(in srgb,var(--na-primary) 34%,transparent)}

.na-theme-control {position:relative;z-index:140}
.na-theme-trigger {height:36px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--na-line);border-radius:999px;background:color-mix(in srgb,var(--na-surface) 80%,transparent);color:var(--na-white);cursor:pointer;font-weight:800}
.na-theme-trigger:hover {border-color:color-mix(in srgb,var(--na-accent) 52%,var(--na-line))}
.na-theme-trigger-icon {color:var(--na-accent)}
.na-theme-trigger-label {max-width:118px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}
.na-theme-chevron {color:var(--na-muted)}
.na-theme-menu {position:absolute;right:0;top:44px;width:284px;padding:8px;border:1px solid var(--na-line-strong);border-radius:18px;background:color-mix(in srgb,var(--na-surface) 94%,transparent);box-shadow:var(--na-shadow-soft);backdrop-filter:blur(20px)}
.na-theme-option {width:100%;display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:10px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--na-white);text-align:left;cursor:pointer}
.na-theme-option:hover,.na-theme-option.is-active {background:color-mix(in srgb,var(--na-primary) 10%,transparent);border-color:color-mix(in srgb,var(--na-primary) 28%,transparent)}
.na-theme-option:disabled {opacity:.46;cursor:not-allowed}
.na-theme-option strong,.na-theme-option small {display:block}
.na-theme-option strong {font-size:.79rem}
.na-theme-option small {margin-top:2px;color:var(--na-muted);font-size:.68rem}
.na-theme-swatch {width:28px;height:28px;border-radius:10px;border:1px solid var(--na-line-strong)}
.na-theme-swatch-dark {background:linear-gradient(135deg,#050508,#8B5CF6,#FF2D8D)}
.na-theme-swatch-light {background:linear-gradient(135deg,#F3F0E9,#DCD7CE,#00A9CB)}
.na-theme-swatch-club {background:linear-gradient(135deg,var(--swatch-a,#8B5CF6),var(--swatch-b,#FF2D8D),var(--swatch-c,#00D4FF))}
.na-theme-base-row {display:grid;grid-template-columns:1fr auto auto;gap:6px;align-items:center;margin:7px 4px 2px;padding-top:8px;border-top:1px solid var(--na-line);font-size:.68rem;color:var(--na-muted)}
.na-theme-base-button {padding:5px 8px;border:1px solid var(--na-line);border-radius:999px;background:transparent;color:var(--na-muted);cursor:pointer;font-size:.66rem;font-weight:800}
.na-theme-base-button.is-active {color:var(--na-white);border-color:var(--na-accent);background:color-mix(in srgb,var(--na-accent) 10%,transparent)}

@media (max-width:760px) {
    .na-theme-trigger-label {display:none}
    .na-theme-menu {position:fixed;right:12px;left:12px;top:76px;width:auto}
}

/* Adaptive Identity hierarchy: Community first, Club fallback. */
.na-theme-identity-summary {
    display: grid;
    gap: .15rem;
    margin: .35rem .55rem .15rem;
    padding: .65rem .75rem;
    border: 1px solid color-mix(in srgb, var(--na-primary, #8b5cf6) 30%, transparent);
    border-radius: .75rem;
    background: color-mix(in srgb, var(--na-primary, #8b5cf6) 8%, transparent);
}

.na-theme-identity-summary small {
    opacity: .72;
}

/* 2026-07-23: sticky navigation and content headers, preserved across adaptive themes */
.na-topbar {
    position: sticky !important;
    top: 0;
    z-index: 120;
    flex: 0 0 auto;
}

.na-page-header {
    position: sticky;
    top: var(--na-topbar-height);
    z-index: 95;
    margin: -24px -24px 24px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid var(--na-line);
    background: color-mix(in srgb, var(--na-bg) 88%, transparent);
    backdrop-filter: blur(18px);
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
}

.na-section-header,
.na-settings-section-head {
    position: sticky;
    top: calc(var(--na-topbar-height) + 12px);
    z-index: 35;
    padding: 10px 0;
    background: color-mix(in srgb, var(--na-surface) 90%, transparent);
    backdrop-filter: blur(12px);
}

.na-landing {
    padding-top: calc(var(--na-topbar-height) + 24px);
}

.na-landing-nav {
    position: fixed !important;
    top: 12px !important;
    left: 50%;
    transform: translateX(-50%);
    width: min(1160px, calc(100vw - 36px));
    z-index: 140;
}

:root[data-theme="light"] .na-page-header,
:root[data-theme="light"] .na-section-header,
:root[data-theme="light"] .na-settings-section-head {
    background: rgba(246,243,236,.90);
}

.na-community-upload-help {
    display: block;
    margin-top: 8px;
    color: var(--na-muted);
}

.na-theme-identity-summary {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) auto;
    align-items: center;
    gap: 10px;
}

.na-theme-identity-summary img {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    object-fit: contain;
    background: rgba(255,255,255,.08);
    border: 1px solid var(--na-line);
}

.na-theme-identity-summary > span:first-of-type {
    display: grid;
    gap: 2px;
}

.na-theme-palette {
    display: inline-flex;
    gap: 4px;
}

.na-theme-palette i {
    width: 12px;
    height: 12px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.4);
    box-shadow: 0 0 0 1px rgba(0,0,0,.14);
}

@media (max-width: 760px) {
    .na-page-header {
        top: 0;
        margin: -16px -16px 20px;
        padding: 18px 16px 14px;
    }

    .na-section-header,
    .na-settings-section-head {
        top: 8px;
    }

    .na-landing {
        padding-top: 150px;
    }

    .na-landing-nav {
        top: 8px !important;
        width: calc(100vw - 24px);
    }
}

/* 2026-07-23: reliable sticky page title bar.
   The page header follows the viewport below the application topbar while content scrolls. */
.na-page {
    min-width: 0;
    overflow: visible;
}

.na-content {
    overflow: visible;
}

.na-page-header {
    position: sticky !important;
    top: var(--na-topbar-height) !important;
    z-index: 105 !important;
    margin: -24px -24px 28px !important;
    padding: 18px 24px 16px !important;
    min-height: 112px;
    align-items: center !important;
    border-bottom: 1px solid var(--na-line-strong);
    background: color-mix(in srgb, var(--na-bg) 95%, transparent) !important;
    backdrop-filter: blur(22px) saturate(1.08);
    box-shadow: 0 14px 30px rgba(0,0,0,.12);
}

.na-page-header h2 {
    font-size: clamp(2rem, 4vw, 3.45rem) !important;
    line-height: .9 !important;
    margin: 6px 0 !important;
}

.na-page-header p {
    line-height: 1.4 !important;
}

/* Card-local titles must stay in normal document flow. Making every small title
   sticky caused controls to slide underneath them. Predictable, but not useful. */
.na-settings-section-head,
.na-section-header {
    position: relative !important;
    top: auto !important;
    z-index: 2 !important;
    padding: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
}

:root[data-theme="light"] .na-page-header {
    background: rgba(246,243,236,.96) !important;
}

@media (max-width: 1120px) {
    .na-page-header {
        top: var(--na-topbar-height) !important;
        min-height: auto;
        margin: -24px -24px 24px !important;
    }
}

@media (max-width: 760px) {
    .na-page-header {
        top: var(--na-topbar-height) !important;
        margin: -16px -16px 20px !important;
        padding: 14px 16px 12px !important;
    }

    .na-page-header h2 {
        font-size: clamp(1.75rem, 9vw, 2.6rem) !important;
    }

    .na-page-header p {
        display: none;
    }
}

/* =========================================================
   Light Theme Surface Normalization
   Keeps page-specific layouts while replacing hard-coded dark
   surfaces with the shared light palette.
   ========================================================= */
:root[data-theme="light"] .na-license-page,
:root[data-theme="light"] .na-club-hub-page,
:root[data-theme="light"] .na-club-identity-page,
:root[data-theme="light"] .community-membership-page {
    color: var(--na-white) !important;
    background: transparent !important;
}

:root[data-theme="light"] .na-license-hero,
:root[data-theme="light"] .na-license-decision-card,
:root[data-theme="light"] .na-license-runtime-card,
:root[data-theme="light"] .na-license-plan-card,
:root[data-theme="light"] .na-license-next-flow,
:root[data-theme="light"] .na-license-table-wrap,
:root[data-theme="light"] .community-card,
:root[data-theme="light"] .community-flow-map > div,
:root[data-theme="light"] .na-club-plan-strip > div,
:root[data-theme="light"] .na-club-hub-card,
:root[data-theme="light"] .na-club-hub-empty,
:root[data-theme="light"] .na-club-identity-hero,
:root[data-theme="light"] .na-club-identity-card,
:root[data-theme="light"] .na-club-score-card,
:root[data-theme="light"] .na-club-profile-card,
:root[data-theme="light"] .na-club-role-card,
:root[data-theme="light"] .na-club-identity-tabs,
:root[data-theme="light"] .na-club-workbench-nav,
:root[data-theme="light"] .na-club-identity-actions {
    color: var(--na-white) !important;
    border-color: var(--na-line-strong) !important;
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--na-primary) 8%, transparent), transparent 42%),
        linear-gradient(145deg, rgba(255,255,255,.82), rgba(232,228,219,.88)) !important;
    box-shadow: var(--na-shadow-soft) !important;
}

:root[data-theme="light"] .na-license-runtime-card.quick {
    background: linear-gradient(145deg, rgba(188,225,202,.78), rgba(236,239,232,.94)) !important;
}
:root[data-theme="light"] .na-license-runtime-card.community {
    background: linear-gradient(145deg, color-mix(in srgb,var(--na-primary) 18%,white), rgba(237,233,242,.94)) !important;
}
:root[data-theme="light"] .na-license-runtime-card.league {
    background: linear-gradient(145deg, color-mix(in srgb,var(--na-secondary) 15%,white), rgba(241,233,237,.94)) !important;
}

:root[data-theme="light"] .na-license-hero p,
:root[data-theme="light"] .na-license-section-head p,
:root[data-theme="light"] .na-license-decision-card p,
:root[data-theme="light"] .na-license-runtime-card p,
:root[data-theme="light"] .na-license-plan-card p,
:root[data-theme="light"] .na-license-flow-grid small,
:root[data-theme="light"] .na-club-hub-hero p,
:root[data-theme="light"] .na-club-hub-readiness p,
:root[data-theme="light"] .na-club-hub-empty p,
:root[data-theme="light"] .community-card p,
:root[data-theme="light"] .community-card small,
:root[data-theme="light"] .na-club-identity-page p,
:root[data-theme="light"] .na-club-identity-page small {
    color: var(--na-muted) !important;
}

:root[data-theme="light"] .na-license-runtime-card dd,
:root[data-theme="light"] .na-license-plan-head strong,
:root[data-theme="light"] .na-club-plan-strip strong,
:root[data-theme="light"] .na-club-hub-community-lock strong,
:root[data-theme="light"] .community-card strong,
:root[data-theme="light"] .community-card h1,
:root[data-theme="light"] .community-card h2,
:root[data-theme="light"] .community-card h3,
:root[data-theme="light"] .na-club-identity-page h1,
:root[data-theme="light"] .na-club-identity-page h2,
:root[data-theme="light"] .na-club-identity-page h3,
:root[data-theme="light"] .na-club-hub-page h1,
:root[data-theme="light"] .na-club-hub-page h2,
:root[data-theme="light"] .na-club-hub-page h3 {
    color: var(--na-white) !important;
}

:root[data-theme="light"] .na-license-principles span,
:root[data-theme="light"] .na-license-plan-limit,
:root[data-theme="light"] .na-club-hub-page button.secondary,
:root[data-theme="light"] .club-action.secondary,
:root[data-theme="light"] .community-card .secondary,
:root[data-theme="light"] .na-club-identity-tabs button,
:root[data-theme="light"] .na-club-workbench-nav a {
    color: var(--na-white) !important;
    border-color: var(--na-line-strong) !important;
    background: rgba(255,255,255,.62) !important;
}

:root[data-theme="light"] .na-license-matrix th,
:root[data-theme="light"] .na-license-matrix td,
:root[data-theme="light"] .na-license-runtime-card dl div {
    border-color: var(--na-line) !important;
}
:root[data-theme="light"] .na-license-matrix th,
:root[data-theme="light"] .na-license-runtime-card dt,
:root[data-theme="light"] .na-license-matrix td span,
:root[data-theme="light"] .na-license-plan-limit span,
:root[data-theme="light"] .na-club-plan-strip span,
:root[data-theme="light"] .na-club-plan-strip small {
    color: var(--na-muted-2) !important;
}
:root[data-theme="light"] .na-license-matrix td,
:root[data-theme="light"] .na-license-plan-card li {
    color: var(--na-muted) !important;
}

:root[data-theme="light"] .na-club-hub-progress,
:root[data-theme="light"] .community-card .progress-track {
    background: rgba(31,35,43,.12) !important;
}

:root[data-theme="light"] .na-club-hub-logo,
:root[data-theme="light"] .club-logo-frame,
:root[data-theme="light"] .na-club-profile-logo {
    background: rgba(255,255,255,.76) !important;
}

:root[data-theme="light"] .na-club-hub-modal,
:root[data-theme="light"] .na-club-modal {
    color: var(--na-white) !important;
    border-color: var(--na-line-strong) !important;
    background: var(--na-surface) !important;
    box-shadow: 0 30px 90px rgba(60,55,45,.24) !important;
}
:root[data-theme="light"] .na-club-hub-modal-backdrop,
:root[data-theme="light"] .na-club-modal-backdrop {
    background: rgba(58,55,50,.46) !important;
    backdrop-filter: blur(8px);
}

:root[data-theme="light"] .na-club-hub-form input,
:root[data-theme="light"] .na-club-hub-form select,
:root[data-theme="light"] .na-club-hub-form textarea,
:root[data-theme="light"] .na-club-identity-page input,
:root[data-theme="light"] .na-club-identity-page select,
:root[data-theme="light"] .na-club-identity-page textarea,
:root[data-theme="light"] .community-membership-page input,
:root[data-theme="light"] .community-membership-page select,
:root[data-theme="light"] .community-membership-page textarea {
    color: var(--na-white) !important;
    border-color: var(--na-line-strong) !important;
    background: rgba(255,255,255,.72) !important;
}
:root[data-theme="light"] .na-club-hub-form input::placeholder,
:root[data-theme="light"] .na-club-identity-page input::placeholder,
:root[data-theme="light"] .community-membership-page input::placeholder,
:root[data-theme="light"] textarea::placeholder {
    color: var(--na-muted-2) !important;
}

:root[data-theme="light"] .na-club-hub-logo-field,
:root[data-theme="light"] .na-club-hub-create-colors,
:root[data-theme="light"] .na-club-hub-community-lock,
:root[data-theme="light"] .na-club-assets-grid,
:root[data-theme="light"] .na-club-color-grid,
:root[data-theme="light"] .na-club-form-grid {
    border-color: var(--na-line) !important;
    background: rgba(255,255,255,.48) !important;
}

/* Preserve club artwork, but make the surrounding club pages belong to the light theme. */
:root[data-theme="light"] .na-club-hub-card-banner,
:root[data-theme="light"] .na-club-banner-preview,
:root[data-theme="light"] .na-club-identity-hero[style] {
    color: #fff;
}

/* Patch 63 · Navigation Foundation */
a.na-button { text-decoration: none; }
a.na-button[aria-disabled="true"],
.na-button-disabled {
    pointer-events: none;
    opacity: .55;
    cursor: not-allowed;
}
