*{box-sizing:border-box}body{margin:0;background:#0c1423;color:#e6edf7;font:15px system-ui,Arial}button,input,select{font:inherit}button{background:#0ea5e9;color:#fff;border:0;border-radius:7px;padding:10px 15px;cursor:pointer}button:hover{filter:brightness(1.15)}input,select{background:#18263a;color:#fff;border:1px solid #41536d;border-radius:6px;padding:11px;width:100%}input[type=checkbox]{width:auto}.layout{display:flex;min-height:100vh}aside{width:220px;background:#111e31;padding:22px;display:flex;flex-direction:column;gap:10px}aside button{text-align:left;background:transparent}aside button.active{background:#075985}main{flex:1;padding:24px;min-width:0}header{display:flex;justify-content:space-between;align-items:center}article{background:#17253a;border:1px solid #2c4059;padding:20px;border-radius:12px;margin:12px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.screen{height:190px;background:#080e18;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:35px;color:#64748b}.screen small{font-size:12px;text-align:center;max-width:200px}form{display:grid;gap:12px;max-width:560px}label{display:block}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid #334155}td button{margin:3px}.error{color:#fb7185}.login{max-width:430px;margin:10vh auto}.login form{margin-top:30px}@media(max-width:650px){.layout{display:block}aside{width:100%;flex-direction:row;flex-wrap:wrap;padding:12px}aside h2{width:100%}main{padding:14px}table{display:block;overflow:auto}}.ptz-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:380px;margin:12px 0}.ptz-grid button{min-height:42px}.camera-wall-header,.camera-wall-options,.camera-tile-title,.camera-tile-footer,.camera-manage-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.camera-wall-grid{display:grid;gap:14px;margin:18px 0}.camera-tile{border:1px solid #d5dce7;border-radius:12px;overflow:hidden;min-width:0;background:#fff}.camera-tile-title,.camera-tile-footer{padding:10px}.camera-tile-title span{font-size:12px;color:#64748b}.camera-video-wrap{position:relative;background:#101827;aspect-ratio:16/9}.camera-video{width:100%;height:100%;object-fit:contain;display:block}.camera-state{position:absolute;bottom:10px;left:10px;background:#172235dd;color:#fff;padding:6px;border-radius:6px;font-size:12px}.camera-error{background:#991b1bdd}.camera-empty{aspect-ratio:16/9;background:#1e293b;color:#fff;display:grid;place-items:center}.camera-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;z-index:100;display:grid;place-items:center;padding:16px}.camera-modal{width:min(1100px,100%);max-height:95vh;overflow:auto;background:#fff;color:#172235;border-radius:14px;padding:16px}.camera-modal .camera-video-wrap{max-height:72vh}.camera-manage-row{padding:12px 0;border-bottom:1px solid #ddd}@media(max-width:650px){.camera-wall-grid{grid-template-columns:1fr!important}.camera-wall-header{align-items:flex-start}}
