:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;min-height:100vh}#app{width:100%;height:100vh;overflow:hidden}.login-container.svelte-h34f85{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-card.svelte-h34f85{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:40px;width:100%;max-width:420px}.login-header.svelte-h34f85{text-align:center;margin-bottom:30px}.login-header.svelte-h34f85 h1:where(.svelte-h34f85){font-size:28px;font-weight:700;color:#1a202c;margin:0 0 8px}.login-header.svelte-h34f85 p:where(.svelte-h34f85){color:#718096;font-size:14px;margin:0}.alert.svelte-h34f85{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px}.alert-error.svelte-h34f85{background:#fed7d7;color:#c53030;border:1px solid #fc8181}.login-form.svelte-h34f85{display:flex;flex-direction:column;gap:20px}.form-group.svelte-h34f85{display:flex;flex-direction:column;gap:8px}label.svelte-h34f85{font-size:14px;font-weight:600;color:#2d3748}input.svelte-h34f85{padding:12px 16px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;transition:all .2s}input.svelte-h34f85:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}input.svelte-h34f85:disabled{background:#f7fafc;cursor:not-allowed}.btn.svelte-h34f85{padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary.svelte-h34f85{background:#667eea;color:#fff}.btn-primary.svelte-h34f85:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn.svelte-h34f85:disabled{opacity:.6;cursor:not-allowed}.login-footer.svelte-h34f85{margin-top:30px;text-align:center;color:#a0aec0;font-size:12px}.version-info.svelte-neun3o{display:flex;gap:24px;padding:16px;background:#f7fafc;border-radius:6px;margin-bottom:20px;border:1px solid #e2e8f0}.info-item.svelte-neun3o{display:flex;flex-direction:column;gap:4px}.info-label.svelte-neun3o{font-size:12px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em}.info-value.svelte-neun3o{font-size:18px;font-weight:600;color:#2d3748}.info-value.highlight.svelte-neun3o{color:#667eea}.checkbox-label.svelte-neun3o{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;padding:8px 0}.checkbox-label.svelte-neun3o input[type=checkbox]:where(.svelte-neun3o){width:auto;cursor:pointer}.checkbox-label.svelte-neun3o span:where(.svelte-neun3o){-webkit-user-select:none;user-select:none}.release-type-selector.svelte-neun3o{display:flex;flex-direction:row;gap:12px;margin-top:8px}.release-type-option.svelte-neun3o{display:flex;gap:12px;padding:12px;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s;background:#fff}.release-type-option.svelte-neun3o:hover{border-color:#cbd5e0;background:#f7fafc}.release-type-option.svelte-neun3o:has(input:where(.svelte-neun3o):checked){border-color:#667eea;background:#ebf4ff}.release-type-option.svelte-neun3o input[type=radio]:where(.svelte-neun3o){width:auto;margin-top:4px;cursor:pointer}.release-type-content.svelte-neun3o{flex:1}.release-type-title.svelte-neun3o{font-weight:600;color:#2d3748;margin-bottom:4px}.release-type-desc.svelte-neun3o{font-size:13px;color:#718096;margin-bottom:6px}.release-type-example.svelte-neun3o{font-size:12px;color:#667eea;font-weight:500;font-family:Courier New,monospace}.version-hint.svelte-neun3o{margin-top:6px;font-size:13px;color:#4a5568;background:#ebf4ff;padding:8px 12px;border-radius:4px;border-left:3px solid #667eea}.version-hint.svelte-neun3o strong:where(.svelte-neun3o){color:#667eea;font-weight:600}.form-label.svelte-neun3o{font-weight:600;color:#2d3748;margin-bottom:6px;display:block}.modal-overlay.svelte-59ihjt{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content.svelte-59ihjt{background:#fff;border-radius:8px;max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 25px #0003}.modal-header.svelte-59ihjt{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e2e8f0}.modal-header.svelte-59ihjt h2:where(.svelte-59ihjt){margin:0;font-size:20px;color:#2d3748}.modal-close.svelte-59ihjt{background:none;border:none;font-size:28px;cursor:pointer;color:#718096;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.modal-close.svelte-59ihjt:hover{background:#f7fafc;color:#2d3748}.modal-body.svelte-59ihjt{padding:20px;overflow-y:auto;flex:1}.rollout-details.svelte-59ihjt{display:flex;flex-direction:column;gap:24px}.detail-section.svelte-59ihjt h3:where(.svelte-59ihjt){margin:0 0 12px;font-size:16px;color:#2d3748;border-bottom:2px solid #e2e8f0;padding-bottom:8px}.detail-grid.svelte-59ihjt{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.detail-item.svelte-59ihjt{padding:8px;background:#f7fafc;border-radius:4px}.progress-summary.svelte-59ihjt{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.progress-item.svelte-59ihjt{padding:12px;background:#f7fafc;border-radius:4px;border-left:4px solid #718096}.progress-item.success.svelte-59ihjt{border-left-color:#48bb78;background:#f0fff4}.progress-item.danger.svelte-59ihjt{border-left-color:#f56565;background:#fff5f5}.progress-item.warning.svelte-59ihjt{border-left-color:#ed8936;background:#fffaf0}.progress-item.info.svelte-59ihjt{border-left-color:#4299e1;background:#ebf8ff}.progress-label.svelte-59ihjt{display:block;font-size:12px;color:#718096;margin-bottom:4px}.progress-value.svelte-59ihjt{display:block;font-size:20px;font-weight:700;color:#2d3748}.table-container.svelte-59ihjt{overflow-x:auto;border:1px solid #e2e8f0;border-radius:4px}.details-table.svelte-59ihjt{width:100%;border-collapse:collapse;font-size:13px}.details-table.svelte-59ihjt thead:where(.svelte-59ihjt){background:#f7fafc}.details-table.svelte-59ihjt th:where(.svelte-59ihjt){padding:12px;text-align:left;font-weight:600;color:#4a5568;border-bottom:2px solid #e2e8f0}.details-table.svelte-59ihjt td:where(.svelte-59ihjt){padding:10px 12px;border-bottom:1px solid #e2e8f0}.details-table.svelte-59ihjt tbody:where(.svelte-59ihjt) tr:where(.svelte-59ihjt):hover{background:#f7fafc}.details-table.svelte-59ihjt tbody:where(.svelte-59ihjt) tr:where(.svelte-59ihjt):last-child td:where(.svelte-59ihjt){border-bottom:none}.details-table.svelte-59ihjt code:where(.svelte-59ihjt){background:#f7fafc;padding:2px 6px;border-radius:4px;font-size:11px;font-family:Courier New,monospace;word-break:break-all}.form-label.svelte-59ihjt{font-weight:600;color:#2d3748;margin-bottom:6px;display:block}.modal-overlay.svelte-l8m6yo{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content.svelte-l8m6yo{background:#fff;border-radius:8px;max-width:1200px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 25px #0003}.modal-header.svelte-l8m6yo{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;border-bottom:1px solid #e2e8f0}.modal-header.svelte-l8m6yo h2:where(.svelte-l8m6yo){margin:0 0 8px;font-size:20px;color:#2d3748}.modal-subtitle.svelte-l8m6yo{margin:0;font-size:13px;color:#718096}.modal-subtitle.svelte-l8m6yo code:where(.svelte-l8m6yo){background:#f7fafc;padding:2px 6px;border-radius:4px;font-size:11px;font-family:Courier New,monospace}.modal-close.svelte-l8m6yo{background:none;border:none;font-size:28px;cursor:pointer;color:#718096;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s;flex-shrink:0}.modal-close.svelte-l8m6yo:hover{background:#f7fafc;color:#2d3748}.modal-body.svelte-l8m6yo{padding:0;overflow-y:auto;flex:1;display:flex;flex-direction:column}.tabs.svelte-l8m6yo{display:flex;border-bottom:1px solid #e2e8f0;background:#f7fafc}.tab.svelte-l8m6yo{padding:12px 20px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#718096;border-bottom:2px solid transparent;transition:all .2s}.tab.svelte-l8m6yo:hover{color:#4a5568;background:#00000005}.tab.active.svelte-l8m6yo{color:#4299e1;border-bottom-color:#4299e1;background:#fff}.tab-content.svelte-l8m6yo{padding:20px;flex:1;overflow-y:auto}.filters-section.svelte-l8m6yo{margin-bottom:20px}.filters-row.svelte-l8m6yo{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.filters-row.svelte-l8m6yo .form-group:where(.svelte-l8m6yo){flex:1;min-width:150px}.filters-row.svelte-l8m6yo .form-group:where(.svelte-l8m6yo) label:where(.svelte-l8m6yo){display:block;font-size:12px;font-weight:600;color:#2d3748;margin-bottom:4px}.filters-row.svelte-l8m6yo .form-group:where(.svelte-l8m6yo) select:where(.svelte-l8m6yo),.filters-row.svelte-l8m6yo .form-group:where(.svelte-l8m6yo) input:where(.svelte-l8m6yo){width:100%;padding:8px;border:1px solid #e2e8f0;border-radius:4px;font-size:13px}.actions-row.svelte-l8m6yo{display:flex;gap:8px;margin-top:12px}.logs-container.svelte-l8m6yo{background:#1e1e1e;color:#f8f8f2;border-radius:6px;padding:16px;max-height:500px;overflow-y:auto}.log-entries.svelte-l8m6yo{display:flex;flex-direction:column;gap:8px}.log-entry.svelte-l8m6yo{padding:12px;border-left:3px solid;background:#ffffff0d;border-radius:4px}.log-entry.log-level-error.svelte-l8m6yo{border-left-color:#f56565;background:#f565651a}.log-entry.log-level-warn.svelte-l8m6yo{border-left-color:#ed8936;background:#ed89361a}.log-entry.log-level-info.svelte-l8m6yo{border-left-color:#4299e1;background:#4299e11a}.log-entry.log-level-debug.svelte-l8m6yo{border-left-color:#718096;background:#7180961a}.log-header.svelte-l8m6yo{display:flex;align-items:center;gap:8px;margin-bottom:6px}.log-badge.svelte-l8m6yo{font-size:10px;font-weight:700;padding:2px 6px;border-radius:3px}.log-timestamp.svelte-l8m6yo{color:#888;font-size:11px}.log-message.svelte-l8m6yo{color:#e2e2e2;font-size:13px;margin-bottom:6px;word-break:break-word}.log-line.svelte-l8m6yo{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.log-subsystem.svelte-l8m6yo{font-size:11px;font-weight:700;letter-spacing:.4px;padding:2px 6px;border-radius:999px;background:#ffffff1f;color:#f7fafc}.log-event.svelte-l8m6yo{font-size:12px;color:#90cdf4;font-weight:600}.log-extra.svelte-l8m6yo{font-size:12px;color:#cbd5f5}.log-fields.svelte-l8m6yo{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.log-field.svelte-l8m6yo{font-size:11px;padding:2px 6px;border-radius:4px;background:#ffffff14;color:#e2e8f0}.log-field-key.svelte-l8m6yo{color:#63b3ed;font-weight:600}.log-field-value.svelte-l8m6yo{color:#edf2f7}.log-telemetry.svelte-l8m6yo{display:flex;gap:12px;font-size:11px;color:#888}.telemetry-container.svelte-l8m6yo{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.table-container.svelte-l8m6yo{overflow-x:auto}.telemetry-table.svelte-l8m6yo{width:100%;border-collapse:collapse;font-size:12px}.telemetry-table.svelte-l8m6yo thead:where(.svelte-l8m6yo){background:#f7fafc}.telemetry-table.svelte-l8m6yo th:where(.svelte-l8m6yo){padding:10px 12px;text-align:left;font-weight:600;color:#4a5568;border-bottom:2px solid #e2e8f0;white-space:nowrap}.telemetry-table.svelte-l8m6yo td:where(.svelte-l8m6yo){padding:8px 12px;border-bottom:1px solid #e2e8f0;white-space:nowrap}.telemetry-table.svelte-l8m6yo tbody:where(.svelte-l8m6yo) tr:where(.svelte-l8m6yo):hover{background:#f7fafc}.telemetry-table.svelte-l8m6yo tbody:where(.svelte-l8m6yo) tr:where(.svelte-l8m6yo):last-child td:where(.svelte-l8m6yo){border-bottom:none}.stats-container.svelte-l8m6yo{display:flex;flex-direction:column;gap:20px}.stats-grid.svelte-l8m6yo{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.stat-card.svelte-l8m6yo{padding:16px;border-radius:6px;border-left:4px solid;background:#f7fafc}.stat-card.stat-total.svelte-l8m6yo{border-left-color:#4299e1;background:#ebf8ff}.stat-card.stat-error.svelte-l8m6yo{border-left-color:#f56565;background:#fff5f5}.stat-card.stat-warn.svelte-l8m6yo{border-left-color:#ed8936;background:#fffaf0}.stat-card.stat-info.svelte-l8m6yo{border-left-color:#4299e1;background:#ebf8ff}.stat-card.stat-debug.svelte-l8m6yo{border-left-color:#718096;background:#f7fafc}.stat-label.svelte-l8m6yo{font-size:12px;color:#718096;font-weight:600;margin-bottom:8px}.stat-value.svelte-l8m6yo{font-size:28px;font-weight:700;color:#2d3748}.top-printers-section.svelte-l8m6yo{margin-top:8px}.time-period-info.svelte-l8m6yo{padding:12px;background:#f7fafc;border-radius:4px;font-size:13px;color:#4a5568}.pagination.svelte-l8m6yo{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid #333}.pagination-info.svelte-l8m6yo{color:#888;font-size:12px}.loading-message.svelte-l8m6yo{text-align:center;color:#718096;padding:40px}.empty-message.svelte-l8m6yo{text-align:center;color:#718096;padding:40px;font-style:italic}.alert.svelte-l8m6yo{padding:12px 16px;border-radius:4px;margin-bottom:16px;font-size:13px}.alert-success.svelte-l8m6yo{background:#f0fff4;border-left:4px solid #48bb78;color:#22543d}.alert-error.svelte-l8m6yo{background:#fff5f5;border-left:4px solid #f56565;color:#742a2a}.alert-warning.svelte-l8m6yo{background:#fffaf0;border-left:4px solid #ed8936;color:#744210}.stats-dashboard.svelte-l8m6yo{display:flex;flex-direction:column;gap:24px}.summary-cards-row.svelte-l8m6yo{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.summary-card.svelte-l8m6yo{display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;border-left:4px solid;transition:transform .2s,box-shadow .2s}.summary-card.svelte-l8m6yo:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.summary-card.summary-firmware.svelte-l8m6yo{border-left-color:#805ad5}.summary-card.summary-logs.svelte-l8m6yo{border-left-color:#4299e1}.summary-card.summary-heap.svelte-l8m6yo{border-left-color:#38b2ac}.summary-card.summary-wifi.svelte-l8m6yo{border-left-color:#ed8936}.summary-icon.svelte-l8m6yo{font-size:32px;flex-shrink:0}.summary-content.svelte-l8m6yo{flex:1;min-width:0}.summary-label.svelte-l8m6yo{font-size:11px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.summary-value.svelte-l8m6yo{font-size:18px;font-weight:700;color:#2d3748;margin-bottom:2px}.summary-sub.svelte-l8m6yo{font-size:11px;color:#a0aec0}.pie-chart-section.svelte-l8m6yo{background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a}.pie-chart-section.svelte-l8m6yo .chart-container:where(.svelte-l8m6yo){height:300px;max-width:500px;margin:0 auto}.charts-grid.svelte-l8m6yo{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media(max-width:1024px){.charts-grid.svelte-l8m6yo{grid-template-columns:1fr}}.chart-card.svelte-l8m6yo{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a}.chart-container.svelte-l8m6yo{position:relative;height:300px}.status-indicator.svelte-lk0ht0{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px}.status-online.svelte-lk0ht0{background:#48bb78}.status-offline.svelte-lk0ht0{background:#f56565}code.svelte-lk0ht0{background:#f7fafc;padding:2px 6px;border-radius:4px;font-size:12px;font-family:Courier New,monospace}.btn-sm.svelte-lk0ht0{padding:6px 12px;font-size:12px}.message-log.svelte-syzitk{background:#1e1e1e;color:#f8f8f2;padding:16px;border-radius:6px;max-height:400px;overflow-y:auto;font-family:Courier New,monospace;font-size:12px;white-space:pre-wrap}.form-label.svelte-syzitk{font-weight:600;color:#2d3748;margin-bottom:6px;display:block}.error-log-container.svelte-agwk2a{background:#1e1e1e;color:#f8f8f2;padding:16px;border-radius:6px;max-height:600px;overflow-y:auto}.error-entry.svelte-agwk2a{margin-bottom:12px;padding:12px;border-left:3px solid #f56565;background:#f565651a}.error-entry.error.svelte-agwk2a{border-left-color:#f56565}.error-entry.warning.svelte-agwk2a{border-left-color:#ed8936}.error-timestamp.svelte-agwk2a{color:#888;font-size:11px;margin-bottom:4px}.response-code.svelte-agwk2a{display:inline-block;padding:2px 8px;border-radius:4px;font-weight:700;font-size:12px;margin-right:8px}.response-code-2xx.svelte-agwk2a{background:#c6f6d5;color:#22543d}.response-code-3xx.svelte-agwk2a{background:#fefcbf;color:#744210}.response-code-4xx.svelte-agwk2a{background:#fed7d7;color:#742a2a}.response-code-5xx.svelte-agwk2a{background:#f56565;color:#fff}.response-code-error.svelte-agwk2a{background:#718096;color:#fff}.error-url.svelte-agwk2a{color:#61dafb;word-break:break-all;margin:4px 0}.error-body.svelte-agwk2a{color:#e2e2e2;white-space:pre-wrap;font-size:11px;font-family:Courier New,monospace;margin-top:8px}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#f5f7fa}.dashboard-container.svelte-1y1a8hs{display:flex;height:100vh;overflow:hidden}.sidebar.svelte-1y1a8hs{width:260px;background:#1a202c;color:#fff;display:flex;flex-direction:column;flex-shrink:0}.sidebar-header.svelte-1y1a8hs{padding:24px 20px;border-bottom:1px solid #2d3748}.sidebar-header.svelte-1y1a8hs h2:where(.svelte-1y1a8hs){margin:0;font-size:22px;font-weight:700;color:#fff}.subtitle.svelte-1y1a8hs{font-size:12px;color:#a0aec0;margin-top:4px;display:block}.sidebar-nav.svelte-1y1a8hs{flex:1;padding:20px 10px;display:flex;flex-direction:column;gap:4px}.nav-item.svelte-1y1a8hs{display:flex;align-items:center;gap:12px;padding:12px 16px;background:transparent;border:none;border-radius:8px;color:#cbd5e0;cursor:pointer;transition:all .2s;font-size:14px;font-weight:500;text-align:left}.nav-item.svelte-1y1a8hs:hover{background:#2d3748;color:#fff}.nav-item.active.svelte-1y1a8hs{background:#667eea;color:#fff}.nav-icon.svelte-1y1a8hs{font-size:18px}.nav-label.svelte-1y1a8hs{flex:1}.error-badge.svelte-1y1a8hs{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#f56565;color:#fff;border-radius:10px;font-size:11px;font-weight:700;line-height:1}.sidebar-footer.svelte-1y1a8hs{padding:20px;border-top:1px solid #2d3748}.user-info.svelte-1y1a8hs{display:flex;align-items:center;gap:12px;margin-bottom:16px}.user-avatar.svelte-1y1a8hs{width:40px;height:40px;border-radius:50%;background:#667eea;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;color:#fff}.user-details.svelte-1y1a8hs{flex:1;min-width:0}.user-name.svelte-1y1a8hs{font-size:14px;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis}.user-role.svelte-1y1a8hs{font-size:12px;color:#a0aec0}.logout-btn.svelte-1y1a8hs{width:100%;padding:10px;background:transparent;border:1px solid #4a5568;border-radius:6px;color:#e2e8f0;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.logout-btn.svelte-1y1a8hs:hover{background:#2d3748;border-color:#718096}.main-content.svelte-1y1a8hs{flex:1;display:flex;flex-direction:column;overflow:hidden}.content-header.svelte-1y1a8hs{background:#fff;padding:24px 32px;border-bottom:1px solid #e2e8f0}.header-title.svelte-1y1a8hs h1:where(.svelte-1y1a8hs){margin:0 0 4px;font-size:24px;font-weight:700;color:#1a202c}.header-title.svelte-1y1a8hs p:where(.svelte-1y1a8hs){margin:0;font-size:14px;color:#718096}.content-body.svelte-1y1a8hs{flex:1;overflow-y:auto;padding:32px}.card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px;margin-bottom:20px}.card h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#1a202c}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background:#5568d3}.btn-secondary{background:#4299e1;color:#fff}.btn-secondary:hover{background:#3182ce}.btn-danger{background:#f56565;color:#fff}.btn-danger:hover{background:#e53e3e}.btn:disabled{opacity:.6;cursor:not-allowed}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#2d3748}input,select,textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;transition:all .2s}input:focus,select:focus,textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid #e2e8f0}th{background:#f7fafc;font-weight:600;font-size:13px;color:#4a5568;text-transform:uppercase;letter-spacing:.05em}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600}.badge-success{background:#c6f6d5;color:#22543d}.badge-warning{background:#fefcbf;color:#744210}.badge-danger{background:#fed7d7;color:#742a2a}.badge-info{background:#bee3f8;color:#2a4365}.alert{padding:12px 16px;border-radius:6px;margin-bottom:16px;font-size:14px}.alert-success{background:#c6f6d5;color:#22543d;border:1px solid #9ae6b4}.alert-error{background:#fed7d7;color:#742a2a;border:1px solid #fc8181}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.persistent-tab.svelte-1y1a8hs{display:none}.persistent-tab.active.svelte-1y1a8hs{display:block}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.loading-container.svelte-1n46o8q{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#f5f7fa}.spinner.svelte-1n46o8q{width:40px;height:40px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:svelte-1n46o8q-spin 1s linear infinite}.loading-container.svelte-1n46o8q p:where(.svelte-1n46o8q){margin-top:16px;color:#718096;font-size:14px}.access-denied-container.svelte-1n46o8q{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.access-denied-card.svelte-1n46o8q{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:40px;width:100%;max-width:420px;text-align:center}.icon-wrapper.svelte-1n46o8q{display:flex;justify-content:center;margin-bottom:24px}.icon-wrapper.svelte-1n46o8q svg:where(.svelte-1n46o8q){color:#e53e3e}.access-denied-card.svelte-1n46o8q h1:where(.svelte-1n46o8q){font-size:28px;font-weight:700;color:#1a202c;margin:0 0 16px}.access-denied-card.svelte-1n46o8q p:where(.svelte-1n46o8q){color:#718096;font-size:14px;margin:0 0 8px;line-height:1.5}.access-denied-card.svelte-1n46o8q .detail:where(.svelte-1n46o8q){font-size:13px;color:#a0aec0;margin-bottom:24px}.btn.svelte-1n46o8q{padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-logout.svelte-1n46o8q{background:#667eea;color:#fff}.btn-logout.svelte-1n46o8q:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}@keyframes svelte-1n46o8q-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
