#plannerPanel{--plan-blue:#68b9e7;--plan-gold:#e5b764;margin:14px 0}
.plan-head,.plan-options,.plan-toolbar,.plan-floorbar,.plan-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.plan-head{margin-bottom:12px}.plan-head input{flex:1;min-width:170px;font-weight:650}.plan-head select{min-width:150px}
#plannerPanel input:not([type=color]):not([type=range]):not([type=checkbox]),#plannerPanel select,#planPicker input{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:7px;padding:8px;font:inherit}
.plan-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:12px;align-items:start}
.plan-squad{display:grid;gap:9px}.plan-player{border:1px solid var(--line);border-left:3px solid var(--slot);border-radius:10px;padding:10px;background:var(--surface);min-width:0}
.plan-player-top{display:flex;align-items:center;gap:8px;margin-bottom:8px}.plan-player-top input{width:100%;min-width:0;font-size:12px!important;padding:5px!important}
.plan-player-top strong{color:var(--slot);font-size:11px}.plan-player-top button{margin-left:auto}
.plan-op-pick{display:flex;align-items:center;gap:9px;width:100%;border:0;color:var(--ink);background:var(--soft);padding:7px;border-radius:7px;text-align:left;min-height:45px;font-weight:650}
.plan-op-pick img{width:32px;height:32px;object-fit:contain}.plan-op-pick span:last-child{margin-left:auto;color:var(--muted)}
.plan-utility-row{display:flex;gap:5px;align-items:center;margin-top:7px;flex-wrap:wrap}.plan-utility-row select{width:100%;font-size:11px!important;padding:5px!important}
.plan-token{display:flex;align-items:center;gap:5px;background:var(--soft);color:var(--ink);border:1px solid transparent;border-radius:7px;padding:4px 6px;min-height:32px;cursor:grab;max-width:100%;font-size:11px}
.plan-token img{width:27px;height:27px;object-fit:contain}.plan-token b{font-variant-numeric:tabular-nums;font-size:11px}.plan-token[aria-pressed=true]{border-color:var(--slot,var(--accent));background:var(--accent-soft)}
.plan-token .plan-token-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.plan-budget{width:45px!important;padding:4px!important;font-size:11px!important}
.plan-token[data-place=ability] img{background:#262c36;border-radius:5px;padding:3px}.plan-board-shell[aria-busy=true] #planViewport{pointer-events:none;opacity:.5}
.plan-board-shell{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden;min-width:0}
.plan-board-shell:fullscreen{border-radius:0;display:flex;flex-direction:column;width:100%;height:100%;background:var(--surface)}
.plan-toolbar{padding:8px;border-bottom:1px solid var(--line);gap:5px}.plan-toolbar .icon-button{width:32px;height:32px;flex:0 0 32px;border-radius:7px}.plan-toolbar svg{width:19px;height:19px}
.plan-toolbar button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.plan-toolbar input[type=color]{width:30px;height:30px;border:0;padding:2px;background:transparent}.plan-toolbar input[type=range]{width:66px}
.plan-toolbar .plan-divider{width:1px;height:24px;background:var(--line);margin:0 3px}.plan-spacer{flex:1}
.plan-floorbar{padding:8px;gap:5px;border-bottom:1px solid var(--line)}.plan-floorbar button{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:6px;padding:5px 10px;font:inherit;font-size:12px}.plan-floorbar button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--line);color:var(--ink)}
.plan-floorbar label{font-size:11px;display:flex;align-items:center;gap:4px}.plan-floorbar input{margin:0}.plan-floorbar input[type=checkbox]{accent-color:var(--accent)}
.plan-viewport{height:clamp(440px,65vh,820px);overflow:auto;display:flex;align-items:flex-start;padding:12px;background:#101419;overscroll-behavior:contain;touch-action:none;position:relative}
.plan-board-shell:fullscreen .plan-viewport{flex:1;height:auto}.plan-stage{position:relative;flex:none;margin:auto;line-height:0;background:#080b10;box-shadow:0 0 0 1px #ffffff12}
#planSvg{display:block;width:100%;height:100%;overflow:hidden;touch-action:none;user-select:none}#planSvg text{user-select:none}#planSvg .plan-marker{cursor:grab}#planSvg .plan-marker:active{cursor:grabbing}
.plan-wall-layer [data-wall]{cursor:crosshair;pointer-events:all}.plan-wall-layer [data-wall]:hover{fill:#79d3f2!important;stroke:#fff!important;stroke-width:.7!important;opacity:1!important}
.plan-board-footer{display:flex;align-items:center;gap:10px;padding:8px 12px;min-height:35px;color:var(--muted);font-size:11px}.plan-board-footer #planStatus{flex:1}.plan-board-footer output{white-space:nowrap}.plan-board-footer .plan-warning{color:var(--yellow-ink)}
.plan-notes{margin-top:12px;font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:9px;padding:9px 12px;background:var(--surface)}.plan-notes summary{cursor:pointer}.plan-notes p{margin:8px 0;max-width:1000px}.plan-notes a{color:var(--accent)}
.plan-empty{padding:35px;text-align:center;color:var(--muted)}
#planPicker{max-width:520px;width:calc(100% - 30px);max-height:80vh;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}
#planPicker::backdrop{background:#0008}#planPicker .plan-picker-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}#planPicker h3{margin:0;flex:1}#planPicker input{width:100%;margin-bottom:12px}
.plan-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:52vh;overflow:auto}.plan-picker-grid button{display:flex;flex-direction:column;align-items:center;gap:5px;border:1px solid var(--line);background:var(--soft);color:var(--ink);border-radius:8px;padding:9px 4px;font-size:11px}.plan-picker-grid img{width:40px;height:40px;object-fit:contain}
.plan-export{position:relative}.plan-export summary{list-style:none;cursor:pointer}.plan-export[open]>div{position:absolute;right:0;top:calc(100% + 5px);z-index:20;background:var(--surface);padding:6px;box-shadow:var(--shadow);border:1px solid var(--line);border-radius:8px;min-width:150px;display:grid;gap:4px}
.plan-export button{white-space:nowrap;text-align:left}.community-controls{display:flex;align-items:center;gap:8px;padding:4px 18px 9px;font-size:12px;color:var(--muted)}.community-controls input{accent-color:var(--accent)}.community-controls a{color:var(--accent)}
@media(max-width:980px){.plan-layout{grid-template-columns:200px minmax(0,1fr)}.plan-token-name{max-width:85px!important}.plan-head{gap:6px}.plan-head select{min-width:125px;max-width:180px}}
@media(max-width:680px){.plan-layout{display:flex;flex-direction:column}.plan-squad{width:100%;display:flex;overflow:auto;padding-bottom:6px}.plan-player{flex:0 0 185px}.plan-board-shell{width:100%}.plan-viewport{height:65vh;min-height:360px}.plan-picker-grid{grid-template-columns:repeat(3,1fr)}.plan-head input{width:100%}.plan-toolbar{gap:3px}}
