:root {
  --bg: #fff8f4;
  --bg-2: #f7f1ff;
  --card: #fffdfc;
  --paper: #fffefa;
  --text: #443c52;
  --muted: #8d8398;
  --line: #eadff0;
  --pink: #ff6f91;
  --pink-dark: #e84f78;
  --pink-soft: #ffe8ef;
  --lavender: #9f7eff;
  --lavender-dark: #765bd4;
  --lavender-soft: #eee8ff;
  --peach: #ffad73;
  --peach-soft: #fff0e5;
  --yellow: #ffd86b;
  --yellow-soft: #fff8d8;
  --danger: #e85d72;
  --shadow: 0 18px 48px rgba(91, 70, 111, .13);
  --soft-shadow: 0 9px 24px rgba(91, 70, 111, .09);
  font-family: Pretendard, "Arial Rounded MT Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans KR", sans-serif;
}* { box-sizing: border-box; }html, body { min-width: 320px; min-height: 100%; }body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 12% 12%, rgba(255, 216, 107, .24), transparent 24%),
    radial-gradient(circle at 86% 12%, rgba(159, 126, 255, .14), transparent 28%),
    radial-gradient(circle at 83% 88%, rgba(255, 111, 145, .12), transparent 25%),
    linear-gradient(145deg, #fffaf6 0%, #f8f3ff 52%, #fff6f8 100%);
}body::before,
body::after {
  content: "";
  position: fixed;
  pointer-events: none;
  z-index: -1;
  border-radius: 50%;
  filter: blur(1px);
}body::before { width: 220px; height: 220px; left: -90px; bottom: -70px; background: rgba(255, 173, 115, .12); }body::after { width: 250px; height: 250px; right: -100px; top: -80px; background: rgba(159, 126, 255, .10); }button, input { font: inherit; }button { cursor: pointer; }button:disabled { cursor: not-allowed; opacity: .45; }.hidden { display: none !important; }.app-shell {
  position: relative;
  width: min(97vw, calc(97vh * 16 / 9));
  aspect-ratio: 16 / 9;
  margin: 1.5vh auto;
  padding: clamp(18px, 2.3vw, 34px);
  overflow: auto;
  background: rgba(255, 253, 252, .92);
  border: 2px solid rgba(234, 223, 240, .9);
  border-radius: 32px;
  box-shadow: 0 28px 90px rgba(91, 70, 111, .16);
}.app-shell::before,
.app-shell::after {
  position: absolute;
  pointer-events: none;
  z-index: 0;
  font-size: clamp(23px, 2.645vw, 38.08px);
  opacity: .55;
}.app-shell::before { content: "✦"; left: 2.4%; top: 2.2%; color: var(--peach); transform: rotate(-14deg); }.app-shell::after { content: "✧"; right: 2.6%; bottom: 2.4%; color: var(--lavender); transform: rotate(12deg); }.app-shell > * { position: relative; z-index: 1; }body[data-view="game"] .app-shell,
body[data-view="result"] .app-shell {
  overflow: hidden;
  padding: 0;
  background: #fffafc;
}.hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 18px; }.hero-copy { max-width: 72%; }.hero-side { display: flex; align-items: center; gap: 14px; }.hero-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }.hero-mascot {
  position: relative;
  width: 78px;
  height: 78px;
  display: grid;
  place-items: center;
  border-radius: 28px 28px 32px 32px;
  background: linear-gradient(145deg, var(--yellow-soft), #fff3c0);
  border: 2px solid #ffe49b;
  box-shadow: var(--soft-shadow);
  transform: rotate(3deg);
}.mascot-face { font-size: 51.52px; line-height: 1; filter: saturate(.9); }.mascot-spark { position: absolute; right: -7px; top: -12px; color: var(--pink); font-size: 29.12px; transform: rotate(10deg); }.eyebrow, .step-tag { color: var(--pink-dark); font-size: 13px; font-weight: 950; letter-spacing: .14em; }h1 { margin: 5px 0 7px; font-size: clamp(33.6px, 5.06vw, 60.48px); line-height: 1; letter-spacing: -.055em; color: #453b56; text-shadow: 0 3px 0 #fff; }h2 { margin: 5px 0 0; font-size: 26.88px; letter-spacing: -.04em; }h3 { margin: 0; font-size: 19px; }.sub, .wizard-head p, .setting-block p, .result-titlebar p { margin: 7px 0 0; color: var(--muted); line-height: 1.55; }.stepper { display: flex; align-items: center; margin: 0 0 18px; padding: 0 5px; }.step-line { height: 3px; flex: 1; min-width: 10px; border-radius: 999px; background: #eee6f1; margin-bottom: 18px; }.card {
  background: rgba(255,255,255,.96);
  border: 2px solid #f0e5f2;
  border-radius: 28px;
  padding: clamp(22px, 2.4vw, 32px);
  box-shadow: var(--shadow);
}.wizard-head { max-width: 720px; }.count-stepper { width: min(330px,100%); margin: 34px auto 0; display: grid; grid-template-columns: 72px 1fr 72px; align-items: center; gap: 13px; }.count-control {
  height: 64px; border: 2px solid #eadff0; border-radius: 23px; background: #fff;
  color: #635873; font-size: 33.6px; font-weight: 950; transition: .16s;
  box-shadow: 0 7px 0 #f1e8f4;
}.count-control:hover:not(:disabled) { transform: translateY(-2px); border-color: #ffc2d1; background: var(--pink-soft); color: var(--pink-dark); }.count-control:active:not(:disabled) { transform: translateY(3px); box-shadow: 0 3px 0 #f1e8f4; }.count-value {
  height: 80px; display: grid; place-items: center; border-radius: 26px;
  background: linear-gradient(145deg, #fff1f5, #f3edff); border: 3px solid #ffc1d1;
  color: var(--pink-dark); font-size: 44.8px; font-weight: 950; box-shadow: inset 0 0 0 5px rgba(255,255,255,.58), 0 10px 24px rgba(255,111,145,.12);
}.count-help { margin: 13px 0 0; text-align: center; color: var(--muted); font-size: 14px; }.last-settings-badge {
  width: fit-content; max-width: 100%; margin: 14px auto 0; padding: 9px 14px; border-radius: 999px;
  border: 2px solid #eadff0; background: linear-gradient(145deg, #fff8fb, #f5f0ff);
  color: #756a80; font-size: 14px; font-weight: 900; text-align: center;
}.mode-switch-panel {
  margin-top: 28px; display: flex; align-items: center; justify-content: space-between; gap: 20px;
  padding: 24px; border: 2px solid #eadff0; border-radius: 28px;
  background: linear-gradient(145deg, #fffdfb, #f9f5ff); box-shadow: 0 8px 0 #f1eaf4;
}.mode-current { display: flex; align-items: center; gap: 16px; min-width: 0; }.mode-current .mode-icon { margin: 0; flex: 0 0 auto; }.mode-current strong { display: block; margin-top: 3px; font-size: 24.64px; color: #51465f; }.mode-current p { margin: 5px 0 0; color: var(--muted); font-size: 16px; }.mode-kicker { color: var(--pink-dark); font-size: 13px; font-weight: 950; letter-spacing: .08em; }.mode-toggle-btn {
  flex: 0 0 auto; border: 2px solid #dcd0ef; border-radius: 17px; padding: 13px 17px;
  background: var(--lavender-soft); color: var(--lavender-dark); font-weight: 950; box-shadow: 0 5px 0 #ddd3f5;
  transition: .15s;
}.mode-toggle-btn:hover { transform: translateY(-2px); background: #e7dfff; }.mode-toggle-btn:active { transform: translateY(2px); box-shadow: 0 2px 0 #ddd3f5; }.mode-toggle-btn.custom-active { background: var(--yellow-soft); color: #886b19; border-color: #f1dda0; box-shadow: 0 5px 0 #eadbaf; }.mode-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 28px; }.mode-card {
  min-height: 178px; border: 2px solid #eadff0; border-radius: 27px; background: #fff;
  padding: 25px; display: grid; justify-items: start; align-content: center; text-align: left;
  transition: .18s; box-shadow: 0 7px 0 #f4edf6;
}.mode-card:hover { transform: translateY(-3px) rotate(-.3deg); box-shadow: 0 12px 26px rgba(91,70,111,.10); }.mode-card.active { border-color: #ffb6c8; background: linear-gradient(145deg, #fff4f7, #f8f4ff); box-shadow: 0 8px 0 #ffe2e9, 0 16px 30px rgba(255,111,145,.10); }.mode-icon {
  width: 56px; height: 56px; display: grid; place-items: center; border-radius: 20px;
  font-size: 35.84px; margin-bottom: 13px; background: var(--yellow-soft); border: 1px solid #ffe8a7;
}.mode-card:nth-child(2) .mode-icon { background: var(--lavender-soft); border-color: #ded3ff; }.mode-title { font-weight: 950; font-size: 22px; margin-bottom: 6px; }.mode-desc { color: var(--muted); line-height: 1.5; }.setting-block {
  display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 25px; padding: 19px;
  border: 2px solid #f0e6f2; border-radius: 22px; background: linear-gradient(145deg, #fffdfa, #fcf8ff);
}.segmented { display: flex; padding: 5px; border-radius: 17px; background: #f1eaf4; flex: 0 0 auto; }.segment { min-width: 72px; border: 0; background: transparent; border-radius: 13px; padding: 9px 13px; font-weight: 900; color: var(--muted); }.segment.active { background: white; color: var(--pink-dark); box-shadow: 0 4px 12px rgba(91,70,111,.10); }.field-block { display: grid; gap: 8px; margin-top: 18px; }.field-block > span { font-size: 16px; font-weight: 900; color: #62576d; }input { width: 100%; border: 2px solid #eadff0; border-radius: 16px; padding: 13px 14px; outline: none; transition: .15s; background: #fffdfd; color: var(--text); }input:focus { border-color: #ffb2c5; box-shadow: 0 0 0 4px rgba(255,111,145,.10); }.result-preview-wrap { margin-top: 23px; }.section-title-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 21px 0 11px; }.result-list, .result-input-list { display: grid; gap: 9px; }.result-row {
  display: grid; grid-template-columns: 42px 1fr; align-items: center; gap: 10px; min-height: 50px;
  border: 2px solid #f0e6f2; background: #fffdfd; border-radius: 17px; padding: 6px 12px 6px 7px;
}.result-row .line-num, .result-input-row .line-num {
  width: 35px; height: 35px; display: grid; place-items: center; border-radius: 13px;
  background: var(--lavender-soft); color: var(--lavender-dark); font-size: 13px; font-weight: 950;
}.result-row .result-text { font-weight: 900; }.result-row .result-text.penalty { color: var(--danger); }.result-input-row { display: grid; grid-template-columns: 42px 1fr; align-items: center; gap: 9px; }.wizard-actions { display: flex; gap: 10px; margin-top: 28px; }.wizard-actions.end { justify-content: flex-end; }.wizard-actions.split { justify-content: space-between; }.primary-btn, .secondary-btn, .ghost-btn, .tiny-btn, .icon-btn { border: 0; font-weight: 900; transition: .15s; }.primary-btn {
  min-width: 145px; padding: 13px 18px; border-radius: 16px; background: linear-gradient(135deg, var(--pink), #ff8ca7); color: white;
  box-shadow: 0 7px 0 #d94f71, 0 11px 20px rgba(255,111,145,.18);
}.primary-btn:hover { transform: translateY(-2px); filter: saturate(1.05); }.primary-btn:active { transform: translateY(3px); box-shadow: 0 3px 0 #d94f71; }.secondary-btn { padding: 12px 15px; border-radius: 15px; background: #f2ecf5; color: #62576c; box-shadow: 0 5px 0 #e4dae9; }.secondary-btn:hover { background: #eee5f2; transform: translateY(-1px); }.ghost-btn { padding: 10px 13px; border-radius: 14px; background: rgba(255,255,255,.75); color: #756a80; border: 2px solid #eadff0; }.ghost-btn:hover { background: #fff4f7; border-color: #ffc6d4; color: var(--pink-dark); }.tiny-btn { padding: 8px 11px; border-radius: 12px; background: var(--lavender-soft); color: var(--lavender-dark); font-size: 14px; }.tiny-btn:hover { transform: translateY(-1px); background: #e8e0ff; }.icon-btn { width: 36px; height: 36px; border-radius: 13px; background: #f3edf5; font-size: 25.76px; line-height: 1; color: #796e82; }.game-screen { width: 100%; height: 100%; position: relative; background: #fff9fb; }.game-titlebar {
  height: 11%; min-height: 64px; padding: 0 2.6%; display: flex; align-items: center; justify-content: space-between; gap: 16px;
  border-bottom: 2px solid #f0e4ef; background: rgba(255,253,253,.97);
}.game-title-group { display: flex; align-items: center; gap: 13px; }.title-mascot {
  width: 46px; height: 46px; display: grid; place-items: center; border-radius: 16px;
  background: var(--yellow-soft); border: 1px solid #ffe3a0; font-size: 32.48px; transform: rotate(-3deg);
}.game-title-group h2 { margin: 0; font-size: clamp(31.36px, 3.105vw, 44.8px); }.game-status { padding: 8px 12px; border-radius: 999px; background: var(--lavender-soft); color: var(--lavender-dark); font-size: 16px; font-weight: 950; letter-spacing: .11em; }.title-actions { display: flex; gap: 7px; }.title-btn { border: 2px solid #eee3ef; border-radius: 14px; padding: 10px 14px; background: #fff; color: #756a80; font-size: 18px; font-weight: 900; }.title-btn:hover { background: var(--pink-soft); border-color: #ffc4d2; color: var(--pink-dark); }.sound-toggle { min-width: 124px; }.sound-toggle.muted { background: #f4eef6; color: #9a8da3; border-color: #e5dbe8; }.sound-toggle:active { transform: translateY(1px); }.paper-topbar { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 48px; }.blind-title { display: flex; align-items: center; gap: 10px; min-width: 0; color: #8b8095; }.blind-title strong { color: #5f5469; font-size: 19px; letter-spacing: .10em; }.blind-title > span:last-child { font-size: 18px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }.blind-dot { width: 12px; height: 12px; border-radius: 50%; background: var(--peach); box-shadow: 0 0 0 5px rgba(255,173,115,.14); flex: 0 0 auto; }.board-inner { height: 100%; min-width: 620px; display: grid; grid-template-rows: 100px 1fr 60px; position: relative; }.top-labels { height: 100px; }.top-label-stack {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  width: var(--name-width, 88px);
  z-index: 2;
}.player-name-input {
  width: 100%;
  min-width: 0;
  height: 32px;
  padding: 5px 6px;
  border: 2px solid #e8dfea;
  border-radius: 11px;
  outline: none;
  background: rgba(255,255,255,.96);
  color: #554a65;
  text-align: center;
  font-size: 14px;
  font-weight: 850;
  box-shadow: 0 3px 0 rgba(99,82,116,.06);
  transition: border-color .16s, background .16s, box-shadow .16s;
}.player-name-input::placeholder { color: #b4a9b9; font-weight: 750; }.player-name-input:focus {
  border-color: #b7a8c4;
  background: #fff;
  box-shadow: 0 3px 0 rgba(99,82,116,.08), 0 0 0 4px rgba(159,126,255,.10);
}.top-label-stack .label-chip {
  position: static;
  left: auto;
  top: auto;
  transform: none;
  min-width: 52px;
}.top-label-stack .label-chip:hover,
.top-label-stack .label-chip.active { transform: translateY(-2px); }.top-label-stack .label-chip.played:hover,
.top-label-stack .label-chip.played.active { transform: translateY(-2px); }.label-chip {
  position: absolute; top: 50%; transform: translate(-50%, -50%); min-width: 52px; max-width: 150px; padding: 10px 13px;
  border: 2px solid #e4dce9;
  border-radius: 17px; text-align: center; font-size: 19px; font-weight: 950; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  transition: .16s; box-shadow: 0 4px 0 rgba(99,82,116,.08);
  color: #51475f; background: #fffafd;
}.bottom-labels .label-chip { color: #665a6e; background: #fffdfb; }.label-chip:hover, .label-chip.active {
  border-color: #b9acc5 !important; background: #f5eff8 !important;
  color: #443c52 !important; transform: translate(-50%, calc(-50% - 2px));
}.label-chip.played {
  border-color: var(--played-color, #b9acc5) !important;
  background: var(--played-bg, #f1ebf5) !important;
  color: var(--played-color, #443c52) !important;
  box-shadow: 0 5px 0 var(--played-shadow, rgba(99,82,116,.11));
}.label-chip.played:hover,
.label-chip.played.active {
  border-color: var(--played-color, #b9acc5) !important;
  background: var(--played-bg, #f1ebf5) !important;
  color: var(--played-color, #443c52) !important;
}.label-chip.played::after{content:none!important;}.paper-footer { min-height: 60px; display: flex; align-items: center; justify-content: space-between; gap: 10px; border-top: 2px dashed #eee2ef; padding-top: 7px; }.result-toast { min-width: 0; color: #756b7e; font-size: 19px; font-weight: 850; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }.result-toast.show { color: var(--pink-dark); }.result-toast.playing { color: #c77239; }.paper-actions { display: flex; gap: 8px; flex-wrap: nowrap; }.paper-btn { border: 0; background: transparent; color: #74697e; padding: 10px 12px; border-radius: 12px; font-size: 17px; font-weight: 900; white-space: nowrap; }.paper-btn:hover { background: #f5edf6; color: #5a4f65; }.paper-btn.strong { color: #fff; background: var(--pink); box-shadow: 0 4px 0 #d94f71; }.paper-btn.strong:hover { background: var(--pink-dark); }.result-titlebar { padding: 3.2% 4%; display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; border-bottom: 2px solid #efe4ef; background: rgba(255,255,255,.95); }.result-titlebar h2 { margin-top: 4px; font-size: clamp(28px, 3.68vw, 48.16px); }.result-actions { display: flex; gap: 8px; }.result-board { min-height: 0; overflow: auto; padding: 3% 4%; }.summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 13px; }.summary-item {
  position: relative; overflow: hidden; border: 2px solid #e9e0ed; border-radius: 22px;
  background: linear-gradient(145deg, #fffafd, #fff); padding: 17px;
  box-shadow: 0 8px 0 #f2ebf4, 0 12px 24px rgba(91,70,111,.07);
}.summary-item::after { content: "✦"; position: absolute; right: 12px; top: 9px; color: #ffd06a; opacity: .75; }.summary-item .who { color: var(--muted); font-size: 13px; font-weight: 900; margin-bottom: 7px; }.summary-item .what { font-size: 22px; font-weight: 950; color: #554a65; }.summary-item .line { margin-top: 6px; font-size: 12px; color: #aaa0b0; }.modal { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 18px; background: rgba(65,52,76,.42); backdrop-filter: blur(6px); }.modal-card { width: min(480px, 96vw); max-height: 86vh; overflow: auto; border: 2px solid #eee2ef; border-radius: 27px; background: #fffdfd; padding: 24px; box-shadow: 0 28px 90px rgba(65,52,76,.26); }.wide-modal { width: min(720px, 96vw); }.modal-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }.modal-note { margin: 14px 0 0; padding: 12px 13px; border-radius: 15px; background: linear-gradient(145deg, #fff2f6, #f3efff); color: #776b80; font-size: 13px; line-height: 1.55; }.modal-actions { display: flex; justify-content: flex-end; margin-top: 20px; }.saved-list { display: grid; gap: 10px; margin-top: 16px; }.saved-item { display: flex; align-items: center; justify-content: space-between; gap: 15px; border: 2px solid #eee3ef; border-radius: 17px; padding: 13px; background: #fff; }.saved-name { font-weight: 950; }.saved-meta { margin-top: 4px; color: var(--muted); font-size: 13px; }.saved-actions { display: flex; gap: 7px; flex: 0 0 auto; }.delete-btn { border: 0; border-radius: 13px; padding: 9px 11px; background: #fff0f2; color: #d34f68; font-weight: 900; }.saved-empty { padding: 29px; text-align: center; color: var(--muted); border: 2px dashed #e7dce9; border-radius: 17px; background: #fffbfd; }body[data-view="hub"] .app-shell {
  overflow: hidden;
  padding: 0;
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 216, 107, .26), transparent 23%),
    radial-gradient(circle at 89% 16%, rgba(159, 126, 255, .20), transparent 24%),
    linear-gradient(145deg, #fff7fb 0%, #f8f2ff 48%, #fff8e8 100%);
}body[data-view="hub"] .app-shell::before,
body[data-view="hub"] .app-shell::after { display: none; }.hub-screen {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: 43% 1fr auto;
  overflow: hidden;
}.hub-screen::before {
  content: "";
  position: absolute;
  width: 36%;
  aspect-ratio: 1;
  left: -13%;
  top: -24%;
  border-radius: 50%;
  background: rgba(255, 150, 180, .10);
  border: 28px solid rgba(255,255,255,.42);
  pointer-events: none;
}.hub-screen::after {
  content: "";
  position: absolute;
  width: 30%;
  aspect-ratio: 1;
  right: -12%;
  bottom: -26%;
  border-radius: 50%;
  background: rgba(140,124,255,.10);
  border: 24px solid rgba(255,255,255,.45);
  pointer-events: none;
}.hub-spark { position: absolute; z-index: 2; font-weight: 950; pointer-events: none; }.hub-spark-one { left: 8%; top: 10%; color: var(--peach); font-size: clamp(26.88px,3.45vw,56px); transform: rotate(-12deg); }.hub-spark-two { right: 9%; top: 17%; color: var(--lavender); font-size: clamp(26.88px,3.45vw,53.76px); transform: rotate(14deg); }.hub-hero {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: center;
  justify-items: center;
  text-align: center;
  padding: 3% 5% 1%;
}.hub-logo {
  width: clamp(62px, 6.3vw, 98px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  margin-bottom: .7%;
  border-radius: 34% 34% 39% 39%;
  font-size: clamp(38.08px, 4.14vw, 62.72px);
  background: linear-gradient(145deg, #fff7ca, #ffe7ad);
  border: 3px solid #ffe090;
  box-shadow: 0 10px 0 rgba(234,193,92,.22), 0 18px 34px rgba(91,70,111,.10);
  transform: rotate(-3deg);
}.hub-kicker { margin: 0 0 .6%; color: var(--pink-dark); font-size: clamp(12px, 1.035vw, 17px); font-weight: 950; letter-spacing: .18em; }.hub-hero h1 {
  margin: 0;
  font-size: clamp(40.32px, 5.75vw, 85.12px);
  line-height: .93;
  letter-spacing: -.07em;
  color: #4c405d;
  text-shadow: 0 4px 0 #fff;
}.hub-hero h1 span {
  display: inline-block;
  margin-top: .08em;
  color: var(--pink-dark);
}.hub-sub { margin: 1.1% 0 0; color: #82758d; font-size: clamp(14px, 1.438vw, 22px); font-weight: 850; }.hub-game-area {
  position: relative;
  z-index: 3;
  min-height: 0;
  padding: 0 5.2% 1.6%;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 2.2%;
}.hub-section-title { display: flex; align-items: end; justify-content: space-between; gap: 16px; }.hub-section-title span { color: var(--lavender-dark); font-size: clamp(11px,0.92vw,14px); font-weight: 950; letter-spacing: .14em; }.hub-section-title h2 { margin: 3px 0 0; font-size: clamp(22px,2.3vw,34.72px); }.hub-count { padding: 8px 12px; border-radius: 999px; background: rgba(255,255,255,.78); border: 2px solid #eadff0; color: #887b92; font-size: clamp(11px,0.862vw,13px); font-weight: 900; }.hub-count strong { color: var(--pink-dark); font-size: 1.4em; }.game-library { min-height: 0; display: grid; grid-template-columns: 1.32fr 1fr 1fr; gap: 1.6%; }.game-tile {
  position: relative;
  min-width: 0;
  min-height: 0;
  border: 2px solid #eadff0;
  border-radius: clamp(22px, 2vw, 32px);
  padding: clamp(16px, 1.8vw, 27px);
  background: rgba(255,255,255,.91);
  overflow: hidden;
  text-align: left;
  color: var(--text);
  box-shadow: 0 9px 0 rgba(228,218,233,.72), 0 18px 38px rgba(91,70,111,.09);
}button.game-tile { transition: transform .17s ease, border-color .17s ease, box-shadow .17s ease; }button.game-tile:hover { transform: translateY(-5px) rotate(-.25deg); border-color: #ffb9ca; box-shadow: 0 12px 0 #f7dce4, 0 24px 45px rgba(91,70,111,.13); }button.game-tile:active { transform: translateY(1px); box-shadow: 0 5px 0 #f0e5f2; }.coming-tile { opacity: .69; background: rgba(255,255,255,.63); box-shadow: 0 7px 0 rgba(228,218,233,.52); }.tile-badge { display: inline-block; padding: 6px 9px; border-radius: 999px; background: var(--pink-soft); color: var(--pink-dark); font-size: clamp(10px,0.805vw,12px); font-weight: 950; letter-spacing: .11em; }.tile-badge.muted { background: #f1ebf4; color: #998da1; }.tile-icon { width: clamp(48px,5vw,75px); aspect-ratio: 1; display: grid; place-items: center; margin: 7% 0 5%; border-radius: 28%; background: var(--yellow-soft); border: 2px solid #ffe5a5; font-size: clamp(31.36px,3.45vw,51.52px); }.tile-icon.soft { filter: grayscale(.18); background: var(--lavender-soft); border-color: #ddd1ff; }.tile-copy { display: grid; gap: 5px; }.tile-copy strong { font-size: clamp(21px,2.3vw,34.72px); letter-spacing: -.045em; }.tile-copy small { color: var(--muted); font-size: clamp(12px,1.035vw,17px); line-height: 1.45; font-weight: 750; }.tile-enter { position: absolute; left: clamp(16px,1.8vw,27px); bottom: clamp(13px,1.5vw,22px); color: var(--pink-dark); font-size: clamp(13px,1.15vw,18px); font-weight: 950; }.tile-enter b { display: inline-grid; place-items: center; width: 22px; height: 22px; margin-left: 4px; border-radius: 9px; background: var(--pink); color: white; font-size: 21px; line-height: 1; }.hub-footer { position: relative; z-index: 3; display: flex; justify-content: space-between; gap: 18px; padding: .8% 5.2% 1.5%; color: #a092a9; font-size: clamp(11px,0.862vw,14px); font-weight: 850; }.hub-visitor-count {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(234,223,240,.95);
  color: #8b7c95;
  white-space: nowrap;
}.hub-visitor-count b { color: var(--pink-dark); font-size: 1.08em; }.hub-visitor-count[data-state="error"] { opacity: .58; }@media (max-width: 820px) {
  body[data-view="hub"] .app-shell { min-height: 100svh; height: auto; overflow: auto; }
  .hub-screen { min-height: 100svh; height: auto; grid-template-rows: auto auto auto; }
  .hub-hero { padding: 34px 20px 24px; }
  .hub-game-area { padding: 0 18px 24px; }
  .game-library { grid-template-columns: 1fr; gap: 16px; }
  .game-tile { min-height: 210px; }
  .coming-tile { min-height: 160px; }
  .hub-footer { padding: 0 18px 24px; }
}.fishing-tile .tile-icon { background:linear-gradient(145deg,#d8f5ff,#e9e4ff); border-color:#bfe5f2; }.cloud-a{left:25%;top:12%}.cloud-b{right:15%;top:18%;transform:scale(.78);opacity:.7}.far-island{position:absolute;top:35.8%;z-index:2;height:7%;background:linear-gradient(180deg,#5f8a7d,#315f5c);clip-path:polygon(0 100%,9% 65%,19% 71%,31% 38%,43% 61%,55% 27%,70% 66%,82% 51%,100% 100%);opacity:.65}.island-a{left:-3%;width:34%}.island-b{right:-4%;width:30%;transform:scaleX(-1);opacity:.5}.shore-line{position:absolute;z-index:3;left:-5%;right:-5%;top:39.7%;height:1.6%;background:linear-gradient(180deg,rgba(236,251,245,.9),rgba(89,169,169,.28));filter:blur(.2px)}.water-layer{position:absolute;left:-4%;width:108%;pointer-events:none;z-index:4}.water-back{top:41%;height:22%;opacity:.28;background:repeating-radial-gradient(ellipse at 50% 0%,rgba(255,255,255,.8) 0 1px,transparent 2px 28px);animation:seaDrift 7s linear infinite}.water-front{bottom:-8%;height:48%;opacity:.22;background:repeating-radial-gradient(ellipse at 50% 100%,rgba(217,247,255,.95) 0 2px,transparent 3px 38px);animation:seaDrift 9s linear infinite reverse}.cast-ripple{position:absolute;left:50%;top:50%;width:30%;height:25%;transform:translate(-50%,-50%) scale(.2);border:2px solid rgba(230,252,255,.85);border-radius:50%;opacity:0}.waiting-bite .cast-ripple{animation:ripplePulse 1.8s ease-out infinite}.waiting-bite .ripple-two{animation-delay:.82s}.water-splash{position:absolute;left:50%;top:49%;width:60%;height:80%;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.water-splash.active{opacity:1}.water-splash b{position:absolute;left:50%;bottom:40%;width:5px;height:17px;border-radius:999px;background:linear-gradient(rgba(255,255,255,.95),rgba(194,240,249,.1));transform-origin:50% 130%;animation:splashDrop .55s ease-out both}.water-splash b:nth-child(1){transform:translateX(-50%) rotate(-54deg)}.water-splash b:nth-child(2){transform:translateX(-50%) rotate(-28deg);animation-delay:.03s}.water-splash b:nth-child(3){transform:translateX(-50%) rotate(0deg);animation-delay:.01s}.water-splash b:nth-child(4){transform:translateX(-50%) rotate(31deg);animation-delay:.04s}.water-splash b:nth-child(5){transform:translateX(-50%) rotate(57deg);animation-delay:.02s}.water-splash::after{content:"";position:absolute;left:50%;bottom:31%;width:22%;height:16%;transform:translateX(-50%) scale(.2);border:3px solid rgba(232,252,255,.8);border-radius:50%;animation:splashRing .6s ease-out both}.water-splash.big{transform:translate(-50%,-50%) scale(1.6)}.first-person-rod{position:absolute;z-index:19;left:50%;bottom:-16%;width:22%;height:83%;transform:translateX(-50%) rotate(-2deg);transform-origin:50% 100%;pointer-events:none;filter:drop-shadow(0 14px 10px rgba(0,34,53,.22))}.fp-rod-grip{position:absolute;left:47%;bottom:0;width:12%;height:38%;transform:translateX(-50%);border-radius:18px;background:repeating-linear-gradient(0deg,#302c2b 0 8px,#4b413b 9px 14px);border:2px solid #1f2427;box-shadow:inset 5px 0 8px rgba(255,255,255,.08)}.fp-rod-reel{position:absolute;left:56%;bottom:25%;width:19%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#112f42 0 24%,#79aab9 26% 33%,#1b4358 35% 61%,#0e2635 63%);border:3px solid rgba(199,229,237,.7);box-shadow:0 4px 8px rgba(0,0,0,.22)}.fp-rod-reel::after{content:"";position:absolute;right:-40%;top:42%;width:55%;height:10%;border-radius:999px;background:#243e4b;transform:rotate(18deg)}.fp-rod-reel span{position:absolute;right:-51%;top:42%;width:14%;aspect-ratio:1;border-radius:50%;background:#ded8c8}.fp-rod-blank{position:absolute;left:49%;bottom:33%;width:3.2%;height:67%;transform:translateX(-50%);border-radius:999px 999px 4px 4px;background:linear-gradient(90deg,#233747,#537588 38%,#162b39 72%);box-shadow:inset 1px 0 rgba(255,255,255,.35);clip-path:polygon(27% 0,73% 0,100% 100%,0 100%)}.fp-rod-blank::before{content:"";position:absolute;left:50%;top:0;width:210%;height:4px;transform:translate(-50%,-30%);border-radius:50%;background:#9abac4}.fp-rod-guide{position:absolute;left:50%;width:8%;height:3%;transform:translateX(-50%);border:2px solid #879da6;border-radius:50%;background:transparent}.guide-a{bottom:63%}.guide-b{bottom:79%;width:6%}.fp-hand{position:absolute;bottom:17%;width:28%;height:17%;border-radius:48% 48% 42% 42%;background:linear-gradient(145deg,#f3c09d,#d89676);border:2px solid rgba(99,58,48,.15);box-shadow:inset 0 -7px 0 rgba(154,92,70,.08)}.hand-left{left:18%;transform:rotate(17deg)}.hand-right{right:10%;bottom:25%;transform:rotate(-17deg)}.caught-fish.jumping{opacity:1}.caught-fish.blank-fish{filter:saturate(.7)}@keyframes seaDrift{from{transform:translateX(0)}to{transform:translateX(32px)}}@keyframes sparkleDrift{0%{transform:translateX(0);opacity:.45}50%{opacity:.66}100%{transform:translateX(32px);opacity:.45}}@keyframes ripplePulse{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}20%{opacity:.75}100%{transform:translate(-50%,-50%) scale(2.4);opacity:0}}@keyframes splashDrop{0%{height:4px;opacity:0}30%{opacity:1}100%{height:34px;opacity:0}}@keyframes splashRing{0%{transform:translateX(-50%) scale(.2);opacity:.9}100%{transform:translateX(-50%) scale(2.2);opacity:0}}@keyframes legendSpark{from{transform:translateY(0) rotate(-8deg) scale(.95);opacity:.72}to{transform:translateY(-5px) rotate(8deg) scale(1.15);opacity:1}}.caught-fish{width:18%;aspect-ratio:1.6;filter:none}.semi-fin-outline{stroke:#334b55;stroke-width:1.35;stroke-linejoin:round;stroke-linecap:round}.semi-detail{fill:none;stroke:#314852;stroke-width:1.25;stroke-linecap:round}.semi-highlight{fill:none;stroke:rgba(255,255,255,.75);stroke-width:2.2;stroke-linecap:round;opacity:.55}.expanded-library{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:1.35%;}.expanded-library .game-tile{display:grid;grid-template-columns:clamp(46px,4.2vw,64px) minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:clamp(10px,1vw,16px);align-items:center;padding:clamp(12px,1.25vw,19px);border-radius:clamp(18px,1.6vw,27px);}.expanded-library .tile-badge{grid-column:1/-1;justify-self:start;padding:5px 8px;margin-bottom:4px}.expanded-library .tile-icon{grid-column:1;grid-row:2;width:clamp(42px,4vw,60px);margin:0;font-size:clamp(25.76px,2.702vw,39.2px);align-self:center}.expanded-library .tile-copy{grid-column:2;grid-row:2;align-self:center;gap:3px;padding-right:2px}.expanded-library .tile-copy strong{font-size:clamp(18px,1.587vw,24.64px);line-height:1.08}.expanded-library .tile-copy small{font-size:clamp(10px,0.759vw,13px);line-height:1.35}.expanded-library .tile-enter{display:none}.tile-badge.luck{background:#e8f6ff;color:#3679aa}.coin-tile{background:linear-gradient(145deg,#fff9e8,#fffdf6)}.coin-tile::before{background:#ffc646}.card-tile{background:linear-gradient(145deg,#f5fbff,#f2f4ff)}.card-tile::before{background:#5b7cff}.odd-tile{background:linear-gradient(145deg,#f6f1ff,#fff6fd)}.odd-tile::before{background:#9a62ff}.card-mini{font-family:Georgia,serif;font-size:clamp(20px,1.955vw,30.24px)!important}.choice-row{display:flex;gap:14px;margin-top:4%;justify-content:center}.result-banner{position:absolute;left:50%;bottom:5%;transform:translateX(-50%) translateY(16px);min-width:48%;max-width:78%;padding:12px 20px;border-radius:15px;text-align:center;font-weight:950;font-size:clamp(16px,1.265vw,20px);opacity:0;transition:.32s;background:rgba(9,14,26,.9);border:1px solid rgba(255,255,255,.13);box-shadow:0 16px 36px rgba(0,0,0,.3);pointer-events:none}.result-banner.show{opacity:1;transform:translateX(-50%) translateY(0)}.result-banner.win{color:#8ff2c2;border-color:rgba(99,235,174,.38);box-shadow:0 0 36px rgba(61,219,150,.12)}.result-banner.lose{color:#ff9cad;border-color:rgba(255,102,127,.35)}.result-banner.draw{color:#ffd777;border-color:rgba(255,200,85,.35)}.coin-arena{position:relative;width:clamp(175px,18vw,280px);height:clamp(175px,18vw,280px);margin:2% 0 1%;perspective:1000px}.coin-shadow{position:absolute;left:14%;right:14%;bottom:2%;height:12%;border-radius:50%;background:rgba(0,0,0,.42);filter:blur(12px);transform:scale(.82);transition:.5s}.coin-face{position:absolute;inset:0;border-radius:50%;display:grid;place-items:center;backface-visibility:hidden;border:clamp(6px,.65vw,10px) solid #cf8f18;background:radial-gradient(circle at 35% 28%,#fff2a3 0 8%,#f8c94e 27%,#d89a21 67%,#9c6411 100%);box-shadow:inset 0 0 0 5px rgba(255,244,172,.34),inset -13px -16px 24px rgba(111,63,4,.22),0 16px 35px rgba(0,0,0,.28);color:#8e5b0b;text-shadow:0 2px 1px rgba(255,239,149,.6);font-size:clamp(39.2px,5.06vw,78.4px);font-weight:1000}.coin-face::before{content:"";position:absolute;inset:11%;border:2px dashed rgba(125,78,7,.38);border-radius:50%}.coin-face.back{transform:rotateY(180deg)}@keyframes coinFlip{0%{transform:translateY(0) rotateY(0) rotateX(0)}18%{transform:translateY(-45%) rotateY(540deg) rotateX(12deg)}76%{transform:translateY(-8%) rotateY(1810deg) rotateX(-5deg)}100%{transform:translateY(0) rotateY(2160deg) rotateX(0)}}.card-table{position:relative;width:100%;max-width:720px;height:clamp(190px,23vh,320px);margin-top:1.8%;display:flex;justify-content:center;align-items:center;gap:clamp(35px,7vw,110px)}.playing-card{position:relative;width:clamp(110px,11vw,168px);aspect-ratio:.7;perspective:900px}.playing-card-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .72s cubic-bezier(.2,.72,.2,1)}.playing-card.reveal .playing-card-inner{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;border-radius:15px;backface-visibility:hidden;overflow:hidden;box-shadow:0 18px 36px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.3)}.card-back{background:repeating-linear-gradient(45deg,#152e61 0 6px,#203d77 6px 12px);display:grid;place-items:center}.card-back::before{content:"✦";width:68%;height:78%;display:grid;place-items:center;border:3px double rgba(255,255,255,.55);border-radius:10px;color:#d9e6ff;font-size:42.56px}.card-front{transform:rotateY(180deg);background:linear-gradient(145deg,#fff,#f3f4f7);color:#182033;padding:10%;font-family:Georgia,serif}.card-front.red{color:#d52b48}.card-rank{font-size:clamp(29.12px,3.45vw,51.52px);font-weight:800;line-height:.9}.card-suit{font-size:clamp(24.64px,2.76vw,40.32px)}.card-center{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(50.4px,5.75vw,84px);opacity:.9}.card-label{position:absolute;bottom:-31px;left:0;right:0;text-align:center;color:#7284a7;font-size:13px;font-weight:900;letter-spacing:.12em}.vs-mark{color:#556989;font-size:clamp(19px,1.955vw,29.12px);font-weight:1000}.card-pulse{animation:cardPulse .45s ease 2}@keyframes cardPulse{50%{transform:translateY(-8px) scale(1.04)}}.number-reactor{position:relative;width:clamp(185px,19vw,290px);aspect-ratio:1;margin:2% 0 1%;display:grid;place-items:center}.number-reactor::before,.number-reactor::after{content:"";position:absolute;border-radius:50%;inset:5%;border:2px solid rgba(137,100,255,.35);box-shadow:0 0 45px rgba(120,77,255,.15)}.number-reactor::after{inset:15%;border-style:dashed;animation:reactorSpin 8s linear infinite}.reactor-ring{position:absolute;inset:0;border-radius:50%;border:12px solid transparent;border-top-color:#815fff;border-bottom-color:#4fc3ff;filter:drop-shadow(0 0 12px rgba(112,86,255,.5));animation:reactorSpin 3.4s linear infinite}.reactor-number{position:relative;z-index:3;font-size:clamp(80.64px,9.2vw,138.88px);font-weight:1000;letter-spacing:-.08em;color:#f7f4ff;text-shadow:0 0 28px rgba(130,100,255,.45)}.number-reactor.rolling .reactor-ring{animation-duration:.38s}.number-reactor.rolling .reactor-number{animation:numberJitter .09s linear infinite}@keyframes reactorSpin{to{transform:rotate(360deg)}}@keyframes numberJitter{50%{transform:translateY(-2px) scale(1.03);filter:blur(.5px)}}.core-area{display:grid;place-items:center;position:relative;min-height:280px}.energy-core{position:relative;width:clamp(150px,16vw,240px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#fff 0 2%,#ffd8aa 4%,#ff9a58 23%,#ef4a65 55%,#6a1f58 78%,#170e2b 100%);box-shadow:0 0 25px rgba(255,115,87,.35),0 0 80px rgba(255,77,125,.16),inset -18px -22px 38px rgba(37,5,37,.3);transition:.45s}.energy-core::before,.energy-core::after{content:"";position:absolute;inset:-12%;border-radius:50%;border:2px solid rgba(255,160,105,.38);animation:coreOrbit 4s linear infinite}.energy-core::after{inset:-24%;border-style:dashed;border-color:rgba(119,106,255,.3);animation-direction:reverse;animation-duration:7s}.energy-core .multi{font-size:clamp(42.56px,4.6vw,69.44px);font-weight:1000;text-shadow:0 3px 14px rgba(75,4,34,.5)}.energy-core.charging{animation:coreCharge .78s ease-in-out 2}.energy-core.fail{animation:coreFail .65s ease forwards}.energy-core.success{animation:coreSuccess .75s ease}@keyframes coreOrbit{to{transform:rotate(360deg)}}@keyframes coreCharge{50%{transform:scale(1.12);filter:brightness(1.5);box-shadow:0 0 80px rgba(255,130,78,.7)}}@keyframes coreSuccess{45%{transform:scale(1.24);filter:brightness(1.8)}100%{transform:scale(1)}}@keyframes coreFail{40%{transform:scale(1.18);filter:brightness(2)}100%{transform:scale(.75);filter:grayscale(.8) brightness(.45);opacity:.65}}.claim-btn{background:linear-gradient(135deg,#34b98a,#2b8f79)!important;box-shadow:0 8px 0 #176554,0 16px 34px rgba(38,190,137,.22)!important}@keyframes screenFlash{0%{opacity:0}18%{opacity:.78}100%{opacity:0}}@media(max-width:820px){body[data-view="luck-game"] .app-shell{width:100vw;height:100svh;margin:0;border:0;border-radius:0}.luck-stage{grid-template-columns:1fr;height:89%;padding:14px}.luck-side{display:none}.luck-main{border-radius:20px}.luck-topbar{height:11%;padding:0 16px}.luck-title-icon{width:39px;height:39px}.choice-row{flex-wrap:wrap}.enhance-wrap{grid-template-columns:1fr;gap:6px}.core-area{min-height:190px}.energy-core{width:145px}.enhance-info{text-align:center}.enhance-actions{justify-content:center}.expanded-library{grid-template-columns:1fr}.expanded-library .game-tile{min-height:190px}}@media(min-width:821px){.expanded-library .tile-copy strong{font-size:clamp(16px,1.242vw,21px)}.expanded-library .tile-copy small{font-size:clamp(9.5px,0.667vw,12px)}}.paper-footer{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}.result-toast{
  min-width:0;
  width:100%;
  padding-right:10px;
}.paper-actions{
  flex:0 0 auto;
  justify-content:flex-end;
}.hub-category-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 2px 10px;color:#62576f}.hub-category-row>div{display:flex;align-items:center;gap:8px;min-width:0}.hub-category-row strong{font-size:13px;letter-spacing:.14em;font-weight:1000}.hub-category-row small{font-size:12px;color:#a297ad;font-weight:800}.hub-category-dot{width:8px;height:8px;border-radius:50%;display:inline-block;box-shadow:0 0 0 5px rgba(90,120,255,.08)}.hub-category-dot.offline{background:#ff7897;box-shadow:0 0 0 5px rgba(255,105,143,.09)}.hub-category-dot.online{background:#4bdab6;box-shadow:0 0 0 5px rgba(75,218,182,.1),0 0 18px rgba(55,213,174,.26)}.hub-category-count{font-size:11px;letter-spacing:.12em;font-weight:1000;color:#9f93aa}.hub-category-count.online-count{color:#269a7f}.hub-category-count.online-count i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#42d6ae;margin-right:5px;box-shadow:0 0 10px #42d6ae;animation:onlineBlink 1.5s ease-in-out infinite}.online-library{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,1.5vw,24px);padding-bottom:8px}.online-tile{min-height:clamp(180px,20vh,250px);border-color:#ccece5!important;overflow:hidden;isolation:isolate}.online-tile::after{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;right:-17%;bottom:-42%;background:radial-gradient(circle,rgba(63,219,179,.25),transparent 65%);filter:blur(5px);z-index:-1}.online-badge{background:#dcfaf1!important;color:#16876d!important;border:1px solid #bfeee1}.online-enter{color:#168a70}.online-enter b{background:linear-gradient(135deg,#3bcda9,#3b9bd7)}.online-icon{position:relative;background:linear-gradient(145deg,#f9fffd,#e7f9f4);border-color:#c5eee3;overflow:hidden}@keyframes onlineBlink{50%{opacity:.35;transform:scale(.8)}}.online-grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(83,214,190,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(83,214,190,.16) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 75%)}.online-topbar{height:10.5%;min-height:64px;padding:0 2.4%;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5;background:rgba(3,13,19,.74);border-bottom:1px solid rgba(144,235,217,.13);backdrop-filter:blur(12px)}.online-title-wrap{display:flex;align-items:center;gap:12px}.online-title-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#38d0ae,#257fa2);font-weight:1000;letter-spacing:-.04em;box-shadow:0 0 28px rgba(48,207,170,.2)}.online-title-wrap small{display:block;color:#59d5b8;font-size:11px;font-weight:1000;letter-spacing:.18em}.online-title-wrap h2{margin:2px 0 0;color:#f4ffff;font-size:clamp(23px,2.3vw,34.72px);letter-spacing:-.04em}.online-top-actions{display:flex;align-items:center;gap:9px}.online-net-pill{height:36px;padding:0 12px;border-radius:999px;display:flex;align-items:center;gap:7px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);color:#78909a;font-size:12px;font-weight:900}.online-net-pill span{width:7px;height:7px;border-radius:50%;background:#72838b}.online-net-pill.connected{color:#8ff0d4;border-color:rgba(87,222,186,.22);background:rgba(40,170,139,.09)}.online-net-pill.connected span{background:#4de0b6;box-shadow:0 0 12px #4de0b6}.online-net-pill.waiting{color:#ffd88b}.online-net-pill.waiting span{background:#ffc663;box-shadow:0 0 10px #ffc663;animation:onlineBlink 1.1s infinite}.online-leave-btn{height:38px;padding:0 13px;border-radius:11px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:#e5f4f7;font-weight:900}.online-layout{position:relative;z-index:2;height:89.5%;padding:2.2%;display:grid}.online-eyebrow{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(56,210,174,.09);border:1px solid rgba(76,224,190,.18);color:#65dfc1;font-size:11px;letter-spacing:.18em;font-weight:1000}.online-feature-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}.online-feature-row span{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.065);font-size:12px;color:#b7c9cf;font-weight:850}.online-field-label{display:block;margin:0 0 7px;color:#8aa4ae;font-size:12px;font-weight:950;letter-spacing:.12em}.online-input{border:1px solid rgba(137,218,205,.15);background:rgba(2,11,17,.55);color:#f4ffff;outline:none;transition:.18s}.online-input:focus{border-color:#4bd9b5;box-shadow:0 0 0 3px rgba(55,211,173,.1)}.online-input.nickname{width:100%;height:48px;padding:0 14px;border-radius:13px;font-size:19px;font-weight:900}.online-room-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.online-room-card{min-width:0;min-height:166px;padding:18px;border-radius:18px;border:1px solid rgba(255,255,255,.085);background:rgba(255,255,255,.04);color:#ecfbff;text-align:left;transition:.17s}.online-room-card.create{cursor:pointer}.online-room-card.create:hover{transform:translateY(-3px);background:rgba(50,210,174,.075);border-color:rgba(67,221,184,.28)}.room-card-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:rgba(73,220,184,.11);color:#6ce3c5;font-size:26.88px;font-weight:700}.online-room-card strong{display:block;margin:12px 0 3px;font-size:20px}.online-room-card small{display:block;color:#78919a;line-height:1.45;font-size:12px;font-weight:750}.room-code-entry{display:flex;gap:5px;margin-top:10px}.online-input.code{width:100%;min-width:0;height:36px;border-radius:9px;padding:0 8px;text-align:center;text-transform:uppercase;font-weight:1000;letter-spacing:.12em}.room-code-entry button{width:55px;border:0;border-radius:9px;background:linear-gradient(135deg,#49d2b1,#368fb0);color:white;font-weight:900;font-size:13px}.online-room-box{margin-top:14px;padding:13px 15px;border-radius:15px;background:rgba(61,214,178,.07);border:1px solid rgba(82,224,190,.16)}.online-room-box>small{display:block;color:#6ccdb8;font-size:10px;letter-spacing:.2em;font-weight:1000}.room-code-display{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px}.room-code-display strong{font-size:clamp(30.24px,3.45vw,47.04px);letter-spacing:.13em}.room-code-display button{border:0;border-radius:9px;padding:7px 10px;background:rgba(255,255,255,.08);color:#d8f8ef;font-weight:900}.online-room-box p{margin:4px 0 0;color:#93aaa9;font-size:12px;font-weight:750}.match-lobby-head{text-align:center}.match-lobby-head span{display:block;color:#7be5cb;font-size:14px;font-weight:900;letter-spacing:.12em}.match-lobby-head b{font-size:24.64px;letter-spacing:.16em}.match-lobby-head small{display:block;margin-top:5px;color:#758d97;font-weight:800}.versus-ready-grid{width:min(880px,85%);display:grid;grid-template-columns:1fr 100px 1fr;align-items:center;gap:14px}.ready-player-card{position:relative;padding:28px 20px;border-radius:25px;text-align:center;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09);transition:.25s}.ready-player-card.ready{border-color:rgba(74,227,187,.45);box-shadow:0 0 35px rgba(44,207,167,.1)}.player-role{position:absolute;left:13px;top:12px;color:#607c88;font-size:10px;letter-spacing:.16em;font-weight:1000}.ready-avatar{width:76px;height:76px;margin:auto;border-radius:24px;display:grid;place-items:center;background:linear-gradient(145deg,#273e54,#142836);color:#84ddca;font-size:25.76px;font-weight:1000;border:1px solid rgba(104,219,197,.16)}.ready-player-card.guest .ready-avatar{color:#9ab5ff;background:linear-gradient(145deg,#2b3457,#181f3b)}.ready-player-card strong{display:block;margin-top:12px;font-size:23px}.ready-player-card em{display:block;margin-top:4px;font-style:normal;color:#718a94;font-size:12px;font-weight:900}.ready-player-card.ready em{color:#66dfc2}.ready-vs{text-align:center}.ready-vs span{font-size:31.36px;font-weight:1000;color:#d3e6ea}.ready-vs i{display:block;width:40px;height:2px;margin:8px auto;background:linear-gradient(90deg,transparent,#4bdab6,transparent)}.online-ready-btn{min-width:220px;padding:14px 28px;border:0;border-radius:17px;background:linear-gradient(135deg,#49d6b3,#348fb1);color:white;font-size:20px;font-weight:1000;box-shadow:0 8px 0 #1b6e73,0 14px 35px rgba(43,191,161,.2)}.online-ready-btn.ready{background:linear-gradient(135deg,#657988,#43545e);box-shadow:0 8px 0 #26343b}.online-ready-hint{margin:0;color:#718993;font-size:13px;font-weight:800}.online-player-strip{height:58px;flex:0 0 58px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);overflow:hidden}.strip-player{height:100%;padding:0 18px;display:grid;grid-template-columns:38px 1fr;grid-template-rows:1fr 1fr;align-items:end;column-gap:8px}.strip-player>span{grid-row:1/3;width:34px;height:34px;align-self:center;display:grid;place-items:center;border-radius:11px;background:rgba(75,218,182,.1);color:#5fe0c1;font-size:12px;font-weight:1000}.strip-player strong{align-self:end;font-size:16px}.strip-player small{align-self:start;color:#607984;font-size:10px;font-weight:900;letter-spacing:.1em}.strip-player.guest{text-align:right;grid-template-columns:1fr 38px}.strip-player.guest>span{grid-column:2;grid-row:1/3;background:rgba(107,130,255,.1);color:#9bb0ff}.strip-player.guest strong,.strip-player.guest small{grid-column:1}.strip-room{text-align:center;padding:0 28px}.strip-room span{display:block;color:#8ca2aa;font-size:10px;font-weight:1000;letter-spacing:.18em}.strip-room b{display:block;color:#dffbf5;font-size:14px;letter-spacing:.13em}.online-toast{position:absolute;left:50%;bottom:4.4%;transform:translateX(-50%) translateY(12px);z-index:20;min-width:250px;max-width:70%;padding:10px 16px;border-radius:999px;background:rgba(1,10,15,.88);border:1px solid rgba(255,255,255,.1);color:#dfeff2;font-size:13px;font-weight:900;text-align:center;opacity:0;pointer-events:none;transition:.25s}.online-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.online-toast.win{color:#7df0cf;border-color:rgba(75,225,187,.3)}.online-toast.lose{color:#ffa0af;border-color:rgba(255,111,133,.26)}@keyframes rpsLocked{50%{transform:scale(.94);opacity:.58}}@keyframes rpsReveal{0%{transform:scale(.4) rotate(-25deg);opacity:0}65%{transform:scale(1.16) rotate(6deg)}100%{transform:scale(1);opacity:1}}.online-rematch-btn{padding:12px 24px;border:0;border-radius:14px;background:linear-gradient(135deg,#4bd5b3,#388cac);color:white;font-weight:1000}.yut-node.home-node{background:linear-gradient(145deg,#bfe9d7,#78bda5);border-color:rgba(40,111,91,.45)}@keyframes yutDestinationPulse{50%{transform:translate(-50%,-50%) scale(1.15);filter:brightness(1.12)}}@keyframes yutPieceGlow{50%{transform:scale(1.19)}}.turn-banner{padding:10px 13px;border-radius:13px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);text-align:center;color:#b8cbd0;font-size:13px;font-weight:900}.turn-banner.myturn{background:rgba(52,213,174,.1);border-color:rgba(74,227,187,.22);color:#7ae9cf}@keyframes yutThrow{0%{transform:translateY(0) rotateX(0) rotateZ(0)}45%{transform:translateY(-54px) rotateX(620deg) rotateZ(25deg)}100%{transform:translateY(0) rotateX(1080deg) rotateZ(0)}}@keyframes yutThrowLow{0%{transform:translateY(0) rotateX(0)}45%{transform:translateY(-32px) rotateX(430deg) rotateZ(14deg)}100%{transform:translateY(0) rotateX(720deg)}}@keyframes yutThrowHigh{0%{transform:translateY(0) rotateX(0) scale(1)}42%{transform:translateY(-78px) rotateX(880deg) rotateZ(32deg) scale(1.08)}100%{transform:translateY(0) rotateX(1440deg) scale(1)}}@keyframes yutGaugePulse{50%{box-shadow:0 0 18px rgba(255,198,61,.25),inset 0 2px 8px rgba(0,0,0,.35)}}@media(max-width:900px){body[data-view="online-game"] .app-shell{width:100vw;height:100svh;margin:0;border:0;border-radius:0}.online-topbar{padding:0 13px}.online-net-pill{display:none}.online-layout{padding:12px}.online-lobby{grid-template-columns:1fr;padding:10px;overflow:auto;align-content:start}.online-lobby-copy h3{font-size:47.04px}.online-lobby-copy p{display:none}.online-feature-row{margin-top:12px}.online-room-grid{grid-template-columns:1fr}.online-room-card{min-height:125px}.versus-ready-grid{width:100%;grid-template-columns:1fr 55px 1fr}.ready-player-card{padding:22px 8px}.ready-avatar{width:55px;height:55px;border-radius:17px;font-size:20px}.rps-stage{grid-template-columns:1fr 75px 1fr}.rps-choices{gap:5px}.rps-choice{width:31%;min-width:82px}.yut-arena{grid-template-columns:1fr;grid-template-rows:minmax(250px,1fr) auto;padding:10px}.yut-board{width:min(58vh,92vw)}.yut-side-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}.yut-sticks{height:120px;margin:0}.yut-stick{height:94px;width:18px}.yut-result-name{min-height:0}.yut-help{display:none}.yut-power-gauge,.yut-throw-btn{grid-column:1/3;margin-left:auto;margin-right:auto}.online-library{grid-template-columns:1fr}.hub-category-row small{display:none}}.hub-mode-tabs{display:flex;align-items:center;gap:8px;margin:15px 0 12px;padding:4px;border-radius:16px;background:rgba(255,255,255,.52);border:1px solid rgba(200,183,217,.34);width:max-content;max-width:100%}.hub-mode-tab{height:42px;padding:0 15px;border-radius:12px;border:0;background:transparent;color:#8d8198;display:flex;align-items:center;gap:7px;font-size:13px;font-weight:950;transition:.18s}.hub-mode-tab small{font-size:10px;letter-spacing:.08em;color:#aaa0b2}.hub-mode-tab.active{background:white;color:#554961;box-shadow:0 5px 16px rgba(102,75,124,.10)}.hub-mode-tab.active small{color:#6d5fe1}.hub-mode-tab:nth-child(2).active{color:#187f6b}.hub-mode-tab:nth-child(2).active small{color:#20a98c}.online-library:not(.hidden){display:grid}.online-library .game-tile{min-height:clamp(230px,29vh,340px)}@media(max-width:820px){.hub-mode-tabs{width:100%}.hub-mode-tab{flex:1;justify-content:center}.online-library .game-tile{min-height:210px}}.online-library .game-tile{display:grid;grid-template-columns:clamp(72px,7vw,105px) minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:clamp(16px,2vw,28px);align-items:center;padding:clamp(20px,2vw,30px)}.online-library .tile-badge{grid-column:1/-1;justify-self:start;margin:0}.online-library .tile-icon{grid-column:1;grid-row:2;width:clamp(70px,7vw,105px);margin:0;align-self:center}.online-library .tile-copy{grid-column:2;grid-row:2;align-self:center;padding-right:10px}.online-library .tile-copy strong{font-size:clamp(24.64px,2.3vw,34.72px);line-height:1.05}.online-library .tile-copy small{font-size:clamp(12px,0.977vw,16px);line-height:1.45;margin-top:5px}.online-library .tile-enter{display:none}@media(max-width:900px){.yut-board{width:min(50vh,88vw,470px)}.online-library .game-tile{grid-template-columns:68px 1fr;min-height:185px;padding:18px}.online-library .tile-icon{width:64px}.online-library .tile-copy strong{font-size:23px}}@media (min-width: 821px) {
  .hub-screen { grid-template-rows: 34% 1fr auto; }
  .hub-hero { padding: 1.15% 5% .35%; }
  .hub-logo {
    width: clamp(44px, 4.1vw, 64px);
    margin-bottom: .35%;
    border-width: 2px;
    border-radius: 30% 30% 35% 35%;
    font-size: clamp(28px, 2.932vw, 42.56px);
    box-shadow: 0 6px 0 rgba(234,193,92,.18), 0 12px 24px rgba(91,70,111,.08);
  }
  .hub-kicker { margin-bottom: .3%; font-size: clamp(10px, 0.805vw, 13px); }
  .hub-hero h1 { font-size: clamp(34.72px, 4.485vw, 64.96px); line-height: .92; }
  .hub-sub { margin-top: .55%; font-size: clamp(12px, 1.15vw, 18px); }
  .hub-game-area { padding: 0 5.2% 1.15%; gap: 1.5%; grid-template-rows: auto auto minmax(0, 1fr); }
  .hub-section-title h2 { font-size: clamp(21px, 2.012vw, 30.24px); }
  .hub-section-title span { font-size: clamp(10px, 0.782vw, 12px); }
  .hub-count { padding: 6px 10px; }
  .hub-mode-tabs { margin: 7px 0 7px; align-self: start; }
  .hub-mode-tab { height: 35px; padding: 0 13px; }
  .expanded-library { gap: 1.5%; }
  .expanded-library .game-tile { padding: clamp(10px, 1vw, 15px); }
  .expanded-library .tile-badge { padding: 4px 7px; margin-bottom: 2px; }
  .expanded-library .tile-icon { width: clamp(40px, 3.7vw, 55px); }
  .hub-footer { padding: .45% 5.2% .85%; }
}#customSettings{max-height:min(55vh,580px);overflow-y:auto;overflow-x:hidden;padding-right:10px;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#c58bd8 #f2eaf4}#customSettings::-webkit-scrollbar{width:9px}#customSettings::-webkit-scrollbar-track{border-radius:99px;background:#f2eaf4}#customSettings::-webkit-scrollbar-thumb{border:2px solid #f2eaf4;border-radius:99px;background:linear-gradient(#ff8ba7,#ae7ae0)}#customSettings .result-input-list{padding-bottom:12px}@media(max-width:700px){#customSettings{max-height:48dvh;padding-right:7px}.wizard-actions{position:relative;z-index:2}}@media (max-width: 820px) {
  body[data-view="hub"] .hub-game-area {
    display: block;
    min-height: 0;
    padding-bottom: 30px;
  }
  body[data-view="hub"] .expanded-library {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    height: auto;
    min-height: 0;
    margin-top: 14px;
    gap: 26px;
    grid-template-columns: none;
    grid-template-rows: none;
    grid-auto-rows: auto;
  }
  body[data-view="hub"] .expanded-library .game-tile {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    min-height: 200px;
    margin: 0;
    transform: none;
    overflow: hidden;
  }
  body[data-view="hub"] .expanded-library button.game-tile:hover,
  body[data-view="hub"] .expanded-library button.game-tile:active {
    transform: none;
  }
}@media (max-width: 430px) {
  body[data-view="hub"] .expanded-library { gap: 24px; }
  body[data-view="hub"] .expanded-library .game-tile { min-height: 190px; }
}body[data-view="game"] .app-shell{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior-y:contain;
  scroll-behavior:smooth;
  scrollbar-gutter:stable;
  touch-action:pan-y pinch-zoom;
  -webkit-overflow-scrolling:touch;
}body[data-view="game"] .paper-footer{scroll-margin-block:90px 24px}.game-title-group{min-width:0;flex:1}.game-title-group h2{min-width:0;line-height:1.15;white-space:normal;overflow:visible}.title-actions{flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end}.title-btn{min-height:44px;height:auto;line-height:1.25;white-space:normal}.online-title-wrap h2{font-size:clamp(28px,2.7vw,42px)}.online-room-card strong{font-size:22px}.turn-banner{font-size:15px}.online-ai-practice{width:100%;min-height:78px;margin-top:13px;display:grid;grid-template-columns:54px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:13px;padding:13px 16px;border:1px solid rgba(145,119,255,.52);border-radius:18px;background:linear-gradient(120deg,rgba(119,84,255,.28),rgba(43,201,173,.16));color:#fff;text-align:left;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.12),0 10px 28px rgba(0,0,0,.18);transition:transform .2s ease,filter .2s ease,border-color .2s ease}.online-ai-practice:hover{transform:translateY(-2px);filter:brightness(1.09);border-color:rgba(181,164,255,.88)}.online-ai-practice>span{grid-row:1/3;display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:linear-gradient(145deg,#7e65ff,#35c9ad);font-size:29px;box-shadow:0 6px 18px rgba(71,59,185,.38)}.online-ai-practice strong{min-width:0;font-size:22px;font-weight:1000;line-height:1.15}.online-ai-practice small{min-width:0;margin-top:3px;color:#c8cde1;font-size:14px;font-weight:800;line-height:1.25;white-space:normal}.online-ai-practice b{grid-column:3;grid-row:1/3;padding-left:8px;color:#e7ddff;font-size:17px;font-weight:1000;white-space:nowrap}.chain-online-tile{background:linear-gradient(145deg,#f1fff8,#eff8ff 55%,#fff4fa)}.chain-icon{background:linear-gradient(145deg,#2dbd9d,#3186cc)!important}.online-library .game-tile{min-height:clamp(178px,22vh,235px)}@keyframes wordClockUrgent{50%{transform:scale(1.045);box-shadow:0 0 18px rgba(255,185,55,.28)}}@keyframes wordClockCritical{50%{transform:scale(1.075);box-shadow:0 0 24px rgba(255,47,86,.42)}}@keyframes wordPressure{50%{opacity:.48}}@keyframes wordLetterPressure{50%{transform:scale(1.035);filter:saturate(1.2) brightness(1.08)}}@keyframes wordRoundReveal{0%{opacity:0;transform:scale(.72) rotate(-2deg)}65%{transform:scale(1.035) rotate(1deg)}100%{opacity:1;transform:scale(1)}}@media(max-width:520px){.online-ai-practice{grid-template-columns:46px minmax(0,1fr);min-height:72px;padding:11px 12px}.online-ai-practice>span{width:44px;height:44px;font-size:25px}.online-ai-practice strong{font-size:19px}.online-ai-practice small{font-size:12px}.online-ai-practice b{display:none}}.adsense-zone{display:none}body.adsense-enabled[data-view="hub"] .adsense-zone{position:relative;display:block;width:min(728px,86vw);min-height:90px;margin:18px auto 0;padding:15px 8px 5px;border:1px solid rgba(136,119,151,.18);border-radius:13px;background:rgba(255,255,255,.46);overflow:hidden}.adsense-label{position:absolute;left:50%;top:3px;transform:translateX(-50%);color:#a298aa;font-size:9px;font-weight:900;letter-spacing:.12em;line-height:1}.adsense-zone .adsbygoogle{display:block;width:100%;min-width:250px;min-height:72px}body.adsense-load-failed .adsense-zone{display:none!important}@media(min-width:821px){body.adsense-enabled[data-view="hub"] .hub-screen{grid-template-rows:auto minmax(440px,1fr) auto;overflow-y:auto;overscroll-behavior-y:contain}body.adsense-enabled[data-view="hub"] .hub-hero{min-height:320px;padding:22px 5% 18px}}@media(max-width:500px){body.adsense-enabled[data-view="hub"] .adsense-zone{width:min(320px,88vw);min-height:100px;margin-top:20px;padding-top:16px}.adsense-zone .adsbygoogle{min-height:82px}}.start-up-guide {
  position:absolute;
  pointer-events:none;
  font-weight:900;
  color:#fff;
  text-shadow:0 2px 5px #333;
  letter-spacing:1px;
}.start-up-guide::after{content:'START ↑';font-size:23px;color:#fff;}@keyframes yutRoutePulse{50%{opacity:.5}}.yut-node.home-node{background:radial-gradient(circle at 34% 24%,#eafff7,#70d2b4 55%,#217e70);border-color:#155f55;box-shadow:inset 0 3px 4px rgba(255,255,255,.72),0 0 0 3px rgba(105,233,200,.25),0 5px 13px rgba(17,87,75,.38)}@keyframes yutBranchGlow{50%{box-shadow:0 0 0 5px rgba(255,235,147,.72),0 0 25px rgba(255,190,57,.9),inset 0 3px 4px rgba(255,255,255,.85)}}@keyframes yutTargetGlow{50%{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 0 0 5px rgba(255,69,55,.48),0 0 28px rgba(255,64,51,.88),inset 0 3px 4px rgba(255,255,255,.85)}}.yut-node.home-node .yut-node-label{color:#174f46}@keyframes yutPieceGlow{50%{transform:scale(1.16);filter:drop-shadow(0 0 10px rgba(255,221,102,.98)) drop-shadow(0 5px 5px rgba(36,16,9,.4))}}.turn-banner{background:rgba(255,255,255,.045);border-color:rgba(224,177,86,.14);letter-spacing:.02em}.turn-banner.myturn{background:linear-gradient(135deg,rgba(238,173,56,.18),rgba(61,207,168,.13));border-color:rgba(245,195,88,.36);color:#ffe29a;box-shadow:0 0 22px rgba(231,162,48,.1)}.online-start-intro{position:absolute;inset:0;z-index:90;display:grid;place-items:center;padding:clamp(14px,2.5vw,34px);overflow-y:auto;background:radial-gradient(circle at 50% 42%,rgba(35,198,166,.22),rgba(2,11,18,.9) 56%,rgba(1,6,11,.98));backdrop-filter:blur(13px);isolation:isolate;animation:onlineIntroFadeIn .22s ease-out both}.online-start-intro::before,.online-start-intro::after{content:"";position:absolute;inset:-25%;z-index:-1;pointer-events:none}.online-start-intro::before{background:conic-gradient(from 0deg,transparent 0 7%,rgba(91,240,204,.1) 8% 9%,transparent 10% 20%,rgba(255,204,91,.09) 21% 22%,transparent 23% 100%);animation:onlineIntroSpin 9s linear infinite}.online-start-intro::after{inset:0;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.28),transparent 18%);opacity:0;animation:onlineIntroFlash .62s ease-out both}.online-start-intro.leaving{animation:onlineIntroFadeOut .28s ease-in both}.online-start-card{position:relative;width:min(790px,94vw);max-height:calc(100% - 8px);overflow-y:auto;padding:clamp(22px,3.3vw,44px);border-radius:clamp(24px,3vw,38px);text-align:center;background:linear-gradient(145deg,rgba(19,48,59,.97),rgba(5,20,29,.98));border:2px solid rgba(104,238,207,.36);box-shadow:0 30px 90px rgba(0,0,0,.52),0 0 60px rgba(58,218,180,.17),inset 0 1px rgba(255,255,255,.12);animation:onlineIntroCardIn .62s cubic-bezier(.12,.84,.2,1.2) both;scrollbar-width:thin}.online-start-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:#72efd0;font-size:clamp(11px,1vw,14px);font-weight:1000;letter-spacing:.22em}.online-start-kicker::before,.online-start-kicker::after{content:"";width:28px;height:2px;background:linear-gradient(90deg,transparent,#62e7c7)}.online-start-kicker::after{transform:scaleX(-1)}.online-start-card h2{margin:0;color:#f6ffff;font-size:clamp(30px,4.2vw,58px);line-height:1;letter-spacing:-.055em;text-shadow:0 0 30px rgba(109,238,210,.18)}.online-start-prompt{margin:clamp(15px,2.2vh,24px) auto 0;padding:clamp(14px,2vw,22px);border-radius:22px;background:linear-gradient(135deg,rgba(255,200,75,.16),rgba(63,222,181,.1));border:1px solid rgba(255,218,119,.35);box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 30px rgba(244,176,48,.08)}.online-start-prompt small{display:block;color:#ffd978;font-size:clamp(11px,1vw,14px);font-weight:1000;letter-spacing:.18em}.online-start-prompt strong{display:block;margin-top:4px;color:#fff5c9;font-size:clamp(45px,7.4vw,90px);line-height:1.02;letter-spacing:.08em;text-indent:.08em;text-shadow:0 5px 25px rgba(255,181,43,.22)}.online-start-prompt span{display:block;margin-top:5px;color:#c8ddd9;font-size:clamp(14px,1.4vw,19px);font-weight:900}.online-start-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:clamp(15px,2.1vh,22px)}.online-start-rule{min-width:0;padding:13px 10px;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.085);color:#d8e9ec;font-size:clamp(13px,1.1vw,16px);font-weight:900;line-height:1.35}.online-start-rule b{display:grid;place-items:center;width:26px;height:26px;margin:0 auto 7px;border-radius:9px;background:rgba(86,226,192,.13);color:#6ce6c8;font-size:13px}.online-start-signal{margin-top:clamp(16px,2.2vh,24px);color:#8aa1aa;font-size:clamp(15px,1.4vw,20px);font-weight:1000;letter-spacing:.16em;transition:.22s}.online-start-intro.launching .online-start-signal{color:#fff2a9;font-size:clamp(28px,4.2vw,58px);letter-spacing:.08em;text-shadow:0 0 28px rgba(255,210,83,.72);transform:scale(1.08);animation:onlineStartSignal .42s ease-in-out infinite alternate}.online-start-progress{height:7px;margin:12px auto 0;border-radius:99px;overflow:hidden;background:rgba(255,255,255,.08)}.online-start-progress i{display:block;width:100%;height:100%;transform-origin:left;background:linear-gradient(90deg,#43d8b5,#7af0d2 58%,#ffd65c);box-shadow:0 0 18px rgba(85,232,196,.55);animation:onlineIntroProgress var(--intro-duration,3800ms) linear both}.online-start-spark{position:absolute;left:var(--x);top:var(--y);color:var(--c,#70ebcc);font-size:var(--s,18px);opacity:0;pointer-events:none;animation:onlineIntroSpark 1.25s ease-out var(--d,0s) infinite}.online-player-strip{position:relative;overflow:visible}.online-restart-start{position:absolute;inset:0;z-index:90;display:grid;place-items:center;pointer-events:auto}.online-restart-start strong{color:#fff6bd;font-size:clamp(72px,15vw,190px);font-weight:1000;line-height:1;letter-spacing:.04em;text-shadow:0 0 22px rgba(255,218,90,.95),0 10px 44px rgba(0,0,0,.86);animation:onlineRestartStart .9s cubic-bezier(.15,.82,.2,1) both}.online-restart-start.leaving{animation:onlineIntroFadeOut .22s ease-in both}.online-auto-control{position:absolute;z-index:58;left:50%;top:74px;transform:translateX(-50%);width:min(620px,88%);padding:16px 18px;border-radius:22px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;background:linear-gradient(135deg,rgba(255,165,47,.97),rgba(226,75,52,.97) 50%,rgba(48,183,157,.97));border:2px solid rgba(255,244,190,.82);box-shadow:0 18px 55px rgba(0,0,0,.48),0 0 0 5px rgba(255,194,69,.16),0 0 38px rgba(255,115,51,.46);color:#fff;animation:onlineAutoControlIn .45s cubic-bezier(.15,.85,.2,1.18) both}.online-auto-pulse{width:18px;height:18px;border-radius:50%;background:#fff6a8;box-shadow:0 0 0 0 rgba(255,246,168,.8);animation:onlineAutoPulse .85s ease-out infinite}.online-auto-copy{min-width:0}.online-auto-copy small{display:block;font-size:11px;font-weight:1000;letter-spacing:.17em;color:#fff5bf}.online-auto-copy strong{display:block;margin-top:1px;font-size:clamp(24px,2.5vw,38px);line-height:1;letter-spacing:-.04em;text-shadow:0 3px 12px rgba(86,25,14,.3)}.online-auto-copy span{display:block;margin-top:4px;font-size:12px;font-weight:900;color:rgba(255,255,255,.88)}.online-auto-cancel{min-height:48px;padding:0 16px;border-radius:14px;border:1px solid rgba(255,255,255,.65);background:rgba(4,24,28,.76);color:#fff;font-size:14px;font-weight:1000;box-shadow:0 7px 18px rgba(0,0,0,.24);cursor:pointer}.online-auto-cancel:hover{transform:translateY(-2px);background:#072f35}.online-auto-cancel:active{transform:translateY(1px)}@keyframes onlineIntroFadeIn{from{opacity:0}to{opacity:1}}@keyframes onlineIntroFadeOut{to{opacity:0;transform:scale(1.04)}}@keyframes onlineIntroSpin{to{transform:rotate(360deg)}}@keyframes onlineIntroFlash{0%{opacity:1;transform:scale(.25)}100%{opacity:0;transform:scale(4)}}@keyframes onlineIntroCardIn{0%{opacity:0;transform:scale(.62) translateY(45px)}68%{opacity:1;transform:scale(1.035) translateY(-5px)}100%{transform:scale(1) translateY(0)}}@keyframes onlineStartSignal{to{transform:scale(1.16);filter:brightness(1.25)}}@keyframes onlineIntroProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes onlineIntroSpark{0%{opacity:0;transform:translateY(10px) scale(.4) rotate(0)}25%{opacity:1}100%{opacity:0;transform:translateY(-48px) scale(1.45) rotate(160deg)}}@keyframes onlineAutoControlIn{from{opacity:0;transform:translateX(-50%) translateY(-24px) scale(.78)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}@keyframes onlineAutoPulse{70%{box-shadow:0 0 0 14px rgba(255,246,168,0)}100%{box-shadow:0 0 0 0 rgba(255,246,168,0)}}@keyframes onlineIdleUrgent{to{transform:translateX(-50%) scale(1.1);box-shadow:0 0 28px rgba(255,68,87,.58)}}@keyframes onlineRestartStart{0%{opacity:0;transform:scale(.3)}38%{opacity:1;transform:scale(1.12)}100%{opacity:1;transform:scale(1)}}@media(max-width:700px){.online-start-intro{padding:10px}.online-start-card{width:96vw;padding:20px 14px;border-radius:23px}.online-start-rules{grid-template-columns:1fr;gap:6px}.online-start-rule{display:grid;grid-template-columns:27px 1fr;align-items:center;gap:8px;padding:9px 11px;text-align:left}.online-start-rule b{margin:0}.online-start-prompt{margin-top:12px;padding:12px}.online-start-signal{margin-top:13px}.online-start-progress{margin-top:8px}}@media(max-height:650px) and (min-width:701px){.online-start-card{padding:18px 26px}.online-start-prompt{margin-top:10px;padding:10px}.online-start-prompt strong{font-size:clamp(38px,7vh,58px)}.online-start-rules{margin-top:10px}.online-start-rule{padding:9px}.online-start-rule b{margin-bottom:4px}.online-start-signal{margin-top:10px}.online-start-progress{margin-top:6px}}.online-player-strip{grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);column-gap:8px;overflow:hidden}.strip-room{padding:0 10px}@keyframes onlineIdleUrgentInline{to{transform:scale(1.07);box-shadow:0 0 22px rgba(255,68,87,.5)}}.online-rematch-ready{display:flex;justify-content:center;gap:8px;margin:3px 0 13px}.online-rematch-ready span{min-width:0;flex:1;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);color:#778f98;font-size:11px;font-weight:1000}.online-rematch-ready span.ready{background:rgba(70,218,181,.15);border-color:rgba(92,235,201,.42);color:#7ff0d4;box-shadow:0 0 18px rgba(69,221,184,.12)}.online-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.online-rematch-btn:disabled{background:#273b43;color:#7f969e;cursor:wait;opacity:.9}.online-result-exit-btn{width:100%;min-width:0;padding:12px 20px;border-radius:14px;border:1px solid rgba(255,126,143,.35);background:rgba(89,27,38,.72);color:#ffc0ca;font-size:15px;font-weight:1000}.online-result-exit-btn:hover{background:rgba(126,34,49,.88)}.hub-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(440px,100%)}.hub-mode-tab{width:100%;min-width:0;justify-content:center;overflow:hidden}.hub-mode-tab strong,.hub-mode-tab small{white-space:nowrap}@media(min-width:821px){
  body[data-view="hub"] #offlineLibrary,body[data-view="hub"] #onlineLibrary{height:100%;min-height:0;align-self:stretch;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:1.5%}
  body[data-view="hub"] #offlineLibrary .game-tile,body[data-view="hub"] #onlineLibrary .game-tile{min-height:0;display:grid;grid-template-columns:clamp(40px,3.7vw,55px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);column-gap:clamp(8px,.9vw,14px);align-items:center;padding:clamp(10px,1vw,15px)}
  body[data-view="hub"] #offlineLibrary .tile-badge,body[data-view="hub"] #onlineLibrary .tile-badge{grid-column:1/-1;justify-self:start;margin:0 0 2px;padding:4px 7px}
  body[data-view="hub"] #offlineLibrary .tile-icon,body[data-view="hub"] #onlineLibrary .tile-icon{grid-column:1;grid-row:2;width:clamp(40px,3.7vw,55px);margin:0;align-self:center}
  body[data-view="hub"] #offlineLibrary .tile-copy,body[data-view="hub"] #onlineLibrary .tile-copy{grid-column:2;grid-row:2;min-width:0;align-self:center;gap:3px;padding:0}
  body[data-view="hub"] #offlineLibrary .tile-copy strong,body[data-view="hub"] #onlineLibrary .tile-copy strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;line-clamp:2;font-size:clamp(16px,1.242vw,21px);line-height:1.08;overflow-wrap:anywhere}
  body[data-view="hub"] #offlineLibrary .tile-copy small,body[data-view="hub"] #onlineLibrary .tile-copy small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;line-clamp:3;margin:0;font-size:clamp(9.5px,.667vw,12px);line-height:1.35;white-space:normal;overflow-wrap:anywhere}
  body[data-view="hub"] #offlineLibrary .tile-enter,body[data-view="hub"] #onlineLibrary .tile-enter{display:none}
}@media(max-width:820px){
  body[data-view="hub"] #offlineLibrary,body[data-view="hub"] #onlineLibrary{display:flex;flex-direction:column;align-items:stretch;width:100%;height:auto;min-height:0;margin-top:14px;gap:26px}
  body[data-view="hub"] #offlineLibrary .game-tile,body[data-view="hub"] #onlineLibrary .game-tile{flex:0 0 auto;width:100%;height:auto;min-height:200px;display:grid;grid-template-columns:68px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);column-gap:14px;align-items:center;padding:18px}
  body[data-view="hub"] #offlineLibrary .tile-badge,body[data-view="hub"] #onlineLibrary .tile-badge{grid-column:1/-1;justify-self:start;margin:0}
  body[data-view="hub"] #offlineLibrary .tile-icon,body[data-view="hub"] #onlineLibrary .tile-icon{grid-column:1;grid-row:2;width:64px;margin:0}
  body[data-view="hub"] #offlineLibrary .tile-copy,body[data-view="hub"] #onlineLibrary .tile-copy{grid-column:2;grid-row:2;min-width:0;padding:0;align-self:center}
  body[data-view="hub"] #offlineLibrary .tile-copy strong,body[data-view="hub"] #onlineLibrary .tile-copy strong{font-size:23px;line-height:1.1;white-space:normal;overflow-wrap:anywhere}
  body[data-view="hub"] #offlineLibrary .tile-copy small,body[data-view="hub"] #onlineLibrary .tile-copy small{display:block;margin-top:5px;font-size:12px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
}@media(max-width:430px){body[data-view="hub"] #offlineLibrary,body[data-view="hub"] #onlineLibrary{gap:24px}body[data-view="hub"] #offlineLibrary .game-tile,body[data-view="hub"] #onlineLibrary .game-tile{min-height:190px}}@media(max-width:560px){.hub-mode-tab{padding:0 8px;gap:5px;font-size:12px}.hub-mode-tab small{display:none}}body[data-view="hub"] { overflow-x: hidden; }@media (min-width: 821px) {
  body[data-view="hub"] .app-shell {
    width: min(97vw, 1800px);
    height: auto;
    min-height: 97vh;
    min-height: 97svh;
    aspect-ratio: auto;
    overflow: hidden;
  }

  body[data-view="hub"] .hub-screen,
  body.adsense-enabled[data-view="hub"] .hub-screen {
    --hub-card-height: clamp(148px, 18svh, 210px);
    height: auto;
    min-height: calc(97vh - 4px);
    min-height: calc(97svh - 4px);
    grid-template-rows: auto minmax(350px, 1fr) auto;
    overflow: visible;
  }

  body[data-view="hub"] .hub-hero,
  body.adsense-enabled[data-view="hub"] .hub-hero {
    min-height: 0;
    padding: clamp(14px, 2.4svh, 27px) 5% clamp(10px, 1.5svh, 17px);
  }

  body[data-view="hub"] .hub-game-area {
    min-height: 350px;
    padding: 0 5.2% clamp(12px, 1.5svh, 18px);
    grid-template-rows: auto auto minmax(290px, 1fr);
    gap: clamp(7px, 1.2svh, 13px);
  }

  body[data-view="hub"] #offlineLibrary,
  body[data-view="hub"] #onlineLibrary {
    height: auto;
    min-height: 290px;
    align-self: stretch;
    align-content: start;
    grid-auto-rows: var(--hub-card-height);
    gap: clamp(10px, 1.1vw, 20px);
  }

  body[data-view="hub"] #offlineLibrary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2, var(--hub-card-height));
  }

  body[data-view="hub"] #onlineLibrary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: var(--hub-card-height);
  }

  body[data-view="hub"] #offlineLibrary .game-tile,
  body[data-view="hub"] #onlineLibrary .game-tile {
    height: var(--hub-card-height);
    min-height: var(--hub-card-height);
  }
}@media (min-width: 821px) and (max-width: 1100px) {
  body[data-view="hub"] #offlineLibrary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(4, var(--hub-card-height));
  }

  body[data-view="hub"] #onlineLibrary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, var(--hub-card-height));
  }
}@media (min-width: 821px) and (max-height: 650px) {
  body[data-view="hub"] .hub-screen,
  body.adsense-enabled[data-view="hub"] .hub-screen {
    --hub-card-height: 132px;
  }

  body[data-view="hub"] .hub-hero,
  body.adsense-enabled[data-view="hub"] .hub-hero {
    padding-top: 9px;
    padding-bottom: 7px;
  }

  body[data-view="hub"] .hub-logo { width: 40px; font-size: 27px; }
  body[data-view="hub"] .hub-hero h1 { font-size: clamp(36px, 7svh, 46px); }
  body[data-view="hub"] .hub-sub { margin-top: 3px; font-size: 12px; }
  body[data-view="hub"] .hub-game-area { min-height: 330px; }

}:root { --game-vh: 100vh; }@supports (height: 100dvh) { :root { --game-vh: 100dvh; } }.coin-arena { width: clamp(120px, 31cqh, 280px); height: clamp(120px, 31cqh, 280px); }.card-table { height: clamp(150px, 31cqh, 300px); }.playing-card { width: clamp(88px, 22cqh, 168px); }.number-reactor { width: clamp(125px, 31cqh, 270px); }.core-area { min-height: clamp(135px, 31cqh, 260px); }.energy-core { width: clamp(115px, 27cqh, 220px); }.online-topbar {
  height: auto;
  min-height: clamp(48px, 10.5cqh, 64px);
  padding-block: clamp(4px, 1cqh, 8px);
}.online-layout {
  height: auto;
  min-height: 0;
  overflow: hidden;
}body[data-view="game"] .game-titlebar {
  height: auto;
  min-height: clamp(44px, 10.5cqh, 64px);
  padding-block: clamp(4px, .9cqh, 8px);
}body[data-view="game"] .paper-topbar { min-height: clamp(32px, 7.5cqh, 48px); }body[data-view="game"] .board-inner {
  height: 100% !important;
  min-height: 0;
  grid-template-rows: clamp(90px, 14cqh, 100px) minmax(0, 1fr) clamp(38px, 7.5cqh, 56px) !important;
}body[data-view="game"] .top-labels { height: auto; min-height: 90px; overflow: visible; }body[data-view="game"] .top-label-stack {
  top: 4px;
  transform: translateX(-50%);
}body[data-view="game"] .paper-footer {
  min-height: clamp(50px, 10cqh, 72px);
  padding-block: clamp(4px, .8cqh, 8px);
  overflow: visible;
}body[data-view="result"] .result-board { min-height: 0; overflow: auto; }:root{--premium-radius:24px}body{padding-bottom:env(safe-area-inset-bottom)}button{min-height:44px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.game-card,.card,.panel,.box,.menu-card{border-radius:24px!important;box-shadow:0 20px 60px rgba(40,30,70,.12)!important;backdrop-filter:blur(12px)}.ad-zone,#hubAdZone{border-radius:18px!important;overflow:hidden}@media(max-width:600px){
 body{font-size:15px}
 .container,.wrap,.app,.hub{width:100%!important;max-width:none!important;padding-left:14px!important;padding-right:14px!important}
 h1,h2{letter-spacing:-.04em}
 .game-board{max-width:100%!important}
 .menu-grid{grid-template-columns:1fr!important}
 .btn,.button,button{border-radius:16px!important}
 canvas{max-width:100%;height:auto}
}@media(min-width:601px){.container,.app,.hub{max-width:1200px;margin:auto}}html,
body,
body *:not(input):not(textarea):not([contenteditable="true"]) {
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
  user-select: none !important;
  -webkit-touch-callout: none !important;
  -webkit-tap-highlight-color: transparent !important;
}input,
textarea,
[contenteditable="true"] {
  -webkit-user-select: text !important;
  -moz-user-select: text !important;
  -ms-user-select: text !important;
  user-select: text !important;
  -webkit-touch-callout: default !important;
}body *:not(input):not(textarea):not([contenteditable="true"])::selection {
  background: transparent;
}body *:not(input):not(textarea):not([contenteditable="true"])::-moz-selection {
  background: transparent;
}body[data-view="hub"] {
  background:
    radial-gradient(circle at 14% 8%, rgba(255, 229, 115, .45), transparent 20%),
    radial-gradient(circle at 87% 10%, rgba(176, 129, 255, .25), transparent 24%),
    radial-gradient(circle at 82% 90%, rgba(255, 141, 193, .22), transparent 18%),
    linear-gradient(180deg, #daf1ff 0%, #eef3ff 50%, #f8f4ff 100%);
}body[data-view="hub"] .app-shell {
  width: min(100vw, 520px);
  height: 100svh;
  min-height: 100svh;
  aspect-ratio: auto;
  margin: 0 auto;
  padding: 0;
  overflow-y: auto;
  overflow-x: hidden;
  border: 0;
  border-radius: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.92));
  box-shadow: none;
}@media (min-width: 821px) {
  body[data-view="hub"] .app-shell {
    width: min(100vw, 1320px);
    max-width: 1320px;
    height: min(100vh, 980px);
    min-height: 760px;
    margin: 12px auto;
    border-radius: 34px;
    border: 1px solid rgba(255,255,255,.9);
    box-shadow: 0 30px 80px rgba(57, 82, 143, .18);
  }
}#hubScreen.arcade-home {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-height: 100%;
  padding: 22px 16px calc(26px + env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 15% 4%, rgba(255,255,255,.48), transparent 18%),
    radial-gradient(circle at 86% 7%, rgba(255,255,255,.26), transparent 15%),
    linear-gradient(180deg, #17a4ff 0%, #4cb4ff 20%, #f4f6fb 55%, #f3f4fa 100%);
}@media (min-width: 821px) {
  #hubScreen.arcade-home { padding: 20px 28px 28px; gap: 24px; }
}#hubScreen.arcade-home::before,
#hubScreen.arcade-home::after,
#hubScreen.arcade-home .hub-spark { display: none; }.arcade-deco,
.arcade-deco::before,
.arcade-deco::after {
  position: absolute;
  pointer-events: none;
}.arcade-deco {
  inset: 0;
  overflow: hidden;
}.arcade-deco::before {
  content: "";
  width: 78px;
  height: 78px;
  right: 18px;
  top: 88px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, rgba(255,255,255,.6), rgba(255,255,255,.14) 60%, rgba(255,255,255,0) 62%);
  box-shadow: 0 0 0 8px rgba(255,255,255,.08);
}.arcade-deco::after {
  content: "";
  width: 56px;
  height: 56px;
  left: 10px;
  top: 104px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, rgba(255, 199, 223, .85), rgba(255, 130, 172, .52) 62%, rgba(255,255,255,0) 66%);
}.arcade-topbar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
}.arcade-menu-btn,
.arcade-floating-pill {
  border: 0;
  box-shadow: 0 12px 25px rgba(42, 72, 166, .18);
}.arcade-menu-btn {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(255,255,255,.2);
  backdrop-filter: blur(10px);
  color: #fff;
  font-size: 24px;
  font-weight: 900;
}.arcade-floating-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px 9px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(12px);
  color: #fff;
  font-weight: 900;
  font-size: 16px;
}.arcade-floating-pill em {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: linear-gradient(180deg, #ffd969, #ffb627);
  font-style: normal;
  box-shadow: inset 0 2px 0 rgba(255,255,255,.65);
}.arcade-hero-card {
  position: relative;
  z-index: 2;
  overflow: hidden;
  border-radius: 34px;
  padding: 20px 18px 18px;
  background: linear-gradient(180deg, rgba(11,130,255,.08), rgba(255,255,255,.12));
}.arcade-hero-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    radial-gradient(circle at 10% 22%, rgba(255,255,255,.38), transparent 18%),
    radial-gradient(circle at 90% 16%, rgba(255,255,255,.18), transparent 16%),
    radial-gradient(circle at 60% 0%, rgba(255, 235, 119, .18), transparent 22%);
  pointer-events: none;
}.arcade-hero-inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 115px;
  gap: 12px;
  align-items: end;
}.arcade-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 9px 14px;
  border-radius: 999px;
  background: linear-gradient(180deg, #7d57ff, #874ef4);
  color: #fff9c2;
  font-size: 14px;
  font-weight: 900;
  box-shadow: 0 10px 20px rgba(80, 70, 190, .25);
}.arcade-kicker::before,
.arcade-kicker::after { content: "✦"; color: #fff0a6; }.arcade-home h1 {
  margin: 14px 0 0;
  font-size: clamp(40px, 11vw, 74px);
  line-height: .92;
  letter-spacing: -.06em;
  color: #17328f;
  text-shadow: 0 4px 0 rgba(255,255,255,.7), 0 12px 30px rgba(18, 67, 179, .22);
}.arcade-home h1 span {
  display: inline-block;
  margin-top: 8px;
  color: #fff;
  text-shadow:
    -3px -3px 0 #2a42ae,
     3px -3px 0 #2a42ae,
    -3px  3px 0 #2a42ae,
     3px  3px 0 #2a42ae,
     0 10px 22px rgba(27, 57, 155, .3);
}.arcade-home .hero-accent { color: #ffda47; }.arcade-home .arcade-sub {
  margin: 10px 0 0;
  max-width: 94%;
  color: rgba(255,255,255,.96);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.48;
  text-shadow: 0 1px 8px rgba(29, 72, 176, .24);
}.arcade-mascot-wrap {
  position: relative;
  justify-self: end;
  display: grid;
  place-items: end;
}.arcade-mascot {
  position: relative;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 28%, #ffffff, #f2fbff 65%, #d4ecff 66%);
  box-shadow: 0 18px 38px rgba(14, 70, 165, .2);
}.arcade-mascot::before {
  content: "";
  position: absolute;
  inset: 11px 12px 16px 12px;
  border-radius: 50%;
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(252,252,255,.82));
}.arcade-mascot-face,
.arcade-mascot-face::before,
.arcade-mascot-face::after,
.arcade-crown,
.arcade-headphones,
.arcade-headphones::before,
.arcade-headphones::after {
  position: absolute;
}.arcade-mascot-face { inset: 0; }.arcade-mascot-face::before {
  content: "◕   ◡";
  left: 25px;
  top: 38px;
  color: #2e2f57;
  font-size: 26px;
  letter-spacing: 10px;
  font-weight: 900;
}.arcade-mascot-face::after {
  content: "◡";
  left: 52px;
  top: 60px;
  color: #ff7d98;
  font-size: 28px;
  font-weight: 900;
  transform: rotate(180deg);
}.arcade-headphones {
  inset: 24px 12px 18px;
  border: 8px solid #7a58ff;
  border-bottom: 0;
  border-radius: 999px 999px 0 0;
}.arcade-headphones::before,
.arcade-headphones::after {
  content: "";
  top: 30px;
  width: 20px;
  height: 34px;
  border-radius: 16px;
  background: linear-gradient(180deg, #9d7cff, #6b48e8);
}.arcade-headphones::before { left: -7px; }.arcade-headphones::after { right: -7px; }.arcade-crown {
  right: 14px;
  top: -8px;
  font-size: 26px;
  filter: drop-shadow(0 5px 8px rgba(255, 184, 0, .28));
}.arcade-feature-card {
  position: relative;
  z-index: 2;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(150px, .9fr);
  gap: 14px;
  align-items: center;
  padding: 22px 18px;
  border-radius: 30px;
  background: linear-gradient(135deg, #6a3cff, #7c3cff 25%, #a64cff 100%);
  box-shadow: 0 18px 40px rgba(93, 46, 195, .24);
  border: 4px solid rgba(255,255,255,.72);
}.arcade-feature-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.17), transparent 26%),
    radial-gradient(circle at 82% 14%, rgba(255, 205, 96, .14), transparent 24%),
    radial-gradient(circle at 82% 84%, rgba(255,255,255,.12), transparent 18%);
}.arcade-hot-sticker {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 2;
  padding: 10px 12px;
  border-radius: 18px;
  background: linear-gradient(180deg, #ff7b4d, #ff533d);
  color: #fff;
  font-size: 14px;
  font-weight: 1000;
  box-shadow: 0 8px 18px rgba(255, 92, 60, .26);
}.arcade-feature-copy { position: relative; z-index: 1; padding-top: 28px; }.arcade-feature-copy .small { color: #ffe79b; font-size: 16px; font-weight: 900; }.arcade-feature-copy h2 {
  margin: 6px 0;
  font-size: clamp(33px, 9vw, 56px);
  line-height: .95;
  color: #fff;
  text-shadow: 0 8px 20px rgba(43, 9, 92, .22);
}.arcade-feature-copy p {
  margin: 10px 0 0;
  color: rgba(255,255,255,.88);
  font-size: 15px;
  font-weight: 700;
}.arcade-feature-start {
  margin-top: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 180px;
  padding: 16px 24px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(180deg, #ffe14e, #ffb915);
  color: #8b3d00;
  font-size: 17px;
  font-weight: 1000;
  box-shadow: 0 10px 0 #e89b0d, 0 16px 30px rgba(254, 199, 41, .3);
}.arcade-feature-start:active { transform: translateY(4px); box-shadow: 0 5px 0 #e89b0d; }.arcade-feature-visual { position: relative; z-index: 1; display: grid; place-items: center; min-height: 220px; }.arcade-roulette {
  position: relative;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  border: 10px solid #ffc63a;
  background: conic-gradient(#ff6262 0 15%, #ff9638 0 30%, #ffd84b 0 45%, #53ce81 0 60%, #41b2ff 0 75%, #6575ff 0 90%, #d95aff 0 100%);
  box-shadow: 0 18px 26px rgba(20, 7, 78, .25), inset 0 0 0 6px rgba(255,255,255,.33);
}.arcade-roulette::before {
  content: "";
  position: absolute;
  inset: 50%;
  width: 34px;
  height: 34px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #fff3cc, #f4a500 60%, #d87f00 100%);
  box-shadow: 0 0 0 8px rgba(255, 207, 103, .82);
}.arcade-roulette::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -16px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-top: 26px solid #ffd96c;
  filter: drop-shadow(0 4px 4px rgba(32, 10, 90, .2));
}.arcade-coin-stack,
.arcade-coin-stack::before,
.arcade-coin-stack::after,
.arcade-star-buddy {
  position: absolute;
}.arcade-coin-stack {
  bottom: 20px;
  left: 16px;
  width: 44px;
  height: 14px;
  border-radius: 10px;
  background: linear-gradient(180deg, #ffd95b, #f2a805);
  box-shadow: 48px 8px 0 0 #f2a805, 58px 8px 0 0 #ffd95b;
}.arcade-coin-stack::before,
.arcade-coin-stack::after {
  content: "";
  width: 44px;
  height: 14px;
  border-radius: 10px;
  background: linear-gradient(180deg, #ffe781, #f4b61f);
}.arcade-coin-stack::before { left: 0; top: -10px; }.arcade-coin-stack::after { left: 48px; top: -2px; }.arcade-star-buddy {
  right: 2px;
  bottom: 6px;
  width: 82px;
  height: 82px;
  display: grid;
  place-items: center;
  font-size: 62px;
  filter: drop-shadow(0 8px 16px rgba(39, 7, 98, .23));
}.arcade-star-buddy::after {
  content: "◕◡◕";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-size: 18px;
  letter-spacing: 1px;
  color: #8a5a00;
  font-weight: 900;
}.arcade-feature-dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: -10px;
  position: relative;
  z-index: 2;
}.arcade-feature-dots span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255,255,255,.55);
}.arcade-feature-dots span.active { width: 28px; border-radius: 999px; background: #fff; }.home-section {
  position: relative;
  z-index: 2;
  padding: 0 2px;
}.home-section-head {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 12px;
}.home-section-head h3 {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: clamp(24px, 6vw, 34px);
  color: #20328d;
}.home-section-head h3 b {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #e6efff);
  box-shadow: 0 8px 18px rgba(38, 63, 142, .12);
  font-size: 22px;
}.home-section-head button {
  border: 0;
  padding: 10px 14px;
  border-radius: 999px;
  background: linear-gradient(180deg, #edf3ff, #dde8ff);
  color: #4280f5;
  font-size: 14px;
  font-weight: 900;
}.home-section-head button.active { background: linear-gradient(180deg, #4d96ff, #3478f7); color: #fff; box-shadow: 0 10px 18px rgba(52,120,247,.22); }.home-game-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}@media (min-width: 821px) {
  .home-game-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
  .home-game-grid.offline { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}.arcade-home .game-tile {
  position: relative;
  overflow: hidden;
  min-height: 220px;
  display: grid !important;
  grid-template-rows: auto minmax(112px, 1fr) auto;
  justify-items: stretch;
  align-items: stretch;
  padding: 12px;
  border: 0;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(247,248,255,.94));
  box-shadow: 0 18px 38px rgba(47, 70, 145, .12), inset 0 1px 0 rgba(255,255,255,.86);
}.arcade-home .game-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 12% 8%, rgba(255,255,255,.55), transparent 20%);
  pointer-events: none;
}.arcade-home .tile-badge {
  justify-self: start;
  padding: 7px 12px;
  border-radius: 999px;
  color: #fff;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: -.01em;
}.arcade-home .badge-hot,.arcade-home .badge-pop { background: linear-gradient(180deg, #ff5b4b, #ff3b30); }.arcade-home .badge-new { background: linear-gradient(180deg, #81d934, #52b912); }.arcade-home .badge-reco { background: linear-gradient(180deg, #8a61ff, #6b4eff); }.arcade-home .badge-online { background: linear-gradient(180deg, #ff9c2d, #ff6f1f); }.arcade-home .tile-visual {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 114px;
  margin-top: 10px;
  border-radius: 22px;
  box-shadow: inset 0 8px 24px rgba(255,255,255,.25), inset 0 -10px 20px rgba(255,255,255,.18);
}.arcade-home .tile-visual span {
  display: inline-grid;
  place-items: center;
  width: 94px;
  height: 94px;
  font-size: 60px;
  filter: drop-shadow(0 8px 14px rgba(66, 63, 120, .14));
}.arcade-home .tile-visual.word-cubes span,
.arcade-home .tile-visual.rps-hands span,
.arcade-home .tile-visual.yut-stick span,
.arcade-home .tile-visual.hammer-visual span { width: 100%; height: 100%; font-size: 52px; }.arcade-home .tile-copy {
  margin-top: 10px;
  display: block;
  text-align: center;
  min-width: 0;
}.arcade-home .tile-copy strong {
  display: block;
  color: #1e2f84;
  font-size: clamp(19px, 4.9vw, 28px);
  font-weight: 1000;
  line-height: 1.1;
  letter-spacing: -.04em;
}.arcade-home .tile-copy small {
  display: block;
  margin-top: 6px;
  color: #6982ba;
  font-size: 12px;
  line-height: 1.42;
  letter-spacing: -.01em;
}.arcade-home .tile-enter { display: none !important; }.arcade-home .ladder-tile .tile-visual { background: linear-gradient(180deg, #9fe7ff, #e8f7ff); }.arcade-home .fishing-tile .tile-visual { background: linear-gradient(180deg, #bdeeff, #e1f6ff); }.arcade-home .coin-tile .tile-visual { background: linear-gradient(180deg, #f6ddff, #fff0f9); }.arcade-home .card-tile .tile-visual { background: linear-gradient(180deg, #ffe8c2, #fff4e4); }.arcade-home .odd-tile .tile-visual { background: linear-gradient(180deg, #d5ffd8, #effff1); }.arcade-home .enhance-tile .tile-visual { background: linear-gradient(180deg, #ede0ff, #f7f1ff); }.arcade-home .roulette-tile .tile-visual { background: linear-gradient(180deg, #fff0c7, #fff6de); }.arcade-home .scratch-tile .tile-visual { background: linear-gradient(180deg, #f3e2ff, #fbf5ff); }.arcade-home .rps-online-tile .tile-visual { background: linear-gradient(180deg, #ffd7ef, #fff1f8); }.arcade-home .yut-online-tile .tile-visual { background: linear-gradient(180deg, #ffe7c0, #fff4e2); }.arcade-home .chain-online-tile .tile-visual,
.arcade-home .word-online-tile .tile-visual { background: linear-gradient(180deg, #d8ffe8, #f1fff6); }.arcade-home .word-online-tile.chain-online-tile .tile-visual { background: linear-gradient(180deg, #dbf6ff, #eefcff); }.arcade-home .tile-visual .roulette-wheel {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  border: 7px solid #f6ad00;
  background: conic-gradient(#f94f58 0 18%, #fd8e36 0 36%, #ffd855 0 54%, #5bd285 0 72%, #41b5ff 0 90%, #9d63ff 0 100%);
  box-shadow: inset 0 0 0 4px rgba(255,255,255,.35);
  position: relative;
}.arcade-home .tile-visual .roulette-wheel::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #f2a400;
  box-shadow: 0 0 0 6px rgba(255, 224, 133, .88);
}.arcade-home .tile-visual .emoji-coin { font-size: 64px; }.arcade-home .tile-visual .emoji-card { font-size: 58px; }.arcade-home .tile-visual .yut-stack,
.arcade-home .tile-visual .rps-row,
.arcade-home .tile-visual .cube-row,
.arcade-home .tile-visual .hammer-wrap { display: flex; align-items: center; justify-content: center; gap: 6px; }.arcade-home .tile-visual .rps-row i,
.arcade-home .tile-visual .yut-stack i,
.arcade-home .tile-visual .cube-row i,
.arcade-home .tile-visual .hammer-wrap i {
  font-style: normal;
  display: inline-grid;
  place-items: center;
  border-radius: 18px;
}.arcade-home .tile-visual .rps-row i { width: 42px; height: 42px; background: #fff; box-shadow: 0 6px 14px rgba(89, 80, 160, .12); font-size: 26px; }.arcade-home .tile-visual .yut-stack i { width: 18px; height: 74px; border-radius: 12px; background: linear-gradient(180deg, #d4923b, #b66a22); color: rgba(84,32,0,.75); font-size: 14px; font-weight: 900; }.arcade-home .tile-visual .cube-row i { width: 44px; height: 44px; color: #fff; font-size: 26px; font-weight: 1000; }.arcade-home .tile-visual .cube-row i:nth-child(1){ background:#42d3c0; }.arcade-home .tile-visual .cube-row i:nth-child(2){ background:#ff6cb4; }.arcade-home .tile-visual .cube-row i:nth-child(3){ background:#ff6456; }.arcade-home .tile-visual .hammer-wrap i {
  width: 92px;
  height: 82px;
  background: none;
  font-size: 72px;
}.home-shortcut-row {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}@media (min-width: 821px) { .home-shortcut-row { grid-template-columns: 1fr 1fr; gap: 16px; } }.shortcut-card {
  display: grid;
  grid-template-columns: 54px minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 92px;
  padding: 16px;
  border: 0;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(245,247,255,.96));
  box-shadow: 0 16px 34px rgba(47, 70, 145, .10);
}.shortcut-card .shortcut-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: linear-gradient(180deg, #fff6c8, #ffe5aa);
  font-size: 30px;
}.shortcut-card strong { display: block; color: #22368f; font-size: 22px; line-height: 1.12; letter-spacing: -.04em; }.shortcut-card small, .shortcut-card #todayVisitorCount {
  display: block;
  margin-top: 5px;
  color: #6982ba;
  font-size: 14px;
  font-weight: 800;
}.shortcut-card .shortcut-go { color: #97a9d8; font-size: 26px; font-weight: 900; }.arcade-bottom-nav {
  position: relative;
  bottom: auto;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: center;
  gap: 8px;
  padding: 12px 12px calc(12px + env(safe-area-inset-bottom));
  border-radius: 26px 26px 0 0;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(18px);
  box-shadow: 0 -12px 24px rgba(51, 79, 156, .10);
  margin: 8px -16px calc(-26px - env(safe-area-inset-bottom));
}@media (min-width: 821px) {
  .arcade-bottom-nav { margin: 10px -28px -28px; padding-inline: 24px; }
}.arcade-bottom-nav button {
  min-height: 66px;
  border: 0;
  border-radius: 18px;
  background: transparent;
  color: #7c879f;
  font-weight: 900;
}.arcade-bottom-nav button span {
  display: block;
  font-size: 26px;
  line-height: 1;
  margin-bottom: 6px;
}.arcade-bottom-nav button.active { color: #2681ff; }.arcade-bottom-nav button.active span { filter: drop-shadow(0 4px 10px rgba(57, 128, 255, .18)); }.arcade-ad-row { position: relative; z-index: 2; }.arcade-ad-row .adsense-zone {
  margin: 0;
  border-radius: 22px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 16px 34px rgba(47, 70, 145, .10);
}@media (max-width: 820px) {
  .arcade-hero-inner { grid-template-columns: minmax(0,1fr) 92px; }
  .arcade-mascot { width: 92px; height: 92px; }
  .arcade-mascot-face::before { left: 18px; top: 30px; font-size: 21px; letter-spacing: 8px; }
  .arcade-mascot-face::after { left: 43px; top: 49px; font-size: 24px; }
  .arcade-headphones { inset: 20px 8px 15px; border-width: 7px; }
  .arcade-headphones::before, .arcade-headphones::after { top: 24px; width: 18px; height: 30px; }
  .arcade-feature-card { grid-template-columns: minmax(0,1fr); }
  .arcade-feature-visual { min-height: 166px; }
  .arcade-roulette { width: 136px; height: 136px; }
  .arcade-star-buddy { width: 64px; height: 64px; font-size: 48px; }
  .arcade-home .game-tile { min-height: 195px; }
}:root{
  --arc-blue:#2788ff;--arc-blue2:#49b8ff;--arc-purple:#7757ff;--arc-pink:#ff6fae;
  --arc-yellow:#ffd84e;--arc-orange:#ff9d35;--arc-green:#54cf84;--arc-ink:#20317e;
  --arc-panel:#ffffff;--arc-soft:#f3f6ff;--arc-line:#dce7ff;--arc-shadow:0 18px 44px rgba(45,72,146,.14);
}.arcade-quick-menu{position:fixed;inset:0;z-index:9999;display:grid;place-items:end center;padding:18px;background:rgba(24,40,97,.28);backdrop-filter:blur(8px)}.arcade-quick-menu.hidden{display:none!important}.arcade-quick-menu-card{width:min(520px,100%);padding:18px;border-radius:28px;background:linear-gradient(180deg,#fff,#f2f5ff);box-shadow:0 28px 70px rgba(38,52,116,.28);border:2px solid rgba(255,255,255,.8)}.arcade-quick-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.arcade-quick-menu-head small{display:block;color:#7787bb;font-size:11px;font-weight:1000;letter-spacing:.13em}.arcade-quick-menu-head strong{display:block;margin-top:3px;color:var(--arc-ink);font-size:24px}.arcade-quick-menu-head button{width:42px;height:42px;border:0;border-radius:14px;background:#eef3ff;color:#6574a8;font-size:25px}.arcade-quick-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.arcade-quick-menu-grid button{min-height:112px;padding:14px;border:0;border-radius:20px;background:linear-gradient(145deg,#fff,#edf4ff);box-shadow:0 10px 24px rgba(45,72,146,.09);color:var(--arc-ink);text-align:left}.arcade-quick-menu-grid span{display:block;font-size:30px}.arcade-quick-menu-grid b{display:block;margin-top:7px;font-size:18px}.arcade-quick-menu-grid small{display:block;margin-top:4px;color:#7889b8;font-size:12px;line-height:1.35}body[data-view="game"] .app-shell,body[data-view="result"] .app-shell{background:linear-gradient(180deg,#edf8ff,#f8f6ff)!important}.primary-btn{background:linear-gradient(180deg,#5da8ff,#337ff7)!important;color:#fff!important;border:0!important;box-shadow:0 7px 0 #2362d2,0 14px 24px rgba(49,124,246,.24)!important}.secondary-btn,.ghost-btn,.tiny-btn{border-color:#dbe5ff!important;background:#fff!important;color:#42558f!important}.count-value{background:linear-gradient(145deg,#fff4bd,#ffe87c)!important;border-color:#ffd24b!important;color:#a36b00!important;box-shadow:inset 0 0 0 5px rgba(255,255,255,.5),0 10px 24px rgba(255,196,50,.18)!important}.mode-card.active{border-color:#7bb4ff!important;background:linear-gradient(145deg,#e9f5ff,#f4efff)!important;box-shadow:0 8px 0 #d7e8ff,0 16px 30px rgba(65,122,220,.11)!important}body[data-view="game"] .game-titlebar{background:linear-gradient(90deg,#258fff,#795cff)!important;border-bottom:0!important;box-shadow:0 8px 24px rgba(39,92,202,.18)!important}body[data-view="game"] .game-title-group h2,body[data-view="game"] .game-status{color:white!important}.title-mascot{background:linear-gradient(180deg,#fff2a8,#ffd65b)!important;border-color:white!important}.title-btn{background:rgba(255,255,255,.18)!important;border-color:rgba(255,255,255,.48)!important;color:white!important;box-shadow:none!important}.paper-topbar{background:linear-gradient(180deg,#f5f9ff,#ebf2ff)!important;border-bottom-color:#dbe6ff!important}.blind-title strong{color:#2e4eaa!important}.paper-footer{background:linear-gradient(180deg,#f5f9ff,#edf3ff)!important;border-top-color:#dbe6ff!important}.paper-btn{border-color:#d7e3ff!important;background:#fff!important;color:#3f548e!important}.paper-btn.strong{background:linear-gradient(180deg,#6e90ff,#6262ef)!important;color:#fff!important;border:0!important}.result-titlebar{background:linear-gradient(90deg,#2b91ff,#765cff)!important;color:#fff!important;border-radius:24px!important;padding:18px!important;box-shadow:var(--arc-shadow)}.result-titlebar h2,.result-titlebar p,.result-titlebar .step-tag{color:white!important}.summary-card{border-color:#dfe8ff!important;background:linear-gradient(180deg,#fff,#f5f8ff)!important;box-shadow:0 12px 26px rgba(52,74,146,.1)!important}.result-banner{background:rgba(255,255,255,.96)!important;border:2px solid #dce7ff!important;color:#24398e!important;box-shadow:0 16px 32px rgba(49,70,140,.16)!important}.online-grid-bg{opacity:.18!important;background-image:linear-gradient(rgba(53,119,230,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(53,119,230,.08) 1px,transparent 1px)!important}.online-topbar{background:rgba(255,255,255,.88)!important;border-bottom:1px solid #d9e6ff!important;box-shadow:0 8px 24px rgba(45,73,146,.11)!important}.online-title-icon{background:linear-gradient(180deg,#ffd95b,#ffb72b)!important;color:white!important;box-shadow:0 8px 20px rgba(255,181,37,.22)!important}.online-title-wrap small{color:#5c79c7!important}.online-title-wrap h2{color:#26398b!important}.online-net-pill{background:#eef5ff!important;border-color:#d8e5ff!important;color:#6d80ad!important}.online-net-pill.connected{color:#268a67!important;background:#e6fff5!important;border-color:#bfeeda!important}.online-leave-btn{background:#fff!important;border-color:#d7e3ff!important;color:#40558e!important}.online-eyebrow{background:#eef2ff!important;border-color:#dbe5ff!important;color:#6f63d9!important}.online-feature-row span{background:rgba(255,255,255,.72)!important;border-color:#dfe8ff!important;color:#6076aa!important}.online-field-label{color:#6479ad!important}.online-input{border:2px solid #dce6ff!important;background:#fff!important;color:#24377e!important}.online-input:focus{border-color:#7399ff!important;box-shadow:0 0 0 3px rgba(72,123,255,.12)!important}.online-room-card{border:2px solid #e0e8ff!important;background:linear-gradient(180deg,#fff,#f1f5ff)!important;color:#263a82!important;box-shadow:0 10px 22px rgba(47,71,142,.08)!important}.online-room-card.create:hover{background:#f1f7ff!important;border-color:#99b7ff!important}.room-card-icon{background:linear-gradient(180deg,#f2e9ff,#e7ddff)!important;color:#705de6!important}.online-room-card small{color:#7184ad!important}.room-code-entry button,.online-ready-btn{background:linear-gradient(180deg,#ff82b9,#ff609d)!important;box-shadow:0 7px 0 #d5407e!important;color:#fff!important}.online-ai-practice{border-color:#dce6ff!important;background:linear-gradient(180deg,#fff7c5,#ffed9b)!important;color:#77500c!important}.online-room-box{background:#eef7ff!important;border-color:#d8e7ff!important}.online-room-box>small,.match-lobby-head span{color:#5f79c6!important}.room-code-display button{background:#fff!important;color:#5268a1!important}.online-room-box p,.online-ready-hint{color:#7184ad!important}.ready-player-card{background:linear-gradient(180deg,#fff,#f1f5ff)!important;border:2px solid #dfe7ff!important;box-shadow:0 14px 30px rgba(49,72,141,.1)!important}.ready-avatar{background:linear-gradient(180deg,#dff7ff,#d5e9ff)!important;color:#3d73c8!important;border-color:#cce1ff!important}.ready-player-card.guest .ready-avatar{background:linear-gradient(180deg,#f2e8ff,#e6ddff)!important;color:#725ee1!important}.ready-player-card strong{color:#283b82!important}.ready-player-card em{color:#7184ad!important}.ready-vs span{color:#7b68e6!important}.online-player-strip{background:rgba(255,255,255,.78)!important;border-color:#dce7ff!important}.strip-player strong,.strip-room b{color:#263a82!important}.strip-player small,.strip-room span{color:#6c80ad!important}.strip-player>span{background:#e8f5ff!important;color:#3e7bc9!important}.strip-player.guest>span{background:#efeaff!important;color:#705ee0!important}.online-toast{background:rgba(255,255,255,.96)!important;border-color:#dce7ff!important;color:#2a3e83!important;box-shadow:0 12px 28px rgba(46,70,141,.14)!important}@media(max-width:820px){
  #hubScreen.arcade-home{gap:16px;padding-left:12px;padding-right:12px}.arcade-home h1{font-size:clamp(36px,10vw,50px)}.arcade-home .arcade-sub{font-size:13px}.arcade-feature-copy h2{font-size:clamp(30px,8vw,42px)}.arcade-feature-copy p{font-size:13px}.arcade-feature-start{min-width:160px;padding:14px 18px;font-size:16px}.home-section-head h3{font-size:clamp(22px,6vw,28px)}.arcade-home .game-tile{min-height:180px;padding:10px}.arcade-home .tile-visual{min-height:100px}.arcade-home .tile-copy strong{font-size:clamp(17px,4.7vw,22px)}.arcade-home .tile-copy small{font-size:11px;line-height:1.36}.arcade-bottom-nav button{font-size:11px}.shortcut-card strong{font-size:18px}.shortcut-card small,.shortcut-card #todayVisitorCount{font-size:12px}
  body[data-view="game"] .game-title-group h2,body.mobile-game-fit[data-view="game"] .game-title-group h2{font-size:17px!important;white-space:normal!important;line-height:1.1}.game-titlebar{gap:4px!important}.title-actions{gap:3px!important}.title-btn{min-height:32px!important;padding:5px 7px!important;font-size:10px!important}.blind-title span{font-size:10px!important;line-height:1.2}.paper-btn{font-size:10px!important;line-height:1.15!important}.result-toast{font-size:11px!important;line-height:1.2!important}
  .luck-title h2{font-size:18px!important;white-space:normal!important;line-height:1.05}.luck-back-btn{font-size:11px!important;padding:7px 9px!important}.luck-prompt{font-size:clamp(24px,6vw,34px)!important;line-height:1.05}.luck-subprompt{font-size:13px!important;line-height:1.35}.luck-choice{min-width:0!important;font-size:17px!important;line-height:1.18!important;padding:12px 14px!important}.luck-action{min-width:0!important;max-width:92%;font-size:18px!important;line-height:1.2!important;padding:13px 18px!important}
  .fish-page-title h2{font-size:19px!important;white-space:normal!important;line-height:1.05}.fish-page-title small{display:none!important}.fish-page-title>span{width:36px!important;height:36px!important;font-size:22px!important}.fish-title-actions .title-btn{font-size:10px!important;padding:6px 8px!important}.fish-hud{padding:6px 8px!important;gap:5px!important}.fish-hud span{font-size:8px!important}.fish-hud strong{font-size:12px!important}.fish-result-card{max-width:min(74vw,300px)!important}.fish-result-card strong{font-size:clamp(18px,5vw,26px)!important;line-height:1.1}.fish-result-card>span{font-size:12px!important;line-height:1.3}.fish-toast{max-width:86vw!important;font-size:12px!important;line-height:1.3}
  .online-title-wrap h2,body.mobile-game-fit[data-view="online-game"] .online-title-wrap h2{font-size:16px!important;white-space:normal!important;line-height:1.05}.online-leave-btn{font-size:10px!important;white-space:nowrap!important}.online-lobby-copy h3{font-size:clamp(31px,8vw,44px)!important;line-height:.98}.online-feature-row span{font-size:10px!important}.online-lobby-panel{padding:14px!important}.online-room-card{min-height:112px!important;padding:13px!important}.online-room-card strong{font-size:17px!important}.online-room-card small{font-size:11px!important}.online-ai-practice strong{font-size:15px!important}.online-ready-btn{font-size:17px!important}.ready-player-card strong{font-size:16px!important;overflow-wrap:anywhere}.match-lobby-head small{font-size:10px!important}.strip-player strong{font-size:12px!important}.strip-player small{font-size:8px!important}.strip-room{padding:0 7px!important}.strip-room b{font-size:11px!important}.online-toast{font-size:11px!important;line-height:1.25!important}
}@media(max-width:390px){
  .arcade-home .home-game-grid{gap:10px}.arcade-home .game-tile{min-height:168px}.arcade-home .tile-visual{min-height:86px}.arcade-home .tile-visual span{width:72px;height:72px;font-size:48px}.arcade-home .tile-visual .roulette-wheel{width:72px;height:72px}.arcade-home .tile-copy strong{font-size:17px}.arcade-home .tile-copy small{font-size:10.5px}.arcade-home .tile-badge{font-size:11px;padding:5px 9px}.arcade-feature-card{padding:18px 14px}.arcade-hero-inner{grid-template-columns:minmax(0,1fr) 78px}.arcade-mascot{width:76px;height:76px}.arcade-headphones{inset:16px 6px 12px;border-width:5px}.arcade-mascot-face::before{left:15px;top:25px;font-size:17px;letter-spacing:5px}.arcade-mascot-face::after{left:34px;top:42px;font-size:20px}.arcade-crown{right:7px;top:-7px;font-size:20px}
}body[data-view="hub"] #offlineLibrary.home-game-grid,
body[data-view="hub"] #onlineLibrary.home-game-grid{
  display:grid!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:auto!important;gap:16px!important;align-items:stretch!important;
}body[data-view="hub"] #offlineLibrary.home-game-grid .game-tile,
body[data-view="hub"] #onlineLibrary.home-game-grid .game-tile{
  display:grid!important;width:auto!important;height:auto!important;min-height:218px!important;
  grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(112px,1fr) auto!important;
  column-gap:0!important;row-gap:0!important;padding:12px!important;align-items:stretch!important;overflow:hidden!important;
}body[data-view="hub"] #offlineLibrary.home-game-grid .tile-badge,
body[data-view="hub"] #onlineLibrary.home-game-grid .tile-badge{grid-column:1!important;grid-row:1!important;margin:0!important;justify-self:start!important}body[data-view="hub"] #offlineLibrary.home-game-grid .tile-visual,
body[data-view="hub"] #onlineLibrary.home-game-grid .tile-visual{grid-column:1!important;grid-row:2!important;width:100%!important;margin-top:10px!important;align-self:stretch!important}body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy,
body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy{grid-column:1!important;grid-row:3!important;margin-top:10px!important;padding:0!important;align-self:auto!important;text-align:center!important}body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy strong,
body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy strong{display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;white-space:normal!important;font-size:clamp(18px,1.5vw,24px)!important;line-height:1.12!important}body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy small,
body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy small{display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;white-space:normal!important;font-size:11px!important;line-height:1.4!important}@media(max-width:820px){
 body[data-view="hub"] #offlineLibrary.home-game-grid,body[data-view="hub"] #onlineLibrary.home-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .game-tile,body[data-view="hub"] #onlineLibrary.home-game-grid .game-tile{min-height:174px!important;grid-template-rows:auto 88px auto!important;padding:9px!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .tile-visual,body[data-view="hub"] #onlineLibrary.home-game-grid .tile-visual{min-height:82px!important;margin-top:7px!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy,body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy{margin-top:7px!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy strong,body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy strong{font-size:17px!important;line-height:1.08!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy small,body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy small{font-size:10.5px!important;line-height:1.32!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .tile-visual span,body[data-view="hub"] #onlineLibrary.home-game-grid .tile-visual span{max-width:100%!important}
 body[data-view="luck-game"] .luck-game-screen[data-game="roulette"] .roulette-play{min-height:500px!important}
}@media(max-width:370px){
 body[data-view="hub"] #offlineLibrary.home-game-grid .game-tile,body[data-view="hub"] #onlineLibrary.home-game-grid .game-tile{min-height:170px!important;padding:8px!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy strong,body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy strong{font-size:16px!important}
 body[data-view="hub"] #offlineLibrary.home-game-grid .tile-copy small,body[data-view="hub"] #onlineLibrary.home-game-grid .tile-copy small{font-size:10px!important}
}.online-rematch-btn{background:linear-gradient(180deg,#6fa6ff,#6d64ef)!important;box-shadow:0 7px 0 #4b4bc1!important}.online-result-exit-btn{background:#fff0f5!important;border-color:#ffd4df!important;color:#c44f73!important}body[data-view="hub"]{
  overflow-x:hidden!important;
  overflow-y:auto!important;
}body[data-view="hub"] .app-shell{
  height:auto!important;
  max-height:none!important;
  min-height:100svh!important;
  overflow:visible!important;
}#hubScreen.arcade-home{
  display:flex!important;
  flex-direction:column!important;
  height:auto!important;
  max-height:none!important;
  min-height:100svh!important;
  overflow:visible!important;
  align-items:stretch!important;
}#hubScreen.arcade-home > *:not(.arcade-deco){
  flex:0 0 auto!important;
  min-width:0!important;
}#hubScreen.arcade-home .home-section{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  overflow:visible!important;
  clear:both!important;
}#hubScreen.arcade-home #offlineLibrary.home-game-grid,
#hubScreen.arcade-home #onlineLibrary.home-game-grid{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:grid!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  align-self:auto!important;
  align-content:start!important;
  grid-auto-flow:row!important;
  grid-template-rows:none!important;
}#hubScreen.arcade-home #offlineLibrary.home-game-grid .game-tile,
#hubScreen.arcade-home #onlineLibrary.home-game-grid .game-tile{
  position:relative!important;
  inset:auto!important;
  transform:none;
  height:auto!important;
  max-height:none!important;
  align-self:stretch!important;
}#hubScreen.arcade-home #onlineHomeTitle{scroll-margin-top:20px}#todayVisitorCount.arcade-floating-pill{white-space:nowrap}#todayVisitorCount.arcade-floating-pill b{font-size:17px;color:#fff8b9}.random-recommend-section{
  position:relative;
  z-index:2;
  width:100%;
  padding:20px;
  border:4px solid rgba(255,255,255,.82);
  border-radius:30px;
  background:
    radial-gradient(circle at 12% 10%,rgba(255,236,119,.22),transparent 24%),
    radial-gradient(circle at 90% 8%,rgba(255,135,208,.18),transparent 22%),
    linear-gradient(135deg,#6546ef,#8b4cff 50%,#b54fdc);
  box-shadow:0 20px 44px rgba(82,57,190,.22);
  overflow:hidden;
}.random-recommend-section::after{
  content:"✦  ✧  ✦";
  position:absolute;
  right:18px;
  bottom:10px;
  color:rgba(255,255,255,.18);
  font-size:34px;
  letter-spacing:10px;
  pointer-events:none;
}.random-recommend-head{
  position:relative;
  z-index:1;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}.random-recommend-kicker{
  display:block;
  color:#ffe880;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.14em;
}.random-recommend-head h2{
  margin:4px 0 0;
  color:#fff;
  font-size:clamp(27px,2.5vw,38px);
  line-height:1;
  letter-spacing:-.045em;
  text-shadow:0 6px 18px rgba(49,15,101,.26);
}.random-recommend-head small{
  color:rgba(255,255,255,.78);
  font-size:13px;
  font-weight:800;
  text-align:right;
}.random-recommend-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  width:100%;
}.random-game-card{
  position:relative;
  min-width:0;
  min-height:176px;
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  grid-template-rows:auto 1fr auto;
  gap:4px 13px;
  align-items:center;
  padding:15px;
  border:2px solid rgba(255,255,255,.75);
  border-radius:24px;
  background:linear-gradient(160deg,rgba(255,255,255,.97),rgba(245,247,255,.94));
  color:#24357e;
  text-align:left;
  box-shadow:0 12px 26px rgba(48,24,112,.18),inset 0 1px 0 #fff;
  overflow:hidden;
}.random-game-card:hover{transform:translateY(-3px);box-shadow:0 17px 30px rgba(48,24,112,.23),inset 0 1px 0 #fff}.random-game-card:active{transform:translateY(1px)}.random-game-card .recommend-icon{
  grid-column:1;
  grid-row:1/4;
  width:88px;
  height:112px;
  display:grid;
  place-items:center;
  border-radius:21px;
  background:var(--rec-bg,linear-gradient(180deg,#dff3ff,#eef2ff));
  font-size:54px;
  box-shadow:inset 0 5px 16px rgba(255,255,255,.55);
}.random-game-card .recommend-label{
  justify-self:start;
  padding:5px 9px;
  border-radius:999px;
  background:var(--rec-accent,#5d87ff);
  color:#fff;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.08em;
}.random-game-card strong{
  display:block;
  min-width:0;
  color:#223680;
  font-size:clamp(20px,1.7vw,27px);
  line-height:1.08;
  letter-spacing:-.045em;
  white-space:normal;
  overflow-wrap:anywhere;
}.random-game-card small{
  display:block;
  min-width:0;
  color:#7182ad;
  font-size:11px;
  font-weight:750;
  line-height:1.35;
  white-space:normal;
  overflow-wrap:anywhere;
}.random-game-card .recommend-go{
  align-self:end;
  color:var(--rec-accent,#5d87ff);
  font-size:12px;
  font-weight:1000;
}@media (min-width:821px){
  body[data-view="hub"] .app-shell{
    width:min(97vw,1800px)!important;
    margin:1.5vh auto!important;
  }
  #hubScreen.arcade-home{gap:24px!important;padding-bottom:32px!important}
  #hubScreen.arcade-home #offlineLibrary.home-game-grid,
  #hubScreen.arcade-home #onlineLibrary.home-game-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-auto-rows:minmax(218px,auto)!important;
    gap:16px!important;
  }
  #hubScreen.arcade-home #offlineLibrary.home-game-grid .game-tile,
  #hubScreen.arcade-home #onlineLibrary.home-game-grid .game-tile{
    min-height:218px!important;
  }
  #hubScreen.arcade-home .home-section + .home-section{margin-top:4px!important}
}@media (min-width:821px) and (max-width:1100px){
  #hubScreen.arcade-home #offlineLibrary.home-game-grid,
  #hubScreen.arcade-home #onlineLibrary.home-game-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:minmax(218px,auto)!important;
  }
  .random-recommend-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .random-game-card{grid-template-columns:72px minmax(0,1fr);padding:12px;gap:4px 9px}
  .random-game-card .recommend-icon{width:68px;height:100px;font-size:43px}
  .random-game-card strong{font-size:19px}
}@media (max-width:820px){
  body[data-view="hub"] .app-shell{overflow:visible!important}
  #hubScreen.arcade-home{height:auto!important;overflow:visible!important}
  .random-recommend-section{padding:16px 12px;border-radius:26px}
  .random-recommend-head{align-items:start;flex-direction:column;gap:5px;margin-bottom:11px}
  .random-recommend-head small{text-align:left;font-size:11px}
  .random-recommend-grid{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding:1px 2px 8px;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }
  .random-game-card{
    flex:0 0 min(86vw,330px);
    min-height:150px;
    grid-template-columns:76px minmax(0,1fr);
    padding:12px;
    border-radius:20px;
    scroll-snap-align:start;
  }
  .random-game-card .recommend-icon{width:70px;height:96px;border-radius:17px;font-size:43px}
  .random-game-card strong{font-size:20px}
  .random-game-card small{font-size:10.5px}
}body[data-view="hub"] .app-shell{background:#f6f7fb!important}#hubScreen.arcade-home{
  background:
    radial-gradient(circle at 14% 6%,rgba(255,255,255,.34),transparent 17%),
    radial-gradient(circle at 88% 7%,rgba(255,218,95,.16),transparent 15%),
    linear-gradient(180deg,#109cf4 0,#4bb2ff 25%,#eef3fb 52%,#f7f7fb 100%)!important;
}.arcade-topbar{min-height:44px;gap:12px}.arcade-brand-mini{display:flex;align-items:center;gap:8px;color:#fff;font-size:12px;font-weight:1000;letter-spacing:.12em;text-shadow:0 2px 10px rgba(24,69,157,.22)}.arcade-brand-mini span{width:36px;height:36px;display:grid;place-items:center;border-radius:13px;background:rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.45);font-size:21px}.arcade-top-actions-compact{display:flex;align-items:center;gap:8px;margin-left:auto}.recent-game-quick{min-height:36px!important;height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:rgba(255,255,255,.18);backdrop-filter:blur(12px);color:#fff;box-shadow:0 8px 18px rgba(31,76,164,.12);display:flex;align-items:center;gap:7px;font-size:11px;font-weight:900;white-space:nowrap}.recent-game-quick span{font-size:16px}.recent-game-quick:disabled{opacity:.62;cursor:default}.recent-game-quick:not(:disabled):hover{background:rgba(255,255,255,.28);transform:translateY(-1px)}.arcade-floating-pill{min-height:36px!important;height:36px;padding:0 11px!important;gap:5px!important;font-size:11px!important;white-space:nowrap}.arcade-floating-pill em{width:24px!important;height:24px!important;font-size:14px}.arcade-hero-card{padding:12px 18px 8px!important;background:transparent!important}.arcade-home h1{font-weight:1000!important;line-height:.91!important}.arcade-home h1 .hero-accent{color:#ffe24c!important;text-shadow:-2px -2px 0 #773bed,2px -2px 0 #773bed,-2px 2px 0 #773bed,2px 2px 0 #773bed,0 8px 20px rgba(36,54,160,.24)!important}.arcade-home h1 span:not(.hero-accent){background:linear-gradient(90deg,#fff 0 20%,#8bdcff 20% 42%,#ff87cb 42% 62%,#fff 62% 78%,#7fdaff 78%);-webkit-background-clip:text;background-clip:text;color:transparent!important;text-shadow:none!important;-webkit-text-stroke:3px #2944a9;filter:drop-shadow(0 8px 14px rgba(27,64,155,.22))}.arcade-kicker{background:linear-gradient(180deg,#8562ff,#674bd9)!important;border:2px solid rgba(255,255,255,.45);box-shadow:0 9px 18px rgba(73,60,185,.2)!important}.arcade-mascot{box-shadow:0 14px 32px rgba(23,76,169,.2),inset 0 2px 0 #fff!important}.random-recommend-section{position:relative;overflow:visible;padding:18px 20px 34px!important;border-radius:34px!important;background:linear-gradient(180deg,#1a1f2d 0%,#0f131d 100%)!important;border:10px solid #2d3240!important;box-shadow:0 24px 48px rgba(5,8,20,.42), inset 0 0 0 2px rgba(255,255,255,.05)!important}.random-recommend-section::before,.random-recommend-section::after{content:"";position:absolute;bottom:-36px;width:8px;height:54px;border-radius:999px;background:linear-gradient(180deg,#5f6674,#242a35);box-shadow:0 8px 14px rgba(0,0,0,.32)}.random-recommend-section::before{left:12%;transform:rotate(18deg);transform-origin:top center}.random-recommend-section::after{right:12%;transform:rotate(-18deg);transform-origin:top center}.random-recommend-kicker{color:#ff6a6a!important;letter-spacing:.18em!important}.random-recommend-head{align-items:center!important;margin-bottom:12px!important}.random-recommend-head h2{font-size:clamp(28px,2.6vw,42px)!important;color:#f5f8ff!important;text-shadow:0 2px 12px rgba(0,0,0,.35)}.recommend-controls{display:flex;align-items:center;gap:9px;position:relative;z-index:2}.recommend-controls>button{width:36px;height:36px;min-height:36px!important;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:27px;line-height:1;box-shadow:0 7px 14px rgba(0,0,0,.24)}.recommend-controls>button:hover{background:rgba(255,255,255,.16)}.recommend-dots{display:flex;gap:6px}.recommend-dots button{width:8px;height:8px;min-height:8px!important;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.28);transition:.2s}.recommend-dots button.active{width:23px;background:#7fffd4}.recommend-viewport{position:relative;z-index:1;overflow:hidden;border-radius:24px;padding:10px;background:linear-gradient(180deg,#0c1018,#151b29);box-shadow:inset 0 0 0 2px rgba(255,255,255,.04), inset 0 0 24px rgba(0,0,0,.45)}.recommend-viewport::before{content:"";position:absolute;inset:0;border-radius:24px;border:1px solid rgba(255,255,255,.06);pointer-events:none}.recommend-viewport::after{content:"";position:absolute;inset:12px;border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.14),transparent 24%,transparent 70%,rgba(255,255,255,.06));pointer-events:none}.random-recommend-grid{display:flex!important;grid-template-columns:none!important;gap:0!important;width:100%!important;overflow:visible!important;padding:0!important}.random-game-card{flex:0 0 100%!important;width:100%!important;min-height:218px!important;display:grid!important;grid-template-columns:minmax(180px,.78fr) minmax(0,1.22fr)!important;grid-template-rows:1fr!important;gap:22px!important;align-items:center!important;padding:18px 22px!important;border:2px solid rgba(255,255,255,.78)!important;border-radius:24px!important;background:linear-gradient(160deg,rgba(255,255,255,.99),rgba(245,247,255,.97))!important;box-shadow:0 14px 28px rgba(47,23,112,.17),inset 0 2px 0 #fff!important;scroll-snap-align:none!important;text-align:left!important;overflow:hidden!important}.random-game-card:hover{transform:none!important}.recommend-art{display:grid;place-items:center;min-height:178px;border-radius:22px;overflow:hidden;background:#eef4ff}.recommend-art>.game-art{width:100%;height:178px;display:block}.recommend-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.recommend-label{padding:6px 10px;border-radius:999px;background:linear-gradient(180deg,#ff764f,#ff4a42);color:#fff;font-size:10px;font-weight:1000;letter-spacing:.12em}.random-game-card strong{margin-top:10px!important;font-size:clamp(31px,3vw,48px)!important;line-height:1!important;color:#203589!important}.random-game-card small{margin-top:8px!important;max-width:590px;font-size:14px!important;line-height:1.55!important;color:#6f82b3!important}.recommend-go{margin-top:18px;padding:12px 18px;border-radius:999px;background:linear-gradient(180deg,#ffe36a,#ffbd20);color:#8a4c00!important;font-size:14px!important;font-weight:1000!important;box-shadow:0 6px 0 #e9a513}.recommend-go b{font-size:20px;vertical-align:-1px}.random-banner-card{position:relative;flex:0 0 100%!important;width:100%!important;min-height:218px!important;display:grid!important;grid-template-columns:1fr!important;gap:0!important;align-items:stretch!important;padding:12px!important;border:2px solid rgba(255,255,255,.08)!important;border-radius:20px!important;background:linear-gradient(180deg,#020409,#0c1018)!important;box-shadow:0 18px 32px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,255,255,.03)!important;overflow:hidden!important}.random-banner-card img{display:block;width:100%;height:100%;min-height:218px;object-fit:contain;background:#111723;border-radius:12px;padding:8px}.random-banner-card .banner-placeholder{display:grid;place-items:center;min-height:218px;font-size:16px;font-weight:900;color:#dbe7ff;background:#111723;border-radius:12px}@media(max-width:820px){.random-banner-card,.random-banner-card img,.random-banner-card .banner-placeholder{min-height:188px!important}.random-banner-card img{padding:4px}}@media(max-width:390px){.random-banner-card,.random-banner-card img,.random-banner-card .banner-placeholder{min-height:188px!important}.random-banner-card img{padding:2px}}.arcade-home .game-tile{border:2px solid rgba(255,255,255,.98)!important;background:linear-gradient(180deg,#fff,#f7f8ff)!important;box-shadow:0 14px 30px rgba(47,70,145,.12),0 3px 0 rgba(203,214,243,.8)!important}.arcade-home .game-tile:hover{transform:translateY(-4px)!important;box-shadow:0 20px 36px rgba(47,70,145,.17),0 3px 0 rgba(203,214,243,.8)!important}.arcade-home .tile-visual{padding:0!important;overflow:hidden!important;background:transparent!important;box-shadow:none!important}.arcade-home .tile-visual>.game-art{width:100%!important;height:100%!important;min-height:118px;display:block;border-radius:20px}.arcade-home .tile-copy strong{font-weight:1000!important}.home-section-head h3{font-weight:1000!important}.arcade-home .tile-visual.yut-home-art{display:block!important;min-height:118px!important;width:100%!important;background:transparent!important}.arcade-home .tile-visual.yut-home-art>.game-art{display:block;width:100%!important;height:100%!important;min-height:118px!important;border-radius:20px;transform:scale(1.02);transform-origin:center center}@media(max-width:480px){.arcade-home .tile-visual.yut-home-art{min-height:100px!important}.arcade-home .tile-visual.yut-home-art>.game-art{min-height:100px!important}}.arcade-bottom-nav,.arcade-quick-menu{display:none!important}.arcade-version-footer{text-align:center;padding:8px 0 2px;color:#a3adc7;font-size:10px;font-weight:800;letter-spacing:.08em}@media(max-width:820px){
  .arcade-topbar{align-items:flex-start}.arcade-brand-mini b{display:none}.arcade-top-actions-compact{gap:5px}.recent-game-quick{max-width:158px;padding:0 9px;font-size:10px}.recent-game-quick b{overflow:hidden;text-overflow:ellipsis}.arcade-floating-pill{padding:0 8px!important}.arcade-floating-pill span:first-of-type{display:none}
  .arcade-hero-card{padding:8px 4px 4px!important}.arcade-home .arcade-sub{max-width:88%!important}
  .random-recommend-section{padding:15px 12px 28px!important;border-radius:26px!important;border-width:8px!important}.random-recommend-head{flex-direction:row!important;align-items:center!important;gap:10px!important}.random-recommend-head h2{font-size:28px!important}.random-recommend-kicker{font-size:10px!important}.recommend-controls{gap:6px}.recommend-controls>button{width:32px;height:32px;min-height:32px!important;font-size:23px}.recommend-dots{gap:4px}.recommend-dots button{width:6px;height:6px;min-height:6px!important}.recommend-dots button.active{width:16px}.random-recommend-section::before,.random-recommend-section::after{bottom:-26px;width:6px;height:38px}.random-recommend-section::before{left:10%;transform:rotate(16deg)}.random-recommend-section::after{right:10%;transform:rotate(-16deg)}
  .random-game-card{min-height:188px!important;grid-template-columns:42% minmax(0,1fr)!important;gap:11px!important;padding:11px!important;border-radius:20px!important}.recommend-art{min-height:160px;border-radius:18px}.recommend-art>.game-art{height:160px}.random-game-card strong{font-size:clamp(23px,7vw,31px)!important;margin-top:7px!important}.random-game-card small{font-size:11px!important;line-height:1.4!important;margin-top:5px!important}.recommend-label{font-size:8px;padding:4px 7px}.recommend-go{margin-top:10px;padding:9px 12px;font-size:11px!important;box-shadow:0 4px 0 #e9a513}
  .arcade-home .tile-visual>.game-art{min-height:90px}.arcade-version-footer{font-size:9px;padding-bottom:4px}
}@media(max-width:390px){.recent-game-quick{max-width:132px}.recent-game-quick span{display:none}.arcade-floating-pill em{display:none}.random-game-card{grid-template-columns:40% minmax(0,1fr)!important}.recommend-art,.recommend-art>.game-art{min-height:145px;height:145px}.random-game-card small{display:-webkit-box!important;-webkit-line-clamp:3;line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}:root{--arc-blue:#2388ff;--arc-blue2:#68c9ff;--arc-purple:#7857ff;--arc-pink:#ff5f9b;--arc-yellow:#ffd84c;--arc-ink:#20347e;--arc-shadow:0 18px 45px rgba(30,67,150,.18)}body[data-view="game"] .paper-topbar{background:linear-gradient(90deg,#fff3b7,#ffe7f1 48%,#e6e2ff)!important;border-radius:24px 24px 0 0!important;border-bottom:2px solid #dfe9ff!important}.blind-title strong{color:#3250a5!important}.blind-dot{background:#ff5d83!important;box-shadow:0 0 0 5px rgba(255,93,131,.14),0 0 18px rgba(255,93,131,.35)!important}.label-pill,.top-label,.bottom-label{filter:drop-shadow(0 5px 8px rgba(50,83,153,.12))}.coin-face{border-color:#ffcf3e!important;background:radial-gradient(circle at 32% 26%,#fff9ca 0 7%,#ffe465 23%,#f7b825 62%,#cb7910 100%)!important;box-shadow:inset 0 0 0 6px rgba(255,255,255,.24),inset -13px -16px 22px rgba(112,60,0,.18),0 22px 45px rgba(10,21,80,.34)!important}.card-back{background:repeating-linear-gradient(45deg,#4c45d9 0 7px,#6b5dff 7px 14px)!important;border:4px solid #fff!important}.number-reactor{filter:drop-shadow(0 18px 30px rgba(16,27,100,.28))}.reactor-ring{border-top-color:#ffe85a!important;border-bottom-color:#59eaff!important}.energy-core{box-shadow:0 0 28px rgba(255,194,74,.55),0 0 95px rgba(255,76,159,.28),inset -18px -22px 38px rgba(55,5,75,.28)!important}.result-banner.show{animation:arcadeResultPop .42s cubic-bezier(.2,.8,.2,1)}@keyframes arcadeResultPop{0%{opacity:0;scale:.75}70%{scale:1.06}100%{opacity:1;scale:1}}@keyframes arcSpark{to{transform:translateY(5px);filter:brightness(1.35)}}.online-grid-bg{opacity:.18!important;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px)!important}.online-title-icon{background:linear-gradient(180deg,#ffe15c,#ff9e21)!important;color:#763500!important;border:2px solid rgba(255,255,255,.68)!important;box-shadow:0 8px 20px rgba(254,170,30,.28)!important}.online-eyebrow,.online-feature-row span{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.25)!important;color:#fff!important}.online-field-label,.online-room-card small,.online-room-box p{color:#6f82b2!important}.online-input{background:#fff!important;color:#25377d!important;border-color:#cedcff!important}.online-room-card{background:linear-gradient(180deg,#fff,#f1f5ff)!important;border-color:#dbe5ff!important;color:#23367f!important;box-shadow:0 10px 24px rgba(49,72,143,.09)!important}.online-room-card.create:hover{background:linear-gradient(180deg,#f2fff7,#e8fff4)!important;border-color:#8ce4bb!important}.room-code-entry button,.online-ready-btn,.online-ai-practice{background:linear-gradient(180deg,#54d895,#24aa69)!important;color:#fff!important;box-shadow:0 7px 0 #16814d!important}.online-player-strip{background:linear-gradient(180deg,rgba(21,53,154,.88),rgba(28,38,112,.9))!important;border-color:rgba(255,255,255,.22)!important}.strip-player strong,.strip-room b{color:#fff!important}.strip-player small,.strip-room span{color:#b8ddff!important}@keyframes stoneDrop{0%{transform:translate(-50%,-50%) scale(.35);opacity:.2}100%{transform:translate(-50%,-50%) scale(1);opacity:1}}:root,
body,
button,
input,
textarea,
select {
  font-family: Pretendard, "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}body.font-ready,
body.font-ready button,
body.font-ready input,
body.font-ready textarea,
body.font-ready select {
  font-family: "DNFBitBit", Pretendard, "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}#hubScreen.arcade-home.hidden,
#hubScreen.hidden,
#fishGameScreen.hidden,
#luckGameScreen.hidden,
#onlineGameScreen.hidden,
#fishSetupScreen.hidden { display:none !important; }body:not([data-view="hub"]) #hubScreen { display:none !important; }body[data-view="hub"] #hubScreen:not(.hidden) { display:flex !important; }@keyframes v14AimPulse{50%{transform:translate(-50%,-50%) scale(1.14);filter:brightness(1.08)}}#v14GameFxLayer{position:fixed;inset:0;z-index:99998;pointer-events:none;overflow:hidden}.v14-tap-ring{position:fixed;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid rgba(255,255,255,.86);border-radius:50%;box-shadow:0 0 0 2px rgba(82,117,255,.2);animation:v14TapRing .38s ease-out forwards}@keyframes v14TapRing{to{opacity:0;transform:scale(2.6)}}.v14-fx-particle{--tx:0px;--ty:-70px;position:fixed;width:9px;height:9px;margin:-4px 0 0 -4px;border-radius:2px;background:#ffe05e;box-shadow:0 0 8px rgba(255,224,94,.7);animation:v14Particle .72s cubic-bezier(.12,.65,.2,1) forwards}.v14-fx-particle.cyan{background:#6fe9ff;box-shadow:0 0 8px rgba(80,220,255,.72);border-radius:50%}.v14-fx-particle.pink{background:#ff7ab6;box-shadow:0 0 8px rgba(255,91,158,.7)}.v14-fx-particle.red{background:#ff6177;box-shadow:0 0 8px rgba(255,64,93,.55);border-radius:50%}.v14-fx-particle.bubble{width:12px;height:12px;border:2px solid rgba(224,250,255,.88);background:rgba(128,224,255,.18);border-radius:50%;box-shadow:inset 0 0 4px rgba(255,255,255,.75);animation-name:v14Bubble}@keyframes v14Particle{0%{opacity:0;transform:translate(0,0) scale(.3) rotate(0)}18%{opacity:1}100%{opacity:0;transform:translate(var(--tx),var(--ty)) scale(.75) rotate(260deg)}}@keyframes v14Bubble{0%{opacity:0;transform:translate(0,0) scale(.4)}18%{opacity:1}100%{opacity:0;transform:translate(var(--tx),var(--ty)) scale(1.25)}}.v14-impact-ring{position:fixed;width:46px;height:46px;margin:-23px 0 0 -23px;border:3px solid rgba(255,239,106,.88);border-radius:50%;animation:v14Impact .55s ease-out forwards;box-shadow:0 0 18px rgba(255,225,70,.48)}@keyframes v14Impact{to{opacity:0;transform:scale(2.4)}}.v14-shake{animation:v14SoftShake .3s ease!important}@keyframes v14SoftShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-3px)}}.v14-success-pop{animation:v14SuccessPop .48s cubic-bezier(.15,.8,.2,1)!important}@keyframes v14SuccessPop{0%{filter:brightness(1);transform:scale(1)}45%{filter:brightness(1.18);transform:scale(1.025)}100%{filter:brightness(1);transform:scale(1)}}@keyframes v14ReactorHit{45%{transform:scale(1.08);filter:brightness(1.35)}100%{transform:scale(1);filter:none}}@keyframes v14RpsWave{from{opacity:.9;transform:scale(.45)}to{opacity:0;transform:scale(1.3)}}@keyframes v14WordPop{0%{opacity:.2;transform:translateY(8px) scale(.9)}100%{opacity:1;transform:none}}.result-toast.show:not(.playing){animation:v14ToastResult .38s cubic-bezier(.2,.8,.2,1)}@keyframes v14ToastResult{0%{transform:translateY(4px) scale(.96);opacity:.3}100%{transform:none;opacity:1}}.game-tile .tile-copy strong,.home-section-head h3,.random-recommend-head h2,.luck-title h2,.luck-prompt,.online-game-screen h2,.online-game-screen h3,.fish-page-title h2,.ladder-title h1,.result-banner,.online-toast,.word-required-letter,.rps-center b,.draw-title,.draw-status strong,.draw-result strong{
  text-rendering:optimizeLegibility;letter-spacing:-.025em;
}.game-tile .tile-copy strong,.home-section-head h3,.luck-title h2,.fish-page-title h2,.online-game-screen h2,.online-game-screen h3,.draw-title{
  -webkit-text-stroke:.22px rgba(28,43,85,.24);paint-order:stroke fill;text-shadow:0 1px 0 rgba(255,255,255,.75),0 2px 5px rgba(37,54,98,.12)
}.game-tile .tile-copy small,.luck-subprompt,.luck-rule-card p,.word-turn-wait,.word-required-card p,.online-lobby p{line-height:1.48;font-weight:800}.draw-shell{width:100%;height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:10px;padding:clamp(10px,1.4vw,18px);color:#2b3e82}.draw-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.draw-head-copy small{display:block;color:#7a8cb8;font-size:11px;font-weight:1000;letter-spacing:.16em}.draw-title{margin:2px 0 0;font-size:clamp(25px,2.6vw,38px);color:#273c83}.draw-head-copy p{margin:5px 0 0;color:#6f80ad;font-weight:850;font-size:13px;line-height:1.4}.draw-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.draw-controls label{display:flex;align-items:center;gap:7px;padding:6px 9px;border-radius:12px;background:rgba(255,255,255,.82);border:1px solid #dfe7ff;color:#53699d;font-size:12px;font-weight:950}.draw-controls select,.draw-controls input{height:34px;border:1px solid #cdd9f7;border-radius:9px;background:#fff;color:#324a88;font-weight:1000;padding:0 9px;outline:none}.draw-controls input{width:64px;text-align:center}.draw-btn{border:0;border-radius:12px;padding:10px 17px;background:linear-gradient(135deg,#5c7cff,#6d5be7);color:#fff;font-size:14px;font-weight:1000;box-shadow:0 5px 0 #3e4caa}.draw-btn:active{transform:translateY(2px);box-shadow:0 3px 0 #3e4caa}.draw-btn.secondary{background:linear-gradient(135deg,#ff9961,#e56c69);box-shadow:0 5px 0 #a64b4e}.draw-status{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 13px;border:1px solid #dfe7ff;border-radius:14px;background:rgba(255,255,255,.9);box-shadow:0 7px 18px rgba(62,87,143,.08)}.draw-status strong{font-size:clamp(15px,1.45vw,20px);color:#314a8a}.draw-status span{color:#7888ae;font-size:12px;font-weight:900}.draw-status.red{border-color:#ffbbc4;background:#fff5f7}.draw-status.red strong{color:#d74962}.draw-status.blue{border-color:#bccaff;background:#f5f7ff}.draw-status.blue strong{color:#4164d5}.draw-status.win{border-color:#ffe09a;background:#fff9e6}.draw-status.win strong{color:#b87509}.draw-status.lose{border-color:#ffc2cf;background:#fff3f6}.draw-status.lose strong{color:#cd435f}.draw-board{min-height:0;overflow:auto;display:grid;align-content:center;justify-content:center;gap:clamp(6px,.75vw,10px);padding:8px;border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(240,245,255,.82));border:1px solid #dce6ff}.draw-board.count-2{grid-template-columns:repeat(2,minmax(130px,220px));gap:clamp(14px,2vw,26px)}.draw-board.count-30,.draw-board.custom-grid{grid-template-columns:repeat(10,minmax(48px,72px));align-content:center}.draw-card{position:relative;aspect-ratio:1;border:0;border-radius:13px;background:transparent;padding:0;perspective:500px;cursor:pointer;min-width:0}.draw-card:disabled{cursor:default}.draw-card-inner{position:absolute;inset:0;border-radius:inherit;transform-style:preserve-3d;transition:transform .38s cubic-bezier(.18,.75,.22,1)}.draw-card.revealed .draw-card-inner{transform:rotateY(180deg)}.draw-face{position:absolute;inset:0;border-radius:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;backface-visibility:hidden;border:2px solid rgba(255,255,255,.92);box-shadow:0 7px 15px rgba(58,73,127,.14)}.draw-cover{background:linear-gradient(145deg,#7066ed,#4c77e8);color:#fff}.draw-cover b{font-size:clamp(18px,2.1vw,30px)}.draw-cover small{font-size:9px;letter-spacing:.12em;font-weight:1000;opacity:.88}.draw-reveal{transform:rotateY(180deg);background:#fff}.draw-reveal b{font-size:clamp(23px,2.5vw,36px)}.draw-reveal small{margin-top:2px;font-size:10px;font-weight:1000}.draw-card.win .draw-reveal{background:linear-gradient(145deg,#fff7c9,#ffe278);border-color:#ffd052;color:#975e00}.draw-card.blank .draw-reveal{background:linear-gradient(145deg,#f7f8fc,#e8ebf2);border-color:#cfd5e1;color:#667087}.draw-card.owner-red .draw-face{box-shadow:0 0 0 3px #ff6579,0 8px 18px rgba(212,65,86,.2)}.draw-card.owner-blue .draw-face{box-shadow:0 0 0 3px #557cff,0 8px 18px rgba(67,92,207,.2)}.draw-card.revealed.win{animation:drawWinPop .45s ease both}.draw-card.revealed.blank{animation:drawFailWobble .42s ease both}@keyframes drawWinPop{45%{transform:translateY(-5px)}100%{transform:none}}@keyframes drawFailWobble{25%{transform:rotate(-2deg)}55%{transform:rotate(2deg)}100%{transform:none}}.draw-board.count-2 .draw-card{min-width:140px}.draw-board.count-2 .draw-reveal b,.draw-board.count-2 .draw-cover b{font-size:clamp(38px,5vw,70px)}.draw-board.count-2 .draw-reveal small{font-size:15px}.draw-result{min-height:44px;display:flex;align-items:center;justify-content:center;gap:12px}.draw-result strong{font-size:18px;color:#344a88}.draw-result .draw-btn{min-width:150px}.draw-streak{display:flex;gap:5px;align-items:center}.draw-streak i{width:16px;height:16px;border-radius:50%;background:#e0e5f1;box-shadow:inset 0 0 0 1px #cbd3e5}.draw-streak i.on{background:#ffd04d;box-shadow:0 0 12px rgba(255,193,42,.55),inset 0 0 0 2px #fff}.global-tap-fx{position:fixed;z-index:99999;width:18px;height:18px;border:2px solid rgba(92,112,255,.6);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);animation:globalTap .42s ease-out forwards}@keyframes globalTap{to{width:58px;height:58px;opacity:0}}.game-burst{position:fixed;z-index:99998;inset:0;pointer-events:none;overflow:hidden}.game-burst i{position:absolute;left:50%;top:50%;width:9px;height:9px;border-radius:50%;background:currentColor;animation:burstFly .75s ease-out forwards;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-15px)}@keyframes burstFly{to{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-150px) scale(.25)}}.game-stage-pulse{animation:stagePulse .34s ease}@keyframes stagePulse{45%{filter:brightness(1.07)}100%{filter:none}}@media(max-width:520px){.draw-board.count-30,.draw-board.custom-grid{grid-template-columns:repeat(6,minmax(38px,1fr));gap:5px;padding:6px}.draw-board.count-2 .draw-card{min-width:0}.draw-controls{gap:5px}.draw-controls label{padding:5px 7px}.draw-controls select,.draw-controls input{height:31px}.draw-btn{padding:8px 12px;font-size:13px}.draw-head-copy p{font-size:12px}.draw-status{padding:7px 9px}.draw-status span{font-size:11px}}:root{--v20-ink:#263a76;--v20-muted:#6479a6;--v20-line:#dbe5fb;--v20-card:#ffffff;--v20-soft:#f4f8ff}body{background:linear-gradient(145deg,#eef8ff,#fff7f0 48%,#f5f0ff)!important;color:var(--v20-ink)}.draw-shell,.draw-board,.draw-status,.draw-mode-menu,.draw-mode-card{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;opacity:1!important}.draw-shell{background:#fff!important;border:1px solid #dce6f8;border-radius:22px;box-shadow:0 16px 38px rgba(55,82,139,.11);color:#263f7c!important;grid-template-rows:auto auto auto minmax(0,1fr) auto!important}.draw-board{background:#f4f8ff!important;border:1px solid #d8e4fa!important}.draw-card,.draw-card:disabled,.draw-card-inner,.draw-face{opacity:1!important;filter:none!important}.draw-face{box-shadow:0 6px 14px rgba(53,78,130,.13)!important}.draw-cover{background:linear-gradient(145deg,#7c75f2,#557fe9)!important;color:#fff!important}.draw-reveal{background:#fff!important;color:#405482!important}.draw-card.blank .draw-reveal{background:#f7f9fe!important;color:#566887!important}.draw-card.win .draw-reveal{background:#fff4bc!important;color:#925900!important}.draw-mode-menu{height:100%;min-height:0;display:flex;flex-direction:column;gap:14px;padding:clamp(8px,1.5vw,16px);background:#fff;border-radius:20px}.draw-mode-menu-head{text-align:center}.draw-mode-menu-head small{display:block;color:#7387b4;font-size:12px;font-weight:1000;letter-spacing:.14em}.draw-mode-menu-head h3{margin:4px 0;color:#263f7e;font-size:clamp(28px,3vw,42px);text-shadow:0 2px 0 #fff}.draw-mode-menu-head p{margin:5px 0 0;color:#6378a5;font-weight:850;line-height:1.45}.draw-mode-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:center}.draw-mode-card{min-height:clamp(140px,22vh,230px);padding:18px;border:2px solid #dbe5fa;border-radius:20px;background:linear-gradient(145deg,#fff,#f2f7ff);color:#2c447f;text-align:left;box-shadow:0 9px 20px rgba(52,76,127,.10);transition:.16s}.draw-mode-card:hover{transform:translateY(-3px);border-color:#91a9eb;box-shadow:0 13px 27px rgba(53,80,145,.15)}.draw-mode-card b{display:block;font-size:clamp(21px,2vw,31px);font-weight:1000}.draw-mode-card span{display:block;margin-top:7px;color:#6479a6;font-size:13px;font-weight:850;line-height:1.45}.draw-mode-card i{display:inline-grid;place-items:center;width:42px;height:42px;margin-bottom:10px;border-radius:13px;background:#eef2ff;font-style:normal;font-size:24px}.draw-mode-nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:7px;border:1px solid #dce6f8;border-radius:14px;background:#f5f8ff}.draw-mode-nav button{border:1px solid #d6e0f5;border-radius:10px;background:#fff;color:#536a9e;padding:7px 11px;font-weight:1000}.draw-mode-nav button.active{background:#627be5;color:#fff;border-color:#627be5}.draw-mode-nav .draw-mode-home{margin-left:auto;background:#fff5dd;color:#966400;border-color:#f0d486}.online-player-strip{background:linear-gradient(180deg,#607bdd,#4c66c8)!important}.online-toast{background:#fff!important;color:#2b437e!important;border:1px solid #d8e3f8!important;text-shadow:none!important;box-shadow:0 9px 24px rgba(52,75,125,.16)!important}.turn-banner{background:#eef4ff!important;border-color:#d4e0f5!important;color:#334b81!important}.turn-banner.myturn{background:#fff5cf!important;border-color:#efd071!important;color:#865800!important}.game-tile .tile-copy strong,.home-section-head h3,.luck-title h2,.luck-prompt,.draw-title,.draw-status strong,.rps-round-result,.rps-match-card h3,.yut-win-overlay h3,.gomoku-result h3,.word-win-overlay h3,.word-round-overlay h3,.fish-page-title h2,.ladder-title h1{font-weight:1000!important;letter-spacing:-.025em!important;text-rendering:geometricPrecision;-webkit-text-stroke:.28px rgba(31,48,94,.24);paint-order:stroke fill;text-shadow:0 1px 0 rgba(255,255,255,.95),0 2px 5px rgba(44,68,120,.12)!important}.game-tile .tile-copy small,.draw-head-copy p,.draw-status span,.luck-rule-card p,.luck-subprompt,.word-required-card p,.word-history-head,.gomoku-help,.yut-help{font-weight:850!important;line-height:1.5!important}button{letter-spacing:-.015em}button:disabled{opacity:.62}.draw-card:disabled{opacity:1!important}@media(max-width:520px){.draw-mode-menu{padding:4px;gap:8px}.draw-mode-menu-head h3{font-size:25px}.draw-mode-grid{grid-template-columns:1fr 1fr;gap:6px}.draw-mode-card{min-height:104px;padding:9px;border-radius:14px}.draw-mode-card b{font-size:16px}.draw-mode-card span{font-size:10px;margin-top:4px}.draw-mode-card i{width:30px;height:30px;font-size:18px}.draw-mode-nav .draw-mode-home{margin-left:0}.draw-mode-nav button{font-size:10px;padding:5px 6px}}.text-outline-dark{
  -webkit-text-stroke:.28px rgba(8,13,25,.96)!important;
  text-shadow:1px 0 0 rgba(8,13,25,.96),-1px 0 0 rgba(8,13,25,.96),0 1px 0 rgba(8,13,25,.96),0 -1px 0 rgba(8,13,25,.96)!important;
}.text-outline-light{
  -webkit-text-stroke:.28px rgba(255,255,255,.98)!important;
  text-shadow:1px 0 0 rgba(255,255,255,.98),-1px 0 0 rgba(255,255,255,.98),0 1px 0 rgba(255,255,255,.98),0 -1px 0 rgba(255,255,255,.98)!important;
}.no-auto-text-outline,.tile-visual,.game-art,.yut-piece-main,.draw-mode-card>i,.rps-hand,.luck-title-icon{ -webkit-text-stroke:0!important; }.game-tile>.tile-badge{display:none!important}.game-tile{position:relative!important}.v22-badge-stack{position:absolute;z-index:12;left:10px;top:9px;display:flex;align-items:center;pointer-events:none}.v22-game-badge{display:inline-flex;align-items:center;justify-content:center;min-height:23px;padding:4px 8px;border-radius:999px;border:2px solid rgba(255,255,255,.94);box-shadow:0 4px 9px rgba(39,57,103,.16);font-size:10px;font-weight:1000;line-height:1;letter-spacing:.07em;color:#fff;white-space:nowrap}.v22-game-badge.off{background:#6477a8}.v22-game-badge.on{background:#25aa81}.v23-promo-stack{position:absolute;z-index:18;right:-3px;top:10px;display:flex;flex-direction:column;align-items:flex-end;gap:5px;pointer-events:none;transform-origin:100% 0}.v23-promo-sticker{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:50px;min-height:29px;padding:5px 10px 5px 11px;border:1px solid rgba(80,65,70,.10);border-radius:5px 2px 5px 3px;color:#fff;font-size:11px;font-weight:1000;line-height:1;letter-spacing:.06em;white-space:nowrap;box-shadow:0 5px 9px rgba(45,55,90,.18),inset 0 1px 0 rgba(255,255,255,.42);clip-path:polygon(3% 4%,98% 0,100% 91%,6% 100%,0 14%)}.v23-promo-sticker::after{content:"";position:absolute;left:12%;right:12%;top:-3px;height:6px;border-radius:2px;background:rgba(255,255,255,.48);box-shadow:0 1px 2px rgba(50,50,60,.08)}.v23-promo-sticker.hot{background:linear-gradient(145deg,#ff665a,#f23852);transform:rotate(5deg)}.v23-promo-sticker.new{background:linear-gradient(145deg,#65cf47,#2fac67);transform:rotate(-4deg)}.v23-promo-sticker.reco{background:linear-gradient(145deg,#8e72ff,#a44ee8);transform:rotate(3deg)}.v23-promo-sticker:nth-child(2){margin-right:7px}.v23-promo-sticker:nth-child(3){margin-right:2px}@media(max-width:520px){.v22-badge-stack{left:7px;top:7px}.v22-game-badge{min-height:20px;padding:3px 6px;font-size:9px}.v23-promo-stack{right:-2px;top:8px;gap:3px}.v23-promo-sticker{min-width:42px;min-height:24px;padding:4px 7px 4px 8px;font-size:9px;border-radius:4px 2px 4px 3px}.v23-promo-sticker::after{height:5px;top:-2px}}.home-game-tabs{
  position:relative;
  width:min(100%,1180px);
  margin:4px auto 4px;
  padding:8px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  border:2px solid rgba(113,132,199,.20);
  border-radius:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(241,246,255,.98));
  box-shadow:0 15px 34px rgba(49,72,139,.13),inset 0 1px 0 #fff;
  isolation:isolate;
}.home-game-tab{
  position:relative;
  min-width:0;
  min-height:82px;
  padding:13px 18px;
  border:2px solid transparent;
  border-radius:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  cursor:pointer;
  background:#f6f8ff;
  color:#334a8c;
  font:inherit;
  font-weight:1000;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease;
  box-shadow:inset 0 0 0 1px rgba(100,120,184,.08);
}.home-game-tab:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(53,78,150,.13),inset 0 0 0 1px rgba(100,120,184,.08)}.home-game-tab:active{transform:translateY(1px)}.home-game-tab .tab-icon{font-size:clamp(27px,2.4vw,38px);line-height:1;filter:drop-shadow(0 3px 3px rgba(44,65,120,.12))}.home-game-tab .tab-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;text-align:left}.home-game-tab .tab-copy strong{font-size:clamp(21px,1.9vw,30px);line-height:1.05;letter-spacing:-.035em;white-space:nowrap}.home-game-tab .tab-copy small{margin-top:5px;color:#7b8ab5;font-size:11px;font-weight:900;letter-spacing:.04em;white-space:nowrap}.home-game-tab .tab-state{
  flex:0 0 auto;
  min-width:43px;
  padding:6px 9px;
  border-radius:999px;
  text-align:center;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.08em;
}.home-game-tab[data-game-tab="offline"] .tab-state{background:#fff0f4;color:#d94f77;border:1px solid #ffc8d6}.home-game-tab[data-game-tab="online"] .tab-state{background:#e9fbf6;color:#168c70;border:1px solid #bcebdd}.home-game-tab[data-game-tab="offline"].active{
  background:linear-gradient(145deg,#fff0f5,#fff7ed 58%,#fff);
  color:#9e3159;
  border-color:#ffafc4;
  box-shadow:0 12px 25px rgba(223,76,118,.16),inset 0 2px 0 #fff;
}.home-game-tab[data-game-tab="online"].active{
  background:linear-gradient(145deg,#eafff8,#eef9ff 58%,#fff);
  color:#147b69;
  border-color:#8be0c8;
  box-shadow:0 12px 25px rgba(35,176,145,.16),inset 0 2px 0 #fff;
}.home-game-tab.active::after{
  content:"";
  position:absolute;
  left:50%;bottom:-10px;
  width:17px;height:17px;
  transform:translateX(-50%) rotate(45deg);
  background:inherit;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  opacity:.42;
  border-radius:0 0 4px 0;
}#hubScreen.arcade-home .game-tab-panel[hidden]{display:none!important;visibility:hidden!important;pointer-events:none!important}#hubScreen.arcade-home .game-tab-panel:not([hidden]){display:block!important;visibility:visible!important;pointer-events:auto!important}.game-tab-panel.tab-panel-active{animation:v24TabPanelIn .22s ease both}.game-tab-panel>.home-section-head{display:none!important}@keyframes v24TabPanelIn{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:700px){
  .home-game-tabs{padding:6px;gap:6px;border-radius:21px;margin-top:0}
  .home-game-tab{min-height:66px;padding:9px 8px;gap:7px;border-radius:16px}
  .home-game-tab .tab-icon{font-size:25px}
  .home-game-tab .tab-copy strong{font-size:clamp(16px,4.8vw,21px)}
  .home-game-tab .tab-copy small{display:none}
  .home-game-tab .tab-state{min-width:36px;padding:5px 6px;font-size:9px}
  .home-game-tab.active::after{bottom:-8px;width:13px;height:13px}
}@media(max-width:390px){
  .home-game-tab{gap:5px;padding-inline:6px}
  .home-game-tab .tab-icon{font-size:21px}
  .home-game-tab .tab-copy strong{font-size:15px}
  .home-game-tab .tab-state{min-width:32px;padding:4px 5px;font-size:8px}
}#hubScreen .random-recommend-section,
section.random-recommend-section{
  width:min(700px,100%)!important;
  max-width:700px!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}#hubScreen .recommend-viewport,
.recommend-viewport{
  width:100%!important;
  max-width:100%!important;
  aspect-ratio:16/9!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  flex:0 0 auto!important;
  overflow:hidden!important;
}#hubScreen .random-banner-card,
#hubScreen .random-banner-card img,
#hubScreen .random-banner-card .banner-placeholder,
.random-banner-card,
.random-banner-card img,
.random-banner-card .banner-placeholder{
  min-height:0!important;
}#hubScreen.arcade-home{
  contain:layout style;
}#hubScreen .game-tile{
  contain:layout paint;
  content-visibility:auto;
  contain-intrinsic-size:180px 180px;
}body.hub-booting #hubScreen *{
  animation-play-state:paused !important;
}body.hub-booting #hubScreen .game-tile,
body.hub-booting .home-game-tab{
  pointer-events:none;
}body.hub-booting #hubScreen{
  transform:translateZ(0);
}#hubScreen .recommend-viewport{
  position:relative!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}#hubScreen .recommend-viewport .random-recommend-grid{
  position:relative!important;
  display:flex!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}#hubScreen .recommend-viewport .random-banner-card,
