:root{color-scheme:dark;--bg-primary:#0b0e16;--bg-secondary:#101522;--panel:#151a27;--border:#30384c;--text-primary:#f1f2f7;--text-secondary:#a4aec2;--accent:#f1bb73;--accent-secondary:#83dbe6;--warning:#f1bb73;--success:#83dbe6;--danger:#ec9da6;font-family:"Segoe UI",Inter,system-ui,sans-serif;background:var(--bg-primary);color:var(--text-primary);scroll-behavior:smooth;scroll-padding-top:190px}
:root[data-theme=light]{color-scheme:light;--bg-primary:#f2f0f6;--bg-secondary:#eae7f0;--panel:#fff;--border:#d1ccdc;--text-primary:#252435;--text-secondary:#686477;--accent:#91510b;--accent-secondary:#17697b;--warning:#91510b;--success:#17697b;--danger:#a33b50}
*{box-sizing:border-box}body{margin:0;font-size:15px;line-height:1.5;background:var(--bg-primary)}[hidden]{display:none!important}button,input,select,textarea{font:inherit}button,a,summary,select,label.inline{cursor:pointer}button{color:inherit}button:disabled{opacity:.5;cursor:default}a{color:var(--accent-secondary)}:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:4px}button,input,select{max-width:100%}h1,h2,h3,h4,p{margin-top:0}h1,h2{font-weight:650;letter-spacing:-.7px;line-height:1.2;margin-bottom:0}h1{font-size:36px}h2{font-size:23px}h3{font-size:17px}a{text-underline-offset:4px}.muted,.hint,.fineprint{color:var(--text-secondary)}.hint{font-size:13px;line-height:1.6;margin:0 0 18px}.fineprint{font-size:12px;line-height:1.65;margin:12px 0 0}.kicker{display:block;font-size:11px;color:var(--accent);font-weight:650;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:7px}.field-label{font-size:11px;color:var(--text-secondary);letter-spacing:.8px}.skip-link{position:fixed;top:8px;left:16px;z-index:3000;padding:12px;background:var(--panel);transform:translateY(-180%)}.skip-link:focus{transform:none}
.site-shell{position:sticky;top:0;z-index:100;background:var(--bg-primary);border-bottom:1px solid var(--border)}.topbar{max-width:1540px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text-primary)}.brand img{object-fit:contain;image-rendering:pixelated}.brand strong{font-size:24px;letter-spacing:-.6px}.brand b{color:var(--accent);font-size:13px;text-transform:uppercase;letter-spacing:1px;margin-left:5px}.brand small{display:block;font-size:9px;letter-spacing:2px;color:var(--text-secondary);margin-top:2px}.top-actions{display:flex;align-items:center;gap:16px}.version{font-size:11px;color:var(--text-secondary)}
.session-bar{display:flex;align-items:center;gap:20px;max-width:1492px;margin:0 auto;padding:8px 14px;border:1px solid var(--border);border-radius:9px;background:var(--bg-secondary);min-height:60px}.state{display:inline-flex;align-items:center;gap:8px;font-size:12px;white-space:nowrap;font-weight:600;color:var(--text-secondary)}.state::before{content:"";width:7px;height:7px;border:1px solid currentColor;border-radius:50%;flex:none}.state.live{color:var(--accent-secondary)}.state.live::before{background:currentColor}.state.error{color:var(--danger)}.state.scan{color:var(--accent)}.session-source{font-size:12px;color:var(--text-secondary);flex:1}.session-actions{display:flex;gap:8px;align-items:center;margin-left:auto}.section-nav{display:flex;gap:18px;max-width:1536px;margin:0 auto;padding:0 24px;overflow:auto;scrollbar-width:none}.section-nav a{display:block;flex:none;text-decoration:none;color:var(--text-secondary);padding:14px 12px 12px;font-size:13px;border-bottom:2px solid transparent}.section-nav a:hover,.section-nav a[aria-current]{color:var(--accent);border-color:var(--accent)}
.layout{max-width:1492px;width:calc(100% - 48px);margin:26px auto 36px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}.card{min-width:0;padding:24px;border:1px solid var(--border);border-radius:11px;background:var(--panel);box-shadow:inset 0 1px #ffffff03}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.section-head .state{margin-top:4px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 15px;border:1px solid var(--border);border-radius:7px;background:var(--bg-secondary);font-size:13px;font-weight:600;line-height:1.35;transition:background .14s,border-color .14s}.btn:not(:disabled):hover{border-color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 7%,var(--bg-secondary))}.btn.primary{background:#f1bb73;border-color:#f1bb73;color:#24190c}.btn.primary:not(:disabled):hover{background:#f6c98f;border-color:#f6c98f}.btn.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.btn.quiet{background:transparent}.btn.small{font-size:12px;padding:8px 12px}.text-btn{border:0;background:transparent;color:var(--accent-secondary);font-size:12px;min-height:36px;padding:5px 2px;text-align:left}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px}
.capture-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);padding:0;overflow:hidden}.capture-heading,.capture-card>#captureHint{display:none}.capture-stage{min-width:0;position:relative;overflow:hidden}.capture-stage video,.capture-stage canvas{display:none}.placeholder{padding:42px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.placeholder h1{font-size:40px;max-width:700px;letter-spacing:-1px}.placeholder p{font-size:18px;line-height:1.65;color:var(--text-secondary);max-width:750px;margin:6px 0 8px}.placeholder>.btn{font-size:16px;min-width:230px;padding:14px 24px}.placeholder>span:not(.kicker){font-size:12px;color:var(--text-secondary)}.setup-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;gap:24px;margin:30px 0 10px;width:100%}.setup-steps li{display:flex;gap:12px;align-items:flex-start;font-size:12px;color:var(--text-secondary)}.setup-steps li>b{width:34px;height:36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;color:var(--accent);font-size:16px;flex:none}.setup-steps strong{display:block;font-size:13px;color:var(--text-primary);margin-bottom:4px;font-weight:600}.browse-guide{font-size:13px}.browse-guide span{color:var(--text-secondary);text-decoration:none}.capture-intro{padding:40px 30px;border-left:1px solid var(--border);background:var(--bg-secondary)}.capture-intro h2{font-size:23px;margin:0 0 30px}.capture-intro>div{padding:20px 0;border-top:1px solid var(--border)}.capture-intro h3{font-size:16px;margin:0 0 7px}.capture-intro p{font-size:14px;line-height:1.6;color:var(--text-secondary);margin:0}
.player-card{grid-column:span 7}body[data-session=idle] .player-card{display:none}body[data-session=active] .capture-card{grid-column:span 5;display:block;padding:22px}body[data-session=active] .capture-heading{display:flex}body[data-session=active] .capture-title{font-size:22px}body[data-session=active] .capture-card>#captureHint{display:block}body[data-session=active] .capture-intro{display:none}body[data-session=active] .capture-stage{aspect-ratio:16/9;border:1px solid var(--border);border-radius:7px;background:var(--bg-primary);display:grid;place-items:center}body[data-session=active] .capture-stage video,body[data-session=active] .capture-stage canvas{display:block;width:100%;height:100%;max-height:380px;object-fit:contain}body.has-source .placeholder{display:none}body[data-session=active] .placeholder{padding:20px;gap:10px;text-align:left}body[data-session=active] .placeholder h1{font-size:21px}body[data-session=active] .placeholder p{font-size:13px;margin:0}body[data-session=active] .placeholder .setup-steps,body[data-session=active] .placeholder>.kicker,body[data-session=active] .placeholder .browse-guide{display:none}body[data-session=active] .placeholder>.btn{font-size:13px;min-width:0;padding:10px 16px}body[data-session=active] .capture-stage.preview-collapsed{height:1px;min-height:0;aspect-ratio:auto;border:0}.capture-stage.preview-collapsed>video,.capture-stage.preview-collapsed>canvas{position:absolute;left:0;top:0;min-height:250px}
.profile-status{font-size:12px;color:var(--accent-secondary);margin:0 0 15px}.player-summary{display:grid;grid-template-columns:.7fr 1fr 1.1fr;gap:16px}.player-summary>div{min-width:0;display:flex;flex-direction:column}.player-summary strong{font-size:30px;font-weight:600;letter-spacing:-.8px;margin:5px 0;line-height:1.2}.player-summary>div:last-child strong{font-size:24px;margin-top:10px}.player-summary small{display:block;font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:17px}.exp-track{height:4px;background:var(--bg-primary);border-radius:4px;overflow:hidden;margin:16px 0}.exp-track i{display:block;height:100%;width:0;background:var(--accent-secondary);transition:width .2s}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.stat-card{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:7px;background:var(--bg-secondary);min-width:0}.stat-label{font-size:11px;color:var(--text-secondary)}.stat-value{font-size:24px;font-weight:600;line-height:1.2;font-variant-numeric:tabular-nums}.stat-state{font-size:10px;color:var(--text-secondary)}.points{display:flex;gap:28px;margin:13px 0 8px}.points>div{display:flex;align-items:center;gap:12px}.points span{font-size:11px;color:var(--text-secondary)}.points strong{font-size:18px;font-weight:600}.player-card>#statsStatus{font-size:12px;margin-bottom:6px}.player-card>details{margin-top:8px;padding-top:9px}.player-notice{display:flex;align-items:flex-start;gap:9px;padding:10px 12px;margin:0 0 15px;border:1px solid var(--border);border-radius:7px;background:var(--bg-secondary);font-size:12px;color:var(--text-secondary)}.notice-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--warning);margin-top:5px}.next-action{border-top:1px solid var(--border);margin-top:15px;padding-top:16px}.next-action h2{font-size:20px}.advice-goal{margin:10px 0;border:0;padding:0}.advice-goal>summary{color:var(--accent-secondary)}.advice-route{margin-top:12px}.recommendations{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.recommendations article{min-width:0;padding:14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:7px}.recommendations article>div{margin:10px 0 7px;font-size:14px}.recommendations p{font-size:12px;line-height:1.6;color:var(--text-secondary);margin:0}.raise-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid #715b40;border-radius:6px;color:var(--accent);font-size:14px;font-weight:600;margin:0 5px 5px 0}.raise-chip img{object-fit:contain;image-rendering:pixelated}
details{border-top:1px solid var(--border);padding-top:12px;margin-top:14px}summary{font-size:13px;color:var(--text-secondary);min-height:30px;list-style-position:inside}label{display:grid;gap:6px;font-size:13px;color:var(--text-secondary)}.inline{display:flex;align-items:center;gap:8px}input,select,textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);padding:10px 12px;font-size:14px}input[type=checkbox],input[type=radio]{width:16px;height:16px;accent-color:var(--accent-secondary);flex:none}input:disabled,select:disabled{opacity:.5}input::placeholder{color:var(--text-secondary)}.corrections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.correction-field{min-width:0}.correction-field small{display:block;color:var(--text-secondary);font-size:11px;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
.equipment-card{grid-column:span 7}.skills-card{grid-column:span 5}.equipment-layout{display:grid;grid-template-columns:minmax(320px,1fr) minmax(210px,.85fr);gap:22px}.equipment-paperdoll{position:relative;min-height:150px;display:grid;align-content:start;justify-items:center;padding-top:24px}.slot-guide-caption{position:absolute;bottom:-13px;font-size:11px;color:var(--text-secondary);margin:0;display:none}.slot-guide{display:none;pointer-events:none;position:absolute;top:94px;left:calc(50% - 80px);width:78px;height:280px;border:1px dashed #414e67;border-radius:50% 50% 25% 25%;opacity:.55}.slot-guide i{position:absolute;top:-31px;left:0;width:78px;height:82px;border:1px dashed #414e67;border-radius:50%;background:var(--panel)}.slot-guide b{position:absolute;inset:70px -35px 35px;border:1px dashed #414e67;border-radius:36%}.has-equipment .slot-guide,.has-equipment .slot-guide-caption{display:block}.equipment-grid{display:grid;grid-template-columns:repeat(4,68px);grid-template-rows:repeat(5,68px);gap:26px 16px;grid-template-areas:". hat . ." ". . earrings ." "cape top weapon shield" "gloves bottom . ." ". shoes . .";position:relative;z-index:1}.equipment-grid:empty{display:none}.equipped-item{min-width:0!important;width:68px;height:68px;position:relative;display:grid!important;place-items:center;padding:0!important;border:1px solid #465169!important;border-radius:5px!important;background:color-mix(in srgb,var(--bg-secondary) 92%,var(--accent-secondary) 8%)!important;transition:border-color .12s,box-shadow .12s}.equipped-item[data-slot=hat]{grid-area:hat}.equipped-item[data-slot=earrings]{grid-area:earrings}.equipped-item[data-slot=cape]{grid-area:cape}.equipped-item[data-slot=top]{grid-area:top}.equipped-item[data-slot=weapon]{grid-area:weapon}.equipped-item[data-slot=shield]{grid-area:shield}.equipped-item[data-slot=gloves]{grid-area:gloves}.equipped-item[data-slot=bottom]{grid-area:bottom}.equipped-item[data-slot=shoes]{grid-area:shoes}.equipped-item>img{width:36px;height:36px;object-fit:contain;image-rendering:pixelated;margin-top:-8px}.equipped-item>.slot-label{position:absolute;top:-21px;left:0;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);line-height:1.4}.equipped-item>.slot-status{position:absolute;bottom:3px;left:0;right:0;font-size:10px;color:var(--text-secondary);text-align:center;line-height:1.2}.equipped-item>strong,.equipped-item>small,.equipped-item>.item-stat-group{display:none}.equipped-item .icon-placeholder{font-size:22px;margin-top:-8px;color:var(--text-secondary)}.equipped-item:hover,.equipped-item:focus-visible,.equipped-item.game-hovered{border-color:var(--accent-secondary)!important;box-shadow:0 0 0 1px var(--accent-secondary),inset 0 0 20px #83dbe608}.gear-section{min-width:0;padding-left:20px;border-left:1px solid var(--border)}.gear-section>.divider{margin:0 0 14px;padding:0;border:0}.gear-section .fineprint{margin:0}.gear-guidance{font-size:13px;color:var(--text-secondary);display:grid;gap:12px}.gear-context{font-size:12px;color:var(--text-secondary);margin:0 0 4px}.gear-item:not(.equipped-item){display:grid;grid-template-columns:36px minmax(0,1fr);gap:5px 12px;align-items:start;width:100%;padding:14px;border:1px solid var(--border);border-radius:7px;background:var(--bg-secondary);text-align:left;min-width:0;color:var(--text-primary)}.gear-item:not(.equipped-item)>img{grid-row:2/5;width:32px;height:32px;object-fit:contain;image-rendering:pixelated}.gear-item:not(.equipped-item)>small:first-child{grid-column:1/-1;color:var(--text-secondary);font-size:11px;margin-bottom:5px}.gear-item:not(.equipped-item)>strong{font-size:15px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.gear-item:not(.equipped-item)>span,.gear-item:not(.equipped-item)>small{font-size:11px;line-height:1.6;color:var(--text-secondary);grid-column:2}.gear-item:not(.equipped-item):hover{border-color:var(--accent-secondary)}.gear-guidance:not(.is-expanded)>.gear-item:nth-of-type(n+3){display:none}.panel-empty{margin:20px 0;color:var(--text-secondary);font-size:14px;line-height:1.7;text-align:center;max-width:320px}.skills-columns{display:flex;justify-content:space-between;color:var(--text-secondary);font-size:11px;text-transform:uppercase;margin:0 0 12px}.skills-list{display:grid}.skill-card{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;border:0;border-bottom:1px solid var(--border);background:transparent;padding:13px 0;text-align:left;width:100%;min-height:68px}.skill-card:hover{background:var(--bg-secondary)}.skill-card img{width:32px;height:32px;object-fit:contain;image-rendering:pixelated}.skill-card>span:nth-child(2){font-size:15px;font-weight:500}.skill-card small{display:block;font-size:11px;color:var(--text-secondary);font-weight:400;margin-top:4px}.skill-rank{text-align:right;min-width:68px}.skill-rank b{font-weight:600;font-size:18px;white-space:nowrap}.skill-rank em{font-size:12px;font-style:normal;color:var(--text-secondary);font-weight:400}.skill-rank .skill-next{color:var(--accent);max-width:130px}.skills-card:has(.skills-list:empty) .skills-columns{display:none}
.planner-card,.reference-card,.diagnostics-card,.activity-card,.map-card{grid-column:1/-1}.guide-details{border:0;padding:0;margin:0}.guide-details>summary{font-size:20px;font-weight:600;color:var(--text-primary);padding:2px 0}.guide-details>summary>span{font-size:12px;font-weight:400;color:var(--text-secondary);margin-left:14px}.guide-details[open]>summary{margin-bottom:24px}.planner-heading{align-items:center}.planner-controls{display:flex;gap:10px;align-items:end}.planner-controls input{width:85px}.planner-controls select{width:260px}.guide-controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:16px 0}.guide-controls>label:first-child{min-width:230px}.planner-options{display:flex;gap:12px}.planner-options>label{max-width:340px}.route-explanation{font-size:13px;color:var(--text-secondary);border-left:2px solid var(--accent-secondary);padding:10px 14px;background:var(--bg-secondary)}.target-strip{display:flex;flex-wrap:wrap;gap:7px 20px;border-left:2px solid var(--accent);background:var(--bg-secondary);padding:14px;margin:18px 0;color:var(--text-secondary);font-size:12px}.target-strip strong{color:var(--text-primary);font-weight:500}.target-strip>span:last-child{flex-basis:100%}.timeline-header,.timeline-row{display:grid;grid-template-columns:85px minmax(130px,.7fr) minmax(0,1.7fr);gap:20px}.timeline-header{font-size:11px;color:var(--text-secondary);letter-spacing:.5px;padding:10px 12px}.timeline{max-height:440px;overflow:auto;border-top:1px solid var(--border)}.timeline-row{width:100%;min-height:48px;padding:14px 12px;border:0;border-bottom:1px solid var(--border);background:transparent;text-align:left;font-size:13px;color:var(--text-secondary)}.timeline-row strong{color:var(--text-primary)}.timeline-row:hover{background:var(--bg-secondary)}.timeline-row.active{box-shadow:inset 3px 0 var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.timeline-row.current-player{box-shadow:inset -3px 0 var(--accent-secondary)}.timeline-row.active.current-player{box-shadow:inset 3px 0 var(--accent),inset -3px 0 var(--accent-secondary)}.current-level-marker{display:block;font-size:10px;font-weight:400;color:var(--accent-secondary);margin-top:3px}
.reference-card{font-size:13px}.reference-card h2{font-size:18px;margin-bottom:12px}.reference-card a,.activity-card a{color:var(--accent-secondary)}.diagnostics-card details{border:0;margin:0;padding:0}pre{font:12px/1.6 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:440px;overflow:auto;background:var(--bg-primary);padding:16px;border-radius:7px;color:var(--accent-secondary)}footer{display:flex;justify-content:space-between;gap:20px;max-width:1492px;width:calc(100% - 48px);margin:0 auto 24px;padding-top:18px;border-top:1px solid var(--border);font-size:12px;color:var(--text-secondary)}footer a{font-size:12px;text-decoration:none}
.settings-dialog,.item-details{width:min(600px,calc(100vw - 32px));max-height:85dvh;overflow:auto;margin:auto;padding:26px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--text-primary);box-shadow:0 24px 100px #0007}.settings-dialog:not([open]),.item-details:not([open]){display:none}dialog::backdrop{background:#070912b8;backdrop-filter:blur(3px)}.setting-row{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:22px 0;border-top:1px solid var(--border)}.setting-row p{font-size:13px;color:var(--text-secondary);margin:5px 0 0;max-width:320px}.setting-row .btn{flex-shrink:0}.setting-row>label{flex:1}.settings-dialog>.section-head{margin-bottom:10px}
.maple-tooltip{position:fixed;z-index:1600;pointer-events:none;background:#201829f5;border:1px solid #a28fb6;border-radius:6px;box-shadow:inset 0 1px #dcc8ef30,0 12px 40px #0006;padding:18px;width:max-content;max-width:min(360px,calc(100vw - 16px));max-height:calc(100dvh - 16px);overflow:hidden;color:#f4eff8;white-space:pre-line;font-size:13px;line-height:1.65;animation:tooltip-in .12s ease-out}.tooltip-title{font-size:17px;color:#fff0d0;line-height:1.4;letter-spacing:-.2px;margin:0 0 12px;font-weight:650;overflow-wrap:anywhere}.tooltip-icon{width:48px;height:48px;object-fit:contain;image-rendering:pixelated;float:left;margin:0 14px 8px 0}.tooltip-row{margin:0;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.tooltip-section{clear:both;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#c9bbdf;border-top:1px solid #62516d;padding-top:10px;margin:10px 0 6px}.tooltip-source{clear:both;color:#b7a9c4;font-size:11px;line-height:1.6;margin:4px 0}.item-details{background:#201829;color:#f4eff8;border-color:#a28fb6;z-index:1700}.item-details .tooltip-title{display:none}.item-details .tooltip-row{font-size:14px}.item-details .tooltip-icon{width:64px;height:64px}.item-details>.section-head h2{font-size:21px;line-height:1.5}.item-details>.section-head .btn{color:#f4eff8;border-color:#62516d}
input:not([type=checkbox]):not([type=radio]),textarea,[contenteditable=true]{cursor:text}
@keyframes tooltip-in{from{opacity:0}to{opacity:1}}
@media(min-width:901px) and (max-width:1200px){.equipment-layout{grid-template-columns:1fr}.gear-section{border-left:0;border-top:1px solid var(--border);padding:20px 0 0;margin-top:14px}.equipment-paperdoll{padding-bottom:22px}.gear-guidance{grid-template-columns:1fr 1fr}.gear-context{grid-column:1/-1}.recommendations{gap:8px}.card{padding:20px}.placeholder{padding:30px}.setup-steps{gap:16px;grid-template-columns:1fr}.capture-intro{padding:28px 24px}}
@media(max-width:900px){:root{scroll-padding-top:186px}.layout{grid-template-columns:1fr;gap:18px}.layout>.card,body[data-session=active] .capture-card{grid-column:1}.capture-card{grid-template-columns:1fr}.capture-intro{border-left:0;border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:24px}.capture-intro h2{grid-column:1/-1;margin:0}.capture-intro>div{padding:0;border:0}.session-bar{margin:0 20px}.session-source{font-size:11px;max-width:250px}.section-nav{gap:6px;padding:0 20px}.planner-heading{flex-direction:column;align-items:stretch}.planner-controls{flex-wrap:wrap}.planner-controls select{width:100%}.planner-controls>label:first-child{flex:1}.equipment-layout{grid-template-columns:minmax(320px,1fr) minmax(210px,.8fr)}body[data-session=active] .capture-stage{max-height:330px}.player-card{container-type:inline-size}.guide-details>summary>span{display:block;margin:8px 0 0 20px}}
@media(max-width:600px){:root{scroll-padding-top:190px}.topbar{padding:12px 14px}.brand{gap:8px}.brand img{width:30px;height:30px}.brand strong{font-size:20px}.brand small{font-size:8px;letter-spacing:1px}.brand b{font-size:10px}.version{display:none}.top-actions{gap:8px}.top-actions .btn{padding:9px 12px}.session-bar{margin:0 12px;padding:8px 10px;gap:8px;flex-wrap:wrap}.session-source{display:none}.session-actions{gap:6px}.session-actions .btn{font-size:12px;padding:9px 10px}.section-nav{padding:0 8px;gap:0}.section-nav a{font-size:12px;padding:13px 11px 11px}.layout{width:calc(100% - 24px);margin-top:16px;gap:14px}.card,body[data-session=active] .capture-card{padding:18px}.capture-card{padding:0}.placeholder{padding:26px 22px}.placeholder h1{font-size:30px}.placeholder p{font-size:16px}.setup-steps{grid-template-columns:1fr;gap:16px;margin-top:20px}.capture-intro{grid-template-columns:1fr;padding:24px;gap:18px}.capture-intro h2{font-size:20px}.capture-intro h3{font-size:15px}.capture-intro p{font-size:13px}.section-head{gap:10px}.section-head h2{font-size:21px}.state{font-size:11px}.player-summary{gap:10px;grid-template-columns:.6fr .95fr 1fr}.player-summary strong{font-size:26px}.player-summary>div:last-child strong{font-size:19px}.player-summary small{font-size:10px}.stats{gap:7px}.stat-card{padding:9px 8px}.stat-value{font-size:23px}.stat-state{font-size:10px}.recommendations{grid-template-columns:1fr}.corrections{grid-template-columns:1fr}.equipment-layout{grid-template-columns:1fr;gap:20px}.gear-section{border-left:0;border-top:1px solid var(--border);padding:20px 0 0;margin-top:15px}.equipment-paperdoll{padding-bottom:20px}.skills-card{padding:18px}.skill-card{gap:10px}.skill-card>span:nth-child(2){font-size:14px}.skill-rank b{font-size:16px}.skill-rank small{font-size:10px}.planner-controls>label:first-child{flex-basis:100%}.planner-controls input{width:80px}.guide-controls>label:first-child{min-width:0;width:100%}.planner-options{flex-direction:column}.timeline-header,.timeline-row{grid-template-columns:54px 86px minmax(0,1fr);gap:10px}.timeline-row{font-size:12px;padding:12px 6px}.timeline-header{font-size:10px;padding:10px 6px}.settings-dialog,.item-details{padding:20px}.setting-row{gap:14px;flex-wrap:wrap}.setting-row>label{flex-basis:100%}.setting-row p{max-width:none}.item-details{width:100%;max-height:88dvh;border-radius:14px 14px 0 0;margin:auto 0 0;max-width:none}.item-details .section-head{position:sticky;top:-20px;padding:14px 0;background:#201829;z-index:1}.item-details .tooltip-icon{float:none}footer{width:calc(100% - 24px);font-size:11px;gap:12px}}
@media(max-width:360px){.equipment-grid{grid-template-columns:repeat(4,60px);gap:26px 12px}.equipped-item{width:60px}.session-actions{width:100%;justify-content:stretch}.session-actions .btn{flex:1}.brand small{display:none}.field-label{font-size:10px}}
@media(max-height:650px){.site-shell .brand small,.site-shell .session-source{display:none}.topbar{padding-top:7px;padding-bottom:7px}.section-nav a{padding-top:9px;padding-bottom:9px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.stat-raise{color:var(--accent);font-size:13px;white-space:nowrap;letter-spacing:0;font-weight:600}.planned-skill{display:inline-flex;align-items:center;gap:8px}.planned-skill img{object-fit:contain;image-rendering:pixelated;flex:none}.planned-skills{display:flex;flex-wrap:wrap;gap:8px 16px}.timeline{position:relative}
/* Map art stays on one compact surface; live updates move only the player pin. */
.map-card{grid-column:1/-1}.map-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.map-region{margin:-4px 0 16px;color:var(--text-secondary);font-size:12px}.map-overview{display:block}.map-preview{max-width:900px;margin:0 auto;border:1px solid var(--border);border-radius:10px;background:#080c13;overflow:hidden;min-height:110px;display:grid;place-items:center}.map-preview svg{display:block;width:100%;height:auto;max-height:330px}.map-preview .map-background,.map-preview .map-terrain{pointer-events:none}.map-portal,.map-npc{cursor:pointer}.portal-art,.map-npc image{pointer-events:none}.map-preview image{image-rendering:auto}.portal-still{display:none}.map-marker-hit{fill:transparent;stroke:none;pointer-events:all}.map-portal:hover .portal-art,.map-portal:focus-visible .portal-art{opacity:.85}.map-npc:hover image,.map-npc:focus-visible image,.map-npc.npc-highlight image{filter:drop-shadow(0 0 12px #fff) drop-shadow(0 0 12px #6ee5ff)}.map-npc path{fill:#efbf63}.teleport-link{stroke:#edb664;stroke-dasharray:6 5;stroke-width:1;vector-effect:non-scaling-stroke;opacity:.45;pointer-events:none}.world-player-marker{pointer-events:none}.world-player-marker path{fill:#ffe268;stroke:#171a23;stroke-width:1.5;vector-effect:non-scaling-stroke}.world-player-marker circle{fill:#473a18;stroke:none}.map-legend{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin:12px 0;font-size:10px;color:var(--text-secondary)}.map-legend>span{display:flex;align-items:center;gap:6px}.portal-key{display:inline-block;width:8px;height:14px;border:2px solid #9edfff;border-radius:50% 50% 30% 30%;flex-shrink:0}.hidden-key{border-color:#f1ca5e}.player-key{display:inline-block;width:8px;height:8px;background:#ffe268;border-radius:50%;box-shadow:0 0 0 2px #fff5c555}.npc-key{display:inline-block;width:8px;height:10px;background:var(--accent-secondary);border-radius:4px 4px 1px 1px}.map-overview .hint{margin:0;font-size:11px}.map-overview>.fineprint{margin-top:6px}.map-overview>details{margin-top:12px}.map-portals{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;max-height:220px;overflow:auto}.map-portals li{display:flex;align-items:start;gap:9px;font-size:11px}.map-portals .portal-key{margin-top:3px}.map-portals small{display:block;color:var(--text-secondary);font-size:9px;margin-top:2px}.map-encounters,.map-npc-section{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.map-encounters{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.6fr);gap:22px}.map-npc-section h3,.map-encounters h3{font-size:16px;margin:0}.map-npc-section .section-head,.map-encounters .section-head{align-items:center}.map-npc-section .muted,.map-encounters .muted{font-size:10px}.map-npcs{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}.map-npc-chip{display:flex;align-items:center;gap:10px;text-align:left;padding:8px 10px;font-size:11px;border:1px solid var(--border);border-radius:7px;background:var(--bg-secondary)}.map-npc-chip img{object-fit:contain;image-rendering:pixelated}.map-npc-chip:hover,.map-npc-chip:focus-visible{border-color:var(--accent-secondary)}.map-monsters{display:grid;gap:7px;max-height:540px;overflow:auto;padding:2px}.monster-button{display:flex;align-items:center;gap:12px;border:1px solid var(--border);background:var(--bg-secondary);border-radius:8px;text-align:left;padding:10px 12px}.monster-button img{object-fit:contain;image-rendering:pixelated}.monster-button>span:nth-child(2){flex:1}.monster-button strong{font-size:12px;font-weight:550;display:block}.monster-button small{display:block;color:var(--text-secondary);font-size:10px;margin-top:3px}.monster-button>span:last-child{color:var(--accent-secondary)}.monster-button:hover,.monster-button[aria-pressed=true]{border-color:var(--accent-secondary);background:var(--bg-primary)}.monster-detail{min-width:0;padding:18px;border:1px solid var(--border);border-radius:10px;background:var(--bg-secondary)}.monster-prompt{padding:50px 20px;max-width:400px;color:var(--text-secondary);font-size:12px}.monster-prompt>span{font-size:28px;color:var(--accent-secondary)}.monster-prompt h3{color:var(--text-primary);margin-top:15px}.monster-detail-head{display:flex;align-items:center;gap:14px}.monster-detail-head img{object-fit:contain;image-rendering:pixelated}.monster-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 0}.monster-metrics dt{font-size:10px;color:var(--text-secondary)}.monster-metrics dd{font-size:17px;margin:4px 0 0}.kill-estimate{padding:14px 16px;border-left:2px solid var(--accent-secondary);background:var(--panel);margin:18px 0}.kill-estimate strong{display:block;font-size:23px;color:var(--accent);margin:6px 0}.kill-estimate p{font-size:11px;margin:0 0 6px}.kill-estimate small{font-size:10px;color:var(--text-secondary)}.monster-drops-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.monster-drops-head h4{font-size:15px;margin:0}.monster-drops-head label{font-size:10px}.drop-table-wrap{max-height:340px;overflow:auto;margin-top:12px}.world-drop-table{border-collapse:collapse;width:100%;font-size:11px}.world-drop-table th{position:sticky;top:0;z-index:1;text-align:left;color:var(--text-secondary);font-size:9px;letter-spacing:.5px;background:var(--bg-secondary);padding:10px 8px;border-bottom:1px solid var(--border)}.world-drop-table td{padding:9px 8px;border-bottom:1px solid var(--border);vertical-align:middle}.world-drop-table td:first-child{display:flex;align-items:center;gap:9px;min-height:48px}.world-drop-table img{object-fit:contain;image-rendering:pixelated;flex-shrink:0}.world-drop-table small{display:block;font-size:9px;color:var(--text-secondary);margin-top:3px}.world-drop-table td:last-child{white-space:nowrap}.map-empty{font-size:12px;color:var(--text-secondary);padding:20px 10px}.monster-detail a,.map-card a{color:var(--accent-secondary)}
body.map-is-maximized{overflow:hidden}.map-card.is-maximized{position:fixed;inset:12px;z-index:900;margin:0;overflow:auto;background:var(--panel);box-shadow:0 0 0 100vmax #070a12db}.map-card.is-maximized>.section-head{position:sticky;top:-22px;z-index:5;padding:12px 0;background:var(--panel)}.map-card.is-maximized .map-preview{max-width:none}.map-card.is-maximized .map-preview svg{max-height:calc(100vh - 210px)}
@media(max-width:900px){.map-encounters{grid-template-columns:1fr}.map-monsters{grid-template-columns:repeat(2,1fr);max-height:300px}.map-card.is-maximized{inset:6px}}
@media(max-width:600px){.map-heading-actions{justify-content:flex-end}.map-preview svg{max-height:260px}.map-monsters{grid-template-columns:1fr}.monster-detail{padding:13px}.monster-metrics{grid-template-columns:repeat(2,1fr)}.world-drop-table td{padding:8px 4px;font-size:10px}.world-drop-table td:first-child{gap:5px}.map-encounters .section-head{align-items:start;flex-direction:column}.map-npcs{grid-template-columns:repeat(2,minmax(0,1fr))}.map-card.is-maximized>.section-head{top:-16px}}
@media(prefers-reduced-motion:reduce){.portal-animation{display:none}.portal-still{display:inline}}
.activity-card{grid-column:1/-1}.activity-card a{color:var(--accent-secondary)}.activity-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:14px}.activity-tabs button{background:var(--bg-secondary);border:1px solid var(--border);border-radius:7px;padding:9px 15px;font-size:12px}.activity-tabs button[aria-selected=true]{border-color:var(--accent-secondary);color:var(--accent-secondary)}.activity-explanation{margin:0 0 16px;max-width:900px}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.activity-option{min-width:0;border:1px solid var(--border);background:var(--bg-secondary);border-radius:9px;padding:16px}.activity-option h3{font-size:16px;margin:0 0 13px}.activity-option p,.activity-option li{font-size:11px;color:var(--text-secondary)}.activity-option>strong{font-size:13px;color:var(--accent)}.activity-option small{display:block;font-size:10px;color:var(--text-secondary)}.activity-target{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:12px}.activity-target img,.quest-item img{object-fit:contain;image-rendering:auto;flex-shrink:0}.activity-target small{margin-top:4px}.activity-option details{font-size:11px;margin-top:12px}.quest-item{display:flex;align-items:center;gap:8px}.activity-card [role=tabpanel]{min-height:130px}.map-npc:hover .map-npc-art,.map-npc:focus-visible .map-npc-art{filter:drop-shadow(0 0 4px #6ee5ff)}
@media(max-width:1000px){.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.activity-grid{grid-template-columns:1fr}.activity-tabs button{padding:8px 10px;font-size:11px}}

/* Map and activity typography follows the companion's readable base scale. */
.maple-tooltip.has-detail-hint{padding-bottom:44px}.tooltip-footer{position:absolute;bottom:0;left:0;right:0;padding:9px 18px;background:#201829;border-top:1px solid #62516d;color:#b7dfe5;font-size:11px}.item-details .tooltip-footer{display:none}
.capture-card.has-message>#captureHint{display:block;grid-column:1/-1;padding:16px 24px;margin:0;border-bottom:1px solid var(--border)}
.map-preview[data-zoomed=true] svg{touch-action:none}
.map-heading-actions .btn{min-height:40px}.map-card .hint,.map-card .fineprint{font-size:12px}.map-preview{max-width:1100px}.map-preview svg{max-height:360px}.map-npcs{gap:10px}.map-npc-chip{font-size:13px;min-height:48px}.monster-button{min-height:58px}.monster-button strong{font-size:14px}.monster-button small{font-size:12px}.monster-detail-head h3{margin:0;font-size:20px}.monster-metrics dt{font-size:12px}.monster-metrics dd{font-size:20px}.world-drop-table{font-size:13px}.world-drop-table th{font-size:11px}.world-drop-table small{font-size:11px}.map-card.is-maximized{inset:16px;z-index:1100}.map-card.is-maximized>.section-head{top:-24px}.map-card.is-maximized .map-preview svg{max-height:calc(100dvh - 235px)}.map-preview svg{touch-action:pan-y}.map-preview.is-panning svg{cursor:grabbing;touch-action:none}.map-zoom{display:flex;gap:5px;align-items:center;margin:0 0 10px}.map-zoom .btn{min-width:44px;min-height:40px;padding:7px 12px}.map-zoom span{font-size:12px;color:var(--text-secondary);margin-left:6px}.map-portals small,.map-legend{font-size:11px}.activity-tabs button{min-height:44px;font-size:13px}.activity-option{padding:20px}.activity-option h3{font-size:18px}.activity-option p,.activity-option li,.activity-target,.activity-option>strong{font-size:13px}.activity-option small{font-size:12px}.activity-target{margin-bottom:16px}.map-card.is-maximized .map-encounters{grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr)}
@media(max-width:600px){.map-card.is-maximized{inset:6px;padding:16px}.map-card.is-maximized>.section-head{top:-16px}.map-preview svg{max-height:300px}.map-heading-actions{gap:7px}.map-heading-actions .btn{font-size:11px;padding:8px}.world-drop-table{font-size:12px}.activity-tabs{gap:6px;overflow:auto}.activity-tabs button{white-space:nowrap;flex:1;padding:8px 10px}.map-zoom{flex-wrap:wrap}}
@media(hover:hover) and (pointer:fine){html,body{cursor:url('./assets/cursor/native-0-0.png') 0 3,default}a,button,summary,select,[role=button],[data-tooltip],label.inline{cursor:url('./assets/cursor/native-1-0.png') 3 6,pointer}.map-preview.is-panning *{cursor:url('./assets/cursor/native-11-0.png') 5 2,grabbing}}

/* Keep tooltip movement composited and its layout local. */
#mapleTooltip{left:0;top:0;contain:layout style paint;will-change:transform}
