@charset "utf-8";

*, ::before, ::after { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; }

::backdrop { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; }

*, ::after, ::before { box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 231, 235); }

::after, ::before { --tw-content: ''; }

:host, html { line-height: 1.5; text-size-adjust: 100%; tab-size: 4; font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-feature-settings: normal; font-variation-settings: normal; -webkit-tap-highlight-color: transparent; }

body { margin: 0px; line-height: inherit; }

hr { height: 0px; color: inherit; border-top-width: 1px; }

abbr:where([title]) { text-decoration: underline dotted; }

h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }

a { color: inherit; text-decoration: inherit; }

b, strong { font-weight: bolder; }

code, kbd, pre, samp { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-feature-settings: normal; font-variation-settings: normal; font-size: 1em; }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

table { text-indent: 0px; border-color: inherit; border-collapse: collapse; }

button, input, optgroup, select, textarea { font-family: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 100%; font-weight: inherit; line-height: inherit; letter-spacing: inherit; color: inherit; margin: 0px; padding: 0px; }

button, select { text-transform: none; }

button, input:where([type="button"]), input:where([type="reset"]), input:where([type="submit"]) { appearance: button; background-color: transparent; background-image: none; }

progress { vertical-align: baseline; }

::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; }

[type="search"] { appearance: textfield; outline-offset: -2px; }

::-webkit-search-decoration { appearance: none; }

::-webkit-file-upload-button { appearance: button; font: inherit; }

summary { display: list-item; }

blockquote, dd, dl, figure, h1, h2, h3, h4, h5, h6, hr, p, pre { margin: 0px; }

fieldset { margin: 0px; padding: 0px; }

legend { padding: 0px; }

menu, ol, ul { list-style: none; margin: 0px; padding: 0px; }

dialog { padding: 0px; }

textarea { resize: vertical; }

input::placeholder, textarea::placeholder { opacity: 1; color: rgb(156, 163, 175); }

[role="button"], button { cursor: pointer; }

:disabled { cursor: default; }

audio, canvas, embed, iframe, img, object, svg, video { display: block; vertical-align: middle; }

img, video { max-width: 100%; height: auto; }

[hidden]:where(:not([hidden="until-found"])) { display: none; }

.container { width: 100%; }

@media (min-width: 640px) {
  .container { max-width: 640px; }
}

@media (min-width: 768px) {
  .container { max-width: 768px; }
}

@media (min-width: 1024px) {
  .container { max-width: 1024px; }
}

@media (min-width: 1280px) {
  .container { max-width: 1280px; }
}

@media (min-width: 1536px) {
  .container { max-width: 1536px; }
}
@charset "utf-8";

:root { --bg: #040405; --tango: #9b3d3d; --cash: #27496d; --neutral: #6f8b6a; --accent: #e11d48; --ease: cubic-bezier(.2,.9,.2,1); --banner-height: 64px; }

html, body { height: 100%; margin: 0px; background: linear-gradient(rgb(4, 4, 5), rgb(7, 16, 24)); font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial; color: rgb(230, 238, 246); }

.page { min-height: 100vh; display: flex; flex-direction: column; gap: 14px; padding: 18px; box-sizing: border-box; }

.container { max-width: 1280px; margin: 0px auto; display: grid; grid-template-columns: 1fr; gap: 18px; }

.banner { position: fixed; left: 0px; right: 0px; top: 0px; height: var(--banner-height); display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 1.2rem; z-index: 120; transform: translateY(-120%); transition: transform 0.28s; }

.banner.show { transform: translateY(0px); }

.neon { animation: 900ms linear 0s infinite normal none running neon-flash; }

@keyframes neon-flash { 
  0% { filter: drop-shadow(rgba(0, 0, 0, 0) 0px 0px 0px); opacity: 0.95; }
  25% { filter: drop-shadow(rgba(255, 255, 255, 0.05) 0px 0px 28px); opacity: 1; }
  50% { filter: drop-shadow(rgba(255, 255, 255, 0.12) 0px 0px 34px); opacity: 0.98; }
  75% { filter: drop-shadow(rgba(255, 255, 255, 0.05) 0px 0px 28px); opacity: 1; }
  100% { filter: drop-shadow(rgba(0, 0, 0, 0) 0px 0px 0px); opacity: 0.95; }
}

.toolbar { display: flex; justify-content: space-between; align-items: center; gap: 10px; }

.mode-row { display: flex; gap: 8px; }

.btn { background: rgb(17, 17, 17); border: 1px solid rgba(255, 255, 255, 0.04); padding: 8px 12px; border-radius: 10px; font-weight: 800; cursor: pointer; color: rgb(230, 238, 246); }

.btn.active { background: var(--accent); border-color: rgb(255, 255, 255); box-shadow: rgba(225, 29, 72, 0.12) 0px 8px 26px; }

.muted { color: rgb(159, 179, 198); font-size: 0.92rem; }

.wall { background: linear-gradient(rgb(7, 7, 7), rgb(15, 17, 20)); padding: 14px; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.6) 0px 18px 60px; min-height: 520px; }

.cart-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }

.cart { position: relative; border-radius: 12px; padding: 12px; overflow: hidden; cursor: pointer; border: 1px solid rgba(255, 255, 255, 0.03); transition: transform .18s var(--ease),box-shadow .18s var(--ease),opacity .18s ease; }

.cart:hover { transform: translateY(-6px); box-shadow: rgba(0, 0, 0, 0.6) 0px 22px 40px; }

