:root{--orange:#f49700;--blue:#279ce6;--purple:#9632a6;--ink:#3b3029;--yellow:#fff482;--paper:#fffefa}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.7 "Microsoft JhengHei",sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.top{max-width:1180px;margin:auto;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px dashed #f1c783;gap:20px}.brand{text-decoration:none;font-size:21px;font-weight:900;color:var(--orange)}.brand span{font-size:12px;color:var(--ink);display:block;letter-spacing:.15em}.top>a:last-child{font-size:13px;text-decoration:none}main{max-width:1180px;margin:auto;padding:0 32px}.hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;padding:64px 0 74px;align-items:center}.eyebrow{font-size:12px;color:#8d7765;letter-spacing:.09em;font-weight:700}h1,h2,h3,p{margin-top:0}h1{font-size:70px;line-height:1.25;letter-spacing:.03em;margin:21px 0 28px;font-family:"DFKai-SB","KaiTi",serif}h1 span{color:var(--orange);position:relative}h1 span:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:10px;background:var(--yellow);transform:rotate(-3deg);border-radius:43%}.lead{font-size:17px;color:#766453;line-height:1.9}.scribble-note{color:var(--blue);font:22px "DFKai-SB",serif;transform:rotate(-6deg);margin:34px 0}.store-link{font-size:13px;font-weight:700}.machine{position:relative;background:#fff7c9;border:4px solid var(--orange);border-radius:42px 30px 39px 24px;box-shadow:10px 11px 0 #ffdf9c;padding:22px 24px;transform:rotate(.6deg)}.machine:before,.machine:after{content:"";position:absolute;width:32px;height:43px;border:4px solid var(--orange);background:#fff8d5;top:-24px;z-index:-1}.machine:before{left:39px;transform:rotate(-25deg);border-radius:6px 70% 0 0}.machine:after{right:39px;transform:rotate(25deg);border-radius:70% 6px 0 0}.machine-head{display:flex;justify-content:space-between;align-items:center}.badge{background:#fff;border:2px solid var(--orange);border-radius:8px 13px 7px 12px;padding:3px 10px;font-size:11px;font-weight:700}.number{font-size:12px;letter-spacing:.16em;color:#ac873f}.machine h2{text-align:center;color:var(--orange);font:43px "DFKai-SB",serif;font-weight:bold;letter-spacing:.1em;margin:17px 0 5px}.machine-caption{text-align:center;font-size:12px;margin-bottom:20px;color:#977c50}.reels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:9px;background:var(--orange);border-radius:17px 9px 16px 11px;overflow:hidden}.reel{height:155px;background:white;border-radius:9px;overflow:hidden;position:relative}.reel img{width:100%;height:155px;display:block;object-fit:contain;background:#fff;padding:5px}.strip{will-change:transform}.payline{text-align:center;color:var(--orange);font-size:20px;margin:7px 0 13px}.payline span{font-size:10px;color:#967f50;vertical-align:middle}.spin{display:block;width:100%;color:#fff;background:var(--orange);border:3px solid #e88300;border-radius:15px 22px 15px 19px;box-shadow:0 5px 0 #cf7300;font:32px "DFKai-SB",serif;font-weight:bold;padding:9px 10px;transition:transform .15s,box-shadow .15s}.spin span{display:block;font:10px "Microsoft JhengHei",sans-serif;letter-spacing:.08em;margin-top:7px}.spin:hover{filter:brightness(1.04)}.spin:active{transform:translateY(4px);box-shadow:0 1px 0 #cf7300}.spin:disabled{cursor:wait;opacity:.65}.result{text-align:center;min-height:82px;margin-top:22px}.result strong{font-size:18px;color:var(--purple)}.result p{font-size:12px;margin:4px 0;color:#78634e}.machine-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px dashed #ddb976;padding-top:12px;font-size:11px;color:#927a53}.machine-foot b{color:#6c5029;margin-left:4px}.machine.win{animation:wiggle .45s ease-in-out 3}.rules{border-top:2px dashed #f1c783;padding:44px 0}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.section-top h2{font-size:29px;margin-bottom:24px;letter-spacing:.02em}.rules .section-top{display:block}.rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.rule-number{font:35px "DFKai-SB",serif;color:var(--orange)}.rule-number.blue{color:var(--blue)}.rule-number.purple{color:var(--purple)}h3{font-size:16px;margin:7px 0 12px}.rule-grid p{font-size:13px;color:#826f5e;line-height:1.9}.disclosure{font-size:11px;color:#8e7b6b;background:#f5f0e8;border-radius:8px;padding:12px 15px;margin-top:23px}.demo-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.demo-tools button{font-size:11px;border:1px solid #dbc9b4;border-radius:7px;background:white;color:#7d6654;padding:7px 12px}.demo-tools span{font-size:11px;color:var(--purple)}.gallery{padding:35px 0 48px;border-top:2px dashed #f1c783}.gallery h2 span{color:var(--blue)}.gallery .section-top>a{font-size:12px;white-space:nowrap}.sticker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.sticker-card{padding:13px 8px;border:2px solid #f0e4d7;background:#fff;border-radius:18px 13px 19px 12px;text-align:center;transition:transform .2s,border-color .2s}.sticker-card:hover{transform:rotate(-3deg) translateY(-4px);border-color:var(--orange)}.sticker-card img{display:block;width:100%;aspect-ratio:1.16;object-fit:contain}.sticker-card span{font-size:11px;color:#91765e;display:block;margin-top:12px}.series{display:flex;gap:18px;justify-content:center;align-items:center;margin-top:26px;flex-wrap:wrap;font-size:12px}.series span{color:#91765e}.series a{font-weight:bold;color:var(--orange)}footer{text-align:center;font-size:13px;padding:27px 20px 36px;background:#fff4d9;color:#a17b43}footer span{font-size:11px}dialog{border:3px solid var(--orange);border-radius:20px;max-width:min(480px,90vw);padding:30px;text-align:center;background:#fff}dialog::backdrop{background:#2c1a0c88}dialog img{display:block;width:100%;max-height:55vh;object-fit:contain}dialog p{margin:18px 0 8px}dialog a{font-size:12px;color:#b3751a}dialog>button{position:absolute;top:6px;right:10px;border:0;background:none;font-size:26px;color:#957b59}@keyframes wiggle{0%,100%{transform:rotate(.6deg)}35%{transform:rotate(-2deg)}70%{transform:rotate(2deg)}}@media(max-width:850px){.hero{gap:30px}h1{font-size:54px}.machine{padding:18px 16px}.reel,.reel img{height:130px}.sticker-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.section-top h2{font-size:24px}.rule-grid{gap:20px}}@media(max-width:620px){.top{padding:17px 20px}.brand{font-size:18px}.brand span{font-size:10px}.top>a:last-child{font-size:11px}main{padding:0 20px}.hero{grid-template-columns:1fr;gap:32px;padding:27px 0 45px}.hero-copy{position:relative}h1{font-size:43px;line-height:1.23;margin:14px 0 16px}h1 br{display:none}.eyebrow{font-size:10px}.lead{font-size:13px;line-height:1.8;margin-bottom:15px}.lead br{display:none}.scribble-note{display:none}.store-link{font-size:11px}.machine{margin:5px 4px 5px 0;box-shadow:7px 8px 0 #ffdf9c;border-width:3px;padding:16px 14px}.machine h2{font-size:34px;margin:14px 0 7px}.machine-caption{font-size:10px;margin-bottom:15px}.reel,.reel img{height:122px}.payline{margin:5px 0 10px}.spin{font-size:29px}.result{min-height:75px}.result strong{font-size:16px}.result p{font-size:11px}.machine-foot{font-size:10px}.rules{padding:28px 0}.section-top h2{font-size:24px;margin-bottom:20px}.rule-grid{grid-template-columns:1fr;gap:14px}.rule-grid article{display:grid;grid-template-columns:40px 1fr;column-gap:12px}.rule-number{grid-row:1/3;font-size:30px}.rule-grid h3{font-size:14px;margin:2px 0 6px}.rule-grid p{font-size:12px;margin:0}.disclosure{font-size:10px;margin-top:20px}.gallery{padding:26px 0 36px}.gallery .section-top{display:block}.gallery h2{font-size:23px;margin-bottom:12px}.gallery .section-top>a{display:block;margin-bottom:20px;font-size:11px}.sticker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sticker-card{padding:10px}.series{gap:12px}.series span{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

@media(max-width:620px){h1{font-size:32px;letter-spacing:.01em}}

/* v2: imagegen-created Fardi cabinet; original reel stickers remain untouched. */
.hero{gap:35px;grid-template-columns:.8fr 1.2fr;align-items:center;padding-top:30px}
.cat-cabinet{position:relative;container-type:inline-size;isolation:isolate}
.cabinet-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:-1}
.machine{background:transparent;border:0;box-shadow:none;transform:none;border-radius:0;padding:40cqw 15.5cqw 7cqw}
.machine:before,.machine:after{display:none}.machine-head{gap:5px}.badge{font-size:10px;padding:2px 6px}.number{font-size:10px}.machine h2{font-size:30px;margin:9px 0 3px}.machine-caption{font-size:10px;margin-bottom:12px}.reels{gap:5px;padding:6px;background:#ffed9d;border:3px solid var(--orange);border-radius:15px 9px 13px 8px}.reel,.reel img{height:125px}.spin{font-size:28px;border-radius:45% 8% 25% 10% / 12% 24% 10% 18%;border-width:2px}.spin span{font-size:9px}.result{min-height:76px;margin-top:16px}.result strong{font-size:16px}.result p{font-size:11px}.machine-foot{font-size:10px;padding-top:9px;flex-wrap:wrap;justify-content:center}.machine.win{animation:none}.cat-cabinet:has(.win) .cabinet-art{animation:cat-cheer .5s ease-in-out 2}
@keyframes cat-cheer{0%,100%{transform:rotate(0)}40%{transform:rotate(-1.5deg)}75%{transform:rotate(1.5deg)}}
@media(max-width:850px){.hero{gap:20px}.machine{padding-top:47cqw}.machine h2{font-size:25px}.reel,.reel img{height:105px}.machine-foot{font-size:9px}}
@media(max-width:620px){.hero{grid-template-columns:1fr;padding-top:24px;gap:13px}.cat-cabinet{margin:0 -8px}.machine{padding:56cqw 14.5cqw 9cqw;margin:0}.machine h2{font-size:28px}.machine-caption{font-size:9px}.reel,.reel img{height:110px}.reels{gap:4px;padding:4px;border-width:2px}.reel img{padding:2px}.spin{font-size:27px}.payline span{font-size:8px}.result{min-height:80px}.result p{font-size:10px}.machine-foot{gap:4px 12px}.badge{font-size:9px}.number{font-size:9px}}
