/* Vector Design Workspace (built on the simulations lab shell) */
.vd-hero{background:radial-gradient(circle at 85% 20%,#ff7ab633,transparent 40%),radial-gradient(circle at 60% 120%,#21c5d626,transparent 45%),radial-gradient(circle at 0 0,#7c5cff2a,transparent 45%),#0a0c1b}
.fp-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.fp-badges span{font-size:11px;color:#d0c6e2;background:#ffffff08;padding:4px 11px;border:1px solid #4c425c;border-radius:20px}
.vd-page .vd-app{grid-template-columns:minmax(0,1fr) 340px}
.vd-toolbar{flex-wrap:wrap;gap:6px}
.vd-tools{display:flex;flex-wrap:wrap;gap:4px}
.vd-page .vd-tools button{min-height:34px;padding:4px 9px;font-size:12px;background:#0b0e20d9}
.vd-page .vd-tools button[aria-checked=true]{background:#2b3fa0;border-color:#8fb1ff;color:#fff}
.vd-actions{display:flex;gap:6px}
.vd-arena{position:relative;padding:0!important;display:block!important;min-height:0;background:#d9dde8;border-radius:12px;overflow:hidden}
#vdSvg{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:default;outline:none}
#vdPage{filter:drop-shadow(0 2px 10px #0003)}
.vd-arena.outline #vdDoc *{fill:none!important;stroke:#1e2540!important;stroke-width:1px!important;vector-effect:non-scaling-stroke;opacity:1!important}
.vd-arena.outline #vdDoc image{opacity:.25!important}
.fp-hint{position:absolute;left:10px;bottom:10px;max-width:70%;padding:6px 10px;border-radius:10px;background:#0b0e20e6;color:#dfe4ff;font-size:12px;pointer-events:none;z-index:4}
.fp-hint:empty{display:none}
.vd-status{gap:10px;flex-wrap:wrap}
.fp-grow{flex:1}.fp-total{font:700 12px ui-monospace,Consolas,monospace;color:#9ec0ff}.fp-saved{font-size:11px;color:#8b93b8}
.fp-field{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#c8cbe6;margin-bottom:10px}
.fp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.vd-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}
.vd-grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.vd-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.vd-tog{margin:0 0 12px!important}
.vd-page input[type=color]{min-height:34px;padding:2px;width:100%}
.vd-props label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#c8cbe6}
.vd-props h3{margin:14px 0 8px}
.vd-props h3:first-child{margin-top:0}
.vd-page .vd-props input,.vd-page .vd-props select{min-height:32px;padding:4px 7px;font-size:12px}
.vd-page textarea{width:100%;box-sizing:border-box;font:inherit;font-size:13px;padding:7px 10px;color:#fff;background:#0a0d1f;border:1px solid #333b72;border-radius:10px;resize:vertical}
.vd-btns{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 8px}
.vd-page .vd-btns button{min-height:30px;min-width:34px;padding:3px 8px;font-size:12px}
.vd-sel{font-size:12px;color:#9ec0ff;margin:0 0 10px}
.vd-stops{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.vd-stop{display:grid;grid-template-columns:44px 1fr 30px;gap:6px;align-items:center}
.vd-page .vd-stop button{min-height:30px;padding:0}
.vd-gradbar{height:14px;border-radius:7px;border:1px solid #ffffff33;margin:4px 0 2px}
.vd-layers li{display:flex;align-items:center;gap:6px;padding:4px 6px;border:1px solid #2a3060;border-radius:9px;background:#0f1330;font-size:12px;cursor:pointer;user-select:none}
.vd-layers li.on{border-color:#8fb1ff;background:#16205a}
.vd-layers li b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-weight:500}
.vd-layers li.off b{color:#7a809f;text-decoration:line-through}
.vd-layers svg{flex:none;width:28px;height:28px;border-radius:5px;background:#fff}
.vd-page .vd-layers button{min-height:24px;min-width:26px;padding:0 4px;font-size:12px;background:none;border-color:transparent}
.vd-page .vd-layers input{min-height:24px;padding:2px 6px;font-size:12px;flex:1}
.vd-shapes{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.vd-page .vd-shapes button{flex-direction:column;gap:2px;min-height:68px;padding:4px;font-size:10px;background:#f3f6fb;color:#1e2540;border-color:#c9d3e8}
.vd-page .vd-shapes button:hover{background:#fff;border-color:#4f8dff}
.vd-shapes svg{width:40px;height:40px}
.ns-presets .vd-thumb{width:100%;height:auto;max-height:120px;border-radius:8px;background:#fff;display:block;margin-bottom:6px}
@media(max-width:1000px){.vd-page .vd-app{grid-template-columns:1fr}.vd-arena{height:62vh;flex:none!important;aspect-ratio:auto!important}}
@media(max-width:640px){.vd-page .vd-tools button span{display:none}.vd-page .vd-tools button{min-width:36px}.vd-shapes{grid-template-columns:repeat(3,1fr)}}
.vd-props label.ns-tog{flex-direction:row;align-items:center;gap:8px;font-size:12px;margin:6px 0}.vd-props label.ns-tog input{width:auto;min-height:0}