#hubScreen .recommend-viewport .random-game-card{
  position:relative!important;
  flex:0 0 100%!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#0b1018!important;
}#hubScreen .random-banner-card img,
#hubScreen .random-banner-card .banner-placeholder{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#0b1018!important;
}@media(max-width:820px){
  #hubScreen .random-banner-card,
  #hubScreen .random-banner-card img,
  #hubScreen .random-banner-card .banner-placeholder{
    min-height:0!important;
  }
}:root{
  --gp-bg:#eef3fb;
  --gp-card:#ffffff;
  --gp-ink:#1c2436;
  --gp-muted:#66758f;
  --gp-line:rgba(40,64,110,.12);
  --gp-blue:#2f6bff;
  --gp-sky:#3aa0ff;
  --gp-gold:#ffb024;
  --gp-mint:#1dbf8a;
}html,body{background:var(--gp-bg)!important;color:var(--gp-ink);}body[data-view="hub"] .app-shell{
  background:
    radial-gradient(circle at 8% -8%, #d7e8ff 0%, transparent 34%),
    radial-gradient(circle at 96% 0%, #ffe7b0 0%, transparent 26%),
    linear-gradient(180deg,#f7fbff 0%, #eef3fb 48%, #f5f7fc 100%)!important;
}#hubScreen.arcade-home{
  background:transparent!important;
  color:var(--gp-ink);
}#hubScreen.arcade-home::before,
#hubScreen.arcade-home::after,
#hubScreen .arcade-deco,
#hubScreen .arcade-deco::before,
#hubScreen .arcade-deco::after{display:none!important;}.arcade-topbar{
  min-height:58px!important;
  padding:8px 2px!important;
}.arcade-brand-mini{
  color:#1c2436!important;
  text-shadow:none!important;
  letter-spacing:.16em!important;
}.arcade-brand-mini span{
  background:#fff!important;
  border:1px solid var(--gp-line)!important;
  box-shadow:0 8px 18px rgba(47,107,255,.08)!important;
}.recent-game-quick,
.arcade-floating-pill,
#todayVisitorCount{
  min-height:40px!important;
  height:auto!important;
  padding:0 12px!important;
  border:1px solid var(--gp-line)!important;
  background:#fff!important;
  color:var(--gp-ink)!important;
  box-shadow:0 8px 18px rgba(32,54,110,.08)!important;
}#todayVisitorCount{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  color:var(--gp-ink)!important;
  font-weight:800!important;
}#todayVisitorCount span{color:#66758f!important;}#todayVisitorCount b{color:var(--gp-blue)!important;font-size:15px!important;}.arcade-hero-card{
  background:#fff!important;
  border:1px solid var(--gp-line)!important;
  border-radius:28px!important;
  padding:22px 24px!important;
  box-shadow:0 16px 36px rgba(40,70,130,.08)!important;
}.arcade-home h1{color:var(--gp-ink)!important;text-shadow:none!important;}.arcade-home h1 .hero-accent{
  color:var(--gp-blue)!important;
  text-shadow:none!important;
}.arcade-home .arcade-sub{color:var(--gp-muted)!important;}.arcade-kicker{color:#7a869e!important;}.arcade-mascot-wrap{display:block!important;}.random-recommend-section{
  border:1px solid var(--gp-line)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 16px 34px rgba(40,70,130,.08)!important;
  padding:16px!important;
}.random-recommend-head h2{color:var(--gp-ink)!important;text-shadow:none!important;}.random-recommend-kicker{color:var(--gp-blue)!important;}.recommend-viewport{
  border-radius:16px!important;
  background:#10141d!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)!important;
}.recommend-app-ad{
  background:#fff!important;
  border:1px solid var(--gp-line)!important;
  box-shadow:0 10px 24px rgba(40,70,130,.06)!important;
}.recommend-app-ad-title{color:var(--gp-ink)!important;}.recommend-app-ad-text{color:var(--gp-muted)!important;}.recommend-app-ad a{
  background:linear-gradient(180deg,#2f6bff,#1f56e6)!important;
  color:#fff!important;
}.home-game-tabs{
  background:#fff!important;
  border:1px solid var(--gp-line)!important;
  box-shadow:0 12px 28px rgba(40,70,130,.07)!important;
}.home-game-tab{background:#f6f8fd!important;color:#445069!important;}.home-game-tab.active{
  background:#fff!important;
  border-color:rgba(47,107,255,.35)!important;
  color:var(--gp-ink)!important;
  box-shadow:0 8px 16px rgba(47,107,255,.10)!important;
}.home-section-head h3,#hubScreen h3{color:var(--gp-ink)!important;}.arcade-home .game-tile{
  background:#fff!important;
  border:1px solid var(--gp-line)!important;
  box-shadow:0 12px 26px rgba(40,70,130,.07)!important;
  color:var(--gp-ink)!important;
}.arcade-home .game-tile:hover{
  transform:translateY(-4px);
  border-color:rgba(47,107,255,.28)!important;
  box-shadow:0 16px 30px rgba(47,107,255,.12)!important;
}.arcade-home .tile-copy strong{color:var(--gp-ink)!important;}.arcade-home .tile-copy small{color:#7b879d!important;}#site-version-fixed{
  background:rgba(255,255,255,.86)!important;
  color:#5b6780!important;
  border:1px solid var(--gp-line)!important;
}body:not([data-view="hub"]) #site-version-fixed{display:none!important;}body[data-view="hub"] #site-version-fixed{display:flex!important;}#hubScreen .random-banner-card .banner-placeholder,
.random-banner-card .banner-placeholder{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  position:absolute!important;
  inset:0!important;
  font-size:clamp(18px,2.4vw,28px)!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  color:#dbe7ff!important;
  background:#0b1018!important;
  line-height:1.2!important;
}#hubScreen .random-banner-card,
.random-banner-card{
  position:relative!important;
}.game-tile .tile-visual{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  border-radius:18px;
  overflow:hidden;
  background:#d7e4f7;
}.game-tile .tile-photo{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}#luckGameScreen{
  background:
    linear-gradient(180deg,rgba(255,250,252,.78),rgba(255,255,255,.86)),
    url("assets/luck.jpg") center/cover no-repeat !important;
}#onlineGameScreen{
  background:
    linear-gradient(180deg,rgba(245,250,255,.82),rgba(255,255,255,.9)),
    url("assets/online.jpg") center/cover no-repeat !important;
}:root{
  --ui-bg:#eef4ff;
  --ui-paper:#ffffff;
  --ui-ink:#1c2740;
  --ui-muted:#66758f;
  --ui-line:rgba(36,64,120,.13);
  --ui-blue:#2f6bff;
  --ui-gold:#ffb024;
  --ui-radius:22px;
}html,body{
  background:var(--ui-bg)!important;
  color:var(--ui-ink)!important;
}.app-shell, .hub-screen, .wizard-card, .modal, .modal-card,
#gameScreen, #resultScreen, #savedGamesModal,
#fishSetupScreen, #fishGameScreen, #luckGameScreen, #onlineGameScreen{
  font-family:"Noto Sans KR", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}button, .btn, input, select, textarea{
  border-radius:14px!important;
  font-weight:800;
}input, select, textarea{
  border:1px solid var(--ui-line)!important;
  background:#fff!important;
  color:var(--ui-ink)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}.app-topbar, .arcade-topbar, .luck-topbar, .fish-game-titlebar, .fish-title-actions,
