@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAa0ABQAAAAADOwAAAZHAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJtP01WQVJGBmA/U1RBVIEcAGQvXBEICoMkgmcLFgAwhEwBNgIkAyYEIAWGXAdiDAcbOgtRlHLSRcD8TEzkdoghPRuspKefbVnJIM5yRfA8vZv9uTNJSCZY21Scrigr6qyJ/C3sE1OFKuVP3e+lxUTbYio1zb/kFdk2bufY2BlhWERRBrcDUBhB5GEpd2Cy+MDxqf9zLPX+XVsk5r+s50d6IpWLatqbdT6f2MAikiOKQocbjya2QT0DqPDX4R0jQBgAUAiCRhDA0EkvYeLk9X3I2bEWI8jBAihIANm+kUWQBgggWChcBBdFhXlAUgOCAgBA0AgKjUJ8HKvjddFCKSgAVklEBYAeEJgCQJH0qB3B+neDg4sAA4hAD0AVIEAA0IACJGeaUjMIIIhBUE/zNABjTQMBwEVRcwcYBUCObLERABAgjAA1M/ZSa9hSi4OlpsnZ2KBOVUsAZlRGl1W0NZ6gSwhQPIAFs7YFL0QS91vRQgdgx2VDAnIegKpQvwAJIoLgooBAGtCJcHizg0TDiz8vhPgIcVXaDJu37ZyDAIjFy4AAiC1JAA0olJwN6nFAACQk/zfQVUuA3t5ELKMT9hpBSRj+HBSggYCIAIEkUoC4PCIQIWHGA8+IStxf0PW15ntP22gc+Wo+BLyQAHECQiAVd+c3Ba8gZ4NOACBaLOhsbIMkAXEmuHsSAvkf4oJaAogH6nEQAzoBIEihUAwAA0AACAObAGcANYAAABaqgMmpWAhiiVyrvNyqFV8tMQ5Iyq6r9Lf7W82i8ILl2cv8zbfdJ5lnPzSnvt/XXPfRR/5pH3xA+u5uS0798EPJ3Fft33w36Wc+8E/7aIB/9fvvb1pE9erNXLB9mkw//cSg8Cnx03VGXDvZnRzKqV9Xkhn7eRHb3wVjHpg19nkZpX9bBU+vnHegrsuQcbW9Bi7oO33h+8SU0Tly/MbeYUuG1cftVz6oNxrW0qH1iezq446fkDFo/rgvTkqt7zmteFzncZ0uxXti09FFF2z+C7CODpjUudOE5NSeb3bv/mbPKcmOEzpWQ3VBgBAuj/AOY3qMm7UvgA8qo3+qvAUBBAX0wADQG4AG+jCKaSxkBe/zvcTG8jRpRZgqhCog4sd++cOo7J+/RdvaaMoc78Ri/PNPSclx6fDvG1Kt3qQFi1rq+5EaavTtt9TVvfvucYsA5wc4oESU+E1ikF9TkrOkIsIH5Fawx7SBNLnMcWlM3skBluCmQNs7GeyFvYVDamsqwhxx18n/+WdxzDgOLU1AqbUlb3m+KOT9+ONvY/7XlrdLS//5v7nN97XHj0VzJpJvz4spq0V7ioXDuv2YrSxtF/KZmvbWfKtorXSh8dfvgGu+ev/nFSaXM6jyuCE/f/EpmuP7Rqu8R98vP/+tXUdrOgKlZP9Q/s+fRF9+3CHZd4EugfPv158me9X7v/6aSMCxMJmIr//65bNXngl7+uiPP5oKx+y27D8trp+psUzMacpm80XlnYeMAct0LynxhNYgaP3dtn8/LBAi+ksr+7NvjjtJV+UXrz0uLXV1x08AZRN1S2A8EaVE5afk/dfGjz//+fdHn36Xdttz2d9/z+bawZ8/slNN1aYtq+ZPGzNuPGdwOsfYflwmHCkPgs5DcKizvdpS/3gEUMW9/lvQvWp1bGTW1fpngC/uSVYAfH3TeSusL8TtlHUD4KAAEHjahk4YpuffGwEBN/dUmpHqdHyJ3Ap8O3UlQ4gCNrMRwLBBKiskL6a+RoBi/9XGlgc8L4/CUejQxaiIyqmomdhktOhfgDbDfaNDb4+yKIPd6IgmzDa0CByijWFmL2dlSRKagTIWXeIU9HDphoZiJeBTjAefHMxDhVSRFUgVcOkW3EGMahYVMFjWHhMluB2wAcbHYqF1LpsDF9C6s+CI2fDgh4wSuFEyGadjXAmIk3CugIRibLIti9ZtC8S4VSqfikGqPaoI122XyRYLBmsOmdiiTpqK1OklUQzpMcZmQRQV4M4oJCMkfRQXK+qvjifUcQd1bRdetW/LWjacYxvcttnVjWg5h0q4xw6rZyejSpZVZ78LzC4uyDNRQ4bymHSTMyM+SZ7D75mg/7YTlmNz7W8T00h0VEiGKB+F7iWYZFvSTiA4LVxttm2ATt5EoUWLJbY4EnLGrfsvEROlHtzlKn3H9VUT5tU/2dt3/EBv7foYzV/W4upyj04woO/gh6Vwwt3WGQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");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}:root{--bg:#f6f5f1;--surface:#fff;--surface-2:#f0efe9;--border:#e3e1d8;--text:#1d2420;--muted:#6b726d;--primary:#0d6b63;--primary-hover:color-mix(in srgb, var(--primary) 82%, #000);--primary-soft:color-mix(in srgb, var(--primary) 15%, var(--surface));--accent:#f2b544;--danger:#c2412d;--danger-soft:#fbe7e2;--productive:#2f9e6e;--neutral:#9aa3ad;--unproductive:#e0604a;--idle:#d8dbe0;--radius:10px;--shadow:0 1px 2px #141e190f, 0 4px 16px #141e190d;--font:"Plus Jakarta Sans Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"JetBrains Mono Variable", ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#131715;--surface:#1b201e;--surface-2:#232927;--border:#2e3532;--text:#e7ebe8;--muted:#949c97;--primary:#3fb5a8;--primary-hover:color-mix(in srgb, var(--primary) 78%, #fff);--primary-soft:color-mix(in srgb, var(--primary) 26%, var(--surface));--danger:#ef7b67;--danger-soft:#3a211c;--productive:#3cba84;--neutral:#7c8691;--unproductive:#ee7660;--idle:#39403d;--shadow:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font:14px/1.5 var(--font);-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}h1{letter-spacing:-.01em;margin:0;font-size:24px}h2{margin:0;font-size:16px}.muted{color:var(--muted)}.block{display:block}.mono,code{font-family:var(--mono);font-size:13px}.pad{padding:24px 0}.center{text-align:center;place-content:center;gap:12px;min-height:100vh;display:grid}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.end{justify-content:flex-end}.strong{font-weight:600}.btn{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;padding:8px 14px;font-weight:500}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}@media (prefers-color-scheme:dark){.btn-primary{color:#0d1513}}.btn-ghost{background:0 0;border-color:#0000}.btn-small{padding:4px 10px;font-size:13px}.btn-block{width:100%}.btn-danger,.danger{color:var(--danger)}.btn-danger{border-color:var(--danger)}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:16px}.icon-btn:hover{background:var(--surface-2)}input,select{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:0;padding:8px 10px}input:focus,select:focus,.btn:focus-visible{outline:2px solid var(--primary);outline-offset:1px}input[type=number]{width:90px}.search{width:240px}label{gap:6px;font-weight:500;display:grid}label.disabled{opacity:.5}.error{background:var(--danger-soft);color:var(--danger);border-radius:8px;margin:12px 0;padding:10px 14px}.notice{background:var(--primary-soft);color:var(--primary);border-radius:8px;margin:12px 0;padding:10px 14px}.hint{color:var(--muted);margin:8px 0 0;font-size:13px}.shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:24px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:0 6px;font-size:16px;font-weight:700;display:flex}.brand-text{min-width:0;line-height:1.2;display:grid}.brand-text strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand-text small{color:var(--muted);font-size:11px;font-weight:500}.brand-mark{background:var(--primary);border-radius:8px;flex:none;width:28px;height:28px;position:relative}.brand-mark:after{content:"";border:2.5px solid #fff;border-right-color:var(--accent);border-radius:50%;position:absolute;inset:7px}.nav-links{gap:2px;display:grid}.nav-links a{color:var(--text);border-radius:8px;padding:8px 10px;font-weight:500}.nav-links a:hover{background:var(--surface-2);text-decoration:none}.nav-links a.active{background:var(--primary-soft);color:var(--primary)}.sidebar-foot{gap:8px;margin-top:auto;padding:0 6px;display:grid}.user{line-height:1.3;display:grid;overflow:hidden}.user small{text-overflow:ellipsis;overflow:hidden}.sidebar-foot .btn{justify-self:start;padding-left:0}.main{min-width:0;padding:28px 32px 48px}.page{gap:16px;max-width:1200px;margin:0 auto;display:grid}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head p{margin:4px 0 0}.back{margin-bottom:4px;font-size:13px;display:inline-block}@media (width<=760px){.shell{grid-template-columns:1fr}.sidebar{flex-flow:wrap;align-items:center;gap:12px;height:auto;padding:12px 16px;position:static}.nav-links{display:flex}.sidebar-foot{align-items:center;margin:0 0 0 auto;display:flex}.user{display:none}.main{padding:20px 16px 40px}.search{width:100%}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px}.card-title{margin-bottom:14px}.table-card{padding:0;overflow-x:auto}.grid-2{grid-template-columns:2fr 1fr;gap:16px;display:grid}@media (width<=900px){.grid-2{grid-template-columns:1fr}}.empty{text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);padding:56px 20px}.empty h2{margin-bottom:6px;font-size:18px}.empty p{margin:0 0 16px}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);background:var(--surface-2);padding:12px 16px;font-size:12px;font-weight:600}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:color-mix(in srgb, var(--surface-2) 50%, transparent)}.table tfoot td{border-top:1px solid var(--border);background:var(--surface-2);font-weight:600}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table .actions{text-align:right;white-space:nowrap}.bar-col{width:28%;min-width:120px}.person{color:var(--text);align-items:center;gap:10px;display:flex}.person:hover{text-decoration:none}.person:hover strong{color:var(--primary)}.avatar{background:var(--primary-soft);width:32px;height:32px;color:var(--primary);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.dot{background:var(--idle);border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.dot.on{background:var(--productive);box-shadow:0 0 0 3px color-mix(in srgb, var(--productive) 25%, transparent)}.badges{flex-wrap:wrap;gap:6px;display:flex}.device-chip{background:var(--surface-2);border-radius:999px;align-items:center;padding:2px 4px 2px 10px;font-size:12px;display:inline-flex}.os-badge{align-items:center;gap:6px;display:inline-flex}.os-badge i{background:var(--neutral);border-radius:2px;width:8px;height:8px}.os-windows i{background:#3b82c4}.os-macos i{background:#8b8f96;border-radius:50%}.os-linux i{background:#e2742e}.chip-x{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;padding:2px 6px;font-size:10px}.chip-x:hover{color:var(--danger);background:var(--danger-soft)}.auth-wrap{background:radial-gradient(circle at 20% 10%, var(--primary-soft), transparent 50%), var(--bg);place-items:center;min-height:100vh;padding:16px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:14px;gap:14px;padding:32px 28px;display:grid}.auth-card h1{margin-top:8px;font-size:22px}.auth-card p{margin:-8px 0 4px}.brand-lg{padding:0}.modal{border:1px solid var(--border);background:var(--surface);width:min(460px,100vw - 32px);color:var(--text);border-radius:14px;padding:0;box-shadow:0 20px 60px #00000040}.modal-wide{width:min(640px,100vw - 32px)}.modal::backdrop{background:#0a0f0d73}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-body{padding:18px 20px 22px}.modal-body>p:first-child{margin-top:0}.form{gap:14px;display:grid}.section-title{margin:20px 0 10px;font-size:14px}.steps{color:var(--muted);gap:4px;margin:0;padding-left:20px;display:grid}.steps code{color:var(--text)}.copy-field{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:8px 8px 8px 12px;display:flex}.copy-field code{white-space:nowrap;scrollbar-width:thin;flex:1;overflow-x:auto}.copy-field.large code{letter-spacing:.12em;text-align:center;font-size:22px;font-weight:600}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:8px;display:flex}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px}.tabs button.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.date-nav{align-items:center;gap:6px;display:flex}.date-nav .btn{padding:7px 12px}.stats{grid-template-columns:repeat(6,1fr);gap:12px;display:grid}@media (width<=1100px){.stats{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.stats{grid-template-columns:repeat(2,1fr)}}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.stat-accent{background:var(--primary);border-color:var(--primary);color:#fff}.stat-accent .stat-label{color:#fffc}@media (prefers-color-scheme:dark){.stat-accent{color:#0d1513}.stat-accent .stat-label{color:#0d1513bf}}.stat-label{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.stat-value{font-variant-numeric:tabular-nums;margin-top:4px;font-size:22px;font-weight:700}.stat-sub{color:var(--muted);font-size:12px}.swatch{border-radius:2px;width:8px;height:8px;display:inline-block}.cat-productive{background:var(--productive)}.cat-neutral{background:var(--neutral)}.cat-unproductive{background:var(--unproductive)}.cat-idle{background:repeating-linear-gradient(135deg, var(--idle) 0 4px, color-mix(in srgb, var(--idle) 60%, var(--surface)) 4px 8px)}.timeline{gap:6px;display:grid}.timeline-track{background:var(--surface-2);border-radius:8px;height:44px;position:relative;overflow:hidden}.tl-seg{min-width:1px;position:absolute;top:6px;bottom:6px}.tl-seg:hover{filter:brightness(1.1);top:3px;bottom:3px}.tl-marker{background:var(--text);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.tl-marker:before{content:"";border:4px solid #0000;border-top-color:var(--text);position:absolute;top:0;left:-3px}.tl-marker.clock_out{background:var(--muted)}.timeline-axis{height:16px;color:var(--muted);font-size:11px;position:relative}.timeline-axis span{position:absolute;transform:translate(-50%)}.timeline-axis span:first-child{transform:none}.legend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:6px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:2px;width:12px;height:10px;display:inline-block}.legend .marker-key{background:var(--text);border-radius:0;width:2px;height:12px}.bars{gap:10px;margin:0;padding:0;list-style:none;display:grid}.bar-label{justify-content:space-between;gap:12px;margin-bottom:4px;font-size:13px;display:flex}.bar-label span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar{background:var(--surface-2);border-radius:4px;height:8px;overflow:hidden}.bar-fill{border-radius:4px;height:100%}.stack{border-radius:5px;min-width:2px;height:10px;display:flex;overflow:hidden}.events{font-variant-numeric:tabular-nums;gap:8px;margin:0;padding:0;list-style:none;display:grid}.events li{align-items:center;gap:10px;display:flex}.pill{background:var(--surface-2);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.pill.clock_in{background:var(--primary-soft);color:var(--primary)}.cat-pill{color:#fff}.hour-group{border-top:1px solid var(--border);grid-template-columns:56px 1fr;gap:12px;padding:10px 0;display:grid}.hour-group:first-of-type{border-top:0}.hour-label{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:4px;font-size:13px}.shots{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;display:grid}.shot{border:1px solid var(--border);background:var(--surface-2);cursor:zoom-in;text-align:left;color:var(--text);font:inherit;border-radius:8px;padding:0;display:grid;overflow:hidden}.shot img{aspect-ratio:16/10;object-fit:cover;background:var(--idle);width:100%;display:block}.shot span{color:var(--muted);padding:4px 8px;font-size:12px}.shot:hover{border-color:var(--primary)}.lightbox{z-index:50;background:#050807e0;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.lightbox-inner{color:#eef2f0;gap:10px;width:100%;max-width:1400px;display:grid}.lightbox-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.lightbox-bar .btn{color:#fff;background:#ffffff14;border-color:#fff3}.lightbox-bar .btn-danger{color:#ff9b88}.lightbox-stage{grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;display:grid}.lightbox-stage img{border-radius:6px;max-width:100%;max-height:calc(100vh - 110px);margin:0 auto;display:block}.lb-nav{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:8px;height:64px;font-size:28px}.lb-nav:disabled{opacity:.2;cursor:default}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.toolbar label{color:var(--muted);font-size:12px}.toggle{cursor:pointer;grid-template-columns:auto 1fr;align-items:start;gap:12px;font-weight:400;display:grid}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.switch{background:var(--idle);border-radius:999px;width:36px;height:20px;margin-top:1px;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.toggle input:checked+.switch{background:var(--primary)}.toggle input:checked+.switch:after{transform:translate(16px)}.toggle input:focus-visible+.switch{outline:2px solid var(--primary);outline-offset:2px}.toggle-label{font-weight:500}.rule-form input{flex:1;min-width:180px}.rules{margin:14px 0 0;padding:0;list-style:none;display:grid}.rules li{border-top:1px solid var(--border);grid-template-columns:28px 1fr auto auto;align-items:center;gap:12px;padding:8px 0;display:grid}.rule-n{font-size:12px}.os-badge.dimmed{opacity:.6}.cmd-tag{text-transform:uppercase;letter-spacing:.03em;background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:10px;font-weight:600}.cmd-tag.warn{color:var(--danger);border-color:var(--danger)}.warn-badge{color:#a8730a;cursor:help;font-size:13px}@media (prefers-color-scheme:dark){.warn-badge{color:var(--accent)}}.device-menu{display:inline-flex;position:relative}.menu-dots{font-size:14px}.menu{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:190px;padding:4px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 28px #0000002e}.menu button{text-align:left;font:inherit;color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:8px 10px}.menu button:hover{background:var(--surface-2)}.menu button.danger{color:var(--danger)}.uninstall{border-top:1px solid var(--border);margin-top:18px;padding-top:12px}.uninstall summary{cursor:pointer;color:var(--muted);font-weight:500}.uninstall summary:hover{color:var(--text)}.uninstall p{margin:10px 0}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.card-head .card-title{margin-bottom:0}.small{font-size:12px}.seg-control{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.seg-control button{background:var(--surface);color:var(--muted);font:inherit;cursor:pointer;border:0;border-left:1px solid var(--border);padding:5px 11px;font-size:12px}.seg-control button:first-child{border-left:0}.seg-control button.on{background:var(--primary-soft);color:var(--primary);font-weight:600}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:inline-flex}.chip{border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:500;display:inline-flex}.chip .swatch{opacity:.35}.chip.on{color:var(--text);border-color:color-mix(in srgb, var(--primary) 50%, var(--border));background:var(--surface-2)}.chip.on .swatch{opacity:1}.filter-search{border:1px solid var(--border);background:var(--surface);min-width:180px;color:var(--text);font:inherit;border-radius:8px;flex:1;padding:7px 11px;font-size:13px}.filter-select{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;padding:7px 10px;font-size:13px}.check{color:var(--muted);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.log-scroll{border:1px solid var(--border);border-radius:8px;max-height:420px;overflow:auto}.log{border-collapse:collapse;width:100%;font-size:13px}.log thead th{background:var(--surface-2);text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap;z-index:1;padding:8px 12px;font-size:11px;position:sticky;top:0}.log th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.log th.num,.log td.num{text-align:right}.sort-caret{margin-left:4px;font-size:9px}.log tbody tr{border-top:1px solid var(--border);cursor:pointer}.log tbody tr:hover{background:var(--surface-2)}.log tbody tr.sel{background:var(--primary-soft)}.log td{vertical-align:top;padding:7px 12px}.log td.mono{font-family:var(--mono);white-space:nowrap}.log td.app{font-weight:500}.log td.title{text-overflow:ellipsis;white-space:nowrap;max-width:360px;overflow:hidden}.tag{color:#fff;text-transform:capitalize;border-radius:999px;padding:1px 8px;font-size:11px;display:inline-block}.tag.cat-idle{color:var(--muted);background:var(--surface-2)}.bar-link{width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:0;padding:0}.bar-link:hover span:first-child{color:var(--primary)}.bar-link.on span:first-child{color:var(--primary);font-weight:600}.tl-grid{background:color-mix(in srgb, var(--border) 70%, transparent);width:1px;position:absolute;top:0;bottom:0}.tl-seg{cursor:pointer;border-radius:2px}.tl-seg.dim{opacity:.18}.tl-seg.sel{outline:2px solid var(--primary);outline-offset:-1px;z-index:2;top:3px;bottom:3px}.tl-tip{background:var(--text);color:var(--bg);white-space:nowrap;pointer-events:none;z-index:5;box-shadow:var(--shadow);border-radius:8px;max-width:320px;padding:7px 10px;font-size:12px;position:absolute;bottom:calc(100% + 8px);transform:translate(-50%)}.tl-tip[data-side=right]{transform:translate(-100%)}.tl-tip[data-side=left]{transform:translate(0)}.tl-tip-time{font-variant-numeric:tabular-nums}.tl-tip-app{align-items:center;gap:6px;margin-top:2px;font-weight:600;display:flex}.tl-tip-title{opacity:.8;text-overflow:ellipsis;max-width:300px;overflow:hidden}.shot{position:relative}.shot .shot-app{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(#0000008c,#0000);padding:3px 8px;font-size:11px;position:absolute;top:0;left:0;right:0;overflow:hidden}.shot .shot-time{color:var(--muted)}.agent-who{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:12px 0 4px;display:flex}.field{flex-direction:column;gap:5px;font-size:13px;display:flex}.field>span{color:var(--muted)}.field select,.field input{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;min-width:220px;padding:8px 11px;font-size:13px}.code-callout{flex-direction:column;gap:6px;margin:14px 0;display:flex}.dot-online{background:var(--productive);vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-left:8px;display:inline-block}.row-actions{text-align:right;white-space:nowrap}.form{flex-direction:column;gap:12px;display:flex}.form-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.teams-layout{grid-template-columns:240px 1fr;align-items:start;gap:16px;display:grid}.team-list{flex-direction:column;gap:6px;display:flex}.team-item{text-align:left;border:1px solid var(--border);background:var(--surface);cursor:pointer;font:inherit;color:var(--text);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.team-item:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.team-item.on{background:var(--primary-soft);border-color:color-mix(in srgb, var(--primary) 55%, var(--border))}.team-name{font-weight:600}.team-detail{flex-direction:column;gap:16px;min-width:0;display:flex}.member-list{flex-direction:column;margin:0 0 12px;padding:0;list-style:none;display:flex}.member-list li{border-top:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.member-list li:first-child{border-top:0}.member-list li>a{font-weight:500}.member-list li>button{margin-left:auto}.add-member{flex-wrap:wrap;gap:8px;display:flex}.add-member select{border:1px solid var(--border);background:var(--surface);min-width:200px;color:var(--text);font:inherit;border-radius:8px;flex:1;padding:8px 11px;font-size:13px}@media (width<=720px){.teams-layout{grid-template-columns:1fr}}.count-badge{text-align:center;background:var(--danger);color:#fff;vertical-align:middle;border-radius:999px;min-width:18px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-block}.trend{align-items:flex-end;gap:10px;height:140px;padding-top:8px;display:flex}.trend-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.trend-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:4px 4px 0 0;flex-direction:column-reverse;width:100%;max-width:40px;min-height:2px;display:flex;position:relative;overflow:hidden}.trend-prod{background:var(--productive);width:100%}.trend-x{color:var(--muted);font-size:11px}.attention{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.attention li{align-items:center;gap:10px;display:flex}.attention li>a{font-weight:500}.dot{border-radius:50%;flex:none;width:9px;height:9px}.dot-offline{background:var(--muted)}.dot-warn{background:var(--accent)}.dot-ok{background:var(--productive)}.week-range{text-align:center;min-width:120px;display:inline-block}.week-chart{align-items:flex-end;gap:10px;height:200px;display:flex}.week-col{cursor:pointer;height:100%;font:inherit;color:var(--text);background:0 0;border:0;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;padding:0;display:flex}.week-bar-wrap{flex:1;align-items:flex-end;width:100%;display:flex}.week-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:5px 5px 0 0;flex-direction:column-reverse;width:100%;max-width:46px;min-height:2px;margin:0 auto;display:flex;overflow:hidden}.week-col:hover .week-bar{border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}.week-col.today .week-bar{outline:2px solid var(--primary);outline-offset:1px}.week-val{font-variant-numeric:tabular-nums;font-size:11px}.week-x{color:var(--muted);font-size:11px}.week-date{font-size:11px}.range-bar{align-items:flex-end}.presets{gap:6px;display:inline-flex}.att-legend{color:var(--muted);align-items:center;gap:14px;margin-left:auto;font-size:12px;display:inline-flex}.att-legend span{align-items:center;gap:6px;display:inline-flex}.att-legend .att-cell{width:14px;height:14px}.att-table th.att-h{text-align:center;white-space:nowrap}.att-table .sticky-col{background:var(--surface);z-index:2;position:sticky;left:0}.att-table thead .sticky-col{background:var(--surface-2);z-index:3}.att-td{text-align:center;padding:4px}.att-cell{font-variant-numeric:tabular-nums;border-radius:6px;justify-content:center;align-items:center;min-width:48px;height:26px;font-size:11px;display:inline-flex}.att-cell.present{background:color-mix(in srgb, var(--productive) 22%, var(--surface));color:var(--text)}.att-cell.late{background:color-mix(in srgb, var(--accent) 34%, var(--surface));color:var(--text)}.att-cell.absent{background:var(--danger-soft);color:var(--danger)}.att-cell.off{background:var(--surface-2);color:var(--muted)}.alert-rules,.alert-events,.audit{margin:0;padding:0;list-style:none}.alert-rules li{border-top:1px solid var(--border);align-items:center;gap:12px;padding:12px 0;display:flex}.alert-rules li:first-child{border-top:0}.alert-rules li.off{opacity:.55}.ar-main{flex:1;min-width:0}.ar-title{align-items:center;gap:8px;font-weight:600;display:flex}.ar-actions{align-items:center;gap:6px;display:inline-flex}.tag.plain{background:var(--surface-2);color:var(--muted)}.switch-sm{width:34px;height:20px;display:inline-block;position:relative}.switch-sm input{opacity:0;width:0;height:0}.switch-sm span{background:var(--border);cursor:pointer;border-radius:999px;transition:all .15s;position:absolute;inset:0}.switch-sm span:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:all .15s;position:absolute;top:3px;left:3px}.switch-sm input:checked+span{background:var(--primary)}.switch-sm input:checked+span:before{transform:translate(14px)}.alert-events li{border-top:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.alert-events li:first-child{border-top:0}.ae-msg{flex:1;min-width:0}.ae-time{white-space:nowrap}.audit li{border-top:1px solid var(--border);gap:12px;padding:7px 0;font-size:13px;display:flex}.audit li:first-child{border-top:0}.audit-time{white-space:nowrap;min-width:90px}.schedule-row label{flex-direction:column;gap:4px;font-size:13px;display:inline-flex}.schedule-row input{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;padding:7px 10px}.weekday-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:inline-flex}.weekday{border:1px solid var(--border);background:var(--surface);color:var(--muted);font:inherit;cursor:pointer;border-radius:8px;padding:6px 10px;font-size:12px}.weekday.on{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb, var(--primary) 50%, var(--border));font-weight:600}select,.filter-select,.field select,.add-member select,.log select{appearance:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b726d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:12px;padding-right:30px}@media (prefers-color-scheme:dark){select,.filter-select,.field select,.add-member select,.log select{--lightningcss-light: ;--lightningcss-dark:initial;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23949c97' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}}select:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.emp-page{flex-direction:column;gap:16px;display:flex}.sticky-head{z-index:20;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);margin:-4px 0 0;padding:10px 0;position:sticky;top:0}.card-title{align-items:center;gap:8px;display:flex}.card-title svg{color:var(--muted);flex:none}.back{align-items:center;gap:5px;display:inline-flex}.icon-btn{justify-content:center;align-items:center;padding:7px;display:inline-flex}.tnum{font-variant-numeric:tabular-nums}.hero-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:24px;padding:20px 22px;display:grid}.hero-donut{justify-content:center;align-items:center;display:flex}.donut svg{display:block}.donut-slice{transition:stroke-dasharray .4s}.donut-center{fill:var(--text);font-variant-numeric:tabular-nums;font-size:19px;font-weight:700}.donut-sub{fill:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.hero-kpis{grid-template-columns:repeat(3,1fr);gap:14px 20px;display:grid}.kpi{align-items:center;gap:11px;min-width:0;display:flex}.kpi-icon{background:var(--surface-2);width:36px;height:36px;color:var(--muted);border-radius:9px;flex:none;justify-content:center;align-items:center;display:flex}.kpi-icon.tone-productive{background:color-mix(in srgb, var(--productive) 16%, var(--surface));color:var(--productive)}.kpi-icon.tone-unproductive{background:color-mix(in srgb, var(--unproductive) 16%, var(--surface));color:var(--unproductive)}.kpi-icon.tone-idle{background:var(--surface-2);color:var(--muted)}.kpi-body{min-width:0}.kpi-label{color:var(--muted);font-size:12px}.kpi-value{letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:1.15}.kpi-sub{color:var(--muted);font-size:11px}.search-wrap{flex:1;min-width:180px;display:flex;position:relative}.search-wrap .search-icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.search-wrap .filter-search{width:100%;padding-left:32px}.timeline-events{gap:0}.timeline-events li{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 0 10px 4px;display:grid;position:relative}.timeline-events li+li{border-top:1px solid var(--border)}.ev-dot{background:var(--surface-2);width:26px;height:26px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.timeline-events li.clock_in .ev-dot{background:color-mix(in srgb, var(--productive) 18%, var(--surface));color:var(--productive)}.ev-label{font-weight:500}.ev-time{color:var(--muted);font-size:13px}.shots{gap:14px}.shot{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:0;transition:transform .15s,box-shadow .15s,border-color .15s;overflow:hidden}.shot:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb, var(--primary) 40%, var(--border));transform:translateY(-2px)}.shot-img{display:block;position:relative}.shot-img img{aspect-ratio:16/10;object-fit:cover;background:var(--idle);width:100%;display:block}.shot-zoom{color:#fff;opacity:0;background:#0000005c;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.shot:hover .shot-zoom,.shot:focus-visible .shot-zoom{opacity:1}.shot-meta{justify-content:space-between;align-items:center;gap:8px;padding:6px 9px;display:flex}.shot-time{color:var(--muted);font-size:12px}.shot-app-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:55%;font-size:11px;font-weight:500;overflow:hidden}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:26px 12px;display:flex}.empty-icon{background:var(--surface-2);width:44px;height:44px;color:var(--muted);border-radius:12px;justify-content:center;align-items:center;display:flex}.skel-wrap{flex-direction:column;gap:16px;display:flex}.sk{background:var(--surface-2);border-radius:8px;position:relative;overflow:hidden}.sk:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface) 60%, transparent), transparent);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.sk-title{vertical-align:middle;width:180px;height:26px;display:inline-block}.sk-donut{border-radius:50%;width:132px;height:132px}.sk-kpi{height:40px}.sk-line{width:200px;height:18px;margin-bottom:14px}.sk-timeline{height:60px}.sk-rows{height:220px}@media (prefers-reduced-motion:reduce){.sk:after{animation:none}.shot,.donut-slice{transition:none}}@media (width<=720px){.hero-card{text-align:center;grid-template-columns:1fr;justify-items:center}.hero-kpis{grid-template-columns:repeat(2,1fr);width:100%}}.brand-logo{object-fit:contain;background:var(--surface);border-radius:8px;flex:none;width:34px;height:34px}.brand-grid{grid-template-columns:repeat(2,minmax(0,240px));gap:16px;display:grid}.color-field{align-items:center;gap:8px;display:flex}.color-field input[type=color]{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;width:40px;height:38px;padding:2px}.color-field .hex{width:110px;font-family:var(--mono);text-transform:lowercase}.logo-row{align-items:center;gap:16px;display:flex}.logo-preview{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;flex:none;justify-content:center;align-items:center;width:60px;height:60px;display:flex;overflow:hidden}.logo-preview img{object-fit:contain;width:100%;height:100%}.logo-actions{gap:8px;display:flex}.emp-table td{vertical-align:middle;padding:10px 12px}.person{align-items:center;gap:10px;display:flex}.avatar{background:var(--primary-soft);width:32px;height:32px;color:var(--primary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.person-name a{font-weight:500}.dev-list{flex-wrap:wrap;gap:6px;display:flex}.dev-item{align-items:center;gap:2px;display:inline-flex}.online-tag{color:var(--productive);font-weight:600}.row-actions{white-space:nowrap;text-align:right}.row-actions .btn{margin-left:6px}.tabs-card{padding:0;overflow:hidden}.tab-bar{border-bottom:1px solid var(--border);gap:2px;padding:6px 8px 0;display:flex;overflow-x:auto}.tab{color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:8px 8px 0 0;align-items:center;gap:7px;margin-bottom:-1px;padding:11px 14px;font-size:14px;font-weight:500;transition:color .15s,background .15s;display:inline-flex}.tab svg{color:inherit}.tab:hover{color:var(--text);background:var(--surface-2)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-count{font-variant-numeric:tabular-nums;background:var(--surface-2);color:var(--muted);text-align:center;border-radius:999px;min-width:20px;padding:1px 7px;font-size:11px}.tab.active .tab-count{background:var(--primary-soft);color:var(--primary)}.tab-panel{padding:16px 18px 18px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.confirm-msg{margin:0 0 18px;line-height:1.5}.btn-danger{background:var(--danger);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:8px 16px;font-weight:600}.btn-danger:hover{filter:brightness(1.06)}.menu-head{border-bottom:1px solid var(--border);align-items:center;gap:9px;margin-bottom:4px;padding:8px 12px 10px;display:flex}.menu-host{font-size:13px;font-weight:600}.status-dot{border-radius:50%;flex:none;width:8px;height:8px}.status-dot.on{background:var(--productive);box-shadow:0 0 0 3px color-mix(in srgb, var(--productive) 25%, transparent)}.status-dot.off{background:var(--muted);opacity:.6}.os-badge .status-dot{margin-right:1px}.os-badge.is-online{border-color:color-mix(in srgb, var(--productive) 40%, var(--border))}.storage-total{letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-bottom:10px;font-size:28px;font-weight:700}.storage-bar{background:var(--surface-2);border-radius:6px;height:12px;margin-bottom:10px;display:flex;overflow:hidden}.storage-seg{height:100%}.storage-legend{color:var(--muted);gap:18px;margin-bottom:14px;font-size:13px;display:flex}.storage-legend span{align-items:center;gap:6px;display:inline-flex}.storage-counts{flex-wrap:wrap;gap:22px;display:flex}.storage-counts>div{flex-direction:column;display:flex}.storage-counts strong{font-size:18px}.app-version{opacity:.7;margin-top:8px;font-size:11px}.timeline-track.is-brushable{cursor:crosshair;-webkit-user-select:none;user-select:none}.tl-brush{background:color-mix(in srgb, var(--primary) 22%, transparent);border-left:2px solid var(--primary);border-right:2px solid var(--primary);z-index:4;pointer-events:none;position:absolute;top:0;bottom:0}.tl-range{background:color-mix(in srgb, var(--primary) 10%, transparent);border-left:2px solid color-mix(in srgb, var(--primary) 60%, transparent);border-right:2px solid color-mix(in srgb, var(--primary) 60%, transparent);z-index:1;pointer-events:none;position:absolute;top:0;bottom:0}.tl-hint{margin-left:auto;font-size:11px}.range-filter{background:var(--primary-soft);color:var(--primary);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:8px 12px;font-size:13px;display:flex}.smtp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.smtp-grid .field input,.smtp-grid .field select{width:100%;min-width:0}.inline-field{align-items:center;gap:8px;font-weight:500;display:inline-flex}.inline-field select{width:auto}@media (width<=640px){.smtp-grid{grid-template-columns:1fr}}.legal-check{color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:12.5px;font-weight:400;line-height:1.45;display:flex}.legal-check input{flex:none;margin-top:2px}.legal-check a{color:var(--primary)}.legal-check strong{color:var(--text);font-weight:600}
