@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+KR:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--gold:#d6ac66;--pale:#fff0bf;--ink:#08090d;--serif:'Noto Serif KR','Batang',Georgia,serif;--sans:'Malgun Gothic','Apple SD Gothic Neo',sans-serif;font-family:var(--sans);background:var(--ink);color:#ede9df}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer;border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #ffe4a0;outline-offset:5px}button:disabled{cursor:wait;opacity:.55}[hidden]{display:none!important}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.skip{position:fixed;left:1rem;top:-5rem;z-index:1000;padding:12px;background:#19131b;color:var(--pale)}.skip:focus{top:1rem}
.launcher{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;height:100svh;min-height:700px}.scene,.scene-shade{position:absolute;inset:0;pointer-events:none;z-index:-2}.scene{background:#0c0c16 url('./assets/launcher-background.png') center center/cover no-repeat;transition:filter .7s}.scene-shade{z-index:-1;background:linear-gradient(90deg,#0005 0%,transparent 26%,transparent 80%,#0001),linear-gradient(0deg,#05030650,transparent 21%,transparent 91%,#02050b88)}
.header{height:6.2%;min-height:64px;max-height:90px;display:flex;align-items:center;position:relative;background:linear-gradient(180deg,#03070ff7,#02050dec);border-bottom:1px solid #baa06a31;z-index:4;padding:0 3.1% 0 27.5%;gap:28px}.brand{position:absolute;left:3.2%;top:18px;width:280px;display:flex;align-items:center;color:#e8be7c;text-shadow:0 1px 3px #000,0 0 20px #e69a4c26;white-space:nowrap}.brand-compass{width:99px;height:99px;position:absolute;left:-12px;top:-10px;filter:drop-shadow(0 0 5px #bc773a40);transform:rotate(11deg)}.brand-name{font:700 clamp(25px,2.6vw,43px)/1.4 var(--serif);letter-spacing:-3px;padding-left:43px;position:relative}.brand-name small{display:block;font:500 clamp(9px,.98vw,16px)/1.5 Georgia,serif;letter-spacing:2.1px;margin-left:4px}.brand-star{font:40px/1 Georgia,serif;color:#ca2f36;position:absolute;right:-4px;top:-9px;text-shadow:0 0 9px #dd1322}.top-nav{height:100%;display:flex;align-items:stretch;gap:clamp(25px,5.7vw,92px);flex:1}.top-nav button{font-size:clamp(17px,1.43vw,24px);position:relative;white-space:nowrap;min-width:60px;color:#d8d5d3}.top-nav button:hover{color:#ffe5b1}.top-nav .nav-active{color:#fff1c5;text-shadow:0 0 15px #ffbf5d}.nav-active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#f6d093,transparent);box-shadow:0 0 15px 3px #fabc6433}.nav-active:before{content:'◆';font:10px Georgia;color:#fff6d6;position:absolute;bottom:-7px;left:calc(50% - 5px);filter:drop-shadow(0 0 6px #ffae3e)}.header-tools{display:flex;height:100%;gap:0;align-items:center}.icon-button{width:56px;height:36px;display:grid;place-items:center;border-right:1px solid #c4aa6c12;color:#aaa9a7}.icon-button svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8}.icon-button:hover{color:var(--pale)}#settingsButton svg{width:22px;height:22px;fill:#aaa9a7;stroke:#aaa9a7}#settingsButton svg circle{fill:#050810;stroke:none}.text-button{padding:8px 15px;font-size:15px;white-space:nowrap}.text-button:hover{color:var(--pale)}
.sidebar{position:absolute;left:2.6%;top:14%;width:17.1%;height:62%;background:linear-gradient(90deg,#020303d9,#030405df 80%,#030405b3);border-left:1px solid #ac7e3e77;border-right:1px solid #80603966;box-shadow:0 0 30px #0006;z-index:2}.sidebar-top{position:absolute;top:-10px;left:-8px;color:var(--gold);font:25px Georgia;text-shadow:0 0 8px #ffc364}.game-list{display:flex;flex-direction:column;height:100%;padding:0 9px}.game-item{position:relative;display:flex;align-items:center;gap:15px;text-align:left;flex:1;min-height:56px;padding:7px 8px;border-bottom:1px solid #b28b483b;width:100%;font-size:clamp(13px,1.34vw,22px);color:#e8e5e0;transition:background .25s,color .25s}.game-item:last-child{border-bottom:0}.game-item:hover{color:#fff0b9;background:#b7762820}.game-item[aria-pressed="true"]{color:#fff8e4;background:linear-gradient(90deg,#5a291a99,#150d08a8);box-shadow:inset 0 0 15px #d8a04628,0 0 14px #ca9b4340;outline:1px solid #d7ad64;outline-offset:-4px}.game-item[aria-pressed="true"]:before,.game-item[aria-pressed="true"]:after{position:absolute;color:#f5d49b;font:22px Georgia;top:calc(50% - 13px);text-shadow:0 0 5px #ffca70}.game-item[aria-pressed="true"]:before{content:'‹';left:-9px}.game-item[aria-pressed="true"]:after{content:'›';right:-9px}.game-item-name{line-height:1.3;letter-spacing:-.8px}.game-item-name strong{font-weight:400}.game-item small{display:block;font-size:10px;line-height:1.5;color:#b6aa91;margin-top:3px;letter-spacing:.3px}.game-avatar{display:block;flex-shrink:0;width:clamp(36px,4.25vw,66px);height:clamp(36px,4.25vw,66px);border:1px solid #ddba71;border-radius:50%;background-color:#1e1411;box-shadow:0 0 0 3px #0008;background-image:url('./assets/reference-launcher.png');background-size:2400% 1600%;background-position:4.05% 15.5%;overflow:hidden}.game-avatar img{width:100%;height:100%;object-fit:cover}.portrait-warbible{background-image:url('/game/assets/icon.png');background-size:cover;background-position:center}.portrait-joycity{background-position:4.05% 69.8%}.portrait-tactical-commanders{background-position:4.05% 42.4%}.portrait-slayers{background-position:4.05% 15.5%}.portrait-darksaver{background-position:4.05% 24.5%}.portrait-cheonnyeon-online{background-position:4.05% 33.5%}.portrait-kingdom{background-position:4.05% 51.4%}.portrait-shaiam{background-position:4.05% 60.5%}.sidebar-footer{position:absolute;top:100%;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:9px;padding-top:16px;font-size:10px;letter-spacing:1.5px;color:#bca57d;text-shadow:0 1px 3px #000}.tiny-diamond{width:3px;height:3px;transform:rotate(45deg);background:#c39a5b}
.hero{position:absolute;left:21.4%;top:29%;width:35.2%;height:34%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1}.hero-seal{position:absolute;inset:-8% 0 16%;pointer-events:none;z-index:-1;color:#c9994f;filter:drop-shadow(0 0 4px #9b4414)}.seal-one{position:absolute;width:71%;height:111%;left:1%;top:-22%;opacity:.9}.seal-two{position:absolute;width:46%;height:73%;left:-3%;top:18%;transform:rotate(14deg);opacity:.9}.seal-glow{position:absolute;width:7px;height:7px;background:#fff0c5;border-radius:50%;top:25%;left:35%;box-shadow:0 0 6px 3px #fff0c0,0 0 26px 10px #ff4b1e,0 0 70px 30px #e72c1344}.seal-glow:after{content:'';position:absolute;inset:-32px 2px;background:linear-gradient(0deg,transparent,#fff1a0,transparent);transform:rotate(15deg)}.hero-heading{width:100%;position:relative;text-shadow:0 3px 6px #000,0 0 20px #100200,0 0 40px #0c0100}.hero-kicker{font-size:10px;letter-spacing:5px;color:#e1c38f;margin:0 0 13px;text-shadow:0 0 5px #000}.hero h1{font:700 clamp(27px,4.35vw,76px)/1.45 var(--serif);letter-spacing:-3px;white-space:nowrap;margin:0 -30px;color:#fff2cc;filter:drop-shadow(0 2px 0 #69401d)}.hero-english{font:500 clamp(14px,1.65vw,28px)/1.5 Georgia,serif;letter-spacing:3.5px;margin:3px -10px;color:#fff3cf}.title-flourish{color:var(--gold);font:20px/1.3 Georgia;opacity:.85;letter-spacing:8px}.hero-description{font-size:12px;color:#e5d3b3;margin:12px -10px 16px;line-height:1.6;text-shadow:0 2px 4px #000,0 0 10px #000}.start-button{width:77%;flex-shrink:0;min-height:58px;height:7.6vw;max-height:82px;position:relative;display:flex;align-items:center;justify-content:center;gap:17px;font:600 clamp(20px,2.15vw,38px)/1 var(--serif);color:#ffe6a1;background:radial-gradient(ellipse at bottom,#6f1713bb,transparent 70%),linear-gradient(180deg,#200506,#100405 50%,#2d0a08);border:1px solid #ffd17d;outline:1px solid #a57a39;outline-offset:5px;box-shadow:inset 0 0 4px 2px #e6ad55,0 0 14px 2px #ff4a2a85,0 0 30px #ff221b44;transition:filter .2s,transform .2s;text-shadow:0 2px 4px #160600;letter-spacing:-.6px}.start-button:before,.start-button:after{content:'◆';position:absolute;left:calc(50% - 5px);font:10px Georgia;color:#ffe1a8;filter:drop-shadow(0 0 5px #ffad3e)}.start-button:before{top:-10px}.start-button:after{bottom:-10px}.start-button:hover{filter:brightness(1.3);transform:translateY(-1px)}.corner{position:absolute;font:27px Georgia;color:#e9bd70;line-height:1}.top-left{top:-6px;left:-9px;transform:rotate(-45deg)}.top-right{top:-6px;right:-9px;transform:rotate(45deg) scaleX(-1)}.bottom-left{bottom:-6px;left:-9px;transform:rotate(45deg) scaleY(-1)}.bottom-right{bottom:-6px;right:-9px;transform:rotate(225deg)}.play-triangle{width:0;height:0;border-top:11px solid transparent;border-bottom:11px solid transparent;border-left:17px solid #ffe8ac;filter:drop-shadow(0 1px 2px #000)}.hero-status{font-size:10px;color:#e0c48f;letter-spacing:1.1px;margin:17px 0 0;text-shadow:0 1px 5px #000,0 0 8px #000}
.gallery{position:absolute;left:19.6%;right:8%;top:69.1%;height:18%;z-index:2}.gallery-border{position:relative;height:90%;display:flex;align-items:center;gap:16px;padding:13px 0;border:1px solid #b38a44;background:linear-gradient(90deg,#050504ed,#0a0808e8,#060505f5);box-shadow:0 4px 18px #000b,inset 0 0 0 4px #050505,inset 0 0 0 5px #96703855}.gallery-corner{position:absolute;color:#d2a150;font:32px Georgia;pointer-events:none}.corner-tl{top:-10px;left:-4px;transform:rotate(-35deg)}.corner-br{bottom:-10px;right:-3px;transform:rotate(145deg)}.gallery-arrow{flex-shrink:0;width:clamp(34px,3.7vw,60px);height:clamp(34px,3.7vw,60px);border:1px solid #daa550;border-radius:50%;color:#f2c77e;font:clamp(38px,4vw,66px)/.6 Georgia;background:#040504d9;display:flex;align-items:center;justify-content:center;padding-bottom:8px;transition:background .2s;position:relative}.gallery-arrow:hover{background:#67421e66;box-shadow:0 0 12px #cc8f3e44}#galleryPrev{margin-left:-1px}#galleryNext{margin-right:-1px}.gallery-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;flex:1;height:100%;min-width:0}.gallery-thumb{position:relative;padding:0;border:1px solid #c99a48;outline:1px solid #4f351a;outline-offset:2px;overflow:hidden;min-width:0;background:#141111;transition:filter .2s}.gallery-thumb:hover{filter:brightness(1.25);box-shadow:0 0 15px #d1a25c44}.gallery-image{display:block;width:100%;height:100%}.gallery-image img{width:100%;height:100%;object-fit:cover;display:block}.concept-thumb{display:block;height:100%;background-image:url('./assets/reference-launcher.png');background-size:685.7% 775.8%;background-position:28.6% 79.6%}.concept-1{background-position:47.6% 79.6%}.concept-2{background-position:66.5% 79.6%}.concept-3{background-position:85.1% 79.6%}.thumb-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000d);font-size:9px;line-height:1.5;padding:12px 3px 4px;color:#efe5cb;text-align:center}.gallery-footer{height:24px;display:flex;align-items:center;justify-content:space-between;color:#b7a17d;font:9px Georgia,serif;letter-spacing:1.8px;text-shadow:0 1px 3px #000}.gallery-footer>span{opacity:.7}.gallery-dots{display:flex;gap:14px;position:absolute;left:50%;transform:translateX(-50%);bottom:-1px;align-items:center}.gallery-dots button{width:12px;height:12px;border-radius:50%;padding:0;background:#5b5145;border:1px solid #a18b6566;box-shadow:0 1px 3px #000}.gallery-dots button[aria-current="true"],.gallery-dots button[aria-pressed="true"]{background:#fff1c3;box-shadow:0 0 6px 2px #ffb456,0 0 15px #f29c4377}.site-footer{position:absolute;bottom:1.7%;left:3.8%;right:3.8%;display:flex;justify-content:space-between;color:#c1aa87;font:9px/1.5 Georgia,serif;letter-spacing:2px;opacity:.6;text-shadow:0 2px 4px #000}.site-footer span:last-child{font-family:var(--sans);letter-spacing:1px}.catalog-loading{font-size:12px;padding:20px;color:#c3aa7b}
dialog{color:#ece7dd;border:1px solid #aa8244;background:radial-gradient(ellipse at top,#30201977,transparent 60%),#0b0d11;padding:0;box-shadow:0 25px 100px #000b,0 0 0 5px #9c783122;max-height:calc(100svh - 32px)}dialog::backdrop{background:#02040ac9;backdrop-filter:blur(7px)}.panel-dialog{width:min(510px,calc(100% - 32px));padding:42px;overflow:auto}.panel-dialog h2{font:600 27px/1.6 var(--serif);letter-spacing:-1px;color:#f8e4b9;margin:8px 0 24px}.dialog-close{position:absolute;right:14px;top:12px;font:28px/1 Georgia;color:#ae9b7e;padding:5px}.dialog-close:hover{color:#fff0c6}.panel-emblem{font:52px/1 Georgia;color:var(--gold);margin-bottom:20px}.panel-kicker{font:10px/1.6 Georgia;color:var(--gold);letter-spacing:3px;margin:0}.panel-copy{font-size:14px;color:#bcb6ac;line-height:1.9;white-space:pre-line}.panel-primary{width:100%;min-height:48px;border:1px solid #c29b5d;background:linear-gradient(180deg,#49251e,#231515);padding:13px 18px;display:flex;align-items:center;justify-content:space-between;color:#fae6bc;font-size:14px;margin-top:22px}.panel-primary:hover{background:#573125}.panel-footnote,.dialog-note{font-size:11px;line-height:1.8;color:#8d887e;margin-top:20px}.notice-games{display:grid;gap:5px;margin:20px 0}.notice-games button{padding:12px;text-align:left;border:1px solid #77603c66;background:#0003;color:#e9d6ae}.notice-games button:hover{background:#7a512029}.notice-games small{font-size:10px;color:#b09b7a;display:block;margin-top:4px}.search-field{display:flex;gap:13px;align-items:center;border:1px solid #8c6e43;padding:12px 15px;background:#0003}.search-field svg{width:20px;height:20px;stroke:#c4a46c;fill:none;stroke-width:1.7}.search-field input{background:none;border:0;outline:none;color:#f3e5ce;min-width:0;width:100%;font-size:14px}.search-results{display:grid;margin-top:20px;gap:3px;max-height:48svh;overflow:auto}.search-results button{display:flex;align-items:center;gap:12px;text-align:left;padding:12px 7px;border-bottom:1px solid #a9864b26}.search-results button:hover{background:#ac7a2720}.search-results .game-avatar{width:38px;height:38px}.search-results small{display:block;color:#b5a387;font-size:10px;margin-top:5px}.search-result{flex-direction:column;align-items:stretch!important;gap:0!important}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid #8c75452b;font-size:14px;gap:20px}.setting-row small{display:block;color:#9c958b;font-size:11px;margin-top:7px}.setting-row input{accent-color:#dcb273;width:18px;height:18px;cursor:pointer}.account-scope{font-size:12px;color:#b2a38d;margin:-10px 0 24px}.auth-tabs{display:flex;margin-bottom:22px;border-bottom:1px solid #aa82444d}.auth-tabs button{flex:1;padding:10px;font-size:14px;color:#9d9589;border-bottom:1px solid transparent}.auth-tabs button[aria-pressed="true"]{color:#ffe1a0;border-color:#e8ba70}.field{display:block;font-size:12px;color:#d2c2a5;margin-top:16px}.field input{display:block;width:100%;margin-top:8px;background:#05070b;border:1px solid #76603b88;color:#fff0cd;padding:12px 13px;font-size:14px;border-radius:0}.form-error{color:#ef9e8f;font-size:12px;line-height:1.6;min-height:12px}
.game-dialog{width:min(1440px,94vw);height:min(90svh,1000px);max-width:none;max-height:none;overflow:hidden;background:#080b11}.game-window{height:100%;display:flex;flex-direction:column}.window-header{display:flex;align-items:center;justify-content:space-between;min-height:52px;background:linear-gradient(#211911,#0d0d0e);border-bottom:1px solid #b68b43;padding:0 18px;gap:12px}.window-header>div,.window-actions{display:flex;align-items:center;gap:14px}.window-header h2{font:500 17px var(--serif);margin:0;color:#f6dfab}.window-jewel{font-size:10px;color:#dcb26b;text-shadow:0 0 8px #d48c35}.window-edition{font:9px Georgia;letter-spacing:2px;color:#9d8c6d}.window-actions button,.window-actions a{font-size:18px;color:#cfbc9c;padding:8px;white-space:nowrap}.window-actions button span{font-size:12px}#closeGame{font:28px Georgia}.game-frame-wrap{position:relative;flex:1;min-height:0;background:#090f13}.game-frame-wrap iframe{width:100%;height:100%;border:0;display:block;background:#0b1518}.game-connection{position:absolute;inset:0;display:grid;place-content:center;gap:10px;color:#d2b27b;background:#090f13;z-index:1;font-size:14px;text-align:center;padding:24px;pointer-events:none}.game-connection.error{pointer-events:auto}.window-footer{min-height:32px;display:flex;align-items:center;justify-content:space-between;padding:5px 18px;border-top:1px solid #7253286b;color:#8f8878;font-size:10px;gap:12px}.window-footer button{color:#c6ac7f;font-size:11px}kbd{font:9px Georgia;padding:2px 4px;border:1px solid #8a704944;margin-left:5px}#gameDialog:fullscreen,.game-dialog.expanded,.game-dialog.is-expanded{height:100dvh;width:100vw;max-height:none;margin:0;inset:0;border:0}.preview-dialog{width:min(1000px,92vw);padding:25px}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.modal-heading h2{font-size:20px;margin:0 0 20px}.modal-heading button{font:26px Georgia;align-self:flex-start}.preview-image{aspect-ratio:16/9;height:auto;overflow:hidden;border:1px solid #97734055}.preview-image img{width:100%;height:100%;aspect-ratio:16/9;object-fit:contain;background:#03070b}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);z-index:10000;background:#101016f5;color:#f0dcae;border:1px solid #c39b5e;padding:14px 22px;box-shadow:0 8px 30px #0008;font-size:13px;max-width:calc(100vw - 32px)}.noscript{position:fixed;bottom:20px;left:20px;right:20px;padding:20px;background:#151010;border:1px solid #bc8e50;z-index:30}.noscript a{color:#e9c080}html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(min-width:1750px){.brand{width:310px}.header{gap:45px}.hero-description{font-size:15px}.game-item{gap:20px}.hero-kicker{font-size:12px}.game-item small{font-size:12px}}
@media(max-width:1200px) and (min-width:761px){.header{gap:12px;padding-left:26%}.top-nav{gap:25px}.header-tools .icon-button{width:38px}.text-button{font-size:12px;padding:8px}.brand{left:2%;width:235px}.brand-name{font-size:30px}.brand-star{right:0}.brand-compass{width:80px;height:80px;top:-5px}.game-item{gap:10px}.game-item small{font-size:9px}.hero{top:28%}.hero-description{font-size:10px}.gallery-track{gap:12px}.gallery-border{gap:12px}.gallery-hint{display:none}.hero-kicker{letter-spacing:3px}.gallery-dots{gap:10px}}
@media(max-width:760px){.launcher{height:auto;min-height:100svh;max-height:none;padding-bottom:30px;overflow:hidden}.scene{background-position:63% top;background-size:auto 850px}.scene-shade{background:linear-gradient(180deg,#02040a22,#02040a00 30%,#02040a30 55%,#07090ff5 88%)}.header{height:72px;min-height:72px;padding:0 13px;justify-content:flex-end;gap:0;background:#03070fdf}.brand{left:20px;top:16px;width:191px}.brand-name{font-size:25px;padding-left:26px;letter-spacing:-2px}.brand-name small{font-size:8px;letter-spacing:1.7px}.brand-compass{width:66px;height:66px;left:-15px;top:-10px}.brand-star{font-size:25px;right:0;top:-5px}.top-nav{position:absolute;top:72px;left:0;right:0;height:42px;justify-content:center;gap:45px;background:#040811ad;border-bottom:1px solid #b08a423d}.top-nav button{font-size:14px;min-width:45px}.header-tools{gap:3px}.icon-button{width:32px;height:34px;border:0}.icon-button svg{width:21px;height:21px}.text-button{font-size:11px;padding:8px 5px}#guestButton{display:none}#loginButton{max-width:70px;overflow:hidden;text-overflow:ellipsis}.sidebar{position:relative;left:auto;top:auto;width:auto;height:auto;margin:470px 18px 0;border:1px solid #9e783b77;background:#05080be8;padding:13px 8px 10px}.sidebar-top{display:none}.game-list{display:grid;grid-template-columns:1fr 1fr;padding:0;gap:0 4px}.game-item{height:68px;min-height:0;padding:8px;gap:9px;font-size:13px}.game-item small{font-size:9px;margin-top:4px}.game-item[aria-pressed="true"]{outline-offset:-3px}.game-item[aria-pressed="true"]:before,.game-item[aria-pressed="true"]:after{display:none}.game-avatar{width:42px;height:42px}.game-item-name{letter-spacing:-.5px}.sidebar-footer{position:relative;padding-top:15px;font-size:9px}.hero{top:285px;left:6%;width:70%;height:235px;justify-content:center}.hero h1{font-size:clamp(25px,6.6vw,46px);letter-spacing:-1.8px;margin:0 -12px}.hero-kicker{font-size:8px;letter-spacing:3px;margin-bottom:8px}.hero-english{font-size:14px;letter-spacing:2.4px;margin-top:4px}.hero-seal{inset:-15% -6% 13%}.seal-one{width:85%;left:-6%;height:110%}.seal-two{width:53%;left:-8%}.title-flourish{font-size:14px}.hero-description{font-size:9px;margin:8px -10px 16px}.start-button{height:51px;min-height:51px;width:87%;font-size:22px;gap:13px;outline-offset:3px}.play-triangle{border-top-width:8px;border-bottom-width:8px;border-left-width:13px}.hero-status{font-size:8px;margin-top:13px;letter-spacing:.8px}.gallery{position:relative;left:auto;right:auto;top:auto;margin:30px 18px 0;height:130px}.gallery-border{height:105px;padding:12px 0;gap:10px}.gallery-arrow{width:29px;height:36px;font-size:38px;flex-basis:29px;border-radius:0;border:0;padding-bottom:6px}.gallery-track{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-thumb:nth-child(n+3){display:none}.thumb-caption{font-size:8px;padding-bottom:2px}.gallery-footer{padding-top:12px;font-size:7px;letter-spacing:1px;justify-content:center}.gallery-footer>span{display:none}.gallery-dots{bottom:0;gap:13px}.gallery-dots button{width:9px;height:9px}.site-footer{position:relative;bottom:auto;left:auto;right:auto;padding:27px 20px 0;flex-direction:column;align-items:center;gap:8px;font-size:8px}.panel-dialog{padding:32px 24px}.panel-dialog h2{font-size:23px;margin-bottom:20px}.search-results{max-height:52svh}.game-dialog{width:100vw;height:94svh;border-left:0;border-right:0}.window-header{min-height:48px;padding:0 9px;gap:4px}.window-header>div,.window-actions{gap:5px}.window-edition{display:none}.window-header h2{font-size:14px}.window-actions button,.window-actions a{padding:7px;font-size:19px}.window-actions button span{display:none}.window-footer{font-size:8px;padding:5px 9px;gap:7px}.window-footer>span:first-child{display:none}.window-footer button{font-size:10px}.hero[data-game="tactical-commanders"] h1{font-size:clamp(22px,5.6vw,40px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.game-connection[data-state='ready']{display:none}.game-connection[data-state='error']{pointer-events:auto}.game-dialog:fullscreen .game-window{height:100%}.game-avatar{background-repeat:no-repeat}

.game-item-name{word-break:keep-all}.game-item[data-game='tactical-commanders'] .game-item-name{font-size:clamp(11px,1.08vw,18px);white-space:nowrap}.game-item-name strong{display:block}.game-item small{font-size:8px;letter-spacing:1px}.hero-kicker{margin-bottom:6px}.hero-description{margin-top:6px;margin-bottom:14px}@media(max-width:760px){.launcher{min-height:100svh;height:auto}.game-item[data-game='tactical-commanders'] .game-item-name{font-size:11px}.game-item small{font-size:8px}}

@media(min-width:761px){.hero{left:22.4%;top:32.5%}.start-button{width:71%}.gallery{top:67.7%}}
@media(min-width:761px) and (max-height:820px){.hero{top:28%;height:34%}.hero-description{margin-top:3px;margin-bottom:10px}.hero-status{margin-top:12px}.start-button{max-height:72px;min-height:58px}}

/* The selected game's own artwork is the scene; loading never exposes another game's character. */
.scene{background:#07101b;overflow:hidden;transition:none}
.scene img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--hero-position,center center)}
.scene[data-state='loading'],.scene[data-state='error']{background:radial-gradient(ellipse at 78% 35%,#263341,#07101b 68%)}
.scene[data-state='error'] img{display:none}
html:not([data-game='slayers']) .scene-shade{background:linear-gradient(90deg,#02050b99 0%,#02050b30 28%,transparent 64%),linear-gradient(0deg,#05030680,transparent 25%,transparent 89%,#02050b88)}
@media(max-width:760px){.scene img{height:850px;object-position:var(--hero-mobile-position,72% top)}html:not([data-game='slayers']) .scene-shade{background:linear-gradient(180deg,#02040a22,#02040a00 28%,#02040a30 55%,#07090ff5 88%)}}
@media(min-width:761px) and (min-aspect-ratio:19/10){.hero{top:25%;height:35%}.hero-status{margin-top:12px}}
html[data-game='joycity'] .scene-shade{background:linear-gradient(90deg,#02050bb3 0%,#02050b88 28%,#02050b42 50%,transparent 67%),linear-gradient(0deg,#05030680,transparent 25%,transparent 89%,#02050b88)}

.game-window:fullscreen{width:100vw;height:100dvh;max-width:none;max-height:none;background:#080d10}
.game-window:-webkit-full-screen{width:100vw;height:100dvh;max-width:none;max-height:none;background:#080d10}
