/* Built from assets/css-src/app.css by tools/build-css.js. Edit the source, then rebuild. */
/*
 * Game Adda — app experience: full-screen shell, launch card, menus, app home.
 * Loaded on every Game Adda page after kids.css.
 */

/* ── Full-screen shell ─────────────────────────────────────────────── */
html:not(#ncrk).ncra-open, html:not(#ncrk).ncra-open body { overflow: hidden !important; overscroll-behavior: none; }
html:not(#ncrk) .ncra {
  position: fixed; inset: 0; z-index: 2147482000;
  display: flex; flex-direction: column;
  min-height: 0 !important;
  background: var(--off);
  padding: env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left);
  transform: translateY(24px); opacity: 0;
  transition: transform .22s ease, opacity .22s ease;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none; user-select: none;
  touch-action: manipulation;
}
html:not(#ncrk) .ncra input, html:not(#ncrk) .ncra textarea { -webkit-user-select: text; user-select: text; }
html:not(#ncrk) .ncra img { -webkit-user-drag: none; }
html:not(#ncrk) .ncra.is-in { transform: none; opacity: 1; }
html:not(#ncrk) .ncra-bar {
  flex-shrink: 0; display: flex; align-items: center; gap: 6px;
  height: 56px; padding: 0 8px;
  background: var(--forest); color: #fff;
  border-bottom: 3px solid var(--age, var(--saffron));
}
html:not(#ncrk) .ncra-bar__btn {
  width: 44px; height: 44px; flex-shrink: 0; border: 0; border-radius: 12px;
  background: rgba(255,255,255,.1); color: #fff; font-size: 20px; cursor: pointer;
}
html:not(#ncrk) .ncra-bar__btn:active { transform: scale(.92); background: rgba(255,255,255,.2); }
html:not(#ncrk) .ncra-bar__music { position: relative; }
@media (max-width: 360px) { html:not(#ncrk) .ncra-bar__btn { width: 40px; } }
html:not(#ncrk) .ncra-bar__title { flex: 1; min-width: 0; margin: 0 4px !important; display: flex; align-items: center; justify-content: center; gap: 8px; font-weight: 800; font-size: 18px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html:not(#ncrk) .ncra-bar__icon { font-size: 22px; }
html:not(#ncrk) .ncra-main {
  flex: 1; min-height: 0; overflow-y: auto; overflow-x: hidden;
  padding: 10px 10px calc(10px + env(safe-area-inset-bottom));
  -webkit-overflow-scrolling: touch; overscroll-behavior: contain;
}
@media (prefers-reduced-motion: reduce) { html:not(#ncrk) .ncra { transition: none; } }

/* The game stage inside the shell: no card look, fills the space. */
html:not(#ncrk) .ncra .ncrk-stage.ncra-stage {
  margin: 0 !important; border: 0; border-radius: 0; box-shadow: none;
  background: transparent; padding: 0; min-height: 100%;
}
/* The shell has the sound button; hide the games' own copies. */
html:not(#ncrk) .ncra-main .ncrk-mute { display: none; }

/* Every button squashes a little when pressed. */
html:not(#ncrk) .ncra-main button:not(:disabled):active, html:not(#ncrk) .ncra-home button:not(:disabled):active, html:not(#ncrk) .ncra-home a:active { transform: scale(.96); }

/* Board games (Ludo, Saanp Seedhi): the board fits the screen height. */
html:not(#ncrk) .ncra .ncrb { gap: 8px; }
html:not(#ncrk) .ncra .ncrb-board { width: min(100%, 680px, calc(var(--ncra-avail, 100vh) - 200px)); }
html:not(#ncrk) .ncra .ncrb-bottom { max-width: min(100%, 680px); }
/* Mithai Match */
html:not(#ncrk) .ncra .ncrc-board { width: min(100%, 680px, calc(var(--ncra-avail, 100vh) - 240px)); margin: 0 auto; }
html:not(#ncrk) .ncra .ncrc--play > :not(.ncrc-boardwrap):not(.ncrb-overlay) { width: min(100%, 680px, calc(var(--ncra-avail, 100vh) - 240px)); min-width: min(100%, 320px); margin-left: auto; margin-right: auto; }
html:not(#ncrk) .ncra .ncrm { gap: 8px; }
html:not(#ncrk) .ncra .ncrm-top .ncrm-top__title { font-size: 18px; }
html:not(#ncrk) .ncra .ncrm-board { width: min(100%, 680px, calc(var(--ncra-avail, 100vh) - 246px)); }
html:not(#ncrk) .ncra .ncrm-hud { max-width: min(100%, 680px); }

/* Snooker: the table takes all the height that is left */
html:not(#ncrk) .ncra .ncrs { height: calc(var(--ncra-avail, 100vh) - 20px); max-width: 980px; }

/* Phones held sideways: board on the left, controls on the right. */
@media (orientation: landscape) and (max-height: 560px) {
  html:not(#ncrk) .ncra .ncrb { display: grid; grid-template-columns: auto minmax(200px, 1fr); grid-template-rows: auto 1fr; gap: 8px 14px; align-items: start; }
  html:not(#ncrk) .ncra .ncrb-top { grid-column: 2; grid-row: 1; }
  html:not(#ncrk) .ncra .ncrb-board { grid-column: 1; grid-row: 1 / span 2; width: calc(var(--ncra-avail, 100vh) - 4px); max-width: none; margin: 0; }
  html:not(#ncrk) .ncra .ncrb-bottom { grid-column: 2; grid-row: 2; grid-template-columns: 1fr; grid-template-areas: "die" "players" "msg"; justify-items: start; }
  html:not(#ncrk) .ncra .ncrm { display: grid; grid-template-columns: auto minmax(200px, 1fr); grid-template-rows: auto auto auto 1fr; gap: 8px 14px; }
  html:not(#ncrk) .ncra .ncrm-board { grid-column: 1; grid-row: 1 / span 4; width: calc(var(--ncra-avail, 100vh) - 16px); margin: 0; }
  html:not(#ncrk) .ncra .ncrm-top { grid-column: 2; }
  html:not(#ncrk) .ncra .ncrm-hud { grid-column: 2; grid-template-columns: 1fr 1fr; }
  html:not(#ncrk) .ncra .ncrm-boosters { grid-column: 2; justify-content: flex-start; flex-wrap: wrap; }
  html:not(#ncrk) .ncra .ncrm-pill--score { grid-column: 1 / -1; }
  html:not(#ncrk) .ncra .ncrb-msg { grid-column: 2; text-align: left; }
  html:not(#ncrk) .ncra .ncrc { display: grid; grid-template-columns: auto minmax(200px, 1fr); grid-template-rows: auto auto auto auto 1fr; gap: 6px 14px; max-width: none; }
  html:not(#ncrk) .ncra .ncrc-boardwrap { grid-column: 1; grid-row: 1 / span 5; }
  html:not(#ncrk) .ncra .ncrc-board { width: calc(var(--ncra-avail, 100vh) - 16px); margin: 0; }
  html:not(#ncrk) .ncra .ncrc > :not(.ncrc-boardwrap):not(.ncrb-overlay) { grid-column: 2; width: auto; }
  html:not(#ncrk) .ncra-bar { height: 46px; }
}

/* ── Launch card (phones/tablets in the browser) ───────────────────── */
html:not(#ncrk) .ncra-launch { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 18px 8px 8px; }
html:not(#ncrk) .ncra-launch__icon {
  width: 112px; height: 112px; border-radius: 28px; display: flex; align-items: center; justify-content: center;
  font-size: 64px; background: color-mix(in srgb, var(--age, #E07B2A) 22%, #fff);
  box-shadow: 0 8px 20px rgba(27,58,45,.18); margin-bottom: 12px;
}
html:not(#ncrk) .ncra-launch__title { font-family: 'Cormorant Garamond', serif; font-size: 34px; font-weight: 700; color: var(--forest); line-height: 1.1; }
html:not(#ncrk) .ncra-launch__badge { font-size: 13px; font-weight: 700; color: var(--muted); margin: 4px 0 18px !important; }
html:not(#ncrk) .ncra-launch__play { min-width: 220px; min-height: 64px; font-size: 22px; }
html:not(#ncrk) .ncra-launch__note { font-size: 13px; color: var(--muted); margin: 12px 0 6px !important; max-width: 26em; }
html:not(#ncrk) .ncra-install {
  margin-top: 6px; min-height: 44px; padding: 8px 16px; border-radius: 999px; border: 2px dashed var(--forest);
  background: #fff; color: var(--forest); font: 700 15px 'Outfit', sans-serif; cursor: pointer;
}
html:not(#ncrk) .ncra-install[hidden] { display: none; }

/* ── Bottom sheets (menu, how to play, install steps) ──────────────── */
html:not(#ncrk) .ncra-scrim { position: fixed; inset: 0; z-index: 2147483600; background: rgba(16,36,27,.5); display: flex; align-items: flex-end; justify-content: center; }
html:not(#ncrk) .ncra-sheet {
  width: min(100%, 520px); max-height: 85vh; overflow-y: auto;
  background: #fff; color: var(--ink, #1A1A18); border-radius: 22px 22px 0 0;
  padding: 8px 18px calc(18px + env(safe-area-inset-bottom));
  font-family: 'Outfit', system-ui, sans-serif;
  animation: ncra-up .2s ease;
}
@keyframes ncra-up { from { transform: translateY(40px); opacity: 0; } }
html:not(#ncrk) .ncra-sheet__head { display: flex; align-items: center; gap: 8px; padding: 6px 0 10px; border-bottom: 1px solid #EAE6DF; margin-bottom: 10px; }
html:not(#ncrk) .ncra-sheet__title { flex: 1; margin: 0; font-weight: 800; font-size: 19px; color: #1B3A2D; }
html:not(#ncrk) .ncra-sheet__x { width: 40px; height: 40px; border-radius: 50%; border: 1px solid #D8D3CA; background: #fff; font-size: 16px; cursor: pointer; }
html:not(#ncrk) .ncra-menu { display: grid; gap: 6px; }
html:not(#ncrk) .ncra-menu__item {
  display: flex; align-items: center; gap: 14px; width: 100%; min-height: 54px; padding: 8px 14px;
  border: 1px solid #EAE6DF; border-radius: 14px; background: #F7F5F1;
  font: 700 17px 'Outfit', system-ui, sans-serif; color: #1A1A18; text-align: left; cursor: pointer;
}
html:not(#ncrk) .ncra-menu__item[hidden] { display: none; }
html:not(#ncrk) .ncra-menu__icon { width: 28px; text-align: center; font-size: 20px; }
html:not(#ncrk) .ncra-menu__install { justify-content: flex-start; border-style: dashed; border-color: #1B3A2D; background: #fff; color: #1B3A2D; }
html:not(#ncrk) .ncra-menu__brand { display: block; margin-top: 14px; text-align: center; font-size: 13px; color: #6B6860; text-decoration: underline; }
/* Game info pop-up: a centred card over the game screen */
html:not(#ncrk) .ncra-scrim--center { align-items: center; padding: 16px; }
html:not(#ncrk) .ncra-scrim--center .ncra-sheet { border-radius: 22px; padding: 8px 20px 16px; max-height: calc(100% - 16px); width: min(100%, 480px); }
html:not(#ncrk) .ncra-intro { display: flex; align-items: center; gap: 14px; margin: 2px 0 12px; }
html:not(#ncrk) .ncra-intro__icon { width: 64px; height: 64px; flex-shrink: 0; display: grid; place-items: center; font-size: 38px; border-radius: 18px; background: #EEF5F0; }
html:not(#ncrk) .ncra-intro__meta p { margin: 0 !important; }
html:not(#ncrk) .ncra-intro__badge { font-size: 13px; color: #6B6860; font-weight: 600; }
html:not(#ncrk) .ncra-intro__label { font-size: 15px; font-weight: 800; color: #B5611C; text-transform: uppercase; letter-spacing: .08em; }
html:not(#ncrk) .ncra-intro__go { display: block; width: 100%; margin: 14px 0 6px; }
html:not(#ncrk) .ncra-intro__skip { display: block; margin: 4px auto 0; padding: 8px 10px; border: 0; background: none; font: 600 14px 'Outfit', system-ui, sans-serif; color: #1B3A2D; text-decoration: underline; cursor: pointer; }
html:not(#ncrk) .ncra-intro__hint { margin: 2px 0 0 !important; text-align: center; font-size: 12.5px; color: #6B6860; }
html:not(#ncrk) .ncra-bar__help { font-weight: 800; font-size: 20px; }
html:not(#ncrk) .ncra-bar__help[hidden] { display: none; }
@media (max-height: 520px) { html:not(#ncrk) .ncra-scrim--center .ncra-steps { font-size: 15px; line-height: 1.45; } html:not(#ncrk) .ncra-intro__icon { width: 48px; height: 48px; font-size: 28px; } }
html:not(#ncrk) .ncra-steps { padding-left: 22px !important; margin: 0 !important; line-height: 1.6; font-size: 16px; }
html:not(#ncrk) .ncra-steps li { margin-bottom: 10px; }

/* ── "From NCR Guide" on result screens ────────────────────────────── */
html:not(#ncrk) .ncra-promo { margin: 16px auto 0; max-width: 360px; padding-top: 12px; border-top: 1px solid #EAE6DF; text-align: left; }
html:not(#ncrk) .ncra-promo__label { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #B5611C; margin: 0 0 6px !important; }
html:not(#ncrk) .ncra-promo__link { display: block; padding: 6px 0; font-size: 15px; font-weight: 600; color: #1B3A2D !important; text-decoration: none !important; line-height: 1.35; }
html:not(#ncrk) .ncra-promo__link::after { content: ' →'; color: #E07B2A; }

/* ── Install banner on the hub (browser visitors) ──────────────────── */
html:not(#ncrk) .ncra-banner { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 26px; padding: 14px 18px; border-radius: 16px; background: #fff; border: 2px dashed var(--forest); }
html:not(#ncrk) .ncra-banner[hidden] { display: none; }
html:not(#ncrk) .ncra-banner__icon { width: 56px; height: 56px; border-radius: 14px; flex-shrink: 0; }
html:not(#ncrk) .ncra-banner__text { flex: 1; min-width: 200px; }
html:not(#ncrk) .ncra-banner__text strong { display: block; font-size: 18px; color: var(--forest); }
html:not(#ncrk) .ncra-banner__text span { font-size: 14px; color: var(--muted); }
html:not(#ncrk) .ncra-banner__btn { min-height: 48px; padding: 8px 18px; font-size: 16px; }
html:not(#ncrk) .ncra-banner__btn[hidden] { display: none; }
html:not(#ncrk) .ncra-banner__x { width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--rule); background: #fff; cursor: pointer; }

/* ── App home (installed app) ──────────────────────────────────────── */
html:not(#ncrk) .ncra-home { display: none; }
html:not(#ncrk).ncra-standalone body.ncrk-hub .ncra-home { display: flex; }
html:not(#ncrk).ncra-standalone body.ncrk-hub .ncrk:not(.ncra),
html:not(#ncrk).ncra-standalone body.ncrk-hub .site-footer,
html:not(#ncrk).ncra-standalone body.ncrk-hub #colophon,
html:not(#ncrk).ncra-standalone body.ncrk-hub .elementor-location-footer,
html:not(#ncrk).ncra-standalone body.ncrk-hub footer { display: none !important; }
html:not(#ncrk).ncra-standalone body.ncrk-hub { background: #10241b; }

html:not(#ncrk) .ncra-home {
  position: fixed; inset: 0; z-index: 100000; flex-direction: column;
  background: #F7F5F1; font-family: 'Outfit', system-ui, sans-serif; color: #1A1A18;
  --forest: #1B3A2D; --saffron: #E07B2A; --muted: #6B6860; --rule: #D8D3CA;
}
html:not(#ncrk) .ncra-home__top {
  flex-shrink: 0; display: flex; align-items: center; gap: 12px;
  padding: calc(10px + env(safe-area-inset-top)) 16px 12px;
  background: #1B3A2D; color: #fff; border-bottom: 3px solid #E07B2A;
}
html:not(#ncrk) .ncra-home__logo { width: 42px; height: 42px; border-radius: 11px; flex-shrink: 0; }
html:not(#ncrk) .ncra-home__brand { flex: 1; min-width: 0; }
html:not(#ncrk) .ncra-home__name { display: block; font-family: 'Cormorant Garamond', serif; font-size: 26px; font-weight: 700; line-height: 1; }
html:not(#ncrk) .ncra-home__by { display: block; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: rgba(255,255,255,.7); margin-top: 3px; }
html:not(#ncrk) .ncra-home__site { padding: 8px 12px; border-radius: 999px; background: rgba(255,255,255,.12); color: #fff !important; font-size: 13px; font-weight: 700; text-decoration: none !important; white-space: nowrap; }
html:not(#ncrk) .ncra-home__scroll { flex: 1; overflow-y: auto; padding: 14px 14px 20px; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
html:not(#ncrk) .ncra-h { font-size: 19px; font-weight: 800; color: #1B3A2D; margin: 4px 2px 10px !important; display: flex; align-items: baseline; gap: 8px; }
html:not(#ncrk) .ncra-h small { font-size: 13px; font-weight: 600; color: #6B6860; }
html:not(#ncrk) .ncra-recent { margin-bottom: 18px; }
html:not(#ncrk) .ncra-recent[hidden] { display: none; }
html:not(#ncrk) .ncra-recent__list { display: flex; gap: 10px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
html:not(#ncrk) .ncra-recent__list::-webkit-scrollbar { display: none; }
html:not(#ncrk) .ncra-recent__item { flex-shrink: 0; width: 86px; display: flex; flex-direction: column; align-items: center; gap: 6px; text-decoration: none !important; }
html:not(#ncrk) .ncra-recent__icon { width: 72px; height: 72px; border-radius: 20px; display: flex; align-items: center; justify-content: center; font-size: 40px; background: var(--tile); box-shadow: 0 4px 0 rgba(0,0,0,.18); }
html:not(#ncrk) .ncra-recent__name { font-size: 12px; font-weight: 700; color: #1A1A18; text-align: center; line-height: 1.2; }

html:not(#ncrk) .ncra-sec { margin-bottom: 22px; }
html:not(#ncrk) .ncra-sec[hidden] { display: none; }
html:not(#ncrk) .ncra-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 12px; }
html:not(#ncrk) .ncra-tile {
  position: relative; display: flex; flex-direction: column; justify-content: flex-end;
  aspect-ratio: 1; padding: 12px; border-radius: 22px; overflow: hidden;
  background: var(--tile); color: var(--tile-on, #fff) !important; text-decoration: none !important;
  box-shadow: 0 5px 0 rgba(0,0,0,.2), 0 8px 18px rgba(0,0,0,.12);
}
html:not(#ncrk) .ncra-tile::before { content: ''; position: absolute; inset: 0; opacity: .08; background-image: repeating-linear-gradient(45deg, #fff 0, #fff 2px, transparent 0, transparent 50%); background-size: 22px 22px; }
html:not(#ncrk) .ncra-tile__icon { position: absolute; top: 12%; left: 50%; transform: translateX(-50%); font-size: clamp(46px, 13vw, 64px); line-height: 1; filter: drop-shadow(0 4px 0 rgba(0,0,0,.18)); }
html:not(#ncrk) .ncra-tile__name { position: relative; font-size: 17px; font-weight: 800; line-height: 1.15; }
html:not(#ncrk) .ncra-tile__badge { position: relative; font-size: 11px; font-weight: 700; opacity: .85; margin-top: 2px; }
html:not(#ncrk) .ncra-tile--soon { opacity: .45; box-shadow: none; filter: grayscale(.6); }

html:not(#ncrk) .ncra-news { margin: 6px 0 10px; padding: 14px; border-radius: 18px; background: #fff; border: 1px solid #EAE6DF; }
html:not(#ncrk) .ncra-news__item { display: flex; gap: 12px; align-items: center; padding: 8px 0; border-top: 1px solid #F0ECE5; text-decoration: none !important; color: #1A1A18 !important; }
html:not(#ncrk) .ncra-news__item:first-of-type { border-top: 0; }
html:not(#ncrk) .ncra-news__img { width: 64px; height: 64px; border-radius: 12px; object-fit: cover; flex-shrink: 0; background: #EAE6DF; }
html:not(#ncrk) .ncra-news__title { font-size: 15px; font-weight: 700; line-height: 1.3; }
html:not(#ncrk) .ncra-news__more { display: block; margin-top: 8px; font-weight: 800; color: #B5611C !important; text-decoration: none !important; }
html:not(#ncrk) .ncra-foot { text-align: center; font-size: 12px; color: #6B6860; padding: 6px 0 4px; }

html:not(#ncrk) .ncra-tabs {
  flex-shrink: 0; display: grid; grid-template-columns: repeat(5, 1fr);
  background: #fff; border-top: 1px solid #EAE6DF; padding: 6px 4px calc(6px + env(safe-area-inset-bottom));
}
html:not(#ncrk) .ncra-tab { display: flex; flex-direction: column; align-items: center; gap: 2px; min-height: 52px; border: 0; background: none; cursor: pointer; font: 700 11px 'Outfit', system-ui, sans-serif; color: #6B6860; border-radius: 12px; }
html:not(#ncrk) .ncra-tab__icon { font-size: 22px; line-height: 1.1; filter: grayscale(.8); opacity: .75; }
html:not(#ncrk) .ncra-tab.is-on { color: #1B3A2D; background: #EEF5F0; }
html:not(#ncrk) .ncra-tab.is-on .ncra-tab__icon { filter: none; opacity: 1; }
@media (min-width: 700px) { html:not(#ncrk) .ncra-tiles { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); } }

/*
 * Installed app, game pages: none of the website is ever shown (no flash of the page or
 * the site menu). A Game Adda splash shows until the game screen opens, which then
 * appears at once instead of sliding in.
 */
html:not(#ncrk).ncra-standalone:not(.ncra-failsafe) body.ncrk-body:not(.ncrk-hub) > *:not(.ncra):not(.ncrp):not(.ncra-scrim) { visibility: hidden !important; }
html:not(#ncrk).ncra-standalone body.ncrk-body { background: #F7F5F1; }
html:not(#ncrk).ncra-standalone:not(.ncra-failsafe):not(.ncra-open) body.ncrk-body:not(.ncrk-hub) {
  background: #1B3A2D url(app/icon-192.png) center 45% / 96px 96px no-repeat; overflow: hidden;
}
html:not(#ncrk).ncra-standalone .ncra { transition: none; transform: none; opacity: 1; }

/* "Get the app" button in the Game Adda header */
html:not(#ncrk) .ncra-getapp { margin-top: 18px; }
html:not(#ncrk) .ncra-getapp[hidden] { display: none; }
html:not(#ncrk) .ncra-getapp__btn { display: inline-flex; align-items: center; gap: 6px; min-height: 46px; padding: 10px 20px; border: 0; border-radius: 999px; background: var(--saffron, #E8A33D); color: #fff; font: 800 16px 'Outfit', sans-serif; cursor: pointer; box-shadow: 0 4px 0 rgba(0,0,0,.25); }
html:not(#ncrk) .ncra-getapp__btn:active { transform: translateY(2px); box-shadow: 0 2px 0 rgba(0,0,0,.25); }
html:not(#ncrk) .ncra-getapp__btn[hidden] { display: none; }


/* ── Playing: no top bar, just a pause button ──────────────────────── */
html:not(#ncrk) .ncra.is-play .ncra-bar { display: none; }
html:not(#ncrk) .ncra-pause {
  display: none; position: absolute; z-index: 5;
  top: calc(env(safe-area-inset-top) + 10px); left: calc(env(safe-area-inset-left) + 10px);
  width: 44px; height: 44px; border-radius: 50%; border: 0;
  background: rgba(27,58,45,.86); color: #fff; font-size: 18px; line-height: 1; cursor: pointer;
  box-shadow: 0 3px 10px rgba(0,0,0,.2);
}
html:not(#ncrk) .ncra.is-play:not(.has-exit) .ncra-pause { display: grid; place-items: center; }
html:not(#ncrk) .ncra.is-play:not(.has-exit) .ncrk-bar { padding-left: 54px; }
/* the game's own back button, now a pause button */
html:not(#ncrk) .ncra .ncrb-exit[data-ncra-pause] { display: inline-grid; place-items: center; font-size: 17px; background: var(--forest); color: #fff; border-color: var(--forest); }

/* ── Screens slide in, like an app ─────────────────────────────────── */
@keyframes ncra-screen { from { opacity: 0; transform: translateX(18px); } to { opacity: 1; transform: none; } }
html:not(#ncrk) .ncra .ncra-stage > *, html:not(#ncrk) .ncra .ncrk-area > * { animation: ncra-screen .24s cubic-bezier(.2,.7,.3,1) both; }
@media (prefers-reduced-motion: reduce) { html:not(#ncrk) .ncra .ncra-stage > *, html:not(#ncrk) .ncra .ncrk-area > * { animation: none; } }

/* ── Game menus (setup screens) look like an app lobby ─────────────── */
html:not(#ncrk) .ncra .ncra-main { background: linear-gradient(180deg, color-mix(in srgb, var(--age, #E07B2A) 14%, var(--off, #F6F3EC)) 0, var(--off, #F6F3EC) 260px); }
html:not(#ncrk) .ncra.is-play .ncra-main { background: var(--off, #F6F3EC); }
html:not(#ncrk) .ncra .ncrp-setup { max-width: 520px; margin: 0 auto; padding: 4px 4px 0; }
html:not(#ncrk) .ncra .ncrp-setup .ncrk-intro__icon { font-size: 64px; margin: 4px auto 6px; filter: drop-shadow(0 6px 10px rgba(0,0,0,.15)); }
html:not(#ncrk) .ncra .ncrp-levels, html:not(#ncrk) .ncra .ncrp-setup .ncrp-seats, html:not(#ncrk) .ncra .ncrb-setup .ncrb-seats {
  background: #fff; border-radius: 18px; padding: 12px 10px; margin: 0 0 10px; box-shadow: 0 2px 10px rgba(27,58,45,.07);
}
html:not(#ncrk) .ncra .ncrp-setup__tip, html:not(#ncrk) .ncra .ncrp-levels__note { font-size: 12.5px; }
/* the Start button stays at the bottom of the screen, under your thumb */
html:not(#ncrk) .ncra .ncrp-setup > .ncrk-btn--go {
  position: sticky; bottom: 0; z-index: 2; display: flex; width: min(100%, 420px); margin: 12px auto 0;
  min-height: 60px; font-size: 20px;
}
html:not(#ncrk) .ncra .ncrp-setup::after { content: ''; display: block; height: 8px; }

/* ── Pause menu ────────────────────────────────────────────────────── */
html:not(#ncrk) .ncra-sheet--pause .ncra-sheet__head { border-bottom: 0; margin-bottom: 4px; }
html:not(#ncrk) .ncra-pausego { display: flex; width: 100%; min-height: 58px; margin: 0 0 12px; font-size: 20px; }
html:not(#ncrk) .ncra-toggles { display: grid; grid-template-columns: repeat(auto-fit, minmax(84px, 1fr)); gap: 8px; margin-bottom: 10px; }
html:not(#ncrk) .ncra-toggle {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 74px; padding: 8px 4px;
  border: 2px solid #1B3A2D; border-radius: 16px; background: #EEF5F0; color: #1B3A2D; font: 700 13px 'Outfit', system-ui, sans-serif; cursor: pointer;
}
html:not(#ncrk) .ncra-toggle[hidden] { display: none; }
html:not(#ncrk) .ncra-toggle__icon { font-size: 24px; line-height: 1; }
html:not(#ncrk) .ncra-toggle.is-off { border-color: #D8D3CA; background: #fff; color: #6B6860; }
html:not(#ncrk) .ncra-toggle.is-off .ncra-toggle__icon { opacity: .45; }
html:not(#ncrk) .ncra-intro__more { display: block; margin: 0 auto; padding: 8px 14px; border: 0; border-radius: 999px; background: #F2EEE6; font: 700 14px 'Outfit', system-ui, sans-serif; color: #1B3A2D; cursor: pointer; }

html:not(#ncrk) .ncra-pause svg, html:not(#ncrk) .ncra .ncrb-exit[data-ncra-pause] svg { display: block; }
html:not(#ncrk) .ncra .ncrp-setup__cup { display: inline-flex; align-items: center; gap: 6px; padding: 10px 18px; border-radius: 999px; background: #fff; border: 2px solid var(--forest); text-decoration: none !important; box-shadow: 0 2px 8px rgba(27,58,45,.08); }
html:not(#ncrk) .ncra .ncrp-setup__how { font-size: 14px; font-weight: 600; }
/* Chess: the whole game sits in the middle of the screen */
html:not(#ncrk) .ncra .ncrc--play { min-height: calc(var(--ncra-avail, 100vh) - 20px); justify-content: center; }
/* Gully Cricket: the field takes the height that is left */
html:not(#ncrk) .ncra .ncrg { height: calc(var(--ncra-avail, 100vh) - 20px); }
/* Auto Jam: the board fits the height, the game sits in the middle */
html:not(#ncrk) .ncra .ncrj { min-height: calc(var(--ncra-avail, 100vh) - 20px); justify-content: center; }
html:not(#ncrk) .ncra .ncrj-boardwrap { width: min(100%, calc(var(--ncra-avail, 100vh) - 190px)); margin: 0 auto; }
html:not(#ncrk) .ncra .ncrr { height: calc(var(--ncra-avail, 100vh) - 20px); }

/* ── Today card (Game Adda home) ───────────────────────────────────── */
html:not(#ncrk) .ncra-today { margin: 0 0 22px; padding: 16px; border-radius: 20px; background: linear-gradient(140deg, #1B3A2D, #2E6B4F); color: #fff; box-shadow: 0 8px 24px rgba(27,58,45,.25); font-family: 'Outfit', system-ui, sans-serif; }
html:not(#ncrk) .ncra-today[hidden] { display: none; }
html:not(#ncrk) .ncra-today__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
html:not(#ncrk) .ncra-today__title { display: flex; flex-direction: column; }
html:not(#ncrk) .ncra-today__title strong { font-size: 22px; font-weight: 900; }
html:not(#ncrk) .ncra-today__title span { font-size: 13px; opacity: .8; }
html:not(#ncrk) .ncra-today__streak { padding: 7px 12px; border-radius: 999px; background: rgba(255,255,255,.12); font-weight: 800; font-size: 14px; white-space: nowrap; }
html:not(#ncrk) .ncra-today__streak.is-on { background: #F2B544; color: #3B2210; }
html:not(#ncrk) .ncra-today__list { display: grid; gap: 8px; }
html:not(#ncrk) .ncra-today__item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 14px; background: rgba(255,255,255,.1); color: #fff !important; text-decoration: none !important; }
html:not(#ncrk) .ncra-today__item.is-done { background: rgba(124,255,142,.16); }
html:not(#ncrk) .ncra-today__icon { font-size: 26px; }
html:not(#ncrk) .ncra-today__text { flex: 1; min-width: 0; display: flex; flex-direction: column; }
html:not(#ncrk) .ncra-today__text strong { font-size: 16px; }
html:not(#ncrk) .ncra-today__text span { font-size: 13px; opacity: .85; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html:not(#ncrk) .ncra-today__go { font-weight: 800; color: #F2B544; white-space: nowrap; }
html:not(#ncrk) .ncra-today__item.is-done .ncra-today__go { color: #7CFF8E; font-size: 20px; }
html:not(#ncrk) .ncra-today__foot { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
html:not(#ncrk) .ncra-today__badges, html:not(#ncrk) .ncra-today__share { flex: 1; min-height: 44px; padding: 8px 14px; border-radius: 12px; border: 0; font: 800 14.5px 'Outfit', system-ui, sans-serif; cursor: pointer; }
html:not(#ncrk) .ncra-today__badges { background: rgba(255,255,255,.14); color: #fff; }
html:not(#ncrk) .ncra-today__share { background: #F2B544; color: #3B2210; }
html:not(#ncrk) .ncra-home .ncra-today { margin: 4px 0 18px; }
/* badge list and the "badge unlocked" card */
html:not(#ncrk) .ncra-badges { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; margin-bottom: 10px; }
html:not(#ncrk) .ncra-badges__item { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 12px 8px; border-radius: 14px; background: #F3F1EC; text-align: center; opacity: .65; }
html:not(#ncrk) .ncra-badges__item.is-on { background: #FFF6E0; opacity: 1; box-shadow: inset 0 0 0 2px #F2B544; }
html:not(#ncrk) .ncra-badges__icon { font-size: 30px; }
html:not(#ncrk) .ncra-badges__item strong { font-size: 14px; color: #1B3A2D; }
html:not(#ncrk) .ncra-badges__item span { font-size: 12px; color: #6B6860; }
html:not(#ncrk) .ncra-badge { position: fixed; left: 50%; top: calc(env(safe-area-inset-top) + 14px); z-index: 2147483640; display: flex; align-items: center; gap: 12px; max-width: min(92vw, 420px); padding: 12px 16px; border-radius: 18px; background: linear-gradient(135deg, #F2B544, #E07B2A); color: #3B2210; box-shadow: 0 10px 30px rgba(0,0,0,.3); transform: translate(-50%, -140%); transition: transform .35s cubic-bezier(.2,1.3,.4,1); pointer-events: none; font-family: 'Outfit', system-ui, sans-serif; }
html:not(#ncrk) .ncra-badge.is-in { transform: translate(-50%, 0); }
html:not(#ncrk) .ncra-badge__icon { font-size: 34px; }
html:not(#ncrk) .ncra-badge__text { display: flex; flex-direction: column; }
html:not(#ncrk) .ncra-badge__text strong { font-size: 16px; font-weight: 900; }
html:not(#ncrk) .ncra-badge__text span { font-size: 13px; }
html:not(#ncrk) .ncra .ncrd { height: calc(var(--ncra-avail, 100vh) - 20px); min-height: 0; }
html:not(#ncrk) .ncra .ncrq { height: calc(var(--ncra-avail, 100vh) - 20px); min-height: 0; }
html:not(#ncrk) .ncra .ncrw { height: calc(var(--ncra-avail, 100vh) - 20px); min-height: 0; }
html:not(#ncrk) .ncra .ncrgr { height: calc(var(--ncra-avail, 100vh) - 20px); min-height: 0; }
html:not(#ncrk) .ncra .ncrrb { min-height: calc(var(--ncra-avail, 100vh) - 20px); }

html:not(#ncrk) .ncrk-css-app{position:absolute;z-index:7}
