.sp{flex:1}
.side{width:390px}
.maplegend{position:absolute;left:10px;bottom:22px;z-index:800;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:6px 10px;display:flex;gap:10px;font-size:12px;box-shadow:var(--shadow)}
.maplegend span{display:flex;align-items:center;gap:5px}.maplegend i{width:14px;height:4px;border-radius:2px}
.planhead{display:flex;gap:8px;align-items:flex-start;justify-content:space-between}
.planhead b{font:700 19px var(--display);text-transform:uppercase;display:block;overflow-wrap:anywhere}
.score{display:flex;align-items:center;gap:14px;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px}
.score .big{font:700 52px/1 var(--display);color:var(--repeat);min-width:112px;text-align:center}
.score.low .big{color:var(--fresh)}
.scoretxt b{display:block;font-size:15px}
.strip-w{display:grid;gap:4px}
.strip{width:100%;height:34px;border-radius:6px;background:var(--sunk);cursor:crosshair;display:block}
.strip-ax{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}
.cmp{display:grid;gap:6px}
.cr{display:grid;grid-template-columns:1fr auto;gap:2px 10px;text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:8px 10px;width:100%}
.cr:hover{border-color:var(--hist)}
.cr[aria-pressed="true"]{border-color:var(--info);box-shadow:inset 3px 0 0 var(--info)}
.cr b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cr .p{font:700 18px var(--display);text-align:right}
.cr small{color:var(--muted);font-size:12px}
.cr .bar{grid-column:1/-1;height:5px;border-radius:3px;background:var(--sunk);overflow:hidden}
.cr .bar i{display:block;height:100%;background:var(--repeat)}
.chkrow{display:flex;gap:6px;align-items:center;font-size:14px;flex-wrap:wrap}
.chkrow input{width:18px;height:18px;accent-color:var(--accent)}
.wiki{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:14px}
.wiki summary{cursor:pointer;font-weight:600}
.wiki p,.wiki ol{margin:8px 0 0}.wiki ol{padding-left:20px;display:grid;gap:4px}
.hl{display:grid;gap:6px}
.hr{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:7px 9px}
.hr.dim .nm{opacity:.55}
.hr .iconbtn[data-vis]{color:var(--hist)}
.hr .iconbtn[data-vis].off{color:var(--muted)}
.hr > .nm:first-child{grid-column:1/3}
.hr .nm{min-width:0;border:0;background:none;text-align:left;padding:0}
.hr .nm b{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hr .nm small{color:var(--muted);font-size:12px}
.hr .acts{display:flex;gap:4px}
.saved{display:grid;gap:4px}
.saved button{display:flex;justify-content:space-between;gap:8px;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:7px 10px;font-size:14px}
.saved button small{color:var(--muted);white-space:nowrap}
.or{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin:10px 0 6px}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.prog2{font-size:13px;font-weight:600;background:var(--accent-soft);border-radius:8px;padding:8px 10px}
#tabs{display:flex;width:100%;max-width:520px}
#tabs button{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 10px;font:700 15px var(--display);text-transform:uppercase;letter-spacing:.03em}
#tabs .ic{width:24px;height:24px}
.drop .bigi{width:60px;height:60px;border-radius:18px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}
.drop .bigi svg{width:34px;height:34px}
.histup{display:grid;gap:6px}
.prog2 .pbar{display:block;height:4px;border-radius:2px;background:var(--surface);overflow:hidden;margin-top:6px}
.prog2 .pbar i{display:block;height:100%;width:0;background:var(--accent);transition:width .2s}
.prog2 #upTxt{overflow-wrap:anywhere}
@media (max-width:899px){
  .toolbar{padding:6px 8px}
  #tabs{max-width:none}
  #tabs button{flex-direction:column;gap:3px;font-size:13px;padding:8px 4px}
  #tabs .ic{width:28px;height:28px}
  #histKm{display:none!important}
  .side{width:100%}
}
#planSavedW{display:grid;gap:6px}
#planSavedW .or{margin-bottom:0}
