body.lab-mode main{grid-template-columns:minmax(0,1fr) 360px}.lab-mode .workspace{padding-top:24px}.lab-mode .intro{margin-bottom:22px}.lab-mode h1{font-size:28px}.lab-mode #glass{display:none!important}.lab-mode #stage{height:440px}.lab-mode aside{height:calc(100vh - 76px);position:sticky;top:0}.lab-mode .toolbar{flex-wrap:wrap}.lab-mode .panel-actions{flex-wrap:wrap}.lab-mode .panel-actions button{min-width:115px}#case-library{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0}#case-library button{text-align:left;min-height:61px;padding:11px 12px;background:#1a1e23;border:1px solid #303840;font-size:11px}#case-library button span{display:block;color:#738799;font-size:9px;margin-top:5px;letter-spacing:.6px}#case-library button[aria-pressed=true]{background:#293b4d;border-color:#819fbf;color:#d8eaff}#case-library button[aria-pressed=true] span{color:#a9c4dd}.lab-tools{display:flex;flex-wrap:wrap;gap:12px 15px;align-items:center;border-top:1px solid #303740;border-bottom:1px solid #303740;padding:15px 0;margin-bottom:14px;font-size:10px;color:#a5b5c5}.lab-tools label{display:flex;align-items:center;gap:7px}.lab-tools select{font-size:10px;padding:7px}.lab-tools input[type=range]{width:85px;accent-color:#acc9e9}.lab-tools input[type=checkbox]{accent-color:#aacbed}.lab-tools output{min-width:18px}.lab-mode .stage-caption{font-size:8px}.lab-mode .stage-foot{letter-spacing:.2px;font-size:10px;padding:0 15px;line-height:1.7}#lab-overlay{position:absolute;inset:0;pointer-events:none}#lab-overlay button{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;border:0;background:transparent!important;box-shadow:none;color:white;padding:0;display:flex;align-items:center;justify-content:center;gap:7px;font-size:13px;text-shadow:0 1px 4px #122a3655;touch-action:manipulation;user-select:none}#lab-overlay button:hover{background:transparent}#lab-overlay button[aria-pressed=true]{color:#d9e9ff;font-weight:650}#lab-overlay button:focus-visible,#lab-overlay button.simulated-focus{outline:2px solid #fff;outline-offset:2px}#lab-overlay button:disabled{opacity:.4;cursor:not-allowed}#lab-overlay button.tab-label{flex-direction:column;gap:3px;font-size:10px}#lab-overlay button .lab-icon{font-size:23px;line-height:1}#lab-overlay .lab-edge{position:absolute;pointer-events:none;border:1px dashed #ffd786;transform:translate(-50%,-50%);color:#ffe8ac;font-size:9px;display:none}#lab-overlay.show-outlines .lab-edge{display:block}#lab-guide{margin-top:20px;padding:20px;border:1px solid #303943;border-radius:12px;background:#191e24}#lab-guide h2{font-size:16px;margin-bottom:10px}#lab-guide p{font-size:12px;line-height:1.9;color:#9bacbe;margin:8px 0}#lab-guide ul{padding-left:19px;margin:12px 0;font-size:11px;line-height:2;color:#aebdcb}#lab-guide a{font-size:11px;color:#bad8f6}#lab-role-summary{border:1px solid #3a4654;border-radius:8px;padding:12px;color:#b5c8db;font-size:11px;line-height:1.8;margin-bottom:12px}#lab-role-summary strong{color:#e4effb}#lab-reset-case{width:100%;margin-bottom:18px;font-size:11px}.lab-mode .note{line-height:1.9}@media(max-width:1050px){#case-library{grid-template-columns:repeat(3,minmax(0,1fr))}.lab-mode .workspace{padding-left:20px;padding-right:20px}.lab-mode .intro .engine{display:none}}@media(max-width:850px){body.lab-mode main{display:block}.lab-mode aside{position:static;height:auto}.lab-mode .intro h1{font-size:24px}.lab-mode #stage{height:390px}.lab-mode .workspace{padding:20px 14px}#case-library{gap:6px}#case-library button{padding:9px;font-size:10px}.lab-tools{gap:10px}.lab-mode .toolbar>button{margin-left:0}.lab-mode .intro p:not(.eyebrow){font-size:10px}.lab-mode .panel-heading>div{width:auto;flex:1}.lab-mode .panel-heading #apply-site{flex:none}}@media(prefers-reduced-motion:reduce){#lab-overlay *{transition:none}}

.control.lab-inactive{opacity:.45}.control.lab-inactive input{cursor:not-allowed}
/* Hover and press feedback on Studio tools; preview controls are animated with the glass geometry. */
.lab-mode button:not(#glass):not(#lab-overlay button){transition:background-color .18s cubic-bezier(.2,.75,.25,1),scale .2s cubic-bezier(.2,.75,.25,1)}
.lab-mode button:not(#glass):not(#lab-overlay button):hover{scale:1.02}
.lab-mode button:not(#glass):not(#lab-overlay button):active{scale:.96}
#lab-overlay button{transform-origin:center;will-change:scale;transition:color .18s cubic-bezier(.2,.75,.25,1)}
#lab-overlay button[data-action^="select:"]:hover{color:#fff;text-shadow:0 0 12px #ffffff88}
@media(prefers-reduced-motion:reduce){.lab-mode button:not(#lab-overlay button){transition:none!important;scale:1!important}}

#lab-motion-notice{color:#b8d5ec;font-size:11px}#lab-play-motion{padding:8px 12px;border:1px solid #738fa8;border-radius:8px;background:#263a4b;color:#eef7ff}

/* Stable hit area; only its centered foreground follows the glass motion. */
#lab-overlay button{line-height:1.25;letter-spacing:0;will-change:auto;min-width:0}
#lab-overlay .lab-button-content{display:flex;align-items:center;justify-content:center;gap:.5em;max-width:100%;min-width:0;transform-origin:center;pointer-events:none;padding:0 .6em;will-change:transform}
#lab-overlay .tab-label .lab-button-content{flex-direction:column;gap:.3em}
#lab-overlay .lab-button-text{display:block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#lab-overlay button .lab-icon{font-size:2.3em;flex:none}
#lab-overlay button[data-action^="select:"]:hover{text-shadow:0 1px 4px #122a3655}

#lab-overlay .icon-only .lab-button-content{padding:0;flex:none;overflow:visible}
#lab-overlay .lab-symbol{display:block;width:var(--symbol-size,28px);height:var(--symbol-size,28px);flex:none;overflow:visible}

#lab-overlay .lab-nav-item,#lab-overlay .lab-nav-item[aria-pressed=true],#lab-overlay .lab-nav-item:hover{color:#eef2f5;font-weight:600;touch-action:pan-y}
#lab-overlay .lab-nav-item .lab-button-content{transform:none!important}
#lab-overlay .lab-nav-item .nav-color-copy{position:absolute;inset:0;width:100%;height:100%;max-width:none;color:#ff375f;text-shadow:none;pointer-events:none;padding:0 .6em;will-change:clip-path}

#lab-overlay .lab-nav-item svg.lab-icon{font-size:inherit;width:2.3em;height:2.3em;stroke-width:1.8}
