.lang-picker.svelte-1co7cm4{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:12px;cursor:pointer;min-width:110px}.lang-picker.svelte-1co7cm4:hover{border-color:var(--border-light)}.lang-picker.svelte-1co7cm4:focus{border-color:var(--accent);outline:none}.auth-screen.svelte-hu4xkx{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.lang-corner.svelte-hu4xkx{position:absolute;top:16px;right:16px}.auth-card.svelte-hu4xkx{width:100%;max-width:360px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);padding:28px 28px 24px;display:flex;flex-direction:column;gap:14px}.brand.svelte-hu4xkx{font-size:20px;font-weight:700;color:var(--accent);letter-spacing:.5px}h1.svelte-hu4xkx{font-size:17px;font-weight:600;margin:0}.sub.svelte-hu4xkx{margin:-8px 0 4px;color:var(--text-muted);font-size:12.5px;line-height:1.4}label.svelte-hu4xkx{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--text-muted)}label.svelte-hu4xkx input[type=text]:where(.svelte-hu4xkx),label.svelte-hu4xkx input[type=password]:where(.svelte-hu4xkx){width:100%}label.remember.svelte-hu4xkx{flex-direction:row;align-items:center;gap:8px;color:var(--text);font-size:13px;cursor:pointer;user-select:none}label.remember.svelte-hu4xkx input:where(.svelte-hu4xkx){width:auto;cursor:pointer}.mismatch.svelte-hu4xkx{color:var(--yellow);font-size:12px;margin-top:-6px}.error.svelte-hu4xkx{color:var(--red);font-size:12.5px;background:#f7768e1f;border:1px solid var(--red);border-radius:5px;padding:7px 10px}.submit.svelte-hu4xkx{margin-top:6px;min-height:34px;font-size:14px}.backdrop.svelte-bmjy3x{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}@media (max-width: 599px){.backdrop.svelte-bmjy3x{padding:0;align-items:flex-end}.dialog.svelte-bmjy3x{width:100vw;max-width:100vw;max-height:100dvh;border-radius:0}header.svelte-bmjy3x{padding:var(--space-3) var(--space-4)}header.svelte-bmjy3x h2:where(.svelte-bmjy3x){font-size:var(--fs-section)}.close.svelte-bmjy3x{min-width:var(--touch-target);min-height:var(--touch-target);font-size:24px;padding:0;display:inline-flex;align-items:center;justify-content:center}.content.svelte-bmjy3x{padding:var(--space-4)}table.users.svelte-bmjy3x{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--space-4)}th.svelte-bmjy3x,td.svelte-bmjy3x{padding:var(--space-2) var(--space-3)}.content.svelte-bmjy3x input:where(.svelte-bmjy3x),.content.svelte-bmjy3x select:where(.svelte-bmjy3x){font-size:16px;min-height:var(--touch-target)}.pw.svelte-bmjy3x{max-width:none}.content.svelte-bmjy3x button:where(.svelte-bmjy3x){min-height:var(--touch-target);padding:var(--space-2) var(--space-3);font-size:var(--fs-input)}td.actions.svelte-bmjy3x{gap:var(--space-2)}.add-form.svelte-bmjy3x h3:where(.svelte-bmjy3x){font-size:var(--fs-input)}.add-row.svelte-bmjy3x{flex-direction:column;gap:var(--space-2)}.add-row.svelte-bmjy3x input[type=text]:where(.svelte-bmjy3x),.add-row.svelte-bmjy3x input[type=password]:where(.svelte-bmjy3x),.add-row.svelte-bmjy3x select:where(.svelte-bmjy3x){width:100%;min-width:0}.add-row.svelte-bmjy3x button[type=submit]:where(.svelte-bmjy3x){width:100%}}@media (min-width: 600px) and (max-width: 1023px){.dialog.svelte-bmjy3x{max-width:680px}}.dialog.svelte-bmjy3x{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;max-width:680px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}header.svelte-bmjy3x{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}header.svelte-bmjy3x h2:where(.svelte-bmjy3x){margin:0;font-size:16px;font-weight:600}.close.svelte-bmjy3x{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;min-height:0;border-radius:4px}.close.svelte-bmjy3x:hover{color:var(--text)}.content.svelte-bmjy3x{padding:16px 20px;overflow-y:auto;min-height:0}table.users.svelte-bmjy3x{width:100%;border-collapse:collapse;margin-bottom:18px}table.users.svelte-bmjy3x th:where(.svelte-bmjy3x){text-align:left;font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);padding:4px 8px;border-bottom:1px solid var(--border)}table.users.svelte-bmjy3x td:where(.svelte-bmjy3x){padding:6px 8px;border-bottom:1px solid var(--border);vertical-align:middle}td.actions.svelte-bmjy3x{display:flex;gap:6px;justify-content:flex-end;align-items:center;flex-wrap:wrap}.actions-col.svelte-bmjy3x{text-align:right}.pw.svelte-bmjy3x{max-width:150px}.you.svelte-bmjy3x{color:var(--text-muted);font-size:var(--fs-hint);margin-left:4px}.badge.svelte-bmjy3x{font-size:var(--fs-hint);padding:2px 8px;border-radius:10px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.badge.admin.svelte-bmjy3x{color:var(--bg);background:var(--yellow);border-color:var(--yellow);font-weight:600}.add-form.svelte-bmjy3x h3:where(.svelte-bmjy3x){font-size:13px;margin:0 0 8px;color:var(--text)}.add-row.svelte-bmjy3x{display:flex;gap:8px;flex-wrap:wrap}.add-row.svelte-bmjy3x input[type=text]:where(.svelte-bmjy3x),.add-row.svelte-bmjy3x input[type=password]:where(.svelte-bmjy3x){flex:1;min-width:120px}.error.svelte-bmjy3x{color:var(--red)}.container.svelte-63o1lr{padding:var(--space-5);display:flex;flex-direction:column;height:100%}.toolbar.svelte-63o1lr{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}h2.svelte-63o1lr{margin:0;font-size:18px;font-weight:600}.filter.svelte-63o1lr{position:relative;display:flex;align-items:center;flex:0 1 240px;margin-left:auto;padding:0 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-muted);transition:border-color .12s ease,background .12s ease,flex-basis .18s ease}.filter.svelte-63o1lr:focus-within{border-color:var(--accent);background:var(--panel);flex-basis:440px}.filter.svelte-63o1lr>svg:where(.svelte-63o1lr){flex-shrink:0;opacity:.7}.filter-input.svelte-63o1lr{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text);font:inherit;padding:6px 8px;min-height:0}.filter-input.svelte-63o1lr::placeholder{color:var(--text-muted);opacity:.7}.filter-clear.svelte-63o1lr{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;min-height:0}.filter-clear.svelte-63o1lr:hover{color:var(--text);background:var(--panel)}.status-filter.svelte-63o1lr{flex-shrink:0;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 8px;font:inherit;font-size:13px;cursor:pointer;min-height:0;transition:border-color .12s ease}.status-filter.svelte-63o1lr:hover{border-color:var(--accent)}.status-filter.active.svelte-63o1lr{border-color:var(--accent);color:var(--text)}.add-group-btn.svelte-63o1lr{background:var(--surface);border:1px solid var(--border);color:var(--text)}.add-group-btn.svelte-63o1lr:hover{background:var(--panel)}.filter-empty.svelte-63o1lr{padding-top:60px}.filter-empty.svelte-63o1lr h3:where(.svelte-63o1lr){margin:0 0 8px;color:var(--text);font-size:18px}.filter-empty.svelte-63o1lr p:where(.svelte-63o1lr){line-height:1.5;margin:0 0 16px}.empty.svelte-63o1lr{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;color:var(--text-muted)}.empty-icon.svelte-63o1lr{font-size:56px;opacity:.6}.empty.svelte-63o1lr h3:where(.svelte-63o1lr){margin:0;color:var(--text);font-size:20px}.empty.svelte-63o1lr p:where(.svelte-63o1lr){line-height:1.6;margin:0 0 8px}.muted.svelte-63o1lr{color:var(--text-muted)}.groups.svelte-63o1lr{display:flex;flex-direction:column;gap:12px}.group.svelte-63o1lr{background:var(--panel);border:1px solid var(--border);border-radius:6px;overflow:hidden;transition:box-shadow .12s ease,background .12s ease}.group.drag-over.svelte-63o1lr{box-shadow:0 0 0 2px var(--accent) inset;background:var(--surface)}.group-header.svelte-63o1lr{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--border);user-select:none}.group-toggle.svelte-63o1lr{background:transparent;border:none;padding:2px;margin:0;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:0}.group-toggle.svelte-63o1lr:hover{color:var(--text)}.chevron.svelte-63o1lr{transition:transform .15s ease}.chevron.collapsed.svelte-63o1lr{transform:rotate(-90deg)}.group-name.svelte-63o1lr{font-weight:600;color:var(--text)}.group-count.svelte-63o1lr{color:var(--text-muted);font-size:13px}.group-actions.svelte-63o1lr{position:relative;margin-left:auto}.toolbar-menu.svelte-63o1lr{margin-left:0}.kebab.svelte-63o1lr{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;min-height:0}.kebab.svelte-63o1lr:hover,.kebab.open.svelte-63o1lr{color:var(--text);background:var(--surface);border-color:var(--border)}.group-menu.svelte-63o1lr{position:fixed;z-index:1000;min-width:180px;background:var(--panel);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow);padding:4px;display:flex;flex-direction:column}.group-menu.svelte-63o1lr button:where(.svelte-63o1lr){display:flex;align-items:center;gap:9px;text-align:left;background:transparent;border:none;color:var(--text);font:inherit;font-size:13px;padding:7px 10px;border-radius:4px;cursor:pointer;min-height:0}.group-menu.svelte-63o1lr button:where(.svelte-63o1lr) .mi-ico:where(.svelte-63o1lr){flex:0 0 auto;opacity:.8}.group-menu.svelte-63o1lr button:where(.svelte-63o1lr):hover:not(:disabled){background:var(--surface)}.group-menu.svelte-63o1lr button:where(.svelte-63o1lr):disabled{opacity:.45;cursor:not-allowed}.group-menu.svelte-63o1lr button.danger:where(.svelte-63o1lr){color:var(--danger, #d94747)}.group-empty.svelte-63o1lr{padding:18px 14px;text-align:center;font-size:13px;font-style:italic}.table-wrap.svelte-63o1lr{overflow-x:auto}.device-table.svelte-63o1lr{width:100%;border-collapse:collapse;table-layout:fixed}.device-table.svelte-63o1lr td.spacer-cell:where(.svelte-63o1lr){padding:0}.device-table.svelte-63o1lr th:where(.svelte-63o1lr),.device-table.svelte-63o1lr td:where(.svelte-63o1lr){text-align:left;padding:10px 14px;border-bottom:1px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-table.svelte-63o1lr th:where(.svelte-63o1lr){position:relative;overflow:visible;background:var(--surface);font-weight:600;color:var(--text-muted);font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.5px}.col-resizer.svelte-63o1lr{position:absolute;top:0;right:-4px;width:9px;height:100%;cursor:col-resize;z-index:3;user-select:none}.col-resizer.svelte-63o1lr:after{content:"";position:absolute;top:15%;left:3px;width:2px;height:70%;background:var(--border-light);border-radius:1px;transition:background .12s ease,width .12s ease}.col-resizer.svelte-63o1lr:hover:after,.col-resizer.active.svelte-63o1lr:after{background:var(--accent);width:3px}.device-table.svelte-63o1lr tbody:where(.svelte-63o1lr) tr:where(.svelte-63o1lr):last-child td:where(.svelte-63o1lr){border-bottom:none}.device-table.svelte-63o1lr tbody:where(.svelte-63o1lr) tr:where(.svelte-63o1lr):hover{background:var(--surface)}.device-table.svelte-63o1lr tbody:where(.svelte-63o1lr) tr.dragging:where(.svelte-63o1lr){opacity:.4}.device-table.svelte-63o1lr tbody:where(.svelte-63o1lr) tr[draggable=true]:where(.svelte-63o1lr){cursor:grab}.device-table.svelte-63o1lr tbody:where(.svelte-63o1lr) tr[draggable=true]:where(.svelte-63o1lr):active{cursor:grabbing}.drag-handle.svelte-63o1lr{width:20px;padding-left:8px;padding-right:0;color:var(--text-muted);cursor:grab}.name-cell.svelte-63o1lr{font-weight:500}.name-cell.svelte-63o1lr .name-content:where(.svelte-63o1lr){display:inline-flex;align-items:center;gap:8px;max-width:100%;min-width:0}.name-cell.svelte-63o1lr .name-content:where(.svelte-63o1lr)>:where(.svelte-63o1lr):last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.geo-cell.svelte-63o1lr .flag:where(.svelte-63o1lr){margin-right:6px;font-size:14px;line-height:1}.geo-cell.svelte-63o1lr .geo-text:where(.svelte-63o1lr){vertical-align:middle}.geo-empty.svelte-63o1lr{color:var(--text-dim)}.user-cell.svelte-63o1lr{color:var(--text)}.status-dot.svelte-63o1lr{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.status-dot.connected.svelte-63o1lr{background:var(--success, #4caf50)}.status-dot.connecting.svelte-63o1lr,.status-dot.warning.svelte-63o1lr{background:var(--warning, #ff9800)}.status-dot.error.svelte-63o1lr{background:var(--danger, #d94747)}.status-dot.disconnected.svelte-63o1lr{background:var(--text-muted);opacity:.5}.status-text.svelte-63o1lr{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.status-text.connected.svelte-63o1lr{color:var(--success, #4caf50)}.status-text.connecting.svelte-63o1lr,.status-text.warning.svelte-63o1lr{color:var(--warning, #ff9800)}.status-text.error.svelte-63o1lr{color:var(--danger, #d94747)}.status-text.disconnected.svelte-63o1lr{color:var(--text-muted)}.mono.svelte-63o1lr{font-family:var(--mono);font-size:13px}.link.svelte-63o1lr{background:transparent;border:none;padding:0;color:var(--accent);font:inherit;cursor:pointer;min-height:0;text-align:left}.link.svelte-63o1lr:hover{text-decoration:underline}@media (max-width: 599px){.container.svelte-63o1lr{padding:var(--space-3)}.toolbar.svelte-63o1lr{gap:var(--space-2)}.toolbar.svelte-63o1lr h2:where(.svelte-63o1lr){flex:1 1 auto;font-size:var(--fs-section)}.filter.svelte-63o1lr{flex:1 1 100%;margin-left:0;min-height:var(--touch-target);padding:0 var(--space-3)}.filter.svelte-63o1lr:focus-within{flex-basis:100%}.filter-input.svelte-63o1lr{font-size:16px;padding:var(--space-2)}.filter-clear.svelte-63o1lr{width:var(--touch-target);height:var(--touch-target);margin:0}.status-filter.svelte-63o1lr{min-height:var(--touch-target);font-size:16px;padding:var(--space-2) var(--space-3)}.add-group-btn.svelte-63o1lr,.toolbar.svelte-63o1lr .accent:where(.svelte-63o1lr){min-height:var(--touch-target);font-size:16px;padding:var(--space-2) var(--space-4)}.kebab.svelte-63o1lr{width:var(--touch-target);height:var(--touch-target)}.group-toggle.svelte-63o1lr{min-width:var(--touch-target);min-height:var(--touch-target);display:inline-flex;align-items:center;justify-content:center}.group-menu.svelte-63o1lr{min-width:200px}.group-menu.svelte-63o1lr button:where(.svelte-63o1lr){min-height:var(--touch-target);padding:var(--space-3);font-size:var(--fs-input)}.col-resizer.svelte-63o1lr{display:none!important}.group-header.svelte-63o1lr{padding:var(--space-2) var(--space-3)}.table-wrap.svelte-63o1lr{overflow-x:visible}.device-table.svelte-63o1lr{width:100%}.device-table.svelte-63o1lr colgroup:where(.svelte-63o1lr),.device-table.svelte-63o1lr thead:where(.svelte-63o1lr){display:none}.device-table.svelte-63o1lr tbody:where(.svelte-63o1lr){display:block}.device-table.svelte-63o1lr tr:where(.svelte-63o1lr){display:grid;grid-template-columns:1fr auto;column-gap:var(--space-3);row-gap:var(--space-1);background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:var(--space-3);margin-bottom:var(--space-2)}.device-table.svelte-63o1lr td:where(.svelte-63o1lr){display:block;padding:0;white-space:normal;max-width:none}.device-table.svelte-63o1lr td.drag-handle:where(.svelte-63o1lr),.device-table.svelte-63o1lr td.spacer-cell:where(.svelte-63o1lr){display:none}.name-cell.svelte-63o1lr{grid-column:1;grid-row:1;font-size:var(--fs-section);font-weight:600;min-width:0}.name-cell.svelte-63o1lr .name-content:where(.svelte-63o1lr){display:flex;align-items:center;gap:var(--space-2);max-width:100%}.status-cell.svelte-63o1lr{grid-column:2;grid-row:1;align-self:center;text-align:right;max-width:50%}.status-text.svelte-63o1lr{white-space:normal;font-size:var(--fs-hint)}.serial-cell.svelte-63o1lr,.geo-cell.svelte-63o1lr,.user-cell.svelte-63o1lr{grid-column:1 / -1;color:var(--text-muted);font-size:var(--fs-hint)}.actions-col.svelte-63o1lr{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.actions-col.svelte-63o1lr .icon-btn:where(.svelte-63o1lr){min-width:var(--touch-target);min-height:var(--touch-target);margin:0}}@media (min-width: 600px) and (max-width: 1023px){.container.svelte-63o1lr{padding:var(--space-4)}.toolbar.svelte-63o1lr{gap:var(--space-2)}.filter.svelte-63o1lr{flex-basis:180px}.filter.svelte-63o1lr:focus-within{flex-basis:280px}}.actions-col.svelte-63o1lr{text-align:right;white-space:nowrap}.icon-btn.svelte-63o1lr{background:transparent;border:none;padding:4px;margin:0 2px;color:var(--text-muted);cursor:pointer;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;min-height:0;transition:background .12s ease,color .12s ease}.icon-btn.svelte-63o1lr:hover:not(:disabled){color:var(--text);background:var(--surface)}.icon-btn.svelte-63o1lr:disabled{opacity:.4;cursor:not-allowed}.icon-btn.danger-btn.svelte-63o1lr:hover:not(:disabled){color:var(--danger, #d94747)}.icon-btn.connect-btn.svelte-63o1lr:hover:not(:disabled){color:var(--success, #4caf50)}.backdrop.svelte-1ryqo7y{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}@media (max-width: 599px){.backdrop.svelte-1ryqo7y{padding:0;align-items:flex-end}.dialog.svelte-1ryqo7y{width:100vw!important;max-width:100vw!important;max-height:calc(100dvh - var(--space-5));border-radius:14px 14px 0 0!important;padding:var(--space-4)!important}.main-body.svelte-1ryqo7y{flex-direction:column!important;gap:var(--space-3)!important}.tabs.svelte-1ryqo7y{flex-direction:row!important;width:100%!important;border-right:none!important;border-bottom:1px solid var(--border);padding:0 0 var(--space-2) 0!important;overflow-x:auto;-webkit-overflow-scrolling:touch}.tabs.svelte-1ryqo7y button:where(.svelte-1ryqo7y){flex:0 0 auto;min-height:var(--touch-target);padding:var(--space-2) var(--space-3)!important;white-space:nowrap}.tab-label.svelte-1ryqo7y{font-size:var(--fs-hint)!important}.tab-body.svelte-1ryqo7y{gap:var(--space-3)}.tab-body.svelte-1ryqo7y input:where(.svelte-1ryqo7y),.tab-body.svelte-1ryqo7y select:where(.svelte-1ryqo7y){font-size:16px!important;padding:var(--space-2) var(--space-3)!important;min-height:var(--touch-target)}.seg-strip.svelte-1ryqo7y button:where(.svelte-1ryqo7y){min-height:var(--touch-target);font-size:16px;padding:var(--space-2) var(--space-3)}.footer.svelte-1ryqo7y{flex-wrap:wrap;gap:var(--space-2);padding-top:var(--space-3)}.btn-primary.svelte-1ryqo7y,.btn-secondary.svelte-1ryqo7y{flex:1 1 45%;min-height:var(--touch-target)!important;font-size:16px!important;padding:var(--space-2) var(--space-3)!important}.detect-btn.svelte-1ryqo7y{width:100%;min-height:var(--touch-target)!important;font-size:16px!important;padding:var(--space-3) var(--space-4)!important}.detect-results.svelte-1ryqo7y{padding:var(--space-3)!important}.detect-table.svelte-1ryqo7y{display:block;overflow-x:auto;white-space:nowrap}.detect-actions.svelte-1ryqo7y{flex-direction:column;gap:var(--space-2)}.detect-actions.svelte-1ryqo7y button:where(.svelte-1ryqo7y){min-height:var(--touch-target);font-size:16px;padding:var(--space-2) var(--space-3)}.ports-grid.svelte-1ryqo7y{gap:var(--space-2)}}.sep.svelte-1ryqo7y{border:none;border-top:1px solid var(--border);margin:4px 0;width:100%}.dialog.svelte-1ryqo7y{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:20px;width:100%;max-width:730px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow)}h2.svelte-1ryqo7y{margin:0 0 12px;font-size:var(--fs-title);font-weight:600}.main-body.svelte-1ryqo7y{display:flex;gap:16px;flex:1;min-height:0}.tabs.svelte-1ryqo7y{display:flex;flex-direction:column;gap:2px;width:170px;flex-shrink:0;border-right:1px solid var(--border);padding-right:12px}.tabs.svelte-1ryqo7y button:where(.svelte-1ryqo7y){background:transparent;border:none;cursor:pointer;padding:10px;color:var(--text-muted);font-size:13px;font-family:inherit;display:flex;align-items:center;gap:8px;text-align:left;border-radius:6px;white-space:nowrap;transition:background .15s,color .15s;min-height:0}.tabs.svelte-1ryqo7y button:where(.svelte-1ryqo7y):hover{background:#ffffff0a;color:var(--text)}.tabs.svelte-1ryqo7y button.active:where(.svelte-1ryqo7y){background:#7dcfff14;color:var(--text)}.tab-icon.svelte-1ryqo7y{font-size:14px}.tab-body.svelte-1ryqo7y{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto}label.svelte-1ryqo7y{display:flex;flex-direction:column;gap:4px}label.svelte-1ryqo7y>span:where(.svelte-1ryqo7y){font-size:var(--fs-label);color:var(--text-muted)}input.svelte-1ryqo7y,select.svelte-1ryqo7y{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:7px 10px;font-size:13px;font-family:inherit}input.svelte-1ryqo7y:focus,select.svelte-1ryqo7y:focus{border-color:var(--accent, #7dcfff);outline:none}.checkbox-field.svelte-1ryqo7y{flex-direction:row!important;align-items:center;gap:8px!important}.toggle-first.svelte-1ryqo7y{font-size:14px}.toggle-first.svelte-1ryqo7y span:where(.svelte-1ryqo7y){font-size:14px!important;color:var(--text)!important}.checkbox-field.svelte-1ryqo7y input[type=checkbox]:where(.svelte-1ryqo7y){width:16px;height:16px;cursor:pointer}.seg-strip.svelte-1ryqo7y{display:flex;border-bottom:1px solid var(--border)}.seg-strip.svelte-1ryqo7y button:where(.svelte-1ryqo7y){flex:1;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);padding:8px 12px;font-size:13px;cursor:pointer;border-radius:0;min-height:0;font-family:inherit}.seg-strip.svelte-1ryqo7y button.active:where(.svelte-1ryqo7y){color:var(--text);border-bottom-color:var(--accent, #7dcfff)}.auth-section.svelte-1ryqo7y{border:1px solid var(--border);border-radius:6px;padding:14px;display:flex;flex-direction:column;gap:10px;background:#ffffff05}.ports-grid.svelte-1ryqo7y{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hint.svelte-1ryqo7y{font-size:var(--fs-hint)!important;color:var(--text-dim)!important;margin-top:2px;font-style:italic}.error.svelte-1ryqo7y{color:var(--red);font-size:12px;padding:6px 10px;background:#f7768e1a;border:1px solid var(--red);border-radius:4px}.detect-btn.svelte-1ryqo7y{padding:10px 16px;font-size:13px;font-weight:600;cursor:pointer;background:var(--accent, #7aa2f7);color:#000;border:none;border-radius:6px;margin-bottom:12px;font-family:inherit}.detect-btn.svelte-1ryqo7y:hover{opacity:.9}.detect-btn.svelte-1ryqo7y:disabled{opacity:.4;cursor:default}.detect-results.svelte-1ryqo7y{border:1px solid var(--border);border-radius:8px;padding:14px;margin-bottom:14px;background:#ffffff08}.detect-results.svelte-1ryqo7y h4:where(.svelte-1ryqo7y){margin:0 0 10px;font-size:var(--fs-section)}.detect-table.svelte-1ryqo7y{width:100%;border-collapse:collapse;font-size:var(--fs-hint)}.detect-table.svelte-1ryqo7y th:where(.svelte-1ryqo7y),.detect-table.svelte-1ryqo7y td:where(.svelte-1ryqo7y){padding:4px 8px;text-align:left;border-bottom:1px solid var(--border)}.detect-table.svelte-1ryqo7y th:where(.svelte-1ryqo7y){color:var(--text-muted);font-weight:500}.detect-table.svelte-1ryqo7y td.err-col:where(.svelte-1ryqo7y){color:var(--text-dim);font-size:11px}.detect-table.svelte-1ryqo7y td.ok:where(.svelte-1ryqo7y){color:var(--green, #9ece6a)}.detect-table.svelte-1ryqo7y td.fail:where(.svelte-1ryqo7y){color:var(--red, #f7768e)}.detect-recommendation.svelte-1ryqo7y{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);font-size:var(--fs-hint);color:var(--text-muted)}.detect-recommendation.svelte-1ryqo7y strong:where(.svelte-1ryqo7y){color:var(--text)}.detect-actions.svelte-1ryqo7y{display:flex;gap:8px;margin-top:10px}.footer.svelte-1ryqo7y{display:flex;justify-content:flex-end;gap:8px;padding-top:16px;border-top:1px solid var(--border);margin-top:8px}.btn-primary.svelte-1ryqo7y,.btn-secondary.svelte-1ryqo7y{padding:8px 18px;border-radius:6px;font-size:13px;cursor:pointer;font-family:inherit;border:none}.btn-primary.svelte-1ryqo7y{background:var(--accent, #7dcfff);color:#000;font-weight:600}.btn-primary.svelte-1ryqo7y:disabled{opacity:.4;cursor:default}.btn-secondary.svelte-1ryqo7y{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.backdrop.svelte-1ag46z7{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}@media (max-width: 599px){.backdrop.svelte-1ag46z7{padding:0;align-items:flex-end}.dialog.svelte-1ag46z7{width:100vw;max-width:100vw;max-height:calc(100dvh - var(--space-5));border-radius:14px 14px 0 0}header.svelte-1ag46z7{padding:var(--space-3) var(--space-4)}section.svelte-1ag46z7{padding:var(--space-3) var(--space-4)}header.svelte-1ag46z7 h2:where(.svelte-1ag46z7){font-size:var(--fs-section)}.info-grid.svelte-1ag46z7{column-gap:var(--space-3);row-gap:var(--space-2);font-size:var(--fs-label)}dd.svelte-1ag46z7{font-size:var(--fs-hint)}.cap.svelte-1ag46z7{padding:var(--space-1) var(--space-2);font-size:var(--fs-hint)}.channel-list.svelte-1ag46z7{grid-template-columns:1fr;gap:var(--space-1)}footer.svelte-1ag46z7{padding:var(--space-3) var(--space-4)}footer.svelte-1ag46z7 .accent:where(.svelte-1ag46z7),footer.svelte-1ag46z7 button:where(.svelte-1ag46z7){width:100%;min-height:var(--touch-target);font-size:16px;padding:var(--space-3) var(--space-4)}}.dialog.svelte-1ag46z7{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:0;width:100%;max-width:640px;max-height:85vh;overflow:auto;box-shadow:var(--shadow)}header.svelte-1ag46z7{padding:16px 24px;border-bottom:1px solid var(--border);display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px}h2.svelte-1ag46z7{margin:0;font-size:18px;font-weight:600}h3.svelte-1ag46z7{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.muted.svelte-1ag46z7{color:var(--text-muted);font-size:12px}section.svelte-1ag46z7{padding:16px 24px;border-bottom:1px solid var(--border)}section.svelte-1ag46z7:last-of-type{border-bottom:none}.info-grid.svelte-1ag46z7{margin:0;display:grid;grid-template-columns:max-content 1fr;column-gap:16px;row-gap:6px;font-size:13px}dt.svelte-1ag46z7{color:var(--text-muted);white-space:nowrap}dd.svelte-1ag46z7{margin:0;font-family:var(--mono);font-size:12px;overflow-wrap:anywhere}.cap-list.svelte-1ag46z7{display:flex;flex-wrap:wrap;gap:6px}.cap.svelte-1ag46z7{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;background:var(--surface);border:1px solid var(--border);font-size:12px;color:var(--text-muted)}.cap.on.svelte-1ag46z7{color:var(--green);border-color:var(--green);background:#9ece6a1a}.cap-icon.svelte-1ag46z7{font-weight:600}.channel-list.svelte-1ag46z7{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px}.channel-list.svelte-1ag46z7 li:where(.svelte-1ag46z7){display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--surface);border-radius:4px;font-size:12px}.channel-idx.svelte-1ag46z7{color:var(--text-muted);font-family:var(--mono);width:24px;text-align:right}.channel-name.svelte-1ag46z7{color:var(--text)}footer.svelte-1ag46z7{padding:16px 24px;display:flex;justify-content:flex-end;border-top:1px solid var(--border)}.panel.svelte-8sufuy{display:flex;flex-direction:column;gap:10px;min-height:0}.muted.svelte-8sufuy{color:var(--text-muted);font-size:12px}.hint.svelte-8sufuy{margin:0}.layout.svelte-8sufuy{display:grid;grid-template-columns:240px 1fr;gap:12px;min-height:280px}.list-pane.svelte-8sufuy{display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px;overflow:hidden;min-height:0}.list.svelte-8sufuy{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.list.svelte-8sufuy li:where(.svelte-8sufuy){display:flex;align-items:stretch;border-radius:4px;margin-bottom:2px}.list.svelte-8sufuy li.active:where(.svelte-8sufuy){background:#7dcfff14}.row.svelte-8sufuy{flex:1;background:transparent;border:none;text-align:left;padding:6px 8px;cursor:pointer;color:var(--text);border-radius:4px;display:flex;flex-direction:column;gap:1px;min-height:0}.row.svelte-8sufuy:hover{background:#ffffff0a}.name.svelte-8sufuy{font-size:13px;font-weight:500}.small.svelte-8sufuy{font-size:var(--fs-hint)}.del.svelte-8sufuy{background:transparent;border:none;color:var(--text-dim);cursor:pointer;padding:0 8px;font-size:16px;line-height:1}.del.svelte-8sufuy:hover{color:var(--red)}.empty.svelte-8sufuy{padding:16px;text-align:center}.add-btn.svelte-8sufuy{margin-top:6px;background:transparent;border:1px dashed var(--border);color:var(--text-muted);padding:6px;border-radius:4px;cursor:pointer;font-size:12px}.add-btn.svelte-8sufuy:hover{color:var(--text);border-color:var(--text-muted)}.form-pane.svelte-8sufuy{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:12px;display:flex;flex-direction:column;gap:10px}.form-pane.svelte-8sufuy h4:where(.svelte-8sufuy){margin:0 0 4px;font-size:13px;font-weight:600}label.svelte-8sufuy{display:flex;flex-direction:column;gap:4px}label.svelte-8sufuy span:where(.svelte-8sufuy){font-size:12px;color:var(--text-muted)}label.svelte-8sufuy .hint:where(.svelte-8sufuy){font-size:var(--fs-hint)!important;color:var(--text-dim)!important;font-style:italic}.error.svelte-8sufuy{color:var(--red);font-size:12px;padding:6px 10px;background:#f7768e1a;border:1px solid var(--red);border-radius:4px}.buttons.svelte-8sufuy{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}@media (max-width: 599px){.layout.svelte-8sufuy{grid-template-columns:1fr;gap:var(--space-3);min-height:0}.form-pane.svelte-8sufuy{padding:var(--space-3)}.row.svelte-8sufuy{min-height:var(--touch-target);padding:var(--space-2) var(--space-3);justify-content:center}.del.svelte-8sufuy{min-width:var(--touch-target);min-height:var(--touch-target);padding:0 var(--space-3);font-size:20px}.add-btn.svelte-8sufuy{min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}input.svelte-8sufuy{font-size:16px;min-height:var(--touch-target);padding:var(--space-3)}.buttons.svelte-8sufuy{justify-content:stretch}.buttons.svelte-8sufuy button:where(.svelte-8sufuy){flex:1;min-height:var(--touch-target)}}@media (min-width: 600px) and (max-width: 1023px){.layout.svelte-8sufuy{grid-template-columns:180px 1fr}}.panel.svelte-1hy9rto{display:flex;flex-direction:column;height:100%;min-height:0}.group.svelte-1hy9rto{margin-bottom:24px}.group.svelte-1hy9rto h3:where(.svelte-1hy9rto){margin:0 0 12px;font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.toggle.svelte-1hy9rto{display:flex;align-items:flex-start;gap:10px;padding:10px 0;cursor:pointer}.toggle.svelte-1hy9rto input[type=checkbox]:where(.svelte-1hy9rto){margin-top:3px;flex-shrink:0}.toggle-label.svelte-1hy9rto{display:flex;flex-direction:column;gap:3px}.toggle-title.svelte-1hy9rto{color:var(--text);font-weight:500}.toggle-hint.svelte-1hy9rto{font-size:12px;line-height:1.4}.field.svelte-1hy9rto{display:flex;flex-direction:column;gap:4px;padding:6px 0}.field-title.svelte-1hy9rto{color:var(--text);font-weight:500}.field-hint.svelte-1hy9rto{font-size:12px;line-height:1.4}.num-input.svelte-1hy9rto{width:96px;margin:4px 0;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:6px 8px;font:inherit}.num-input.svelte-1hy9rto:focus{outline:none;border-color:var(--accent)}.muted.svelte-1hy9rto{color:var(--text-muted)}.error.svelte-1hy9rto{color:var(--danger, #d94747);padding:12px}.actions.svelte-1hy9rto{margin-top:auto;padding-top:16px;display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--border)}.actions.svelte-1hy9rto button:where(.svelte-1hy9rto):disabled{opacity:.5;cursor:not-allowed}@media (max-width: 599px){.group.svelte-1hy9rto{margin-bottom:var(--space-5)}.toggle.svelte-1hy9rto{min-height:var(--touch-target);align-items:center;padding:var(--space-2) 0;gap:var(--space-3)}.toggle.svelte-1hy9rto input[type=checkbox]:where(.svelte-1hy9rto){width:18px;height:18px;margin-top:0}.field.svelte-1hy9rto{padding:var(--space-2) 0}.num-input.svelte-1hy9rto{font-size:16px;min-height:var(--touch-target);padding:var(--space-2) var(--space-3);width:100%;max-width:180px}.actions.svelte-1hy9rto{padding-top:var(--space-4);justify-content:stretch}.actions.svelte-1hy9rto button:where(.svelte-1hy9rto){flex:1;min-height:var(--touch-target)}}.panel.svelte-yktm93{display:flex;flex-direction:column;height:100%;min-height:0;padding:.5rem 0}h3.svelte-yktm93{margin:0 0 .5rem;font-size:var(--fs-section)}.hint.svelte-yktm93{color:var(--text-dim);font-size:var(--fs-hint);margin:0 0 1rem}.field.svelte-yktm93{display:flex;flex-direction:column;gap:4px;margin-bottom:.85rem}.field.svelte-yktm93>span:where(.svelte-yktm93){font-size:var(--fs-label);color:var(--text-muted)}select.svelte-yktm93{max-width:320px}.actions.svelte-yktm93{margin-top:auto;padding-top:16px;display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--border)}.actions.svelte-yktm93 button:where(.svelte-yktm93):disabled{opacity:.5;cursor:not-allowed}.muted.svelte-yktm93{color:var(--text-muted)}.error.svelte-yktm93{color:var(--red);padding:12px}.backdrop.svelte-txr7e2{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}@media (max-width: 599px){.backdrop.svelte-txr7e2{padding:0;align-items:flex-end}.dialog.svelte-txr7e2{width:100vw;max-width:100vw;max-height:100dvh;border-radius:0}header.svelte-txr7e2{padding:var(--space-3) var(--space-4);position:sticky;top:0;background:var(--panel);z-index:2}header.svelte-txr7e2 h2:where(.svelte-txr7e2){font-size:var(--fs-title)}.close.svelte-txr7e2{min-width:var(--touch-target);min-height:var(--touch-target);font-size:24px;padding:0;display:inline-flex;align-items:center;justify-content:center}.body.svelte-txr7e2{flex-direction:column}.tabs.svelte-txr7e2{flex-direction:row;overflow-x:auto;min-width:0;border-right:none;border-bottom:1px solid var(--border);padding:var(--space-2);gap:var(--space-1);flex-shrink:0;-webkit-overflow-scrolling:touch}.tabs.svelte-txr7e2 button:where(.svelte-txr7e2){white-space:nowrap;min-height:var(--touch-target);padding:0 var(--space-3);font-size:var(--fs-input);flex-shrink:0}.content.svelte-txr7e2{padding:var(--space-4);flex:1;min-height:0}}@media (min-width: 600px) and (max-width: 1023px){.tabs.svelte-txr7e2{min-width:140px}.content.svelte-txr7e2{padding:var(--space-4) var(--space-5)}}.dialog.svelte-txr7e2{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;max-width:760px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}header.svelte-txr7e2{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}header.svelte-txr7e2 h2:where(.svelte-txr7e2){margin:0;font-size:16px;font-weight:600}.close.svelte-txr7e2{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;min-height:0;border-radius:4px}.close.svelte-txr7e2:hover{color:var(--text)}.body.svelte-txr7e2{display:flex;flex:1;min-height:0;overflow:hidden}.tabs.svelte-txr7e2{display:flex;flex-direction:column;border-right:1px solid var(--border);padding:8px;gap:2px;min-width:160px;background:#00000026}.tabs.svelte-txr7e2 button:where(.svelte-txr7e2){background:transparent;border:none;color:var(--text-muted);text-align:left;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:13px;min-height:0}.tabs.svelte-txr7e2 button:where(.svelte-txr7e2):hover{color:var(--text);background:#ffffff0a}.tabs.svelte-txr7e2 button.active:where(.svelte-txr7e2){color:var(--text);background:#7dcfff14}.content.svelte-txr7e2{flex:1;padding:16px 20px;overflow-y:auto;min-height:0}.backdrop.svelte-gtaahv{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.backdrop.sub.svelte-gtaahv{z-index:200}@media (max-width: 599px){.backdrop.svelte-gtaahv{padding:0;align-items:flex-end}.dialog.svelte-gtaahv{width:100vw;max-width:100vw;max-height:100dvh;border-radius:0}header.svelte-gtaahv{padding:var(--space-3) var(--space-4)}header.svelte-gtaahv h2:where(.svelte-gtaahv){font-size:var(--fs-section)}.close.svelte-gtaahv{min-width:var(--touch-target);min-height:var(--touch-target);font-size:24px;padding:0;display:inline-flex;align-items:center;justify-content:center}.content.svelte-gtaahv{padding:var(--space-4)}.topbar.svelte-gtaahv{flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.search.svelte-gtaahv{width:100%;flex:1 1 100%}.search.svelte-gtaahv input:where(.svelte-gtaahv){font-size:16px;min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}.topbar.svelte-gtaahv .danger:where(.svelte-gtaahv){min-height:var(--touch-target);padding:var(--space-2) var(--space-3);font-size:var(--fs-input);flex:1}.add-icon.svelte-gtaahv{width:var(--touch-target);height:var(--touch-target);flex:0 0 var(--touch-target)}.card.svelte-gtaahv{padding:var(--space-3)}.card-head.svelte-gtaahv{padding-bottom:var(--space-2)}.card-head.svelte-gtaahv h4:where(.svelte-gtaahv){font-size:var(--fs-input)}.hint.svelte-gtaahv{font-size:var(--fs-hint)}.card.svelte-gtaahv>table:where(.svelte-gtaahv){display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}th.svelte-gtaahv,td.svelte-gtaahv{padding:var(--space-2) var(--space-3)}.icon-btn.svelte-gtaahv,.icon-placeholder.svelte-gtaahv{width:var(--touch-target);height:var(--touch-target)}.sub-dialog.svelte-gtaahv{max-width:calc(100vw - var(--space-4))}.sub-body.svelte-gtaahv{padding:var(--space-4)}.sub-body.svelte-gtaahv input:where(.svelte-gtaahv){font-size:16px;min-height:var(--touch-target)}.sub-dialog.svelte-gtaahv footer:where(.svelte-gtaahv){padding:var(--space-3) var(--space-4)}.sub-dialog.svelte-gtaahv footer:where(.svelte-gtaahv) button:where(.svelte-gtaahv){min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}.choice-card.svelte-gtaahv{max-width:calc(100vw - var(--space-6));padding:var(--space-4)}.choice-actions.svelte-gtaahv button:where(.svelte-gtaahv){min-height:var(--touch-target);padding:var(--space-3)}}@media (min-width: 600px) and (max-width: 1023px){.dialog.svelte-gtaahv{max-width:560px}}.dialog.svelte-gtaahv{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;max-width:560px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}header.svelte-gtaahv{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}header.svelte-gtaahv h2:where(.svelte-gtaahv){margin:0;font-size:16px;font-weight:600}.close.svelte-gtaahv{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;min-height:0;border-radius:4px}.close.svelte-gtaahv:hover{color:var(--text)}.content.svelte-gtaahv{padding:16px 18px;overflow-y:auto;min-height:0}.topbar.svelte-gtaahv{display:flex;align-items:center;gap:8px;margin-bottom:14px}.search.svelte-gtaahv{position:relative;display:flex;align-items:center;flex:1;min-width:0;padding:0 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-muted)}.search.svelte-gtaahv:focus-within{border-color:var(--accent)}.search.svelte-gtaahv>svg:where(.svelte-gtaahv){flex-shrink:0;opacity:.7}.search.svelte-gtaahv input:where(.svelte-gtaahv){flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text);font:inherit;padding:7px 8px;min-height:0}.topbar.svelte-gtaahv .danger:where(.svelte-gtaahv){background:var(--surface);border:1px solid var(--border);color:var(--danger, #d94747);border-radius:6px;padding:6px 10px;font-size:12px;cursor:pointer;min-height:0;white-space:nowrap}.topbar.svelte-gtaahv .danger:where(.svelte-gtaahv):hover:not(:disabled){border-color:var(--danger, #d94747)}.add-icon.svelte-gtaahv{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;flex-shrink:0;background:var(--accent);border:1px solid var(--accent);color:var(--bg, #0b0e14);border-radius:6px;cursor:pointer;min-height:0}.add-icon.svelte-gtaahv:hover:not(:disabled){filter:brightness(1.1)}.card.svelte-gtaahv{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:12px 14px}.card-head.svelte-gtaahv{display:block;padding:0 0 8px;border:none}.card-head.svelte-gtaahv h4:where(.svelte-gtaahv){margin:0 0 2px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.hint.svelte-gtaahv{margin:0;font-size:var(--fs-label);color:var(--text-muted);line-height:1.4}.badge.svelte-gtaahv{display:inline-block;margin-left:6px;font-size:var(--fs-hint);padding:1px 6px;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:3px;text-transform:uppercase;letter-spacing:.04em}.empty.svelte-gtaahv{padding:16px;text-align:center;font-size:13px}table.svelte-gtaahv{width:100%;border-collapse:collapse;font-size:13px}th.svelte-gtaahv{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text-muted);font-weight:500;font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.04em}td.svelte-gtaahv{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:middle}tbody.svelte-gtaahv tr:where(.svelte-gtaahv):last-child td:where(.svelte-gtaahv){border-bottom:none}tr.row-selected.svelte-gtaahv{background:var(--selection-bg)}.check-col.svelte-gtaahv{width:34px;text-align:center;padding-left:10px;padding-right:0}th.num.svelte-gtaahv,td.num.svelte-gtaahv{text-align:right;width:72px;padding-right:18px}td.actions.svelte-gtaahv{width:1px;white-space:nowrap;padding-left:0}.act-row.svelte-gtaahv{display:flex;gap:6px;justify-content:flex-end}.icon-placeholder.svelte-gtaahv{width:28px;height:28px;flex-shrink:0}.icon-btn.svelte-gtaahv{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;min-height:0}.icon-btn.svelte-gtaahv:hover:not(:disabled){color:var(--text);background:var(--surface);border-color:var(--border)}.icon-btn.danger.svelte-gtaahv:hover:not(:disabled){color:var(--danger, #d94747);border-color:var(--danger, #d94747)}.sub-dialog.svelte-gtaahv{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;max-width:380px;box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden}.sub-dialog.svelte-gtaahv h3:where(.svelte-gtaahv){margin:0;font-size:15px;font-weight:600}.sub-body.svelte-gtaahv{padding:16px 18px}.sub-body.svelte-gtaahv label:where(.svelte-gtaahv){display:flex;flex-direction:column;gap:6px}.sub-body.svelte-gtaahv label:where(.svelte-gtaahv) span:where(.svelte-gtaahv){font-size:var(--fs-label);color:var(--text-muted)}.sub-body.svelte-gtaahv input:where(.svelte-gtaahv){background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 10px;font:inherit}.sub-body.svelte-gtaahv input:where(.svelte-gtaahv):focus{outline:none;border-color:var(--accent)}.sub-dialog.svelte-gtaahv footer:where(.svelte-gtaahv){display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border)}.sub-dialog.svelte-gtaahv footer:where(.svelte-gtaahv) button:where(.svelte-gtaahv){background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 14px;font:inherit;cursor:pointer}.sub-dialog.svelte-gtaahv footer:where(.svelte-gtaahv) button.accent:where(.svelte-gtaahv){background:var(--accent);border-color:var(--accent);color:var(--bg, #0b0e14)}.choice-overlay.svelte-gtaahv{position:absolute;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.choice-card.svelte-gtaahv{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:18px;width:100%;max-width:400px;box-shadow:var(--shadow)}.choice-card.svelte-gtaahv h3:where(.svelte-gtaahv){margin:0 0 8px;font-size:15px;font-weight:600}.choice-card.svelte-gtaahv p:where(.svelte-gtaahv){margin:0 0 16px;font-size:13px}.choice-actions.svelte-gtaahv{display:flex;flex-direction:column;gap:8px}.choice-actions.svelte-gtaahv button:where(.svelte-gtaahv){background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 12px;font:inherit;cursor:pointer}.choice-actions.svelte-gtaahv button:where(.svelte-gtaahv):hover:not(:disabled){border-color:var(--accent)}.choice-actions.svelte-gtaahv button.danger:where(.svelte-gtaahv){color:var(--danger, #d94747)}.choice-actions.svelte-gtaahv button.danger:where(.svelte-gtaahv):hover:not(:disabled){border-color:var(--danger, #d94747)}.error.svelte-gtaahv{margin-top:10px;color:var(--red, #d94747);padding:6px 10px;font-size:13px;background:#f7768e1a;border:1px solid var(--red, #d94747);border-radius:4px}.muted.svelte-gtaahv{color:var(--text-muted)}button.svelte-gtaahv:disabled{opacity:.5;cursor:not-allowed}.backdrop.svelte-lsqzk5{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.dialog.svelte-lsqzk5{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;max-width:720px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}header.svelte-lsqzk5{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}header.svelte-lsqzk5 h2:where(.svelte-lsqzk5){margin:0;font-size:16px;font-weight:600}.close.svelte-lsqzk5{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;min-height:0;border-radius:4px}.close.svelte-lsqzk5:hover{color:var(--text)}.body.svelte-lsqzk5{padding:16px 18px;overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:12px}.intro.svelte-lsqzk5{margin:0}.search.svelte-lsqzk5{width:100%;padding:8px 10px;font-size:13px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px}.empty.svelte-lsqzk5{text-align:center;color:var(--text-muted);padding:18px 12px}.selection-actions.svelte-lsqzk5{display:flex;gap:6px;align-items:center}.selection-actions.svelte-lsqzk5 .small:where(.svelte-lsqzk5){padding:4px 10px;font-size:12px;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:4px;cursor:pointer;min-height:0}.selection-actions.svelte-lsqzk5 .small:where(.svelte-lsqzk5):hover{border-color:var(--accent)}.selection-count.svelte-lsqzk5{margin-left:auto;font-size:12px}.table-wrap.svelte-lsqzk5{border:1px solid var(--border);border-radius:6px;overflow:auto;max-height:50vh}table.svelte-lsqzk5{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}th.svelte-lsqzk5,td.svelte-lsqzk5{text-align:left;padding:8px 12px;border-bottom:1px solid var(--border)}th.svelte-lsqzk5{background:var(--surface);font-weight:600;color:var(--text-muted);font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:1}tbody.svelte-lsqzk5 tr:where(.svelte-lsqzk5):last-child td:where(.svelte-lsqzk5){border-bottom:none}.check-col.svelte-lsqzk5{width:36px;padding-left:14px;padding-right:0}.ellip.svelte-lsqzk5{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mono.svelte-lsqzk5{font-family:var(--mono);font-size:12px}.muted.svelte-lsqzk5{color:var(--text-muted)}.actions.svelte-lsqzk5{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border)}.actions.svelte-lsqzk5 button:where(.svelte-lsqzk5):disabled{opacity:.5;cursor:not-allowed}.actions.svelte-lsqzk5 .danger:where(.svelte-lsqzk5){background:var(--danger, #d94747);border-color:var(--danger, #d94747);color:#fff}.panel.svelte-oab60s{width:240px;height:100%;background:var(--panel);border-left:1px solid var(--border);padding:12px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;user-select:none;-webkit-user-select:none}@media (max-width: 599px){.panel.svelte-oab60s{width:100%;height:auto;border-left:none;border-top:1px solid var(--border);padding:var(--space-3)}.close.svelte-oab60s{min-width:var(--touch-target);min-height:var(--touch-target);font-size:22px;padding:0 var(--space-2)}.arrow.svelte-oab60s{font-size:24px}.row.svelte-oab60s{flex-wrap:wrap;gap:var(--space-1) var(--space-2)}.row.svelte-oab60s .label:where(.svelte-oab60s){flex:1 0 100%;font-size:var(--fs-label)}input[type=range].svelte-oab60s{flex:1 0 100%;width:100%;min-height:var(--touch-target)}.zf.svelte-oab60s{flex:1;min-width:var(--touch-target);min-height:var(--touch-target);width:auto;height:var(--touch-target);font-size:18px}.preset-name.svelte-oab60s{min-height:var(--touch-target);padding:var(--space-2);font-size:var(--fs-input)}.preset-del.svelte-oab60s{min-width:var(--touch-target);min-height:var(--touch-target);width:var(--touch-target)}.preset-form.svelte-oab60s input[type=text]:where(.svelte-oab60s),.preset-form.svelte-oab60s .id-input:where(.svelte-oab60s){font-size:16px;min-height:40px}.preset-form.svelte-oab60s button:where(.svelte-oab60s){min-height:var(--touch-target);font-size:var(--fs-input)}}header.svelte-oab60s{display:flex;align-items:center;justify-content:space-between}header.svelte-oab60s h3:where(.svelte-oab60s){margin:0;font-size:14px;font-weight:600}.close.svelte-oab60s{background:transparent;border:none;color:var(--text-muted);font-size:20px;line-height:1;min-height:0;padding:0 4px;cursor:pointer}.close.svelte-oab60s:hover{color:var(--text);background:transparent}.dpad.svelte-oab60s{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;aspect-ratio:1}.arrow.svelte-oab60s{background:var(--surface);border:1px solid var(--border);border-radius:4px;font-size:22px;line-height:1;aspect-ratio:1;min-height:0;padding:0;cursor:pointer;transition:background .08s,transform .08s;touch-action:none}.arrow.svelte-oab60s:hover{background:var(--accent-press)}.arrow.svelte-oab60s:active,.arrow.active.svelte-oab60s{background:var(--accent);color:var(--bg);transform:scale(.95)}.center.svelte-oab60s{display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:20px}.muted.svelte-oab60s{color:var(--text-muted)}.muted.small.svelte-oab60s{font-size:12px;padding:4px 0}.row.svelte-oab60s{display:flex;align-items:center;gap:8px}.row.svelte-oab60s .label:where(.svelte-oab60s){flex:1;font-size:12px;color:var(--text-muted)}input[type=range].svelte-oab60s{flex:2}.zf.svelte-oab60s{width:32px;height:28px;min-height:0;padding:0;font-size:16px;background:var(--surface);border:1px solid var(--border);border-radius:4px;touch-action:none}.zf.svelte-oab60s:hover{background:var(--accent-press)}.zf.svelte-oab60s:active{background:var(--accent);color:var(--bg)}.presets.svelte-oab60s{margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}.presets.svelte-oab60s h4:where(.svelte-oab60s){margin:0 0 8px;font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.preset-list.svelte-oab60s{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:2px;max-height:160px;overflow-y:auto}.preset-list.svelte-oab60s li:where(.svelte-oab60s){display:flex;align-items:stretch;gap:2px}.preset-name.svelte-oab60s{flex:1;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:12px;min-height:0;cursor:pointer}.preset-name.svelte-oab60s:hover{background:var(--accent-press)}.preset-id.svelte-oab60s{display:inline-block;color:var(--text-muted);font-family:var(--mono);width:20px;text-align:right;margin-right:6px}.preset-del.svelte-oab60s{width:24px;min-height:0;padding:0;background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:4px}.preset-del.svelte-oab60s:hover{color:var(--red);border-color:var(--red);background:#f7768e1a}.preset-form.svelte-oab60s{display:grid;grid-template-columns:56px 1fr;gap:4px;grid-template-areas:"id name" "save save"}.id-input.svelte-oab60s{grid-area:id}.preset-form.svelte-oab60s input[type=text]:where(.svelte-oab60s){grid-area:name}.preset-form.svelte-oab60s button:where(.svelte-oab60s){grid-area:save;margin-top:4px;min-height:28px}.error.svelte-oab60s{color:var(--red);font-size:12px}.tile.svelte-38c84a{position:relative;background:#000;border:1px solid var(--border);border-radius:4px;overflow:hidden;display:flex;aspect-ratio:16 / 9}.tile.ptz-open.svelte-38c84a{aspect-ratio:auto;flex-direction:row}.video-wrap.svelte-38c84a{position:relative;flex:1;min-width:0;background:#000;container-type:size;overflow:hidden;touch-action:none}.video-wrap.zoomed.svelte-38c84a{cursor:grab}.video-wrap.zoomed.dragging.svelte-38c84a{cursor:grabbing}.vbox.svelte-38c84a{position:absolute;inset:0}.vbox.aspect-169.svelte-38c84a,.vbox.aspect-43.svelte-38c84a{inset:50% auto auto 50%;transform:translate(-50%,-50%)}.vbox.aspect-169.svelte-38c84a{aspect-ratio:16 / 9;width:min(100cqw,calc(100cqh * 16 / 9))}.vbox.aspect-43.svelte-38c84a{aspect-ratio:4 / 3;width:min(100cqw,calc(100cqh * 4 / 3))}.vbox.aspect-169.svelte-38c84a video:where(.svelte-38c84a),.vbox.aspect-43.svelte-38c84a video:where(.svelte-38c84a){object-fit:fill}video.svelte-38c84a{width:100%;height:100%;object-fit:contain;background:#000;display:block;transform-origin:0 0;image-rendering:-webkit-optimize-contrast;will-change:transform}.overlay-top.svelte-38c84a{position:absolute;top:0;left:0;right:0;padding:6px 10px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to bottom,#000000bf,#0000);font-size:12px;color:#fff;pointer-events:none}.label.svelte-38c84a{display:flex;gap:4px;align-items:baseline}.device.svelte-38c84a{font-weight:600}.ch.svelte-38c84a{color:#ffffffb3}.reconnect-badge.svelte-38c84a{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;margin-right:6px;font-size:var(--fs-hint);font-weight:600;color:#1a1a1a;background:#ffc107e6;border-radius:3px;animation:svelte-38c84a-blink 1.2s ease-in-out infinite}.indicator.svelte-38c84a{font-size:14px;color:#ffffff80}.indicator.live.svelte-38c84a{color:var(--red);animation:svelte-38c84a-blink 1.4s ease-in-out infinite}@keyframes svelte-38c84a-blink{50%{opacity:.4}}.zoom-badge.svelte-38c84a{display:inline-flex;align-items:center;padding:1px 6px;margin-right:6px;font-size:var(--fs-hint);font-weight:600;color:#fff;background:#ffffff2e;border-radius:3px;font-variant-numeric:tabular-nums;cursor:help}.rec-badge.svelte-38c84a{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;margin-right:6px;font-size:var(--fs-hint);font-weight:700;color:#fff;background:#d94747d9;border-radius:3px;font-variant-numeric:tabular-nums;letter-spacing:.3px;cursor:help}.rec-dot.svelte-38c84a{width:8px;height:8px;border-radius:50%;background:#fff;animation:svelte-38c84a-rec-blink 1.2s ease-in-out infinite}.rec-bytes.svelte-38c84a{opacity:.75;font-weight:600}@keyframes svelte-38c84a-rec-blink{0%,to{opacity:1}50%{opacity:.3}}.controls.svelte-38c84a button.rec-active:where(.svelte-38c84a){background:#d94747a6;color:#fff}.controls.svelte-38c84a button.rec-active:where(.svelte-38c84a):hover{background:#d94747d9}.controls.svelte-38c84a button.autorec-armed:where(.svelte-38c84a){background:#2563eba6;color:#fff;animation:svelte-38c84a-pulse-blue 2s ease-in-out infinite}.controls.svelte-38c84a button.autorec-active:where(.svelte-38c84a){background:#dc2626cc;color:#fff;animation:svelte-38c84a-pulse-red 1s ease-in-out infinite}@keyframes svelte-38c84a-pulse-blue{0%,to{opacity:1}50%{opacity:.6}}@keyframes svelte-38c84a-pulse-red{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.overlay-bottom.svelte-38c84a{position:absolute;bottom:0;left:0;right:0;padding:6px 10px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to top,#000000bf,#0000);font-size:var(--fs-hint);color:#fff;opacity:1;transition:opacity .2s}.tile.ptz-open.svelte-38c84a .overlay-bottom:where(.svelte-38c84a){opacity:1}@media (hover: hover) and (pointer: fine){.overlay-bottom.svelte-38c84a{opacity:0}.video-wrap.svelte-38c84a:hover .overlay-bottom:where(.svelte-38c84a),.tile.ptz-open.svelte-38c84a .overlay-bottom:where(.svelte-38c84a){opacity:1}}.stats.svelte-38c84a{display:flex;gap:12px;font-family:var(--mono);color:#fffc}.controls.svelte-38c84a{display:flex;gap:4px}.controls.svelte-38c84a button:where(.svelte-38c84a){background:#00000080;color:#fff;border:1px solid rgba(255,255,255,.2);min-height:0;padding:4px 8px;font-size:13px}.controls.svelte-38c84a button:where(.svelte-38c84a):hover:not(:disabled){background:#ffffff26}.controls.svelte-38c84a button:where(.svelte-38c84a):disabled{opacity:.4;cursor:not-allowed}.controls.svelte-38c84a button.active:where(.svelte-38c84a){background:var(--accent);color:var(--bg);border-color:var(--accent)}.controls.svelte-38c84a .quality-toggle:where(.svelte-38c84a){display:inline-flex;border:1px solid rgba(255,255,255,.25);border-radius:4px;overflow:hidden}.controls.svelte-38c84a .quality-toggle:where(.svelte-38c84a) button:where(.svelte-38c84a){border:none;border-radius:0;min-width:34px;font-weight:600}.controls.svelte-38c84a .quality-toggle:where(.svelte-38c84a) button:where(.svelte-38c84a)+button:where(.svelte-38c84a){border-left:1px solid rgba(255,255,255,.25)}.controls.svelte-38c84a .quality-toggle:where(.svelte-38c84a) button.active:where(.svelte-38c84a){background:var(--accent);color:#fff;border-color:transparent}.loading-mask.svelte-38c84a,.error-mask.svelte-38c84a{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#000000d9;color:#fff;text-align:center;padding:20px}.error-icon.svelte-38c84a{font-size:36px;color:var(--red)}.error-text.svelte-38c84a{color:var(--red);font-size:13px}.spinner.svelte-38c84a{width:32px;height:32px;border:3px solid rgba(255,255,255,.15);border-top-color:var(--accent);border-radius:50%;animation:svelte-38c84a-spin 1s linear infinite}@keyframes svelte-38c84a-spin{to{transform:rotate(360deg)}}@media (max-width: 599px){.tile.ptz-open.svelte-38c84a{flex-direction:column}.label.svelte-38c84a{min-width:0}.label.svelte-38c84a .device:where(.svelte-38c84a){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.overlay-bottom.svelte-38c84a{flex-direction:column;align-items:stretch;gap:4px;padding:var(--space-1) var(--space-2)}.stats.svelte-38c84a{gap:var(--space-2);font-size:var(--fs-hint);overflow:hidden;white-space:nowrap}.controls.svelte-38c84a{width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;gap:2px;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.controls.svelte-38c84a::-webkit-scrollbar{display:none}.controls.svelte-38c84a button:where(.svelte-38c84a){min-height:var(--touch-target);min-width:var(--touch-target);padding:var(--space-2);font-size:16px;flex-shrink:0}.controls.svelte-38c84a .quality-toggle:where(.svelte-38c84a) button:where(.svelte-38c84a){min-width:40px;min-height:var(--touch-target);padding:var(--space-2);font-size:var(--fs-input)}}@media (min-width: 600px) and (max-width: 1023px){.tile.ptz-open.svelte-38c84a{flex-direction:column}.overlay-bottom.svelte-38c84a{flex-direction:column;align-items:stretch;gap:4px}.controls.svelte-38c84a{width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;gap:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.controls.svelte-38c84a::-webkit-scrollbar{display:none}.controls.svelte-38c84a button:where(.svelte-38c84a){min-height:var(--touch-target);min-width:var(--touch-target);padding:var(--space-2);flex-shrink:0}.controls.svelte-38c84a .quality-toggle:where(.svelte-38c84a) button:where(.svelte-38c84a){min-width:40px;min-height:var(--touch-target)}}.container.svelte-128ub95{flex:1;display:flex;flex-direction:column;padding:12px;overflow:hidden}.toolbar.svelte-128ub95{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 4px 12px;flex-wrap:wrap}.grid-controls.svelte-128ub95{display:flex;align-items:center;gap:6px}.toolbar.svelte-128ub95 button:where(.svelte-128ub95){min-height:26px;padding:3px 10px;font-size:12px}.toolbar.svelte-128ub95 button.active:where(.svelte-128ub95){background:var(--accent);color:var(--bg);border-color:var(--accent)}.muted.svelte-128ub95{color:var(--text-muted);font-size:12px}.empty.svelte-128ub95{flex:1;display:flex;align-items:center;justify-content:center;padding:40px}.grid.svelte-128ub95{flex:1;display:grid;grid-template-columns:repeat(var(--cols),1fr);grid-auto-rows:1fr;gap:4px;overflow:auto}.slot.svelte-128ub95{position:relative;background:#0a0b13;min-height:0;display:flex}.slot.svelte-128ub95>.tile{flex:1;min-width:0}.clear-btn.svelte-128ub95{position:absolute;top:4px;right:4px;width:22px;height:22px;min-height:0;padding:0;background:#0009;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:4px;cursor:pointer;opacity:1;transition:opacity .12s;z-index:10}@media (hover: hover) and (pointer: fine){.clear-btn.svelte-128ub95{opacity:0}.slot.svelte-128ub95:hover .clear-btn:where(.svelte-128ub95){opacity:1}}.empty-slot.svelte-128ub95{width:100%;height:100%;min-height:80px;border:2px dashed var(--border);background:transparent;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;cursor:pointer;border-radius:4px}.empty-slot.svelte-128ub95:hover{border-color:var(--accent);color:var(--accent)}.empty-icon.svelte-128ub95{font-size:28px}.picker-backdrop.svelte-128ub95{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.picker.svelte-128ub95{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:20px;width:100%;max-width:500px;max-height:80vh;overflow:auto;box-shadow:var(--shadow)}.picker.svelte-128ub95 h3:where(.svelte-128ub95){margin:0 0 16px;font-size:16px}.picker-device.svelte-128ub95{margin-bottom:16px}.picker-device-name.svelte-128ub95{font-weight:600;margin-bottom:6px;font-size:13px}.picker-channels.svelte-128ub95{display:flex;flex-wrap:wrap;gap:4px}.picker-channels.svelte-128ub95 button:where(.svelte-128ub95){min-height:26px;padding:3px 8px;font-size:12px}.picker-footer.svelte-128ub95{display:flex;justify-content:flex-end;margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}@media (max-width: 599px){.grid.svelte-128ub95{grid-template-columns:1fr;grid-auto-rows:auto}.toolbar.svelte-128ub95{padding:var(--space-2) 0 var(--space-3);gap:var(--space-2)}.grid-controls.svelte-128ub95{flex-wrap:wrap;gap:var(--space-1)}.grid-controls.svelte-128ub95 button:where(.svelte-128ub95){min-height:var(--touch-target);min-width:var(--touch-target);padding:var(--space-1) var(--space-3);font-size:var(--fs-input)}.picker-backdrop.svelte-128ub95{padding:0;align-items:stretch}.picker.svelte-128ub95{max-width:none;max-height:100vh;border-radius:0;padding:var(--space-4)}.picker-channels.svelte-128ub95 button:where(.svelte-128ub95){min-height:var(--touch-target);padding:var(--space-2) var(--space-3);font-size:var(--fs-input)}.picker-footer.svelte-128ub95 button:where(.svelte-128ub95){min-height:var(--touch-target);padding:var(--space-2) var(--space-4);font-size:var(--fs-input)}}@media (min-width: 600px) and (max-width: 1023px){.grid.svelte-128ub95{grid-template-columns:repeat(2,1fr)}}.backdrop.svelte-jnoxlc{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.dialog.svelte-jnoxlc{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;max-width:1400px;height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}header.svelte-jnoxlc{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border);flex-shrink:0}header.svelte-jnoxlc h2:where(.svelte-jnoxlc){margin:0;font-size:15px;font-weight:600}.close.svelte-jnoxlc{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;min-height:0;border-radius:4px}.close.svelte-jnoxlc:hover{color:var(--text)}.body.svelte-jnoxlc{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}@media (max-width: 599px){.backdrop.svelte-jnoxlc{padding:0}.dialog.svelte-jnoxlc{max-width:100%;width:100%;height:100dvh;border-radius:0;border:none}header.svelte-jnoxlc{padding:var(--space-3) var(--space-4)}.close.svelte-jnoxlc{min-height:var(--touch-target);min-width:var(--touch-target);font-size:24px}}.calendar.svelte-1oznmde{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:12px;width:100%;box-sizing:border-box}.cal-header.svelte-1oznmde{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.nav.svelte-1oznmde{width:28px;height:28px;min-height:0;padding:0;font-size:var(--fs-title);line-height:1;background:var(--surface);border:1px solid var(--border);border-radius:4px}.picker.svelte-1oznmde{display:flex;gap:6px;align-items:center}.sel.svelte-1oznmde{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:13px;font-weight:600;padding:3px 4px;min-height:0;text-transform:capitalize;cursor:pointer}.sel.month.svelte-1oznmde{max-width:110px}.sel.year.svelte-1oznmde{max-width:72px}.sel.svelte-1oznmde:hover{border-color:var(--accent-press)}.cal-weekdays.svelte-1oznmde,.cal-grid.svelte-1oznmde{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.weekday.svelte-1oznmde{text-align:center;font-size:var(--fs-hint);color:var(--text-muted);text-transform:uppercase;padding:4px 0}.cell.svelte-1oznmde{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:12px;min-height:0;padding:0;border-radius:4px;background:transparent;border:1px solid transparent;color:var(--text-dim);cursor:default}.cell.blank.svelte-1oznmde{pointer-events:none}.cell.day.svelte-1oznmde{background:var(--surface);border-color:var(--border);color:var(--text-muted);cursor:not-allowed}.cell.day.has-footage.svelte-1oznmde{color:var(--text);cursor:pointer;border-color:var(--accent-press)}.cell.day.has-footage.svelte-1oznmde:hover{background:var(--accent-press)}.cell.day.today.svelte-1oznmde{font-weight:700}.cell.day.selected.svelte-1oznmde{background:var(--accent);color:var(--bg);border-color:var(--accent)}.status.svelte-1oznmde{font-size:var(--fs-hint);margin-top:8px;text-align:center}.muted.svelte-1oznmde{color:var(--text-muted)}.error.svelte-1oznmde{color:var(--red)}@media (max-width: 599px){.calendar.svelte-1oznmde{padding:var(--space-3)}.cal-header.svelte-1oznmde{gap:var(--space-2)}.nav.svelte-1oznmde{width:var(--touch-target);height:var(--touch-target)}.sel.svelte-1oznmde{font-size:16px;padding:6px 8px}.sel.month.svelte-1oznmde{max-width:none;flex:1 1 auto;min-width:0}.sel.year.svelte-1oznmde{max-width:none;flex:0 0 auto}.cell.day.svelte-1oznmde{min-height:36px}}@media (min-width: 600px) and (max-width: 1023px){.nav.svelte-1oznmde{width:32px;height:32px}.sel.svelte-1oznmde{font-size:14px}}.wrap.svelte-cfijfh{position:relative;width:100%;height:76px;background:var(--panel);border:1px solid var(--border);border-radius:4px;overflow:hidden}@media (max-width: 599px){.wrap.svelte-cfijfh{height:60px}.zoom-reset.svelte-cfijfh{top:4px;right:4px;padding:3px 8px;font-size:var(--fs-hint)}}.wrap.selection-mode.svelte-cfijfh{border-color:#ffc107}canvas.svelte-cfijfh{width:100%;height:100%;display:block;cursor:pointer;touch-action:none}.wrap.dragging.svelte-cfijfh canvas:where(.svelte-cfijfh){cursor:grabbing}.wrap.selection-mode.svelte-cfijfh canvas:where(.svelte-cfijfh){cursor:cell}.spinner.svelte-cfijfh{position:absolute;top:6px;left:6px;width:14px;height:14px;border:2px solid rgba(255,255,255,.25);border-top-color:var(--accent, #7aa2f7);border-radius:50%;pointer-events:none;animation:svelte-cfijfh-tl-spin .8s linear infinite}@keyframes svelte-cfijfh-tl-spin{to{transform:rotate(360deg)}}.zoom-reset.svelte-cfijfh{position:absolute;top:4px;right:4px;background:#0000008c;color:#eee;border:1px solid var(--border);border-radius:4px;font-size:12px;padding:2px 8px;cursor:pointer;min-height:0}.zoom-reset.svelte-cfijfh:hover{background:#000000bf}.rec-panel.svelte-g9kfjy{position:absolute;right:12px;bottom:56px;width:400px;max-width:calc(100% - 24px);max-height:70%;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);z-index:20;overflow:hidden}header.svelte-g9kfjy{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border)}.title.svelte-g9kfjy{font-size:14px;font-weight:600}.close.svelte-g9kfjy{background:transparent;border:none;color:var(--text-muted);font-size:20px;line-height:1;cursor:pointer;padding:0 4px;min-height:0}.close.svelte-g9kfjy:hover{color:var(--text)}.filters.svelte-g9kfjy{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border)}.chip.svelte-g9kfjy{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:3px 9px;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);cursor:pointer;min-height:0}.chip.off.svelte-g9kfjy{opacity:.4}.list.svelte-g9kfjy{flex:1;overflow-y:auto;min-height:0}.empty.svelte-g9kfjy{padding:16px;text-align:center;font-size:13px}.row.svelte-g9kfjy{display:flex;align-items:center;gap:8px;padding:4px 12px;border-bottom:1px solid rgba(255,255,255,.04)}.row.sel.svelte-g9kfjy{background:#7dcfff1a}.row.svelte-g9kfjy input[type=checkbox]:where(.svelte-g9kfjy){flex-shrink:0;margin:0}.rowmain.svelte-g9kfjy{flex:1;display:flex;align-items:center;gap:12px;background:transparent;border:none;color:var(--text);cursor:pointer;text-align:left;padding:4px 0;font-size:13px;min-height:0}.rowmain.svelte-g9kfjy:hover{color:var(--accent, #7dcfff)}.rowmain.svelte-g9kfjy .time:where(.svelte-g9kfjy){font-variant-numeric:tabular-nums;min-width:96px}.rowmain.svelte-g9kfjy .dur:where(.svelte-g9kfjy){color:var(--text-muted);min-width:56px;font-variant-numeric:tabular-nums}.rowmain.svelte-g9kfjy .size:where(.svelte-g9kfjy){color:var(--text-muted);margin-left:auto;font-variant-numeric:tabular-nums}footer.svelte-g9kfjy{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-top:1px solid var(--border)}.selall.svelte-g9kfjy{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);cursor:pointer}footer.svelte-g9kfjy .accent:where(.svelte-g9kfjy):disabled{opacity:.5;cursor:not-allowed}.dot.svelte-g9kfjy{width:10px;height:10px;border-radius:2px;display:inline-block;flex-shrink:0}.dot.schedule.svelte-g9kfjy{background:#2c0}.dot.motion.svelte-g9kfjy{background:#ffe000}.dot.alarm.svelte-g9kfjy{background:#ff3b30}.dot.manual.svelte-g9kfjy{background:#bb9af7}.dot.other.svelte-g9kfjy{background:#56c8d8}.muted.svelte-g9kfjy{color:var(--text-muted)}@media (max-width: 599px){.rec-panel.svelte-g9kfjy{left:var(--space-2);right:var(--space-2);bottom:var(--space-2);width:auto;max-width:none;max-height:60dvh;border-radius:10px}header.svelte-g9kfjy{padding:var(--space-3) var(--space-3);min-height:var(--touch-target)}.title.svelte-g9kfjy{font-size:var(--fs-section)}.close.svelte-g9kfjy{min-width:var(--touch-target);min-height:var(--touch-target);font-size:26px}.filters.svelte-g9kfjy{padding:var(--space-3);gap:var(--space-2)}.chip.svelte-g9kfjy{min-height:36px;padding:6px 12px;font-size:var(--fs-label)}.row.svelte-g9kfjy{padding:var(--space-2) var(--space-3);min-height:var(--touch-target)}.rowmain.svelte-g9kfjy{flex-wrap:wrap;gap:var(--space-2) var(--space-3);padding:6px 0;font-size:var(--fs-label)}.rowmain.svelte-g9kfjy .time:where(.svelte-g9kfjy){min-width:0}.rowmain.svelte-g9kfjy .dur:where(.svelte-g9kfjy){min-width:0}.rowmain.svelte-g9kfjy .size:where(.svelte-g9kfjy){margin-left:0}footer.svelte-g9kfjy{padding:var(--space-3);flex-wrap:wrap;gap:var(--space-2)}.selall.svelte-g9kfjy{font-size:var(--fs-label);flex:1 1 auto}footer.svelte-g9kfjy .accent:where(.svelte-g9kfjy){flex:1 1 auto;min-height:var(--touch-target)}}.archive.svelte-nszur{position:relative;flex:1;display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-template-rows:1fr;grid-template-areas:"video sidebar";gap:10px;padding:10px;overflow:hidden}.sidebar.svelte-nszur{grid-area:sidebar}.main.svelte-nszur{grid-area:video}@media (max-width: 599px){.archive.svelte-nszur{grid-template-columns:1fr;grid-template-rows:auto auto;grid-template-areas:"video" "sidebar";gap:var(--space-2);padding:var(--space-2);overflow-y:auto}.main.svelte-nszur{aspect-ratio:16 / 9}.sidebar.svelte-nszur{overflow:visible}.chan-list.svelte-nszur{flex:0 0 auto;max-height:50vh}}.empty.svelte-nszur{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;padding:40px}.sidebar.svelte-nszur{display:flex;flex-direction:column;gap:12px;overflow:hidden}.chan-list.svelte-nszur{flex:1 1 0;min-height:0;overflow-y:auto;list-style:none;margin:0;padding:0 4px 0 0;display:flex;flex-direction:column;gap:8px}.chan-item.svelte-nszur{display:flex;flex-direction:column;flex:0 0 auto;border:1px solid var(--border);border-radius:6px;background:var(--panel);overflow:hidden}.chan-item.active.svelte-nszur{border-color:var(--accent);background:var(--selection-bg)}.chan-preview.svelte-nszur{position:absolute;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;background:#000000e0;pointer-events:none;animation:svelte-nszur-chan-preview-in .15s ease-out}.chan-preview.svelte-nszur img:where(.svelte-nszur){max-width:100%;max-height:100%;object-fit:contain}@keyframes svelte-nszur-chan-preview-in{0%{opacity:0}to{opacity:1}}.chan-item.dragging.svelte-nszur{opacity:.45}.chan-item.drop-target.svelte-nszur{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.chan-select.svelte-nszur{display:flex;align-items:center;gap:10px;width:100%;padding:6px;background:transparent;border:none;border-radius:0;text-align:left;cursor:pointer;min-height:0}.chan-select.svelte-nszur:hover{background:var(--surface)}.chan-thumb.svelte-nszur{flex:0 0 auto;width:84px;height:47px;border-radius:4px;background:var(--bg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--text-muted)}.chan-thumb.svelte-nszur img:where(.svelte-nszur){width:100%;height:100%;object-fit:cover;display:block}.chan-thumb.svelte-nszur .cam-icon:where(.svelte-nszur){width:24px;height:24px;opacity:.6}.chan-name.svelte-nszur{display:flex;flex-direction:column;gap:1px;min-width:0}.chan-title.svelte-nszur{font-size:13px;font-weight:500;color:var(--text);overflow-wrap:anywhere}.chan-sub.svelte-nszur{font-size:var(--fs-hint);color:var(--text-muted);overflow-wrap:anywhere}.chan-item.active.svelte-nszur .chan-title:where(.svelte-nszur){color:var(--accent)}.chan-actions.svelte-nszur{display:flex;gap:2px;padding:0 6px 6px}.cact.svelte-nszur{flex:1;min-height:0;padding:2px 0;font-size:12px;line-height:1.4;background:transparent;border:1px solid transparent;border-radius:4px;color:var(--text-muted);cursor:pointer}.cact.svelte-nszur:hover{background:var(--surface);color:var(--text);border-color:var(--border)}.cact.star.on.svelte-nszur{color:var(--yellow)}.chan-rename.svelte-nszur{margin:0 6px 6px;width:calc(100% - 12px);font-size:12px}.sidebar-bottom.svelte-nszur{display:flex;flex-direction:column;gap:6px}.sidebar-bottom.svelte-nszur button:where(.svelte-nszur){width:100%;justify-content:center}.sidebar-bottom.svelte-nszur .recs-toggle:where(.svelte-nszur):disabled{opacity:.5;cursor:not-allowed}.picker.svelte-nszur{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:12px}.picker.svelte-nszur label:where(.svelte-nszur){display:flex;flex-direction:column;gap:4px;font-size:12px}.picker.svelte-nszur .muted:where(.svelte-nszur){font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.5px}.muted.svelte-nszur{color:var(--text-muted)}.main.svelte-nszur{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;container-type:size}.video-wrap.svelte-nszur{position:relative;aspect-ratio:16 / 9;width:min(100cqw,calc(100cqh * 16 / 9));background:#000;border:1px solid var(--border);border-radius:4px;overflow:hidden;touch-action:none}.video-wrap.fs.svelte-nszur,.video-wrap.svelte-nszur:fullscreen{aspect-ratio:auto;max-width:none;max-height:none;width:100vw;height:100vh;border:none;border-radius:0}.video-wrap.zoomed.svelte-nszur{cursor:grab}.video-wrap.zoomed.dragging.svelte-nszur{cursor:grabbing}video.svelte-nszur{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;transform-origin:0 0;will-change:transform;image-rendering:-webkit-optimize-contrast}video.staging.svelte-nszur{opacity:0;pointer-events:none}canvas.freeze.svelte-nszur{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform-origin:0 0;pointer-events:none;opacity:0}canvas.freeze.shown.svelte-nszur{opacity:1}canvas.freeze.aspect-169.svelte-nszur{object-fit:fill}canvas.freeze.aspect-43.svelte-nszur{object-fit:fill;width:75%;left:12.5%;right:auto}video.aspect-169.svelte-nszur{object-fit:fill}video.aspect-43.svelte-nszur{object-fit:fill;left:12.5%;right:auto;width:75%}.zoom-badge.svelte-nszur{position:absolute;top:8px;right:8px;padding:1px 6px;font-size:var(--fs-hint);font-weight:600;color:#fff;background:#ffffff2e;border-radius:3px;font-variant-numeric:tabular-nums;cursor:help;z-index:1}.placeholder.svelte-nszur,.loading.svelte-nszur{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;pointer-events:none}.loading.svelte-nszur .spinner:where(.svelte-nszur){width:14px;height:14px;border:2px solid rgba(255,255,255,.25);border-top-color:var(--accent, #7aa2f7);border-radius:50%;animation:svelte-nszur-av-spin .8s linear infinite}.reconnecting-overlay.svelte-nszur{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-size:13px;background:#00000073;pointer-events:none}.reconnecting-overlay.svelte-nszur .spinner:where(.svelte-nszur){width:16px;height:16px;border:2px solid rgba(255,255,255,.25);border-top-color:var(--accent, #7aa2f7);border-radius:50%;animation:svelte-nszur-av-spin .8s linear infinite}@keyframes svelte-nszur-av-spin{to{transform:rotate(360deg)}}.staging-badge.svelte-nszur{position:absolute;top:10px;left:10px;display:flex;align-items:center;gap:6px;color:#fff;font-size:12px;background:#0000008c;padding:4px 10px;border-radius:14px;pointer-events:none}.staging-badge.svelte-nszur .spinner:where(.svelte-nszur){width:13px;height:13px;border:2px solid rgba(255,255,255,.25);border-top-color:var(--accent, #7aa2f7);border-radius:50%;animation:svelte-nszur-av-spin .8s linear infinite}.bottom-overlay.svelte-nszur{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;gap:6px;padding:8px 8px 6px;background:linear-gradient(to top,#000000c7,#0000);opacity:1;transition:opacity .2s;pointer-events:auto}.bottom-overlay.pinned.svelte-nszur{opacity:1;pointer-events:auto}@media (hover: hover) and (pointer: fine){.bottom-overlay.svelte-nszur{opacity:0;pointer-events:none}.video-wrap.svelte-nszur:hover .bottom-overlay:where(.svelte-nszur),.bottom-overlay.pinned.svelte-nszur{opacity:1;pointer-events:auto}}.video-wrap.fs-idle.svelte-nszur .bottom-overlay:where(.svelte-nszur){opacity:0;pointer-events:none}.video-wrap.fs-idle.svelte-nszur{cursor:none}.overlay-controls.svelte-nszur{display:flex;align-items:center;gap:6px}.overlay-controls.svelte-nszur .ov-spacer:where(.svelte-nszur){flex:1}.overlay-controls.svelte-nszur button:where(.svelte-nszur){background:#0000008c;color:#fff;border:1px solid rgba(255,255,255,.2);min-height:0;padding:6px 12px;font-size:13px;border-radius:4px;cursor:pointer}.overlay-controls.svelte-nszur button:where(.svelte-nszur):hover:not(:disabled){background:#ffffff29}.overlay-controls.svelte-nszur .quality-toggle:where(.svelte-nszur){display:inline-flex;border:1px solid rgba(255,255,255,.2);border-radius:4px;overflow:hidden;background:#0000008c}.overlay-controls.svelte-nszur .quality-toggle:where(.svelte-nszur) button:where(.svelte-nszur){background:transparent;border:none;border-radius:0;padding:6px 10px;min-width:38px;font-weight:600;color:#fff9}.overlay-controls.svelte-nszur .quality-toggle:where(.svelte-nszur) button:where(.svelte-nszur)+button:where(.svelte-nszur){border-left:1px solid rgba(255,255,255,.2)}.overlay-controls.svelte-nszur .quality-toggle:where(.svelte-nszur) button.active:where(.svelte-nszur){background:var(--accent);color:#fff}.overlay-controls.svelte-nszur .volume-control:where(.svelte-nszur){display:inline-flex;align-items:center;gap:6px}.overlay-controls.svelte-nszur .volume-control:where(.svelte-nszur) .vol-btn:where(.svelte-nszur){min-width:38px}.vol-slider.svelte-nszur{-webkit-appearance:none;appearance:none;width:80px;height:4px;border-radius:3px;background:#ffffff4d;outline:none;cursor:pointer;padding:0}.vol-slider.svelte-nszur::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:13px;height:13px;border-radius:50%;background:var(--accent);border:none;cursor:pointer}.vol-slider.svelte-nszur::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:var(--accent);border:none;cursor:pointer}.timeline-overlay.svelte-nszur{background:#0f11178c;border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:4px 6px;backdrop-filter:blur(2px)}.error.svelte-nszur{position:absolute;top:12px;left:12px;right:12px;padding:10px 14px;background:#f7768e26;border:1px solid var(--red);border-radius:4px;color:var(--red);font-size:12px}.recs-toggle.svelte-nszur{background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;padding:4px 8px;border-radius:4px;min-height:0}.recs-toggle.svelte-nszur:hover:not(:disabled){color:var(--text);border-color:var(--border)}.recs-toggle.svelte-nszur:disabled{opacity:.5;cursor:default}.selection-toolbar.svelte-nszur{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#0000008c;border:1px solid rgba(255,193,7,.5);border-radius:4px;font-size:13px;color:#fff}.selection-toolbar.svelte-nszur .scissors-icon:where(.svelte-nszur){font-size:16px;color:#ffc107}.selection-toolbar.svelte-nszur .hint:where(.svelte-nszur){color:#ffffffb3;font-size:12px}.selection-toolbar.svelte-nszur .range-display:where(.svelte-nszur){display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}.selection-toolbar.svelte-nszur .range-display:where(.svelte-nszur) b:where(.svelte-nszur){color:#fff}.selection-toolbar.svelte-nszur .arrow:where(.svelte-nszur){color:#fff9}.selection-toolbar.svelte-nszur .duration:where(.svelte-nszur){color:#ffc107;font-weight:600;margin-left:4px}.selection-toolbar.svelte-nszur .spacer:where(.svelte-nszur){flex:1}.selection-toolbar.svelte-nszur button:where(.svelte-nszur){background:#00000080;color:#fff;border:1px solid rgba(255,255,255,.2);min-height:0;padding:5px 10px;font-size:13px;border-radius:4px;cursor:pointer}.selection-toolbar.svelte-nszur button.accent:where(.svelte-nszur){background:var(--accent);border-color:var(--accent)}.selection-toolbar.svelte-nszur button:where(.svelte-nszur):hover:not(:disabled){background:#ffffff29}.selection-toolbar.svelte-nszur button:where(.svelte-nszur):disabled{opacity:.45;cursor:not-allowed}.dl-backdrop.svelte-nszur{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.dl-dialog.svelte-nszur{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:20px;width:100%;max-width:400px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.dl-dialog.svelte-nszur h3:where(.svelte-nszur){margin:0;font-size:15px}.dl-dialog.svelte-nszur label:where(.svelte-nszur){display:flex;flex-direction:column;gap:4px;font-size:12px}.dl-dialog.svelte-nszur label:where(.svelte-nszur) span:where(.svelte-nszur){color:var(--text-muted)}.dl-actions.svelte-nszur{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.small.svelte-nszur{font-size:var(--fs-hint)}@media (max-width: 599px){.bottom-overlay.svelte-nszur{padding:6px 6px 4px;gap:4px}.overlay-controls.svelte-nszur{flex-wrap:wrap;gap:var(--space-1)}.overlay-controls.svelte-nszur .ov-spacer:where(.svelte-nszur){display:none}.overlay-controls.svelte-nszur button:where(.svelte-nszur){min-height:36px;width:36px;min-width:36px;padding:0 0 0 9px;overflow:hidden;white-space:nowrap;justify-content:flex-start;font-size:var(--fs-label)}.overlay-controls.svelte-nszur .quality-toggle:where(.svelte-nszur) button:where(.svelte-nszur),.overlay-controls.svelte-nszur .vol-btn:where(.svelte-nszur){width:auto;min-width:36px;padding:0 8px;justify-content:center}.overlay-controls.svelte-nszur .vol-slider:where(.svelte-nszur){display:none}.selection-toolbar.svelte-nszur{flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2)}.selection-toolbar.svelte-nszur .hint:where(.svelte-nszur),.selection-toolbar.svelte-nszur .range-display:where(.svelte-nszur){flex:1 1 100%}.selection-toolbar.svelte-nszur .spacer:where(.svelte-nszur){display:none}.selection-toolbar.svelte-nszur button:where(.svelte-nszur){min-height:var(--touch-target);flex:1 1 auto;justify-content:center}.picker.svelte-nszur select:where(.svelte-nszur),.sidebar.svelte-nszur select:where(.svelte-nszur){font-size:16px;min-height:var(--touch-target)}.chan-select.svelte-nszur{min-height:var(--touch-target);padding:var(--space-2)}.chan-actions.svelte-nszur{gap:var(--space-1)}.cact.svelte-nszur{min-height:36px;font-size:var(--fs-label)}.chan-rename.svelte-nszur{font-size:16px;min-height:var(--touch-target)}.sidebar-bottom.svelte-nszur button:where(.svelte-nszur),.sidebar-bottom.svelte-nszur .recs-toggle:where(.svelte-nszur){min-height:var(--touch-target);font-size:var(--fs-label)}.dl-backdrop.svelte-nszur{padding:var(--space-3);align-items:flex-end}.dl-dialog.svelte-nszur{max-width:100%;width:100%;border-radius:10px 10px 0 0;padding:var(--space-4)}.dl-dialog.svelte-nszur input:where(.svelte-nszur){font-size:16px;min-height:var(--touch-target)}.dl-actions.svelte-nszur button:where(.svelte-nszur){min-height:var(--touch-target);flex:1 1 auto}}@media (min-width: 600px) and (max-width: 1023px){.archive.svelte-nszur{grid-template-columns:minmax(0,1fr) 240px}}.archive-ctx-menu.svelte-nszur{position:fixed;z-index:1200;min-width:180px;background:var(--panel);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow);padding:4px}.archive-ctx-item.svelte-nszur{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:4px;color:var(--text);font-size:var(--fs-input);padding:8px 12px;cursor:pointer;min-height:var(--touch-target)}.archive-ctx-item.svelte-nszur:hover:not(:disabled){background:var(--accent-press);color:var(--bg)}@media (max-width: 599px){.archive-ctx-menu.svelte-nszur{min-width:200px}.archive-ctx-item.svelte-nszur{font-size:16px}}.backdrop.svelte-1281enc{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:100;padding:10px}.dialog.svelte-1281enc{background:var(--panel);border:1px solid var(--border);border-radius:8px;height:calc(100vh - 20px);width:calc((100vh - 75px) * 16 / 9 + 310px);max-width:calc(100vw - 20px);display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}@media (max-width: 599px){.backdrop.svelte-1281enc{padding:0}.dialog.svelte-1281enc{width:100vw;height:100dvh;max-width:none;border-radius:0;border:none}header.svelte-1281enc{padding:var(--space-2) var(--space-3);min-height:var(--touch-target)}header.svelte-1281enc h2:where(.svelte-1281enc){font-size:var(--fs-label);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.header-actions.svelte-1281enc{gap:var(--space-1);flex-shrink:0}.help-btn.svelte-1281enc{width:var(--touch-target);height:var(--touch-target);font-size:var(--fs-section)}.close.svelte-1281enc{min-width:var(--touch-target);min-height:var(--touch-target);font-size:26px}.help-pop.svelte-1281enc{width:auto;left:var(--space-2);right:var(--space-2);max-width:none}}@media (min-width: 600px) and (max-width: 1023px){header.svelte-1281enc h2:where(.svelte-1281enc){font-size:var(--fs-label)}.help-btn.svelte-1281enc{width:28px;height:28px}}header.svelte-1281enc{position:relative;display:flex;align-items:center;justify-content:space-between;padding:6px 16px;border-bottom:1px solid var(--border);flex-shrink:0}header.svelte-1281enc h2:where(.svelte-1281enc){margin:0;font-size:14px;font-weight:600}.header-actions.svelte-1281enc{display:flex;align-items:center;gap:4px}.help-btn.svelte-1281enc{background:transparent;border:1px solid var(--border);color:var(--text-muted);font-size:13px;font-weight:700;cursor:pointer;width:22px;height:22px;line-height:1;min-height:0;padding:0;border-radius:50%}.help-btn.svelte-1281enc:hover{color:var(--text);border-color:var(--text-muted)}.close.svelte-1281enc{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;min-height:0;border-radius:4px}.close.svelte-1281enc:hover{color:var(--text)}.help-pop.svelte-1281enc{position:absolute;top:calc(100% + 6px);right:12px;z-index:30;width:320px;max-width:calc(100vw - 40px);background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:12px 14px}.help-pop.svelte-1281enc h3:where(.svelte-1281enc){margin:0 0 6px;font-size:14px;font-weight:600}.help-pop.svelte-1281enc h4:where(.svelte-1281enc){margin:12px 0 6px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.help-pop.svelte-1281enc p:where(.svelte-1281enc){margin:0;font-size:13px;line-height:1.5;color:var(--text-muted)}.help-legend.svelte-1281enc{display:flex;flex-wrap:wrap;gap:10px 14px;font-size:13px}.help-legend.svelte-1281enc span:where(.svelte-1281enc){display:inline-flex;align-items:center;gap:6px}.help-legend.svelte-1281enc .dot:where(.svelte-1281enc){width:10px;height:10px;display:inline-block;border-radius:2px}.help-legend.svelte-1281enc .dot.schedule:where(.svelte-1281enc){background:#2c0}.help-legend.svelte-1281enc .dot.motion:where(.svelte-1281enc){background:#ffe000}.help-legend.svelte-1281enc .dot.alarm:where(.svelte-1281enc){background:#ff3b30}.help-legend.svelte-1281enc .dot.manual:where(.svelte-1281enc){background:#bb9af7}.help-legend.svelte-1281enc .dot.other:where(.svelte-1281enc){background:#56c8d8}.body.svelte-1281enc{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.preparing.svelte-1281enc{flex:1;min-height:240px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-muted);font-size:14px}.preparing.svelte-1281enc .spinner:where(.svelte-1281enc){width:18px;height:18px;border:2px solid rgba(255,255,255,.25);border-top-color:var(--accent, #7aa2f7);border-radius:50%;animation:svelte-1281enc-dad-spin .8s linear infinite}@keyframes svelte-1281enc-dad-spin{to{transform:rotate(360deg)}}.logs.svelte-1e139pu{flex:1;display:flex;flex-direction:column;padding:12px;overflow:hidden;min-height:0}.empty.svelte-1e139pu,.state.svelte-1e139pu{display:flex;align-items:center;justify-content:center;padding:40px;flex:1}.muted.svelte-1e139pu{color:var(--text-muted)}.toolbar.svelte-1e139pu{display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--panel);border:1px solid var(--border);border-radius:6px;margin-bottom:12px}.row.svelte-1e139pu{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.field.svelte-1e139pu{display:flex;flex-direction:column;gap:4px;font-size:12px;min-width:140px}.field.flex.svelte-1e139pu{flex:1;min-width:200px}.field.svelte-1e139pu span.muted:where(.svelte-1e139pu){font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.5px}.accent.svelte-1e139pu{align-self:flex-end}.quiet.svelte-1e139pu{background:transparent;border:1px solid var(--border);color:var(--text-muted);align-self:flex-end}.danger-quiet.svelte-1e139pu:hover{color:var(--red);border-color:var(--red)}.summary.svelte-1e139pu{font-size:12px;margin-bottom:8px}.summary.svelte-1e139pu .warn:where(.svelte-1e139pu){color:var(--yellow);margin-left:12px}.error.svelte-1e139pu{margin-bottom:12px;padding:10px 14px;background:#f7768e26;border:1px solid var(--red);border-radius:4px;color:var(--red);font-size:13px}.table-wrap.svelte-1e139pu{flex:1;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:6px}table.svelte-1e139pu{width:100%;border-collapse:collapse;font-size:12px}thead.svelte-1e139pu{position:sticky;top:0;background:var(--panel);z-index:1}th.svelte-1e139pu,td.svelte-1e139pu{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}th.svelte-1e139pu{font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-weight:600}tbody.svelte-1e139pu tr:where(.svelte-1e139pu):hover{background:var(--surface)}.col-time.svelte-1e139pu{font-family:var(--mono);font-size:var(--fs-hint);white-space:nowrap}.col-detail.svelte-1e139pu{max-width:600px;word-break:break-word}.ip.svelte-1e139pu{font-family:var(--mono);font-size:var(--fs-hint)}.badge.svelte-1e139pu{display:inline-block;padding:2px 6px;border-radius:3px;font-size:var(--fs-hint);text-transform:uppercase;letter-spacing:.3px;font-weight:600}.badge.blue.svelte-1e139pu{background:#7aa2f726;color:#7aa2f7}.badge.purple.svelte-1e139pu{background:#bb9af726;color:#bb9af7}.badge.green.svelte-1e139pu{background:#9ece6a26;color:#9ece6a}.badge.teal.svelte-1e139pu{background:#73daca26;color:#73daca}.badge.orange.svelte-1e139pu{background:#ff9e6426;color:#ff9e64}.badge.red.svelte-1e139pu{background:#f7768e26;color:#f7768e}.badge.gray.svelte-1e139pu{background:var(--surface);color:var(--text-muted)}.small.svelte-1e139pu{font-size:var(--fs-hint)}@media (max-width: 599px){.logs.svelte-1e139pu{padding:var(--space-3)}.toolbar.svelte-1e139pu{padding:var(--space-3);gap:var(--space-2);margin-bottom:var(--space-3)}.row.svelte-1e139pu{flex-direction:column;align-items:stretch;gap:var(--space-2)}.field.svelte-1e139pu{min-width:0;width:100%;font-size:var(--fs-input)}.field.flex.svelte-1e139pu{min-width:0}.field.svelte-1e139pu input:where(.svelte-1e139pu),.field.svelte-1e139pu select:where(.svelte-1e139pu),input[type=datetime-local].svelte-1e139pu,input[type=search].svelte-1e139pu{font-size:16px;min-height:var(--touch-target)}.row.svelte-1e139pu:last-child .field.flex:where(.svelte-1e139pu){width:100%}.accent.svelte-1e139pu,.quiet.svelte-1e139pu{min-height:var(--touch-target);padding:var(--space-2) var(--space-4);font-size:var(--fs-input);align-self:stretch}.summary.svelte-1e139pu{font-size:var(--fs-hint)}th.svelte-1e139pu,td.svelte-1e139pu{padding:var(--space-2) var(--space-3)}.col-detail.svelte-1e139pu{max-width:60vw}}@media (min-width: 600px) and (max-width: 1023px){.field.svelte-1e139pu{min-width:120px}}.backdrop.svelte-ovqotn{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}@media (max-width: 599px){.backdrop.svelte-ovqotn{padding:0}.dialog.svelte-ovqotn{width:100vw;max-width:100vw;height:100dvh;border-radius:0;border:none}header.svelte-ovqotn{padding:var(--space-3) var(--space-4)}header.svelte-ovqotn h2:where(.svelte-ovqotn){font-size:var(--fs-section)}.close.svelte-ovqotn{min-width:var(--touch-target);min-height:var(--touch-target);font-size:24px;padding:0;display:inline-flex;align-items:center;justify-content:center}}.dialog.svelte-ovqotn{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;max-width:1400px;height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}header.svelte-ovqotn{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border);flex-shrink:0}header.svelte-ovqotn h2:where(.svelte-ovqotn){margin:0;font-size:15px;font-weight:600}.close.svelte-ovqotn{background:transparent;border:none;color:var(--text-muted);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;min-height:0;border-radius:4px}.close.svelte-ovqotn:hover{color:var(--text)}.body.svelte-ovqotn{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.modal-backdrop.svelte-5awcn0{position:fixed;inset:0;background:#0000008c;display:flex;animation:svelte-5awcn0-modal-fade .12s ease-out}.modal-backdrop.dialog.svelte-5awcn0{align-items:center;justify-content:center;padding:var(--space-5)}.modal-backdrop.drawer.right.svelte-5awcn0{justify-content:flex-end}.modal-backdrop.drawer.left.svelte-5awcn0{justify-content:flex-start}.modal-card.svelte-5awcn0{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:0;width:100%}.modal-card.dialog.svelte-5awcn0{max-width:var(--modal-size);max-height:calc(100dvh - 2 * var(--space-5));border-radius:8px;overflow:hidden;animation:svelte-5awcn0-modal-pop .14s ease-out}.modal-card.drawer.svelte-5awcn0{max-width:var(--modal-size);height:100%;max-height:100dvh}.modal-card.drawer.right.svelte-5awcn0{border-left:1px solid var(--border);animation:svelte-5awcn0-modal-slide-right .16s ease-out}.modal-card.drawer.left.svelte-5awcn0{border-right:1px solid var(--border);animation:svelte-5awcn0-modal-slide-left .16s ease-out}@media (max-width: 599px){.modal-backdrop.dialog.svelte-5awcn0{align-items:flex-end;padding:0}.modal-card.dialog.svelte-5awcn0{max-width:100vw;max-height:100dvh;border-radius:0;animation:svelte-5awcn0-modal-sheet-up .18s ease-out}.modal-card.drawer.svelte-5awcn0{max-width:100vw;max-height:100dvh;border-radius:0}}@keyframes svelte-5awcn0-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes svelte-5awcn0-modal-pop{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}@keyframes svelte-5awcn0-modal-sheet-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes svelte-5awcn0-modal-slide-right{0%{transform:translate(100%)}to{transform:none}}@keyframes svelte-5awcn0-modal-slide-left{0%{transform:translate(-100%)}to{transform:none}}.cd-content.svelte-1efofyg{padding:var(--modal-pad)}.cd-title.svelte-1efofyg{margin:0 0 10px;font-size:15px;font-weight:600;color:var(--text)}.cd-message.svelte-1efofyg{margin:0 0 20px;font-size:var(--font-base);line-height:1.5;color:var(--text-muted);white-space:pre-line}.cd-input.svelte-1efofyg{width:100%;margin:-8px 0 20px}.cd-actions.svelte-1efofyg{display:flex;justify-content:flex-end;gap:8px}.cd-danger.svelte-1efofyg{background:var(--red);color:var(--bg);border:none;font-weight:600}.cd-danger.svelte-1efofyg:hover{background:#ff8497}.backdrop.svelte-1b5yd6b{position:fixed;inset:0;background:#00000080;display:flex;justify-content:flex-end;z-index:200}.panel.svelte-1b5yd6b{width:100%;max-width:440px;background:var(--panel);border-left:1px solid var(--border);display:flex;flex-direction:column;box-shadow:var(--shadow)}@media (max-width: 599px){.panel.svelte-1b5yd6b{max-width:100vw}header.svelte-1b5yd6b{padding:var(--space-4) var(--space-4);min-height:var(--touch-target)}header.svelte-1b5yd6b h2:where(.svelte-1b5yd6b){font-size:var(--fs-section)}.close.svelte-1b5yd6b{min-width:var(--touch-target);min-height:var(--touch-target);font-size:26px}.search.svelte-1b5yd6b{padding:var(--space-3) var(--space-4)}.search-input.svelte-1b5yd6b{min-height:var(--touch-target);font-size:16px;padding:8px 10px}.search-clear.svelte-1b5yd6b{min-width:var(--touch-target);min-height:var(--touch-target);font-size:22px}.toolbar.svelte-1b5yd6b{flex-wrap:wrap;padding:var(--space-3) var(--space-4)}.select-all.svelte-1b5yd6b{font-size:var(--fs-label)}.bulk-delete.svelte-1b5yd6b{min-height:var(--touch-target);padding:6px 14px;font-size:var(--fs-label)}.item.svelte-1b5yd6b{padding:var(--space-3) var(--space-4)}.item-top.svelte-1b5yd6b{gap:var(--space-3)}.thumb.svelte-1b5yd6b{width:96px;height:54px}.row1.svelte-1b5yd6b{flex-wrap:wrap;gap:var(--space-2)}.filename.svelte-1b5yd6b{font-size:var(--fs-label);white-space:normal;overflow-wrap:anywhere}.row2.svelte-1b5yd6b,.row3.svelte-1b5yd6b{flex-direction:column;align-items:flex-start;gap:2px;font-size:var(--fs-hint)}.actions.svelte-1b5yd6b{flex-wrap:wrap;margin-top:var(--space-2)}.actions.svelte-1b5yd6b button:where(.svelte-1b5yd6b),.actions.svelte-1b5yd6b .btn-link:where(.svelte-1b5yd6b){flex:1 1 auto;min-height:var(--touch-target);min-width:0;padding:8px 12px;font-size:var(--fs-label);justify-content:center}.actions.svelte-1b5yd6b .danger-quiet:where(.svelte-1b5yd6b){flex:0 0 auto;margin-left:0}}header.svelte-1b5yd6b{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}header.svelte-1b5yd6b h2:where(.svelte-1b5yd6b){margin:0;font-size:15px}.close.svelte-1b5yd6b{background:transparent;border:none;color:var(--text-muted);font-size:22px;min-height:0;padding:0 4px;cursor:pointer}.close.svelte-1b5yd6b:hover{color:var(--text);background:transparent}.empty.svelte-1b5yd6b{padding:40px;text-align:center}.muted.svelte-1b5yd6b{color:var(--text-muted);font-size:12px}.search.svelte-1b5yd6b{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--border);color:var(--text-muted)}.search-input.svelte-1b5yd6b{flex:1;min-width:0;min-height:28px;padding:4px 8px;font-size:13px;background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text)}.search-clear.svelte-1b5yd6b{background:transparent;border:none;color:var(--text-muted);font-size:18px;line-height:1;min-height:0;padding:0 4px;cursor:pointer}.search-clear.svelte-1b5yd6b:hover{color:var(--text);background:transparent}.toolbar.svelte-1b5yd6b{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 16px;border-bottom:1px solid var(--border);background:#0000001f}.select-all.svelte-1b5yd6b{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);cursor:pointer;user-select:none}.select-all.svelte-1b5yd6b input:where(.svelte-1b5yd6b){cursor:pointer}.bulk-delete.svelte-1b5yd6b{min-height:26px;padding:2px 12px;font-size:12px}.bulk-delete.svelte-1b5yd6b:disabled{opacity:.5}.list.svelte-1b5yd6b{list-style:none;margin:0;padding:0;overflow-y:auto}.item.svelte-1b5yd6b{padding:12px 16px;border-bottom:1px solid var(--border)}.item.selected.svelte-1b5yd6b{background:var(--selection-bg)}.item-top.svelte-1b5yd6b{display:flex;align-items:flex-start;gap:10px}.item-body.svelte-1b5yd6b{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.thumb.svelte-1b5yd6b{flex-shrink:0;width:72px;height:40px;object-fit:cover;border-radius:4px;background:#000;border:1px solid var(--border)}.row1.svelte-1b5yd6b{display:flex;align-items:center;justify-content:space-between;gap:8px}.row-check.svelte-1b5yd6b{flex-shrink:0;cursor:pointer;margin:3px 0 0}.filename.svelte-1b5yd6b{flex:1;font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.state.svelte-1b5yd6b{font-size:var(--fs-hint);text-transform:uppercase;padding:2px 8px;border-radius:10px;background:var(--surface);color:var(--text-muted);flex-shrink:0}.item.state-running.svelte-1b5yd6b .state:where(.svelte-1b5yd6b){color:var(--yellow)}.item.state-finalizing.svelte-1b5yd6b .state:where(.svelte-1b5yd6b){color:var(--accent, #7dcfff)}.item.state-completed.svelte-1b5yd6b .state:where(.svelte-1b5yd6b){color:var(--green)}.item.state-failed.svelte-1b5yd6b .state:where(.svelte-1b5yd6b){color:var(--red)}.item.state-cancelled.svelte-1b5yd6b .state:where(.svelte-1b5yd6b){color:var(--text-dim)}.row2.svelte-1b5yd6b,.row3.svelte-1b5yd6b{display:flex;justify-content:space-between;gap:8px;font-size:var(--fs-hint)}.progress.svelte-1b5yd6b{position:relative;background:var(--surface);border-radius:3px;height:6px;overflow:hidden}.progress.svelte-1b5yd6b .bar:where(.svelte-1b5yd6b){background:var(--accent);height:100%;transition:width .3s ease-out}.progress.svelte-1b5yd6b .bar.indeterminate:where(.svelte-1b5yd6b){animation:svelte-1b5yd6b-dl-pulse 1.2s ease-in-out infinite}@keyframes svelte-1b5yd6b-dl-pulse{0%,to{opacity:.35}50%{opacity:1}}.progress.svelte-1b5yd6b .pct:where(.svelte-1b5yd6b){position:absolute;right:4px;top:-14px;font-size:var(--fs-hint);color:var(--text-muted)}.error.svelte-1b5yd6b{color:var(--red);font-size:12px}.actions.svelte-1b5yd6b{display:flex;gap:4px;margin-top:4px}.actions.svelte-1b5yd6b button:where(.svelte-1b5yd6b),.actions.svelte-1b5yd6b .btn-link:where(.svelte-1b5yd6b){min-height:24px;padding:2px 10px;font-size:12px;background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);text-decoration:none;display:inline-flex;align-items:center}.actions.svelte-1b5yd6b .btn-link:where(.svelte-1b5yd6b):hover{background:var(--accent-press)}.actions.svelte-1b5yd6b .danger-quiet:where(.svelte-1b5yd6b){color:var(--text-muted);margin-left:auto}.actions.svelte-1b5yd6b .danger-quiet:where(.svelte-1b5yd6b):hover{color:var(--red);border-color:var(--red)}.backdrop.svelte-prwe4t{position:fixed;inset:0;background:#00000080;display:flex;justify-content:flex-end;z-index:200}.panel.svelte-prwe4t{width:100%;max-width:480px;background:var(--panel);border-left:1px solid var(--border);display:flex;flex-direction:column;box-shadow:var(--shadow)}@media (max-width: 599px){.panel.svelte-prwe4t{max-width:100vw}header.svelte-prwe4t{padding:var(--space-3) var(--space-4)}.header-actions.svelte-prwe4t{gap:var(--space-1)}.quiet.svelte-prwe4t{min-height:var(--touch-target);padding:var(--space-2) var(--space-3);font-size:var(--fs-input)}.close.svelte-prwe4t{min-width:var(--touch-target);min-height:var(--touch-target);padding:0;font-size:24px}.search.svelte-prwe4t{padding:var(--space-2) var(--space-4);gap:var(--space-2)}.search-input.svelte-prwe4t{font-size:16px;min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}.search-clear.svelte-prwe4t{min-width:var(--touch-target);min-height:var(--touch-target);font-size:20px}.event.svelte-prwe4t{flex-wrap:wrap;gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-4)}.time.svelte-prwe4t{font-size:var(--fs-hint)}.code.svelte-prwe4t{font-size:var(--fs-input)}}@media (min-width: 600px) and (max-width: 1023px){.event.svelte-prwe4t{padding:var(--space-2) var(--space-4)}}header.svelte-prwe4t{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}header.svelte-prwe4t h2:where(.svelte-prwe4t){margin:0;font-size:15px}.header-actions.svelte-prwe4t{display:flex;gap:4px;align-items:center}.quiet.svelte-prwe4t{background:transparent;border:1px solid var(--border);color:var(--text-muted);min-height:0;padding:4px 10px;font-size:var(--fs-hint)}.close.svelte-prwe4t{background:transparent;border:none;color:var(--text-muted);font-size:22px;min-height:0;padding:0 4px;cursor:pointer}.close.svelte-prwe4t:hover{color:var(--text);background:transparent}.empty.svelte-prwe4t{padding:40px;text-align:center}.muted.svelte-prwe4t{color:var(--text-muted)}.notice.svelte-prwe4t{padding:8px 16px;font-size:var(--fs-hint);color:var(--text-muted);background:#ff9e641f;border-bottom:1px solid var(--border)}.search.svelte-prwe4t{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--border);color:var(--text-muted)}.search-input.svelte-prwe4t{flex:1;min-width:0;min-height:28px;padding:4px 8px;font-size:13px;background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text)}.search-clear.svelte-prwe4t{background:transparent;border:none;color:var(--text-muted);font-size:18px;line-height:1;min-height:0;padding:0 4px;cursor:pointer}.search-clear.svelte-prwe4t:hover{color:var(--text);background:transparent}.list.svelte-prwe4t{list-style:none;margin:0;padding:0;overflow-y:auto;font-family:var(--mono);font-size:12px}.event.svelte-prwe4t{display:flex;align-items:baseline;gap:8px;padding:6px 16px;border-bottom:1px solid var(--border)}.time.svelte-prwe4t{flex-shrink:0;color:var(--text-dim);font-size:var(--fs-hint)}.dot.svelte-prwe4t{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot.red.svelte-prwe4t{background:var(--red)}.dot.green.svelte-prwe4t{background:var(--green)}.dot.orange.svelte-prwe4t{background:#ff9e64}.dot.purple.svelte-prwe4t{background:#bb9af7}.dot.teal.svelte-prwe4t{background:var(--teal)}.dot.err.svelte-prwe4t{background:var(--red);border-radius:0}.code.svelte-prwe4t{font-weight:600}.action.svelte-prwe4t{font-size:var(--fs-hint);color:var(--text-muted)}.device.svelte-prwe4t{margin-left:auto;font-family:var(--sans);font-size:var(--fs-hint)}.ch.svelte-prwe4t{color:var(--text-dim);font-size:var(--fs-hint)}.server-down-overlay.svelte-1n46o8q{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#0000008c;backdrop-filter:blur(2px)}.server-down-card.svelte-1n46o8q{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);padding:28px 32px;max-width:380px;text-align:center}.server-down-card.svelte-1n46o8q h2:where(.svelte-1n46o8q){margin:16px 0 8px;font-size:1.15rem}.server-down-card.svelte-1n46o8q p:where(.svelte-1n46o8q){margin:0;color:var(--text-muted);font-size:var(--fs-hint)}.server-down-spinner.svelte-1n46o8q{width:34px;height:34px;margin:0 auto;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:svelte-1n46o8q-server-down-spin .9s linear infinite}@keyframes svelte-1n46o8q-server-down-spin{to{transform:rotate(360deg)}}.server-down-retry.svelte-1n46o8q{margin-top:18px;padding:8px 18px;font-size:var(--fs-hint);font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:6px;cursor:pointer}.server-down-retry.svelte-1n46o8q:hover:not(:disabled){filter:brightness(1.08)}.server-down-retry.svelte-1n46o8q:disabled{opacity:.6;cursor:default}.boot-screen.svelte-1n46o8q{height:100vh;display:flex;align-items:center;justify-content:center}.user-chip.svelte-1n46o8q{color:var(--text);font-size:12.5px;padding:0 6px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-star.svelte-1n46o8q{color:var(--yellow)}header.svelte-1n46o8q{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;position:relative}.header-left.svelte-1n46o8q{display:flex;align-items:baseline;gap:12px}.header-right.svelte-1n46o8q{display:flex;align-items:center;gap:16px}.header-icon.svelte-1n46o8q{background:transparent;border:1px solid var(--border);color:var(--text-muted);font-size:14px;min-height:28px;padding:2px 10px;border-radius:4px;cursor:pointer}.header-icon.svelte-1n46o8q:hover{color:var(--text);background:var(--surface)}.logo.svelte-1n46o8q{font-size:18px;font-weight:700;color:var(--accent);letter-spacing:.5px}.subtitle.svelte-1n46o8q{font-size:13px;color:var(--text-muted)}.menu-scrim.svelte-1n46o8q{position:fixed;inset:0;z-index:60;background:transparent;border:none;padding:0;cursor:default}.header-menu.svelte-1n46o8q{position:absolute;top:calc(100% + 4px);right:var(--space-3);z-index:61;min-width:220px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column;gap:2px}.menu-user.svelte-1n46o8q{padding:6px 10px;font-size:12px;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:4px}.menu-row.svelte-1n46o8q{display:flex;align-items:center;gap:10px;width:100%;min-height:var(--touch-target);padding:8px 10px;background:transparent;border:none;border-radius:6px;color:var(--text);font-size:var(--font-base);text-align:left;cursor:pointer}.menu-row.svelte-1n46o8q:hover{background:var(--surface)}.menu-row--inert.svelte-1n46o8q{cursor:default}.menu-row--inert.svelte-1n46o8q:hover{background:transparent}.menu-ico.svelte-1n46o8q{width:1.4em;text-align:center;flex-shrink:0}@media (max-width: 599px){.subtitle.svelte-1n46o8q{display:none}.header-icon.svelte-1n46o8q{min-height:var(--touch-target);min-width:var(--touch-target);font-size:18px}header.svelte-1n46o8q{padding:var(--space-2) var(--space-3)}.centered.svelte-1n46o8q{padding:var(--space-5)}.toast.svelte-1n46o8q{left:var(--space-3);right:var(--space-3);bottom:var(--space-3);max-width:none;padding:var(--space-3) var(--space-4);font-size:var(--fs-label)}.server-down-card.svelte-1n46o8q{padding:var(--space-5) var(--space-4);margin:var(--space-3);max-width:none}.server-down-retry.svelte-1n46o8q{min-height:var(--touch-target);padding:var(--space-2) var(--space-4)}.menu-row--inert.svelte-1n46o8q .lang-picker{flex:1;min-height:var(--touch-target);font-size:var(--fs-input);min-width:0}}@media (min-width: 600px) and (max-width: 1023px){.subtitle.svelte-1n46o8q{display:none}.header-right.svelte-1n46o8q{gap:var(--space-2)}.header-right.svelte-1n46o8q>.muted:where(.svelte-1n46o8q){display:none}.user-chip.svelte-1n46o8q{max-width:90px}}.muted.svelte-1n46o8q{color:var(--text-muted);font-size:12px}main.svelte-1n46o8q{flex:1;overflow:auto;display:flex;flex-direction:column}.centered.svelte-1n46o8q{flex:1;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;padding:40px}.error.svelte-1n46o8q{color:var(--red)}.error-icon.svelte-1n46o8q{font-size:36px}.toast.svelte-1n46o8q{position:fixed;bottom:20px;right:20px;background:var(--panel);border:1px solid var(--border);color:var(--text);padding:10px 16px;border-radius:6px;box-shadow:var(--shadow);z-index:200;font-size:13px}.toast.success.svelte-1n46o8q{border-color:var(--green);color:var(--green)}.toast.error.svelte-1n46o8q{border-color:var(--red);color:var(--red)}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #1a1b26;--panel: #24283b;--surface: #2a2e45;--border: #3d4166;--border-light: #565f89;--text: #c0caf5;--text-muted: #9aa0c4;--text-dim: #6b7299;--accent: #7aa2f7;--accent-hover: #89b4fa;--accent-press: #6272a4;--green: #9ece6a;--yellow: #e0af68;--orange: #ff9e64;--red: #f7768e;--teal: #73daca;--purple: #bb9af7;--selection-bg: rgba(122, 162, 247, .25);--shadow: 0 4px 16px rgba(0, 0, 0, .4)}:root[data-theme=light]{--bg: #e7e9f1;--panel: #ffffff;--surface: #eef0f7;--border: #ccd0e0;--border-light: #aab0cc;--text: #2a2e45;--text-muted: #545b7a;--text-dim: #7d84a0;--accent: #3d5cc8;--accent-hover: #3450b4;--accent-press: #93a3e0;--green: #3f8f2e;--yellow: #8a5f17;--orange: #bd5e0b;--red: #cf3b54;--teal: #1d8a82;--purple: #7547c4;--selection-bg: rgba(61, 92, 200, .18);--shadow: 0 6px 20px rgba(40, 46, 80, .15)}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 28px;--font-base: 13px;--sans: "Segoe UI", "Noto Sans", "Cantarell", "Liberation Sans", -apple-system, BlinkMacSystemFont, sans-serif;--mono: "JetBrains Mono", "Fira Code", Consolas, ui-monospace, monospace;--fs-input: 13px;--fs-label: 13px;--fs-hint: 12px;--fs-tab: 13px;--fs-title: 18px;--fs-section: 15px;--modal-pad: 22px 24px;--modal-radius: 8px;--touch-target: 44px}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:var(--sans);font-size:var(--font-base);color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{height:100vh;display:flex;flex-direction:column}button{font-family:inherit;font-size:var(--font-base);color:var(--text);background-color:var(--panel);border:1px solid var(--border);border-radius:5px;padding:6px 14px;min-height:28px;cursor:pointer;transition:background-color .12s,border-color .12s}button:hover{background-color:var(--surface);border-color:var(--border-light)}button:active{background-color:var(--accent-press);border-color:var(--accent)}button:disabled{color:var(--text-dim);border-color:var(--text-dim);cursor:not-allowed}button.accent{background-color:var(--accent);color:var(--bg);border:none;font-weight:600}button.accent:hover{background-color:var(--accent-hover)}button.danger{color:var(--red);border-color:var(--red)}button.danger:hover{background-color:#f7768e26}input,textarea,select{font-family:inherit;font-size:var(--font-base);color:var(--text);background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:6px 10px;outline:none;transition:border-color .12s}input:focus,textarea:focus,select:focus{border-color:var(--accent)}input[type=checkbox],input[type=radio]{appearance:auto;-webkit-appearance:auto;width:auto;min-height:0;margin:0;padding:0;background:none;border:none;border-radius:0;accent-color:var(--accent);cursor:pointer}::selection{background:var(--selection-bg)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}@media (max-width: 599px){:root{--space-3: 10px;--space-4: 12px;--space-5: 14px;--space-6: 18px;--font-base: 14px;--modal-pad: 16px 16px;--modal-radius: 0px}}@media (max-width: 599px){::-webkit-scrollbar{width:6px;height:6px}}
