/* Adventure owns its illustrated map surfaces; legacy home and battle styles stay separate. */
.adv-screen{min-width:0;max-width:100%;color:#f7e4b8}.adv-screen button,.adv-world-content button{min-height:40px}.adv-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 6px 16px}.adv-heading h1{font:700 30px "STKaiti","KaiTi",serif;letter-spacing:5px;color:#ffdfa0;margin:4px 0}.adv-heading>div>span{font-size:12px;color:#cfb285}.adv-progress{text-align:right}.adv-progress b{font-size:19px;color:#f2cd7c;display:block}.adv-progress span{font-size:11px;display:block;margin-top:5px;color:#d2bd95}.adv-frame{border:5px ridge #c39a53;border-radius:9px;background:#332219;box-shadow:0 7px 20px #0007,inset 0 0 0 2px #23160e;overflow:hidden;min-width:0}.adv-scroll{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-color:#ba8f48 #3b291b;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.adv-scroll:focus-visible{outline:3px solid #ffe49d;outline-offset:-3px}.adv-region-plate,.adv-scene-plate,.adv-world-plate{position:relative;aspect-ratio:1672/941;width:100%;min-width:960px;isolation:isolate;background:radial-gradient(ellipse,#bdd9c0,#75acba)}.adv-ground{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:-1}.adv-landmarks{position:absolute;inset:0}.adv-landmark{position:absolute;left:var(--adv-x);top:var(--adv-y);transform:translate(-50%,-42%);width:154px;padding:0;display:flex;flex-direction:column;align-items:center;background:transparent;color:#fff0c4;filter:drop-shadow(0 4px 2px #15120d99)}.adv-landmark-art{display:block;width:clamp(100px,10vw,152px);height:clamp(100px,10vw,152px);background-image:url('../assets/adventure/landmarks.webp');background-size:300% 300%;background-position:var(--atlas-x) var(--atlas-y);pointer-events:none;margin-bottom:-12px}.adv-plaque{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;z-index:1;font-size:16px;letter-spacing:2px;line-height:1.5;padding:4px 12px;border:2px ridge #f0cc82;border-radius:4px;background:linear-gradient(#825937,#3c2619);text-shadow:0 2px #26160d;box-shadow:0 2px 4px #24170dc9}.adv-landmark small{position:relative;z-index:1;background:#342416eb;padding:3px 8px;border:1px solid #ba945b;border-top:0;border-radius:0 0 4px 4px;font-size:10px;white-space:nowrap;color:#fff0ce}.adv-current-flag{position:absolute;top:12%;left:6%;border:1px solid #ffe6a1;color:#402a11;background:#f2cd76;border-radius:3px;padding:2px 6px;font-size:11px;font-weight:700}.adv-landmark.adv-current .adv-plaque{background:linear-gradient(#b88743,#5a391d);border-color:#fff0b4;box-shadow:0 0 12px #fff1a6a0}.adv-landmark.adv-locked .adv-landmark-art{filter:saturate(.65) brightness(.83)}.adv-landmark.adv-done .adv-plaque{border-color:#d6e5ad}.adv-landmark:hover .adv-plaque,.adv-landmark:focus-visible .adv-plaque{background:#98652f;color:white}.adv-world-button{position:absolute;right:17px;bottom:15px;display:flex;align-items:center;gap:8px;min-width:117px;box-shadow:0 3px 8px #0009;font-size:16px}.adv-pan-hint{display:none;font-size:11px;color:#dfc795;padding:10px 3px;align-items:center;gap:7px}.adv-travel-tools{display:flex;align-items:center;gap:10px;margin-top:16px;flex-wrap:wrap}.adv-travel-tools>span{margin-right:auto;font-size:12px;color:#c5aa7d}.adv-travel-tools .btn{font-size:12px;display:flex;align-items:center;gap:6px}.adv-pending{display:flex;align-items:center;gap:10px;width:100%;padding:13px 16px;margin-bottom:12px;background:#5c4024;border:2px ridge #e5bd65;border-radius:5px;text-align:left;color:#ffe3a2;font-size:13px}.adv-pending span{flex:1}.adv-complete{display:flex;gap:12px;align-items:center;padding:18px 12px;margin-top:10px;border:1px solid #a8884d;color:#ffe2a3;background:#5b4727;line-height:1.7;font-size:13px}.adv-scene-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;background:linear-gradient(#67492c,#3c281b);border-bottom:2px ridge #aa8247}.adv-scene-nav>div{display:flex;gap:7px}.adv-scene-nav .btn{font-size:12px;padding:7px 12px;display:flex;align-items:center;gap:5px}.adv-scene-title{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:10px 18px;background:#3a291d}.adv-scene-title h2{font:700 23px "STKaiti","KaiTi",serif;color:#f9d792;letter-spacing:3px}.adv-scene-title p{font-size:12px;color:#dac296}.adv-scene-title .adv-lock-note{width:100%;color:#f4d79b}.adv-scene-plate{min-width:780px}.adv-route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.adv-route path{fill:none;stroke:#fff1ae;stroke-width:.55;stroke-dasharray:1 1;filter:drop-shadow(0 2px 2px #38220c)}.adv-node{position:absolute;left:var(--adv-x);top:var(--adv-y);transform:translate(-50%,-35%);display:flex;flex-direction:column;align-items:center;padding:0;width:140px;color:#fff0be;background:transparent;text-shadow:0 2px #2b160b;filter:drop-shadow(0 3px 3px #18120bc9)}.adv-node-seal{display:grid;place-items:center;width:49px;height:49px;border:3px ridge #ffe49a;border-radius:50%;background:radial-gradient(#bc9047,#67401d);font:700 22px Georgia,serif;color:#fff6cb;box-shadow:0 0 0 4px #32251899}.adv-node strong{font-size:14px;background:linear-gradient(#7b5631,#422a19);border:2px ridge #ddb772;padding:4px 9px;border-radius:4px;margin-top:7px;white-space:nowrap}.adv-node small{font-size:10px;background:#332416e8;padding:3px 8px;border-radius:0 0 4px 4px;white-space:nowrap}.adv-node em{font-size:11px;font-style:normal;color:#fff2b7;background:#67491d;padding:3px 9px;border:1px solid #f4d27d;border-radius:3px;margin-top:4px}.adv-node.adv-selected .adv-node-seal{outline:3px solid #fff1b7;outline-offset:4px;box-shadow:0 0 20px #fff0a4}.adv-node.adv-done .adv-node-seal{background:radial-gradient(#a6bc6c,#436034);border-color:#e8f2b5}.adv-node.adv-locked .adv-node-seal{background:radial-gradient(#81735a,#44392c);border-color:#b5a17b;color:#e7d4b0}.adv-node:hover strong,.adv-node:focus-visible strong{background:#a87537}.adv-detail{padding:18px;background:linear-gradient(125deg,#61452d,#302118);border-top:4px ridge #c69e57}.adv-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid #a98349}.adv-detail-heading small{color:#d1b482;font-size:12px}.adv-detail-heading h2{font-size:21px;margin-top:4px;color:#ffe3a4;letter-spacing:2px}.adv-detail-heading>b{font-size:13px;white-space:nowrap;color:#f1d6a4}.adv-detail-body{display:grid;grid-template-columns:230px minmax(0,1fr) 185px;align-items:start;gap:22px;padding-top:16px}.adv-detail h3{font-size:13px;color:#ecd298;margin-bottom:10px}.adv-enemies>div{display:flex;gap:10px}.adv-enemies figure{margin:0;text-align:center;flex:1;min-width:0}.adv-enemies img{display:block;width:62px;height:81px;object-fit:cover;border:2px ridge #c79b55;border-radius:4px;max-width:100%;margin:auto}.adv-enemies figcaption{font-size:10px;line-height:1.5;margin-top:6px;color:#ead8b8;overflow-wrap:anywhere}.adv-reward-list{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;color:#e1cda9;line-height:1.6}.adv-reward-list b{color:#ffe19a;white-space:nowrap}.adv-chance{width:100%;color:#e2cb9e}.adv-pool{font-size:12px;line-height:1.7;margin-top:9px;color:#dbe9b5}.adv-start{display:flex;flex-direction:column;gap:9px}.adv-start .btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px}.adv-start p{font-size:11px;line-height:1.7;color:#d6be94}.adv-world-dialog{width:min(1300px,96vw);max-width:96vw;padding:0;max-height:94dvh;overflow:auto;border:5px ridge #bd934e}.adv-world-content{min-width:0;max-width:100%;background:#402b1b}.adv-world-heading{display:flex;justify-content:space-between;align-items:center;padding:13px 18px;gap:10px;border-bottom:3px ridge #bc9756;background:linear-gradient(#775330,#3e291b)}.adv-world-heading h2{font:700 24px "STKaiti","KaiTi",serif;letter-spacing:3px;color:#ffe4a4}.adv-world-heading p{font-size:12px;color:#e0c89b;margin-top:6px}.adv-world-heading .icon-btn{flex-shrink:0}.adv-world-plate{min-width:960px;background:radial-gradient(ellipse,#b49c67,#4b3524)}.adv-world-entry{position:absolute;left:var(--adv-x);top:var(--adv-y);transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;background:transparent;padding:0;color:#ffe5af;min-width:105px;filter:drop-shadow(0 2px 2px #342211)}.adv-world-entry strong{font-size:14px;white-space:nowrap;display:flex;align-items:center;gap:4px;background:linear-gradient(#82603a,#46311e);padding:5px 10px;border:2px ridge #c9aa6c;border-radius:4px}.adv-world-entry small{font-size:10px;padding:2px 9px;background:#382a1fe8;border-radius:0 0 4px 4px}.adv-world-entry.adv-world-closed{opacity:1;cursor:default}.adv-world-closed strong{color:#e4d3b5;background:linear-gradient(#6b5a40,#443a2a)}.adv-world-open strong{border-color:#fff0a6;color:#fff3bf;box-shadow:0 0 14px #ffedaa90}.adv-world-open:hover strong{background:#a67a3a}.adv-world-footnote{padding:10px 15px;font-size:11px;color:#d8be8e;text-align:center}
@media(max-width:1100px){.adv-detail-body{grid-template-columns:190px minmax(0,1fr)}.adv-start{grid-column:1/-1;display:grid;grid-template-columns:minmax(150px,1fr) 2fr auto;align-items:center}.adv-start p{grid-column:2;grid-row:1}.adv-start>.btn:last-child{grid-column:3;grid-row:1}.adv-pan-hint{display:flex}}
@media(max-width:700px){.adv-heading{margin:0 3px 12px;gap:6px}.adv-heading h1{font-size:25px;letter-spacing:3px}.adv-heading>div>span{font-size:10px}.adv-progress b{font-size:16px}.adv-progress span{font-size:10px}.adv-frame{border-width:4px}.adv-pan-hint{display:flex;font-size:10px}.adv-landmark-art{width:110px;height:110px}.adv-scene-nav{gap:6px;padding:7px;flex-wrap:wrap}.adv-scene-nav>div{margin-left:auto}.adv-scene-nav .btn{font-size:11px;padding:7px 10px}.adv-scene-title{padding:11px;gap:6px}.adv-scene-title h2{font-size:20px}.adv-scene-title p{font-size:11px;width:100%}.adv-detail{padding:13px}.adv-detail-body{grid-template-columns:minmax(0,1fr);gap:17px}.adv-enemies>div{justify-content:flex-start;gap:16px}.adv-enemies figure{flex:0 1 75px}.adv-detail-heading h2{font-size:18px}.adv-detail-heading small{font-size:11px}.adv-detail-heading>b{font-size:11px}.adv-start{grid-column:auto;display:flex;align-items:stretch}.adv-start .btn{min-height:44px}.adv-reward-list{font-size:12px}.adv-pending{font-size:11px;padding:10px}.adv-travel-tools{gap:8px}.adv-travel-tools>span{width:100%;font-size:11px}.adv-travel-tools .btn{flex:1;justify-content:center}.adv-complete{font-size:12px}.adv-world-heading{padding:12px}.adv-world-heading h2{font-size:20px}.adv-world-heading p{font-size:11px}.adv-world-dialog{width:96vw;max-height:94dvh}.adv-world-footnote{font-size:10px}}
@media(prefers-reduced-motion:reduce){.adv-scroll{scroll-behavior:auto}}

.adv-pool details{overflow-wrap:anywhere}.adv-pool summary{min-height:40px;display:flex;align-items:center;cursor:pointer}.adv-pool details p{max-height:12rem;overflow-y:auto}
/* Keep independent modes in a dock outside the nine geographic landmarks. */
.adv-region-map{min-width:960px}.adv-landmark-art.adv-landmark-image{object-fit:contain;background:none}.adv-map-dock{display:flex;align-items:center;gap:24px;padding:12px 17px;border-top:3px ridge #b89b63;background:linear-gradient(110deg,#292b44,#35251d);min-height:90px}.adv-tower-mode{display:flex;align-items:center;gap:12px;padding:5px 14px 5px 7px;border:2px solid #9b9ccf;border-radius:10px;background:linear-gradient(120deg,#3f4668,#272b46);color:#eeedff;box-shadow:0 3px 8px #0006;text-align:left}.adv-tower-icon{display:block;flex:0 0 56px;width:56px;height:56px;background:url('../assets/adventure/landmarks.webp') 50% 0/300% 300% no-repeat}.adv-tower-mode>span:not(.adv-tower-icon){display:flex;flex-direction:column;gap:4px}.adv-tower-mode strong{font-size:17px;letter-spacing:2px;white-space:nowrap}.adv-tower-mode small{font-size:11px;color:#d4d4ef}.adv-tower-mode em{display:flex;align-items:center;gap:4px;font-size:11px;font-style:normal;padding:5px 7px;border:1px solid #8587ae;border-radius:12px;color:#e1dff6;white-space:nowrap}.adv-tower-mode:hover,.adv-tower-mode:focus-visible{background:#535b80;border-color:#dedbff}.adv-map-dock .adv-world-button{position:static;margin-left:auto}
