/* Stable radar layout: state updates never insert a banner above the canvas. */
.mini-cv,#cv{touch-action:none;user-select:none;-webkit-user-drag:none}
#viewScreener>.free-pro-card{grid-column:1/-1;grid-row:3;min-height:42px;max-height:66px;padding:7px 12px;gap:16px;flex-direction:row;justify-content:space-between}
#viewScreener>.free-pro-card b{font-size:12px}
#viewScreener>.free-pro-card p{font-size:10px;margin:3px 0 0}
#viewScreener>.free-pro-card button{height:28px;flex:none;font-size:11px}
@media(max-width:1050px){#viewScreener>.free-pro-card{grid-row:4}}
#densityState{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
#densityState [data-density-chip]{padding:5px 8px;border:1px solid var(--line,#1E2533);border-radius:5px;background:var(--glass,#141821);font:11px var(--font-mono);font-variant-numeric:tabular-nums;color:var(--muted)}
#densityState[data-state=offline] [data-density-chip=books],#densityState[data-state=partial] [data-density-chip=books],#densityState[data-state=cooldown] [data-density-chip=books]{color:#F5AC37}
#densityControls{gap:8px!important;margin-bottom:8px!important}
#densityControls [data-scalp-count],#densityControls [data-scalp-disable]{display:none!important}
#densityControls label{gap:5px;font-size:11px}
.density-applied-filters{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0 0 8px}
.density-applied-filters[hidden]{display:none}
.density-applied-filters>span{display:inline-flex;gap:6px;align-items:center;min-height:26px;padding:4px 7px;border:1px solid var(--line);border-radius:4px;background:var(--glass);font:11px var(--font-mono);font-variant-numeric:tabular-nums}
.density-applied-filters small{font:10px Inter,system-ui;color:var(--muted)}
.density-applied-filters b{font-weight:500;color:var(--text)}
#densityAge,#densityDistance{height:30px}
#densityRefresh{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:6px}
#densityRefresh svg{width:16px;height:16px}
.radar-stage{position:relative;contain:layout paint size;height:clamp(380px,calc(100dvh - 210px),760px);min-width:0;isolation:isolate}
.radar-stage .density-radar{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;z-index:1}
.radar-stage .radar-legend{position:absolute;top:8px;right:8px;display:flex;gap:5px;z-index:4;font:10px var(--font-mono)}
.radar-legend>span{padding:4px 6px;border:1px solid var(--line,#1E2533);border-radius:4px;background:var(--bg1,#0B0E13);white-space:nowrap}
.radar-sweep{position:absolute;left:50%;top:50%;width:min(78%,590px);aspect-ratio:1;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg,transparent 300deg,color-mix(in srgb,var(--accent) 7%,transparent) 353deg,color-mix(in srgb,var(--accent) 16%,transparent) 360deg);transform:translate(-50%,-50%);animation:radar-scan 12s linear infinite;pointer-events:none;z-index:2}
.radar-stage:not([data-scanning=true]) .radar-sweep{opacity:0;animation-play-state:paused}
@keyframes radar-scan{to{transform:translate(-50%,-50%) rotate(360deg)}}
#marketViewBody{position:relative}
.radar-status-rail{position:absolute;top:12px;left:0;width:240px;z-index:3}
.radar-empty{width:100%;text-align:left;padding:10px 12px;border:1px solid var(--line,#1E2533);border-radius:6px;background:var(--bg1,#0B0E13)}
.radar-empty[hidden],.radar-empty [hidden]{display:none!important}
.radar-empty strong{display:block;font:600 12px/1.5 Inter,system-ui;color:var(--text)}
.radar-empty p{font:11px/1.5 Inter,system-ui;color:var(--muted);margin:5px 0}
.radar-empty small{display:block;font:10px/1.5 var(--font-mono);color:var(--muted)}
.radar-empty button{margin-top:8px;min-height:28px;padding:3px 8px;border:1px solid var(--line);border-radius:4px;background:var(--glass);color:var(--text);font-size:10px;cursor:pointer}
.radar-detail:has(.radar-list:empty){border-color:transparent}
#viewScreener{position:relative}
#screenerPage{min-width:60px;text-align:center;font:600 12px var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text);padding:0 7px;border-inline:1px solid var(--line)}
#screenerPaging button{width:28px;min-width:28px;height:28px;min-height:28px;padding:0;border-radius:5px}
#screenerGrid .mini-card[hidden]{display:none!important}
.density-radar .radar-point.pending>circle{stroke-dasharray:3 3;fill-opacity:.35}
.radar-order[data-confirmed=false]{border-left-style:dashed!important}
.radar-list .radar-order{grid-template-columns:20px minmax(52px,1fr) 30px minmax(60px,1fr) 44px 55px!important;gap:5px}
.radar-order-age{font:10px var(--font-mono);font-variant-numeric:tabular-nums;min-width:55px;text-align:right;color:var(--muted);white-space:nowrap}
.radar-layout{grid-template-columns:minmax(0,1fr) 400px;align-items:center}
.radar-list-columns{display:grid;grid-template-columns:minmax(77px,1fr) 30px minmax(60px,1fr) 44px 55px;gap:5px;padding:8px;font:9px Inter,system-ui;color:var(--muted);text-align:right;white-space:nowrap}
.radar-list-columns>span:first-child{text-align:left}
.radar-list-columns>span:nth-child(2){font-size:8px}
.radar-stat small{display:block;margin-bottom:5px;font-size:10px;line-height:1.3}
.radar-stat b{display:block;font:600 15px/1.4 var(--font-mono);font-variant-numeric:tabular-nums}
.radar-list .radar-order>strong{font-size:13px}
.density-radar .radar-point .radar-distance{text-anchor:middle;font-size:8px}
.density-radar .radar-point .radar-age{font:500 8px var(--font-mono);opacity:1!important;fill:var(--text);stroke-width:2px;pointer-events:none}
.density-stability{display:block;margin-top:5px;padding:3px 6px;border:1px solid var(--line);border-radius:4px;color:var(--text);font:10px/1.5 var(--font-mono);font-variant-numeric:tabular-nums}
@media(max-width:1100px){.radar-status-rail{position:static;min-height:110px;width:100%;max-width:300px;margin-bottom:8px}}
@media(max-width:700px){.market-view-head{align-items:flex-start;flex-direction:column}.radar-stage{height:500px}.radar-layout{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){.radar-sweep{animation:none}}