.online-topbar, .game-topbar{
  background:rgba(255,255,255,.86)!important;
  border-bottom:1px solid var(--ui-line)!important;
  backdrop-filter:blur(16px);
}#hubScreen .home-section-head h3{letter-spacing:-.04em;}#hubScreen .game-tile{
  border-radius:24px!important;
  overflow:hidden;
}#gameScreen .player-chip, #gameScreen .player-row, .saved-list div{
  background:#fff!important;
  border:1px solid var(--ui-line)!important;
  border-radius:16px!important;
}.modal, .app-exit-dialog{
  background:rgba(20,30,50,.35)!important;
}.modal > div, .app-exit-dialog > div, .modal-card{
  background:#fff!important;
}html,body{max-width:100%;overflow-x:hidden;}.app-shell, #hubScreen, #gameScreen, #resultScreen,
#fishSetupScreen, #fishGameScreen, #luckGameScreen, #onlineGameScreen{
  max-width:100%;
  min-height:100dvh;
  box-sizing:border-box;
  padding-left:max(10px, env(safe-area-inset-left));
  padding-right:max(10px, env(safe-area-inset-right));
  padding-bottom:max(12px, env(safe-area-inset-bottom));
}#hubScreen .game-tile{
  overflow:visible!important;
  min-height:0!important;
  height:auto!important;
  grid-template-rows:auto auto auto!important;
}#hubScreen .game-tile .tile-visual{
  aspect-ratio:16/10;
  overflow:hidden;
  background:#e8eef8;
}#hubScreen .game-tile .tile-photo{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center!important;
  background:#eef3fb;
}#hubScreen .game-tile .tile-copy{
  overflow:visible!important;
  padding:8px 4px 10px!important;
}#hubScreen .game-tile .tile-copy strong,
#hubScreen .game-tile .tile-copy small{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:unset!important;
  display:block;
  word-break:keep-all;
  overflow-wrap:anywhere;
}#hubScreen .home-game-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}@media(max-width:720px){
  #hubScreen .arcade-hero-card{padding:14px!important;}
  #hubScreen h1{font-size:clamp(28px,8vw,40px)!important;line-height:1.15!important;}
  #hubScreen .arcade-sub{font-size:14px!important;}
  #hubScreen .home-game-tab{min-height:64px!important;padding:10px!important;}
  #hubScreen .game-tile .tile-copy strong{font-size:15px!important;}
  #hubScreen .game-tile .tile-copy small{font-size:11px!important;}
  .random-recommend-section{width:min(100%,700px)!important;margin:0 auto;}
  #todayVisitorCount{font-size:12px!important;}
}@media(max-width:420px){
  #hubScreen .home-game-grid{gap:8px!important;}
  #hubScreen .arcade-topbar{gap:6px;}
}#gameScreen, #fishGameScreen, #fishSetupScreen, #luckGameScreen, #onlineGameScreen, #resultScreen{
  overflow-x:hidden!important;
  overflow-y:auto!important;
}body[data-view="game"] .wizard-actions{
  position:sticky;
  bottom:0;
  z-index:5;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  padding:10px 0 max(10px, env(safe-area-inset-bottom));
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.96) 30%,#fff);
}body[data-view="game"] .wizard-actions .primary-btn,
body[data-view="game"] .wizard-actions .secondary-btn{
  flex:1 1 140px;
  min-height:48px;
}body[data-view="game"] .paper-topbar{
  flex:0 0 auto;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:8px 10px!important;
}body[data-view="game"] .blind-title span:last-child{
  display:block;
  font-size:12px;
  line-height:1.3;
  white-space:normal!important;
}body[data-view="game"] .board-inner{
  height:100%!important;
  min-height:280px!important;
  grid-template-rows:minmax(52px,auto) minmax(180px,1fr) minmax(40px,auto)!important;
}body[data-view="game"] .player-name-input{
  font-size:12px!important;
  height:28px!important;
}body[data-view="game"] .paper-footer{
  flex:0 0 auto;
  min-height:0!important;
  padding:8px 10px max(10px, env(safe-area-inset-bottom))!important;
}body[data-view="game"] .paper-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}body[data-view="game"] .paper-actions button{
  flex:1 1 120px;
  min-height:44px;
}body[data-view="game"] .board-inner{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}body[data-view="game"] .top-label-stack,
body[data-view="game"] .player-name-input{
  max-width:min(88px,18vw)!important;
}body[data-view="game"] .board-inner{
  display:grid!important;
  grid-template-rows:96px minmax(0,1fr) 68px!important;
  height:100%!important;
  min-height:0!important;
  width:100%!important;
  overflow:hidden!important;
}body[data-view="game"] .top-labels{
  height:96px!important;
  min-height:96px!important;
  overflow:visible!important;
  position:relative!important;
}body[data-view="game"] .bottom-labels{
  height:68px!important;
  min-height:68px!important;
  overflow:visible!important;
  position:relative!important;
}body[data-view="game"] .top-label-stack{
  position:absolute!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:6px!important;
  z-index:3!important;
}body[data-view="game"] .top-label-stack .label-chip,
body[data-view="game"] .top-number-chip{
  position:static!important;
  transform:none!important;
  min-width:36px!important;
  padding:6px 8px!important;
  font-size:16px!important;
}body[data-view="game"] .bottom-labels .label-chip{
  position:absolute!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  white-space:nowrap!important;
  max-width:min(120px,18vw)!important;
  padding:8px 10px!important;
  font-size:15px!important;
  line-height:1.1!important;
}body[data-view="game"] .label-chip.played::after{
  content:none!important;
  font-size:12px!important;
  margin-left:3px!important;
}body[data-view="game"] .board-inner{
  min-width:0!important;
  position:relative!important;
}body[data-view="game"] .top-labels,
body[data-view="game"] .bottom-labels{
  position:relative!important;
  z-index:8!important;
  overflow:visible!important;
}body[data-view="game"] .top-label-stack{
  z-index:9!important;
}body[data-view="game"] .bottom-labels .label-chip{
  position:absolute!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  z-index:9!important;
  white-space:nowrap!important;
}body[data-view="game"] .label-chip.played::after,
body[data-view="game"] .top-number-chip.played::after{
  content:none!important;
  color:#2a2433!important;
  opacity:1!important;
  font-weight:900!important;
  font-size:13px!important;
  margin-left:3px!important;
  -webkit-text-fill-color:#2a2433!important;
}body[data-view="game"] .label-chip.played::after,
body[data-view="game"] .top-number-chip.played::after{content:none!important;}body[data-view="game"] .played-check{
  color:#1f1a24!important;
  -webkit-text-fill-color:#1f1a24!important;
  font-weight:900!important;
  font-size:13px!important;
}body[data-view="game"] .label-chip.played::after,
body[data-view="game"] .top-number-chip.played::after{content:none!important;display:none!important;}body[data-view="game"] .played-check,
body[data-view="game"] .played-check svg,
body[data-view="game"] .played-check path{
  color:#1a1520!important;
  -webkit-text-fill-color:#1a1520!important;
  stroke:#1a1520!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}#fishSetupScreen, #fishGameScreen{
  background:linear-gradient(180deg,#e7f6ff,#f7fbff)!important;
}#fishGameScreen .caught-fish{
  width:min(36vw,380px)!important;
  background:transparent!important;
  box-shadow:none!important;
  z-index:16!important;
}#fishPowerFill{
  display:block;
  height:100%;
  width:0%;
  border-radius:999px;
  background:linear-gradient(90deg,#7ad0ff,#1f8ad8 60%,#ffb024);
  transition:width .05s linear;
}#fishGameScreen .first-person-rod{
  width:min(52vw,560px)!important;
  height:min(62vh,520px)!important;
  left:46%!important;
  bottom:-4%!important;
  z-index:19!important;
}#fishGameScreen .first-person-rod .fp-rod-grip,
#fishGameScreen .first-person-rod .fp-rod-reel,
#fishGameScreen .first-person-rod .fp-rod-blank,
#fishGameScreen .first-person-rod .fp-rod-guide,
#fishGameScreen .first-person-rod .fp-hand{
  display:none!important;
}#fishGameScreen .fp-rod-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center bottom;
  pointer-events:none;
  filter:drop-shadow(0 10px 12px rgba(0,20,40,.28));
}#fishGameScreen .caught-fish{
  width:min(22vw,240px)!important;
  max-height:28vh!important;
  left:58%!important;
  top:58%!important;
  z-index:16!important;
}#fishGameScreen .first-person-rod{z-index:19!important;}#fishGameScreen .first-person-rod{
  left:22%!important;
  width:min(42vw,420px)!important;
  height:min(38vh,300px)!important;
  bottom:-6%!important;
  z-index:17!important;
}#fishGameScreen .caught-fish{
  filter:none!important;
}#fishGameScreen .caught-fish{
  width:min(42vw,460px)!important;
  max-height:46vh!important;
  left:50%!important;
  top:38%!important;
  transform:translate(-50%,-50%)!important;
  z-index:16!important;
}.app-topbar, .arcade-topbar, .luck-topbar, .fish-game-titlebar,
.online-topbar, .game-topbar, .hero, .setup-only,
.fish-title-actions .title-btn, .title-btn,
.fish-page-title, .fish-page-title h2, .fish-page-title small,
.fish-hud, .fish-hud span, .fish-hud strong, .fish-hud i,
.fish-result-card, .fish-result-card *,
.fish-odds-panel, .fish-odds-panel *,
.fish-odds-head, .fish-odds-list, .fish-odds-list *,
.wizard-card, .wizard-card *, .modal-card, .modal-card *,
.luck-rule-card, .luck-score-card, .luck-rule-card *, .luck-score-card *,
.yut-side-panel, .yut-side-card, .yut-side-panel *, .yut-side-card *,
.ladder-paper, .paper-footer, .paper-btn, .ladder-toggle-btn,
.label-chip, .top-number-chip, .bottom-labels .label-chip,
.online-lobby-panel, .online-lobby-panel *,
.hub-screen, .game-tile .tile-copy, .game-tile h3, .game-tile p{
  color:#1a2433 !important;
  -webkit-text-fill-color:#1a2433 !important;
}#fishGameScreen .caught-fish,
#fishGameScreen .caught-fish.jumping,
#fishGameScreen .caught-fish.winner,
#fishGameScreen .caught-fish.blank-fish,
#fishGameScreen .caught-fish.legendary{
  left:50%!important;
  top:42%!important;
  right:auto!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
}#fishGameScreen .caught-fish,
#fishGameScreen .caught-fish.jumping,
#fishGameScreen .caught-fish.winner,
#fishGameScreen .caught-fish.blank-fish,
#fishGameScreen .caught-fish.legendary{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:min(48vw,420px)!important;
  max-height:42vh!important;
  translate:-50% -50%!important;
  transform-origin:center center!important;
}#fishGameScreen .first-person-rod{
  left:50%!important;
  bottom:-2%!important;
  width:min(72vw,520px)!important;
  height:min(48vh,420px)!important;
  transform:translateX(-50%)!important;
  z-index:20!important;
}#fishGameScreen .fp-rod-photo{
  object-position:center bottom!important;
}#fishGameScreen .first-person-rod{
  left:50%!important;
  bottom:-4%!important;
  width:min(88vw,640px)!important;
  height:min(34vh,280px)!important;
  transform:translateX(-50%)!important;
  z-index:20!important;
}#fishGameScreen .fp-rod-photo{object-position:center bottom!important;}#fishGameScreen .fp-rod-grip,
#fishGameScreen .fp-rod-reel,
#fishGameScreen .fp-rod-blank,
#fishGameScreen .fp-rod-guide,
#fishGameScreen .fp-hand{display:none!important;}#fishGameScreen .caught-fish,
#fishGameScreen .caught-fish.jumping,
#fishGameScreen .caught-fish.winner,
#fishGameScreen .caught-fish.blank-fish,
#fishGameScreen .caught-fish.legendary{
  left:50%!important;
  top:48%!important;
  width:min(46vw,380px)!important;
  max-height:36vh!important;
  translate:-50% -50%!important;
  z-index:21!important;
}#fishGameScreen .first-person-rod{
  left:12%!important;
  bottom:-6%!important;
  width:min(42vw,340px)!important;
  height:min(28vh,220px)!important;
  transform:none!important;
  z-index:18!important;
  pointer-events:none!important;
}#fishGameScreen .first-person-rod{left:50%!important;bottom:-3%!important;width:min(58vw,480px)!important;height:min(52vh,460px)!important;z-index:20!important;}#fishGameScreen .fp-rod-photo{object-fit:contain!important;object-position:center bottom!important;}#fishGameScreen .fp-rod-grip,
#fishGameScreen .fp-rod-reel,
#fishGameScreen .fp-rod-blank,
#fishGameScreen .fp-rod-guide,
#fishGameScreen .fp-hand{display:none!important;}#fishGameScreen .caught-fish,
#fishGameScreen .caught-fish.jumping,
#fishGameScreen .caught-fish.winner,
#fishGameScreen .caught-fish.blank-fish,
#fishGameScreen .caught-fish.legendary{
  left:50%!important;
  top:42%!important;
  right:auto!important;
  bottom:auto!important;
  width:min(70vw,340px)!important;
  height:min(30vh,230px)!important;
  max-width:calc(100vw - 24px)!important;
  translate:-50% -50%!important;
  transform:none!important;
  overflow:hidden!important;
  background:transparent!important;
}#fishGameScreen .first-person-rod{
  left:50%!important;
  transform:translateX(-50%) rotate(-3deg);
  transform-origin:50% 100%!important;
}@keyframes fishRodIdle{
  0%,100%{transform:translateX(-50%) rotate(-4deg) translateY(0)}
  50%{transform:translateX(-50%) rotate(5deg) translateY(10px)}
}#fishGameScreen .caught-fish,
#fishGameScreen .caught-fish.jumping,
#fishGameScreen .caught-fish.winner,
#fishGameScreen .caught-fish.blank-fish,
#fishGameScreen .caught-fish.legendary{
  left:50%!important;
  top:36%!important;
  width:min(62vw,320px)!important;
  height:min(26vh,200px)!important;
  translate:-50% -50%!important;
  transform:none!important;
  z-index:22!important;
}#fishGameScreen .caught-fish,
#fishGameScreen .caught-fish.jumping,
#fishGameScreen .caught-fish.winner,
#fishGameScreen .caught-fish.blank-fish,
#fishGameScreen .caught-fish.legendary{
  left:50%!important;
  top:36%!important;
  width:min(82vw,420px)!important;
  height:min(38vh,300px)!important;
  overflow:visible!important;
  translate:-50% -50%!important;
  transform:none!important;
}#fishGameScreen .caught-fish,
#fishGameScreen .caught-fish.jumping,
#fishGameScreen .caught-fish.winner,
#fishGameScreen .caught-fish.blank-fish,
#fishGameScreen .caught-fish.legendary{
  left:50%!important;
  top:40%!important;
  width:56%!important;
  max-width:360px!important;
  height:auto!important;
  max-height:32%!important;
  overflow:visible!important;
  translate:-50% -50%!important;
  transform:none!important;
}#fishGameScreen .first-person-rod{
  left:50%!important;
  bottom:0!important;
  width:min(92vw,720px)!important;
  height:min(58vh,520px)!important;
  transform:translateX(-50%);
  transform-origin:50% 100%!important;
  z-index:20!important;
  overflow:visible!important;
}#fishGameScreen .fp-rod-only{
  position:absolute;left:50%;bottom:18%;width:42%;height:78%;
  transform:translateX(-50%);
  object-fit:contain;object-position:bottom center;
  pointer-events:none;
  transform-origin:50% 100%;
}#fishGameScreen .fp-hands-only{
  position:absolute;left:50%;bottom:-2%;width:100%;height:46%;
  transform:translateX(-50%);
  object-fit:contain;object-position:bottom center;
  pointer-events:none;
  z-index:2;
}@keyframes rodTip{0%,100%{transform:translateX(-50%) rotate(-4deg)}50%{transform:translateX(-50%) rotate(6deg)}}@keyframes handsIdle{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}@keyframes rodCast{0%{transform:translateX(-50%) rotate(-8deg)}40%{transform:translateX(-50%) rotate(-26deg)}70%{transform:translateX(-50%) rotate(14deg)}100%{transform:translateX(-50%) rotate(-4deg)}}@keyframes handsCast{0%{transform:translateX(-50%) rotate(-4deg)}40%{transform:translateX(-50%) rotate(-12deg) translateY(-10px)}70%{transform:translateX(-50%) rotate(8deg)}100%{transform:translateX(-50%) rotate(0)}}@keyframes rodBite{0%,100%{transform:translateX(-50%) rotate(-6deg)}50%{transform:translateX(-50%) rotate(12deg)}}@keyframes handsBite{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(12px) rotate(4deg)}}@keyframes rodReel{0%{transform:translateX(-50%) rotate(-8deg)}50%{transform:translateX(-50%) rotate(10deg)}100%{transform:translateX(-50%) rotate(-3deg)}}@keyframes handsReel{0%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}100%{transform:translateX(-50%) translateY(0)}}#fishGameScreen .first-person-rod{
  left:50%!important;
  right:auto!important;
  bottom:0!important;
  width:min(70vw,560px)!important;
  height:min(62vh,560px)!important;
  transform:translateX(-50%)!important;
}#fishGameScreen .fp-rod-only{
  left:50%!important;
  bottom:12%!important;
  width:38%!important;
  height:86%!important;
  object-position:center bottom!important;
}#fishGameScreen .fp-hands-only{
  left:50%!important;
}#fishGameScreen .fp-rod-only,
#fishGameScreen .fp-hands-only{display:none!important;}#fishGameScreen .fp-rod-photo{
  display:block!important;
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:contain;
  object-position:center bottom;
}#fishGameScreen .first-person-rod{
  left:50%!important;
  bottom:-2%!important;
  width:min(64vw,520px)!important;
  height:min(58vh,520px)!important;
  transform:translateX(-50%);
  transform-origin:50% 100%!important;
}@keyframes holdIdle{0%,100%{transform:translateX(-50%) rotate(-3deg)}50%{transform:translateX(-50%) rotate(5deg) translateY(8px)}}@keyframes holdCast{0%{transform:translateX(-50%) rotate(-6deg)}38%{transform:translateX(-50%) rotate(-24deg) translateY(-12px)}68%{transform:translateX(-50%) rotate(12deg) translateY(10px)}100%{transform:translateX(-50%) rotate(-3deg)}}@keyframes holdBite{0%,100%{transform:translateX(-50%) rotate(-5deg)}50%{transform:translateX(-50%) rotate(10deg) translateY(10px)}}@keyframes holdReel{0%{transform:translateX(-50%) rotate(-6deg)}50%{transform:translateX(-50%) rotate(8deg) translateY(8px)}100%{transform:translateX(-50%) rotate(-3deg)}}#fishGameScreen .first-person-rod{
  left:50%!important;
  bottom:0!important;
  width:min(78vw,620px)!important;
  height:min(62vh,560px)!important;
  transform:translateX(-50%);
  overflow:visible!important;
  z-index:20!important;
}#fishGameScreen .fp-mover{
  position:absolute;inset:0;
  transform-origin:50% 100%;
}#fishGameScreen .fp-rod-photo{
  display:block!important;
  width:100%;height:100%;
  object-fit:contain;
  object-position:center bottom;
}@keyframes mvIdle{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(6deg) translateY(10px)}}@keyframes mvCast{0%{transform:rotate(-6deg)}35%{transform:rotate(-26deg) translateY(-14px)}70%{transform:rotate(14deg) translateY(12px)}100%{transform:rotate(-3deg)}}@keyframes mvBite{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(12deg) translateY(12px)}}@keyframes mvReel{0%{transform:rotate(-8deg)}50%{transform:rotate(10deg) translateY(10px)}100%{transform:rotate(-3deg)}}#fishGameScreen .first-person-rod{
  overflow:hidden!important;
  bottom:0!important;
  height:min(48vh,420px)!important;
}#fishGameScreen .fp-mover{
  animation-duration:.9s;
}@keyframes mvIdle{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(3deg)}}@keyframes mvCast{0%{transform:rotate(-4deg)}40%{transform:rotate(-12deg)}75%{transform:rotate(8deg)}100%{transform:rotate(-2deg)}}@keyframes mvBite{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(6deg)}}@keyframes mvReel{0%{transform:rotate(-4deg)}50%{transform:rotate(5deg)}100%{transform:rotate(-2deg)}}#fishGameScreen{
  max-height:100dvh!important;
}#fishGameScreen .first-person-rod{
  left:50%!important;
  bottom:-18%!important;
  width:min(72vw,560px)!important;
  height:min(52vh,460px)!important;
  transform:translateX(-50%);
}#fishGameScreen .fp-rod-photo{
  object-position:center 78%!important;
}.home-game-tab .tab-state{
  -webkit-text-fill-color:unset!important;
  font-weight:900!important;
}.home-game-tab[data-game-tab="offline"] .tab-state{
  background:#ffe3ec!important;
  color:#c2185b!important;
  -webkit-text-fill-color:#c2185b!important;
  border:1px solid #ffb3c7!important;
}.home-game-tab[data-game-tab="online"] .tab-state{
  background:#d8f8ee!important;
  color:#0b7a5c!important;
  -webkit-text-fill-color:#0b7a5c!important;
  border:1px solid #8ee0c8!important;
}.home-game-tab.active[data-game-tab="offline"] .tab-state{
  background:#c2185b!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}.home-game-tab.active[data-game-tab="online"] .tab-state{
  background:#0b7a5c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}.arcade-hero-card .title-logo-hero{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
  gap:8px!important;
}.hub-title-logo{
  width:min(340px,72vw);
  height:auto;
  display:block;
  filter:drop-shadow(0 12px 18px rgba(40,70,160,.28));
  border-radius:28px;
}.arcade-hero-card{
  background:linear-gradient(180deg,#6ec4ff 0%,#3b8bff 42%,#2d6dff 100%)!important;
  border:0!important;
}.arcade-hero-card .arcade-sub{
  color:#eef6ff!important;
  -webkit-text-fill-color:#eef6ff!important;
  text-shadow:0 1px 4px rgba(10,30,80,.35);
  max-width:420px;
  margin:0 auto;
}.arcade-hero-card{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  padding:6px 0 2px!important;
}.arcade-hero-card .title-logo-hero{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:6px!important;
}.hub-title-banner{
  width:min(560px,92vw)!important;
  height:auto!important;
  border-radius:18px!important;
  display:block;
  filter:drop-shadow(0 10px 16px rgba(40,80,160,.22));
}.arcade-hero-card .arcade-sub{
  color:#35507a!important;
  -webkit-text-fill-color:#35507a!important;
  text-shadow:none!important;
}#hubScreen .random-recommend-section{
  background:linear-gradient(180deg,#2b2f38,#16181e 55%,#101217)!important;
  border:3px solid #3a3f4a!important;
  border-radius:28px!important;
  padding:14px 16px 36px!important;
  box-shadow:0 18px 40px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12)!important;
  position:relative!important;
}#hubScreen .random-recommend-section::before{
  content:"";
  position:absolute;left:50%;bottom:-18px;
  width:120px;height:14px;
  transform:translateX(-50%);
  background:#2a2e36;
  border-radius:0 0 10px 10px;
  box-shadow:0 8px 0 #0f1115;
}#hubScreen .random-recommend-section::after{
  content:"";
  position:absolute;left:50%;bottom:-28px;
  width:180px;height:10px;
  transform:translateX(-50%);
  background:#3a404c;
  border-radius:8px;
}#hubScreen .random-recommend-head{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:10px;
}#hubScreen .random-recommend-kicker{
  color:#8fd0ff!important;
  -webkit-text-fill-color:#8fd0ff!important;
  letter-spacing:.12em;
}#hubScreen #randomRecommendTitle{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:900!important;
  text-shadow:0 0 8px rgba(80,180,255,.45);
}#hubScreen .recommend-viewport{
  background:#05070b!important;
  border:7px solid #0a0c10!important;
  border-radius:14px!important;
  box-shadow:inset 0 0 0 2px #4b5568, inset 0 0 30px rgba(0,0,0,.35)!important;
  overflow:hidden!important;
}#hubScreen .recommend-controls button{
  background:#2a303a!important;
  color:#e8eef7!important;
  -webkit-text-fill-color:#e8eef7!important;
  border:1px solid #4a5564!important;
}#hubScreen .arcade-hero-card{
  width:min(700px,100%)!important;
  max-width:700px!important;
  margin:8px auto 10px!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
}#hubScreen .title-bar-banner{
  position:relative!important;
  width:100%!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#1a7adf!important;
  box-shadow:0 12px 24px rgba(30,70,150,.22)!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  height:auto!important;
  max-height:168px!important;
  object-fit:cover!important;
  object-position:center 42%!important;
  display:block!important;
  border-radius:0!important;
  filter:none!important;
}#hubScreen .title-bar-banner .arcade-sub{
  position:absolute!important;
  left:0;right:0;bottom:0;
  margin:0!important;
  padding:10px 14px 12px!important;
  background:linear-gradient(180deg,transparent,rgba(8,30,70,.72))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 3px rgba(0,0,0,.35)!important;
  font-size:13px!important;
  line-height:1.35!important;
}#hubScreen .arcade-hero-card{
  width:100%!important;
  max-width:none!important;
  margin:0 0 12px!important;
  padding:0!important;
}#hubScreen .title-bar-banner{
  width:100%!important;
  max-width:none!important;
  border-radius:0!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  max-height:none!important;
  height:clamp(120px,18vw,220px)!important;
  object-fit:cover!important;
  object-position:center 40%!important;
}#hubScreen .arcade-hero-card{
  width:100%!important;
  max-width:none!important;
  margin:0 0 12px!important;
}#hubScreen .title-bar-banner{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  border-radius:0!important;
  overflow:hidden!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
}#hubScreen .title-bar-banner .arcade-sub{
  position:static!important;
  background:#1a66d6!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  padding:10px 16px!important;
  margin:0!important;
  text-align:center!important;
  font-size:14px!important;
  line-height:1.4!important;
  white-space:normal!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  height:clamp(72px,11vw,112px)!important;
  max-height:112px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#3aa0ff;
}#hubScreen .title-bar-banner .arcade-sub{
  position:static!important;
  background:#2b6fe0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  padding:7px 14px!important;
  font-size:13px!important;
  line-height:1.35!important;
}.home-game-tab .tab-state,
.home-game-tab[data-game-tab="offline"] .tab-state,
.home-game-tab[data-game-tab="online"] .tab-state,
.home-game-tab.active .tab-state{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}.home-game-tab[data-game-tab="offline"] .tab-state{
  background:#c2185b!important;
  border-color:#c2185b!important;
}.home-game-tab[data-game-tab="online"] .tab-state{
  background:#0b7a5c!important;
  border-color:#0b7a5c!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  height:clamp(88px,10vw,128px)!important;
  object-fit:cover!important;
  object-position:center center!important;
}.v22-game-badge,
.v22-game-badge.off,
.v22-game-badge.on{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}.v22-game-badge.off{background:#5b6ea3!important;}.v22-game-badge.on{background:#1e9d76!important;}#hubScreen .title-bar-banner{
  background:#2f9bff!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  height:clamp(96px,12vw,148px)!important;
  object-fit:contain!important;
  object-position:center center!important;
  image-rendering:auto;
}.v23-promo-sticker,
.v23-promo-sticker.hot,
.v23-promo-sticker.new,
.v23-promo-sticker.reco,
.tile-badge,
.tile-badge.badge-new,
.tile-badge.badge-pop,
.tile-badge.badge-reco{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}.v23-promo-sticker.new,
.tile-badge.badge-new{background:#e23d7a!important;}.v23-promo-sticker.hot{background:#ff7a18!important;}.v23-promo-sticker.reco{background:#3b6bff!important;}#hubScreen .title-bar-banner{background:#2f9bff!important;overflow:hidden!important;}#hubScreen .hub-title-banner{
  width:100%!important;
  height:clamp(92px,11vw,140px)!important;
  object-fit:cover!important;
  object-position:left center!important;
}#hubScreen .arcade-hero-card,
#hubScreen .title-bar-banner{
  width:100%!important;
  max-width:none!important;
  background:transparent!important;
  padding:0!important;
  border-radius:0!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
}#hubScreen .title-bar-banner .arcade-sub{
  position:static!important;
  width:100%!important;
  background:#1f6ad8!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-align:center!important;
  padding:8px 16px!important;
  margin:0!important;
}#luckGameScreen,#fishSetupScreen,#fishGameScreen,#onlineGameScreen,#gameScreen,#resultScreen{
  -webkit-text-fill-color:unset;
}.wizard-card small,.luck-rule-card small,.fish-odds-panel small,
.fish-page-title small,.muted,.eyebrow,.arcade-sub{
  color:#4b5b73!important;
  -webkit-text-fill-color:#4b5b73!important;
}.tile-copy strong{color:#1a2433!important;-webkit-text-fill-color:#1a2433!important;}.tile-copy small{color:#5a6a80!important;-webkit-text-fill-color:#5a6a80!important;}#hubScreen .title-bar-banner{
  position:relative!important;
  width:100%!important;
}#hubScreen .hub-title-banner{
  width:100%!important;
  height:auto!important;
  display:block!important;
}#hubScreen .title-bar-banner .arcade-sub{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  margin:0!important;
  padding:10px 18px 12px!important;
  width:100%!important;
  box-sizing:border-box!important;
  background:linear-gradient(180deg,transparent,rgba(12,40,90,.72))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:"Noto Sans KR",Pretendard,-apple-system,sans-serif!important;
  font-size:clamp(13px,1.15vw,16px)!important;
  font-weight:700!important;
  line-height:1.45!important;
  text-align:center!important;
  letter-spacing:-.01em!important;
  white-space:normal!important;
}body[data-view="setup"] nav.stepper:not(.hidden){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr)!important;
  align-items:start!important;
  gap:0 6px!important;
  margin:0 0 18px!important;
  padding:0 2px!important;
}body[data-view="setup"] nav.stepper .step-line,
body[data-view="game"] nav.stepper .step-line{
  width:100%!important;
  min-width:0!important;
  flex:none!important;
  height:3px!important;
  margin:15px 0 0!important;
  align-self:start!important;
}.text-outline-light{
  -webkit-text-stroke:.4px #fff!important;
  text-shadow:
    1px 0 0 #fff,-1px 0 0 #fff,0 1px 0 #fff,0 -1px 0 #fff,
    1px 1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff,-1px -1px 0 #fff!important;
}body[data-view="game"] #newGameInGameBtn.title-btn{
  background:#fff!important;
  color:#1a2340!important;
  -webkit-text-fill-color:#1a2340!important;
  border:2px solid #fff!important;
  text-shadow:1px 0 0 #fff,-1px 0 0 #fff,0 1px 0 #fff,0 -1px 0 #fff!important;
  -webkit-text-stroke:.35px #fff!important;
}body[data-view="hub"] #hubScreen.arcade-home{
  background:
    radial-gradient(ellipse at 50% -10%,rgba(120,190,255,.35),transparent 42%),
    linear-gradient(180deg,#9ad6ff 0%,#e7f4ff 28%,#f7f4ff 100%)!important;
}body[data-view="hub"] #hubScreen .arcade-hero-card{
  perspective:1600px;
  padding:4px 0 10px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}body[data-view="hub"] #hubScreen .title-bar-banner,
