.bounding-box-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}.camera-view{position:relative;width:100%;height:100%;min-height:500px;background-color:var(--bg-medium);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-lg);border:2px solid var(--border-color)}.video-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#000}.video-element{width:100%;height:100%;object-fit:contain;display:block}.no-stream-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--text-secondary);z-index:10}.no-stream-message p{margin:.5rem 0;font-size:1.2rem}.no-stream-message .hint{font-size:.9rem;opacity:.7}@media(max-width:640px){.camera-view{min-height:300px}}.controls{background-color:var(--bg-medium);border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow)}.controls-section{margin-bottom:1.5rem}.controls-section:last-child{margin-bottom:0}.controls-section h3{font-size:1rem;margin-bottom:1rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;font-weight:600}button{width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}button:last-child{margin-bottom:0}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4ecdc466}.btn-success{background:linear-gradient(135deg,var(--success-color),#48C9B0);color:#fff}.btn-success:hover{transform:translateY(-2px);box-shadow:0 4px 12px #52be8066}.btn-danger{background:linear-gradient(135deg,var(--danger-color),#E74C3C);color:#fff}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff6b6b66}.btn-secondary{background-color:var(--bg-light);color:var(--text-primary);border:2px solid var(--border-color)}.btn-secondary:hover{background-color:var(--border-color);transform:translateY(-2px)}.btn-disabled{background-color:var(--bg-light);color:var(--text-secondary);cursor:not-allowed;opacity:.6}.camera-select{width:100%;padding:.75rem;font-size:.95rem;background-color:var(--bg-light);color:var(--text-primary);border:2px solid var(--border-color);border-radius:8px;margin-bottom:.75rem;cursor:pointer;transition:all .3s ease}.camera-select:hover{border-color:var(--primary-color)}.camera-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4ecdc433}.help-text{font-size:.85rem;color:var(--text-secondary);margin-top:.5rem;text-align:center}@media(max-width:640px){.controls{padding:1rem}button{font-size:.9rem;padding:.6rem 1.2rem}.controls-section h3{font-size:.9rem}}.fps-monitor{background:linear-gradient(135deg,var(--bg-medium),var(--bg-light));border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow);text-align:center}.fps-value{font-size:3rem;font-weight:700;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem;line-height:1}.execution-provider{font-size:.9rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-weight:500}@media(max-width:640px){.fps-monitor{padding:1rem}.fps-value{font-size:2.5rem}.execution-provider{font-size:.8rem}}.app{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,var(--bg-dark) 0%,var(--bg-medium) 100%)}.app-header{background-color:var(--bg-medium);padding:1.5rem 2rem;text-align:center;box-shadow:var(--shadow);border-bottom:2px solid var(--border-color)}.app-header h1{font-size:2rem;margin-bottom:.5rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{color:var(--text-secondary);font-size:.95rem;font-weight:300}.app-main{flex:1;padding:2rem;max-width:1600px;margin:0 auto;width:100%}.content-wrapper{display:grid;grid-template-columns:1fr 400px;gap:2rem;height:100%}.sidebar{display:flex;flex-direction:column;gap:1.5rem}.error-message{background-color:#ff6b6b1a;border:2px solid var(--danger-color);border-radius:12px;padding:1.5rem;animation:shake .5s}.error-message h3{margin-bottom:.5rem;color:var(--danger-color)}.error-message p{color:var(--text-secondary);font-size:.9rem}.info-box{background-color:var(--bg-medium);border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow)}.info-box h3{margin-bottom:1rem;font-size:1.1rem}.info-box ul{list-style:none}.info-box li{padding:.5rem 0;color:var(--text-secondary);font-size:.95rem;border-bottom:1px solid var(--border-color)}.info-box li:last-child{border-bottom:none}.app-footer{background-color:var(--bg-medium);padding:1.5rem 2rem;text-align:center;border-top:2px solid var(--border-color);margin-top:auto}.app-footer p{color:var(--text-secondary);font-size:.9rem;margin:.25rem 0}.model-info{font-size:.85rem!important;opacity:.7}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@media(max-width:1200px){.content-wrapper{grid-template-columns:1fr 350px}}@media(max-width:968px){.content-wrapper{grid-template-columns:1fr}.sidebar{max-width:600px;margin:0 auto;width:100%}}@media(max-width:640px){.app-header h1{font-size:1.5rem}.subtitle{font-size:.85rem}.app-main{padding:1rem}.content-wrapper{gap:1rem}}:root{--primary-color: #4ECDC4;--secondary-color: #45B7D1;--danger-color: #FF6B6B;--success-color: #52BE80;--bg-dark: #1a1a2e;--bg-medium: #16213e;--bg-light: #0f3460;--text-primary: #ffffff;--text-secondary: #a0a0a0;--border-color: #2a2a3e;--shadow: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .5)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-dark);color:var(--text-primary);overflow-x:hidden}code{font-family:Courier New,monospace;background-color:var(--bg-light);padding:2px 6px;border-radius:4px;font-size:.9em}#root{min-height:100vh;display:flex;flex-direction:column}
