@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-7RbcRiD8.woff2)format("woff2"),url(/assets/roboto-latin-500-normal-DQZyH_nt.woff)format("woff")}:root{--site-primary:#287a3f;--site-primary-hover:#205f33;--site-accent:#72ae67;--site-bg:#f7fbf7;--site-surface:#fff;--site-surface-muted:#eef7ef;--site-text:#29443a;--site-text-muted:#617069;--site-border:#dce9de;--site-radius-sm:12px;--site-radius-md:20px;--site-radius-lg:30px;--site-shadow-sm:0 10px 30px #20533012;--site-content-max:1200px;--site-gutter:clamp(18px, 4vw, 42px);--site-section-space:clamp(64px, 9vw, 112px);--site-ink:#183329;--site-muted:var(--site-text-muted);--site-green:var(--site-primary);--site-green-strong:var(--site-primary-hover);--site-gold:var(--site-accent);--site-line:var(--site-border);--site-shadow:var(--site-shadow-sm);--site-radius:var(--site-radius-md);--site-max:var(--site-content-max);--site-section:var(--site-section-space)}.site-shell{background:var(--site-bg);color:var(--site-text);scroll-behavior:smooth;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.65;position:absolute;inset:0;overflow:hidden auto}.site-shell *,.site-shell :before,.site-shell :after{box-sizing:border-box}.site-shell a{color:inherit;text-decoration:none}.site-shell a:focus-visible,.site-shell button:focus-visible,.site-shell summary:focus-visible{outline-offset:3px;outline:3px solid #287a3f9e}.site-container{width:min(100%, var(--site-max));padding-inline:var(--site-gutter);margin-inline:auto}.skip-link{z-index:200000;color:var(--site-ink);background:#fff;border-radius:9px;padding:10px 14px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:1000;border-bottom:1px solid var(--site-border);background:var(--site-surface);color:var(--site-text);position:sticky;top:0;box-shadow:0 2px 12px #2053300d}.site-header-inner{justify-content:space-between;align-items:center;min-height:64px;display:flex;position:relative}.site-header-compact .site-header-inner{gap:16px;min-height:54px}.site-header-compact{border-bottom-color:var(--site-border);background:var(--site-surface);color:var(--site-ink)}.site-header-compact .site-brand img{width:27px;height:27px}.site-header-compact .site-brand{color:var(--site-primary);flex:none;gap:8px;font-size:1.08rem}.site-game-title{min-width:0;color:var(--site-ink);letter-spacing:-.025em;white-space:nowrap;border-left:1px solid #17352f2e;margin:0 auto 0 0;padding-left:16px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,2.4vw,2.25rem);font-weight:650;line-height:1}.site-header-compact .site-navigation a{color:var(--site-text);border-radius:7px;padding:5px 10px;font-size:.88rem}.site-header-compact .site-navigation a:hover,.site-header-compact .site-navigation a[aria-current=page]{background:var(--site-surface-muted);color:var(--site-primary-hover)}.site-header-compact .site-navigation a[aria-current=page]{box-shadow:inset 0 -2px var(--site-primary)}.site-brand{color:var(--site-primary);letter-spacing:.035em;align-items:center;gap:10px;font-family:Georgia,Times New Roman,serif;font-size:1.27rem;font-weight:700;display:inline-flex}.site-brand img{display:block}.site-navigation{align-items:center;gap:4px;display:flex}.site-navigation a{color:var(--site-text);border-radius:9px;padding:8px 12px;font-size:.93rem;font-weight:650}.site-navigation a:hover,.site-navigation a[aria-current=page]{background:var(--site-surface-muted);color:var(--site-primary-hover)}.site-navigation a[aria-current=page]{box-shadow:inset 0 -2px var(--site-primary)}.mobile-menu-button{background:var(--site-surface-muted);border:0;border-radius:10px;width:44px;height:44px;padding:10px;display:none}.mobile-menu-button span{background:var(--site-primary);width:100%;height:2px;margin-block:4px;display:block}.home-hero{grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);align-items:center;gap:clamp(36px,7vw,94px);min-height:min(500px,100svh - 64px);padding-block:clamp(38px,6vw,68px);display:grid}.hero-copy{max-width:650px}.eyebrow{color:#8a6b27;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px;font-size:.75rem;font-weight:800;display:block}.home-hero h1,.page-intro h1,.game-page-intro h1,.not-found-page h1{color:var(--site-ink);letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.55rem,6vw,5.35rem);font-weight:650;line-height:.99}.home-hero p{max-width:590px;color:var(--site-text);margin:24px 0 0;font-size:clamp(1.02rem,2vw,1.23rem);line-height:1.72}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button-primary,.button-secondary{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;min-height:48px;padding:11px 20px;font-weight:750;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.button-primary{background:var(--site-green);box-shadow:0 8px 18px #205f3329;color:#fffbea!important}.button-secondary{border-color:var(--site-line);background:var(--site-surface);color:var(--site-green)!important}.button-primary:hover,.button-secondary:hover{transform:translateY(-2px)}.button-primary:hover{background:var(--site-primary-hover)}.button-secondary:hover{background:var(--site-surface-muted);border-color:#287a3f4d}.hero-art{border:1px solid var(--site-border);border-radius:var(--site-radius-lg);background:var(--site-surface-muted);min-height:330px;box-shadow:var(--site-shadow);position:relative;overflow:hidden}.hero-art-primary{object-fit:cover;width:100%;height:100%;display:block}.hero-art-card{border-radius:var(--site-radius-sm);background:#fffffff0;border:1px solid #fffc;width:min(46%,210px);padding:8px;position:absolute;bottom:18px;right:18px;box-shadow:0 10px 24px #1036202e}.hero-art-card span{color:var(--site-primary-hover);letter-spacing:.08em;text-transform:uppercase;padding:1px 4px 7px;font-size:.7rem;font-weight:800;display:block}.hero-art-card img{border-radius:8px;width:100%;height:auto;display:block}.content-section{padding-block:var(--site-section);border-top:1px solid var(--site-line)}.section-heading{max-width:720px;margin-bottom:clamp(28px,5vw,46px)}.section-heading h2,.content-section h2,.related-games h2,.internal-links h2,.legal-content h2{color:var(--site-ink);letter-spacing:-.025em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.75rem,3.5vw,2.65rem);font-weight:650;line-height:1.13}.section-heading p{color:var(--site-muted);margin:15px 0 0;font-size:1.03rem}.game-card{border:1px solid var(--site-line);border-radius:var(--site-radius-lg);background:var(--site-surface);box-shadow:var(--site-shadow);grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);display:grid;overflow:hidden}.game-card[data-variant=grid]{border-radius:var(--site-radius-md);min-width:0;box-shadow:var(--site-shadow-sm);flex-direction:column;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.game-card[data-variant=grid]:hover{border-color:#287a3f47;transform:translateY(-2px);box-shadow:0 14px 32px #2053301c}.game-list{gap:clamp(20px,3vw,32px);display:grid}.game-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,22px);display:grid}.game-card-image-link{aspect-ratio:16/10;background:var(--site-green-strong);min-height:0;display:block;overflow:hidden}.game-card-image-link img{object-fit:cover;width:100%;height:100%;transition:transform .28s;display:block}.game-card-image-link:hover img{transform:scale(1.02)}.game-card-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(28px,5vw,58px);display:flex}.game-card[data-variant=grid] .game-card-copy{flex:1;justify-content:flex-start;min-width:0;padding:18px}.game-card__tag{background:var(--site-surface-muted);color:var(--site-green);letter-spacing:.09em;text-transform:uppercase;border-radius:999px;padding:5px 9px;font-family:inherit;font-size:.72rem;font-weight:800}.game-card h2{margin:18px 0 0;font-size:clamp(1.8rem,3.5vw,2.65rem)}.game-card[data-variant=grid] h2{letter-spacing:-.015em;margin-top:12px;font-family:inherit;font-size:1.08rem;font-weight:780;line-height:1.25}.game-card p{color:var(--site-muted);margin:16px 0 22px}.game-card[data-variant=grid] p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:9px 0 15px;font-size:.86rem;line-height:1.5;display:-webkit-box;overflow:hidden}.game-card[data-variant=grid] .text-link{background:var(--site-primary);text-align:center;border-radius:10px;width:100%;min-height:44px;margin-top:auto;padding:10px 14px;text-decoration:none;color:#fff!important}.game-card[data-variant=grid] .text-link:hover{background:var(--site-primary-hover)}.text-link{font-weight:800;color:var(--site-green)!important}.text-link:hover{text-underline-offset:4px;text-decoration:underline}.category-grid,.benefit-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.category-grid-home{grid-template-columns:repeat(3,minmax(0,1fr))}.category-card,.benefit-grid article{border:1px solid var(--site-line);border-radius:var(--site-radius);background:var(--site-surface);min-height:220px;padding:24px}.category-grid-home .category-card:first-child{background:#eff8f0}.category-grid-home .category-card:nth-child(2){background:#f5faf5}.category-grid-home .category-card:nth-child(3){background:#fffdf8}a.category-card{transition:transform .15s,box-shadow .15s}a.category-card:hover{border-color:#287a3f47;transform:translateY(-3px);box-shadow:0 14px 30px #20533017}.category-card-muted{opacity:.72}.category-card-title{align-items:center;gap:12px;margin-bottom:5px;display:flex}.site-shell[data-route=home] .category-grid-home .category-card-title h3{white-space:nowrap;min-width:0;margin:0}.category-card-icon{object-fit:contain;flex:0 0 48px;width:48px;height:48px}.category-symbol{width:42px;height:42px;color:var(--site-green);background:#e1e9e4;border-radius:11px;place-items:center;font-size:1.45rem;display:grid}.category-card h3,.benefit-grid h3,.guide-grid h3{color:var(--site-ink);margin:22px 0 8px;font-size:1.08rem}.category-card p,.benefit-grid p,.guide-grid p{color:var(--site-muted);margin:0;font-size:.92rem}.category-card small{color:#826724;margin-top:20px;font-weight:800;display:block}.benefit-grid article span{background:var(--site-green);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.about-preview{grid-template-columns:.82fr 1.18fr;gap:clamp(32px,8vw,110px);display:grid}.about-preview p{margin:0 0 20px;font-size:1.08rem}.faq-list{border-top:1px solid var(--site-line)}.faq-list details{border-bottom:1px solid var(--site-line)}.faq-list summary{color:var(--site-ink);cursor:pointer;padding:22px 48px 22px 0;font-weight:750;list-style:none;position:relative}.faq-list summary:after{content:"+";color:#876b28;font-size:1.45rem;position:absolute;top:19px;right:8px}.faq-list details[open] summary:after{content:"−"}.faq-list details p{max-width:780px;color:var(--site-muted);margin:-4px 0 22px}.site-shell[data-route=home] .content-section{padding-block:64px}.site-shell[data-route=home] .home-categories-section{padding-block:48px 56px}.site-shell[data-route=home] .section-heading{margin-bottom:28px}.site-shell[data-route=home] .section-heading p{margin-top:10px}.site-shell[data-route=home] #games .game-grid{row-gap:18px}.site-shell[data-route=home] .benefits-section{padding-block:56px}.site-shell[data-route=home] .benefits-section .section-heading,.site-shell[data-route=home] .faq-section .section-heading{margin-bottom:24px}.site-shell[data-route=home] .about-preview{gap:clamp(32px,5vw,64px);padding-block:48px}.site-shell[data-route=home] .about-preview p{margin-bottom:14px}.site-shell[data-route=home] .faq-section{padding-block:56px}.site-shell[data-route=home] .faq-list summary{padding-block:16px}.site-shell[data-route=home] .faq-list summary:after{top:13px}.site-shell[data-route=home] .faq-list details p{margin-bottom:16px}@media (width>=801px){.site-shell[data-route=home] .home-hero{gap:clamp(40px,5vw,70px);min-height:auto;padding-block:32px 44px}.site-shell[data-route=home] .home-hero .eyebrow{margin-bottom:8px}.site-shell[data-route=home] .home-hero h1{font-size:clamp(2.55rem,5.2vw,4.55rem)}.site-shell[data-route=home] .home-hero p{margin-top:18px;line-height:1.6}.site-shell[data-route=home] .hero-actions{margin-top:24px}.site-shell[data-route=home] .hero-art{height:330px;min-height:0}.site-shell[data-route=home] .category-grid-home .category-card{min-height:176px;padding:14px 18px}.site-shell[data-route=home] .category-grid-home .category-symbol{width:36px;height:36px;font-size:1.25rem}.site-shell[data-route=home] .category-grid-home h3{margin:12px 0 5px}.site-shell[data-route=home] .category-grid-home p{line-height:1.42}.site-shell[data-route=home] .category-grid-home small{margin-top:10px;line-height:1.4}.site-shell[data-route=home] .benefit-grid article{min-height:170px;padding:20px}.site-shell[data-route=home] .benefit-grid h3{margin:16px 0 6px}}.page-flow{padding-block:20px var(--site-section)}.breadcrumbs{margin-bottom:clamp(30px,5vw,54px);font-size:.84rem}.breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{color:#98a49f;content:"/";margin-left:8px}.breadcrumbs a{color:var(--site-green);font-weight:700}.breadcrumbs span{color:var(--site-muted)}.page-intro{max-width:820px;padding-bottom:clamp(46px,8vw,82px)}.page-intro h1,.game-page-intro h1{font-size:clamp(2.35rem,5vw,4.7rem)}.page-intro p{max-width:750px;color:var(--site-muted);margin:22px 0 0;font-size:clamp(1rem,2vw,1.18rem)}.page-intro small{color:var(--site-muted);margin-top:20px;display:block}.site-shell[data-route=home] #games{padding-top:clamp(38px,5vw,56px)}.site-shell[data-route=mahjong] .page-flow>.breadcrumbs{margin-bottom:16px}.site-shell[data-route=mahjong] .page-intro{padding-bottom:clamp(24px,4vw,36px)}.site-shell[data-route=mahjong] .page-intro h1{font-size:clamp(2.3rem,4.4vw,3.8rem)}.site-shell[data-route=mahjong] .page-intro p{margin-top:14px}.site-shell[data-route=mahjong] .page-intro+.content-section{padding-top:clamp(32px,4vw,48px)}.category-page-flow{padding-top:16px;padding-bottom:64px}.category-page-flow>.breadcrumbs{margin-bottom:12px}.category-page-flow>.page-intro{max-width:780px;padding-bottom:26px}.category-page-flow>.page-intro .eyebrow{margin-bottom:8px}.category-page-flow>.page-intro h1{font-size:clamp(2.35rem,4.4vw,3.8rem)}.category-page-flow>.page-intro p{margin-top:12px;line-height:1.58}.category-page-flow>.category-game-section{padding-block:28px 56px}.category-page-flow>.category-game-section .game-list{gap:20px}.category-secondary-copy{border-top:1px solid var(--site-border);max-width:760px;margin:42px 0 0;padding-top:28px}.category-secondary-copy h2{font-size:clamp(1.55rem,2.5vw,2rem)}.category-secondary-copy p{margin-top:10px;line-height:1.58}.category-page-flow>.content-section:not(.category-game-section){padding-block:64px}.prose-grid,.feature-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,8vw,100px);display:grid}.prose-grid p,.prose-grid li,.feature-layout li{color:var(--site-muted)}.prose-grid ol,.feature-layout ul{padding-left:1.25rem}.internal-links{border:1px solid var(--site-line);border-radius:var(--site-radius);background:var(--site-surface);flex-wrap:wrap;align-items:center;gap:12px 22px;padding:28px;display:flex}.internal-links h2{width:100%;font-size:1.3rem}.internal-links a{color:var(--site-green);font-weight:750}.text-link,.site-shell .text-link{color:var(--site-green);text-underline-offset:3px;font-weight:750;-webkit-text-decoration:underline #0f4a3d52;text-decoration:underline #0f4a3d52;text-decoration-thickness:1px}.text-link:hover,.site-shell .text-link:hover{text-decoration-color:currentColor}.legal-page{max-width:850px;margin-inline:auto}.legal-content{border:1px solid var(--site-line);border-radius:var(--site-radius);background:var(--site-surface);padding:clamp(28px,5vw,56px)}.legal-content h2{margin-top:38px;font-size:1.55rem}.legal-content h2:first-child{margin-top:0}.legal-content p{color:var(--site-muted)}.notice-box{background:#fbf4dd;border:1px solid #a0771e47;border-radius:14px;padding:20px}.notice-box p{margin-bottom:0}.not-found-page{flex-direction:column;justify-content:center;align-items:flex-start;min-height:68svh;display:flex}.not-found-page p{max-width:620px;color:var(--site-muted);font-size:1.06rem}.site-footer{border-top:1px solid var(--site-border);color:var(--site-text-muted);background:#eef7ef}.site-footer-inner{grid-template-columns:minmax(220px,1fr) minmax(320px,1fr);gap:38px 70px;padding-block:52px 32px;display:grid}.site-brand-footer{color:var(--site-primary)!important}.site-footer p{margin:10px 0 0}.site-footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.site-footer-links h2{color:var(--site-ink);letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px;font-family:inherit;font-size:.82rem;font-weight:800}.site-footer nav{gap:7px;display:grid}.site-footer nav a:hover{color:var(--site-primary-hover)}.site-footer small{border-top:1px solid var(--site-border);grid-column:1/-1;padding-top:25px}@media (width<=800px){.site-header-inner{min-height:58px}.site-header-compact .site-header-inner{flex-wrap:nowrap;gap:10px;min-height:46px}.site-header-compact .site-brand,.site-header-compact .mobile-menu-button{margin-block:2px}.site-header-compact .mobile-menu-button{background:0 0;border:0;flex:0 0 44px;order:3;width:44px;height:44px;margin-block:0;position:relative}.site-header-compact .mobile-menu-button:before{border:1px solid var(--site-border);background:var(--site-surface-muted);content:"";border-radius:10px;position:absolute;inset:2px}.site-header-compact .mobile-menu-button span{z-index:1;background:var(--site-green);width:24px;margin-inline:auto;position:relative}.site-game-title{border-top:0;border-left:1px solid #17352f29;flex:auto;order:2;width:auto;height:auto;margin:0 auto 0 0;padding-left:12px;font-size:clamp(1.15rem,3.4vw,1.45rem);line-height:1}.site-header-compact .site-navigation{border-color:var(--site-border);background:var(--site-surface);box-shadow:var(--site-shadow-sm);top:100%}.site-header-compact .site-navigation a{color:var(--site-ink)}.site-header-compact .site-navigation a[aria-current=page],.site-navigation a[aria-current=page]{box-shadow:inset 3px 0 var(--site-primary)}.mobile-menu-button{display:block}.site-navigation{top:calc(100% + 1px);right:var(--site-gutter);left:var(--site-gutter);border:1px solid var(--site-border);background:var(--site-surface);box-shadow:var(--site-shadow-sm);border-radius:0 0 14px 14px;flex-direction:column;align-items:stretch;padding:8px;display:none;position:absolute}.site-navigation[data-open=true]{display:flex}.site-navigation a{padding:11px 13px}.home-hero{grid-template-columns:1fr;gap:34px;min-height:auto;padding-block:42px 52px}.hero-art{min-height:290px}.game-card{grid-template-columns:1fr}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-card-image-link{aspect-ratio:16/10;min-height:0}.category-grid,.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid-home,.about-preview,.prose-grid{grid-template-columns:1fr}.site-shell[data-route=home] .content-section{padding-block:48px}.site-shell[data-route=home] .home-categories-section{padding-block:40px 48px}.site-shell[data-route=home] .benefits-section,.site-shell[data-route=home] .about-preview,.site-shell[data-route=home] .faq-section{padding-block:44px}.site-shell[data-route=home] .category-grid-home .category-card,.site-shell[data-route=home] .benefit-grid article{min-height:160px;padding:20px}.site-shell[data-route=home] .about-preview{gap:20px}}@media (width<=520px){.site-shell[data-route=home] .home-hero{gap:26px;padding-block:30px 38px}.site-shell[data-route=home] .home-hero h1{font-size:clamp(2.55rem,12vw,3rem)}.site-shell[data-route=home] .home-hero p{margin-top:16px;line-height:1.55}.site-shell[data-route=home] .hero-actions{margin-top:22px}.home-hero h1,.page-intro h1,.not-found-page h1{font-size:clamp(2.25rem,12vw,3.45rem)}.hero-actions{flex-direction:column;align-items:stretch}.button-primary,.button-secondary{width:100%}.hero-art{min-height:235px}.category-grid,.benefit-grid{grid-template-columns:1fr}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-card[data-variant=grid]{border-radius:14px}.game-card[data-variant=grid] .game-card-image-link{aspect-ratio:4/3}.game-card[data-variant=grid] .game-card-copy{padding:13px}.game-card[data-variant=grid] h2{min-height:2.5em;margin-top:9px;font-size:.94rem}.game-card[data-variant=grid] p{margin-block:7px 12px;font-size:.78rem}.game-card[data-variant=grid] .game-card__tag{letter-spacing:.06em;padding:4px 7px;font-size:.63rem}.game-card[data-variant=grid] .text-link{padding-inline:8px;font-size:.85rem}.category-card,.benefit-grid article{min-height:0}.site-shell[data-route=home] .category-grid-home .category-card{min-height:0;padding:18px}.site-shell[data-route=home] .category-grid-home .category-symbol{width:36px;height:36px;font-size:1.18rem}.site-shell[data-route=home] .category-grid-home h3{margin:12px 0 5px}.site-shell[data-route=home] .category-grid-home small{margin-top:10px}.site-shell[data-route=home] .benefit-grid article{grid-template-columns:34px minmax(0,1fr);gap:4px 14px;min-height:0;padding:18px;display:grid}.site-shell[data-route=home] .benefit-grid article span{grid-row:1/span 2}.site-shell[data-route=home] .benefit-grid h3{margin:0}.site-shell[data-route=home] .benefit-grid p{grid-column:2}.site-header-compact .site-brand span{display:none}.site-header-compact .site-brand img{width:24px;height:24px}.site-header-compact .site-game-title{text-align:center;border-left:0;padding-left:0;font-size:clamp(1.06rem,5vw,1.3rem)}.legal-content{padding:24px 20px}.site-footer-inner{grid-template-columns:1fr}.site-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer small{grid-column:auto}.category-page-flow{padding-top:14px;padding-bottom:48px}.category-page-flow>.breadcrumbs{margin-bottom:14px}.category-page-flow>.page-intro{padding-bottom:24px}.category-page-flow>.page-intro h1{font-size:clamp(2.25rem,11vw,2.8rem)}.category-page-flow>.page-intro p{margin-top:12px;line-height:1.55}.category-page-flow>.category-game-section{padding-block:24px 48px}.category-secondary-copy{margin-top:36px;padding-top:24px}.category-page-flow>.content-section:not(.category-game-section){padding-block:48px}}@media (prefers-reduced-motion:reduce){.site-shell{scroll-behavior:auto}.site-shell :not(.game-container,.game-container *),.site-shell :not(.game-container,.game-container *):before,.site-shell :not(.game-container,.game-container *):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.mahjong-guide-page{background:linear-gradient(180deg, #c8a85e14, transparent 280px), var(--site-bg)}.guide-page-container{width:min(100%,1040px);padding-top:clamp(16px,3vw,28px);padding-bottom:var(--site-section)}.guide-page-container>.breadcrumbs{margin-bottom:clamp(14px,2vw,20px)}.guide-article{width:min(100%,860px);margin-inline:auto}.guide-hero{padding-bottom:clamp(38px,6vw,60px)}.guide-hero h1{max-width:820px;color:var(--site-ink);letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,6vw,4.65rem);font-weight:650;line-height:1.02}.guide-hero>p{max-width:760px;color:var(--site-text);margin:20px 0 0;font-size:clamp(1.04rem,2vw,1.2rem);line-height:1.75}.guide-actions{flex-wrap:wrap;align-items:center;gap:16px 22px;margin-top:28px;display:flex}.guide-jump-link{color:var(--site-green);font-weight:750}.guide-jump-link:after{content:"↓";color:#92732d;margin-left:7px}.guide-quick-rule{border:1px solid #0f4a3d2e;border-left:5px solid var(--site-gold);border-radius:var(--site-radius-sm);background:var(--site-surface);grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);align-items:center;gap:18px 32px;margin-bottom:clamp(42px,7vw,70px);padding:clamp(22px,4vw,32px);display:grid;box-shadow:0 12px 32px #19342d0f}.guide-quick-rule strong{color:var(--site-green-strong);font-family:Georgia,Times New Roman,serif;font-size:1.24rem}.guide-quick-rule p{color:var(--site-text);margin:0}.guide-section{border-top:1px solid var(--site-line);padding-block:clamp(38px,6vw,62px);scroll-margin-top:90px}.guide-section h2{max-width:760px;color:var(--site-ink);letter-spacing:-.025em;margin:0 0 20px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.85rem,4vw,2.7rem);font-weight:650;line-height:1.12}.guide-section h3{color:var(--site-ink);margin:30px 0 8px;font-size:1.08rem;line-height:1.35}.guide-section>p,.guide-section>ul{max-width:780px}.guide-section p{margin:0 0 18px}.guide-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0;display:grid}.guide-rule-grid article{border:1px solid var(--site-line);border-radius:var(--site-radius-sm);background:var(--site-surface);padding:24px}.guide-rule-grid article>span{background:var(--site-green);color:#fff8e7;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.guide-rule-grid h3{margin-top:16px}.guide-rule-grid p,.guide-steps p{color:var(--site-muted);margin-bottom:0}.guide-note{border-radius:var(--site-radius-sm);color:var(--site-text);background:#c8a85e24;margin-top:24px;padding:18px 20px}.guide-note strong{color:var(--site-ink)}.guide-steps{gap:0;margin-top:26px;display:grid}.guide-steps article{border-top:1px solid var(--site-line);grid-template-columns:42px minmax(0,1fr);gap:18px;padding:22px 0;display:grid}.guide-steps article:last-child{border-bottom:1px solid var(--site-line)}.guide-steps article>span{color:#99792f;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;line-height:1.25}.guide-steps h3{margin:0 0 6px}.guide-mistakes{gap:12px;margin:0;padding:0;list-style:none;display:grid}.guide-mistakes li{background:#fffef9a6;border-left:3px solid #c8a85eb3;padding:15px 18px}.guide-play-cta{border-radius:var(--site-radius);background:var(--site-green-strong);color:#f7f0de;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;margin-top:clamp(32px,5vw,54px);padding:clamp(28px,5vw,46px);display:grid}.guide-play-cta h2,.guide-play-cta p{color:inherit}.guide-play-cta h2{margin-bottom:12px}.guide-play-cta p{color:#f7f0dec7;margin-bottom:0}.guide-play-cta .eyebrow{color:#e3c67e}.guide-play-cta .button-primary{white-space:nowrap}.guide-cta-link{color:inherit;text-underline-offset:3px;font-weight:750;-webkit-text-decoration:underline #f7f0de73;text-decoration:underline #f7f0de73}.strategy-priority-list{counter-reset:strategy-priority;gap:12px;margin:28px 0 0;padding:0;list-style:none;display:grid}.strategy-priority-list li{border:1px solid var(--site-line);border-radius:var(--site-radius-sm);background:var(--site-surface);counter-increment:strategy-priority;min-height:68px;padding:17px 18px 17px 64px;position:relative}.strategy-priority-list li:before{width:31px;height:31px;color:var(--site-green-strong);content:counter(strategy-priority);background:#c8a85e33;border-radius:50%;place-items:center;font-weight:800;display:grid;position:absolute;top:16px;left:18px}.strategy-priority-list strong{color:var(--site-ink);display:block}.layout-style-grid{border-top:1px solid var(--site-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin-top:28px;display:grid}.layout-style-grid article{border-bottom:1px solid var(--site-line);padding:24px 0}.layout-style-grid h3{margin:0 0 8px}.layout-style-grid p{color:var(--site-muted);margin:0}.layout-beginner-checklist{gap:10px;margin:26px 0;padding:0;list-style:none;display:grid}.layout-beginner-checklist li{background:#fffef9b8;border-radius:10px;padding:12px 16px 12px 44px;position:relative}.layout-beginner-checklist li:before{color:#92732d;content:"✓";font-weight:900;position:absolute;top:12px;left:16px}.uletime-layout-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px;display:grid}.uletime-layout-grid article{border:1px solid var(--site-line);border-radius:var(--site-radius-sm);background:var(--site-surface);padding:20px}.uletime-layout-grid span{color:#8a6b27;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.uletime-layout-grid h3{margin:7px 0 2px;font-family:Georgia,Times New Roman,serif;font-size:1.35rem}.uletime-layout-grid p,.layout-list-note{color:var(--site-muted)}.uletime-layout-grid p{margin:0;font-size:.88rem}.layout-list-note{margin-top:22px}.guide-article>.faq-section{margin-top:clamp(52px,8vw,82px)}@media (width<=800px){.uletime-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-quick-rule,.guide-play-cta,.guide-rule-grid{grid-template-columns:1fr}}@media (width<=520px){.layout-style-grid,.uletime-layout-grid{grid-template-columns:1fr}.layout-style-grid{gap:0}.guide-page-container{padding-top:12px}.guide-page-container>.breadcrumbs{margin-bottom:12px;font-size:.76rem}.guide-hero{padding-bottom:34px}.guide-hero h1{font-size:clamp(2.2rem,11vw,3.1rem)}.guide-hero>p{margin-top:16px;font-size:1rem}.guide-actions{flex-direction:column;align-items:stretch;margin-top:22px}.guide-jump-link{text-align:center;padding:4px 2px}.guide-quick-rule{gap:8px;padding:20px}.guide-section{padding-block:36px}.guide-rule-grid article{padding:20px}.guide-steps article{grid-template-columns:32px minmax(0,1fr);gap:12px}.guide-play-cta{padding:26px 22px}}.game-page-main{background:var(--site-bg)}.game-page-container{width:min(100%,1440px);max-width:1440px;padding-top:2px;padding-bottom:48px}.game-container{border:1px solid var(--site-border);isolation:isolate;background:#0d3029;border-radius:18px;width:min(100%,1180px);height:clamp(610px,100svh - 62px,880px);min-height:610px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 12px 32px #1833291f}.article-content-container{width:min(100%,900px);margin-inline:auto}.game-page-summary{color:var(--site-muted);text-align:center;margin:16px 0 0;font-size:.92rem;line-height:1.55}.article-content-container>.breadcrumbs{margin:18px 0 0}.article-content-container>.content-section{padding-block:clamp(46px,5vw,60px)}.article-content-container>.content-section .section-heading{margin-bottom:22px}.article-content-container>.content-section .section-heading p{margin-top:10px}.article-content-container .game-guide>p,.article-content-container .feature-layout p,.article-content-container .feature-layout li{line-height:1.65}.article-content-container .game-guide>p{margin-block:0}.article-content-container .game-guide>p+p{margin-top:16px}.article-content-container .game-guide>p+.guide-grid,.article-content-container .game-guide>.guide-grid+p{margin-top:22px}.game-loading,.game-empty-state{color:#f6ebcf;text-align:center;background:radial-gradient(circle,#ffffff0f,#0000 44%),#0d3029;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px;display:flex;position:absolute;inset:0}.game-loading-mark{background:#f6f0da;border:2px solid #d9c17f;border-radius:7px;width:38px;height:50px;margin-bottom:10px;animation:1.1s ease-in-out infinite alternate site-loading-pulse;box-shadow:5px 7px #9d8657}.game-loading small{color:#ffffff9e}@keyframes site-loading-pulse{to{transform:translateY(-5px)}}.game-guide,.feature-layout,.layouts-section,.game-page-container>.faq-section{width:100%;margin-inline:auto}.guide-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.guide-grid article{border:1px solid var(--site-line);border-radius:var(--site-radius);background:var(--site-surface);box-shadow:var(--site-shadow-sm);padding:18px}.guide-grid article>span{background:var(--site-surface-muted);width:34px;height:34px;color:var(--site-green);border-radius:50%;place-items:center;font-weight:850;display:grid}.guide-grid article h3{margin:14px 0 6px}.guide-grid article p{margin:0;line-height:1.5}.feature-layout{gap:24px}.feature-layout>article{border:1px solid var(--site-border);border-radius:var(--site-radius-md);background:var(--site-surface);box-shadow:var(--site-shadow-sm);padding:22px}.feature-layout>article>:first-child{margin-top:0}.feature-layout>article>:last-child{margin-bottom:0}.feature-layout li+li{margin-top:6px}.check-list{list-style:"✓  "}.layout-name-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.layout-name-grid span{border:1px solid var(--site-line);background:var(--site-surface);min-height:72px;color:var(--site-ink);border-radius:15px;flex-direction:column;justify-content:center;padding:12px 16px;font-family:Georgia,Times New Roman,serif;font-size:1.06rem;font-weight:700;display:flex}.layout-name-grid small{color:#8a6b27;letter-spacing:.08em;text-transform:uppercase;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.7rem}.related-games{border:1px solid var(--site-border);border-radius:var(--site-radius);background:var(--site-surface);width:100%;box-shadow:var(--site-shadow-sm);color:var(--site-text-muted);margin:0 auto;padding:24px}.related-games h2{color:var(--site-ink);margin-bottom:8px}.related-games .text-link{text-underline-offset:3px;line-height:2;-webkit-text-decoration:underline #287a3f47;text-decoration:underline #287a3f47;display:inline;color:var(--site-primary)!important}.related-games .text-link:hover{text-decoration-color:currentColor;color:var(--site-primary-hover)!important}.related-games p{margin:0 0 10px;line-height:1.6}.article-content-container>.faq-section{padding-block:clamp(46px,5vw,60px)}.article-content-container>.faq-section .section-heading{margin-bottom:20px}.article-content-container>.faq-section .faq-list summary{min-height:52px;padding-block:14px}.article-content-container>.faq-section .faq-list summary:after{top:11px}.article-content-container>.faq-section .faq-list details p{margin-bottom:16px}@media (width>=521px){.site-shell[data-route=freecell-solitaire] .game-container,.site-shell[data-route=spider-solitaire] .game-container,.site-shell[data-route=bubble-shooter] .game-container,.site-shell[data-route=mahjong-connect] .game-container{height:calc(100dvh - 62px);min-height:0;max-height:880px}.site-shell[data-route=mahjong-connect] .mahjong-connect-screen,.site-shell[data-route=freecell-solitaire] .freecell-screen,.site-shell[data-route=spider-solitaire] .spider-screen,.site-shell[data-route=bubble-shooter] .bubble-shooter-screen{height:100%;min-height:0}}@media (width<=800px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-layout{grid-template-columns:1fr}.article-content-container>.content-section,.article-content-container>.faq-section{padding-block:44px}}@media (width<=520px){.guide-grid{grid-template-columns:1fr}.layout-name-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.game-page-container{padding-top:2px;max-width:none;padding-inline:0}.game-page-container>:not(.game-container){margin-right:var(--site-gutter);margin-left:var(--site-gutter)}.game-container{border-left:0;border-right:0;border-radius:0;width:100%;height:max(760px,100dvh - 54px);min-height:760px}.site-shell[data-route=christmas-mahjong] .game-container,.site-shell[data-route=mahjong-connect] .game-container,.site-shell[data-route=freecell-solitaire] .game-container,.site-shell[data-route=spider-solitaire] .game-container,.site-shell[data-route=bubble-shooter] .game-container{height:calc(100dvh - 54px);min-height:420px}.site-shell[data-route=freecell-solitaire] .freecell-screen,.site-shell[data-route=spider-solitaire] .spider-screen,.site-shell[data-route=bubble-shooter] .bubble-shooter-screen,.site-shell[data-route=mahjong-connect] .mahjong-connect-screen{height:100%;min-height:100%}.article-content-container{width:auto}.article-content-container>.content-section,.article-content-container>.faq-section{padding-block:32px}.article-content-container>.content-section .section-heading,.article-content-container>.faq-section .section-heading{margin-bottom:18px}.feature-layout>article{border:0;border-left:3px solid var(--site-border);box-shadow:none;background:0 0;border-radius:0;padding:0 0 0 14px}.game-page-summary{margin-top:12px;font-size:.84rem}.article-content-container>.breadcrumbs{margin-top:14px;margin-bottom:0}.guide-grid{gap:10px}.guide-grid article{grid-template-columns:34px minmax(0,1fr);gap:4px 12px;padding:16px;display:grid}.guide-grid article>span{grid-row:1/span 2}.guide-grid article h3{margin:0}.guide-grid article p{grid-column:2}.feature-layout{gap:12px}.article-content-container .game-guide>p,.article-content-container .feature-layout p,.article-content-container .feature-layout li{line-height:1.58}.article-content-container .feature-layout p,.article-content-container .feature-layout ul{margin-block:12px}.layout-name-grid span{min-height:62px;padding:10px 12px;font-size:.94rem}.related-games{border-radius:16px;padding:18px}.related-games .text-link{line-height:2.75}}:root{color:#151515;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}.mobile-carousel{overscroll-behavior:contain;scrollbar-width:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%;display:block;position:relative;overflow:auto}.mobile-carousel::-webkit-scrollbar{display:none}.mobile-carousel{touch-action:pan-y;overflow:auto hidden}.mobile-carousel[data-dragging=true]{cursor:none}.mobile-carousel-content{width:max-content;min-width:100%;transform:translateX(var(--mobile-carousel-overdrag));will-change:transform;display:flex}.mobile-carousel-scrollbar{z-index:4;opacity:0;pointer-events:none;transition:opacity .15s;position:absolute;inset:0}.mobile-carousel-scrollbar[data-visible=true]{opacity:1}.mobile-carousel-scrollbar-thumb{background:#00000059;border-radius:999px;height:3px;position:absolute;bottom:4px;right:4px}body{min-width:320px;overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}.phone-stage{place-items:center;width:100%;height:100%;padding:24px;display:grid;position:relative}.device-menu-bar{z-index:100;border-radius:12px;padding:3px;position:absolute;top:18px;right:18px}.device-picker-trigger{color:#151515;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;height:34px;padding:0 10px 0 12px;font:600 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-trigger:hover,.device-picker-trigger[data-state=open]{background:#0000000e}.device-picker-trigger:focus-visible{outline-offset:2px;outline:2px solid #000000b8}.device-picker-menu{z-index:200;min-width:168px;transform-origin:var(--radix-dropdown-menu-content-transform-origin);background:#fffffffa;border-radius:12px;padding:3px;animation:.12s ease-out device-menu-in;box-shadow:0 0 1px #0000000f,0 0 0 1px #00000014,0 4px 4px #0000000d}.device-picker-item{color:#181818;-webkit-user-select:none;user-select:none;border-radius:8px;outline:none;justify-content:space-between;align-items:center;height:34px;padding:0 9px 0 10px;font:500 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-item[data-highlighted]{background:#f0f0f0}.device-picker-item[data-state=checked]{font-weight:600}.device-picker-check{color:#181818;place-items:center;display:grid}@keyframes device-menu-in{0%{opacity:0;transform:scale(.98)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.phone-scale-box{position:relative}.phone-device{transform-origin:0 0;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.phone-bezel{object-fit:contain;z-index:2;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.device-screen{cursor:none;z-index:1;-webkit-user-select:none;user-select:none;background:#fff;border-radius:42px;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014}.device-camera{z-index:75;pointer-events:none;background:#050505;border-radius:50%;display:block;position:absolute;box-shadow:inset 0 0 0 1px #ffffff14}.device-screen,.device-screen *{cursor:none!important}.device-screen img,.keyboard-asset{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.device-screen input,.device-screen textarea,.device-screen select,.device-screen option,.device-screen [contenteditable=true]{-webkit-user-select:auto;user-select:auto}.device-screen:active,.device-screen:active *,.device-screen input,.device-screen textarea,.device-screen button,.device-screen a,.device-screen [role=button]{cursor:none!important}.device-screen[data-cursor-debug=true],.device-screen[data-cursor-debug=true] *{cursor:default!important}.device-screen :focus,.device-screen :focus-visible{box-shadow:none!important;outline:0!important}.flow-stack,.flow-scenes,.flow-screen,.mobile-app-viewport{position:absolute;inset:0}.mobile-app-viewport[data-platform=android][data-keyboard-visible=false]{bottom:var(--device-safe-area-bottom,48px)}.flow-stack{--flow-header-height:0px;--flow-header-content-height:0px;--flow-header-safe-area:0px;--flow-footer-height:0px;--keyboard-height:0px;touch-action:pan-y;background:0 0;overflow:hidden}.flow-fixed-header{z-index:12;height:var(--flow-header-height);padding-top:var(--flow-header-safe-area);box-sizing:border-box;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;position:absolute;top:0;left:0;right:0}.flow-fixed-footer{z-index:12;right:0;bottom:var(--keyboard-height);height:var(--flow-footer-height);background:0 0;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0}.flow-scenes{top:var(--flow-header-height);bottom:0;overflow:hidden}.flow-screen{will-change:transform;background:0 0;overflow:hidden}.mobile-page{--mobile-safe-area-height:var(--device-safe-area-bottom,34px);--keyboard-height:0px;position:absolute;inset:0}.mobile-page[data-keyboard-visible=true],.mobile-app-viewport[data-platform=android] .mobile-page{--mobile-safe-area-height:0px}.mobile-scroll{top:0;right:0;bottom:var(--keyboard-height);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;touch-action:none;-webkit-user-select:none;user-select:none;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0;overflow:hidden auto}.mobile-scroll::-webkit-scrollbar{display:none}.mobile-scroll[data-dragging=true]{cursor:none}.mobile-cursor{z-index:80;opacity:0;pointer-events:none;will-change:transform;background:radial-gradient(circle at 50% 44%,#ffffffb3 0 34%,#ffffff8a 58%,#eeeeee7a 100%);border:.5px solid #0000001f;border-radius:999px;width:48px;height:48px;transition:opacity 90ms,background 80ms,box-shadow 80ms;position:absolute;top:0;left:0;box-shadow:inset 0 1px 2px #fff9,inset 0 -5px 10px #0000000d,inset 0 0 0 1px #00000006}.mobile-cursor:before{content:"";pointer-events:none;background:linear-gradient(#ffffff61,#fff0);border-radius:999px;width:32px;height:17px;position:absolute;top:3px;left:50%;transform:translate(-50%)}.mobile-cursor:after{border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 1px 0 3px #ffffff47,inset -1px 0 3px #00000005}.mobile-cursor-hotspot{pointer-events:none;background:#ffffffd1;border:1px solid #007afff2;border-radius:999px;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffffbf,0 0 0 3px #007aff29}.mobile-cursor-hotspot:before,.mobile-cursor-hotspot:after{content:"";background:#007afff2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-cursor-hotspot:before{width:17px;height:1px}.mobile-cursor-hotspot:after{width:1px;height:17px}.mobile-cursor[data-visible=true]{opacity:1}.mobile-cursor[data-active=true]{background:radial-gradient(circle at 50% 55%,#e8e8e894 0 30%,#f8f8f880 62%,#ffffffad 100%);box-shadow:inset 0 3px 7px #00000014,inset 0 -4px 8px #ffffff57,inset 0 0 0 1px #00000008}.mobile-cursor[data-active=true]:before{background:linear-gradient(#0000000e,#0000)}.mobile-cursor[data-active=true]:after{box-shadow:inset 0 5px 9px #0000000b,inset 0 -3px 7px #ffffff47}.mobile-scroll-content{will-change:transform;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;padding:0;display:grid}.app-screen{background:#fff}.mobile-scrollbar{z-index:9;top:4px;right:5px;bottom:calc(var(--mobile-safe-area-height) + var(--keyboard-height) + 4px);opacity:0;pointer-events:none;width:4px;transition:bottom .26s cubic-bezier(.2,.8,.2,1),opacity .18s;position:absolute}.mobile-page[data-keyboard-dragging=true] .mobile-scroll,.mobile-page[data-keyboard-dragging=true] .mobile-scrollbar,.flow-stack[data-keyboard-dragging=true] .flow-fixed-footer{transition:none}.mobile-scrollbar[data-visible=true]{opacity:1}.mobile-scrollbar-thumb{background:#00000047;border-radius:999px;width:4px;min-height:36px;transition:background .12s;box-shadow:0 0 0 1px #ffffff2e}.status-bar{z-index:72;color:#050505;pointer-events:none;background:0 0;grid-template-columns:1fr auto;align-items:center;height:54px;padding:10px 34px 0 36px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;display:grid;position:absolute;top:0;left:0;right:0}.device-screen[data-device=pixel-10] .status-bar{align-items:start;height:auto;padding:32px 32px 0;font-family:Roboto,Arial,sans-serif}.status-time{text-align:center;letter-spacing:0;justify-self:start;min-width:58px;font-size:15px;font-weight:600;line-height:1}.status-indicators{justify-self:end;align-items:center;display:flex}.status-indicator-svg{display:block}.status-indicator-svg[data-platform=ios]{width:79px;height:13px}.status-indicator-svg[data-platform=android]{width:50px;height:14px}.device-screen[data-device=pixel-10] .status-time{font-weight:500;transform:translateY(2px)}.home-indicator-svg{z-index:70;width:100%;height:var(--device-safe-area-bottom,34px);pointer-events:none;display:block;position:absolute;bottom:0;left:0;right:0}.android-navigation-bar{z-index:70;width:428px;height:var(--device-safe-area-bottom,48px);pointer-events:none;-webkit-user-drag:none;display:block;position:absolute;bottom:-1px;left:-1px}h1,h2,p{margin:0}h1{letter-spacing:0;font-size:26px;line-height:1.08}h2{font-size:15px}p{color:#555;font-size:14px;line-height:1.45}.field-label{color:#555;font-size:13px;font-weight:800}.mobile-field{gap:8px;display:grid}.mobile-field input{color:#151515;background:#fff;border:1px solid #0000001a;border-radius:8px;outline:0;width:100%;min-height:44px;padding:0 12px}.mobile-field input:focus{box-shadow:none;border-color:#00000029}.device-screen .mobile-field input:focus,.device-screen .mobile-field input:focus-visible{border-color:#0000001f;box-shadow:none!important;outline:0!important}.sheet-overlay{z-index:20;background:#00000057;position:absolute;inset:0}.bottom-sheet{z-index:21;touch-action:none;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;min-height:260px;display:flex;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 -16px 48px #0003}.sheet-handle-zone{touch-action:none;place-items:center;height:30px;display:grid}.sheet-handle{background:#c9c9c4;border-radius:999px;width:42px;height:5px}.sheet-header{gap:4px;padding:0 18px 14px;display:grid}.sheet-title{margin:0;font-size:18px;font-weight:900}.sheet-description{color:#737373;margin:0;font-size:13px;line-height:1.35}.sheet-content{padding:0 18px 24px;overflow:auto}.keyboard-dock{z-index:30;height:339px;box-shadow:none;pointer-events:none;will-change:transform;background:#d8d9de;border-radius:32px 32px 0 0;padding:0;position:absolute;bottom:-1px;left:0;right:0;overflow:hidden}.keyboard-dock[data-platform=android]{background:#f3f2f6;border-radius:0;box-shadow:0 -1px 2px #00000014}.keyboard-dock[data-visible=true]{pointer-events:auto}.keyboard-asset{z-index:1;border-radius:inherit;object-fit:cover;object-position:center bottom;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:relative}.keyboard-dock[data-platform=android] .keyboard-asset{object-fit:fill;border-radius:0}.mahjong-screen{--game-header-height:54px;--game-footer-height:104px;grid-template-rows:var(--game-header-height) minmax(0, 1fr) var(--game-footer-height);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);background:var(--game-background);color:#f7edd9;isolation:isolate;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;position:absolute;inset:0;overflow:hidden}.game-header{z-index:20;background:linear-gradient(180deg, #ffffff06, transparent), var(--game-chrome-background);border-bottom:1px solid #c2a15ab8;grid-template-columns:40px minmax(0,1fr) auto 40px;align-items:center;gap:10px;padding:6px 10px;display:grid;box-shadow:0 5px 16px #01110e4d}.header-icon-button{color:#efd18e;background:#0f3a31bd;border:1px solid #c2a15a80;border-radius:11px;place-items:center;width:38px;height:38px;padding:0;transition:border-color .14s,background-color .14s,box-shadow .14s;display:grid;box-shadow:inset 0 0 0 1px #fff4d30a}.header-icon-button:active{background:#194e41e6;border-color:#efd18ed9;box-shadow:inset 0 2px 6px #0003}.level-label,.game-time{white-space:nowrap;line-height:1}.level-label{color:#efd18e;cursor:pointer;letter-spacing:.12em;text-align:left;text-overflow:ellipsis;text-transform:uppercase;-webkit-tap-highlight-color:transparent;background:#0f3a31b8;border:1px solid #c2a15a85;border-radius:10px;justify-self:start;align-items:center;gap:7px;width:fit-content;min-width:0;padding:7px 10px;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:600;display:inline-flex;overflow:hidden;box-shadow:inset 0 0 0 1px #fff4d30a}.level-label:after{content:"▾";letter-spacing:0;font-family:Inter,ui-sans-serif,sans-serif;font-size:11px}.level-label:active{background:#194e41eb;border-color:#efd18ee0}.level-label:focus-visible{outline-offset:3px;outline:2px solid #efd18ec7}.game-time{color:#fff8e9;font-variant-numeric:tabular-nums;letter-spacing:.025em;text-shadow:0 2px 9px #0006;font-size:21px;font-weight:500}.game-time-display{place-items:center;min-width:58px;display:grid;position:relative}.game-time-penalty{color:#efd18e;font-variant-numeric:tabular-nums;pointer-events:none;animation:game-time-penalty var(--penalty-feedback-duration,.7s) ease-out forwards;font-size:10px;font-weight:700;line-height:1;position:absolute;top:calc(50% + 10px)}.board-region{background-color:var(--game-background);background-image:linear-gradient(180deg, #041f1914, #031d1738), var(--game-board-background-image);background-position:50%;background-size:cover;place-items:center;min-width:0;min-height:0;padding:4px;display:grid;position:relative;overflow:hidden}.board-region:after{content:"";pointer-events:none;border:1px solid #c2a15a1f;position:absolute;inset:0;box-shadow:inset 0 18px 30px #00000024,inset 0 -20px 40px #0000001f}.tile-layout-frame{flex:none;position:relative}.tile-layout{transform-origin:0 0;position:absolute;top:0;left:0}.mahjong-tile{isolation:isolate;width:var(--tile-width);height:var(--tile-height);padding:0 var(--tile-thickness-right) var(--tile-thickness-bottom) 0;border-radius:var(--tile-radius);box-shadow:var(--tile-top-shadow-x) var(--tile-top-shadow-y) var(--tile-top-shadow-blur) rgba(2, 7, 5, var(--tile-top-shadow-alpha)), var(--tile-left-shadow-x) var(--tile-left-shadow-y) var(--tile-left-shadow-blur) rgba(2, 7, 5, var(--tile-left-shadow-alpha)), 0 0 var(--tile-ambient-blur) var(--tile-ambient-spread) rgba(2, 7, 5, var(--tile-ambient-alpha)), var(--tile-contact-x) var(--tile-contact-y) var(--tile-contact-blur) var(--tile-contact-spread) rgba(4, 10, 8, var(--tile-contact-alpha)), var(--tile-middle-x) var(--tile-middle-y) var(--tile-middle-blur) rgba(3, 9, 7, var(--tile-middle-alpha)), var(--tile-cast-x) var(--tile-cast-y) var(--tile-cast-blur) rgba(2, 8, 6, var(--tile-cast-alpha));color:var(--tile-text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;transition:filter .15s,box-shadow .15s,opacity .18s;display:grid;position:absolute;transform:translateZ(0)}.mahjong-tile:before{z-index:0;border-radius:inherit;background:linear-gradient(135deg, var(--tile-side-light) 0%, var(--tile-side-mid) 58%, var(--tile-side-dark) 100%);content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 1px 1px #ffffff75,inset -1px -2px 2px #523f2233}.mahjong-tile:after{z-index:2;top:1px;right:calc(var(--tile-thickness-right) + 1px);bottom:calc(var(--tile-thickness-bottom) + 1px);border-radius:calc(var(--tile-radius) - 2px);box-shadow:inset 1px 1px 1px rgba(255, 255, 255, var(--tile-top-highlight-alpha)), inset -1px -2px 2px rgba(90, 75, 50, var(--tile-lower-inset-alpha));content:"";pointer-events:none;border:1px solid #9d875280;position:absolute;left:1px}.tile-face{z-index:1;border-radius:calc(var(--tile-radius) - 2px);background:var(--tile-face);place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px 1px #ffffffe0,inset 0 -5px 9px #9e834924}.mahjong-tile img{width:var(--tile-art-size);height:var(--tile-art-size);object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;display:block}.mahjong-tile[data-face-type=flower] img,.mahjong-tile[data-face-type=season] img{width:var(--tile-special-art-size);height:var(--tile-special-art-size);mix-blend-mode:multiply;max-width:none;max-height:none}.tile-fallback{font-family:Georgia,serif;font-size:15px;font-weight:700}.mahjong-tile[data-status=Default]:active{box-shadow:var(--tile-top-shadow-x) var(--tile-top-shadow-y) var(--tile-top-shadow-blur) rgba(2, 7, 5, var(--tile-top-shadow-alpha)), var(--tile-left-shadow-x) var(--tile-left-shadow-y) var(--tile-left-shadow-blur) rgba(2, 7, 5, var(--tile-left-shadow-alpha)), 0 0 var(--tile-ambient-blur) var(--tile-ambient-spread) rgba(2, 7, 5, var(--tile-ambient-alpha)), var(--tile-contact-x) var(--tile-contact-y) var(--tile-contact-blur) var(--tile-contact-spread) rgba(4, 10, 8, var(--tile-contact-alpha)), var(--tile-middle-x) var(--tile-middle-y) var(--tile-middle-blur) rgba(3, 9, 7, var(--tile-middle-alpha)), var(--tile-cast-x) var(--tile-cast-y) var(--tile-cast-blur) rgba(2, 8, 6, var(--tile-cast-alpha))}.mahjong-tile[data-status=Selected]{box-shadow:var(--tile-top-shadow-x) var(--tile-top-shadow-y) var(--tile-top-shadow-blur) rgba(2, 7, 5, var(--tile-top-shadow-alpha)), var(--tile-left-shadow-x) var(--tile-left-shadow-y) var(--tile-left-shadow-blur) rgba(2, 7, 5, var(--tile-left-shadow-alpha)), 0 0 var(--tile-ambient-blur) var(--tile-ambient-spread) rgba(2, 7, 5, var(--tile-ambient-alpha)), var(--tile-contact-x) var(--tile-contact-y) var(--tile-contact-blur) var(--tile-contact-spread) rgba(4, 10, 8, var(--tile-contact-alpha)), var(--tile-middle-x) var(--tile-middle-y) var(--tile-middle-blur) rgba(3, 9, 7, var(--tile-middle-alpha)), var(--tile-cast-x) var(--tile-cast-y) var(--tile-cast-blur) rgba(2, 8, 6, var(--tile-cast-alpha)), 0 0 0 2px #f3d58f, 0 0 16px #efcc7ecc;background:#d0b36f}.mahjong-tile[data-status=Selected] .tile-face{background:var(--tile-face-selected)}.mahjong-tile[data-status=Blocked]{cursor:not-allowed;filter:brightness(var(--tile-blocked-brightness)) saturate(var(--tile-blocked-saturation))}.mahjong-tile[data-covered=true]{filter:brightness(var(--tile-covered-brightness)) saturate(var(--tile-covered-saturation))}.mahjong-tile[data-status=Blocked][data-covered=true]{filter:brightness(var(--tile-covered-blocked-brightness)) saturate(var(--tile-covered-blocked-saturation))}.mahjong-tile[data-status=Blocked] .tile-face{background:var(--tile-face-blocked)}.mahjong-tile[data-shaking=true]{animation:.32s ease-in-out blocked-shake}.mahjong-tile[data-hinted=true]{box-shadow:var(--tile-top-shadow-x) var(--tile-top-shadow-y) var(--tile-top-shadow-blur) rgba(2, 7, 5, var(--tile-top-shadow-alpha)), var(--tile-left-shadow-x) var(--tile-left-shadow-y) var(--tile-left-shadow-blur) rgba(2, 7, 5, var(--tile-left-shadow-alpha)), 0 0 var(--tile-ambient-blur) var(--tile-ambient-spread) rgba(2, 7, 5, var(--tile-ambient-alpha)), var(--tile-contact-x) var(--tile-contact-y) var(--tile-contact-blur) var(--tile-contact-spread) rgba(4, 10, 8, var(--tile-contact-alpha)), var(--tile-middle-x) var(--tile-middle-y) var(--tile-middle-blur) rgba(3, 9, 7, var(--tile-middle-alpha)), var(--tile-cast-x) var(--tile-cast-y) var(--tile-cast-blur) rgba(2, 8, 6, var(--tile-cast-alpha)), 0 0 0 2px var(--game-hint-accent), 0 0 18px #e1bf70e0;animation:.62s ease-in-out 2 hint-pulse}.mahjong-tile[data-status=Selected]:not([data-removing=true]){transform-origin:50%;animation:.38s cubic-bezier(.22,.78,.28,1) tile-select-jelly}.mahjong-tile[data-removing=true]{pointer-events:none;animation:.22s ease-in forwards tile-remove}.mahjong-tile[data-flight-hidden=true]{visibility:hidden;opacity:0;pointer-events:none;animation:none}.match-animation-layer{z-index:50;top:var(--game-header-height);right:0;bottom:var(--game-footer-height);pointer-events:none;contain:layout paint;isolation:isolate;position:absolute;left:0;overflow:hidden}.match-flight-tile{transform-origin:50%;will-change:transform, opacity;pointer-events:none!important;margin:0!important;position:absolute!important}.match-impact{aspect-ratio:1;pointer-events:none;will-change:transform, opacity;border:2px solid #ffefbcb8;border-radius:50%;width:clamp(28px,9vw,54px);position:absolute;box-shadow:0 0 13px #ffe59f73}.combo-streak{z-index:62;top:calc(var(--game-header-height) + 10px);color:#fff1c7;text-align:center;pointer-events:none;transform-origin:50%;min-width:112px;animation:combo-streak-cycle var(--combo-window-ms,2.2s) linear forwards;will-change:transform, opacity;background:#093027e6;border:1px solid #efd18eb8;border-radius:14px;padding:7px 10px 8px;line-height:1;display:grid;position:absolute;right:10px;box-shadow:0 5px 14px #02181347}.combo-streak-content{white-space:nowrap;text-shadow:0 1px 2px #0000007a,0 0 1px #000000b8;justify-content:center;align-items:baseline;gap:5px;display:flex}.combo-streak-content strong{letter-spacing:-.045em;font-size:clamp(22px,6.2vw,30px);font-weight:900}.combo-streak-content>span{letter-spacing:.07em;font-size:clamp(11px,3.2vw,15px);font-weight:850}.combo-timer{background:#051f196b;border-radius:999px;width:82%;height:5px;margin:6px auto 0;display:block;overflow:hidden}.combo-timer>span{border-radius:inherit;transform-origin:0;width:100%;height:100%;animation:combo-timer-drain var(--combo-window-ms,2.2s) linear forwards;will-change:transform;background:#ffe286;display:block;transform:scaleX(1);box-shadow:0 0 5px #ffe2866b}.themed-match-feedback-layer{z-index:61;top:var(--game-header-height);right:0;bottom:var(--game-footer-height);pointer-events:none;contain:layout paint;position:absolute;left:0;overflow:hidden}.themed-match-feedback{aspect-ratio:.8;opacity:0;width:clamp(44px,13vw,68px);transform:translate3d(var(--feedback-x), var(--feedback-y), 0) translate(-50%, -50%) scale(.72);pointer-events:none;will-change:transform, opacity;background:#fffaebe6;border:1px solid #fff6da94;border-radius:14px;place-items:center;animation:.65s cubic-bezier(.2,.72,.24,1) forwards themed-match-feedback;display:grid;position:absolute;top:0;left:0;box-shadow:0 3px 8px #021a1447,0 0 18px #eed39333}.themed-match-feedback img{object-fit:contain;pointer-events:none;width:86%;height:86%;display:block}.game-footer{z-index:20;background:var(--game-chrome-background);border-top:1px solid #c2a15ab8;grid-template-rows:28px 76px;display:grid;box-shadow:0 -5px 18px #01110e4d}.game-status{color:#fff8e9;border-bottom:1px solid #c2a15a3d;justify-content:center;align-items:center;gap:15px;font-size:13px;line-height:1;display:flex}.game-status>span{align-items:baseline;gap:6px;display:inline-flex}.game-status strong{font-variant-numeric:tabular-nums;font-size:15px}.status-label{color:#d6b66e;letter-spacing:.13em;text-transform:uppercase;font-family:Georgia,Times New Roman,serif;font-size:10px;font-weight:600}.game-status i{background:#c2a15a75;width:1px;height:16px}.game-toolbar{background:linear-gradient(180deg, #ffffff09, transparent), var(--game-control-background);border:1px solid #c2a15a66;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:calc(100% - 16px);max-width:900px;margin:6px auto 8px;display:grid;overflow:hidden;box-shadow:0 8px 20px #000f0c4d,inset 0 0 0 1px #fff6dd0a}.game-toolbar button{min-width:0;color:var(--game-control-foreground);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;border-right:1px solid #c2a15a42;place-items:center;padding:4px 4px 3px;font-size:10px;font-weight:650;transition:background-color .14s,color .14s,opacity .14s;display:grid}.game-toolbar button:last-child{border-right:0}.game-toolbar button:active:not(:disabled){color:#fff0c7;background:#f3d58f1a}.game-toolbar button:disabled{opacity:.36}.game-modal-layer{z-index:100000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#01120ead;place-items:center;padding:28px;display:grid;position:absolute;inset:0}.game-dialog{background:var(--game-dialog-background);width:min(100%,318px);color:var(--game-dialog-foreground);text-align:center;border:1px solid #c2a15aad;border-radius:20px;gap:10px;padding:27px 24px 22px;animation:.18s ease-out dialog-enter;display:grid;position:relative;box-shadow:0 24px 54px #0008068f,inset 0 0 0 1px #fff7e00d}.dialog-kicker{color:#d3b26a;letter-spacing:.14em;text-transform:uppercase;font-family:Georgia,Times New Roman,serif;font-size:11px;font-weight:700}.game-dialog>strong{font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:600}.game-dialog p{color:var(--game-muted-foreground);margin:0;font-size:13px;line-height:1.5}.best-time-result{min-height:42px;color:var(--game-muted-foreground);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:20px;display:flex}.best-time-result>span{gap:3px;display:grid}.best-time-result small{color:#d3b26a;letter-spacing:.1em;font-size:10px;font-weight:700}.best-time-result strong{color:var(--game-dialog-foreground);font-size:18px}.best-time-result[data-new-best=true]{gap:2px;display:grid}.best-time-result[data-new-best=true]>strong{color:#d3b26a;letter-spacing:.08em;font-family:Georgia,Times New Roman,serif}.best-time-result[data-new-best=true]>span{color:var(--game-dialog-foreground);font-size:24px;font-weight:700}@keyframes game-time-penalty{0%{opacity:0;transform:translateY(3px)}20%,72%{opacity:1}to{opacity:0;transform:translateY(-3px)}}@keyframes game-time-penalty-reduced{0%,to{opacity:0}20%,72%{opacity:1}}.dialog-close{color:#d6c9af;background:#ffffff0d;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid;position:absolute;top:10px;right:10px}.dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px;display:grid}.dialog-actions:has(>button:only-child){grid-template-columns:1fr}.dialog-actions button{color:#102f28;background:#c49b49;border:1px solid #d0aa58;border-radius:11px;min-height:44px;padding:0 14px;font-size:13px;font-weight:750}.dialog-actions .secondary-action{color:#f4e5c7;background:#ffffff0a;border-color:#c2a15a6b}.dialog-actions .tertiary-action{color:#f4e5c7b8;text-underline-offset:3px;background:0 0;border-color:#0000;grid-column:1/-1;min-height:34px;font-weight:650;-webkit-text-decoration:underline #f4e5c747;text-decoration:underline #f4e5c747}.dialog-actions .tertiary-action:hover,.dialog-actions .tertiary-action:focus-visible{color:#fff3d9;text-decoration-color:currentColor}.dialog-actions button:disabled{opacity:.4}.audio-settings{gap:8px;margin-top:6px;display:grid}.audio-setting{min-height:54px;color:var(--game-dialog-foreground);text-align:left;-webkit-tap-highlight-color:transparent;background:#ffffff09;border:1px solid #c2a15a3d;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:9px 11px 9px 13px;display:grid}.audio-setting:focus-visible{outline:2px solid var(--game-hint-accent);outline-offset:2px}.audio-setting-copy{gap:2px;display:grid}.audio-setting-copy strong{font-size:13px}.audio-setting-copy small{color:var(--game-muted-foreground);font-size:11px}.audio-switch{background:#00000052;border:1px solid #ffffff29;border-radius:999px;width:38px;height:22px;transition:background .15s,border-color .15s;position:relative}.audio-switch span{background:#d8d1c1;border-radius:50%;width:16px;height:16px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px;box-shadow:0 2px 5px #0000004d}.audio-setting[aria-checked=true] .audio-switch{background:#c2a15ab8;border-color:#f0d394b8}.audio-setting[aria-checked=true] .audio-switch span{background:#fff4d8;transform:translate(16px)}.settings-summary{text-align:left;background:#0000001a;border:1px solid #c2a15a33;border-radius:12px;grid-template-columns:auto 1fr;gap:9px 14px;margin-top:8px;padding:14px;display:grid}.settings-summary span{color:var(--game-muted-foreground);font-size:12px}.settings-summary strong{color:#f3e4c5;justify-self:end;font-size:12px}.game-modal-layer[data-dialog=levels]{padding:8px}.layout-picker-dialog{text-align:left;border-radius:16px;grid-template-rows:auto auto minmax(0,1fr);gap:0;width:min(100%,900px);height:min(100%,820px);max-height:calc(100% - 2px);padding:0;overflow:hidden}.layout-picker-header{z-index:2;background:#0b2b24fa;border-bottom:1px solid #c2a15a3d;justify-content:space-between;align-items:center;min-height:58px;padding:10px 12px 10px 16px;display:flex}.layout-picker-header>div{align-items:baseline;gap:10px;min-width:0;display:flex}.layout-picker-header strong{color:#f7edd9;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:clamp(19px,3vw,25px);font-weight:600}.layout-picker-header span{color:var(--game-muted-foreground);white-space:nowrap;font-size:11px}.layout-picker-close{color:#eadcbc;background:#ffffff0b;border:1px solid #c2a15a40;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;padding:0;display:grid}.layout-continue{min-height:52px;color:var(--game-dialog-foreground);text-align:left;background:#c2a15a1a;border:1px solid #e1bf7094;border-radius:11px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;margin:8px 10px;padding:7px 10px 7px 12px;display:grid}.layout-continue-copy{align-items:baseline;gap:7px;min-width:0;display:flex}.layout-continue-copy small{color:#d7bd7b;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:750}.layout-continue-copy strong{color:#fff0cf;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.layout-continue-progress{color:var(--game-muted-foreground);white-space:nowrap;font-size:10px}.layout-status-pill,.layout-difficulty{letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:18px;padding:2px 6px;font-size:8px;font-weight:800;line-height:1;display:inline-flex}.layout-status-pill{color:#f1d58e;background:#c2a15a2e;border:1px solid #ebcc8580}.layout-grid-scroll{overscroll-behavior:contain;scrollbar-color:#c2a15a73 transparent;scrollbar-width:thin;min-height:0;padding:0 10px 12px;overflow:hidden auto}.layout-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.layout-card{min-width:0;min-height:126px;color:var(--game-dialog-foreground);text-align:left;-webkit-tap-highlight-color:transparent;background:#ffffff09;border:1px solid #c2a15a3d;border-radius:11px;grid-template-rows:62px auto auto;gap:4px;padding:7px 8px 8px;transition:border-color .14s,background-color .14s,transform .1s;display:grid;position:relative;overflow:hidden}.layout-card:hover{background:#fff1;border-color:#e1bf708c}.layout-card:active{transform:scale(.985)}.layout-card:focus-visible,.layout-continue:focus-visible,.layout-picker-close:focus-visible{outline:2px solid var(--game-hint-accent);outline-offset:-2px}.layout-card[data-active=true]{background:#c2a15a1f;border-color:#ebc771e6;box-shadow:inset 0 0 0 1px #fff1ca12}.layout-card-preview{background:radial-gradient(circle at 50% 48%,#1e604eb8,#0000 70%),#000f0c33;border-radius:7px;place-items:center;min-width:0;display:grid}.layout-preview{width:calc(100% - 12px);height:54px;display:block;overflow:visible}.layout-preview-layer{fill:#d8c79f;stroke:#44351bb3;stroke-width:.035px;vector-effect:non-scaling-stroke}.layout-preview-layer[data-layer="1"]{fill:#e1d2ae}.layout-preview-layer[data-layer="2"]{fill:#eadcba}.layout-preview-layer[data-layer="3"],.layout-preview-layer[data-layer="4"]{fill:#f5e7c7}.layout-card-meta{justify-content:space-between;align-items:center;gap:5px;min-width:0;display:flex}.layout-card-number{color:#d7bd7b;font-family:Georgia,Times New Roman,serif;font-size:12px;font-weight:700}.layout-difficulty{color:#c7d4cc;background:#ffffff12}.layout-difficulty[data-difficulty=easy]{color:#add5b8}.layout-difficulty[data-difficulty=hard]{color:#e8b29f}.layout-card-name{color:#f5e7ca;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;line-height:1.2;overflow:hidden}.layout-card-state{position:absolute;top:5px;right:5px}.layout-completed-mark{color:#f3d990;background:#1c5a4b;border:1px solid #ebcc8594;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.animal-mahjong-theme{position:absolute;inset:0}.animal-mahjong-theme .mahjong-screen{color:#24465a}.animal-mahjong-theme .tile-face{background:linear-gradient(145deg, #ffffffb3, #ffe7b71f), var(--tile-face)}.animal-mahjong-theme .mahjong-tile[data-status=Blocked] .tile-face{background:linear-gradient(145deg, #ffffff59, #998f7114), var(--tile-face-blocked)}.animal-mahjong-theme .mahjong-tile[data-status=Selected] .tile-face{background:linear-gradient(145deg, #ffffffd1, #ffe79629), var(--tile-face-selected)}.animal-mahjong-theme .mahjong-tile img{width:100%;height:100%}.animal-mahjong-theme .game-header{background:linear-gradient(180deg, #ffffffc7, #e1f6ffd6), var(--game-chrome-background);border-bottom-color:#449ec76b;box-shadow:0 5px 16px #2e7d9f2e}.animal-mahjong-theme .header-icon-button,.animal-mahjong-theme .level-label{color:#287ba7;background:#ffffffc7;border-color:#3b96c17a;box-shadow:inset 0 0 0 1px #ffffffbd,0 2px 7px #3888ab21}.animal-mahjong-theme .level-label{color:#318640;letter-spacing:.08em;font-family:Inter,ui-sans-serif,sans-serif;font-weight:800}.animal-mahjong-theme .header-icon-button:active,.animal-mahjong-theme .level-label:active{background:#daf4fff5;border-color:#3289b1c2}.animal-mahjong-theme .level-label:focus-visible{outline-color:#3fa556cc}.animal-mahjong-theme .game-time{color:#285a75;text-shadow:none;font-weight:700}.animal-mahjong-theme .board-region{background-image:linear-gradient(180deg, #ffffff0f, #2c7d4d14), var(--game-board-background-image)}.animal-mahjong-theme .board-region:after{border-color:#ffffff57;box-shadow:inset 0 14px 25px #2a7ca314,inset 0 -18px 34px #3384481a}.animal-mahjong-theme .game-footer{border-top-color:#459ec561;box-shadow:0 -4px 16px #2e7c9d26}.animal-mahjong-theme .game-status{color:#285a75;border-bottom-color:#449dc43d}.animal-mahjong-theme .status-label{color:#3b984a;font-family:Inter,ui-sans-serif,sans-serif;font-weight:800}.animal-mahjong-theme .game-status i{background:#4a9abe61}.animal-mahjong-theme .game-toolbar{background:linear-gradient(180deg, #ffffff21, transparent), var(--game-control-background);border-color:#2f8e497a;box-shadow:0 7px 18px #2b774233,inset 0 0 0 1px #ffffff29}.animal-mahjong-theme .game-toolbar button{border-right-color:#ffffff3d}.animal-mahjong-theme .game-toolbar button:active:not(:disabled){color:#fff;background:#ffffff2e}.animal-mahjong-theme .combo-streak{color:#fff;text-shadow:0 1px 2px #22692959;background:linear-gradient(#65c84f,#3da842);border-color:#ffffffc2;box-shadow:0 4px 11px #277d3140,inset 0 1px #ffffff47}.animal-mahjong-theme .themed-match-feedback{background:#fffbe8f0;border-color:#ffffffe0;width:clamp(42px,12vw,62px);box-shadow:0 3px 9px #347e9c38,0 0 18px #74cb5c4d}.animal-mahjong-theme .game-modal-layer{background:#4baeda5c}.animal-mahjong-theme .game-dialog{border-color:#489ec57a;box-shadow:0 24px 54px #2e739147,inset 0 0 0 1px #ffffffb8}.animal-mahjong-theme .dialog-actions button{color:#24465a;background:#f4bf3f;border-color:#e7a92b}.animal-mahjong-theme .dialog-actions .secondary-action{color:#2b6684;background:#54b7df1a;border-color:#4097be5c}.animal-mahjong-theme .dialog-actions .tertiary-action{color:#275b74b8}.animal-mahjong-theme .layout-picker-header{background:linear-gradient(#f5fcff,#e2f5fd);border-bottom-color:#419bc440}.animal-mahjong-theme .layout-picker-header strong,.animal-mahjong-theme .layout-card-name,.animal-mahjong-theme .layout-continue-copy strong{color:#244f68}.animal-mahjong-theme .layout-picker-close{color:#2c779d;background:#fff;border-color:#3591bc4d}.animal-mahjong-theme .layout-continue{background:#67c2591f;border-color:#50ab5a73}.animal-mahjong-theme .layout-continue-copy small,.animal-mahjong-theme .layout-card-number{color:#3a9348}.animal-mahjong-theme .layout-status-pill{color:#347c3d;background:#5dbd5029;border-color:#4ba65573}.animal-mahjong-theme .layout-card{background:#ffffff9e;border-color:#449cc33d}.animal-mahjong-theme .layout-card:hover{background:#ffffffe0;border-color:#3fa45485}.animal-mahjong-theme .layout-card[data-active=true]{background:#66c45824;border-color:#49af50d1;box-shadow:inset 0 0 0 1px #ffffffbf}.animal-mahjong-theme .layout-card-preview{background:radial-gradient(circle at 50% 48%,#baeafbf2,#0000 72%),#78c9e924}.animal-mahjong-theme .layout-difficulty{color:#5f7f8f;background:#328bb314}.animal-mahjong-theme .layout-difficulty[data-difficulty=easy]{color:#378443}.animal-mahjong-theme .layout-difficulty[data-difficulty=hard]{color:#bd6045}.halloween-mahjong-theme{position:absolute;inset:0}.halloween-mahjong-theme .mahjong-screen{color:#fff4de}.halloween-mahjong-theme .tile-face{background:linear-gradient(145deg, #ffffffd1, #f1b76914), var(--tile-face);box-shadow:inset 1px 1px 1px #ffffff9e,inset -1px -2px 2px #52344f33}.halloween-mahjong-theme .mahjong-tile[data-status=Blocked] .tile-face{background:linear-gradient(145deg, #ffffff47, #3e2d4c1f), var(--tile-face-blocked)}.halloween-mahjong-theme .mahjong-tile[data-status=Selected] .tile-face{background:linear-gradient(145deg, #ffffffe0, #ffa72d2e), var(--tile-face-selected);box-shadow:inset 0 0 0 2px #f59a35d1,0 0 15px #ffae3d94}.halloween-mahjong-theme .mahjong-tile img{width:100%;height:100%}.halloween-mahjong-theme .game-header{background:linear-gradient(180deg, #4e2b65f5, #26163efa), var(--game-chrome-background);border-bottom-color:#f59a3585;box-shadow:0 5px 16px #0e0a2461}.halloween-mahjong-theme .header-icon-button,.halloween-mahjong-theme .level-label{color:#ffd37d;background:#fff7e217;border-color:#f4a54394;box-shadow:inset 0 0 0 1px #ffffff0f,0 2px 8px #0c081f57}.halloween-mahjong-theme .level-label{letter-spacing:.08em;font-family:Georgia,Times New Roman,serif;font-weight:800}.halloween-mahjong-theme .header-icon-button:active,.halloween-mahjong-theme .level-label:active{background:#f59a3533;border-color:#ffbe5fdb}.halloween-mahjong-theme .header-icon-button:focus-visible,.halloween-mahjong-theme .level-label:focus-visible{outline-color:#ffc15f}.halloween-mahjong-theme .game-time{color:#fff3d9;text-shadow:0 2px 4px #09061980;font-weight:700}.halloween-mahjong-theme .board-region{background-color:#171834;background-image:linear-gradient(180deg, #14123505, #140f2b29), var(--game-board-background-image)}.halloween-mahjong-theme .board-region:after{border-color:#fab85242;box-shadow:inset 0 18px 30px #76479714,inset 0 -24px 42px #08071d38}.halloween-mahjong-theme .game-footer{background:linear-gradient(#311c50,#211536);border-top-color:#f59a356b;box-shadow:0 -4px 16px #0a071d57}.halloween-mahjong-theme .game-status{color:#fff2d5;border-bottom-color:#f59a353d}.halloween-mahjong-theme .status-label{color:#ffc15f}.halloween-mahjong-theme .game-status i{background:#f59a356b}.halloween-mahjong-theme .game-toolbar{background:linear-gradient(#ffffff14,#0000),#592b78;border-color:#f59a358f;box-shadow:0 7px 18px #0b071d52,inset 0 0 0 1px #ffce7a14}.halloween-mahjong-theme .game-toolbar button{border-right-color:#ffe2b32e}.halloween-mahjong-theme .game-toolbar button:active:not(:disabled){color:#fff;background:#f59a3533}.halloween-mahjong-theme .game-modal-layer{background:#0f0a23a8}.halloween-mahjong-theme .game-dialog{color:#fff4de;background:#27163afa;border-color:#f59a3580;box-shadow:0 24px 54px #08051885,inset 0 0 0 1px #ffdda314}.halloween-mahjong-theme .game-dialog h2,.halloween-mahjong-theme .game-dialog h3{color:#ffd37d}.halloween-mahjong-theme .dialog-actions button{color:#2a183f;background:#f59a35;border-color:#e68125}.halloween-mahjong-theme .dialog-actions .secondary-action{color:#f2d9ff;background:#955bb72e;border-color:#e5bbff4d}.halloween-mahjong-theme .dialog-actions .tertiary-action{color:#ffebceb8}.halloween-mahjong-theme .layout-picker-header{background:linear-gradient(#392053,#28183f);border-bottom-color:#f59a3547}.halloween-mahjong-theme .layout-picker-header strong,.halloween-mahjong-theme .layout-card-name,.halloween-mahjong-theme .layout-continue-copy strong{color:#fff0d0}.halloween-mahjong-theme .layout-picker-close{color:#ffc15f;background:#fff7e114;border-color:#f59a3561}.halloween-mahjong-theme .layout-continue{background:#f59a351f;border-color:#f59a3580}.halloween-mahjong-theme .layout-continue-copy small,.halloween-mahjong-theme .layout-card-number{color:#f8ac51}.halloween-mahjong-theme .layout-status-pill{color:#ffd083;background:#f59a3529;border-color:#f59a3580}.halloween-mahjong-theme .layout-card{background:#fff7e50f;border-color:#d6b1e733}.halloween-mahjong-theme .layout-card:hover{background:#fff7e51a;border-color:#f59a3580}.halloween-mahjong-theme .layout-card[data-active=true]{background:#f59a3524;border-color:#f59a35db;box-shadow:inset 0 0 0 1px #ffdc9e1a}.halloween-mahjong-theme .layout-card-preview{background:radial-gradient(circle at 50% 48%,#9257b46b,#0000 72%),#120d295c}.halloween-mahjong-theme .layout-difficulty{color:#c8b4cf;background:#fff3dc14}.halloween-mahjong-theme .layout-difficulty[data-difficulty=easy]{color:#b9d991}.halloween-mahjong-theme .layout-difficulty[data-difficulty=hard]{color:#ff9974}.halloween-mahjong-theme .match-removal-tile{filter:drop-shadow(0 0 7px #ae56ffb8)drop-shadow(0 0 4px #ff912494)}.halloween-mahjong-theme .halloween-removal-particles{z-index:60020;pointer-events:none;width:1px;height:1px;position:absolute}.halloween-mahjong-theme .halloween-removal-particles i{color:#a968ff;opacity:0;width:6px;height:6px;transform:rotate(var(--halloween-particle-angle)) translateX(0) scale(.4);animation:halloween-removal-spark .3s cubic-bezier(.16, .72, .24, 1) var(--halloween-particle-delay) both;will-change:transform, opacity;background:#a968ff;border-radius:50% 0 50% 50%;margin:-3px;position:absolute;box-shadow:0 0 8px}.halloween-mahjong-theme .halloween-removal-particles i[data-color="1"]{color:#ff9d35;background:#ff9d35}.halloween-mahjong-theme .halloween-removal-particles i[data-color="2"]{color:#a8e8a0;background:#a8e8a0}.halloween-mahjong-theme .halloween-removal-particles i:nth-child(4n){width:8px;height:8px;margin:-4px;box-shadow:0 0 11px}.halloween-mahjong-theme .haunted-streak{z-index:63;top:calc(var(--game-header-height) + 9px);color:#fff0c9;pointer-events:none;background:linear-gradient(145deg,#4b2069f0,#1f1339f0);border:1px solid #ffac41b8;border-radius:13px;width:clamp(88px,23vw,118px);padding:6px 8px 7px;animation:.24s cubic-bezier(.2,.78,.28,1.15) both haunted-streak-enter;position:absolute;right:9px;overflow:visible;box-shadow:0 5px 14px #08051b57,0 0 13px #904dd22e}.halloween-mahjong-theme .haunted-streak-copy{z-index:2;text-shadow:0 2px 3px #0a0519b8;justify-content:center;align-items:baseline;gap:4px;line-height:1;display:flex;position:relative}.halloween-mahjong-theme .haunted-streak-copy strong{color:#ffc25f;letter-spacing:-.05em;font-size:clamp(22px,6vw,30px);font-weight:900}.halloween-mahjong-theme .haunted-streak-number{animation:.25s cubic-bezier(.18,.82,.25,1.25) both haunted-streak-number-pop}.halloween-mahjong-theme .haunted-streak-copy span{letter-spacing:.08em;font-size:clamp(9px,2.7vw,12px);font-weight:850}.halloween-mahjong-theme .haunted-streak-timer{background:#0a051cc7;border:1px solid #ffc36852;border-radius:999px;width:82%;height:6px;margin:5px auto 0;display:block;overflow:hidden}.halloween-mahjong-theme .haunted-streak-timer>span{border-radius:inherit;transform-origin:0;width:100%;height:100%;animation:combo-timer-drain var(--combo-window-ms,2.2s) linear forwards;background:linear-gradient(90deg,#8e45f4 0%,#c66cff 38%,#ff8b25 70%,#ffd064 100%);display:block;box-shadow:0 0 7px #ff892394}.halloween-mahjong-theme .haunted-streak-bats,.halloween-mahjong-theme .halloween-win-bats{pointer-events:none;position:absolute;inset:0}.halloween-mahjong-theme .haunted-streak-bats i,.halloween-mahjong-theme .halloween-win-bats i{width:var(--bat-width,20px);height:var(--bat-height,10px);filter:drop-shadow(0 0 1px #ffba59f2);clip-path:polygon(0 25%,30% 42%,50% 0,70% 42%,100% 25%,80% 100%,50% 68%,20% 100%);background:#74568a;display:block;position:absolute;box-shadow:0 0 5px #ad6be48c}.halloween-mahjong-theme .haunted-streak-bats i{top:var(--bat-top);left:var(--bat-left);opacity:0;animation:haunted-streak-bat var(--bat-duration,.7s) ease-in-out var(--bat-delay) both}.halloween-mahjong-theme .haunted-streak[data-tier="4"]{box-shadow:0 5px 14px #08051b61,0 0 18px #ad60f55c,0 0 8px #ff9e363d}.halloween-mahjong-theme .haunted-streak[data-tier="4"]:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle at 23% 35%,#ff91265c,#0000 34%),radial-gradient(circle at 76% 55%,#a85bf670,#0000 44%);border-radius:20px;animation:.65s ease-out both haunted-tier-four-pulse;position:absolute;inset:-13px -16px}.halloween-mahjong-theme .halloween-win-celebration{z-index:64;top:var(--game-header-height);right:0;bottom:var(--game-footer-height);pointer-events:none;contain:layout paint;background:radial-gradient(circle at 50% 18%,#d4a4ff47,#0000 42%),radial-gradient(circle at 50% 55%,#6a34971f,#0000 58%);animation:1.15s ease-out both halloween-win-overlay;position:absolute;left:0;overflow:hidden}.halloween-mahjong-theme .halloween-win-moon{aspect-ratio:1;background:radial-gradient(circle,#fff9cde0 0 22%,#ffda7785 38%,#b570f44d 57%,#0000 72%);border-radius:50%;width:clamp(74px,23vw,118px);animation:1.15s ease-out both halloween-win-moon;position:absolute;top:0;left:35%;transform:translate(-50%)scale(.84)}.halloween-mahjong-theme .halloween-win-pumpkin-glow{background:radial-gradient(circle at 9% 96%,#ff7f1994,#0000 30%),radial-gradient(circle at 91% 94%,#ff972a85,#0000 30%);height:42%;animation:1.15s ease-out both halloween-pumpkin-glow;position:absolute;bottom:0;left:0;right:0}.halloween-mahjong-theme .halloween-win-bats i{top:var(--bat-top);width:var(--bat-width);height:var(--bat-height);opacity:0;animation:halloween-win-bat .9s ease-in-out var(--bat-delay) both;background:#76548d;left:-10%;box-shadow:0 0 6px #ffa44285}.halloween-mahjong-theme .halloween-win-particles{position:absolute;inset:0}.halloween-mahjong-theme .halloween-win-particles i{top:var(--win-particle-y);left:var(--win-particle-x);color:#a96cff;opacity:0;width:6px;height:6px;animation:halloween-win-spark .76s ease-out var(--win-particle-delay) both;background:#a96cff;border-radius:50% 0 50% 50%;position:absolute;box-shadow:0 0 9px}.halloween-mahjong-theme .halloween-win-particles i[data-color="1"]{color:#ff9c35;background:#ff9c35}.halloween-mahjong-theme .halloween-win-particles i[data-color="2"]{color:#a8e8a0;background:#a8e8a0}.flower-mahjong-theme{position:absolute;inset:0}.flower-mahjong-theme .mahjong-screen{color:#4e5e50}.flower-mahjong-theme .tile-face{background:linear-gradient(145deg, #ffffffd1, #e7cdc21a), var(--tile-face)}.flower-mahjong-theme .mahjong-tile[data-status=Blocked] .tile-face{background:linear-gradient(145deg, #ffffff61, #86756f14), var(--tile-face-blocked)}.flower-mahjong-theme .mahjong-tile[data-status=Selected] .tile-face{background:linear-gradient(145deg, #ffffffeb, #d989a021), var(--tile-face-selected)}.flower-mahjong-theme .mahjong-tile img{width:100%;height:100%}.flower-mahjong-theme .game-header{background:linear-gradient(180deg, #ffffffbd, #f4e8e5e0), var(--game-chrome-background);border-bottom-color:#a87e8b52;box-shadow:0 5px 16px #75596224}.flower-mahjong-theme .header-icon-button,.flower-mahjong-theme .level-label{color:#677f64;background:#fffdf8d1;border-color:#85997c85}.flower-mahjong-theme .level-label{letter-spacing:.08em;font-family:Georgia,Times New Roman,serif;font-weight:700}.flower-mahjong-theme .game-time,.flower-mahjong-theme .game-status{color:#5f695e;text-shadow:none}.flower-mahjong-theme .board-region{background-image:linear-gradient(180deg, #fffbf70a, #6985630d), var(--game-board-background-image)}.flower-mahjong-theme .board-region:after{border-color:#ffffff6b;box-shadow:inset 0 12px 24px #725b6312,inset 0 -18px 32px #607d5a14}.flower-mahjong-theme .game-footer{border-top-color:#8f777f47;box-shadow:0 -4px 16px #67565c1f}.flower-mahjong-theme .status-label,.flower-mahjong-theme .layout-card-number,.flower-mahjong-theme .layout-continue-copy small{color:#718d70}.flower-mahjong-theme .game-toolbar{background:linear-gradient(180deg, #ffffff1f, transparent), var(--game-control-background);border-color:#56745373;box-shadow:0 7px 18px #4f674c2e,inset 0 0 0 1px #ffffff24}.flower-mahjong-theme .game-modal-layer{background:#5b6f5652}.flower-mahjong-theme .game-dialog{border-color:#a1808b66;box-shadow:0 24px 54px #59464e38,inset 0 0 0 1px #ffffffb8}.flower-mahjong-theme .dialog-actions button{color:#fffdf8;background:#c9909f;border-color:#b58491}.flower-mahjong-theme .dialog-actions .secondary-action{color:#596f56;background:#708d6c1a;border-color:#708d6c61}.flower-mahjong-theme .layout-picker-header{background:linear-gradient(#fffaf7,#f3e9e7);border-bottom-color:#a07d8938}.flower-mahjong-theme .layout-picker-header strong,.flower-mahjong-theme .layout-card-name,.flower-mahjong-theme .layout-continue-copy strong{color:#536553}.flower-mahjong-theme .layout-picker-close,.flower-mahjong-theme .layout-card{background:#fffdf9b3;border-color:#8b717a40}.flower-mahjong-theme .layout-continue,.flower-mahjong-theme .layout-card[data-active=true]{background:#849e7e1f;border-color:#718d70a8}.flower-mahjong-theme .layout-card-preview{background:radial-gradient(circle at 50% 48%,#fff7f4f5,#0000 72%),#d2a9b81c}.flower-mahjong-theme .layout-difficulty{color:#81757a;background:#718d7014}.flower-mahjong-theme .flower-bloom-combo{z-index:63;top:calc(var(--game-header-height) + 10px);color:#fffdf8;text-align:center;pointer-events:none;filter:drop-shadow(0 3px 4px #682f4e2e);isolation:isolate;place-items:center;width:clamp(68px,18vw,82px);min-height:clamp(68px,18vw,78px);display:grid;position:absolute;right:clamp(7px,1.8vw,16px)}.flower-bloom-halo,.flower-bloom-particles,.flower-feedback-glow,.flower-feedback-bloom,.flower-feedback-particles,.flower-dragon-trail{pointer-events:none;position:absolute}.flower-bloom-halo{z-index:-1;aspect-ratio:1;opacity:0;will-change:transform, opacity;background:radial-gradient(circle,#fff7d2b8 0 15%,#0000 58%),conic-gradient(from 22deg,#ffb4cf8a,#ffe49e61,#da97d87a,#ffb4cf8a);border-radius:50%;width:48px;animation:1.15s ease-out forwards flower-halo-bloom;-webkit-mask:radial-gradient(circle,#0000 0 29%,#000 31% 55%,#0000 57%);mask:radial-gradient(circle,#0000 0 29%,#000 31% 55%,#0000 57%)}.flower-bloom-combo[data-tier="2"] .flower-bloom-halo{animation-duration:1s}.flower-bloom-combo[data-tier="4"] .flower-bloom-halo,.flower-bloom-combo[data-tier="5"] .flower-bloom-halo{width:58px}.flower-bloom-halo-front{width:42px;animation-direction:reverse;animation-delay:80ms}.flower-bloom-copy{will-change:transform, opacity;background:linear-gradient(135deg,#ac4675d1,#d2758bcc 58%,#b88538cc);border:1px solid #fff5d1b8;border-radius:17px;justify-content:center;align-items:center;gap:1px;width:100%;min-height:58px;padding:5px 7px 8px;line-height:1;animation:.3s cubic-bezier(.2,.82,.28,1.2) both flower-bloom-copy-enter;display:grid;box-shadow:0 5px 13px #63334a40,inset 0 1px #ffffff6b}.flower-bloom-copy strong{letter-spacing:-.06em;text-shadow:0 2px 2px #581f3a6b;font-family:Georgia,Times New Roman,serif;font-size:clamp(25px,7.2vw,34px);font-weight:800}.flower-bloom-copy>span{letter-spacing:.09em;text-shadow:0 1px 2px #581f3a73;font-size:clamp(9px,2.6vw,11px);font-weight:900}.flower-bloom-combo[data-tier="4"] .flower-bloom-copy,.flower-bloom-combo[data-tier="5"] .flower-bloom-copy{box-shadow:0 5px 14px #63334a47,0 0 22px #ffda7c6b,inset 0 1px #ffffff7a}.flower-bloom-timer{background:#65344b4d;border:1px solid #ffffff61;border-radius:999px;width:68%;height:3px;margin-top:-10px;display:block;overflow:hidden}.flower-bloom-timer>span{border-radius:inherit;transform-origin:0;width:100%;height:100%;animation:combo-timer-drain var(--combo-window-ms,4s) linear forwards;will-change:transform;background:linear-gradient(90deg,#8ebc7e,#ec8db6 55%,#ffd47c);display:block;transform:scaleX(1)}.flower-bloom-particles,.flower-feedback-particles{inset:50% auto auto 50%}.flower-particle{--petal-color:#ec8fb1;background:linear-gradient(145deg, #fff4f7b8, color-mix(in srgb, var(--petal-color) 68%, transparent) 52%, #b85a89ad);opacity:0;width:5px;height:8px;transform:rotate(var(--petal-angle)) translateY(0) scale(.5);filter:hue-rotate(var(--petal-hue));animation:flower-petal-scatter 1.05s cubic-bezier(.16, .68, .28, 1) var(--petal-delay) forwards;will-change:transform, opacity;border-radius:75% 15% 70% 30%;display:block;position:absolute;top:-4px;left:-2px;box-shadow:0 0 4px #ffda9761}.flower-mahjong-theme .flower-petal-rain{z-index:64;inset:var(--game-header-height) 0 var(--game-footer-height);pointer-events:none;contain:layout paint;position:absolute;overflow:hidden}.flower-rain-petal{top:-30px;left:var(--rain-x);width:var(--rain-size);height:calc(var(--rain-size) * 1.45);background:linear-gradient(145deg, var(--rain-color-start), var(--rain-color-mid) 52%, var(--rain-color-end));opacity:0;animation:flower-petal-rain-fall var(--rain-duration) cubic-bezier(.24, .62, .42, .98) var(--rain-delay) forwards;will-change:transform, opacity;border-radius:75% 18% 70% 30%;display:block;position:absolute;transform:translateY(-12px)rotate(0);box-shadow:0 1px 2px #6721523d,0 0 5px #ffcc6338}.flower-petal-rain[data-kind=win] .flower-rain-petal{box-shadow:0 1px 3px #67215247,0 0 7px #ffca4c4d}.flower-bloom-combo[data-tier="3"] .flower-particle{animation-duration:1.22s}.flower-bloom-combo[data-tier="4"] .flower-particle,.flower-bloom-combo[data-tier="5"] .flower-particle{animation-duration:1.38s}.flower-mahjong-theme .flower-match-feedback{pointer-events:none;width:1px;height:1px;transform:translate3d(var(--feedback-x), var(--feedback-y), 0);isolation:isolate;display:block;position:absolute;top:0;left:0}.flower-feedback-glow{z-index:-1;aspect-ratio:1;opacity:0;will-change:transform, opacity;background:radial-gradient(circle,#fff5d2e6,#e57eaa73 38%,#0000 70%);border-radius:50%;width:56px;animation:.8s ease-out forwards flower-feedback-glow;top:-28px;left:-28px}.flower-feedback-bloom{aspect-ratio:1;opacity:0;will-change:transform, opacity;background:conic-gradient(from 20deg,#ed8cad,#ffd888,#ca8fd1,#ed8cad);width:30px;animation:.8s ease-out forwards flower-feedback-bloom;top:-15px;left:-15px;-webkit-mask:radial-gradient(circle,#0000 0 26%,#000 28% 55%,#0000 58%);mask:radial-gradient(circle,#0000 0 26%,#000 28% 55%,#0000 58%)}.flower-match-feedback .flower-particle{animation-duration:.8s}.flower-match-feedback[data-kind^=dragon-]{--special-color:#d05774}.flower-match-feedback[data-kind=dragon-green]{--special-color:#74a66b}.flower-match-feedback[data-kind=dragon-white]{--special-color:#f4e9d1}.flower-match-feedback[data-kind^=dragon-] .flower-feedback-glow{background:radial-gradient(circle, color-mix(in srgb, var(--special-color) 76%, white), color-mix(in srgb, var(--special-color) 58%, transparent) 38%, transparent 72%);animation-duration:1.1s}.flower-match-feedback[data-kind^=dragon-] .flower-particle{--petal-color:var(--special-color);animation-duration:1.1s}.flower-dragon-trail{border-top:5px solid color-mix(in srgb, var(--special-color) 78%, white);opacity:0;will-change:transform, opacity;border-bottom:3px solid #ffdc83a8;border-radius:50% 16%;width:116px;height:60px;animation:1.08s ease-out forwards flower-dragon-sweep;top:-30px;left:-58px;transform:rotate(-12deg)scaleX(.2)}.flower-match-feedback[data-kind=lotus] .flower-feedback-glow{background:radial-gradient(circle,#ffeef8f2,#6bdde58f 38%,#0000 72%);width:76px;animation-duration:1.18s;top:-38px;left:-38px}.flower-match-feedback[data-kind=lotus] .flower-feedback-bloom{background:conic-gradient(from 20deg,#f39fc2,#fce4ee,#79d9df,#f39fc2);width:48px;animation-duration:1.18s;top:-24px;left:-24px}.flower-match-feedback[data-kind=lotus] .flower-particle{--petal-color:#83d9df;animation-duration:1.18s}.flower-match-feedback[data-kind=peony] .flower-feedback-glow{background:radial-gradient(circle,#fff4c7f0,#db499180 40%,#0000 70%);border:2px solid #ffd66fb3;width:82px;animation-duration:1.24s;top:-41px;left:-41px}.flower-match-feedback[data-kind=peony] .flower-feedback-bloom{background:conic-gradient(from 10deg,#d73d83,#ff9bbe,#ffd26e,#d73d83);width:54px;animation-duration:1.24s;top:-27px;left:-27px}.flower-match-feedback[data-kind=peony] .flower-particle{--petal-color:#d94c8c;animation-duration:1.24s}@media (width>=640px){.game-modal-layer[data-dialog=levels]{padding:18px}.layout-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.layout-card{grid-template-rows:70px auto auto;min-height:138px}.layout-preview{height:62px}}@media (width>=960px){.layout-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@keyframes hint-pulse{50%{filter:brightness(1.12);box-shadow:var(--tile-top-shadow-x) var(--tile-top-shadow-y) var(--tile-top-shadow-blur) rgba(2, 7, 5, var(--tile-top-shadow-alpha)), var(--tile-left-shadow-x) var(--tile-left-shadow-y) var(--tile-left-shadow-blur) rgba(2, 7, 5, var(--tile-left-shadow-alpha)), 0 0 var(--tile-ambient-blur) var(--tile-ambient-spread) rgba(2, 7, 5, var(--tile-ambient-alpha)), var(--tile-contact-x) var(--tile-contact-y) var(--tile-contact-blur) var(--tile-contact-spread) rgba(4, 10, 8, var(--tile-contact-alpha)), var(--tile-middle-x) var(--tile-middle-y) var(--tile-middle-blur) rgba(3, 9, 7, var(--tile-middle-alpha)), var(--tile-cast-x) var(--tile-cast-y) var(--tile-cast-blur) rgba(2, 8, 6, var(--tile-cast-alpha)), 0 0 0 3px #f1d38c, 0 0 24px #e1bf70}}@keyframes blocked-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}@keyframes tile-select-jelly{0%,to{transform:scale(1)}34%{transform:scale(1.09,1.07)}52%{transform:scale(.98,1.035)}70%{transform:scale(1.025,.99)}86%{transform:scale(.995,1.01)}}@keyframes tile-remove{to{opacity:0;transform:scale(.86)}}@keyframes combo-streak-cycle{0%{opacity:0;transform:translateY(3px)scale(.65)}7%{opacity:1;transform:translateY(-2px)scale(1.15)}13.5%{opacity:1;transform:translateY(0)scale(1)}94%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:scale(1)}}@keyframes combo-timer-drain{to{transform:scaleX(0)}}@keyframes themed-match-feedback{0%{opacity:0;transform:translate3d(var(--feedback-x), var(--feedback-y), 0) translate(-50%, -50%) scale(.72)}34%{opacity:.96;transform:translate3d(var(--feedback-x), var(--feedback-y), 0) translate(-50%, -50%) scale(1.06)}72%{opacity:.78;transform:translate3d(var(--feedback-x), var(--feedback-y), 0) translate(-50%, -50%) scale(1)}to{opacity:0;transform:translate3d(var(--feedback-x), var(--feedback-y), 0) translate(-50%, -50%) scale(.88)}}@keyframes flower-bloom-copy-enter{0%{opacity:0;transform:translateY(2px)scale(.8)}58%{opacity:1;transform:translateY(-1px)scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes flower-halo-bloom{0%{opacity:0;transform:scale(.25)rotate(-20deg)}30%{opacity:.38}to{opacity:0;transform:scale(1.5)rotate(24deg)}}@keyframes flower-petal-scatter{0%{opacity:0;transform:rotate(var(--petal-angle)) translateY(0) scale(.45)}18%{opacity:.62}to{opacity:0;transform:rotate(calc(var(--petal-angle) + 35deg)) translateY(calc(var(--petal-distance) * -1)) scale(.84)}}@keyframes flower-feedback-glow{0%{opacity:0;transform:scale(.16)}24%{opacity:.9;transform:scale(.72)}to{opacity:0;transform:scale(1.4)}}@keyframes flower-feedback-bloom{0%{opacity:0;transform:scale(.2)rotate(-16deg)}30%{opacity:.9}to{opacity:0;transform:scale(1.8)rotate(28deg)}}@keyframes flower-dragon-sweep{0%{opacity:0;transform:translate(-20px)rotate(-12deg)scaleX(.15)}32%{opacity:.88}to{opacity:0;transform:translate(22px)rotate(10deg)scaleX(1)}}@keyframes flower-petal-rain-fall{0%{opacity:0;transform:translateY(-14px)rotate(0)scale(.82)}12%{opacity:var(--rain-opacity)}80%{opacity:calc(var(--rain-opacity) * .88)}to{opacity:0;transform:translate3d(var(--rain-drift), calc(100vh - var(--game-header-height) - var(--game-footer-height) + 28px), 0) rotate(var(--rain-rotation)) scale(1)}}@keyframes dialog-enter{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (height<=780px){.mahjong-screen{--game-header-height:50px;--game-footer-height:94px}.game-header{padding-top:4px;padding-bottom:4px}.game-footer{grid-template-rows:26px 68px}.game-toolbar{margin-top:4px;margin-bottom:6px}}@keyframes halloween-removal-spark{0%{opacity:0;transform:rotate(var(--halloween-particle-angle)) translateX(0) scale(.35)}35%{opacity:.95}to{opacity:0;transform:rotate(var(--halloween-particle-angle)) translateX(var(--halloween-particle-distance)) scale(.8)}}@keyframes haunted-streak-enter{0%{opacity:0;transform:translateY(-5px)scale(.88)}70%{opacity:1;transform:translateY(0)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes haunted-streak-number-pop{0%{filter:drop-shadow(0 0 #ff932a00);transform:scale(.75)}58%{color:#ffd477;filter:drop-shadow(0 0 7px #ff8f23e6)drop-shadow(0 0 11px #a95bf4bf);transform:scale(1.25)}to{filter:drop-shadow(0 0 2px #ff932a4d);transform:scale(1)}}@keyframes haunted-streak-bat{0%{opacity:0;transform:translate(14px,9px)scale(.72)rotate(7deg)}22%,72%{opacity:.94}to{opacity:0;transform:translate(var(--bat-flight-x), var(--bat-flight-y)) scale(1.08) rotate(-9deg)}}@keyframes haunted-tier-four-pulse{0%{opacity:0;transform:scale(.82)}38%{opacity:1;transform:scale(1.08)}to{opacity:.22;transform:scale(1)}}@keyframes halloween-win-overlay{0%{opacity:0}18%,78%{opacity:1}to{opacity:.22}}@keyframes halloween-win-moon{0%{opacity:0;transform:translate(-50%)scale(.78)}36%{opacity:1;transform:translate(-50%)scale(1.36)}72%{opacity:.96;transform:translate(-50%)scale(1.1)}to{opacity:.35;transform:translate(-50%)scale(1.08)}}@keyframes halloween-pumpkin-glow{0%,to{opacity:0}36%,72%{opacity:1}}@keyframes halloween-win-bat{0%{opacity:0;transform:translate(0)translateY(10px)rotate(-8deg)}20%,78%{opacity:.94}to{opacity:0;transform:translate(118vw)translateY(-24px)rotate(8deg)}}@keyframes halloween-win-spark{0%{opacity:0;transform:translateY(12px)rotate(0)scale(.4)}35%{opacity:1}to{opacity:0;transform:translateY(-36px)rotate(165deg)scale(1.05)}}@media (prefers-reduced-motion:reduce){.mahjong-tile,.header-icon-button,.game-toolbar button{transition:none}.game-time-penalty{animation-name:game-time-penalty-reduced}.mahjong-tile[data-hinted=true],.mahjong-tile[data-status=Selected]{animation:none}.mahjong-tile[data-removing=true]{opacity:0;animation:none}.match-flight-tile{animation:none}.match-impact{display:none}.combo-streak{animation:combo-streak-fade var(--combo-window-ms,2.2s) linear forwards}.combo-timer>span{animation:combo-timer-drain var(--combo-window-ms,2.2s) linear forwards}.themed-match-feedback{animation:.15s linear forwards themed-match-feedback-reduced}.flower-bloom-copy,.flower-bloom-halo,.flower-particle,.flower-feedback-glow,.flower-feedback-bloom,.flower-dragon-trail{animation:.15s linear forwards flower-feedback-reduced!important}.flower-rain-petal{top:30%;animation:.22s linear forwards flower-feedback-reduced!important}.game-dialog{animation:none}.halloween-mahjong-theme .halloween-removal-particles,.halloween-mahjong-theme .haunted-streak-bats,.halloween-mahjong-theme .halloween-win-bats,.halloween-mahjong-theme .halloween-win-particles,.halloween-mahjong-theme .halloween-win-pumpkin-glow{display:none}.halloween-mahjong-theme .haunted-streak,.halloween-mahjong-theme .halloween-win-celebration,.halloween-mahjong-theme .halloween-win-moon{animation:.22s linear both halloween-reduced-fade}}@keyframes halloween-reduced-fade{0%{opacity:0}35%,82%{opacity:.88}to{opacity:0}}@keyframes flower-feedback-reduced{0%{opacity:0;transform:scale(.92)}35%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1)}}@keyframes combo-streak-fade{0%,94%{opacity:1}to{opacity:0}}@keyframes themed-match-feedback-reduced{0%{opacity:0;transform:translate3d(var(--feedback-x), var(--feedback-y), 0) translate(-50%, -50%)}28%{opacity:.9}to{opacity:0;transform:translate3d(var(--feedback-x), var(--feedback-y), 0) translate(-50%, -50%)}}