body[data-view="hub"] #hubScreen .arcade-hero-inner.title-bar-banner{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:#1a4fb6!important;
  transform:rotateX(7deg) translateZ(0);
  transform-origin:50% 100%;
  box-shadow:
    0 28px 48px rgba(24,58,130,.32),
    0 8px 0 #163a86,
    inset 0 1px 0 rgba(255,255,255,.4)!important;
}body[data-view="hub"] #hubScreen .title-bar-banner::before{
  content:"";
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(115deg,rgba(255,255,255,.34) 0 12%,transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.12),transparent 30%);
}body[data-view="hub"] #hubScreen .hub-title-banner{
  position:relative;z-index:1;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:saturate(1.08) contrast(1.04);
}body[data-view="hub"] #hubScreen .title-bar-banner .arcade-sub{
  position:relative!important;
  z-index:3;
  left:auto!important;right:auto!important;bottom:auto!important;
  width:100%!important;
  margin:0!important;
  padding:11px 18px 13px!important;
  background:linear-gradient(180deg,#2a62d8,#1b45a8)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 0 #0b2a6a,0 2px 8px rgba(0,20,60,.35)!important;
  -webkit-text-stroke:0!important;
  font-size:clamp(13px,1.15vw,16px)!important;
  font-weight:800!important;
  line-height:1.45!important;
  text-align:center!important;
}body[data-view="hub"] #hubScreen .home-game-grid{
  perspective:1200px;
  gap:18px!important;
}body[data-view="hub"] #hubScreen .game-tile{
  overflow:visible!important;
  isolation:isolate;
  background:
    linear-gradient(180deg,#ffffff 0%,#eef3ff 100%)!important;
  border:1px solid rgba(255,255,255,.9)!important;
  border-radius:24px!important;
  box-shadow:
    0 16px 28px rgba(40,70,140,.16),
    0 2px 0 rgba(255,255,255,.9),
    inset 0 1px 0 #fff!important;
  transform-style:preserve-3d;
  transition:transform .22s ease, box-shadow .22s ease;
}body[data-view="hub"] #hubScreen .game-tile:hover{
  transform:translateY(-8px) rotateX(4deg)!important;
  box-shadow:
    0 26px 40px rgba(40,70,140,.22),
    0 4px 0 rgba(255,255,255,.95)!important;
}body[data-view="hub"] #hubScreen .game-tile:has(.tile-photo) .tile-visual:has(svg){
  display:none!important;
}body[data-view="hub"] #hubScreen .game-tile .tile-visual{
  position:relative;
  aspect-ratio:16/10!important;
  margin:2px 2px 0!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#12356e!important;
  transform:rotateX(10deg) translateZ(12px);
  box-shadow:
    0 14px 22px rgba(20,40,90,.22),
    inset 0 0 0 2px rgba(255,255,255,.35)!important;
}body[data-view="hub"] #hubScreen .game-tile .tile-visual::after{
  content:"";
  position:absolute;inset:0;pointer-events:none;z-index:2;
  background:linear-gradient(130deg,rgba(255,255,255,.38) 0 16%,transparent 38%,transparent 62%,rgba(20,40,80,.16) 100%);
}body[data-view="hub"] #hubScreen .game-tile .tile-photo{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 40%!important;
  transform:scale(1.04);
  filter:saturate(1.08) contrast(1.05);
}body[data-view="hub"] #hubScreen .game-tile .tile-copy{
  position:relative;
  z-index:3;
  padding:10px 8px 12px!important;
  text-align:center!important;
}body[data-view="hub"] #hubScreen .game-tile .tile-copy strong{
  color:#1a2a62!important;
  -webkit-text-fill-color:#1a2a62!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  font-size:clamp(16px,1.5vw,20px)!important;
  font-weight:900!important;
}body[data-view="hub"] #hubScreen .game-tile .tile-copy small{
  color:#5b6d99!important;
  -webkit-text-fill-color:#5b6d99!important;
  text-shadow:none!important;
}@media(prefers-reduced-motion:reduce){
  body[data-view="hub"] #hubScreen .title-bar-banner,
  body[data-view="hub"] #hubScreen .game-tile,
  body[data-view="hub"] #hubScreen .game-tile .tile-visual{
    transform:none!important;
  }
}body[data-view="hub"] #hubScreen .arcade-hero-card.lobby-hero{
  padding:0!important;
  margin:0 0 16px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  perspective:none!important;
}body[data-view="hub"] #hubScreen .lobby-stage{
  display:grid!important;
  grid-template-columns:minmax(160px,30%) minmax(0,1fr)!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  width:100%!important;
  min-height:clamp(210px,26vw,300px)!important;
  margin:0!important;
  padding:22px 28px 26px!important;
  border-radius:28px!important;
  overflow:hidden!important;
  position:relative!important;
  background:#4db0ff!important;
  transform:none!important;
  box-shadow:0 16px 32px rgba(24,70,140,.18)!important;
}body[data-view="hub"] #hubScreen .lobby-sky{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 40%!important;
  z-index:0;
  pointer-events:none;
}body[data-view="hub"] #hubScreen .lobby-mascot{
  position:relative!important;
  z-index:2;
  grid-column:1;
  grid-row:1 / span 2;
  width:100%!important;
  max-height:clamp(180px,26vw,320px)!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  background:transparent!important;
  filter:drop-shadow(0 16px 16px rgba(20,50,110,.3));
  transform:translateZ(0);
  animation:lobbyFloat 3.6s ease-in-out infinite;
}body[data-view="hub"] #hubScreen .lobby-copy{
  position:relative;
  z-index:3;
  grid-column:2;
  grid-row:1 / span 2;
  align-self:center;
  padding:6px 8px 8px 10px;
}body[data-view="hub"] #hubScreen .lobby-kicker{
  margin:0 0 8px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:clamp(11px,1vw,13px)!important;
  font-weight:900!important;
  letter-spacing:.16em!important;
  text-shadow:0 1px 0 #163882,0 2px 8px rgba(10,30,80,.35)!important;
}body[data-view="hub"] #hubScreen .lobby-title,
body[data-view="hub"] #hubScreen .lobby-title span{
  background:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  filter:none!important;
}body[data-view="hub"] #hubScreen .lobby-title{
  display:block!important;
  margin:0!important;
  font-size:clamp(28px,4.6vw,60px)!important;
  line-height:1.08!important;
  font-weight:900!important;
  letter-spacing:-.03em!important;
  color:#ffe44d!important;
  -webkit-text-fill-color:#ffe44d!important;
  -webkit-text-stroke:2.4px #1c3b96!important;
  paint-order:stroke fill;
  text-shadow:0 3px 0 #1a357f,0 7px 14px rgba(16,40,110,.28)!important;
}body[data-view="hub"] #hubScreen .lobby-title span{
  color:#8aedff!important;
  -webkit-text-fill-color:#8aedff!important;
  -webkit-text-stroke:2.4px #1c3b96!important;
}body[data-view="hub"] #hubScreen .lobby-copy{
  align-self:center!important;
  padding:0 8px 0 12px!important;
}body[data-view="hub"] #hubScreen .lobby-stage .arcade-sub{
  position:relative!important;
  left:auto!important;right:auto!important;bottom:auto!important;
  display:block!important;
  width:auto!important;
  max-width:36em!important;
  margin:10px 0 0!important;
  padding:0!important;
  background:transparent!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-align:left!important;
  font-size:clamp(13px,1.15vw,16px)!important;
  font-weight:750!important;
  line-height:1.45!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  text-shadow:0 1px 0 #163882,0 2px 10px rgba(10,30,80,.4)!important;
}body[data-view="hub"] #hubScreen .hub-title-banner{display:none!important;}@keyframes lobbyFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}@media(max-width:720px){
  body[data-view="hub"] #hubScreen .lobby-stage{
    grid-template-columns:100px minmax(0,1fr)!important;
    min-height:150px!important;
    padding:16px 14px 18px!important;
    border-radius:20px!important;
  }
  body[data-view="hub"] #hubScreen .lobby-title{
    font-size:clamp(22px,7.4vw,32px)!important;
    -webkit-text-stroke:1.8px #1c3b96!important;
  }
  body[data-view="hub"] #hubScreen .lobby-title span{-webkit-text-stroke:1.8px #1c3b96!important;}
  body[data-view="hub"] #hubScreen .lobby-stage .arcade-sub{font-size:12px!important;}
}@media(prefers-reduced-motion:reduce){
  body[data-view="hub"] #hubScreen .lobby-mascot{animation:none!important;}
}body[data-view="setup"],
body[data-view="game"],
body[data-view="result"]{
  background:
    radial-gradient(ellipse at 50% -8%,rgba(140,200,255,.45),transparent 46%),
    linear-gradient(180deg,#8fd0ff 0%,#e9f4ff 38%,#f4f0ff 100%)!important;
}body[data-view="game"] .game-screen{
  background:transparent!important;
}body[data-view="game"] .paper-btn,
body[data-view="setup"] .hero-actions .ghost-btn,
body[data-view="setup"] #newGameBtn,
body[data-view="setup"] #createGameBtn{
  transform:translateZ(0);
  box-shadow:0 5px 0 rgba(20,40,80,.16),0 10px 18px rgba(20,40,80,.12)!important;
}body[data-view="game"] .paper-btn:active,
body[data-view="setup"] .hero-actions .ghost-btn:active{
  transform:translateY(2px);
}body[data-view="result"] .result-card{
  box-shadow:0 22px 40px rgba(40,70,140,.2),0 6px 0 #d7c09a!important;
}html,body{max-width:100%;overflow-x:hidden;}.app-shell,.hub-screen,.game-screen,.luck-game-screen,.fish-game-screen,.online-game-screen,.result-screen{
  max-width:100vw;
  min-width:0;
}img.tile-photo,img.lobby-mascot,img.lobby-sky,img.hub-title-banner{
  max-width:100%;
}@media(max-width:820px){
  body[data-view="hub"] .app-shell,
  body[data-view="setup"] .app-shell,
  body[data-view="luck-game"] .app-shell,
  body[data-view="online-game"] .app-shell,
  body[data-view="result"] .app-shell{
    width:100vw!important;
    max-width:100vw!important;
    height:auto!important;
    min-height:100dvh!important;
    aspect-ratio:auto!important;
    overflow:auto!important;
    border-radius:0!important;
  }
  body[data-view="luck-game"] .luck-game-screen{
    position:relative!important;
    inset:auto!important;
    min-height:100dvh;
    height:auto!important;
    overflow:auto!important;
  }
  body[data-view="luck-game"] .luck-stage{
    display:flex!important;
    flex-direction:column!important;
    height:auto!important;
    min-height:0!important;
    gap:12px!important;
    padding:10px!important;
    overflow:visible!important;
  }
  body[data-view="luck-game"] .luck-main{
    overflow:visible!important;
    min-height:0!important;
  }
  body[data-view="luck-game"] .luck-game-content{
    overflow:visible!important;
    height:auto!important;
  }
  body[data-view="luck-game"] .luck-side{
    flex-direction:column!important;
    gap:10px!important;
  }
  body[data-view="luck-game"] .roulette-shell,
  .luck-game-screen[data-game="roulette"] .roulette-shell{
    grid-template-columns:1fr!important;
    height:auto!important;
    min-height:0!important;
    gap:12px!important;
  }
  .luck-game-screen[data-game="roulette"] .roulette-editor,
  .luck-game-screen[data-game="roulette"] .roulette-play{
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }
  .luck-game-screen[data-game="roulette"] .roulette-wheel-box{
    width:min(72vw,280px)!important;
  }
  body[data-view="setup"] .hero.setup-only,
  body[data-view="setup"] nav.stepper:not(.hidden){
    width:100%;
  }
  body[data-view="setup"] .wizard-card{
    width:100%!important;
    max-width:100%!important;
  }
  body[data-view="game"] .app-shell,
  body[data-view="game"] .game-screen{
    width:100vw!important;
    height:100dvh!important;
    overflow:hidden!important;
  }
  body[data-view="game"] .playfield{
    height:calc(100dvh - 64px)!important;
    overflow:hidden!important;
  }
  body[data-view="game"] .ladder-paper{
    width:calc(100% - 10px)!important;
    height:calc(100% - 10px)!important;
  }
  body[data-view="fish-game"] .app-shell{
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    aspect-ratio:auto!important;
    border-radius:0!important;
  }
  .home-game-grid,
  #hubScreen .home-game-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  #hubScreen .lobby-stage{
    min-height:0!important;
  }
}body[data-view="game"] .game-titlebar{
  height:auto!important;
  min-height:56px!important;
  padding:8px 10px!important;
  gap:8px!important;
}body[data-view="game"] .title-actions{
  flex-wrap:nowrap!important;
  gap:6px!important;
}body[data-view="game"] .title-btn,
body[data-view="game"] #newGameInGameBtn{
  white-space:nowrap!important;
  min-height:36px!important;
  padding:6px 10px!important;
  font-size:13px!important;
}body[data-view="game"] .board-inner{
  grid-template-rows:auto minmax(0,1fr) auto!important;
}body[data-view="game"] .top-labels{
  height:auto!important;
  min-height:72px!important;
  padding:4px 0!important;
}body[data-view="game"] .bottom-labels{
  height:auto!important;
  min-height:64px!important;
  padding:6px 2px 8px!important;
  overflow:visible!important;
}body[data-view="game"] .result-toast{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:unset!important;
  font-size:clamp(13px,3.2vw,16px)!important;
  line-height:1.35!important;
}body[data-view="game"] .paper-footer{
  flex-wrap:wrap!important;
  gap:8px!important;
}body[data-view="game"] .paper-actions{
  width:100%;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
}body[data-view="game"] .paper-actions button{
  flex:none!important;
  min-height:44px!important;
  white-space:nowrap!important;
  font-size:14px!important;
}@media(min-width:821px){
  body[data-view="game"] .label-chip,
  body[data-view="game"] .bottom-labels .label-chip{
    max-width:140px!important;
    font-size:16px!important;
    padding:8px 10px!important;
  }
  body[data-view="game"] .paper-actions{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}.theme-switch{
  display:flex;align-items:center;gap:6px;
  margin-left:6px;
  color:#31406a;font-size:11px;font-weight:900;letter-spacing:.04em;
  white-space:nowrap;
}.theme-switch select{
  height:34px;border-radius:999px;padding:0 10px;
  border:1px solid #d5def0;background:#fff;color:#24325a;
  font-weight:800;font-size:12px;
}body[data-theme="sky"]{
  --bg:#e7f4ff;--bg-2:#f7f4ff;--card:#fffdfc;--text:#1a2a62;--muted:#5b6d99;--line:#d5e4f7;
  --pink:#ff6f91;--pink-dark:#e84f78;--lavender:#6b8cff;
}body[data-theme="candy"]{
  --bg:#ffe8f2;--bg-2:#fff3e8;--card:#fff7fb;--text:#5a2040;--muted:#a06b86;--line:#f7cfe0;
  --pink:#ff5d9a;--pink-dark:#e13d7c;--lavender:#c86bff;
}body[data-theme="mint"]{
  --bg:#e5fbf3;--bg-2:#eef8ff;--card:#f7fffc;--text:#16463c;--muted:#4e7d72;--line:#c6eadc;
  --pink:#2db7a0;--pink-dark:#1b8f7c;--lavender:#3aa0d8;
}body[data-theme="sunset"]{
  --bg:#ffe9d6;--bg-2:#fff1cf;--card:#fffaf3;--text:#5a2d12;--muted:#a06a42;--line:#f3d2b0;
  --pink:#ff7a3d;--pink-dark:#e25b1e;--lavender:#ffb020;
}body[data-theme="night"]{
  --bg:#12182b;--bg-2:#1b2340;--card:#1c2544;--text:#eef3ff;--muted:#9aa8d0;--line:#2c3a66;
  --pink:#ff7ab8;--pink-dark:#ff4f9a;--lavender:#8aa4ff;
}body[data-theme]{
  background:var(--bg)!important;
  color:var(--text);
}body[data-theme="candy"][data-view="hub"] #hubScreen.arcade-home,
body[data-theme="candy"][data-view="setup"],
body[data-theme="candy"][data-view="game"],
body[data-theme="candy"][data-view="result"]{
  background:linear-gradient(180deg,#ffd3e6 0%,#fff1e6 42%,#fff7fb 100%)!important;
}body[data-theme="mint"][data-view="hub"] #hubScreen.arcade-home,
body[data-theme="mint"][data-view="setup"],
body[data-theme="mint"][data-view="game"],
body[data-theme="mint"][data-view="result"]{
  background:linear-gradient(180deg,#bff3e4 0%,#e7fbff 42%,#f4fffb 100%)!important;
}body[data-theme="sunset"][data-view="hub"] #hubScreen.arcade-home,
body[data-theme="sunset"][data-view="setup"],
body[data-theme="sunset"][data-view="game"],
body[data-theme="sunset"][data-view="result"]{
  background:linear-gradient(180deg,#ffc38a 0%,#ffe7c4 42%,#fff6ea 100%)!important;
}body[data-theme="night"][data-view="hub"] #hubScreen.arcade-home,
body[data-theme="night"][data-view="setup"],
body[data-theme="night"][data-view="game"],
body[data-theme="night"][data-view="result"],
body[data-theme="night"][data-view="luck-game"]{
  background:linear-gradient(180deg,#0d1324 0%,#171f3a 50%,#10162a 100%)!important;
  color:#eef3ff;
}body[data-theme="night"] .game-tile,
body[data-theme="night"] .wizard-card,
body[data-theme="night"] .ladder-paper,
body[data-theme="night"] .luck-rule-card,
body[data-theme="night"] .luck-score-card{
  background:linear-gradient(180deg,#222c52,#1a2344)!important;
  color:#eef3ff!important;
  border-color:#364679!important;
}body[data-theme="night"] .tile-copy strong,
body[data-theme="night"] .tile-copy small,
body[data-theme="night"] .wizard-card h2,
body[data-theme="night"] .label-chip{
  color:#eef3ff!important;
  -webkit-text-fill-color:#eef3ff!important;
}body[data-theme="night"] .theme-switch{color:#d7def7;}body[data-theme="night"] .theme-switch select{background:#1b2444;color:#eef3ff;border-color:#3b4a7a;}@media(max-width:720px){
  .theme-switch span, .theme-switch{font-size:0;}
  .theme-switch select{font-size:12px;height:32px;}
  .theme-switch{font-size:12px;gap:0;}
}html,body,button,input,select,textarea,label,a,h1,h2,h3,h4,p,span,small,strong,b,em,li,td,th{
  font-family:Pretendard,"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}body.font-ready,
body.font-ready button,
body.font-ready input,
body.font-ready textarea,
body.font-ready select{
  font-family:Pretendard,"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}body[data-theme="sky"],
body[data-theme="candy"],
body[data-theme="mint"],
body[data-theme="sunset"]{
  --ink:#17233f;
  --ink-soft:#4d5d7c;
  color:var(--ink)!important;
}body[data-theme="candy"]{--ink:#4a1730;--ink-soft:#8a4d68;}body[data-theme="mint"]{--ink:#12382f;--ink-soft:#3f6d62;}body[data-theme="sunset"]{--ink:#4a240e;--ink-soft:#8a5a32;}body[data-theme="sky"] .game-tile,
body[data-theme="candy"] .game-tile,
body[data-theme="mint"] .game-tile,
body[data-theme="sunset"] .game-tile,
body[data-theme="sky"] .wizard-card,
body[data-theme="candy"] .wizard-card,
body[data-theme="mint"] .wizard-card,
body[data-theme="sunset"] .wizard-card,
body[data-theme="sky"] .ladder-paper,
body[data-theme="candy"] .ladder-paper,
body[data-theme="mint"] .ladder-paper,
body[data-theme="sunset"] .ladder-paper,
body[data-theme="sky"] .modal-card,
body[data-theme="candy"] .modal-card,
body[data-theme="mint"] .modal-card,
body[data-theme="sunset"] .modal-card{
  color:var(--ink)!important;
}body[data-theme="sky"] .tile-copy strong,
body[data-theme="candy"] .tile-copy strong,
body[data-theme="mint"] .tile-copy strong,
body[data-theme="sunset"] .tile-copy strong,
body[data-theme="sky"] .wizard-card h2,
body[data-theme="candy"] .wizard-card h2,
body[data-theme="mint"] .wizard-card h2,
body[data-theme="sunset"] .wizard-card h2,
body[data-theme="sky"] .wizard-card *,
body[data-theme="candy"] .wizard-card *,
body[data-theme="mint"] .wizard-card *,
body[data-theme="sunset"] .wizard-card *,
body[data-theme="sky"] .label-chip,
body[data-theme="candy"] .label-chip,
body[data-theme="mint"] .label-chip,
body[data-theme="sunset"] .label-chip,
body[data-theme="sky"] .step-dot span,
body[data-theme="candy"] .step-dot span,
body[data-theme="mint"] .step-dot span,
body[data-theme="sunset"] .step-dot span,
body[data-theme="sky"] .home-section-head h3,
body[data-theme="candy"] .home-section-head h3,
body[data-theme="mint"] .home-section-head h3,
body[data-theme="sunset"] .home-section-head h3,
body[data-theme="sky"] .tab-copy strong,
body[data-theme="candy"] .tab-copy strong,
body[data-theme="mint"] .tab-copy strong,
body[data-theme="sunset"] .tab-copy strong,
body[data-theme="sky"] .arcade-brand-mini,
body[data-theme="candy"] .arcade-brand-mini,
body[data-theme="mint"] .arcade-brand-mini,
body[data-theme="sunset"] .arcade-brand-mini{
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-shadow:none!important;
}body[data-theme="sky"] .tile-copy small,
body[data-theme="candy"] .tile-copy small,
body[data-theme="mint"] .tile-copy small,
body[data-theme="sunset"] .tile-copy small,
body[data-theme="sky"] .tab-copy small,
body[data-theme="candy"] .tab-copy small,
body[data-theme="mint"] .tab-copy small,
body[data-theme="sunset"] .tab-copy small,
body[data-theme="sky"] .wizard-card p,
body[data-theme="candy"] .wizard-card p,
body[data-theme="mint"] .wizard-card p,
body[data-theme="sunset"] .wizard-card p{
  color:var(--ink-soft)!important;
  -webkit-text-fill-color:var(--ink-soft)!important;
}body[data-theme="sky"] input,
body[data-theme="candy"] input,
body[data-theme="mint"] input,
body[data-theme="sunset"] input,
body[data-theme="sky"] select,
body[data-theme="candy"] select,
body[data-theme="mint"] select,
body[data-theme="sunset"] select,
body[data-theme="sky"] textarea,
body[data-theme="candy"] textarea,
body[data-theme="mint"] textarea,
body[data-theme="sunset"] textarea{
  background:#fff!important;
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
}body[data-theme="night"]{
  --ink:#f3f6ff;
  --ink-soft:#b9c5e6;
  color:var(--ink)!important;
}body[data-theme="night"] .game-tile,
body[data-theme="night"] .wizard-card,
body[data-theme="night"] .ladder-paper,
body[data-theme="night"] .modal-card,
body[data-theme="night"] .luck-rule-card,
body[data-theme="night"] .luck-score-card,
body[data-theme="night"] .paper-footer{
  color:var(--ink)!important;
}body[data-theme="night"] .tile-copy strong,
body[data-theme="night"] .tile-copy small,
body[data-theme="night"] .wizard-card,
body[data-theme="night"] .wizard-card *,
body[data-theme="night"] .label-chip,
body[data-theme="night"] .step-dot span,
body[data-theme="night"] .home-section-head h3,
body[data-theme="night"] .tab-copy strong,
body[data-theme="night"] .tab-copy small,
body[data-theme="night"] .arcade-brand-mini,
body[data-theme="night"] .result-toast,
body[data-theme="night"] .luck-rule-card *,
body[data-theme="night"] .luck-score-card *{
  color:var(--ink)!important;
  -webkit-text-fill-color:var(--ink)!important;
  text-shadow:none!important;
}body[data-theme="night"] .tile-copy small,
body[data-theme="night"] .tab-copy small,
body[data-theme="night"] .wizard-card p{
  color:var(--ink-soft)!important;
  -webkit-text-fill-color:var(--ink-soft)!important;
}body[data-theme="night"] input,
body[data-theme="night"] select,
body[data-theme="night"] textarea{
  background:#151c36!important;
  color:#f3f6ff!important;
  -webkit-text-fill-color:#f3f6ff!important;
  border-color:#3b4a7a!important;
}body[data-theme] .primary-btn,
body[data-theme] .paper-btn.primary,
body[data-theme] #newGameBtn,
body[data-theme] .badge-hot,
body[data-theme] .badge-pop,
body[data-theme] .badge-new,
body[data-theme] .badge-reco,
body[data-theme] .badge-online,
body[data-theme] .tab-state,
body[data-theme] .home-game-tab .tab-state{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}body[data-theme] button.primary-btn,
body[data-theme] .primary-btn,
body[data-theme] .paper-btn.primary,
body[data-theme] #newGameBtn,
body[data-theme] #createGameBtn,
body[data-theme] .roulette-spin,
body[data-theme] .roulette-apply,
body[data-theme] .roulette-add,
body[data-theme] .fishing-start-btn,
body[data-theme] .yut-throw-btn,
body[data-theme] .luck-choice.selected,
body[data-theme] .home-game-tab .tab-state,
body[data-theme] .badge-hot,
body[data-theme] .badge-pop,
body[data-theme] .badge-new,
body[data-theme] .badge-reco,
body[data-theme] .badge-online{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}body[data-theme] .ghost-btn,
body[data-theme] .title-btn,
body[data-theme] .paper-btn:not(.primary),
body[data-theme] .luck-back-btn,
body[data-theme] .recent-game-quick,
body[data-theme] .theme-switch select{
  color:#1a2340!important;
  -webkit-text-fill-color:#1a2340!important;
  background:#fff!important;
}body[data-theme="night"] .ghost-btn,
body[data-theme="night"] .title-btn,
body[data-theme="night"] .paper-btn:not(.primary),
body[data-theme="night"] .luck-back-btn,
body[data-theme="night"] .recent-game-quick,
body[data-theme="night"] .theme-switch select{
  color:#f3f6ff!important;
  -webkit-text-fill-color:#f3f6ff!important;
  background:#1b2444!important;
  border-color:#3b4a7a!important;
}.text-outline-light,.text-outline-dark,
body .text-outline-light,body .text-outline-dark,
h1,h2,h3,h4,p,span,small,strong,b,a,button,input,select,textarea,label,li{
  -webkit-text-stroke:0!important;
  text-shadow:none!important;
}.lobby-title,.lobby-title span{
  -webkit-text-stroke:0!important;
  text-shadow:none!important;
}.ladder-paper,.wizard-card,.modal-card,.game-tile,
.paper-footer,.result-toast,.label-chip,.top-number-chip,
.tile-copy strong,.tile-copy small,.tab-copy strong,.tab-copy small,
.home-section-head h3,.arcade-sub,.lobby-kicker{
  color:#1a2340!important;
  -webkit-text-fill-color:#1a2340!important;
}.tile-copy small,.tab-copy small,.wizard-card p,.arcade-sub{
  color:#4d5d7c!important;
  -webkit-text-fill-color:#4d5d7c!important;
}#wordTurnHint{margin-bottom:0;}#wordTurnHint{
  grid-column:2!important;
  grid-row:2!important;
  margin:6px 0 0!important;
  position:static!important;
  -webkit-text-stroke:0!important;
  text-shadow:none!important;
}body[data-view="game"] .top-label-stack{
  position:absolute!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
}body[data-view="game"] .bottom-labels .label-chip{
  position:absolute!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
}@keyframes seaWaveA{
  0%,100%{transform:translate3d(-2%,0,0) scaleY(1);}
  50%{transform:translate3d(3%,8px,0) scaleY(1.04);}
}@keyframes seaWaveB{
  0%,100%{transform:translate3d(2%,4px,0) scaleY(1.02);}
  50%{transform:translate3d(-3%,-6px,0) scaleY(.98);}
}@keyframes seaSwellX{
  from{background-position:0 0;}
  to{background-position:520px 0;}
}@keyframes fishSurgeShake{
  0%,100%{transform:translate(0,0);}
  20%{transform:translate(-3px,2px);}
  40%{transform:translate(3px,-2px);}
  60%{transform:translate(-2px,-2px);}
  80%{transform:translate(2px,3px);}
}:root{
  --safe-t:max(10px,env(safe-area-inset-top,0px));
  --safe-b:max(10px,env(safe-area-inset-bottom,0px));
  --safe-l:max(8px,env(safe-area-inset-left,0px));
  --safe-r:max(8px,env(safe-area-inset-right,0px));
}.app-shell{
  padding-top:var(--safe-t)!important;
  padding-bottom:var(--safe-b)!important;
  padding-left:var(--safe-l)!important;
  padding-right:var(--safe-r)!important;
  box-sizing:border-box!important;
}.hub-topbar,.fish-game-titlebar,.luck-topbar,.online-topbar,.game-titlebar,.result-titlebar{
  padding-top:max(8px,var(--safe-t))!important;
}.fish-control-deck,.fishing-start-btn,.ladder-bottom,.hub-footer{
  margin-bottom:var(--safe-b);
}#appExitModal{
  position:fixed;inset:0;z-index:99999;display:grid;place-items:center;
  background:rgba(10,16,32,.55);padding:24px;
}#appExitModal[hidden]{display:none!important;}#appExitModal .app-exit-card{
  width:min(92vw,360px);border-radius:22px;padding:22px 20px 16px;
  background:#fff;color:#223;box-shadow:0 20px 50px rgba(0,0,0,.28);
  text-align:center;
}#appExitModal h3{margin:0 0 8px;font-size:20px;}#appExitModal p{margin:0 0 16px;color:#556;}#appExitModal .app-exit-row{display:flex;gap:8px;}#appExitModal button{flex:1;min-height:46px;border-radius:14px;border:0;font-weight:900;cursor:pointer;}#appExitNo{background:#eef2f7;color:#334;}#appExitYes{background:#2f6dff;color:#fff;}.yt-held-gem{opacity:0;transform-origin:180px 162px;transform:scale(.2);transition:.2s}.arcade-home .yabawi-tile .tile-visual{overflow:hidden;background:radial-gradient(circle at 50% 22%,rgba(255,255,255,.9),transparent 30%),linear-gradient(180deg,#6ec9f5 0 55%,#dfb36e 56% 100%)}.arcade-home .yabawi-tile .tile-visual::before{content:"";position:absolute;inset:4px 25% 0;background:url("assets/yabawi-hold.png") center bottom/contain no-repeat;filter:drop-shadow(0 7px 5px rgba(58,34,14,.24))}.arcade-home .yabawi-tile .tile-visual::after{content:"💎";position:absolute;right:14%;top:19%;font-size:30px;filter:drop-shadow(0 0 7px rgba(255,255,255,.9))}.arcade-home .yabawi-tile .tile-visual::before,
.arcade-home .yabawi-tile .tile-visual::after{content:none!important;display:none!important}.arcade-home .yabawi-tile .tile-photo{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important}.draw-board.count-30{grid-template-columns:repeat(6,minmax(48px,76px))!important;justify-content:center!important;align-content:center!important}.draw-board.adaptive-grid{grid-template-columns:repeat(var(--draw-cols),minmax(38px,72px))!important;justify-content:center!important;align-content:center!important}.draw-card.owner-red.revealed .draw-reveal{background:linear-gradient(145deg,#fff0f2,#ffb5bf)!important;border-color:#ef4961!important;color:#a9253d!important;box-shadow:0 0 0 3px #ef4961,0 8px 18px rgba(212,65,86,.25)!important}.draw-card.owner-blue.revealed .draw-reveal{background:linear-gradient(145deg,#eef3ff,#a9c0ff)!important;border-color:#416fe0!important;color:#244cba!important;box-shadow:0 0 0 3px #416fe0,0 8px 18px rgba(67,92,207,.25)!important}.draw-card.owner-red.revealed .draw-reveal small,.draw-card.owner-blue.revealed .draw-reveal small{color:inherit!important}@media(max-width:900px){
  .draw-board.count-30{grid-template-columns:repeat(6,minmax(42px,1fr))!important;width:min(96vw,520px)!important}
  .draw-board.adaptive-grid{grid-template-columns:repeat(var(--draw-cols),minmax(30px,1fr))!important;width:min(96vw,680px)!important}
}@media(max-width:520px){
  .draw-board.count-30{grid-template-columns:repeat(6,minmax(38px,1fr))!important}
  .draw-board.adaptive-grid{grid-template-columns:repeat(var(--draw-cols),minmax(25px,1fr))!important;gap:4px!important;padding:6px!important}
  .draw-board.adaptive-grid .draw-cover b{font-size:clamp(14px,5vw,22px)!important}
  .draw-board.adaptive-grid .draw-cover small{font-size:7px!important;letter-spacing:.04em!important}
  .draw-board.adaptive-grid .draw-reveal b{font-size:clamp(16px,5.5vw,24px)!important}
  .draw-board.adaptive-grid .draw-reveal small{font-size:8px!important}
}.draw-cover b.draw-cover-number{font-size:clamp(24px,3.5vw,52px)!important;line-height:1!important;font-weight:1000!important;letter-spacing:-.055em!important;text-shadow:0 2px 0 rgba(0,0,0,.14),0 4px 12px rgba(17,30,87,.22)!important}.draw-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.draw-btn.settings{background:linear-gradient(135deg,#5b83d9,#4666b8)!important;box-shadow:0 5px 0 #324988!important}.battle-turn-fx-v33{position:fixed;z-index:99990;inset:0;display:grid;place-items:center;pointer-events:none;animation:battleTurnBackdropV33 .58s ease both}.battle-turn-fx-v33.red{background:radial-gradient(circle at 50% 50%,rgba(255,68,88,.30),rgba(255,68,88,.05) 45%,transparent 70%)}.battle-turn-fx-v33.blue{background:radial-gradient(circle at 50% 50%,rgba(65,111,224,.32),rgba(65,111,224,.05) 45%,transparent 70%)}.battle-turn-fx-card{min-width:min(76vw,360px);padding:22px 30px;border-radius:24px;text-align:center;background:rgba(255,255,255,.94);border:3px solid currentColor;box-shadow:0 18px 60px rgba(28,43,92,.28);transform:scale(.72);animation:battleTurnCardV33 .58s cubic-bezier(.18,.82,.24,1.08) both}.battle-turn-fx-v33.red .battle-turn-fx-card{color:#d92f4a}.battle-turn-fx-v33.blue .battle-turn-fx-card{color:#315fd1}.battle-turn-fx-card small{display:block;font-size:11px;font-weight:1000;letter-spacing:.22em;opacity:.7}.battle-turn-fx-card strong{display:block;margin:4px 0 2px;font-size:clamp(34px,6vw,64px);font-weight:1000;line-height:1}.battle-turn-fx-card span{font-size:14px;font-weight:950;opacity:.82}.battle-turn-fx-v33.out{opacity:0;transition:opacity .22s ease}.battle-turn-pulse-red{animation:battleShellRedV33 .55s ease}.battle-turn-pulse-blue{animation:battleShellBlueV33 .55s ease}@keyframes battleTurnBackdropV33{0%{opacity:0}22%{opacity:1}100%{opacity:.92}}@keyframes battleTurnCardV33{0%{opacity:0;transform:scale(.65) translateY(18px)}45%{opacity:1;transform:scale(1.07) translateY(0)}100%{opacity:1;transform:scale(1)}}@keyframes battleShellRedV33{0%,100%{box-shadow:none}45%{box-shadow:inset 0 0 0 6px rgba(239,73,97,.58),inset 0 0 55px rgba(239,73,97,.22)}}@keyframes battleShellBlueV33{0%,100%{box-shadow:none}45%{box-shadow:inset 0 0 0 6px rgba(65,111,224,.58),inset 0 0 55px rgba(65,111,224,.22)}}@media(max-width:520px){.draw-cover b.draw-cover-number{font-size:clamp(13px,5.1vw,25px)!important}.draw-head-actions{gap:5px}.draw-head-actions .draw-btn{padding:7px 9px;font-size:11px}.battle-turn-fx-card{min-width:min(82vw,320px);padding:18px 20px}.battle-turn-fx-card strong{font-size:36px}}#fishResultKg[hidden]{display:none!important}#resetFishGameBtn{margin-left:10px!important;border-color:rgba(210,55,70,.3)!important;color:#b52838!important;background:#fff6f7!important}@media(max-width:520px){#resetFishGameBtn{margin-left:4px!important;padding-inline:7px!important}}.global-ranking-overlay{position:fixed;inset:0;z-index:999999;background:rgba(4,8,18,.76);display:grid;place-items:center;padding:18px}.global-ranking-card{width:min(760px,96vw);max-height:88vh;overflow:auto;background:#11182a;color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:22px;box-shadow:0 24px 80px rgba(0,0,0,.45);position:relative}.global-ranking-close{position:absolute;right:14px;top:12px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:26px;cursor:pointer}.global-ranking-card h2{margin:0 46px 18px 0;font-size:24px}.rank-loading,.rank-empty{padding:28px;text-align:center;color:#aebbd4}.rank-tabs{display:flex;gap:8px;margin-bottom:12px}.rank-tabs button{flex:1;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#c9d4e8;border-radius:12px;padding:11px;font-weight:900;cursor:pointer}.rank-tabs button.active{background:#fff;color:#121827}.online-rank-summary{background:rgba(87,166,255,.1);border:1px solid rgba(87,166,255,.2);border-radius:14px;padding:12px 14px;margin-bottom:12px;font-weight:900}.rank-table{display:grid;gap:6px}.rank-row{display:grid;grid-template-columns:54px minmax(100px,1.4fr) 1fr .7fr .8fr;gap:8px;align-items:center;padding:11px 10px;border-radius:11px;background:rgba(255,255,255,.055)}.rank-row.head{font-size:12px;color:#8998b5;background:transparent;padding-top:4px;padding-bottom:4px}.rank-row.me{outline:2px solid rgba(255,210,96,.5);background:rgba(255,210,96,.09)}.rank-row b{font-size:18px}.rank-row span{font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-row em,.rank-row i,.rank-row small{font-style:normal;text-align:center}.rank-note{font-size:12px;color:#8795af;margin:12px 2px 0}.rank-period-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:8px 0 12px}.online-expand-btn{
  height:38px;padding:0 13px;border-radius:11px;border:1px solid #d7e3ff;
  background:#fff;color:#40558e;font:inherit;font-weight:950;cursor:pointer;
  box-shadow:0 6px 16px rgba(48,73,145,.10);transition:.16s
}.online-expand-btn:hover{transform:translateY(-1px);background:#f2f6ff}
/* hub-sticker-fix-v1718 */
#hubScreen a.game-tile,#hubScreen .game-tile{position:relative!important;overflow:visible!important}
#hubScreen .v23-promo-stack{position:absolute!important;z-index:20!important;right:6px!important;top:8px!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:6px!important;pointer-events:none!important}
#hubScreen .v23-promo-sticker{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:11px!important;font-weight:1000!important}
#hubScreen .v23-promo-sticker.hot{background:linear-gradient(145deg,#ff665a,#f23852)!important}
#hubScreen .v23-promo-sticker.new{background:linear-gradient(145deg,#65cf47,#2fac67)!important}
#hubScreen .v23-promo-sticker.reco{background:linear-gradient(145deg,#8e72ff,#a44ee8)!important}

/* on-off-restore-v1740 */
#hubScreen .home-game-tab{
  justify-content:flex-start!important;
  overflow:visible!important;
}
#hubScreen .home-game-tab .tab-state{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-left:auto!important;
  min-width:46px!important;
  height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:1000!important;
  letter-spacing:.08em!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:3!important;
}
#hubScreen .home-game-tab[data-game-tab="offline"] .tab-state{
  background:#ffe3ec!important;color:#c2185b!important;-webkit-text-fill-color:#c2185b!important;border:1px solid #ffb3c7!important;
}
#hubScreen .home-game-tab[data-game-tab="online"] .tab-state{
  background:#d8f8ee!important;color:#0b7a5c!important;-webkit-text-fill-color:#0b7a5c!important;border:1px solid #8ee0c8!important;
}
#hubScreen .home-game-tab.active[data-game-tab="offline"] .tab-state{
  background:#c2185b!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}
#hubScreen .home-game-tab.active[data-game-tab="online"] .tab-state{
  background:#0b7a5c!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}
#hubScreen .v22-badge-stack{
  position:absolute!important;left:8px!important;top:8px!important;z-index:8!important;
  display:flex!important;pointer-events:none!important;
}
#hubScreen .v22-game-badge{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:36px!important;min-height:22px!important;padding:3px 7px!important;
  border-radius:999px!important;border:2px solid #fff!important;
  font-size:10px!important;font-weight:1000!important;color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
#hubScreen .v22-game-badge.off{background:#6477a8!important}
#hubScreen .v22-game-badge.on{background:#25aa81!important}
#hubScreen .v23-promo-stack{top:36px!important}

/* restore-title-logo-v1745 */
#hubScreen .arcade-brand-mini{gap:0!important}
#hubScreen .mini-title-logo{
  height:36px!important;width:auto!important;max-width:168px!important;
  object-fit:contain!important;display:block!important;
  filter:drop-shadow(0 2px 6px rgba(20,50,120,.28));
}
#hubScreen .hub-title-banner,
#hubScreen .title-logo-hero .hub-title-banner{
  position:relative!important;z-index:3!important;
  width:min(560px,86vw)!important;height:auto!important;
  max-height:none!important;object-fit:contain!important;
  display:block!important;margin:0 auto 6px!important;
  filter:drop-shadow(0 10px 16px rgba(40,80,160,.22));
}


/* title-banner-is-logo-v1748 */
#hubScreen .hub-title-banner,
#hubScreen img.hub-title-banner,
#hubScreen .title-bar-banner .hub-title-banner{
  width:min(560px,90vw)!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:18px!important;
  background:transparent!important;
}

/* show-lobby-title-v1802 */
#hubScreen .lobby-copy{position:relative!important;z-index:5!important}
#hubScreen .lobby-title{
  display:block!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:clamp(28px,4.2vw,52px)!important;
  font-weight:1000!important;
  line-height:1.15!important;
  text-shadow:0 2px 10px rgba(10,30,80,.35)!important;
}
#hubScreen .lobby-title span{color:#fff!important;-webkit-text-fill-color:#fff!important}
#hubScreen .lobby-kicker{display:block!important;color:#fff!important}
#hubScreen .hub-title-banner{
  width:min(280px,70vw)!important;
  height:auto!important;
  max-height:120px!important;
  object-fit:contain!important;
  margin:0 0 8px!important;
}

