/* Top-down route stays at the illustration's aspect ratio on Safari and desktop. */
.adv-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.adv-tabs button{min-height:44px;padding:8px 14px}.adv-tabs [aria-pressed=true]{color:#efe4bf;border-color:#c9ae70;background:#263628}.adv-heading{margin:20px 0}.adv-heading h2{margin:8px 0;font-size:clamp(26px,4vw,40px)}.adv-heading p{line-height:1.55;max-width:65ch}.adv-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.adv-card{position:relative;min-width:0;min-height:220px;border:1px solid #b59b63;border-radius:15px;padding:0;overflow:hidden;text-align:left;background:#111d16;isolation:isolate}.adv-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s}.adv-card:hover .adv-cover{transform:scale(1.025)}.adv-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 15%,#07110de8 92%)}.adv-card-copy{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:9px;min-height:220px;padding:22px;color:#ede8d6}.adv-card-copy small{color:#d7bb7d;font-size:12px;letter-spacing:.04em}.adv-card-copy strong{font-size:27px;font-variant:small-caps}.adv-card-copy>span{font-size:15px}.adv-exploration{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,1fr);gap:24px;align-items:start}.adv-map{position:relative;aspect-ratio:2/3;isolation:isolate;border:1px solid #aa935f;border-radius:16px;overflow:hidden;background:#131c16}.adv-terrain{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.adv-route{position:absolute;width:100%;height:100%;inset:0;pointer-events:none;filter:drop-shadow(0 1px 2px #000)}.adv-route polyline{fill:none;stroke:#e2c67cb0;stroke-width:.6;stroke-dasharray:1 1;stroke-linejoin:round}.adv-node{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;min-height:44px;padding:0;display:grid;place-items:center;border-radius:50%;background:#121f19eb;border:2px solid #91825c;color:#cbbf9e;box-shadow:0 2px 10px #0009;font:700 17px Georgia,serif}.adv-node.next{border-color:#e6c570;color:#fff4d1;background:#463a20}.adv-node.done{border-color:#81b794;color:#bcdfc4;background:#203b2b}.adv-node.selected{outline:3px solid #efe3b1;outline-offset:4px;z-index:2}.adv-node.boss{border-radius:12px;border-width:3px}.adv-detail{padding:20px;border:1px solid #766442;border-radius:14px;background:linear-gradient(145deg,#203026e8,#0d1712f5);scroll-margin-top:170px}.adv-detail h3{font-size:27px;margin:10px 0 16px}.adv-detail h4{font-size:21px;margin:12px 0}.adv-enemy{width:100%;max-height:260px;object-fit:cover;border-radius:10px}.adv-detail small{display:block;font-size:13px;line-height:1.5;color:#b6baa9;margin-top:12px}.adv-detail .primary{width:100%;min-height:48px}.adv-travel{padding:16px 20px;border:1px solid #bca064;border-radius:12px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#1d2d22ed}.adv-travel h3{font-size:20px;margin:6px 0}.adv-travel>div{flex:1;min-width:140px}.adv-travel small{flex-basis:100%;color:#babcae}.adv-clock{font-variant-numeric:tabular-nums;margin:0;color:#e2c57f}.adv-report{padding:15px;margin:20px 0;border-block:1px solid #63715b;line-height:1.5}.adv-complete{color:#a6d0ac}.adv-task-group{margin:28px 0}.adv-task-group>small{color:#b9b9a8}.adv-task{display:flex;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid #53604c}.adv-task>div:first-child{flex:1;min-width:0}.adv-task h4{font-size:20px;margin:0 0 12px}.adv-task progress{display:block;width:100%;height:6px;accent-color:#b99d62;margin-bottom:8px}.adv-task-reward{text-align:center;min-width:94px}.adv-task-reward strong{display:block;color:#88c5a0;margin-bottom:10px}.adv-task-reward button{padding:8px;min-height:44px}.adv-back{margin-top:16px}@media(max-width:650px){.adv-cards{grid-template-columns:1fr}.adv-card,.adv-card-copy{min-height:210px}.adv-exploration{grid-template-columns:1fr;gap:16px}.adv-map{max-width:480px;width:100%;margin:auto}.adv-detail{padding:16px}.adv-enemy{max-height:220px}.adv-heading h2{font-size:29px}.adv-tabs{gap:6px}.adv-tabs button{font-size:14px;padding:8px 10px}}@media(prefers-reduced-motion:reduce){.adv-cover{transition:none}}

/* Authored node positions use stylesheet rules under the existing self-only CSP. */
.adv-node[data-adv-point="0"]{left:25%;top:90%}.adv-node[data-adv-point="1"]{left:70%;top:90%}.adv-node[data-adv-point="2"]{left:70%;top:72%}.adv-node[data-adv-point="3"]{left:25%;top:72%}.adv-node[data-adv-point="4"]{left:25%;top:54%}.adv-node[data-adv-point="5"]{left:70%;top:54%}.adv-node[data-adv-point="6"]{left:70%;top:36%}.adv-node[data-adv-point="7"]{left:25%;top:36%}.adv-node[data-adv-point="8"]{left:25%;top:18%}.adv-node[data-adv-point="9"]{left:70%;top:12%}

.adv-detail-clock{display:table;max-width:100%;margin:10px 0 0;padding:5px 10px;border:1px solid #766442;border-radius:8px;background:#101d16;color:#e2c57f;font-size:14px;line-height:1.5}

.adv-task-reward .task-stone{max-width:150px;color:#e0ca90;font-size:13px;line-height:1.4}.adv-task-reward .task-stone:before{content:'◆';display:block;color:#c5ac72;font-size:18px;margin-bottom:3px}

/* M52: one next milestone per group; ready claims always come first. */
.adv-task-group{margin:16px 0;padding:14px;border:1px solid #806d4744;border-radius:12px;background:#142219aa}
.adv-task-group h3{font-size:21px;margin:0 0 6px}.adv-task{padding:10px 0;gap:10px}.adv-task h4{font-size:16px;margin-bottom:7px}.adv-task-reward{min-width:80px;max-width:130px}.adv-task-reward strong{margin-bottom:4px}.adv-task-reward .task-stone:before{display:none}.adv-task-group summary{padding:12px 0 0;cursor:pointer;color:#d6bd80}.adv-ready{border-color:#b49a65}.adv-task-group>small{font-size:12px;line-height:1.5}
