body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.btn,.btnSecondary,.card,.chartCard,.input,.navbar,.statCard,.table td,.table th{transition:all .2s ease}.appRoot{min-height:100vh}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3fff6;color:#0f172a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;margin:0}.navbar{background:#ecfdf5;border-bottom:1px solid #dcfce7;position:sticky;top:0;z-index:10}.navbarInner{align-items:center;display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:1000px;padding:12px 16px}.brand{color:#166534;font-size:18px;font-weight:700;letter-spacing:.2px}.navLinks{display:flex;gap:16px}.navLink{border-radius:8px;color:#166534;font-weight:600;padding:8px 10px;text-decoration:none}.navLink:hover{background:#d1fae5}.pageContainer{margin:0 auto;max-width:1000px;padding:16px}.card{background:#fff;border:1px solid #dcfce7;border-radius:12px;box-shadow:0 4px 18px #10b98114;margin-bottom:16px;padding:16px}.cardTitle{color:#064e3b;font-size:20px;margin:0 0 12px}.formRow{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr auto;margin-bottom:12px}.input{background:#fff;border:1px solid #bbf7d0;border-radius:10px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 12px;width:100%}.input:focus{border-color:#22c55e;box-shadow:0 0 0 4px #22c55e2e}.btn{background:linear-gradient(180deg,#22c55e,#16a34a);border:1px solid #0000;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:10px 14px}.btn:hover{background:linear-gradient(180deg,#16a34a,#15803d);transform:translateY(-1px)}.btn:disabled{background:#86efac;cursor:not-allowed;opacity:.75;transform:none}.btnSecondary{background:#ecfdf5;border:1px solid #bbf7d0;border-radius:10px;color:#14532d;cursor:pointer;font-weight:600;padding:8px 12px}.btnSecondary:hover{background:#d1fae5;transform:translateY(-1px)}.btnSecondary:disabled{background:#bbf7d0;cursor:not-allowed;opacity:.75;transform:none}.errorText{color:#b91c1c;font-weight:500;margin:0 0 12px}.successText{color:#047857;font-weight:600;margin:0 0 12px}.spinner{animation:spin .8s linear infinite;border:2px solid #11182726;border-radius:50%;border-top-color:#111827e6;display:inline-block;height:18px;width:18px}@keyframes spin{to{transform:rotate(1turn)}}.table{border-collapse:collapse;width:100%}.table td,.table th{border:1px solid #bbf7d0;font-size:14px;padding:10px;text-align:left}.table th{background:#dcfce7;color:#064e3b;font-weight:700}.table tbody tr:hover td{background:#f0fdf4}.statsGrid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:8px}.statCard{background:#fff;border:1px solid #dcfce7;border-radius:12px;padding:14px}.statLabel{color:#14532d;font-size:14px;font-weight:600;margin-bottom:8px}.statValue{color:#065f46;font-size:28px;font-weight:800}.chartGrid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.chartCard{background:#fff;border:1px solid #dcfce7;border-radius:12px;padding:14px}.chartSectionTitle{color:#14532d;font-size:14px;font-weight:700;margin-bottom:8px}.chartArea{height:280px;position:relative}@media (max-width:800px){.chartGrid,.statsGrid{grid-template-columns:1fr}.chartArea{height:240px}}
/*# sourceMappingURL=main.99a3d360.css.map*/