/* Camera-first phone workspace. Panels open only on request. */
.mobile-dock,.mobile-panel-close,.panel-scrim{display:none}
.source-video{position:absolute;width:1px;height:1px;opacity:.001;pointer-events:none;left:0;top:0}
.save-file{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px 0;border-bottom:1px solid var(--line)}.save-file strong,.save-file small{grid-column:1/-1}.save-file strong{font:14px Workshop,Arial,sans-serif}.save-file small{font:11px monospace}.save-file button{min-height:48px;font-size:11px}.share-button{background:var(--paper);color:var(--black);border-color:var(--paper)}#save-dialog p{font-size:13px;line-height:1.6}#save-dialog{max-height:85dvh}#save-dialog form .panel-title{gap:20px}
.phone-layout{height:100dvh;overflow:hidden;background:#10120f}.phone-layout .masthead{height:calc(53px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 15px 8px;gap:10px}.phone-layout .nrs{font-size:27px;letter-spacing:-1.5px}.phone-layout .brand-type{font-size:16px;letter-spacing:1.5px}.phone-layout .brand-type small,.phone-layout .top-right>span{display:none}.phone-layout .icon-btn{height:36px;min-height:36px;width:36px;font-size:20px;margin:0}.phone-layout .navigation{height:43px;padding:0 15px;background:var(--bg)}.phone-layout .tabs{width:100%;gap:14px;justify-content:space-between}.phone-layout .tabs button{height:43px;min-height:43px;font-size:10px;padding:12px 0 10px}.phone-layout .serial{display:none}.phone-layout main{height:calc(100dvh - 96px - env(safe-area-inset-top));padding:0;display:flex;flex-direction:column;max-width:none}.phone-layout .workspace-head,.phone-layout .site-footer,.phone-layout .monitor-footer{display:none}.phone-layout .workspace,.phone-layout .workspace.builder{display:flex;flex-direction:column;align-items:stretch;flex:1;min-height:0;gap:0;position:relative}.phone-layout .monitor-panel{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;position:relative;top:auto}.phone-layout .monitor-top{height:30px;min-height:30px;padding:0 12px;border-left:0;border-right:0;font-size:8px}.phone-layout .monitor-top button{min-height:28px;height:28px;font-size:19px}.phone-layout .viewfinder{flex:1;min-height:180px;max-height:none;aspect-ratio:auto!important;width:100%;background:#080b08}.phone-layout .viewfinder canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.phone-layout .vf-label,.phone-layout .vf-bottom{font-size:8px;left:17px;right:17px}.phone-layout .empty-state{padding:30px 20px}.phone-layout .empty-state .lens-mark{width:53px;height:53px;margin-bottom:28px}.phone-layout .empty-state h2,.phone-layout .builder .empty-state h2{font-size:29px}.phone-layout .empty-state>.eyebrow{font-size:8px}.phone-layout .empty-state>p:not(.eyebrow){font-size:11px;max-width:230px;line-height:1.7;margin:12px 0 25px}.phone-layout .empty-state .primary{font-size:11px;min-height:49px}.phone-layout .empty-state>small{font-size:9px;max-width:250px;line-height:1.6}.phone-layout .record-deck{flex-shrink:0;height:90px;min-height:90px;padding:12px 17px;position:relative;bottom:auto;border-left:0;border-right:0}.phone-layout .record-button{height:64px;width:64px;flex-basis:64px}.phone-layout .deck-group{gap:4px}.phone-layout .deck-group select{font-size:10px;min-height:32px;width:128px}.phone-layout .deck-group .subtle{display:none}.phone-layout .deck-group>small{font-size:8px}.phone-layout .deck-right .text-btn{font-size:9px;min-height:31px}.phone-layout #camera-off{display:none}.phone-layout #record-hint{font-size:7px}.phone-layout .mobile-dock{display:flex;flex-shrink:0;height:calc(48px + env(safe-area-inset-bottom));padding:0 12px env(safe-area-inset-bottom);background:var(--bg);gap:10px;border-top:1px solid var(--line);z-index:10}.phone-layout .mobile-dock button{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;min-height:46px;border:0;background:none;font-size:10px}.phone-layout .mobile-dock button span{color:var(--muted);font-size:12px}.phone-layout .mobile-dock button[aria-expanded=true]{color:var(--paper);box-shadow:inset 0 2px var(--paper)}.phone-layout .inspector,.phone-layout .toolbag,.phone-layout #clips-section{display:none;position:fixed;left:0;right:0;bottom:calc(48px + env(safe-area-inset-bottom));width:100%;max-height:min(66dvh,620px);min-height:0;overflow:auto;overscroll-behavior:contain;z-index:12;background:var(--panel);border:1px solid var(--line);border-radius:14px 14px 0 0;padding:0 18px 24px;box-shadow:0 -15px 60px #0005;scrollbar-width:thin}.phone-layout[data-panel-open=setup] .inspector,.phone-layout[data-panel-open=parts] .toolbag,.phone-layout[data-panel-open=clips] #clips-section{display:block}.phone-layout .mobile-panel-close{display:block;min-height:46px;border:0;padding:8px;font-size:10px;flex:0 0 auto}.phone-layout .inspector>.panel-title,.phone-layout .toolbag>.panel-title,.phone-layout #clips-section>.panel-title{position:sticky;top:0;background:var(--panel);z-index:2;min-height:56px;gap:10px}.phone-layout .panel-title .bolt{display:none}.phone-layout .panel-scrim{position:fixed;inset:0;z-index:11;background:#0005;border:0;border-radius:0;padding:0}.phone-layout[data-panel-open] .panel-scrim{display:block}.phone-layout .panel-title{font-size:12px}.phone-layout .hardware-label{display:none}.phone-layout .part-actions button{min-height:44px}.phone-layout .clip-row button{min-height:44px;font-size:10px;padding:9px}.phone-layout .clip-row>span{font-size:12px}.phone-layout #message{bottom:calc(58px + env(safe-area-inset-bottom));font-size:12px;padding:12px 16px;z-index:15;max-height:25dvh;overflow:auto;pointer-events:none}.phone-layout .process-transport{height:49px;flex-shrink:0;padding:5px 13px}.phone-layout .process-transport button{min-height:42px;min-width:44px}.phone-layout .process-deck{padding:10px 12px;border-left:0;border-right:0;gap:8px;min-height:70px;flex-shrink:0}.phone-layout .process-deck .primary{font-size:10px;min-height:46px}.phone-layout .process-deck small{display:none}.phone-layout .recording .workspace-head{display:none}.phone-layout.recording .masthead,.phone-layout.recording .navigation{display:none}.phone-layout.recording main{height:100dvh;padding-top:env(safe-area-inset-top)}.phone-layout.recording .mobile-dock{display:none}.phone-layout.recording .record-deck{height:calc(90px + env(safe-area-inset-bottom));padding-bottom:calc(12px + env(safe-area-inset-bottom))}.phone-layout.recording .monitor-top{display:none}.phone-layout.recording.controls-hidden .deck-group{opacity:.18}.phone-layout .builder #chain{grid-template-columns:1fr 1fr}.phone-layout .builder #parameters{display:block}.phone-layout dialog{border-radius:14px 14px 0 0;width:100%;max-width:100%;margin:auto 0 0;max-height:90dvh;padding:18px 20px calc(24px + env(safe-area-inset-bottom));border-bottom:0}.phone-layout dialog input,.phone-layout dialog select,.phone-layout #build-name{font-size:16px}.phone-layout .field select{font-size:16px;min-height:46px}.phone-layout details summary{min-height:48px;align-items:center;padding-top:6px}.phone-layout .button-row button,.phone-layout .file-btn{min-height:44px}
@media(max-height:550px) and (orientation:landscape){.phone-layout .masthead{display:none}.phone-layout main{height:calc(100dvh - 43px)}.phone-layout .monitor-top{height:25px;min-height:25px}.phone-layout .viewfinder{min-height:100px;margin-right:88px;width:calc(100% - 88px)}.phone-layout .record-deck{position:absolute;right:0;top:25px;bottom:0;width:88px;height:auto;min-height:0;padding:7px;display:flex;flex-direction:column;justify-content:center;gap:9px;border-top:0}.phone-layout .record-deck .deck-group{flex:0;align-items:center}.phone-layout .record-deck .deck-group>small,.phone-layout .record-deck select,.phone-layout #record-hint{display:none}.phone-layout .record-button{width:60px;height:60px;flex-basis:60px}.phone-layout .deck-right .text-btn{font-size:8px;min-height:40px}.phone-layout .mobile-dock{height:calc(43px + env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.phone-layout .mobile-dock button{min-height:40px}.phone-layout .empty-state .lens-mark,.phone-layout .empty-state>.eyebrow,.phone-layout .empty-state>small,.phone-layout .empty-state>p:not(.eyebrow){display:none}.phone-layout .empty-state h2,.phone-layout .builder .empty-state h2{font-size:22px;margin:0 0 13px}.phone-layout .empty-state .primary{min-height:44px}.phone-layout .inspector,.phone-layout .toolbag,.phone-layout #clips-section{left:auto;width:min(430px,75vw);max-height:calc(100dvh - 55px);bottom:calc(43px + env(safe-area-inset-bottom));border-radius:12px 0 0 0}.phone-layout[data-workspace=process] .viewfinder{margin-right:0;width:100%}.phone-layout[data-workspace=process] .process-deck{position:absolute;right:0;top:25px;bottom:49px;width:106px;flex-direction:column;justify-content:center;min-height:0}.phone-layout[data-workspace=process] .viewfinder{width:calc(100% - 106px)}.phone-layout[data-workspace=process] .process-deck .primary{flex:0;white-space:normal;padding:12px 8px;line-height:1.5}.phone-layout.recording .record-deck{top:0;height:auto;padding:10px 7px}.phone-layout.recording main{height:100dvh}}
