:root{color:#0f0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#020402;font-family:IBM Plex Mono,SFMono-Regular,Consolas,ui-monospace,monospace}*{box-sizing:border-box}html{background:#020402;min-height:100%}body{background:#020402;min-width:320px;min-height:100svh;margin:0;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline-offset:3px;outline:2px solid #ffffffd6}.monitor-app{color:#0f0;background:#020402;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;position:fixed;inset:0;overflow:hidden}.monitor-canvas,.hidden-source{width:100%;height:100%;position:absolute;inset:0}.monitor-canvas{z-index:1;background:#020402}.hidden-source{z-index:-1;opacity:0;pointer-events:none}.camera-panel{z-index:4;text-align:left;background:#000800e0;border:1px solid #0f0;width:min(420px,100vw - 34px);padding:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 36px #00ff002e}.camera-panel:before{content:"MONITOR";color:#0f0;letter-spacing:.18em;font-size:12px;position:absolute;top:-22px;left:0}.panel-kicker{color:#00ff00b8;letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px;font-size:12px}.camera-panel h1{color:#fff;letter-spacing:-.08em;margin:0;font-size:clamp(48px,16vw,96px);line-height:.85}.camera-panel p:not(.panel-kicker){color:#ffffffc7;margin:18px 0;line-height:1.45}.camera-panel button,.control-surface button,.download-button{color:#0f0;font:inherit;cursor:pointer;text-transform:uppercase;background:#001200db;border:1px solid #0f0;font-weight:800;text-decoration:none;box-shadow:inset 0 0 18px #00ff0014,0 0 18px #00ff001a}.camera-panel button{width:100%;min-height:48px}.control-surface{z-index:3;pointer-events:none;grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid;position:absolute;bottom:18px;left:18px;right:18px}.control-surface>*{pointer-events:auto}.system-readout,.status-line,.import-row{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000800b8;border:1px solid #00ff006b}.system-readout{flex-wrap:wrap;grid-column:1/-1;gap:8px;width:fit-content;max-width:100%;padding:8px;display:flex}.system-readout span{color:#00ff00bd;border:1px solid #00ff0047;padding:5px 8px;font-size:11px;font-weight:800}.system-readout .online{color:#020402;background:#0f0}.system-readout .offline{color:#ff1d1d;border-color:#ff1d1d}.pad-grid{grid-template-columns:repeat(4,minmax(76px,1fr));gap:8px;display:grid}.pad-grid button{text-align:left;align-content:center;gap:4px;min-height:76px;padding:10px;display:grid}.pad-grid button.active{color:#020402;background:#0f0}.pad-grid strong{font-size:28px;line-height:1}.pad-grid span{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.transport-row{justify-self:end;gap:8px;display:flex}.transport-row button,.download-button{min-height:76px;padding:0 16px}.fire-button{min-width:144px;color:#020402!important;background:#0f0!important}.record-button.active{color:#fff;background:#ff1d1dd1;border-color:#ff1d1d;animation:.7s steps(2,end) infinite rec-pulse}.download-button{justify-content:center;align-items:center;display:inline-flex}.import-row{color:#00ff00db;text-transform:uppercase;grid-column:1/-1;grid-template-columns:auto 92px 150px 1fr;align-items:center;gap:8px;padding:8px;font-size:12px;font-weight:800;display:grid}.import-row select,.import-row input{color:#0f0;min-width:0;font:inherit;background:#020402;border:1px solid #00ff006b;font-size:12px}.import-row input::file-selector-button{color:#020402;font:inherit;background:#0f0;border:0;border-right:1px solid #00ff006b;margin-right:10px;font-weight:900}.status-line{color:#00ff00db;grid-column:1/-1;margin:0;padding:9px 10px;font-size:12px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #fff}@keyframes rec-pulse{50%{opacity:.62}}@media (width<=760px){.control-surface{grid-template-columns:1fr;bottom:10px;left:10px;right:10px}.pad-grid{grid-template-columns:repeat(4,1fr)}.pad-grid button{min-height:70px;padding:8px}.transport-row{justify-self:stretch}.transport-row button,.download-button{flex:1;min-height:58px;padding:0 10px}.import-row{grid-template-columns:1fr 74px}.import-row select,.import-row input{grid-column:span 1}.import-row input{grid-column:1/-1}.status-line{font-size:11px}}
