.app{min-height:100vh;display:flex;flex-direction:column}.content{display:flex;align-items:stretch;gap:0;flex:1}.page{flex:1;padding:1rem;min-width:0}@media(max-width:768px){.page{padding:.75rem}}button.svelte-1elxaub{padding:.6rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s,opacity .2s;font-size:1rem}button.svelte-1elxaub:disabled{opacity:.6;cursor:not-allowed}.header.svelte-1elxaub{position:sticky;top:0;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-bottom:1px solid rgba(0,0,0,.1);background:var(--bg, #fff);z-index:10}.nav.svelte-1elxaub{display:flex;align-items:center;gap:1rem;flex:1}.spacer.svelte-1elxaub{flex:1}.icon-btn.svelte-1elxaub{background:transparent;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:.4rem}.nav-links.svelte-1elxaub{display:flex;align-items:center;gap:1rem}.mobile-toggle.svelte-1elxaub{display:none}@media(max-width:768px){.nav-links.svelte-1elxaub{display:none}.mobile-toggle.svelte-1elxaub{display:inline-flex}}.sidebar.svelte-129hoe0{position:fixed;top:52px;left:0;width:240px;height:calc(100vh - 52px);bottom:0;background:#fff;border-right:1px solid rgba(0,0,0,.08);transform:translate(-100%);transition:transform .2s ease;z-index:1000;overflow-y:auto;box-shadow:2px 0 5px #0000000d}.sidebar.open.svelte-129hoe0{transform:translate(0)}.nav-group.svelte-129hoe0{display:flex;flex-direction:column;padding:1rem;gap:.5rem}@media(min-width:769px){.sidebar.svelte-129hoe0{display:none}}.footer.svelte-jz8lnl{padding:.75rem 1rem;border-top:1px solid rgba(0,0,0,.08);margin-top:auto;text-align:center}.info-banner{position:fixed;bottom:0;left:0;right:0;background:#2c3e50;color:#fff;padding:1rem;z-index:1000;box-shadow:0 -2px 10px #0000001a}.info-banner .container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:1rem}.info-banner p{margin:0;font-size:.9rem}.info-banner .btn-primary{background:#3498db;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;white-space:nowrap}.info-banner .btn-primary:hover{background:#2980b9}@media(max-width:600px){.info-banner .container{flex-direction:column;text-align:center}}h1.svelte-110obhz{font-size:1.8rem;margin-bottom:2rem;color:#333}.card.svelte-110obhz{background:var(--bg-card);padding:1.5rem;border-radius:var(--radius)}.error.svelte-110obhz{color:#d32f2f;background:#ffebee;padding:.75rem;border-radius:8px;font-size:.9rem;margin-bottom:1rem}form.svelte-110obhz{display:grid;gap:1rem}label.svelte-110obhz{display:grid;gap:.35rem;font-size:.95rem;color:var(--label-color);text-transform:uppercase;letter-spacing:.025em}input.svelte-110obhz{padding:.6rem .7rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;color:var(--text-color)}button.svelte-110obhz{padding:.6rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s,opacity .2s;font-size:1rem}button.svelte-110obhz:disabled{opacity:.6;cursor:not-allowed}.btn-primary.svelte-110obhz{background-color:var(--primary-color);color:#fff}.btn-primary.svelte-110obhz:hover:not(:disabled){background-color:var(--primary-hover)}input.svelte-110obhz::-webkit-outer-spin-button,input.svelte-110obhz::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.auth.svelte-110obhz{max-width:420px;margin:4rem auto;padding:1rem}.auth.svelte-110obhz h1:where(.svelte-110obhz){margin-top:0}.auth.svelte-110obhz p:where(.svelte-110obhz){margin-top:1.5rem;text-align:center;color:var(--label-color)}h1.svelte-ys9719{font-size:1.8rem;margin-bottom:2rem;color:#333}.card.svelte-ys9719{background:var(--bg-card);padding:1.5rem;border-radius:var(--radius)}.error.svelte-ys9719{color:#d32f2f;background:#ffebee;padding:.75rem;border-radius:8px;font-size:.9rem;margin-bottom:1rem}form.svelte-ys9719{display:grid;gap:1rem}label.svelte-ys9719{display:grid;gap:.35rem;font-size:.95rem;color:var(--label-color);text-transform:uppercase;letter-spacing:.025em}input.svelte-ys9719{padding:.6rem .7rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;color:var(--text-color)}button.svelte-ys9719{padding:.6rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s,opacity .2s;font-size:1rem}button.svelte-ys9719:disabled{opacity:.6;cursor:not-allowed}.btn-primary.svelte-ys9719{background-color:var(--primary-color);color:#fff}.btn-primary.svelte-ys9719:hover:not(:disabled){background-color:var(--primary-hover)}input.svelte-ys9719::-webkit-outer-spin-button,input.svelte-ys9719::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.auth.svelte-ys9719{max-width:420px;margin:4rem auto;padding:1rem}.auth.svelte-ys9719 h1:where(.svelte-ys9719){margin-top:0}.auth.svelte-ys9719 p:where(.svelte-ys9719){margin-top:1.5rem;text-align:center;color:var(--label-color)}.card.svelte-1ppvaqd{background:var(--bg-card);padding:1.5rem;border-radius:var(--radius)}button.svelte-1ppvaqd{padding:.6rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s,opacity .2s;font-size:1rem}button.svelte-1ppvaqd:disabled{opacity:.6;cursor:not-allowed}.btn-primary.svelte-1ppvaqd{background-color:var(--primary-color);color:#fff}.btn-primary.svelte-1ppvaqd:hover:not(:disabled){background-color:var(--primary-hover)}.btn-danger.svelte-1ppvaqd{background-color:var(--danger-color);color:#fff}.btn-danger.svelte-1ppvaqd:hover:not(:disabled){background-color:var(--danger-hover)}.card.svelte-1ppvaqd{border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.5rem;align-items:center;justify-content:center;text-align:center}.value.svelte-1ppvaqd{font-size:2rem;font-weight:700;color:#2d3748}.label.svelte-1ppvaqd{color:#718096;font-size:.9rem;text-transform:uppercase;letter-spacing:.025em;margin-bottom:.5rem}.row.svelte-1ppvaqd{display:flex;gap:.75rem;justify-content:center;width:100%;margin-top:.5rem}button.svelte-1ppvaqd{padding:.6rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s,opacity .2s}.btn-primary.svelte-1ppvaqd{background-color:#38a169;color:#fff}.btn-primary.svelte-1ppvaqd:hover:not(:disabled){background-color:#2f855a}.btn-primary.svelte-1ppvaqd:disabled{background-color:#cbd5e0;color:#718096;cursor:not-allowed}.btn-danger.svelte-1ppvaqd{background-color:#e53e3e;color:#fff}.btn-danger.svelte-1ppvaqd:hover:not(:disabled){background-color:#c53030}.chart-container.svelte-f7m716{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000000d;display:flex;flex-direction:column;gap:1rem;height:100%}.chart-header.svelte-f7m716{display:flex;justify-content:space-between;align-items:center}.chart-label.svelte-f7m716{font-size:.85rem;color:#718096;text-transform:uppercase;letter-spacing:.025em;font-weight:600}.chart-current-value.svelte-f7m716{font-size:1.1rem;font-weight:700;color:#2d3748}svg.svelte-f7m716{width:100%;overflow:visible}.data-point.svelte-f7m716 circle:where(.svelte-f7m716){transition:r .2s,stroke-width .2s;cursor:pointer}.data-point.svelte-f7m716:hover circle:where(.svelte-f7m716){r:12px;stroke-width:5px}.point-label.svelte-f7m716{font-size:20px;font-weight:600;fill:#4a5568;pointer-events:none}.x-axis-label.svelte-f7m716{font-size:16px;fill:#a0aec0;font-weight:500}.no-data.svelte-f7m716{display:flex;align-items:center;justify-content:center;height:100px;color:#718096;font-size:.9rem;border:1px dashed #e2e8f0;border-radius:8px}h1.svelte-1thed0a{font-size:1.8rem;margin-bottom:2rem;color:#333}.error.svelte-1thed0a{color:#d32f2f;background:#ffebee;padding:.75rem;border-radius:8px;font-size:.9rem;margin-bottom:1rem}.dash.svelte-1thed0a{padding:2rem;max-width:1200px;margin:0 auto}.dash.svelte-1thed0a h1:where(.svelte-1thed0a){margin-bottom:2rem;font-size:1.8rem;color:#333}.stats-grid.svelte-1thed0a{display:flex;flex-direction:column;gap:2rem}.metrics-grid.svelte-1thed0a{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.metric-card.span-2.svelte-1thed0a{grid-column:span 2}.charts-grid.svelte-1thed0a{display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem}.metric-card.svelte-1thed0a{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:18px 14px 20px 9px #0000000d;display:flex;align-items:center;gap:1rem;transition:transform .2s;justify-content:center}.metric-card.svelte-1thed0a:hover{transform:translateY(-2px)}.metric-card.highlight.svelte-1thed0a{background:linear-gradient(135deg,#fdfbfb,#ebedee);border:1px solid #e0e0e0}.metric-icon.svelte-1thed0a{background:#f0f4f8;color:#3182ce;padding:.8rem;border-radius:10px;display:flex;align-items:center;justify-content:center}.highlight.svelte-1thed0a .metric-icon:where(.svelte-1thed0a){background:#ebf8ff;color:#2b6cb0}.metric-info.svelte-1thed0a{display:flex;flex-direction:column}.metric-info.svelte-1thed0a .label:where(.svelte-1thed0a){font-size:.85rem;color:#718096;text-transform:uppercase;letter-spacing:.025em;margin-bottom:.2rem}.metric-info.svelte-1thed0a .value:where(.svelte-1thed0a){font-size:1.25rem;font-weight:700;color:#2d3748}.loading.svelte-1thed0a,.error.svelte-1thed0a{padding:2rem;text-align:center;background:#f7fafc;border-radius:12px;color:#4a5568}.error.svelte-1thed0a{color:#e53e3e;background:#fff5f5}@media(max-width:768px){.dash.svelte-1thed0a{padding:1rem}.metrics-grid.svelte-1thed0a{grid-template-columns:1fr}.metric-card.span-2.svelte-1thed0a{grid-column:span 1}}h1.svelte-15j4tnx{font-size:1.8rem;margin-bottom:2rem;color:#333}.card.svelte-15j4tnx{background:var(--bg-card);padding:1.5rem;border-radius:var(--radius)}.error.svelte-15j4tnx{color:#d32f2f;background:#ffebee;padding:.75rem;border-radius:8px;font-size:.9rem;margin-bottom:1rem}.message.svelte-15j4tnx{padding:.75rem;border-radius:8px;background:#e8f5e9;color:#2e7d32;font-size:.9rem;margin-bottom:1rem}.message.error.svelte-15j4tnx{background:#ffebee;color:#d32f2f}label.svelte-15j4tnx{display:grid;gap:.35rem;font-size:.95rem;color:var(--label-color);text-transform:uppercase;letter-spacing:.025em}input.svelte-15j4tnx{padding:.6rem .7rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;color:var(--text-color)}button.svelte-15j4tnx{padding:.6rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s,opacity .2s;font-size:1rem}button.svelte-15j4tnx:disabled{opacity:.6;cursor:not-allowed}.btn-primary.svelte-15j4tnx{background-color:var(--primary-color);color:#fff}.btn-primary.svelte-15j4tnx:hover:not(:disabled){background-color:var(--primary-hover)}.input-group.svelte-15j4tnx{display:flex;align-items:stretch;gap:.5rem}.btn-step.svelte-15j4tnx{width:40px;padding:0;display:flex;align-items:center;justify-content:center;font-size:1.2rem;border:1px solid var(--border-color);background:#fff}.btn-step.svelte-15j4tnx:active:not(:disabled){background:#0000000d}input.svelte-15j4tnx::-webkit-outer-spin-button,input.svelte-15j4tnx::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number].svelte-15j4tnx{-moz-appearance:textfield}.settings.svelte-15j4tnx{padding:2rem;max-width:640px;margin:0 auto}.settings.svelte-15j4tnx h1:where(.svelte-15j4tnx){margin-top:0}.form.svelte-15j4tnx h3:where(.svelte-15j4tnx){margin:1.5rem 0 .5rem;font-size:1.1rem;color:var(--text-color)}input.svelte-15j4tnx{text-align:center}h1.svelte-1tbsjcy{font-size:1.8rem;margin-bottom:2rem;color:#333}.card.svelte-1tbsjcy{background:var(--bg-card);padding:1.5rem;border-radius:var(--radius)}.dash.svelte-1tbsjcy{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 160px);padding:1rem}.stats.svelte-1tbsjcy h1:where(.svelte-1tbsjcy){text-align:center;margin-top:0;margin-bottom:1.5rem}.stats.svelte-1tbsjcy{width:100%;max-width:400px}:root{--primary-color: #38a169;--primary-hover: #2f855a;--danger-color: #e53e3e;--danger-hover: #c53030;--text-color: #2d3748;--label-color: #718096;--border-color: rgba(0, 0, 0, .1);--bg-card: white;--shadow: 0 4px 6px rgba(0, 0, 0, .05);--radius: 12px}.app.svelte-1n46o8q{min-height:100vh;display:flex;flex-direction:column}.content.svelte-1n46o8q{display:flex;align-items:stretch;gap:0;flex:1}.page.svelte-1n46o8q{flex:1;padding:1rem;min-width:0}@media(max-width:768px){.page.svelte-1n46o8q{padding:.75rem}}
