:root{--sdk-color-page:#f8fafc;--sdk-color-panel:#fff;--sdk-color-text:#0f172a;--sdk-color-muted-text:#64748b;--sdk-color-border:#cbd5e1;--sdk-color-action:#2563eb;--sdk-color-action-text:#fff;--sdk-color-success:#15803d;--sdk-color-warning:#b45309;--sdk-color-error:#b91c1c;--sdk-color-experimental:#7c3aed;--sdk-space-1:4px;--sdk-space-2:8px;--sdk-space-3:12px;--sdk-space-4:16px;--sdk-space-5:24px;--sdk-space-6:32px;--sdk-radius-sm:4px;--sdk-radius-md:8px;--sdk-focus-ring:0 0 0 3px #2563eb47;color:var(--sdk-color-text);background:var(--sdk-color-page);font-synthesis:none;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}*{box-sizing:border-box;letter-spacing:0}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible,canvas:focus-visible,.file-button:focus-within{box-shadow:var(--sdk-focus-ring);outline:0}button:disabled{cursor:not-allowed;opacity:.45}button svg,a svg,.file-button svg,.status-dot,.error-banner svg,.notice-banner svg{flex:none}.demo-shell{min-height:100vh}.topbar,.section-title,.top-actions,.modal-heading,.modal-actions{align-items:center;display:flex}.topbar{color:#f8fafc;border-bottom:3px solid var(--sdk-color-success);background:#111827;justify-content:space-between;gap:16px;min-height:68px;padding:10px 20px}.brand-block{grid-template-columns:auto auto;align-items:baseline;gap:3px 8px;min-width:0;display:grid}.brand-block h1{grid-area:1/1/auto/-1;margin:0;font-size:20px;line-height:1.2}.eyebrow{color:var(--sdk-color-muted-text);font-size:10px;font-weight:650;line-height:1.5}.brand-block .eyebrow{color:#86efac}.version{color:#cbd5e1;font-size:12px}.top-actions{gap:8px}.icon-button,.language-button,.text-button,.primary-button,.secondary-button,.file-button,.segmented button{border-radius:var(--sdk-radius-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:7px;min-width:0;min-height:36px;padding:7px 10px;line-height:1.3;display:inline-flex}.icon-button{background:var(--sdk-color-panel);border-color:var(--sdk-color-border);width:36px;color:var(--sdk-color-text);padding:0}.text-button{color:var(--sdk-color-text);background:0 0}.top-actions .text-button,.language-button{color:#e2e8f0;white-space:nowrap;background:0 0;border-color:#475569;min-height:34px}.top-actions .text-button:hover,.language-button:hover{background:#1f2937;border-color:#94a3b8}.repository-link{text-decoration:none}.text-button:hover,.secondary-button:hover,.file-button:hover,.icon-button:hover{background:#f1f5f9}.primary-button{background:var(--sdk-color-action);border-color:var(--sdk-color-action);color:var(--sdk-color-action-text);font-weight:650}.primary-button:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.secondary-button,.file-button{background:var(--sdk-color-panel);color:var(--sdk-color-text);border-color:var(--sdk-color-border)}.file-button{cursor:pointer;position:relative;overflow:hidden}.file-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.file-button input{opacity:0;width:1px;height:1px;position:absolute}.demo-workspace{grid-template:"controls preview results"minmax(0,1fr)"controls samples results"/270px minmax(0,1fr) 340px;height:calc(100vh - 68px);min-height:600px;display:grid}.controls-panel{border-right:1px solid var(--sdk-color-border);background:var(--sdk-color-panel);grid-area:controls;min-width:0;padding:16px;overflow-y:auto}.control-band{gap:16px;display:grid}.control-group{gap:7px;min-width:0;display:grid}.control-group select,.class-threshold-field input{border:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-sm);background:var(--sdk-color-panel);width:100%;min-width:0;min-height:36px;color:var(--sdk-color-text);padding:6px 9px}.model-source-limitations,.model-source-manifest,.model-source-hash,.model-source-blocked{overflow-wrap:anywhere}.model-source-limitations{color:var(--sdk-color-muted-text);font-size:11px;font-weight:400;line-height:1.5}.model-source-blocked{color:var(--sdk-color-warning);margin:14px 0 0;font-size:11px;line-height:1.5}.control-label,.threshold-control span{color:#475569;font-size:12px;font-weight:650}.segmented{border:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-sm);background:var(--sdk-color-panel);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;min-width:0;display:grid}.segmented button{border:0;border-right:1px solid var(--sdk-color-border);color:#475569;background:0 0;border-radius:0;gap:4px;min-height:34px;padding:6px 3px;font-size:12px;position:relative}.segmented button:first-child{border-radius:3px 0 0 3px}.segmented button:last-child{border-right:0;border-radius:0 3px 3px 0}.segmented button.selected{background:var(--sdk-color-action);color:var(--sdk-color-action-text);font-weight:650}.segmented button:focus-visible{z-index:1}.threshold-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.threshold-control input{width:100%;min-width:0;accent-color:var(--sdk-color-action);grid-area:2/1;margin:0}.threshold-control output{color:var(--sdk-color-text);font-variant-numeric:tabular-nums;grid-area:2/2;width:30px;font-size:12px}.small-object-control{align-items:center;gap:var(--sdk-space-2);min-width:0;color:var(--sdk-color-text);cursor:pointer;grid-column:1/-1;font-size:12px;display:flex}.small-object-control input{accent-color:var(--sdk-color-action);margin:0}.small-object-control:has(input:disabled){opacity:.6;cursor:default}.control-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding-top:2px;display:grid}.control-actions .file-button{grid-column:1/-1}.control-actions button{font-size:12px}.class-threshold-editor{border-top:1px solid var(--sdk-color-border);border-bottom:1px solid var(--sdk-color-border);margin-top:16px;padding:12px 0}.class-threshold-editor summary{cursor:pointer;color:var(--sdk-color-text);font-size:12px;font-weight:650;line-height:1.5}.class-threshold-editor summary small{color:var(--sdk-color-muted-text);margin-top:4px;font-size:11px;font-weight:400;display:block}.class-threshold-toolbar{gap:8px;margin:12px 0;display:grid}.class-threshold-toolbar .text-button{justify-content:flex-start;padding-left:0;font-size:12px}.class-threshold-grid{gap:8px;display:grid}.class-threshold-field{grid-template-columns:minmax(0,1fr) 72px;align-items:center;gap:8px;min-width:0;display:grid}.class-threshold-field span{overflow-wrap:anywhere;color:#475569;font-size:12px}.status-line{border:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-sm);background:var(--sdk-color-page);color:#334155;overflow-wrap:anywhere;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:6px 8px;min-height:58px;margin-top:16px;padding:10px;font-size:12px;display:grid}.status-line.success{background:#f0fdf4;border-color:#bbf7d0}.status-line.error{background:#fef2f2;border-color:#fecaca}.status-dot{background:var(--sdk-color-muted-text);border-radius:50%;width:8px;height:8px}.status-dot.success{background:var(--sdk-color-success)}.status-dot.error{background:var(--sdk-color-error)}.status-dot.downloading,.status-dot.loading,.status-dot.running{background:var(--sdk-color-warning)}.status-hint{color:var(--sdk-color-muted-text);text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:11px;overflow:hidden}.error-banner,.notice-banner{color:var(--sdk-color-error);border-radius:var(--sdk-radius-sm);overflow-wrap:anywhere;background:#fef2f2;border:1px solid #fecaca;align-items:flex-start;gap:8px;margin-top:10px;padding:10px;font-size:12px;line-height:1.5;display:flex}.notice-banner{color:var(--sdk-color-success);background:#f0fdf4;border-color:#bbf7d0}.workspace-grid{display:contents}.result-panel,.details-panel{min-width:0;min-height:0;overflow-y:auto}.result-panel{background:#eef2f6;flex-direction:column;grid-area:preview;padding:16px;display:flex;container-type:inline-size}.details-panel{border-left:1px solid var(--sdk-color-border);background:var(--sdk-color-panel);grid-area:results}.result-toolbar{align-items:center;gap:var(--sdk-space-2) var(--sdk-space-3);margin-bottom:var(--sdk-space-2);grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"title selection zoom labels";display:grid}.result-toolbar h2,.section-title h2,.modal h2{margin:2px 0 0;font-size:14px;line-height:1.4}.result-toolbar h2{white-space:nowrap;grid-area:title;margin:0}.result-toolbar .text-button{min-width:var(--sdk-space-6);min-height:var(--sdk-space-6);padding:var(--sdk-space-1) var(--sdk-space-2);white-space:nowrap;font-size:12px}.label-toggle{align-items:center;gap:var(--sdk-space-2);padding-block:var(--sdk-space-2);color:var(--sdk-color-text);white-space:nowrap;cursor:pointer;grid-area:labels;font-size:12px;display:inline-flex}.label-toggle input{width:16px;height:16px;accent-color:var(--sdk-color-action);cursor:pointer;margin:0}.canvas-wrap{border-radius:var(--sdk-radius-sm);background:#dbe2ea;border:1px solid #b8c4d2;flex:1;place-items:center;min-height:280px;display:grid;position:relative;overflow:hidden}.source-image,.source-video,.canvas-wrap>canvas.hidden{display:none}.image-viewport{touch-action:none;-webkit-user-select:none;user-select:none;overflow:clip}.image-viewport .result-canvas{cursor:grab}.image-viewport.is-dragging .result-canvas{cursor:grabbing}.zoom-toolbar{align-items:center;gap:var(--sdk-space-1);grid-area:zoom;display:flex}.zoom-toolbar output{text-align:center;font-variant-numeric:tabular-nums;min-width:44px}@container (width<=640px){.result-toolbar{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"title selection labels""zoom zoom zoom"}}.media-canvas-wrap .source-video{object-fit:contain;background:#111827;width:100%;max-height:100%;display:block}.media-canvas-wrap .result-canvas{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.result-canvas{cursor:crosshair;object-fit:contain;width:100%;height:100%;min-height:0;max-height:100%;display:block}.empty-state{color:#475569;text-align:center;justify-items:center;gap:8px;padding:24px;display:grid}.empty-state small{color:var(--sdk-color-muted-text);line-height:1.5}.sample-gallery{min-width:0;padding:0 var(--sdk-space-4) var(--sdk-space-4);background:#eef2f6;grid-area:samples}.sample-gallery-heading{margin-bottom:8px}.sample-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.sample-card{text-align:left;border:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-sm);background:var(--sdk-color-panel);min-width:0;color:var(--sdk-color-text);padding:5px;display:block}.sample-card:hover,.sample-card:focus-visible{border-color:var(--sdk-color-action)}.sample-card img{object-fit:cover;background:#e2e8f0;border-radius:2px;width:100%;height:80px;display:block}.detail-section{padding:var(--sdk-space-4);border-bottom:1px solid var(--sdk-color-border)}.detail-disclosure>summary{min-height:var(--sdk-space-6);cursor:pointer;margin:0;list-style:none}.detail-disclosure>summary::-webkit-details-marker{display:none}.detail-disclosure[open]>summary{margin-bottom:var(--sdk-space-3)}.detail-disclosure[open]>summary svg{transform:rotate(180deg)}.timing-summary{gap:var(--sdk-space-3);margin:0 0 var(--sdk-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.timing-summary dt{color:var(--sdk-color-muted-text);font-size:12px}.timing-summary dd{margin:var(--sdk-space-1) 0 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:18px;font-weight:650}.detection-list{max-height:40vh;padding:var(--sdk-space-1);margin:0 calc(-1 * var(--sdk-space-1));overflow-y:auto}.detection-empty{padding:var(--sdk-space-6) 0;text-align:center;margin:0}.filter-disclosure{margin-bottom:var(--sdk-space-2);font-size:12px}[data-testid=fallback-slot]:empty{display:none}.section-title{justify-content:space-between;gap:8px;margin-bottom:12px}.section-title svg{color:var(--sdk-color-muted-text)}.count-badge{border-radius:var(--sdk-radius-sm);min-width:24px;color:var(--sdk-color-success);text-align:center;background:#dcfce7;padding:3px 7px;font-size:12px;font-weight:650}.detection-row{width:100%;padding:var(--sdk-space-2);border:0;border-top:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-sm);color:var(--sdk-color-text);text-align:left;scroll-margin-block:var(--sdk-space-3);background:0 0;align-items:flex-start;gap:10px;display:flex}.detection-row:hover{background:var(--sdk-color-page)}.detection-row[aria-pressed=true]{background:var(--sdk-color-page);box-shadow:inset 0 0 0 2px var(--sdk-color-action)}.detection-row:focus-visible{outline:2px solid var(--sdk-color-action);outline-offset:2px}.detection-row>span:last-child{min-width:0}.target-selection-slot{min-width:0;height:var(--sdk-space-6);grid-area:selection}.target-selection{align-items:center;gap:var(--sdk-space-1);min-width:0;height:100%;color:var(--sdk-color-muted-text);font-size:12px;display:flex}.target-selection>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.target-selection .text-button{flex:none}.class-filter{min-width:0;margin:0 0 var(--sdk-space-3);padding:var(--sdk-space-2);border:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-sm)}.class-filter legend{padding-inline:var(--sdk-space-1);font-size:12px;font-weight:650}.class-filter>button{margin-bottom:var(--sdk-space-2);font-size:12px}.class-filter-options{gap:var(--sdk-space-2);flex-wrap:wrap;display:flex}.class-filter-option{align-items:center;gap:var(--sdk-space-1);min-width:0;max-width:100%;padding:var(--sdk-space-1);border-radius:var(--sdk-radius-sm);background:var(--sdk-color-page);overflow-wrap:anywhere;cursor:pointer;font-size:12px;display:flex}.class-filter-option input{accent-color:var(--sdk-color-action);cursor:pointer;flex:none;margin:0}.class-filter-option .detection-color-dot{margin-top:0}.class-filter p{margin:var(--sdk-space-2) 0 0}.detection-color-dot{background:var(--detection-color);border-radius:50%;flex:none;width:8px;height:8px;margin-top:4px}.detection-row strong{overflow-wrap:anywhere;font-size:13px;display:block}.detection-row small,.fallback-row small{color:var(--sdk-color-muted-text);overflow-wrap:anywhere;font-size:11px}.detection-index{color:var(--sdk-color-success);font-variant-numeric:tabular-nums;font-size:12px}.muted{color:var(--sdk-color-muted-text);font-size:12px;line-height:1.5}.fallback-row{border-top:1px solid #e2e8f0;gap:3px;padding:8px 0;display:grid}.fallback-row strong{font-size:12px}.metric-list{gap:7px;margin:0;display:grid}.metric-list div{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:baseline;gap:10px;display:grid}.metric-list dt{color:var(--sdk-color-muted-text);font-size:12px;line-height:1.5}.metric-list dd{min-width:0;color:var(--sdk-color-text);font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.5}.timing-group+.timing-group{border-top:1px solid #e2e8f0;margin-top:16px;padding-top:14px}.timing-group-title{color:#475569;margin:0 0 9px;font-size:12px;font-weight:650}.metric-list .timing-total-row dt,.metric-list .timing-total-row dd{color:var(--sdk-color-text);font-weight:650}.detail-actions{flex-wrap:wrap;gap:8px;padding:0;display:flex}.detail-actions button{font-size:12px}.export-actions{margin-bottom:var(--sdk-space-3)}.export-actions button{border-color:var(--sdk-color-border);flex:auto}.cache-actions{margin-top:var(--sdk-space-3)}.modal-backdrop{z-index:5;background:#0f172a66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--sdk-color-panel);border:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-md);width:min(560px,100%);max-height:calc(100dvh - 40px);padding:20px;overflow-y:auto;box-shadow:0 16px 45px #0f172a30}.modal-heading{justify-content:space-between;gap:12px}.modal h2{font-size:16px}.modal p{color:#475569;font-size:13px;line-height:1.6}.modal textarea{resize:vertical;border:1px solid var(--sdk-color-border);border-radius:var(--sdk-radius-sm);background:var(--sdk-color-panel);width:100%;min-height:190px;color:var(--sdk-color-text);padding:12px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;display:block}.modal-actions{justify-content:flex-end;gap:8px;margin-top:16px}@media (width<=1199px){.demo-workspace{grid-template:"controls preview""controls results""controls samples"1fr/250px minmax(0,1fr);height:auto;min-height:calc(100vh - 68px)}.controls-panel,.result-panel,.details-panel{overflow:visible}.details-panel{border-left:0;border-top:1px solid var(--sdk-color-border)}.canvas-wrap{flex:none;height:min(56vh,560px)}.sample-gallery{padding-top:var(--sdk-space-4)}.sample-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=699px){.topbar{flex-wrap:wrap;gap:12px;padding:12px}.top-actions{flex-wrap:wrap;gap:6px}.top-actions .text-button,.language-button{padding-inline:8px;font-size:12px}.demo-workspace{flex-direction:column;display:flex}.controls-panel{border-right:0;border-bottom:1px solid var(--sdk-color-border);padding:16px 12px}.control-band{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.control-band>.control-group:first-child,.camera-device-control,.control-actions{grid-column:1/-1}.control-band>.control-group:has(.segmented svg){grid-column:1/-1}.threshold-control{grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) auto}.threshold-control input,.threshold-control output{grid-area:auto}.result-panel{padding:12px}.canvas-wrap{height:clamp(260px,42svh,380px);min-height:260px}.details-panel{display:block}.sample-gallery{padding-inline:var(--sdk-space-3)}}
