/* assets/css/style.css */
/* In-page navigation is an action and does not change the URL. */
:where(button[data-scroll]){font:inherit;color:inherit;cursor:pointer;text-align:inherit;border:0;padding:0;background:none}
:root{--red:var(--primary);--red-2:var(--accent);--gold:var(--accent);--panel-2:var(--raised);--max:1160px;--shadow:0 18px 55px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(var(--max),calc(100% - 44px));margin-inline:auto}.section-anchor{scroll-margin-top:84px}.skip-link{position:absolute;left:-9999px;top:8px;background:#fff;color:#111;padding:8px 12px;z-index:99}.skip-link:focus{left:12px}
.site-header{height:72px;position:sticky;top:0;z-index:50;background:rgba(var(--bg-rgb),.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-mark{font-size:30px;color:var(--red-2);text-shadow:none}.brand-name{font-size:23px;font-weight:850;letter-spacing:-.8px}.brand-divider{height:22px;width:1px;background:var(--line);margin:0 4px}.brand-caption{font-size:13px;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:clamp(12px,2.1vw,28px)}.main-nav :is(a,button):where(a,[data-scroll]){font-size:13px;color:var(--text);transition:color .2s}.main-nav :is(a,button):where(a,[data-scroll]):hover,.main-nav :is(a,button):where(a,[data-scroll]):focus-visible{color:var(--gold)}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--text);margin:5px}
.hero{min-height:550px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;background:var(--bg)}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{filter:hue-rotate(var(--hero-hue));z-index:-2;object-fit:cover;object-position:center}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(var(--bg-rgb),.96) 0%,rgba(var(--bg-rgb),.88) 35%,rgba(var(--bg-rgb),.28) 72%,rgba(var(--bg-rgb),.12) 100%),linear-gradient(0deg,var(--bg) 0%,transparent 25%)}.hero-content{padding:72px 0 64px}.eyebrow,.section-kicker{font-size:11px;letter-spacing:2.2px;color:var(--gold);font-weight:750}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{width:28px;height:2px;background:var(--red-2)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(44px,7vw,78px);line-height:1.08;letter-spacing:-2px;margin:16px 0;color:#fff;font-weight:900}h1 span,.section-heading h2 span{color:var(--gold)}.hero-subtitle{font-size:clamp(18px,2.3vw,25px);font-weight:650;margin-bottom:8px}.hero-description{max-width:550px;color:var(--muted);font-size:15px}.hero-tags{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}.hero-tags span{font-size:12px;border:1px solid var(--line);background:var(--panel);padding:5px 12px;border-radius:30px;color:var(--text)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{border:0;border-radius:999px;padding:12px 22px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.button:hover:not(:disabled){transform:translateY(-2px)}.button-primary{background:var(--primary);color:#fff;box-shadow:0 9px 28px rgba(0,0,0,.25)}.button-ghost{border:1px solid var(--line);color:var(--text);background:var(--panel)}.hero-note{font-size:11px;color:var(--muted);margin-top:20px;max-width:570px}
section:not(.hero){padding:76px 0}.download-section{background:var(--bg)}.section-heading{text-align:center;max-width:720px;margin:0 auto 34px}.section-kicker{margin-bottom:8px}.section-heading h2,.gameplay-copy h2, .release-intro h2{font-size:clamp(26px,4vw,38px);line-height:1.25;margin-bottom:12px}.section-heading p:last-child{color:var(--muted);font-size:14px;margin-bottom:0}
/* Shared geometry; all site colors come from config/themes.json. */
.platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.platform-card{display:flex;flex-direction:column;min-width:0;padding:28px 26px 24px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.platform-top{display:flex;align-items:center;gap:16px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.platform-symbol{display:grid;place-items:center;width:56px;height:56px;flex:0 0 56px;border-radius:14px;color:var(--gold);background:var(--raised)}
.platform-symbol{object-fit:contain}
.platform-top>div{min-width:0}
.platform-top h3{margin:0 0 4px;font-size:22px;line-height:1.3;font-weight:750}
.platform-top p{margin:0;font-size:12px;line-height:1.5;color:var(--muted)}
.version-list{display:grid;gap:14px;margin:24px 0 28px}
.version-list div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;font-size:13px;line-height:1.6}
.version-list dt{color:var(--muted)}
.version-list dd{margin:0;color:var(--text);overflow-wrap:anywhere}
.version-list [data-version]{color:var(--gold);font-weight:650}
.version-list [data-updated]{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.platform-button{width:100%;min-height:48px;margin-top:auto;padding:12px 18px;justify-content:space-between;border-radius:10px;color:#fff;background:var(--primary)}
.platform-button:hover:not(:disabled){background:var(--primary-hover);transform:none}
.platform-button:active{background:var(--primary-active)}
.platform-button svg{flex:0 0 18px}
.platform-footnote{margin:12px 0 0;min-height:36px;font-size:11px;line-height:1.65;color:var(--muted)}
.version-caption{margin:14px 0 0;text-align:right;font-size:11px;color:var(--muted)}
.download-notice{margin:0 0 28px;border:1px solid var(--line);border-radius:12px;background:var(--section);overflow:hidden}
.download-notice summary{display:flex;align-items:center;gap:12px;min-height:48px;padding:14px 20px;list-style:none;cursor:pointer}
.download-notice summary::-webkit-details-marker{display:none}
.download-notice summary>svg{flex:0 0 22px;color:var(--gold)}
.download-notice strong{color:var(--gold);font-size:14px}
.download-notice p{margin:0;padding:0 20px 18px;color:var(--muted);font-size:13px;line-height:1.8}
.notice-toggle{margin-left:auto;flex-shrink:0;font-size:12px;color:var(--muted)}
.notice-toggle::before{content:"查看提醒 +"}
.download-notice[open] .notice-toggle::before{content:"收起 −"}
.platform-tabs[hidden],.platform-card[hidden]{display:none}
.platform-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;margin-bottom:12px;border:1px solid var(--line);border-radius:12px;background:var(--section)}
.platform-tabs button{min-width:0;min-height:44px;padding:8px 4px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:13px;line-height:1.35;cursor:pointer;touch-action:manipulation}
.platform-tabs button[aria-selected="true"]{background:var(--raised);color:var(--accent);font-weight:700}
.platform-tabs button:focus-visible,.download-notice summary:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
:is(.platform-button,.faq-contact button,.faq-list summary):focus-visible{outline:2px solid var(--gold);outline-offset:4px}
:is(.download-section,.updates-section,.faq-section) ::selection{color:var(--bg);background:var(--gold)}
.features-section{background:var(--section)}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feature-card{padding:24px 20px;border:1px solid var(--line);border-radius:15px;background:var(--panel);text-align:center}.feature-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;margin:0 auto 12px;background:var(--raised);color:var(--gold);font-size:27px}.feature-card h3{font-size:17px;margin-bottom:8px}.feature-card p{font-size:12px;color:var(--muted);margin:0}
.gameplay-section{background:var(--bg)}.gameplay-layout{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px}.poker-demo{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:var(--shadow)}.demo-topline{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-bottom:15px}.poker-table{position:relative;min-height:265px;border:12px solid #4d2a1f;border-radius:48%;background:radial-gradient(ellipse,#08764c 0%,#075238 58%,#043522 100%);box-shadow:inset 0 0 0 3px #b58a50,inset 0 0 30px rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center}.community-cards{display:flex;gap:5px;z-index:2}.community-cards span{width:38px;height:52px;display:grid;place-items:center;background:#fffaf1;color:#171313;border-radius:5px;font-weight:850;font-size:13px;box-shadow:0 3px 6px #002719}.community-cards span:nth-child(2),.community-cards span:nth-child(4){color:#c51c2a}.table-center-label{position:absolute;top:61%;font-size:9px;letter-spacing:2px;color:rgba(245,230,194,.55)}.seat{position:absolute;display:grid;gap:1px;text-align:center;padding:5px 10px;border-radius:9px;background:rgba(12,10,10,.82);border:1px solid rgba(231,189,120,.38);font-size:10px}.seat span{color:#c7a47c;font-size:9px}.seat-one{top:8%;left:14%}.seat-two{top:5%;right:15%}.seat-three{top:39%;right:-2%}.seat-four{bottom:6%;right:20%}.seat-five{bottom:6%;left:20%}.demo-controls{display:flex;justify-content:center;gap:10px;margin-top:15px}.demo-controls span{padding:5px 18px;border-radius:20px;background:#302329;color:#ead8c7;font-size:11px}.demo-controls span:nth-child(2){background:#1c754e}.demo-controls span:nth-child(3){background:#a51c2a}.gameplay-copy>p:not(.section-kicker){color:var(--muted);font-size:14px}.gameplay-copy h2{color:var(--gold)}.check-list{list-style:none;padding:0;margin:20px 0}.check-list li{padding:7px 0 7px 24px;position:relative;font-size:13px;color:var(--text)}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--red-2);font-weight:900}.text-link{color:var(--gold);font-size:13px;font-weight:700}
.guide-section{background:var(--section)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.guide-card{position:relative;padding:25px;border-radius:15px;border:1px solid var(--line);background:var(--panel)}.guide-number{font-size:32px;font-weight:900;color:var(--line)}.guide-card h3{font-size:17px;margin:8px 0}.guide-card p{font-size:12px;color:var(--muted);margin:0}
.updates-section{background:var(--section)}
.release-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr);gap:72px;align-items:start}
.release-intro{padding-top:22px}
.release-intro h2{margin:0 0 18px;font-size:clamp(28px,3.2vw,38px);line-height:1.45;letter-spacing:-.02em}
.release-intro h2 span{color:var(--gold)}
.release-intro p{margin:0 0 8px;font-size:15px;color:var(--text)}
.release-intro small{font-size:12px;color:var(--muted)}
.release-list{border-top:1px solid var(--line)}
.release-entry{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;padding:26px 0;border-bottom:1px solid var(--line)}
.release-tag{align-self:start;display:grid;place-items:center;min-height:28px;border:1px solid var(--line);border-radius:6px;color:var(--gold);font-size:12px}
.release-entry h3{margin:0 0 8px;font-size:18px;line-height:1.5;font-weight:650}
.release-entry p{margin:0 0 14px;font-size:14px;line-height:1.85;color:var(--muted)}
.release-entry footer{font-size:12px;line-height:1.5;color:var(--muted)}
.release-entry time{margin-left:8px;font-variant-numeric:tabular-nums;white-space:nowrap}
.faq-section{background:var(--bg)}
.faq-container{max-width:900px}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;position:relative;padding:22px 42px 22px 4px;cursor:pointer;font-size:16px;font-weight:650;line-height:1.6}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::before,.faq-list summary::after{content:"";position:absolute;right:8px;top:34px;width:14px;height:2px;background:var(--gold)}
.faq-list summary::after{transform:rotate(90deg);transition:transform .2s}
.faq-list details[open] summary::after{transform:rotate(0)}
.faq-list details[open] summary{color:var(--gold)}
.faq-list details p{max-width:75ch;margin:0;padding:0 32px 24px 4px;font-size:14px;line-height:1.95;color:var(--muted)}
.faq-contact{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:26px}
.faq-contact p{margin:0;font-size:14px;color:var(--muted)}
.faq-contact button{display:inline-flex;align-items:center;gap:14px;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:9px 15px;font-size:13px;color:var(--gold);background:transparent;cursor:pointer}
.faq-contact button:hover{background:var(--raised)}
.site-footer{padding:38px 0 80px;background:var(--footer);border-top:1px solid var(--line)}.footer-main{display:flex;align-items:center;gap:28px}.footer-brand .brand-name{font-size:21px}.footer-main p{max-width:700px;color:var(--muted);font-size:12px;margin:0}.footer-links{display:flex;gap:20px;flex-wrap:wrap;margin:24px 0 14px}.footer-links :is(a,button):where(a,[data-scroll]){font-size:12px;color:var(--text)}.footer-disclaimer,.copyright{font-size:10px;color:var(--muted);margin:8px 0}.mobile-cta{display:none}
@media(max-width:980px){.main-nav{gap:12px}.main-nav :is(a,button):where(a,[data-scroll]){font-size:12px}.platform-grid{gap:12px}.platform-card{padding:18px}.gameplay-layout{gap:28px}.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.container{width:min(100% - 32px,var(--max))}.site-header{height:64px}.brand-name{font-size:20px}.brand-caption{font-size:11px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:63px;left:0;right:0;padding:14px 20px 18px;background:rgba(var(--bg-rgb),.98);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:4px 12px}.main-nav.is-open{display:grid}.main-nav :is(a,button):where(a,[data-scroll]){padding:10px 8px;font-size:13px}.hero{min-height:600px;align-items:flex-end}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(var(--bg-rgb),.93),rgba(var(--bg-rgb),.55)),linear-gradient(0deg,var(--bg) 0%,rgba(var(--bg-rgb),.2) 80%)}.hero-content{padding:110px 0 54px}.hero-description{max-width:460px}.hero-note{max-width:430px}section:not(.hero){padding:58px 0}.platform-grid{grid-template-columns:1fr}.platform-card{padding:22px}.platform-top h3{font-size:18px}.version-list div{grid-template-columns:86px minmax(0,1fr)}.gameplay-layout{grid-template-columns:1fr}.poker-demo{max-width:560px;width:100%;margin:auto}.gameplay-copy{max-width:620px}.guide-grid{grid-template-columns:1fr}.guide-card{padding:20px}.footer-main{align-items:flex-start;flex-direction:column;gap:12px}.site-footer{padding-bottom:95px}.mobile-cta{position:fixed;z-index:40;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(16px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:rgba(var(--bg-rgb),.96);border-top:1px solid var(--line);backdrop-filter:blur(14px);font-size:12px}.mobile-cta :is(a,button):where(a,[data-scroll]){background:var(--primary);padding:8px 16px;border-radius:30px;font-weight:800;color:white}}
@media(max-width:420px){.brand-divider,.brand-caption{display:none}.hero{min-height:570px}.hero-content{padding-top:100px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .button{width:100%}.feature-grid{gap:10px}.feature-card{padding:18px 12px}.poker-demo{padding:12px}.poker-table{min-height:215px;border-width:9px}.community-cards{gap:3px}.community-cards span{width:31px;height:44px;font-size:11px}.seat{font-size:9px;padding:4px 7px}.seat-three{right:-3%}.demo-topline{font-size:9px}.section-heading h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.error-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.error-card{max-width:560px;text-align:center;padding:48px 30px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:var(--shadow)}.error-card .brand-mark{font-size:46px}.error-card h1{font-size:clamp(30px,6vw,46px);letter-spacing:0}.error-card p:not(.section-kicker){color:var(--muted);font-size:14px;margin-bottom:24px}

/* Reserved friend links: add real anchor elements to #friend-links. */
.friend-links{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin-block:16px;padding-block:14px;border-top:1px solid var(--line,var(--border,var(--line)));color:var(--muted);font-size:12px;line-height:1.8;text-align:left}
.friend-links-title{flex-shrink:0;font-weight:700}
.friend-links-list{display:flex;flex:1;min-width:0;flex-wrap:wrap;gap:8px 18px}
.friend-links a{color:inherit;overflow-wrap:anywhere;text-decoration:none}
.friend-links a:hover{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.friend-links a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

@media(min-width:901px) and (max-width:1100px){.platform-card{padding:22px 18px}.platform-top{gap:12px}.platform-symbol{width:48px;height:48px;flex-basis:48px}.platform-top h3{font-size:19px}.version-list div{grid-template-columns:68px minmax(0,1fr);gap:8px;font-size:12px}}
@media(max-width:900px){.platform-grid{grid-template-columns:1fr}.platform-card{padding:24px}.platform-footnote{min-height:0}.release-layout{grid-template-columns:1fr;gap:28px}.release-intro{padding-top:0}.release-intro h2 br{display:none}.release-intro h2{margin-bottom:12px}.version-caption{text-align:left}}
@media(max-width:480px){.platform-top h3{font-size:20px}.platform-card{padding:22px}.platform-symbol{width:52px;height:52px;flex-basis:52px}.release-entry{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:24px 0}.release-entry h3{font-size:17px}.release-entry p{font-size:13px}.faq-list summary{font-size:15px}.faq-list details p{padding-right:8px;font-size:13px}.faq-contact{align-items:flex-start;flex-direction:column}}

.download-section .section-heading{margin-bottom:22px}
.button-primary,.platform-button,.mobile-cta button[data-scroll]{color:var(--on-primary)}
.button-primary:hover:not(:disabled){background:var(--primary-hover)}

/* The local consultation assistant uses the same palette as its host page. */
html[data-color-theme] body[data-support-theme="download"] .hh-support{
  --hh-surface:var(--panel);--hh-header:var(--raised);--hh-text:var(--text);
  --hh-muted:var(--muted);--hh-line:var(--line);--hh-accent:var(--primary);
  --hh-accent-text:var(--on-primary);--hh-user:var(--raised)
}
html[data-color-theme] .hh-support :is(.hh-message,.hh-contact,.hh-quick button,.hh-input){background:var(--section)}
html[data-color-theme] .hh-support .hh-user{background:var(--raised)}
html[data-color-theme] .hh-support .hh-avatar{border-color:var(--accent);color:var(--accent)}
html[data-color-theme] .hh-support :is(button,input):focus-visible{outline-color:var(--accent)}
html[data-color-theme] .hh-support .hh-input{caret-color:var(--accent)}

/* Back to top sits above the assistant and above the mobile download bar. */
.back-to-top{position:fixed;z-index:1000;right:max(var(--hh-stack-right),env(safe-area-inset-right));bottom:calc(var(--hh-stack-bottom) + 64px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;gap:5px;min-width:78px;min-height:52px;padding:10px 13px;border:1px solid var(--line);border-radius:28px;background:var(--panel);color:var(--text);font-size:13px;font-weight:600;line-height:1.4;cursor:pointer;box-shadow:0 10px 28px #0004;touch-action:manipulation}
.back-to-top:hover{background:var(--raised);color:var(--accent)}
.back-to-top:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* Compact mobile composition; desktop cards keep the shared three-column layout. */
.section-anchor{scroll-margin-top:0}
@media(max-width:900px){
  section:not(.hero){padding:36px 0}
  section.download-section{padding:22px 0}
  .download-section .section-heading{margin-bottom:14px}
  .download-section h2{font-size:clamp(22px,4.8vw,30px);line-height:1.3;margin-bottom:0}
  .download-notice{margin-bottom:14px}
  .download-notice summary{padding:8px 12px;min-height:44px;gap:8px}
  .download-notice strong{font-size:13px}
  .download-notice p{padding:4px 12px 14px}
  .platform-card{padding:16px;border-radius:12px}
  .platform-top{gap:12px;padding-bottom:12px}
  .platform-symbol{width:40px;height:40px;flex-basis:40px;border-radius:10px}
  .platform-top h3{font-size:18px;margin-bottom:2px}
  .platform-top p{font-size:12px}
  .version-list{gap:8px;margin:12px 0 16px}
  .version-list div{grid-template-columns:80px minmax(0,1fr);font-size:13px;line-height:1.5}
  .version-list [data-updated]{font-size:13px}
  .platform-button{min-height:44px;padding:10px 14px;font-size:14px}
  .platform-footnote{min-height:0;margin-top:8px;font-size:12px;line-height:1.5}
  .version-caption{margin-top:10px;font-size:12px;line-height:1.5}
  .section-heading{margin-bottom:22px}
  .section-heading h2,.gameplay-copy h2{font-size:26px}
  .release-layout{gap:16px}
  .release-intro h2{font-size:25px;line-height:1.4;margin-bottom:8px}
  .release-intro p{display:inline;margin-right:12px;font-size:14px}
  .release-intro small{display:inline}
  .release-entry{padding:18px 0;gap:12px}
  .release-entry h3{font-size:16px;margin-bottom:6px}
  .release-entry p{font-size:13px;line-height:1.7;margin-bottom:10px}
  .guide-grid{grid-template-columns:1fr;gap:10px}
  .guide-card{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;padding:16px;border-radius:12px}
  .guide-number{grid-row:1/3;font-size:24px;line-height:1.4;color:var(--accent)}
  .guide-card h3{font-size:16px;margin:0 0 4px}
  .guide-card p{font-size:13px;line-height:1.7}
  .faq-list summary{padding:16px 36px 16px 2px;font-size:15px}
  .faq-list summary::before,.faq-list summary::after{top:27px}
  .faq-list details p{padding:0 8px 18px 2px;font-size:14px;line-height:1.8}
  .faq-contact{margin-top:18px;gap:12px}
}
@media(max-width:760px){
  html{scroll-padding-top:76px}
  .hero{min-height:0}
  .hero-content{padding:52px 0 36px}
  .hero h1{font-size:48px;margin:12px 0}
  .hero-subtitle{font-size:20px;line-height:1.5}
  .hero-description{font-size:14px;line-height:1.7}
  .hero-tags{margin:16px 0}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .hero-actions .button{padding:11px 8px;font-size:13px;min-height:44px}
  .hero-note{margin-top:14px}
  .feature-card{padding:16px;text-align:left}
  .feature-icon{width:34px;height:34px;margin:0 0 10px;font-size:22px;border-radius:9px}
  .feature-card h3{font-size:16px;margin-bottom:6px}
  .feature-card p{font-size:13px;line-height:1.7}
  .gameplay-layout{gap:22px}
  .check-list{margin:14px 0}
  .poker-demo{padding:12px;border-radius:12px}
  .poker-table{min-height:210px}
  .site-footer{padding-top:26px}
  .footer-links{margin:18px 0 12px;gap:12px 18px}
}
@media(max-width:900px) and (max-height:720px){
  section.download-section{padding:14px 0}
  .download-section .section-heading,.download-notice{margin-bottom:10px}
  .platform-tabs{margin-bottom:10px}
  .platform-card{padding:14px}
  .platform-top{padding-bottom:10px}
  .version-list{margin:10px 0 12px;gap:6px}
}


/* assets/support/support.css */
/* Shared vertical controls: top button sits 12px above the assistant. */
body[data-support-theme]{--hh-stack-bottom:18px;--hh-stack-right:18px}
/* Let the last footer text scroll clear of both fixed controls on narrow screens. */
@media(max-width:900px){body[data-support-theme] .site-footer{padding-bottom:calc(var(--hh-stack-bottom) + 128px + env(safe-area-inset-bottom))}}
/* Shared layout v1.0.0. Theme variables preserve each template's visual identity. */
.hh-support{--hh-surface:#f7f8f3;--hh-header:#e8efdf;--hh-text:#173e32;--hh-muted:#506b5c;--hh-line:#d4dfcd;--hh-accent:#164b38;--hh-accent-text:#fffdf3;--hh-user:#e1eddc;--hh-bottom:var(--hh-stack-bottom);font:14px/1.65 "Microsoft YaHei","PingFang SC",sans-serif;color:var(--hh-text)}
body[data-support-theme="club"] .hh-support{--hh-surface:#faf7ef;--hh-header:#eee3ca;--hh-text:#362817;--hh-muted:#715c3d;--hh-line:#e1d5be;--hh-accent:#725124;--hh-accent-text:#fffaf0;--hh-user:#f2e5ca}
body[data-support-theme="download"] .hh-support{--hh-surface:#fff7f4;--hh-header:#f2e0db;--hh-text:#54242b;--hh-muted:#7c5257;--hh-line:#e7d1cd;--hh-accent:#a62436;--hh-accent-text:#fff;--hh-user:#f8e3e3}
.hh-support *{box-sizing:border-box}
.hh-support [hidden]{display:none!important}
.hh-support button,.hh-support input{font:inherit}
.hh-support button{cursor:pointer;touch-action:manipulation}
.hh-support button:disabled{cursor:wait;opacity:.65}
.hh-support :is(button,input):focus-visible{outline:2px solid var(--hh-accent);outline-offset:3px}
.hh-support ::selection{background:var(--hh-accent);color:var(--hh-accent-text)}
.hh-support input{caret-color:var(--hh-accent)}
.hh-launcher{position:fixed;z-index:1000;right:max(var(--hh-stack-right),env(safe-area-inset-right));bottom:calc(var(--hh-bottom) + env(safe-area-inset-bottom));min-height:52px;padding:12px 22px;border:1px solid var(--hh-line);border-radius:28px;background:var(--hh-accent);color:var(--hh-accent-text);box-shadow:0 10px 28px #0004;font-weight:700!important}
.hh-panel{position:fixed;z-index:1001;right:max(var(--hh-stack-right),env(safe-area-inset-right));bottom:calc(var(--hh-bottom) + 128px + env(safe-area-inset-bottom));display:flex;flex-direction:column;width:min(400px,calc(100vw - 32px));height:min(650px,calc(100vh - var(--hh-bottom) - 144px - env(safe-area-inset-bottom)));height:min(650px,calc(100dvh - var(--hh-bottom) - 144px - env(safe-area-inset-bottom)));overflow:hidden;border-radius:16px;background:var(--hh-surface);box-shadow:0 20px 60px #0005;text-align:left}
.hh-header{display:flex;align-items:center;gap:10px;flex:0 0 auto;padding:15px;background:var(--hh-header);border-bottom:1px solid var(--hh-line)}
.hh-avatar{display:grid;place-items:center;flex:0 0 36px;height:36px;border:1px solid var(--hh-accent);border-radius:50%;color:var(--hh-accent);font:bold 17px Georgia,serif}
.hh-heading{min-width:0;flex:1}.hh-heading strong{display:block;font-size:14px}.hh-heading small{display:block;margin-top:2px;font-size:11px;color:var(--hh-muted)}
.hh-close{flex:0 0 44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--hh-text);font-size:26px!important;line-height:1!important}
.hh-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 16px;scrollbar-width:thin;scrollbar-color:var(--hh-muted) transparent}
.hh-message{margin:0 0 12px;padding:11px 13px;border:1px solid var(--hh-line);border-radius:12px;background:#fff;color:var(--hh-text);font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.hh-user{margin-left:28px;background:var(--hh-user)}
.hh-contact{margin-bottom:12px;padding:15px;border:1px solid var(--hh-line);border-radius:14px;background:#fff}
.hh-contact-top{display:flex;gap:9px;align-items:center;margin-bottom:9px}.hh-contact-top strong{font-size:14px}.hh-contact-top small{margin-left:auto;font-size:11px;color:var(--hh-muted)}
.hh-app-icon{display:block;width:36px;height:36px;object-fit:contain;border-radius:5px;background:#fff}
.hh-account-row{display:flex;align-items:center;gap:8px;min-width:0}
.hh-account{min-width:0;width:100%;padding:0;border:0;background:transparent;color:var(--hh-text);font-size:29px!important;font-weight:800!important;letter-spacing:.5px;line-height:1.6!important}
.hh-copy{flex-shrink:0;min-height:44px;padding:8px 11px;border:0;border-radius:8px;color:var(--hh-accent-text);background:var(--hh-accent);font-size:12px!important;font-weight:700!important}
.hh-contact-note,.hh-copy-status,.hh-manual{margin:8px 0 0;font-size:11px;line-height:1.6;color:var(--hh-muted)}
.hh-copy-status:empty{display:none}.hh-retry{min-height:36px;padding:4px;border:0;background:transparent;color:var(--hh-accent);text-decoration:underline;text-underline-offset:3px}
.hh-message .hh-copy-group{margin-top:10px}.hh-message .hh-account{font-size:20px!important}.hh-message .hh-copy{font-size:16px!important;letter-spacing:.3px}
.hh-footer{flex:0 0 auto;padding:12px 14px 9px;border-top:1px solid var(--hh-line);background:var(--hh-surface)}
.hh-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:10px}
.hh-quick button{min-height:36px;padding:6px 8px;border:1px solid var(--hh-line);border-radius:5px;background:#fff;color:var(--hh-text);font-size:11px;line-height:1.4;text-align:center}
.hh-form{display:flex;gap:7px;margin:0}.hh-input{min-width:0;flex:1;min-height:46px;border:1px solid var(--hh-line);border-radius:6px;padding:9px 10px;background:#fff;color:var(--hh-text);font-size:16px!important}.hh-input::placeholder{color:var(--hh-muted);font-size:13px}
.hh-send{flex:0 0 50px;border:0;border-radius:6px;background:var(--hh-accent);color:var(--hh-accent-text);font-size:12px!important;font-weight:700!important}
.hh-footnote{margin:7px 0 0;text-align:center;font-size:10px;color:var(--hh-muted)}
.hh-support button:hover{filter:brightness(.94)}
@media(max-width:760px){body[data-support-theme]{--hh-stack-bottom:12px;--hh-stack-right:12px}.hh-panel{right:max(12px,env(safe-area-inset-right));width:calc(100vw - 24px);max-width:400px}.hh-launcher{right:max(12px,env(safe-area-inset-right))}.hh-header{padding:10px 12px}.hh-scroll{padding:12px}.hh-footer{padding:10px 12px 8px}body[data-support-theme="download"]{--hh-stack-bottom:78px}}
@media(max-height:540px){.hh-header{padding:6px 10px}.hh-footer{padding:7px 10px}.hh-footnote{display:none}.hh-quick{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:6px;gap:4px}.hh-quick button{padding:4px;font-size:10px}}

/* Short landscape windows use the space beside the controls for readable chat. */
@media(max-height:540px) and (min-width:480px){.hh-panel{right:calc(max(var(--hh-stack-right),env(safe-area-inset-right)) + 126px);bottom:calc(var(--hh-bottom) + env(safe-area-inset-bottom));width:min(400px,calc(100vw - 154px));height:calc(100vh - var(--hh-bottom) - env(safe-area-inset-bottom) - 16px);height:calc(100dvh - var(--hh-bottom) - env(safe-area-inset-bottom) - 16px)}}


/* assets/css/themes.css */
/* Generated from config/themes.json. */

:root, html[data-color-theme="ruby"] {
  --bg: #10090b;
  --section: #160d10;
  --panel: #1e1216;
  --raised: #2b1d20;
  --footer: #0b0708;
  --text: #f8eee5;
  --muted: #c7b4aa;
  --accent: #e7bd78;
  --primary: #b62538;
  --primary-hover: #c72b41;
  --primary-active: #981e2e;
  --on-primary: #ffffff;
  --bg-rgb: 16,9,11;
  --line: rgba(231,189,120,.22);
  --hero-hue: 0deg;
}

html[data-color-theme="ocean"] {
  --bg: #080e18;
  --section: #0c1522;
  --panel: #111e30;
  --raised: #1a2b42;
  --footer: #060b12;
  --text: #edf4ff;
  --muted: #b1c2da;
  --accent: #8fc9ff;
  --primary: #2461b2;
  --primary-hover: #2b6bbe;
  --primary-active: #1d4e92;
  --on-primary: #ffffff;
  --bg-rgb: 8,14,24;
  --line: rgba(143,201,255,.22);
  --hero-hue: 200deg;
}

html[data-color-theme="emerald"] {
  --bg: #080f0d;
  --section: #0c1813;
  --panel: #12241d;
  --raised: #1c3329;
  --footer: #060c09;
  --text: #edf7f0;
  --muted: #b0c8bc;
  --accent: #92d9b5;
  --primary: #1c7458;
  --primary-hover: #218064;
  --primary-active: #175e48;
  --on-primary: #ffffff;
  --bg-rgb: 8,15,13;
  --line: rgba(146,217,181,.22);
  --hero-hue: 130deg;
}

html[data-color-theme="violet"] {
  --bg: #0e0a17;
  --section: #160f23;
  --panel: #20172f;
  --raised: #302241;
  --footer: #090611;
  --text: #f4edfc;
  --muted: #c5b5d5;
  --accent: #ceb0ff;
  --primary: #7142b2;
  --primary-hover: #8050be;
  --primary-active: #5e3597;
  --on-primary: #ffffff;
  --bg-rgb: 14,10,23;
  --line: rgba(206,176,255,.22);
  --hero-hue: 275deg;
}

html[data-color-theme="amber"] {
  --bg: #120e08;
  --section: #1c160c;
  --panel: #282013;
  --raised: #392e1b;
  --footer: #0d0a06;
  --text: #faf1df;
  --muted: #cebea1;
  --accent: #e8c17d;
  --primary: #87581e;
  --primary-hover: #976428;
  --primary-active: #714919;
  --on-primary: #ffffff;
  --bg-rgb: 18,14,8;
  --line: rgba(232,193,125,.22);
  --hero-hue: 25deg;
}
