:root{--bg: #f4f7f4;--surface: #ffffff;--card: #ffffff;--card2: #f8faf8;--border: #e1e8e2;--shadow: 0 4px 18px rgba(18, 32, 23, .05);--shadow-lg: 0 10px 30px rgba(18, 32, 23, .08);--gold: #b88a14;--gold-dim: #856209;--green: #1b7a43;--green-dim: #11532c;--red: #d93838;--blue: #1a7bb9;--orange: #d97706;--txt: #111d15;--txt2: #3c5243;--txt3: #556f5f;--sidebar-w: 240px;--radius: 10px;--radius-lg: 16px}body.dark{--bg: #0c1610;--surface: #131f18;--card: #1b2b21;--card2: #223429;--border: #2e4a38;--shadow: 0 8px 32px rgba(0, 0, 0, .4);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .6);--gold: #c9a227;--gold-dim: #8a6f1a;--green: #4ecb7a;--green-dim: #2d7a4b;--red: #e05c5c;--blue: #5cb8e0;--orange: #e09a3c;--txt: #ddeee5;--txt2: #8aaa95;--txt3: #8eaa98}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:var(--bg);color:var(--txt);font-family:Karla,sans-serif;font-size:14px;line-height:1.5;overflow:hidden;transition:background .3s ease,color .25s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#root{height:100%;display:flex;flex-direction:column}#app{display:flex;height:100vh;width:100vw;overflow:hidden;position:relative}#sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:100;box-shadow:var(--shadow);transition:transform .25s ease}.sidebar-logo{padding:20px 18px 16px;border-bottom:1px solid var(--border)}.logo-mark{display:flex;align-items:center;gap:10px}.logo-icon{width:38px;height:38px;background:linear-gradient(135deg,#1b7a43,#11532c);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 12px #1b7a4340}.logo-text{font-family:"DM Serif Display",serif;font-size:17px;color:var(--txt);line-height:1.1}.logo-sub{font-size:9.5px;color:var(--txt3);letter-spacing:1.5px;text-transform:uppercase;font-weight:700}.sidebar-section{padding:14px 14px 6px;font-size:9px;letter-spacing:1.8px;text-transform:uppercase;color:var(--txt3);font-weight:800}.nav-item{display:flex;align-items:center;gap:10px;padding:9.5px 14px;margin:2px 8px;border-radius:var(--radius);cursor:pointer;transition:all .18s ease;color:var(--txt2);font-weight:600;font-size:13.5px;position:relative}.nav-item:hover{background:var(--card2);color:var(--green)}.nav-item.active{background:linear-gradient(90deg,#1b7a431f,#1b7a4308);color:var(--green);border:1px solid rgba(27,122,67,.2);font-weight:700}.nav-item.active:before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);width:4px;height:22px;background:var(--green);border-radius:2px}.nav-badge{margin-left:auto;background:var(--red);color:#fff;font-size:10px;padding:2px 7px;border-radius:20px;font-weight:700}.nav-badge.green{background:var(--green)}.sidebar-footer{margin-top:auto;padding:14px 12px;border-top:1px solid var(--border)}.farm-card{background:var(--card2);border-radius:var(--radius);padding:10px 12px;border:1px solid var(--border)}.farm-name{font-size:12.5px;font-weight:700;color:var(--txt)}.farm-meta{font-size:11px;color:var(--txt3);margin-top:2px}.online-dot{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;margin-right:5px;box-shadow:0 0 6px var(--green)}#main{flex:1;display:flex;flex-direction:column;overflow:hidden;height:100%}#topbar{height:56px;min-height:56px;max-height:56px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 20px;gap:16px;box-shadow:0 1px 3px #0000000d;box-sizing:border-box}.topbar-left{display:flex;align-items:center;gap:12px;flex-shrink:0;max-width:280px;min-width:140px}.topbar-center{display:flex;align-items:center;gap:8px;flex:0 1 auto;justify-content:center;min-width:0}.topbar-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.topbar-title-group{display:flex;flex-direction:column;justify-content:center;min-width:0;overflow:hidden}.topbar-date-badge{font-size:11px;color:var(--txt3);background:var(--card2);border:1px solid var(--border);padding:0 10px;height:32px;border-radius:8px;display:flex;align-items:center;gap:5px;white-space:nowrap;font-weight:600}.topbar-empresa-select{width:auto;min-width:170px;max-width:250px;font-size:12px;font-weight:700;padding:4px 28px 4px 12px;height:32px;border-radius:8px;background:var(--card2);border:1px solid var(--border);color:var(--txt);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%231b7a43' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;flex-shrink:0;box-shadow:0 1px 3px #0000000a;transition:all .15s ease;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.topbar-empresa-select:hover{border-color:var(--green);box-shadow:0 2px 6px #1b7a4326}.mode-text-short{display:none}.mode-text-full{display:inline}.modal-card{box-sizing:border-box;max-width:100%;overflow-x:hidden}.form-group{min-width:0;max-width:100%}.form-input,select.form-input{box-sizing:border-box;max-width:100%;text-overflow:ellipsis}.flex-between-responsive{display:flex;justify-content:space-between;align-items:center}.flex-right-responsive{text-align:right}.page-title{font-family:"DM Serif Display",serif;font-size:17px;color:var(--txt);line-height:1.2;margin:0;white-space:nowrap}.page-subtitle{font-size:11px;color:var(--txt3);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}#content{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px;scroll-behavior:smooth}@media (max-width: 1400px){.topbar-date-badge{display:none!important}}@media (max-width: 1200px){.mode-text-full{display:none!important}.mode-text-short{display:inline!important}.topbar-btn-label,.theme-toggle-label{display:none!important}.topbar-empresa-select{max-width:180px!important}.user-name-label{max-width:100px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;display:inline-block!important}}@media (max-width: 1024px){#topbar{padding:0 12px!important;gap:8px!important}.topbar-empresa-select{max-width:140px!important;min-width:120px!important;font-size:11px!important}}@media (max-width: 768px){#topbar{height:auto!important;min-height:54px!important;max-height:none!important;padding:10px 12px!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important}.topbar-left{flex-direction:column!important;align-items:stretch!important;gap:8px!important;min-width:0!important}.topbar-center{width:100%!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:8px!important}.topbar-title-group{display:flex;justify-content:space-between;align-items:center}.page-title{font-size:18px!important}.topbar-date{display:none!important}.topbar-mode-switcher{width:100%;justify-content:center}.topbar-empresa-select{width:100%!important;max-width:none!important;height:36px!important}.topbar-right{width:100%!important;justify-content:space-between!important;overflow-x:auto;padding-bottom:2px}.flex-between-responsive{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.flex-right-responsive{text-align:left!important}}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:calc(62px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface);border-top:1px solid var(--border);z-index:1000;justify-content:space-around;align-items:center;padding-left:6px;padding-right:6px;box-shadow:0 -4px 20px #00000014}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;height:100%;color:var(--txt3);font-size:10.5px;gap:2px;cursor:pointer;transition:color .15s,transform .1s;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.bottom-nav-item:active{transform:scale(.94)}.bottom-nav-item.active{color:var(--green);font-weight:800}.bottom-nav-icon{font-size:19px}@media (max-width: 768px){#sidebar{display:none}.bottom-nav{display:flex}#content{padding:14px 12px calc(80px + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch}.grid-2,.grid-3,.grid-65{grid-template-columns:1fr!important;gap:12px!important}.kpi-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.kpi-card{padding:14px!important}.kpi-value{font-size:24px!important}.modal-overlay{align-items:flex-end!important;padding:0!important}.modal-card{border-radius:20px 20px 0 0!important;max-height:88vh!important;padding:20px 16px!important;box-shadow:0 -10px 40px #0000004d!important;animation:slideUpSheet .25s cubic-bezier(.16,1,.3,1)!important;border-bottom:none!important}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.btn{min-height:44px;font-size:13.5px}.btn:active{transform:scale(.97)}.form-input,select.form-input{min-height:44px;font-size:14px!important}}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:18px;box-shadow:var(--shadow)}.card-title{font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--txt3);margin-bottom:16px;display:flex;align-items:center;justify-content:space-between}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.kpi-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px;position:relative;overflow:hidden;box-shadow:var(--shadow);transition:transform .18s,border-color .18s,box-shadow .18s}.kpi-card:hover{transform:translateY(-2px);border-color:var(--green);box-shadow:var(--shadow-lg)}.kpi-card:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent, var(--green))}.kpi-label{font-size:10.5px;color:var(--txt3);text-transform:uppercase;letter-spacing:1.2px;font-weight:800}.kpi-value{font-family:"DM Serif Display",serif;font-size:32px;color:var(--txt);margin:6px 0 4px;line-height:1}.kpi-trend{font-size:11.5px;display:flex;align-items:center;gap:4px;font-weight:600}.kpi-trend.up{color:var(--green)}.kpi-trend.down{color:var(--red)}.kpi-icon{position:absolute;right:18px;top:16px;font-size:28px;opacity:.2}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.grid-65{display:grid;grid-template-columns:3fr 2fr;gap:16px;margin-bottom:22px}.tbl-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px}table{width:100%;border-collapse:collapse;font-size:11.5px}thead th{background:var(--card2);color:var(--txt3);font-size:9.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:6px 8px;text-align:center;border-bottom:1px solid var(--border);border-right:1px solid var(--border);white-space:nowrap}thead th:last-child{border-right:none}tbody tr{border-bottom:1px solid var(--border);transition:background .12s}tbody tr:hover{background:#1b7a4308}tbody td{padding:5px 6px;color:var(--txt);text-align:center;border-right:1px solid var(--border)}tbody td:last-child{border-right:none}.td-mono{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--green);font-weight:600}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:12px;font-size:10px;font-weight:700}.badge-green{background:#1b7a431f;color:var(--green)}.badge-red{background:#d938381f;color:var(--red)}.badge-gold{background:#b88a141f;color:var(--gold)}.badge-blue{background:#1a7bb91f;color:var(--blue)}.badge-orange{background:#d977061f;color:var(--orange)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8.5px 18px;border-radius:8px;font-family:Karla,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease;border:none;outline:none}.btn-primary{background:var(--green);color:#fff;box-shadow:0 4px 14px #1b7a4340}.btn-primary:hover{background:var(--green-dim);box-shadow:0 6px 18px #1b7a4359}.btn-outline{background:transparent;color:var(--txt2);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--green);color:var(--green);background:#1b7a430d}.btn-danger{background:#d938381a;color:var(--red);border:1px solid rgba(217,56,56,.2)}.btn-sm{padding:5.5px 12px;font-size:12px}.btn-xs{padding:2px 4px!important;font-size:9.5px!important;min-width:22px!important;height:22px!important;border-radius:4px!important;gap:3px!important}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c1610a6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px}.modal-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:640px;max-height:90vh;overflow-y:auto;padding:26px;box-shadow:var(--shadow-lg)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:14px}.modal-title{font-family:"DM Serif Display",serif;font-size:21px;color:var(--txt)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:18px}.form-group{display:flex;flex-direction:column;gap:5px}.form-label{font-size:11px;font-weight:800;color:var(--txt3);text-transform:uppercase;letter-spacing:.8px}.form-input{background:var(--card2);border:1px solid var(--border);color:var(--txt);padding:9px 13px;border-radius:8px;font-size:13px;outline:none;transition:border-color .15s}.form-input:focus{border-color:var(--green)}.toast-msg{position:fixed;bottom:85px;right:24px;background:var(--surface);border:1px solid var(--green);color:var(--txt);padding:12px 22px;border-radius:10px;font-weight:700;z-index:10005;box-shadow:var(--shadow-lg);animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.mobile-card-feed{display:none;flex-direction:column;gap:12px}.desktop-table-only{display:table;width:100%}.mobile-animal-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px;box-shadow:var(--shadow);transition:transform .15s ease,border-color .15s ease}.mobile-animal-card:active{border-color:var(--green)}@media (max-width: 768px){.desktop-table-only{display:none!important}.mobile-card-feed{display:flex!important}.form-grid{grid-template-columns:1fr}}
