:root{color-scheme:dark;--bg:#14221c;--panel:#1d2e25;--panel2:#25392c;--line:#3d4d39;--text:#ece9d5;--muted:#a5af94;--gold:#ddc18a;--green:#a4bb8a;--danger:#e7a38b;--paper:#eae4cb;--ink:#374136;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:14px;line-height:1.7;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 45% 0,#2d3e2a55,transparent 65%),var(--bg);min-height:100vh}button,input{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.38}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button{touch-action:manipulation}a{color:var(--gold)}button:active:not(:disabled){transform:translateY(1px)}button,button:hover{transition:background-color .16s,border-color .16s,box-shadow .16s}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,Yu Mincho,Hiragino Mincho ProN,serif;font-weight:600}small{font-size:11px}strong{font-weight:600}kbd{font-family:inherit;font-size:10px;color:var(--muted);padding:1px 4px;border:1px solid #65735566;border-radius:3px;line-height:1.4;white-space:nowrap}.loading{margin:20vh auto;text-align:center;color:var(--gold)}.shell{max-width:1480px;margin:auto;padding:0 30px 24px}.topbar{display:flex;justify-content:space-between;align-items:center;height:82px;border-bottom:1px solid var(--line);gap:14px}.brand{display:flex;align-items:center;gap:12px;border:0;background:none;padding:0;text-align:left}.brand img{width:36px;height:36px}.brand strong{display:block;font:23px/1.3 Georgia,Yu Mincho,serif;letter-spacing:.14em}.brand small{display:block;font:9px/1.7 Georgia,serif;letter-spacing:.22em;color:var(--muted)}.header-actions{display:flex;gap:10px;align-items:center}.version{color:#849079;font-size:10px;letter-spacing:.1em;margin-right:12px}.quiet-btn{background:transparent;border:1px solid var(--line);border-radius:5px;padding:7px 12px;font-size:12px;color:var(--muted)}.quiet-btn:hover:not(:disabled){background:var(--panel2);color:var(--text)}.eyebrow{font-size:10px;letter-spacing:.19em;color:var(--gold);font-weight:600}.muted{color:var(--muted)}.primary{background:var(--gold);color:#303b29;border:1px solid #eed5a2;border-radius:5px;padding:13px 22px;font-weight:700;letter-spacing:.05em}.primary:hover:not(:disabled){background:#eed5a4;box-shadow:0 0 24px #dec48615}.secondary{background:var(--panel2);border:1px solid #62714d;border-radius:5px;padding:11px 19px}.secondary:hover:not(:disabled){background:#334b35}.danger-btn{color:#ebae99;border:1px solid #97634e;background:#442d2511;border-radius:5px;padding:10px 15px}.full{width:100%}.inline-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.text-btn{background:none;border:0;color:var(--gold);padding:4px 0;font-size:12px}.warning-banner{padding:12px 17px;border:1px solid #9d774f;background:#423422;margin:15px 0;color:#edd6af;font-size:12px;border-radius:5px}.tag{display:inline-block;padding:2px 7px;border:1px solid #67745577;border-radius:3px;font-size:10px;color:var(--muted)}.lobby{padding:35px 0 0;display:grid;grid-template-columns:minmax(0,1fr) 306px;gap:28px}.hero{overflow:hidden;position:relative;border:1px solid var(--line);border-radius:7px;background:#192a21;min-height:280px;display:grid;grid-template-columns:1fr 1fr;align-items:center}.hero-copy{position:relative;z-index:1;padding:35px 0 35px 34px}.hero h1{font-size:clamp(27px,2.7vw,40px);line-height:1.6;letter-spacing:.065em;margin:13px 0 15px}.hero p{font-size:12px;color:#b5bda4;line-height:2.2}.hero canvas{width:100%;height:100%;object-fit:cover;image-rendering:pixelated;opacity:.9;min-height:280px}.hero:after{content:"";position:absolute;inset:0 0 0 45%;pointer-events:none;background:linear-gradient(90deg,#192a21,transparent 35%)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;margin:29px 0 14px;gap:8px}.section-heading h2{font-size:20px;letter-spacing:.07em}.section-heading span{font-size:11px;color:var(--muted)}.job-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.job-card{padding:18px 8px 15px;text-align:center;border:1px solid var(--line);border-radius:6px;background:#1c2d24;position:relative;min-width:0}.job-card:hover{background:#2a3b2b}.job-card.selected{border-color:var(--gold);background:#34412d;box-shadow:inset 0 0 0 1px #ddc18a40}.job-card.selected:after{content:"✓";position:absolute;right:9px;top:6px;color:var(--gold);font-size:11px}.job-card canvas{width:52px;height:52px;image-rendering:pixelated;margin-bottom:7px}.job-card strong{display:block;font-size:13px;white-space:nowrap}.job-card small{display:block;color:var(--muted);margin-top:6px;font-size:9px;line-height:1.7}.lobby-note{color:var(--muted);font-size:11px;margin-top:17px;display:flex;gap:8px;align-items:center}.lobby-note:before{content:"◇";color:var(--gold)}.departure{padding:24px;background:linear-gradient(135deg,#303c2b,#233326);border:1px solid #67734b;border-radius:7px}.departure-top{display:flex;justify-content:space-between;align-items:center}.departure h2{font-size:27px;margin:18px 0 4px}.departure .subtitle{color:var(--gold);font-size:11px;margin-bottom:18px}.departure .description{font-size:12px;color:#c4ccb0;min-height:63px;line-height:1.9}.departure hr{border:0;border-top:1px solid #74825740;margin:21px 0}.departure .rule{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:9px 0}.departure .rule span:last-child{color:var(--text)}.departure .primary{margin-top:18px}.departure .micro{font-size:10px;text-align:center;color:var(--muted);margin-top:11px}.continue-card{margin-top:15px;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:18px}.continue-card h3{font-size:15px;margin-bottom:8px}.continue-card p{font-size:11px;color:var(--muted);margin:7px 0 13px}.record-mini{display:flex;justify-content:space-between;margin-top:23px;padding-top:18px;border-top:1px solid var(--line)}.record-mini strong{font-family:Georgia,serif;display:block;font-size:22px;color:var(--gold)}.record-mini span{font-size:10px;color:var(--muted)}.lobby-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:24px 0;color:#7f8e76;font-size:10px;letter-spacing:.05em}.lobby-footer span{display:flex;gap:13px}.adventure-header{height:70px;display:flex;align-items:center;justify-content:space-between;gap:12px}.floor-title{display:flex;gap:15px;align-items:center}.floor-number{font:22px/1 Georgia,serif;color:var(--gold);border-right:1px solid var(--line);padding-right:15px}.floor-number small{font-size:13px;padding-left:3px}.floor-title h2{font-size:19px;letter-spacing:.09em}.floor-title p{font-size:10px;color:var(--muted);letter-spacing:.08em}.turn-indicator{display:flex;gap:12px;align-items:center;font-size:11px;color:var(--muted)}.turn-indicator strong{font-family:Georgia,serif;font-size:18px;color:var(--text);font-weight:400}.phase{border:1px solid #69815c;padding:3px 9px;border-radius:3px;color:#bbd3a6;font-size:10px}.phase.bonus{color:#242f25;background:#b7d9b5;border-color:#cee3be}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:20px;align-items:start}.map-panel{background:#111d1b;border:1px solid #657155;border-radius:6px;overflow:hidden;box-shadow:0 6px 28px #0002}.map-wrap{width:100%;aspect-ratio:42/28;max-height:calc(100vh - 297px);display:flex;align-items:center;justify-content:center;min-height:310px;position:relative}.map-wrap canvas{width:100%;height:100%;display:block;object-fit:contain;image-rendering:pixelated;cursor:crosshair}.map-label{position:absolute;left:12px;top:10px;font-size:9px;letter-spacing:.11em;color:#929d7e;pointer-events:none;background:#14211bc0;padding:3px 7px;border:1px solid #73845d30;border-radius:3px}.map-legend{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 13px;background:#203127;border-top:1px solid #526044;font-size:10px;color:var(--muted)}.map-legend span{display:flex;align-items:center;gap:7px}.dot{display:inline-block;width:6px;height:6px;background:var(--gold);border-radius:50%}.dot.exit{background:#a0bd88;border-radius:0}.context-strip{padding:9px 13px;border-top:1px solid #4c5b3c;font-size:11px;background:#27372a;color:#c4cdb0;min-height:37px}.context-strip.aim{background:#4c432b;color:#f0dab0}.context-strip.bonus{background:#314735;color:#d4e9c7}.quickbar{display:flex;gap:7px;margin:11px 0}.quick-item{background:#243629;border:1px solid var(--line);border-radius:5px;display:flex;align-items:center;gap:8px;text-align:left;padding:8px 10px;flex:1;min-width:0}.quick-item:hover:not(:disabled){border-color:#bba779;background:#324330}.quick-item canvas{width:24px;height:24px;image-rendering:pixelated;flex-shrink:0}.quick-item span{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-item b{font-size:10px;color:var(--gold);font-weight:400;margin-left:auto}.log-panel{background:#19291f;border:1px solid var(--line);border-radius:5px;overflow:hidden}.log-title{font-size:10px;display:flex;justify-content:space-between;padding:7px 12px;border-bottom:1px solid #3d4d3922;color:var(--muted)}.logs{padding:4px 12px 9px;height:98px;overflow:auto}.log-line{font-size:11px;display:flex;gap:11px;margin:3px 0;line-height:1.65;color:#bbc4ab}.log-line time{font-size:9px;color:#66775d;width:23px;flex-shrink:0;padding-top:2px;text-align:right}.log-line.good{color:#a9ca94}.log-line.danger{color:#e0a189}.log-line.warning{color:#d6bc89}.log-line.important{color:#e4d09b}.log-line.loot{color:#b6c995}.log-line.bonus{color:#b7dfc2}.side-panel{border:1px solid var(--line);border-radius:6px;background:var(--panel);overflow:hidden;margin-bottom:12px}.panel-body{padding:15px}.character-line{display:flex;align-items:center;gap:11px;margin-bottom:13px}.portrait{width:47px;height:47px;background:#32422f;border:1px solid #66784e;border-radius:5px;image-rendering:pixelated}.character-line strong{font-size:15px;display:block}.character-line small{font-size:10px;color:var(--muted)}.character-line .level{font-size:26px;color:var(--gold);font-family:Georgia,serif;margin-left:auto;white-space:nowrap}.level small{font:9px sans-serif;margin-right:3px}.meter-row{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin:9px 0 4px;color:var(--muted)}.meter-row strong{color:var(--text);font-size:12px}.meter{height:6px;border-radius:2px;background:#111e18;overflow:hidden}.meter i{height:100%;display:block;background:#9aad77;border-radius:2px}.meter.hunger i{background:#c5aa6d}.meter.low i{background:#d88e74}.meter.xp{height:3px}.meter.xp i{background:#778f80}.stat-pair{display:flex;justify-content:space-between;gap:8px;font-size:11px;border-top:1px solid var(--line);padding-top:12px;margin-top:14px;color:var(--muted)}.stat-pair b{font-weight:500;color:var(--text);margin-left:8px}.status-tags{display:flex;gap:6px;margin-top:11px;flex-wrap:wrap}.status-tags .tag{color:#d4badf;border-color:#9576a0}.gear-row{display:flex;align-items:center;gap:8px;margin:9px 0;color:#cbd2b9;font-size:11px}.gear-row canvas{width:22px;height:22px;image-rendering:pixelated}.gear-row small{font-size:9px;color:var(--muted);margin-left:auto}.inventory-btn{display:flex;align-items:center;justify-content:space-between;width:100%;background:#d6c398;color:#36422e;border:1px solid #e2d0a6;padding:11px 13px;border-radius:4px;margin-top:15px;font-size:12px;font-weight:600}.inventory-btn:hover{background:#e8d6ad}.inventory-btn kbd{color:#5e684e;border-color:#75825e}.panel-label{font-size:10px;color:var(--muted);margin-bottom:9px;letter-spacing:.06em}.inspect-name{font-size:13px;color:var(--gold);margin-bottom:5px}.inspect-text{font-size:11px;color:#adb99f;line-height:1.85}.control-pad{display:grid;grid-template-columns:repeat(3,32px);gap:4px}.control-pad button{width:32px;height:31px;padding:0;border:1px solid #627350;background:#2a3d2c;border-radius:4px;color:#c9d1b7;font-size:14px}.control-pad button:hover{background:#496042}.control-pad button.active{background:#786a44;border-color:var(--gold)}.control-layout{display:flex;gap:13px;align-items:center}.control-actions{flex:1;display:grid;gap:5px}.control-actions button{padding:5px 6px;font-size:10px;border:1px solid #5b6f4b;border-radius:4px;background:#2c3e2d;text-align:left;display:flex;justify-content:space-between;align-items:center}.control-actions button.active{border-color:var(--gold);color:var(--gold)}.control-actions button.stair-ready{background:#465b39;border-color:#a6b782;color:#edebce}.controls-hint{font-size:9px;color:#8e9e80;margin-top:11px;line-height:1.8}.keyboard-strip{display:flex;justify-content:space-between;color:#819277;font-size:10px;margin:15px 0 0;gap:10px;flex-wrap:wrap}.keyboard-strip span{display:flex;gap:6px;align-items:center}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%);background:#e2d4ac;color:#35432e;box-shadow:0 8px 25px #0005;padding:11px 22px;border-radius:6px;font-size:12px;z-index:40;max-width:90vw;pointer-events:none}.modal-shade{position:fixed;inset:0;background:#06150fc4;backdrop-filter:blur(4px);z-index:30;display:flex;align-items:center;justify-content:center;padding:24px}.dialog{width:min(760px,100%);max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #829368;border-radius:8px;background:#233326;box-shadow:0 25px 90px #0008;color:var(--text)}.dialog.narrow{width:min(490px,100%)}.dialog-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #60734e;padding:20px 24px;gap:14px}.dialog-header h2{font-size:22px;letter-spacing:.05em}.dialog-header p{color:var(--muted);font-size:11px;margin-top:5px}.close-btn{width:30px;height:30px;border:1px solid #71815c;background:transparent;border-radius:4px;color:var(--muted);font-size:19px;line-height:1}.dialog-body{padding:23px 24px}.dialog-body p{font-size:13px;color:#c8d1b5;line-height:1.95}.dialog-footer{padding:18px 24px;display:flex;justify-content:flex-end;gap:9px;border-top:1px solid #536445}.inventory-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);min-height:360px}.inventory-list{max-height:440px;overflow:auto;border-right:1px solid var(--line);padding:12px}.inventory-row{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:1px solid transparent;border-radius:4px;margin-bottom:3px;padding:8px 9px;text-align:left}.inventory-row.selected{background:#405038;border-color:#8d9566}.inventory-row:hover{background:#36482f}.inventory-row canvas{width:26px;height:26px;image-rendering:pixelated}.inventory-row strong{font-size:12px;display:block;font-weight:500}.inventory-row small{font-size:9px;color:var(--muted);display:block}.inventory-row .equipped{margin-left:auto;font-size:9px;color:var(--gold)}.item-detail{padding:25px 22px;display:flex;flex-direction:column;align-items:flex-start}.item-detail>canvas{width:64px;height:64px;image-rendering:pixelated;background:#2e422d;border:1px solid #597048;border-radius:6px;padding:8px;margin:0 0 15px}.item-detail h3{font-size:21px;margin:8px 0 12px}.item-detail p{font-size:12px;color:#c4ceb0;line-height:1.95}.job-bonus{font-size:11px;border-left:2px solid var(--gold);padding-left:10px;color:var(--gold);margin-top:17px}.item-actions{display:grid;gap:7px;width:100%;margin-top:auto;padding-top:23px}.item-actions button{padding:9px;font-size:12px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.help-grid h3{font-size:17px;margin-bottom:12px;color:var(--gold)}.help-grid p{font-size:12px;margin:7px 0}.help-grid ul{padding-left:18px;margin:0;color:#c4cdae;font-size:12px;line-height:2}.key-diagram{font-family:monospace;letter-spacing:5px;background:#1b2c21;border:1px solid var(--line);border-radius:5px;padding:12px 17px;display:inline-block;line-height:1.9;font-size:13px;color:var(--gold)}.help-note{margin-top:23px!important;padding:12px;background:#35442d;border-radius:4px;font-size:12px!important}.history-table{width:100%;border-collapse:collapse;font-size:12px}.history-table th,.history-table td{text-align:left;padding:11px 9px;border-bottom:1px solid #4d603e}.history-table th{color:var(--muted);font-weight:400;font-size:10px}.history-table tr.won td{color:var(--gold)}.empty{padding:35px 8px;text-align:center;color:var(--muted);font-size:12px}.result-art{text-align:center;padding:25px 0 20px;background:radial-gradient(ellipse,#68764433,transparent 60%)}.result-art canvas{width:70px;height:70px;image-rendering:pixelated}.result-art h2{font-size:30px;color:var(--gold);margin-top:12px}.result-art p{font-size:12px;color:var(--muted);margin-top:10px}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;margin:20px 0;border-top:1px solid #526544;border-bottom:1px solid #526544;padding:17px 0}.result-stats strong{display:block;font:26px Georgia,serif;color:var(--gold)}.result-stats small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.seed-note{font-size:10px;color:var(--muted);text-align:center}.setting-row{display:flex;justify-content:space-between;align-items:center;margin:12px 0 25px;gap:20px}.setting-row strong{font-size:13px;font-weight:500}.setting-row small{font-size:10px;display:block;color:var(--muted)}.setting-row button{min-width:58px}.aim-actions{display:flex;gap:7px;align-items:center}.aim-actions button{padding:6px 12px;font-size:10px}.aim-banner{display:flex;justify-content:space-between;align-items:center;gap:9px}.aim-banner span{font-size:11px}@media(min-width:1500px){.lobby{padding-top:50px}.hero{min-height:330px}.hero canvas{min-height:330px}.job-card{padding:24px 10px}.job-card canvas{width:64px;height:64px}.lobby-footer{padding-top:35px}}@media(max-width:1100px){.shell{padding:0 20px 20px}.game-layout{grid-template-columns:minmax(0,1fr) 250px;gap:13px}.lobby{grid-template-columns:minmax(0,1fr) 267px;gap:19px}.hero{grid-template-columns:1fr}.hero-copy{padding:24px 27px}.hero canvas{position:absolute;width:52%;right:0;min-height:100%;opacity:.4}.hero:after{display:none}.job-card small{font-size:8px}.job-card{padding:15px 4px}.job-card canvas{width:44px;height:44px}.job-card strong{font-size:11px}.departure{padding:21px}.panel-body{padding:12px}.control-pad{grid-template-columns:repeat(3,29px);gap:3px}.control-pad button{width:29px;height:30px}.control-layout{gap:10px}.quick-item{padding:7px;gap:5px}.quick-item span{font-size:10px}.quick-item canvas{width:21px;height:21px}}@media(max-width:850px){.shell{padding:0 14px 20px}.topbar{height:70px}.brand strong{font-size:20px}.brand small{font-size:8px}.brand img{width:31px;height:31px}.version{display:none}.header-actions{gap:6px}.quiet-btn{padding:6px 9px;font-size:11px}.lobby{grid-template-columns:1fr;padding-top:22px}.lobby-side{display:grid;grid-template-columns:1fr 1fr;gap:15px}.departure{grid-row:span 2}.continue-card{margin-top:0}.record-mini{margin-top:0;align-self:end}.hero{min-height:240px}.hero canvas{width:55%}.hero h1{font-size:32px}.job-card canvas{width:50px;height:50px}.job-card strong{font-size:13px}.job-card small{font-size:9px}.game-layout{grid-template-columns:minmax(0,1fr) 225px;gap:10px}.map-wrap{min-height:300px;max-height:none}.side-panel .panel-body{padding:10px}.character-line{gap:6px}.portrait{width:36px;height:36px}.character-line strong{font-size:13px}.character-line small{font-size:9px}.control-layout{flex-direction:column}.control-actions{grid-template-columns:1fr 1fr;width:100%}.control-actions button{font-size:10px}.control-pad{grid-template-columns:repeat(3,36px)}.control-pad button{width:36px;height:32px}.quickbar{flex-wrap:wrap}.quick-item{flex:1 1 40%}.floor-title h2{font-size:16px}.turn-indicator{gap:7px}.map-legend .legend-other{display:none}}@media(max-width:620px){.topbar{height:64px}.brand{gap:8px}.brand strong{font-size:18px}.brand small{font-size:7px}.header-actions .sound-top{display:none}.lobby{gap:21px}.hero h1{font-size:28px}.hero-copy{padding:23px}.hero p{font-size:11px}.hero canvas{width:60%;opacity:.32}.section-heading{margin-top:24px}.section-heading h2{font-size:18px}.section-heading span{font-size:9px}.job-grid{grid-template-columns:repeat(5,1fr);gap:5px}.job-card{padding:15px 2px 12px}.job-card canvas{width:40px;height:40px}.job-card strong{font-size:10px}.job-card small{font-size:8px}.job-card.selected:after{right:5px;top:3px;font-size:9px}.lobby-side{grid-template-columns:1fr}.departure{padding:21px}.departure h2{font-size:25px;margin-top:11px}.departure .description{min-height:0}.departure hr{margin:17px 0}.departure .rule{margin:5px 0}.lobby-footer{flex-direction:column;align-items:flex-start;font-size:9px}.game-layout{grid-template-columns:1fr}.game-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:10px}.game-sidebar .side-panel{margin:0}.game-sidebar .inspect-panel{grid-column:1/-1;order:3}.map-wrap{min-height:0;height:auto;aspect-ratio:42/28;max-height:unset}.map-panel{border-color:#657155}.adventure-header{height:61px}.floor-number{font-size:26px}.floor-title p{font-size:8px}.turn-indicator .phase{display:none}.quickbar{flex-wrap:nowrap}.quick-item{flex:1;padding:7px 5px;gap:5px}.quick-item span{font-size:9px}.quick-item canvas{width:19px;height:19px}.logs{height:81px}.control-layout{flex-direction:column;gap:8px}.control-pad{grid-template-columns:repeat(3,35px)}.control-pad button{width:35px;height:32px}.controls-hint{display:none}.control-actions{gap:4px}.control-actions button{padding:6px 5px;font-size:9px}.control-actions kbd{display:none}.keyboard-strip{font-size:9px}.inventory-layout{grid-template-columns:1fr 1fr;min-height:340px}.inventory-list{padding:7px;max-height:400px}.inventory-row{gap:5px;padding:7px 5px}.inventory-row canvas{width:21px;height:21px}.inventory-row strong{font-size:10px}.inventory-row small,.inventory-row .equipped{font-size:8px}.item-detail{padding:19px 13px}.item-detail h3{font-size:18px}.item-detail p{font-size:11px}.dialog-header{padding:17px 18px}.dialog-header h2{font-size:19px}.dialog-body{padding:18px}.dialog-footer{padding:14px 18px}.modal-shade{padding:12px}.dialog{max-height:calc(100dvh - 24px)}.help-grid{grid-template-columns:1fr;gap:18px}.aim-banner{flex-wrap:wrap}.context-strip{padding:8px 10px}.history-table{font-size:10px}.history-table th,.history-table td{padding:9px 5px}}@media(prefers-reduced-motion:reduce){button{transition:none}}.map-wrap{aspect-ratio:13/9;min-height:340px;max-height:calc(100dvh - 295px)}.overview-heading{display:flex;align-items:center;justify-content:space-between;padding:9px 13px 3px;font-size:11px;color:var(--muted)}.overview-button{display:block;width:100%;padding:0 7px;border:0;background:transparent;cursor:zoom-in}.overview-button canvas{display:block;width:100%;height:auto;image-rendering:pixelated}.overview-legend{display:flex;justify-content:space-between;gap:9px;padding:8px 13px 11px;font-size:9px;color:var(--muted)}.overview-legend span{display:flex;align-items:center;gap:5px}.overview-legend .dot{background:#ffe5a3;border-radius:0}.dot.enemy{background:#f38e7c}.overview-legend .dot.item,.overview-legend .dot.gold{background:#80bfff}.overview-legend .exit{background:#92e1cd}.overview-large canvas{display:block;width:100%;height:auto;image-rendering:pixelated;border:1px solid var(--line);border-radius:4px}.overview-large .overview-legend{justify-content:center;gap:28px;font-size:11px;padding:16px}.overview-large p{font-size:11px;text-align:center;color:var(--muted)}.underfoot{display:flex;align-items:center;gap:12px;padding:12px 24px;background:#31432e;border-bottom:1px solid var(--line);font-size:12px}.underfoot canvas{width:30px;height:30px;image-rendering:pixelated}.underfoot strong{display:block;font-weight:500;color:var(--gold)}.underfoot small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.game-sidebar>.side-panel:first-child .panel-body{padding:12px 14px}.game-sidebar .character-line{margin-bottom:6px}.game-sidebar .stat-pair{padding-top:8px;margin-top:9px}.game-sidebar .gear-row{display:inline-flex;width:49%;font-size:10px;margin:7px 0 1px;gap:5px}.game-sidebar .gear-row small{display:none}.game-sidebar .inventory-btn{margin-top:10px;padding:8px 11px}@media(max-width:850px){.map-wrap{min-height:300px;max-height:none}.overview-legend{gap:5px;padding:8px;font-size:8px}.overview-heading{padding:8px 10px 2px}}@media(max-width:620px){.map-wrap{min-height:0;max-height:none;aspect-ratio:13/9}.overview-panel{grid-column:2;grid-row:1}.game-sidebar>.side-panel:last-child{grid-column:1/-1}.game-sidebar>.side-panel:last-child .control-layout{flex-direction:row;justify-content:center}.game-sidebar>.side-panel:last-child .control-actions{flex:0 1 180px}.underfoot{padding:12px;gap:8px}.underfoot small{font-size:9px}.overview-large .overview-legend{gap:18px;font-size:10px}}.map-wrap{aspect-ratio:624/392;background:#122320}.map-wrap canvas{image-rendering:pixelated}.scene-messages{position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:flex-start;flex-direction:column;gap:5px;pointer-events:none;z-index:2}.scene-message{max-width:min(100%,640px);padding:8px 13px;border-radius:5px;background:#152a22f2;color:#f0e9cb;border:1px solid #83927680;box-shadow:0 3px 12px #0b191e25;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.scene-message.loot,.scene-message.good{color:#ecedc5;border-color:#a3b87999}.scene-message.danger,.scene-message.warning{color:#f2c4b3;border-color:#bc826577}.scene-message.bonus{color:#f5daa0;border-color:#c6a96699}.scene-message.critical{color:#ffe39b;border-color:#dfb75e;background:#332d1cf2;font-weight:600}.log-line.critical{color:#f5d17e}.ammo-quick span{display:flex;flex-direction:column;gap:3px}.ammo-quick small{font-size:9px;font-weight:400;color:var(--muted)}@media(max-width:620px){.scene-messages{left:7px;right:7px;bottom:7px;gap:3px}.scene-message{padding:5px 8px;font-size:11px;line-height:1.45}}@media(max-width:620px){.map-wrap{aspect-ratio:624/392}}.empty-gear{display:inline-grid;place-items:center;width:22px;height:22px;color:#84917d;flex-shrink:0}.overview-legend{flex-wrap:wrap;justify-content:flex-start;column-gap:12px;row-gap:6px}.map-wrap.low-hp:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 36%,#a72c2c38 70%,#d2424266 100%);box-shadow:inset 0 0 0 3px #e97665a0}.low-hp-alert{position:absolute;right:12px;top:10px;z-index:2;padding:5px 10px;border:1px solid #e79583;border-radius:4px;background:#641f21ee;color:#ffe5cf;font-size:11px;pointer-events:none}.scene-messages,.map-label{z-index:2}.map-wrap canvas:focus-visible{outline:2px solid #a7cba0;outline-offset:-3px}.inventory-toolbar{display:flex;gap:8px;align-items:center;padding:12px 16px 5px;flex-wrap:wrap}.inventory-toolbar button{padding:7px 10px;font-size:11px}.inventory-toolbar>span{margin-left:auto;color:var(--muted);font-size:10px}.inventory-hint{margin:0;padding:5px 16px 12px;color:var(--muted);font-size:10px;border-bottom:1px solid var(--line);line-height:1.8}.inventory-row:focus-visible{outline:2px solid #e6d0a1;outline-offset:-2px}.dialog:focus-visible{outline:2px solid #c9d2b1;outline-offset:2px}.logs:focus-visible{outline:2px solid #c9d2b1;outline-offset:-2px}@media(max-width:620px){.low-hp-alert{top:auto;bottom:8px;right:8px;font-size:10px}.inventory-toolbar{padding:10px 12px 4px;gap:6px}.inventory-toolbar>span{display:none}.inventory-toolbar button{font-size:10px;padding:6px 8px}.inventory-hint{padding:5px 12px 10px;font-size:9px}}.foot-context{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.foot-context button{padding:5px 10px;font-size:11px}.underfoot{flex-wrap:wrap}.underfoot-actions{display:flex;gap:6px;margin-left:auto}.underfoot-actions button{padding:6px 9px;font-size:10px}.ground-item-heading{display:flex;align-items:center;gap:16px;margin-bottom:14px}.ground-item-heading canvas{width:56px;height:56px;image-rendering:pixelated}.ground-item-heading h3{font-size:23px;color:var(--gold);margin-top:8px}.dialog-body .ground-note{font-size:11px;color:var(--muted);margin:15px 0}.ground-actions{display:grid;gap:8px}.ground-actions button{padding:10px 13px;text-align:left;display:flex;align-items:center;justify-content:space-between;font-size:12px}.dialog[data-panel=bestiary]{width:min(880px,100%);display:flex;flex-direction:column;overflow:hidden}.dialog[data-panel=bestiary]>.dialog-header,.dialog[data-panel=bestiary]>.dialog-footer{flex-shrink:0}.bestiary-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px 10px;flex-shrink:0}.bestiary-filters{display:flex;gap:5px}.bestiary-filters button{padding:7px 10px;font-size:11px}.bestiary-filters button span{font-size:10px;margin-left:5px;opacity:.7}.bestiary-filters button[aria-pressed=true]{background:#d6c398;color:#293d2e;border-color:#e3d5af}.bestiary-progress-label{font-size:10px;color:var(--muted);white-space:nowrap}.bestiary-progress{height:3px;background:#12271f;margin:0 22px;flex-shrink:0}.bestiary-progress i{display:block;height:100%;background:#cdb87e}.bestiary-hint{font-size:10px;color:#a5b495;padding:9px 22px 12px;margin:0;flex-shrink:0}.bestiary-layout{display:grid;grid-template-columns:minmax(225px,.85fr) minmax(0,1.4fr);height:410px;min-height:0;border-top:1px solid var(--line)}.bestiary-list{overflow:auto;border-right:1px solid var(--line);padding:10px;background:#1b2c22;overscroll-behavior:contain}.bestiary-row{width:100%;display:flex;align-items:center;gap:10px;padding:9px 8px;margin-bottom:3px;text-align:left;border:1px solid transparent;border-radius:5px;background:transparent;min-height:62px}.bestiary-row:hover{background:#304430}.bestiary-row.selected{background:#3c5035;border-color:#8c9967}.bestiary-row:focus-visible{outline:2px solid #e6d0a1;outline-offset:-2px}.monster-number{font:10px Georgia,serif;color:#869579;width:15px;flex-shrink:0}.bestiary-row strong{font-size:12px;display:block;font-weight:500}.bestiary-row small{font-size:9px;color:#a3b092;display:block;margin-top:3px}.monster-portrait{width:40px;height:40px;image-rendering:pixelated;flex-shrink:0}.monster-portrait.large{width:96px;height:96px}.monster-unknown{display:flex;align-items:center;justify-content:center;width:40px;height:40px;font:23px Georgia,serif;color:#819176;border:1px dashed #526645;border-radius:5px;flex-shrink:0}.monster-unknown.large{width:96px;height:96px;font-size:47px;margin:0 auto 20px;border-radius:50%}.monster-detail{padding:23px 25px;overflow:auto;overscroll-behavior:contain;background:radial-gradient(ellipse at 80% 0,#81986614,transparent 65%);min-width:0;scroll-padding:16px}.monster-detail:focus-visible{outline:2px solid #c6d2ad;outline-offset:-3px}.monster-heading{display:flex;align-items:center;gap:17px;margin-bottom:18px}.monster-heading h3{font-size:24px;color:#ece6c7;margin:5px 0 9px;letter-spacing:.03em}.monster-art{width:112px;height:112px;display:grid;place-items:center;border-radius:8px;background:radial-gradient(ellipse at 50% 80%,#58724b70,#1a2e23 70%);border:1px solid #61754c;flex-shrink:0}.monster-eyebrow{font-size:9px;letter-spacing:.1em;color:#bfae79}.monster-heading .tag{font-size:10px}.monster-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 15px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}.monster-stats>div+div{border-left:1px solid #4b5e3e}.monster-stats dt{font-size:10px;color:var(--muted)}.monster-stats dd{font:22px Georgia,serif;color:var(--gold);margin:5px 0 0}.monster-floor{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 18px;font-size:11px}.monster-floor span{color:var(--muted)}.monster-floor strong{font-weight:500;color:#e2d2a8}.monster-detail h4{font-size:11px;letter-spacing:.05em;color:#c5cfb2;margin:0 0 9px}.monster-behavior p{font-size:12px;line-height:1.9;color:#d0d9bf;margin:0}.monster-behavior{border-left:2px solid #9da471;padding-left:12px;margin-bottom:22px}.monster-family>div{display:flex;align-items:center;gap:9px}.monster-family-card{display:flex;align-items:center;flex-direction:column;gap:6px;background:#1c3024;border:1px solid #576d47;border-radius:5px;padding:9px;min-width:93px;font-size:10px}.monster-family-card.selected{border-color:#b8aa77;background:#364b31}.family-arrow{font-size:13px;color:#879975}.monster-note{font-size:10px;line-height:1.8;color:#98ab8d;margin:17px 0 0}.bestiary-empty{text-align:center;padding:24px 0}.bestiary-empty>span:first-child:not(.monster-unknown){font-size:37px;color:#ae9f70;display:block;margin-bottom:20px}.bestiary-empty h3{font-size:17px;color:#d8d7b9;line-height:1.7;margin:12px 0}.bestiary-empty p{font-size:12px;line-height:1.9;color:#aab99d}.bestiary-footer-note{margin-right:auto;align-self:center;color:var(--muted);font-size:10px}@media(max-width:620px){.header-actions kbd{display:none}.header-actions .quiet-btn{padding:6px 7px;font-size:10px}.bestiary-tools{padding:12px 14px 10px;flex-wrap:wrap;gap:8px}.bestiary-filters{gap:4px}.bestiary-filters button{padding:6px 9px;font-size:10px}.bestiary-progress-label{font-size:9px}.bestiary-progress{margin:0 14px}.bestiary-hint{padding:8px 14px 10px;font-size:9px}.bestiary-layout{display:flex;flex-direction:column;height:470px;min-height:0}.bestiary-list{flex:0 1 142px;min-height:65px;border-right:0;border-bottom:1px solid var(--line);padding:6px 9px}.bestiary-row{min-height:55px;padding:5px 7px;margin-bottom:2px}.monster-detail{flex:1;min-height:0;padding:18px}.monster-heading{gap:12px;margin-bottom:15px}.monster-heading h3{font-size:21px}.monster-art{width:86px;height:86px}.monster-portrait.large{width:80px;height:80px}.monster-eyebrow{font-size:8px}.monster-family-card{min-width:85px}.bestiary-empty{padding:15px 0}.bestiary-footer-note{max-width:150px;font-size:9px}}@media(max-width:620px){.underfoot-actions{flex-basis:100%;margin:3px 0 0;justify-content:flex-end}.ground-item-heading h3{font-size:20px}}.scene-message.enemy-level{color:#ffd3a0;border-color:#ce9564;background:#34281ef2;font-weight:600}.growth-guide{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.growth-guide p{font-size:12px;line-height:1.8;margin:10px 0}.map-wrap.descending .map-overlay,.map-wrap.descending .scene-messages,.map-wrap.descending .map-label,.map-wrap.descending .low-hp-alert,.map-wrap.boss-scene .map-overlay,.map-wrap.boss-scene .scene-messages,.map-wrap.boss-scene .map-label,.map-wrap.boss-scene .low-hp-alert{visibility:hidden}.scene-message.dodge{color:#bce9e7;border-color:#5a8c89}.log-line.dodge{color:#bce9e7}.scene-message.revive{color:#e0f7c6;border-color:#a9d79b;background:#28452eee}.log-line.revive{color:#c9eeb2}.threat-notice{color:#ffe0b0;border-left:3px solid #dba46d;padding:6px 9px;margin:3px 0 8px;background:#5c3e273d;font-size:12px;line-height:1.6}.relay-supplies{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.relay-supplies button{display:flex;align-items:center;gap:10px;text-align:left;padding:16px 12px;white-space:normal}.relay-supplies canvas{width:36px;height:36px;flex-shrink:0}.relay-supplies small{display:block;font-size:11px;margin-top:5px;line-height:1.5;color:var(--muted)}@media(max-width:480px){.relay-supplies{grid-template-columns:1fr}.relay-supplies button{padding:12px}}.mobile-only{display:none}.map-overlay{display:block;position:absolute;top:8px;left:6px;width:44%;max-width:180px;aspect-ratio:45/31;pointer-events:none;z-index:1;filter:drop-shadow(0 1px 2px #08102099)}.map-overlay canvas{cursor:default;pointer-events:none}.map-label{display:none}.overview-expand{width:100%;padding:13px;display:flex;justify-content:space-between;background:#26392b;border:0;color:var(--gold);font-size:12px}.touch-help{margin-bottom:20px}.touch-help h3{font-size:17px;color:var(--gold);margin-bottom:10px}.touch-help p{margin:8px 0}.mobile-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.status-gear{display:grid;gap:9px;margin:18px 0;padding:12px 0;border-block:1px solid var(--line)}.status-gear span{display:flex;justify-content:space-between;gap:12px;font-size:12px}.journal-entries{display:grid;gap:7px}.journal-entries button{width:100%;background:#1b2d23;border:1px solid var(--line);border-radius:5px;padding:10px;text-align:left}.journal-entries button span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.journal-pages{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;font-size:12px}@media(max-width:620px){html,body{height:100%;min-height:0;overflow:hidden;overscroll-behavior:none}body{-webkit-tap-highlight-color:transparent}#app{height:100%}.mobile-only{display:block}.shell{height:100vh;height:100dvh;max-width:100%;display:flex;flex-direction:column;gap:0;padding:env(safe-area-inset-top,0px) max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));overflow:hidden}.topbar{height:48px;min-height:48px;flex-shrink:0;border:0}.brand{min-height:44px;gap:7px}.brand img{width:27px;height:27px}.brand strong{font-size:17px;letter-spacing:.1em}.brand small{font-size:7px}.header-actions{display:none}.mobile-menu-toggle{min-width:72px;min-height:44px;padding:6px 10px;font-size:11px}.warning-banner{flex-shrink:0;margin:0 0 5px;padding:6px 9px;font-size:11px;max-height:100px;overflow:auto}.mobile-status{display:grid;grid-template-columns:minmax(134px,1fr) minmax(0,1.05fr);column-gap:12px;row-gap:6px;padding:4px 6px 8px;flex-shrink:0}.mobile-growth{background:none;border:0;border-right:1px solid var(--line);padding:0 10px 0 0;text-align:left;min-height:62px;min-width:0}.mobile-level{display:flex;align-items:baseline;gap:9px}.mobile-level strong{font:600 26px/1.15 system-ui;color:var(--gold);font-variant-numeric:tabular-nums}.mobile-level strong small{font-size:14px}.mobile-level>span{font-size:10px;color:var(--muted)}.mobile-next{display:block;font-size:10px;color:#d3dbc4;margin-top:5px;white-space:nowrap}.mobile-next b{font:600 13px/1.3 system-ui;color:#f0dfb3;font-variant-numeric:tabular-nums}.mobile-next small{font-size:9px;margin-left:2px}.mobile-growth .meter{display:block;margin-top:4px;height:3px}.mobile-vitals{display:grid;align-content:center;gap:6px}.mobile-vitals .meter-row{margin:0 0 2px;font-size:10px;line-height:1.3}.mobile-vitals .meter-row strong{font-size:13px;font-variant-numeric:tabular-nums}.mobile-vitals .meter{height:5px}.mobile-floor{font:600 12px/1.3 system-ui;color:#d0d5bb;margin-right:6px}.mobile-turn{grid-column:1/-1;display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted);line-height:1.3}.mobile-turn span:last-child{color:var(--gold);white-space:nowrap}.adventure-header,.game-sidebar,.quickbar,.log-panel,.keyboard-strip,.map-legend{display:none}.game-layout{display:flex;flex:1;min-height:0;gap:0;align-items:stretch}.game-main{display:flex;flex:1;min-width:0;min-height:0}.map-panel{display:flex;flex-direction:column;flex:1;min-height:0;box-shadow:none}.map-wrap{flex:1;min-height:0;height:auto;max-height:none;aspect-ratio:auto}.map-wrap canvas{min-height:0;touch-action:manipulation}.map-label{display:none}.map-overlay{display:block;position:absolute;top:8px;left:6px;width:44%;max-width:180px;aspect-ratio:45/31;pointer-events:none;z-index:1;filter:drop-shadow(0 1px 2px #08102099)}.map-overlay canvas{cursor:default;pointer-events:none}.context-strip{display:flex;align-items:center;gap:6px;flex-shrink:0;min-height:52px;padding:5px 8px;font-size:11px;line-height:1.5}.context-strip>span{flex:1;min-width:0}.context-strip button{flex-shrink:0;min-height:44px;padding:4px 8px;font-size:11px}.touch-mode{color:#f2d89c}.touch-warning{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#ffd3a0}.scene-messages{left:6px;right:6px;bottom:6px;gap:3px}.scene-message{padding:4px 7px;font-size:11px;line-height:1.5}.low-hp-alert{top:6px;bottom:auto;right:6px;padding:3px 6px;font-size:10px}.map-wrap.low-hp .map-label{visibility:hidden}.mobile-controls{flex-shrink:0;padding-top:9px;user-select:none;-webkit-user-select:none}.touch-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(152px,2.4fr) minmax(0,1fr);gap:7px;align-items:stretch}.touch-pad{display:grid;grid-template-columns:repeat(3,minmax(44px,1fr));grid-template-rows:repeat(3,minmax(44px,1fr));gap:4px;aspect-ratio:1;padding:5px;border:1px solid #7c9069;border-radius:9px;background:#14261d;box-shadow:inset 0 0 0 2px #c8d5a915}.touch-pad button{padding:0;border:1px solid #617758;border-radius:7px;background:#283e30;font:23px/1 system-ui;color:#e0e7ce;touch-action:manipulation}.touch-pad button.selected{border-color:var(--gold);background:#6b603c;box-shadow:inset 0 0 0 1px #ddc18a55}.touch-pad .touch-facing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#1c3027;color:var(--gold);line-height:1}.touch-facing .facing-dot{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f9eac1,#bfb17f);box-shadow:0 0 9px #e8d39355}.touch-facing small{font-size:9px}.touch-facing.selected .facing-dot{box-shadow:0 0 14px #f4d992aa}.touch-actions{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(44px,1fr));gap:5px}.touch-actions button{min-width:0;padding:4px 1px;border-radius:7px;font-size:12px;letter-spacing:0;line-height:1.5;position:relative}.touch-actions button small{display:block;font-size:10px;color:var(--muted)}.foot-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin:0 0 2px 5px;background:var(--gold)}.touch-tools{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(44px,1fr));gap:5px;margin:0}.touch-tools button{min-height:44px;border:1px solid var(--line);border-radius:6px;background:#1c3025;color:#b4c1a6;font-size:11px;padding:5px 2px}.touch-tools button[aria-pressed=true],.touch-tools .stair-ready{border-color:#b7b77e;color:#efdcaa;background:#454c31}.toast{top:calc(54px + env(safe-area-inset-top,0px));bottom:auto;padding:9px 13px;width:max-content;max-width:calc(100vw - 24px);font-size:12px}.modal-shade{padding:max(8px,env(safe-area-inset-top,0px)) max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}.dialog,.dialog.narrow{display:flex;flex-direction:column;width:100%;max-height:100%;overflow:hidden;border-radius:9px}.dialog-header{flex-shrink:0;padding:9px 12px;gap:8px;min-height:64px}.dialog-header h2{font-size:19px;line-height:1.4}.dialog-header p{font-size:10px;line-height:1.5;margin-top:3px}.close-btn{flex-shrink:0;width:44px;height:44px;font-size:23px}.dialog-body{padding:14px;min-height:0;overflow:auto;overscroll-behavior:contain}.dialog-body p{font-size:12px;line-height:1.85;overflow-wrap:anywhere}.dialog-footer{flex-shrink:0;padding:9px 12px;gap:8px}.dialog-footer button{min-height:44px;font-size:12px;padding:7px 10px}.dialog kbd,.help-grid .keyboard-help{display:none}.dialog .secondary,.dialog .quiet-btn,.dialog .primary,.dialog .danger-btn{min-height:44px}.dialog button{min-width:44px}.inventory-layout{display:flex;flex-direction:column;min-height:0}.inventory-list{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:52px;gap:4px;overflow:visible;max-height:none;padding:8px 9px 4px;border:0;min-height:344px}.inventory-row{position:relative;display:flex;flex-direction:row;align-items:center;gap:9px;margin:0;padding:4px 10px;border-color:#40523c;text-align:left;min-width:0}.inventory-row[data-mobile-hidden=true]{display:none}.inventory-list>.empty{padding:12px 8px;grid-column:1/-1}.inventory-row canvas{width:28px;height:28px;flex-shrink:0}.inventory-row>span:not(.equipped){min-width:0;flex:1}.inventory-row strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.inventory-row small{display:block;font-size:9px}.inventory-row .equipped{position:static;flex-shrink:0;margin:0;font-size:9px}.inventory-row:after{content:"›";color:var(--muted);font-size:20px}.inventory-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 9px 6px;font-size:11px;color:var(--muted)}.inventory-pagination button{padding:3px 12px}.item-detail{padding:14px;min-height:0;display:block}.inventory-layout>.item-detail,.inventory-layout>.empty{display:none}.item-detail>canvas{width:40px;height:40px;float:left;margin:0 10px 10px 0;padding:3px}.item-detail>p,.item-detail>.job-bonus{display:block;clear:both;font-size:12px;line-height:1.65;margin:7px 0}.item-detail>.job-bonus{font-size:11px}.item-detail>.tag{font-size:10px}.item-detail h3{font-size:18px;line-height:1.5;margin:5px 0 18px;color:var(--gold)}.item-actions{clear:both;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:12px 0 0;margin:0}.item-actions>.primary{grid-column:1/-1}.item-actions button{padding:5px;font-size:12px}.inventory-toolbar{padding:6px 10px 2px;flex-shrink:0}.inventory-toolbar button{padding:4px 10px;font-size:11px}.inventory-toolbar [data-action=item-up],.inventory-toolbar [data-action=item-down],.inventory-hint{display:none}.underfoot{flex-shrink:0;min-height:44px;padding:5px 10px;gap:6px;flex-wrap:nowrap;font-size:10px}.underfoot>canvas{display:none}.underfoot .tag{font-size:9px;padding:2px 5px;flex-shrink:0}.underfoot small{display:none}.underfoot>span:not(.tag):not(.underfoot-actions){flex:1;min-width:0}.underfoot strong{font-size:11px}.underfoot-actions{flex-basis:auto;gap:5px;margin:0}.underfoot-actions button{padding:4px 7px;font-size:11px}.dialog[data-panel=inventory]>.dialog-footer{display:none}.ground-item-heading{gap:10px;margin-bottom:9px}.ground-item-heading canvas{width:40px;height:40px}.ground-item-heading h3{font-size:18px;margin-top:4px}.dialog-body .ground-note{margin:10px 0;font-size:11px}.ground-actions{grid-template-columns:1fr 1fr;gap:6px}.ground-actions button{padding:7px 10px}.mobile-menu-grid{gap:8px}.mobile-menu-grid button{min-height:68px;font-size:13px;padding:10px 5px}.status-detail h3{font-size:17px;margin-bottom:8px}.status-detail .stat-pair{flex-wrap:wrap;padding-top:10px;margin-top:12px}.status-gear{margin:8px 0;padding:7px 0;gap:4px}.status-detail .status-gear{margin:6px 0;padding:3px 0;gap:3px}.journal-entries{gap:5px}.journal-entries button{min-height:44px;padding:7px;font-size:11px;line-height:1.5;margin:0}.journal-pages{margin-top:9px}.overview-large{padding:12px}.overview-large .overview-legend{padding:10px 3px;gap:14px;font-size:10px}.overview-large p{font-size:11px}.setting-row{margin:0 0 18px;gap:14px}.setting-row:last-of-type{margin-bottom:14px}.setting-row button{flex-shrink:0;padding:6px 12px}.relay-supplies{grid-template-columns:1fr 1fr;gap:7px;margin:14px 0}.relay-supplies button{padding:11px 8px;gap:7px;align-items:flex-start;font-size:12px}.relay-supplies canvas{width:27px;height:27px}.relay-supplies small{font-size:10px;margin-top:4px}.result-art{padding:5px 0 10px}.result-art canvas{width:55px;height:55px}.result-art h2{font-size:24px;margin-top:7px}.result-art p{margin-top:5px}.result-stats{margin:10px 0;padding:12px 0}.bestiary-tools{padding:8px 10px;gap:5px}.bestiary-filters button{min-height:44px;padding:5px 8px}.bestiary-hint{padding:5px 10px;font-size:10px}.bestiary-layout{flex:1;min-height:0;height:440px}.bestiary-list{flex-basis:115px;flex-shrink:0}.monster-detail{padding:12px;min-height:100px}.monster-heading{gap:9px}.monster-heading h3{font-size:19px}.monster-art{width:72px;height:72px}.monster-portrait.large{width:64px;height:64px}.monster-family>div{gap:5px}.monster-family-card{min-width:0;flex:1;padding:6px 3px;font-size:9px}.bestiary-footer-note{font-size:9px;max-width:165px}.shell[data-screen=title]{gap:0}.lobby{display:flex;flex-direction:column;flex:1;min-height:0;padding:5px 0 0;gap:10px}.lobby>section{flex:0 1 auto;min-height:0}.hero{min-height:0;height:clamp(95px,17dvh,155px);display:block}.hero-copy{padding:12px 15px}.hero .eyebrow{font-size:8px}.hero h1{font-size:25px;line-height:1.45;margin:5px 0}.hero p{display:none}.hero canvas{top:0;width:54%;height:100%;min-height:0;opacity:.65}.section-heading{margin:12px 0 8px}.section-heading h2{font-size:16px}.section-heading span{font-size:9px}.job-grid{gap:4px}.job-card{padding:8px 2px 6px}.job-card canvas{width:37px;height:37px;margin:0}.job-card strong{font-size:10px}.job-card small,.lobby-note,.record-mini,.lobby-footer{display:none}.lobby-side{display:flex;flex-direction:column;gap:9px;min-height:0}.departure{padding:12px 14px;display:grid;grid-template-columns:1fr auto;column-gap:10px;align-items:center;flex-shrink:0}.departure-top{grid-column:1/-1}.departure-top .eyebrow{font-size:9px}.departure-top .tag{font-size:8px}.departure h2{font-size:22px;margin:5px 0}.departure .subtitle{margin:0;font-size:10px}.departure .description{grid-column:1/-1;font-size:11px;line-height:1.75;min-height:0;margin:2px 0 5px}.departure hr,.departure .rule,.departure .micro{display:none}.departure .primary{grid-column:1/-1;min-height:44px;padding:9px 12px;margin-top:4px;font-size:13px}.continue-card{margin:0;padding:9px 13px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 8px}.continue-card h3{font-size:13px;margin:0}.continue-card p{font-size:10px;line-height:1.5;margin:0;grid-column:1}.continue-card button{grid-column:2;grid-row:1/3;width:auto;min-height:44px;padding:7px 9px;font-size:11px}.continue-card br{display:none}.dialog[data-panel=history] .record-mini{display:flex}}@media(max-width:620px)and (max-height:690px){.topbar{height:44px;min-height:44px}.mobile-status{padding-top:2px;padding-bottom:6px;row-gap:4px}.mobile-growth{min-height:60px}.mobile-controls{padding-top:6px}.context-strip{min-height:46px;font-size:10px;padding-block:2px}.scene-message{font-size:10px}.hero{height:90px}.hero h1{font-size:22px}.hero-copy{padding:8px 13px}.section-heading{margin:8px 0 6px}.lobby,.lobby-side{gap:7px}.departure{padding:9px 12px}.departure h2{font-size:20px}.continue-card{padding:7px 10px}.inventory-list{grid-auto-rows:44px;min-height:296px}.inventory-row canvas{width:25px;height:25px}.dialog-header{padding:7px 10px;min-height:58px}.dialog-body{padding:12px}.item-detail h3{font-size:14px}.inventory-toolbar{padding-top:4px}.underfoot{min-height:40px}.journal-entries button{padding:5px 7px}.bestiary-layout{height:310px}}.touch-pad button,.touch-tools [data-action=map],.touch-tools [data-action=wait]{touch-action:none;-webkit-touch-callout:none}#app button,#app button *,#app[data-pointer-active],#app[data-pointer-active] *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#app button img,#app button canvas{-webkit-user-drag:none}.map-hold-hint{display:block;width:100%;padding:11px 0;text-align:center;color:var(--gold);font-size:12px}.detail-navigation{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:8px;width:100%}.tap-feedback{position:fixed;pointer-events:none;z-index:100;border:2px solid #f8dfa5;border-radius:7px;background:#efda9c30;animation:tap-flash .18s ease-out both}@keyframes tap-flash{0%{opacity:1}to{opacity:0}}@media(max-width:620px){#app,#app *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.item-detail h3{margin-bottom:12px}.dialog[data-panel=item-actions] .dialog-footer{padding-top:8px;padding-bottom:8px}}.dungeon-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}.dungeon-picker button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:62px;text-align:left}.dungeon-picker small{font-size:11px;font-weight:400}.dungeon-picker .selected{border-color:var(--accent,#d6bf81);background:#647d493d}.middle-body{overflow-y:auto;min-height:0}.middle-list,.pot-contents{display:flex;flex-direction:column;gap:10px}.middle-choice{display:flex;align-items:center;gap:10px;min-height:52px;width:100%;padding:10px;text-align:left;flex-wrap:wrap}.middle-choice canvas,.middle-item-heading canvas{width:28px;height:28px;flex-shrink:0}.middle-choice span{flex:1;min-width:0;overflow-wrap:anywhere}.middle-choice b{margin-left:auto;white-space:nowrap}.middle-choice small{font-size:11px;font-weight:400}.middle-choice>span>strong,.middle-choice>span>small{display:block}.middle-choice>span>small{color:var(--muted);margin-top:3px;line-height:1.55}.service-body .middle-choice{flex-wrap:nowrap}.service-body .middle-choice>small{max-width:6em;line-height:1.4}.list-keyhelp{line-height:1.9;margin:10px 0}@media(max-width:620px){.list-keyhelp{display:none}.service-body .middle-choice{gap:8px}.service-body .middle-choice>small{max-width:4em}}.middle-choice.sold{color:#a2af9c;border:1px dashed #66805a;border-radius:6px;justify-content:center}.middle-pages,.shop-tabs,.pot-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:12px 0}.middle-pages button,.shop-tabs button,.pot-actions button{min-height:44px}.shop-tabs button{flex:1;padding:8px 4px}.shop-tabs [aria-pressed=true]{background:#71895e55;border-color:#b7c59f}.shop-wallet{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.shop-wallet strong{color:#ead697;font-size:21px}.shop-wallet small{width:100%;font-size:11px}.pot-row{padding:12px;border:1px solid #69815c66;border-radius:8px;background:#243a2c44}.middle-item-heading{display:flex;align-items:center;gap:10px}.pot-row p{font-size:12px;margin:8px 0;line-height:1.6}.pot-actions button{flex:1;white-space:normal}.pot-actions small{display:block;font-size:10px}.pot-capacity,.gold-summary{font-size:12px;line-height:1.8}.pot-command-list{display:grid;gap:8px;margin:14px 0}.pot-command-list button{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;text-align:left}.pot-command-list small{font-size:11px;font-weight:400}.pot-content{flex-wrap:nowrap}.pot-content strong{display:block;font-size:13px}.pot-content small{max-width:96px;color:var(--muted);text-align:right}.pot-empty-slot{min-height:44px;display:flex;align-items:center;justify-content:center;border:1px dashed #69815c66;border-radius:5px;color:var(--muted);font-size:12px}.pot-note{margin:10px 0}.pot-capacity{margin:0 0 12px;color:var(--gold)}.dialog[data-panel=item-actions]>.item-detail:has(.pot-capacity){min-height:0}@media(min-width:621px){.dialog[data-panel=inventory]{display:flex;flex-direction:column;overflow:hidden}.dialog[data-panel=inventory]>.dialog-header,.dialog[data-panel=inventory]>.dialog-footer{flex-shrink:0}.dialog[data-panel=inventory]>.inventory-layout{overflow:auto;min-height:0}.dialog[data-panel=inventory]:has(.pot-capacity) button{min-width:44px;min-height:44px}}@media(max-width:620px){.middle-body{max-height:calc(100dvh - 164px)}.dungeon-picker{gap:6px}.dungeon-picker button{padding:10px}.middle-choice{min-height:54px}.pot-actions{gap:6px}.pot-actions button{padding:8px 6px}.pot-row{padding:10px}}.dialog:has(.middle-body){display:flex;flex-direction:column;overflow:hidden}.dialog:has(.middle-body)>.dialog-header,.dialog:has(.middle-body)>.dialog-footer{flex-shrink:0}.dialog>.middle-body{overflow:auto;min-height:0;flex:1}.dialog:is([data-panel=pot],[data-panel=pot-item],[data-panel=pot-insert-picker],[data-panel=shop],[data-panel=identify-picker],[data-panel=middle-confirm]) button{min-width:44px;min-height:44px}@media(max-width:620px){.lobby:has(.dungeon-picker)>section{flex-shrink:0}.dungeon-picker{gap:6px;margin-bottom:6px}.dungeon-picker button{padding:4px 8px;min-height:48px;line-height:1.25}.dungeon-picker strong{font-size:12px}.dungeon-picker small{font-size:9px;margin-top:2px}}@media(max-width:620px)and (max-height:680px){.lobby:has(.dungeon-picker) .hero{height:80px}.lobby:has(.dungeon-picker) .hero-copy{padding-top:5px}.lobby:has(.dungeon-picker) .hero h1{line-height:1.3}}.dialog[data-panel=relay] button{min-height:44px;min-width:44px}.unidentified-item{color:#f5d55e}.synthesized-item{color:#8ddbe9}.item-knowledge{display:inline-block;margin-left:.6em;font-size:.7em}.equipment-marks{margin:12px 0;color:var(--muted)}.equipment-marks p{display:flex;align-items:baseline;gap:10px;margin:0}.equipment-marks strong{color:#e5d7b2;letter-spacing:.02em;font-weight:500;overflow-wrap:anywhere}.equipment-marks details{font-size:.8rem;margin-top:5px}.equipment-marks summary{cursor:pointer;width:fit-content;padding:6px 0}.equipment-marks ul{list-style:none;padding:0;margin:4px 0;line-height:1.8}.pot-list-tools{display:flex;gap:8px;margin-bottom:10px}.pot-list-tools button{flex:1}.middle-choice:is([data-pot-select],[data-shop-select]){transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease}.middle-choice:is([data-pot-select],[data-shop-select])[aria-pressed=true]{border-color:#e1c777;background:#51492e;box-shadow:inset 3px 0 #f5d55e}.pot-selection-note{font-size:12px;line-height:1.6;margin:0 0 10px;color:#f5d55e}@media(prefers-reduced-motion:reduce){.middle-choice:is([data-pot-select],[data-shop-select]){transition:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.trap-symbol{color:#ffb18e;font-size:16px;line-height:10px}.dialog-footer:has(.shop-summary){flex-wrap:wrap}.shop-summary{flex:0 0 100%;grid-column:1 / -1;display:grid;gap:4px;font-size:12px;color:var(--gold)}.shop-summary span{color:#ffcfaa;font-size:11px;line-height:1.5}.shop-confirm-items{padding-left:20px;margin-top:14px;font-size:13px;line-height:1.9;overflow-wrap:anywhere}.village-lobby{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:28px;padding:32px 0}.village-lobby .hero{min-height:340px}.village-resume{align-self:center;border:1px solid var(--line);padding:25px;background:#21372f;border-radius:8px}.village-resume h2{font-size:23px;color:var(--gold);margin-bottom:14px}.village-resume p{font-size:13px;line-height:1.9;margin:14px 0}.village-resume button{min-height:44px}.village-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0}.village-heading h2{font-size:25px;margin:3px 0}.village-purse{text-align:right}.village-purse strong,.village-purse small{display:block}.village-purse strong{font:600 21px/1.5 system-ui;color:var(--gold)}.village-purse small{font-size:12px;color:var(--muted)}.village-map{aspect-ratio:78/49;min-height:310px;max-height:none;height:auto}.village-map .map-overlay{width:76px;max-width:17%;aspect-ratio:13/11;opacity:.7;left:6px;top:6px}.village-context{display:flex;justify-content:space-between;align-items:center;gap:8px}.village-context button{min-height:44px;flex-shrink:0}.village-sidebar h3{color:var(--gold);margin-bottom:12px}.village-sidebar p{font-size:12px;line-height:1.9;margin-bottom:16px}.village-time-note{text-align:center;font-size:12px;color:var(--muted);margin:12px 0}.bank-balances{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.bank-balances div{border:1px solid var(--line);padding:14px;font-size:12px}.bank-balances strong{display:block;color:var(--gold);font:600 22px/1.6 system-ui}.bank-input-label{display:block;margin:20px 0 8px;font-size:13px}#bank-amount{display:block;width:100%;box-sizing:border-box;min-height:48px;padding:10px 14px;font:20px system-ui;color:#f2e6c1;background:#162b23;border:1px solid #97a17b;border-radius:5px;-webkit-user-select:text;user-select:text;touch-action:manipulation}.bank-shortcuts{display:flex;gap:8px;margin:12px 0}.bank-shortcuts button{flex:1;min-height:44px}.village-error{color:#ffbaa0;background:#62372c40;padding:10px;border:1px solid #aa7763}.village-jobs,.village-supplies{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.village-jobs button,.village-supplies button{min-height:56px;text-align:left;padding:10px;display:flex;align-items:center;gap:8px}.village-jobs button{display:block}.village-jobs small{display:block;font-size:10px;line-height:1.5;margin-top:4px}.village-supplies canvas{width:24px;height:24px;flex-shrink:0}.village-supplies span{font-size:12px}.village-jobs [aria-pressed=true],.village-supplies [aria-pressed=true],.shop-tabs [aria-pressed=true]{border-color:#e3c88f;background:#5d6542;color:#fff0c5}.middle-choice[data-warehouse-select][aria-pressed=true]{border-color:#d8c089;background:#56633e}.middle-choice[data-warehouse-select][aria-pressed=true]:after{content:"✓";color:var(--gold);font-size:20px}.dialog[data-panel^=village] button,.dialog[data-panel=warehouse] button,.dialog[data-panel=bank] button,.dialog[data-panel=forge] button{min-height:44px}.village-receipt-art{text-align:center;color:var(--gold);font-size:54px;margin:5px 0 18px;animation:village-spark .6s ease-out}.village-receipt-art+p{font-size:16px;text-align:center}@keyframes village-spark{0%{transform:scale(.6);opacity:.25}70%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}@media(max-width:850px){.village-lobby{grid-template-columns:1fr}.village-lobby .hero{min-height:230px}.village-sidebar .control-actions{width:100%}.village-map{min-height:320px}}@media(max-width:620px){.village-lobby{display:block;overflow:auto;padding:5px 0 18px;min-height:0}.village-lobby .hero{min-height:150px;margin-bottom:14px}.village-lobby .hero h1{font-size:26px}.village-lobby .hero-copy{padding:20px}.village-resume{padding:18px}.village-resume h2{font-size:19px}.village-heading{margin:2px 4px 7px;flex-shrink:0}.village-heading .eyebrow{font-size:7px}.village-heading h2{font-size:20px;margin:1px 0}.village-purse strong{font-size:18px}.village-purse small{font-size:10px}.village-layout .village-sidebar{display:none}.village-map{min-height:0;max-height:none;aspect-ratio:auto}.village-map .map-overlay{width:47px;max-width:16%;opacity:.55}.village-time-note{margin:5px 0 0;font-size:9px;flex-shrink:0}.village-context{min-height:48px;font-size:10px}.bank-balances{margin-bottom:10px;gap:7px}.bank-balances div{padding:9px}.bank-balances strong{font-size:19px}.bank-input-label{margin-top:10px}.bank-shortcuts{gap:6px}.bank-shortcuts button{padding:6px}.village-jobs{gap:6px}.village-jobs button{min-height:54px;padding:8px}.dialog[data-panel=warehouse] .middle-choice{min-height:51px}.village-gate-body p{margin-bottom:10px}}@media(prefers-reduced-motion:reduce){.village-receipt-art{animation:none}}.dialog:is([data-panel=map],[data-panel^=village],[data-panel=warehouse],[data-panel=bank],[data-panel=forge]){display:flex;flex-direction:column;overflow:hidden}.dialog:is([data-panel=map],[data-panel^=village],[data-panel=warehouse],[data-panel=bank],[data-panel=forge])>.dialog-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}.dialog:is([data-panel=map],[data-panel^=village],[data-panel=warehouse],[data-panel=bank],[data-panel=forge])>:is(.dialog-header,.dialog-footer){flex-shrink:0}.dialog.village-dialogue{position:fixed;z-index:110;left:50%;bottom:max(20px,env(safe-area-inset-bottom,0px));transform:translate(-50%);width:min(780px,calc(100vw - 40px));max-height:46dvh;margin:0;background:#11251ff5;border:2px solid #d7c79f;outline:3px solid #15271f;border-radius:8px;box-shadow:0 7px 28px #08181288;color:#f2e6c6;display:flex;flex-direction:column;overflow:hidden}.village-dialogue .dialogue-speaker{display:flex;align-items:center;gap:12px;padding:9px 18px 0;flex-shrink:0}.dialogue-speaker canvas{width:54px;height:54px;image-rendering:pixelated}.dialogue-speaker h2{font-size:18px;flex:1;margin:0;color:#e8cc91}.dialogue-speaker button{min-width:44px;min-height:44px;font-size:20px;padding:4px;border-color:transparent}.village-dialogue .dialog-body{padding:3px 24px 4px;min-height:84px;overflow:auto}.village-dialogue .dialogue-text{font:17px/1.9 system-ui,sans-serif;letter-spacing:.07em;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;min-height:65px}.village-dialogue .dialog-footer{padding:6px 18px 12px;display:flex;justify-content:space-between;align-items:center;border-top:0;flex-shrink:0}.village-dialogue .dialog-footer small{font-size:11px;color:#b8bd9f}.village-dialogue .dialog-footer button{min-height:44px;min-width:112px;color:#f4deb0;border-color:#91a082;background:#243c30}.village-dialogue .dialog-footer span{margin-left:10px;color:#e9c78d}@media(max-width:620px){.dialog.village-dialogue{width:calc(100vw - 20px);bottom:max(10px,env(safe-area-inset-bottom,0px));max-height:48dvh}.village-dialogue .dialogue-speaker{gap:8px;padding:5px 10px 0}.dialogue-speaker canvas{width:42px;height:42px}.dialogue-speaker h2{font-size:15px}.village-dialogue .dialog-body{padding:4px 14px;min-height:88px}.village-dialogue .dialogue-text{font-size:15px;line-height:1.85;min-height:80px}.village-dialogue .dialog-footer{padding:4px 10px 8px}}.village-map .map-overlay{aspect-ratio:auto}.village-arrival{position:absolute;z-index:5;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:12px;padding:10px 12px;background:#1b2929e8;border:1px solid #b7a57a80;border-radius:6px;color:#f0dfb7}.village-arrival p{flex:1;margin:0;font-size:13px;line-height:1.7}.village-arrival button{flex:none;min-height:44px}@media(max-width:620px){.village-arrival{left:6px;right:6px;bottom:6px;padding:8px;gap:6px}.village-arrival p{font-size:11px}}.village-map:has(.village-arrival[data-arrival=wake]) .map-overlay{visibility:hidden}@media(min-width:621px){.shell[data-screen=game]{height:100dvh;min-height:520px;display:flex;flex-direction:column;padding:0 clamp(12px,2vw,30px) 8px}.shell[data-screen=game]>.topbar{height:60px;flex-shrink:0}.shell[data-screen=game]>.warning-banner{flex-shrink:0;max-height:72px;overflow:auto;margin:5px 0;padding:6px 10px}.shell[data-screen=game]>.adventure-header{height:58px;flex-shrink:0}.shell[data-screen=game]>.village-heading{flex-shrink:0;margin:8px 0}.shell[data-screen=game]>.game-layout{flex:1;min-height:0;align-items:stretch;gap:14px;grid-template-columns:minmax(0,1fr) 278px}.shell[data-screen=game] .game-main{display:flex;flex-direction:column;min-width:0;min-height:0}.shell[data-screen=game] .map-panel{flex:1;min-height:0;display:flex;flex-direction:column}.shell[data-screen=game] .map-wrap{flex:1;min-height:0;max-height:none;aspect-ratio:auto;height:auto}.shell[data-screen=game] .map-wrap>#dungeon{position:absolute;inset:0}.shell[data-screen=game] .map-legend{flex-shrink:0;padding:4px 12px}.shell[data-screen=game] .context-strip{flex-shrink:0;max-height:22dvh;overflow:auto;padding:6px 12px}.shell[data-screen=game] .quickbar{flex-shrink:0;flex-wrap:nowrap;margin:6px 0}.shell[data-screen=game] .quick-item{flex:1;gap:5px;padding:5px 8px}.shell[data-screen=game] .log-panel{flex-shrink:0}.shell[data-screen=game] .log-title{padding:3px 12px;align-items:center}.shell[data-screen=game] .log-title .text-btn{font-size:10px;padding:0}.shell[data-screen=game] .logs{height:56px}.shell[data-screen=game]>.keyboard-strip{flex-shrink:0;margin:5px 0 0;gap:3px 8px;font-size:9px}.shell[data-screen=game]>.village-time-note{flex-shrink:0;margin:5px 0 0;font-size:10px}.shell[data-screen=game] .game-sidebar{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:auto;overscroll-behavior:contain}.shell[data-screen=game] .side-panel{margin:0;flex-shrink:0}.shell[data-screen=game] .panel-body{padding:10px 12px}.shell[data-screen=game] .overview-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.shell[data-screen=game] .overview-expand{padding:8px 4px;gap:4px;justify-content:center;white-space:nowrap;font-size:11px}.shell[data-screen=game] .overview-expand+.overview-expand{border-left:1px solid var(--line)}.shell[data-screen=game] .inspect-panel{flex:1;min-height:52px;max-height:180px;overflow:auto;overscroll-behavior:contain}.shell[data-screen=game] .inspect-panel .panel-body{padding:8px 12px}.shell[data-screen=game] .panel-label{margin-bottom:4px}.shell[data-screen=game] .control-layout{flex-direction:row;flex-wrap:nowrap;gap:10px}.shell[data-screen=game] .control-pad{grid-template-columns:repeat(3,34px);gap:3px}.shell[data-screen=game] .control-pad button{width:34px;height:34px}.shell[data-screen=game] .control-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-width:0}.shell[data-screen=game] .control-actions button{min-height:34px;min-width:0;gap:2px;padding:3px 4px;white-space:normal;font-size:10px;line-height:1.3;display:block}.shell[data-screen=game] .control-actions [data-action=face-mode] span{display:block;font-size:9px}.shell[data-screen=game] .control-actions kbd{display:none}.shell[data-screen=game] .controls-hint{margin-top:6px;font-size:9px}.shell[data-screen=game] .game-sidebar:not(.village-sidebar) .controls-hint{display:none}.shell[data-screen=game] .shell[data-screen=game] .shell[data-screen=game] .village-sidebar .control-actions{grid-template-columns:1fr;width:auto}.shell[data-screen=game] .shell[data-screen=game] .village-sidebar p,.shell[data-screen=game] .village-sidebar h3{margin-bottom:8px}.shell[data-screen=game] .village-sidebar [data-action=map]{margin-top:8px;padding:8px}.dialog:has(>.dialog-body){display:flex;flex-direction:column;overflow:hidden}.dialog>.dialog-body{min-height:0;overflow:auto;overscroll-behavior:contain}.dialog>:is(.dialog-header,.dialog-footer){flex-shrink:0}}@media(min-width:621px)and (max-height:760px){.shell[data-screen=game]>.topbar{height:52px}.shell[data-screen=game]>.adventure-header{height:48px}.shell[data-screen=game]>.village-heading{margin:5px 0}.shell[data-screen=game] .village-heading h2{font-size:22px;margin:0}.shell[data-screen=game] .character-line .portrait{width:32px;height:32px}.shell[data-screen=game] .character-line strong{font-size:13px}.shell[data-screen=game] .character-line .level{font-size:22px;line-height:1.3}.shell[data-screen=game] .character-line>div>small,.shell[data-screen=game] .gear-row{display:none}.shell[data-screen=game] .meter-row{margin:5px 0 2px;line-height:1.3}.shell[data-screen=game] .stat-pair{margin-top:7px;padding-top:6px;font-size:10px;gap:4px;white-space:nowrap}.shell[data-screen=game] .stat-pair b{margin-left:4px}.shell[data-screen=game] .game-sidebar:not(.village-sidebar)>.side-panel:last-child .panel-label{display:none}.shell[data-screen=game] .logs{height:36px}.shell[data-screen=game] .game-sidebar{gap:6px}}@media(min-width:621px)and (max-width:850px){.shell[data-screen=game]>.game-layout{grid-template-columns:minmax(0,1fr) 250px;gap:10px}.shell[data-screen=game] .header-actions{gap:5px}.shell[data-screen=game] .header-actions .version{display:none}.shell[data-screen=game] .quiet-btn{padding:6px 8px}.shell[data-screen=game] .quick-item{padding:5px;flex-wrap:wrap}.shell[data-screen=game] .quick-item span{font-size:10px}}.dialogue-backdrop{position:fixed;inset:0;z-index:110}.turn-indicator .wallet-summary,.turn-indicator .wallet-summary strong{color:var(--gold);white-space:nowrap}.inspect-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:0;background:none;border:0;text-align:left}.inspect-toggle[aria-pressed=true]{color:var(--gold)}.village-sidebar .panel-label{font-size:10px;margin:0 0 9px;line-height:1.5}.item-discard{width:100%;display:grid;gap:4px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.item-discard button{width:100%;color:#cfa48e;padding:9px}.item-discard small{font-size:10px;color:var(--muted);line-height:1.6}.warehouse-source{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0}.warehouse-source [aria-pressed=true]{background:#435238;border-color:var(--gold);color:var(--gold)}@media(max-width:620px){.item-discard{clear:both;margin-top:12px;padding-top:10px}.shell>.keyboard-strip{display:none}}.monster-family>div.extended-family{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.extended-family>.family-arrow{display:none}.extended-family>.monster-family-card{min-width:0;padding:8px 3px;min-height:96px}.extended-family>.monster-family-card small{font-size:9px;color:var(--muted)}.warehouse-body .warehouse-counts{margin-bottom:8px}.warehouse-keyhelp{line-height:1.9;border-bottom:1px solid var(--line);padding-bottom:10px}.middle-choice[data-warehouse-select]:focus-visible{outline:2px solid var(--gold);outline-offset:1px;background-color:#46553c}@media(max-width:620px){.warehouse-keyhelp{display:none}}.warehouse-body .middle-choice small:not(:empty){margin-left:8px}.warehouse-body .shop-tabs,.warehouse-body .middle-pages{margin:8px 0}.warehouse-body .middle-list{gap:5px}.warehouse-body>p:last-child:not(.village-error){margin-bottom:0}.dialog .dialog-close{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;max-width:44px;max-height:44px;padding:0;line-height:1;font-size:23px}.dialog-close span{line-height:1;pointer-events:none}.bank-amount-row{display:grid;grid-template-columns:66px minmax(0,1fr) 66px;gap:8px;align-items:stretch}.bank-amount-row #bank-amount{min-width:0;text-align:right}.bank-amount-row button{padding:5px;font-size:12px}@media(max-width:620px){.bank-key-hint{display:none}}.bank-preview{min-height:2.8em;font-size:12px;line-height:1.6;color:var(--gold);margin:12px 0}.warehouse-sort{margin:8px 0}@media(max-width:620px){.shell[data-screen=game]>.mobile-status+.village-heading .eyebrow,.shell[data-screen=game]>.mobile-status+.village-heading small{display:none}.shell[data-screen=game]>.mobile-status+.village-heading{margin:0 4px 4px}.shell[data-screen=game]>.mobile-status+.village-heading h2{font-size:17px}.bank-amount-row{gap:5px;grid-template-columns:56px minmax(0,1fr) 56px}.bank-body .micro{font-size:10px;line-height:1.8}}.trial-notice{margin:8px 0;padding:8px 12px;border:1px solid #b9a86b;border-radius:6px;color:#dbc995;font-size:12px;line-height:1.6}.pot-note{overflow-wrap:anywhere}.history-table td{vertical-align:top}.material-trial-heading,.material-trial-choices,.material-trial-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.material-trial-heading{justify-content:space-between}.material-trial-heading strong{font-size:15px}.material-trial-heading small{font-size:11px}.material-trial-choices{margin-top:6px}.material-trial-choices a{display:inline-flex;justify-content:center;align-items:center;min-width:48px;min-height:36px;padding:4px 12px;border:1px solid #6c805e;color:#dbc995;text-decoration:none;border-radius:3px;box-sizing:border-box}.material-trial-choices a[aria-current=page]{background:#dbc995;color:#18352b;border-color:#dbc995;font-weight:700}.material-trial p{margin:6px 0}.material-trial-actions a{color:#dbc995;padding:6px 2px;text-underline-offset:3px}.material-trial-actions button{font-size:12px;min-height:36px;padding:5px 10px}.final-route-trial{flex-shrink:0}.final-route-trial p{margin:4px 0}.final-route-trial details{margin-top:4px}.final-route-trial summary{cursor:pointer}.final-route-trial .material-trial-actions{margin-top:6px}.final-route-trial{padding:0}.final-trial-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:6px 10px;border:0;border-radius:5px;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.final-trial-toggle strong{flex:1;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.final-trial-toggle small{font-size:10px;white-space:nowrap}.final-trial-toggle>span{font-size:11px;white-space:nowrap}.final-trial-toggle[aria-expanded=true]{border-bottom:1px solid #b9a86b66;border-radius:5px 5px 0 0}.final-trial-body{padding:8px 12px}.final-trial-body[hidden]{display:none}@media(max-width:620px){.final-trial-body{max-height:clamp(80px,calc(100dvh - 600px),230px);overflow-y:auto;overscroll-behavior:contain;padding:6px 10px}.final-trial-toggle{gap:7px}.final-trial-toggle strong{font-size:12px}}@media(min-width:960px){.material-trial{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:4px 16px;flex-shrink:0}.material-trial-heading{grid-column:1/-1}.material-trial-choices{grid-column:1;grid-row:2;margin:0}.material-trial-actions{grid-column:2;grid-row:2}.material-trial p{grid-column:1/-1;grid-row:3;margin:0}}@media(max-width:620px){.material-trial{padding:8px 10px}.material-trial-choices{gap:5px}.material-trial-choices a{flex:1;min-width:40px;min-height:40px;padding:4px 6px}.material-trial-actions{gap:6px}.material-trial-actions a,.material-trial-actions button{min-height:40px;display:inline-flex;align-items:center}}.dialog[data-panel=shop]{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 24px)}.dialog[data-panel=shop]>.dialog-body{flex:1;min-height:0;overflow:hidden;padding:12px 20px}.dialog[data-panel=shop]>.dialog-header,.dialog[data-panel=shop]>.dialog-footer{flex-shrink:0;padding:12px 20px}.dialog[data-panel=shop] .shop-wallet{margin:0 0 6px;flex-wrap:nowrap;justify-content:space-between;font-size:12px}.dialog[data-panel=shop] .shop-wallet small{width:auto;margin-left:auto}.dialog[data-panel=shop] .shop-tabs{margin:6px 0;flex-wrap:nowrap;gap:6px}.dialog[data-panel=shop] .shop-description{margin:8px 0;font-size:11px;line-height:1.6;min-height:36px}.dialog[data-panel=shop] .list-keyhelp{font-size:10px;line-height:1.5;margin:4px 0 8px}.dialog[data-panel=shop] .middle-list{gap:6px}.dialog[data-panel=shop] .middle-choice{min-height:48px;height:48px;padding:6px 10px;gap:8px;margin:0}.dialog[data-panel=shop] .middle-choice>span{min-width:0}.dialog[data-panel=shop] .middle-choice strong{font-size:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dialog[data-panel=shop] .middle-choice>small{flex:0 0 4em;font-size:10px;line-height:1.3}.dialog[data-panel=shop] .middle-choice>b{font:600 12px/1.3 system-ui;flex-shrink:0;min-width:4em;text-align:right}.dialog[data-panel=shop] .middle-choice canvas{width:24px;height:24px;flex-shrink:0}.dialog[data-panel=shop] .middle-pages{margin:8px 0 0;flex-wrap:nowrap}.dialog[data-panel=shop] .shop-message{height:30px;margin:6px 0 0;font-size:10px;line-height:15px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dialog[data-panel=shop] .shop-summary{font-size:12px;gap:2px}.wrist-choice{text-align:left;display:flex;flex-direction:column;gap:4px}.wrist-choice small{font-size:10px;font-weight:400;line-height:1.5;color:var(--muted)}.forge-result{text-align:center;background:radial-gradient(ellipse at 50% 22%,#8b672b35,transparent 60%)}.forge-result h3{color:var(--gold);font-size:22px;margin:10px 0}.forge-result-art{position:relative;width:128px;height:116px;margin:8px auto 0;display:grid;place-items:center}.forge-result-art canvas{width:96px;height:96px;image-rendering:pixelated;animation:forge-glow .8s ease-out}.forge-result-art i{position:absolute;inset:0;border:2px solid #e4c884;border-radius:50%;opacity:0;animation:forge-ring .75s ease-out}.forge-hammer{position:absolute;width:64px;height:64px;right:-2px;top:-8px;transform-origin:80% 80%;animation:forge-strike .7s ease-out}.forge-change{display:flex;align-items:center;justify-content:center;gap:24px;font:500 36px/1.5 system-ui;margin:4px 0 12px}.forge-change>span{color:var(--muted)}.forge-change>b{font-size:22px;color:var(--gold)}.forge-change>strong{color:#f5dc8e;font-size:52px;animation:forge-number .8s ease-out}.forge-gain{font-size:20px!important;font-weight:700;color:#d4e4a9}.forge-gain small{display:block;font-size:13px;font-weight:400;color:var(--muted)}.forge-result.great{background:radial-gradient(ellipse at 50% 22%,#b17d354d,transparent 70%)}@keyframes forge-strike{0%{transform:rotate(38deg) translateY(-6px)}30%{transform:rotate(-16deg) translateY(5px)}48%{transform:rotate(20deg)}65%{transform:rotate(-12deg) translateY(5px)}to{transform:rotate(0)}}@keyframes forge-ring{0%,28%{transform:scale(.35);opacity:0}32%{opacity:.9}to{transform:scale(1.5);opacity:0}}@keyframes forge-glow{0%,28%{filter:none}35%{filter:brightness(1.7)}to{filter:none}}@keyframes forge-number{0%,30%{transform:scale(.8);opacity:.4}65%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}@media(max-height:570px){.dialog[data-panel=shop] .list-keyhelp,.dialog[data-panel=shop] .shop-message{display:none}.dialog[data-panel=shop] .dialog-header{padding:6px 12px;min-height:0}.dialog[data-panel=shop] .dialog-header h2{font-size:18px}.dialog[data-panel=shop]>.dialog-body{padding:6px 12px}.dialog[data-panel=shop] .shop-description{min-height:0;margin:4px 0;font-size:10px}.dialog[data-panel=shop]>.dialog-footer{padding:6px 12px}}@media(prefers-reduced-motion:reduce){.forge-result-art canvas,.forge-result-art i,.forge-hammer,.forge-change>strong{animation:none}}.reduced-motion .forge-result-art canvas,.reduced-motion .forge-result-art i,.reduced-motion .forge-hammer,.reduced-motion .forge-change>strong{animation:none}@media(max-height:450px){.dialog[data-panel=shop] .shop-description,.dialog[data-panel=shop] .dialog-header p{display:none}.dialog[data-panel=shop]>.dialog-body{padding-top:0;padding-bottom:0}.dialog[data-panel=shop] .shop-wallet{margin-bottom:0}.dialog[data-panel=shop] .middle-pages{margin-top:4px}}.item-name-label{display:block;margin:14px 0 8px;font-weight:700}#item-called-name{box-sizing:border-box;width:100%;min-height:48px;padding:10px 12px;border:1px solid #648473;border-radius:8px;background:#f9fbf5;color:#203e33;font:inherit}[data-panel=item-naming] .dialog-footer{flex-wrap:wrap}.pot-list-tools{display:flex;gap:8px;flex-wrap:wrap}[data-panel=ground-pot-picker] .middle-choice{width:100%;margin-bottom:8px}#item-name-help{margin-top:12px}.story-guide{display:flex;flex:0 0 auto;gap:10px;align-items:baseline;padding:10px 14px;border-top:1px solid #c3c48c55;background:#1d342a;color:#f1e8c8;font-size:13px;line-height:1.6}.story-guide strong{flex:none;color:#cfda9b;font-size:12px}.story-guide span{min-width:0;overflow-wrap:anywhere}@media(max-width:620px){.story-guide{padding:7px 9px;font-size:11px;gap:6px;line-height:1.5}.story-guide strong{display:none}}.village-map:has(.village-arrival)+.story-guide{visibility:hidden}#app:has(.village-dialogue) .story-guide,#app:has(.village-dialogue) .scene-messages{visibility:hidden}.village-map:has(.village-arrival[data-arrival=tent]) .map-overlay{visibility:hidden}.construction-body{padding:0 24px 22px}.construction-banner{margin:0 -24px 21px;padding:26px 24px 23px;background:linear-gradient(145deg,#3f6258,#253d39);border-bottom:1px solid #a3b98e55;position:relative;overflow:hidden}.construction-banner.summit{background:linear-gradient(155deg,#728d87,#3c625a 45%,#1f3832)}.construction-banner.summit:before{content:"";position:absolute;inset:0;opacity:.24;background:#d8dfc0;clip-path:polygon(46% 100%,72% 16%,82% 52%,91% 26%,100% 59%,100% 100%);pointer-events:none}.construction-banner>*{position:relative}.construction-banner h3{margin:7px 0 11px;color:#f4e8c9;font-size:25px;font-weight:500}.construction-banner p{margin:0;line-height:1.8;font-size:12px;max-width:340px;color:#d9e2c8}.construction-banner .eyebrow{font-size:9px;letter-spacing:.17em}.construction-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.construction-heading h3{margin:5px 0 15px;font-size:21px}.construction-heading>strong{font:34px Georgia,serif;color:#e4cf92}.construction-heading small{font:11px sans-serif;color:var(--muted)}.construction-steps{list-style:none;padding:0;margin:0 0 18px}.construction-steps li{display:flex;align-items:center;gap:12px;padding:15px 0;border-top:1px solid var(--line)}.construction-steps li:last-child{border-bottom:1px solid var(--line)}.construction-steps strong,.construction-steps small{display:block}.construction-steps strong{font-size:13px;font-weight:500}.construction-steps small{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.6}.build-step-number{flex:0 0 28px;height:28px;display:grid;place-items:center;border:1px solid #788462;border-radius:50%;color:#b0bc99}.build-state{margin-left:auto;flex:none;font-size:10px;color:var(--muted)}.reserved .build-step-number{border-color:#ceb66e;color:#f1d58e}.reserved .build-state{color:#e5cb8c}.built .build-step-number{background:#607b52;color:#f1e8ca;border-color:#92ad7b}.built .build-state{color:#b4d394}.construction-materials{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.construction-materials>div{display:flex;align-items:center;gap:10px;background:#192c22;padding:12px;border:1px solid var(--line);font-size:12px}.construction-materials canvas{width:32px;height:32px;image-rendering:pixelated}.construction-materials strong{display:block;font:25px Georgia,serif;color:#e9d59d;margin-top:2px}.construction-materials small{font:10px sans-serif;color:var(--muted)}.construction-summary{padding:12px 14px;background:#3d5338;line-height:1.8;font-size:13px;border-left:2px solid #a8bc7d}.construction-shortage{font-size:12px;color:#e9bb8f;line-height:1.7}.construction-body>.micro{line-height:1.8}@media(max-width:620px){.construction-body{padding:0 16px 15px}.construction-banner{margin:0 -16px 16px;padding:20px 16px}.construction-banner h3{font-size:22px}.construction-materials{gap:7px}.construction-materials>div{padding:10px 7px;gap:5px}.construction-materials small{font-size:9px}.construction-steps li{gap:9px;padding:12px 0}.construction-steps small{font-size:10px}.construction-summary{font-size:12px}}.dialog[data-panel=workshop]{width:min(990px,100%);display:flex;flex-direction:column;max-height:calc(100dvh - 40px)}[data-panel=workshop] .dialog-header,[data-panel=workshop] .dialog-footer{flex-shrink:0}[data-panel=workshop] .construction-body{overflow-y:auto;min-height:0;padding:0 24px 20px}.construction-intro{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 18px;border-bottom:1px solid var(--line);margin-bottom:20px}.construction-intro p{margin:0;font-size:13px}.construction-intro>span{flex:none;font-size:11px;color:#d7c997}.construction-workspace{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:25px;align-items:start}.construction-map{position:relative;isolation:isolate;border:2px solid #8b9b7166;border-radius:3px;overflow:hidden;background:#182b23;box-shadow:inset 0 0 0 1px #19271e,0 3px 12px #0003}.construction-map-land{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;image-rendering:pixelated}.map-building-label,.map-landmark-label{position:absolute;transform:translate(-50%,-50%);z-index:2;pointer-events:none;text-align:center;color:#f2e8c9;line-height:1.1;white-space:nowrap;text-shadow:1px 1px #15231c,-1px -1px #15231c,1px -1px #15231c,-1px 1px #15231c}.map-building-label{font-size:11px}.map-landmark-label{font-size:9px;color:#e4d8b1}.map-landmark-label span{display:block}.map-district-outlines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.map-district-outlines polygon{fill:transparent;stroke:#c5cba855;stroke-width:1;stroke-dasharray:3 4;vector-effect:non-scaling-stroke}.map-district-outlines polygon.selected{fill:#e2c78409;stroke:#e2c784;stroke-width:2;stroke-dasharray:none}.district-choice{position:absolute;z-index:3;padding:3px 0;border:0;border-radius:0;background:transparent;color:#ecedd1;display:flex;align-items:center;flex-direction:column;justify-content:flex-start;transition:background .15s}.district-choice:hover{background:#d7dc8c0c}.district-choice[aria-pressed=true]{background:transparent;box-shadow:none}.district-choice:focus-visible{outline:none;background:#f6ecc61c}.district-choice:focus-visible+.district-caption{outline:2px solid #fff4c7;outline-offset:1px}.district-caption{position:absolute;z-index:4;transform:translate(-50%,-50%);pointer-events:none;white-space:nowrap;display:flex;align-items:baseline;justify-content:center;gap:4px;padding:3px 4px;background:#25392bf2;border:1px solid #9b9e704d;box-shadow:0 1px #14271c;line-height:1.1}.district-caption.selected{background:#574f32;border-color:#e2c784;color:#fff0c7}.district-caption strong{font-size:12px;font-weight:500;white-space:nowrap}.district-progress{font:12px Georgia,serif;color:#f0d898;white-space:nowrap}.district-progress small{font:9px sans-serif;color:#cad1b2}.district-planned{position:absolute;left:50%;top:100%;transform:translate(-50%);background:#263e31ed;border:1px solid #d9bf7866;padding:2px 3px;font-size:9px;line-height:1.1;color:#eed391;margin-top:3px}.construction-map-note{font-size:11px!important;margin:14px 0 10px!important;color:#b5c3a5!important;line-height:1.8!important}.construction-detail{min-width:0}.construction-heading h3{margin:6px 0 13px}.construction-heading .eyebrow{font-size:9px;letter-spacing:.12em}.construction-heading>strong{font-size:29px}.construction-recipe-title{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;font-weight:500;margin:8px 0 9px}.construction-recipe-title small{font-size:10px;font-weight:400;color:var(--muted)}.construction-materials{grid-template-columns:1fr;gap:5px;margin-bottom:10px}.construction-materials>div{padding:7px 10px;gap:10px}.construction-materials strong{font-size:19px;display:inline-block;margin:0 0 0 12px}.construction-materials small{font-size:10px}.construction-materials>div>span{flex:1}.construction-materials b{font-size:11px;color:#b9d39a;font-weight:400}.construction-materials .missing{border-color:#b7866155;background:#3b3329}.construction-materials .missing strong,.construction-materials .missing b{color:#edb28d}.construction-summary{margin:11px 0 15px;font-size:12px!important;line-height:1.8!important;padding:10px 12px}.construction-summary.construction-shortage{background:#483b2c;border-color:#c79866;color:#f0cfab}.construction-steps{margin:0}.construction-steps li{gap:10px;padding:10px 0}.construction-steps strong{font-size:12px}.construction-steps small{font-size:10px;margin-top:3px}.build-step-number{flex-basis:24px;height:24px;font-size:11px}.build-state{font-size:9px}.construction-queue{border-top:1px solid var(--line);margin-top:14px;padding-top:13px;font-size:12px}.construction-queue summary{cursor:pointer;color:#e3c98b;line-height:1.8}.construction-queue summary>span{font-size:10px;color:var(--muted);margin-left:8px}.construction-queue ol{padding-left:22px;margin:10px 0 2px}.construction-queue li{padding:5px 0;color:#cbd4b9}.construction-queue li strong,.construction-queue li span{display:block;font-size:11px;font-weight:400;line-height:1.7}.construction-queue li span{color:var(--muted);font-size:10px}@media(max-width:720px){.dialog[data-panel=workshop]{max-height:calc(100dvh - 20px)}[data-panel=workshop] .construction-body{padding:0 16px 16px}.construction-intro{display:block;padding:10px 0 12px;margin-bottom:14px}.construction-intro p{font-size:12px}.construction-intro>span{display:block;margin-top:5px;font-size:10px}.construction-workspace{grid-template-columns:1fr;gap:18px}.district-choice{padding:2px 0}.district-caption strong{font-size:10px}.district-caption{gap:2px;padding:2px 3px}.district-progress{font-size:10px}.district-progress small{font-size:8px}.district-planned{font-size:8px;margin-top:2px}.map-building-label{font-size:9px}.map-landmark-label{font-size:8px}.construction-map-note{font-size:10px!important;margin:9px 0 0!important}.construction-queue{margin-top:9px;padding-top:8px}.construction-heading h3{font-size:20px}[data-panel=workshop] .dialog-footer{padding:12px 14px;gap:8px;justify-content:space-between}[data-panel=workshop] .dialog-footer button{font-size:12px;padding:11px 12px;min-height:44px;flex:1}}.construction-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#101d19;overflow:auto}.construction-cinematic{width:min(880px,100%);max-height:calc(100dvh - 40px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #b299685c;border-radius:12px;background:#1d2d26;color:#eadfc5;box-shadow:0 20px 70px #0006}.construction-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 24px;background:#1c2b24;border-bottom:1px solid #9c896441}.construction-top p{margin:0 0 5px;color:#c3b48c;font-size:12px;letter-spacing:.14em}.construction-top h2{margin:0;font-size:23px;line-height:1.4;letter-spacing:.05em}.construction-top>span{color:#bcbda5;text-align:right;font-size:12px;line-height:1.8;white-space:nowrap}.construction-view{position:relative;min-height:170px;height:clamp(200px,48dvh,440px);flex:1 1 auto;overflow:hidden;background:#354a35}#construction-canvas,#unlock-canvas,#raid-canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.construction-time{position:absolute;top:14px;left:18px;padding:5px 10px;border:1px solid #d8caa044;border-radius:4px;color:#f1e0b9;background:#17231dca;font-size:12px;letter-spacing:.08em;pointer-events:none}.construction-story{flex:none;min-height:92px;padding:18px 24px 12px;border-top:1px solid #b2986444;background:#1c2b24}.construction-story p{margin:0;color:#d3d2b9;font-size:14px;line-height:1.8}.construction-story .construction-finished{color:#d6b570;font-size:11px;letter-spacing:.18em}.construction-story h3{margin:5px 0 7px;font-size:22px;line-height:1.5;color:#f3e3b8}.construction-progress{height:2px;margin-top:17px;background:#66755744;overflow:hidden}.construction-progress i{display:block;height:100%;background:#d2b273}.construction-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 24px 18px;background:#1c2b24}.construction-footer small{font-size:11px;color:#a1ad93}.construction-footer button{min-height:44px;min-width:144px;padding:9px 18px;font-size:14px}@media(max-width:620px){.construction-backdrop{padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))}.construction-cinematic{max-height:calc(100dvh - 24px);border-radius:8px}.construction-top{padding:13px 15px;gap:8px}.construction-top h2{font-size:19px}.construction-top p{font-size:11px}.construction-view{height:clamp(210px,45dvh,390px)}.construction-time{top:10px;left:12px;font-size:11px}.construction-story{min-height:100px;padding:14px 15px 8px}.construction-story h3{font-size:19px}.construction-story p{font-size:13px}.construction-footer{padding:8px 15px 14px}}@media(max-height:520px){.construction-backdrop{padding:6px}.construction-cinematic{max-height:calc(100dvh - 12px)}.construction-top{padding:7px 15px}.construction-top h2{font-size:17px}.construction-top p{display:none}.construction-view{min-height:100px;height:35dvh}.construction-story{min-height:56px;padding:6px 15px}.construction-story h3{font-size:17px;margin:1px 0}.construction-story p{font-size:12px}.construction-progress{margin-top:7px}.construction-footer{padding:4px 15px 7px}.construction-footer button{min-height:36px}}.construction-footer .construction-sound{min-width:64px;color:#bec6ac;text-align:left;padding:9px 0;font-size:12px}.construction-footer .primary-btn{background:#cfb172;border:1px solid #e3ca92;color:#17271f;font-weight:700}@media(max-height:520px)and (min-width:621px){.construction-cinematic{height:calc(100dvh - 12px);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,1fr);grid-template-rows:auto 1fr auto}.construction-top{grid-column:1/-1}.construction-view{grid-column:1;grid-row:2/4;min-height:0;height:100%}.construction-story{grid-column:2;grid-row:2;border-top:0;align-self:center;padding:14px 18px}.construction-footer{grid-column:2;grid-row:3;padding:8px 18px 14px;flex-wrap:wrap}.construction-footer button{min-width:120px}.construction-footer .construction-sound{min-width:50px}}.construction-material-control{min-width:0;flex:1}.construction-material-control label{display:block;font-size:12px}.construction-material-control select{display:block;width:100%;min-width:0;max-width:100%;margin-top:5px;border:1px solid #597054;background:#17291f;color:#f0e6cd;padding:7px 5px;font:inherit;font-size:11px;border-radius:3px}.construction-stock-note{font-size:11px;line-height:1.8;color:var(--muted);margin:6px 0 12px}.construction-stock-note strong{display:block;color:#e6d3a0}.construction-material-row canvas{flex:none}.construction-material-control select:focus-visible{outline:2px solid #e7ca86;outline-offset:2px}.unlock-cinematic .construction-story{overflow:auto;min-height:110px}.unlock-speaker{color:var(--gold);font-weight:700;margin:0 0 6px}.unlock-cinematic [data-action=unlock-sound]{min-width:64px;padding-inline:0}.unlock-cinematic .construction-footer{flex-shrink:0}.dialog:is([data-panel=inventory],[data-panel=item-actions],[data-panel=ground],[data-panel=pot-item]){display:flex;flex-direction:column;overflow:hidden}.dialog:is([data-panel=inventory],[data-panel=item-actions],[data-panel=ground],[data-panel=pot-item])>.dialog-header,.dialog:is([data-panel=inventory],[data-panel=item-actions],[data-panel=ground],[data-panel=pot-item])>.dialog-footer{flex-shrink:0}.item-detail{display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:0;padding:0;overflow:hidden;flex:1 1 auto}.item-detail-heading{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.item-detail-heading>canvas{width:40px;height:40px;flex-shrink:0;image-rendering:pixelated;background:#2e422d;border:1px solid #597048;border-radius:5px;padding:3px}.item-detail-heading>div{min-width:0}.item-detail-heading .tag{font-size:9px}.item-detail-heading h3{font-size:18px;line-height:1.45;margin:4px 0 0;overflow-wrap:anywhere;color:var(--gold)}.item-copy{padding:12px 16px;min-height:60px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;flex:1 1 auto;outline-offset:-3px}.item-copy p{font-size:12px;line-height:1.75;margin:0;overflow-wrap:anywhere}.item-copy .item-facts{margin-top:9px;font-size:11px;color:var(--muted);line-height:1.6}.item-copy .job-bonus,.item-copy .pot-note,.item-copy .ground-note,.item-copy .micro,.item-copy .pot-capacity{margin-top:10px;font-size:11px;line-height:1.65}.item-explanation{margin-top:10px;border-top:1px solid var(--line)}.item-explanation summary{cursor:pointer;color:var(--gold);font-size:12px;line-height:1.5;padding:12px 0;min-height:44px;box-sizing:border-box}.item-explanation[open] summary{padding-bottom:8px}.item-explanation>p{color:#adb99f;font-size:11px;padding-bottom:4px}.item-detail>.item-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:12px 16px;clear:none;border-top:1px solid #60734e;background:#1d3025;flex:0 0 auto;max-height:calc(100% - 148px);min-height:56px;overflow:auto;overscroll-behavior:contain}.item-actions>button{min-width:0;min-height:44px;padding:8px;font-size:12px;line-height:1.4;overflow-wrap:anywhere}.item-actions>.primary{grid-column:1/-1}.item-actions .item-discard{grid-column:1/-1;margin:0;padding:8px 0 0}.item-actions .item-discard button{width:100%;min-height:44px}.dialog:is([data-panel=item-actions],[data-panel=ground],[data-panel=pot-item])>.item-detail{min-height:0}.dialog:is([data-panel=item-actions],[data-panel=ground],[data-panel=pot-item]){height:min(660px,calc(100dvh - 48px))}@media(min-width:621px){.dialog[data-panel=inventory]{height:min(700px,calc(100dvh - 48px))}.item-detail>.item-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.dialog[data-panel=inventory]>.inventory-layout{flex:1;min-height:0;overflow:hidden;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.dialog[data-panel=inventory] .inventory-list{min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain}.dialog[data-panel=inventory]>.dialog-header{padding:14px 20px}.dialog[data-panel=inventory]>.dialog-footer{padding:10px 20px}.dialog[data-panel=inventory] .inventory-hint{padding-top:4px;padding-bottom:8px}.dialog:is([data-panel=item-actions],[data-panel=ground],[data-panel=pot-item]){max-height:calc(100dvh - 48px)}}@media(max-width:620px){.inventory-layout>.item-detail{display:none}.dialog:is([data-panel=item-actions],[data-panel=ground],[data-panel=pot-item]){height:min(660px,calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)))}.item-detail-heading{padding:10px 12px;gap:10px}.item-detail-heading h3{font-size:17px;margin:3px 0 0}.item-copy{padding:10px 12px}.item-detail>.item-actions{padding:10px 12px;gap:7px}}@media(min-width:621px)and (max-height:600px){.dialog[data-panel=inventory]>.underfoot,.dialog[data-panel=inventory]>.inventory-hint{display:none}.dialog:is([data-panel=inventory],[data-panel=item-actions],[data-panel=ground],[data-panel=pot-item])>.dialog-header{padding:8px 12px}.dialog[data-panel=inventory]>.inventory-toolbar{padding:5px 12px}.dialog:is([data-panel=inventory],[data-panel=item-actions],[data-panel=ground],[data-panel=pot-item])>.dialog-footer{padding:6px 12px}.item-detail-heading{padding:8px 12px}.item-detail>.item-actions{padding:8px 12px}}@media(min-width:621px)and (max-height:450px){.dialog[data-panel=inventory]>.inventory-toolbar{display:none}}.dialog.village-dialogue.guild-dialogue{max-height:min(360px,calc(100dvh - 24px))}.guild-dialogue .dialog-body{min-height:0}.guild-dialogue .dialogue-choices{display:flex;gap:10px;flex-shrink:0}.guild-dialogue .dialog-footer{gap:12px}.guild-dialogue .dialog-footer small{line-height:1.5}@media(max-width:620px){.guild-dialogue .dialog-footer{flex-wrap:wrap}.guild-dialogue .dialogue-choices{margin-left:auto}.guild-dialogue .dialog-footer small{font-size:10px}.guild-dialogue .dialogue-choices button{min-width:90px}}.unlock-cinematic[data-prelude=true] :is(.construction-story,.construction-time){visibility:hidden}.raid-cinematic .construction-view{flex:0 1 300px;min-height:130px}.raid-cinematic:not([data-phase=result]) .construction-view{flex-basis:360px}.raid-cinematic .raid-story{flex:1 1 auto;min-height:90px;overflow:auto;overscroll-behavior:contain}.raid-cinematic .construction-footer{flex-shrink:0}.raid-results{list-style:none;padding:0;margin:12px 0}.raid-results li{padding:10px 0;border-top:1px solid #b2986444}.raid-results li>div{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#f3e3b8}.raid-results p,.raid-story .raid-stock-note{font-size:12px;line-height:1.7}.raid-results small{display:block;font-size:12px;color:#b9c9ae}.raid-results .raid-drop{color:#eace8e;margin-top:4px}.recovered-materials{margin:16px 0;padding:12px;border:1px solid var(--line);border-radius:8px}.recovered-materials h4{margin:0 0 5px}.recovered-materials>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0;font-size:13px}.recovered-materials button{min-height:44px}@media(max-width:620px){.raid-cinematic .construction-view{flex-basis:190px}.raid-cinematic .construction-footer button{min-width:80px}.raid-story h3{font-size:17px}.raid-story .raid-caption{font-size:12px}}@media(max-width:620px){.raid-cinematic:not([data-phase=result]) .construction-view{flex-basis:280px}}@media(max-height:520px)and (min-width:621px){.raid-cinematic .construction-view{height:100%;min-height:0}.raid-cinematic .raid-story{align-self:stretch}}.midboss-skip{position:absolute;right:12px;top:58px;z-index:8;background:#15271f;color:#f3ddac;border:1px solid #b69b61;min-height:44px}@media(max-width:620px){.map-wrap.midboss-map .map-overlay{top:70px}}.final-transform-bar{max-width:40rem;margin:12px auto;padding:12px;background:#302337;border:1px solid #b58ab9;border-radius:10px;text-align:center}.final-transform-bar small{display:block;margin-top:6px;color:#e0cadf}.final-scene-controls{position:absolute;right:12px;top:58px;z-index:8;max-width:calc(100% - 24px)}.final-scene-buttons{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.final-scene-controls button{min-height:44px;background:#15271f;color:#f3ddac;border:1px solid #b69b61}.final-scene-controls .error{background:#15271ff0;color:#ffdbbc;padding:10px}.final-scene-test{font-size:12px;margin:8px 0}.final-scene-test button{min-height:44px;margin:4px}[data-final-scene] .inspect-panel,[data-final-scene] .overview-panel{visibility:hidden}[data-final-scene] .final-trial-body{display:none}[data-final-scene] .header-actions .sound-top{display:block}.dialog[data-panel=final-chapter]{max-width:800px}.final-chapter-view{position:relative;height:260px;border:1px solid #766b4e;background:#192b24;overflow:hidden}.final-chapter-view canvas{width:100%;height:100%;image-rendering:pixelated}.final-chapter-copy{display:flex;gap:16px;padding-top:18px;align-items:flex-start}.final-chapter-copy>canvas{flex:0 0 64px;width:64px;height:64px;image-rendering:pixelated;background:#23382c;border:1px solid #6f795d}.final-chapter-copy p{line-height:1.9;margin:6px 0}.final-chapter-end{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#10241bb8;color:#edd6a0;letter-spacing:.18em;font-size:11px;text-align:center}.final-chapter-end strong{font-size:38px;letter-spacing:.16em;margin:14px 0}.final-chapter-end span{font-size:14px}.final-reward-icon{width:88px;height:88px;image-rendering:pixelated;display:block;margin:8px auto 18px}.final-chapter-services{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}@media(max-width:620px){.final-chapter-view{height:190px}.final-chapter-copy{gap:10px}.final-chapter-copy>canvas{width:48px;height:48px;flex-basis:48px}.final-chapter-copy p{font-size:13px}.final-chapter-end strong{font-size:30px}}.final-chapter-tools{display:flex;align-items:start;justify-content:space-between;gap:8px;padding:0 18px 10px;font-size:11px;flex-shrink:0}.final-chapter-tools>button{font-size:11px;min-height:32px;padding:4px 8px}.final-chapter-tools summary{cursor:pointer;padding:8px}.final-chapter-tools details[open]{max-width:65%}.final-chapter-tools details button{font-size:11px;margin:2px;min-height:32px}.rebuilding-backdrop{position:fixed;inset:0;z-index:80;background:#101d19;display:grid;place-items:center;padding:16px;overflow:auto}.rebuilding-film{width:min(820px,100%);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;border:1px solid #bba57760;border-radius:10px;overflow:hidden;background:#1c2b24;color:#eadfc5;box-shadow:0 20px 70px #0006}.rebuilding-film>header{padding:13px 24px;border-bottom:1px solid #ad976046;flex:none}.rebuilding-film>header p{margin:0 0 5px;font-size:11px;color:#c3b48c;letter-spacing:.16em}.rebuilding-film h2{margin:0;font-size:23px}.rebuilding-film-view{position:relative;flex:1 1 auto;min-height:140px;height:clamp(210px,56dvh,430px);overflow:hidden;background:#354a35}#final-unlock-canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.rebuilding-film .dialogue-backdrop{position:static;display:block;background:none;padding:0;overflow:visible}.rebuilding-film .dialog[data-panel=final-chapter]{position:static;width:100%;max-width:none;max-height:none;margin:0;border:0;border-top:1px solid #ad976046;border-radius:0;box-shadow:none;transform:none;flex-shrink:0}.rebuilding-film .village-dialogue{display:grid;grid-template-columns:110px minmax(0,1fr);grid-template-rows:auto auto auto}.rebuilding-film .dialogue-speaker{grid-row:1/3;grid-column:1;padding:12px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0}.rebuilding-film .dialogue-speaker canvas{width:64px;height:64px}.rebuilding-film .dialogue-speaker h2{font-size:16px}.rebuilding-film .village-dialogue .dialog-body{grid-column:2;padding:15px 20px 0;min-height:78px;overflow:visible}.rebuilding-film .village-dialogue .dialog-footer{grid-column:2;padding:8px 20px 10px;border:0}.rebuilding-film .village-dialogue>.rebuilding-scene-tools{grid-column:1/3;padding:0 20px 8px}.rebuilding-caption{padding:16px 24px 10px}.rebuilding-caption>p{margin:0;min-height:50px;line-height:1.8;font-size:14px}.rebuilding-caption footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}.rebuilding-caption button{min-height:40px}.rebuilding-shot-progress{height:2px;background:#b49c6340;margin-top:10px}.rebuilding-shot-progress i{display:block;height:100%;background:#d7ba7b}.rebuilding-scene-tools{display:flex;gap:12px;align-items:center;font-size:11px}.rebuilding-scene-tools .text-btn{min-width:60px}.rebuilding-scene-tools summary{cursor:pointer;padding:8px 0}.rebuilding-scene-tools details[open]{max-width:220px}.rebuilding-scene-tools details button{font-size:11px;min-height:32px;padding:4px 8px;margin:2px}@media(max-width:620px){.rebuilding-backdrop{padding:8px}.rebuilding-film{max-height:calc(100dvh - 16px)}.rebuilding-film>header{padding:12px 15px}.rebuilding-film h2{font-size:19px}.rebuilding-film-view{height:45dvh;min-height:180px}.rebuilding-caption{padding:14px 15px 10px}.rebuilding-caption>p{font-size:13px;min-height:65px}.rebuilding-caption footer{flex-wrap:wrap}.rebuilding-caption footer>button{margin-left:auto}.rebuilding-film .village-dialogue{grid-template-columns:78px minmax(0,1fr)}.rebuilding-film .dialogue-speaker canvas{width:56px;height:56px}.rebuilding-film .dialogue-speaker h2{font-size:14px}.rebuilding-film .village-dialogue .dialog-body{padding:14px 12px 0;min-height:100px}.rebuilding-film .village-dialogue .dialog-footer{padding:8px 12px}.rebuilding-film .dialogue-text{font-size:13px;line-height:1.85}.rebuilding-film .village-dialogue>.rebuilding-scene-tools{padding:0 12px 8px}}@media(max-height:520px){.rebuilding-backdrop{padding:6px}.rebuilding-film{max-height:calc(100dvh - 12px)}.rebuilding-film>header{padding:5px 14px}.rebuilding-film>header p{display:none}.rebuilding-film h2{font-size:17px}.rebuilding-film-view{min-height:110px;height:35dvh}.rebuilding-caption{padding:7px 14px}.rebuilding-caption>p{min-height:0;font-size:12px}.rebuilding-film .village-dialogue .dialog-body{min-height:40px;padding-top:6px}.rebuilding-film .dialogue-speaker{padding:2px}.rebuilding-film .dialogue-speaker canvas{width:40px;height:40px}.rebuilding-film .dialogue-text{font-size:12px}}.ending-backdrop{background:radial-gradient(ellipse at 50% 20%,#344d43,#111c1d 75%)}.ending-film{border-color:#c2a36e;box-shadow:0 12px 70px #070e10b0}.ending-film>header{background:linear-gradient(110deg,#293f39,#365348,#293f39);border-bottom:1px solid #bfa57666}.ending-film>header p{color:#ecd5a7;letter-spacing:.12em}.ending-curtain{position:absolute;inset:0;background:#0c1216;opacity:var(--curtain,0);pointer-events:none;z-index:2}.ending-credits{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at center,#233735,#0c1216 78%);color:#f4e6c6;z-index:3;text-align:center}.ending-credit-roll{padding:38px 16px 50px;will-change:transform}.ending-credits canvas{display:block;margin:0 auto;max-width:100%;object-fit:contain;image-rendering:pixelated}.ending-credit-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ending-credit-roll h2{margin:16px 0 12px}.ending-credit{padding:26px 0;display:grid;gap:9px}.ending-credit-last{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:16px;opacity:0;pointer-events:none}.ending-credits.is-static{overflow:auto;overscroll-behavior:contain}.ending-credits.is-static .ending-credit-roll{transform:none!important;will-change:auto}.ending-credits.is-static .ending-credit-last{position:relative;min-height:var(--credit-height);margin-top:var(--credit-height);opacity:1}@media(max-width:540px){.ending-credit{padding:20px 0}.ending-film>header p{font-size:10px;letter-spacing:.06em}}.ending-peace-title{position:absolute;top:16px;left:50%;transform:translate(-50%);width:min(92%,480px);text-align:center;color:#f8e5b2;padding:15px 12px 8px;background:linear-gradient(90deg,transparent,#172c27df 18%,#172c27df 82%,transparent);text-shadow:0 2px 6px #091b15;pointer-events:none}.ending-peace-title span{display:block;font-size:10px;letter-spacing:.25em;color:#d9c496}.ending-peace-title strong{display:block;font-family:Georgia,Yu Mincho,serif;font-size:clamp(20px,3.2vw,30px);font-weight:500;letter-spacing:.08em;line-height:1.8}.ending-peace-title i{display:block;font-style:normal;color:#d8b877;line-height:1}.ending-film.has-peace .rebuilding-caption>p{line-height:1.95;color:#f0e4c4}.ending-film.has-peace .rebuilding-shot-progress{visibility:hidden}.ending-film.has-peace [data-action=final-chapter-next]{border-color:#d2b774;color:#fff0bf;box-shadow:inset 0 0 18px #cfb67614}@media(max-width:540px){.ending-peace-title{top:10px;padding:10px 8px 6px}.ending-film.has-peace .rebuilding-caption>p{font-size:12px;line-height:1.8}}.ground-actions:has(.ground-pot-commands){grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}.ground-pot-commands{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:2px 0;padding:10px 0;border:0;border-top:1px solid var(--line,#4d4941);min-width:0}.ground-pot-commands legend{font-size:11px;color:var(--muted,#bbb);padding-right:8px}.ground-pot-commands button:only-of-type{grid-column:1/-1}.gameplay-trial-links{display:flex;flex-wrap:wrap;gap:5px 12px;max-height:90px;overflow:auto;padding:5px 0;font-size:12px}.gameplay-trial-links a[aria-current]{color:#ffe0a0}.ground-actions:has(.ground-pot-commands)>.primary{grid-column:auto}.ground-pot-commands button{min-width:0;min-height:44px}.perfect-progress{margin:20px 0;padding:18px;border:1px solid #b7a05c66;border-radius:12px;background:#c7a24b0b}.perfect-progress h3{color:var(--gold,#e4c47a);margin:0 0 10px}.perfect-progress p{line-height:1.7}.refit-materials{padding-left:20px;font-size:13px;line-height:1.8}.refit-slots{display:grid;gap:10px}.refit-slot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px;border:1px solid #a5b9a333;border-radius:8px}.refit-slot>div{flex:1;min-width:170px}.refit-slot small{display:block;line-height:1.6;opacity:.8}.refit-reason{width:100%}@media(max-width:480px){.perfect-progress{padding:12px}.refit-slot{padding:10px}.refit-slot button{width:100%}}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]){width:min(1040px,100%);height:min(700px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]) .dialog-header{padding:14px 20px;flex:none}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]) .dialog-header h2{font-size:21px}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]) .dialog-footer{padding:10px 20px;flex:none;display:flex;justify-content:space-between;gap:10px}.build-board{min-height:0;flex:1;display:flex;flex-direction:column;padding:0 20px;color:#e5dfc8;overflow:hidden}.build-status{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:30px;font-size:12px}.build-status b{color:#f0cd74}.build-tabs{display:flex;gap:5px;padding:7px 0 10px;flex:none}.build-tabs button{flex:1;padding:7px 5px;font-size:12px;min-height:36px;white-space:nowrap;border:1px solid #6f7c584d;border-radius:4px}.build-tabs [aria-pressed=true],.build-slots [aria-pressed=true]{background:#6b5b32;color:#fff0ba;border-color:#d2b76e}.build-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.build-content h3{font-size:18px;margin:2px 0 10px}.build-hint{font-size:12px;line-height:1.5;min-height:36px;flex:none;margin:7px 0 0;padding:6px 0;border-top:1px solid #9d997c33}.build-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;min-height:0;flex:1}.build-districts{display:grid;grid-template-rows:repeat(5,minmax(0,1fr));gap:7px;min-height:0}.build-district{display:grid;grid-template-columns:70px 1fr;grid-template-rows:1fr 1fr;gap:2px 10px;align-items:center;text-align:left;border:1px solid #71816470;border-left:6px solid var(--district-color);background:#29392b;padding:7px 12px;color:#e5e4ce;border-radius:5px;min-height:0}.build-district[aria-pressed=true]{background:#48472d;outline:2px solid #e3c575;outline-offset:-2px}.build-district>strong{font-size:17px}.build-district>small{font-size:11px;text-align:right}.build-segments{display:flex;gap:3px;justify-content:stretch}.build-segments i{flex:1;text-align:center;background:#13251c;border:1px solid #89927760;color:#73846b;font-style:normal;font-size:14px;line-height:1.5}.build-segments .built{background:var(--district-color);color:#203225}.build-segments .gold{background:#bd8f31;color:#fff1af;border-color:#efca71}.build-segments .reserved{border-color:var(--district-color);color:var(--district-color)}.build-recipe{display:flex;gap:7px;align-items:center;grid-column:1/3;grid-row:2;font-size:11px;padding-right:45px}.build-recipe>span{display:flex;align-items:center;gap:2px;white-space:nowrap}.build-recipe canvas{width:22px;height:22px}.build-district>small{grid-column:2;grid-row:2;align-self:center;pointer-events:none}.build-map{min-width:0;min-height:0;container-type:size;display:flex;align-items:center;justify-content:center}.build-map .construction-map{width:min(100cqw,calc((100cqh - 4px) * var(--map-ratio,1.03)));max-height:100%;flex:none}.build-map .map-building-label{font-size:9px}.build-map .map-landmark-label{font-size:8px}.build-map .district-caption{font-size:10px}.build-legend{font-size:11px;text-align:center;margin:7px 0 0;flex:none}.build-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;flex:none}.build-slots button{padding:8px 4px;font-size:13px;min-height:48px}.build-slots small{display:block;font-size:11px;margin-top:3px}.build-detail-copy{margin:9px 0;font-size:13px;flex:none}.build-materials{display:grid;gap:7px;min-height:0}.build-material{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#25362a;border:1px solid #6b7c5844;border-radius:4px;min-width:0;min-height:40px;font-size:13px}.build-material>span{min-width:62px}.build-material small{display:block;font-size:10px;color:#b9bba4}.build-material canvas{flex:none}.build-material select{flex:1;min-width:0;width:100%;font:inherit;font-size:12px;padding:7px;color:#eee3c6;background:#15261d;border:1px solid #718164;border-radius:3px}.build-material>strong{margin-left:auto;font-weight:400}.build-records{flex:1;min-height:0;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:7px}.build-records article{padding:10px 14px;border:1px solid #72856550;border-radius:4px;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:4px;background:#25372a}.build-records strong{font-size:14px}.build-records small{display:block;font-size:12px;width:100%}.build-records article button{font-size:12px;padding:6px 14px}.build-pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:9px;font-size:12px;flex:none}.build-pagination button{min-height:36px;padding:6px 12px}.build-empty{font-size:14px}@media(max-width:620px){.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]){height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]) .dialog-header{padding:10px 12px}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]) .dialog-header h2{font-size:18px}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]) .dialog-footer{padding:8px 10px;gap:6px}.dialog:is([data-panel=workshop],[data-panel=stockyard],[data-panel=recovered-stock]) .dialog-footer button{font-size:12px;padding:9px 8px;min-height:42px;flex:1}.build-board{padding:0 10px}.build-status{font-size:10px;min-height:25px}.build-tabs{gap:3px;padding:4px 0 8px}.build-tabs button{font-size:10px;padding:5px 2px;min-height:34px}.build-overview{grid-template-columns:1fr;grid-template-rows:minmax(230px,1.15fr) minmax(140px,1fr);gap:8px}.build-districts{gap:4px}.build-district{padding:4px 9px;grid-template-columns:62px 1fr;gap:1px 7px;border-left-width:5px}.build-district>strong{font-size:14px}.build-recipe{font-size:10px;gap:6px}.build-recipe canvas{width:16px;height:16px}.build-segments i{font-size:11px;line-height:1.25}.build-district>small{font-size:10px}.build-hint{font-size:11px;min-height:36px;margin-top:4px}.build-map .map-building-label,.build-map .map-landmark-label{display:none}.build-map .district-caption{padding:2px;font-size:9px}.build-map .district-caption strong{font-size:8px}.build-legend{font-size:10px;margin-top:4px}.build-content h3{font-size:15px;margin:3px 0 8px}.build-slots{gap:4px}.build-slots button{font-size:11px;min-height:46px;padding:6px 2px}.build-slots small{font-size:9px}.build-detail-copy{font-size:11px;margin:7px 0}.build-materials{gap:5px}.build-material{padding:6px;gap:5px;font-size:11px;min-height:38px}.build-material>span{min-width:46px}.build-material select{font-size:10px;padding:6px 2px}.build-material canvas{width:24px;height:24px}.build-records article{padding:8px}.build-records strong{font-size:12px}.build-records small{font-size:11px}}@media(max-width:620px)and (max-height:650px){.build-overview{grid-template-columns:1.35fr 1fr;grid-template-rows:1fr;gap:8px}.build-district{grid-template-columns:1fr;padding:4px 5px;grid-template-rows:auto auto auto}.build-district>strong{font-size:12px}.build-segments{grid-row:2}.build-recipe{grid-row:3;grid-column:1;padding:0;gap:3px}.build-recipe>span{font-size:0}.build-recipe canvas{width:17px;height:17px}.build-district>small{display:none}.build-hint{font-size:10px}.build-map .district-caption{display:none}}@media(max-height:520px)and (min-width:621px){.build-board{padding:0 12px}.build-materials{grid-template-columns:1fr 1fr;gap:4px}.build-material{padding:4px;min-height:35px}.build-material select{padding:4px}.build-slots button{min-height:36px;padding:4px}.build-detail-copy{margin:4px 0}.build-content h3{margin:0 0 4px}.build-district{padding:2px 8px}.build-tabs{padding:2px 0 4px}.build-hint{min-height:25px;font-size:11px;padding:3px 0}}.build-map polygon[data-district-outline=center]{stroke:#83b87c}.build-map polygon[data-district-outline=northeast]{stroke:#d896bb}.build-map polygon[data-district-outline=northwest]{stroke:#d6b65d}.build-map polygon[data-district-outline=southwest]{stroke:#da8770}.build-map polygon[data-district-outline=southeast]{stroke:#80b9d2}.build-map .map-district-outlines polygon{stroke-width:2}.build-map .map-district-outlines polygon.selected{stroke-width:4;fill:#fff4bd12}.build-map [data-district-caption=center]{border-color:#83b87c}.build-map [data-district-caption=northeast]{border-color:#d896bb}.build-map [data-district-caption=northwest]{border-color:#d6b65d}.build-map [data-district-caption=southwest]{border-color:#da8770}.build-map [data-district-caption=southeast]{border-color:#80b9d2}@media(max-width:620px)and (max-height:650px){.build-content h3{font-size:14px;line-height:1.3;margin:0 0 5px}.build-slots button{min-height:38px;padding:3px 2px;line-height:1.3}.build-slots small{margin-top:2px;line-height:1.3}.build-detail-copy{margin:5px 0;line-height:1.4}.build-materials{gap:4px}.build-material{min-height:34px;padding:3px 5px}.build-material select{padding:4px 2px;line-height:1.3}.build-material small{font-size:9px;line-height:1.2}}.build-board{padding-top:14px;padding-bottom:14px}.build-day{font:400 12px/1.5 var(--font-body,sans-serif);color:#b6bda6;display:inline-block;margin-left:16px;vertical-align:middle;white-space:nowrap}.build-recipe{padding-right:0}.build-segments{gap:5px}.build-segments .build-gem{position:relative;height:30px;min-width:0;display:grid;place-items:center;border-radius:3px;font-size:20px;line-height:1;border:1px solid #71816480;background:#15251b;box-shadow:inset 0 1px 3px #07150e88}.build-segments .quality-1{background:color-mix(in srgb,var(--district-color) 70%,#23382c);border-color:var(--district-color);box-shadow:none}.build-segments .quality-2,.build-segments .quality-3{color:#fff;border-color:color-mix(in srgb,var(--district-color) 55%,white);background:linear-gradient(125deg,transparent 15%,#fff2 29%,#ffffffb0 42%,#fff1 49%,transparent 75%,#fff4),color-mix(in srgb,var(--district-color) 70%,#23382c);box-shadow:inset 0 1px #ffffff50,inset 0 -1px #09211540}.build-segments .quality-3>span{text-shadow:0 0 4px #fff8}.build-segments .quality-3:before,.build-segments .quality-3:after{content:"✦";position:absolute;color:#fff;line-height:1;font-size:9px;text-shadow:0 0 3px #fff7;pointer-events:none}.build-segments .quality-3:before{left:13%;top:15%}.build-segments .quality-3:after{right:13%;bottom:12%;font-size:7px}.build-map .map-district-outlines polygon.selected{stroke-width:2;stroke-dasharray:none;fill:#ffffff09}@media(max-width:620px){.build-day{font-size:10px;margin-left:8px}.build-board{padding-top:10px;padding-bottom:10px}.build-segments .build-gem{height:24px;font-size:17px}}@keyframes construction-planned{0%,to{opacity:1}50%{opacity:.35}}.build-segments .reserved{animation:construction-planned 2.4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.build-segments .reserved{animation:none;outline:2px dashed #fff;outline-offset:2px}}.build-overview{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px}.build-map-column{min-height:0;min-width:0;display:flex;flex-direction:column;gap:6px;container-type:size}.build-map-column>.build-map{flex:none;align-items:flex-start;container-type:normal}.build-map-column .construction-map{width:min(100cqw,calc((100cqh - 2px) * var(--map-ratio)));max-height:none}.build-map [data-district-caption=southwest] .district-planned,.build-map [data-district-caption=southeast] .district-planned{top:auto;bottom:calc(100% + 3px);margin-top:0}@media(max-width:620px){.build-overview{grid-template-columns:1fr;grid-template-rows:minmax(210px,.8fr) minmax(260px,1.2fr);gap:8px}.build-map-column{gap:4px}}@media(max-width:620px)and (max-height:650px){.build-overview{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:minmax(0,1fr);grid-template-areas:none}.build-districts{grid-area:auto}.build-district{grid-template-rows:14px 20px;padding:3px 5px}.build-district>strong{font-size:11px;line-height:14px}.build-district .build-recipe{display:none}.build-segments .build-gem{height:20px;font-size:14px}}.build-district{grid-template-rows:minmax(30px,1fr) 24px;row-gap:4px}.build-recipe{min-height:22px;line-height:22px;align-self:center}.build-recipe>span{line-height:22px}.build-recipe canvas{flex:none}.construction-reservation .build-materials{margin-top:12px}.construction-reservation .build-material{display:grid;grid-template-columns:28px minmax(0,1fr);gap:5px 9px}.construction-reservation .build-material>span{display:flex;align-items:center;gap:9px}.construction-reservation .build-material select{grid-column:1/-1;width:100%;min-height:38px;font-size:12px}@media(max-width:620px){.build-overview{grid-template-rows:286px minmax(150px,1fr)}.build-district{grid-template-rows:24px 18px;padding:4px 9px;row-gap:2px}.build-recipe,.build-recipe>span{min-height:18px;line-height:18px}.construction-reservation .build-material{padding:6px 8px}}@media(max-width:620px)and (max-height:650px){.build-overview{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-rows:minmax(0,1fr)}.build-district{grid-template-rows:14px 20px 18px;padding:4px 5px;row-gap:3px;align-content:center}.build-district .build-recipe{display:flex;gap:3px}.build-recipe canvas{width:14px;height:14px}}.dialog:has(.construction-reservation){width:min(600px,100%);display:flex;flex-direction:column;overflow:hidden}.dialog:has(.construction-reservation)>.dialog-body{min-height:0;overflow:auto;overscroll-behavior:contain}.dialog:has(.construction-reservation)>.dialog-footer{flex:none}.construction-reservation{padding:16px 20px}.construction-reservation>p{margin:0 0 12px;line-height:1.5;font-size:12px}.material-cards{display:grid;gap:8px}.material-card{padding:10px 12px;background:#1b2d22;border:1px solid #70845b70;border-radius:6px;min-width:0}.material-card header{display:flex;align-items:center;gap:8px;margin-bottom:7px;line-height:1.2}.material-card header canvas{width:24px;height:24px;flex:none;image-rendering:pixelated}.material-card header strong{font-size:14px}.material-card header small{font-size:11px;margin-left:auto;color:#b2bda7}.material-qualities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.material-qualities.refit{display:block}.material-quality{border:1px solid #6f805e;border-radius:4px;background:#283b2d;padding:6px;min-height:46px;line-height:1.3;color:#ced4bd}.material-quality strong,.material-quality small{display:block;font-size:12px}.material-quality small{font-size:10px;margin-top:2px}.material-quality[aria-pressed=true]{border-color:#f0cf84;background:#66582f;color:#fff0bd;box-shadow:inset 0 0 0 1px #e9c987}.material-quality:disabled{opacity:.4}.material-quality:focus-visible,.material-sources button:focus-visible{outline:2px solid #fff0ba;outline-offset:2px}.material-source-note{display:block;color:#b1bea5;font-size:10px;line-height:1.4;margin-top:5px}.material-sources{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.material-sources button{flex:1;border:1px solid #637658;background:#213a2a;border-radius:4px;padding:5px 8px;font-size:11px;line-height:1.4;min-height:44px}.material-sources button small{margin-left:7px;color:#b9c1aa}.material-sources button[aria-pressed=true]{border-color:#d5be80;color:#ffebb3;background:#455038}.material-fixed{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:#ead29b}.material-fixed strong{font-weight:500}.material-fixed span{color:#b9c1aa;font-size:11px}.material-card .missing{color:#efb298}.dialog:has(.construction-reservation)>.dialog-footer>.primary{min-width:160px}@media(max-width:620px){.construction-reservation{padding:12px}.construction-reservation>p{font-size:11px;margin-bottom:9px}.material-cards{gap:6px}.material-card{padding:8px 10px}.material-card header{margin-bottom:5px}.material-card header canvas{width:22px;height:22px}.material-card header strong{font-size:13px}.dialog:has(.construction-reservation)>.dialog-header{min-height:54px}.dialog:has(.construction-reservation)>.dialog-footer{padding:10px 12px}.dialog:has(.construction-reservation)>.dialog-footer>.primary{flex:1;min-width:0}}.shell[data-screen=title]:has(.entry-title){max-width:none;padding:0;margin:auto}.entry-title{position:relative;isolation:isolate;min-height:690px;height:100svh;overflow:hidden;background:#14221c;color:#f0e7cf}#entry-art{position:absolute;inset:0;width:100%;height:100%;z-index:-3;image-rendering:pixelated}.entry-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#10241ef2 0%,#10241eca 23%,#10241e35 49%,transparent 75%),linear-gradient(0deg,#0e211ce6,transparent 26%)}.entry-content{position:relative;padding:clamp(62px,10vh,116px) 0 90px clamp(40px,7vw,130px);width:50%;max-width:690px;box-sizing:border-box}.entry-kicker{letter-spacing:.32em;color:#b8c0a2;font-size:10px;font-weight:500;margin:0 0 23px}.entry-title h1{display:flex;align-items:baseline;font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(50px,5.8vw,84px);font-weight:600;letter-spacing:.06em;line-height:1.2;white-space:nowrap;margin:0;color:#eee6cf;text-shadow:0 2px 16px #11271f70}.entry-title h1 .entry-kanji{color:#f1d597;text-shadow:0 0 32px #d0b26925;font-size:1.16em}.entry-title h1 .entry-no{font-size:.55em;margin:0 .12em;transform:translateY(-.13em)}.entry-rule{width:clamp(215px,25vw,345px);height:1px;margin:26px 0 0;background:linear-gradient(90deg,#bcac7266,#bcac7222,transparent);position:relative}.entry-rule i{position:absolute;width:4px;height:4px;background:#bca779;transform:rotate(45deg);top:-1.5px;left:0}.entry-tagline{font-family:Hiragino Mincho ProN,Yu Mincho,serif;color:#bdc5aa;letter-spacing:.18em;margin:22px 0 48px;font-size:13px}.entry-menu{display:grid;gap:2px;max-width:290px;margin-left:-16px}.entry-menu button{position:relative;border:0;border-radius:0;text-align:left;background:transparent;color:#bbc6ae;padding:13px 20px 13px 28px;min-height:46px;font-size:15px;font-weight:400;letter-spacing:.14em;display:flex;justify-content:space-between;align-items:center;transition:background .18s,color .18s}.entry-menu button:first-child{color:#f4dfac;font-size:19px;letter-spacing:.16em;margin-bottom:6px}.entry-menu button:before{content:"";position:absolute;left:12px;top:50%;width:3px;height:3px;background:#c7b47c;transform:translateY(-50%) rotate(45deg);opacity:0}.entry-menu button:focus-visible:before,.entry-menu button:hover:before{opacity:1}.entry-menu button span{font-size:13px;opacity:.5}.entry-menu button:focus-visible,.entry-menu button:hover{background:linear-gradient(90deg,#d5b6791a,#d5b67900);color:#fff0c4;outline:1px solid #ddc48640;outline-offset:1px}.entry-menu button:disabled{opacity:.4;cursor:not-allowed}.entry-save-note{font-size:10px;color:#98ab94;line-height:1.7;margin:23px 0 18px;letter-spacing:.04em}.entry-tools{display:flex;flex-wrap:wrap;gap:2px;margin-left:-10px;max-width:380px}.entry-tools button{background:transparent;border:0;border-radius:0;border-right:1px solid #9aa98d30;color:#adb99e;padding:4px 10px;min-height:32px;font-size:11px}.entry-tools button:last-child{border-right:0}.entry-tools button:hover{color:#f4dfac}.entry-footer{position:absolute;bottom:25px;left:clamp(40px,7vw,130px);right:40px;display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:.08em;color:#a4b19b}.entry-place{position:absolute;bottom:62px;right:40px;color:#d6d3b7;font-family:Yu Mincho,serif;font-size:12px;letter-spacing:.23em;display:flex;align-items:center;gap:13px;text-shadow:0 1px 6px #173a2b}.entry-place span{width:32px;height:1px;background:#d6d3b755}.entry-trial{background:#20362a;border:1px solid #6b7d6766;color:#d2d9bd;padding:12px 16px;margin:12px;font-size:12px;border-radius:3px}.entry-trial summary{cursor:pointer;min-height:28px;align-content:center}.entry-trial div,.entry-trial nav{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.entry-trial button{background:#142b2599;border:1px solid #aab28e40;color:#d5d7ba;border-radius:2px;padding:8px 12px;min-height:38px;font-size:12px}.entry-trial a{color:#f6d89a;padding:5px 8px;border-bottom:1px solid #b4b47755}.entry-trial p{line-height:1.7}.opening-screen{position:relative;max-width:none;margin:0 auto;min-height:100svh;color:#e6e6ce;background:#101d17;box-sizing:border-box}.opening-screen header{position:absolute;z-index:1;top:0;left:0;pointer-events:none;padding:24px max(24px,4vw);letter-spacing:.2em;font-family:Yu Mincho,serif;text-shadow:0 1px 6px #101d17}.opening-screen header small{font-size:11px;letter-spacing:.1em;color:#a7b7a0;margin-left:18px}.opening-screen button{border:1px solid transparent;border-radius:0;background:transparent;color:#b7c2aa;padding:9px 12px;min-height:40px;font-size:12px;letter-spacing:.05em}.opening-screen button:hover{color:#f6e1ae;background:#adbb9220}.opening-screen button:focus-visible,.entry-tools button:focus-visible,.entry-trial button:focus-visible{outline:1px solid #e6cd91;outline-offset:2px}.opening-picture{position:relative;width:100%;height:100svh;min-height:340px;overflow:hidden;background:#101d17}#opening-art{width:100%;height:100%;display:block;image-rendering:pixelated}.opening-vignette{position:absolute;pointer-events:none;inset:0;background:linear-gradient(0deg,#101d17 0%,#101d17ad 12%,transparent 29%,transparent 88%,#101d1755)}.opening-caption{position:absolute;bottom:82px;padding:16px 8%;width:100%;font-family:Hiragino Mincho ProN,Yu Mincho,serif;text-align:center;color:#f1e8ce;font-size:clamp(15px,1.5vw,20px);line-height:2;letter-spacing:.12em;text-wrap:balance;box-sizing:border-box;text-shadow:0 1px 6px #132719}.opening-caption p{margin:0;animation:opening-caption-in .8s ease-out both}@keyframes opening-caption-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.opening-controls{position:absolute;bottom:18px;right:max(24px,4vw);display:flex;align-items:center;justify-content:flex-end}.opening-error{position:absolute;bottom:82px;left:4vw;right:4vw;border:1px solid #dcad6c;padding:12px;margin:0;background:#101d17f2;color:#ffe2a8;line-height:1.8;font-size:13px}.opening-screen:has(.opening-error) .opening-caption{visibility:hidden}body:has(.opening-screen){overflow-anchor:none}@media(max-width:700px){.entry-title{min-height:770px;height:100svh}#entry-art{height:58%;width:100%;left:0}.entry-shade{background:linear-gradient(0deg,#14221c 0%,#14221c 51%,#14221c26 58%,transparent 68%),linear-gradient(180deg,#14221ceb 0%,#14221cb0 17%,transparent 32%)}.entry-content{width:100%;max-width:none;padding:35px 31px 65px;box-sizing:border-box}.entry-kicker{font-size:8px;letter-spacing:.3em;margin-bottom:15px}.entry-title h1{font-size:clamp(48px,12vw,69px)}.entry-rule{width:220px;margin-top:19px}.entry-tagline{font-size:11px;margin:17px 0 212px;letter-spacing:.12em}.entry-menu{max-width:310px;gap:0;margin-left:-15px}.entry-menu button{font-size:14px;min-height:40px;padding:10px 20px 10px 28px}.entry-menu button:first-child{font-size:18px;margin-bottom:4px}.entry-save-note{margin:15px 0 9px;font-size:9px}.entry-tools{gap:0}.entry-tools button{min-height:34px;padding:4px 9px;font-size:10px}.entry-footer{left:31px;right:26px;bottom:19px;font-size:8px}.entry-place{inset:353px auto auto 31px;font-size:9px;letter-spacing:.14em;gap:8px}.entry-place span{width:20px}.opening-screen header{padding:14px 18px;font-size:13px}.opening-screen header small{margin-left:11px;font-size:10px}.opening-picture{min-height:370px}.opening-caption{bottom:82px;padding:18px 24px;font-size:15px;line-height:2;letter-spacing:.07em}.opening-controls{bottom:18px;right:18px}.opening-controls button{padding:10px 14px;font-size:12px;min-height:44px}}@media(max-height:560px)and (min-width:701px){.entry-title{min-height:440px;height:100svh}.entry-content{padding:28px 0 50px 50px}.entry-kicker{margin-bottom:12px;font-size:8px}.entry-title h1{font-size:45px}.entry-rule{margin-top:15px}.entry-tagline{margin:14px 0 20px;font-size:10px}.entry-menu button{min-height:33px;padding:8px 20px 8px 28px;font-size:12px}.entry-menu button:first-child{font-size:16px;margin:0}.entry-save-note{margin:12px 0 5px;font-size:9px}.entry-tools button{font-size:10px;min-height:28px}.entry-footer{left:50px;bottom:16px}.entry-place{bottom:49px}.opening-picture{min-height:225px}.opening-screen header{padding:12px 24px}.opening-controls{bottom:9px;right:20px}.opening-caption{font-size:14px;bottom:48px;padding:8px 24px}}@media(prefers-reduced-motion:reduce){.entry-menu button{transition:none}.opening-caption p{animation:none}}.opening-screen[data-motion=still] .opening-caption p{animation:none}html:has(.entry-title),html:has(.opening-screen),body:has(.entry-title),body:has(.opening-screen){height:auto;min-height:100%;overflow:auto}#app:has(.entry-title),#app:has(.opening-screen){height:auto}.shell[data-screen=title]:has(.entry-title){display:block;height:auto;overflow:visible}
/*# sourceMappingURL=styles-MJGRP27M.css.map */
