@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-duration:initial}}}.video-container{grid-template-columns:repeat(var(--grid-cols,2),1fr);grid-template-rows:repeat(var(--grid-rows,2),1fr);gap:.5rem;width:100%;height:calc(100vh - 180px);min-height:450px;padding:.25rem;transition:all .3s;display:grid}@media(min-width:769px)and (max-width:1199px){.video-container{grid-template-columns:repeat(min(var(--grid-cols,2),2),1fr);grid-template-rows:auto;grid-auto-rows:1fr}}@media(max-width:768px){.video-container{grid-template-rows:auto;grid-template-columns:1fr;grid-auto-rows:auto;height:auto;min-height:auto}}.video-cell{background-color:#000;border-radius:.5rem;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,.1)}.video-cell:hover{z-index:2;transform:translateY(-3px);box-shadow:0 8px 15px rgba(0,0,0,.15)}.video-element{-o-object-fit:cover;object-fit:cover;z-index:1;width:100%;height:100%;position:absolute}.detection-overlay{z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}.fullscreen-mode .video-cell{flex-direction:column;height:100%;max-height:100vh;display:flex;overflow:hidden}.fullscreen-mode .video-cell video{-o-object-fit:contain;object-fit:contain;flex:1;height:100%;max-height:100vh;padding:0}.video-cell .stream-info-bar{color:#fff;opacity:0;-webkit-backdrop-filter:blur(4px);z-index:20;background-color:rgba(0,0,0,.7);justify-content:space-between;align-items:center;padding:.75rem;font-size:.9rem;transition:all .3s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.video-cell .stream-details{text-overflow:ellipsis;white-space:nowrap;flex-direction:column;flex-grow:1;flex-shrink:1;justify-content:center;min-width:0;display:flex;overflow:hidden}.video-cell .stream-name{text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem;font-weight:700;overflow:hidden}.video-cell .stream-resolution{opacity:.8;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.video-cell:hover .stream-info-bar{opacity:1;transform:translateY(0)}.video-cell .stream-controls{flex-shrink:0;justify-content:flex-end;gap:.5rem;min-width:85px;margin-left:auto;display:flex}.video-cell .stream-controls button{color:#fff;cursor:pointer;background-color:rgba(255,255,255,.15);border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:.5rem;font-size:.9rem;transition:all .2s;display:flex;position:relative}.video-cell .stream-controls button:hover{background-color:rgba(255,255,255,.3);transform:scale(1.1)}.placeholder{border-radius:var(--radius);background-color:var(--color-gray-100,oklch(96.7% .003 264.542));height:100%;padding:calc(var(--spacing,.25rem)*8);text-align:center;--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);flex-direction:column;grid-area:1/1/-1/-1;justify-content:center;align-items:center;display:flex}.placeholder:is(.dark *){background-color:var(--color-gray-800,oklch(27.8% .033 256.848))}.placeholder p{margin-bottom:calc(var(--spacing,.25rem)*6);font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75/1.125)));color:var(--color-gray-600,oklch(44.6% .03 256.802))}.placeholder p:is(.dark *){color:var(--color-gray-300,oklch(87.2% .01 258.338))}.fullscreen-mode{z-index:1000;background-color:#000;flex-direction:column;width:100%;height:100vh;padding:0;display:flex;position:fixed;top:0;left:0;overflow:hidden}.fullscreen-mode .page-header{margin-bottom:0;padding:.5rem}.fullscreen-mode .video-container{flex:auto;width:100%;height:100vh;min-height:100vh;margin:0;padding:.5rem;display:grid}.loading-indicator{color:#fff;z-index:15;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading-spinner{border:3px solid #fff3;border-top-color:#1e88e5;border-radius:50%;width:40px;height:40px;margin-bottom:.75rem;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-indicator{color:#fff;text-align:center;-webkit-backdrop-filter:blur(4px);z-index:15;background-color:rgba(0,0,0,.5);border-radius:8px;flex-direction:column;align-items:center;padding:1.5rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.error-icon{color:#f44336;margin-bottom:.75rem;font-size:2rem}@media(max-width:992px){.video-container{gap:.75rem}}@media(max-width:768px){.video-container{height:auto;min-height:auto}.video-cell{aspect-ratio:16/9;margin-bottom:.5rem}.video-cell .stream-info-bar{opacity:1;transform:translateY(0)}.video-cell .stream-controls{gap:.75rem}.video-cell .stream-info-bar{padding:.5rem;font-size:.8rem}.video-cell .stream-controls{padding:.5rem}.video-cell .stream-controls button{padding:.35rem .5rem;font-size:.8rem}.play-button{width:5rem;height:5rem}.video-cell .stream-controls button{min-width:44px;min-height:44px}.loading-indicator{background-color:rgba(0,0,0,.5);border-radius:8px;padding:1rem}.error-indicator{width:80%;max-width:300px}.retry-button{min-width:100px;min-height:44px;font-size:1rem}}@supports (-webkit-touch-callout:none){.video-cell video{z-index:1;position:relative}.video-cell .stream-info-bar{background-color:rgba(0,0,0,.8)}}.status-message{top:calc(var(--spacing,.25rem)*5);z-index:50;--tw-translate-x: -50% ;--tw-translate-y:calc(var(--spacing,.25rem)*-5);max-width:80%;translate:var(--tw-translate-x)var(--tw-translate-y);background-color:var(--color-green-500,oklch(72.3% .219 149.579));padding-inline:calc(var(--spacing,.25rem)*4);padding-block:calc(var(--spacing,.25rem)*2.5);text-align:center;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25/.875)));color:var(--color-white,#fff);opacity:0;--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.3s;border-radius:.25rem;transition-duration:.3s;position:fixed;left:50%}.status-message.visible{--tw-translate-y:calc(var(--spacing,.25rem)*0);translate:var(--tw-translate-x)var(--tw-translate-y);opacity:1}.modal.block{display:flex!important}.modal.hidden{display:none!important}#snapshot-preview-modal{z-index:1050}#snapshot-preview-modal .modal-content{max-width:90%;margin:0 auto}#snapshot-preview-image{-o-object-fit:contain;object-fit:contain;width:100%;max-height:70vh}.play-overlay{-webkit-backdrop-filter:blur(4px);cursor:pointer;z-index:15;touch-action:manipulation;background-color:rgba(0,0,0,.6);flex-direction:column;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.play-overlay:hover,.play-overlay:active{background-color:rgba(0,0,0,.5)}.play-button{background-color:rgba(255,255,255,.2);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:4rem;height:4rem;transition:transform .2s;display:flex}.play-overlay:hover .play-button,.play-overlay:active .play-button{transform:scale(1.1)}.tap-message{color:#fff;text-align:center;margin-top:10px;font-size:14px}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-duration{syntax:"*";inherits:false}