/* hub-title-solid-v1810 */
#hubScreen .lobby-copy{z-index:8!important;position:relative!important}
#hubScreen .lobby-title,#hubScreen .lobby-title span{
  display:block!important;visibility:visible!important;opacity:1!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  font-size:clamp(32px,5vw,64px)!important;font-weight:1000!important;
  line-height:1.12!important;text-shadow:0 3px 12px rgba(8,24,70,.45)!important;
}
#hubScreen .lobby-title span{display:inline!important}
#hubScreen .hub-title-banner{display:block!important;visibility:visible!important}


/* version-footer-static-v1935 */
#site-version-fixed.site-version-footer{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  display:block!important;
  width:max-content!important;
  margin:18px auto 24px!important;
  padding:6px 12px!important;
  border-radius:999px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#6b7898!important;
  font-size:12px!important;
  font-weight:800!important;
}
body:not([data-view="hub"]) #site-version-fixed{display:none!important}


/* v20260903_0113 · 메인 화면 하단 고정 버전 */
body[data-view="hub"] #site-version-fixed.site-version-footer{
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  bottom:calc(10px + env(safe-area-inset-bottom, 0px))!important;
  z-index:40!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:max-content!important;
  margin:0!important;
  padding:7px 14px!important;
  transform:translateX(-50%);
  border:1px solid rgba(90,110,160,.28)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:0 8px 22px rgba(24,36,72,.16)!important;
  color:#5a6784!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  pointer-events:none;
}
body[data-view="hub"]{padding-bottom:52px;}



