/* ══════════════════════════════════════════════════════════════════════
   刮刮乐(BUILD 84)—— 大厅分类条 + 票面(手绘卡通风的黑金票)+ 刮涂层
   ══════════════════════════════════════════════════════════════════════ */
@font-face{font-family:"Luckiest Guy";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/luckiest-guy-latin-400-normal.woff2?v=f3dff7c5) format("woff2")}
@font-face{font-family:"Lilita One";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/lilita-one-latin-400-normal.woff2?v=3b71f6c2) format("woff2")}
:root{--toon:"Luckiest Guy","Cinzel",Georgia,serif;--toon2:"Lilita One",ui-sans-serif,system-ui,sans-serif;--grain2:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .3 0'/></filter><rect width='120' height='120' filter='url(%23n)'/></svg>")}

/* ── 大厅第一层:两扇门(BUILD 87)。只在 .lobby-home 时显示;进了分类就换成左上「‹ 游戏大厅」 ── */
#app .catbar{display:none;grid-template-columns:minmax(0,1fr);gap:14px;margin:4px 0 18px;width:100%;max-width:520px;margin-inline:auto}
#app .lobby-home .catbar{display:grid}
#app .lobby-home .lobhead p,#app .lobby-home #rooms,#app .lobby-home #scratchLobby{display:none}
/* 两扇门那一层的顺序:标题 → 门 → 规则入口(lobhead 拆成 contents 让 h1 / 规则键直接参与排序) */
#app .lobby-home .lobwrap{display:flex;flex-direction:column;align-items:stretch;text-align:center}
#app .lobby-home .lobhead{display:contents}
#app .lobby-home .lobhead h1{order:1;margin-bottom:14px}
#app .lobby-home .catbar{order:2}
#app .lobby-home .ruleslink{order:3;margin-top:2px}
#app .cat{position:relative;display:flex;align-items:center;gap:14px;padding:16px 16px 16px 14px;min-height:132px;border-radius:18px;text-align:left;min-width:0;overflow:hidden;
  background:var(--grain),radial-gradient(ellipse 90% 120% at 0% 50%,rgba(212,175,55,.2),transparent 60%),linear-gradient(150deg,#211c26,#100e13 65%);background-blend-mode:soft-light,normal,normal;
  border:1px solid rgba(212,175,55,.45);color:var(--muted);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),inset 0 0 0 1px rgba(0,0,0,.4),0 14px 30px rgba(0,0,0,.55);transition:transform .12s,box-shadow .15s}
