*{box-sizing:border-box} :root{color-scheme:light;--paper:#f3f3ed;--ink:#243a32;--muted:#62746b;--green:#236b55;--green-soft:#e6efe8;--amber:#99601e;--amber-soft:#fbedd5;--line:#d7dfd7;--rose:#aa574a}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.5;cursor:default}button:focus-visible,summary:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #528bb5;outline-offset:4px}button svg{width:21px;height:21px}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}main{width:min(100%,620px);margin:auto;padding:22px 18px max(22px,env(safe-area-inset-bottom))}header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:650;letter-spacing:-.8px;line-height:1.1}.brand>svg{width:35px;height:35px;color:var(--green);stroke-width:2}.brand-sub{display:block;font-size:12px;font-weight:450;letter-spacing:.12px;color:var(--muted);margin-top:5px}.local{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.local>span{width:6px;height:6px;border-radius:100%;background:var(--green)}.camera-shell{position:relative;isolation:isolate;aspect-ratio:4/3;border-radius:22px;overflow:hidden;background:#17271f;color:#f7f8ee;transition:aspect-ratio .15s;max-width:100%;margin:auto}.camera-shell video,.camera-shell>canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.camera-shell.mirrored video{transform:scaleX(-1)}.camera-top{position:absolute;z-index:3;left:15px;right:12px;top:12px;display:flex;justify-content:space-between;align-items:center}.source-label{font-size:11px;font-weight:650;letter-spacing:1.7px;background:#17271fa3;border:1px solid #ffffff26;padding:7px 10px;border-radius:30px;backdrop-filter:blur(8px)}.icon-button{display:grid;place-items:center;border:1px solid #ffffff38;background:#17271fa3;border-radius:50%;width:44px;height:44px;color:white}.icon-button svg{width:25px;height:25px}.empty-camera{position:absolute;inset:45px 0 0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:15px;text-align:center}.empty-camera>svg{width:66px;height:66px;stroke-width:1.2;color:#a9c8b6;margin-bottom:8px}.empty-camera h1{font-size:24px;letter-spacing:-.6px;font-weight:500;margin:0 0 7px}.empty-camera p{font-size:14px;color:#c4d0c4;margin:0}.guide{position:absolute;z-index:2;left:25%;top:44%;width:50%;height:34%;background:#b5e3c608;pointer-events:none;border:1px dashed #e0ffe65e;border-radius:14px}.guide>span{position:absolute;left:50%;top:-23px;transform:translateX(-50%);white-space:nowrap;letter-spacing:1.5px;font-size:10px;text-shadow:0 1px 3px #111;background:#17271f90;padding:2px 6px;border-radius:5px}.guide>i{position:absolute;width:20px;height:20px;border:solid #c4ebd2}.guide>i:nth-of-type(1){left:-1px;top:-1px;border-width:2px 0 0 2px;border-radius:14px 0 0}.guide>i:nth-of-type(2){right:-1px;top:-1px;border-width:2px 2px 0 0;border-radius:0 14px 0 0}.guide>i:nth-of-type(3){left:-1px;bottom:-1px;border-width:0 0 2px 2px;border-radius:0 0 0 14px}.guide>i:nth-of-type(4){right:-1px;bottom:-1px;border-width:0 2px 2px 0;border-radius:0 0 14px}.camera-message{position:absolute;left:12px;right:12px;bottom:12px;padding:9px 10px;background:#17271fd4;color:#e7f2e7;text-align:center;border-radius:9px;font-size:13px;z-index:3}.main-actions{display:flex;gap:10px;margin-top:14px}.primary,.secondary{border:0;border-radius:13px;min-height:50px;padding:13px 18px;font-weight:600;display:flex;justify-content:center;align-items:center;gap:10px}.primary{background:var(--green);color:#fff;flex:1}.primary.stop{background:#dde5df;color:var(--ink)}.secondary{background:transparent;box-shadow:inset 0 0 0 1px #c9d3c9;color:var(--ink);font-weight:500}.instruction{font-size:13px;margin:12px 1px 20px;color:var(--muted)}.tracking-actions{display:flex;gap:4px;align-items:center;margin-top:10px}.tracking-actions>.primary{padding:11px;font-size:14px}.text-button{background:none;border:0;padding:12px;color:var(--green);font-size:13px;min-height:44px}.guide-settings{padding:15px;background:#e8eee7;border-radius:12px;display:grid;grid-template-columns:100px 1fr;align-items:center;gap:12px;font-size:14px}.guide-settings input{width:100%;accent-color:var(--green)}.guide-settings p{grid-column:1/-1;color:var(--muted);margin:0;font-size:13px}.indicators{display:grid;grid-template-columns:1fr 1fr;gap:11px}.indicator{border:1px solid var(--line);border-radius:16px;padding:15px;background:#f8f9f3;min-width:0;transition:background .15s}.indicator-title{display:flex;gap:7px;align-items:center;font-size:13px;color:var(--muted);margin-bottom:11px}.indicator-title svg{width:18px;height:18px}.indicator strong{font-size:21px;letter-spacing:-.6px;font-weight:600;display:block}.indicator p{font-size:12px;margin:3px 0 14px;min-height:18px;color:var(--muted)}.meter{height:4px;overflow:hidden;border-radius:4px;background:#dce3dc}.meter>span{display:block;width:0;height:100%;background:var(--green);transition:width .18s}.indicator[data-state=steady]{background:var(--green-soft);border-color:#c7d9cc}.indicator[data-state=motion]{background:var(--amber-soft);border-color:#e6c797}.indicator[data-state=motion] strong{color:var(--amber)}.indicator[data-state=motion] .meter>span{background:var(--amber)}.indicator[data-state=unknown] strong{font-size:19px;color:#74695c}.signal-panel{margin-top:16px;background:#fcfcf7;border:1px solid var(--line);padding:17px 16px 14px;border-radius:18px}.signal-heading{display:flex;justify-content:space-between;align-items:start;gap:10px}.signal-heading h2{font-size:16px;font-weight:600;margin:0}.signal-heading p{font-size:12px;color:var(--muted);margin:4px 0 0}.signal-tag{font-size:10px;letter-spacing:1px;background:#e9eee6;border-radius:5px;padding:4px 6px;white-space:nowrap;color:var(--muted)}#trace{display:block;width:100%;height:150px;margin-top:10px}.trace-footer{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.trace-legend{display:flex;flex-wrap:wrap;gap:8px 17px;font-size:12px;color:var(--muted);margin:12px 0 0}.trace-legend>span{display:flex;align-items:center;gap:6px}.line-swatch{width:14px;height:2px;background:var(--green)}.apex-swatch{height:13px;width:1px;border-left:1px dashed #548976}.signal-note{font-size:12px;color:var(--muted);margin:10px 0 0;line-height:1.55}.how{border-bottom:1px solid var(--line);font-size:14px}.how summary{list-style:none;display:flex;justify-content:space-between;gap:10px;padding:18px 2px;cursor:pointer;font-weight:550}.how summary::-webkit-details-marker{display:none}.how summary>span{color:var(--muted);font-size:20px;line-height:20px}.how[open] summary>span{transform:rotate(45deg)}.how>div{color:#596c61;padding:0 2px 12px;line-height:1.65}.how p{margin:0 0 13px}.how ol{padding-left:22px;margin-top:0}.how li{margin-bottom:8px}.how a{color:var(--green)}.technical{font-family:ui-monospace,monospace;font-size:12px}.notice{font-size:14px;border-radius:12px;margin-top:13px;padding:13px 14px}.error{background:#f6e4df;color:#713c30}.demo-controls{display:flex;gap:5px;flex-wrap:wrap;margin-top:12px}.demo-controls button{font-size:12px;border:1px solid var(--line);border-radius:30px;padding:10px;background:transparent;min-height:42px;color:var(--ink)}.demo-controls button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}footer{padding:22px 0 6px;font-size:11px;color:#869288;text-align:center}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:370px){main{padding:16px 12px}.indicator{padding:12px}.indicator strong{font-size:19px}.brand{font-size:21px}.local{font-size:11px}.empty-camera h1{font-size:21px}.empty-camera>svg{width:46px;height:46px}.tracking-actions{flex-wrap:wrap}.tracking-actions>.primary{flex-basis:100%}}@media(min-width:650px){main{padding-top:32px}.camera-shell{aspect-ratio:4/3}.empty-camera>svg{width:84px;height:84px}.empty-camera h1{font-size:30px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.tracking-actions{flex-wrap:wrap}.tracking-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;font-size:14px;color:var(--muted);padding:4px 0 8px}.tracking-choice select{font:inherit;color:var(--ink);background:#f8f9f3;border:1px solid var(--line);border-radius:10px;padding:10px;max-width:72%;min-height:44px}.tracking-status{font-size:13px;color:var(--muted);margin:9px 0}.guide[data-estimated=true]{border-color:#e6c797}.guide[data-estimated=true]>i{border-color:#e6c797}.guide[data-estimated=true]>span{color:#fff0d8}

.camera-message{position:static;margin-top:10px;background:#e6efe8;color:#243a32;font-size:13px;border-radius:10px;padding:9px 12px}

.record-panel{margin:14px 0 18px;padding:16px;background:#fcfcf7;border:1px solid var(--line);border-radius:16px}.record-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.record-heading>span{font-size:12px;font-weight:650;letter-spacing:1px;color:var(--muted)}.record-heading strong{font-size:24px;font-variant-numeric:tabular-nums;letter-spacing:.5px}.record-actions,.record-downloads{display:flex;flex-wrap:wrap;gap:8px}.record-actions>button{font-size:14px;min-height:48px;padding:11px 14px}.record-panel[data-recording=true]{border-color:#ad5648}.record-panel[data-recording=true] #recordBadge{color:#923b31}.recording{background:#923b31}.record-note-label{display:block;font-size:14px;margin:15px 0 7px}.record-note-label span{color:var(--muted);font-size:13px}.record-note{width:100%;font:inherit;font-size:16px;padding:11px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:#fff}.record-meta{font-size:13px;color:var(--muted);margin:10px 0 0}.record-message{font-size:14px;margin:10px 0 0;color:var(--green)}.record-message[data-error=true]{color:#923b31}.record-help{font-size:14px;color:var(--muted);margin-top:12px}.record-help summary{cursor:pointer;min-height:32px;padding:4px 0}.record-help p{margin:8px 0;line-height:1.6}.record-library{border-top:1px solid var(--line);padding-top:14px;margin-top:12px}.record-library label{font-size:14px;display:block;margin-bottom:7px}.record-library select{width:100%;font:inherit;font-size:14px;padding:12px 7px;background:white;border:1px solid var(--line);border-radius:9px;color:var(--ink);margin-bottom:10px}.record-downloads{margin-top:10px}.record-downloads a{font-size:14px;flex:1;text-decoration:none;text-align:center}#recordPlayback{width:100%;max-height:360px;border-radius:10px;background:#17271f;margin:15px 0 10px}#recordShare{width:100%}

#filePanel{margin-top:18px}#filePanel p{font-size:13px;line-height:1.55;color:#526b5b}#fileInput{display:block;max-width:100%;margin:12px 0}#fileVideo{width:100%;max-height:380px;background:#111;border-radius:12px}#fileTimeline{width:100%;height:150px;display:block;cursor:crosshair}#fileProgress{width:100%;accent-color:#236b55}#fileExport{display:inline-block}#fileDetail{min-height:42px}#engineMode{max-width:100%;font-size:13px}

/* The live view: camera, signal, two reporting actions. Tools stay collapsed. */
:root{--paper:#f6f7f5;--ink:#243a32;--muted:#63746d;--line:#dce3dd}
main{width:min(100%,900px);padding:22px 24px 18px}header{margin-bottom:16px;height:36px}.brand{gap:16px;font-size:22px;letter-spacing:-.6px}.brand .local{font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted)}
#start{flex:0 0 auto;min-height:36px;padding:8px 13px;border-radius:8px;font-size:13px;gap:7px}#start svg{width:17px;height:17px}
.camera-shell{aspect-ratio:16/9;border-radius:14px;background:#1c2924;transition:none;max-height:54vh;min-height:200px}.camera-top{top:12px;left:14px;right:12px}.source-label{font-size:9px;letter-spacing:1px;padding:5px 8px;background:#15221ccc;border:0;backdrop-filter:none;border-radius:4px}.icon-button{width:32px;height:32px;border-radius:8px}.icon-button svg{width:19px;height:19px}.empty-camera{inset:0;padding:28px}.empty-camera h1{font-size:24px;font-weight:500;margin-bottom:7px}.empty-camera p{font-size:13px;max-width:260px;color:#acbcb2}
.guide{opacity:.45;background:none;border:0;border-radius:6px}.guide>i{width:12px;height:12px}.guide>span{display:none}
.motion-overlay{position:absolute;bottom:12px;left:14px;z-index:3;display:flex;gap:7px}.motion-chip{position:relative;display:flex;align-items:center;gap:7px;padding:7px 10px 10px;background:#13211ce6;border:1px solid #ffffff1a;border-radius:6px;color:#e7ede9;font-size:11px;min-width:108px}.motion-chip>span{color:#bcc9c0}.motion-chip strong{font-size:11px;font-weight:550}.motion-chip .meter{position:absolute;left:10px;right:10px;bottom:4px;height:2px;background:#ffffff1c}.motion-chip .meter>span{background:#93c6ad}.motion-chip[data-state=motion]{background:#583d1fe8;border-color:#e5ab6266}.motion-chip[data-state=motion] strong{color:#ffe0b4}.motion-chip[data-state=motion] .meter>span{background:#e8b674}.motion-chip[data-state=unknown] strong{color:#ccc7bb}.motion-chip[data-state=off]{opacity:.6}
.signal-panel{margin-top:10px;padding:14px 17px 11px;border-radius:12px;background:#fff;border-color:#e0e6e1}.signal-heading h2{font-size:14px}.signal-heading p{font-size:11px;margin-top:2px}.signal-reading{text-align:right;display:flex;gap:10px;align-items:center}.signal-reading output{font-size:20px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.5px;color:var(--green)}.signal-tag{font-size:8px;letter-spacing:.7px}#trace{margin-top:4px;height:150px}.trace-footer{font-size:10px}.trace-legend{font-size:10px;margin-top:8px;gap:14px}.trace-legend i{flex-shrink:0}
.report-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 0}.report-row>span{font-size:13px;color:var(--muted)}.report-buttons{display:flex;gap:8px}.report-buttons button{font-size:12px;min-height:36px;padding:8px 13px;border-radius:7px;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}.report-buttons button:not(:disabled):hover{background:#eaf0eb}.report-feedback{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:34px;margin-bottom:8px}#reportStatus{font-size:11px;color:var(--muted);margin:7px 0}#reportStatus[data-error=true]{color:#a04431}#reportView{min-height:30px;white-space:nowrap;padding:5px 0;font-size:12px}.utility{border-top:1px solid var(--line);font-size:13px}.utility>summary{cursor:pointer;padding:14px 0;color:var(--muted);font-weight:450;list-style:none}.utility>summary::after{content:'+';float:right}.utility[open]>summary::after{content:'−'}.utility summary::-webkit-details-marker{display:none}#savedCount{margin-left:6px;font-variant-numeric:tabular-nums;color:#829088}.small-copy{font-size:12px;line-height:1.6;color:var(--muted)}.record-library{border:0;margin:0;padding:0}.record-library>label{display:none}.record-panel{border:0;background:transparent;padding:8px 0}.record-heading strong{font-size:16px}.how{font-size:12px}.how p{line-height:1.6}#recordPlayback{max-height:420px}#advanced>section,#advanced>.utility{margin-top:18px}footer{font-size:10px;padding:12px 0 2px}
@media(max-width:600px){main{padding:14px 14px 12px}header{margin-bottom:12px}.brand{font-size:20px;gap:10px}.brand .local{font-size:10px}.camera-shell{max-height:52vh;min-height:230px}.signal-panel{padding:12px}.report-row{align-items:flex-start;gap:8px}.report-row>span{padding-top:9px;font-size:11px}.report-buttons{gap:6px}.report-buttons button{font-size:11px;padding:9px 10px}.signal-heading p{max-width:190px}.signal-reading{gap:6px}.signal-tag{max-width:72px;overflow:hidden}.trace-legend{gap:10px;font-size:9px}.empty-camera h1{font-size:21px}.report-feedback{gap:6px}.motion-chip{min-width:98px;font-size:10px}.motion-chip strong{font-size:10px}}

/* Signal details do no chart work while collapsed. */
.detector-signals{margin-top:10px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.detector-signals>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:12px 15px;font-size:13px;font-weight:550;gap:12px}
.detector-signals>summary::-webkit-details-marker{display:none}.detector-signals summary small{font-size:11px;font-weight:400;color:var(--muted);margin-left:10px}.signals-toggle{font-size:19px;font-weight:400;color:var(--muted)}.detector-signals[open] .signals-toggle{transform:rotate(45deg)}
.signals-content{padding:0 15px 14px}.signals-content>.small-copy{margin:0 0 12px;font-size:11px}.signals-status{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;margin:9px 0 14px}
.signals-group-title{font-size:12px;font-weight:600;margin:14px 0 8px}.signals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.signal-plot{min-width:0;padding:10px 11px 7px;border:1px solid #e7ece7;border-radius:7px;background:#fbfcfa}.signal-plot header{height:auto;min-height:18px;margin:0 0 3px;gap:8px;align-items:baseline}.signal-plot h4{margin:0;font-size:11px;font-weight:550}.signal-plot output{white-space:nowrap;font-size:12px;font-variant-numeric:tabular-nums;color:var(--green)}.signal-plot p{font-size:10px;line-height:1.4;color:var(--muted);margin:4px 0 5px;min-height:28px}.signal-plot canvas{width:100%;height:70px;display:block}.signal-plot .signal-scale{display:flex;justify-content:space-between;gap:5px;font-size:9px;color:#7c8980;font-variant-numeric:tabular-nums}.signal-decision{padding:12px 0 0;font-size:12px}.signal-decision p{margin:5px 0 12px;font-size:11px;line-height:1.65;color:var(--muted)}
@media(max-width:600px){.signals-grid{grid-template-columns:1fr}.detector-signals summary small{display:block;margin-left:0;margin-top:2px}.signal-plot p{min-height:0}}

.report-feedback-actions{display:flex;align-items:center;gap:14px;flex-shrink:0}#reportUndo{min-height:30px;white-space:nowrap;padding:5px 0;font-size:12px;font-weight:600}#reportUndo:not(:disabled):hover{text-decoration:underline}

.sound-toggle{font:inherit;font-size:11px;line-height:1.2;padding:7px 9px;min-height:30px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--muted);white-space:nowrap}.sound-toggle[aria-pressed=true]{background:#e9f1eb;border-color:#b7cfbd;color:var(--green)}.sound-volume{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:9px;font-size:10px;color:var(--muted)}.sound-volume input{width:80px;height:16px;accent-color:var(--green);margin:0}.sound-description{font-size:10px;color:#809085}.sound-message{font-size:11px;color:var(--muted);margin:8px 0 0}@media(max-width:600px){.sound-description{display:none}.sound-toggle{font-size:10px;padding:6px 7px}.signal-reading{gap:5px}}


/* The idle camera surface is the start control. Running controls stay compact. */
#cameraShell #start{position:absolute;inset:0;z-index:5;width:100%;height:100%;margin:0;border:0;border-radius:0;background:transparent;color:#eef5f0;display:flex;flex-direction:column;gap:13px;padding:30px;cursor:pointer;box-shadow:none}
#cameraShell #start:hover{background:#ffffff06}#cameraShell #start:focus-visible{outline:3px solid #7ae7c5;outline-offset:-5px;border-radius:14px}
#cameraShell #start strong{font-size:28px;font-weight:500;letter-spacing:-.6px}.camera-start-note{font-size:14px;font-weight:400;line-height:1.5;color:#bccdc3;max-width:295px}.camera-start-icon{width:62px;height:62px;border:1px solid #9fceba66;border-radius:50%;display:grid;place-items:center;background:#78be9e13}#cameraShell #start svg{width:27px;height:27px;margin-left:3px;fill:#c8f5df;stroke:none}
#cameraShell #start.stop{inset:12px 12px auto auto;width:auto;height:32px;min-height:32px;border:1px solid #ffffff38;border-radius:7px;display:block;padding:5px 10px;background:#14221de8;font-size:12px;font-weight:500;line-height:20px}
#cameraShell #start.stop:hover{background:#344a3f}#cameraShell .empty-camera{display:none}
.camera-top{right:113px;pointer-events:none}.camera-controls{display:flex;align-items:center;gap:6px;pointer-events:auto}
.camera-shell[data-camera-state=off] .camera-top,.camera-shell[data-camera-state=starting] .camera-top,.camera-shell[data-camera-state=off] .motion-overlay,.camera-shell[data-camera-state=starting] .motion-overlay{display:none}
#featureOverlay{z-index:1;pointer-events:none}#featureToggle{min-height:32px;border:1px solid #ffffff38;border-radius:7px;background:#14221de8;color:#f0f5f2;font-size:12px;padding:5px 9px;white-space:nowrap}#featureToggle[aria-pressed=false]{color:#bac7bf}
.feature-legend{padding:10px 1px 2px}.feature-layers{display:flex;flex-wrap:wrap;gap:6px}.feature-layers button{display:flex;align-items:center;gap:7px;min-height:32px;border:1px solid #dce3dd;border-radius:6px;padding:5px 9px;font-size:12px;color:#334a3f;background:#fff}.feature-layers button i{width:8px;height:8px;border-radius:50%;background:var(--feature-color);box-shadow:0 0 0 1px #0002}.feature-layers [data-feature-layer=chest]{--feature-color:#6fe3bc}.feature-layers [data-feature-layer=pose]{--feature-color:#ff8a80}.feature-layers [data-feature-layer=background]{--feature-color:#67cbff}.feature-layers [data-feature-layer=head]{--feature-color:#ffd077}.feature-layers [data-feature-layer=templates]{--feature-color:#d3a7ff}.feature-layers [data-feature-layer=dense]{--feature-color:#edf2f7}.feature-layers button[aria-pressed=false]{opacity:.45}.feature-layers button[aria-pressed=false] i{background:transparent}.feature-legend p,.feature-legend summary{font-size:12px;line-height:1.55;color:#63746d;margin:7px 0}.feature-legend summary{cursor:pointer}.feature-legend details p{max-width:720px}
@media(max-width:600px){#cameraShell #start strong{font-size:25px}.camera-top{left:10px;right:101px}#cameraShell #start.stop{right:10px;padding:5px 8px;font-size:11px}.camera-controls{gap:4px}#featureToggle{font-size:11px;padding:5px 7px}.camera-shell[data-camera-state=camera] .source-label,.camera-shell[data-camera-state=demo] .source-label{display:none}.camera-top{justify-content:flex-end}.feature-layers{gap:5px}.feature-layers button{padding:5px 7px}}

.camera-shell.features-visible .guide{visibility:hidden}

/* Mode tabs. Simple shows only the breathing readout; the camera keeps running unseen. */
.mode-tabs{display:flex;gap:6px;margin:-4px 0 12px}.mode-tabs button{font-size:12px;padding:6px 14px;min-height:32px;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--muted)}.mode-tabs button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}
body.simple main>:not(header):not(.mode-tabs):not(section):not(#error),body.simple main>section:not([aria-label="Live breathing view"]),body.simple section[aria-label="Live breathing view"]>:not(.signal-panel):not(#cameraShell):not(#error){display:none!important}
body.simple #cameraShell{position:absolute;left:-20px;top:0;width:2px;height:2px;min-height:0;max-height:none;opacity:0;overflow:hidden;pointer-events:none}
body.simple .signal-panel>:not(.signal-heading):not(#trace):not(.sound-volume){display:none!important}
#simpleCamera{padding:6px 0;min-height:0;font-size:12px;text-align:left}
