/* Kawaii Arcade: public shell only. Component names audited against index/shell/account.
   No global tool selectors, independent theme manager, font imports or canvas. */
html[data-nx-visual-mode="kawaii-arcade"] {
  color-scheme: light;
  --ka-bg: #bdf3f5;
  --ka-cream: #fff9eb;
  --ka-brown: #48291d;
  --ka-text: #43291f;
  --ka-muted: #6b493c;
  --ka-yellow: #ffd53f;
  --ka-pink: #f47db5;
  --ka-mint: #43d5a6;
  --ka-blue: #68d8f6;
  --ka-panel-shadow: 0 5px 0 #48291d, 0 12px 22px rgb(72 41 29 / 12%);
  background: var(--ka-bg) !important;
}
html[data-nx-visual-mode="kawaii-arcade"] body {
  color: var(--ka-text);
  background:
    radial-gradient(circle, rgb(72 41 29 / 12%) 1px, transparent 1.6px) 0 0 / 26px 26px,
    radial-gradient(ellipse at 6% 18%, #ffc7e3, transparent 42%),
    radial-gradient(ellipse at 96% 62%, #d6c7ff, transparent 44%),
    linear-gradient(145deg, #bdf3f5, #d5f9e7 28%, #fff1bc 52%, #ffe1ef 76%, #d8d5fc) var(--ka-bg) !important;
}
html[data-nx-visual-mode="kawaii-arcade"] .bg-glow {
  display: block !important;
  position: fixed !important;
  inset: 0;
  min-height: 0;
  height: 100%;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 2% 34%, rgb(255 167 211 / 55%), transparent 55%),
    radial-gradient(ellipse at 98% 70%, rgb(193 172 255 / 60%), transparent 50%),
    radial-gradient(ellipse at 48% 100%, rgb(255 221 132 / 65%), transparent 48%);
  animation: none;
}
/* Static native emoji: no image/font requests, timers or interactive decoration. */
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles {
  display: block;
  position: absolute;
  inset: 0;
  pointer-events: none;
  user-select: none;
}
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span {
  position: absolute;
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
  font-size: clamp(30px, 4vw, 56px);
  line-height: 1;
  opacity: .65;
  filter: drop-shadow(0 2px 0 rgb(255 255 255 / 90%));
}
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(1) { left: 3%; top: 19%; transform: rotate(-16deg); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(2) { right: 4%; top: 8%; transform: rotate(18deg); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(3) { left: 58%; top: 56%; transform: rotate(-12deg); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(4) { left: 1%; top: 67%; transform: rotate(-18deg); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(5) { right: 2%; top: 72%; transform: rotate(14deg); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(6) { right: 15%; top: 91%; transform: rotate(-18deg); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(7) { left: 18%; top: 93%; transform: rotate(12deg); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span:nth-child(8) { left: 35%; top: 36%; transform: rotate(-8deg); }
html[data-nx-visual-mode="kawaii-arcade"] .bg-glow .nx-membrane,
html[data-nx-visual-mode="kawaii-arcade"] .bg-glow .nx-atmosphere { display: none; }
html[data-nx-visual-mode="kawaii-arcade"] .container { color: var(--ka-text); min-width: 0; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-footer-brand { color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-nav-block {
  background: linear-gradient(#8ee6ed, #35c5d4) !important;
  border: 3px solid var(--ka-brown);
  border-radius: 0 0 24px 24px;
  box-shadow: var(--ka-panel-shadow) !important;
}
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-nav-inner { min-width: 0; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-nav-text b,
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-nav-text span { color: var(--ka-text) !important; text-shadow: none; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-nav-mark { background: var(--ka-cream); border: 2px solid var(--ka-brown); color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] .video-banner { border: 3px solid var(--ka-brown); border-radius: 24px; box-shadow: var(--ka-panel-shadow); }
html[data-nx-visual-mode="kawaii-arcade"] .user-card,
html[data-nx-visual-mode="kawaii-arcade"] #navTabs,
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-menu-panel {
  background: var(--ka-cream) !important;
  border: 3px solid var(--ka-brown) !important;
  border-radius: 22px;
  box-shadow: var(--ka-panel-shadow) !important;
  color: var(--ka-text);
  backdrop-filter: none;
}
html[data-nx-visual-mode="kawaii-arcade"] .user-info .item { background: rgb(255 213 63 / 18%); border-color: var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] .user-card :is(.label, .value, .perc),
html[data-nx-visual-mode="kawaii-arcade"] .nx-session-brand :is(span, b),
html[data-nx-visual-mode="kawaii-arcade"] .user-avatar { color: var(--ka-text) !important; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-session-brand { background: #ffe1ef; border-color: var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] .user-avatar { background: var(--ka-pink); border: 2px solid var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] #navTabs { padding: 7px !important; scroll-padding: 10px; }
html[data-nx-visual-mode="kawaii-arcade"] #navTabs::before,
html[data-nx-visual-mode="kawaii-arcade"] #navTabs::after { background: none; }
html[data-nx-visual-mode="kawaii-arcade"] #navTabs .nx-mercury-indicator { background: var(--ka-pink); border: 2px solid var(--ka-brown); box-shadow: 0 2px 0 var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] #navTabs .nav-tab { min-height: 44px; color: var(--ka-text) !important; text-shadow: none; }
html[data-nx-visual-mode="kawaii-arcade"] #navTabs .nav-tab i { color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] #navTabs .nav-tab.active { color: var(--ka-text) !important; }
html[data-nx-visual-mode="kawaii-arcade"] .section-title { color: var(--ka-text); letter-spacing: .03em; }
html[data-nx-visual-mode="kawaii-arcade"] .section-title > i { background: var(--ka-yellow); border: 2px solid var(--ka-brown); color: var(--ka-text); box-shadow: 0 3px 0 var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] .section-title .line { background: var(--ka-brown); opacity: .35; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-all-tools-more small { color: var(--ka-muted); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-catalog-meta { color: var(--ka-muted); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-catalog-count { background: var(--ka-yellow); color: var(--ka-text); border: 2px solid var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-grid { gap: 18px !important; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card {
  background: linear-gradient(160deg, #fffef8, var(--ka-cream) 72%, #ffefc9) !important;
  border: 3px solid var(--ka-brown) !important;
  border-radius: 24px !important;
  box-shadow: var(--ka-panel-shadow) !important;
  color: var(--ka-text);
  overflow: visible;
  transition: box-shadow 120ms ease;
}
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card::before {
  inset: 5px 8px auto;
  height: 9px;
  border-radius: 18px;
  background: linear-gradient(90deg, rgb(255 255 255 / 90%), transparent) !important;
  pointer-events: none;
}
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card::after { display: none; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card:hover { box-shadow: 0 7px 0 var(--ka-brown), 0 14px 24px rgb(72 41 29 / 18%) !important; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card:active { box-shadow: 0 2px 0 var(--ka-brown) !important; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-card-top { gap: 8px; min-width: 0; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card .icon { background: linear-gradient(#ffb0d7, var(--ka-pink)); border: 2px solid var(--ka-brown); color: var(--ka-text); border-radius: 17px; box-shadow: 0 3px 0 var(--ka-brown), inset 0 2px 0 #fff9; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card:nth-child(3n+2) .icon { background: var(--ka-mint); }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card:nth-child(3n) .icon { background: var(--ka-blue); }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card .badge { background: var(--ka-yellow); border: 2px solid var(--ka-brown); color: var(--ka-text); text-align: center; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-card-copy { min-width: 0; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card h4 { color: var(--ka-text); text-shadow: none; overflow-wrap: anywhere; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card p { color: var(--ka-muted); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-card-footer { border-color: var(--ka-brown); flex-wrap: wrap; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .nx-card-readiness,
html[data-nx-visual-mode="kawaii-arcade"] #main-content .nx-card-format { background: #e4f6fa; border: 1px solid var(--ka-brown); color: var(--ka-text); letter-spacing: .02em; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card[data-nx-tool-status="ready"] .nx-card-readiness { color: #164937; background: #d4f8e5; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card[data-nx-tool-status="degraded"] .nx-card-readiness { color: #632b3d; background: #ffe1ef; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card[data-nx-tool-status="restricted"] .nx-card-readiness { color: #593d08; background: #fff0ad; }
html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card .arrow { background: var(--ka-yellow); color: var(--ka-text); border: 2px solid var(--ka-brown); border-radius: 12px; }
/* Explicit shell controls, never all buttons in a tool or iframe. */
html[data-nx-visual-mode="kawaii-arcade"] :is(.nx-overdrive-trigger, .nx-top-menu-button, .nx-account-button, .nx-ai-launcher, .nx-about-dev-trigger, .nx-room-back, .nx-account-primary, .nx-account-secondary, .nx-account-close, .tool-viewer-close, .nx-all-tools-more) {
  background: linear-gradient(#ffe875, #ffd53f 65%, #f5b800) !important;
  color: var(--ka-text) !important;
  border: 3px solid var(--ka-brown) !important;
  border-radius: 16px;
  min-height: 44px;
  min-width: 44px;
  box-shadow: 0 4px 0 var(--ka-brown), inset 0 2px 0 #fff9 !important;
}
html[data-nx-visual-mode="kawaii-arcade"] :is(.nx-overdrive-trigger, .nx-top-menu-button, .nx-account-button, .nx-ai-launcher, .nx-room-back, .nx-account-primary, .nx-account-secondary, .nx-all-tools-more):active { transform: translateY(3px); box-shadow: 0 1px 0 var(--ka-brown) !important; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-overdrive-trigger-core { background: var(--ka-pink); color: var(--ka-text); border: 1px solid var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-overdrive-trigger-copy :is(b, strong),
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-button i,
html[data-nx-visual-mode="kawaii-arcade"] .nx-ai-launcher i { color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-ai-launcher-copy small { color: var(--ka-muted); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-menu-lines span { background: var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-menu-title-copy :is(b, span),
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-menu-item-copy :is(b, span) { color: var(--ka-text) !important; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-top-menu-item { background: #fff0cf !important; border: 2px solid var(--ka-brown) !important; color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] :is(.nx-top-menu-item-icon, .nx-top-menu-item-arrow, .nx-top-menu-status) { background: var(--ka-mint); border: 1px solid var(--ka-brown); color: var(--ka-text); }
/* Style the shell of a workspace, retaining tool-specific dark previews/panels. */
html[data-nx-visual-mode="kawaii-arcade"] #nxUniversalRoom .nx-room-shell { background: var(--ka-bg); }
html[data-nx-visual-mode="kawaii-arcade"] #nxUniversalRoom :is(.nx-room-topbar, .nx-room-hero) { background: var(--ka-cream); border-color: var(--ka-brown); color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] #nxUniversalRoom :is(.nx-room-top-title, .nx-room-status, .nx-room-kicker, .nx-room-hero h1, .nx-room-hero p) { color: var(--ka-text) !important; }
html[data-nx-visual-mode="kawaii-arcade"] #nxUniversalRoom .nx-room-hero-icon { background: var(--ka-pink); color: var(--ka-text); border: 2px solid var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] #nxUniversalRoom .nx-room-panel { border: 3px solid var(--ka-brown); border-radius: 22px; box-shadow: var(--ka-panel-shadow); }
html[data-nx-visual-mode="kawaii-arcade"] #nxUniversalRoom :is(.v-input, .v-textarea, .v-select),
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-form input { background: var(--ka-cream); color: var(--ka-text); border: 2px solid var(--ka-brown); border-radius: 14px; }
html[data-nx-visual-mode="kawaii-arcade"] :is(.nx-account-modal, .nx-about-dev-head) { background: var(--ka-cream); color: var(--ka-text); border: 3px solid var(--ka-brown); border-radius: 22px; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-head :is(h2, p),
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-form label,
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-links button { color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-modal .nx-membership-card { background: #fff0cf; border-color: var(--ka-brown); color: var(--ka-text); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-modal .nx-membership-card span { color: var(--ka-muted); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-message { color: #164937; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-message.is-error { color: #862335; }
html[data-nx-visual-mode="kawaii-arcade"] .nx-overdrive-toast { background: var(--ka-yellow); color: var(--ka-text); border: 3px solid var(--ka-brown); box-shadow: 0 4px 0 var(--ka-brown); }
html[data-nx-visual-mode="kawaii-arcade"] .nx-about-dev-loader { color: var(--ka-text); background: var(--ka-cream); }
html[data-nx-visual-mode="kawaii-arcade"] :is(.nav-tab, .tools-card, .nx-overdrive-trigger, .nx-top-menu-button, .nx-account-button, .nx-ai-launcher, .nx-room-back, .nx-account-primary, .nx-account-secondary, .nx-account-close, .nx-all-tools-more):focus-visible,
html[data-nx-visual-mode="kawaii-arcade"] #nxUniversalRoom :is(.v-input, .v-textarea, .v-select):focus-visible,
html[data-nx-visual-mode="kawaii-arcade"] .nx-account-form input:focus-visible { outline: 3px solid #753a84 !important; outline-offset: 4px; }
html[data-nx-visual-mode="kawaii-arcade"] :is(.nx-overdrive-trigger, .nx-top-menu-button, .nx-account-button, .nx-account-primary, .nx-account-secondary, .nx-all-tools-more):disabled { opacity: .6; filter: saturate(.3); cursor: not-allowed; box-shadow: none !important; }
@media (max-width: 1023px), (pointer: coarse) {
  /* One scrolling background, bounded gradient tiles, no fixed/filter surfaces.
     Keep the solid root/body pastel even during overscroll or tile recovery. */
  html[data-nx-visual-mode="kawaii-arcade"] { --ka-panel-shadow: 0 4px 0 #48291d, 0 6px 10px rgb(72 41 29 / 8%); }
  html[data-nx-visual-mode="kawaii-arcade"] body {
    background:
      radial-gradient(circle, rgb(72 41 29 / 12%) 1px, transparent 1.6px) 0 0 / 26px 26px,
      linear-gradient(180deg, #bdf3f5, #fdd6e9 28%, #ded6ff 55%, #e7f8cb 78%, #bdf3f5) 0 0 / 100% 800px repeat-y var(--ka-bg) !important;
  }
  html[data-nx-visual-mode="kawaii-arcade"] .bg-glow {
    position: absolute !important;
    height: 100vh;
    height: 100svh;
    background: none;
  }
  html[data-nx-visual-mode="kawaii-arcade"] .nx-kawaii-doodles > span { filter: none; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card:hover:not(:active) { box-shadow: var(--ka-panel-shadow) !important; }
}
@media (max-width: 719px) {
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 10px !important; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card { min-height: 184px !important; padding: 8px !important; border-radius: 20px !important; }
  html[data-nx-visual-mode="kawaii-arcade"] .nx-card-top { gap: 4px; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card .icon { width: 34px !important; height: 34px !important; font-size: 17px !important; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card .badge { max-width: 42px !important; font-size: 7px !important; padding: 3px 4px !important; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card h4 { font-size: 12px !important; min-height: 30px; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .tools-card p { display: -webkit-box !important; font-size: 10px !important; min-height: 30px; -webkit-line-clamp: 2; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .nx-card-readiness { font-size: 8px !important; min-height: 22px !important; }
  html[data-nx-visual-mode="kawaii-arcade"] #main-content .nx-card-format { font-size: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  html[data-nx-visual-mode="kawaii-arcade"] :is(.bg-glow, .tools-card, .nav-tab, .nx-overdrive-trigger, .nx-top-menu-button, .nx-account-button, .nx-ai-launcher, .nx-all-tools-more, .nx-mercury-indicator) { animation: none !important; transition: none !important; }
  html[data-nx-visual-mode="kawaii-arcade"] .tools-card::before { animation: none !important; }
}