#app .cat::before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,transparent,#d4af37 25%,#fff0b8 50%,#d4af37 75%,transparent)}
#app .cat::after{content:"";position:absolute;inset:5px;border-radius:14px;border:1px solid rgba(212,175,55,.22);pointer-events:none}
#app .cat .cart{flex:0 0 132px;width:132px;height:104px;display:block;filter:drop-shadow(0 6px 8px rgba(0,0,0,.5))}
#app .cat .cart > svg{width:100%;height:100%;display:block;overflow:visible}   /* BUILD 146:只管最外层 —— 以前连门图里嵌套的 svg(企鹅的雪橇)一起放到 100%,雪橇压到隔壁的飞机卡上 */
/* BUILD 142:门卡上的小画是装饰,不接手指 —— 以前飞机那张的尾迹(overflow:visible)伸到上面一张卡中间,横屏时点「百家乐」会点成「飞机」 */
#app .cat .cart,#app .cat .cart *{pointer-events:none}
#app .cat .ctx{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
#app .cat b{font-family:var(--display);font-weight:900;font-size:22px;letter-spacing:.08em;line-height:1.1;background:var(--goldgrad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 rgba(0,0,0,.6))}
#app .cat i{font-style:normal;font-size:11px;color:var(--muted);line-height:1.4}
#app .cat em{font-style:normal;margin-top:4px;align-self:flex-start;font-family:var(--display);font-size:11px;letter-spacing:.1em;color:#2a1d05;background:var(--goldgrad);padding:5px 11px;border-radius:99px;box-shadow:0 0 0 1px #2a1d05,0 3px 0 #5c4310}
#app .cat:active{transform:scale(.985) translateY(1px)}
#app .catback{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px;padding:7px 12px 7px 8px;border-radius:99px;border:1px solid rgba(212,175,55,.35);background:rgba(212,175,55,.06);color:var(--gold2);font-family:var(--display);font-size:12px;letter-spacing:.08em}
#app .catback .chev{font-size:18px;line-height:1;margin-top:-2px}
#app .catback:active{transform:scale(.97)}
#app .lobby-scratch .lobhead p,#app .lobby-scratch #rooms{display:none}
@media(min-width:640px){#app .catbar{grid-template-columns:1fr 1fr;max-width:900px}#app .cat{min-height:160px}}

/* ── 街机页面共用:页签 / 筹码行 / 按钮条(原刮刮乐视图的壳,刮刮乐 BUILD 113 下架) ── */
  background:var(--grain),radial-gradient(120% 70% at 50% -5%,rgba(212,175,55,.2),transparent 60%),radial-gradient(90% 90% at 50% 45%,#231f28 0%,#151218 55%,#09080c 100%);background-blend-mode:soft-light,normal,normal}
  background-image:linear-gradient(rgba(212,175,55,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.12) 1px,transparent 1px);background-size:44px 44px;background-position:center;z-index:0}
#app .sctabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;max-width:400px}
#app .sctab{padding:8px 4px;border-radius:11px;border:1px solid rgba(212,175,55,.28);background:rgba(0,0,0,.25);color:var(--muted);font-family:var(--toon);font-size:12.5px;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#app .sctab.on{background:var(--goldgrad);color:#2a1d05;border-color:#2a1d05;box-shadow:0 0 0 1px rgba(90,60,10,.6),0 4px 10px rgba(212,175,55,.3)}
#app .scprices{display:flex;gap:12px;align-items:center;justify-content:center}
#app .scprices .lbl{font-family:var(--toon2);font-size:12px;color:var(--muted);letter-spacing:.06em}
#app .scprices .chipbtn{width:46px;height:46px;font-size:13px}
#app .scprices .chipbtn.on{transform:translateY(-3px) scale(1.06)}

/* 状态行 / 按钮 / 赔付说明 */
#app .scstat{display:flex;gap:14px;align-items:baseline;justify-content:center;font-family:var(--toon2);font-size:13px;color:var(--muted);letter-spacing:.03em;min-height:20px}
#app .scstat b{font-family:var(--toon);font-size:22px;color:var(--gold2);text-shadow:0 2px 0 #3a2a05}
#app .scbar{display:flex;gap:10px;align-items:center;justify-content:center;width:100%;max-width:400px}
#app .scbtn{flex:1 1 0;min-height:50px;font-family:var(--toon);font-size:16px;letter-spacing:.06em;padding:10px 14px;border:0;border-radius:14px;color:#2a1d05;cursor:pointer;
  background:var(--goldgrad);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -2px 4px rgba(90,60,10,.35),0 0 0 2px #2a1d05,0 6px 0 #5c4310,0 12px 20px rgba(0,0,0,.5)}
#app .scbtn:active:not(:disabled){transform:translateY(4px);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 0 0 2px #2a1d05,0 2px 0 #5c4310}
/* 停 · 收钱 = 绿色「拿钱」键(和金色的买票键一眼分得开);不能按的时候是灰石板,不是半透明 */
#app .scbtn.cash{background:linear-gradient(180deg,#5fd39a 0%,#1f9a5e 55%,#146b40 100%);color:#03160c;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -2px 4px rgba(0,50,25,.45),0 0 0 2px #0b2a19,0 6px 0 #0a3d24,0 12px 20px rgba(0,0,0,.5)}
#app .scbtn.cash:active:not(:disabled){box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 0 0 2px #0b2a19,0 2px 0 #0a3d24}
#app .scbtn.cash small{color:#e8fff2;opacity:1;text-shadow:0 1px 0 rgba(0,0,0,.35)}
#app .scbtn:disabled{cursor:default;color:#6f6a62;background:linear-gradient(180deg,#2c2931,#1b191f);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 0 0 2px #14121a,0 4px 0 #0a090c,0 8px 14px rgba(0,0,0,.35);text-shadow:none}
#app .scbtn:disabled small{color:#6f6a62;opacity:1;text-shadow:none}
#app .scbtn small{display:block;font-family:var(--toon2);font-size:11px;letter-spacing:.02em;opacity:.85}
/* 结算后 1.5 秒的防误触:按钮灰着,底下一条金线从左跑到右,跑完才能按 */
#app .scbtn.arming{position:relative;overflow:hidden}
#app .scbtn.arming::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:linear-gradient(90deg,#b8912f,#f3dd8e);transform-origin:left;animation:scarm var(--arm,1500ms) linear both}
@keyframes scarm{from{transform:scaleX(0)}to{transform:scaleX(1)}}
/* 赔付表:一行一个结果,右边是按当前面额算好的实际金额 */
#app .scpt{width:100%;max-width:400px;border-radius:14px;border:1px solid rgba(212,175,55,.35);overflow:hidden;
  background:linear-gradient(160deg,#1a171f,#0f0e12);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 18px rgba(0,0,0,.45)}
#app .scpt-h{display:flex;align-items:baseline;gap:8px;padding:9px 12px 7px;border-bottom:1px solid rgba(212,175,55,.22);font-family:var(--toon2);font-size:12px;color:var(--muted);letter-spacing:.04em}
#app .scpt-h b{font-family:var(--toon);font-size:15px;color:var(--gold2);letter-spacing:.06em;text-shadow:0 2px 0 #2a1d05}
#app .scpt-h .rtp{margin-left:auto;color:var(--dim);font-size:11px}
#app .scpt-g{display:grid;grid-template-columns:1fr auto auto;align-items:center;column-gap:10px;padding:4px 12px 6px;font-family:var(--toon2);font-size:13px}
#app .scpt-g>i{font-style:normal;font-size:10px;color:var(--dim);letter-spacing:.08em;text-transform:uppercase;padding:4px 0 2px}
#app .scpt-g>i:last-of-type{text-align:right}
#app .scpt-g .r{display:contents}
#app .scpt-g .r>*{padding:5px 0;border-top:1px solid rgba(255,255,255,.05)}
#app .scpt-g .r em{font-style:normal;color:var(--ink);display:flex;align-items:center;gap:6px}
#app .scpt-g .r em u{text-decoration:none;font-size:9px;letter-spacing:.06em;padding:1px 6px;border-radius:99px;background:var(--goldgrad);color:#2a1d05;font-weight:700}
#app .scpt-g .r b{font-family:var(--num);color:var(--muted);font-weight:600;text-align:right;min-width:36px}
#app .scpt-g .r strong{font-family:var(--num);font-size:15px;color:var(--gold2);text-align:right;font-weight:700;display:flex;align-items:baseline;justify-content:flex-end;gap:5px;white-space:nowrap}
#app .scpt-g .r strong small{font-family:var(--toon2);font-size:9px;letter-spacing:.06em;color:var(--dim);font-weight:400}
#app .scpt-g .r.lose strong,#app .scpt-g .r.lose b{color:#e2556a}
#app .scpt-g .r.lose strong small{color:#e2556a;opacity:.8}
#app .scpt-g .r.now em{color:var(--gold2)}
#app .scpt-g .r.now>*{background:linear-gradient(90deg,rgba(212,175,55,.12),transparent 70%)}
#app .scpt-n{padding:6px 12px 9px;font-size:10.5px;color:var(--dim);line-height:1.4;border-top:1px solid rgba(212,175,55,.15)}
#app .scfair{font-size:10.5px;color:var(--dim);text-align:center;font-family:ui-monospace,Menlo,monospace;max-width:400px;word-break:break-all}
#app .scfair button{color:var(--gold2);text-decoration:underline;font:inherit;font-size:11px;margin-left:4px}
#app .scfairtbl{font-size:11px;color:var(--muted);display:grid;grid-template-columns:auto 1fr;gap:6px 10px;margin:8px 0}
#app .scfairtbl code{font-family:ui-monospace,Menlo,monospace;color:var(--ink);word-break:break-all;font-size:10.5px}
#app .scfairok{color:var(--win);font-weight:700}
#app .scfairbad{color:var(--lose);font-weight:700}