.left-strip { position: absolute; left: 0px; top: 0px; bottom: 0px; width: 8px; }

.mini { position: absolute; top: 10px; left: 12px; padding: 6px 8px; border-radius: 8px; background: rgba(0, 0, 0, 0.35); font-weight: 800; font-size: 0.82rem; }

.check { position: absolute; top: 10px; right: 12px; padding: 6px 8px; border-radius: 8px; background: rgba(0, 0, 0, 0.35); font-weight: 900; display: none; }

.cart.used .check { display: block; }

.title { font-weight: 900; letter-spacing: 0.6px; margin-bottom: 8px; }

.q-hidden { height: 62px; border-radius: 8px; background: linear-gradient(90deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0.01)); display: flex; align-items: center; justify-content: center; color: transparent; text-shadow: rgba(0, 0, 0, 0.8) 0px 0px 8px; filter: blur(2px); padding: 10px; font-weight: 800; }

.q-text { height: 62px; border-radius: 8px; display: flex; align-items: center; justify-content: center; padding: 8px 10px; font-weight: 800; text-align: center; }

.status { position: absolute; bottom: 10px; left: 12px; font-weight: 800; color: rgb(159, 179, 198); font-size: 0.88rem; }

.cart.cat-TANGO .left-strip { background: var(--tango); }

.cart.cat-CASH .left-strip { background: var(--cash); }

.cart.cat-& .left-strip { background: var(--neutral); }

.overlay { position: fixed; inset: 0px; z-index: 100; display: none; align-items: center; justify-content: center; transition: opacity 0.18s; }

.overlay.show { display: flex; background: rgb(0, 0, 0); }

.card { width: 86vw; max-width: 980px; height: 74vh; max-height: 680px; border-radius: 12px; display: flex; align-items: center; justify-content: center; padding: 28px; box-shadow: rgba(0, 0, 0, 0.8) 0px 40px 110px; position: relative; transform-origin: center center; transition: transform .45s var(--ease),opacity .25s; }

.card.flyin { transform: scale(1) translateY(0px); opacity: 1; }

.card.flyout { transform: scale(0.98) translateY(20px); opacity: 0; }

.card .meta { position: absolute; top: 18px; left: 18px; font-weight: 800; color: rgb(255, 255, 255); }

.card .close { position: absolute; top: 18px; right: 18px; padding: 8px 12px; border-radius: 8px; background: rgba(255, 255, 255, 0.04); font-weight: 800; cursor: pointer; }

.card .text { font-size: 2rem; text-align: center; line-height: 1.2; max-width: 86%; font-weight: 800; color: inherit; }

.flip-wrap { width: 100%; height: 100%; perspective: 1400px; }

.flip-card { width: 100%; height: 100%; position: relative; transform-style: preserve-3d; transition: transform .68s var(--ease); }

.flip-card.flipped { transform: rotateY(180deg); }

.face { position: absolute; inset: 0px; border-radius: 10px; display: flex; align-items: center; justify-content: center; padding: 28px; backface-visibility: hidden; }

.front { color: rgb(255, 255, 255); }

.back { transform: rotateY(180deg); color: rgb(17, 17, 17); }

.card-actions { position: absolute; bottom: 22px; left: 50%; transform: translateX(-50%); display: flex; gap: 12px; }

.card-btn { padding: 10px 14px; border-radius: 10px; font-weight: 900; border: 0px; cursor: pointer; }

.card-btn.none { background: rgb(51, 51, 51); color: rgb(255, 255, 255); }

.card-btn.cancel { background: transparent; border: 1px solid rgba(255, 255, 255, 0.06); color: rgb(221, 221, 221); }

.card-btn.tango { background: var(--tango); color: rgb(255, 255, 255); }

.card-btn.cash { background: var(--cash); color: rgb(255, 255, 255); }

.scorebar { position: fixed; left: 0px; right: 0px; bottom: 0px; z-index: 90; background: linear-gradient(90deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4)); padding: 12px 18px; display: flex; justify-content: center; gap: 18px; align-items: center; backdrop-filter: blur(4px); }

.scoreplate { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 8px 16px; border-radius: 12px; background: rgba(255, 255, 255, 0.02); min-width: 160px; }

.scoreplate .label { font-weight: 900; }

.scoreplate .num { font-size: 1.6rem; font-weight: 900; }

.controls { display: flex; gap: 8px; align-items: center; }

.undo, .reset { padding: 8px 12px; border-radius: 10px; background: rgb(16, 16, 16); border: 1px solid rgba(255, 255, 255, 0.04); font-weight: 800; cursor: pointer; }

.bonus-row { display: flex; gap: 8px; align-items: center; margin-left: 10px; }

.bonus-btn { padding: 8px 10px; border-radius: 10px; background: rgb(17, 17, 17); border: 1px solid rgba(255, 255, 255, 0.04); font-weight: 800; color: rgb(255, 255, 255); cursor: pointer; }

.history-mini { position: fixed; right: 18px; bottom: 86px; z-index: 85; max-width: 320px; max-height: 280px; overflow: auto; padding: 10px; border-radius: 10px; background: rgba(0, 0, 0, 0.45); color: rgb(207, 231, 247); font-size: 0.92rem; }

.hist-item { padding: 8px; border-bottom: 1px dashed rgba(255, 255, 255, 0.03); }

@media (max-width: 900px) {
  .cart-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }
  .card { width: 92vw; height: 72vh; }
  .scorebar { flex-direction: column; gap: 8px; }
}