/* v20260830_0400 · keep TODAY PICK / AD TV title; controls are arrows only */
#hubScreen .random-recommend-head.adtv-arrow-head{
  justify-content:space-between!important;
  align-items:center!important;
  min-height:46px!important;
  margin:0 0 10px!important;
}
#hubScreen .adtv-arrow-head .adtv-heading-copy{
  min-width:0!important;
}
#hubScreen .adtv-arrow-head .recommend-controls{
  width:auto!important;
  flex:0 0 auto!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:14px!important;
}
#hubScreen .adtv-arrow-head .recommend-controls>button{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  padding:0!important;
  border-radius:999px!important;
  font-size:30px!important;
  line-height:1!important;
  font-weight:900!important;
  display:grid!important;
  place-items:center!important;
}
#hubScreen .recommend-viewport{
  touch-action:pan-y!important;
  cursor:grab!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  overscroll-behavior:contain!important;
  outline:none;
}
#hubScreen .recommend-viewport.is-dragging{cursor:grabbing!important;}
#hubScreen .recommend-viewport:focus-visible{box-shadow:inset 0 0 0 2px #4b5568,0 0 0 3px rgba(82,134,255,.4)!important;}
#hubScreen .random-recommend-grid{will-change:transform;}



/* v20260902_1435: mobile top tabs = OFF / ON / PET, improve contrast */
#hubScreen .pet-home-link .tab-state{
  background:#f1eaff!important;
  color:#3b276c!important;
  -webkit-text-fill-color:#3b276c!important;
  border:1px solid #c9b9ec!important;
}
#hubScreen .home-game-tab .tab-copy strong{
  color:#25345f!important;
  -webkit-text-fill-color:#25345f!important;
}
#hubScreen .home-game-tab .tab-copy small{
  color:#53617f!important;
  -webkit-text-fill-color:#53617f!important;
}
@media(max-width:700px){
  #hubScreen .home-game-tabs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    padding:7px!important;
  }
  #hubScreen .home-game-tab{
    min-width:0!important;
    min-height:48px!important;
    height:48px!important;
    padding:0 5px!important;
    justify-content:center!important;
    align-items:center!important;
    border-radius:14px!important;
  }
  #hubScreen .home-game-tab .tab-icon,
  #hubScreen .home-game-tab .tab-copy{
    display:none!important;
  }
  #hubScreen .home-game-tab .tab-state{
    margin:0!important;
    min-width:0!important;
    width:auto!important;
    height:auto!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    font-size:15px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:.08em!important;
    color:#26344f!important;
    -webkit-text-fill-color:#26344f!important;
  }
  #hubScreen .home-game-tab.active .tab-state{
    color:#17213a!important;
    -webkit-text-fill-color:#17213a!important;
  }
  #hubScreen .home-game-tab[data-game-tab="offline"].active{
    background:#ffe8ef!important;
    border-color:#e6a8bb!important;
  }
  #hubScreen .home-game-tab[data-game-tab="online"].active{
    background:#e2f8f0!important;
    border-color:#9ed9c7!important;
  }
  #hubScreen .pet-home-link{
    background:#f1ecfb!important;
    border-color:#c8bce5!important;
  }
  #hubScreen .home-game-tab.active::after{display:none!important}
}
