/* ==========================================================================
   Bold theme system: Neo-brutal (default tokens below), Pop Acid, Cyber Terminal, Swiss Grid.
   Same structure for all (thick borders, hard shadows); only the tokens at the bottom differ.
   Neo-brutal theme (light + dark) — loaded LAST, overrides the older layers.
   Source tokens: Premium-UI-UX/themes/neo-brutal.css
   Light = html[data-theme="light"] / default token set, Dark = html[data-theme="dark"].
   Dark is the default (see the inline script in <head>); the round theme button switches.
   Rollback: remove the theme.css <link> (and the font <link>) from index.html.
   ========================================================================== */
/* ---------- 1. Tokens ---------- */
html[data-style]{
  --nb-bg:#fff8e7; --nb-surface:#ffffff; --nb-surface-2:#ffe9a8;
  --nb-text:#111111; --nb-muted:#3b3b3b; --nb-border:#111111;
  --nb-accent:#ff4d8d; --nb-accent-hover:#ff6fa3; --nb-accent-text:#b0114f; --nb-accent-contrast:#111111;
  --nb-yellow:#ffd400; --nb-focus:#0050ff;
  --nb-shadow-sm:4px 4px 0 #111111; --nb-shadow:6px 6px 0 #111111;
  --nb-blue:#a9c8ff; --nb-coral:#ff9bb8; --nb-violet:#cdbcff; --nb-mint:#a8f0d1; --nb-sun:#ffe46b;
  --nb-bw:3px;
  --nb-head:'Archivo Black','Arial Black',system-ui,sans-serif;
  --nb-body:'Space Grotesk',Inter,system-ui,sans-serif;

  /* remap the legacy tokens used by the older stylesheets */
  --canvas:var(--nb-bg); --surface:var(--nb-surface); --ink:var(--nb-text); --soft-ink:var(--nb-muted);
  --muted:var(--nb-muted); --line:var(--nb-border);
  --brand:var(--nb-accent-text); --brand-deep:var(--nb-accent-text); --focus:var(--nb-focus);
  --sans:var(--nb-body); --hand:var(--nb-body);
  color-scheme:light;
}
html[data-style][data-theme="dark"]{
  --nb-bg:#121212; --nb-surface:#1c1c1c; --nb-surface-2:#262626;
  --nb-text:#fffbe8; --nb-muted:#cfcab9; --nb-border:#fffbe8;
  --nb-accent:#ff6fa5; --nb-accent-hover:#ff8fb8; --nb-accent-text:#ff8fb8; --nb-accent-contrast:#111111;
  --nb-focus:#5ea0ff;
  --nb-shadow-sm:4px 4px 0 #ffd400; --nb-shadow:6px 6px 0 #ffd400;
  color-scheme:dark;
}
/* ---------- 2. Kill the old "smart invert" dark mode ---------- */
html[data-style][data-theme="dark"]{filter:none!important;background:var(--nb-bg)!important}
html[data-style][data-theme="dark"] :is(img,video,iframe,canvas,picture,svg image,[data-keep-colors]){filter:none!important}
html[data-style],
html[data-style] body{background:var(--nb-bg)!important;color:var(--nb-text)}
html[data-style] body{font-family:var(--nb-body)!important}
/* ---------- 3. Page surfaces ---------- */
html[data-style] .site-shell,
html[data-style] .portfolio-content,
html[data-style] .profile-rail,
html[data-style] main section,
html[data-style] footer,
html[data-style] .hero,
html[data-style] .nx-hero,
html[data-style] .about-section,
html[data-style] .events-section,
html[data-style] .work-section,
html[data-style] .project-library,
html[data-style] .toolkit-section,
html[data-style] .location-section,
html[data-style] .social-section,
html[data-style] .contact-section,
html[data-style] .credentials-section,
html[data-style] .nx-what,
html[data-style] .nx-journey{
  background:var(--nb-bg)!important;background-image:none!important;color:var(--nb-text)
}
html[data-style] main section::before,
html[data-style] main section::after,
html[data-style] .about-section::after{display:none!important}
/* ---------- 4. Type ---------- */
html[data-style] h1,
html[data-style] h2,
html[data-style] h3,
html[data-style] h4,
html[data-style] .nx-name{font-family:var(--nb-head)!important;font-weight:400!important;color:var(--nb-text)!important;letter-spacing:-.01em}
html[data-style] h2,
html[data-style] h3{text-transform:uppercase}
html[data-style] .nx-name{text-transform:none}
html[data-style] p,
html[data-style] li,
html[data-style] dd,
html[data-style] dt,
html[data-style] small,
html[data-style] label,
html[data-style] span{font-family:var(--nb-body)}
html[data-style] p,
html[data-style] li,
html[data-style] dd{color:var(--nb-muted)}
html[data-style] .eyebrow,
html[data-style] .nx-hello,
html[data-style] .about-kicker,
html[data-style] .credential-label,
html[data-style] .nx-when,
html[data-style] .nx-num{color:var(--nb-accent-text)!important;font-family:var(--nb-body)!important;font-weight:700;letter-spacing:.06em}
html[data-style] a{color:var(--nb-accent-text)}
html[data-style] :focus-visible{outline:3px solid var(--nb-focus)!important;outline-offset:3px!important}
html[data-style] .nx-role .nx-word,
html[data-style] .nx-lead strong{color:var(--nb-accent-text)!important}
/* ---------- 5. Cards: flat colour, thick border, hard shadow, square corners ---------- */
html[data-style] .featured-project,
html[data-style] .build-card,
html[data-style] .event-card,
html[data-style] .tool-card,
html[data-style] .social-card,
html[data-style] .fact-card,
html[data-style] .stack-card,
html[data-style] .principle-card,
html[data-style] .certification-card,
html[data-style] .education-item,
html[data-style] .skill-group,
html[data-style] .nx-what-card,
html[data-style] .credential-card,
html[data-style] .live-card,
html[data-style] .contact-form,
html[data-style] .nx-glance,
html[data-style] .nx-proof li,
html[data-style] .about-intro,
html[data-style] .about-live-clock,
html[data-style] .mini-note,
html[data-style] .sticky-note,
html[data-style] .site-search-inline,
html[data-style] .search-results-panel,
html[data-style] .profile-avatar,
html[data-style] .location-copy,
html[data-style] .map-embed,
html[data-style] .xp-panel,
html[data-style] .toolkit-notes>*{
  background:var(--nb-surface)!important;background-image:none!important;
  border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;
  box-shadow:var(--nb-shadow-sm)!important;color:var(--nb-text)!important;
  transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s cubic-bezier(.2,.8,.2,1)
}
html[data-style] .featured-project:hover,
html[data-style] .build-card:hover,
html[data-style] .event-card:hover,
html[data-style] .tool-card:hover,
html[data-style] .social-card:hover,
html[data-style] .fact-card:hover,
html[data-style] .principle-card:hover,
html[data-style] .certification-card:hover,
html[data-style] .nx-what-card:hover{
  transform:translate(-2px,-2px)!important;box-shadow:var(--nb-shadow)!important
}
/* colourful flat fills in light mode only (dark keeps neutral surfaces + yellow shadow) */
html[data-style]:not([data-theme="dark"]) .featured-project--blue,
html[data-style]:not([data-theme="dark"]) .build-card--blue,
html[data-style]:not([data-theme="dark"]) .principle-coral{background:var(--nb-blue)!important}
html[data-style]:not([data-theme="dark"]) .featured-project--coral,
html[data-style]:not([data-theme="dark"]) .build-card--coral{background:var(--nb-coral)!important}
html[data-style]:not([data-theme="dark"]) .featured-project--violet,
html[data-style]:not([data-theme="dark"]) .build-card--violet{background:var(--nb-violet)!important}
html[data-style]:not([data-theme="dark"]) .featured-project--mint,
html[data-style]:not([data-theme="dark"]) .build-card--mint{background:var(--nb-mint)!important}
html[data-style]:not([data-theme="dark"]) .featured-project--sun,
html[data-style]:not([data-theme="dark"]) .build-card--sun{background:var(--nb-sun)!important}
html[data-style]:not([data-theme="dark"]) .nx-what-card:nth-child(1){background:var(--nb-mint)!important}
html[data-style]:not([data-theme="dark"]) .nx-what-card:nth-child(2){background:var(--nb-sun)!important}
html[data-style]:not([data-theme="dark"]) .nx-what-card:nth-child(3){background:var(--nb-coral)!important}
/* text inside cards: always readable on the card surface */
html[data-style] :is(.featured-project,.build-card,.event-card,.tool-card,.social-card,.fact-card,.stack-card,.principle-card,
.certification-card,.education-item,.skill-group,.nx-what-card,.credential-card,.live-card,.contact-form,
.nx-glance,.nx-proof li,.about-intro,.about-live-clock,.mini-note,.location-copy) :is(h1,h2,h3,h4,strong,b,dt,span,small,label,i,em){color:var(--nb-text)!important}
html[data-style] :is(.featured-project,.build-card,.event-card,.tool-card,.social-card,.fact-card,.stack-card,.principle-card,
.certification-card,.education-item,.skill-group,.nx-what-card,.credential-card,.live-card,.nx-glance,.about-intro,.location-copy) :is(p,li,dd){color:var(--nb-muted)!important}
html[data-style]:not([data-theme="dark"]) :is(.featured-project,.build-card,.nx-what-card,.principle-card) :is(p,li,dd){color:#222!important}
/* tags / badges / status chips */
html[data-style] .build-tags span,
html[data-style] .featured-project-top span,
html[data-style] .build-card-top span,
html[data-style] .event-card>div>span,
html[data-style] .badge,
html[data-style] .status,
html[data-style] .chip{
  background:var(--nb-yellow)!important;color:#111!important;border:2px solid var(--nb-border)!important;border-radius:0!important;
  font-weight:700;letter-spacing:.04em
}
html[data-style] .event-card .event-source,
html[data-style] .featured-project a,
html[data-style] .build-card a,
html[data-style] .social-card a{color:var(--nb-accent-text)!important;font-weight:700}
/* ---------- 6. Buttons ---------- */
html[data-style] .nx-btn,
html[data-style] .profile-download,
html[data-style] .header-cta,
html[data-style] .rail-section-button,
html[data-style] .sec-toggle,
html[data-style] .site-search-button,
html[data-style] .menu-button,
html[data-style] .event-source,
html[data-style] .featured-project-link,
html[data-style] .build-card-link,
html[data-style] .skill-chip,
html[data-style] .tool-filter,
html[data-style] .build-controls button,
html[data-style] .contact-form button,
html[data-style] .dock-search-button,
html[data-style] [class*="btn"]{
  background:var(--nb-surface)!important;background-image:none!important;color:var(--nb-text)!important;
  border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;
  box-shadow:var(--nb-shadow-sm)!important;font-family:var(--nb-body)!important;font-weight:700;
  transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s cubic-bezier(.2,.8,.2,1)
}
html[data-style] .nx-btn:hover,
html[data-style] .profile-download:hover,
html[data-style] .header-cta:hover,
html[data-style] .sec-toggle:hover,
html[data-style] .site-search-button:hover,
html[data-style] .menu-button:hover,
html[data-style] .contact-form button:hover{transform:translate(-2px,-2px)!important;box-shadow:var(--nb-shadow)!important}
html[data-style] .nx-btn:active,
html[data-style] .profile-download:active,
html[data-style] .header-cta:active,
html[data-style] .sec-toggle:active,
html[data-style] .contact-form button:active{transform:translate(2px,2px)!important;box-shadow:none!important}
html[data-style] .nx-btn--primary,
html[data-style] .header-cta,
html[data-style] .contact-form button[type="submit"],
html[data-style] .rail-section-button.is-selected{
  background:var(--nb-accent)!important;color:var(--nb-accent-contrast)!important;border-color:var(--nb-border)!important
}
html[data-style] .nx-btn--primary *,
html[data-style] .header-cta *{color:var(--nb-accent-contrast)!important}
html[data-style] .profile-download{background:var(--nb-yellow)!important;color:#111!important}
/* ---------- 7. Header, nav, dock, toggles ---------- */
html[data-style] .site-header{background:var(--nb-bg)!important;border-bottom:var(--nb-bw) solid var(--nb-border)!important;box-shadow:none!important;backdrop-filter:none!important}
html[data-style] .site-header::after{display:none!important}
html[data-style] .site-nav a{color:var(--nb-text)!important;font-weight:700}
html[data-style] .site-nav a:hover,
html[data-style] .site-nav a[aria-current]{color:var(--nb-accent-text)!important}
html[data-style] .quick-dock{background:var(--nb-surface)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important;backdrop-filter:none!important}
html[data-style] .quick-dock a,
html[data-style] .quick-dock button{background:var(--nb-surface-2)!important;color:var(--nb-text)!important;border:2px solid var(--nb-border)!important;border-radius:0!important;box-shadow:none!important}
html[data-style] .quick-dock .dock-search-button{background:var(--nb-yellow)!important;color:#111!important}
html[data-style] .theme-toggle{background:var(--nb-yellow)!important;color:#111!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important}
html[data-style] .xp-chip{background:var(--nb-surface)!important;color:var(--nb-text)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important}
html[data-style] .scroll-progress{background:var(--nb-accent)!important}
/* ---------- 8. Forms ---------- */
html[data-style] .contact-form input,
html[data-style] .contact-form textarea,
html[data-style] .contact-form select,
html[data-style] .search-input-wrap input,
html[data-style] input[type="search"]{
  background:var(--nb-surface-2)!important;color:var(--nb-text)!important;
  border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;font-family:var(--nb-body)!important
}
html[data-style] .contact-form input::placeholder,
html[data-style] .contact-form textarea::placeholder{color:var(--nb-muted)!important}
html[data-style] .contact-form input:focus,
html[data-style] .contact-form textarea:focus{border-color:var(--nb-accent)!important}
/* ---------- 9. Hero touches: boxed name, flat stat tiles, timeline ---------- */
html[data-style] .nx-glance h2{color:var(--nb-text)!important}
html[data-style] .nx-proof b{font-family:var(--nb-head)!important;color:var(--nb-accent-text)!important}
html[data-style] .nx-step{border-color:var(--nb-border)!important}
html[data-style] .nx-timeline::before,
html[data-style] .nx-timeline li::before{background:var(--nb-border)!important;border-color:var(--nb-border)!important}
html[data-style] .nx-step--now .nx-when{background:var(--nb-yellow)!important;color:#111!important;padding:2px 8px;border:2px solid var(--nb-border)}
html[data-style] hr,
html[data-style] .more-builds,
html[data-style] .section-header,
html[data-style] .project-library-heading,
html[data-style] .credentials-heading,
html[data-style] .social-heading,
html[data-style] .nx-section-head{border-color:var(--nb-border)!important}
html[data-style] img{border-radius:0}
html[data-style] .profile-avatar img,
html[data-style] .profile-avatar{border-radius:0!important}
html[data-style] footer,
html[data-style] footer span,
html[data-style] footer a{color:var(--nb-muted)!important;border-color:var(--nb-border)!important}
/* ---------- 10. Motion ---------- */
@media (prefers-reduced-motion:reduce){
html[data-style] *,
html[data-style] *::before,
html[data-style] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* ---------- Second pass: leftover light panels found in the colour scan ---------- */
html[data-style] .event-card>div,html[data-style] .featured-project>div,html[data-style] .build-card>div{background:transparent!important;background-image:none!important}
html[data-style] .nx-step,html[data-style] .nx-step-body{background:var(--nb-surface)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important}
html[data-style] .nx-step-body{border:0!important;box-shadow:none!important}
html[data-style] .nx-step :is(h3,small,p,span){color:var(--nb-text)!important}
html[data-style] .credential-label,html[data-style] .about-signal-row span,html[data-style] .location-map-link,html[data-style] .contact-link,html[data-style] .social-icon,html[data-style] .contact-status{
  background:var(--nb-surface-2)!important;background-image:none!important;color:var(--nb-text)!important;
  border:2px solid var(--nb-border)!important;border-radius:0!important;box-shadow:none!important}
html[data-style] .credential-label,html[data-style] .contact-status{background:var(--nb-yellow)!important;color:#111!important}
html[data-style] .contact-link:hover,html[data-style] .location-map-link:hover{background:var(--nb-yellow)!important;color:#111!important}
html[data-style] .contact-link *,html[data-style] .location-map-link *{color:inherit!important}
html[data-style] .skip-link{background:var(--nb-yellow)!important;color:#111!important;border:3px solid var(--nb-border)}

/* ---------- Third pass: contrast fixes (both modes) ---------- */
/* readable body copy everywhere (beats older hard-coded greys) */
html[data-style] :is(p,li,dd,small,figcaption,.build-count,.live-status,.github-sync-status){color:var(--nb-muted)!important}
html[data-style] :is(h1,h2,h3,h4,strong,dt,summary){color:var(--nb-text)!important}
/* chips / tags / status pills: flat colour with dark text */
html[data-style] :is(.featured-project-private,.featured-project-status,.build-card-top b,.build-status,.status-pill,.build-tags li,.featured-project-tags li,.tool-icon,.nx-chip,.mini-note>span,.about-signal-row span,.build-card-top span,.featured-project-top span){
  background:var(--nb-yellow)!important;background-image:none!important;color:#111!important;
  border:2px solid var(--nb-border)!important;border-radius:0!important;box-shadow:none!important;font-weight:700}
html[data-style] :is(.build-tags,.featured-project-tags,[class*="tags"]) li{
  background:var(--nb-surface-2)!important;background-image:none!important;color:var(--nb-text)!important;
  border:2px solid var(--nb-border)!important;border-radius:0!important}
html[data-style] .nx-when{color:var(--nb-text)!important}
html[data-style] .nx-step--now .nx-when{color:#111!important}
/* save / action buttons inside cards */
html[data-style] :is(.build-save,.featured-project-link,.build-card-link,.featured-project-actions a,.build-card-actions a,.card-link){
  background:var(--nb-surface-2)!important;background-image:none!important;color:var(--nb-text)!important;
  border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important;font-weight:700}
html[data-style] .build-save *,html[data-style] .featured-project a *,html[data-style] .build-card a *{color:inherit!important}
html[data-style] .featured-project a[href^="http"]:not([class*="repo"]){background:var(--nb-accent)!important;color:#111!important;border:var(--nb-bw) solid var(--nb-border)!important;box-shadow:var(--nb-shadow-sm)!important;border-radius:0!important}
html[data-style] .more-builds,html[data-style] .more-builds *{background:transparent!important;color:var(--nb-muted)!important;border-color:var(--nb-border)!important}
html[data-style] .about-live-clock strong,html[data-style] .about-live-clock span,html[data-style] .about-live-clock{color:var(--nb-text)!important}
html[data-style] .nx-section-head>p,html[data-style] .section-header>p,html[data-style] .credentials-heading>p,html[data-style] .contact-intro>p,html[data-style] .social-heading>p,html[data-style] .project-library-heading>p{color:var(--nb-muted)!important}

/* ---------- Fourth pass: specificity boost so chip text always wins ---------- */
html[data-style][data-style] :is(.featured-project-private,.featured-project-status,.build-card-top b,.build-card-top span,.featured-project-top span,.about-signal-row span,.credential-label,.contact-status,.contact-link span,.contact-submit span,.mini-note>span,.tool-icon){
  background:var(--nb-yellow)!important;background-image:none!important;color:#111!important;border:2px solid var(--nb-border)!important;border-radius:0!important;box-shadow:none!important}
html[data-style][data-style] :is(.featured-project,.build-card) ul li{
  background:var(--nb-surface-2)!important;background-image:none!important;color:var(--nb-text)!important;
  border:2px solid var(--nb-border)!important;border-radius:0!important;font-weight:700}
html[data-style][data-style] :is(.github-sync-status,.live-status,.build-count){background:transparent!important;border:0!important;box-shadow:none!important;color:var(--nb-muted)!important}
html[data-style][data-style] .nx-step--now .nx-when{color:#111!important}
html[data-style][data-style] .nx-step:not(.nx-step--now) .nx-when{color:var(--nb-text)!important;background:transparent!important}
html[data-style][data-style] .note,html[data-style][data-style] .sticky-note{background:var(--nb-surface-2)!important;background-image:none!important;color:var(--nb-text)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important}
html[data-style][data-style] .note *{color:var(--nb-text)!important}

/* ---------- Fifth pass ---------- */
html[data-style][data-style] .event-highlights li{background:var(--nb-surface-2)!important;background-image:none!important;color:var(--nb-text)!important;border:2px solid var(--nb-border)!important;border-radius:0!important;font-weight:700}
html[data-style][data-style] .about-live-clock *{background:transparent!important;color:var(--nb-text)!important}
html[data-style][data-style] :is(.featured-project-actions,.build-card-actions) a *,html[data-style][data-style] :is(.featured-project-actions,.build-card-actions) a{color:#111!important}
html[data-style][data-style] :is(.featured-project-actions,.build-card-actions) a[class*="repo"],html[data-style][data-style] :is(.featured-project-actions,.build-card-actions) a[class*="repo"] *{color:var(--nb-text)!important}

/* ---------- Sixth pass: small-build actions, map label, what-card links ---------- */
html[data-style][data-style] a.build-action,html[data-style][data-style] a.build-action *{background-image:none!important;color:#111!important}
html[data-style][data-style] a.build-action{background:var(--nb-accent)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important;font-weight:700;min-height:44px}
html[data-style][data-style] a.build-repository,html[data-style][data-style] a.build-repository *{background-image:none!important;color:var(--nb-text)!important}
html[data-style][data-style] a.build-repository{background:var(--nb-surface)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important;font-weight:700;min-height:44px}
html[data-style][data-style] .map-navigation-label,html[data-style][data-style] .map-navigation-label *{background:var(--nb-yellow)!important;background-image:none!important;color:#111!important;border-radius:0!important}
html[data-style][data-style] .nx-what-card a{color:var(--nb-text)!important;font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* ---------- Seventh pass: left profile rail (desktop) ---------- */
html[data-style][data-style] .profile-rail,html[data-style][data-style] .profile-rail *{background-image:none}
html[data-style][data-style] .rail-experience{background:var(--nb-surface)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important}
html[data-style][data-style] .rail-experience *{color:var(--nb-text)!important;background:transparent!important}
html[data-style][data-style] .rail-experience small,html[data-style][data-style] .rail-experience li{color:var(--nb-muted)!important}
html[data-style][data-style] .profile-name strong{color:var(--nb-text)!important}
html[data-style][data-style] .profile-name span,html[data-style][data-style] .profile-location,html[data-style][data-style] .profile-location *{color:var(--nb-muted)!important}
html[data-style][data-style] .profile-rail .profile-download{font-size:1rem!important;background:var(--nb-yellow)!important;color:#111!important}
html[data-style][data-style] .profile-rail .profile-download *{color:#111!important}
html[data-style][data-style] .profile-rail .rail-section-button--profile{font-size:1rem!important}
html[data-style][data-style] .profile-rail .rail-section-button--profile *{color:var(--nb-text)!important}
html[data-style][data-style] .rail-social{background:var(--nb-surface)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important;color:var(--nb-text)!important}
html[data-style][data-style] .rail-social:hover,html[data-style][data-style] .rail-social:focus-visible{box-shadow:var(--nb-shadow)!important}
html[data-style][data-style] .rail-social--instagram:hover{background:linear-gradient(45deg,#f9a825,#ee2a7b 55%,#6228d7)!important;color:#fff!important}
html[data-style][data-style] .rail-social--whatsapp:hover{background:#25d366!important;color:#07351c!important}
html[data-style][data-style] .rail-social--github:hover,html[data-style][data-style] .rail-social--x:hover{background:#111!important;color:#fff!important}
html[data-style][data-style][data-theme="dark"] .rail-social--github:hover,html[data-style][data-style][data-theme="dark"] .rail-social--x:hover{background:#fffbe8!important;color:#111!important}
html[data-style][data-style] .rail-social--linkedin:hover{background:#0a66c2!important;color:#fff!important}

/* ---------- Eighth pass ---------- */
html[data-style][data-style] .tool-logo--fallback{background:var(--nb-yellow)!important;color:#111!important;border:2px solid var(--nb-border)!important;border-radius:0!important}
html[data-style][data-style] .xp-chip-text,html[data-style][data-style] .xp-chip-text *{color:var(--nb-text)!important}
html[data-style][data-style] .xp-chip-text span{color:var(--nb-muted)!important}

/* ---------- Ninth pass: live GitHub tiles, event photo mats, map, menu current link, glyphs ---------- */
html[data-style][data-style] .live-card,html[data-style][data-style] .live-card *{background-image:none!important}
html[data-style][data-style] .live-stats>div{background:var(--nb-surface-2)!important;border:2px solid var(--nb-border)!important;border-radius:0!important;box-shadow:none!important}
html[data-style][data-style] .live-card :is(dt,small,p,.live-status){color:var(--nb-muted)!important}
html[data-style][data-style] .live-card :is(dd,b,strong,h3,span,li){color:var(--nb-text)!important}
html[data-style][data-style] .live-card a,html[data-style][data-style] .li-fallback a{color:var(--nb-accent-text)!important;font-weight:700}
html[data-style][data-style] .li-fallback,html[data-style][data-style] .li-fallback *{background-color:transparent!important;color:var(--nb-text)!important}
html[data-style][data-style] .li-fallback{background:var(--nb-surface)!important}
html[data-style][data-style] .event-media,html[data-style][data-style] .event-media img,html[data-style][data-style] .event-photo-panel,html[data-style][data-style] .event-photo-panel img{background:var(--nb-surface-2)!important}
html[data-style][data-style][data-theme="dark"] .map-embed iframe{filter:invert(.92) hue-rotate(180deg) contrast(.92) saturate(.8)}
html[data-style][data-style] .map-embed{overflow:hidden}
html[data-style][data-style] .site-nav a.is-current,html[data-style][data-style] .site-nav a[aria-current="true"]{background:var(--nb-yellow)!important;color:#111!important}
html[data-style][data-style] :is(.build-save,.build-repository,.build-action,.featured-project-link) :is(span,b,i){color:inherit!important;background:transparent!important}
html[data-style][data-style] .build-save{background:var(--nb-surface-2)!important;color:var(--nb-text)!important}

/* ---------- Tenth pass: Ask-about-Nitish section + feedback card use the theme tokens ---------- */
html[data-style][data-style] .ask-section{background:var(--nb-bg)!important;background-image:none!important}
html[data-style][data-style] .ask-card{background:var(--nb-surface)!important;background-image:none!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow)!important;color:var(--nb-text)!important}
html[data-style][data-style] .ask-eyebrow,html[data-style][data-style] .fb-eyebrow{background:var(--nb-accent)!important;color:var(--nb-accent-contrast)!important;border:2px solid var(--nb-border)!important;font-weight:800;letter-spacing:.06em}
html[data-style][data-style] .ask-help,html[data-style][data-style] .ask-count,html[data-style][data-style] .ask-label,html[data-style][data-style] .fb-help{color:var(--nb-muted)!important}
html[data-style][data-style] .ask-text,html[data-style][data-style] .ask-answer,html[data-style][data-style] .ask-answer *{color:var(--nb-text)!important}
html[data-style][data-style] .ask-input,html[data-style][data-style] .fb-input{background:var(--nb-surface-2)!important;color:var(--nb-text)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important}
html[data-style][data-style] .ask-chip,html[data-style][data-style] .fb-chip{background:var(--nb-surface-2)!important;color:var(--nb-text)!important;border:2px solid var(--nb-border)!important;border-radius:0!important;box-shadow:none!important;font-weight:700}
html[data-style][data-style] .ask-chip:hover,html[data-style][data-style] .fb-chip:hover,html[data-style][data-style] .fb-chip[aria-pressed="true"]{background:var(--nb-yellow)!important;color:#111!important}
html[data-style][data-style] .ask-send,html[data-style][data-style] .fb-send{background:var(--nb-accent)!important;color:var(--nb-accent-contrast)!important;border:var(--nb-bw) solid var(--nb-border)!important;border-radius:0!important;box-shadow:var(--nb-shadow-sm)!important;font-weight:700}
html[data-style][data-style] .ask-mail{color:var(--nb-accent-text)!important;font-weight:700}

/* ---------- Eleventh pass: visual-review fixes ---------- */
/* toolkit side notes had a hard-coded white alpha (grey patch in every dark mode) */
html[data-style][data-style] .toolkit-notes{background:transparent!important;border:0!important;box-shadow:none!important}
/* empty contact status was a solid bar */
html[data-style][data-style] .contact-status:empty{display:none!important}
/* event link + date chip: breathing room */
html[data-style][data-style] .event-source{display:inline-flex;align-items:center;padding:8px 14px!important;min-height:44px}
html[data-style][data-style] .event-card>div>span{padding:4px 10px!important;display:inline-block}
/* tap targets */
html[data-style][data-style] .hx-copy,html[data-style][data-style] .map-navigation-label{min-height:44px;display:inline-flex;align-items:center;padding-inline:14px}
/* headings never hide under the sticky header after an anchor jump */
section[id],[id].ask-section{scroll-margin-top:76px}
/* no slow colour crossfade while the theme is being switched */
html.theme-switching *,html.theme-switching *::before,html.theme-switching *::after{transition:none!important}
/* phones: move the two theme buttons into the header (centre), so they never cover content */
@media (max-width:620px){
  .theme-picker{top:10px!important;bottom:auto!important;right:auto!important;left:calc(50% - 50px)!important;z-index:45}
  .theme-toggle{top:10px!important;bottom:auto!important;right:auto!important;left:calc(50% + 6px)!important;z-index:45}
  .theme-picker-list{top:54px!important;bottom:auto!important;left:-90px!important;right:auto!important;max-width:calc(100vw - 24px)}
}

/* ---------- Theme picker (shown in every style) ---------- */
.theme-picker{position:fixed;right:14px;bottom:calc(env(safe-area-inset-bottom,0px) + 172px);z-index:41;font-family:'Space Grotesk',Inter,system-ui,sans-serif}
.theme-picker-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:2px solid #202124;border-radius:12px;background:#fff;color:#202124;font:700 .85rem/1 'Space Grotesk',Inter,system-ui,sans-serif;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.theme-picker-list{position:absolute;right:0;bottom:54px;margin:0;padding:6px;list-style:none;min-width:210px;border:2px solid #202124;border-radius:12px;background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.2)}
.theme-picker-list button{display:block;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:none;color:#202124;font:600 .85rem/1 'Space Grotesk',Inter,system-ui,sans-serif;text-align:left;cursor:pointer}
.theme-picker-list button:hover,.theme-picker-list button:focus-visible{background:#eef1ff}
.theme-picker-list button[aria-checked="true"]{background:#202124;color:#fff}
html[data-style] .theme-picker-button,html[data-style] .theme-picker-list{border:3px solid var(--nb-border);border-radius:0;background:var(--nb-surface);color:var(--nb-text);box-shadow:var(--nb-shadow-sm)}
html[data-style] .theme-picker-list button{color:var(--nb-text);border-radius:0}
html[data-style] .theme-picker-list button:hover,html[data-style] .theme-picker-list button:focus-visible{background:var(--nb-yellow);color:#111}
html[data-style] .theme-picker-list button[aria-checked="true"]{background:var(--nb-accent);color:#111}

/* ---------- Theme token sets (complete; later blocks win) ---------- */
html[data-style="pop"]{--nb-bg:#f6ffd9;--nb-surface:#ffffff;--nb-surface-2:#e6ff85;--nb-text:#0d0d0d;--nb-muted:#2b2f1c;--nb-border:#0d0d0d;--nb-accent:#ff2e93;--nb-accent-hover:#ff5aa9;--nb-accent-text:#b0005f;--nb-accent-contrast:#0d0d0d;--nb-yellow:#c6ff00;--nb-focus:#0050ff;--nb-shadow-sm:4px 4px 0 #0d0d0d;--nb-shadow:6px 6px 0 #0d0d0d;--nb-blue:#9fd8ff;--nb-coral:#ff9ec9;--nb-violet:#d3b6ff;--nb-mint:#b8ffcf;--nb-sun:#eaff8a;--nb-bw:4px}
html[data-style="pop"][data-theme="dark"]{--nb-bg:#0d0d0d;--nb-surface:#171717;--nb-surface-2:#222222;--nb-text:#f4ffd6;--nb-muted:#d3dbb5;--nb-border:#c6ff00;--nb-accent:#ff4fa8;--nb-accent-hover:#ff75bd;--nb-accent-text:#ff8cc6;--nb-accent-contrast:#0d0d0d;--nb-yellow:#c6ff00;--nb-focus:#7cc4ff;--nb-shadow-sm:4px 4px 0 #c6ff00;--nb-shadow:6px 6px 0 #c6ff00;--nb-blue:#9fd8ff;--nb-coral:#ff9ec9;--nb-violet:#d3b6ff;--nb-mint:#b8ffcf;--nb-sun:#eaff8a;--nb-bw:4px}
html[data-style="cyber"]{--nb-bg:#effff6;--nb-surface:#ffffff;--nb-surface-2:#c9ffe3;--nb-text:#04140c;--nb-muted:#1d3b2c;--nb-border:#04140c;--nb-accent:#12c46d;--nb-accent-hover:#2edc84;--nb-accent-text:#00703a;--nb-accent-contrast:#04140c;--nb-yellow:#7dffbd;--nb-focus:#0050ff;--nb-shadow-sm:3px 3px 0 #04140c;--nb-shadow:5px 5px 0 #04140c;--nb-blue:#b3d9ff;--nb-coral:#ffc7b3;--nb-violet:#d9ccff;--nb-mint:#b6ffd7;--nb-sun:#f2ffb0;--nb-bw:2px;--nb-head:'Cascadia Mono','Consolas','SFMono-Regular',ui-monospace,monospace}
html[data-style="cyber"][data-theme="dark"]{--nb-bg:#050a08;--nb-surface:#0b1511;--nb-surface-2:#12251c;--nb-text:#d7ffe9;--nb-muted:#a3d9bd;--nb-border:#19ff8c;--nb-accent:#19ff8c;--nb-accent-hover:#55ffaa;--nb-accent-text:#5dffad;--nb-accent-contrast:#04140c;--nb-yellow:#19ff8c;--nb-focus:#6fb7ff;--nb-shadow-sm:3px 3px 0 #19ff8c;--nb-shadow:5px 5px 0 #19ff8c;--nb-blue:#b3d9ff;--nb-coral:#ffc7b3;--nb-violet:#d9ccff;--nb-mint:#b6ffd7;--nb-sun:#f2ffb0;--nb-bw:2px;--nb-head:'Cascadia Mono','Consolas','SFMono-Regular',ui-monospace,monospace}
html[data-style="swiss"]{--nb-bg:#ffffff;--nb-surface:#ffffff;--nb-surface-2:#f1f1f1;--nb-text:#0a0a0a;--nb-muted:#2f2f2f;--nb-border:#0a0a0a;--nb-accent:#ff3b30;--nb-accent-hover:#ff6157;--nb-accent-text:#c20000;--nb-accent-contrast:#0a0a0a;--nb-yellow:#ffd9d6;--nb-focus:#0050ff;--nb-shadow-sm:4px 4px 0 #ff3b30;--nb-shadow:6px 6px 0 #ff3b30;--nb-blue:#dfe9ff;--nb-coral:#ffe0dd;--nb-violet:#ece6ff;--nb-mint:#dcf5e6;--nb-sun:#fff0c2;--nb-bw:2px;--nb-head:'Space Grotesk',Inter,system-ui,sans-serif}
html[data-style="swiss"][data-theme="dark"]{--nb-bg:#0f0f0f;--nb-surface:#181818;--nb-surface-2:#242424;--nb-text:#ffffff;--nb-muted:#d4d4d4;--nb-border:#ffffff;--nb-accent:#ff453a;--nb-accent-hover:#ff6b62;--nb-accent-text:#ff7a72;--nb-accent-contrast:#0a0a0a;--nb-yellow:#ffd9d6;--nb-focus:#7cb6ff;--nb-shadow-sm:4px 4px 0 #ff453a;--nb-shadow:6px 6px 0 #ff453a;--nb-blue:#dfe9ff;--nb-coral:#ffe0dd;--nb-violet:#ece6ff;--nb-mint:#dcf5e6;--nb-sun:#fff0c2;--nb-bw:2px;--nb-head:'Space Grotesk',Inter,system-ui,sans-serif}

/* per-theme typography touches */
html[data-style="cyber"] :is(h1,h2,h3,h4,.nx-name){font-weight:700!important;letter-spacing:0;text-transform:none}
html[data-style="swiss"] :is(h1,h2,h3,h4,.nx-name){font-weight:700!important;letter-spacing:-.02em}
html[data-style="pop"] :is(h2,h3){letter-spacing:.01em}
html[data-style="cyber"] body{font-family:var(--nb-body)!important}

/* theme picker list extras */
.theme-picker-title{padding:.55rem .75rem .35rem;font-size:.72rem;font-weight:700;line-height:1.35;opacity:.85;list-style:none}
.theme-picker-list button{display:flex!important;align-items:center;gap:.6rem}
.theme-dots{display:inline-flex}
.theme-dots i{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-radius:50%}
.theme-dots i+i{margin-left:-5px}
