:root{--bg-primary:#f5f5f5;--bg-card:#fff;--bg-input:#fff;--bg-nav:#1f2937;--text-primary:#1f2937;--text-secondary:#6b7280;--text-nav:#e5e7eb;--border-color:#d1d5db;--shadow-color:#0000001a;--hover-bg:#f3f4f6}[data-theme=dark]{--bg-primary:#111827;--bg-card:#1f2937;--bg-input:#374151;--bg-nav:#0f172a;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-nav:#d1d5db;--border-color:#4b5563;--shadow-color:#0000004d;--hover-bg:#374151}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;background-color:var(--bg-primary);color:#1f2937;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{flex:1 1;margin:0 auto;max-width:1200px;padding:20px}.card{background:#fff;background:var(--bg-card);border-radius:8px;box-shadow:0 2px 4px #0000001a;box-shadow:0 2px 4px var(--shadow-color);color:#1f2937;color:var(--text-primary);margin-bottom:20px;padding:20px}.btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;min-height:44px;padding:10px 20px;transition:all .3s ease}.btn-primary{background-color:#2563eb;color:#fff}.btn-primary:hover{background-color:#1d4ed8}.btn-secondary{background-color:#64748b;color:#fff}.btn-secondary:hover{background-color:#475569}.btn-success{background-color:#16a34a;color:#fff}.btn-success:hover{background-color:#15803d}.btn-danger{background-color:#dc2626;color:#fff}.btn-danger:hover{background-color:#b91c1c}.form-group{margin-bottom:15px}.form-group label{color:#1f2937;color:var(--text-primary);display:block;font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{background-color:#fff;background-color:var(--bg-input);border:1px solid #d1d5db;border:1px solid var(--border-color);border-radius:4px;color:#1f2937;color:var(--text-primary);font-size:14px;padding:10px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.table{border-collapse:collapse;margin-top:20px;width:100%}.table td,.table th{border-bottom:1px solid #d1d5db;border-bottom:1px solid var(--border-color);padding:12px;text-align:left}.table th{color:#1f2937;color:var(--text-primary);font-weight:600}.table tbody tr:hover,.table th{background-color:#f3f4f6;background-color:var(--hover-bg)}.navbar{background-color:#1f2937;background-color:var(--bg-nav);margin-bottom:20px}.navbar-top{align-items:center;display:flex;gap:12px;margin:0 auto;max-width:1400px;padding:10px 20px}.navbar-brand{color:#fff;font-size:18px;font-weight:700;margin-right:auto;text-decoration:none;white-space:nowrap}.navbar-utils{flex-shrink:0;gap:12px}.navbar-links,.navbar-utils{align-items:center;display:flex}.navbar-links{flex-wrap:wrap;gap:4px 14px;margin:0 auto;max-width:1400px;padding:0 20px 10px}.navbar-links a{color:#d1d5db;font-size:.82rem;padding:3px 2px;text-decoration:none;transition:color .2s ease;white-space:nowrap}.navbar-links a:hover{color:#fff}.nav-divider{color:#4b5563;font-size:.75rem;-webkit-user-select:none;user-select:none}.navbar-nav{align-items:center;display:flex;gap:20px;list-style:none}.navbar-nav a{color:#d1d5db;text-decoration:none;transition:color .3s ease}.navbar-nav a.active,.navbar-nav a:hover{color:#fff}.navbar-user{align-items:center;display:flex;gap:10px;margin-left:auto}.navbar-user span{color:#d1d5db}.mobile-menu-toggle{background:none;border:none;color:#fff;cursor:pointer;display:none;font-size:28px;line-height:1;padding:5px}.loading{color:#6b7280;padding:40px;text-align:center}.error{background-color:#fee2e2;color:#991b1b}.error,.success{border-radius:4px;margin-bottom:20px;padding:12px}.success{background-color:#d1fae5;color:#065f46}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;background:var(--bg-card);border-radius:8px;color:#1f2937;color:var(--text-primary);max-height:90vh;max-width:600px;overflow-y:auto;padding:30px;width:90%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h2{color:#1f2937;color:var(--text-primary);margin:0}.modal-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:24px}.modal-close:hover{color:#1f2937}.grid{grid-gap:20px;display:grid;gap:20px;margin-bottom:20px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stats-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#fff;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.stats-card h3{font-size:32px;margin-bottom:5px}.stats-card p{opacity:.9}.stats-card.clickable{cursor:pointer}.stats-card.clickable:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-4px)}.tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:10px;margin-bottom:20px}.tabs button{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-2px;padding:12px 20px;transition:all .3s ease}.tabs button:hover{color:#2563eb}.tabs button.active{border-bottom-color:#2563eb;color:#2563eb}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.stat-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;text-align:center}.stat-card h3{color:#6b7280;font-size:14px;font-weight:500;margin-bottom:10px}.stat-value{color:#1f2937;font-size:28px;font-weight:700;margin:0}.stat-label{color:#9ca3af;font-size:12px;margin-top:5px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:15px}.quick-actions{display:flex;flex-wrap:wrap;gap:10px}.header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.header h1,.header h2{color:#1f2937;margin:0}.card-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.card-header h3{color:#1f2937;color:var(--text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions{display:flex;gap:10px}.card-body{color:#6b7280;color:var(--text-secondary,#4b5563)}.card-body p{margin:8px 0}.card-body .notes{color:#6b7280;font-size:13px}.btn-sm{font-size:12px;padding:6px 12px}.cattle-actions{display:flex;gap:5px}.detail-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.table-container{background:#fff;background:var(--bg-card,#fff);border-radius:8px;box-shadow:0 2px 4px #0000001a;box-shadow:0 2px 4px var(--shadow-color,#0000001a);overflow-x:auto;padding:20px;position:relative}.table-container:after{background:linear-gradient(90deg,#0000,#fff);background:linear-gradient(to right,#0000,var(--bg-card,#fff));content:"";height:100%;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .2s;width:32px}.table-container.is-scrollable:after{opacity:1}.table-container.scrolled-end:after{opacity:0}.table-container table{margin:0}.empty-state{color:#6b7280;padding:60px 20px;text-align:center}.empty-state p{font-size:16px}@media (max-width:768px){.mobile-menu-toggle{display:block;z-index:1001}.navbar-top{flex-wrap:wrap}.navbar-links{background-color:#1f2937;box-shadow:0 4px 6px #0000001a;display:none;flex-direction:column;gap:0;max-height:70vh;overflow-y:auto;padding:0;z-index:1000}.navbar-links.mobile-open{display:flex}.navbar-links a{border-bottom:1px solid #d1d5db;border-bottom:1px solid var(--border-color);display:block;font-size:15px;padding:12px 20px}.navbar-links .nav-divider,.navbar-nav{display:none}.navbar-nav{background-color:#1f2937;box-shadow:0 4px 6px #0000001a;flex-direction:column;gap:15px;left:0;padding:20px;position:absolute;right:0;top:100%;z-index:1000}.navbar-nav.mobile-open{display:flex}.navbar-nav li{text-align:center;width:100%}.navbar-nav a{display:block;font-size:16px;padding:10px}.navbar-user{flex-direction:column;gap:10px;margin-left:0;width:100%}.navbar-user button{max-width:200px;width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.table{font-size:12px;min-width:600px}.table td,.table th{padding:8px 4px;white-space:normal;word-break:break-word}.btn{min-height:44px;padding:12px 20px}.btn-sm{min-height:36px;padding:8px 14px}.cattle-actions{flex-direction:column;gap:4px}.cattle-actions .btn{text-align:center;width:100%}.modal{max-height:85vh;padding:20px;width:95%}.card-grid,.detail-grid,.form-row,.grid-2,.stats-grid{grid-template-columns:1fr}.header{align-items:flex-start;flex-direction:column;gap:10px}.header button{width:100%}.tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.tabs button{flex-shrink:0}.card{padding:15px}.card-actions{flex-direction:column;width:100%}.card-actions .btn{width:100%}.container{padding:15px}.quick-actions{flex-direction:column}.quick-actions .btn{width:100%}.form-group input,.form-group select,.form-group textarea{font-size:16px}.tabs{scroll-snap-type:x mandatory;scrollbar-width:thin}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-thumb{background:#9ca3af;border-radius:4px}.tabs button{font-size:13px;padding:10px 14px;scroll-snap-align:start}.btn:active{opacity:.7;transform:scale(.97)}.table tbody tr:active{background-color:#e5e7eb}}@media (max-width:480px){.container{padding:10px}.stats-card h3{font-size:24px}.stats-card{padding:15px}.card{padding:12px}.modal{border-radius:4px;padding:15px;width:98%}.modal-header h2{font-size:18px}.table{font-size:11px}.btn{font-size:13px}.header h1{font-size:22px}.header h2{font-size:18px}.tabs button{font-size:12px;padding:8px 10px}}.theme-toggle{background:none;border:1px solid #d1d5db;border:1px solid var(--border-color);border-radius:4px;color:#e5e7eb;color:var(--text-nav);cursor:pointer;font-size:1.1rem;line-height:1;padding:4px 8px}.theme-toggle:hover{background:#ffffff1a}@media print{.btn,.mobile-menu-toggle,.modal-overlay,.navbar,.tabs,.theme-toggle{display:none!important}body{background:#fff!important;color:#000!important;font-size:12pt}.container{margin:0;max-width:100%;padding:0}.card{border:1px solid #ccc;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.table,.table td,.table th{border:1px solid #333}.table td,.table th{padding:6px}.table th{background:#eee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}h1,h2,h3{page-break-after:avoid}a{color:#000;text-decoration:none}}.toast-container{display:flex;flex-direction:column;gap:8px;max-width:calc(100vw - 32px);pointer-events:none;position:fixed;right:16px;top:16px;z-index:10000}.toast{align-items:center;animation:toastSlideIn .3s ease;border-radius:8px;box-shadow:0 4px 12px #00000040;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:10px;max-width:420px;min-width:280px;padding:12px 16px;pointer-events:auto}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.toast-success{background:#059669}.toast-error{background:#dc2626}.toast-warning{background:#d97706}.toast-info{background:#2563eb}.toast-icon{flex-shrink:0;font-size:16px;text-align:center;width:20px}.toast-message{flex:1 1;line-height:1.4}.toast-close{background:none;border:none;color:#ffffffb3;cursor:pointer;flex-shrink:0;font-size:18px;min-height:auto;padding:0 4px}.toast-close:hover{color:#fff}.confirm-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:10001}.confirm-dialog{background:#fff;background:var(--bg-card,#fff);border-radius:12px;box-shadow:0 8px 24px #0000004d;color:#1f2937;color:var(--text-primary,#1f2937);max-width:400px;padding:24px;width:90%}.confirm-dialog h3{font-size:18px;margin:0 0 12px}.confirm-dialog p{color:#6b7280;color:var(--text-secondary,#4b5563);line-height:1.5;margin:0 0 20px}.confirm-actions{display:flex;gap:10px;justify-content:flex-end}.ptr-indicator{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;max-height:0;overflow:hidden;padding:12px;text-align:center;transition:all .2s}.ptr-indicator.visible{max-height:50px}
/*# sourceMappingURL=main.dac94ddf.css.map*/