:root{font-family:Inter,Arial,sans-serif;color:#173b3f;background:#f4f7f6;--teal:#0f5b62;--green:#0f766e;--pale:#e8f4f2;--line:#d5e0de}
*{box-sizing:border-box}body{margin:0}header{background:var(--teal);color:#fff;padding:15px 4%;display:flex;align-items:center;gap:24px;position:sticky;top:0;z-index:5;box-shadow:0 2px 10px #0002}.brand{margin-right:auto}.brand h1{margin:0;font-size:26px}.brand small{letter-spacing:1.7px}nav{display:flex;gap:6px;flex-wrap:wrap}button,.fileBtn{border:0;border-radius:9px;padding:10px 13px;font-weight:700;cursor:pointer;background:#fff;color:var(--teal)}.menu{display:none}.primary{background:var(--green);color:#fff;font-size:16px;margin-top:15px;padding:12px 18px}main{max-width:1180px;margin:24px auto;padding:0 16px}.tab{display:none}.tab.active{display:block}h2{margin-bottom:4px}.titleRow{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap}.titleRow p{margin-top:3px;color:#607b7d}.card{background:#fff;border-radius:13px;padding:17px;margin:14px 0;box-shadow:0 2px 10px #0000000c;border:1px solid #edf1f0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px}label{font-weight:700;font-size:14px}input,select{width:100%;margin-top:6px;padding:11px;border:1px solid #b9ccca;border-radius:8px;font-size:16px;background:#fff}.compact{min-width:160px}.groupTitle{font-weight:800;color:var(--teal);margin:18px 0 5px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:11px;margin:15px 0}.kpis>div{background:#fff;border:1px solid #dce8e6;border-radius:11px;padding:14px;box-shadow:0 1px 5px #00000008}.kpis span{display:block;color:#607b7d;font-size:12px;font-weight:700;text-transform:uppercase}.kpis b{display:block;font-size:21px;margin-top:5px;color:#173b3f}.kpis.small>div{background:var(--pale)}.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.summary div{padding:9px;border-bottom:1px solid #eee}.tablewrap{overflow:auto;background:#fff;border-radius:10px;border:1px solid #e1e8e7}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:9px;border-bottom:1px solid #e5e5e5;text-align:right;white-space:nowrap}th:first-child,td:first-child{text-align:left;position:sticky;left:0;background:inherit}th{background:#dcecf3;color:#173b3f;position:sticky;top:0}.msg{font-weight:700;color:var(--green)}.backup{margin-top:20px}.fileBtn{display:inline-block;margin-left:8px}.fileBtn input{display:none}
@media(max-width:760px){header{align-items:center;flex-wrap:wrap}.menu{display:block}nav{display:none;width:100%;grid-template-columns:1fr 1fr}nav.open{display:grid}nav button{width:100%}.kpis{grid-template-columns:1fr 1fr}main{margin-top:15px}.titleRow{align-items:flex-start}}
@media(max-width:430px){.kpis{grid-template-columns:1fr}.grid{grid-template-columns:1fr}}
.authscreen{position:fixed;inset:0;background:#f4f7f6;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}
.authscreen.hidden{display:none}.authbox{width:min(420px,100%);background:#fff;padding:28px;border-radius:16px;box-shadow:0 10px 35px #0002}
.authbox label{display:block;margin:14px 0}.brandAuth h1{margin:0;color:var(--teal)}.brandAuth small{letter-spacing:1.5px;color:#607b7d}
.userBadge{font-size:12px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.quickActions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 18px}.quick{min-height:88px;text-align:left;padding:18px;border-radius:15px;color:#fff;background:#0f5b62;box-shadow:0 4px 12px #0001}.quick:nth-child(2){background:#27766e}.quick b{display:block;font-size:20px}.quick span{display:block;margin-top:5px;opacity:.88}@media(max-width:520px){.quick{min-height:82px;padding:14px}.quick b{font-size:17px}header{position:static}main{padding:0 10px}.primary{width:100%;min-height:48px}}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.muted{color:#607b7d}.rowline{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;margin:8px 0;align-items:end}.danger{color:#a00;font-weight:800}.warn{color:#9a6500;font-weight:800}.good{color:#087443;font-weight:800}.pill{padding:3px 8px;border-radius:12px;background:#eef4f3}.checkline{display:flex;align-items:center;gap:8px}.checkline input,label input[type=checkbox]{width:auto;margin-right:6px}@media(max-width:600px){.rowline{grid-template-columns:1fr 1fr}.rowline button{grid-column:2}}

.dangerBtn{background:#fff0f0;color:#9b1c1c;border:1px solid #e7b7b7}.rowline{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;align-items:end;margin:8px 0}.rowline button{height:42px}@media(max-width:760px){.rowline{grid-template-columns:1fr 1fr}.rowline button{width:100%}}

/* v8.2 Milk Log housekeeping: keep Date/Customer/Session readable without sticky-column overlap */
#milkLog table{min-width:1500px}
#milkLog th:first-child,#milkLog td:first-child{position:static;min-width:105px}
#milkLog th:nth-child(2),#milkLog td:nth-child(2){min-width:130px;text-align:left}
#milkLog th:nth-child(3),#milkLog td:nth-child(3){min-width:70px;text-align:center}

/* v8.3 dashboard */
.dash-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.dash-toolbar label{min-width:145px}.dash-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.dash-tab{border:1px solid #b4c9ca;background:#f5fafa;color:#154c50;padding:10px 14px;border-radius:8px;cursor:pointer}.dash-tab.active{background:#0f5b62;color:white;border-color:#0f5b62}.dash-panel[hidden],label[hidden]{display:none!important}.dash-chart{display:grid;gap:8px}.dash-chart-row{display:grid;grid-template-columns:95px minmax(60px,1fr) 90px;align-items:center;gap:10px;font-size:13px}.dash-chart-track{background:#e6eeee;border-radius:4px;height:14px;overflow:hidden}.dash-chart-track>div{height:100%;background:#16878b}.dash-chart-row strong{text-align:right}.dash-panel .tablewrap{overflow:auto}.dash-panel table{min-width:620px}@media(max-width:600px){.dash-tab{flex:1 1 42%}.dash-chart-row{grid-template-columns:78px minmax(40px,1fr) 78px;font-size:11px}}

.cow-export-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.cow-export-actions button{max-width:100%;white-space:normal}#aExcelRange{margin-top:12px}#aExcelRange[hidden],#aExportExcel[hidden]{display:none!important}
