:root{color:#e7e7d8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--gold:#d5b57b;--mint:#8abba8;--muted:#869b95;--line:#344442;--serif:Georgia, "Times New Roman", serif;--app-height:var(--tg-viewport-stable-height,100dvh);--safe-top:max(env(safe-area-inset-top,0px), calc(var(--tg-safe-area-inset-top,0px) + var(--tg-content-safe-area-inset-top,0px)));--safe-bottom:max(env(safe-area-inset-bottom,0px), calc(var(--tg-safe-area-inset-bottom,0px) + var(--tg-content-safe-area-inset-bottom,0px)));--safe-left:max(env(safe-area-inset-left,0px), calc(var(--tg-safe-area-inset-left,0px) + var(--tg-content-safe-area-inset-left,0px)));--safe-right:max(env(safe-area-inset-right,0px), calc(var(--tg-safe-area-inset-right,0px) + var(--tg-content-safe-area-inset-right,0px)));background:#0f1b1e;font-family:DM Sans,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:default;opacity:.45}button:not(:disabled),a{transition:background .18s,border-color .18s,color .18s,transform .18s}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}input:focus,select:focus{border-color:var(--gold);outline:none}a{color:inherit;text-decoration:none}input,select{color:#eee8d8;background:#172b2d;border:1px solid #43554e;border-radius:8px;min-width:0;padding:13px 15px}select{appearance:auto}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--serif);font-weight:400}p{color:var(--muted);line-height:1.65}svg{flex-shrink:0}small{color:var(--muted)}.eyebrow{letter-spacing:1.6px;text-transform:uppercase;color:var(--gold);align-items:center;gap:7px;font-family:Manrope,system-ui,sans-serif;font-size:9px;font-weight:600;display:inline-flex}.button{color:#dddcc9;white-space:nowrap;background:#203431;border:1px solid #4b5a50;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:41px;padding:11px 16px;font-size:12px;font-weight:500;display:inline-flex}.button:hover:not(:disabled){background:#2b443c;border-color:#72816b}.button.primary{color:#172626;background:#d4b17c;border-color:#d4b17c;font-weight:700;box-shadow:0 2px 9px #08171525}.button.primary:hover:not(:disabled){background:#e0c393;border-color:#e0c393;transform:translateY(-1px)}.button.small{min-height:32px;padding:7px 10px;font-size:10px}.icon-button{color:#a6b8ae;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.icon-button:hover{background:#2b3d38}.pill{color:#bfcdbd;white-space:nowrap;background:#243934;border:1px solid #3d5147;border-radius:5px;align-items:center;gap:7px;padding:9px 12px;font-size:10px;display:inline-flex}.dot{background:#9aba9d;border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block;box-shadow:0 0 7px #92c48b33}.gold{color:var(--gold)}.sigil{width:76px;height:76px;color:var(--gold)}.sigil.small{width:41px;height:41px}.spin{animation:1.5s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.gate{min-height:var(--app-height);text-align:center;background:radial-gradient(at 50% 35%,#294c3e99 0,#0000 55%),linear-gradient(135deg,#152a29,#0d1b20);flex-direction:column;justify-content:center;align-items:center;padding:50px 25px;display:flex;position:relative;overflow:hidden}.gate:before,.gate:after{content:"";pointer-events:none;border:1px solid #b2ae7130;width:620px;height:620px;position:absolute;top:calc(45% - 310px);left:calc(50% - 310px);transform:rotate(45deg)}.gate:after{border-color:#b2ae7118;width:520px;height:520px;top:calc(45% - 260px);left:calc(50% - 260px)}.gate>*{z-index:1}.gate .sigil{margin-bottom:27px}.gate h1{letter-spacing:-3px;color:#e8dfc4;margin:12px 0 18px;font-size:76px}.gate-copy{margin-bottom:36px;font-size:15px;line-height:1.9}.gate form{text-align:left;flex-direction:column;gap:12px;width:320px;max-width:100%;display:flex}.gate .button{min-height:49px}.dev-note{text-align:center;color:#758f85;margin-top:6px;font-size:9px}.gate-footer{letter-spacing:2px;color:#8ca294;gap:17px;font-size:8px;display:flex;position:absolute;bottom:33px}.gate.loading p{margin-top:18px;font-size:12px}.gate.loading .spin{color:var(--gold);margin-top:12px}.error{color:#d9a398;margin-top:20px;font-size:12px}.creation{min-height:var(--app-height);background:radial-gradient(at 50% 20%,#2b453830,#0000 65%);max-width:1240px;margin:auto;padding:45px 45px 50px}.hero-art{filter:drop-shadow(0 10px 10px #05171945);width:80px;height:98px}.hero-art.large{width:175px;height:216px;position:relative}.hero-name{max-width:470px;margin:0 auto}.hero-name label{color:#adb9a9;margin-bottom:10px;font-size:11px;display:block}.hero-name>div{gap:10px;display:flex}.hero-name input{flex:1;max-width:250px}.hero-name p{text-align:center;margin-top:15px;font-size:10px}.mini-portrait{background:linear-gradient(145deg,#476450,#273e35);border:1px solid #667054;border-radius:7px;flex-shrink:0;width:44px;height:48px;position:relative;overflow:hidden}.mini-portrait.mage{background:linear-gradient(145deg,#55586b,#27363e);border-color:#71728b}.mini-portrait.ranger{background:linear-gradient(145deg,#466853,#243e34)}.mini-portrait .hero-art{width:58px;height:74px;position:absolute;top:-1px;left:-7px}.vital{width:155px;max-width:18vw}.vital>div:first-child{color:#92a68f;align-items:center;gap:5px;margin-bottom:7px;font-size:9px;display:flex}.vital strong{color:#d8e0c4;margin-left:auto;font-size:10px;font-weight:500}.vital small{color:#819484;font-size:9px}.vital svg{color:#b28d7c}.vital:nth-child(3) svg{color:#92b7c4}.progress{background:#2f3f38;border-radius:10px;height:5px;overflow:hidden}.progress>span{background:linear-gradient(90deg,#7a9f74,#a7bb84);border-radius:10px;height:100%;transition:width .4s;display:block}.progress.mp>span{background:linear-gradient(90deg,#6a919e,#99bbc6)}.progress.xp>span{background:linear-gradient(90deg,#927c4e,#d0b47c)}.world-canvas{min-height:0;position:absolute;inset:25px -20px 18px}.world-canvas>canvas{touch-action:none;display:block}.close{color:#9eb19d;border-radius:3px;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:12px;right:12px}.close:hover{background:#3c5241}.page-panel{padding:5px 0 18px}.panel-title{justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px;display:flex}.panel-title h2{color:#e1dcc4;letter-spacing:-.6px;margin-top:8px;font-size:35px}.panel-title .eyebrow{font-size:8px}.page-intro{max-width:650px;margin-bottom:28px;font-size:12px}.section-heading{justify-content:space-between;align-items:center;gap:15px;margin:27px 0 15px;display:flex}.section-heading h3{color:#d9d9be;font-size:22px}.section-heading .eyebrow{font-size:7px}.section-heading>.eyebrow{color:#9daf91;align-items:center;gap:8px;display:flex}.section-heading>svg{color:#a4ad85}.dungeon-selection{background:#1d322c;border:1px solid #3d5144;border-radius:8px;align-items:center;gap:13px;margin-bottom:21px;padding:16px 19px;display:flex}.dungeon-selection label{color:#a5b898;min-width:62px;font-size:11px}.dungeon-selection select{background:#162b26;border-color:#4a5e47;flex:1;max-width:370px;margin-right:auto;padding:10px 13px;font-size:11px}.dungeon-cards{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.dungeon-card{text-align:left;background:linear-gradient(#213b31,#1a2e27);border:1px solid #3d5044;border-radius:9px;padding:0 19px 17px;overflow:hidden}.dungeon-card.chosen{border-color:#b5a472;box-shadow:0 0 0 1px #b5a47244}.dungeon-card.tides{background:linear-gradient(#263f45,#1c3032)}.dungeon-card.forge{background:linear-gradient(#493c2b,#2c3027)}.dungeon-art{background:radial-gradient(at 50% 80%,#6e9b5840,#0000 70%);justify-content:center;align-items:center;height:170px;margin:0 -19px 20px;display:flex;position:relative;overflow:hidden}.dungeon-card.tides .dungeon-art{background:radial-gradient(at 50% 80%,#5caca345,#0000 70%)}.dungeon-card.forge .dungeon-art{background:radial-gradient(at 50% 80%,#d9923e40,#0000 70%)}.dungeon-art>svg{stroke-width:1px;color:#a5b885;filter:drop-shadow(0 0 30px #b9cd9560);z-index:2;width:50px;height:50px}.tides .dungeon-art>svg{color:#9fc1c3}.forge .dungeon-art>svg{color:#d1af76}.dungeon-arch{background:#112b253f;border:14px solid #7084664d;border-bottom:0;border-top-left-radius:65px;border-top-right-radius:65px;width:110px;height:135px;position:absolute;bottom:0;box-shadow:0 0 0 8px #7c9c6b13,inset 0 0 25px #97b58110}.dungeon-arch:before,.dungeon-arch:after{content:"";background:#6b855c40;width:29px;height:100px;position:absolute;bottom:0}.dungeon-arch:before{left:-70px;transform:skewY(15deg)}.dungeon-arch:after{right:-70px;transform:skewY(-15deg)}.dungeon-card h3{margin:9px 0 8px;font-size:22px}.dungeon-card p{min-height:20px;font-size:10px}.dungeon-card>div:last-child{letter-spacing:.9px;color:#a7b093;border-top:1px solid #6e7d552c;justify-content:space-between;margin-top:22px;padding-top:14px;font-size:7px;display:flex}.dungeon-card .eyebrow{font-size:7px}.public-lobbies{background:#192d27;border:1px solid #3a4d42;border-radius:9px;overflow:hidden}.public-lobby{border-bottom:1px solid #3a4d4260;align-items:center;gap:16px;padding:20px;display:flex}.public-lobby:last-child{border-bottom:0}.lobby-icon{color:#b5bd85;background:#385037;border:1px solid #637548;border-radius:7px;place-items:center;width:47px;height:47px;display:grid}.lobby-icon.tides{color:#a2bdba;background:#2d4848;border-color:#516f69}.lobby-icon.forge{color:#d2b17c;background:#4d432e;border-color:#76643f}.lobby-icon svg{width:21px;height:21px}.public-lobby h4{font-size:17px}.public-lobby p{margin-top:6px;font-size:9px}.lobby-seats{align-items:center;gap:4px;margin-left:auto;display:flex}.lobby-seats>span{background:#375047;border-radius:2px;width:6px;height:12px}.lobby-seats>span.filled{background:#a4b18a}.lobby-seats small{margin:0 15px 0 5px;font-size:10px}.empty-state{text-align:center;padding:36px 20px}.empty-state svg{color:#809574}.empty-state h3{margin:14px 0 8px;font-size:20px}.empty-state p{font-size:11px}.lobby-detail{background:linear-gradient(145deg,#263f32,#1b302b);border:1px solid #556448;border-radius:10px;padding:25px}.lobby-header{align-items:center;gap:18px;margin-bottom:27px;display:flex}.lobby-header h2{margin-top:9px;font-size:27px}.lobby-header p{margin-top:8px;font-size:10px}.lobby-header .icon-button{margin-left:auto}.dungeon-symbol{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);color:#c3c995;background:#3a503740;border:1px solid #677a54;place-items:center;width:64px;height:72px;display:grid}.party-members{grid-template-columns:1fr 1fr;gap:12px;display:grid}.party-member,.empty-member{background:#21382d;border:1px solid #51614866;border-radius:7px;align-items:center;gap:12px;min-height:80px;padding:16px;display:flex}.party-member strong{font-family:var(--serif);align-items:center;gap:7px;font-size:17px;font-weight:400;display:flex}.party-member strong svg{color:#bba674}.party-member small{margin-top:7px;font-size:9px;display:block}.ready-status{white-space:nowrap;color:#879c82;align-items:center;gap:5px;margin-left:auto;font-size:8px;display:flex}.ready-status.ready{color:#c0ca91}.empty-member{color:#879d81;text-align:left;background:#1a302950;border-style:dashed;font-size:10px}.empty-member>svg:last-child{margin-left:auto}.empty-member:hover{background:#2c4436}.lobby-footer{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.lobby-footer .button:first-child{margin-right:auto}.ready-button{color:#d8deb3;background:#435a3b;border-color:#7c905c}.fine-print{color:#8b9f86;margin-top:17px;font-size:10px}.resume-card{background:#253b2f;border:1px solid #57664d;border-radius:9px;align-items:center;gap:20px;margin-bottom:24px;padding:25px;display:flex}.resume-card h3{font-size:25px}.resume-card p{margin-top:8px;font-size:11px}.resume-card .button{margin-left:auto}.button.equipped{color:#bccb8a;background:#405331;border-color:#697b4b}.quest-list{flex-direction:column;gap:14px;display:flex}.quest-card{background:linear-gradient(125deg,#273d2f,#1c3129);border:1px solid #43563e;border-radius:8px;align-items:center;gap:23px;padding:24px;display:flex}.quest-number{font-size:23px;font-family:var(--serif);color:#c4b281;text-align:center;min-width:42px}.quest-body{flex:1}.quest-body .eyebrow{font-size:7px}.quest-body h3{margin:9px 0;font-size:23px}.quest-body p{font-size:11px}.quest-progress{align-items:center;gap:13px;max-width:420px;margin:15px 0;display:flex}.quest-progress .progress{flex:1;height:3px}.quest-progress small{color:#b4bd93;font-size:9px}.quest-rewards{flex-wrap:wrap;align-items:center;gap:17px;display:flex}.quest-rewards>span{color:#c2b584;align-items:center;gap:5px;font-size:9px;display:flex}.quest-card .button{min-width:112px;font-size:10px}.quest-card.completed{opacity:.58}.shop-notice{background:#3d492b;border:1px solid #667444;border-radius:7px;align-items:center;gap:16px;margin-bottom:23px;padding:17px;display:flex}.shop-notice>svg{color:#d4be82}.shop-notice p{color:#b2bf90;flex:1;font-size:11px}.shop-notice .button{font-size:10px}.shop-grid{grid-template-columns:repeat(3,1fr);gap:21px;display:grid}.shop-card{background:linear-gradient(#283f30,#1c3128);border:1px solid #42563d;border-radius:9px;flex-direction:column;padding:20px;display:flex}.shop-item-art{color:#c8c38e;background:radial-gradient(#b4be6840,#0000 62%);justify-content:center;align-items:center;height:130px;display:flex}.shop-item-art>svg{stroke-width:1.2px;width:51px;height:51px;transform:rotate(-20deg)}.shop-item-art.weapon>svg{width:62px;height:62px;transform:rotate(-25deg)}.shop-item-art.armor>svg{transform:none}.shop-card .eyebrow{font-size:7px}.shop-card h3{margin:11px 0 9px;font-size:23px}.shop-card p{min-height:35px;font-size:10px}.item-stats{color:#adbd8b;flex:1;gap:10px;margin:15px 0 25px;font-size:9px;display:flex}.shop-card .button{width:100%;font-size:10px}.shop-card .button>svg:last-child{margin-left:auto}.enemy-art{filter:drop-shadow(0 7px 12px #081e2080);width:122px;height:139px;animation:2.5s ease-in-out infinite float}.enemy-art.boss{width:145px;height:160px}.weakness{color:#c3b09b;border:1px solid #7782635c;border-radius:3px;margin-top:7px;padding:3px 5px;font-size:6px;display:block}.weakness.fire{color:#d8b49a}.weakness.ice{color:#9fc9cb}.weakness.nature{color:#b9c5a0}.status-chips{justify-content:center;gap:3px;margin-top:7px;display:flex}.status-chips span{color:#d7bc9b;border:1px solid #8c91694a;border-radius:2px;padding:2px 4px;font-size:6px}.committed{color:#c2d298;background:#69824a44;border:1px solid #93ad6580;border-radius:10px;align-items:center;gap:3px;padding:4px 7px;font-size:7px;display:flex;position:absolute;top:-22px}.rune-buttons{gap:6px;display:flex}.rune-buttons button{color:#adc4a2;background:#2a4234;border:1px solid #52634b;border-radius:5px;align-items:center;gap:5px;padding:10px;font-size:9px;display:flex}.rune-buttons button.lit{color:#dec38c;opacity:1;background:#495433;border-color:#94905c}.toast{z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#dddcc0;background:#304834f2;border:1px solid #7a8559;border-radius:8px;align-items:center;gap:13px;min-width:260px;max-width:calc(100vw - 35px);padding:16px 18px;font-size:11px;line-height:1.7;display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #050f1580}.toast>svg{color:#d3ba7e}.toast>button{color:#adb997;place-items:center;margin-left:10px;display:grid}.modal-shade{z-index:90;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#05161cb8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:linear-gradient(135deg,#2b4133,#1c322b);border:1px solid #6c7954;border-radius:12px;width:100%;max-width:540px;max-height:85dvh;padding:35px;position:relative;overflow-y:auto;box-shadow:0 20px 70px #020f1560}.modal h2{margin:12px 0 28px;font-size:29px}.setting-row{border-top:1px solid #6f7c5040;align-items:center;gap:20px;padding:17px 0;display:flex}.setting-row strong{font-family:var(--serif);font-size:18px;font-weight:400}.setting-row p{margin-top:7px;font-size:10px}.toggle{background:#394d35;border:1px solid #6c8052;border-radius:20px;flex-shrink:0;width:38px;height:21px;margin-left:auto;position:relative}.toggle:after{content:"";background:#a5b68c;border-radius:50%;width:13px;height:13px;transition:transform .15s;position:absolute;top:3px;left:4px}.toggle.on{background:#8c955c;border-color:#b6b780}.toggle.on:after{background:#e4ddac;transform:translate(16px)}.modal>.button{margin-top:17px}.guide-list p{border-top:1px solid #6072483a;align-items:flex-start;gap:15px;padding:14px 0;font-size:11px;line-height:1.8;display:flex}.guide-list p>svg{color:#c4b97e;width:22px;margin-top:3px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.lobby-live-status{color:#b1c596;align-items:center;gap:7px;margin-bottom:17px;font-size:9px;display:flex}.combat-effect{z-index:5;pointer-events:none;color:#f0d29a;font-size:27px;font-family:var(--serif);text-shadow:0 0 12px #263623,0 2px 4px #263623;animation:1.3s ease-out forwards combat-number;position:absolute;top:19px;left:50%}.combat-effect.heal{color:#c5edb3}.combat-ring{pointer-events:none;mix-blend-mode:screen;background:radial-gradient(#f5c8a43d,#0000 68%);border-radius:50%;width:70%;height:70%;animation:.8s ease-out forwards combat-flash;position:absolute;top:15px;left:15%}.combat-ring.heal{background:radial-gradient(#b7eea13d,#0000 68%)}@keyframes combat-number{0%{opacity:0;transform:translate(-50%,12px)scale(.8)}20%{opacity:1;transform:translate(-50%,-2px)scale(1.1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-45px)scale(1)}}@keyframes combat-flash{0%{opacity:0;transform:scale(.7)}20%{opacity:1;transform:scale(1.15)}to{opacity:0;transform:scale(1.5)}}@media (width>=1500px){.vital{width:190px;max-width:20vw}}@media (width<=1100px){.vital{width:140px;max-width:21vw}.dungeon-card h3{font-size:19px}.dungeon-cards{gap:13px}.dungeon-card{padding-left:15px;padding-right:15px}.party-member{gap:9px;padding:13px 10px}.party-member strong{font-size:15px}.party-member small,.ready-status{font-size:7px}.enemy-art{width:97px;height:120px}.lobby-seats{margin-left:auto}}@media (width<=850px){.quest-card{gap:18px;padding:20px}.quest-card .button{min-width:95px}.shop-grid{grid-template-columns:1fr 1fr}.dungeon-cards{gap:10px}.dungeon-card h3{font-size:18px}.dungeon-card p{font-size:9px}.dungeon-art{height:130px}.dungeon-arch{border-width:11px;width:85px;height:115px}.party-members{grid-template-columns:1fr}.creation{padding:35px 25px}.public-lobby{gap:12px;padding:17px}.public-lobby .lobby-seats{display:none}.public-lobby>.button{margin-left:auto}.lobby-header h2{font-size:23px}.dungeon-selection{gap:10px;padding:15px}.dungeon-selection label{min-width:50px}.dungeon-selection .button{padding:11px 12px;font-size:10px}}@media (width<=650px){.mini-portrait{border-radius:5px;width:34px;height:39px}.mini-portrait .hero-art{width:46px;height:60px;top:-1px;left:-6px}.vital{flex-shrink:0;width:83px;max-width:23vw}.vital>div:first-child{gap:3px;margin-bottom:6px;font-size:7px}.vital>div>svg{width:9px;height:9px}.vital strong{font-size:8px}.vital small{font-size:7px}.progress{height:4px}.world-canvas{inset:30px -55px 22px}.page-panel{padding-top:0}.panel-title{align-items:flex-start;gap:12px}.panel-title h2{font-size:29px;line-height:1.2}.panel-title .eyebrow{letter-spacing:1px;font-size:6px}.panel-title>.pill{gap:5px;margin-top:19px;padding:7px 8px;font-size:8px}.panel-title>.pill>svg{width:11px;height:11px}.page-intro{margin-bottom:21px;font-size:10px;line-height:1.8}.dungeon-selection{flex-wrap:wrap;gap:9px;padding:13px}.dungeon-selection label{min-width:45px;font-size:9px}.dungeon-selection select{flex:1;max-width:none;padding:10px 9px;font-size:10px}.dungeon-selection .button{width:100%;min-height:38px;margin-top:2px;font-size:11px}.dungeon-cards{grid-template-columns:1fr;gap:11px}.dungeon-card{grid-template-columns:80px 1fr;align-content:center;column-gap:15px;min-height:110px;padding:17px;display:grid;position:relative;overflow:hidden}.dungeon-art{border-right:1px solid #69845133;grid-area:1/1/5;height:100%;margin:-17px 0 -17px -17px}.dungeon-art>svg{width:27px;height:27px}.dungeon-arch{opacity:.5;border-width:8px;width:57px;height:83px}.dungeon-arch:before,.dungeon-arch:after{display:none}.dungeon-card .eyebrow{letter-spacing:1px;grid-column:2;font-size:6px}.dungeon-card h3{grid-column:2;margin:6px 0;font-size:21px}.dungeon-card p{grid-column:2;min-height:0;font-size:9px}.dungeon-card>div:last-child{grid-column:2;margin-top:12px;padding-top:8px;font-size:6px}.section-heading{margin:23px 0 13px}.section-heading h3{font-size:21px}.section-heading .eyebrow{letter-spacing:.8px;font-size:6px}.public-lobby{gap:10px;padding:14px 12px}.lobby-icon{border-radius:5px;width:34px;height:40px}.lobby-icon>svg{width:16px;height:16px}.public-lobby h4{font-size:15px}.public-lobby p{max-width:170px;margin-top:5px;font-size:8px}.public-lobby>.button{gap:6px;min-height:32px;padding:8px 10px;font-size:9px}.public-lobby>.button svg{width:12px}.empty-state{padding:29px 18px}.empty-state h3{font-size:18px;line-height:1.4}.empty-state p{font-size:10px}.lobby-detail{padding:18px 14px}.lobby-header{gap:12px;margin-bottom:19px}.dungeon-symbol{width:43px;height:55px}.dungeon-symbol>svg{width:22px;height:22px}.lobby-header .eyebrow{font-size:6px}.lobby-header h2{margin-top:8px;font-size:23px}.lobby-header p{font-size:8px}.lobby-header .icon-button{width:25px}.party-members{gap:9px}.party-member,.empty-member{min-height:68px;padding:13px 12px}.party-member strong{font-size:16px}.party-member small,.ready-status{font-size:8px}.empty-member{font-size:9px}.lobby-footer{flex-wrap:wrap;gap:7px;margin-top:18px}.lobby-footer .button{flex:1;padding:10px 12px;font-size:9px}.lobby-footer .button:first-child{flex:1;margin:0}.lobby-footer .button:last-child:not(:nth-child(2)){flex:auto;width:100%}.fine-print{font-size:9px;line-height:1.7}.resume-card{flex-wrap:wrap;gap:14px;padding:18px}.resume-card h3{font-size:23px}.resume-card p{font-size:9px}.resume-card>.button{width:100%}.quest-card{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:19px 15px;position:relative}.quest-number{min-width:29px;padding-top:8px;font-size:20px}.quest-body{flex:1;min-width:210px}.quest-body .eyebrow{font-size:6px}.quest-body h3{margin:8px 0;font-size:21px}.quest-body p{font-size:9px;line-height:1.8}.quest-progress{margin:12px 0}.quest-rewards{gap:8px 10px}.quest-rewards>span{gap:4px;font-size:7px}.quest-rewards svg{width:10px;height:10px}.quest-card>.button{min-height:32px;margin-top:3px;margin-left:41px;padding:8px 13px;font-size:9px}.shop-notice{flex-wrap:wrap;gap:11px;padding:16px}.shop-notice p{min-width:230px;font-size:9px}.shop-notice .button{width:100%;min-height:35px}.shop-grid{gap:12px}.shop-card{padding:15px 12px}.shop-item-art{height:94px}.shop-item-art>svg{width:39px;height:39px}.shop-item-art.weapon>svg{width:47px;height:47px}.shop-card .eyebrow{font-size:6px}.shop-card h3{margin:9px 0 7px;font-size:20px;line-height:1.2}.shop-card p{min-height:35px;font-size:9px;line-height:1.7}.item-stats{gap:7px;margin:14px 0 18px;font-size:7px}.shop-card .button{gap:6px;min-height:33px;padding:9px 11px;font-size:9px}.shop-card .button>svg{width:12px;height:12px}.enemy-art{width:93px;height:111px}.enemy-art.boss{width:115px;height:130px}.weakness{max-width:83px;margin-top:6px;padding:3px 4px;font-size:5px}.rune-buttons{flex:1;gap:5px}.rune-buttons button{gap:4px;padding:9px 8px;font-size:8px}.rune-buttons svg{width:12px;height:12px}.toast{bottom:calc(84px + var(--safe-bottom));gap:10px;width:calc(100vw - 30px);min-width:0;max-width:420px;padding:14px;font-size:10px}.toast>svg{width:15px}.modal-shade{padding:16px}.modal{border-radius:9px;padding:27px 23px}.modal h2{margin:12px 0 24px;font-size:26px}.modal .eyebrow{font-size:7px}.setting-row strong{font-size:17px}.setting-row p{font-size:9px}.setting-row{gap:17px}.guide-list p{gap:12px;padding:13px 0;font-size:10px;line-height:1.9}.guide-list p>svg{width:19px}.creation{padding:30px 20px 40px}.hero-name{max-width:400px}.hero-name>div{flex-wrap:wrap;gap:8px}.hero-name input{flex-basis:100%;width:100%;max-width:none;font-size:12px}.hero-name .button{width:100%;min-height:44px;font-size:12px}.hero-name p{font-size:9px}.gate h1{font-size:66px}.gate:before{width:370px;height:370px;top:calc(44% - 185px);left:calc(50% - 185px)}.gate:after{width:315px;height:315px;top:calc(44% - 157px);left:calc(50% - 157px)}.gate-copy{margin-bottom:30px;font-size:13px}.gate .eyebrow{letter-spacing:1.5px;font-size:7px}.gate-footer{letter-spacing:1px;gap:13px;font-size:6px;bottom:28px}}@media (width<=370px){.vital{width:74px;max-width:22vw}.mini-portrait{width:31px;height:36px}.enemy-art{width:80px;height:104px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=650px){.vital>div:first-child{font-size:8px}.vital strong{font-size:9px}.lobby-footer .button{min-height:41px;font-size:11px}.public-lobby>.button{min-height:39px;font-size:11px}.rune-buttons button{min-height:40px;font-size:10px}.quest-card>.button{min-height:38px;font-size:11px}.shop-card .button{min-height:39px;font-size:11px}}:root{--game-ink:#584939;--game-cream:#fff3d3;--game-gold:#eac06c;--game-blue:#133b91;--game-font:"Trebuchet MS", "Segoe UI", system-ui, sans-serif}html,body,#root{width:100%;height:100%;overflow:hidden}body,button,input,select{font-family:var(--game-font)}.game-root{width:100%;height:var(--app-height);color:var(--game-ink);isolation:isolate;background:#a4d8d2;position:fixed;inset:0;overflow:hidden}.game-root>.world-canvas{width:100%;height:100%;min-height:0;position:absolute;inset:0}.game-root>.world-canvas canvas{touch-action:none;width:100%;height:100%}.game-world-shade{pointer-events:none;z-index:1;background:linear-gradient(#28352212,#0000 18% 78%,#24453124);position:absolute;inset:0}.game-hud{z-index:10;top:calc(15px + var(--safe-top));left:calc(20px + var(--safe-left));right:calc(20px + var(--safe-right));pointer-events:none;align-items:center;gap:12px;display:flex;position:absolute}.game-hud>*{pointer-events:auto}.game-portrait{background:linear-gradient(#fcf1d6,#dccba3);border:3px solid #fff6d2;border-radius:14px;width:55px;height:61px;position:relative;overflow:visible;box-shadow:0 3px #786447,0 6px 14px #353a2630}.game-portrait .hero-art{filter:drop-shadow(0 2px 1px #63492e30);width:70px;height:79px;position:absolute;bottom:-1px;left:-10px}.game-portrait>span{color:#fff7d7;background:#46628b;border:2px solid #fff1cc;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:grid;position:absolute;bottom:-7px;right:-7px;box-shadow:0 2px #364965}.game-vitals{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffecb8;border:2px solid #fff8d4;border-radius:12px;min-width:150px;padding:4px 12px 5px;box-shadow:0 3px #7a76504a,0 4px 12px #3b553422}.game-hero-name{color:#604c39;align-items:center;gap:15px;margin-bottom:3px;font-size:13px;font-weight:700;display:flex}.game-hero-name>small{color:#917553;margin-left:auto;font-size:9px}.heart-row{align-items:center;gap:3px;display:flex}.game-heart{color:#df645a;filter:drop-shadow(0 2px #994f45);display:inline-flex}.game-heart.empty{color:#c9b79b;filter:drop-shadow(0 1px #a79d82)}.game-mana{color:#7393b2;align-items:center;gap:5px;margin-top:6px;display:flex}.game-mana .progress{background:#c5c6b3;border:1px solid #9aa8b144;flex:1;max-width:140px;height:5px}.game-mana .progress>span{background:linear-gradient(#9ae9ed,#5d9ec6)}.game-mana small{color:#797e78;margin-left:2px;font-size:8px}.game-currency{color:#846332;text-shadow:0 1px #fff7df;background:#ffefbcd6;border:2px solid #fff6cf;border-radius:10px;align-items:center;gap:6px;min-height:34px;margin-left:auto;padding:7px 12px;font-size:13px;display:flex;box-shadow:0 3px #a1865855}.game-system{pointer-events:auto;color:#8d7755;background:#fbebc2d6;border:2px solid #fff1c7;border-radius:11px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 3px #88744d5a}.game-system:hover{background:#fff4d3;transform:translateY(-1px)}.quest-cue{z-index:8;top:calc(100px + var(--safe-top));left:calc(22px + var(--safe-left));text-align:left;color:#6b583d;background:#fff5dbe0;border:2px solid #fff8df;border-radius:10px;align-items:center;gap:10px;width:280px;padding:9px 12px;display:flex;position:absolute;box-shadow:0 2px #81735750,0 6px 18px #35573520}.quest-cue-icon{color:#b6924f;background:#e9d6a9;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.quest-cue strong{font-family:var(--game-font);letter-spacing:.1px;font-size:12px;display:block}.quest-cue small{color:#8f7c57;margin-top:4px;font-size:10px;line-height:1.4;display:block}.game-minimap{right:calc(22px + var(--safe-right));top:calc(83px + var(--safe-top));z-index:8;background:#f3e7bc;border:3px solid #fff5d6;border-radius:12px;width:151px;padding:6px 6px 7px;position:absolute;transform:rotate(1deg);box-shadow:0 4px #a0926959,0 6px 20px #35573530}.map-svg{aspect-ratio:1;border:1px solid #788a5377;border-radius:5px;width:100%;display:block;box-shadow:inset 0 1px 4px #54835333}.game-minimap>span{color:#7a6744;justify-content:center;align-items:center;gap:4px;margin-top:6px;font-size:10px;font-weight:700;display:flex}.game-location{z-index:4;left:50%;bottom:calc(109px + var(--safe-bottom));pointer-events:none;text-align:center;text-shadow:0 2px 2px #24482b55;color:#fffadd;flex-direction:column;align-items:center;max-width:50vw;display:flex;position:absolute;transform:translate(-50%)}.game-location>span{letter-spacing:.5px;font-size:20px;font-weight:700}.game-location>small{color:#ffffe5d9;margin-top:5px;font-size:10px}.game-dock{z-index:11;bottom:calc(18px + var(--safe-bottom));-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#efe2badb;border:3px solid #fff4d3;border-radius:19px;align-items:center;gap:4px;padding:6px 8px;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 5px #8d82545e,0 7px 24px #28543230}.game-dock>button{color:#8d805b;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:65px;height:51px;transition:transform .15s,background .15s;display:flex;position:relative}.game-dock>button.active{color:#627b41;background:#d3dfb0;box-shadow:inset 0 1px #fff8df}.game-dock>button:hover{background:#f8eecb;transform:translateY(-2px)}.game-dock>button>span{letter-spacing:.1px;font-size:9px;font-weight:700}.game-dock>button>i{background:#db7851;border-radius:50%;width:5px;height:5px;position:absolute;top:8px;right:14px}.touch-pad{z-index:7;left:calc(30px + var(--safe-left));bottom:calc(99px + var(--safe-bottom));filter:drop-shadow(0 3px #7a764b55);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:127px;height:127px;display:grid;position:absolute}.touch-pad button,.touch-pad>span{color:#8a875d;touch-action:manipulation;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff6dcb3;border:2px solid #fff8dfaa;place-items:center;font-size:15px;line-height:1;display:grid}.touch-pad button:hover:not(:disabled){color:#6c7942;background:#f6e7bce6}.touch-pad button:active:not(:disabled){background:#d3e3b1;transform:translateY(2px)}.touch-pad .up{border-bottom:0;border-radius:11px 11px 0 0;grid-area:1/2}.touch-pad .left{border-right:0;border-radius:11px 0 0 11px;grid-area:2/1}.touch-pad>span{border:0;grid-area:2/2}.touch-pad .right{border-left:0;border-radius:0 11px 11px 0;grid-area:2/3}.touch-pad .down{border-top:0;border-radius:0 0 11px 11px;grid-area:3/2}.game-action-control{z-index:7;right:calc(44px + var(--safe-right));bottom:calc(111px + var(--safe-bottom));flex-direction:column;align-items:center;display:flex;position:absolute}.game-action-button{color:#fff6dd;text-shadow:0 2px #a9773d;background:linear-gradient(#f0c674,#d49b4c);border:4px solid #fffbdf;border-radius:50%;width:77px;height:77px;box-shadow:0 5px #956e3f70,0 7px 20px #38533333}.game-action-button>span{font-size:30px;font-weight:700}.game-action-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px #956e3f70}.game-action-button:disabled{opacity:.5}.game-action-control>small{color:#ffffe1;text-shadow:0 2px 2px #3e614b99;margin-top:10px;font-size:12px;font-weight:700}.near-object-name{white-space:nowrap;color:#6c603f;background:#fff5d3ed;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:700;position:absolute;top:-33px;box-shadow:0 2px #9e956766}.game-dungeon-context{z-index:8;bottom:calc(107px + var(--safe-bottom));flex-direction:column;align-items:center;gap:10px;width:max-content;max-width:92vw;display:flex;position:absolute;left:50%;transform:translate(-50%)}.game-party-strip{color:#7e7252;background:#fff6d3df;border-radius:10px;align-items:center;gap:8px;padding:6px 11px;font-size:10px;display:flex;box-shadow:0 2px #8c8f6366}.game-party-strip>span{opacity:.6;align-items:center;gap:4px;display:flex}.game-party-strip>span.online{opacity:1}.game-advance{color:#6a4b24;background:linear-gradient(#edc478,#d4a258);border:2px solid #fff7d8;border-radius:10px;align-items:center;gap:9px;padding:10px 22px;font-size:13px;font-weight:700;display:flex;box-shadow:0 3px #88693e70}.game-menu-shade,.dialogue-shade{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#29452745;justify-content:center;align-items:center;padding:30px;display:flex;position:absolute;inset:0}.game-menu-window{width:min(950px,90vw);max-height:calc(var(--app-height) - 65px - var(--safe-top) - var(--safe-bottom));color:#594735;background:#f4e7c8;border:4px solid #fff5d2;border-radius:15px;outline:2px solid #87734d;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 8px #68563b55,0 20px 70px #263c3266}.game-menu-chrome{color:#fff8d7;letter-spacing:.5px;text-shadow:0 2px #456448;background:linear-gradient(#729a72,#557d60);border-bottom:3px solid #e5d7b3;justify-content:space-between;align-items:center;padding:14px 22px;font-size:18px;font-weight:700;display:flex}.game-menu-chrome>button{color:#fff9db;background:#f7edc732;border:1px solid #fbf2cd66;border-radius:6px;place-items:center;width:27px;height:27px;display:grid}.game-menu-body{overscroll-behavior:contain;scrollbar-color:#b4a075 #ebdfbd;scrollbar-width:thin;min-height:0;padding:21px 26px;overflow:auto}.game-menu-foot{color:#8d7a50;background:#e5d8b4;border-top:1px solid #bcb08a;justify-content:space-between;align-items:center;padding:11px 22px;font-size:10px;display:flex}.game-menu-foot>span,.game-menu-foot>button{align-items:center;gap:7px;display:flex}.game-menu-foot>button{color:#6b714c;font-size:11px}.game-menu-body .page-panel{padding:0}.game-menu-body h1,.game-menu-body h2,.game-menu-body h3,.game-menu-body h4{font-family:var(--game-font);letter-spacing:0;color:#665036;font-weight:700}.game-menu-body .panel-title{margin-bottom:15px}.game-menu-body .panel-title h2{margin-top:5px;font-size:23px}.game-menu-body .eyebrow{font-family:var(--game-font);letter-spacing:.8px;color:#a1844c;font-size:9px;font-weight:700}.game-menu-body p,.game-menu-body small{color:#8a7d5d}.game-menu-body .page-intro{display:none}.game-menu-body .button{color:#6e5a39;background:#e2d4ac;border:2px solid #b7a77b;border-radius:7px;min-height:37px;padding:8px 12px;font-size:12px;box-shadow:0 2px #b3a38133}.game-menu-body .button.primary{color:#fff8dd;text-shadow:0 1px #576e45;background:linear-gradient(#8fa978,#77945f);border-color:#607c4c}.game-menu-body .button.primary:hover:not(:disabled){background:#8fa978}.game-menu-body .pill{color:#8f7545;background:#eadbb4;border:1px solid #bfad7e;font-size:10px}.game-menu-body .section-heading{margin:20px 0 12px}.game-menu-body .section-heading h3{color:#6e593c;font-size:19px}.game-menu-body .section-heading>svg{color:#a18b5b}.game-menu-body .dot{box-shadow:none;background:#879d62}.game-menu-body .dungeon-selection{background:#e8dcb8;border-color:#c9b889;margin-bottom:16px;padding:12px 14px}.game-menu-body .dungeon-selection label{color:#8a7349;font-size:11px}.game-menu-body select,.game-menu-body input{color:#736044;background:#fff4d5;border:2px solid #c8b78b;font-size:12px}.game-menu-body .dungeon-cards{gap:12px}.game-menu-body .dungeon-card{background:#e5dabb;border:2px solid #c7b68a;border-radius:8px;padding:12px 15px;box-shadow:0 3px #a7946833}.game-menu-body .dungeon-card.chosen{border-color:#839a63;box-shadow:0 0 0 1px #839a63}.game-menu-body .dungeon-art{background:radial-gradient(at 50% 90%,#b2c183,#d4d9b4);height:100px;margin:-12px -15px 12px}.game-menu-body .dungeon-card.tides .dungeon-art{background:radial-gradient(at 50% 90%,#96bebf,#c6d9d1)}.game-menu-body .dungeon-card.forge .dungeon-art{background:radial-gradient(at 50% 90%,#bc9565,#ddcfa6)}.game-menu-body .dungeon-art>svg{color:#7b9256;filter:none;width:35px;height:35px}.game-menu-body .dungeon-arch{background:#567b4833;border-color:#9ca58388;width:75px;height:90px}.game-menu-body .dungeon-card h3{margin:6px 0;font-size:17px}.game-menu-body .dungeon-card p{min-height:0;font-size:11px}.game-menu-body .dungeon-card>div:last-child{color:#988355;border-color:#bba67555;margin-top:13px;padding-top:10px;font-size:8px}.game-menu-body .public-lobbies{background:#eee2bf;border-color:#c6b68b}.game-menu-body .public-lobby{border-color:#ccb98d88;padding:14px}.game-menu-body .public-lobby h4{font-size:15px}.game-menu-body .public-lobby p{font-size:10px}.game-menu-body .lobby-icon{color:#7b8f58;background:#d2d6aa;border-color:#9ba878;width:39px;height:44px}.game-menu-body .lobby-icon.tides{color:#769990;background:#c3d5cb;border-color:#98b1a4}.game-menu-body .lobby-icon.forge{color:#a18247;background:#dbcb9f;border-color:#b6a174}.game-menu-body .lobby-seats>span{background:#cec29b}.game-menu-body .lobby-seats>span.filled{background:#8d9f6a}.game-menu-body .empty-state{padding:24px}.game-menu-body .empty-state h3{font-size:17px}.game-menu-body .empty-state p{font-size:11px}.game-menu-body .lobby-detail{background:#e7dfc0;border:2px solid #bcb78a;padding:19px}.game-menu-body .lobby-live-status{color:#7d945e;margin-bottom:12px;font-size:10px}.game-menu-body .lobby-header{margin-bottom:19px}.game-menu-body .lobby-header h2{font-size:23px}.game-menu-body .lobby-header p{font-size:11px}.game-menu-body .dungeon-symbol{color:#7e955b;background:#bcc69b}.game-menu-body .party-member{background:#f5eacb;border:1px solid #c5bd98;min-height:68px;padding:12px}.game-menu-body .party-member strong{font-family:var(--game-font);font-size:15px}.game-menu-body .party-member small{font-size:10px}.game-menu-body .ready-status{color:#a09270;font-size:10px}.game-menu-body .ready-status.ready{color:#7e945a}.game-menu-body .empty-member{color:#a39062;background:#e4d9b433;border-color:#c6b489;min-height:63px;font-size:11px}.game-menu-body .lobby-footer{margin-top:18px}.game-menu-body .fine-print{font-size:10px}.game-menu-body .mini-portrait{background:#c9d2af;border:2px solid #fff3ce;border-radius:7px;width:43px;height:45px;box-shadow:0 2px #a69c7155}.game-menu-body .mini-portrait .hero-art{width:55px;height:64px;top:-2px;left:-7px}.game-menu-body .resume-card{background:#d6dab7;border:2px solid #aeb386}.game-menu-body .resume-card h3{font-size:21px}.game-menu-body .quest-card{background:#f3e6c3;border:1px solid #cbb783;border-left:4px solid #b5bb76;gap:18px;padding:19px;box-shadow:0 3px #ad99632c}.game-menu-body .quest-number{font-family:var(--game-font);color:#b79b5b;font-size:21px}.game-menu-body .quest-body h3{color:#79613c;font-size:19px}.game-menu-body .quest-body p{font-size:11px}.game-menu-body .quest-progress .progress{background:#d3c89d;height:4px}.game-menu-body .quest-progress .progress>span{background:#a6b26f}.game-menu-body .quest-progress small{color:#8b915a;font-size:10px}.game-menu-body .quest-rewards>span{color:#a48a50;font-size:10px}.game-menu-body .quest-card.completed{opacity:.58}.game-menu-body .shop-grid{gap:14px}.game-menu-body .shop-card{background:#f1e4c1;border-color:#c7b383;padding:15px}.game-menu-body .shop-item-art{color:#a69052;background:radial-gradient(#e7d89c80,#0000 72%);height:90px}.game-menu-body .shop-item-art>svg{width:43px;height:43px}.game-menu-body .shop-card h3{font-size:18px}.game-menu-body .shop-card p{min-height:0;font-size:11px}.game-menu-body .item-stats{color:#89935b;margin:12px 0 17px;font-size:10px}.game-menu-body .shop-notice{background:#e2dbad;border-color:#beb684;padding:13px}.game-menu-body .shop-notice p{color:#8d8754;font-size:11px}.game-root .modal-shade{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#25422d55;padding:24px;position:absolute}.game-root .modal{color:#705c3e;background:linear-gradient(#fff3d7,#eddfba);border:4px solid #fff8dc;border-radius:12px;outline:2px solid #a28a5b;max-width:560px;padding:25px;box-shadow:0 7px #66563855,0 15px 50px #2d443950}.game-root .modal .eyebrow{color:#aa9159;letter-spacing:1px;font-size:10px}.game-root .modal h2{font-family:var(--game-font);color:#806338;margin:10px 0 22px;font-size:25px;font-weight:700}.game-root .modal .close{color:#a69468}.game-root .modal p{color:#8e815b}.game-root .setting-row{border-color:#c7b58b77;padding:15px 0}.game-root .setting-row strong{font-family:var(--game-font);color:#786141;font-size:16px;font-weight:700}.game-root .setting-row p{font-size:11px}.game-root .toggle:after{background:#f8f0cf}.game-option-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.game-root .modal .button{color:#887042;background:#dfd0a7;border:2px solid #b9a678;font-size:12px}.game-root .modal .button.primary{color:#fff8df;background:#8aa36b;border-color:#718b53}.game-root .guide-list p{border-color:#c6b68d55;font-size:12px}.game-root .guide-list p>svg{color:#a79c63}.game-travel-areas{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.game-travel-areas>button{color:#8f7448;background:#e5d9b2;border:2px solid #c5b181;border-radius:8px;flex-direction:column;align-items:center;gap:9px;padding:7px;font-size:11px;font-weight:700;display:flex}.game-travel-areas>button.selected{background:#d7dfb4;border-color:#93a674}.game-map-objects{flex-wrap:wrap;gap:8px;margin-top:19px;display:flex}.game-map-objects button{color:#937748;background:#e4d9b4;border:1px solid #c1ae82;border-radius:5px;align-items:center;gap:6px;padding:9px;font-size:11px;display:flex}.dialogue-shade{-webkit-backdrop-filter:none;backdrop-filter:none;padding-bottom:calc(117px + var(--safe-bottom));z-index:31;background:#3754300b;align-items:flex-end}.game-dialogue{background:linear-gradient(#fff4d7,#eee0b8);border:4px solid #fff7d9;border-radius:13px;outline:2px solid #937b55;align-items:center;gap:20px;width:100%;max-width:710px;min-height:155px;padding:44px 26px 19px;display:flex;position:relative;box-shadow:0 7px #74634466,0 15px 45px #1b352b35}.dialogue-name{color:#fff7db;background:#769867;border:2px solid #fff7d5;border-radius:8px;padding:7px 17px;font-size:13px;font-weight:700;position:absolute;top:-21px;left:20px;box-shadow:0 2px #526c42}.dialogue-portrait{flex-shrink:0;align-self:flex-end;place-items:center;width:95px;display:grid}.dialogue-portrait .hero-art,.dialogue-portrait .enemy-art{width:90px;height:114px}.dialogue-portrait .sigil{color:#ba9956;width:55px;height:65px}.dialogue-body{flex:1}.dialogue-body>p{color:#816841;font-size:13px;line-height:1.75}.dialogue-body>.button{float:right;color:#6d7443;background:#c5ce99;border:2px solid #94a36e;min-height:36px;margin-top:12px;padding:8px 14px;font-size:12px;box-shadow:0 2px #87905c44}.game-dialogue>.close{color:#aa9265;top:10px;right:10px}.game-toast{z-index:95;left:50%;bottom:calc(110px + var(--safe-bottom));color:#8a7148;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff0cde8;border:2px solid #fff8d6;border-radius:10px;align-items:center;gap:10px;width:max-content;max-width:min(500px,90vw);padding:12px 16px;font-size:12px;line-height:1.6;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 4px #7f754d55,0 5px 20px #29453230}.game-toast>svg{color:#c5a059}.game-toast>button{color:#b49c6a;place-items:center;margin-left:5px;display:grid}.game-saving{right:20px;bottom:calc(95px + var(--safe-bottom));z-index:96;color:#f5edcc;filter:drop-shadow(0 2px 1px #5b70494d);position:absolute}.jrpg-battle{z-index:40;isolation:isolate;color:#f8f6e9;background:#477442;font-family:Trebuchet MS,Segoe UI,sans-serif;position:absolute;inset:0;overflow:hidden}.battle-art-backdrop{z-index:-3;image-rendering:auto;background-image:url(/art/battle-woodland.webp);background-position:50% 48%;background-size:cover;position:absolute;inset:0}.battle-diorama{z-index:-2;inset:calc(94px + var(--safe-top)) 0 calc(225px + var(--safe-bottom));pointer-events:none;background:linear-gradient(#162221 0%,#25332d 70%,#15201f 100%);position:absolute;overflow:hidden}.battle-diorama canvas{width:100%;height:100%;display:block}.jrpg-battle:has(.battle-diorama canvas) .battle-field-glow{background:radial-gradient(at 50% 54%,#8697761c,#0000 63%),linear-gradient(#1119173a,#0000 30% 64%,#11191770)}.jrpg-battle[data-biome=tides] .battle-art-backdrop{background-image:url(/art/battle-tides.webp)}.jrpg-battle[data-biome=forge] .battle-art-backdrop{background-image:url(/art/battle-forge.webp)}.battle-field-glow{z-index:-2;background:linear-gradient(#16392915,#0000 20% 65%,#23394733);position:absolute;inset:0}.classic-window{color:#fffce9;text-shadow:0 2px 1px #081947;background:linear-gradient(145deg,#2857b8ed,#122f80f5 60%,#0f255eea);border:3px solid #cad5e6;border-radius:8px;outline:1px solid #263c67;box-shadow:inset 0 0 0 2px #5b79c7,inset 0 -3px #0c1d5366,0 3px #2b354b50}.jrpg-message-window{top:calc(18px + var(--safe-top));left:calc(22px + var(--safe-left));right:calc(22px + var(--safe-right));letter-spacing:.2px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;min-height:47px;padding:12px 18px;font-size:15px;display:grid;position:absolute}.jrpg-message-window>span{overflow-wrap:anywhere;min-width:0;font-weight:500}.jrpg-settings{color:#fffce9;background:#789bdb2c;border:1px solid #a3bae7;border-radius:8px;place-items:center;width:44px;height:44px;padding:0;display:grid}.jrpg-settings:hover{background:#789bdb55}.jrpg-settings:focus-visible{outline-offset:3px;outline:2px solid #fff4bb}.jrpg-round{color:#dbe4ef;white-space:nowrap;align-items:center;gap:13px;font-size:11px;display:flex}.jrpg-round>strong{color:#fff4bb;font-size:15px;font-weight:500}.jrpg-round>strong.urgent{color:#f9b4a1}.jrpg-field{top:calc(115px + var(--safe-top));pointer-events:none;justify-content:space-between;align-items:center;gap:80px;display:flex;position:absolute;bottom:270px;left:8%;right:8%}.jrpg-enemy-formation,.jrpg-hero-formation{pointer-events:auto;flex-direction:column;justify-content:center;align-items:center;width:35%;height:100%;display:flex;position:relative}.jrpg-enemy-formation{flex-wrap:wrap;gap:15px;max-height:540px}.jrpg-hero-formation{align-items:flex-start;gap:0;width:30%;max-height:550px;margin-top:25px}.jrpg-actor{filter:drop-shadow(0 6px 5px #12362240);flex-direction:column;flex-shrink:1;justify-content:center;align-items:center;min-height:0;max-height:47%;display:flex;position:relative}.jrpg-actor.enemy{opacity:1;padding:0}.jrpg-actor.enemy:not(:disabled):hover{filter:drop-shadow(0 0 7px #fff3b457)}.jrpg-actor.enemy:disabled{opacity:1}.jrpg-actor .enemy-art{filter:drop-shadow(0 8px 7px #18483245);width:210px;height:190px;max-height:25vh;animation:2.6s ease-in-out infinite float;filter:grayscale(.35)saturate(.72)contrast(1.18)brightness(.72)!important}.jrpg-actor .enemy-art.boss{width:300px;height:270px;max-height:35vh}.jrpg-actor.hero{max-height:28%;margin:0}.jrpg-actor.hero:nth-child(2n){margin-left:58px}.jrpg-actor.hero .hero-art{filter:grayscale(.24)saturate(.78)contrast(1.12)brightness(.78)drop-shadow(0 5px 5px #090e0d99);width:140px;height:150px;max-height:19vh;animation:2.5s ease-in-out infinite battle-idle;transform:scaleX(-1)}.jrpg-actor-name{font-family:var(--game-font);color:#fff6d8;text-shadow:0 2px 2px #2f4220,0 0 5px #29471d;margin-top:-7px;font-size:13px;font-weight:700}.enemy-hp{width:95px;margin-top:6px}.enemy-hp .progress{background:#345e36a6;height:4px;box-shadow:0 1px #15371755}.enemy-hp .progress>span{background:linear-gradient(#ec8b61,#c65942)}.jrpg-weakness{color:#fff5d1;text-shadow:0 1px 2px #2e4225;background:#294332e6;border-radius:3px;margin-top:5px;padding:1px 4px;font-size:9px;line-height:1.1}.jrpg-actor .classic-cursor{color:#ffffe5;text-shadow:0 2px #485779;opacity:1;font-size:32px;animation:.9s ease-in-out infinite cursor-point;position:absolute;top:42%;left:-34px}.jrpg-ready{color:#ffffe3;background:#708f56cc;border:1px solid #edf8db;border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:7px;right:8px}.jrpg-actor.fallen{filter:grayscale(.8);opacity:.35!important}.jrpg-actor.fallen svg{animation:none;transform:rotate(-18deg)translateY(10px)}.jrpg-lower-panels{left:calc(22px + var(--safe-left));right:calc(22px + var(--safe-right));bottom:calc(42px + var(--safe-bottom));grid-template-rows:auto 57px;grid-template-columns:170px minmax(270px,1fr) 215px;align-items:stretch;gap:7px;display:grid;position:absolute}.jrpg-command-window{flex-direction:column;grid-area:1/1;justify-content:space-around;min-height:178px;padding:12px 9px;display:flex}.classic-command{text-align:left;color:#fffbe8;letter-spacing:.1px;text-shadow:0 2px #142657;border-radius:4px;align-items:center;gap:9px;width:100%;min-height:34px;padding:8px 12px 8px 23px;font-size:16px;display:flex;position:relative}.classic-command>svg{opacity:.65;width:15px}.classic-command>.classic-cursor{color:#ffffea;opacity:0;font-size:23px;position:absolute;top:50%;left:-2px;transform:translateY(-50%)}.classic-command.selected>.classic-cursor,.classic-command:hover>.classic-cursor,.classic-command.continue>.classic-cursor{opacity:1}.jrpg-status-window{flex-direction:column;grid-area:1/2;justify-content:center;gap:9px;padding:12px 17px;display:flex}.jrpg-status-heading{color:#b7caef;grid-template-columns:1fr 1fr .7fr;gap:20px;margin-bottom:0;padding:0 4px;font-size:10px;display:grid}.jrpg-status-heading>span:not(:first-child){text-align:center;letter-spacing:1px}.jrpg-status-row{text-align:left;border-radius:4px;grid-template-columns:1fr 1fr .7fr;align-items:center;gap:20px;min-height:25px;padding:3px 4px;display:grid;opacity:1!important}.jrpg-status-row.selected{background:#94b8ea30;outline:1px solid #d2e1ff77}.jrpg-member-name{color:#fff9d9;text-shadow:0 2px #0d2257;white-space:nowrap;align-items:center;gap:6px;font-size:14px;font-weight:500;display:flex;position:relative}.jrpg-member-name>i{background:#efe298;border-radius:50%;width:4px;height:4px;box-shadow:0 0 4px #efe29888}.jrpg-stat{flex-direction:column;align-items:center;gap:5px;display:flex}.jrpg-stat strong{color:#fffde3;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px;font-weight:400;line-height:1}.jrpg-stat small{color:#bdcef2;font-size:10px;display:inline}.jrpg-stat .progress{background:#102857;width:100%;height:3px}.jrpg-status-effects{opacity:.8;gap:4px;display:flex;position:absolute;bottom:-8px;left:0}.jrpg-status-effects>small{color:#eae2a0;font-size:7px}.jrpg-status-row.fallen{opacity:.5!important}.jrpg-enemy-window{flex-direction:column;grid-area:1/3;justify-content:center;gap:16px;padding:14px 18px;display:flex}.classic-window-caption{color:#b9d0f1;letter-spacing:.5px;font-size:10px}.jrpg-enemy-window>div{flex-direction:column;gap:5px;font-size:14px;display:flex}.jrpg-enemy-window small{color:#b5c9e7;font-size:10px}.jrpg-enemy-window .fallen{opacity:.35}.jrpg-action-window{grid-area:2/1/auto/-1;justify-content:space-between;align-items:center;gap:16px;padding:9px 16px;font-size:12px;display:flex}.jrpg-targets{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.jrpg-targets>span{color:#b6cef2;margin-right:5px;font-size:10px}.jrpg-targets>button{color:#dce5f7;text-shadow:0 1px #16336b;background:#203e8b;border:1px solid #5676b57a;border-radius:3px;padding:5px 8px;font-size:11px}.jrpg-targets>button.selected{color:#fffbe2;background:#5476b154;border-color:#b9cbea}.jrpg-commit{color:#fffbdc;text-shadow:0 2px #1a3270;white-space:nowrap;background:linear-gradient(#6586c555,#4467a533);border:1px solid #b1c5e9;border-radius:4px;align-items:center;gap:10px;margin-left:auto;padding:8px 15px;font-size:13px;font-weight:500;display:flex}.jrpg-commit:hover:not(:disabled){background:#86a5d855;border-color:#f7f9da}.jrpg-commit>.classic-cursor{color:#fffde5;font-size:22px;line-height:1}.jrpg-rewards{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.jrpg-rewards>span{color:#ffe8a7;align-items:center;gap:6px;font-size:12px;display:flex}.jrpg-action-window>small{color:#b7c8df;font-size:10px}.jrpg-event-line{bottom:calc(12px + var(--safe-bottom));left:calc(25px + var(--safe-left));right:calc(25px + var(--safe-right));color:#fff8df;text-shadow:0 1px 2px #153726;pointer-events:none;justify-content:center;align-items:center;gap:20px;font-size:10px;display:flex;position:absolute}.jrpg-event-line>span:last-child{opacity:.65}.jrpg-selection-window{z-index:9;left:calc(22px + var(--safe-left));bottom:calc(300px + var(--safe-bottom));width:340px;max-height:260px;padding:12px 15px;position:absolute}.jrpg-selection-window>header{color:#dbe6fc;border-bottom:1px solid #7695c766;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;font-size:13px;display:flex}.jrpg-selection-window>div{flex-direction:column;gap:3px;max-height:190px;display:flex;overflow-y:auto}.jrpg-selection-window>div>button{color:#fff4d1;text-align:left;border-radius:3px;align-items:center;gap:9px;padding:9px 7px;font-size:13px;display:flex;position:relative}.jrpg-selection-window strong{font-weight:500}.jrpg-selection-window small{color:#b9d1f5;margin-left:auto;font-size:11px}.jrpg-selection-window .classic-cursor{opacity:0;color:#fff8da;min-width:20px;font-size:23px;line-height:1}.jrpg-selection-window button.selected,.jrpg-selection-window button:hover:not(:disabled){background:#789bdb2c}.jrpg-selection-window button.selected>.classic-cursor,.jrpg-selection-window button:hover>.classic-cursor{opacity:1}.jrpg-selection-window p{color:#c4d2ef;padding:10px;font-size:12px}.jrpg-locked,.jrpg-victory-command{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.jrpg-locked strong,.jrpg-victory-command strong{font-size:17px;font-weight:400}.jrpg-locked small{color:#bccef0;font-size:10px}.jrpg-victory-command .sigil{color:#ffe9a1;width:25px;height:25px}.jrpg-victory-command .classic-command{justify-content:center;min-height:34px;padding-left:28px;font-size:13px}.jrpg-victory-command .classic-cursor{left:2px}.jrpg-wait-text{color:#ccdcf2;font-size:12px}.jrpg-actor .combat-effect{text-shadow:0 3px #443b34,0 0 5px #fff8b944;color:#fff8cd;font-size:32px;top:20%}.jrpg-actor .combat-ring{width:100%;height:85%;top:5%;left:0}.game-root.in-battle>.game-hud{display:none}@keyframes battle-idle{0%,to{transform:scaleX(-1)translateY(0)}50%{transform:scaleX(-1)translateY(-3px)}}@keyframes cursor-point{0%,to{transform:translate(0)}50%{transform:translate(4px)}}.game-creation{background:#97cab1;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow:hidden}.game-creation>.world-canvas{inset:0}.creation-world-veil{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#24483145;position:absolute;inset:0}.game-creation-window{z-index:3;color:#78603f;background:linear-gradient(#fff4d8f5,#eadcbbf5);border:4px solid #fff8d9;border-radius:15px;outline:2px solid #988052;width:430px;max-width:calc(100vw - 35px);padding:25px 30px;position:relative;box-shadow:0 7px #78634855,0 20px 60px #284b3566}.creation-caption{align-items:center;gap:15px;display:flex}.creation-caption .sigil{color:#c7a15d;width:35px}.creation-caption small{letter-spacing:2px;color:#b3965d;font-size:8px}.creation-caption h1{font-size:22px;font-family:var(--game-font);color:#81693f;margin-top:6px;font-weight:700}.creation-hero-preview{flex-direction:column;justify-content:center;align-items:center;margin:15px 0 18px;display:flex;position:relative}.creation-hero-preview .hero-art.large{filter:drop-shadow(0 8px 7px #80734b22);z-index:1;width:166px;height:172px;margin-bottom:10px}.creation-pedestal{background:linear-gradient(#c2c79b,#a5ac7d);border:3px solid #e7e5b7;border-radius:50%;width:150px;height:35px;position:absolute;bottom:21px;box-shadow:0 6px #b2b08655}.creation-hero-preview>span{color:#8d8755;margin-top:1px;font-size:12px;font-weight:700}.game-class-choices{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.game-class-choices>button{color:#9a8256;background:#ebdfbd;border:2px solid #c6b891;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:47px;font-size:12px;font-weight:700;display:flex;box-shadow:0 2px #aa99633d}.game-class-choices>button>svg:last-child:not(:first-child){width:11px;margin-left:-2px}.creation-class-description{text-align:center;color:#96835b;min-height:37px;margin:15px 0;font-size:11px;line-height:1.65}.creation-stats{color:#a28b5a;justify-content:center;gap:22px;margin-bottom:19px;font-size:10px;display:flex}.creation-stats>span{align-items:center;gap:5px;display:flex}.game-creation-window>label{color:#9a835c;margin-bottom:7px;font-size:11px;font-weight:700;display:block}.game-creation-window>input{color:#86704b;background:#fff8de;border:2px solid #c9b78c;border-radius:6px;width:100%;min-height:40px;padding:10px 12px;font-size:13px}.game-creation-window>.creation-begin{color:#fff9e3;text-shadow:0 1px #56703f;background:linear-gradient(#95b077,#7e9c64);border:2px solid #6a8754;border-radius:7px;width:100%;min-height:44px;margin-top:12px;font-size:13px}.creation-permanent-note{text-align:center;color:#b19c71;margin-top:14px;font-size:9px;display:block}.gate{height:var(--app-height);color:#fff2ce;background:radial-gradient(at 50% 30%,#afd4b1,#58907f 80%);min-height:0;position:fixed;inset:0}.gate h1{font-family:var(--game-font);letter-spacing:2px;text-shadow:0 4px #5c7856,0 6px #46675430;color:#fff6d6;font-size:64px;font-weight:800}.gate .sigil{color:#ffe0a1;filter:drop-shadow(0 3px #648052)}.gate .eyebrow{color:#fff1c2;letter-spacing:2px;font-size:10px}.gate p{color:#ecf4d4}.gate input{color:#837249;background:#fff4d7;border:2px solid #d4cc99}.gate label{color:#fff1ce;font-size:12px}.gate .button.primary{color:#82642f;background:linear-gradient(#f0d693,#d9b267);border:2px solid #fff1bf;font-size:13px;box-shadow:0 4px #63845855}.gate .dev-note{color:#e0ebce;font-size:9px}.gate .gate-footer{color:#deebc9;letter-spacing:1px;font-size:8px}.gate:before,.gate:after{border-color:#fff4be1f}.gate .error{color:#ffc5a9}@media (width<=900px){.game-hud{left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right))}.quest-cue{left:calc(17px + var(--safe-left));width:245px}.game-minimap{right:calc(17px + var(--safe-right));width:127px}.jrpg-field{gap:40px;bottom:255px;left:6%;right:6%}.jrpg-lower-panels{grid-template-columns:150px 1fr 165px}.jrpg-status-row,.jrpg-status-heading{gap:12px}.jrpg-status-window{padding:12px 14px}.jrpg-member-name{font-size:12px}.jrpg-stat strong{font-size:13px}.jrpg-enemy-window{padding:12px}.jrpg-enemy-window>div{font-size:12px}.jrpg-message-window{font-size:13px}.jrpg-actor.hero .hero-art{width:115px;height:130px}.jrpg-actor .enemy-art{width:175px;height:165px}.jrpg-actor .enemy-art.boss{width:225px;height:230px}.game-menu-window{width:92vw}.game-menu-body{padding:19px}}@media (width<=650px){.game-hud{left:calc(11px + var(--safe-left));right:calc(11px + var(--safe-right));top:calc(11px + var(--safe-top));gap:8px}.game-portrait{border-width:2px;border-radius:10px;width:43px;height:49px}.game-portrait .hero-art{width:57px;height:65px;bottom:0;left:-8px}.game-portrait>span{width:20px;height:20px;font-size:9px;bottom:-5px;right:-5px}.game-vitals{border-radius:9px;min-width:140px;padding:5px 9px 6px}.game-hero-name{gap:8px;margin-bottom:4px;font-size:11px}.game-hero-name>small{font-size:8px}.game-heart>svg{width:17px;height:17px}.heart-row{gap:2px}.game-mana{gap:4px;margin-top:5px}.game-mana>svg{width:9px;height:9px}.game-mana small{font-size:7px}.game-mana .progress{max-width:115px;height:4px}.game-currency{border-radius:8px;gap:5px;min-height:31px;margin-left:auto;padding:7px 9px;font-size:11px}.game-currency>svg{width:13px;height:13px}.game-system{border-radius:8px;width:31px;height:31px}.game-system>svg{width:16px;height:16px}.quest-cue{top:calc(88px + var(--safe-top));left:calc(12px + var(--safe-left));border-radius:8px;gap:8px;width:210px;padding:8px 9px}.quest-cue-icon{border-radius:5px;width:23px;height:26px}.quest-cue-icon>svg{width:14px}.quest-cue strong{font-size:10px;line-height:1.3}.quest-cue small{margin-top:4px;font-size:8px;line-height:1.4}.game-minimap{top:calc(82px + var(--safe-top));right:calc(12px + var(--safe-right));border-width:2px;border-radius:8px;width:93px;padding:4px}.game-minimap>span{gap:2px;margin-top:4px;font-size:7px}.game-minimap>span>svg{width:8px;height:8px}.game-location{bottom:calc(195px + var(--safe-bottom));max-width:70vw}.game-location>span{font-size:17px}.game-location>small{display:none}.game-dock{bottom:calc(12px + var(--safe-bottom));border-width:2px;border-radius:15px;gap:2px;max-width:96vw;padding:5px 6px}.game-dock>button{border-radius:9px;gap:5px;min-width:58px;height:48px}.game-dock>button>svg{width:19px;height:19px}.game-dock>button>span{font-size:8px}.touch-pad{left:calc(18px + var(--safe-left));bottom:calc(95px + var(--safe-bottom));width:108px;height:108px}.touch-pad button{font-size:13px}.touch-pad button,.touch-pad>span{border-width:2px}.game-action-control{right:calc(26px + var(--safe-right));bottom:calc(112px + var(--safe-bottom))}.game-action-button{border-width:3px;width:63px;height:63px}.game-action-button>span{font-size:26px}.game-action-control>small{margin-top:9px;font-size:11px}.near-object-name{padding:5px 8px;font-size:9px;top:-27px}.game-dungeon-context{bottom:calc(108px + var(--safe-bottom));gap:8px}.game-party-strip{gap:7px;padding:6px 9px;font-size:8px}.game-advance{padding:9px 18px;font-size:12px}.game-root .rune-buttons button{color:#746a43;background:#eee4c2;border:2px solid #fff6d5;border-radius:8px;min-height:39px;padding:9px 12px;font-size:11px;box-shadow:0 3px #8a80505e}.game-root .rune-buttons button.lit{color:#6c8050;background:#bfd299;border-color:#eef2c9}.game-menu-shade{background:#3152384a;padding:20px 12px}.game-menu-window{width:100%;max-height:calc(var(--app-height) - 38px - var(--safe-top) - var(--safe-bottom));border-width:3px;border-radius:12px}.game-menu-chrome{padding:12px 16px;font-size:16px}.game-menu-chrome>button{width:26px;height:26px}.game-menu-body{max-height:none;padding:15px}.game-menu-foot{padding:10px 14px;font-size:8px}.game-menu-foot>button{font-size:10px}.game-menu-body .panel-title h2{margin-top:4px;font-size:21px}.game-menu-body .panel-title .eyebrow{letter-spacing:.6px;font-size:8px}.game-menu-body .panel-title>.pill{margin-top:10px;padding:6px 8px;font-size:9px}.game-menu-body .dungeon-selection{gap:8px;padding:11px}.game-menu-body .dungeon-selection select{padding:9px;font-size:11px}.game-menu-body .dungeon-selection label{font-size:11px}.game-menu-body .dungeon-selection .button{min-height:35px;font-size:12px}.game-menu-body .dungeon-cards{gap:9px}.game-menu-body .dungeon-card{grid-template-columns:63px 1fr;column-gap:12px;min-height:98px;padding:13px}.game-menu-body .dungeon-art{grid-row:1/5;height:100%;margin:-13px 0 -13px -13px}.game-menu-body .dungeon-arch{border-width:7px;width:50px;height:65px}.game-menu-body .dungeon-art>svg{width:23px;height:23px}.game-menu-body .dungeon-card h3{margin:5px 0;font-size:16px}.game-menu-body .dungeon-card p{min-height:0;font-size:10px}.game-menu-body .dungeon-card>div:last-child{margin-top:9px;padding-top:7px;font-size:7px}.game-menu-body .public-lobby{gap:9px;padding:12px 9px}.game-menu-body .public-lobby h4{font-size:13px}.game-menu-body .public-lobby p{max-width:160px;font-size:9px}.game-menu-body .public-lobby>.button{min-height:34px;padding:7px 9px;font-size:11px}.game-menu-body .lobby-icon{width:31px;height:37px}.game-menu-body .section-heading h3{font-size:18px}.game-menu-body .section-heading .eyebrow{font-size:7px}.game-menu-body .lobby-detail{padding:13px}.game-menu-body .lobby-header{gap:10px;margin-bottom:14px}.game-menu-body .lobby-header h2{font-size:20px}.game-menu-body .lobby-header p{font-size:10px}.game-menu-body .lobby-header .eyebrow{font-size:7px}.game-menu-body .party-member{gap:10px;min-height:60px;padding:10px}.game-menu-body .party-member strong{font-size:14px}.game-menu-body .party-member small,.game-menu-body .ready-status{font-size:9px}.game-menu-body .empty-member{min-height:52px;padding:10px;font-size:10px}.game-menu-body .lobby-footer{margin-top:15px}.game-menu-body .lobby-footer .button{min-height:36px;padding:8px 10px;font-size:11px}.game-menu-body .fine-print{font-size:9px}.game-menu-body .quest-card{gap:11px;padding:15px 12px}.game-menu-body .quest-number{min-width:23px;font-size:18px}.game-menu-body .quest-body{min-width:180px}.game-menu-body .quest-body h3{margin:7px 0;font-size:17px}.game-menu-body .quest-body p{font-size:10px;line-height:1.7}.game-menu-body .quest-rewards>span{font-size:9px}.game-menu-body .quest-card>.button{min-height:34px;margin-left:34px;font-size:11px}.game-menu-body .shop-grid{gap:10px}.game-menu-body .shop-card{padding:13px 10px}.game-menu-body .shop-item-art{height:76px}.game-menu-body .shop-card h3{font-size:16px}.game-menu-body .shop-card p{font-size:10px;line-height:1.6}.game-menu-body .item-stats{flex-wrap:wrap;gap:7px;font-size:9px}.game-menu-body .shop-card .button{min-height:35px;padding:8px;font-size:11px}.game-root .modal-shade{padding:20px 14px}.game-root .modal{max-height:calc(var(--app-height) - 55px - var(--safe-top));border-width:3px;border-radius:10px;max-width:none;padding:21px 18px}.game-root .modal h2{margin:9px 0 20px;font-size:23px}.game-root .modal .eyebrow{font-size:9px}.game-root .setting-row strong{font-size:15px}.game-root .setting-row p{font-size:10px}.game-option-actions{gap:9px}.game-root .modal .button{min-height:36px;font-size:11px}.game-root .guide-list p{gap:11px;font-size:11px;line-height:1.7}.game-travel-areas{gap:8px}.game-travel-areas>button{border-radius:6px;gap:7px;padding:5px;font-size:10px}.game-map-objects{gap:7px;margin-top:15px}.game-map-objects button{gap:4px;padding:9px 7px;font-size:10px}.dialogue-shade{padding:20px 12px calc(106px + var(--safe-bottom))}.game-dialogue{border-width:3px;border-radius:10px;gap:12px;min-height:160px;padding:44px 17px 17px}.dialogue-name{padding:6px 12px;font-size:12px;top:-18px;left:12px}.dialogue-portrait{width:65px}.dialogue-portrait .hero-art,.dialogue-portrait .enemy-art{width:74px;height:90px}.dialogue-body>p{font-size:12px;line-height:1.6}.dialogue-body>.button{min-height:36px;margin-top:12px;padding:8px 10px;font-size:11px}.game-toast{bottom:calc(84px + var(--safe-bottom));gap:8px;width:max-content;max-width:92vw;padding:10px 12px;font-size:11px}.game-saving{right:11px;bottom:calc(78px + var(--safe-bottom))}.classic-window{border-width:2px;border-radius:6px;box-shadow:inset 0 0 0 1px #6384ce,inset 0 -2px #0c1d5355,0 2px #2b354b50}.jrpg-message-window{top:calc(11px + var(--safe-top));left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));gap:10px;min-height:45px;padding:9px 12px;font-size:12px;line-height:1.4}.jrpg-round{gap:7px;font-size:8px}.jrpg-round>strong{font-size:11px}.jrpg-round>span{text-align:center;max-width:35px;line-height:1.5}.battle-art-backdrop{background-position:50% 39%;background-size:auto 100%}.jrpg-field{top:calc(105px + var(--safe-top));align-items:center;gap:20px;bottom:292px;left:5%;right:5%}.jrpg-enemy-formation{flex-wrap:nowrap;align-items:center;gap:30px;width:47%;max-height:420px}.jrpg-hero-formation{align-items:center;gap:0;width:40%;max-height:420px;margin-top:30px}.jrpg-actor .enemy-art{width:141px;height:145px;max-height:24vh}.jrpg-actor .enemy-art.boss{width:175px;height:195px;max-height:29vh}.jrpg-actor.hero .hero-art{width:97px;height:112px;max-height:15vh}.jrpg-actor.hero:nth-child(2n){margin-left:28px}.jrpg-actor-name{text-align:center;max-width:140px;margin-top:-3px;font-size:10px;line-height:1.3}.enemy-hp{width:75px;margin-top:5px}.enemy-hp .progress{height:3px}.jrpg-weakness{margin-top:4px;font-size:7px}.jrpg-actor .classic-cursor{font-size:25px;top:38%;left:-14px}.jrpg-ready{width:16px;height:16px;top:4px;right:7px}.jrpg-ready svg{width:9px;height:9px}.jrpg-lower-panels{left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));bottom:calc(38px + var(--safe-bottom));grid-template-rows:164px auto;grid-template-columns:117px 1fr;gap:5px}.jrpg-command-window{grid-area:1/1;min-height:0;padding:7px 5px}.classic-command{gap:6px;min-height:34px;padding:7px 4px 7px 20px;font-size:13px}.classic-command>svg{width:12px;height:12px}.classic-command>.classic-cursor{font-size:20px;left:0}.jrpg-status-window{grid-area:1/2;gap:6px;padding:9px}.jrpg-status-heading,.jrpg-status-row{grid-template-columns:1fr 1fr .65fr;gap:8px;padding-left:1px;padding-right:1px}.jrpg-status-heading{gap:8px;font-size:7px}.jrpg-status-row{min-height:22px;padding-top:3px;padding-bottom:3px}.jrpg-member-name{gap:3px;font-size:11px}.jrpg-member-name>i{width:3px;height:3px}.jrpg-stat strong{font-size:11px}.jrpg-stat small{font-size:7px}.jrpg-stat .progress{height:2px}.jrpg-stat{gap:4px}.jrpg-status-effects{gap:3px;bottom:-6px}.jrpg-status-effects>small{font-size:5px}.jrpg-enemy-window{display:none}.jrpg-action-window{flex-wrap:wrap;grid-area:2/1/auto/-1;gap:9px;min-height:66px;padding:9px 10px}.jrpg-targets{flex:1;gap:5px;min-width:0}.jrpg-targets>span{margin-right:2px;font-size:8px}.jrpg-targets>button{max-width:128px;min-height:27px;padding:5px 6px;font-size:9px;line-height:1.2}.jrpg-commit{flex-shrink:0;gap:6px;min-height:35px;padding:8px;font-size:11px}.jrpg-commit>.classic-cursor{font-size:20px}.jrpg-commit>svg{width:12px;height:12px}.jrpg-event-line{left:calc(14px + var(--safe-left));right:calc(14px + var(--safe-right));bottom:calc(12px + var(--safe-bottom));justify-content:flex-start;gap:7px;max-height:24px;font-size:8px;line-height:1.5;overflow:hidden}.jrpg-event-line>span:last-child{display:none}.jrpg-selection-window{left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));bottom:calc(288px + var(--safe-bottom));width:auto;max-height:214px;padding:11px 13px}.jrpg-selection-window>header{margin-bottom:7px;padding-bottom:7px;font-size:12px}.jrpg-selection-window>div{max-height:153px}.jrpg-selection-window>div>button{min-height:34px;padding:9px 6px;font-size:12px}.jrpg-selection-window small{font-size:10px}.jrpg-locked{gap:9px}.jrpg-locked strong,.jrpg-victory-command strong{font-size:15px}.jrpg-locked small{font-size:9px}.jrpg-victory-command{gap:9px}.jrpg-victory-command .classic-command{padding:7px 0 7px 17px;font-size:11px}.jrpg-rewards{gap:8px 7px}.jrpg-rewards>span{gap:5px;font-size:10px}.jrpg-rewards>span>svg{width:12px;height:12px}.jrpg-action-window>small{font-size:8px}.jrpg-actor .combat-effect{font-size:27px}.game-creation{padding:18px}.game-creation-window{max-height:calc(var(--app-height) - 45px - var(--safe-top));scrollbar-width:thin;border-width:3px;border-radius:12px;padding:20px 22px;overflow-y:auto}.creation-caption{gap:12px}.creation-caption h1{font-size:20px}.creation-caption small{font-size:7px}.creation-caption .sigil{width:29px;height:36px}.creation-hero-preview{margin:12px 0 16px}.creation-hero-preview .hero-art.large{width:147px;height:153px;margin-bottom:9px}.creation-pedestal{width:138px;height:31px}.creation-hero-preview>span{font-size:11px}.game-class-choices{gap:7px}.game-class-choices>button{gap:5px;min-height:43px;font-size:11px}.game-class-choices>button>svg{width:15px;height:15px}.creation-class-description{margin:13px 0;font-size:10px;line-height:1.65}.creation-stats{gap:20px;margin-bottom:17px;font-size:9px}.game-creation-window>label{font-size:11px}.game-creation-window>input{min-height:39px;font-size:12px}.game-creation-window>.creation-begin{min-height:42px;font-size:12px}.creation-permanent-note{margin-top:12px;font-size:8px}.gate h1{font-size:51px}.gate .eyebrow{letter-spacing:1.5px;font-size:8px}.gate .gate-copy{font-size:13px}.gate .gate-footer{font-size:6px}}@media (width<=370px){.game-hud{gap:6px}.game-vitals{min-width:123px;padding:5px 7px}.game-heart>svg{width:15px;height:15px}.game-currency{padding:6px 8px;font-size:10px}.game-hero-name{font-size:10px}.game-system{width:28px;height:28px}.quest-cue{width:190px;left:calc(10px + var(--safe-left))}.game-minimap{right:calc(10px + var(--safe-right));width:81px}.game-dock>button{min-width:52px;height:46px}.game-dock>button>span{font-size:7px}.touch-pad{width:99px;height:99px;left:calc(14px + var(--safe-left))}.game-action-control{right:calc(20px + var(--safe-right))}.jrpg-lower-panels{grid-template-columns:104px 1fr}.jrpg-status-heading,.jrpg-status-row{gap:5px}.jrpg-member-name{font-size:9px}.jrpg-stat strong{font-size:10px}.jrpg-stat small{font-size:6px}.classic-command{gap:4px;padding-left:18px;font-size:12px}.jrpg-commit{padding:8px 6px;font-size:10px}.jrpg-actor.hero .hero-art{width:85px;height:102px}.jrpg-actor .enemy-art{width:123px;height:132px}.jrpg-actor .enemy-art.boss{width:150px;height:165px}}@media (height<=650px) and (width>=651px){.jrpg-lower-panels{grid-template-rows:auto 45px;bottom:32px}.jrpg-command-window{min-height:136px;padding:5px 8px}.classic-command{min-height:29px;padding:5px 12px 5px 21px;font-size:13px}.jrpg-field{top:calc(85px + var(--safe-top));bottom:215px}.jrpg-actor.hero .hero-art{width:110px;height:110px}.jrpg-actor .enemy-art{width:150px;height:135px}.game-menu-window{max-height:92dvh}.game-hud{top:9px}.quest-cue{top:85px}.game-minimap{width:105px;top:73px}.touch-pad{width:93px;height:93px;bottom:91px}.game-action-button{width:63px;height:63px}.game-action-control{bottom:96px}.game-dock{bottom:12px}.game-dock>button{height:43px}.game-location{bottom:96px}}@media (prefers-reduced-motion:reduce){.jrpg-actor svg,.classic-cursor{animation:none!important}}.game-heart{color:#cbb799;position:relative}.game-heart .heart-fill{color:#df645a;clip-path:inset(0 calc(100% - var(--heart-fill)) 0 0);position:absolute;inset:0}.touch-key{display:none}.keyboard-key{display:block}@media (pointer:coarse){.touch-key{display:block}.keyboard-key{display:none}}.hero-art.raster{object-fit:contain}.jrpg-actor.hero .hero-art.raster{filter:drop-shadow(0 6px 3px #20342525);animation:2.5s ease-in-out infinite battle-raster-idle;transform:none}.jrpg-actor.hero:nth-child(2) .hero-art.raster{animation-delay:-.7s}.jrpg-actor.hero:nth-child(3) .hero-art.raster{animation-delay:-1.4s}.jrpg-actor.hero:nth-child(4) .hero-art.raster{animation-delay:-2.1s}@keyframes battle-raster-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.jrpg-actor .hero-art.raster{animation:none!important}}.character-game-sheet{grid-template-columns:240px minmax(0,1fr);gap:23px;padding:1px 0 5px;display:grid}.character-status-sheet{background:linear-gradient(#dce8bd,#cdd5b0);border:2px solid #a7b887;border-radius:8px;align-self:start;padding:17px 17px 18px;box-shadow:inset 0 2px #f5efd0,0 3px #a6976866}.character-identity{text-align:center;flex-direction:column;align-items:center;gap:7px;margin-bottom:8px;display:flex}.character-identity>strong{color:#6d5839;letter-spacing:.3px;font-size:21px}.character-identity>span{color:#8b8052;font-size:10px}.character-figure{place-items:center;height:223px;margin:3px 0 15px;display:grid;position:relative}.character-figure .hero-art.large{z-index:1;filter:drop-shadow(0 7px 4px #76835733);width:218px;height:218px;position:relative}.character-figure-pedestal{background:linear-gradient(#c2cd9b,#a9b47d);border:2px solid #e4e8b9;border-radius:50%;width:169px;height:30px;position:absolute;bottom:3px;box-shadow:0 4px #9fab7759}.character-resource{color:#77884f;align-items:center;gap:7px;margin:9px 0;font-size:11px;display:flex}.character-resource>span{width:19px;font-size:10px;font-weight:700}.character-resource>.progress{background:#abb98a;border:1px solid #8a9a6666;flex:1;height:6px}.character-resource.mana{color:#7d9b9b}.character-resource>strong{white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right;min-width:57px;font-size:12px}.character-resource strong>small{color:#8d9972;font-size:9px}.character-game-stats{border-top:1px solid #a1af7f88;grid-template-columns:1fr 1fr;gap:11px 15px;margin-top:16px;padding-top:15px;display:grid}.character-game-stats>div{color:#9a9561;align-items:center;gap:5px;font-size:10px;display:flex}.character-game-stats strong{color:#75824e;font-variant-numeric:tabular-nums;margin-left:auto;font-size:15px;font-weight:700}.character-experience{color:#95a062;text-align:center;flex-direction:column;gap:8px;margin-top:19px;font-size:9px;display:flex}.character-experience>.progress{background:#b7bd92;height:5px}.character-pack{min-width:0}.character-pack>h3,.character-satchel-heading>h3{color:#776143;margin:0 0 10px;font-size:17px}.character-equipment{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:23px;display:grid}.character-equipment>button{opacity:1;text-align:center;background:#e6dcb7;border:2px solid #c4b687;border-radius:7px;flex-direction:column;align-items:center;gap:7px;min-width:0;min-height:140px;padding:11px 6px 10px;display:flex;box-shadow:inset 0 1px #fff4d4,0 2px #baad7b33}.character-equipment>button:hover:not(:disabled){background:#eee5c4;border-color:#95a56f}.equipment-game-icon{filter:drop-shadow(0 2px #a49c7255);background:radial-gradient(#f2e6b6,#0000 69%);place-items:center;width:62px;height:61px;display:grid}.equipment-game-icon>.item-glyph{width:61px;height:61px}.character-equipment>button>span:last-child{flex-direction:column;gap:4px;display:flex}.character-equipment small{text-transform:uppercase;letter-spacing:.8px;color:#ac935f;font-size:8px}.character-equipment strong{color:#7c663f;font-size:11px;line-height:1.4}.character-satchel-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.character-satchel-heading>h3{margin:0}.character-satchel-heading>small{color:#a48e60;font-size:9px}.character-satchel-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-bottom:9px;display:grid}.character-satchel-grid>button,.satchel-empty{background:#eadfc0;border:2px solid #c5b98e;border-radius:6px;flex-direction:column;justify-content:flex-start;align-items:center;height:85px;padding:7px 3px 4px;display:flex;position:relative;box-shadow:inset 0 2px 1px #b7a87922}.character-satchel-grid>button.selected{background:#d7dfb7;border-color:#82965e;box-shadow:inset 0 0 0 1px #f6f3ce}.character-satchel-grid>button:hover{background:#f1e8ca}.character-satchel-grid .item-glyph{filter:drop-shadow(0 2px #9e986633);width:44px;height:45px}.character-satchel-grid strong{text-overflow:ellipsis;white-space:nowrap;color:#8d784d;max-width:100%;margin-top:5px;font-size:7px;line-height:1.4;display:block;overflow:hidden}.satchel-count{color:#8b7548;background:#eadab177;border-radius:2px;padding:1px;font-size:9px;position:absolute;bottom:16px;right:4px}.character-satchel-grid>button>svg:last-child:not(:first-child){color:#829b5e;width:10px;height:10px;position:absolute;top:4px;left:5px}.satchel-empty{background:#dfd7b855;border-style:dashed;border-color:#c5b98b77}.character-item-detail{background:#e8ddba;border:1px solid #c9b88c;border-radius:6px;align-items:center;gap:11px;min-height:84px;margin-bottom:23px;padding:10px 12px;display:flex}.character-item-detail>.item-glyph{flex-shrink:0;width:45px;height:51px}.character-item-detail>div{flex:1;min-width:0}.character-item-detail strong{color:#7c6440;font-size:12px;display:block}.character-item-detail p{color:#9a855c;margin:5px 0 4px;font-size:10px;line-height:1.5}.character-item-detail small{color:#8d9961;font-size:8px}.character-item-detail>.button{flex-shrink:0;min-height:33px;padding:7px 10px;font-size:10px}.character-item-detail>span{color:#ac925e;white-space:nowrap;font-size:8px}.character-game-abilities{grid-template-columns:1fr 1fr;gap:8px;display:grid}.character-game-abilities>div{background:#e0dfb9;border:1px solid #b8ba8c;border-radius:6px;align-items:center;gap:8px;padding:9px 10px;display:flex}.character-game-abilities>div.locked{opacity:.43}.character-game-abilities>div>span{color:#93a066;background:#cdd5a6;border-radius:5px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.character-game-abilities strong{color:#8b7b4e;min-width:0;font-size:10px;line-height:1.4}.character-game-abilities small{color:#99945e;white-space:nowrap;margin-left:auto;font-size:8px}.game-menu-body .panel-title .eyebrow:empty{display:none}.game-menu-body .dungeon-art{background-image:url(/art/battle-woodland.webp);background-position:50% 60%;background-size:cover;height:116px}.game-menu-body .dungeon-card.tides .dungeon-art{background-image:url(/art/battle-tides.webp);background-position:50% 60%;background-size:cover}.game-menu-body .dungeon-card.forge .dungeon-art{background-image:url(/art/battle-forge.webp);background-position:50% 60%;background-size:cover}.game-menu-body .dungeon-art>svg,.game-menu-body .dungeon-art>.dungeon-arch{display:none}.enemy-art.raster{object-fit:contain}.jrpg-actor .enemy-art.raster.element-ice{filter:drop-shadow(0 7px 4px #24484f40)hue-rotate(65deg)saturate(.75)}.jrpg-actor.fallen .hero-art.raster,.jrpg-actor.fallen .enemy-art.raster{transform:rotate(-12deg)translateY(7px);animation:none!important}.touch-pad button,.touch-pad>span{color:#7a784c;background:#fff4d7cf}.touch-pad button:disabled{opacity:.6}@media (width<=900px){.character-game-sheet{grid-template-columns:218px 1fr;gap:17px}.character-status-sheet{padding:13px}.character-figure{height:201px}.character-figure .hero-art.large{width:194px;height:194px}.character-game-stats{gap:10px;font-size:9px}.character-game-stats strong{font-size:13px}.character-equipment{gap:6px}.character-equipment>button{gap:6px;min-height:125px;padding:8px 4px}.character-equipment strong{font-size:10px}.character-satchel-grid{grid-template-columns:repeat(3,1fr)}.character-satchel-grid>button,.satchel-empty{height:80px}.character-satchel-grid .item-glyph{width:44px;height:44px}.character-satchel-grid strong{font-size:8px}.character-game-abilities{gap:6px}.character-game-abilities>div{gap:6px;padding:8px 7px}.character-game-abilities strong{font-size:9px}.character-game-abilities small{font-size:7px}.character-item-detail>.item-glyph{width:36px}.character-item-detail{gap:8px;padding:9px}}@media (width<=650px){.character-game-sheet{grid-template-columns:1fr;gap:19px}.character-status-sheet{grid-template-columns:120px minmax(0,1fr);gap:0 11px;min-height:182px;padding:11px 12px;display:grid}.character-identity{text-align:left;grid-area:1/2;align-items:flex-start;gap:5px;margin:0 0 6px}.character-identity>strong{font-size:21px}.character-identity>span{font-size:11px}.character-figure{grid-area:1/1/6;align-self:center;height:162px;margin:0}.character-figure .hero-art.large{object-position:center bottom;width:120px;max-width:100%;height:151px}.character-figure-pedestal{border-width:1px;width:101px;height:20px;bottom:8px}.character-resource{grid-column:2;gap:4px;margin:4px 0;font-size:9px}.character-resource>span{width:17px;font-size:8px}.character-resource>strong{min-width:48px;font-size:10px}.character-resource strong>small{font-size:7px}.character-resource>.progress{height:5px}.character-game-stats{grid-column:2;gap:8px 11px;margin-top:7px;padding-top:9px}.character-game-stats>div{gap:4px;font-size:8px}.character-game-stats svg{width:12px;height:12px}.character-game-stats strong{font-size:12px}.character-experience{grid-column:2;align-self:end;gap:5px;margin-top:9px;font-size:7px}.character-experience>.progress{height:4px}.character-pack>h3,.character-satchel-heading>h3{margin-bottom:9px;font-size:16px}.character-equipment{gap:7px;margin-bottom:18px}.character-equipment>button{gap:5px;min-height:105px;padding:7px 4px}.equipment-game-icon{width:49px;height:48px}.equipment-game-icon>.item-glyph{width:47px;height:47px}.character-equipment small{letter-spacing:.6px;font-size:6px}.character-equipment strong{font-size:9px;line-height:1.5}.character-satchel-heading{margin-bottom:8px}.character-satchel-heading>h3{margin:0}.character-satchel-heading>small{font-size:8px}.character-satchel-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:8px}.character-satchel-grid>button,.satchel-empty{height:76px;padding:5px 3px 4px}.character-satchel-grid .item-glyph{width:43px;height:43px}.character-satchel-grid strong{margin-top:6px;font-size:6px}.satchel-count{font-size:8px;bottom:15px;right:4px}.character-item-detail{gap:7px;min-height:78px;margin-bottom:18px;padding:9px 8px}.character-item-detail>.item-glyph{width:32px;height:43px}.character-item-detail strong{font-size:10px}.character-item-detail p{margin:4px 0;font-size:9px;line-height:1.5}.character-item-detail small{font-size:7px}.character-item-detail>.button{min-height:31px;padding:7px;font-size:9px}.character-item-detail>span{font-size:7px}.character-game-abilities{gap:7px}.character-game-abilities>div{gap:6px;padding:8px 7px}.character-game-abilities>div>span{width:23px;height:23px}.character-game-abilities>div>span>svg{width:14px;height:14px}.character-game-abilities strong{font-size:9px}.character-game-abilities small{font-size:7px}.game-menu-body .dungeon-art{background-position:50%;height:100%}}.jrpg-actor .enemy-art.raster.element-nature{filter:drop-shadow(0 7px 4px #24463140)}.jrpg-actor .enemy-art.raster.element-fire{filter:drop-shadow(0 7px 4px #543b2340)hue-rotate(-45deg)saturate(1.15)}.jrpg-actor .enemy-art.raster.boss{filter:drop-shadow(0 0 10px #f7d18635)drop-shadow(0 8px 4px #19392350)}.dialogue-portrait .npc-art{object-fit:contain;filter:drop-shadow(0 4px 2px #72693b30);width:110px;max-width:none;height:140px}@media (width<=650px){.dialogue-portrait .npc-art{width:78px;height:104px}}.gate{background:linear-gradient(#19382342,#193c2cc9),url(/art/battle-woodland.webp) 50%/cover}.gate>.gate-stars{opacity:.3}.gate h1{text-shadow:0 4px #33532e,0 6px #203e2559}.gate .gate-copy{text-shadow:0 2px 3px #143224cc}.gate .gate-footer{color:#f6e4bfa8}.dungeon-atlas-chart{align-items:center;gap:20px;margin:0 0 18px;display:flex}.dungeon-atlas-chart .dungeon-route-map{border:3px solid #eadfba;border-radius:8px;flex-shrink:0;width:138px;height:138px;box-shadow:0 2px #acb18777}.dungeon-atlas-chart>div{flex-direction:column;gap:9px;display:flex}.dungeon-atlas-chart strong{color:#7f6943;font-size:15px}.dungeon-atlas-chart span{color:#978157;font-size:12px}.dungeon-atlas-chart small{color:#859657;font-size:10px}.dungeon-map-room-list{grid-template-columns:1fr 1fr;gap:7px;margin:0 0 21px;padding:0;list-style:none;display:grid}.dungeon-map-room-list>li{color:#a49061;background:#e9debf;border:1px solid #c9bb91;border-radius:5px;align-items:center;gap:7px;min-height:38px;padding:9px 8px;font-size:10px;display:flex}.dungeon-map-room-list>li>span{color:#a18a5c;background:#ded1aa;border:1px solid #c5b587;border-radius:4px;flex-shrink:0;place-items:center;width:19px;height:19px;font-size:9px;display:grid}.dungeon-map-room-list strong{font-size:10px;font-weight:500;line-height:1.4}.dungeon-map-room-list>.current{color:#75864f;background:#d9dfb3;border-color:#99a573}.dungeon-map-room-list>.cleared{color:#9ba979}.dungeon-map-room-list>.current>span{color:#667d48;background:#b5c590;border-color:#a5b479}.dungeon-map-room-list>.current>svg{color:#a39252;flex-shrink:0;margin-left:auto}.dungeon-atlas>h3{color:#816d45;margin:0 0 10px;font-size:16px}.dungeon-map-roster{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dungeon-map-roster>div{background:#e9dfbf;border:1px solid #c7b58a;border-radius:5px;align-items:center;gap:7px;min-height:46px;padding:6px 7px;display:flex}.dungeon-map-portrait{background:#d0d8b0;border:1px solid #b4be90;border-radius:4px;flex-shrink:0;place-items:center;width:31px;height:33px;display:grid;overflow:hidden}.dungeon-map-portrait .hero-art{object-fit:contain;width:41px;max-width:none;height:43px}.dungeon-map-roster strong{color:#897246;white-space:nowrap;flex:1;align-items:center;gap:4px;min-width:0;font-size:10px;display:flex;overflow:hidden}.dungeon-map-roster strong>svg{color:#b39353;flex-shrink:0}.dungeon-map-roster small{color:#99a16b;margin-left:auto;font-size:7px}.dungeon-map-roster>div:has(small:last-child){position:relative}@media (width<=650px){.dungeon-atlas-chart{gap:15px;margin-bottom:15px}.dungeon-atlas-chart .dungeon-route-map{width:109px;height:109px}.dungeon-atlas-chart strong{font-size:13px}.dungeon-atlas-chart span{font-size:10px}.dungeon-atlas-chart small{font-size:8px}.dungeon-map-room-list{gap:6px;margin-bottom:18px}.dungeon-map-room-list>li{gap:5px;min-height:42px;padding:8px 6px}.dungeon-map-room-list strong{font-size:9px}.dungeon-map-room-list>li>span{width:17px;height:17px;font-size:8px}.dungeon-map-roster{gap:6px}.dungeon-map-roster>div{gap:5px;padding:5px}.dungeon-map-roster strong{font-size:9px}.dungeon-map-roster small{font-size:6px}.dungeon-map-portrait{width:27px;height:30px}.dungeon-map-portrait .hero-art{width:35px;height:38px}}.jrpg-actor.hero.acting{animation:.52s ease-in-out hero-lunge}.jrpg-actor.hero.acting[data-event="1"]{animation-name:hero-lunge-alt}.jrpg-actor.enemy.acting{animation:.52s ease-in-out enemy-lunge}.jrpg-actor.enemy.acting[data-event="1"]{animation-name:enemy-lunge-alt}.jrpg-actor.struck{animation:.52s ease-out battle-hit}.jrpg-actor.struck[data-event="1"]{animation-name:battle-hit-alt}@keyframes hero-lunge{0%,to{transform:translate(0)}35%{transform:translate(-25px)}50%{transform:translate(-22px)}}@keyframes hero-lunge-alt{0%,to{transform:translate(0)}35%{transform:translate(-25px)}50%{transform:translate(-22px)}}@keyframes enemy-lunge{0%,to{transform:translate(0)}35%{transform:translate(25px)}50%{transform:translate(22px)}}@keyframes enemy-lunge-alt{0%,to{transform:translate(0)}35%{transform:translate(25px)}50%{transform:translate(22px)}}@keyframes battle-hit{0%,to{filter:brightness()}25%{filter:brightness(1.9);transform:translate(6px)}40%{transform:translate(-4px)}60%{transform:translate(3px)}}@keyframes battle-hit-alt{0%,to{filter:brightness()}25%{filter:brightness(1.9);transform:translate(6px)}40%{transform:translate(-4px)}60%{transform:translate(3px)}}@media (prefers-reduced-motion:reduce){.jrpg-actor.acting,.jrpg-actor.struck,.jrpg-actor .combat-effect,.jrpg-actor .combat-ring{animation:none!important}}.world-loading{z-index:3;pointer-events:none;color:#fff5d0;letter-spacing:.5px;text-shadow:0 2px #759458;background:radial-gradient(at 50% 38%,#bdcf92,#80a76b);flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:14px;font-weight:700;display:flex;position:absolute;inset:0}.world-loading .sigil{filter:drop-shadow(0 3px #67885155);color:#f5e4a6;width:78px;height:78px}.world-loading>.spin{color:#f5eac2;opacity:.7}.game-vitals{max-width:min(225px,48vw)}.game-hero-name>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.game-hero-name>small{flex-shrink:0}.jrpg-member-name{min-width:0}.jrpg-name-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.jrpg-member-name>i{flex-shrink:0}.character-identity>strong{overflow-wrap:anywhere;max-width:100%}.dungeon-atlas-chart .dungeon-route-map{object-fit:contain}@media (width<=650px){.world-loading{gap:17px;font-size:12px}.world-loading .sigil{width:63px;height:63px}}@media (width>=651px){.jrpg-field{bottom:286px}}.jrpg-hero-formation{margin-top:0}.jrpg-hero-formation:not([data-count="1"]){align-self:flex-end;gap:0;height:auto;max-height:100%}.jrpg-hero-formation:not([data-count="1"]) .jrpg-actor.hero{flex-shrink:0;max-height:none;margin-top:-42px}.jrpg-hero-formation:not([data-count="1"]) .jrpg-actor.hero:first-child{margin-top:0}.jrpg-hero-formation[data-count="3"] .jrpg-actor.hero .hero-art{width:126px;height:140px;max-height:none}.jrpg-hero-formation[data-count="3"] .jrpg-actor.hero{margin-top:-46px}.jrpg-hero-formation[data-count="4"] .jrpg-actor.hero .hero-art{width:115px;height:122px;max-height:none}.jrpg-hero-formation[data-count="4"] .jrpg-actor.hero{margin-top:-48px}.jrpg-enemy-formation:not([data-count="1"]){flex-wrap:nowrap;align-self:flex-end;gap:0;height:auto;max-height:100%}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy{flex-shrink:0;max-height:none;margin-top:-70px}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy:first-child{margin-top:0;margin-left:-38px}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy:nth-child(2n){margin-left:60px}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy .enemy-art{width:170px;height:155px;max-height:none}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy{margin-top:-68px}@media (width<=650px){.jrpg-hero-formation{margin-top:0}.jrpg-hero-formation:not([data-count="1"]) .jrpg-actor.hero{margin-top:-38px}.jrpg-hero-formation[data-count="3"] .jrpg-actor.hero .hero-art{width:91px;height:107px}.jrpg-hero-formation[data-count="3"] .jrpg-actor.hero{margin-top:-42px}.jrpg-hero-formation[data-count="4"] .jrpg-actor.hero .hero-art{width:88px;height:101px}.jrpg-hero-formation[data-count="4"] .jrpg-actor.hero{margin-top:-40px}.jrpg-hero-formation:not([data-count="1"]) .jrpg-actor.hero:first-child{margin-top:0}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy{margin-top:-58px}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy:first-child{margin-top:0;margin-left:-14px}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy:nth-child(2n){margin-left:47px}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy .enemy-art{width:113px;height:115px}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy{margin-top:-50px}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy:first-child{margin-top:0}.jrpg-enemy-formation[data-count="1"] .jrpg-actor.enemy:has(.enemy-art.boss){margin-left:14px}}@media (width>=651px){.jrpg-field{bottom:calc(310px + var(--safe-bottom))}}@media (width<=650px){.jrpg-field{bottom:calc(292px + var(--safe-bottom))}}.game-location.in-dungeon{bottom:calc(92px + var(--safe-bottom))}.game-location.in-dungeon>span{display:none}.game-location.in-dungeon>small{white-space:nowrap;margin:0;font-size:9px;display:block}@media (width<=650px){.game-location.in-dungeon>small{font-size:8px}}.jrpg-enemy-formation:not([data-count="1"]){gap:8px}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy{margin-top:0}.jrpg-enemy-formation[data-count="2"] .jrpg-actor.enemy .enemy-art{height:clamp(40px, calc((var(--app-height) - 510px - var(--safe-top) - var(--safe-bottom)) / 2), 178px);width:clamp(44px, calc((var(--app-height) - 510px - var(--safe-top) - var(--safe-bottom)) / 2 * 1.1), 196px);max-height:none}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy .enemy-art{height:clamp(40px, calc((var(--app-height) - 556px - var(--safe-top) - var(--safe-bottom)) / 3), 124px);width:clamp(44px, calc((var(--app-height) - 556px - var(--safe-top) - var(--safe-bottom)) / 3 * 1.1), 137px);max-height:none}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor-name{z-index:2;background:#294332c9;border-radius:4px;margin-top:1px;padding:2px 5px;line-height:1.1;position:relative}.jrpg-enemy-formation:not([data-count="1"]) .enemy-hp{z-index:2;margin-top:3px;position:relative}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-weakness{z-index:2;color:#fff5d1;background:#294332b8;border-radius:3px;margin-top:3px;padding:1px 4px;line-height:1.1;position:relative}.jrpg-actor.hero[data-class=ranger].acting[data-event]{animation-name:ranger-release}.jrpg-actor.hero[data-class=ranger].acting[data-event="1"]{animation-name:ranger-release-alt}.jrpg-actor.hero[data-class=mage].acting[data-event]{animation-name:mage-cast}.jrpg-actor.hero[data-class=mage].acting[data-event="1"]{animation-name:mage-cast-alt}.jrpg-actor.hero.guarded .hero-art{filter:drop-shadow(0 0 9px #a9e1f5)drop-shadow(0 6px 4px #223c4050)}.jrpg-actor.hero.guarded:after{content:"";pointer-events:none;background:linear-gradient(90deg,#ace9ff09,#c4eaff24,#ace9ff09);border:2px solid #c3eaffad;border-radius:48% 48% 45% 45%;position:absolute;inset:18% -5% 0}.jrpg-actor.hero.status-burn .hero-art{filter:drop-shadow(0 0 7px #ef9a4fcc)drop-shadow(0 6px 4px #223c4050)}.jrpg-actor.hero.status-poison .hero-art{filter:drop-shadow(0 0 7px #9d75d6cc)drop-shadow(0 6px 4px #223c4050)}.jrpg-actor.hero.status-regen .hero-art{filter:drop-shadow(0 0 7px #a5dc93cc)drop-shadow(0 6px 4px #223c4050)}.game-menu-window:focus,.game-dialogue:focus,.modal:focus{outline-offset:3px}.game-root [role=dialog] button:focus-visible{outline-offset:2px;outline:2px solid #517951}.character-game-abilities>.ability-choice{text-align:left;background:#e0dfb9;border:1px solid #b8ba8c;border-radius:6px;align-items:center;gap:8px;min-height:46px;padding:10px;display:flex}.character-game-abilities>.ability-choice[aria-pressed=true]{background:#d4dfb1;border-color:#82965e;box-shadow:inset 0 0 0 1px #f4f0cc}.character-game-abilities>.ability-choice:hover{background:#e9e8c6}.character-game-abilities>.ability-choice.locked{opacity:.8}.character-game-abilities>.ability-choice>span{color:#7e9156;background:#cdd5a6;border-radius:5px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.character-game-abilities>.ability-choice strong{color:#78683f;min-width:0;font-size:11px;line-height:1.4}.character-game-abilities>.ability-choice small{color:#837b4e;white-space:nowrap;margin-left:auto;font-size:10px}.character-ability-detail{background:#e7e1bf;border:1px solid #b8ba8c;border-radius:6px;margin-top:10px;padding:12px}.character-ability-detail strong{color:#705e3e;font-size:13px;display:block}.character-ability-detail p{color:#85734e;margin:6px 0;font-size:12px;line-height:1.5}.character-ability-detail small{color:#76804f;font-size:11px;line-height:1.5;display:block}.jrpg-actor.hero.healing.acting[data-event]{animation-name:restorative-pulse}.jrpg-actor.hero.healing.acting[data-event="1"]{animation-name:restorative-pulse-alt}@keyframes restorative-pulse{0%,to{filter:brightness();transform:translateY(0)}40%{filter:brightness(1.2)drop-shadow(0 0 13px #b4ed97);transform:translateY(-3px)scale(1.03)}65%{transform:translateY(-1px)}}@keyframes restorative-pulse-alt{0%,to{filter:brightness();transform:translateY(0)}40%{filter:brightness(1.2)drop-shadow(0 0 13px #b4ed97);transform:translateY(-3px)scale(1.03)}65%{transform:translateY(-1px)}}@keyframes ranger-release{0%,to{transform:translate(0)}30%{transform:translate(13px)rotate(2deg)}58%{transform:translate(-5px)}}@keyframes ranger-release-alt{0%,to{transform:translate(0)}30%{transform:translate(13px)rotate(2deg)}58%{transform:translate(-5px)}}@keyframes mage-cast{0%,to{filter:brightness();transform:translateY(0)}38%{filter:brightness(1.22)drop-shadow(0 0 12px #c9adff);transform:translateY(-9px)scale(1.04)}68%{transform:translateY(-5px)}}@keyframes mage-cast-alt{0%,to{filter:brightness();transform:translateY(0)}38%{filter:brightness(1.22)drop-shadow(0 0 12px #c9adff);transform:translateY(-9px)scale(1.04)}68%{transform:translateY(-5px)}}@media (width<=650px){.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy{margin-top:0}.jrpg-enemy-formation[data-count="2"] .jrpg-actor.enemy .enemy-art{height:clamp(40px, calc((var(--app-height) - 492px - var(--safe-top) - var(--safe-bottom)) / 2), 145px);width:clamp(44px, calc((var(--app-height) - 492px - var(--safe-top) - var(--safe-bottom)) / 2 * 1.1), 156px)}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy .enemy-art{height:clamp(40px, calc((var(--app-height) - 538px - var(--safe-top) - var(--safe-bottom)) / 3), 105px);width:clamp(44px, calc((var(--app-height) - 538px - var(--safe-top) - var(--safe-bottom)) / 3 * 1.1), 116px)}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-weakness{font-size:8px}.character-equipment small{font-size:9px}.character-equipment strong{font-size:10px}.character-satchel-grid strong{font-size:9px}.satchel-count{font-size:10px;bottom:19px}.character-item-detail{min-height:88px}.character-item-detail strong{font-size:12px}.character-item-detail p{font-size:11px}.character-item-detail small,.character-item-detail>span{font-size:10px}.character-item-detail>.button,.character-game-abilities strong{font-size:11px}.character-game-abilities small{font-size:10px}.character-game-abilities>.ability-choice{gap:6px;padding:9px 7px}.character-game-abilities>.ability-choice>span{width:23px;height:23px}.character-game-abilities>.ability-choice>span>svg{width:14px;height:14px}.character-ability-detail{padding:10px}.character-ability-detail strong{font-size:12px}.character-ability-detail p{font-size:11px}.character-ability-detail small{font-size:10px}}.jrpg-guard-cue{z-index:2;color:#eaf8ff;background:#426d91e6;border:1px solid #def3ff;border-radius:50%;place-items:center;width:23px;height:23px;display:grid;position:absolute;top:10%;left:0;box-shadow:0 0 7px #b5e6ff66}.jrpg-actor .enemy-art[data-motion=grounded]{animation:2.6s ease-in-out infinite creature-breathe}.jrpg-actor .enemy-art[data-motion=hover]{animation:2.6s ease-in-out infinite creature-hover}@keyframes creature-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.018,1.025)}}@keyframes creature-hover{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.jrpg-actor .enemy-art[data-motion]{animation:none}}@media (height<=650px) and (width>=651px){.jrpg-field{top:calc(85px + var(--safe-top));bottom:calc(240px + var(--safe-bottom))}.jrpg-lower-panels{bottom:calc(32px + var(--safe-bottom));grid-template-rows:136px 45px}.jrpg-command-window{min-height:0}.jrpg-status-window{gap:4px;padding:8px 12px}.jrpg-status-row{min-height:21px;padding:2px 4px}.jrpg-status-heading{font-size:9px}.jrpg-stat{gap:3px}.jrpg-stat strong{font-size:12px}.jrpg-stat .progress{height:2px}.jrpg-member-name{font-size:12px}.jrpg-hero-formation:not([data-count="1"]){grid-template-columns:repeat(2,minmax(0,1fr));align-self:flex-end;justify-items:center;gap:4px 12px;display:grid}.jrpg-hero-formation .jrpg-actor.hero{max-height:none;margin:0}.jrpg-hero-formation:not([data-count="1"]) .jrpg-actor.hero{margin:0}.jrpg-hero-formation:not([data-count="1"]) .jrpg-actor.hero .hero-art{width:108px;height:105px;max-height:none}.jrpg-enemy-formation:not([data-count="1"]){flex-direction:row;align-self:center;gap:12px;width:44%;height:auto}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy,.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy:first-child,.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor.enemy:nth-child(2n){margin:0}.jrpg-enemy-formation[data-count="2"] .jrpg-actor.enemy .enemy-art{width:140px;height:130px}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy .enemy-art{width:114px;height:106px}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-actor-name{font-size:11px}.jrpg-enemy-formation:not([data-count="1"]) .jrpg-weakness{font-size:8px}}@media (height<=520px) and (width>=651px){.jrpg-message-window{top:calc(10px + var(--safe-top));min-height:40px;padding:7px 12px;font-size:12px}.jrpg-field{top:calc(78px + var(--safe-top));bottom:calc(180px + var(--safe-bottom));gap:20px}.jrpg-lower-panels{bottom:calc(21px + var(--safe-bottom));grid-template-rows:106px 40px;grid-template-columns:118px minmax(230px,1fr) 140px;gap:5px}.jrpg-command-window{padding:4px 6px}.classic-command{min-height:22px;padding:3px 4px 3px 21px;font-size:11px}.classic-command>svg{width:12px;height:12px}.jrpg-status-window{gap:3px;padding:6px 10px}.jrpg-status-heading{font-size:7px;line-height:1.1}.jrpg-status-row{min-height:18px;padding:1px 4px}.jrpg-member-name{font-size:11px;line-height:1.1}.jrpg-stat{gap:1px}.jrpg-stat strong{font-size:11px;line-height:1.1}.jrpg-stat small{font-size:8px}.jrpg-enemy-window{gap:8px;padding:7px 10px}.jrpg-enemy-window>div{gap:3px;font-size:11px}.classic-window-caption,.jrpg-enemy-window small{font-size:8px}.jrpg-action-window{gap:8px;min-height:0;padding:5px 9px}.jrpg-targets{gap:6px}.jrpg-targets>span{font-size:9px}.jrpg-targets>button{min-height:25px;padding:4px 6px;font-size:10px}.jrpg-commit{min-height:27px;padding:4px 8px;font-size:11px}.jrpg-event-line{bottom:calc(3px + var(--safe-bottom));font-size:7px}.jrpg-hero-formation:not([data-count="1"]) .jrpg-actor.hero .hero-art{width:64px;height:56px}.jrpg-enemy-formation[data-count="2"] .jrpg-actor.enemy .enemy-art{width:84px;height:76px}.jrpg-enemy-formation[data-count="3"] .jrpg-actor.enemy .enemy-art{width:76px;height:70px}.jrpg-actor .enemy-art{width:84px;height:76px;max-height:none}.jrpg-actor .enemy-art.boss{width:120px;height:110px;max-height:none}.jrpg-actor.hero .hero-art{width:100px;height:96px;max-height:none}.jrpg-actor .classic-cursor{font-size:20px;left:-17px}.jrpg-ready,.jrpg-guard-cue{width:15px;height:15px}.jrpg-guard-cue svg{width:10px;height:10px}.jrpg-selection-window{bottom:calc(180px + var(--safe-bottom));max-height:calc(var(--app-height) - 245px - var(--safe-top) - var(--safe-bottom));flex-direction:column;display:flex;overflow:hidden}.jrpg-selection-window>header{flex-shrink:0}.jrpg-selection-window>div{flex:1;min-height:0;max-height:none;overflow-y:auto}}.jrpg-field{z-index:1;display:block;inset:0}.battle-diorama{z-index:0;background:0 0;inset:0}.jrpg-enemy-formation,.jrpg-hero-formation{width:0;height:0;max-height:none;display:contents;position:static}.jrpg-battle .jrpg-field .jrpg-enemy-formation .jrpg-actor.enemy,.jrpg-battle .jrpg-field .jrpg-hero-formation .jrpg-actor.hero{z-index:2;filter:none;width:100px;min-height:0;max-height:none;margin:0;padding:0;animation:none;position:absolute;transform:translate(-50%,-100%)}.jrpg-actor.enemy{pointer-events:none;height:62px}.jrpg-actor.enemy .jrpg-actor-name,.jrpg-actor.enemy .enemy-hp,.jrpg-actor.enemy .jrpg-weakness{pointer-events:auto}.jrpg-actor.hero{pointer-events:none;height:38px}.jrpg-actor.enemy:before{z-index:-1;content:"";pointer-events:none;width:100%;height:140px;position:absolute;top:-134px;left:0}.jrpg-actor-name{color:#ece7d8;text-overflow:ellipsis;text-shadow:0 2px 4px #101716,0 0 8px #101716;max-width:100%;margin:0;font-size:11px;overflow:hidden}.enemy-hp{width:83px;margin:3px 0 0}.jrpg-weakness{color:#ddd8c8;background:#18221fe6;margin-top:2px}.jrpg-actor .classic-cursor{top:-20px;left:-12px}.jrpg-actor.fallen{opacity:.34!important}.jrpg-battle:has(.battle-diorama canvas) .battle-art-backdrop{opacity:.27;filter:saturate(.66)brightness(.72)}.jrpg-battle:has(.battle-diorama[data-loaded-models*=arena-]) .battle-art-backdrop{opacity:0}:is(.jrpg-battle:has(.battle-diorama canvas) .jrpg-message-window,.jrpg-battle:has(.battle-diorama canvas) .jrpg-lower-panels,.jrpg-battle:has(.battle-diorama canvas) .jrpg-selection-window){z-index:4}@media (width<=600px){.jrpg-actor.enemy,.jrpg-actor.hero{width:78px}.jrpg-actor-name{font-size:9px}.enemy-hp{width:68px}}.jrpg-battle:has(.battle-diorama canvas) .battle-field-glow{z-index:1;pointer-events:none;background:radial-gradient(#88927621,#0000 64%),linear-gradient(#11191734,#0000 27% 62%,#11191752)}.battle-visual-status{z-index:3;color:#eee9dd;text-align:center;background:#142020ec;border:1px solid #97a6a5;border-radius:5px;max-width:min(85vw,420px);padding:12px 16px;position:absolute;top:22%;left:50%;transform:translate(-50%)}@media (height<=460px) and (width>=600px){.jrpg-battle .jrpg-field .jrpg-enemy-formation .jrpg-actor.enemy,.jrpg-battle .jrpg-field .jrpg-hero-formation .jrpg-actor.hero{width:54px}.jrpg-battle .jrpg-field .jrpg-actor-name{font-size:8px}.jrpg-battle .jrpg-field .enemy-hp{width:48px}}.game-creation{height:var(--app-height);bottom:auto}.gate,.game-creation,.game-menu-shade,.dialogue-shade,.game-root .modal-shade{padding-top:calc(24px + var(--safe-top));padding-bottom:calc(24px + var(--safe-bottom));padding-left:calc(24px + var(--safe-left));padding-right:calc(24px + var(--safe-right))}.game-creation-window,.game-root .modal{max-width:100%;max-height:calc(var(--app-height) - 48px - var(--safe-top) - var(--safe-bottom));overscroll-behavior:contain;overflow-y:auto}.game-menu-window{max-width:100%}.gate{overscroll-behavior:contain;overflow-y:auto}.gate-footer{bottom:calc(16px + var(--safe-bottom))}@media (height<=640px){.gate{justify-content:flex-start}.gate-footer{margin-top:24px;position:static}}:root{--game-ink:#eee1c6;--game-cream:#eee1c6;--game-gold:#c6a06c;--game-font:"Segoe UI", system-ui, sans-serif;--gold:#c6a06c;--muted:#b8ad98;--line:#64543f;--fantasy-panel:linear-gradient(145deg, #302e28f5, #181b19f7);--fantasy-raised:linear-gradient(#474137, #2a2c27);--fantasy-border:#8c7450;--fantasy-shadow:inset 0 0 0 1px #c9a67422, 0 5px 20px #080b0a66}.game-root,.jrpg-battle{color:var(--game-ink);background-color:#171d18}.game-portrait,.game-vitals,.game-currency,.game-system,.quest-cue,.game-dock,.game-minimap,.game-party-strip,.game-toast{background:var(--fantasy-panel);border-color:var(--fantasy-border);color:var(--game-ink);box-shadow:var(--fantasy-shadow);text-shadow:0 1px 2px #0009;border-width:1px;border-radius:4px}.game-portrait>span,.dialogue-name,.quest-cue-icon{background:var(--fantasy-raised);border-color:var(--fantasy-border);color:#edd3a3;border-radius:3px;box-shadow:0 2px 5px #0006}.game-hero-name{color:#f0dfbb;font-family:var(--serif);font-size:15px;font-weight:400}.game-hero-name>small,.game-vitals small,.quest-cue small,.game-minimap>span,.game-location>small{color:#d0bfa0}.game-vitals{min-width:155px;padding:7px 10px}.game-health,.game-vitals .game-mana{color:#cdb894;font-variant-numeric:tabular-nums;align-items:center;gap:5px;margin-top:4px;font-size:9px;display:flex}.game-health .progress,.game-vitals .game-mana .progress{background:#111714;border:1px solid #a98b563d;border-radius:1px;flex:1;max-width:none;height:6px}.game-health small,.game-vitals .game-mana small{text-align:right;min-width:39px;margin:0;font-size:9px}.progress.hp>span,.enemy-hp .progress>span{background:linear-gradient(#bc6652,#873a33)}.progress.mp>span,.game-vitals .game-mana .progress>span{background:linear-gradient(#7496b0,#426384)}.game-currency svg{color:#d2af68;fill:#8c6630}.game-system:hover,.game-dock>button:hover,.game-dock>button.active{color:#fff0cf;background:#6d5b3b99}.game-location,.game-action-control>small{color:#f2e4c8;text-shadow:0 1px 3px #000}.game-action-button,.game-advance{color:#fff0d1;text-shadow:0 1px 2px #26160e;background:linear-gradient(#9c7748,#624b30);border-color:#d1ad75;box-shadow:inset 0 1px #e7cd8f55,0 3px 9px #0008}.touch-pad button,.touch-pad>span{color:#eed8b1;background:#282b23cf;border-color:#b39768aa}.touch-pad button:hover:not(:disabled),.touch-pad button:active:not(:disabled){color:#fff0d1;background:#655437e6}.game-menu-shade,.game-root .modal-shade{background:#090d0ac2}.game-menu-window,.game-root .modal,.game-dialogue,.game-creation-window,.classic-window{background:var(--fantasy-panel);border:1px solid var(--fantasy-border);color:var(--game-ink);box-shadow:var(--fantasy-shadow);text-shadow:0 1px 2px #0008;border-radius:4px;outline:1px solid #15150e}.game-menu-chrome,.game-menu-foot{color:#d9c29b;text-shadow:0 1px #0009;background:linear-gradient(#423b2f,#2a2c25);border-color:#8c745080}.game-menu-chrome,.game-menu-body h1,.game-menu-body h2,.game-menu-body h3,.game-menu-body h4,.game-root .modal h2,.game-root .setting-row strong{font-family:var(--serif);color:#eed8b0;font-weight:400}.game-menu-body{scrollbar-color:#8c7450 #242720}.game-menu-body p,.game-menu-body small,.game-menu-body .ready-status,.game-root .modal p,.dialogue-body>p{color:#c4baa5}.game-menu-body .eyebrow,.game-root .modal .eyebrow,.game-menu-body .quest-rewards>span,.game-menu-foot>button,.game-menu-body .section-heading>svg{color:#d0b17c}.game-menu-body :is(.quest-card,.shop-card,.party-member,.resume-card,.dungeon-card,.public-lobbies,.lobby-detail,.dungeon-selection,.shop-notice,.empty-member),.game-travel-areas>button,.game-map-objects button{color:#d9c9aa;background:#252a24;border-color:#726046;border-radius:3px;box-shadow:0 2px 5px #0003}.game-menu-body .dungeon-card.chosen,.game-travel-areas>button.selected{border-color:#c2a16d;box-shadow:inset 0 0 0 1px #c2a16d66}.game-menu-body :is(.quest-body h3,.section-heading h3,.quest-number,.dungeon-selection label,.quest-progress small,.item-stats){color:#d8c29d}.game-menu-body .dungeon-art,.game-menu-body .dungeon-card.tides .dungeon-art,.game-menu-body .dungeon-card.forge .dungeon-art{background:radial-gradient(at 50% 90%,#566047,#212820)}.game-menu-body .pill,.game-menu-body .mini-portrait,.game-menu-body .lobby-icon,.game-menu-body .lobby-icon.tides,.game-menu-body .lobby-icon.forge{color:#d6c29d;background:#343a2e;border-color:#8c7450}.game-menu-body .public-lobby,.game-root .setting-row,.game-root .guide-list p{border-color:#8c745055}.game-menu-body input,.game-menu-body select{color:#e5d7bb;background:#141c18;border-color:#8c7450}.game-menu-body .button,.game-root .modal .button,.dialogue-body>.button{background:var(--fantasy-raised);color:#ead6ad;text-shadow:0 1px #0008;border:1px solid #8c7450;border-radius:3px;box-shadow:inset 0 1px #d0ae7322,0 2px 5px #0004}.game-menu-body .button.primary,.game-root .modal .button.primary,.game-menu-body .button.primary:hover:not(:disabled){color:#fff0d1;background:linear-gradient(#8e6b40,#624c32);border-color:#c9a66f}.game-menu-body .button:hover:not(:disabled){background:#524734;border-color:#c2a16d}.game-root .toggle{background:#31372c;border-color:#8c7450}.game-root .toggle.on{background:#708257;border-color:#b5bb87}.jrpg-battle,.classic-command{font-family:var(--game-font);text-shadow:0 1px 2px #000b}.classic-command:hover,.classic-command.selected{background:#c3a46f26}.jrpg-round,.jrpg-status-heading,.jrpg-status-sub,.jrpg-status-row small,.jrpg-prompt-window,.jrpg-target-window{color:#d9c4a0}.jrpg-weakness{color:#ebdcb9;background:#272b21ed;border:1px solid #8c745077}.jrpg-targets>button,.jrpg-targets>button.selected,.jrpg-commit{background:var(--fantasy-raised);color:#efddba;text-shadow:0 1px #0009;border-color:#ad8e5b}.jrpg-commit:hover:not(:disabled),.jrpg-status-row.selected,.jrpg-selection-window>div>button:hover{background:#9b7b4440;border-color:#d5b57b;outline-color:#d5b57b88}.jrpg-stat .progress{background:#131b17}.jrpg-stat .progress>span{background:linear-gradient(#bc6652,#873a33)}.jrpg-stat.mp .progress>span{background:linear-gradient(#7496b0,#426384)}.classic-window-caption,.jrpg-enemy-window small,.jrpg-action-window>small,.jrpg-targets>span,.jrpg-selection-window>header,.jrpg-stat small,.jrpg-selection-window>div>button>small{color:#d4bd96}.character-status-sheet,.character-equipment>button,.character-satchel-grid>button,.character-item-detail,.character-ability-detail,.character-game-abilities>.ability-choice{background:#292e26;border-color:#8c7450;border-radius:3px;box-shadow:inset 0 1px #c4a37022,0 2px 5px #0003}.character-identity>strong,.character-game-stats strong,.character-equipment strong,.character-satchel-grid strong,.character-item-detail strong,.character-ability-detail strong,.character-game-abilities>.ability-choice strong{color:#efd9b3}.character-identity>span,.character-resource,.character-resource.mana,.character-game-stats>div,.character-experience,.character-equipment small,.character-item-detail>span,.character-game-abilities>.ability-choice small{color:#c6bda8}.character-game-stats{border-color:#8c745060}.character-resource>.progress,.character-experience>.progress{background:#151d18;border-color:#8c745066}.character-resource>.progress>span{background:linear-gradient(#bc6652,#873a33)}.character-resource.mana>.progress>span{background:linear-gradient(#7496b0,#426384)}.character-experience>.progress>span{background:#c1a16e}.character-equipment>button:hover:not(:disabled),.character-satchel-grid>button:hover,.character-satchel-grid>button.selected,.character-game-abilities>.ability-choice[aria-pressed=true],.character-game-abilities>.ability-choice:hover{background:#514731;border-color:#d2b07a;box-shadow:inset 0 0 0 1px #d2b07a33}.character-game-abilities>.ability-choice>span,.satchel-count{color:#ddc395;background:#20251f}.satchel-empty{background:#20251f77;border-color:#8c745077}.character-figure-pedestal{background:linear-gradient(#665e46,#383d2e);border-color:#8c745088;box-shadow:0 3px 7px #0005}.equipment-game-icon{background:radial-gradient(#b4914d33,#0000 69%)}.game-creation{background:#171d18}.creation-world-veil{background:#10171080}.creation-caption h1{font-family:var(--serif);color:#eed8b0;font-weight:400}.creation-caption small,.creation-hero-preview>span,.creation-stats,.game-creation-window>label{color:#ddc49a}.creation-class-description,.creation-permanent-note{color:#c9bda5}.game-class-choices>button{color:#dfcfaf;background:#2b3028;border:1px solid #8c7450;border-radius:3px;box-shadow:0 2px 5px #0004}.game-class-choices>button.selected{color:#fff0ce;background:#655235;border-color:#d3b17c}.game-creation-window>input{color:#eedebf;background:#151d17;border-color:#8c7450}.game-creation-window>.creation-begin{text-shadow:0 1px #0009;background:linear-gradient(#8e6b40,#624c32);border:1px solid #c9a66f;border-radius:3px}.creation-pedestal{background:linear-gradient(#665e46,#383d2e);border-color:#8c745088;box-shadow:0 3px 7px #0005}.game-minimap{transform:none}.game-root [role=dialog] button:focus-visible{outline-color:#e9c88b}@media (width<=600px){.game-vitals{min-width:142px}.game-hero-name{font-size:13px}}
