/* Approved Stone Adventure D2. Scoped to exploration; visible viewport pixels remain owned by map.js. */
#explorationMap {--stone:#4b4639;--ink:#f3ead4;--muted:#c5b897;color:var(--ink);font-family:'Microsoft YaHei','PingFang SC',system-ui,sans-serif}
#explorationMap [hidden]{display:none!important}
#explorationMap button {border:1px solid #897c5d;border-radius:3px;background:#555041;box-shadow:none;color:#f4e6c6;font-weight:600;text-shadow:none;min-height:44px;padding:8px 12px;font-size:13px}
#explorationMap button:hover:not(:disabled){filter:brightness(1.1)}
#explorationMap button:disabled{opacity:.5}
#explorationMap button:focus-visible,#explorationMap select:focus-visible,#explorationMap summary:focus-visible{outline:3px solid #f6d77f;outline-offset:2px}
#explorationMap .map-top{left:12px;right:12px;top:max(14px,env(safe-area-inset-top));gap:8px}
#explorationMap .map-heading,#explorationMap .map-minimap {border:3px solid transparent;border-image:url('assets/ui/stone-frame.svg') 40 / 5px stretch;border-radius:5px;background:linear-gradient(120deg,#565142,#474235);box-shadow:0 2px #2b291fc9,0 4px 8px #0004}
#explorationMap .map-heading{box-sizing:border-box;max-width:calc(100% - 135px);width:205px;padding:8px 10px}
#explorationMap .map-heading h2{font-size:14px;line-height:20px;color:#fff0d2;font-weight:800;white-space:nowrap;margin:0;text-shadow:0 1px #29261b}
#explorationMap .map-heading p{font-size:10px;line-height:15px;color:#e7dbc1;margin:3px 0 0}
#explorationMap #expJourneyHud{color:#fff0d0;line-height:16px;white-space:nowrap}
#explorationMap .map-menu{gap:7px;max-width:none;flex-wrap:nowrap}
#explorationMap .map-menu button{min-width:57px;padding:8px 10px}
#explorationMap #explorationMapEquipment,#explorationMap #explorationMapLoadoutClose,#explorationMap #explorationMapResume{background:#66563c;border-color:#b39860;color:#fff0cf;text-shadow:none;box-shadow:none}
#explorationMap .map-minimap{top:108px;right:13px;width:102px;height:76px;padding:5px}
#explorationMap .map-bottom{left:14px;right:auto;bottom:max(22px,env(safe-area-inset-bottom))}
#explorationMap .map-movement{pointer-events:auto;display:flex;flex-direction:column;align-items:flex-start;gap:15px}
#explorationMap .map-pad{grid-template-columns:48px 48px 48px;grid-template-rows:48px 48px 48px;gap:5px}
#explorationMap .map-pad button{width:48px;height:48px;font-size:23px!important;padding:0!important;background:#4c473be8}
#explorationMap #explorationMapMovement{height:44px;min-width:82px;background:#4c473be8}
#explorationMap #explorationMapMovement[aria-expanded=true]{background:#66563c;border-color:#b39860;color:#fff0cf;text-shadow:none}
#explorationMap .map-notice{position:absolute;top:200px;left:50%;transform:translateX(-50%);z-index:2;width:max-content;max-width:calc(100% - 28px);box-sizing:border-box;background:#403b2fed;border:1px solid #a48b59;border-radius:5px;padding:9px 12px;color:#fff0d2;box-shadow:0 3px 10px #0005;text-align:center}
#explorationMap .map-notice p{font-size:12px;margin:0;line-height:1.6}
#explorationMap .map-notice button{margin:7px 3px 0}
#explorationMap .map-popup{padding:14px 12px;background:#241e17c9;backdrop-filter:blur(1px)}
#explorationMap .map-popup>section,#explorationMap .battle-result-card {border:6px solid transparent;border-image:url('assets/ui/stone-frame.svg') 40 / 9px stretch;background-color:#4b4639;background-image:linear-gradient(125deg,#5a534555,transparent 35%),linear-gradient(30deg,transparent 69%,#38362b44 70%,transparent 71%);border-radius:7px;box-shadow:0 2px #242820,0 12px 28px #0007;color:#f3ead4;padding:18px;max-height:calc(var(--exp-map-height,100vh) - 28px)}
#explorationMap .map-popup h3,#explorationMap #expBattleOutcome{background:linear-gradient(#624c3a,#514032);border:1px solid #b18b4b;border-radius:0;color:#fff0cf;font-size:19px;letter-spacing:2px;box-shadow:inset 0 1px #d4ac6944,0 2px #27271f66;text-align:center;padding:10px 14px;line-height:1.3;margin:0 0 16px;text-shadow:0 1px #37281c;overflow-wrap:anywhere}
#explorationMap .map-popup p{color:#dfd0ad;font-size:13px;line-height:1.75;overflow-wrap:anywhere}
#explorationMap .map-popup h4 {font-size:13px;line-height:1.4;color:#ecd7a9;margin:16px 0 10px}
#explorationMap .map-popup>section.exp-character-panel{padding:0;width:min(640px,100%);display:flex;flex-direction:column;overflow:hidden}
#explorationMap .exp-character-head{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;height:61px;padding:7px 46px 11px}
#explorationMap .exp-character-head h3{width:188px;max-width:100%;box-sizing:border-box;margin:0;padding:9px;height:42px;flex-shrink:1;white-space:nowrap}
#explorationMap #expCharacterClose{position:absolute;right:6px;top:5px;width:39px;min-width:39px;min-height:39px;height:39px;padding:0;border-radius:50%;border:1px solid #897c5d;background:#5e5745;box-shadow:none;color:#f0dfb9;font-size:26px;text-shadow:none}
#explorationMap .exp-character-tabs{display:flex;gap:0;margin:0 12px;padding:0;flex-shrink:0;background:#403c30;border-bottom:1px solid #817454}
#explorationMap .exp-character-tabs button{flex:1;min-width:0;min-height:44px;padding:10px 8px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#cbbd9a;letter-spacing:2px;box-shadow:none;text-shadow:none}
#explorationMap .exp-character-tabs button[aria-selected=true]{border-bottom-color:#d6b677;background:#57503d;color:#fff0cb;box-shadow:none}
#explorationMap .exp-character-tabs button:focus-visible{outline-offset:-3px}
#explorationMap .exp-character-content{padding:11px 12px 13px;overflow:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#867650 #3b372b}
#explorationMap .exp-character-foot{padding:10px 12px;background:#3a382d99;border-top:1px solid #6a634b;flex-shrink:0;display:flex;gap:7px;align-items:flex-start;justify-content:space-between}
#explorationMap .exp-character-foot details{flex:1;min-width:0}
#explorationMap .exp-character-foot summary{cursor:pointer;color:#e5d2a4;font-size:12px;min-height:44px;display:flex;align-items:center}
#explorationMap .exp-character-foot .map-actions{margin-top:6px}
#explorationMap .exp-character-foot .map-actions button{font-size:12px}
#explorationMap .exp-hero-block{display:grid;grid-template-columns:95px 1fr;gap:12px;margin-bottom:13px}
#explorationMap .exp-hero-block h4{font-size:17px;margin:5px 0}
#explorationMap .exp-portrait{position:relative;height:105px;background:radial-gradient(#6f6650,#413e31);border:4px solid #8d8060;border-radius:50%;box-shadow:inset 0 2px #c4b48a99,0 0 0 2px #343729;overflow:hidden}
#explorationMap .exp-portrait canvas{position:absolute;width:126px;height:126px;left:-19px;bottom:-5px;image-rendering:pixelated}
#explorationMap .exp-hero-level{position:absolute;left:19px;top:6px;padding:2px 5px;background:#27895d;border-radius:10px;color:#e4ffdf;font-size:9px;border:1px solid #58b789}
#explorationMap .exp-meter{position:relative;height:19px;border:2px solid #28291f;border-radius:6px;background:#2b2d22;overflow:hidden;margin-top:8px}
#explorationMap .exp-meter i{display:block;height:100%;background:linear-gradient(#ffcc54,#f78b24)}
#explorationMap .exp-meter.mp i{background:linear-gradient(#57ccb3,#238e80)}
#explorationMap .exp-meter span{position:absolute;top:0;right:0;bottom:0;left:0;text-align:center;font-size:10px;line-height:15px;color:#fff4d8;font-weight:700;text-shadow:0 1px 2px #4e3417}
#explorationMap .exp-hero-status{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}
#explorationMap .exp-hero-status span{background:#37432d;border:1px solid #84905f;color:#fff3d9;font-size:10px;font-weight:600;padding:3px 5px;border-radius:5px}
#explorationMap .exp-hero-status span+span{background:#59462d;border-color:#ac8b4c}
#explorationMap .exp-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
#explorationMap .exp-stat-grid>div{display:flex;justify-content:space-between;align-items:center;gap:5px;background:linear-gradient(#554e40aa,#413c2e99);border:1px solid #706346;border-radius:5px;padding:8px 9px;font-size:11px;color:#decda7}
#explorationMap .exp-stat-grid strong{font-size:17px;color:#ebd5a6}
#explorationMap .exp-stat-grid small{color:#b9d196;font-size:10px}
#explorationMap .map-loadout{display:grid;grid-template-columns:1fr 1fr;gap:6px}
#explorationMap .map-loadout figure{display:grid;grid-template-columns:33px 1fr;column-gap:6px;align-items:center;max-width:none;padding:6px;background:linear-gradient(#554b3899,#413a2b99);border:1px solid #947342;border-radius:7px;min-width:0;text-align:left}
#explorationMap .map-loadout img,#explorationMap .map-loadout svg{width:33px;height:33px;grid-row:span 2;image-rendering:pixelated}
#explorationMap .map-loadout figcaption{font-size:10px;max-width:none;overflow-wrap:anywhere;color:#efdbb0}
#explorationMap .map-loadout small{font-size:9px;color:#c3b38d}
#explorationMap p.exp-minor,#explorationMap #explorationMapLoadoutText{font-size:11px;color:#ded2b5;margin:6px 0;line-height:1.6}
#explorationMap .exp-notice{border-left:3px solid #a98140;background:#36352966;border-radius:4px;padding:8px 9px;font-size:11px}
#explorationMap .exp-item-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 6px}
#explorationMap button.exp-item-slot{position:relative;width:100%;aspect-ratio:1;min-width:0;min-height:44px;padding:7px;display:grid;place-items:center;border:1px solid #696048;border-radius:50%;background:#3d3729;box-shadow:none}
#explorationMap .exp-item-slot svg{width:42px;height:42px;max-width:100%}
#explorationMap .exp-item-slot[aria-pressed=true]{border-color:#d4a449;background:#514630}
#explorationMap .exp-item-quantity{position:absolute;bottom:0;right:0;background:#272a1e;border-radius:50%;min-width:20px;height:20px;font-size:10px;color:#fff3d9;display:grid;place-items:center}
#explorationMap .exp-item-detail{border:2px solid #88703e;background:#3a3528;border-radius:7px;padding:10px 11px;margin:12px 0}
#explorationMap .exp-item-detail b{font-size:13px;color:#f2d49a}
#explorationMap .exp-item-detail p{font-size:11px;margin:6px 0 0}
#explorationMap .exp-skill-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
#explorationMap .exp-skill-card{background:#403a2c;border:1px solid #7b6440;border-radius:7px;padding:9px 10px;margin:7px 0;min-width:0;overflow-wrap:anywhere}
#explorationMap .exp-skill-card b{font-size:12px;color:#f0d9ae}
#explorationMap .exp-skill-card p{font-size:11px;margin:5px 0 0;line-height:1.6}
#explorationMap .exp-skill-slots .exp-skill-card{border:2px solid #8d7141;background:linear-gradient(#5e5038,#42392a);padding:9px 5px;text-align:center}
#explorationMap #expCharacterSkills fieldset{display:grid;gap:8px;border:1px solid #aa8653;border-radius:7px;padding:12px;margin:14px 0;color:#e8d8b0;min-width:0;font-size:12px}
#explorationMap #expCharacterSkills select{font:inherit;font-size:14px;min-height:44px;min-width:0;width:100%;background:#3c382c;color:#fff3d9;border:1px solid #9f8959;border-radius:5px;padding:6px}
#explorationMap .exp-reward-grid article{border:1px solid #aa8653;background:#403a2c;border-radius:7px}
#explorationMap .exp-reward-grid article p{font-size:13px}
#explorationMap .battle-result-card{box-sizing:border-box;width:min(440px,100%)}
#explorationMap .battle-result-card h4{margin-top:0}
#explorationMap .exp-journey-error{color:#ffceae!important}
@media(min-width:650px){#explorationMap .map-heading{width:216px}#explorationMap .exp-character-content{padding:18px 24px}#explorationMap .exp-stat-grid{grid-template-columns:repeat(3,1fr)}#explorationMap .map-loadout{grid-template-columns:repeat(4,1fr)}#explorationMap .map-loadout figure{display:flex;flex-direction:column;text-align:center}#explorationMap .exp-item-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:360px){#explorationMap .map-top{left:8px;right:8px;gap:5px}#explorationMap .map-heading{padding:7px 8px;max-width:calc(100% - 124px)}#explorationMap .map-heading h2{font-size:12px;line-height:18px}#explorationMap .map-heading p{font-size:9px;line-height:14px}#explorationMap .map-menu button{min-width:52px;padding:6px;font-size:12px}#explorationMap .exp-character-head h3{width:160px;font-size:17px}}
@media(max-height:500px){#explorationMap .map-top{top:6px}#explorationMap .map-heading p{display:block}#explorationMap .map-minimap{top:96px;width:96px;height:72px}#explorationMap .map-notice{top:95px}#explorationMap .map-pad{grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px 44px;gap:3px}#explorationMap .map-pad button{width:44px;height:44px}#explorationMap .map-bottom{bottom:10px}#explorationMap .map-movement{gap:10px}#explorationMap #explorationMapMovement{height:44px}}
#explorationMapCanvas:focus-visible{outline:1px solid #d5bd82;outline-offset:-2px}
#explorationMap .exp-item-empty{aspect-ratio:1;border-radius:50%;background:#3b382bbb;box-shadow:inset 0 2px #2e2e2399;display:grid;place-items:center;color:#66634d;font-size:29px;font-weight:800}
#explorationMap .exp-item-empty:after{content:'+'}
#explorationMap .exp-question{background:#4b4639;color:#f3ead4}
#explorationMap .exp-question .question-body{background:#403b2f;border:1px solid #9c8757;border-radius:7px}
#explorationMap .exp-question h3{background:linear-gradient(#624c3a,#514032);border:1px solid #b18b4b;border-radius:0;padding:8px 12px;color:#fff0cf;font-size:18px}
#explorationMap .exp-question p{color:#e0d2b2}
#explorationMap .exp-question h4{color:#f0d9ac}
#explorationMap .exp-skill-card{display:flex;gap:9px;align-items:flex-start}
#explorationMap .exp-skill-icon{display:grid;place-items:center;width:33px;height:33px;flex-shrink:0;border:2px solid #a7803e;border-radius:50%;background:linear-gradient(#735b38,#47382a);box-shadow:inset 0 1px #cdb07355}
#explorationMap .exp-skill-icon svg{width:22px;height:22px;fill:#f1d297;stroke:#f1d297;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
#explorationMap .exp-skill-info{flex:1;min-width:0}
#explorationMap .exp-skill-slots .exp-skill-card{flex-direction:column;align-items:center}
#explorationMap .exp-skill-slots .exp-skill-icon{width:35px;height:35px}
#explorationMap #expSkillEditor{margin:14px 0;color:#e5d2a4;font-size:12px}
#explorationMap #expSkillEditor summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:7px 12px;border:1px solid #947342;border-radius:7px;background:#554b3866}
#explorationMap #expSkillEditor summary:before{content:'▸';margin-right:8px}
#explorationMap #expSkillEditor[open] summary:before{content:'▾'}
