:root{color:#ede5d5;font-synthesis:none;--ink:#ede5d5;--muted:#9f988b;--line:#ecdec226;--panel:#1f1c17db;--gold:#d4a84e;--gold-soft:#efd493;--red:#8c302b;--inner-power:#376987;--text-xs:.75rem;--text-sm:.8125rem;--text-md:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-caption:var(--text-xs);--text-label:var(--text-sm);--text-body-sm:var(--text-md);--text-body:var(--text-base);--text-emphasis:var(--text-lg);--text-title-sm:var(--text-xl);--text-title:var(--text-2xl);--text-display-sm:var(--text-3xl);--text-display:var(--text-4xl);background:#11100e;font-family:Inter,Noto Sans SC,PingFang SC,system-ui,sans-serif;font-size:16px}*{box-sizing:border-box}.fatal-screen{background:#100d0b;min-height:100vh;padding:4rem}.fatal-screen pre{border:1px solid var(--line);color:#e8b4a5;white-space:pre-wrap;background:#050403;max-width:100%;padding:1rem;overflow:auto}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:radial-gradient(circle at 70% 0,#7c4e213d,#0000 38rem),linear-gradient(135deg,#171410,#0c0b09 65%);min-height:100vh}button,select{font:inherit}button{color:inherit}.panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 70px #00000042}.eyebrow{color:var(--gold);font-size:var(--text-label);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .45rem;font-weight:700}.button{cursor:pointer;border:1px solid #0000;border-radius:4px;min-height:42px;padding:.7rem 1.1rem;font-weight:700}.button.primary{color:#17110a;background:var(--gold)}.button.secondary{border-color:var(--gold);color:var(--gold-soft);background:0 0}.button.ghost{border-color:var(--line);background:#ffffff06}.button:hover{filter:brightness(1.12)}.button:disabled{opacity:.35;cursor:not-allowed;filter:none}.home-shell,.lab-shell,.game-shell{width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:1.5rem clamp(1rem,4vw,4rem) 4rem}.home-shell,.lab-shell{padding-top:max(1.5rem, env(safe-area-inset-top));padding-right:max(clamp(1rem, 4vw, 4rem), env(safe-area-inset-right));padding-bottom:max(4rem, env(safe-area-inset-bottom));padding-left:max(clamp(1rem, 4vw, 4rem), env(safe-area-inset-left))}.home-nav,.lab-header,.game-topbar{align-items:center;gap:1rem;display:flex}.home-nav .button,.lab-header .button,.game-topbar .button{margin-left:auto}.brand-mark{object-fit:cover;width:44px;height:44px;image-rendering:pixelated;background:#120f0c;border:1px solid #efd49359;border-radius:10px;flex:none;display:block;box-shadow:0 0 0 1px #00000059}.brand-mark-button{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;padding:0;display:block;position:relative}.brand-mark-button:after{content:"";border:1px solid #0000;border-radius:14px;transition:border-color .15s,box-shadow .15s,transform .15s;position:absolute;inset:-5px}.brand-mark-button:hover:after,.brand-mark-button:focus-visible:after{border-color:#efd493b8;transform:scale(1.03);box-shadow:0 0 18px #d4a84e33}.brand-mark-button:focus-visible{outline:none}.brand-mark-button:active{transform:translateY(1px)}.brand{display:grid}.brand span{color:var(--muted);font-size:var(--text-label)}.home-nav-actions{align-items:center;gap:.55rem;margin-left:auto;display:flex}.bgm-toggle{border:1px solid var(--line);width:2.45rem;height:2.45rem;color:var(--muted);font-size:var(--text-body);cursor:pointer;background:#0c0a088c;border-radius:999px;place-items:center;padding:0;line-height:1;transition:border-color .12s,color .12s,background .12s,opacity .12s;display:grid}.bgm-toggle:hover{border-color:var(--gold);color:var(--ink)}.bgm-toggle.active{color:#17110a;background:var(--gold);border-color:#efd493b8;box-shadow:0 0 0 1px #16130f59,0 6px 18px #d4a84e47}.bgm-toggle:not(.active){opacity:.72}.bgm-toggle:not(.active) span{filter:grayscale();opacity:.78}.dev-tools{z-index:20;position:relative}.dev-tools summary{border:1px solid var(--line);color:var(--muted);font-size:var(--text-label);cursor:pointer;border-radius:4px;padding:.7rem .9rem;list-style:none}.dev-tools summary::-webkit-details-marker{display:none}.dev-tools[open] summary{border-color:var(--gold);color:var(--gold-soft)}.dev-tools-menu{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d8a84273 transparent;background:#110e0af7;grid-template-columns:1fr 1fr;gap:0 .15rem;width:min(460px,100vw - 1.5rem);max-height:min(70vh,100dvh - 5rem);padding:.55rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0;overflow-y:auto;box-shadow:0 22px 70px #00000094}.dev-tools-menu::-webkit-scrollbar{width:6px}.dev-tools-menu::-webkit-scrollbar-thumb{background:#d8a84273;border-radius:999px}.dev-tools-menu::-webkit-scrollbar-track{background:0 0}.dev-tools-menu>span{color:var(--gold);font-size:var(--text-caption);letter-spacing:.12em;grid-column:1/-1;padding:.65rem .55rem .35rem;font-weight:800}.dev-tools-menu button,.dev-file-button{min-width:0;min-height:34px;color:var(--muted);font-size:var(--text-label);text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;padding:.45rem .55rem;overflow:hidden}.dev-tools-menu button:hover,.dev-file-button:hover{color:var(--ink);background:#ffffff0d}.dev-file-button input{display:none}.hero{grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);align-items:center;gap:clamp(2rem,7vw,7rem);min-height:58vh;padding:4rem 0 3rem;display:grid}.hero h1{letter-spacing:-.05em;max-width:9em;margin:0;font-family:Songti SC,serif;font-size:clamp(3rem,7vw,6.8rem);font-weight:500;line-height:.98}.hero-copy>p:not(.eyebrow){max-width:38rem;color:var(--muted);font-size:var(--text-body);line-height:1.8}.hero-actions{gap:.8rem;margin-top:2rem;display:flex}.character-montage{aspect-ratio:4/3;isolation:isolate;background:#0a0908;width:100%;position:relative;overflow:hidden;box-shadow:0 38px 90px #00000080}.character-montage:after{z-index:2;content:"";pointer-events:none;border:1px solid #efd49321;position:absolute;inset:0}.immersive-home{background:radial-gradient(at 18% 100%,#7a582f2e,#0000 43%),radial-gradient(at 76% 20%,#5c3c1d21,#0000 34%),linear-gradient(112deg,#12100d 0%,#0b0a08 58%,#100d09 100%);width:100%;max-width:none;height:100vh;min-height:660px;padding-bottom:0;position:relative;overflow:hidden}.immersive-home:before{z-index:0;content:"";filter:blur(10px);opacity:.72;pointer-events:none;background:linear-gradient(156deg,#0000 0 28%,#28221a80 28.2% 39%,#0000 39.2%),linear-gradient(204deg,#0000 0 35%,#1f1c17b8 35.2% 49%,#0000 49.2%),linear-gradient(167deg,#0000 0 48%,#171512e6 48.2% 67%,#0000 67.2%);height:52%;position:absolute;bottom:-6%;left:-8%;right:-8%}.immersive-home:after{z-index:1;content:"";filter:blur(28px);pointer-events:none;background:radial-gradient(at 18% 62%,#d8cfbe13 0 10%,#0000 35%),radial-gradient(at 52% 74%,#d8cfbe11 0 12%,#0000 38%),radial-gradient(at 84% 48%,#d8cfbe0e 0 9%,#0000 34%);animation:18s ease-in-out infinite alternate jianghu-mist;position:absolute;inset:17% -18% -22%;transform:translate(-2%)}.immersive-home>*{z-index:2;position:relative}.immersive-home .home-nav{z-index:12;width:min(1440px,100%);margin:0 auto}.immersive-hero{width:min(1440px,100%);min-height:calc(100vh - 78px);margin:0 auto;position:relative}.immersive-home .poster-montage{width:min(1080px,78vw);box-shadow:none;background:0 0;position:absolute;top:50%;left:clamp(-5rem,-3vw,-1rem);overflow:visible;transform:translateY(-50%);-webkit-mask-image:linear-gradient(#0000 0,#000 7% 91%,#0000 100%);mask-image:linear-gradient(#0000 0,#000 7% 91%,#0000 100%)}.immersive-home .poster-montage:before,.immersive-home .poster-montage:after{display:none}.poster-figure{opacity:.94;height:auto;image-rendering:pixelated;filter:saturate(.76)brightness(.94)contrast(1.02)drop-shadow(0 18px 22px #0000005c);display:block;position:absolute}.poster-figure.figure-0{width:48.5938%;top:0;left:50.7813%}.poster-figure.figure-1{width:45.1563%;top:17.7083%;left:9.84375%}.poster-figure.figure-2{width:44.5313%;top:34.1667%;left:43.2813%}.poster-figure.figure-3{width:54.5313%;top:0;left:0}.poster-figure.figure-4{width:57.5%;top:34.5833%;left:12.8125%}.poster-figure.figure-5{width:44.8438%;top:1.66667%;left:37.5%}.poster-figure.figure-0,.poster-figure.figure-3,.poster-figure.figure-5{z-index:1}.poster-figure.figure-1,.poster-figure.figure-2{z-index:2}.poster-figure.figure-4{z-index:3}.immersive-actions{z-index:9;flex-direction:column;align-items:stretch;gap:.8rem;width:220px;padding:1.2rem 0;display:flex;position:absolute;top:50%;right:clamp(0rem,4vw,4rem);transform:translateY(-50%)}.immersive-actions:before{content:"";background:linear-gradient(90deg,#0000,#d4a84e75);width:min(330px,100%);height:1px;position:absolute;top:0;right:0}.immersive-actions .button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;min-height:48px}.immersive-home>.release-log-layer{z-index:100;color:#e9dfcc;isolation:isolate;background:radial-gradient(circle at 9% 12%,#9b672a26,#0000 24rem),radial-gradient(circle at 88% 78%,#6a2a2021,#0000 28rem),linear-gradient(118deg,#15120e 0%,#0b0a08 58%,#110d0a 100%);flex-direction:column;min-width:320px;height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.release-log-layer:before{z-index:-1;content:"";opacity:.22;pointer-events:none;background-image:linear-gradient(#e8d3aa06 1px,#0000 1px),linear-gradient(90deg,#e8d3aa05 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.release-log-layer:after{z-index:-1;content:"江 湖";color:#d4a84e07;letter-spacing:.5em;text-align:center;pointer-events:none;border:1px solid #d4a84e14;border-radius:50%;width:31rem;height:31rem;font:800 7rem/31rem Songti SC,serif;position:absolute;bottom:-9rem;right:-5rem;transform:rotate(-14deg)}.release-log-header{min-height:112px;padding:max(1.35rem, env(safe-area-inset-top)) max(clamp(1.25rem, 5vw, 5rem), env(safe-area-inset-right)) 1.35rem max(clamp(1.25rem, 5vw, 5rem), env(safe-area-inset-left));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#09080675;border-bottom:1px solid #e8d3aa29;flex:none;justify-content:space-between;align-items:center;gap:2rem;display:flex}.release-log-heading{align-items:center;gap:1rem;min-width:0;display:flex}.release-log-heading .eyebrow{font-size:var(--text-caption);margin-bottom:.2rem}.release-log-heading h1{color:#f0e6d3;letter-spacing:.04em;margin:0;font:500 clamp(1.75rem,3.2vw,2.65rem)/1.05 Songti SC,serif}.release-log-seal{color:#e5a18c;width:48px;height:48px;font:700 var(--text-title-sm) "Songti SC", serif;background:#8b2b2338;border:1px solid #e1866e94;flex:none;place-items:center;display:grid;transform:rotate(-4deg)}.release-log-close{min-height:42px;color:var(--muted);cursor:pointer;background:#ffffff06;border:1px solid #e8d3aa33;border-radius:999px;flex:none;align-items:center;gap:.7rem;padding:.55rem .65rem .55rem .9rem;display:flex}.release-log-close span{font-size:var(--text-label);letter-spacing:.12em}.release-log-close b{width:26px;height:26px;color:var(--ink);font-size:var(--text-body);background:#ffffff12;border-radius:50%;place-items:center;font-weight:400;line-height:1;display:grid}.release-log-close:hover,.release-log-close:focus-visible{color:var(--gold-soft);border-color:#efd493b8;outline:none}.release-log-scroll{overscroll-behavior:contain;scrollbar-color:#d4a84e6b transparent;min-height:0;overflow:hidden auto}.release-log-intro,.release-log-list,.release-log-footer{width:min(1080px,100% - 3rem);margin-left:auto;margin-right:auto}.release-log-intro{justify-content:space-between;align-items:end;gap:2rem;padding:clamp(2rem,5vw,4.5rem) 0 clamp(1.8rem,4vw,3.2rem);display:flex}.release-log-intro p{color:#c9beaa;max-width:46rem;margin:0;font:clamp(1rem,1.5vw,1.2rem)/1.9 Songti SC,serif}.release-log-list{counter-reset:release-entry;margin-top:0;margin-bottom:0;padding:0;list-style:none}.release-entry{border-top:1px solid #e8d3aa21;grid-template-columns:minmax(8rem,.28fr) minmax(0,1fr);gap:clamp(1.5rem,5vw,5.5rem);padding:clamp(2rem,4vw,3.5rem) 0;display:grid;position:relative}.release-entry:before{content:"";background:linear-gradient(90deg, var(--gold), transparent);width:5.5rem;height:5px;position:absolute;top:-3px;left:0}.release-entry-date{flex-direction:column;align-items:flex-start;gap:.55rem;padding-top:.2rem;display:flex}.release-entry-date>span{color:var(--gold);font:500 var(--text-title-sm)/1 ui-monospace, SFMono-Regular, Menlo, monospace;letter-spacing:-.04em}.release-entry-date small{color:#7f776a;font-size:var(--text-caption);letter-spacing:.08em;border:1px solid #e8d3aa1f;padding:.25rem .48rem}.release-entry:first-child .release-entry-date small{color:var(--gold-soft);background:#d4a84e12;border-color:#d4a84e57}.release-entry article{min-width:0}.release-entry h2{color:#eee3ce;margin:0;font:500 clamp(1.45rem,2.7vw,2.2rem)/1.25 Songti SC,serif}.release-entry article>p{color:#a69d8e;max-width:50rem;font-size:var(--text-body-sm);margin:.65rem 0 1.35rem;line-height:1.75}.release-entry ul{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.release-entry ul li{color:#c9beaa;font-size:var(--text-body-sm);padding-left:1.4rem;line-height:1.7;position:relative}.release-entry ul li:before{content:"";background:#936f34;width:.45rem;height:1px;position:absolute;top:.7em;left:0}.release-log-footer{padding:3rem 0 max(4rem, env(safe-area-inset-bottom));border-top:1px solid #e8d3aa21;justify-content:space-between;align-items:center;gap:2rem;margin-top:1rem;display:flex}.release-log-footer span{color:#e1866eb8;font:700 var(--text-label) "Songti SC", serif;letter-spacing:.28em}.release-log-footer p{color:#777064;font-size:var(--text-caption);text-align:right;margin:0;line-height:1.7}@media (width<=640px){.release-log-header{gap:.8rem;min-height:88px;padding-bottom:1rem}.release-log-seal{width:38px;height:38px;font-size:var(--text-body)}.release-log-heading{gap:.7rem}.release-log-heading .eyebrow{text-overflow:ellipsis;white-space:nowrap;max-width:12rem;font-size:.65rem;overflow:hidden}.release-log-heading h1{font-size:1.5rem}.release-log-close{min-height:38px;padding:.35rem}.release-log-close span{display:none}.release-log-close b{background:0 0}.release-log-intro,.release-log-list,.release-log-footer{width:min(100% - 2rem,1080px)}.release-log-intro{padding:1.7rem 0 1.5rem;display:block}.release-log-intro p{font-size:var(--text-body-sm);line-height:1.8}.release-entry{grid-template-columns:1fr;gap:1.1rem;padding:2rem 0 2.4rem}.release-entry-date{flex-direction:row;align-items:center;gap:.8rem}.release-entry h2{font-size:1.45rem}.release-entry article>p{margin-bottom:1rem}.release-log-footer{padding-top:2.2rem;display:block}.release-log-footer p{text-align:left;margin-top:.8rem}}.shell-load-error{color:#e8a895;font-size:var(--text-caption);line-height:1.5}.save-slot-backdrop{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#040302db;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.save-slot-picker{flex-direction:column;width:min(980px,100%);max-height:min(88vh,840px);padding:0;display:flex;position:relative;overflow:hidden}.save-slot-picker>header{border-bottom:1px solid var(--line);background:#181511f5;flex:none;padding:1.35rem 4.5rem 1.1rem 1.5rem;position:relative}.save-slot-picker>header .inspector-close{top:50%;right:1.4rem;transform:translateY(-50%)}.save-slot-picker h2{margin:0;font:500 clamp(1.8rem,4vw,2.45rem)/1.08 Songti SC,serif}.save-slot-picker header p:not(.eyebrow){color:var(--muted);font-size:var(--text-label);margin:.4rem 0 0}.save-slot-body{scrollbar-width:thin;min-height:0;padding:0 1.5rem 1.5rem;overflow:auto}.save-slot-section{padding-top:1.1rem}.save-slot-section+.save-slot-section{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:1.1rem}.save-slot-section-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.save-slot-section-heading>div{gap:.15rem;display:grid}.save-slot-section-heading h3{font:var(--text-emphasis) "Songti SC", serif;margin:0}.save-slot-section-heading p{color:var(--muted);font-size:var(--text-caption);margin:0}.save-slot-section-heading span{color:var(--muted);font-size:var(--text-caption)}.save-slot-grid{gap:.55rem;padding-top:.65rem;display:grid}.automatic-save-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.independent-save-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.save-slot-card{border:1px solid var(--line);background:#08070547;min-width:0}.save-slot-card button{font:inherit}.save-slot-card.automatic{background:linear-gradient(145deg,#42879012,#0807054d);border-color:#5ca7ae47}.save-slot-card.automatic.empty{opacity:.48;background:0 0;border-color:#5ca7ae1c}.save-slot-card.independent.empty{background:0 0;border-color:#ecdec212}.save-slot-card.automatic:first-child.occupied{border-color:#75c7cd9e;box-shadow:inset 0 0 0 1px #75c7cd1a}.automatic-save-hit{width:100%;min-height:138px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .7rem;padding:.85rem .9rem;display:grid;position:relative}.automatic-save-hit:disabled{cursor:default;opacity:.52}.automatic-save-hit:not(:disabled):hover,.automatic-save-hit:not(:disabled):focus-visible,.independent-save-hit:is(button):hover,.independent-save-hit:is(button):focus-visible{outline-offset:-1px;background:#d4a84e0e;outline:1px solid #efd4936b}.automatic-save-rank{color:#9ed7dc;font-size:var(--text-caption);letter-spacing:.08em;background:#529ba324;border-radius:999px;justify-self:start;padding:.16rem .42rem;font-weight:800}.save-slot-technical-label{color:var(--muted);font-size:var(--text-caption);align-self:center}.automatic-save-hit>strong{color:var(--gold-soft);font:var(--text-title-sm) "Songti SC", serif;text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;align-self:end;overflow:hidden}.save-slot-location{color:var(--ink);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;overflow:hidden}.save-slot-time{color:var(--muted);font-size:var(--text-caption);white-space:nowrap;align-self:end}.save-slot-action{color:var(--gold);font-size:var(--text-caption);white-space:nowrap;place-self:end;font-weight:750}.save-slot-empty-note{color:var(--muted);font-size:var(--text-caption);grid-column:1/-1;place-self:center}.independent-save-hit{width:100%;min-height:76px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-rows:1fr auto;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:.1rem .7rem;padding:.7rem .8rem;display:grid}.independent-save-hit:is(button){cursor:pointer}.independent-save-hit.empty{min-height:62px;color:var(--muted);opacity:.42;background:0 0}.independent-save-hit.empty:is(button){transition:opacity .14s,background .14s}.independent-save-hit.empty:is(button):hover,.independent-save-hit.empty:is(button):focus-visible{opacity:.82;background:#ffffff05}.independent-save-number{color:var(--gold);font:var(--text-body) ui-monospace, monospace;grid-row:1/3}.independent-save-main{gap:.15rem;min-width:0;display:grid}.independent-save-main strong{color:var(--gold-soft);font:var(--text-body) "Songti SC", serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.independent-save-main small{color:var(--muted);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.independent-save-hit>.save-slot-time{grid-column:2}.independent-save-hit>.save-slot-action{grid-area:1/3/3;align-self:center}.independent-save-hit.empty .independent-save-number{color:var(--muted);font-size:var(--text-body-sm)}.independent-save-hit.empty .independent-save-main strong{color:var(--muted);font:var(--text-caption) system-ui, sans-serif;font-weight:500}.independent-save-hit.empty .save-slot-action{color:var(--muted);font-weight:500}.overwrite-confirmation.compact{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:76px;padding:.55rem .7rem;display:grid}.overwrite-confirmation.compact>p{color:#e8b4a5;font-size:var(--text-caption);margin:0;line-height:1.5}.overwrite-confirmation.compact>div{gap:.35rem;display:flex}.overwrite-confirmation.compact .button{min-height:34px;font-size:var(--text-caption);padding:.4rem .55rem}@media (width<=720px){.save-slot-picker{max-height:calc(100vh - 1rem)}.save-slot-picker>header{padding:1rem 3.6rem .9rem 1rem}.save-slot-picker>header .inspector-close{right:.8rem}.save-slot-body{padding:0 1rem 1rem}.automatic-save-grid,.independent-save-grid{grid-template-columns:1fr}.automatic-save-hit{min-height:116px}.overwrite-confirmation.compact{grid-template-columns:1fr}.overwrite-confirmation.compact>div{justify-content:flex-end}}@keyframes jianghu-mist{0%{transform:translate(-2%)scale(1)}to{transform:translate(3%,-2%)scale(1.04)}}@media (prefers-reduced-motion:reduce){.immersive-home:after{animation:none}}.map-showcase{border-radius:3px;min-height:430px;position:relative;overflow:hidden}.map-showcase img{object-fit:cover;width:100%;height:430px;image-rendering:pixelated;filter:saturate(.88)contrast(1.04)}.map-showcase:after{content:"";background:linear-gradient(#0000 54%,#080705ed);position:absolute;inset:0}.map-showcase>div{z-index:1;display:grid;position:absolute;bottom:1.4rem;left:1.5rem;right:1.5rem}.map-showcase span,.map-showcase small{color:var(--muted)}.map-showcase strong{font-family:serif;font-size:var(--text-display-sm);font-weight:500}.setup{gap:2rem;margin-top:1.25rem;padding:clamp(1.2rem,3vw,2.4rem);display:grid}.setup-heading h2{font-family:serif;font-size:var(--text-display-sm);margin:0;font-weight:500}.setup-shell{padding-bottom:5rem}.setup-field>span{color:var(--muted);font-size:var(--text-body-sm);margin-bottom:.8rem;display:block}.choice-grid{gap:.65rem;display:grid}.choice-grid.maps{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.choice-grid.characters{grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}.choice-grid button{border:1px solid var(--line);cursor:pointer;text-align:left;background:#15130f;border-radius:3px;padding:0;overflow:hidden}.choice-grid button.selected{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.choice-grid.maps img{object-fit:cover;width:100%;height:clamp(140px,16vw,220px);image-rendering:pixelated;display:block}.choice-grid button span,.choice-grid button small{padding:.55rem .65rem;display:block}.choice-grid button small{color:var(--muted);padding-top:0}.choice-grid.characters button{aspect-ratio:169/122;min-height:0;box-shadow:none;background:#0f0c09;border-width:2px;display:block}.choice-grid.characters button.mode-0{border-color:var(--gold);box-shadow:0 0 0 1px #efd493f2,0 0 0 3px #16130feb,0 0 18px #d4a84e6b}.choice-grid.characters button.character-choice{position:relative}.choice-grid.characters .character-portrait{object-fit:cover;object-position:center top;width:100%;height:100%;image-rendering:pixelated;display:block}.choice-grid.characters button.mode-3 .character-portrait{opacity:.28;filter:grayscale()}.choice-grid.characters button.mode-3{background:#090806;border-color:#ecdec214}.choice-grid.characters .character-control-mode{width:2rem;height:2rem;color:var(--ink);font-size:var(--text-caption);letter-spacing:0;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080705e6;border:1.5px solid #ecdec259;border-radius:50%;place-items:center;padding:0;font-weight:800;line-height:1;display:grid;position:absolute;bottom:.32rem;left:.32rem;right:auto;box-shadow:0 2px 8px #00000073}.choice-grid.characters button.mode-0 .character-control-mode{color:#17110a;background:var(--gold);border-color:#efd493f2;box-shadow:0 0 0 1px #16130f8c,0 2px 10px #d4a84e73}.setup-actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:1.5rem;padding-top:1.2rem;display:flex}.setup-actions>div{margin-right:auto;display:grid}.setup-actions span{color:var(--muted);font-size:var(--text-caption)}.setup-actions strong{color:var(--gold-soft);font:var(--text-emphasis) "Songti SC", serif}.setup-actions .button{min-width:150px}.game-shell{width:100%;max-width:none;height:auto;min-height:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);--hud-bottom-clearance:124px;position:fixed;inset:0;overflow:hidden}.pwa-notice{z-index:80;right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));left:max(1rem, env(safe-area-inset-left));width:fit-content;max-width:min(42rem,100vw - 2rem);min-height:48px;color:var(--gold-soft);background:#120f0cf5;border:1px solid #d4a84e8c;border-radius:6px;align-items:center;gap:.8rem;margin-left:auto;padding:.65rem .75rem .65rem 1rem;display:flex;position:fixed;box-shadow:0 12px 36px #0006}.pwa-notice.error{top:max(1rem, env(safe-area-inset-top));color:#ffd7d1;border-color:#e1786ebf;bottom:auto}.pwa-notice .button{white-space:nowrap;min-height:34px;padding:.45rem .75rem}.pwa-notice-close{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:1.35rem}.game-layout{width:100%;height:100%;position:relative}.board-frame{border-width:0;min-height:0;position:absolute;inset:0;overflow:hidden}.board-canvas{width:100%;height:100%}.board-canvas canvas{cursor:grab;width:100%;height:100%;image-rendering:pixelated;touch-action:none;-webkit-user-select:none;user-select:none;display:block}.board-caption{z-index:4;right:1rem;bottom:calc(var(--hud-bottom-clearance) + .75rem);border:1px solid var(--line);max-width:min(390px,100% - 2rem);color:var(--gold-soft);font-size:var(--text-label);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#090806e6;border-radius:3px;gap:.15rem;padding:.55rem .8rem;display:grid;position:absolute}.board-caption.detail{border-color:#d4a84e8c;gap:.35rem;width:300px;padding:.75rem .85rem}.board-caption.detail>strong{margin-bottom:.35rem;display:block}.board-caption-meta{color:var(--gold);font-size:var(--text-caption);letter-spacing:.08em;justify-content:space-between;gap:1rem;margin-bottom:.2rem;display:flex}.board-caption-meta small{color:var(--muted);font-size:inherit;letter-spacing:0}.board-caption.detail>strong{color:var(--gold-soft);font:var(--text-body) "Songti SC", serif}.board-caption.detail>p{color:#b8ad96;font-size:var(--text-caption);margin:0;line-height:1.5}.board-caption.detail dl{border-top:1px solid #ffffff14;flex-wrap:wrap;gap:.25rem .65rem;margin:.1rem 0 0;padding-top:.4rem;display:flex}.board-caption.detail dl div{font-size:var(--text-caption);gap:.25rem;display:flex}.board-caption.detail dt{color:var(--muted)}.board-caption.detail dd{color:var(--ink);margin:0}.hud-top-strip{z-index:3;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex;position:absolute;inset:.9rem .9rem auto}.hud-top-strip>*{pointer-events:auto}.hud-character-card{max-width:min(22rem,100vw - 7.5rem);color:inherit;text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f0c08db;border:1px solid #d4a84e6b;border-radius:4px;grid-template-columns:auto minmax(9.5rem,auto);align-items:start;gap:.3rem .7rem;padding:.35rem;transition:border-color .14s,box-shadow .14s,background .14s;display:grid;box-shadow:0 16px 44px #00000085}.hud-character-card:hover{background:#16120ceb;border-color:#d4a84eb8;box-shadow:0 16px 44px #00000094,0 0 0 1px #d4a84e2e}.hud-character-card:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.portrait{background:#17130e;border:1px solid #d4a84e57;line-height:0;overflow:hidden}.hud-character-card .portrait{align-self:start;width:fit-content}.character-portrait{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;display:block}.character-portrait.info{object-fit:unset;width:104px;height:128px}.hud-character-card .character-portrait.info{width:78px;height:96px}.hud-character-stats{align-content:center;gap:.08rem;min-width:0;display:grid}.stat{font-size:var(--text-body-sm);grid-template-columns:2.15em minmax(0,1fr) auto;align-items:center;gap:.35rem .4rem;margin:.08rem 0;display:grid}.stat span{color:var(--muted);white-space:nowrap}.stat progress{width:100%;min-width:0;height:.55rem;accent-color:var(--red)}.stat.inner-power-stat progress{accent-color:var(--inner-power)}.stat strong{color:var(--gold-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.money-stat{border-top:1px solid var(--line);margin-top:.2rem;padding-top:.22rem}.money-stat strong{font-size:var(--text-body);text-align:right;grid-column:2/4}.player-legal-status{color:#f1cf85;font-size:var(--text-caption);background:#9f2f2733;border:1px solid #9f2f27b8;border-radius:3px;grid-column:1/-1;margin:0;padding:.4rem .55rem;line-height:1.4}.player-legal-status.jailed:before{content:"囚 ";color:#e56b5e;font-weight:900}.player-legal-status.clamped{color:#f3d991;background:#9a6b1c33;border-color:#be913bb8}.player-legal-status.clamped:before{content:"夹 ";color:#e8a94c;font-weight:900}.hud-system-bar{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f0c08d1;border-radius:4px;align-items:center;gap:.6rem;padding:.4rem .55rem;display:flex}.hud-date{align-items:baseline;gap:.4rem;display:flex}.hud-date span{color:var(--muted);font-size:var(--text-caption)}.hud-date strong{color:var(--gold-soft);font:var(--text-body) "Songti SC", serif}.my-warrant-status{border-left:2px solid #c44b3f;gap:.06rem;padding-left:.5rem;line-height:1.25;display:grid}.my-warrant-status b{color:#ee8a7f;font-size:var(--text-caption);letter-spacing:.04em}.my-warrant-status small{color:#aa9b83;font-size:var(--text-caption);white-space:nowrap}.hud-exit{border:1px solid var(--line);color:var(--muted);font-size:var(--text-label);cursor:pointer;background:0 0;border-radius:3px;padding:.4rem .6rem}.hud-exit:hover:not(:disabled){border-color:var(--gold);color:var(--ink)}.hud-exit:disabled{opacity:.35;cursor:not-allowed}.action-dock{z-index:3;padding:0 clamp(.7rem,2.5vw,1.4rem);padding-bottom:max(.7rem, env(safe-area-inset-bottom));pointer-events:none;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex;position:absolute;bottom:0;left:0;right:0}.action-dock:before{z-index:-1;content:"";background:linear-gradient(#0000,#080604a8);height:calc(100% + 4rem);position:absolute;bottom:0;left:0;right:0}.action-island{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;background:#0f0c08cc;border:1px solid #d4a84e42;border-radius:6px;align-items:center;gap:.7rem;min-width:0;padding:.4rem .5rem;display:flex;box-shadow:0 14px 40px #00000080}.action-bar-entries{grid-auto-flow:column;gap:.4rem;display:grid}.action-bar-entry{border:1px solid var(--line);min-width:60px;color:var(--ink);cursor:pointer;background:#ffffff08;border-radius:4px;gap:.1rem;padding:.3rem .55rem;display:grid}.action-bar-entry:hover{border-color:var(--gold);background:#d4a84e17}.action-bar-entry:disabled{opacity:.38;cursor:not-allowed}.gathering-market-entry{background:linear-gradient(#7d4a1b33,#ffffff05);border-color:#d4a84e7a}.action-bar-entry strong{font:var(--text-body) "Songti SC", serif}.action-bar-entry small{color:var(--muted);font:var(--text-caption) ui-monospace, monospace;font-variant-numeric:tabular-nums;white-space:nowrap}.action-bar-items{scrollbar-width:thin;scrollbar-color:#d4a84e47 transparent;gap:.4rem;min-width:0;display:flex;position:relative;overflow-x:auto}.action-bar-items::-webkit-scrollbar{height:3px}.action-bar-items::-webkit-scrollbar-track{background:0 0;margin-inline:.15rem}.action-bar-items::-webkit-scrollbar-thumb{background:#d4a84e47;border-radius:999px}.action-bar-items:hover::-webkit-scrollbar-thumb{background:#d4a84e7a}.action-bar-items:focus-within::-webkit-scrollbar-thumb{background:#d4a84e7a}.action-bar-items:hover{scrollbar-color:#d4a84e7a transparent}.action-bar-items-empty{color:var(--muted);font-size:var(--text-caption);white-space:nowrap;margin:0}.action-bar-item{cursor:pointer;background:#20251be6;border:1px solid #d4a84e8c;border-radius:4px;flex:none;gap:.1rem;width:62px;padding:.25rem .2rem .22rem;display:grid;position:relative}.action-bar-item:hover:not(.blocked),.action-bar-item:focus-visible:not(.blocked){border-color:var(--gold-soft);background:#292d20f2}.action-bar-item.blocked{border-color:var(--line);cursor:help}.action-bar-item.blocked .action-bar-item-icon,.action-bar-item.blocked .action-bar-item-name{opacity:.42}.action-bar-item.blocked:hover,.action-bar-item.blocked:focus-visible{border-color:#d4a84e73}.action-bar-item-icon{height:28px;image-rendering:pixelated;background-position:50%;background-repeat:no-repeat;background-size:contain;display:block}.action-bar-item.equip{background:#2d1f13eb;border-color:#b88446b8}.action-bar-item-action{color:#f0d58e;background:#2c180be6;border:1px solid #efd49359;border-radius:2px;padding:.05rem .18rem;font-size:.55rem;line-height:1.25;position:absolute;top:2px;right:2px}.action-bar-item-name{color:var(--gold-soft);font-size:var(--text-caption);text-align:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.action-bar-item-tip-reason{color:#ee8a7f;font-size:var(--text-caption);margin:.15rem 0 0;line-height:1.45}.action-bar-reason{border:1px solid var(--gold);color:var(--ink);font-size:var(--text-caption);white-space:nowrap;background:#0c0a07fa;border-radius:3px;margin:0;padding:.4rem .6rem;position:absolute;bottom:calc(100% + .5rem);left:0;box-shadow:0 12px 30px #00000080}.action-bar-movement{justify-content:flex-end;align-self:stretch}.action-bar-status{text-align:right;justify-items:end;gap:.12rem;min-width:120px;display:grid}.action-bar-status strong{color:var(--gold-soft);font:var(--text-body-sm) ui-monospace, monospace}.action-bar-status small{color:var(--muted);font:var(--text-caption) ui-monospace, monospace}.character-panel-backdrop{z-index:14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040302cc;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.character-panel{width:min(980px,100%);max-height:calc(100vh - 2rem);padding:clamp(1.2rem,3vw,2rem);position:relative;overflow:hidden auto}.character-panel>header{border-bottom:1px solid var(--line);align-items:end;gap:1.5rem;padding-right:2rem;display:flex}.character-panel-identity{gap:.35rem;margin-bottom:1rem;display:grid}.character-faction{color:var(--muted);font-size:var(--text-label);margin:0}.character-rank{text-align:right;grid-template-columns:auto minmax(190px,240px);align-items:end;gap:1.25rem;margin:0 0 1rem auto;display:grid}.character-rank>div:first-child{display:grid}.character-rank span,.character-rank small{color:var(--muted);font-size:var(--text-caption)}.character-rank strong{color:var(--gold-soft);font:var(--text-title) ui-monospace, monospace}.character-experience{text-align:left;gap:.45rem;display:grid}.character-experience span{justify-content:space-between;gap:1rem;display:flex}.character-experience progress,.character-resource progress{appearance:none;background:#ffffff12;border:0;border-radius:0;width:100%;height:7px;overflow:hidden}.character-experience progress::-webkit-progress-bar{background:#ffffff12}.character-resource progress::-webkit-progress-bar{background:#ffffff12}.character-experience progress::-webkit-progress-value{background:var(--gold)}.character-experience progress::-moz-progress-bar{background:var(--gold)}.character-summary{grid-template-columns:1fr .8fr 1.25fr;gap:.7rem;margin:1rem 0;display:grid}.character-stat-group{border:1px solid var(--line);background:#0807054d;min-width:0}.character-summary dl{background:var(--line);gap:1px;height:100%;margin:0;display:grid}.trait-group dl{grid-template-columns:repeat(3,1fr)}.martial-group dl{grid-template-columns:repeat(2,1fr)}.character-summary dl div{background:#15120e;align-content:center;gap:.3rem;min-width:0;padding:.65rem .75rem;display:grid}.character-summary dt{color:var(--muted);font-size:var(--text-caption)}.character-summary dd{color:var(--ink);font:var(--text-body) ui-monospace, monospace;margin:0;display:grid}.character-summary dd small{min-height:1em;color:var(--gold);font:var(--text-caption) system-ui, sans-serif;white-space:nowrap}.attribute-with-tip{cursor:help;outline:none;transition:background .14s,box-shadow .14s;position:relative}.attribute-with-tip:before{z-index:7;content:"";opacity:0;pointer-events:none;border-bottom:6px solid #d4a84e;border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0;transition:opacity .12s,transform .12s;position:absolute;bottom:-.55rem;left:50%;transform:translate(-50%,4px)}.attribute-with-tip:after{z-index:6;border:1px solid var(--gold);width:min(250px,76vw);color:var(--ink);content:attr(data-tip);font:var(--text-caption)/1.65 system-ui, sans-serif;text-align:left;opacity:0;pointer-events:none;background:#0c0a07fa;padding:.65rem .75rem;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + .55rem);left:50%;transform:translate(-50%,4px);box-shadow:0 14px 36px #00000085}.attribute-with-tip:hover,.attribute-with-tip:focus{z-index:5;background:#d4a84e12;box-shadow:inset 0 0 0 1px #d4a84e61}.attribute-with-tip:hover:before,.attribute-with-tip:hover:after,.attribute-with-tip:focus:before,.attribute-with-tip:focus:after{opacity:1;transform:translate(-50%)}.martial-group dl>:nth-child(2n):before{left:auto;right:1.25rem;transform:translateY(4px)}.martial-group dl>:nth-child(2n):after{left:auto;right:.5rem;transform:translateY(4px)}.martial-group dl>:nth-child(2n):is(:hover,:focus):before,.martial-group dl>:nth-child(2n):is(:hover,:focus):after{transform:none}.character-resource-grid{height:100%;display:grid}.character-resource{grid-template-columns:1fr auto;align-content:center;gap:.45rem .7rem;padding:.65rem .75rem;display:grid}.character-resource+.character-resource{border-top:1px solid var(--line)}.character-resource>span{color:var(--muted);font-size:var(--text-caption)}.character-resource strong{font:var(--text-body) ui-monospace, monospace}.character-resource strong small{color:var(--muted);font-size:var(--text-caption)}.character-resource progress{grid-column:1/-1}.character-resource progress::-webkit-progress-value{background:#9c3932}.character-resource progress::-moz-progress-bar{background:#9c3932}.character-resource.inner-power progress::-webkit-progress-value{background:var(--inner-power)}.character-resource.inner-power progress::-moz-progress-bar{background:var(--inner-power)}.character-panel-portrait{flex:none;margin:0}.character-tabs{gap:.4rem;margin:1rem 0 .8rem;display:flex}.character-tabs>button{border:1px solid var(--line);color:var(--muted);font:var(--text-body) "Songti SC", serif;cursor:pointer;background:0 0;border-radius:3px;align-items:baseline;gap:.45rem;padding:.5rem 1rem;display:flex}.character-tabs>button small{font:var(--text-caption) ui-monospace, monospace}.character-tabs>button:hover{color:var(--ink);border-color:#d4a84e9e}.character-tabs>button[aria-selected=true]{border-color:var(--gold);color:var(--gold-soft);background:#d4a84e1a}.character-columns{align-items:start;display:grid}.character-columns>section{border:1px solid var(--line);min-width:0;padding:1rem}.panel-section-heading{justify-content:space-between;align-items:baseline;margin:.4rem 0 .7rem;display:flex}.panel-section-heading h3{font:var(--text-emphasis) "Songti SC", serif;margin:0}.panel-section-heading span{color:var(--muted);font-size:var(--text-caption)}.equipment-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin-bottom:1.4rem;display:grid}.skill-list{gap:.35rem;margin-bottom:1.4rem;display:grid}.equipment-list button,.inventory-list button,.skill-list button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;padding:.35rem .55rem}.equipment-list button:disabled,.inventory-list button:disabled,.skill-list button:disabled{opacity:.3;cursor:not-allowed}.inventory-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;margin-bottom:1.4rem;display:grid}.inventory-list>p{grid-column:1/-1}.inventory-item{border:1px solid var(--line);cursor:help;background:#20251b;outline:none;place-items:center;min-width:0;height:88px;transition:border-color .13s,background .13s;display:grid;position:relative}.inventory-item-icon{image-rendering:pixelated;background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute;inset:.25rem}.inventory-slot-number{color:var(--gold-soft);font:var(--text-caption) ui-monospace, monospace;background:#080705c7;padding:.08rem .2rem;position:absolute;top:.2rem;left:.25rem}.inventory-item-tooltip{z-index:9;border:1px solid var(--gold);opacity:0;pointer-events:none;background:#0c0a07fa;gap:.25rem;width:250px;padding:.65rem .75rem;transition:opacity .12s,transform .12s;display:grid;position:absolute;bottom:calc(100% + .55rem);left:50%;transform:translate(-50%,4px);box-shadow:0 14px 36px #00000085}.inventory-item-tooltip:after{border-top:6px solid var(--gold);content:"";border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0;position:absolute;top:100%;left:50%;transform:translate(-50%)}.inventory-item-tooltip strong{color:var(--gold-soft);font-size:var(--text-label)}.inventory-item-tooltip p{color:var(--muted);font-size:var(--text-caption);margin:0;line-height:1.55}.item-description{gap:.35rem;min-width:0;display:grid}.item-description-flavor,.item-description-effect{color:var(--muted);font-size:var(--text-caption);margin:0;line-height:1.55}.item-description-effect{color:#d8c48a}.item-description-effect-label{color:var(--gold-soft);letter-spacing:.06em;vertical-align:baseline;border:1px solid #d4a84e73;margin-right:.35em;padding:.05em .35em;font-size:.92em;display:inline-block}.shop-family-item-tip .item-description-flavor,.shop-family-item-tip .item-description-effect{font:.95cqw/1.55 system-ui,sans-serif}.shop-family-item-tip .item-description-effect{color:#d8c48a}.shop-family-item-tip .item-description-effect-label{font-size:.85cqw}.shop-purchase-copy .item-description{margin:0 0 .55rem}.shop-purchase-copy .item-description-flavor,.shop-purchase-copy .item-description-effect{font-size:1.05cqw}.action-bar-item-tip.inventory-item-tooltip{z-index:12;opacity:1;pointer-events:none;position:fixed;bottom:auto;left:auto}.action-bar-item-tip.inventory-item-tooltip:after{left:var(--tip-arrow-left,50%)}.inventory-item:nth-child(5n+1) .inventory-item-tooltip{left:0;transform:translateY(4px)}.inventory-item:nth-child(5n+1) .inventory-item-tooltip:after{left:2.2rem}.inventory-item:nth-child(5n) .inventory-item-tooltip{left:auto;right:0;transform:translateY(4px)}.inventory-item:nth-child(5n) .inventory-item-tooltip:after{left:auto;right:2.2rem;transform:none}.inventory-item-actions{opacity:0;transition:opacity .12s,transform .12s;display:flex;position:absolute;bottom:.22rem;left:.22rem;right:.22rem;transform:translateY(3px)}.inventory-item-actions:empty{display:none}.inventory-item-actions button{border-color:var(--gold);min-width:0;color:var(--gold-soft);font-size:var(--text-caption);background:#0c0a07eb;flex:1;padding:.28rem .15rem}.inventory-item:hover,.inventory-item:focus,.inventory-item:focus-within{z-index:8;border-color:var(--gold);background:#292d20}.inventory-item:hover .inventory-item-tooltip,.inventory-item:focus .inventory-item-tooltip,.inventory-item:focus-within .inventory-item-tooltip{opacity:1;transform:translate(-50%)}.inventory-item:nth-child(5n+1):hover .inventory-item-tooltip,.inventory-item:nth-child(5n+1):focus .inventory-item-tooltip,.inventory-item:nth-child(5n+1):focus-within .inventory-item-tooltip,.inventory-item:nth-child(5n):hover .inventory-item-tooltip,.inventory-item:nth-child(5n):focus .inventory-item-tooltip,.inventory-item:nth-child(5n):focus-within .inventory-item-tooltip{transform:translate(0)}.inventory-item:hover .inventory-item-actions,.inventory-item:focus .inventory-item-actions,.inventory-item:focus-within .inventory-item-actions{opacity:1;transform:translateY(0)}.equipment-item{height:116px}.equipment-item .inventory-item-icon{inset:.85rem .3rem 1.35rem}.equipment-slot-label{z-index:2;color:var(--gold-soft);font-size:var(--text-caption);background:#080705d1;padding:.08rem .28rem;position:absolute;top:.25rem;left:.3rem}.equipment-item-name{z-index:2;color:var(--ink);font-size:var(--text-caption);text-align:center;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(#0000,#080705e6 52%);padding:.62rem .35rem .24rem;font-weight:600;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.equipment-item:hover .equipment-item-name,.equipment-item:focus-within .equipment-item-name{opacity:0}.equipment-empty-mark{color:var(--muted);place-items:center;gap:.2rem;display:grid}.equipment-empty-mark span{color:#c8b78f80;width:2rem;height:2rem;font:var(--text-body-sm) "Songti SC", serif;border:1px dashed #c8b78f57;border-radius:50%;place-items:center;display:grid}.equipment-empty-mark small{font-size:var(--text-caption)}.equipment-item:nth-child(4n+1) .inventory-item-tooltip{left:0;transform:translateY(4px)}.equipment-item:nth-child(4n+1) .inventory-item-tooltip:after{left:2.2rem}.equipment-item:nth-child(4n) .inventory-item-tooltip{left:auto;right:0;transform:translateY(4px)}.equipment-item:nth-child(4n) .inventory-item-tooltip:after{left:auto;right:2.2rem;transform:none}.equipment-item:nth-child(4n+1):hover .inventory-item-tooltip,.equipment-item:nth-child(4n+1):focus .inventory-item-tooltip,.equipment-item:nth-child(4n+1):focus-within .inventory-item-tooltip,.equipment-item:nth-child(4n):hover .inventory-item-tooltip,.equipment-item:nth-child(4n):focus .inventory-item-tooltip,.equipment-item:nth-child(4n):focus-within .inventory-item-tooltip{transform:translate(0)}.skill-item-copy{gap:.25rem;min-width:0;display:grid}.skill-list strong{font-size:var(--text-label);font-weight:600}.skill-list small{color:var(--muted);font-size:var(--text-caption);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.inventory-list>p,.skill-list>p{color:var(--muted);font-size:var(--text-label);line-height:1.6}.skill-item{border-bottom:1px solid var(--line);cursor:help;outline:none;grid-template-columns:1fr auto;align-items:center;gap:.6rem;padding:.6rem;transition:border-color .13s,background .13s;display:grid;position:relative}.skill-item:hover,.skill-item:focus,.skill-item:focus-within{z-index:8;border-color:var(--gold);background:#d4a84e12}.skill-item:hover .skill-item-tooltip,.skill-item:focus .skill-item-tooltip,.skill-item:focus-within .skill-item-tooltip{opacity:1;transform:translate(-50%)}.skill-item-tooltip.inventory-item-tooltip{width:min(280px,70vw)}.skill-description{gap:.4rem;min-width:0;display:grid}.skill-description-flavor,.skill-description-stats,.skill-description-effect{color:var(--muted);font-size:var(--text-caption);margin:0;line-height:1.55}.skill-description-stats{white-space:pre-line;color:#d8c48a;font-variant-numeric:tabular-nums}.skill-description-effect{color:#d8c48a}.skill-list button.active{color:#17110a;background:var(--gold)}.character-panel-note{color:var(--muted);font-size:var(--text-caption);text-align:center;margin:1rem 0 0}@media (width<=760px){.character-panel>header{flex-direction:column;align-items:start}.character-panel-identity{margin-bottom:.35rem}.character-rank{width:100%;margin:-.25rem 0 1rem}.character-summary,.character-columns{grid-template-columns:1fr}}@media (hover:none){.inventory-item-actions{opacity:1;transform:none}}.inspector-close{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);font-size:var(--text-body);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;line-height:1;display:grid;position:absolute;top:.75rem;right:.75rem}.inspector-close:hover{border-color:var(--gold);color:var(--ink)}.hint{color:var(--muted);font-size:var(--text-label);margin-top:1.5rem;line-height:1.65}.ai-thinking{color:var(--muted);font-size:var(--text-label);align-items:center;gap:.55rem;display:flex}.ai-thinking span{background:var(--gold);border-radius:50%;width:8px;height:8px;animation:1.25s infinite ai-pulse;box-shadow:0 0 #d4a84e8c}@keyframes ai-pulse{70%{box-shadow:0 0 0 8px #d4a84e00}to{box-shadow:0 0 #d4a84e00}}.single-game-settings-backdrop{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040302d1;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.single-game-settings{width:min(420px,100%);max-height:calc(100vh - 2rem);padding:1.25rem 1.4rem 1.1rem;position:relative;overflow:auto}.single-game-settings>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:0 0 .85rem;display:flex}.single-game-settings>header .inspector-close{flex:none;width:1.75rem;height:1.75rem;position:static;transform:translateY(-.12em)}.single-game-settings h2{margin:0;font:500 1.75rem/1 Songti SC,serif}.single-game-settings h3{color:var(--ink);font:var(--text-body) "Songti SC", serif;margin:0;font-weight:600}.single-game-setting-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.85rem 0;display:grid}.settings-playback{gap:0;display:flex}.settings-progress-actions{gap:.45rem;display:flex}.settings-playback button,.settings-toggle{border:1px solid var(--line);min-width:2.6rem;min-height:36px;color:var(--muted);font-size:var(--text-label);cursor:pointer;background:0 0;padding:.45rem .7rem}.settings-playback button+button{border-left:0}.settings-progress-actions .button{min-height:36px;padding:.45rem .85rem}.settings-playback button:hover,.settings-toggle:hover{border-color:var(--gold);color:var(--ink)}.settings-playback button.active,.settings-toggle.active{border-color:var(--gold);color:#17110a;background:var(--gold)}.single-game-settings>footer{justify-content:flex-end;padding:.95rem 0 0;display:flex}.settings-storage-health{justify-items:end;gap:.15rem;display:grid}.settings-storage-health strong{color:var(--gold-soft);font-size:var(--text-body-sm)}.settings-storage-health small{color:var(--muted);font-size:var(--text-caption)}.settings-diagnostics-label,.settings-diagnostics-actions{gap:.2rem;display:grid}.settings-diagnostics-label small,.settings-diagnostics-actions small{color:var(--muted);font-size:var(--text-caption)}.settings-diagnostics-actions{justify-items:end}.leave-game-button{color:#e8b4a5;min-width:7.5rem;border-color:#b0483d8c!important}@media (width<=560px){.single-game-setting-row{grid-template-columns:1fr;gap:.55rem}.settings-playback,.settings-progress-actions,.settings-playback button,.settings-toggle,.leave-game-button,.settings-progress-actions .button{width:100%}.settings-playback button,.settings-progress-actions .button{flex:1}.settings-diagnostics-actions{justify-items:stretch}}.movement-selector{flex-direction:column;align-items:stretch;gap:.4rem;width:260px;min-width:0;display:flex}.movement-method-picker{width:100%;min-width:0;display:flex;position:relative}.movement-method-trigger{width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;background:#ffffff09;border:1px solid #d4a84e6b;border-radius:4px;justify-content:space-between;align-items:center;gap:.8rem;padding:.35rem .75rem;display:flex}.movement-method-trigger:hover,.movement-method-trigger:focus-visible,.movement-method-trigger[aria-expanded=true]{border-color:var(--gold);background:#d4a84e14;outline:none}.movement-method-trigger>span{flex:1;justify-content:space-between;align-items:baseline;gap:.65rem;min-width:0;display:flex}.movement-method-trigger strong{color:var(--gold-soft);font:600 var(--text-body-sm) "Songti SC", serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.movement-method-trigger small{color:#8fcbd2;font:var(--text-caption) ui-monospace, monospace;white-space:nowrap;flex:none}.movement-method-trigger b{color:var(--muted);font-size:var(--text-label);font-weight:400;transition:transform .14s}.movement-method-trigger[aria-expanded=true] b{transform:rotate(180deg)}.movement-method-menu{z-index:8;width:min(360px,100vw - 1.4rem);max-height:min(420px, calc(100vh - var(--hud-bottom-clearance) - 2rem));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d0b08f7;border:1px solid #d4a84e80;border-radius:6px;padding:.35rem;animation:.13s ease-out both movement-menu-rise;display:grid;position:absolute;bottom:calc(100% + .55rem);right:0;overflow-y:auto;box-shadow:0 18px 48px #0000009e}@keyframes movement-menu-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.movement-method-menu>button{min-height:48px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #d4a84e24;border-radius:3px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.45rem .65rem;display:grid}.movement-method-menu>button:last-child{border-bottom:0}.movement-method-menu>button:hover:not(:disabled),.movement-method-menu>button:focus-visible{background:#d4a84e1a;outline:none}.movement-method-menu>button.selected{box-shadow:inset 2px 0 var(--gold);background:#d4a84e29}.movement-method-menu>button:disabled{opacity:.45;cursor:not-allowed}.movement-method-option-copy,.movement-method-option-cost{gap:.12rem;display:grid}.movement-method-option-copy strong{color:var(--gold-soft);font:600 var(--text-body-sm) "Songti SC", serif}.movement-method-option-copy small{color:var(--muted);font:var(--text-caption) ui-monospace, monospace;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.movement-method-option-cost{color:#8fcbd2;font:var(--text-caption) ui-monospace, monospace;white-space:nowrap;justify-items:end}.movement-method-option-cost small{color:#df8179}.movement-launcher,.movement-wheel-stage{grid-template-columns:55px minmax(0,1fr);align-items:center;gap:0;min-width:0;height:56px;padding:0 .75rem 0 0;display:grid;position:relative}.movement-launcher{width:100%;min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:linear-gradient(135deg,#d4a84e1a,#ffffff05);border:1px solid #d4a84e80;border-radius:10px;transition:border-color .16s,background .16s,box-shadow .16s;overflow:hidden;box-shadow:inset 0 0 36px #00000029}.movement-launcher.lightness{background:linear-gradient(135deg,#78babe1a,#ffffff05)}.movement-launcher.mount{background:linear-gradient(135deg,#9a602724,#ffffff05)}.movement-launcher.forced{background:linear-gradient(135deg,#be913b29,#ffffff05);border-color:#be913bb8}.movement-launcher:hover:not(:disabled),.movement-launcher:focus-visible{border-color:var(--gold-soft);background-color:#d4a84e0f;outline:none;box-shadow:inset 0 0 36px #d4a84e0f,0 0 0 1px #d4a84e1a}.movement-launcher:hover:not(:disabled) .movement-wheel-disc{transform:rotate(8deg)}.movement-launcher:active:not(:disabled){filter:brightness(1.08)}.movement-launcher:disabled{opacity:.42;cursor:not-allowed}.movement-preview-wrap{filter:drop-shadow(0 3px 5px #00000052);background:#a1412a14;border-right:1px solid #d4a84e38;align-self:stretch;width:55px;height:100%;display:block;position:relative}.movement-launcher.lightness .movement-preview-wrap{background:#3277851a}.movement-launcher.mount .movement-preview-wrap{background:#9a60271a}.movement-launcher.forced .movement-preview-wrap{background:#ae4a2a1f}.movement-preview-wrap .movement-wheel-disc{border-width:2px;transition:transform .26s;inset:7px}.movement-preview-wrap .movement-wheel-hub{border-width:2px;width:46%}.movement-preview-wrap .movement-wheel-hub span{font-size:var(--text-caption)}.movement-launch-copy,.movement-wheel-heading{gap:.05rem;min-width:84px;display:grid}.movement-launch-copy{padding-left:.75rem}.movement-launch-title{justify-content:space-between;align-items:baseline;gap:.55rem;min-width:0;display:flex}.movement-launch-title>strong,.movement-wheel-heading>strong{color:var(--gold-soft);font:var(--text-body) "Songti SC", serif;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.movement-launch-title>small{color:#8fcbd2;font:var(--text-caption) ui-monospace, monospace;white-space:nowrap;flex:none}.movement-launch-copy>span,.movement-wheel-heading>span{color:var(--muted);font-size:var(--text-caption)}.movement-launch-copy>.movement-launch-title{color:inherit;font-size:inherit}.movement-launch-meta{flex-wrap:wrap;align-items:baseline;gap:.45rem;min-width:0;display:flex}.movement-launch-copy b{color:#df8179;font-size:var(--text-caption);font-weight:400}.movement-dismount{font-size:var(--text-caption);cursor:pointer;color:var(--muted)!important;padding:.55rem .65rem!important}.movement-dismount:hover{color:var(--gold-soft)}.movement-unavailable{color:#df8179;font-size:var(--text-label);margin:0}.movement-wheel-stage{border:1px solid #0000;grid-template-columns:92px minmax(0,1fr)}.movement-wheel-heading{grid-column:2}.movement-wheel-stage.manual{grid-template-columns:minmax(0,1fr)}.movement-wheel-stage.manual .movement-wheel-heading{grid-column:1;padding-left:.25rem}.movement-route-choice{gap:.35rem;min-width:250px;display:grid}.movement-route-choice>strong{color:var(--gold-soft);font:var(--text-body-sm) "Songti SC", serif}.movement-route-choice>div{gap:.35rem;display:flex}.movement-route-choice button{min-height:32px;color:var(--ink);cursor:pointer;background:#d4a84e14;border:1px solid #d4a84e7a;border-radius:999px;padding:.3rem .65rem}.movement-route-choice button:hover,.movement-route-choice button:focus-visible{border-color:var(--gold);background:#d4a84e2e;outline:none}.movement-wheel-wrap{aspect-ratio:1;filter:drop-shadow(0 10px 14px #0000008c);border-radius:50%;width:88px;animation:.16s ease-out both movement-wheel-rise;position:absolute;bottom:-2px;left:-10px}@keyframes movement-wheel-rise{0%{opacity:0;transform:translateY(10px)scale(.7)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.movement-wheel-wrap,.movement-method-menu{animation:none}}.movement-wheel-wrap.result{filter:drop-shadow(0 0 18px #efd49359)drop-shadow(0 14px 18px #0000006b)}.movement-wheel-pointer{z-index:4;filter:drop-shadow(0 3px 2px #0009);border-top:22px solid #f0d58e;border-left:12px solid #0000;border-right:12px solid #0000;width:0;height:0;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.movement-wheel-disc{will-change:transform;border:4px solid #d7ad5d;border-radius:50%;position:absolute;inset:7px;overflow:hidden;box-shadow:inset 0 0 0 2px #301f0ccc,inset 0 0 26px #0006}.movement-wheel-disc:after{content:"";pointer-events:none;background:repeating-conic-gradient(#ffffff6b 0deg .7deg,#0000 .7deg 36deg),radial-gradient(circle,#0000 54%,#130c0633 100%);border-radius:50%;position:absolute;inset:0}.movement-wheel-outcome{z-index:1;pointer-events:none;position:absolute;inset:0}.movement-wheel-outcome>span{color:#fff0bb;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #1a0c05,0 0 5px #1e0c04e6;place-items:center;min-width:1.7em;font:700 clamp(1.05rem,2vw,1.4rem)/1.2 ui-monospace,monospace;display:grid;position:absolute;top:8%;left:50%}.movement-wheel-hub{z-index:3;aspect-ratio:1;background:radial-gradient(circle at 38% 32%,#4f3120,#17100c 72%);border:3px double #e3bd6e;border-radius:50%;place-items:center;width:42%;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 14px #00000094}.movement-wheel-hub span{color:#eccd83;font:var(--text-body) ui-monospace, monospace}.movement-wheel-hub small{color:#bca774;font-size:var(--text-caption);white-space:nowrap;line-height:1}.movement-wheel-wrap.movement-wheel-manual{z-index:7;bottom:calc(var(--hud-bottom-clearance) + .85rem);width:clamp(220px,26vw,320px);color:inherit;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;position:fixed;left:calc(clamp(.7rem,2.5vw,1.4rem) + .55rem)}.movement-wheel-manual .movement-wheel-pointer{border-top-width:34px;border-left-width:18px;border-right-width:18px;top:-10px}.movement-wheel-manual .movement-wheel-disc{border-width:6px;inset:10px;box-shadow:inset 0 0 0 3px #301f0ccc,inset 0 0 42px #0000006b,0 0 0 1px #efd49347}.movement-wheel-manual .movement-wheel-hub{border-width:4px;width:34%}.movement-wheel-manual .movement-wheel-hub span{font-size:clamp(1.35rem,3vw,2rem);font-weight:700;line-height:1}.movement-wheel-manual:hover:not(:disabled){filter:brightness(1.08)drop-shadow(0 14px 22px #0000009e)}.movement-wheel-manual:focus-visible{outline:3px solid var(--gold-soft);outline-offset:5px}.movement-wheel-manual:disabled{cursor:default}.event-backdrop{--backdrop-inset:1rem;z-index:10;padding:var(--backdrop-inset);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#040302b8;place-items:center;display:grid;position:fixed;inset:0}.effect-event-backdrop{padding-bottom:calc(var(--hud-bottom-clearance) + .6rem);-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:linear-gradient(#0000 35%,#0403027a);place-items:end center}.effect-event-backdrop .event-dialog,.effect-event-backdrop .event-scroll{pointer-events:auto;box-shadow:0 20px 60px #0000009e}.event-backdrop.event-dismissible{cursor:pointer;pointer-events:auto}.event-backdrop.event-dismissible:focus-visible{outline:2px solid var(--gold-soft);outline-offset:-6px}.event-dismissible .event-dialog,.event-dismissible .event-scroll{transition:filter .15s,transform .15s}.event-dismissible:hover .event-dialog,.event-dismissible:hover .event-scroll{filter:brightness(1.06);transform:translateY(-2px)}.target-selection-backdrop{padding-bottom:calc(var(--hud-bottom-clearance) + .6rem);-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:linear-gradient(#0000 25%,#04030261);place-items:end center}.target-selection-backdrop .event-dialog{pointer-events:auto;box-shadow:0 20px 60px #0000009e}.item-step-picker-layer{z-index:10;padding:.6rem .7rem calc(var(--hud-bottom-clearance) + .6rem);pointer-events:none;place-items:end center;display:grid;position:fixed;inset:0}.item-step-picker{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;background:#0c0a07f0;border-color:#d8ab4c94;gap:.7rem;width:min(980px,100%);padding:.85rem 1rem 1rem;display:grid;box-shadow:0 18px 52px #00000094}.item-step-picker-copy{align-items:end;gap:1.25rem;display:flex}.item-step-picker-copy>div{flex:none}.item-step-picker-copy .eyebrow{margin:0 0 .1rem}.item-step-picker-copy h2{color:var(--gold-soft);font:var(--text-title) "Songti SC", serif;margin:0}.item-step-picker-copy>p{color:var(--muted);text-align:right;font-size:var(--text-label);flex:1;margin:0 0 .12rem;line-height:1.5}.item-step-picker-actions{grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;display:grid}.item-step-picker-actions .button{min-height:44px;padding:.55rem .6rem}.event-dialog{width:min(470px,100%);padding:2rem}.event-dialog h2{font:var(--text-display-sm) "Songti SC", serif;margin:0}.event-dialog>p:not(.eyebrow){color:var(--muted);line-height:1.8}.event-scroll{isolation:isolate;color:#f5efdd;scrollbar-color:#c6a9508c #142a1899;background-color:#2f4d2d;background-image:linear-gradient(#11241414,#11241414),url(/generated/ui/event-scroll-paper.webp);background-repeat:repeat;background-clip:padding-box;border:18px solid #0000;border-width:18px 14px;border-image:url(/generated/ui/event-scroll-frame.webp) 18 14;width:min(680px,100%);max-height:calc(100vh - 2rem);position:relative;overflow:auto;box-shadow:0 28px 80px #0000009e,inset 0 0 45px #09170c47}.event-scroll:before,.event-scroll:after{z-index:2;content:"";pointer-events:none;opacity:.62;width:30px;height:30px;position:absolute}.event-scroll:before{border-top:2px solid #b9a34f;border-left:2px solid #b9a34f;top:16px;left:16px}.event-scroll:after{border-bottom:2px solid #b9a34f;border-right:2px solid #b9a34f;bottom:16px;right:16px}.event-scroll-heading{text-align:center;border-bottom:1px solid #cab25b73;align-content:center;justify-items:center;min-height:104px;padding:clamp(1.2rem,3vw,2rem) clamp(1.5rem,5vw,3.5rem);display:grid}.event-scroll-heading .eyebrow{color:#d5bd68;text-shadow:0 1px 1px #142617;margin-bottom:.55rem}.event-scroll-heading h2{color:#fffaf0;text-shadow:2px 2px #0a170cdb;letter-spacing:.04em;margin:0;font:600 clamp(1.75rem,4vw,2.8rem)/1.2 Songti SC,serif}.event-scroll-media{background:#152117;border:1px solid #d8c1779e;margin:0 clamp(.45rem,1.4vw,.85rem);overflow:hidden;box-shadow:0 8px 24px #030a055c}.event-scroll-media img{aspect-ratio:3/2;object-fit:cover;width:100%;max-height:min(46vh,430px);image-rendering:pixelated;display:block}.event-scroll-animation{max-height:min(46vh,430px)}.event-scroll-animation img{aspect-ratio:auto;object-fit:fill;height:100%;max-height:none}.event-scroll-animation.layout-full{box-shadow:none;background:0 0;border:0}.event-scroll-animation.layout-effect{max-width:calc(100% - 1.7rem);max-height:min(34vh,260px);box-shadow:none;background:0 0;border:0;margin:1rem auto 0}.combat-animation-backdrop{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(circle,#24160d85,#040302e6)}.combat-animation-stage{filter:drop-shadow(0 24px 36px #000000b8);width:min(660px,100vw - 2rem);margin:0;overflow:hidden}.combat-animation-stage img{max-width:none;height:100%;image-rendering:pixelated;display:block}.skill-animation-backdrop{z-index:20;pointer-events:none;background:#04030257}.skill-animation-stage{place-items:center;max-height:min(480px,100vh - 2rem);margin:0;display:grid}.skill-animation-stage img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}@keyframes sprite-sheet-frames{to{transform:translateX(calc(-100% + 100% / var(--sprite-frame-count)))}}.event-scroll.media-icon .event-scroll-media{width:min(168px,42vw);box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;margin:1.35rem auto .15rem;padding:0;display:grid}.event-scroll.media-icon .event-scroll-media img{aspect-ratio:auto;object-fit:contain;filter:drop-shadow(0 2px 4px #00000047);width:auto;max-width:96px;height:auto;max-height:120px}.event-scroll-body{text-align:center;gap:.85rem;padding:clamp(1.2rem,3vw,2rem) clamp(1.5rem,5vw,3.5rem);display:grid}.event-scroll-message{color:#f1ead6;text-shadow:0 1px 1px #142617;margin:0;font-size:clamp(.9rem,2vw,1.08rem);line-height:1.75}.event-scroll-body>.button{color:#172116;background:#d8bd68;border-color:#caae57;justify-self:center;width:min(320px,100%);margin-top:.15rem}.event-scroll .effect-results{text-align:left;margin:.15rem 0}.event-scroll .effect-results>div{background:#09180c4d;border-color:#d8c17759}.bonus-result{background:#09180c57;border:1px solid #d8c17780;justify-content:center;justify-self:center;align-items:baseline;gap:1rem;width:min(300px,100%);padding:.7rem 1.1rem;display:flex}.bonus-result span{color:#f4e6b1;font:var(--text-title-sm) "Songti SC", serif}.bonus-result strong{color:#ffd66f;text-shadow:0 2px #142617;font:700 clamp(1.45rem,4vw,2.2rem)/1 ui-monospace,monospace}.event-scroll .station-options{margin:.15rem 0}.event-scroll .station-options .button{color:#f4e6b1;background:#09180c33;border-color:#d8c177b8}.station-travel-layer{z-index:11;pointer-events:none;place-items:start center;padding:.7rem;display:grid;position:fixed;inset:0}.station-travel-panel{pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c0a07f0;border-color:#d8ab4c9e;width:min(760px,100vw - 1.4rem);padding:.85rem 1rem 1rem;box-shadow:0 18px 52px #00000094}.station-travel-heading{justify-content:space-between;align-items:end;gap:1rem;padding:0 .15rem .65rem;display:flex}.station-travel-heading .eyebrow{margin:0 0 .12rem}.station-travel-heading h2{color:var(--gold-soft);font:var(--text-title) "Songti SC", serif;margin:0}.station-travel-heading>p{color:var(--muted);font-size:var(--text-label);margin:0 0 .12rem}.station-destinations{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.station-destination{color:var(--ink);text-align:left;cursor:pointer;background:#ffffff09;border:1px solid #d4a84e47;border-radius:3px;gap:.12rem;padding:.62rem .72rem;transition:border-color .14s,background .14s,transform .14s;display:grid}.station-destination:hover,.station-destination:focus-visible{border-color:var(--gold);background:#d4a84e17;outline:none;transform:translateY(-1px)}.station-destination.selected{border-color:var(--gold-soft);box-shadow:inset 3px 0 0 var(--gold);background:linear-gradient(135deg,#9f2f274d,#d4a84e1f)}.station-destination strong{color:var(--gold-soft);font:var(--text-body) "Songti SC", serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.station-travel-confirmation{border-top:1px solid #d4a84e38;align-items:center;gap:1rem;margin-top:.65rem;padding-top:.65rem;display:flex}.station-travel-confirmation>div{min-width:0;margin-right:auto;display:grid}.station-travel-confirmation span{color:var(--muted);font-size:var(--text-caption)}.station-travel-confirmation strong{color:var(--ink);font-size:var(--text-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.station-travel-confirmation .button{min-width:min(250px,42vw)}@media (width<=620px){.event-backdrop{--backdrop-inset:.45rem}.event-scroll{border-width:14px 10px;max-height:calc(100vh - .9rem)}.event-scroll-heading{min-height:84px;padding:1rem 1.2rem}.event-scroll-heading h2{font-size:clamp(1.45rem,8vw,2rem)}.event-scroll-body{padding:1rem 1.2rem 1.25rem}.event-scroll:before,.event-scroll:after{width:22px;height:22px}.station-travel-layer{padding:.4rem}.station-travel-panel{width:calc(100vw - .8rem);padding:.7rem}.station-travel-heading{align-items:start}.station-travel-heading>p{text-align:right;max-width:10rem}.station-destinations{scroll-snap-type:x proximity;display:flex;overflow-x:auto}.station-destination{scroll-snap-align:start;min-width:42vw}.station-travel-confirmation{gap:.55rem}.station-travel-confirmation .button{min-width:0;padding-inline:.8rem}.item-step-picker-layer{padding:.4rem .4rem calc(var(--hud-bottom-clearance) + .4rem)}.item-step-picker{gap:.55rem;padding:.7rem}.item-step-picker-copy{gap:.25rem;display:grid}.item-step-picker-copy>p{text-align:left}.item-step-picker-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem}.item-step-picker-actions .button{min-height:40px;padding:.42rem .3rem}}.effect-results{gap:.5rem;margin:1rem 0;display:grid}.effect-results>div{background:#0003;border:1px solid #d8ab4c4d;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.55rem .65rem;display:flex}.effect-results strong{min-width:4rem;color:var(--gold-soft)}.effect-results span{color:#f4dfaa;font:var(--text-label) ui-monospace, monospace;background:#9f2f2747;border-radius:999px;padding:.25rem .45rem;animation:.42s ease-out both effect-rise}@keyframes effect-rise{0%{opacity:0;transform:translateY(8px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.terminal-dialog{text-align:center}.terminal-dialog .button{width:100%}.terminal-backdrop{z-index:14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:radial-gradient(circle at 50% 15%,#7e481a3d,#0000 42%),#030302f0;place-items:center;padding:1rem;display:grid;position:fixed;inset:0;overflow:auto}.terminal-result{border-color:#d8ab4c70;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);width:min(1180px,100%);max-height:calc(100vh - 2rem);display:grid;overflow:hidden}.terminal-ending-media{background:#000;place-items:center;min-height:0;display:grid;overflow:hidden}.terminal-ending-media video{object-fit:contain;width:100%;height:100%;max-height:calc(100vh - 2rem);image-rendering:pixelated;display:block}.terminal-summary{padding:clamp(1.2rem,3vw,2.4rem);overflow:auto}.terminal-summary header h2{color:var(--gold-soft);word-break:keep-all;margin:.25rem 0 .65rem;font:500 clamp(1.8rem,3vw,2.5rem)/1.25 Songti SC,serif}.terminal-summary header>p:not(.eyebrow){color:var(--muted);line-height:1.65}.terminal-side-results{grid-template-columns:repeat(2,1fr);gap:.65rem;margin:1.3rem 0;display:grid}.terminal-side-results>div{border:1px solid var(--line);gap:.3rem;padding:.8rem;display:grid}.terminal-side-results span{color:var(--muted);font-size:var(--text-label)}.terminal-side-results strong{font-size:var(--text-body)}.terminal-side-results .defeated strong{color:#df8179}.terminal-side-results .surviving strong{color:#8fc896}.terminal-roster{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.terminal-roster li{background:#ffffff06;border:1px solid #0000;grid-template-columns:2rem minmax(3rem,.55fr) minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.58rem .65rem;display:grid}.terminal-roster li>small{color:var(--muted)}.terminal-roster li>span:last-child{color:var(--muted);font:var(--text-label) ui-monospace, monospace}.terminal-roster li.winner{border-color:var(--gold);background:#d8ab4c1a}.terminal-roster li.eliminated{opacity:.52}.terminal-rank-mark{width:1.55rem;height:1.55rem;color:var(--gold);font-size:var(--text-caption);border:1px solid;border-radius:50%;place-items:center;display:grid}.terminal-roster .eliminated .terminal-rank-mark{color:#a45e58}.terminal-actions{grid-template-columns:repeat(2,1fr);gap:.65rem;margin-top:1.3rem;display:grid}.combat-actions{grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1.2rem;display:grid}.combat-tier{color:var(--muted);font-size:var(--text-label);margin:.9rem 0 0}.combat-tier strong{color:var(--gold-soft)}.duel-dialog{width:min(860px,100% - 2rem)}.duel-header{text-align:center;margin-bottom:1rem}.duel-header h2{margin:.2rem 0 0}.duel-header h2.own{color:var(--duel-own)}.duel-header h2.rival{color:var(--duel-rival)}.duel-arena{grid-template-rows:auto auto auto auto;grid-template-columns:1fr auto 1fr;align-items:end;gap:.5rem 1rem;display:grid;position:relative}.duel-flank,.duel-middle{grid-row:span 4;grid-template-rows:subgrid;place-items:end center;min-width:0;display:grid}.duel-arena.live{grid-template-rows:auto auto auto}.duel-arena.live>*{grid-row:span 3}.duel-arena h3{color:var(--gold-soft);font:var(--text-emphasis) "Songti SC", serif;justify-items:center;gap:.1rem;margin:0;display:grid}.duel-middle-spacer{margin:0}.duel-sprite{width:100%;height:100%;margin:0;overflow:hidden}.duel-sprite img{max-width:none;height:100%;image-rendering:pixelated;display:block}.duel-cards{flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem;display:flex}.duel-card{border:1px solid var(--line);width:76px;min-height:84px;color:inherit;font:inherit;text-align:center;background:#14110ce6;place-items:center;gap:.1rem;padding:.5rem .4rem;transition:border-color .14s,box-shadow .14s,background .14s;display:grid;position:relative}.duel-card strong{color:var(--ink);font:var(--text-emphasis) "Songti SC", serif}.duel-dialog{--duel-own:#e8b75c;--duel-rival:#7fb6d8}.duel-card-values{font-size:var(--text-label);align-items:baseline;gap:.45rem;font-weight:600;display:flex}.duel-card-values b{font-weight:700}.duel-card-values .own{color:var(--duel-own)}.duel-card-values .rival{color:var(--duel-rival)}.duel-flank.own h3{color:var(--duel-own)}.duel-flank.rival h3{color:var(--duel-rival)}.duel-card small{color:var(--muted);font-size:var(--text-caption)}.duel-card.hidden{background:#0c0a07e6;border-style:dashed}.duel-card-back{color:#c8b78f80;font:var(--text-display) "Songti SC", serif}.duel-card.mastery strong{color:var(--gold)}.duel-card.flaw strong{color:#c4786e}.duel-arena.formula-own .duel-flank.own .duel-card,.duel-arena.formula-own .duel-middle .duel-card{background:#e8b75c14;border-color:#e8b75cd9;box-shadow:0 0 14px #d4a84e47}.duel-arena.formula-own .duel-flank.own .duel-card.hidden,.duel-arena.formula-own .duel-middle .duel-card.hidden{background:#e8b75c0d;border-color:#e8b75c8c;box-shadow:0 0 10px #d4a84e29}.duel-arena.formula-own .duel-middle h3{color:var(--duel-own)}.duel-arena.formula-rival .duel-flank.rival .duel-card,.duel-arena.formula-rival .duel-middle .duel-card{background:#7fb6d81a;border-color:#7fb6d8e6;box-shadow:0 0 14px #7fb6d847}.duel-arena.formula-rival .duel-flank.rival .duel-card.hidden,.duel-arena.formula-rival .duel-middle .duel-card.hidden{background:#7fb6d80f;border-color:#7fb6d88c;box-shadow:0 0 10px #7fb6d829}.duel-arena.formula-rival .duel-middle h3{color:var(--duel-rival)}.duel-card.swappable{cursor:pointer}.duel-card-swap{z-index:2;color:var(--gold);font:var(--text-display) "Songti SC", serif;opacity:0;background:#0c0a07db;place-items:center;transition:opacity .12s;display:grid;position:absolute;inset:0}.duel-card.swappable:hover,.duel-card.swappable:focus-visible{border-color:var(--gold)}.duel-card.swappable:hover .duel-card-swap,.duel-card.swappable:focus-visible .duel-card-swap{opacity:1}.duel-card.attribute-with-tip{cursor:help}.duel-card.attribute-with-tip:after{z-index:8;width:min(200px,70vw);top:auto;bottom:calc(100% + .55rem)}.duel-card.attribute-with-tip:before{z-index:9;border-top:6px solid #d4a84e;border-bottom:none;top:-.55rem;bottom:auto}.duel-card.swappable.attribute-with-tip .duel-card-swap{pointer-events:none}.duel-tally em{color:var(--muted);font-size:var(--text-label);font-style:normal;font-weight:400}.duel-damage{color:#c4786e;font-size:var(--text-caption);min-height:1.2em;margin:0;font-weight:500}.duel-sprite-slot{justify-self:stretch;position:relative}.duel-sprite-frame{position:absolute;bottom:0;left:50%;transform:translate(-50%)}.duel-sprite-frame.mirrored{transform:translate(-50%)scaleX(-1)}.duel-strike{z-index:4;pointer-events:none;place-items:center;display:grid;position:absolute;inset:-40% -60%}.duel-strike figure{width:100%;margin:0;overflow:hidden}.duel-strike img{max-width:none;height:100%;image-rendering:pixelated;display:block}.duel-card.flipping{animation:.64s ease-out duel-card-flip}.duel-card.fresh{border-color:var(--gold);box-shadow:0 0 12px #d4a84e52}@keyframes duel-card-flip{0%{opacity:.2;transform:rotateY(90deg)}60%{opacity:1;transform:rotateY(-8deg)}to{opacity:1;transform:rotateY(0)}}.duel-outcome{color:var(--muted);font:var(--text-display) "Songti SC", serif;margin:0}.duel-outcome.own{color:var(--duel-own)}.duel-outcome.rival{color:var(--duel-rival)}.duel-outcome.pending{font:var(--text-emphasis) "Songti SC", serif;opacity:.55}.duel-intel{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:.75rem}.duel-intel>summary{cursor:pointer;color:var(--muted);font:var(--text-caption) "Songti SC", serif;opacity:.72;-webkit-user-select:none;user-select:none;justify-content:center;align-items:baseline;gap:.55rem;font-weight:400;list-style:none;display:flex}.duel-intel>summary::-webkit-details-marker{display:none}.duel-intel>summary:before{content:"▸";color:inherit;font-size:.85em;transition:transform .12s}.duel-intel[open]>summary:before{transform:rotate(90deg)}.duel-intel>summary small{color:inherit;font-size:inherit;opacity:.85;font-weight:400}.duel-intel>summary:hover,.duel-intel>summary:focus-visible{color:var(--gold-soft);opacity:1;outline:none}.duel-intel-body{grid-template-columns:1fr 1fr;gap:.6rem 1rem;margin-top:.65rem;display:grid}.duel-intel h3{font:var(--text-emphasis) "Songti SC", serif;margin:0 0 .4rem}.duel-intel-side.own h3{color:var(--duel-own)}.duel-intel-side.rival h3{color:var(--duel-rival);text-align:right}.duel-intel-side.rival ul{justify-content:flex-end}.duel-intel ul{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.duel-intel li{border:1px solid var(--line);font-size:var(--text-caption);gap:.35rem;padding:.2rem .5rem;display:flex}.duel-intel li span{color:var(--muted)}.duel-intel-side.own li strong{color:var(--duel-own)}.duel-intel-side.rival li strong{color:var(--duel-rival)}.duel-intel li.unknown strong{color:var(--muted)}.duel-intel-side.attribute-with-tip{padding:.3rem .4rem}.duel-intel-side.attribute-with-tip:after{top:auto;bottom:calc(100% + .55rem)}.duel-intel-side.attribute-with-tip:before{border-top:6px solid #d4a84e;border-bottom:none;top:-.55rem;bottom:auto}.duel-arena h3 small{color:var(--muted);font-size:var(--text-caption);margin-left:.3rem;font-weight:400}.duel-commit{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.1rem;display:flex}.duel-commit .button{flex:220px}.duel-commit .duel-outcome,.duel-commit .duel-verdict{text-align:center;flex:100%}.duel-verdict{gap:.2rem;display:grid}.duel-scoreline{color:var(--muted);font-size:var(--text-label);margin:0}.duel-scoreline .own{color:var(--duel-own)}.duel-scoreline .rival{color:var(--duel-rival)}.duel-scoreline span{font-size:var(--text-caption)}@media (width<=720px){.duel-arena{grid-template-columns:1fr}.duel-middle{order:-1}.duel-sprite{height:56px}.duel-intel-body{grid-template-columns:1fr}}.skill-target-list{grid-template-columns:repeat(2,1fr);gap:.6rem;margin:1rem 0;display:grid}.skill-cell-hint{z-index:16;left:50%;bottom:calc(var(--hud-bottom-clearance) + .6rem);align-items:center;gap:1rem;width:min(720px,100% - 2rem);padding:.8rem 1rem;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 14px 40px #00000073}.skill-cell-hint strong{color:var(--gold-soft)}.skill-cell-hint span{color:var(--muted);font-size:var(--text-label);flex:1}.institution-backdrop{z-index:15;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040302d1;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.institution-panel{width:min(900px,100%);max-height:calc(100vh - 2rem);padding:clamp(1.2rem,3vw,2rem);position:relative;overflow:auto}.institution-panel>header{align-items:center;gap:1rem;display:flex}.institution-panel h2{font:var(--text-display-sm) "Songti SC", serif;margin:0}.institution-panel-leave{flex:none;align-self:start;margin-top:.1rem;margin-left:auto}.institution-balances{color:var(--muted);font-size:var(--text-label);align-items:center;gap:.65rem;margin-left:auto;display:flex}.institution-balances+.institution-panel-leave{margin-left:0}.institution-balances .balance-chip,.institution-balances>span{white-space:nowrap;background:#ffffff08;border:1px solid #d4a84e38;border-radius:4px;align-items:baseline;gap:.4rem;min-height:1.75rem;padding:.28rem .55rem;display:inline-flex}.institution-balances .balance-chip>span:first-child,.institution-balances>span{color:var(--muted)}.institution-balances strong{color:var(--gold-soft);font:var(--text-body)/1.2 ui-monospace, monospace;font-variant-numeric:tabular-nums;margin-left:0}.institution-tabs{border-bottom:1px solid var(--line);margin:1.2rem 0;display:flex}.institution-tabs button{min-width:90px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.7rem 1rem}.institution-tabs button.active{color:#17110a;background:var(--gold)}.bank-summary{border:1px solid var(--line);margin:0;padding:1rem;line-height:1.6;color:var(--gold-soft)!important}.bank-panel{border:1px solid var(--line);background:#0000001f;gap:1.25rem;margin-top:1.5rem;padding:clamp(1rem,3vw,1.6rem);display:grid}.bank-allocation-labels{justify-content:space-between;align-items:end;gap:2rem;display:flex}.bank-allocation-labels>div{gap:.3rem;display:grid}.bank-allocation-labels>div:last-child{text-align:right;justify-items:end}.bank-allocation-labels span{color:var(--muted);font-size:var(--text-label)}.bank-allocation-labels strong{color:var(--gold-soft);font:clamp(1.25rem,3vw,1.75rem)/1 ui-monospace,monospace}.bank-allocation-slider{appearance:none;cursor:ew-resize;border-radius:999px;width:100%;height:.7rem;margin:.35rem 0;box-shadow:inset 0 0 0 1px #eed17e47,0 .35rem 1rem #0000004d;border:0!important;padding:0!important}.bank-allocation-slider::-webkit-slider-thumb{appearance:none;background:#f0d078;border:3px solid #17120c;border-radius:50%;width:1.6rem;height:1.6rem;box-shadow:0 0 0 2px #aa7e2e,0 .35rem .8rem #00000080}.bank-allocation-slider::-moz-range-thumb{background:#f0d078;border:3px solid #17120c;border-radius:50%;width:1.25rem;height:1.25rem;box-shadow:0 0 0 2px #aa7e2e,0 .35rem .8rem #00000080}.bank-allocation-slider:focus-visible{outline:2px solid var(--gold-soft);outline-offset:6px}.bank-allocation-status{min-height:1.25rem;color:var(--muted);font-size:var(--text-caption);justify-content:center;align-items:center;gap:.5rem;display:flex}.bank-allocation-status.changed{color:var(--ink)}.bank-allocation-status strong{color:var(--gold-soft);font-family:ui-monospace,monospace}.bank-panel .bank-cash-warning{color:#e47b72;font-size:var(--text-label);background:#8e27211f;border-left:3px solid #b64138;margin:-.35rem 0 0;padding:.65rem .75rem;line-height:1.65}.bank-confirm{width:100%;min-height:3rem}.bank-confirm:disabled{opacity:.38;cursor:default}.bank-panel>p{color:var(--muted);font-size:var(--text-caption)}.shop-grid{grid-template-columns:repeat(2,1fr);gap:.55rem;display:grid}.shop-grid>.shop-item,.pawn-list>.shop-item{border:1px solid var(--line);background:#ffffff05;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:64px minmax(0,1fr);gap:.4rem .75rem;min-height:98px;padding:.7rem;display:grid}.shop-item-icon{object-fit:contain;width:56px;height:73px;image-rendering:pixelated;filter:drop-shadow(0 5px 5px #00000057);grid-row:1/3;align-self:center}.shop-item-copy{align-content:start;gap:.25rem;min-width:0;display:grid}.shop-item-actions{justify-content:space-between;align-items:end;gap:.75rem;display:flex}.shop-grid strong,.pawn-list strong{font-size:var(--text-body-sm)}.shop-grid small,.pawn-list small{color:var(--muted);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shop-grid span,.pawn-list span{color:var(--gold-soft);font-size:var(--text-caption)}.shop-grid button,.pawn-list button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;flex:none;padding:.4rem .65rem}.shop-grid button:disabled,.pawn-list button:disabled{opacity:.3;cursor:not-allowed}.trade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.trade-card{border:1px solid var(--line);background:#ffffff05;grid-template-columns:76px minmax(0,1fr);gap:.7rem;padding:.75rem;display:grid}.trade-card>img,.cargo-row>img{object-fit:contain;image-rendering:pixelated;align-self:center}.trade-card-copy{gap:.25rem;min-width:0;display:grid}.trade-card-copy strong{color:var(--ink)}.trade-card-copy small{color:var(--muted);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trade-card-copy span{color:var(--muted);font-size:var(--text-label)}.trade-card-copy b{color:var(--gold-soft)}.trade-card-actions{grid-column:1/-1;justify-content:flex-end;gap:.45rem;display:flex}.trade-card-actions input,.cargo-row input{border:1px solid var(--line);width:4.5rem;color:var(--ink);background:#00000047;padding:.45rem}.trade-card-actions button,.cargo-row button{color:#17130b;background:var(--gold);cursor:pointer;border:1px solid #d8a6408c;padding:.45rem .8rem}.trade-card-actions button:disabled{opacity:.3;cursor:not-allowed}.trade-buy-actions{align-items:center;gap:.65rem;width:100%;min-width:0;display:flex}.market-buy-budget{flex:auto;gap:.28rem;width:100%;min-width:0;display:grid}.market-buy-budget small{color:var(--muted);font-size:var(--text-caption)}.market-buy-budget small b{color:var(--gold-soft);font-family:ui-monospace,monospace;font-weight:600}.market-buy-slider{appearance:none;background:linear-gradient(90deg, #d4a84eeb, #e8c46ee0) 0 / var(--budget-fill,0%) 100% no-repeat, #ffffff14;cursor:pointer;border:1px solid #d4a84e47;border-radius:999px;width:100%;min-width:0;height:10px;margin:0;display:block}.market-stock-slider{background:linear-gradient(90deg, var(--fill-color,#d4a84eeb), var(--fill-color,#d4a84eeb)) var(--fill-start,0%) / var(--fill-width,0%) 100% no-repeat, linear-gradient(90deg, #efd493e6, #efd493e6) var(--held-pct,0%) / 2px 100% no-repeat, #ffffff14}.market-buy-slider:disabled{opacity:.38;cursor:not-allowed}.market-buy-slider::-webkit-slider-thumb{appearance:none;cursor:grab;background:linear-gradient(#f0d58e,#c89a3e);border:1px solid #efd493d9;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000073}.market-buy-slider::-moz-range-thumb{cursor:grab;background:linear-gradient(#f0d58e,#c89a3e);border:1px solid #efd493d9;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000073}.market-buy-slider::-moz-range-track{background:0 0;border:none;border-radius:999px;height:10px}.market-stock-actions .market-quote-order-meta{margin-bottom:.05rem;display:block}.cargo-heading{margin-top:1.2rem}.cargo-list{gap:.4rem;display:grid}.cargo-row{border:1px solid var(--line);grid-template-columns:52px minmax(0,1fr) auto auto;align-items:center;gap:.65rem;padding:.55rem .7rem;display:grid}.cargo-row>div{gap:.15rem;min-width:0;display:grid}.cargo-row small{color:var(--muted)}.cargo-row em{font-style:normal}.trade-profit{color:#93c98b}.trade-loss{color:#d47b70}.market-institution-panel{width:min(1280px,100%)}.market-terminal{gap:1rem;margin-top:1.2rem;display:grid}.market-heading{align-items:end;margin:0}.market-heading>div{gap:.2rem;display:grid}.market-heading h3{margin:0}.market-heading small{color:var(--muted)}.market-news-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.market-news{border:1px solid var(--line);background:#ffffff05;grid-template-columns:90px minmax(0,1fr);gap:.65rem;min-height:78px;padding:.55rem;display:grid}.market-news[data-direction=up]{border-left:3px solid #bd554c}.market-news[data-direction=down]{border-left:3px solid #5c9d69}.market-news img{object-fit:cover;width:90px;height:60px;image-rendering:pixelated}.market-news>div{align-content:start;gap:.16rem;min-width:0;display:grid}.market-news strong{color:var(--ink);font-size:var(--text-body-sm)}.market-news small,.market-news span{color:var(--muted);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.market-news[data-direction=up] span{color:#dc8178}.market-news[data-direction=down] span{color:#82bb8a}.market-workspace{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:start;gap:1rem;min-height:0;display:grid}.market-workspace-list{align-content:start;gap:.75rem;min-width:0;max-height:min(70vh,720px);padding-right:.15rem;display:grid;overflow-y:auto}.market-workspace-list .cargo-heading{margin-top:0}.market-workspace-chart{min-width:0;position:sticky;top:.5rem}.market-quote-list{gap:.28rem;display:grid}.market-quote-header,.market-quote-main{grid-template-columns:40px minmax(0,1fr) 4.6rem 4.2rem 2.6rem;align-items:center;gap:.45rem .55rem;display:grid}.market-quote-header{color:var(--muted);letter-spacing:.04em;text-transform:none;padding:.15rem .65rem .35rem;font-size:.68rem}.market-quote-header .market-quote-price,.market-quote-header .market-quote-change,.market-quote-header .market-quote-hold{text-align:right}.market-quote-header button{all:unset;cursor:pointer;justify-content:flex-end;align-items:center;gap:.18rem;width:100%;display:inline-flex}.market-quote-header button:hover,.market-quote-header button:focus-visible{color:var(--gold-soft)}.market-quote-header button:focus-visible{outline-offset:3px;outline:1px solid #dcb151b8}.market-quote-header [aria-sort=ascending] button,.market-quote-header [aria-sort=descending] button{color:var(--gold-soft)}.market-quote-header button i{color:currentColor;min-width:.72rem;font-style:normal}.market-quote-row{border:1px solid var(--line);cursor:pointer;background:#ffffff05;gap:.55rem;padding:.45rem .65rem;transition:border-color .12s,background .12s;display:grid}.market-quote-row:hover,.market-quote-row.selected{background:#d4a84e12;border-color:#dcb151b8}.market-quote-icon{object-fit:contain;width:40px;height:40px;image-rendering:pixelated}.market-quote-name{min-width:0;color:var(--ink);font:var(--text-body-sm) "Songti SC", serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.market-quote-name small{color:var(--muted);letter-spacing:.04em;font:.62rem ui-sans-serif,sans-serif;display:block}.market-quote-price{color:var(--gold-soft);font:600 var(--text-body) ui-monospace, monospace;text-align:right;font-variant-numeric:tabular-nums}.market-quote-change{font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap;border-radius:3px;justify-self:end;margin:0;padding:.12rem .35rem;font:600 .72rem ui-monospace,monospace}.market-quote-change[data-tone=up]{color:#f0c0ba;background:#b7483e47}.market-quote-change[data-tone=down]{color:#b8dfbf;background:#447a4e4d}.market-quote-change[data-tone=flat]{color:var(--muted);background:#ffffff0d}.market-quote-hold{color:var(--muted);font:600 var(--text-caption) ui-monospace, monospace;text-align:right;font-variant-numeric:tabular-nums}.market-quote-hold[data-held=true]{color:var(--gold-soft)}.market-quote-order{border-top:1px solid #d4a84e29;align-items:center;gap:.55rem;width:100%;min-width:0;padding-top:.15rem;display:flex}.market-combined-order{align-items:stretch;gap:.5rem;display:grid}.market-sell-actions,.market-buy-actions{align-items:center;gap:.55rem;width:100%;min-width:0;display:flex}.market-quote-order-meta{min-width:0;color:var(--muted);font-size:var(--text-caption);flex:auto}.market-quote-order-meta em{font-style:normal}.market-quote-order input:not([type=range]){border:1px solid var(--line);width:4.2rem;color:var(--ink);background:#00000047;padding:.4rem}.market-quote-order button{color:#17130b;background:var(--gold);cursor:pointer;border:1px solid #d8a6408c;flex:none;padding:.4rem .75rem}.market-quote-order button:disabled{opacity:.3;cursor:not-allowed}.market-chart-panel{border:1px solid var(--line);background:radial-gradient(circle at 50% 0,#ae792e14,#0000 55%),#0003;padding:.75rem .9rem .55rem}.market-workspace-chart .market-chart-panel{gap:.65rem;min-height:280px;display:grid}.market-chart-header{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:.65rem;display:grid}.market-chart-header img{object-fit:contain;width:48px;height:48px;image-rendering:pixelated}.market-chart-title{gap:.2rem;min-width:0;display:grid}.market-chart-title h3{font:var(--text-body) "Songti SC", serif;margin:0}.market-chart-title p{color:var(--muted);font-size:var(--text-caption);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.55;display:-webkit-box;overflow:hidden}.market-chart-caption,.market-chart-panel .panel-section-heading,.market-chart{margin:0}.market-chart svg{width:100%;height:min(220px,28vh);display:block}.market-workspace-chart .market-chart svg{height:min(320px,38vh)}.market-chart-grid{stroke:#e0ca9f1f;stroke-width:1px}.market-chart-grid-vertical{stroke-dasharray:2 5;stroke-opacity:.58}.market-chart-label{fill:#968b75;font:11px ui-monospace,monospace}.market-chart-day-label{font-size:10px}.market-chart-ma{fill:none;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;opacity:.88}.market-chart-ma.ma-five{stroke:#d7ae56}.market-chart-ma.ma-ten{stroke:#7f9fc3}.market-candle rect{fill:currentColor;stroke:currentColor;stroke-width:1px}.market-candle.rising{color:#c75b50}.market-candle.falling{color:#65a570}.market-candle.flat{color:#9a907d}.market-chart figcaption{color:var(--muted);font-size:var(--text-caption);text-align:right;justify-content:space-between;gap:1rem;display:flex}.market-chart-legend{align-items:center;gap:.35rem;display:inline-flex}.market-chart-legend i{width:.9rem;height:2px;display:inline-block}.market-chart-legend i.ma-five{background:#d7ae56}.market-chart-legend i.ma-ten{background:#7f9fc3;margin-left:.3rem}.market-chart-empty{min-height:140px;color:var(--muted);place-items:center;display:grid}.market-empty-cargo{border:1px dashed var(--line);color:var(--muted);margin:0;padding:.8rem}@media (width<=900px){.market-workspace{grid-template-columns:1fr}.market-workspace-chart{order:-1;position:static}.market-workspace-list{max-height:none}.market-workspace-chart .market-chart svg{height:min(240px,32vh)}.market-quote-header,.market-quote-main{grid-template-columns:36px minmax(0,1fr) 3.8rem 3.6rem 2.2rem;gap:.35rem .4rem}.market-quote-icon{width:36px;height:36px}}.pawn-list{gap:.45rem;display:grid}.notice-item-award{text-align:left;background:#00000047;border:1px solid #d8ab4c6b;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:.6rem;margin:.75rem auto 0;padding:.5rem .8rem .5rem .55rem;display:inline-grid}.notice-item-award img{object-fit:contain;image-rendering:pixelated}.notice-item-award strong{color:var(--gold-soft);font-size:var(--text-body);display:block}.notice-item-award small{color:#d8cdb8;font-size:var(--text-label)}.escort-counter{margin-top:1.15rem}.escort-intro{border-bottom:1px solid #d8c17724;margin-bottom:.95rem;padding-bottom:.85rem}.escort-intro h3{font:var(--text-emphasis) "Songti SC", serif;margin:0 0 .35rem}.escort-note{max-width:40rem;color:var(--muted);font-size:var(--text-label);margin:0;line-height:1.65}.escort-note-warn{color:#d47b70}.escort-offers{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:.75rem;margin:0;display:grid}.escort-offer{border:1px solid var(--line);background:#ffffff05;flex-direction:column;gap:.55rem;min-height:100%;padding:.85rem;display:flex}.escort-offer-directed{background:#d8a6400d;border-color:#d8a64080}.escort-offer>header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.escort-offer>header span{color:var(--gold-soft);font:var(--text-body) "Songti SC", serif}.escort-offer>header strong{color:var(--ink);font-size:var(--text-body-sm)}.escort-offer-terms{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.escort-offer-terms li{font-size:var(--text-label);justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.escort-offer-terms span{color:var(--muted);flex:none}.escort-offer-terms b{min-width:0;color:var(--ink);text-align:right;font-weight:600}.escort-offer-bonus{background:#00000038;border:1px solid #d8a64047;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:.55rem;padding:.45rem .55rem;display:grid}.escort-offer-bonus img{object-fit:contain;image-rendering:pixelated}.escort-offer-bonus strong{color:var(--gold-soft);font-size:var(--text-label);display:block}.escort-offer-bonus small{color:var(--muted);font-size:var(--text-caption)}.escort-offer>.button{width:100%;margin-top:auto}.escort-mission{justify-items:start;gap:.5rem;margin:.7rem 0 1rem;display:grid}.escort-mission p{margin:0}.escort-mission strong{color:var(--gold-soft)}.dev-only-section{margin-top:1rem}.dev-only-section .station-options{margin:.55rem 0 0}.dev-only-divider{color:var(--muted);font-size:var(--text-caption);letter-spacing:.04em;opacity:.78;align-items:center;gap:.65rem;display:flex}.dev-only-divider:before,.dev-only-divider:after{content:"";background:var(--line);flex:auto;height:1px}.dev-only-divider span{white-space:nowrap;flex:none}@media (width<=620px){.escort-offers{grid-template-columns:minmax(0,1fr)}}.pawnshop-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#050403;padding:0;overflow:hidden}.institution-scene-stage{aspect-ratio:4/3;background:#15100a;width:min(100vw,133.333vh);max-width:none;position:relative;overflow:hidden;box-shadow:0 0 8cqw #000000eb;container-type:inline-size}.institution-scene-art{object-fit:fill;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.institution-scene-leave{z-index:40;color:#d8cdb8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#110d09d1;position:absolute;top:clamp(.65rem,1.5cqw,1.1rem);right:clamp(.65rem,1.5cqw,1.1rem)}.institution-scene-leave:hover,.institution-scene-leave:focus-visible{border-color:var(--gold);color:#fff1c5;outline:none}.pawnshop-interaction{color:#f4f0df;width:28.15%;height:57.7%;position:absolute;top:17.5%;left:63.75%}.pawnshop-list{scrollbar-color:#b22c25 #171717;scrollbar-width:thin;align-content:start;gap:.45cqw;padding:.5cqw .25cqw .8cqw;display:grid;position:absolute;inset:17% 6% 18%;overflow:auto}.pawnshop-empty{color:#ddd7c8;text-align:center;text-shadow:0 .2cqw #000;margin:3cqw .5cqw 0;font:2.15cqw/1.6 Songti SC,serif}.pawnshop-row{color:#eee9d9;text-align:left;cursor:pointer;background:#0003;border:.12cqw solid #0000;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2cqw .7cqw;width:100%;padding:.45cqw .6cqw;font-family:Songti SC,serif;display:grid}.pawnshop-row:hover,.pawnshop-row:focus-visible{background:#9e1f1b3d;border-color:#d4382d;outline:none}.pawnshop-row[data-unavailable=true]{opacity:.58}.pawnshop-item-name{text-overflow:ellipsis;white-space:nowrap;font-size:2.1cqw;overflow:hidden}.pawnshop-item-value{color:#f4eee0;font:1.85cqw ui-monospace,monospace}.pawnshop-row-action{color:#c64a42;letter-spacing:.2em;grid-column:1/-1;font:1.35cqw ui-monospace,monospace}.pawnshop-cash{color:#f0ede5;text-shadow:0 .18cqw #000;justify-content:space-between;align-items:center;font:2cqw Songti SC,serif;display:flex;position:absolute;bottom:8%;left:16%;right:15%}.pawnshop-cash strong{font:2cqw ui-monospace,monospace}.general-shop-interaction{color:#f4f0df;width:34.55%;height:89.2%;position:absolute;top:5.2%;left:62.65%}.general-shop-list{scrollbar-color:#b22c25 #171717;scrollbar-width:thin;align-content:start;gap:.36cqw;padding:.4cqw .2cqw .8cqw;display:grid;position:absolute;inset:14% 7% 18%;overflow:auto}.general-shop-empty{color:#ddd7c8;text-align:center;margin:6cqw 1cqw 0;font:2.2cqw Songti SC,serif}.general-shop-row{color:#eee9d9;text-align:left;cursor:pointer;background:#0003;border:.12cqw solid #0000;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.15cqw .8cqw;width:100%;padding:.42cqw .65cqw;font-family:Songti SC,serif;display:grid}.general-shop-row:hover,.general-shop-row:focus-visible{background:#9e1f1b3d;border-color:#d4382d;outline:none}.general-shop-row[data-unavailable=true]{opacity:.58}.general-shop-row>span{text-overflow:ellipsis;white-space:nowrap;font-size:2cqw;overflow:hidden}.general-shop-row>strong{color:#f4eee0;font:1.8cqw ui-monospace,monospace}.general-shop-row>small{color:#c64a42;letter-spacing:.15em;grid-column:1/-1;font:1.25cqw ui-monospace,monospace}.general-shop-cash{color:#f0ede5;text-shadow:0 .18cqw #000;justify-content:space-between;font:2.1cqw Songti SC,serif;display:flex;position:absolute;bottom:5.3%;left:8%;right:18%}.general-shop-cash strong{font:2.1cqw ui-monospace,monospace}.shop-family-interaction{color:#f4f0df;position:absolute;inset:0}.shop-family-list{scrollbar-color:#a82f28 #171717;scrollbar-width:thin;align-content:start;gap:.28cqw;width:32.2%;height:37.5%;padding:.35cqw .8cqw;display:grid;position:absolute;top:13.5%;right:2.8%;overflow:auto}.shop-family-empty{color:#ddd7c8;text-align:center;text-shadow:0 .2cqw #000;margin:7cqw .8cqw 0;font:2cqw/1.5 Songti SC,serif}.shop-family-row{color:#f2ede0;text-align:left;cursor:pointer;background:#0000003d;border:.12cqw solid #0000;grid-template-columns:minmax(0,1fr) auto;gap:.08cqw .65cqw;width:100%;padding:.34cqw .5cqw;font-family:Songti SC,serif;display:grid}.shop-family-row:hover,.shop-family-row:focus-visible{background:#96181447;border-color:#dd3a31;outline:none}.shop-family-row[data-unavailable=true]{opacity:.58}.shop-family-row>span{text-overflow:ellipsis;white-space:nowrap;font-size:1.85cqw;overflow:hidden}.shop-family-row>strong{font:1.62cqw ui-monospace,monospace}.shop-family-row>small{color:#d14a41;letter-spacing:.12em;grid-column:1/-1;font:1.08cqw ui-monospace,monospace}.black-market-skill-row{background:linear-gradient(90deg,#62276880,#0000004d);border-color:#d4a84e80}.black-market-skill-row>span{color:#f0d58e}.shop-family-item-tip{z-index:18;border:.12cqw solid var(--gold);width:30%;color:var(--ink);pointer-events:none;background:#0c0a07f7;grid-template-columns:auto minmax(0,1fr);gap:.8cqw;padding:.9cqw;animation:.12s ease-out both shop-tip-in;display:grid;position:absolute;right:36.5%;box-shadow:0 1.2cqw 3.2cqw #00000094}.shop-family-item-tip:after{border-top:.5cqw solid #0000;border-bottom:.5cqw solid #0000;border-left:.55cqw solid var(--gold);content:"";width:0;height:0;position:absolute;top:1.1cqw;left:100%}.shop-family-item-tip-icon{background-color:#1b2018;border:.1cqw solid #d2a84c5c;align-self:start;place-items:center;width:5cqw;min-width:0;height:5cqw;min-height:0;padding:.42cqw;display:grid;overflow:hidden}.shop-family-item-tip-icon img{object-fit:contain;object-position:center;width:100%;max-width:100%;height:100%;max-height:100%;image-rendering:pixelated;display:block}.shop-family-item-tip>span:last-child{align-content:start;gap:.35cqw;min-width:0;display:grid}.shop-family-item-tip strong{color:var(--gold-soft);font:1.45cqw Songti SC,serif}.shop-family-item-tip p{color:var(--muted);margin:0;font:.95cqw/1.55 system-ui,sans-serif}@keyframes shop-tip-in{0%{opacity:0;transform:translate(.4cqw)}to{opacity:1;transform:translate(0)}}.shop-family-cash{color:#321a10;text-shadow:0 .1cqw #ffeeb2bf;justify-content:space-between;align-items:center;width:21.6%;font:1.8cqw/1 Songti SC,serif;display:flex;position:absolute;top:62.5%;right:8.4%}.shop-family-cash strong{font:1.8cqw/1 ui-monospace,monospace}.shop-family-inventory{grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));width:27.6%;height:22%;display:grid;position:absolute;top:68.75%;right:5.1%}.shop-family-inventory-slot{color:#391d13;text-align:left;cursor:pointer;background:0 0;border:.1cqw solid #0000;align-self:center;align-items:center;gap:.35cqw;width:100%;min-width:0;height:82%;padding:.05cqw .2cqw;font-family:Songti SC,serif;display:flex}.shop-family-inventory-slot:hover,.shop-family-inventory-slot:focus-visible{background:#ffe99c6b;border-color:#8b2a1fb8;outline:none}.shop-family-inventory-slot:disabled{cursor:default}.shop-family-inventory-slot.empty{opacity:0}.shop-family-inventory-icon{width:2.7cqw;height:2.7cqw;image-rendering:pixelated;background-position:50%;background-repeat:no-repeat;background-size:contain;flex:0 0 2.7cqw}.shop-family-inventory-slot strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.25cqw;font-weight:600;line-height:1;overflow:hidden}.shop-resale-backdrop{z-index:35;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0503028f;place-items:center;display:grid;position:absolute;inset:0}.shop-resale-confirm{color:#eee5d1;background:#16110cf7;border:.14cqw solid #c99c43;grid-template-columns:auto minmax(0,1fr);gap:1.2cqw;width:min(36rem,58%);padding:1.5cqw;display:grid;box-shadow:0 1.5cqw 5cqw #000000b8}.shop-resale-icon{background-color:#1b2018;border:.1cqw solid #d2a84c6b;place-items:center;width:7cqw;height:7cqw;padding:.7cqw;display:grid}.shop-resale-icon img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.shop-resale-confirm .eyebrow{color:#d9ae53;letter-spacing:.16em;margin:0 0 .25cqw;font-size:1.1cqw}.shop-resale-confirm h3{margin:0;font:2.2cqw Songti SC,serif}.shop-resale-confirm p:not(.eyebrow){color:#bcb29f;margin:.55cqw 0 0;font-size:1.15cqw}.shop-resale-confirm p strong{color:#efd17a;font-family:ui-monospace,monospace}.shop-resale-actions{grid-column:1/-1;justify-content:flex-end;gap:.65cqw;display:flex}.shop-resale-actions .button{min-width:8cqw;padding:.65cqw .9cqw;font-size:1.15cqw}.shop-purchase-copy{min-width:0}.shop-purchase-copy>p:not(.eyebrow){line-height:1.55}.shop-purchase-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55cqw;margin:.9cqw 0 0;display:grid}.shop-purchase-facts>div{background:#ffffff06;border:.08cqw solid #d2a84c42;gap:.18cqw;padding:.5cqw .6cqw;display:grid}.shop-purchase-facts dt{color:#928978;font-size:.86cqw}.shop-purchase-facts dd{color:#efd17a;white-space:nowrap;margin:0;font:1.05cqw ui-monospace,monospace}.shop-purchase-copy .shop-purchase-warning{color:#e08a72}.amusement-stage{cursor:url(/generated/amusement/cursor.webp) 15 9,crosshair;-webkit-user-select:none;user-select:none;background:#9bab76}.amusement-stage.hammering,.amusement-stage.hammering *{cursor:none!important}.amusement-scoreboard{z-index:8;color:#f4e6aa;pointer-events:none;background:#161007c2;border:.12cqw solid #39290f80;grid-template-columns:auto auto;gap:.1cqw .8cqw;min-width:13%;padding:.45cqw .75cqw;display:grid;position:absolute;top:2.2%;left:2%;box-shadow:0 .45cqw 1.2cqw #1e180a59}.amusement-scoreboard strong{color:#ffe275;text-shadow:.15cqw .18cqw #5f2719;grid-row:1/3;align-self:center;min-width:3.5cqw;font:2.9cqw/1 ui-monospace,monospace}.amusement-scoreboard span{color:#d9cda5;white-space:nowrap;font:.9cqw/1.2 ui-monospace,monospace}.amusement-target-field{z-index:4;position:absolute;inset:0}.amusement-hole{cursor:inherit;background:0 0;border:0;outline:none;padding:0;display:block;position:absolute;overflow:hidden}.amusement-hole:disabled{cursor:default}.amusement-hole img{object-fit:fill;width:101.01%;max-width:none;height:100.98%;image-rendering:pixelated;pointer-events:none;position:absolute;top:0;left:0}.amusement-hole-0 img{width:101.136%;height:100%}.amusement-hammer{z-index:12;pointer-events:none;width:15.625%;height:22.5%;position:absolute}.amusement-hammer-frame{opacity:0;object-fit:fill;width:100%;height:100%;image-rendering:pixelated;animation:71ms step-end forwards amusement-hammer-frame;position:absolute;inset:0}@keyframes amusement-hammer-frame{0%{opacity:1}to{opacity:0}}.amusement-finished{z-index:20;color:#f3ead2;text-shadow:0 .18cqw #000;background:#110c06a3;place-content:center;justify-items:center;gap:.5cqw;animation:.18s ease-out both amusement-finished-in;display:grid;position:absolute;inset:0}.amusement-finished .eyebrow{color:#deb952;letter-spacing:.25em;margin:0;font:1.15cqw ui-monospace,monospace}.amusement-finished strong{font:3.8cqw Songti SC,serif}.amusement-finished span{color:#c7bfae;font:1.1cqw ui-monospace,monospace}@keyframes amusement-finished-in{0%{opacity:0}to{opacity:1}}.justice-scene-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#120503;padding:0;overflow:hidden}.justice-magistrate-remark{z-index:5;color:#fff0a6;text-align:center;text-shadow:.12cqw .15cqw #4a0904,0 0 .45cqw #160301;pointer-events:none;background:linear-gradient(90deg,#0000,#1e0906ad 12% 88%,#0000);border:.08cqw solid #f1c95c33;border-radius:.35cqw;place-items:center;width:46%;min-height:7.4%;margin:0;padding:.35cqw 1.1cqw;font:2.05cqw/1.25 Songti SC,serif;display:grid;position:absolute;top:24.2%;left:27%}.justice-scene-scroll{z-index:4;color:#24150f;width:43.2%;height:14.2%;position:absolute;top:40.5%;left:32.35%;overflow:hidden}.justice-scene-list{box-sizing:border-box;overscroll-behavior:contain;scrollbar-color:#8b5d33 #d7cda1;scrollbar-gutter:stable;scrollbar-width:thin;align-content:start;gap:.12cqw;height:100%;padding:0 2.25cqw .28cqw .75cqw;display:grid;overflow:hidden auto}.justice-scene-option{color:#2c190f;text-align:left;cursor:pointer;background:#fff8cf57;border:.1cqw solid #5d3a1f57;justify-content:space-between;align-items:center;gap:.7cqw;width:100%;min-height:3.35cqw;padding:.24cqw .55cqw;font-family:Songti SC,serif;display:flex}.justice-scene-option:hover:not(:disabled),.justice-scene-option:focus-visible:not(:disabled){background:#ffeeaad1;border-color:#a21818;outline:none}.justice-scene-option.selected{background:#ffe389e0;border-color:#991d17;box-shadow:inset 0 0 0 .1cqw #92191352}.justice-scene-option:disabled{color:#342e275c;filter:grayscale(.9);cursor:not-allowed;background:#736f5c24;border-color:#453e3424}.justice-offense-copy{min-width:0;display:grid}.justice-offense-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.7cqw;font-weight:700;line-height:1;overflow:hidden}.justice-offense-sentence{color:#8e2119;white-space:nowrap;flex:none;font:1.35cqw ui-monospace,monospace}.justice-offense-sentence.requirement{text-overflow:ellipsis;max-width:43%;font-size:.9cqw;overflow:hidden}.justice-scene-option:disabled .justice-offense-sentence{color:#342e275c}.justice-defendants{z-index:6;opacity:0;pointer-events:none;justify-content:center;align-items:end;gap:.55cqw;width:52%;height:18.5%;transition:opacity .18s ease-out,transform .18s ease-out;display:flex;position:absolute;top:64.5%;left:24%;transform:translateY(1.4cqw)}.justice-defendants.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.justice-defendant{color:#fff0bd;min-width:0;height:100%;box-shadow:none;text-shadow:.1cqw .12cqw #210302;cursor:pointer;background:0 0;border:.12cqw solid #0000;border-radius:.45cqw;flex:1 1 0;align-content:end;justify-items:center;padding:0 .25cqw .35cqw;display:grid;position:relative}.justice-defendant:hover,.justice-defendant:focus-visible{background:linear-gradient(#0000 28%,#8320122e 50%,#370a06db);border-color:#ffdc60b8;outline:none}.justice-defendant.selected{background:linear-gradient(#0000 20%,#c739193d 48%,#510c06eb);border-color:#ffe474;transform:translateY(-.35cqw);box-shadow:0 0 1.1cqw #ffbe3961,inset 0 0 0 .08cqw #791309d1}.justice-defendant-sprite{filter:drop-shadow(0 .35cqw .25cqw #230503b8);pointer-events:none;height:10.1cqw;display:block;overflow:hidden}.justice-defendant-sprite img{max-width:none;height:100%;image-rendering:pixelated;display:block}.justice-defendant strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font:1.1cqw/1.1 Songti SC,serif;overflow:hidden}.justice-defendant-chance{color:#ffe16a;margin-top:.12cqw;font:1.05cqw/1 ui-monospace,monospace}.justice-confirm{z-index:8;color:#ffe79a;letter-spacing:.12em;text-shadow:.1cqw .12cqw #3a0603;cursor:pointer;background:#650d07e6;border:.16cqw solid #e9b840;border-radius:.22cqw;min-width:15%;padding:.7cqw 1.5cqw;font:1.55cqw Songti SC,serif;position:absolute;bottom:3.5%;left:50%;transform:translate(-50%);box-shadow:0 .45cqw .9cqw #1e03028c}.justice-confirm:hover:not(:disabled),.justice-confirm:focus-visible:not(:disabled){background:#9f2113;border-color:#fff0a0;outline:none;transform:translate(-50%)translateY(-.12cqw)}.justice-confirm:disabled{color:#eedaa557;box-shadow:none;cursor:not-allowed;background:#30150f94;border-color:#ae8f4e59}.institution-test-directory{z-index:50;color:#e9dfc7;background:#070503f0;border:1px solid #d6ab4ca6;flex-direction:column;width:min(20rem,100vw - 2rem);max-height:calc(100vh - 2rem);font-family:Songti SC,serif;display:flex;position:fixed;top:1rem;left:1rem;overflow:hidden;box-shadow:0 1rem 3rem #000000b8}.institution-test-directory summary{color:#f1d276;font-size:var(--text-body-sm);letter-spacing:.12em;cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,#b0332057,#d8a84214);flex:none;padding:.7rem .85rem}.institution-test-directory-list{scrollbar-color:#a72d25 #17120d;scrollbar-width:thin;background:#d6ab4c29;flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;min-height:0;max-height:min(85vh,42rem);padding:1px;display:grid;overflow:auto}.institution-test-directory-list button{color:#d9d0bd;text-align:left;cursor:pointer;background:#15110d;border:1px solid #0000;grid-template-columns:auto minmax(0,1fr);gap:.1rem .45rem;min-width:0;padding:.55rem .6rem;font-family:inherit;display:grid}.institution-test-directory-list button:hover,.institution-test-directory-list button:focus-visible{z-index:1;background:#241a11;border-color:#d3a64a;outline:none}.institution-test-directory-list button.active{color:#fff2cf;background:#3a1711;border-color:#d13c2e}.institution-test-directory-list button>span{color:#d8a943;min-width:1.65rem;font:var(--text-label) ui-monospace, monospace;grid-row:1/3;align-self:center}.institution-test-directory-list button>strong{font-size:var(--text-body-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.institution-test-directory-list button>small{color:#8f8879;font:var(--text-caption) ui-monospace, monospace;white-space:nowrap}.building-preview-stage-generic{background:radial-gradient(circle at 32% 40%,#ad371e47,#0000 28%),linear-gradient(135deg,#2a1b11,#080605 70%)}.building-preview-stage-generic:before{content:"";border:.35cqw double #cb9d3e80;position:absolute;inset:4%}.building-preview-stage-generic:after{color:#dcb25373;content:"門\a 派\a 駐\a 地";white-space:pre;font:7cqw/1.1 Songti SC,serif;position:absolute;top:12%;left:9%}.building-preview-interaction{color:#eee5ca;background:#120c07e0;border:.14cqw solid #e0b85cbf;gap:.75cqw;width:31%;padding:1.5cqw;display:grid;position:absolute;top:7%;right:4%;box-shadow:0 1.2cqw 4cqw #00000094}.building-preview-interaction .eyebrow{color:#d6a948;letter-spacing:.18em;margin:0;font:1.1cqw ui-monospace,monospace}.building-preview-interaction h2{margin:0;font:500 2.8cqw Songti SC,serif}.building-preview-interaction>p:not(.eyebrow){color:#bdb39f;margin:0;font-size:1.25cqw;line-height:1.55}.building-preview-interaction>div{gap:.5cqw;display:grid}.building-preview-interaction>div button{color:#dfd5bd;text-align:left;background:#ffffff0a;border:.12cqw solid #d8a94b75;justify-content:space-between;align-items:center;gap:.5cqw;padding:.7cqw .8cqw;font:1.45cqw Songti SC,serif;display:flex}.building-preview-interaction>div button:disabled{opacity:.78}.building-preview-interaction>div small{color:#918777;font:.9cqw ui-monospace,monospace}.home-game-stage{background:#17100b;container-type:inline-size}.home-game-stage .institution-scene-art{filter:brightness(.46)saturate(.72)}.home-game-heading{z-index:2;color:#f1e7cd;background:linear-gradient(90deg,#0f0905f0,#0f0905ad);border-left:.35cqw solid #c99a45;width:33%;padding:1.4cqw;position:absolute;top:5%;left:5%}.home-game-heading .eyebrow{color:#dfb75c;letter-spacing:.13em;margin:0 0 .45cqw;font:1.05cqw ui-monospace,monospace}.home-game-heading h2{margin:0;font:2.7cqw Songti SC,serif}.home-game-heading>p:last-child{color:#c9bea6;margin:.65cqw 0 0;font-size:1.15cqw;line-height:1.55}.home-reward-preview{border-top:.08cqw solid #dcac4d47;gap:.28cqw;margin-top:1cqw;padding-top:.75cqw;display:grid}.home-reward-preview strong{color:#dfb75c;letter-spacing:.12em;font-size:.9cqw}.home-reward-preview span{color:#b8ad97;font-size:.84cqw}.home-game-console{z-index:2;color:#eee5ce;background:#0d0906eb;border:.14cqw solid #dcac4db8;align-content:start;gap:1cqw;width:55%;min-height:72%;padding:1.35cqw;display:grid;position:absolute;bottom:5%;right:4%;box-shadow:0 1.4cqw 5cqw #000000b3}.home-game-0 .home-game-console{width:79%;min-height:0;inset:3% auto auto 10%}.home-game-0 .home-game-heading{width:40%;top:73%;bottom:auto;left:10%}.home-game-0 .home-timber-stage{height:29cqw}.home-game-1 .home-game-console{width:79%;min-height:0;inset:3% auto auto 10%}.home-game-1 .home-game-heading{width:40%;top:73%;bottom:auto;left:10%}.home-game-1 .home-memory-stage{height:29cqw}.home-game-2 .home-game-console{width:79%;min-height:0;inset:3% auto auto 10%}.home-game-2 .home-game-heading{width:40%;top:73%;bottom:auto;left:10%}.home-game-2 .home-snake-stage{height:29cqw}.home-game-3 .home-game-console{width:79%;min-height:0;inset:3% auto auto 10%}.home-game-3 .home-game-heading{width:40%;top:73%;bottom:auto;left:10%}.home-game-3 .home-runner-stage{height:29cqw}.home-game-4 .home-game-console{width:79%;min-height:0;inset:3% auto auto 10%}.home-game-4 .home-game-heading{width:40%;top:73%;bottom:auto;left:10%}.home-game-4 .home-blackjack-stage{height:29cqw}.home-game-5 .home-game-console{width:79%;min-height:0;inset:3% auto auto 10%}.home-game-5 .home-game-heading{width:40%;top:73%;bottom:auto;left:10%}.home-game-5 .home-breakout-stage{height:29cqw}.home-game-status{grid-template-columns:repeat(3,1fr);gap:.4cqw;display:grid}.home-game-status span{color:#9d9584;background:#ffffff0b;gap:.1cqw;padding:.45cqw;font-size:.82cqw;display:grid}.home-game-status strong{color:#f0cf7a;font-size:1.05cqw}.home-game-message{color:#d7cdb7;background:#86261a21;border-left:.22cqw solid #9f3528;min-height:2.8em;margin:0;padding:.65cqw .8cqw;font-size:1.1cqw;line-height:1.45}.home-game-message.runner-result-hidden{display:none}.home-stake-picker{place-items:center;gap:1.2cqw;padding:2cqw 1cqw;display:grid}.home-stake-picker p{color:#a9a08d;text-align:center;max-width:34cqw;margin:0;font-size:1cqw}.home-stake-picker>div,.home-game-actions,.home-wind-controls{justify-content:center;gap:.7cqw;display:flex}.home-game-ready-start{place-items:center;padding:.35cqw 0 .15cqw;display:grid}.home-game-settle{gap:.55cqw}.home-game-console button.home-game-settle-claim{letter-spacing:.14em}.home-game-console button.home-game-settle-claim.loss{color:#d8cbb4;letter-spacing:.2em;background:linear-gradient(#483e30e0,#221c16f5);border-color:#a08c6e80;box-shadow:0 .45cqw 1.4cqw #0000006b,inset 0 .1cqw #ffe6aa1a}.home-game-console button.home-game-settle-claim.loss:hover:not(:disabled),.home-game-console button.home-game-settle-claim.loss:focus-visible{background:linear-gradient(#584a38f0,#2a221afa);border-color:#c8b48cb3}.home-game-console button{color:#eadfca;cursor:pointer;background:#6f3d1a66;border:.1cqw solid #daac52a8;border-radius:.2cqw;min-height:2.5cqw;padding:.55cqw 1cqw;font:1.05cqw Songti SC,serif}.home-game-console button:hover:not(:disabled),.home-game-console button:focus-visible{background:#9f4d1f8c;border-color:#f2c769;outline:none}.home-game-console button:disabled{opacity:.4;cursor:default}.home-game-console button.home-game-primary{color:#fff0c4;background:linear-gradient(#a7472f,#67261c)}.home-game-console button.home-game-start-large{letter-spacing:.18em;border-width:.14cqw;border-radius:.28cqw;min-width:min(42cqw,100%);min-height:4.4cqw;padding:.85cqw 2.4cqw;font-size:1.85cqw;box-shadow:0 .45cqw 1.4cqw #782a128c,inset 0 .1cqw #ffe6aa47}.home-game-console button.home-game-start-large:hover:not(:disabled),.home-game-console button.home-game-start-large:focus-visible{background:linear-gradient(#c25535,#7a2f1f);box-shadow:0 .55cqw 1.8cqw #a03a189e,inset 0 .1cqw #ffe6aa57}.home-game-console button.home-advantage{color:#bde8e6;background:#215b5e6b;border-color:#79b7ba}.home-memory-board.is-ready .home-memory-grid button,.home-runner-board.is-ready .home-runner-character{pointer-events:none}.home-timber-board{gap:.42cqw;display:grid}.home-timber-stage{background:radial-gradient(circle at 50% 110%,#ad4d2052,#0000 38%),linear-gradient(#14201c,#1f2d22 50%,#30231b);border:.1cqw solid #796545;height:20cqw;position:relative;overflow:hidden;box-shadow:inset 0 0 4cqw #000c}.home-timber-stage:before{content:"";opacity:.22;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 2.65cqw,#e1cf911f 2.65cqw 2.73cqw);position:absolute;inset:0}.home-timber-mountain{opacity:.55;background:linear-gradient(168deg,#0000 0 13%,#34261d 13% 30%,#0000 30% 39%,#402d1f 39% 62%,#0000 62% 72%,#31231c 72%);height:18%;position:absolute;bottom:0;left:0;right:0}.home-timber-stack{position:absolute;inset:0}.home-timber-level{height:8.2%;transition:bottom 90ms cubic-bezier(.18,.72,.24,1);position:absolute;left:0;right:0}.home-timber-trunk{background:linear-gradient(90deg,#4a2617,#9a5c2d 22%,#62321c 55%,#b26d34 80%,#4b2517);border:.09cqw solid #b37b39;width:7.2%;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:inset .25cqw 0 #ffdb8921,inset -.2cqw 0 #1f0c077a,0 .25cqw .35cqw #0000008c}.home-timber-trunk span{opacity:.35;border-block:.06cqw solid #d49a4d;position:absolute;inset:14% 18%}.home-timber-branch{background:linear-gradient(#8f5427,#492317);border:.09cqw solid #9e6831;width:23%;height:39%;position:absolute;top:22%;box-shadow:inset 0 .12cqw #ffd98524,0 .22cqw .3cqw #00000094}.home-timber-branch.left{transform-origin:100%;border-radius:60% 0 0 42%;right:53.1%;transform:rotate(3deg)}.home-timber-branch.right{transform-origin:0;border-radius:0 60% 42% 0;left:53.1%;transform:rotate(-3deg)}.home-timber-branch:after{content:"";background:radial-gradient(circle,#526b36,#22331f 68%);border-radius:50%;width:24%;height:195%;position:absolute;top:-55%;box-shadow:0 0 .55cqw #1f3a1bb3}.home-timber-branch.left:after{left:-8%}.home-timber-branch.right:after{right:-8%}.home-timber-branch b{z-index:2;color:#f8dd8e;white-space:nowrap;font-size:.58cqw;font-weight:600;position:absolute;top:50%;transform:translateY(-50%)}.home-timber-branch.left b{right:.4cqw}.home-timber-branch.right b{left:.4cqw}.home-timber-level.next .home-timber-branch{border-color:#ffcf5a;animation:.55s ease-in-out infinite alternate home-timber-next-pulse;box-shadow:0 0 .7cqw #efb436a6,inset 0 0 0 .08cqw #ffe79933}@keyframes home-timber-next-pulse{to{filter:brightness(1.28)}}.home-timber-level.danger .home-timber-branch{background:linear-gradient(#9c422b,#4a1d17);border-color:#d35b42;box-shadow:0 0 .75cqw #d6442a94}.home-timber-character{z-index:7;filter:drop-shadow(0 .35cqw .28cqw #000c);image-rendering:pixelated;margin:0;animation:.16s cubic-bezier(.2,.75,.25,1) home-timber-strike;position:absolute;bottom:.2cqw;overflow:hidden;transform:translate(-50%)}.home-timber-character img{height:100%;image-rendering:pixelated;display:block}@keyframes home-timber-strike{0%{transform:translate(-50%)scale(.94)}45%{filter:drop-shadow(0 0 .75cqw #ffc048cc);transform:translate(-50%)translateY(-.28cqw)scale(1.08)}to{transform:translate(-50%)}}.home-timber-character.crushed{transform-origin:50% 82%;animation:.68s ease-out forwards home-timber-crushed}@keyframes home-timber-crushed{35%{filter:sepia(.5)drop-shadow(0 0 .8cqw #db5639);transform:translate(-50%)translateY(.4cqw)scale(1.12,.72)}to{filter:brightness(.72);transform:translate(-50%)translateY(1.1cqw)rotate(76deg)scale(.88)}}.home-timber-impact{z-index:8;pointer-events:none;border-top:.18cqw solid #ffd271;border-radius:50%;width:2.3cqw;height:1.2cqw;animation:.38s ease-out both home-timber-impact;position:absolute;bottom:3.1cqw;box-shadow:0 -.2cqw .75cqw #ffa834d9}.home-timber-impact.left{left:42%}.home-timber-impact.right{right:42%}@keyframes home-timber-impact{0%{opacity:1;transform:scale(.35)}to{opacity:0;transform:translateY(-.8cqw)scale(2.1)}}.home-timber-forecast{z-index:6;color:#e8dcc2;background:#120b08d1;border-left:.18cqw solid #c94334;gap:.13cqw;min-width:13.5cqw;padding:.55cqw .7cqw;display:grid;position:absolute;top:.8cqw;right:1cqw}.home-timber-forecast span{color:#9f9786;letter-spacing:.12em;font-size:.65cqw}.home-timber-forecast strong{color:#f0c96e;font-size:.85cqw}.home-timber-forecast small{color:#8f8778;font:.62cqw ui-monospace,monospace}.home-timber-stage.shielded .home-timber-forecast{border-left-color:#62bfba;box-shadow:-.35cqw 0 .75cqw #49b7b02e}.home-timber-feedback{z-index:9;color:#ffe083;text-shadow:0 0 .8cqw #d24b2f;pointer-events:none;font:1.8cqw ui-monospace,monospace;animation:.65s ease-out both home-timber-feedback;position:absolute;top:58%;left:50%;transform:translate(-50%,-50%)}@keyframes home-timber-feedback{0%{opacity:0;transform:translate(-50%,-15%)scale(.7)}25%{opacity:1;transform:translate(-50%,-55%)scale(1.15)}to{opacity:0;transform:translate(-50%,-105%)}}.home-timber-result{top:18%}.home-timber-reward-track{position:relative}.home-timber-density-label{color:#c89c43;font-size:.64cqw;font-weight:600}.home-timber-controls{grid-template-columns:1fr 1fr;gap:.65cqw;display:grid}.home-timber-controls button{touch-action:manipulation;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.65cqw;min-height:3.2cqw;font-size:1.15cqw;display:flex}.home-timber-controls button span{font:1.5cqw ui-monospace,monospace}.home-timber-board>small{color:#7f918b;text-align:center;font-size:.72cqw}.home-memory-board{text-align:center;display:grid}.home-memory-stage{background:radial-gradient(circle at 50% 45%,#51694b4d,#0000 38%),linear-gradient(135deg,#17231b,#0e1712);border:.1cqw solid #6d7660;position:relative;overflow:hidden;box-shadow:inset 0 0 3cqw #000000b8}.home-memory-stage:before{content:"";opacity:.22;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 3.5cqw,#ccc0892e 3.5cqw 3.6cqw),repeating-linear-gradient(90deg,#0000 0 9cqw,#ccc0891f 9cqw 9.1cqw);position:absolute;inset:0}.home-memory-grid{z-index:2;grid-template-columns:repeat(4,minmax(0,1fr));align-content:center;gap:1cqw;min-height:0;display:grid;position:absolute;inset:2.4cqw 9.5cqw}.home-memory-grid[data-rows="1"]{gap:1.1cqw;height:min(38%,11cqw);inset:50% 12% auto;transform:translateY(-50%)}.home-memory-grid[data-rows="2"]{gap:1cqw}.home-memory-grid[data-rows="3"]{gap:.7cqw;inset:1.2cqw 7.5cqw}.home-memory-grid button{perspective:20cqw;background:repeating-linear-gradient(45deg,#3b2319,#3b2319 .4cqw,#553523 .4cqw .8cqw);border:.14cqw solid #765335;place-items:center;min-width:0;min-height:0;padding:.45cqw;display:grid;overflow:hidden;box-shadow:0 .45cqw .7cqw #0000008c}.home-memory-grid button:disabled{opacity:1}.home-memory-grid button b{color:#e2b85c;background:#1e100ab8;border:.1cqw solid #e0b75a80;border-radius:50%;place-items:center;width:3.5cqw;height:3.5cqw;font:2cqw Songti SC,serif;display:grid}.home-memory-grid button.face-up{color:#3c2518;background:linear-gradient(135deg,#e2d5aa,#ad996d);border-color:#c4a669;transform:translateY(-.08cqw)}.home-memory-grid button.face-up img{object-fit:contain;width:78%;height:78%;min-height:0;max-height:100%;image-rendering:pixelated;filter:drop-shadow(0 .3cqw .25cqw #0006);display:block}.home-memory-grid button.matched{color:#def4df;background:linear-gradient(135deg,#46745b,#274536);border-color:#75c69c;box-shadow:0 0 1cqw #60d39b94}.home-memory-preview-label{z-index:5;color:#f3d983;background:#120c08d1;align-items:baseline;gap:.55cqw;padding:.3cqw .7cqw;display:flex;position:absolute;top:.55cqw;left:50%;transform:translate(-50%)}.home-memory-preview-label strong{font-size:.9cqw}.home-memory-preview-label span{color:#b9aa8d;font-size:.68cqw}.home-memory-feedback{z-index:7;pointer-events:none;font:3.2cqw ui-monospace,monospace;animation:.7s ease-out forwards home-memory-feedback-pop;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.home-memory-feedback.gain{color:#8de0aa;text-shadow:0 0 1cqw #40a86d}.home-memory-feedback.penalty{color:#ff8c78;text-shadow:0 0 1cqw #c43a2c}@keyframes home-memory-feedback-pop{0%{opacity:0;transform:translate(-50%,-30%)scale(.65)}35%{opacity:1;transform:translate(-50%,-55%)scale(1.1)}to{opacity:0;transform:translate(-50%,-100%)scale(1)}}.home-memory-reward-track{padding-top:4.15cqw;position:relative}.home-memory-reward-milestones{height:4.05cqw;position:absolute;top:0;left:0;right:0}.home-snake-board{gap:.42cqw;display:grid}.home-snake-stage{background:radial-gradient(circle,#4771533d,#0000 42%),linear-gradient(135deg,#13251d,#0a1511);border:.1cqw solid #667a69;position:relative;overflow:hidden;box-shadow:inset 0 0 3cqw #020b07d6}.home-snake-grid{z-index:2;grid-template-rows:repeat(10,2.55cqw);grid-template-columns:repeat(18,2.55cqw);gap:.08cqw;width:max-content;height:max-content;display:grid;position:absolute;top:.6cqw;left:50%;transform:translate(-50%)}.home-snake-grid>span{background:#ffffff04;border:.05cqw solid #aec5a50e;place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:visible}.home-snake-grid>span.obstacle{background:#2f271c8f}.home-snake-obstacle{background:linear-gradient(135deg,#766747 0 46%,#4b422f 47% 100%);border:.1cqw solid #7d6947;width:72%;height:72%;transform:rotate(45deg)scale(.72);box-shadow:inset .18cqw .18cqw #d8c48f33,0 .22cqw .26cqw #0000009e}.home-snake-hazard,.home-snake-head,.home-snake-rival{z-index:4;filter:drop-shadow(0 .22cqw .2cqw #000000d1);width:2.35cqw;height:2.35cqw;image-rendering:pixelated;margin:0;position:absolute;overflow:hidden}.home-snake-hazard{inset:50% auto auto 50%;transform:translate(-50%,-50%)}.home-snake-hazard img,.home-snake-head img,.home-snake-rival img{height:100%;image-rendering:pixelated;display:block}.home-snake-grid>span.bomb-pending{z-index:9;background:#aa2d1957;border-color:#ffc24be6;animation:.48s ease-in-out infinite alternate home-snake-bomb-landing-pulse}.home-snake-bomb-landing{z-index:8;pointer-events:none;border:.12cqw dashed #ffbd55;border-radius:50%;position:absolute;inset:.18cqw;box-shadow:0 0 .65cqw #ff4d27db,inset 0 0 .5cqw #ffb8446b}.home-snake-bomb-countdown{z-index:10;color:#fff4c4;pointer-events:none;background:#91190feb;border:.1cqw solid #ffdc83;border-radius:50%;place-items:center;width:1.55cqw;height:1.55cqw;font:1.05cqw/1 ui-monospace,monospace;display:grid;position:absolute;box-shadow:0 0 .55cqw #ff4e2e}@keyframes home-snake-bomb-landing-pulse{0%{background:#aa2d192e}to{background:#dc4a1c85;box-shadow:0 0 .75cqw #ff5726bd}}.home-snake-pickup{z-index:3;object-fit:contain;width:2.15cqw;height:2.15cqw;image-rendering:pixelated;filter:drop-shadow(0 0 .45cqw #efcf5e94);animation:.8s ease-in-out infinite alternate home-snake-pickup-pulse;position:absolute}@keyframes home-snake-pickup-pulse{0%{transform:scale(.92)}to{filter:drop-shadow(0 0 .7cqw #f7da63d1);transform:scale(1.08)}}.home-snake-body-segment{background:radial-gradient(circle at 36% 30%,#b3efaf,#43875a 56%,#244e37);border:.1cqw solid #7cc88b;border-radius:45%;width:62%;height:62%;box-shadow:0 0 .45cqw #60d27c8f}.home-snake-head{z-index:7;bottom:-.1cqw;left:50%;overflow:hidden;transform:translate(-50%)}.home-snake-head img{margin:0 auto}.home-snake-grid>span.head{z-index:8;background:#46a46724;outline:.09cqw solid #78e69c85;box-shadow:0 0 .7cqw #4ec8767a}.home-snake-grid>span.head.crashed{background:#be372142;outline-color:#ff8b66;box-shadow:0 0 1cqw #f3492dc7}.home-snake-grid>span.head.crashed .home-snake-head{transform-origin:50% 80%;animation:.62s ease-out forwards home-snake-head-fall}@keyframes home-snake-head-fall{to{filter:sepia(.5)brightness(.8);transform:translate(-50%)translate(.5cqw,.4cqw)rotate(76deg)scale(.9)}}.home-snake-rival{z-index:6;filter:drop-shadow(0 0 .45cqw #ea4a38c2);bottom:-.05cqw;left:50%;overflow:hidden;transform:translate(-50%)}.home-snake-grid>span.rival{background:#8e201b33;outline:.08cqw solid #e8503c99;box-shadow:0 0 .55cqw #d6372973}.home-snake-legend{z-index:3;color:#8fa497;gap:1.2cqw;font:.68cqw ui-monospace,monospace;display:flex;position:absolute;bottom:.48cqw;right:1cqw}.home-snake-legend span{align-items:center;gap:.28cqw;display:flex}.home-snake-legend i{border-radius:50%;width:.55cqw;height:.55cqw;display:block}.home-snake-legend i.good{background:#e4c75e;box-shadow:0 0 .35cqw #d7b53c}.home-snake-legend i.danger{background:#bd493b;border-radius:0}.home-snake-legend i.hunter{background:#d75a50;box-shadow:0 0 .3cqw #d75a50}.home-snake-legend .speed{color:#e0bd66}.home-snake-control-row{grid-template-columns:auto 1fr;justify-content:center;align-items:center;gap:.85cqw;display:grid}.home-snake-control-row>small{color:#7f918b;font-size:.72cqw}.home-snake-controls{grid-template-rows:repeat(2,2.35cqw);grid-template-columns:repeat(3,2.6cqw);gap:.18cqw;width:8.4cqw;display:grid}.home-snake-controls button{touch-action:manipulation;-webkit-user-select:none;user-select:none;min-width:0;min-height:0;padding:0;font:1.35cqw ui-monospace,monospace}.home-snake-controls button.queued{color:#d7fff4;background:#237e719e;border-color:#8ad7c9;transform:translateY(-.08cqw);box-shadow:0 0 .65cqw #53d5be85}.home-snake-controls button:first-child{grid-column:2}.home-snake-controls button:nth-child(2){grid-area:2/1}.home-snake-controls button:nth-child(3){grid-area:2/2}.home-snake-controls button:nth-child(4){grid-area:2/3}.home-runner-board{gap:.42cqw;display:grid}.home-runner-stage{background:linear-gradient(90deg,#1b332ff5 0 33.1%,#254139f5 33.1% 66.2%,#1b332ff5 66.2% 100%);border:.1cqw solid #61756a;height:20cqw;position:relative;overflow:hidden;box-shadow:inset 0 0 3cqw #040d0bb8}.home-runner-stage:before{content:"";position:absolute;inset:0}.home-runner-ground{z-index:0;pointer-events:none;background:repeating-linear-gradient(0deg,#e1d2990a 0 .1cqw,#0000 .1cqw 2.2cqw);height:calc(100% + 2.2cqw);position:absolute;top:-2.2cqw;left:0;right:0}.home-runner-road-lines{pointer-events:none;height:calc(100% + 1.45cqw);position:absolute;top:-1.45cqw;left:0;right:0}.home-runner-road-lines i{background:repeating-linear-gradient(0deg,#e2d6aa70 0 .8cqw,#0000 .8cqw 1.45cqw);width:.1cqw;position:absolute;top:0;bottom:0}.home-runner-road-lines i:first-child{left:33.333%}.home-runner-road-lines i:last-child{left:66.666%}.home-runner-wind{z-index:1;opacity:.38;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 3.5cqw,#c7efe94d 3.5cqw 3.6cqw,#0000 3.6cqw 7.2cqw);height:calc(100% + 7.2cqw);position:absolute;top:-3.6cqw;left:0;right:0}.home-runner-obstacle-row{z-index:2;pointer-events:none;grid-template-columns:repeat(3,1fr);width:100%;display:grid;position:absolute;left:0}.home-runner-obstacle-row>span{place-items:center;height:3.5cqw;display:grid}.home-runner-obstacle-row figure{filter:drop-shadow(0 .35cqw .3cqw #000000c2);width:3.4cqw;height:3.4cqw;image-rendering:pixelated;margin:0;overflow:hidden}.home-runner-obstacle-row figure img{height:100%;image-rendering:pixelated;display:block}.home-runner-obstacle-row figure.collision-active{outline-offset:.16cqw;background:#c428193d;outline:.16cqw solid #ff5b39f5;animation:.42s ease-in-out infinite alternate home-runner-collision-pulse;box-shadow:0 0 .85cqw #ff4126d1,inset 0 0 .5cqw #ff744880}@keyframes home-runner-collision-pulse{0%{outline-color:#ff5b39ad;box-shadow:0 0 .45cqw #ff412680}to{outline-color:#ffb05e;box-shadow:0 0 1.05cqw #ff4126f2,inset 0 0 .55cqw #ff744894}}.home-runner-character{z-index:4;filter:drop-shadow(0 .35cqw .28cqw #000000c2);width:3.5cqw;height:5.1cqw;image-rendering:pixelated;margin:0;transition:left .12s cubic-bezier(.2,.9,.3,1.25);position:absolute;bottom:4%;overflow:hidden;transform:translate(-50%)}.home-runner-character img{height:100%;image-rendering:pixelated;display:block}.home-runner-character.crashed{z-index:5;transform-origin:50% 88%;animation:.72s cubic-bezier(.22,.78,.28,1) forwards home-runner-character-fall}.home-runner-character.crashed img{filter:sepia(.45)saturate(.75)brightness(.9)}@keyframes home-runner-character-fall{0%{transform:translate(-50%)rotate(0)scale(1)}22%{filter:drop-shadow(0 0 .8cqw #ffb266);transform:translate(-50%)translateY(-.9cqw)rotate(-13deg)scale(1.08)}58%{transform:translate(-50%)translate(.55cqw,.35cqw)rotate(62deg)scale(1)}to{filter:drop-shadow(.3cqw .15cqw .3cqw #000000c7);transform:translate(-50%)translate(.9cqw,1.1cqw)rotate(82deg)scale(.96)}}.home-runner-impact{z-index:6;pointer-events:none;border:.18cqw solid #ffd27a;border-radius:50%;width:1.2cqw;height:1.2cqw;animation:.55s ease-out forwards home-runner-impact-burst;position:absolute;bottom:8%;transform:translate(-50%);box-shadow:0 0 1cqw #ff6d38}@keyframes home-runner-impact-burst{0%{opacity:1;transform:translate(-50%)scale(.3)}to{opacity:0;transform:translate(-50%)scale(4.2)}}.home-runner-result{z-index:8;color:#e7ddc6;text-align:center;-webkit-backdrop-filter:blur(.12cqw);backdrop-filter:blur(.12cqw);background:#0d0a08db;border:.12cqw solid #e1bb60b8;justify-items:center;gap:.55cqw;width:min(34cqw,62%);padding:1.05cqw 1.4cqw;animation:.35s ease-out .42s both home-runner-result-in;display:grid;position:absolute;top:8%;left:50%;transform:translate(-50%);box-shadow:0 .8cqw 2.6cqw #000000b8}.home-runner-result>strong{color:#ebca71;font:2cqw Songti SC,serif}.home-runner-result.loss>strong{color:#df8474}.home-runner-result p{color:#ddd2bb;margin:0;font-size:1cqw}.home-runner-result span,.home-runner-result small{color:#b9aa8d;font-size:.82cqw}.home-runner-result button{min-height:2.15cqw;padding:.35cqw 1.1cqw}@keyframes home-runner-result-in{0%{opacity:0;transform:translate(-50%,-.7cqw)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}.home-runner-countdown{z-index:6;color:#f7ebbd;-webkit-backdrop-filter:blur(.08cqw);backdrop-filter:blur(.08cqw);background:#0815149e;place-content:center;justify-items:center;display:grid;position:absolute;inset:0}.home-runner-countdown strong{text-shadow:0 0 1.2cqw #9de4dc;font:4.6cqw/1 ui-monospace,monospace;animation:1s ease-out infinite home-runner-count-pop}.home-runner-countdown span{color:#b9d9d2;letter-spacing:.28em;margin-top:.5cqw;font-size:1cqw}@keyframes home-runner-count-pop{0%{opacity:.2;transform:scale(1.35)}to{opacity:1;transform:scale(1)}}.home-runner-reward-track{padding-top:4.15cqw;position:relative}.home-runner-reward-milestones{height:4.05cqw;position:absolute;top:0;left:0;right:0}.home-runner-reward-milestone{color:#736d61;align-items:center;gap:.38cqw;transition:color .18s,opacity .18s;display:flex;position:absolute;top:.25cqw;transform:translate(-50%)}.home-runner-reward-milestone.end{transform:translate(-100%)}.home-runner-reward-milestone:after{content:"";background:currentColor;width:.12cqw;height:.78cqw;position:absolute;bottom:-.92cqw;left:50%;transform:translate(-50%)}.home-runner-reward-milestone.end:after{left:auto;right:.7cqw;transform:none}.home-runner-reward-milestone figure{background:#0e0c09e0;border:.1cqw solid #5d5548;border-radius:.25cqw;flex:none;place-items:center;width:2.4cqw;height:2.4cqw;margin:0;display:grid;overflow:hidden;box-shadow:0 .25cqw .55cqw #0000008c}.home-runner-reward-milestone img{object-fit:contain;width:88%;height:88%;image-rendering:pixelated;filter:grayscale(.82)brightness(.62);display:block}.home-runner-reward-milestone span{white-space:nowrap;gap:.08cqw;display:grid}.home-runner-reward-milestone strong{font-size:.7cqw}.home-runner-reward-milestone small{color:inherit;font-size:.64cqw}.home-runner-reward-milestone.reached{color:#e8c65e}.home-runner-reward-milestone.reached figure{background:#68481473;border-color:#e8c65e;box-shadow:0 0 .8cqw #e5c35275}.home-runner-reward-milestone.reached img{filter:none}.home-runner-reward-milestone.next{color:#f2df9a;animation:.85s ease-in-out infinite alternate home-runner-reward-pulse}.home-runner-reward-milestone.end.next{animation-name:home-runner-reward-pulse-end}.home-runner-reward-milestone.next figure{border-color:#e8c65e;box-shadow:0 0 .65cqw #e5c35261}.home-runner-reward-milestone.next img{filter:grayscale(.28)brightness(.9)}.home-runner-reward-milestone.future{opacity:.54}@keyframes home-runner-reward-pulse{0%{transform:translate(-50%)scale(.97)}to{transform:translate(-50%)scale(1.04)}}@keyframes home-runner-reward-pulse-end{0%{transform:translate(-100%)scale(.97)}to{transform:translate(-100%)scale(1.04)}}.home-runner-meter{background:#30261c;height:.3cqw;position:relative;overflow:hidden;box-shadow:inset 0 0 0 .06cqw #65533a}.home-runner-meter i{transition:width 80ms linear,left 80ms linear;display:block;position:absolute;top:0;bottom:0}.home-runner-meter i.base{background:linear-gradient(90deg,#b98730,#f0d568);left:0;box-shadow:0 0 .65cqw #edcf62b8}.home-runner-meter i.owner-bonus{background:linear-gradient(90deg,#62aaa8,#91e4dc);box-shadow:0 0 .7cqw #74e0d7d1}.home-runner-owner-bonus-label{color:#86d8d2;letter-spacing:.06em;font-size:.64cqw;font-weight:600}.home-runner-controls{grid-template-columns:1fr 1fr;gap:.65cqw;display:grid}.home-runner-controls button{touch-action:manipulation;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.65cqw;min-height:3.2cqw;font-size:1.15cqw;display:flex}.home-runner-controls button span{font:1.5cqw ui-monospace,monospace}.home-runner-board>small{color:#7f918b;text-align:center;font-size:.72cqw}.home-game-earned{background:#8252182e;border:.1cqw solid #d3a94c59;padding:.65cqw 1cqw;color:#e5c876!important}.home-blackjack-board{gap:.42cqw;display:grid}.home-blackjack-stage{background:radial-gradient(circle at 69% 45%,#9a681e29,#0000 34%),linear-gradient(115deg,#142e25,#17372a 48%,#241a12);border:.1cqw solid #826f4c;height:20cqw;position:relative;overflow:hidden;box-shadow:inset 0 0 4cqw #020806c7}.home-blackjack-stage:before{content:"";opacity:.26;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 2.45cqw,#e9d5971f 2.45cqw 2.52cqw);position:absolute;inset:0}.home-blackjack-stream{background:linear-gradient(#220c09eb,#491912c7);border:.1cqw solid #ddb658a8;width:20.5cqw;position:absolute;top:1cqw;bottom:1cqw;left:1.8cqw;overflow:hidden;box-shadow:0 .8cqw 2cqw #00000085,inset 0 0 1.8cqw #d689281f}.home-blackjack-stream:before,.home-blackjack-stream:after{z-index:3;content:"";pointer-events:none;height:2.5cqw;position:absolute;left:0;right:0}.home-blackjack-stream:before{background:linear-gradient(#32130f,#0000);top:2.25cqw}.home-blackjack-stream:after{background:linear-gradient(#0000,#32130f);bottom:0}.home-blackjack-stream header,.home-blackjack-hand header{color:#eadcb8;background:#080705a8;border-bottom:.08cqw solid #e1bb5d61;justify-content:space-between;align-items:center;gap:.5cqw;min-height:2.25cqw;padding:0 .78cqw;display:flex}.home-blackjack-stream header strong{letter-spacing:.12em;font-size:.9cqw}.home-blackjack-stream header small{color:#e9c76b;font:.78cqw ui-monospace,monospace}.home-blackjack-stream>div{position:absolute;inset:2.25cqw 0 0;overflow:hidden}.home-game-console button.home-blackjack-card{color:#241713;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#fff7df,#e7d5ad);border:.12cqw solid #d4bf8f;border-radius:.28cqw;width:4.85cqw;height:6.15cqw;min-height:0;padding:0;font-family:Georgia,serif;display:block;position:absolute;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 .32cqw .45cqw #000000b8}.home-game-console button.home-blackjack-card:hover:not(:disabled),.home-game-console button.home-blackjack-card:focus-visible{z-index:5;color:#25120c;background:#fff5cf;border-color:#ffe392;transform:translate(-50%)scale(1.06);box-shadow:0 0 0 .12cqw #bd482f,0 .45cqw .8cqw #000c}.home-blackjack-card>span,.home-blackjack-card>i{color:#251713;font:1.05cqw/1 Georgia,serif;position:absolute}.home-blackjack-card>span{top:.38cqw;left:.42cqw}.home-blackjack-card>i{font-style:normal;bottom:.38cqw;right:.42cqw;transform:rotate(180deg)}.home-blackjack-card>b{color:#1e1b18;font:2.35cqw/1 Georgia,serif;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.home-blackjack-card>b.red{color:#a52d27}.home-blackjack-hand{background:radial-gradient(circle at 50% 45%,#ffe08914,#0000 48%),#081611d1;border:.1cqw solid #dab55994;grid-template-rows:auto 1fr auto;display:grid;position:absolute;inset:2.6cqw 2.6cqw 2.6cqw 24.8cqw;overflow:hidden;box-shadow:inset 0 0 2.5cqw #00000085,0 .7cqw 2cqw #00000057}.home-blackjack-hand.over{border-color:#c84b39;box-shadow:inset 0 0 2.8cqw #911c164d,0 0 1.2cqw #ca382759}.home-blackjack-hand header{min-height:3cqw;padding:0 1.2cqw}.home-blackjack-hand header>span{color:#bdb298;letter-spacing:.1em;font-size:.92cqw}.home-blackjack-hand header>strong{color:#f1cc69;font:2cqw ui-monospace,monospace}.home-blackjack-hand.over header>strong{color:#ed7f69}.home-blackjack-hand header small{color:#938a78;font-size:.78cqw}.home-blackjack-hand>div{justify-content:center;align-items:center;gap:.85cqw;min-height:0;padding:1.3cqw;display:flex;overflow:hidden}.home-blackjack-hand>div>p{color:#7e9185;letter-spacing:.08em;margin:0;font-size:1.05cqw}.home-game-console .home-blackjack-hand button.home-blackjack-card{flex:none;width:4.3cqw;height:5.45cqw;animation:.24s cubic-bezier(.2,.85,.32,1.18) both home-blackjack-card-deal;position:relative;top:auto;left:auto;transform:none}.home-game-console .home-blackjack-hand button.home-blackjack-card:hover:not(:disabled),.home-game-console .home-blackjack-hand button.home-blackjack-card:focus-visible{transform:translateY(-.35cqw)scale(1.04)}.home-blackjack-hand .home-blackjack-card>span,.home-blackjack-hand .home-blackjack-card>i{font-size:.95cqw}.home-blackjack-hand .home-blackjack-card>b{font-size:2.15cqw}.home-blackjack-hand .home-blackjack-card>small{color:#f7e7ba;opacity:0;background:#5b1b13e0;padding:.23cqw;font:.58cqw Songti SC,serif;transition:opacity .12s;position:absolute;bottom:0;left:0;right:0}.home-blackjack-hand .home-blackjack-card:hover>small,.home-blackjack-hand .home-blackjack-card:focus-visible>small{opacity:1}@keyframes home-blackjack-card-deal{0%{opacity:0;transform:translate(-3cqw,-.7cqw)rotate(-12deg)scale(.8)}to{opacity:1;transform:none}}.home-blackjack-hand footer{color:#8d9d91;background:#0807056b;border-top:.08cqw solid #dcb55947;justify-content:center;align-items:center;gap:2.4cqw;min-height:2.4cqw;font-size:.8cqw;display:flex}.home-blackjack-hand footer strong{color:#e5c15f}.home-blackjack-feedback{z-index:7;color:#ffe58e;text-shadow:0 0 1cqw #dc722f;pointer-events:none;justify-items:center;font:2.5cqw ui-monospace,monospace;animation:.95s ease-out both home-blackjack-score-pop;display:grid;position:absolute;top:45%;left:63%;transform:translate(-50%,-50%)}.home-blackjack-feedback small{color:#fff0bc;letter-spacing:.3em;font:.8cqw Songti SC,serif}@keyframes home-blackjack-score-pop{0%{opacity:0;transform:translate(-50%,-30%)scale(.65)}24%{opacity:1;transform:translate(-50%,-55%)scale(1.18)}to{opacity:0;transform:translate(-50%,-90%)scale(1)}}.home-blackjack-result{top:18%}.home-blackjack-reward-track{position:relative}.home-blackjack-speed-label{color:#c89c43;font-size:.64cqw;font-weight:600}.home-breakout-board{gap:.42cqw;display:grid}.home-breakout-stage{background:radial-gradient(at 50% 108%,#842b3152,#0000 42%),linear-gradient(#101a1b,#172524 56%,#23181a);border:.1cqw solid #625d55;height:20cqw;position:relative;overflow:hidden;box-shadow:inset 0 0 4cqw #000000d1}.home-breakout-stage:before{content:"";opacity:.26;pointer-events:none;background:linear-gradient(90deg,#0000 49.9%,#e3d3a921 50%,#0000 50.1%),repeating-linear-gradient(0deg,#0000 0 3.3cqw,#e0d2a912 3.3cqw 3.38cqw);position:absolute;inset:0}.home-breakout-bricks{position:absolute;inset:0}.home-breakout-brick{background:linear-gradient(135deg,#77362f,#421d23);border:.08cqw solid #f7d06f85;border-radius:.12cqw;place-items:center;width:8.5%;height:5.2%;transition:opacity 90ms,transform 90ms;display:grid;position:absolute;overflow:hidden;box-shadow:inset .12cqw .12cqw #ffe29924,0 .22cqw .34cqw #0000009e}.home-breakout-brick:nth-child(10n+2),.home-breakout-brick:nth-child(10n+5),.home-breakout-brick:nth-child(10n+8){background:linear-gradient(135deg,#72542d,#3c2d1b)}.home-breakout-brick:nth-child(n+21):nth-child(-n+40){background:linear-gradient(135deg,#285950,#163631);border-color:#96ccb775}.home-breakout-brick:nth-child(n+41){background:linear-gradient(135deg,#55355f,#2d2037);border-color:#be8fce75}.home-breakout-brick.durability-2{border-color:#f1c459;box-shadow:inset 0 0 0 .1cqw #ffe59438,0 0 .48cqw #de9a2d7a}.home-breakout-brick.durability-2 span{color:#f9dc81;font-size:.58cqw}.home-breakout-brick.durability-1 span{display:none}.home-breakout-brick.durability-0{opacity:0;pointer-events:none;transform:scale(1.35)}.home-breakout-dart{z-index:5;object-fit:contain;filter:drop-shadow(0 0 .38cqw #eec248d6);width:2.15cqw;height:2.15cqw;image-rendering:pixelated;position:absolute;transform:translate(-50%,-50%)rotate(18deg)}.home-breakout-dart.piercing{filter:drop-shadow(0 0 .62cqw #ff6955)saturate(1.5);animation:.28s linear infinite home-breakout-dart-pierce}@keyframes home-breakout-dart-pierce{to{transform:translate(-50%,-50%)rotate(378deg)}}.home-breakout-character{z-index:6;filter:drop-shadow(0 .3cqw .24cqw #000000c7);image-rendering:pixelated;margin:0;position:absolute;bottom:-.2cqw;overflow:hidden;transform:translate(-50%)}.home-breakout-character img{height:100%;image-rendering:pixelated;display:block}.home-breakout-paddle{z-index:5;background:linear-gradient(90deg,#0000,#f5d982 15% 85%,#0000);border:.08cqw solid #e2bf66;border-radius:50%;width:12%;height:.42cqw;position:absolute;bottom:1.2cqw;transform:translate(-50%);box-shadow:0 0 .8cqw #ecbd4c94}.home-breakout-powerup{z-index:7;filter:drop-shadow(0 0 .55cqw #eac55bb3);justify-items:center;width:3.1cqw;margin:0;animation:.55s ease-in-out infinite alternate home-breakout-powerup-pulse;display:grid;position:absolute;transform:translate(-50%,-50%)}.home-breakout-powerup img{object-fit:contain;width:2.15cqw;height:2.15cqw;image-rendering:pixelated;background:#1a120ce6;border:.08cqw solid #e7ca79;border-radius:50%}.home-breakout-powerup figcaption{color:#f3dfa2;white-space:nowrap;background:#170e0ad6;padding:.1cqw .25cqw;font-size:.52cqw}.home-breakout-powerup.type-0{filter:drop-shadow(0 0 .58cqw #67d3c3)}.home-breakout-powerup.type-1{filter:drop-shadow(0 0 .58cqw #e8c45d)}.home-breakout-powerup.type-2{filter:drop-shadow(0 0 .58cqw #e35a4d)}@keyframes home-breakout-powerup-pulse{0%{transform:translate(-50%,-50%)scale(.92)}to{transform:translate(-50%,-50%)scale(1.08)}}.home-breakout-effects{z-index:8;gap:.38cqw;display:flex;position:absolute;bottom:.55cqw;right:.7cqw}.home-breakout-effects span{color:#676e66;background:#090c0ac2;border:.07cqw solid #494a43;padding:.25cqw .42cqw;font:.6cqw ui-monospace,monospace}.home-breakout-effects span.active{color:#ffe89b;background:#5b3a11b8;border-color:#e2bd59;box-shadow:0 0 .48cqw #e3b84873}.home-breakout-feedback{z-index:9;color:#ffe28a;text-shadow:0 0 .85cqw #d95638;pointer-events:none;font:1.65cqw ui-monospace,monospace;animation:.7s ease-out both home-breakout-feedback-pop;position:absolute;top:51%;left:50%;transform:translate(-50%,-50%)}@keyframes home-breakout-feedback-pop{0%{opacity:0;transform:translate(-50%,-15%)scale(.7)}28%{opacity:1;transform:translate(-50%,-55%)scale(1.14)}to{opacity:0;transform:translate(-50%,-100%)}}.home-breakout-result{top:18%}.home-breakout-reward-track{position:relative}.home-breakout-speed-label{color:#c89c43;font-size:.64cqw;font-weight:600}.home-breakout-controls{grid-template-columns:1fr 1fr;gap:.65cqw;display:grid}.home-breakout-controls button{touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.65cqw;min-height:3.2cqw;font-size:1.15cqw;display:flex}.home-breakout-controls button.active{color:#dcfff7;background:#237e719e;border-color:#8ad7c9;box-shadow:0 0 .65cqw #53d5be85}.home-breakout-controls button span{font:1.5cqw ui-monospace,monospace}.home-breakout-board>small{color:#7f918b;text-align:center;font-size:.72cqw}.home-progress-pips{grid-template-columns:repeat(3,1fr);gap:.65cqw;display:grid}.home-progress-pips span{color:#847866;text-align:center;background:#ffffff08;border:.12cqw solid #63503c;padding:1.1cqw .5cqw}.home-progress-pips span.cleared{color:#ffdd83;background:#b26f1f3d;border-color:#d2a64d}.home-strength-board{gap:1.2cqw;display:grid}.home-choice-grid{grid-template-columns:repeat(5,1fr);gap:.6cqw;display:grid}.home-choice-grid.tea{grid-template-columns:repeat(3,1fr)}.home-choice-grid button{place-items:center;min-height:4.2cqw;display:grid}.home-choice-grid button span{font-size:1.25cqw}.home-choice-grid button small{color:#978c78;font:.8cqw ui-monospace,monospace}.home-choice-grid button.danger{color:#f29e91;background:#8b1f1b5c;border-color:#c94d42}.home-wind-board{text-align:center;gap:.8cqw;display:grid}.home-wind-board>p,.home-darts-board>p{color:#aaa08d;margin:0;font-size:.95cqw}.home-wind-lanes{background:linear-gradient(90deg,#32626c2e,#689da64d,#32626c2e);grid-template-columns:repeat(5,1fr);gap:.35cqw;padding:1cqw;display:grid}.home-wind-lanes span{color:#7e9fa1;border:.1cqw solid #8fb5b838;place-items:center;min-height:3cqw;display:grid}.home-wind-lanes span.target{color:#d3b45c;border-color:#d3b45c}.home-wind-lanes span.active{color:#fff;background:#6ab0b973;font-size:1.4cqw}.home-race-board{gap:.6cqw;display:grid}.home-clue{color:#c5b99f;background:#ffffff0a;margin:0;padding:.55cqw .7cqw;font-size:.95cqw}.home-clue.reliable{color:#a7e0cf;border-left:.2cqw solid #5bbaa0}.home-race-list{grid-template-columns:repeat(4,1fr);gap:.55cqw;display:grid}.home-race-list button{gap:.25cqw;display:grid}.home-race-list button span{color:#e9bc5b;font-size:.9cqw}.home-darts-board{place-items:center;gap:.7cqw;display:grid}.home-darts-target{background:#4b1b17;border-radius:50%;grid-template-columns:repeat(3,1fr);gap:.25cqw;width:13cqw;padding:.6cqw;display:grid}.home-darts-target button{color:#3e2918;background:#d6c291;border-radius:50%;min-height:3.4cqw;padding:0}.home-darts-target button.bullseye{color:#fff4d5;background:#a62d22;border-color:#ffd46c}.home-game-actions{margin-top:auto}.home-game-result{text-align:center;place-items:center;gap:.8cqw;padding:2.2cqw 1cqw;display:grid}.home-game-result>strong{color:#e9c76f;font:2cqw Songti SC,serif}.home-game-result.loss>strong{color:#c8796d}.home-game-result p{color:#bbb09b;margin:0;font-size:1.05cqw}.home-game-result small{color:#938a7b;font-size:.9cqw}.casino-stage{background:#1c3212}.casino-stage .institution-scene-leave:disabled{opacity:.25;cursor:wait}.casino-bet-side{z-index:2;justify-items:center;gap:.7cqw;width:31%;display:grid;position:absolute;top:4.5%}.casino-bet-side.large{left:1.8%}.casino-bet-side.small{right:1.8%}.casino-side-mark{object-fit:contain;width:15cqw;height:17cqw;image-rendering:pixelated;filter:drop-shadow(0 .5cqw .7cqw #00000073)}.casino-chip-slots{background:#0f220d94;border:.12cqw solid #e4ca6b66;grid-template-columns:repeat(5,4.7cqw);gap:.4cqw;padding:.65cqw;display:grid;box-shadow:inset 0 0 1.5cqw #00000061}.casino-chip-slots button{cursor:pointer;background:#050e0561;border:.12cqw solid #e1c66442;place-items:center;width:4.7cqw;height:5.6cqw;padding:0;display:grid}.casino-chip-slots button.empty:before{color:#efd98759;content:"+";font:2.6cqw ui-monospace,monospace}.casino-chip-slots button:hover,.casino-chip-slots button:focus-visible{background:#e8c65329;border-color:#f1da76;outline:none}.casino-chip-slots button:disabled{opacity:.4;cursor:not-allowed}.casino-chip-slots img{max-width:3.8cqw;max-height:5cqw;image-rendering:pixelated;filter:drop-shadow(0 .25cqw .18cqw #000000b3)}.casino-bet-side>strong{color:#f0d77b;text-shadow:0 .2cqw #10210e;font:1.65cqw Songti SC,serif}.casino-bowl{z-index:1;aspect-ratio:273/241;width:42.7%;position:absolute;top:0%;left:28.7%}.casino-result-bowl,.casino-roll-animation{object-fit:fill;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.casino-roll-animation{z-index:2;background:0 0}.casino-dice{z-index:3;position:absolute;inset:0}.casino-dice img{object-fit:contain;image-rendering:auto;height:auto;position:absolute}.casino-dice img:first-child{z-index:3;width:16.5%;top:52.1%;left:48.4%}.casino-dice img:nth-child(2){z-index:2;width:16.1%;top:48.1%;left:37.4%}.casino-dice img:nth-child(3){z-index:1;width:17.6%;top:39%;left:45.1%}.casino-controls{z-index:4;color:#eee4c1;background:#081608e0;border:.12cqw solid #e8cd678c;align-items:center;gap:.55cqw;min-height:16%;padding:.8cqw 1.1cqw;display:grid;position:absolute;bottom:2.2%;left:25%;right:25%;box-shadow:0 .8cqw 2.8cqw #00000094}.casino-controls>p{color:#b9b293;text-align:center;margin:0;font-size:1.08cqw}.casino-cash{color:#c7bd9b;justify-content:space-between;font-size:1.25cqw;display:flex}.casino-cash strong{color:#f2d66f;font:1.45cqw ui-monospace,monospace}.casino-denominations{justify-content:center;gap:.6cqw;display:flex}.casino-denominations button{color:#ded4b7;cursor:pointer;background:#ffffff0a;border:.12cqw solid #e7cc635c;justify-content:center;align-items:center;gap:.4cqw;min-width:6cqw;padding:.25cqw .55cqw;font:1.25cqw ui-monospace,monospace;display:flex}.casino-denominations button.active{color:#2b1b07;background:#d7aa3f;border-color:#f1d665}.casino-denominations img{object-fit:contain;width:2.2cqw;height:3.1cqw;image-rendering:pixelated}.casino-roll-button{color:#0000;cursor:pointer;width:14.2cqw;height:6.7cqw;image-rendering:pixelated;background:url(/generated/casino/betokbn.webp) 50%/contain no-repeat;border:0;padding:0;position:absolute;bottom:2cqw;right:-20cqw}.casino-roll-button:hover,.casino-roll-button:focus-visible{filter:drop-shadow(0 0 .4cqw #f3df73);background-image:url(/generated/casino/betokbh.webp);outline:none}.casino-roll-button:active{background-image:url(/generated/casino/betokbp.webp)}.casino-roll-button:disabled{opacity:.35;cursor:not-allowed;filter:grayscale()}.casino-result-copy,.casino-rolling-copy{text-align:center;justify-items:center;gap:.3cqw;display:grid}.casino-result-copy>strong,.casino-rolling-copy>strong{color:#f2dc82;font:2cqw Songti SC,serif}.casino-result-copy.win>span{color:#f1cf62}.casino-result-copy.lose>span{color:#df8170}.casino-result-copy.draw>span{color:#cac1a7}.casino-result-copy>span{font:1.55cqw Songti SC,serif}.casino-result-copy>small,.casino-rolling-copy>small{color:#9e967f;font:.95cqw ui-monospace,monospace}.casino-result-copy>button{color:#241707;cursor:pointer;background:#d5a83f;border:.12cqw solid #d6ad48;margin-top:.25cqw;padding:.5cqw 1.5cqw;font:1.3cqw Songti SC,serif}@media (width<=680px){.shop-grid,.trade-grid,.market-news-list{grid-template-columns:1fr}.institution-balances{gap:.25rem;display:grid}.cargo-row{grid-template-columns:44px minmax(0,1fr)}.cargo-row input,.cargo-row button{grid-row:2}.market-news{grid-template-columns:76px minmax(0,1fr)}.market-news img{width:76px;height:52px}}.property-panel{width:min(920px,100vw - 2rem);max-height:calc(100vh - 2rem);padding:clamp(1rem,3vw,1.8rem);overflow:auto}.property-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:0 5rem 1rem 0;display:flex}.property-panel>header .institution-balances{flex:none;align-self:center}.property-panel h2{font:var(--text-display-sm) "Songti SC", serif;margin:.2rem 0 0;font-weight:500}.property-panel section{padding-top:1.2rem}.property-panel section>p{color:var(--muted);line-height:1.7}.property-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0;display:grid}.property-card{border:1px solid var(--line);background:#d4a84e09;grid-template-rows:auto auto 1fr auto;gap:.55rem;padding:1rem;display:grid}.property-card-preview{object-fit:contain;width:min(100%,120px);height:96px;image-rendering:pixelated;filter:drop-shadow(0 6px 10px #00000059);margin:0 auto}.property-card strong{color:var(--gold-soft);font:var(--text-emphasis) "Songti SC", serif;text-align:center}.property-card p{min-height:2.8em;color:var(--muted);font-size:var(--text-label);text-align:center;margin:0;line-height:1.55}.property-card button{white-space:normal;align-self:stretch;min-height:2.75rem;line-height:1.35}.property-card button:disabled{opacity:1;cursor:not-allowed;color:#c6bca86b;box-shadow:none;filter:grayscale(.55);background:#ffffff0a;border:1px solid #d4a84e1f}.property-card button:disabled:hover{color:#c6bca86b;background:#ffffff0a;border-color:#d4a84e1f}.property-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-bottom:1rem;display:grid}.property-summary span{border:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:1rem;padding:.75rem;display:flex}.property-summary strong{color:var(--ink)}.property-owned-actions{justify-content:center;margin-top:1.2rem;display:flex}.property-owned-actions .button{min-width:min(100%,16rem);min-height:2.75rem;padding-inline:2rem}.justice-panel{width:min(680px,100vw - 2rem)}.justice-offenses{gap:.65rem;margin:1rem 0;display:grid}.justice-offenses button{text-align:left;justify-content:space-between;gap:1rem;display:flex}.justice-offenses span{color:var(--muted)}@media (width<=720px){.property-grid,.property-summary{grid-template-columns:1fr}.property-panel>header{flex-direction:column;align-items:start}}.tournament-backdrop{z-index:12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050403e0;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.event-backdrop.elevated{z-index:13;-webkit-backdrop-filter:none;backdrop-filter:none;background:#0403028c}.monthly-ranking-backdrop{z-index:13;background:#000;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.monthly-ranking-dialog{width:min(100vw - 2rem,133.333vh - 2.66667rem)}.monthly-ranking-board{aspect-ratio:4/3;color:#2b190e;width:100%;image-rendering:pixelated;position:relative;overflow:hidden;box-shadow:0 1rem 4rem #000000bf;container-type:inline-size}.monthly-ranking-background{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.monthly-ranking-title{z-index:1;color:#592918;text-align:center;white-space:nowrap;width:14.844%;height:4.792%;margin:0;font:700 3.2cqw/1.15 STKaiti,KaiTi,Songti SC,serif;position:absolute;top:18.125%;left:44.375%}.monthly-ranking-portrait{z-index:1;width:16.25%;height:26.667%;position:absolute;top:28.333%;left:38.75%}.monthly-ranking-portrait .character-portrait.info{object-fit:fill;width:100%;max-width:100%;height:100%;image-rendering:pixelated;display:block}.monthly-ranking-reward-label{z-index:1;color:#592918;text-align:center;white-space:nowrap;width:7.344%;height:4.792%;font:700 2.5cqw/1.15 STKaiti,KaiTi,Songti SC,serif;position:absolute;top:33.333%;left:60%}.monthly-ranking-reward-name{z-index:1;color:#592918;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:12.344%;min-height:3.125%;font:700 1.75cqw/1.25 STKaiti,KaiTi,Songti SC,serif;position:absolute;top:40.625%;left:57.5%;overflow:hidden}.monthly-ranking-reward-item{z-index:3;cursor:help;background:#ecc4704d;border:.12cqw solid #59291873;outline:none;width:6.25%;height:8.333%;position:absolute;top:44.167%;left:60.547%}.monthly-ranking-reward-item .inventory-item-icon{inset:.25cqw}.monthly-ranking-reward-item .inventory-item-tooltip{width:min(250px,80vw)}.monthly-ranking-reward-item:hover,.monthly-ranking-reward-item:focus,.monthly-ranking-reward-item:focus-within{background:#ffdd919e;border-color:#8e4b24}.monthly-ranking-reward-item:hover .inventory-item-tooltip,.monthly-ranking-reward-item:focus .inventory-item-tooltip,.monthly-ranking-reward-item:focus-within .inventory-item-tooltip{opacity:1;transform:translate(-50%)}.monthly-ranking-list{z-index:1;width:27.5%;margin:0;padding:0;list-style:none;position:absolute;top:56.667%;left:44.219%}.monthly-ranking-list li{color:#592918;grid-template-columns:7.656cqw minmax(0,1fr);align-items:center;height:4.167cqw;font:700 1.9cqw/1 STKaiti,KaiTi,Songti SC,serif;display:grid}.monthly-ranking-list li>span{text-align:left;white-space:nowrap}.monthly-ranking-list li>strong{font:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.monthly-ranking-confirm{z-index:2;color:#592918;cursor:pointer;background:#ebc3708c;border:.16cqw solid #592918b8;width:8.75%;height:5.417%;padding:0;font:700 1.8cqw STKaiti,KaiTi,Songti SC,serif;position:absolute;top:86.25%;left:45.625%}.monthly-ranking-confirm:hover,.monthly-ranking-confirm:focus-visible{background:#ffdc8bc7;outline:.2cqw solid #702f1980}.tournament-dialog{width:min(1180px,100%);max-height:calc(100vh - 2rem);padding:clamp(1rem,2.4vw,1.8rem);overflow:auto}.tournament-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:1rem;padding-bottom:1rem;display:flex}.tournament-heading h2{margin:0;font:500 clamp(1.8rem,4vw,3.2rem) Songti SC,serif}.tournament-heading>span{color:var(--gold-soft);font:var(--text-emphasis) ui-monospace, monospace}.tournament-body{grid-template-columns:minmax(245px,.7fr) minmax(500px,1.5fr);gap:1.25rem;padding-top:1.25rem;display:grid}.tournament-bracket,.tournament-placements{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.tournament-bracket li{border:1px solid var(--line);color:var(--muted);font-size:var(--text-label);gap:.2rem;padding:.65rem .75rem;display:grid}.tournament-bracket li>span{color:var(--gold);font-size:var(--text-caption);letter-spacing:.12em}.tournament-bracket li>strong{color:var(--ink);font-weight:500}.tournament-bracket li.completed{opacity:.68;border-left-color:#d4a84e80}.tournament-bracket li.active{border-color:var(--gold);box-shadow:inset 3px 0 var(--gold);background:linear-gradient(90deg,#d4a84e26,#d4a84e08)}.tournament-stage{border:1px solid var(--line);text-align:center;background:radial-gradient(circle at 50% 20%,#824c1f33,#0000 55%);align-content:center;min-height:480px;padding:clamp(.85rem,2vw,1.5rem);display:grid}.tournament-stage>p:not(.eyebrow){color:var(--muted);line-height:1.7}.tournament-stage h3{font:var(--text-display-sm) "Songti SC", serif;margin:.4rem 0 .8rem}.tournament-arena{aspect-ratio:4/3;width:min(100%,640px);image-rendering:pixelated;background-position:50%;background-size:100% 100%;border:2px solid #7d5b2e;margin:.55rem auto;position:relative;overflow:hidden;box-shadow:0 12px 32px #00000073,inset 0 0 0 1px #ffdd943d;container-type:inline-size}.tournament-arena:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#0c070352);position:absolute;inset:0}.tournament-arena-banners{z-index:3;grid-template-columns:minmax(0,1fr) clamp(42px,10vw,74px) minmax(0,1fr);align-items:end;gap:.55rem;display:grid;position:absolute;bottom:2.5%;left:2.5%;right:2.5%}.tournament-entrant-banner{justify-items:center;min-width:0;display:grid}.tournament-entrant-banner>img{object-fit:contain;width:100%;height:auto;max-height:56px;image-rendering:pixelated;display:block}.tournament-versus-mark{width:100%;height:auto;image-rendering:pixelated;filter:drop-shadow(0 3px #000000b8);align-self:center}.cycling-category{z-index:4;color:#fff1b8;text-shadow:0 3px #5b260e;background:#220d04c2;padding:.25rem 1.2rem;font:clamp(1.8rem,5vw,3.6rem) Songti SC,serif;display:block;position:absolute;top:33%;left:50%;transform:translate(-50%,-50%)}.comparison-values{z-index:4;background:#130803a8;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:.55rem;display:grid;position:absolute;top:57%;left:10%;right:10%}.comparison-values span{color:#f4dfb8;text-shadow:0 1px #000;gap:.2rem;display:grid}.comparison-values strong{color:#fff3b0;font:var(--text-display-sm) ui-monospace, monospace}.comparison-values i{color:var(--gold);font-style:normal}.tournament-dual-performance img{max-width:none;height:100%;image-rendering:pixelated;display:block}.tournament-dual-performance{z-index:2;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:9%;display:grid;position:absolute;inset:24% 9% 17%}.tournament-dual-performance figure{width:calc(var(--frame-width) * 100cqw / 640);filter:drop-shadow(0 6px 2px #0006);justify-self:center;margin:0;overflow:hidden}.tournament-winner-reveal{z-index:5;color:#fff0ba;text-align:left;text-shadow:0 2px #481606;background:#341104e0;border:1px solid #e7ad42;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:.15rem .75rem;padding:.55rem 1rem .55rem .55rem;animation:.28s ease-out both tournament-winner-in;display:grid;position:absolute;top:11%;left:50%;transform:translate(-50%)}.tournament-winner-reveal img{width:clamp(36px,6.5vw,56px);image-rendering:pixelated;grid-row:1/3}.tournament-winner-reveal strong{font:var(--text-title-sm) "Songti SC", serif;white-space:nowrap;line-height:1.15}.tournament-winner-reveal span{color:#e0bc73;font-size:var(--text-caption);letter-spacing:.12em;line-height:1.2}@keyframes tournament-winner-in{0%{opacity:0;transform:translate(-50%,-12px)scale(.9)}}.tournament-actions{flex-wrap:wrap;justify-content:center;gap:.55rem;margin-top:1.2rem;display:flex}.tournament-skip-reveal{color:#9c907a;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #6e624e;justify-self:center;margin-top:.45rem;padding:.3rem .7rem}.tournament-skip-reveal:hover{color:var(--gold-soft);border-color:var(--gold)}.tournament-placements li{border-bottom:1px solid var(--line);text-align:left;grid-template-columns:5rem 1fr auto;gap:.7rem;padding:.65rem 0;display:grid}.tournament-placements span{color:var(--gold)}.tournament-placements small{color:var(--muted)}.tournament-report{aspect-ratio:4/3;width:min(100%,640px);image-rendering:pixelated;background-position:50%;background-size:100% 100%;align-content:end;margin:auto;padding:5% 12% 4%;display:grid}.tournament-report-copy{image-rendering:auto;background:#220f05db;border:1px solid #f1c15fa6;padding:.75rem 1rem}.tournament-report .tournament-placements{gap:0}.tournament-report .tournament-placements li{padding:.35rem 0}.tournament-input-hint{color:#8f856f;font:var(--text-caption) ui-monospace, monospace;margin-top:.75rem;display:block}@media (width<=820px){.tournament-body{grid-template-columns:1fr}.tournament-bracket{grid-template-columns:repeat(7,minmax(150px,1fr));padding-bottom:.4rem;overflow-x:auto}.tournament-stage{min-height:360px}.tournament-placements li{grid-template-columns:4.5rem 1fr}.tournament-placements small{grid-column:2}}@media (width<=540px){.tournament-backdrop{padding:0}.tournament-dialog{border:0;max-height:100vh}.tournament-arena-banners{grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr)}.tournament-report{padding-inline:7%}}@media (prefers-reduced-motion:reduce){.tournament-winner-reveal{animation:none}}.station-options{grid-template-columns:repeat(2,1fr);gap:.5rem;margin:1rem 0;display:grid}.studio-shell h1 small{color:var(--gold);font:var(--text-label) system-ui, sans-serif}.studio-controls{flex-wrap:wrap}.studio-controls input[type=number]{border:1px solid var(--line);width:72px;color:var(--ink);background:#181510;padding:.55rem}.studio-controls button:disabled{opacity:.3}.file-button{place-items:center;display:grid}.file-button input{display:none}.studio-workspace{grid-template-columns:minmax(0,1fr) 280px;gap:1rem;height:calc(100vh - 190px);display:grid}.studio-canvas{background:#080705;place-items:center;min-height:520px;display:grid;overflow:auto}.studio-canvas canvas{width:min(78vh,100%);height:auto;image-rendering:pixelated;cursor:crosshair}.diagnostic-error{color:#e1786e;font-weight:800}.voice-bubble{z-index:5;visibility:hidden;transform-origin:0 0;cursor:pointer;--bubble-scale:1;background:0 0;border:0;padding:0;animation:.14s ease-out both voice-bubble-in;position:absolute;top:0;left:0}.voice-bubble-shape{width:100%;height:100%;image-rendering:pixelated;filter:drop-shadow(0 calc(var(--bubble-scale) * 1px) 0 #0000008c);-webkit-user-select:none;user-select:none;display:block}.voice-bubble-copy{padding:calc(var(--bubble-scale) * 2px);color:var(--gold-soft);text-align:center;text-shadow:0 1px #000;overflow-wrap:anywhere;justify-content:center;align-items:center;font-weight:700;line-height:1.25;display:flex;position:absolute}.voice-bubble.class-2 .voice-bubble-copy{color:#ffcf7a}.voice-bubble:hover .voice-bubble-copy,.voice-bubble:focus-visible .voice-bubble-copy{color:#fff2d2}.voice-bubble:focus-visible{outline:none}@keyframes voice-bubble-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.voice-bubble{animation:none}}.numeric-feedback{z-index:6;visibility:hidden;pointer-events:none;transform-origin:0 0;image-rendering:pixelated;filter:drop-shadow(0 1px #000000bf);display:flex;position:absolute;top:0;left:0}.numeric-feedback-digit{flex:none;display:block;overflow:hidden}.numeric-feedback-digit img{max-width:none;image-rendering:pixelated;will-change:transform;display:block}.hidden-weapon-animation{z-index:7;visibility:hidden;pointer-events:none;transform-origin:0 0;image-rendering:pixelated;filter:drop-shadow(0 2px 1px #000000bf);margin:0;position:absolute;top:0;left:0}.hidden-weapon-animation img{width:100%;height:100%;image-rendering:pixelated;display:block}.lab-header{min-height:74px}.lab-controls{align-items:end;gap:1rem;margin:1rem 0;padding:1rem;display:flex}.lab-controls label{color:var(--muted);font-size:var(--text-label);gap:.35rem;display:grid}.lab-controls select{border:1px solid var(--line);min-width:180px;color:var(--ink);background:#181510;padding:.55rem}.segmented{margin-left:auto;display:flex}.segmented button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;padding:.6rem .9rem}.segmented button.active{color:#19120a;background:var(--gold)}.lab-workspace{grid-template-columns:minmax(0,1fr) 270px;gap:1rem;height:calc(100vh - 190px);display:grid}.lab-map-frame{background:#090806;place-items:center;min-height:500px;display:grid;position:relative;overflow:auto}.lab-map-frame>img{object-fit:contain;max-width:100%;max-height:100%;image-rendering:pixelated;display:block}.lab-map-frame>img,.lab-pixel-map{cursor:crosshair}.lab-pixel-map{width:min(80vh,100%);height:auto;image-rendering:pixelated}.start-markers{pointer-events:none;position:absolute;inset:0}.start-markers span{background:var(--red);border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #111}.start-markers .selected-cell-marker{border-color:var(--gold);width:16px;height:16px;box-shadow:0 0 0 2px #111, 0 0 12px var(--gold);background:0 0;border-radius:0}.lab-inspector{padding:1.3rem;overflow:auto}.lab-inspector h2{font-family:serif;font-size:var(--text-display-sm);margin:0 0 1.2rem;font-weight:500}.lab-inspector dl{margin:0}.lab-inspector dl div,.start-list li{border-bottom:1px solid var(--line);justify-content:space-between;padding:.65rem 0;display:flex}.lab-inspector dt{color:var(--muted)}.lab-inspector dd{margin:0}.start-list{padding:0;list-style:none}.start-list code{color:var(--gold-soft)}.cell-inspector{margin-top:1.5rem}.cell-inspector dd{max-width:55%;color:var(--gold-soft);text-align:right;word-break:break-all}.rule-lab .lab-header .button{margin-left:0}.rule-lab .lab-header>div{margin-right:auto}.rule-operation{gap:.3rem;margin-right:auto;display:grid}.rule-operation span{color:var(--muted);font-size:var(--text-label)}.rule-operation code{color:var(--gold-soft)}.rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.rule-card{min-height:510px;padding:1.2rem;overflow:hidden}.rule-card textarea,.rule-card pre{border:1px solid var(--line);color:#e8dcc4;width:100%;height:405px;font:var(--text-label)/1.55 ui-monospace, SFMono-Regular, Menlo, monospace;white-space:pre-wrap;background:#0c0b09;margin:0;padding:1rem;overflow:auto}.rule-card textarea{resize:none;outline:none}.rule-card textarea:focus{border-color:var(--gold)}.rule-card .button{margin-top:.8rem}.rule-card .button:disabled{opacity:.35}.rule-result-heading{justify-content:space-between;display:flex}.rule-result-heading .pass{color:#80c58a}.rule-result-heading .fail{color:#e1786e}.lab-note{color:var(--muted);font-size:var(--text-label)}@media (width<=900px){:root{--text-sm:.75rem;--text-md:.8125rem;--text-base:.9375rem;--text-lg:1.0625rem;--text-xl:1.1875rem;--text-2xl:1.375rem;--text-3xl:1.75rem;--text-4xl:2.25rem}.hero{grid-template-columns:1fr;padding-top:5rem}.immersive-home{height:100vh;min-height:620px;padding-bottom:0;overflow:hidden}.immersive-hero{min-height:calc(100vh - 78px);padding:0}.immersive-home .poster-montage{width:min(850px,115vw);margin:0;top:44%;left:50%;transform:translate(-50%,-50%)}.immersive-actions{width:min(260px,100% - 2rem);margin:0;padding-bottom:1.2rem;top:auto;bottom:2.5rem;right:50%;transform:translate(50%)}.immersive-actions:before{right:50%;transform:translate(50%)}.choice-grid.maps{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid.characters{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-grid.maps img{height:clamp(120px,22vw,180px)}.game-shell{min-height:0;overflow:hidden}.lab-workspace{grid-template-columns:1fr;height:auto}.rule-grid{grid-template-columns:1fr}.studio-workspace{grid-template-columns:1fr;height:auto}.terminal-result{grid-template-columns:1fr;max-height:none;overflow:visible}.terminal-ending-media video{max-height:52vh}.hud-top-strip{gap:.45rem;inset:.6rem .6rem auto}.hud-character-card{grid-template-columns:auto minmax(7.5rem,auto);gap:.28rem .45rem;max-width:min(18rem,100vw - 6.5rem);padding:.3rem}.hud-character-card .character-portrait.info{width:52px;height:64px}.stat{gap:.22rem .3rem;margin:.04rem 0}.stat progress{height:.48rem}.money-stat{margin-top:.18rem;padding-top:.18rem}.hud-system-bar{flex-wrap:wrap;justify-content:flex-end;gap:.35rem .45rem;min-width:0;padding:.3rem .45rem}.hud-date span{display:none}.hud-exit{padding:.3rem .5rem}.action-dock{padding:0 .7rem;padding-bottom:max(.55rem, env(safe-area-inset-bottom));flex-direction:column;align-items:flex-start;gap:.4rem}.action-island{gap:.5rem;max-width:100%;padding:.35rem .45rem}.action-bar-entry{min-width:52px;padding:.3rem .45rem}.action-bar-movement{align-self:stretch}.movement-selector{flex:1;grid-template-columns:minmax(0,3fr) minmax(0,5fr);gap:.5rem;display:grid}.movement-selector.single-method{display:flex}.movement-selector,.movement-method-picker,.movement-launcher,.movement-wheel-stage{width:100%}.movement-method-menu{left:0;right:auto}.movement-wheel-wrap{bottom:calc(var(--hud-bottom-clearance) + .6rem);width:76px;position:fixed;left:.9rem}.action-bar-status{text-align:left;justify-items:start;min-width:0}.lab-map-frame{height:65vh}}@media (width<=560px){.home-nav .brand{display:none}.immersive-home{padding-top:1rem}.immersive-hero{padding-top:0}.immersive-home .poster-montage{width:145vw;top:42%}.immersive-actions{width:min(260px,100% - 2rem);display:flex;bottom:1.25rem}.immersive-actions .button{min-width:0;padding-left:.55rem;padding-right:.55rem}.hero h1{font-size:var(--text-display)}.setup-actions{flex-direction:column;align-items:stretch}.setup-actions>div{margin-right:0}.setup-actions .button{width:100%}.choice-grid.maps{grid-template-columns:1fr}.choice-grid.characters{grid-template-columns:repeat(2,minmax(0,1fr))}.terminal-side-results,.terminal-actions{grid-template-columns:1fr}.terminal-roster li{grid-template-columns:2rem 1fr auto}.terminal-roster li>small{grid-column:2/-1}.lab-controls{flex-direction:column;align-items:stretch}.segmented{margin-left:0}.hud-character-card{grid-template-columns:auto minmax(7rem,auto);max-width:min(17rem,100vw - 5.5rem)}.action-bar-item{width:58px}.action-bar-item-icon{height:30px}.movement-selector{width:100%}.movement-method-picker{min-width:0}.movement-method-menu{width:calc(100vw - 1.4rem)}}
