@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);body,html{overflow-x:hidden}body{font-feature-settings:"cv02","cv03","cv04","cv11";background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;margin:0}code{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#e2e8f04d}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1)}:focus{outline:2px solid #667eea80;outline-offset:2px}::selection{background:#667eea33;color:#1e293b}.layout{background-color:#f5f7fa;display:flex;flex-direction:column;min-height:100vh}.header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;color:#fff;padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:1rem 2rem}.logo{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.user-info{align-items:flex-end;display:flex;flex-direction:column;font-size:.9rem}.user-name{color:#fff;font-weight:600}.user-role{color:#fffc;font-size:.8rem}.layout-body{display:flex;flex:1 1;margin:0 auto;max-width:1400px;width:100%}.sidebar{background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;min-height:calc(100vh - 80px);position:-webkit-sticky;position:sticky;top:80px;width:280px}.sidebar-nav{flex:1 1;padding:2rem 0}.sidebar-link{align-items:center;border-left:3px solid #0000;color:#64748b;display:flex;padding:1rem 2rem;text-decoration:none;transition:all .2s ease}.sidebar-link:hover{background-color:#f8fafc;color:#475569}.sidebar-link.active{background-color:#f1f5f9;border-left-color:#3b82f6;color:#3b82f6;font-weight:600}.sidebar-icon{font-size:1.2rem;margin-right:1rem;text-align:center;width:24px}.sidebar-text{font-size:.95rem}.sidebar-footer{border-top:1px solid #e2e8f0;padding:1.5rem 2rem}.subscription-status{align-items:center;display:flex;gap:.75rem}.status-indicator{border-radius:50%;height:8px;width:8px}.status-indicator,.status-indicator.active{background-color:#10b981}.status-indicator.trial{background-color:#f59e0b}.status-indicator.expired{background-color:#ef4444}.status-text{font-size:.85rem}.status-title{color:#374151;font-weight:600}.status-subtitle{color:#6b7280;font-size:.8rem}.main-content{background-color:#f5f7fa;flex:1 1;min-height:calc(100vh - 80px);padding:2rem}@media (max-width:1024px){.layout-body{flex-direction:column}.sidebar{min-height:auto;position:static;width:100%}.sidebar-nav{display:flex;overflow-x:auto;padding:1rem 0}.sidebar-link{border-bottom:3px solid #0000;border-left:none;flex-direction:column;min-width:80px;padding:1rem .5rem;text-align:center}.sidebar-link.active{border-bottom-color:#3b82f6;border-left:none}.sidebar-icon{margin-bottom:.25rem;margin-right:0}.sidebar-text{font-size:.8rem}.sidebar-footer{display:none}.main-content{padding:1rem}}@media (max-width:768px){.header-content{flex-direction:column;gap:1rem;padding:1rem}.sidebar-text{display:none}.sidebar-link{min-width:60px}}.loading-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:2rem}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#007bff}.loading-spinner--small .spinner{border-width:2px;height:20px;width:20px}.loading-spinner--medium .spinner{border-width:3px;height:40px;width:40px}.loading-spinner--large .spinner{border-width:4px;height:60px;width:60px}.loading-message{color:#666;font-size:.9rem;margin-top:1rem;text-align:center}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-page{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:2rem}.loading-spinner-large{text-align:center}.loading-spinner-large .spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:60px;margin:0 auto 1rem;width:60px}.loading-spinner-large p{color:#666;font-size:1rem;margin:0}.loading-component{align-items:center;display:flex;justify-content:center;min-height:100px;padding:1rem}.loading-spinner-small .spinner{animation:spin 1s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:24px;width:24px}.loading-feature{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:2rem}.loading-spinner-medium{text-align:center}.loading-spinner-medium .spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;margin:0 auto 1rem;width:40px}.loading-spinner-medium p{color:#666;font-size:.9rem;margin:0}.loading-chart{align-items:center;display:flex;justify-content:center;min-height:300px;padding:1rem}.chart-skeleton{align-items:end;display:flex;gap:8px;height:200px;max-width:400px;width:100%}.skeleton-bar{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px;flex:1 1}.skeleton-bar:first-child{height:60%}.skeleton-bar:nth-child(2){height:80%}.skeleton-bar:nth-child(3){height:40%}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:768px){.loading-page{min-height:40vh;padding:1rem}.loading-spinner-large .spinner{height:48px;width:48px}.loading-feature{min-height:150px;padding:1.5rem}}.bundle-performance-monitor{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;max-height:80vh;overflow:hidden;position:fixed;right:20px;top:20px;width:600px;z-index:10000}.monitor-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;padding:16px}.monitor-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.monitor-actions{display:flex;gap:8px}.monitor-actions button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.monitor-actions button:hover{background:#f0f0f0}.export-btn{border-color:#007bff;color:#007bff}.clear-btn{border-color:#dc3545;color:#dc3545}.close-btn{color:#666;font-size:18px;font-weight:700;padding:4px 8px}.monitor-tabs{background:#f8f9fa;border-bottom:1px solid #ddd;display:flex}.monitor-tabs button{background:#0000;border:none;color:#666;cursor:pointer;flex:1 1;font-size:13px;padding:12px;transition:all .2s}.monitor-tabs button:hover{background:#e9ecef}.monitor-tabs button.active{background:#fff;border-bottom:2px solid #007bff;color:#007bff}.monitor-content{max-height:60vh;overflow-y:auto;padding:16px}.metrics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:24px}.metric-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:16px}.metric-card h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.vitals{display:flex;flex-direction:column;gap:8px}.vital{justify-content:space-between}.vital-name{font-weight:500}.vital-value{font-weight:600}.chunk-stats,.route-stats{display:flex;flex-direction:column;gap:8px}.recent-metrics{margin-top:24px}.recent-metrics h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.metrics-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.metric-item{grid-gap:12px;align-items:center;background:#f8f9fa;border-radius:4px;display:grid;gap:12px;grid-template-columns:1fr auto auto;padding:8px}.metric-name{color:#333;font-weight:500}.metric-value{color:#007bff;font-weight:600}.metric-time{color:#666;font-size:12px}.route-summary{margin-bottom:24px}.summary-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:16px}.summary-card h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.preloaded-routes h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.routes-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.route-item{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;justify-content:space-between;padding:8px 12px}.route-path{color:#333;font-family:monospace}.route-status{color:#28a745;font-weight:600}.bundle-summary{margin-bottom:24px}.chunks-list h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.chunks{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.chunk-item{grid-gap:12px;align-items:center;background:#f8f9fa;border-radius:4px;display:grid;gap:12px;grid-template-columns:1fr auto auto;padding:8px 12px}.chunk-name{color:#333;font-family:monospace}.chunk-size{color:#007bff;font-weight:600}.chunk-time{color:#666}.feature-summary{margin-bottom:24px}.features-lists{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.feature-list h4{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.feature-item{align-items:center;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:4px;padding:6px 8px}.feature-item.loaded{background:#d4edda;color:#155724}.feature-item.loading{background:#fff3cd;color:#856404}.feature-item.registered{background:#f8f9fa;color:#666}.status{font-weight:700}@media (max-width:768px){.bundle-performance-monitor{left:20px;right:20px;width:calc(100vw - 40px)}.features-lists,.metrics-grid,.stats{grid-template-columns:1fr}}.code-splitting-test-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;padding:2rem}.test-header{margin-bottom:3rem;text-align:center}.test-header h1{color:#333;margin-bottom:1rem}.test-header p{color:#666;font-size:1.1rem;margin-bottom:2rem}.performance-toggle{align-items:center;display:flex;flex-direction:column;gap:.5rem}.performance-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s}.performance-btn:hover{background:#0056b3}.performance-toggle small{color:#666;font-size:.9rem}.test-sections{grid-gap:2rem;display:grid;gap:2rem}.test-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.test-section h2{border-bottom:2px solid #007bff;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem}.test-section h3{color:#555;margin:1.5rem 0 1rem}.bundle-stats,.performance-stats,.route-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat{align-items:center;background:#f8f9fa;border-left:4px solid #007bff;border-radius:6px;display:flex;justify-content:space-between;padding:1rem}.stat span:first-child{color:#666;font-weight:500}.stat span:last-child{color:#333;font-weight:600}.feature-actions,.route-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.feature-actions button,.route-actions button{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.75rem 1rem;transition:background-color .2s}.feature-actions button:hover,.route-actions button:hover{background:#218838}.loaded-features ul,.preloaded-routes ul{list-style:none;margin:0;padding:0}.loaded-features li,.preloaded-routes li{background:#e9ecef;border-radius:4px;color:#495057;font-family:monospace;margin-bottom:.5rem;padding:.5rem 1rem}.lazy-component-test{border:2px dashed #dee2e6;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.hover-load-btn{background:#ffc107;border:none;border-radius:6px;color:#212529;cursor:pointer;font-size:1rem;font-weight:500;padding:1rem 2rem;transition:all .2s}.hover-load-btn:hover{background:#e0a800;transform:translateY(-2px)}.scroll-spacer{background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:#666;font-size:1.1rem;height:300px;margin-bottom:2rem}.intersection-target,.scroll-spacer{align-items:center;border-radius:6px;display:flex;justify-content:center}.intersection-target{background:#f8f9fa;border:2px solid #007bff;min-height:200px}.lazy-component{background:#fff;border-radius:6px;box-shadow:0 2px 8px #0000001a;margin-top:1rem;padding:2rem}.vitals-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.vital{align-items:center;background:#f8f9fa;border-radius:6px;border-top:4px solid #28a745;display:flex;flex-direction:column;padding:1rem}.vital-name{color:#666;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.vital-value{color:#333;font-size:1.2rem;font-weight:700}@media (max-width:768px){.code-splitting-test-page{padding:1rem}.bundle-stats,.performance-stats,.route-stats{grid-template-columns:1fr}.feature-actions,.route-actions{flex-direction:column}.feature-actions button,.route-actions button{width:100%}.vitals-grid{grid-template-columns:repeat(2,1fr)}.scroll-spacer{font-size:1rem;height:200px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{min-height:100vh}.app-loading{background-color:#f5f5f5}.app-initializing,.app-loading{align-items:center;display:flex;justify-content:center;min-height:100vh}.app-initializing{background:#f8f9fa}.loading-spinner{color:#666;font-size:18px}.loading-container{min-height:200px}.loading-container,.unauthorized-page{align-items:center;display:flex;justify-content:center}.unauthorized-page{flex-direction:column;min-height:50vh;padding:40px;text-align:center}.unauthorized-page h2{color:#d32f2f;margin-bottom:16px}.unauthorized-page p{color:#666;margin-bottom:24px}.unauthorized-page button{background:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px}.unauthorized-page button:hover{background:#1565c0}
/*# sourceMappingURL=main.097e9198.css.map*/