/* Shared Studio tokens and primitives come from main.css / workspace.css. */
:root{--bg:var(--bg-app);--pn:var(--bg-panel);--tx:var(--text);--mu:var(--text-dim);--bd:var(--border);--ac:var(--accent);--vp:var(--canvas-bg);--ok:var(--success);--wn:var(--warning);--er:var(--danger);}
body{font:var(--text-md)/1.5 var(--font-ui);background:var(--bg-app);color:var(--text);}
.signage-appbar{min-height:44px;padding:6px 16px;gap:12px;background:var(--bg-panel);flex-shrink:0;border-bottom:1px solid var(--border);}
.signage-appbar h1{font-size:var(--text-lg);font-weight:500;min-width:0;margin:0 auto 0 0;}
.app-back{display:inline-flex;align-items:center;gap:8px;color:var(--text-dim);border:0;padding:4px 8px 4px 0;font-size:var(--text-md);}
.app-back img{width:24px;height:24px;}.app-back:hover{color:var(--text);}
.beta-badge{font-size:10px;font-weight:500;border-radius:var(--radius-sm);background:var(--accent-subtle);border-color:var(--accent-border);color:var(--accent);padding:2px 6px;}
.signage-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px 16px;background:var(--bg-panel-2);border-bottom:1px solid var(--border);flex-shrink:0;}
button,.btn,select,input{border-radius:var(--radius-sm);font:var(--text-md) var(--font-ui);min-height:28px;box-shadow:none;}
button,.btn{background:transparent;border:1px solid var(--border);color:var(--text-dim);padding:5px 10px;}
button:hover,.btn:hover{background:var(--hover);border-color:var(--border-strong);color:var(--text);}
button:focus-visible,.btn:focus-within,input:focus-visible,select:focus-visible,.app-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
input,select{background:var(--bg-input);color:var(--text);border-color:var(--border);min-width:0;}
.pri{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600;}.pri:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover);}.pri:active{background:var(--accent-active);}
main{grid-template-columns:minmax(0,1fr) var(--w-rightpanel);}
aside{padding:0 12px 16px;background:var(--bg-panel);border-color:var(--border);}
#steps{gap:0;top:0;padding:0;margin:0 -12px 12px;border-bottom:1px solid var(--border);}
#steps button{border:0;border-radius:0;min-height:40px;color:var(--text-dim);background:transparent;font-size:11px;border-bottom:2px solid transparent;}
#steps .on{background:var(--accent-subtle);color:var(--accent);border-bottom-color:var(--accent);}
fieldset{padding:12px 0;border-color:var(--border-soft);}legend{font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);}
label{color:var(--text-dim);font-size:var(--text-md);gap:10px;margin:8px 0;}label input,label select{width:130px;}
input[type="color"]{width:48px;height:28px;}input[type="range"]{accent-color:var(--accent);}
#vt{gap:4px;top:12px;left:12px;padding:4px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);}
#vt button{border:0;}#vt button[aria-pressed="true"]{color:var(--accent);background:var(--accent-subtle);}
#st{font-size:var(--text-sm);padding:5px 12px;background:var(--bg-panel);border-color:var(--border);}
.rep{font:var(--text-sm)/1.6 var(--font-mono);overflow-wrap:anywhere;white-space:pre-wrap;user-select:text;}
#dlg{background:var(--bg-elevated);border-color:var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:80dvh;overflow:auto;}
@media(max-width:800px){main{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(260px,52dvh) auto;}.signage-appbar{padding:8px 12px;gap:8px;}.signage-appbar h1{flex-basis:calc(100% - 155px);}.app-back{font-size:11px;}.signage-toolbar{padding:8px 12px;gap:8px;}aside{padding:0 16px 16px;}#steps{margin:0 -16px 12px;}#steps button{min-height:44px;}button,.btn,select,input{min-height:40px;}#vt{max-width:calc(100% - 24px);}}
@media(pointer:coarse){button,.btn,.app-back{min-height:44px;}#steps button{min-height:44px;}}
