.ovs-root{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--vh-bg, #12141c);color:var(--vh-ink, #e8eaef);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.ovs-top{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--vh-line, #2a2e3a);flex:0 0 auto}.ovs-brand{margin:0;font-size:15px;font-weight:800;letter-spacing:.02em}.ovs-sub{margin:0;font-size:12px;color:var(--vh-ink-muted, #9aa3b5);flex:1}.ovs-hub{color:#8eb4ff;font-size:12px;font-weight:700;text-decoration:none}.ovs-live{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#6ecf8c}.ovs-body{display:grid;grid-template-columns:minmax(200px,250px) minmax(0,1fr) minmax(320px,420px);flex:1 1 auto;min-height:0}@media(max-width:1100px){.ovs-body{grid-template-columns:1fr;grid-template-rows:minmax(140px,22vh) minmax(200px,1fr) minmax(280px,46vh)}}.ovs-col{min-height:0;overflow:auto;padding:12px}.ovs-col+.ovs-col{border-left:1px solid var(--vh-line, #2a2e3a)}.ovs-h{margin:0 0 8px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--vh-ink-muted, #9aa3b5)}.ovs-hint{margin:0 0 12px;font-size:12px;line-height:1.4;color:var(--vh-ink-muted, #9aa3b5)}.ovs-field{margin-bottom:10px}.ovs-field label{display:block;font-size:11px;font-weight:700;margin-bottom:4px;color:var(--vh-ink-muted, #9aa3b5)}.ovs-field input,.ovs-field textarea,.ovs-field select{width:100%;box-sizing:border-box;border:1px solid var(--vh-line, #2a2e3a);background:#1a1f28;color:inherit;border-radius:8px;padding:8px 10px;font:inherit;font-size:13px}.ovs-field textarea{min-height:88px;resize:vertical}.ovs-tpl{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;border:1px solid var(--vh-line, #2a2e3a);background:transparent;color:inherit;border-radius:8px;padding:8px 10px;margin-bottom:6px;cursor:pointer}.ovs-tpl.is-on{border-color:#0a84ff;background:#0a84ff29}.ovs-tpl-name{font-size:13px;font-weight:700}.ovs-tpl-meta{font-size:11px;color:var(--vh-ink-muted, #9aa3b5);line-height:1.35;white-space:normal}.ovs-btn{border:1px solid var(--vh-line, #2a2e3a);background:#242a36;color:inherit;font:inherit;font-size:12px;font-weight:700;padding:7px 12px;border-radius:8px;cursor:pointer}.ovs-btn:disabled{opacity:.45;cursor:default}.ovs-btn-pri{border-color:#0a84ff8c;background:#0a84ff33}.ovs-btn-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.ovs-chip{border:1px solid var(--vh-line, #2a2e3a);background:transparent;color:var(--vh-ink-muted, #9aa3b5);font:inherit;font-size:11px;font-weight:700;padding:6px 8px;border-radius:7px;cursor:pointer}.ovs-chip.is-on{border-color:#0a84ff;background:#0a84ff2e;color:var(--vh-ink, #e8eaef)}.ovs-palette{display:inline-flex;align-items:center;gap:6px}.ovs-swatch{width:10px;height:10px;border-radius:99px;flex:0 0 auto;box-shadow:0 0 0 1px #ffffff2e}.ovs-flash{margin:8px 0 0;font-size:12px}.ovs-flash.is-ok{color:#8fd4a8}.ovs-flash.is-err{color:#f0a0a0}.ovs-preview{padding:16px;display:flex;flex-direction:column;min-height:0}.ovs-preview .ovs-stage{flex:1;min-height:0;display:flex;align-items:center}.ovs-empty-stage{width:100%;aspect-ratio:16 / 9;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--vh-ink-muted, #9aa3b5);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,#2a3344,#151a22 55%),repeating-linear-gradient(45deg,#1b212c 0 8px,#161b24 8px 16px)}.ovs-block{margin:0 0 14px;padding:10px 10px 8px;border:1px solid var(--vh-line, #2a2e3a);border-radius:10px;background:#0000001f}.ovs-block .ovs-h{margin-bottom:6px}.ovs-actions{position:sticky;bottom:0;padding-top:10px;background:linear-gradient(180deg,transparent,var(--vh-bg, #12141c) 28%)}.ovs-colors{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.ovs-color{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;color:var(--vh-ink-muted, #9aa3b5)}.ovs-color input[type=color]{width:100%;height:32px;padding:0;border:1px solid var(--vh-line, #2a2e3a);border-radius:6px;background:transparent;cursor:pointer}.ovs-slider{display:block;margin-bottom:8px;font-size:11px;font-weight:700;color:var(--vh-ink-muted, #9aa3b5)}.ovs-slider span{display:flex;justify-content:space-between;gap:8px;margin-bottom:2px}.ovs-slider input{width:100%}
