@font-face{font-family:Anton;src:local("Anton"),local("Anton Regular");font-display:swap}.escs-host :root{--paper:#f2f0eb;--white:#fff;--ink:#101010;--muted:#6c6962;--line:#cbc7c0;--soft:#e5e2dc;--teal:#0b6170;--teal2:#074a55;--pink:#ff416d;--coral:#ff665f;--orange:#ff9b3b;--ok:#347653;--warn:#9b5b0a;--bad:#a52d45;--shadow:0 18px 52px rgba(18,18,18,.13);--r:14px}.escs-host *{box-sizing:border-box}.escs-host html,.escs-host body{height:100%;margin:0}.escs-host body{min-width:320px;overflow:hidden;background:var(--paper);color:var(--ink);font:14px/1.4 Inter,"Segoe UI",Arial,sans-serif;background-image:radial-gradient(rgba(0,0,0,.032) .7px,transparent .8px);background-size:5px 5px}.escs-host button,.escs-host input,.escs-host select{font:inherit}.escs-host button{cursor:pointer}.escs-host button:focus-visible,.escs-host input:focus-visible,.escs-host select:focus-visible{outline:3px solid rgba(255,65,109,.32);outline-offset:2px}.escs-host h1,.escs-host h2,.escs-host h3,.escs-host h4,.escs-host .display{font-family:Anton,Impact,"Arial Narrow Bold",sans-serif;text-transform:uppercase;font-weight:400;letter-spacing:.01em}.escs-host .app{height:100%;display:grid;grid-template-rows:auto 1fr}.escs-host .top{height:68px;display:grid;grid-template-columns:255px 1fr auto;align-items:center;gap:16px;padding:8px 14px;background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:30}.escs-host .brand{display:flex;align-items:center;gap:10px}.escs-host .brandmark{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--pink),var(--orange));color:#fff;font:400 17px Anton,Impact,sans-serif}.escs-host .brandtext b{display:block;font:400 20px/1 Anton,Impact,sans-serif;text-transform:uppercase}.escs-host .brandtext small{font-size:9px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}.escs-host .modebar{display:flex;justify-content:center;gap:5px}.escs-host .pill,.escs-host .iconbtn{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:8px 12px;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.escs-host .pill.active{background:var(--teal);border-color:var(--teal);color:#fff}.escs-host .top-actions{display:flex;gap:6px}.escs-host .iconbtn.dark{background:var(--ink);border-color:var(--ink);color:#fff}.escs-host .iconbtn.coral{background:var(--pink);border-color:var(--pink);color:#fff}.escs-host .iconbtn:disabled{opacity:.35;cursor:not-allowed}.escs-host .main{min-height:0;display:grid;grid-template-columns:246px minmax(400px,1fr) 284px}.escs-host .side{min-height:0;overflow:auto;background:#fff;padding:12px}.escs-host .left{border-right:1px solid var(--line)}.escs-host .right{border-left:1px solid var(--line)}.escs-host .eyebrow{font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--pink)}.escs-host .panel-title{margin:1px 0 8px;font:400 22px/1.1 Anton,Impact,sans-serif;text-transform:uppercase;color:var(--teal)}.escs-host .palette{display:grid;grid-template-columns:1fr 1fr;gap:7px}.escs-host .part{min-width:0;min-height:78px;padding:8px 5px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:center}.escs-host .part:hover{border-color:var(--pink);transform:translateY(-1px)}.escs-host .part-icon{height:32px;display:grid;place-items:center;color:var(--teal);font-size:22px;font-weight:900}.escs-host .part b{display:block;font-size:9px;letter-spacing:.04em;text-transform:uppercase}.escs-host .part small{display:block;font-size:8px;color:var(--muted);margin-top:2px}.escs-host .section{margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}.escs-host .helpnote{padding:10px;border-left:4px solid var(--orange);border-radius:8px;background:#fff4db;color:#61430f;font-size:10px}.escs-host .toolgrid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.escs-host .tool{padding:8px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:9px;font-weight:900;text-transform:uppercase}.escs-host .tool.active{background:var(--teal);border-color:var(--teal);color:#fff}.escs-host .stagewrap{position:relative;min-width:0;min-height:0;overflow:hidden;background:#e9e7e1}.escs-host .board-shell{position:absolute;inset:14px;display:grid;place-items:center}.escs-host .board{position:relative;width:min(100%,calc((100vh - 96px) * 1.28));height:min(100%,calc((100vw - 558px) / 1.28));min-width:360px;min-height:360px;max-width:1100px;max-height:860px;overflow:hidden;border:1px solid #bbb7ae;border-radius:18px;background:#f8f7f3;box-shadow:0 12px 40px rgba(20,20,20,.11);touch-action:none}.escs-host .grid{position:absolute;inset:0;background-image:linear-gradient(rgba(11,97,112,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(11,97,112,.07) 1px,transparent 1px);background-size:24px 24px;pointer-events:none}.escs-host .board:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(rgba(0,0,0,.025) .6px,transparent .7px);background-size:4px 4px}.escs-host .board-head{position:absolute;top:10px;left:12px;right:12px;z-index:8;display:flex;align-items:center;gap:8px;pointer-events:none}.escs-host .board-head span{padding:6px 9px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.91);font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.escs-host .board-head .live{color:#fff;background:var(--ok);border-color:var(--ok)}.escs-host .board-head .wire-status{color:#fff;background:var(--pink);border-color:var(--pink)}.escs-host #canvas{position:absolute;inset:0;width:100%;height:100%;z-index:3;display:block;user-select:none}.escs-host .empty{position:absolute;inset:0;z-index:2;display:grid;place-items:center;pointer-events:none}.escs-host .empty-card{width:min(390px,72%);padding:25px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.9);text-align:center}.escs-host .empty-card h2{font-size:30px;color:var(--teal);margin:0}.escs-host .empty-card p{font-size:11px;color:var(--muted);margin:8px 0 0}.escs-host .zoom{position:absolute;left:24px;bottom:24px;z-index:10;display:flex;gap:5px}.escs-host .zoom button,.escs-host .floatbar button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;font-weight:900}.escs-host .floatbar{position:absolute;right:24px;bottom:24px;z-index:10;display:flex;gap:5px}.escs-host .floatbar button{width:auto;border-radius:999px;padding:0 12px;font-size:9px;text-transform:uppercase}.escs-host .wire-preview{stroke:var(--pink);stroke-width:3;stroke-dasharray:7 5;fill:none;pointer-events:none}.escs-host .wire-hit{stroke:transparent;stroke-width:18;fill:none;cursor:pointer}.escs-host .wire-line{stroke:var(--teal);stroke-width:5;fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.escs-host .wire-line.dead{stroke:#aaa69f}.escs-host .wire-line.selected{stroke:var(--pink);stroke-width:7}.escs-host .wire-line.short{stroke:var(--bad)}.escs-host .terminal-hit{fill:transparent;stroke:transparent;stroke-width:1;cursor:crosshair}.escs-host .terminal{fill:#fff;stroke:var(--teal);stroke-width:3;cursor:crosshair;pointer-events:none}.escs-host .board.wiring{box-shadow:0 0 0 3px rgba(255,65,109,.18),0 12px 40px rgba(20,20,20,.11)}.escs-host .terminal:hover,.escs-host .terminal.pending{stroke:var(--pink);fill:#ffd4df}.escs-host .component{cursor:grab}.escs-host .component.dragging{cursor:grabbing}.escs-host .selection{fill:none;stroke:var(--pink);stroke-width:2;stroke-dasharray:7 4}.escs-host .label{font:800 11px Inter,"Segoe UI",sans-serif;fill:#101010;text-anchor:middle;pointer-events:none}.escs-host .sub-label{font:800 9px Inter,"Segoe UI",sans-serif;fill:#6c6962;text-anchor:middle;pointer-events:none}.escs-host .electron-core{fill:var(--pink);stroke:#fff;stroke-width:1.2}.escs-host .electron-minus{fill:#fff;font:900 8px Inter,Arial,sans-serif;text-anchor:middle;dominant-baseline:central}.escs-host .electron-tail{stroke:var(--pink);stroke-width:3;stroke-linecap:round;opacity:.5}.escs-host .flow-group{pointer-events:none}.escs-host .arrowflow{stroke:var(--pink);stroke-width:4;stroke-linecap:round;marker-end:url(#flowArrow);pointer-events:none}.escs-host .junction{fill:var(--teal);pointer-events:none}.escs-host .card{padding:11px;border:1px solid var(--line);border-radius:13px;background:#fff;margin-bottom:9px}.escs-host .card h4{font-size:17px;color:var(--teal);margin:0 0 8px}.escs-host .row{display:flex;align-items:center;gap:8px;margin:7px 0;font-size:11px}.escs-host .row .grow{flex:1}.escs-host .row input[type=checkbox],.escs-host .row input[type=radio]{accent-color:var(--teal)}.escs-host .field{display:grid;gap:4px;margin:8px 0}.escs-host .field label{font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.escs-host .field input,.escs-host .field select{width:100%;padding:7px 8px;border:1px solid var(--line);border-radius:8px}.escs-host .kpis{display:grid;grid-template-columns:1fr 1fr;gap:6px}.escs-host .kpi{padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.escs-host .kpi.wide{grid-column:1/-1}.escs-host .kpi small{display:block;font-size:8px;font-weight:900;text-transform:uppercase;color:var(--muted)}.escs-host .kpi b{display:block;font-family:"Cambria Math",Cambria,serif;font-size:17px;white-space:nowrap}.escs-host .readout{padding:10px;border-radius:10px;background:#e6f0f1;border-left:4px solid var(--teal)}.escs-host .readout .name{font-size:9px;font-weight:900;text-transform:uppercase;color:var(--teal)}.escs-host .readout .value{font:800 15px "Cambria Math",Cambria,serif;margin-top:3px}.escs-host .buttonrow{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.escs-host .smallbtn{padding:8px 6px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:9px;font-weight:900;text-transform:uppercase}.escs-host .smallbtn.danger{color:#fff;background:var(--bad);border-color:var(--bad)}.escs-host .smallbtn.teal{color:#fff;background:var(--teal);border-color:var(--teal)}.escs-host .warning{padding:8px;border-radius:8px;background:#fff0ec;color:#7b2a21;font-size:10px}.escs-host .prompt{font-size:10px;color:var(--muted)}.escs-host .scrim{position:fixed;inset:0;z-index:80;background:rgba(16,16,16,.45);opacity:0;pointer-events:none;transition:.2s}.escs-host .scrim.open{opacity:1;pointer-events:auto}.escs-host .drawer{position:fixed;z-index:85;right:14px;top:14px;bottom:14px;width:min(470px,calc(100vw - 28px));border:1px solid var(--line);border-radius:24px;background:var(--paper);box-shadow:var(--shadow);transform:translateX(calc(100% + 30px));transition:.24s;overflow:hidden;display:grid;grid-template-rows:auto 1fr}.escs-host .drawer.open{transform:none}.escs-host .drawer-head{padding:18px;color:#fff;background:linear-gradient(125deg,var(--pink),#c62672 55%,var(--orange));display:flex;align-items:center;gap:10px}.escs-host .drawer-head h2{margin:0;font-size:28px;line-height:1}.escs-host .drawer-head button{margin-left:auto;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.12);color:#fff;font-size:20px}.escs-host .drawer-body{overflow:auto;padding:16px}.escs-host .formula{padding:11px;margin:8px 0;border-left:5px solid var(--pink);border-radius:8px;background:#fff}.escs-host .formula b{font:800 18px "Cambria Math",Cambria,serif}.escs-host .formula small{display:block;color:var(--muted)}.escs-host .scene-list{display:grid;gap:7px}.escs-host .scene{padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left}.escs-host .scene b{display:block;text-transform:uppercase;font-size:10px}.escs-host .scene small{color:var(--muted)}.escs-host .toast{position:fixed;z-index:120;left:50%;bottom:25px;transform:translate(-50%,20px);padding:10px 15px;border-radius:999px;background:var(--ink);color:#fff;font-size:11px;font-weight:800;opacity:0;pointer-events:none;transition:.2s}.escs-host .toast.show{opacity:1;transform:translate(-50%,0)}body.presenter .escs-host .top,body.presenter .escs-host .side{display:none}body.presenter .escs-host .main{grid-template-columns:1fr}body.presenter .escs-host .board-shell{inset:8px}body.presenter .escs-host .board{width:100%;height:100%;max-width:none;max-height:none}body.presenter .escs-host .board-head span:first-child{font-size:11px}.escs-host .mobilebar{display:none}@media(max-width:1100px){.escs-host .main{grid-template-columns:200px minmax(360px,1fr) 238px}.escs-host .top{grid-template-columns:220px 1fr auto}.escs-host .part{min-height:70px}.escs-host .board{height:min(100%,calc((100vw - 466px)/1.28))}}@media(max-width:820px){.escs-host .main{grid-template-columns:1fr}.escs-host .side{display:none}.escs-host .top{grid-template-columns:1fr auto}.escs-host .modebar{display:none}.escs-host .top-actions .desktop{display:none}.escs-host .board-shell{inset:8px 8px 60px}.escs-host .board{width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none}.escs-host .mobilebar{display:flex;position:absolute;left:10px;right:10px;bottom:9px;z-index:20;gap:6px}.escs-host .mobilebar button{flex:1;padding:10px;border:0;border-radius:999px;background:var(--teal);color:#fff;font-size:9px;font-weight:900;text-transform:uppercase}.escs-host .mobile-panel{position:fixed;z-index:90;left:8px;right:8px;bottom:8px;max-height:78vh;overflow:auto;padding:14px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow);transform:translateY(calc(100% + 20px));transition:.22s}.escs-host .mobile-panel.open{transform:none}.escs-host .zoom{left:16px;bottom:15px}.escs-host .floatbar{right:16px;bottom:15px}}@media(prefers-reduced-motion:reduce){.escs-host *{transition:none!important}.escs-host .electron,.escs-host .arrowflow{display:none!important}}.escs-host .presenter-exit{display:none;position:absolute;top:14px;right:14px;z-index:45;align-items:center;gap:6px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 8px 24px rgba(20,20,20,.18);cursor:pointer}body.presenter .escs-host .presenter-exit{display:flex}.escs-host .presenter-exit:hover{border-color:var(--pink);color:var(--pink)}
/* ---- in-page host sizing overrides (site-integrated) ---- */
.escs-host{--paper:#f2f0eb;--white:#fff;--ink:#101010;--muted:#6c6962;--line:#cbc7c0;--soft:#e5e2dc;--teal:#0b6170;--teal2:#074a55;--pink:#ff416d;--coral:#ff665f;--orange:#ff9b3b;--ok:#347653;--warn:#9b5b0a;--bad:#a52d45;--shadow:0 18px 52px rgba(18,18,18,.13);--r:14px;position:relative;height:560px;width:100%;border-radius:22px;overflow:hidden;border:1px solid rgba(23,23,23,.14);box-shadow:0 18px 44px rgba(23,23,23,.08);background:#f2f0eb}
.escs-host .app{height:100%}
.escs-host .board-shell{inset:10px}
.escs-host .board{width:100%;height:100%;max-width:none;max-height:none;min-width:0;min-height:0}
.escs-host .toast{position:absolute}

/* ---- site-integration extras ---- */
.escs-host .eyebrow{margin:0}
.escs-host .top{flex-wrap:nowrap}
