@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/224e262ef877bfa4-s.0mo8vqgr8yagc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0r4w1y.tjq0ay.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.0lcb62h0-.jh3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.0ri_id_kcagyz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.0tqkxa-w3pk~c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/224e262ef877bfa4-s.0mo8vqgr8yagc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0r4w1y.tjq0ay.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.0lcb62h0-.jh3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.0ri_id_kcagyz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.0tqkxa-w3pk~c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/224e262ef877bfa4-s.0mo8vqgr8yagc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0r4w1y.tjq0ay.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.0lcb62h0-.jh3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.0ri_id_kcagyz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.0tqkxa-w3pk~c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/224e262ef877bfa4-s.0mo8vqgr8yagc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0r4w1y.tjq0ay.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.0lcb62h0-.jh3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.0ri_id_kcagyz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.0tqkxa-w3pk~c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/224e262ef877bfa4-s.0mo8vqgr8yagc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0r4w1y.tjq0ay.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.0lcb62h0-.jh3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.0ri_id_kcagyz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.0tqkxa-w3pk~c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.nunito_fd6c379f-module__6xxpSW__className{font-family:Nunito,Nunito Fallback;font-style:normal}.nunito_fd6c379f-module__6xxpSW__variable{--font-nunito:"Nunito", "Nunito Fallback"}
:root{--bg:#fefafd;--card:#fff;--line:#ede8f8;--card-border:#ede8f8;--text:#2d2540;--text-soft:#7a6e90;--text-muted:#b0a8c0;--accent:#9b7fe8;--focus:#9b7fe8;--accent-light:#9b7fe81a;--accent-border:#9b7fe84d;--green:#4ecb71;--green-bg:#4ecb711a;--green-border:#4ecb714d;--blue:#5ba4e8;--blue-bg:#5ba4e81a;--blue-border:#5ba4e84d;--danger:#e8708a;--danger-bg:#e8708a1a;--danger-border:#e8708a4d;--warning-bg:#e6a83a1a;--warning-border:#e6a83a59;--shadow-sm:0 2px 8px #6446a00f;--shadow-md:0 6px 20px #6446a01a;--shadow-lg:0 14px 36px #6446a024}@keyframes fadeInUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideTabIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}@keyframes spinSoft{to{transform:rotate(360deg)}}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{font-family:var(--font-nunito), "Nunito", "Segoe UI", system-ui, sans-serif;background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;position:relative}a{color:inherit}.bg-overlay{opacity:.07;pointer-events:none;z-index:0;background-image:url(/bg-pattern.png);background-repeat:repeat;background-size:280px;position:fixed;inset:0}body>:not(.bg-overlay){z-index:1;position:relative}.site-header{z-index:100;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--card-border);background:#fefafdd1;position:sticky;top:0}.site-header-inner{align-items:center;width:min(1400px,100% - 2rem);height:74px;margin:0 auto;display:flex}.brand{color:inherit;align-items:center;gap:.6rem;text-decoration:none;display:flex}.brand-logo{border-radius:.7rem;display:block}.brand-name{letter-spacing:-.02em;color:var(--text);font-size:1.25rem;font-weight:800}.page-shell{width:min(1400px,100% - 2rem);margin:0 auto;padding:1.6rem 0 4rem}.home-tabs{background:var(--card);border:1px solid var(--card-border);box-shadow:var(--shadow-sm);border-radius:999px;gap:.3rem;margin-bottom:1.8rem;padding:.28rem;display:inline-flex}.home-tab{color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:.45rem;padding:.45rem 1.15rem;font-family:inherit;font-size:.9rem;font-weight:700;transition:background .2s,color .2s;display:inline-flex}.home-tab:hover{color:var(--text);background:var(--accent-light)}.home-tab.active{color:#fff;background:linear-gradient(135deg,#9b7fe8 0%,#c47fd4 100%);box-shadow:0 3px 12px #9b7fe859}.tab-panel[hidden]{display:none}.tab-panel:not([hidden]){animation:.3s both slideTabIn}.hero{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.title{letter-spacing:-.025em;color:var(--text);margin:0;font-size:clamp(1.4rem,2.5vw,2.1rem);font-weight:800}.subtitle{color:var(--text-soft);margin:.2rem 0 0;font-size:.925rem;font-weight:500}.status-chip{border:1px solid var(--card-border);background:var(--card);color:var(--text-soft);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:.45rem;padding:.32rem .9rem;font-size:.82rem;font-weight:700;display:inline-flex}.error-box{border:1px solid var(--danger-border);background:var(--danger-bg);color:#c8485e;border-radius:.9rem;margin-bottom:1rem;padding:.85rem 1rem;font-size:.9rem;font-weight:700;animation:.25s fadeIn}.notice-box{border:1px solid var(--green-border);background:var(--green-bg);color:#2a8a4e;border-radius:.9rem;margin-bottom:1rem;padding:.85rem 1rem;font-size:.9rem;font-weight:700;animation:.25s fadeIn}.empty{border:1.5px dashed var(--card-border);text-align:center;color:var(--text-soft);background:#ffffff8c;border-radius:1.25rem;padding:2.5rem 1rem;font-weight:600}.section-title{letter-spacing:-.015em;color:var(--text);margin:0 0 1rem;font-size:clamp(1rem,1.8vw,1.3rem);font-weight:800}.text-soft{color:var(--text-soft);margin:0;font-weight:500}.video-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.video-card{border:1px solid var(--card-border);background:var(--card);box-shadow:var(--shadow-sm);border-radius:1.25rem;transition:transform .22s,box-shadow .22s;animation:.4s both fadeInUp;overflow:hidden}.video-card--contraband{box-shadow:0 0 0 2px #f5a62340, var(--shadow-sm);border-color:#f5a623}.video-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.video-thumb-wrap{position:relative}.video-el{aspect-ratio:16/9;background:#f0eaf8;width:100%;display:block}.video-contraband-pill{color:#fff;letter-spacing:.04em;pointer-events:none;background:#f5a623;border-radius:999px;align-items:center;gap:.3rem;padding:.22rem .55rem;font-size:.7rem;font-weight:800;display:inline-flex;position:absolute;top:.55rem;right:.55rem}.card-body{border-top:1px solid var(--card-border);flex-direction:column;gap:.3rem;padding:.8rem 1rem .9rem;display:flex}.vc-icon{flex-shrink:0;display:block}.vc-icon--cat{color:var(--accent)}.vc-icon--time{color:var(--text-soft)}.vc-icon--alert{color:#d97706}.video-cat-row{align-items:center;gap:.4rem;min-width:0;display:flex}.video-cat-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.88rem;font-weight:700;overflow:hidden}.video-time-row{align-items:center;gap:.35rem;display:flex}.video-timestamp{color:var(--text-soft);white-space:nowrap;font-size:.78rem}.video-alert-row{background:#fff8ec;border:1px solid #f5a62355;border-radius:.5rem;align-items:center;gap:.4rem;margin-top:.15rem;padding:.3rem .6rem;display:flex}.video-alert-text{color:#b45309;font-size:.78rem;font-weight:700}.live-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s ease-in-out infinite livePulse;display:inline-block}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.4}}.cat-overview{margin-bottom:2rem}.cat-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem;display:grid}.cat-card{border:1px solid var(--card-border);background:var(--card);box-shadow:var(--shadow-sm);border-radius:1.25rem;flex-direction:column;gap:.65rem;padding:1rem 1.1rem;transition:transform .2s,box-shadow .2s;animation:.4s both fadeInUp;display:flex}.cat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.cat-card-top{align-items:center;gap:.8rem;display:flex}.cat-name-status{flex-direction:column;gap:.3rem;min-width:0;display:flex}.avatar-wrap{flex-shrink:0;position:relative}.avatar-btn{border:2.5px solid var(--card-border);background:var(--accent-light);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;transition:border-color .2s,transform .18s;display:flex;position:relative;overflow:hidden}.avatar-btn:hover{border-color:var(--accent);transform:scale(1.07)}.avatar-img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.avatar-initials{color:var(--accent);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:1.15rem;font-weight:800}.avatar-overlay{opacity:0;pointer-events:none;background:#9b7fe899;justify-content:center;align-items:center;font-size:1.1rem;transition:opacity .18s;display:flex;position:absolute;inset:0}.avatar-btn:hover .avatar-overlay{opacity:1}.avatar-error{color:var(--danger);text-align:center;margin:.2rem 0 0;font-size:.68rem;font-weight:700}.avatar-file-input{display:none}.cat-name{white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:700;overflow:hidden}.cat-status-pill{white-space:nowrap;letter-spacing:.01em;border-radius:999px;flex-shrink:0;padding:.18rem .6rem;font-size:.73rem;font-weight:700}.cat-status-inside{background:var(--green-bg);color:#2a8a4e;border:1px solid var(--green-border)}.cat-status-outside{background:var(--blue-bg);color:#2565a8;border:1px solid var(--blue-border)}.cat-status-unknown{color:var(--text-soft);border:1px solid var(--card-border);background:#a098b41a}.cat-time-row{gap:1rem;display:flex}.cat-time-item{flex-direction:column;gap:.1rem;display:flex}.cat-time-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:800}.cat-time-value{font-size:.95rem;font-weight:800}.cat-time-value.inside{color:#2a8a4e}.cat-time-value.outside{color:#2565a8}.cat-bar-track{background:var(--line);border-radius:999px;height:5px;display:flex;overflow:hidden}.cat-bar-inside{background:linear-gradient(90deg,#4ecb71,#88e8a8);height:100%;transition:width .5s}.cat-bar-outside{background:linear-gradient(90deg,#5ba4e8,#8dcfff);height:100%;transition:width .5s}.cat-last-seen{color:var(--text-muted);margin-top:.1rem;font-size:.73rem;font-weight:600}.policy-manager{margin-bottom:2.5rem}.policy-head{margin-bottom:.8rem}.policy-layout{grid-template-columns:220px 1fr;align-items:start;gap:1rem;display:grid}@media (max-width:720px){.policy-layout{grid-template-columns:1fr}}.policy-sidebar{border:1px solid var(--card-border);background:var(--card);box-shadow:var(--shadow-sm);border-radius:1.25rem;gap:.75rem;width:100%;min-width:0;padding:.8rem;display:grid;position:sticky;top:90px}.policy-list{flex-direction:column;gap:.2rem;display:flex}.policy-list-item{text-align:left;width:100%;color:var(--text-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.7rem;justify-content:space-between;align-items:center;gap:.4rem;padding:.48rem .65rem;font-family:inherit;font-size:.875rem;font-weight:700;transition:background .15s,color .15s,border-color .15s;display:flex}.policy-list-item:hover{background:var(--accent-light);color:var(--text)}.policy-list-item--selected{background:var(--accent-light);border-color:var(--accent-border);color:var(--accent)}.policy-list-item--new{color:var(--accent);border-top:1px solid var(--card-border);border-bottom:none;border-left:none;border-right:none;border-radius:0;margin-top:.3rem;padding-top:.65rem}.policy-list-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.policy-active-badge{letter-spacing:.03em;background:var(--green-bg);color:#2a8a4e;border:1px solid var(--green-border);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.15rem .45rem;font-size:.67rem;font-weight:800}.policy-active-badge--lg{align-self:center;padding:.3rem .8rem;font-size:.78rem}.policy-editor{border:1px solid var(--card-border);background:var(--card);box-shadow:var(--shadow-sm);border-radius:1.25rem;gap:1rem;padding:1.1rem;display:grid}.policy-editor-head{flex-wrap:wrap;align-items:flex-start;gap:.8rem;display:flex}.field{gap:.38rem;display:grid}.field-label{color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;font-size:.7rem;font-weight:800}.field-hint{color:var(--text-muted);margin:0;font-size:.73rem;font-weight:500}.field-input{border:1.5px solid var(--line);background:var(--bg);width:100%;min-width:0;max-width:100%;color:var(--text);border-radius:.65rem;padding:.5rem .65rem;font-family:inherit;font-size:.88rem;font-weight:600;transition:border-color .15s,box-shadow .15s}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.toggle-row{flex-wrap:wrap;gap:1.1rem;display:flex}.toggle-label{cursor:pointer;color:var(--text);align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;display:flex}.toggle-label input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.checkbox-group{flex-direction:column;gap:.18rem;display:flex}.checkbox-group-item{cursor:pointer;border-radius:.45rem;align-items:center;gap:.5rem;padding:.25rem .4rem;font-size:.84rem;font-weight:700;transition:background .12s;display:flex}.checkbox-group-item:hover{background:var(--accent-light)}.checkbox-group-item input[type=checkbox]{cursor:pointer;width:1rem;height:1rem;accent-color:var(--accent);flex-shrink:0}.cat-checkbox-list{flex-direction:column;gap:.18rem;display:flex}.cat-checkbox-item{cursor:pointer;color:var(--text);border-radius:.5rem;align-items:center;gap:.5rem;padding:.28rem .5rem;font-size:.875rem;font-weight:700;transition:background .12s;display:flex}.cat-checkbox-item:hover{background:var(--accent-light)}.cat-checkbox-item input[type=checkbox]{cursor:pointer;width:1rem;height:1rem;accent-color:var(--accent);flex-shrink:0}.selected-cat-avatar{-o-object-fit:cover;object-fit:cover;border-radius:50%;flex-shrink:0;width:20px;height:20px}.time-range-editor{flex-direction:column;gap:.4rem;display:flex}.time-range-row{align-items:center;gap:.4rem;display:flex}.time-range-input{max-width:160px}.lock-toggle{flex-wrap:wrap;gap:.4rem;display:flex}.lock-option{border:1.5px solid var(--line);color:var(--text-soft);cursor:pointer;background:0 0;border-radius:.65rem;padding:.38rem .85rem;font-family:inherit;font-size:.875rem;font-weight:700;transition:background .15s,color .15s,border-color .15s}.lock-option--selected.lock-option--lock{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.lock-option--selected.lock-option--allow{background:var(--green-bg);border-color:var(--green-border);color:#2a8a4e}.rules-editor{gap:.6rem;display:grid}.rules-head{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.rules-count{background:var(--accent-light);min-width:1.3rem;height:1.3rem;color:var(--accent);border-radius:999px;justify-content:center;align-items:center;margin-left:.3rem;padding:0 .3rem;font-size:.7rem;font-weight:800;display:inline-flex}.rule-card{border:1.5px solid var(--card-border);background:var(--bg);border-radius:.9rem;transition:border-color .18s,box-shadow .18s;overflow:hidden}.rule-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-sm)}.rule-card--disabled{opacity:.52}.rule-card-head{justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .75rem;display:flex}.rule-card-head-left{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.rule-card-head-right{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.rule-index{background:var(--accent-light);width:1.4rem;height:1.4rem;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:800;display:flex}.rule-toggle-btn{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.4rem;min-width:0;font-family:inherit;font-size:.875rem;display:flex}.rule-chevron{color:var(--text-muted);flex-shrink:0;font-size:.55rem}.rule-summary{text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft);font-size:.82rem;font-weight:700;overflow:hidden}.rule-disabled-badge{background:var(--warning-bg);border:1px solid var(--warning-border);color:#b07018;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.1rem .45rem;font-size:.67rem;font-weight:800}.rule-body{gap:.75rem;padding:0 .75rem .85rem;animation:.2s both fadeInUp;display:grid}.rule-row-2{grid-template-columns:1fr auto;align-items:start;gap:.8rem;display:grid}.rule-section{border:1.5px solid var(--card-border);background:var(--card);border-radius:.75rem;gap:.65rem;padding:.7rem .85rem;display:grid}.rule-section-title{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);font-size:.69rem;font-weight:800}.rule-hint{color:var(--text-muted);margin:0;font-size:.73rem;font-weight:500}.criteria-grid{grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:.75rem;display:grid}.criteria-full{grid-column:1/-1}.action-row{flex-wrap:wrap;gap:.6rem;display:flex}.btn{border:1.5px solid var(--line);background:var(--card);color:var(--text);cursor:pointer;border-radius:.65rem;padding:.48rem .9rem;font-family:inherit;font-size:.875rem;font-weight:700;transition:background .15s,border-color .15s,transform .12s,box-shadow .15s}.btn:hover:not(:disabled){background:var(--accent-light);border-color:var(--accent-border);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.5;cursor:default}.btn-sm{padding:.28rem .65rem;font-size:.8rem}.btn-icon{justify-content:center;align-items:center;width:1.9rem;height:1.9rem;padding:0;font-size:.82rem;display:flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#9b7fe8 0%,#c47fd4 100%);border-color:#0000;box-shadow:0 3px 10px #9b7fe847}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#8a6fd8 0%,#b46fc4 100%);border-color:#0000;box-shadow:0 5px 18px #9b7fe86b}.btn-danger{border-color:var(--danger-border);color:var(--danger);background:var(--danger-bg)}.btn-danger:hover:not(:disabled){border-color:var(--danger);background:#e8708a2e}.policy-note{color:var(--text-soft);margin:0;font-size:.8rem}.cat-overview-head{justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1rem;display:flex}.cat-overview-head .section-title{margin:0}.customize-panel{border:1.5px solid var(--accent-border);background:var(--accent-light);border-radius:1rem;margin-bottom:1rem;padding:.85rem 1rem;animation:.2s both fadeInUp}.customize-hint{color:var(--text-soft);margin:0 0 .6rem;font-size:.78rem;font-weight:700}.customize-list{flex-wrap:wrap;gap:.35rem;display:flex}.customize-item{background:var(--card);border:1px solid var(--card-border);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.84rem;font-weight:700;transition:border-color .15s,box-shadow .15s;display:flex}.customize-item:hover{border-color:var(--accent-border)}.customize-item input[type=checkbox]{width:.9rem;height:.9rem;accent-color:var(--accent);cursor:pointer}.cat-initials-sm{background:var(--accent-light);width:20px;height:20px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.62rem;font-weight:800;display:inline-flex}.contraband-row{margin-top:.1rem}.contraband-badge{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);border-radius:999px;align-items:center;gap:.3rem;padding:.18rem .6rem;font-size:.72rem;font-weight:800;display:inline-flex}.stats-dashboard{margin-bottom:2.5rem}.stat-cards{grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1.2rem;display:grid}@media (max-width:640px){.stat-cards{grid-template-columns:repeat(2,1fr)}}.stat-card{border:1px solid var(--card-border);background:var(--card);text-align:center;box-shadow:var(--shadow-sm);border-radius:1.25rem;flex-direction:column;align-items:center;gap:.3rem;padding:1.2rem 1rem;transition:transform .2s,box-shadow .2s;animation:.4s both fadeInUp;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.stat-card--alert{border-color:var(--danger-border);background:var(--danger-bg)}.stat-icon{font-size:1.9rem;line-height:1}.stat-value{color:var(--text);font-size:2rem;font-weight:800;line-height:1.1}.stat-denom{color:var(--text-soft);font-size:1.2rem;font-weight:600}.stat-label{color:var(--text-soft);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.stats-sections{gap:1rem;display:grid}.stats-section{border:1px solid var(--card-border);background:var(--card);box-shadow:var(--shadow-sm);border-radius:1.25rem;padding:1.1rem 1.2rem;animation:.45s both fadeInUp}.stats-section--alert{border-color:var(--danger-border)}.stats-section-title{color:var(--text);letter-spacing:-.01em;margin:0 0 .9rem;font-size:1rem;font-weight:800}.leaderboard{flex-direction:column;gap:.55rem;display:flex}.lb-item{grid-template-columns:1.7rem 1fr auto;align-items:center;gap:.5rem .65rem;display:grid}.lb-medal{text-align:center;font-size:1rem}.lb-info{flex-direction:column;gap:.22rem;min-width:0;display:flex}.lb-name-row{align-items:center;gap:.4rem;min-width:0;display:flex}.lb-avatar{-o-object-fit:cover;object-fit:cover;border-radius:50%;flex-shrink:0;width:20px;height:20px}.lb-name{white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:700;overflow:hidden}.lb-bar-track{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.lb-bar-fill{background:linear-gradient(90deg,#9b7fe8,#c47fd4);border-radius:999px;height:100%;transition:width .9s cubic-bezier(.34,1.56,.64,1)}.lb-count{color:var(--text-soft);white-space:nowrap;font-size:.78rem;font-weight:700}.contraband-count{color:var(--danger)}.time-chart{flex-direction:column;gap:.8rem;display:flex}.time-row{grid-template-columns:140px 1fr;align-items:center;gap:.8rem;display:grid}@media (max-width:500px){.time-row{grid-template-columns:1fr}}.time-name-cell{align-items:center;gap:.45rem;min-width:0;display:flex}.time-name{white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:700;overflow:hidden}.time-bars{flex-direction:column;gap:.22rem;display:flex}.time-bar-track{background:var(--line);border-radius:999px;height:14px;display:flex;overflow:hidden}.time-bar-inside{background:linear-gradient(90deg,#4ecb71,#88e8a8);height:100%}.time-bar-outside{background:linear-gradient(90deg,#5ba4e8,#8dcfff);height:100%}.time-bar-unknown{background:var(--card-border);height:100%}.time-legend{gap:.9rem;font-size:.72rem;font-weight:700;display:flex}.time-legend-in{color:#2a8a4e}.time-legend-out{color:#2565a8}.all-clear{background:var(--green-bg);border:1px solid var(--green-border);color:#2a8a4e;border-radius:.85rem;align-items:center;gap:.65rem;padding:.85rem 1rem;font-weight:700;display:flex}.all-clear-icon{color:#22c55e;display:block}.range-tabs{background:var(--card);border:1px solid var(--card-border);box-shadow:var(--shadow-sm);border-radius:999px;flex-shrink:0;align-self:center;gap:.25rem;padding:.25rem;display:inline-flex}.range-tab{color:var(--text-soft);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:.35rem .95rem;font-family:inherit;font-size:.82rem;font-weight:700;transition:background .18s,color .18s}.range-tab:hover{color:var(--text);background:var(--accent-light)}.range-tab.active{color:#fff;background:linear-gradient(135deg,#9b7fe8 0%,#c47fd4 100%);box-shadow:0 2px 8px #9b7fe84d}.video-dir{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-left:auto;display:inline-flex}.video-dir--in{color:#16a34a;background:#dcfce7}.video-dir--out{color:#ea580c;background:#fff4e6}.btn{align-items:center;gap:.35rem;display:inline-flex}.cat-card--clickable{cursor:pointer}.cat-card--clickable:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-4px)}.cat-sheet-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:200;background:#281e3c38;animation:.18s fadeIn;position:fixed;inset:0}.cat-sheet{background:var(--bg);z-index:201;flex-direction:column;width:min(460px,100vw);animation:.26s cubic-bezier(.22,1,.36,1) slideInRight;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-6px 0 40px #0000001f}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.cat-sheet-header{background:var(--bg);border-bottom:1px solid var(--card-border);z-index:1;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;display:flex;position:sticky;top:0}.cat-sheet-identity{align-items:center;gap:.85rem;display:flex}.cat-sheet-avatar{-o-object-fit:cover;object-fit:cover;border:2px solid var(--card-border);border-radius:50%;width:52px;height:52px}.cat-sheet-initials{background:var(--accent-light);width:52px;height:52px;color:var(--accent);border:2px solid var(--card-border);border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;font-weight:800;display:flex}.cat-sheet-name{color:var(--text);margin-bottom:.3rem;font-size:1.1rem;font-weight:800;line-height:1.2}.cat-sheet-close{background:var(--card);cursor:pointer;width:34px;height:34px;color:var(--text-soft);border:0;border:1px solid var(--card-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.cat-sheet-close:hover{background:var(--danger-bg);color:var(--danger)}.cat-sheet-body{flex-direction:column;flex:1;gap:.85rem;padding:1.2rem 1.25rem 2rem;display:flex}.cat-sheet-stats{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.cs-stat{background:var(--card);border:1px solid var(--card-border);text-align:center;border-radius:.9rem;flex-direction:column;align-items:center;gap:.2rem;padding:.75rem .6rem;display:flex}.cs-stat-icon{color:var(--text-soft)}.cs-stat--in .cs-stat-icon{color:#16a34a}.cs-stat--out .cs-stat-icon{color:#ea580c}.cs-stat-value{color:var(--text);font-size:1rem;font-weight:800;line-height:1}.cs-stat-label{color:var(--text-soft);font-size:.72rem;font-weight:600}.cs-bar{margin:0}.cat-sheet-meta{color:var(--text-soft);font-size:.82rem;font-weight:600}.cat-sheet-section{border-top:1px solid var(--card-border);margin-top:.25rem;padding-top:1rem}.cat-sheet-section-title{color:var(--text);align-items:center;gap:.4rem;margin:0 0 .85rem;font-size:.88rem;font-weight:800;display:flex}.cs-heart-icon{color:#e11d48}.cs-hint{font-size:.82rem}.cs-empty{text-align:center;color:var(--text-soft);flex-direction:column;align-items:center;gap:.55rem;padding:1.8rem 1rem;font-size:.85rem;line-height:1.5;display:flex}.cs-empty-icon{color:var(--card-border)}.cs-video-list{flex-direction:column;gap:.75rem;display:flex}.cs-video-card{border:1px solid var(--card-border);background:var(--card);border-radius:.9rem;overflow:hidden}.cs-video-card--contraband{border-color:#f5a623}.cs-video-el{aspect-ratio:16/9;background:#f0eaf8;width:100%;display:block}.cs-video-footer{border-top:1px solid var(--card-border);justify-content:space-between;align-items:center;padding:.5rem .7rem;display:flex}.cs-video-meta{color:var(--text-soft);align-items:center;gap:.35rem;font-size:.78rem;display:flex}.cs-inline-icon{color:var(--text-soft);flex-shrink:0}.cs-video-time{font-weight:600}.video-fav-btn{border:1px solid var(--card-border);cursor:pointer;color:var(--text-soft);background:0 0;border-radius:999px;align-items:center;gap:.3rem;padding:.22rem .65rem;font-family:inherit;font-size:.72rem;font-weight:700;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.video-fav-btn:hover,.video-fav-btn.active{color:#e11d48;background:#fff1f2;border-color:#fecdd3}.video-fav-row{margin-top:.3rem}
