/* 方块基座 · Shadow DOM 内嵌页面及站内独立游戏的控件皮肤。 */
:root,:host{--gb-edge:#343b30;--gb-paper:#fffefa;--gb-ink:#20251e;--gb-soft:#596153;--gb-grass:#3b7322;--gb-sans:'PingFang SC','Microsoft YaHei',system-ui,sans-serif}
:host,body.gb-embedded-hub,body.gb-embedded-health{--night:#edf0e9;--night2:#e5eadc;--star:#20251e;--star-dim:#596153;--flare:#315e23;--parchment:#edf0e9;--ink:#20251e;--amber:#315e23;--muted:#596153;--line:#b7beae;--line-s:#8b9a7c;--card:#fffefa;--text:#20251e;display:block;background:#edf0e9;color:#20251e;background-image:linear-gradient(90deg,#8a9a7910 1px,transparent 1px),linear-gradient(#8a9a7910 1px,transparent 1px);background-size:32px 32px;font-family:var(--gb-sans)}
:host{padding:10px 0 60px;min-height:0}
:is(:host,.gb-embedded) :is(button,.btn,.tbtn,.play,.back,.cta,.ghost,.act,.btn-cta,.btn-cash,.next,.link-how,.tlink,.btn-r,.btn-f,.sz-btn,.sp-btn,.ev-btn,.conf-btn,.stepper button){
 border:2px solid #252b22!important;border-radius:0!important;background:#c6c6c6!important;color:#15191a!important;
 box-shadow:inset -3px -3px #777e70,inset 3px 3px #fff!important;font-family:var(--gb-sans);font-weight:600;
}
:is(:host,.gb-embedded) :is(button.primary,.btn.primary,.play,.cta,.btn-cta,.act-long,.sp-btn.active,.tab.on,.btn.solid,button[aria-pressed=true],button[aria-selected=true]){
 background:#3b7322!important;color:#fff!important;box-shadow:inset -3px -3px #24481a,inset 3px 3px #5f9a45!important;
}
:is(:host,.gb-embedded) :is(.act-short,.btn.danger,.btn-r.danger){background:#a33b33!important;color:#fff!important;box-shadow:inset -3px -3px #68241e,inset 3px 3px #ca7267!important}
:is(:host,.gb-embedded) :is(button:disabled,[aria-disabled=true]){opacity:.5;cursor:not-allowed}
:is(:host,.gb-embedded) :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){border:2px solid #646d5a!important;border-radius:0!important;background:#fffefa!important;color:#20251e!important;box-shadow:inset 3px 3px #d9ddcf!important;box-sizing:border-box;max-width:100%}
:is(:host,.gb-embedded) :is(.card,.cd,.panel,.mbox,.dlg,.dcard,.ctrl-card,.stat-card,.log-panel,.btc-panel,.res-c,.tile,.bcard,.ev-box,.winbox,.foecard,.modal){
 border:2px solid #343b30;border-radius:0;background:#fffefa;color:#20251e;
 box-shadow:inset 3px 3px #fff,inset -3px -3px #d8ddcf,4px 4px #343b30;
}
:is(:host,.gb-embedded) :is(.pill,.tag,.badge,.chip,.track-chip,.trackbar,.bar,.meter,.gauge,.conf-row,.ev-inner,.reveal,.screen,.toast,.log-entry,.status,.cd-t){border-radius:0}
:is(:host,.gb-embedded) :is(.card,.cd,.panel,.mbox,.dlg,.dcard,.ctrl-card,.stat-card,.log-panel,.btc-panel,.res-c,.tile,.bcard,.modal) :is(h1,h2,h3,h4,.desc,.sub,.lbl,.note,.mut,.dim,.lead,.title){color:#20251e}
:is(:host,.gb-embedded) :is(h1,h2,h3,h4){font-family:var(--gb-sans)}
:is(:host,.gb-embedded) :is(.card,.cd,.tile):hover{transform:none}
:is(:host,.gb-embedded) :is(button,a,input,select,textarea):focus-visible{outline:3px dashed #7da85d;outline-offset:3px}
:host .hero,.gb-embedded-hub .hero{background:#fffefa;border:2px solid #343b30;border-top:8px solid #628c43;border-radius:0;box-shadow:inset 3px 3px #fff,inset -3px -3px #d8ddcf,4px 4px #343b30;padding:34px;margin:30px 0}
:host .hero h1,.gb-embedded-hub .hero h1{color:#20251e;text-shadow:2px 2px #dce2d3;font-size:clamp(32px,5vw,48px)}
:host .card h2,.gb-embedded-hub .card h2{color:#20251e;font-family:var(--gb-sans)}
:host .card .tags span,.gb-embedded-hub .card .tags span{border:1px solid #8b9a7c;border-radius:0;color:#315e23;background:#e5eadc}
:host :is(.card .no,.card .sub,.card .desc,.card.soon .t,.card.soon .m),.gb-embedded-hub :is(.card .no,.card .sub,.card .desc,.card.soon .t,.card.soon .m){color:#596153}
:host :is(.hero p,.kicker,.foot,.meta){color:#596153}
:host .wrap{box-sizing:border-box}
:host .grid,.gb-embedded-hub .grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
:host :is(header,.head){border-radius:0}
.gb-embedded-health .wrap{color:#20251e}
@media(max-width:640px){:host .hero,.gb-embedded-hub .hero{padding:24px 18px;margin:24px 0}:host .grid,.gb-embedded-hub .grid{grid-template-columns:minmax(0,1fr)}:host .wrap{padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){:is(:host,.gb-embedded) *{transition:none!important}}
:host :is(.metrics li,.tier,.redline,.dot),.gb-embedded-health :is(.metrics li,.tier,.redline,.dot){border-radius:0}
:host .metrics li,.gb-embedded-health .metrics li{border:1px solid #8b9a7c;background:#fffefa}
/* Game state feedback remains visible after changing the panel material. */
.gb-embedded :is(.card.sel,.ev-btn.on){border-color:#3b7322;background:#e5eadc;box-shadow:inset 3px 3px #fff,inset -3px -3px #b9caa4,3px 3px #343b30}
.gb-embedded .card.right{border-color:#3b7322;background:#e5efdc}
.gb-embedded .card.wrong{border-color:#a33b33;background:#f4ded8}
.gb-embedded :is(.iconbtn,.tlink){border:2px solid #252b22!important;border-radius:0!important;background:#c6c6c6!important;color:#15191a!important;box-shadow:inset -3px -3px #777e70,inset 3px 3px #fff!important}
.gb-embedded :is(.tk,.gate,.mebox,.recap,.home-logo){border-radius:0}
.gb-embedded .tk{border:2px solid #12141f;background:#262b40;box-shadow:inset 3px 3px #4a5276,inset -3px -3px #12141f}
.gb-embedded .home-c{background:linear-gradient(#9bc9ec 0 72%,#6d964b 72% 76%,#62744b 76%);position:relative;isolation:isolate}
.gb-embedded .home-c::before{content:"";position:absolute;z-index:-1;top:16%;left:14%;width:100px;height:24px;background:#eaf2f3;box-shadow:35px -16px #eaf2f3,70px 0 #eaf2f3,720px 90px #eaf2f3,755px 74px #eaf2f3,790px 90px #eaf2f3}
.gb-embedded .home-logo{background:#3b7322;border:2px solid #252b22;box-shadow:inset -5px -5px #24481a,inset 5px 5px #5f9a45}
.gb-embedded :is(.home-t,.home-sub,.home-ver){color:#20251e}
.gb-embedded .home-t{font-family:var(--gb-sans);font-weight:800;text-shadow:2px 2px #e8f0e2}
.gb-embedded .alloc-row .seal{border-radius:0}
@media(max-width:640px){
 .gb-embedded .miao-grid{grid-template-columns:minmax(0,1fr)}
 .gb-embedded .miao-grid>.card{min-width:0;padding:16px}
 .gb-embedded .alloc-row{grid-template-columns:44px minmax(0,1fr);gap:10px}
 .gb-embedded .alloc-row .seal{width:40px;height:40px}
 .gb-embedded .alloc-row .stepper{grid-column:1/-1;justify-content:flex-end;width:100%}
 .gb-embedded .alloc-row .meter-seg{flex:1;min-width:30px;max-width:160px}
}
.gb-embedded .foecard :is(.ft,.fs){color:#20251e}
