:root { --sheet-ground:#151d22; --sheet-ink:#c4d2dc; --sheet-wire:#92a6b3; --sheet-body:#303d46; --sheet-rim:#c4d2dc; --sheet-bus:#a9afca; --sheet-label:#cbd9e2; --sheet-rule:#9bb7c614; --sheet-texture:radial-gradient(var(--sheet-rule) .65px,transparent .8px) 0 0/24px 24px; }
:root:is([data-drawing-surface=sheet],[data-drawing-surface=sheet-dim]) { --sheet-ground:#d2d7d8; --sheet-ink:#233741; --sheet-wire:#536771; --sheet-body:#dee4e6; --sheet-rim:#334b59; --sheet-bus:#5f697d; --sheet-label:#263c48; --sheet-rule:#3d657414; --sheet-texture:linear-gradient(var(--sheet-rule) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(90deg,var(--sheet-rule) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(#3d657418 1px,transparent 1px) 0 0/160px 160px,linear-gradient(90deg,#3d657418 1px,transparent 1px) 0 0/160px 160px; }
:root[data-drawing-surface=sheet-dim] { --sheet-ground:#8a979e; --sheet-ink:#142a35; --sheet-wire:#354d5b; --sheet-body:#9dabb2; --sheet-rim:#263f4e; --sheet-bus:#46576c; --sheet-label:#142a35; --sheet-rule:#28465816; }
:root[data-drawing-surface=slate] { --sheet-ground:#3b4348; --sheet-ink:#e0e8ed; --sheet-wire:#bdccd5; --sheet-body:#303a40; --sheet-rim:#e0e8ed; --sheet-bus:#c6bde1; --sheet-label:#e0e8ed; --sheet-rule:#d8e8f005; --sheet-texture:repeating-linear-gradient(0deg,var(--sheet-rule) 0 1px,transparent 1px 4px); }
:root[data-drawing-surface=carbon] { --sheet-ground:#191918; --sheet-wire:#b4bbbc; --sheet-body:#313433; --sheet-rim:#d1d6d3; --sheet-bus:#c2bdab; --sheet-label:#e0e2da; --sheet-texture:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' opacity='.035' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E"); }
:root[data-drawing-surface=blueprint] { --sheet-ground:#172b3a; --sheet-wire:#a2c9dd; --sheet-body:#243f4f; --sheet-rim:#d3e6ee; --sheet-bus:#adc5df; --sheet-label:#e0edf2; --sheet-rule:#a6cfe00c; --sheet-texture:linear-gradient(var(--sheet-rule) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(90deg,var(--sheet-rule) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(#b6d6e80d 1px,transparent 1px) 0 0/160px 160px,linear-gradient(90deg,#b6d6e80d 1px,transparent 1px) 0 0/160px 160px; }
:root[data-drawing-surface=blackprint] { --sheet-ground:#141618; --sheet-ink:#d8e0e3; --sheet-wire:#afbec6; --sheet-body:#293036; --sheet-rim:#d7e0e5; --sheet-bus:#b9c3cc; --sheet-label:#dce3e7; --sheet-rule:#cad5df0b; --sheet-texture:linear-gradient(var(--sheet-rule) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(90deg,var(--sheet-rule) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(#cad5df0d 1px,transparent 1px) 0 0/160px 160px,linear-gradient(90deg,#cad5df0d 1px,transparent 1px) 0 0/160px 160px; }
:root[data-drawing-surface=grayprint] { --sheet-ground:#303233; --sheet-ink:#e0e4e6; --sheet-wire:#c1cbcf; --sheet-body:#282c2f; --sheet-rim:#d8dfe2; --sheet-bus:#bfc6ce; --sheet-label:#e0e4e6; --sheet-rule:#d0d9de0c; --sheet-texture:linear-gradient(var(--sheet-rule) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(90deg,var(--sheet-rule) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(#d0d9de0e 1px,transparent 1px) 0 0/160px 160px,linear-gradient(90deg,#d0d9de0e 1px,transparent 1px) 0 0/160px 160px; }
/* Original deliberately falls through to the previous styles without recoloring. */
:where(html:not([data-drawing-surface=original])) .studio-diagram,:where(html:not([data-drawing-surface=original])) body.study-active #ed-svg,:where(html:not([data-drawing-surface=original])) body.study-active svg.dg { --drawing-ground:var(--sheet-ground); background:var(--sheet-texture),radial-gradient(ellipse at 50% 35%,#d0e8f306,transparent 75%),var(--sheet-ground); }
:where(html:not([data-drawing-surface=original])) .studio-diagram { box-shadow:inset 0 8px 22px #0004,inset 0 -20px 32px #0002; }
:where(html:not([data-drawing-surface=original])) body.study-active #ed-svg .ededge:not(.ebusrun),:where(html:not([data-drawing-surface=original])) body.study-active svg.dg .dgedge,:where(html:not([data-drawing-surface=original])) .studio-diagram .ededge { stroke:var(--sheet-wire); }
:where(html:not([data-drawing-surface=original])) body.study-active #ed-svg .edjoin,:where(html:not([data-drawing-surface=original])) body.study-active svg.dg .dgjoin,:where(html:not([data-drawing-surface=original])) .studio-diagram .edjoin { fill:var(--sheet-rim); }
:where(html:not([data-drawing-surface=original])) body.study-active #ed-svg .ednode.role-comp:not(.edbus,.sel) .nbody,:where(html:not([data-drawing-surface=original])) .studio-diagram .ednode.role-comp:not(.edbus,.is-selected) .nbody { fill:var(--sheet-body); stroke:var(--sheet-rim); }
:where(html:not([data-drawing-surface=original])) body.study-active #ed-svg .edbus .nbody,:where(html:not([data-drawing-surface=original])) .studio-diagram .ednode.edbus .nbody { fill:var(--sheet-bus); }
:where(html:not([data-drawing-surface=original])) .one-line-label { fill:var(--sheet-label); }
:where(html:not([data-drawing-surface=original])) .one-line-bus-label { fill:var(--sheet-bus); }
:where(html:not([data-drawing-surface=original])) .one-line-leader { stroke:var(--sheet-wire); }
:where(html:not([data-drawing-surface=original])) body.study-active #ed-svg .nglyph,:where(html:not([data-drawing-surface=original])) .studio-diagram .nglyph { stroke:var(--sheet-ink); }
:root:is([data-drawing-surface=sheet],[data-drawing-surface=sheet-dim]) .one-line-tag:is(.sel,.on,.tgt,.annotation-hover,:focus-visible) .one-line-label { fill:#075d87; }
:root:is([data-drawing-surface=sheet],[data-drawing-surface=sheet-dim]) .one-line-tag:is(.sel,.on,.tgt,.annotation-hover,:focus-visible) .one-line-label-plate { fill:#c6e7f2; stroke:#1485b6; }
:root:is([data-drawing-surface=sheet],[data-drawing-surface=sheet-dim]) .studio-diagram .ednode:is(.role-in,.role-out):not(.is-selected) .nbody { stroke:#4c6570; }
:root[data-drawing-surface=sheet-dim] .one-line-tag:is(.sel,.on,.tgt,.annotation-hover,:focus-visible) .one-line-label { fill:#064567; }
:root[data-drawing-surface=sheet-dim] .one-line-tag:is(.sel,.on,.tgt,.annotation-hover,:focus-visible) .one-line-label-plate { fill:#94bdce; stroke:#176c92; }
/* Geographic assets use map marks; drafting-sheet rims belong to schematics. */
body.study-active.study-geographic #ed-svg.geo-on .ednode.role-comp:not(.edbus,.sel) .nbody { fill:#6babc6; stroke:#13232e; stroke-width:.65px; }
body.study-active.study-geographic #ed-svg.geo-on .ednode .nsheen { opacity:.14; }
