@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/Vazirmatn-Regular.woff2") format("woff2")}
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:700 900;font-display:swap;src:url("fonts/Vazirmatn-Bold.woff2") format("woff2")}
:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,sans-serif;color:#182b26;background:#f3f6f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:15px}header{background:#145344;color:white;padding:22px max(16px,calc((100% - 1200px)/2));display:flex;justify-content:space-between;align-items:center;gap:12px}h1{font-size:23px;margin:0 0 6px}header p{margin:0;color:#d5e8e0;font-size:13px}header span{font-size:11px;background:#ffffff1c;padding:8px 10px;border-radius:20px;white-space:nowrap}main{max-width:1200px;margin:20px auto;padding:0 14px}.panel{background:white;border:1px solid #e1e9e4;border-radius:15px;padding:18px;margin-bottom:16px;box-shadow:0 3px 12px #163b2b08}.panel h2{font-size:17px;margin:0 0 16px}.layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:16px}.grid{display:grid;gap:12px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}label{display:block;font-size:13px;font-weight:650;margin-bottom:12px}input:not([type=radio]):not([type=file]){display:block;width:100%;margin-top:7px;border:1px solid #cad8d0;border-radius:10px;padding:12px;background:#fff;color:#152b24;font:inherit;min-height:44px}input:focus{outline:2px solid #5fa18a;outline-offset:1px}.hint{color:#64766d;font-size:12px;line-height:1.8}.inline{display:inline;font-weight:400}.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.actions.vertical{display:grid}.actions button,.fileBtn{font:inherit;font-size:13px;font-weight:700;border:0;border-radius:10px;padding:12px 15px;background:#17664f;color:white;cursor:pointer;text-align:center}.actions button.secondary,.fileBtn.secondary{background:#edf4f0;color:#205c47}.actions button.danger{background:#a33a35;color:white}.seg{display:flex;gap:5px}.seg button{border:1px solid #d4e0d9;background:#f4f7f5;color:#344b40;border-radius:10px;padding:10px 12px;font:inherit;white-space:nowrap}.seg button.selected{background:#e2f2e9;border-color:#4a9878;color:#12573f}.diff{grid-template-columns:auto minmax(0,1fr);align-items:center;margin-bottom:14px}.categories label{margin:0}.categories input{position:absolute;opacity:0}.categories span{display:block;text-align:center;padding:12px 5px;border:1px solid #d6e2da;border-radius:10px}.categories input:checked+span{background:#e2f3e9;border-color:#318366;color:#12553f}.calc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;background:#f4f8f5;padding:12px;border-radius:12px;margin-top:8px}.calc div,.stats div{padding:8px}.calc small,.stats small{display:block;color:#6b7d73;font-size:11px;margin-bottom:5px}.calc b{font-size:16px}.error{color:#a12f2b;font-size:12px;min-height:16px}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stats div{background:#f5f8f6;border-radius:11px}.stats strong{font-size:19px}.summaryCategory{display:flex;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid #edf1ee;font-size:12px}.sectionHead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.sectionHead h2{margin:0}.pill{background:#edf4f0;color:#245f49;border-radius:18px;padding:5px 10px;font-size:12px}.tableWrap{overflow-x:auto;margin-top:12px}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th,td{text-align:right;padding:10px 9px;border-bottom:1px solid #e9efeb}th{background:#f4f7f5;color:#42564b;font-weight:700}td button{border:0;border-radius:7px;padding:6px 8px;margin:2px;cursor:pointer;font:inherit;background:#eaf3ee;color:#205b45}td button.del{background:#fae9e7;color:#9a322d}.hidden{display:none!important}footer{padding:16px;text-align:center;color:#697a70;font-size:11px}.reportTable{margin:12px 0}.reportTable td,.reportTable th{white-space:normal}.reportHeading{margin:15px 0 6px;font-weight:bold}.reportNote{font-size:12px;color:#52675b}@media(max-width:760px){header{padding:17px 14px;align-items:flex-start;flex-direction:column}h1{font-size:21px}main{margin:12px auto;padding:0 10px}.panel{padding:14px;border-radius:13px}.layout{grid-template-columns:1fr}.two{grid-template-columns:1fr 1fr}.actions button,.fileBtn{flex:1}.sectionHead .actions{width:100%}.sectionHead .actions button{min-width:135px}.stats strong{font-size:17px}}@media(max-width:390px){.two{grid-template-columns:1fr}.diff{grid-template-columns:1fr}.seg button{flex:1}.three{gap:6px}.categories span{font-size:12px}}@media print{body{background:white;font-size:10px}header,main>section:not(:last-child),main>details,.layout,footer,.actions,.hint,.stickyBar,.toast,.notice{display:none!important}main{max-width:none;margin:0;padding:0}.panel{box-shadow:none;border:0;padding:0}.panel h2{font-size:16px}.tableWrap{overflow:visible}table{font-size:9px}th,td{padding:5px}.reportTable{page-break-inside:avoid}}
.subheading{font-size:14px;margin:20px 0 6px;color:#205b45}.allHeading{border-top:1px solid #e7eee9;padding-top:18px}.machinePalletGroup{border:1px solid #dfe9e3;border-radius:12px;padding:12px;margin:12px 0;background:#fcfdfc}.machineGroupHead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.groupEmpty{margin:12px 0 2px;padding:10px;background:#f5f8f6;border-radius:8px}.machinePalletGroup .tableWrap{margin-top:10px}
/* Version 3: mobile-first readable layout, loss cards and history */
.liveBirdStats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.liveMini{display:flex;flex-direction:column;gap:5px;background:#f5f8f6;border-radius:10px;padding:10px}.liveMini span,.lossCard small{font-size:11px;color:#64766d}.liveMini b{font-size:14px}.totalRow th{background:#e6f2eb;color:#164d39;font-weight:800;border-top:2px solid #6eaa8f}.lossSection{margin-top:14px}.lossSection h3{font-size:15px;margin:10px 0}.lossGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lossCard{display:flex;flex-direction:column;gap:5px;padding:12px;border-radius:11px;background:#f4f8f5;border:1px solid #e1ebe4}.lossCard strong{font-size:20px;color:#145344}.lossCard span{font-size:11px;color:#64766d}.historyItem{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #e7eee9}.historyItem>div:first-child{display:flex;flex-direction:column;gap:5px}.historyItem small{font-size:12px;color:#64766d}.modal{position:fixed;inset:0;z-index:1000;background:#0c2019a6;display:flex;align-items:center;justify-content:center;padding:16px}.modalCard{background:#fff;border-radius:16px;padding:20px;width:min(100%,420px);max-height:90dvh;overflow:auto;box-shadow:0 20px 60px #0003}.modalCard.wide{width:min(100%,900px)}.modalCard h2{font-size:18px;margin:0 0 12px}.modalCard p{font-size:13px;line-height:1.9;color:#52675b}.modalCard .actions button{width:100%}.modalCard.wide .actions button{width:auto}.modalCard #historyReportContent{max-height:65dvh;overflow:auto}.modalCard .reportTable{font-size:10px}
@media(min-width:761px){.layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr)}}
@media(max-width:760px){body{font-size:15px}header{padding:14px 12px;gap:8px}header h1{font-size:20px}header p{font-size:12px}main{padding:0 8px;margin:8px auto}.panel{padding:12px;margin-bottom:10px;border-radius:12px}.panel h2{font-size:16px;margin-bottom:12px}.layout{grid-template-columns:1fr;gap:10px}.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}label{font-size:12px;margin-bottom:8px}input:not([type=radio]):not([type=file]){padding:10px;font-size:16px;min-height:42px}.actions{gap:7px}.actions button,.fileBtn{padding:11px 10px;font-size:12px}.stats{gap:6px}.stats div{padding:8px}.stats strong{font-size:16px}.summaryCategory{padding:8px 0;font-size:12px}.liveBirdStats{gap:6px}.liveMini{padding:9px}.liveMini b{font-size:13px}.lossGrid{grid-template-columns:1fr}.lossCard{display:grid;grid-template-columns:1fr auto;align-items:center;padding:10px}.lossCard span{grid-column:1/-1}.sectionHead{align-items:flex-start}.sectionHead .actions{width:100%}.sectionHead .actions button{flex:1;min-width:0}.historyItem{align-items:flex-start}.historyItem .actions{width:100%}.historyItem .actions button{flex:1}.tableWrap{margin-top:8px}.machinePalletGroup{padding:9px;margin:9px 0}.subheading{margin-top:14px}.modal{padding:10px}.modalCard{padding:16px;max-height:92dvh}}
@media(max-width:370px){.two{grid-template-columns:1fr}.liveBirdStats{grid-template-columns:1fr 1fr}.calc b{font-size:14px}.seg button{padding:9px 8px}}
@media(orientation:landscape) and (max-height:600px) and (min-width:500px){.layout{grid-template-columns:minmax(0,1.3fr) minmax(260px,.8fr)}header{padding-top:10px;padding-bottom:10px}main{margin-top:10px}.panel{padding:12px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}}
.transportSection{margin:14px 0 10px;padding:12px;border:1px solid #dfe9e2;border-radius:14px;background:#fbfdfb}.transportSection .sectionHead{align-items:center;gap:12px}.transportSection h3{font-size:15px;margin:0 0 4px}.transportSection .hint{margin:3px 0 8px}.transportSection .addBtn{white-space:nowrap;flex-shrink:0}.transportVehicle{border:1px solid #dce7df;background:#fff;border-radius:12px;padding:12px;margin:10px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}.transportHead{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px}.transportHead b{font-size:14px;color:#145344}.transportVehicle label{margin:0}.transportVehicle input{width:100%;box-sizing:border-box}.smallBtn{padding:6px 10px!important;font-size:12px!important}.vehicleLoss{grid-column:1/-1;background:#f3f8f4;border-radius:8px;padding:8px 10px;font-size:12px;color:#315d49}.vehicleLoss b{font-size:14px}.warnText{color:#a43e2f!important}.machineHeaderStats{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.machineGroupHead{align-items:flex-start!important;gap:8px;flex-wrap:wrap}.roadLossList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.roadLossRow{display:grid;grid-template-columns:1fr auto;gap:5px 10px;padding:10px;border:1px solid #e1ebe4;border-radius:10px;background:#fff}.roadLossRow span{font-weight:700}.roadLossRow b{color:#145344}.roadLossRow small{grid-column:1/-1;color:#64766d;font-size:11px}@media(max-width:600px){.transportSection{padding:10px}.transportSection .sectionHead{align-items:stretch;flex-direction:column}.transportSection .addBtn{width:100%}.transportVehicle{grid-template-columns:1fr;gap:7px;padding:10px}.transportHead,.vehicleLoss{grid-column:1}.machineHeaderStats{justify-content:flex-start}.machineHeaderStats .pill{font-size:10px;padding:4px 7px}.roadLossList{grid-template-columns:1fr}}
/* Version 5: optional distribution trucks and entry tabs */
.distributionSetup{margin:14px 0;padding:12px;border:1px solid #d5e8df;border-radius:13px;background:#f8fcf9}.toggleLabel{display:flex;align-items:center;gap:9px;font-size:14px;margin:0}.toggleLabel input{width:20px;height:20px;accent-color:#17664f}.distributionSetup .sectionHead{align-items:center}.distributionSetup .hint{margin:4px 0}.distributionVehicleSetup{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;padding:10px 0;border-top:1px solid #e3eee7}.distributionVehicleSetup label{margin:0}.entryTabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}.entryTab{border:1px solid #d5e3da;border-radius:10px;background:#f3f7f4;color:#275944;padding:10px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.entryTab.active{background:#145344;color:white;border-color:#145344}.entryTab:disabled{opacity:.5}.distributionRemaining{margin:0 0 12px;padding:12px;border-radius:10px;background:#f1f8f3;border:1px solid #d8e9dc;color:#235c42;font-size:13px;line-height:1.9}.distributionRemaining strong{color:#145344}.distributionGroups{margin-top:18px;border-top:2px dashed #d7e6dc;padding-top:10px}@media(max-width:600px){.distributionSetup{padding:10px}.distributionSetup .sectionHead{align-items:flex-start}.toggleLabel{font-size:13px}.entryTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.entryTab{padding:10px 7px;font-size:12px}}

/* Version 7: refined iOS-inspired visual design */
:root{
  --ink:#172d26;--muted:#667970;--green:#17664f;--green-deep:#124b3d;
  --green-soft:#e7f4ed;--line:#e0e9e3;--surface:#fff;--canvas:#f6f8f7;
  font-family:"B Nazanin","BNazanin","B Nazanin Regular","Vazirmatn",Tahoma,sans-serif;
  color:var(--ink);background:var(--canvas)
}
body{background:var(--canvas);color:var(--ink);line-height:1.65}
header{background:linear-gradient(125deg,#124b3d 0%,#1b7358 100%);padding-top:23px;padding-bottom:23px;box-shadow:0 5px 20px #123f2d12}
header h1{letter-spacing:0;font-weight:800}
header span{border:1px solid #ffffff25;background:#ffffff17;backdrop-filter:blur(8px)}
main{max-width:1160px}
.panel{border:1px solid #e3ebe6;border-radius:18px;padding:20px;box-shadow:0 5px 22px #153d2b0a;transition:box-shadow .18s ease,border-color .18s ease}
.panel h2{font-weight:800;color:#183e31;letter-spacing:0}
.subheading{color:var(--green);font-weight:800}
input:not([type=radio]):not([type=file]){border-color:#d4e1d9;border-radius:12px;background:#fff;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
input:not([type=radio]):not([type=file]):focus{outline:none;border-color:#3b9673;box-shadow:0 0 0 3px #2b8a681c;background:#fefffe}
button,.fileBtn{transition:transform .12s ease,filter .15s ease,box-shadow .15s ease}
button:active,.fileBtn:active{transform:scale(.985)}
.actions button,.fileBtn{border-radius:12px;box-shadow:0 2px 5px #123f2d0b}
.actions button:not(.secondary):not(.danger){background:linear-gradient(135deg,#1b765a,#155941)}
.actions button.secondary,.fileBtn.secondary{background:#edf4f0;border:1px solid #e0ebe4;color:#205b45}
.actions button.danger{background:linear-gradient(135deg,#b74640,#96352f)}
.pill{border:1px solid #e0ece5;background:#eef6f1;color:#215e48;border-radius:999px;padding:5px 10px;font-weight:700}
.stats div,.liveMini{background:linear-gradient(145deg,#f7faf8,#f0f6f2);border:1px solid #e5eee8;border-radius:14px}
.stats strong{color:#164f3d;font-weight:800}
.calc{background:#f4f8f5;border:1px solid #e4eee7;border-radius:15px;gap:9px}
.calc div{background:#fff;border:1px solid #e8efe9;border-radius:11px;padding:10px}
.calc b{color:#174f3e;font-variant-numeric:tabular-nums}
.summaryCategory{border-bottom-color:#edf2ee}
.transportSection,.distributionSetup{border-radius:16px;border-color:#e0eae3;background:linear-gradient(145deg,#fbfdfb,#f6faf7);padding:14px}
.transportVehicle,.machinePalletGroup{border-radius:15px;border-color:#e0e9e3;box-shadow:0 2px 8px #173d2b06}
.vehicleLoss{border-radius:11px;background:#edf6f0}
.entryTabs{gap:8px}
.entryTab{border:1px solid #dce8e0;border-radius:12px;background:#f3f7f4;color:#315b48;box-shadow:0 1px 3px #183e2c06;min-height:42px}
.entryTab.active{background:linear-gradient(135deg,#17664f,#124b3d);border-color:#17664f;color:#fff;box-shadow:0 4px 10px #17664f25}
.distributionRemaining{border-radius:14px;border-color:#d9eadf;background:#eef8f1}
.categories span{border-radius:12px;transition:background .15s ease,border-color .15s ease}
.categories input:checked+span{background:#e4f4ea;border-color:#65a98a;color:#14553e;box-shadow:inset 0 0 0 1px #65a98a30}
.machinePalletGroup{background:#fff;padding:14px}
.machineGroupHead{gap:10px}
.machineHeaderStats .pill{font-variant-numeric:tabular-nums}
.totalRow th{background:#e8f5ed;color:#164d39}
.tableWrap{border-radius:12px}
table{border-spacing:0;overflow:hidden}
th{background:#f2f7f4;color:#315445}
td button{border-radius:9px;padding:7px 10px}
.distributionGroups{border-top-color:#d9e7de}
/* Compact iOS-like toggle */
.toggleLabel{display:inline-flex;align-items:center;gap:10px;cursor:pointer;min-height:34px}
.toggleLabel input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.toggleSwitch{position:relative;display:inline-block;flex:0 0 46px;width:46px;height:28px;border-radius:999px;background:#d7ded9;box-shadow:inset 0 0 0 1px #cbd5ce;transition:background .2s ease,box-shadow .2s ease}
.toggleSwitch:after{content:"";position:absolute;top:3px;right:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0002;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.toggleLabel input:checked+.toggleSwitch{background:#32c56a;box-shadow:inset 0 0 0 1px #2ab35d}
.toggleLabel input:checked+.toggleSwitch:after{transform:translateX(-18px)}
.toggleLabel input:focus-visible+.toggleSwitch{outline:3px solid #348d6c50;outline-offset:2px}
.toggleText{font-weight:750;color:#214b39}
.error{font-weight:700}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:760px){
 header{padding:17px 14px;border-radius:0 0 18px 18px}
 main{padding:0 9px;margin:12px auto}
 .panel{padding:14px;border-radius:16px}
 .panel h2{font-size:17px}
 .distributionSetup,.transportSection{padding:11px;border-radius:14px}
 .machinePalletGroup{padding:11px;border-radius:13px}
 .entryTab{min-height:44px}
 .actions button,.fileBtn{min-height:42px}
}

.fatalError{margin:10px;padding:14px;border:1px solid #c66;border-radius:12px;background:#fff2f2;color:#8a2020;line-height:1.8;font-size:14px}

@media print{body.printingReport>*:not(#historyReportModal){display:none!important}body.printingReport #historyReportModal{display:block!important;position:static!important;inset:auto!important;background:#fff!important;padding:0!important;overflow:visible!important}body.printingReport #historyReportModal .modalCard{display:block!important;width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;padding:0!important;border:0!important;box-shadow:none!important;border-radius:0!important}body.printingReport #historyReportModal .sectionHead,body.printingReport #historyReportModal .actions{display:none!important}body.printingReport #historyReportContent{display:block!important;max-height:none!important;overflow:visible!important}body.printingReport #historyReportTitle{font-size:18px!important;margin-bottom:12px!important}body.printingReport .reportTable{page-break-inside:avoid!important}body.printingReport table{white-space:normal!important}}


/* ================= Version 10 ================= */
html{-webkit-text-size-adjust:100%;scroll-padding-top:10px}
body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
input,button{-webkit-tap-highlight-color:transparent}
/* numbers read left-to-right inside inputs */
input[inputmode=numeric],input[inputmode=decimal]{direction:ltr;text-align:right}
input[inputmode=numeric]::placeholder,input[inputmode=decimal]::placeholder{direction:rtl}
/* neutral field label (not bound to an input) */
.fieldLabel{display:block;font-size:13px;font-weight:650;margin:2px 0 8px}
label>.hint{display:block;font-weight:400;margin-top:5px}
/* secondary buttons that live outside .actions */
.addBtn,.smallBtn{font:inherit;font-size:13px;font-weight:700;border:1px solid #e0ebe4;border-radius:12px;padding:10px 14px;background:#edf4f0;color:#205b45;cursor:pointer;min-height:40px;box-shadow:0 2px 5px #123f2d0b}
.addBtn.danger{background:#fbeceb;border-color:#f1d4d1;color:#a33a35}
.addBtn:disabled,.actions button:disabled{opacity:.5;cursor:not-allowed}
.smallBtn{padding:6px 12px!important;min-height:34px;color:#a33a35;background:#fbeceb;border-color:#f1d4d1}
/* collapsible settings panel */
details.panel{padding:0}
details.panel>summary{list-style:none;cursor:pointer;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:18px;user-select:none}
details.panel>summary::-webkit-details-marker{display:none}
details.panel>summary::after{content:"";flex:0 0 10px;width:10px;height:10px;border-left:2.5px solid #5d7b6d;border-bottom:2.5px solid #5d7b6d;transform:rotate(-45deg);transition:transform .2s ease;margin-inline-start:6px}
details.panel[open]>summary::after{transform:rotate(-135deg);margin-top:6px}
details.panel>summary h2{margin:0}
.sumTitle{display:flex;flex-direction:column;gap:3px;min-width:0}
.settingsBody{padding:0 20px 20px;border-top:1px solid #edf2ee}
.settingsBody>.settingsGrid{margin-top:16px}
.settingsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}
.settingsGrid .full{grid-column:1/-1}
.settingsBody .hint{margin:4px 0 8px}
.settingsBody>.actions{margin-top:16px}
/* notices, toast, sticky summary */
.notice{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 14px;padding:12px 14px;border-radius:14px;background:#fff7e6;border:1px solid #f1dfb2;color:#7a5410;font-size:13px;line-height:1.8}
.notice button{font:inherit;font-size:12px;font-weight:700;border:0;border-radius:10px;padding:9px 13px;background:#b8801c;color:#fff;cursor:pointer}
.toast{position:fixed;left:50%;bottom:calc(88px + env(safe-area-inset-bottom));transform:translate(-50%,16px);background:#17332a;color:#fff;padding:11px 18px;border-radius:999px;font-size:13px;font-weight:700;box-shadow:0 8px 24px #0003;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:1200;max-width:90vw;text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}
.stickyBar{position:fixed;inset-inline:0;bottom:0;z-index:60;display:grid;grid-template-columns:1.2fr 1.2fr .8fr;gap:6px;padding:9px max(12px,env(safe-area-inset-left)) calc(9px + env(safe-area-inset-bottom));background:#ffffffee;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid #dce8e0;box-shadow:0 -6px 20px #123f2d12}
.stickyBar div{display:flex;flex-direction:column;gap:1px;min-width:0;padding:0 6px}
.stickyBar small{font-size:10.5px;color:#64766d}
.stickyBar b{font-size:13.5px;color:#145344;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stickyBar div+div{border-inline-start:1px solid #e3ece6}
@media(min-width:761px){.stickyBar{inset-inline:auto;left:50%;transform:translateX(-50%);width:min(640px,94vw);bottom:12px;border:1px solid #dce8e0;border-radius:18px;padding-bottom:9px}.toast{bottom:90px}}
/* warnings */
.warnPill{background:#fff2d9!important;border-color:#f0d9a2!important;color:#8a5a0b!important}
.distributionRemaining .warnText,.summaryCategory .warnText{font-weight:800}
/* modal / report polish */
.modalCard.wide>.sectionHead{margin-bottom:10px;position:sticky;top:-20px;background:#fff;padding:4px 0 8px;z-index:2}
.modalCard.wide .actions{position:sticky;bottom:-20px;background:#fff;padding:10px 0 4px;border-top:1px solid #edf2ee}
.reportHeading{color:#145344;font-weight:800}
.reportTable th{font-size:11px}
.machinePalletGroup .pill{white-space:nowrap}
button:focus-visible,.fileBtn:focus-within,summary:focus-visible{outline:3px solid #348d6c66;outline-offset:2px}
@media(max-width:760px){
 details.panel>summary{padding:14px}
 .settingsBody{padding:0 12px 14px}
 .settingsGrid{gap:2px 8px}
 .modalCard.wide{padding:14px}
 .modalCard.wide>.sectionHead{top:-14px}
 .modalCard.wide .actions{bottom:-14px}
 .modalCard.wide .actions button{flex:1 1 140px}
 .historyItem .actions button.danger{flex:0 0 auto}
}
@media(max-width:370px){.settingsGrid{grid-template-columns:1fr}.stickyBar b{font-size:12px}}
@media print{.stickyBar,.toast,.notice{display:none!important}body{padding-bottom:0}}

/* v13: rename pencil, neg toggles */
.nameWrap{display:inline-flex;align-items:center;gap:4px;min-width:0}
.renameBtn{width:auto!important;min-width:0!important;min-height:0!important;flex:0 0 auto!important;padding:2px 8px!important;margin:0 2px!important;border-radius:8px;font-size:13px;line-height:1.5;background:#edf4f0;border:1px solid #d9e7de;color:#205b45;box-shadow:none}
.renameBtn:disabled{opacity:.4}
.entryTabs .renameBtn{align-self:center;grid-column:auto}
.setupName{margin:6px 0 2px;color:#145344;font-size:14px}
.negSetup{margin:14px 0}
.negRow{margin:12px 0 4px;padding:9px 12px;border:1px solid #e0ebe4;border-radius:12px;background:#f6faf7}
.negRow .toggleText{font-weight:700}

/* v13: loss chart */
.lossChartBox{margin-top:18px;padding:14px;border:1px solid #dfe9e2;border-radius:14px;background:#fbfdfb}
.lossChartBox.inReport{margin-top:22px}
.lcHead{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.lcHead h3{margin:0;font-size:16px;color:#145344}
.lcTabs{display:inline-flex;gap:4px;padding:3px;background:#edf4f0;border-radius:11px}
.lcTabs button{min-height:34px;padding:4px 16px;border:0;border-radius:9px;background:transparent;color:#205b45;font-weight:700;box-shadow:none}
.lcTabs button.on{background:#17664f;color:#fff}
.lcNav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 6px}
.lcNav b{font-size:14px;text-align:center;flex:1}
.lcNav button{min-height:34px;padding:4px 10px;font-size:12px;background:#edf4f0;border:1px solid #d9e7de;color:#205b45;border-radius:9px;box-shadow:none;flex:0 0 auto}
.lcLegend{display:flex;gap:16px;font-size:12px;color:#344b40;margin:4px 0 2px}
.lcKey{display:inline-flex;align-items:center;gap:6px}
.lcKey i{display:inline-block;width:11px;height:11px;border-radius:3px}
.lcSvg{display:block;width:100%;height:auto;max-height:300px}
.lcHit{cursor:pointer}
.lcReadout{min-height:22px;margin:4px 0 6px;font-size:12.5px;color:#145344;font-weight:700;text-align:center}
.lcSummary{font-size:12.5px;color:#52675b;line-height:1.9;border-top:1px solid #e6eee9;padding-top:8px}
.lcEmpty{margin:14px 0 4px;text-align:center;color:#64766d;font-size:13px}
@media print{.lossChartBox{display:none!important}}


/* ================= Version 14 ================= */
:root{--topH:56px}
html{scroll-padding-top:calc(var(--topH) + 10px)}
body{overflow-x:hidden}
body[data-view]{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
body[data-view=calc]{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
.panel{scroll-margin-top:calc(var(--topH) + 10px)}

/* fixed compact header */
.topWrap{position:sticky;top:0;z-index:90}
header.appBar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;flex-direction:row;padding:calc(env(safe-area-inset-top) + 6px) 10px 6px;min-height:calc(46px + env(safe-area-inset-top));border-radius:0 0 16px 16px;box-shadow:0 4px 16px #0e3a2b2b}
header.appBar h1{margin:0;font-size:16px;line-height:1.3;text-align:center;font-weight:800;color:#fff;white-space:nowrap}
.menuBtn{justify-self:start;width:40px;height:40px;display:grid;place-items:center;padding:0;border-radius:13px;border:1px solid #ffffff2e;background:#ffffff1c;color:#fff;cursor:pointer}
header.appBar #saveState{justify-self:end;font-size:10px;line-height:1.35;padding:4px 8px;white-space:normal;text-align:center;max-width:100%}
body.loggedIn header.appBar #saveState:not(.err){visibility:hidden}
header.appBar #saveState.err{background:#a33a35;border-color:#a33a35}
.updateBar{display:flex;align-items:center;justify-content:center;text-align:center;padding:9px 14px;background:linear-gradient(135deg,#e08a1e,#c4631a);color:#fff;font-size:13px;font-weight:800;line-height:1.7;cursor:pointer;box-shadow:0 4px 14px #7a420c33}

/* round floating back button */
.backFab{position:fixed;left:12px;top:calc(var(--topH) + 10px);z-index:70;width:42px;height:42px;padding:0;border-radius:50%;display:grid;place-items:center;color:#145344;background:#ffffffc7;border:1px solid #ffffffb3;-webkit-backdrop-filter:blur(16px) saturate(170%);backdrop-filter:blur(16px) saturate(170%);box-shadow:0 6px 20px #0e3a2b30,inset 0 1px 0 #fffc;cursor:pointer}
.backFab:active{transform:scale(.92)}
main>.view:not(#view-home){padding-top:46px}
.view{animation:viewIn .22s ease}
@keyframes viewIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* drawer */
.drawerOverlay{position:fixed;inset:0;z-index:200;background:#06140f80;opacity:0;pointer-events:none;transition:opacity .25s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.drawerOverlay.show{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;bottom:0;right:0;z-index:210;width:min(84vw,330px);display:flex;flex-direction:column;gap:6px;padding:calc(env(safe-area-inset-top) + 18px) 14px calc(env(safe-area-inset-bottom) + 16px);background:var(--surface);border-radius:26px 0 0 26px;box-shadow:-14px 0 44px #0b2a2044;transform:translateX(105%);transition:transform .3s cubic-bezier(.2,.8,.2,1);visibility:hidden}
.drawer.open{transform:none;visibility:visible}
.drawerHead{display:flex;align-items:center;gap:12px;padding:6px 6px 14px;border-bottom:1px solid var(--line)}
.avatar{flex:0 0 46px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1b8a68,#124b3d)}
.avatar.big{flex-basis:64px;width:64px;height:64px}
.drawerWho{display:flex;flex-direction:column;min-width:0}
.drawerWho b{font-size:15px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.drawerWho small{font-size:11.5px;color:var(--muted);line-height:1.6}
.deviceWarn{margin:6px 0;padding:10px 12px;border-radius:14px;background:#fff2d9;border:1px solid #f0d9a2;color:#8a5a0b;font-size:12.5px;font-weight:700;line-height:1.8}
.deviceWarn.inline{margin:8px 0 4px}
.drawerList{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.drawerList button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 12px;border:0;border-radius:15px;background:transparent;color:var(--ink);font:inherit;font-size:15px;font-weight:700;cursor:pointer;text-align:right}
.drawerList button svg{color:var(--green);flex:0 0 22px}
.drawerList button:active,.drawerList button:hover{background:var(--green-soft)}
.drawerFoot{margin-top:auto}

/* home */
.homeHero{text-align:center;padding:22px 8px 6px}
.homeLogo img{border-radius:20px;box-shadow:0 10px 26px #124b3d40}
.homeHero .hello{margin-top:12px;font-size:22px;font-weight:800;color:var(--green-deep)}
.homeHero p{margin:4px 0 0;color:var(--muted);font-size:13px}
.homeGrid{display:grid;gap:14px;margin-top:20px;grid-template-columns:1fr}
@media(min-width:700px){.homeGrid{grid-template-columns:1fr 1fr}}
.homeCard{position:relative;overflow:hidden;display:flex;align-items:center;gap:16px;width:100%;padding:20px 18px;text-align:right;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:26px;box-shadow:0 12px 32px #153d2b14;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.homeCard:active{transform:scale(.985)}
.homeCard:after{content:"";position:absolute;inset-inline-start:-40px;bottom:-50px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,#1b8a6822,transparent 70%);pointer-events:none}
.homeCard.alt:after{background:radial-gradient(circle,#d98a2426,transparent 70%)}
.homeCard .ico{flex:0 0 66px;width:66px;height:66px;border-radius:22px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1b8a68,#124b3d);box-shadow:0 10px 20px #17664f44}
.homeCard.alt .ico{background:linear-gradient(135deg,#e29a2c,#bb5f1a);box-shadow:0 10px 20px #b8601a44}
.homeCard .txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.homeCard h2{margin:0;font-size:19px;font-weight:800;color:var(--green-deep)}
.homeCard small{font-size:12.5px;line-height:1.8;color:var(--muted)}
.homeCard .chev{color:var(--muted);flex:0 0 20px}
.homeNote{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding:14px 16px;border-radius:20px;background:var(--green-soft);border:1px solid var(--line)}
.homeNote b{display:block;font-size:14px;color:var(--green-deep)}
.homeNote small{display:block;font-size:12px;color:var(--muted);line-height:1.8}
.homeNote button{font:inherit;font-size:13px;font-weight:800;border:0;border-radius:12px;padding:10px 16px;background:linear-gradient(135deg,#1b765a,#155941);color:#fff;cursor:pointer}

/* collapsible panels */
details.panel.collapsible>summary h2{font-size:17px}
.panelBody{padding:0 20px 20px;border-top:1px solid #edf2ee}
.panelBody>*:first-child{margin-top:16px}
@media(max-width:760px){.panelBody{padding:0 12px 14px}}
.endedBox{margin-top:14px;padding:14px;border-radius:16px;background:#fff7e6;border:1px solid #f1dfb2;color:#7a5410}
.endedBox .hint{color:#8a6a2a}
.endPanel{padding:16px}
.endPanel .actions{margin-top:0}
.endPanel .hint{margin:10px 0 0;text-align:center}

/* floating rounded bottom bar */
body .stickyBar{display:none;left:0;right:0;inset-inline:0;margin-inline:auto;width:calc(100% - 24px);max-width:560px;bottom:calc(10px + env(safe-area-inset-bottom));grid-template-columns:.8fr 1fr 1fr 1.25fr;gap:2px;padding:11px 6px;border-radius:30px;transform:none;transform-origin:50% 100%;background:#ffffffd6;border:1px solid #ffffffb8;-webkit-backdrop-filter:blur(20px) saturate(175%);backdrop-filter:blur(20px) saturate(175%);box-shadow:0 14px 38px #0e3a2b33,0 2px 8px #0e3a2b18;transition:transform .3s cubic-bezier(.2,.8,.2,1),padding .3s ease,border-radius .3s ease}
body[data-view=calc] .stickyBar{display:grid}
body .stickyBar.compact{transform:scale(.93);padding:7px 4px;border-radius:24px}
body .stickyBar div{align-items:center;text-align:center;padding:0 4px}
body .stickyBar b{font-size:13px;direction:ltr}
body .stickyBar small{font-size:10px}
body .toast{bottom:calc(112px + env(safe-area-inset-bottom))}

/* account */
.authCard h2,.profileCard h2{margin:0 0 4px}
.authIntro{margin-bottom:12px}
.authTabs{margin:6px 0 14px}
.authTabs button{flex:1;font-weight:800}
.pwWrap{display:block;position:relative;margin-top:7px}
.pwWrap input{margin-top:0!important;padding-inline-end:46px}
.pwWrap .eye{position:absolute;left:6px;top:50%;transform:translateY(-50%);width:36px;height:36px;padding:0;border:0;border-radius:10px;background:transparent;font-size:16px;cursor:pointer;opacity:.7}
.okMsg{color:#1d7a4f!important}
.profileCard{display:flex;align-items:center;gap:14px}
.profileCard .hint{margin:0}

/* admin */
.statGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
@media(min-width:700px){.statGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.statCard{padding:12px;border-radius:16px;background:var(--green-soft);border:1px solid var(--line);text-align:center}
.statCard small{display:block;font-size:11.5px;color:var(--muted)}
.statCard strong{font-size:24px;color:var(--green-deep)}
.userRow{padding:12px;margin-top:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.userRow .userMain{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.userRow .hint{margin:4px 0 0}
.userRow .actions{margin-top:8px}
.userRow .actions button{font:inherit;font-size:12.5px;font-weight:700;border:0;border-radius:10px;padding:9px 12px;background:#17664f;color:#fff;cursor:pointer}
.userRow .actions button.secondary{background:#edf4f0;color:#205c47}
.userRow .actions button.danger{background:#a33a35;color:#fff}

/* settings: theme switch */
.themeSeg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:15px;background:#edf4f0}
.themeSeg button{font:inherit;font-size:14px;font-weight:700;min-height:42px;border:0;border-radius:11px;background:transparent;color:#205b45;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}
.themeSeg button.on{background:#fff;color:#124b3d;box-shadow:0 2px 8px #0e3a2b22}
@media print{.topWrap,.backFab,.drawer,.drawerOverlay{display:none!important}}
html[data-theme=dark] header span{background:#16221e1c}
html[data-theme=dark] .panel{background:#16221e;border:1px solid #2f4036}
html[data-theme=dark] input:not([type=radio]):not([type=file]){border:1px solid #36493e;background:#16221e;color:#cfe8e0}
html[data-theme=dark] .hint{color:#abb8b1}
html[data-theme=dark] .actions button.secondary,html[data-theme=dark] .fileBtn.secondary{background:#192a20;color:#b2e4d3}
html[data-theme=dark] .seg button{border:1px solid #32463a;background:#1b251e;color:#c1d4cb}
html[data-theme=dark] .seg button.selected{background:#163222;color:#b9e8d7}
html[data-theme=dark] .categories span{border:1px solid #314538}
html[data-theme=dark] .categories input:checked+span{background:#153321;color:#bae8d9}
html[data-theme=dark] .calc{background:#18261c}
html[data-theme=dark] .calc small,html[data-theme=dark] .stats small{color:#a7b4ad}
html[data-theme=dark] .error{color:#da9390}
html[data-theme=dark] .stats div{background:#1a251d}
html[data-theme=dark] .summaryCategory{border-bottom:1px solid #2d3a31}
html[data-theme=dark] .pill{background:#192a20;color:#b1e1cf}
html[data-theme=dark] th,html[data-theme=dark] td{border-bottom:1px solid #2d3e32}
html[data-theme=dark] th{background:#1b251e;color:#bccbc3}
html[data-theme=dark] td button{background:#192c21;color:#b3e4d2}
html[data-theme=dark] td button.del{background:#321411;color:#db9592}
html[data-theme=dark] footer{color:#a9b5ae}
html[data-theme=dark] .reportNote{color:#b2c2b9}
html[data-theme=dark] .subheading{color:#b3e4d2}
html[data-theme=dark] .allHeading{border-top:1px solid #2d3f32}
html[data-theme=dark] .machinePalletGroup{border:1px solid #2e4336;background:#172317}
html[data-theme=dark] .groupEmpty{background:#1a251d}
html[data-theme=dark] .liveMini{background:#1a251d}
html[data-theme=dark] .liveMini span,html[data-theme=dark] .lossCard small{color:#abb8b1}
html[data-theme=dark] .totalRow th{background:#182e21;color:#bbe8d8}
html[data-theme=dark] .lossCard{background:#18261c;border:1px solid #2c4233}
html[data-theme=dark] .lossCard strong{color:#bae8dd}
html[data-theme=dark] .lossCard span{color:#abb8b1}
html[data-theme=dark] .historyItem{border-bottom:1px solid #2d3f32}
html[data-theme=dark] .historyItem small{color:#abb8b1}
html[data-theme=dark] .modalCard{background:#16221e}
html[data-theme=dark] .modalCard p{color:#b2c2b9}
html[data-theme=dark] .transportSection{border:1px solid #2e4334;background:#132713}
html[data-theme=dark] .transportVehicle{border:1px solid #2e4434;background:#16221e}
html[data-theme=dark] .transportHead b{color:#bae8dd}
html[data-theme=dark] .vehicleLoss{background:#17281b;color:#b4d8c8}
html[data-theme=dark] .warnText{color:#d9978d!important}
html[data-theme=dark] .roadLossRow{border:1px solid #2c4233;background:#16221e}
html[data-theme=dark] .roadLossRow b{color:#bae8dd}
html[data-theme=dark] .roadLossRow small{color:#abb8b1}
html[data-theme=dark] .distributionSetup{border:1px solid #294b3b;background:#122a18}
html[data-theme=dark] .distributionVehicleSetup{border-top:1px solid #294433}
html[data-theme=dark] .entryTab{border:1px solid #2f4738;background:#19261d;color:#b5dfcd}
html[data-theme=dark] .distributionRemaining{background:#152b1b;border:1px solid #294a31;color:#b3e2cc}
html[data-theme=dark] .distributionRemaining strong{color:#bae8dd}
html[data-theme=dark] .distributionGroups{border-top:2px dashed #2d4836}
html[data-theme=dark] header span{border:1px solid #25373125;background:#16221e17}
html[data-theme=dark] .panel{border:1px solid #2e4035}
html[data-theme=dark] .panel h2{color:#c3e8db}
html[data-theme=dark] input:not([type=radio]):not([type=file]){border-color:#314639;background:#16221e}
html[data-theme=dark] input:not([type=radio]):not([type=file]):focus{background:#0e2a0e}
html[data-theme=dark] .actions button.secondary,html[data-theme=dark] .fileBtn.secondary{background:#192a20;border:1px solid #2c4434;color:#b3e4d2}
html[data-theme=dark] .pill{border:1px solid #2a4535;background:#172b1e;color:#b1e4d1}
html[data-theme=dark] .stats div,html[data-theme=dark] .liveMini{background:linear-gradient(145deg,#17261c,#18291e);border:1px solid #2b4132}
html[data-theme=dark] .stats strong{color:#bbe8da}
html[data-theme=dark] .calc{background:#18261c;border:1px solid #2a4331}
html[data-theme=dark] .calc div{background:#16221e;border:1px solid #2c3f2e}
html[data-theme=dark] .calc b{color:#bae8da}
html[data-theme=dark] .summaryCategory{border-bottom-color:#2b3c2f}
html[data-theme=dark] .transportSection,html[data-theme=dark] .distributionSetup{border-color:#2d4333;background:linear-gradient(145deg,#132713,#16271a)}
html[data-theme=dark] .transportVehicle,html[data-theme=dark] .machinePalletGroup{border-color:#2e4135}
html[data-theme=dark] .vehicleLoss{background:#162c1d}
html[data-theme=dark] .entryTab{border:1px solid #2d4535;background:#19261d;color:#b6d8c8}
html[data-theme=dark] .distributionRemaining{border-color:#294a34;background:#132e1b}
html[data-theme=dark] .categories input:checked+span{background:#143220;color:#b9e8d7}
html[data-theme=dark] .machinePalletGroup{background:#16221e}
html[data-theme=dark] .totalRow th{background:#15301f;color:#bbe8d8}
html[data-theme=dark] th{background:#18281f;color:#bad7cb}
html[data-theme=dark] .distributionGroups{border-top-color:#2d4736}
html[data-theme=dark] .toggleSwitch{background:#262e28}
html[data-theme=dark] .toggleSwitch:after{background:#16221e}
html[data-theme=dark] .toggleText{color:#bde2d2}
html[data-theme=dark] .fatalError{border:1px solid #7f2a2a;background:#2e0f0f;color:#df9e9e}
html[data-theme=dark] .addBtn,html[data-theme=dark] .smallBtn{border:1px solid #2c4434;background:#192a20;color:#b3e4d2}
html[data-theme=dark] .addBtn.danger{background:#311210;border-color:#56221d;color:#d88f8b}
html[data-theme=dark] .smallBtn{color:#d88f8b;background:#311210;border-color:#56221d}
html[data-theme=dark] .settingsBody{border-top:1px solid #2b3c2f}
html[data-theme=dark] .notice{background:#312710;border:1px solid #5f4d20;color:#e3cfab}
html[data-theme=dark] .stickyBar{background:#16221eee;border-top:1px solid #2d4535}
html[data-theme=dark] .stickyBar small{color:#abb8b1}
html[data-theme=dark] .stickyBar b{color:#bae8dd}
html[data-theme=dark] .stickyBar div+div{border-inline-start:1px solid #2c4133}
@media(min-width:761px){html[data-theme=dark] .stickyBar{border:1px solid #2d4535}}
html[data-theme=dark] .warnPill{background:#352912!important;border-color:#645021!important;color:#e2cba7!important}
html[data-theme=dark] .modalCard.wide>.sectionHead{background:#16221e}
html[data-theme=dark] .modalCard.wide .actions{background:#16221e;border-top:1px solid #2b3c2f}
html[data-theme=dark] .reportHeading{color:#bae8dd}
html[data-theme=dark] .renameBtn{background:#192a20;border:1px solid #2d4736;color:#b3e4d2}
html[data-theme=dark] .setupName{color:#bae8dd}
html[data-theme=dark] .negRow{border:1px solid #2c4434;background:#16271a}
html[data-theme=dark] .lossChartBox{border:1px solid #2e4334;background:#132713}
html[data-theme=dark] .lcHead h3{color:#bae8dd}
html[data-theme=dark] .lcTabs{background:#192a20}
html[data-theme=dark] .lcTabs button{color:#b3e4d2}
html[data-theme=dark] .lcNav button{background:#192a20;border:1px solid #2d4736;color:#b3e4d2}
html[data-theme=dark] .lcLegend{color:#c1d4cb}
html[data-theme=dark] .lcReadout{color:#bae8dd}
html[data-theme=dark] .lcSummary{color:#b2c2b9;border-top:1px solid #2c4033}
html[data-theme=dark] .lcEmpty{color:#abb8b1}

/* ================= Dark theme (v14) ================= */
html[data-theme=dark]{color-scheme:dark;--ink:#e3eee8;--muted:#9db3a8;--green:#4cc59a;--green-deep:#a6e6cd;--green-soft:#1a3329;--line:#2a4237;--surface:#16221e;--canvas:#0e1714}
html[data-theme=dark] body{background:var(--canvas);color:var(--ink)}
html[data-theme=dark] header.appBar{background:linear-gradient(125deg,#0d3a2f 0%,#14574a 100%)}
html[data-theme=dark] .toggleSwitch:after{background:#fff}
html[data-theme=dark] .toggleSwitch{background:#2d4036;box-shadow:inset 0 0 0 1px #3a5245}
html[data-theme=dark] .toggleLabel input:checked+.toggleSwitch{background:#2fae62}
html[data-theme=dark] .backFab{background:#16221ed1;border-color:#ffffff22;color:#a6e6cd;box-shadow:0 6px 20px #0008}
html[data-theme=dark] body .stickyBar{background:#16221ed9;border-color:#ffffff1c;box-shadow:0 14px 38px #000a}
html[data-theme=dark] body .stickyBar b{color:#a6e6cd}
html[data-theme=dark] .drawer{box-shadow:-14px 0 44px #000a}
html[data-theme=dark] .deviceWarn{background:#3a2d12;border-color:#5c4719;color:#f1cf8a}
html[data-theme=dark] .endedBox{background:#33290f;border-color:#5a4719;color:#efd08c}
html[data-theme=dark] .endedBox .hint{color:#cdb06e}
html[data-theme=dark] .notice{background:#33290f;border-color:#5a4719;color:#efd08c}
html[data-theme=dark] .panelBody,html[data-theme=dark] .settingsBody{border-top-color:#264136}
html[data-theme=dark] .themeSeg{background:#1b2d26}
html[data-theme=dark] .themeSeg button{color:#a6e6cd}
html[data-theme=dark] .themeSeg button.on{background:#2a4a3c;color:#e3eee8;box-shadow:none}
html[data-theme=dark] .userRow .actions button.secondary{background:#1b2d26;color:#a6e6cd}
html[data-theme=dark] .okMsg{color:#6fdca9!important}
html[data-theme=dark] .homeCard,html[data-theme=dark] .homeNote{box-shadow:0 12px 30px #0007}
html[data-theme=dark] .modalCard{background:var(--surface)}
html[data-theme=dark] .modalCard p{color:var(--muted)}
html[data-theme=dark] .modalCard.wide>.sectionHead,html[data-theme=dark] .modalCard.wide .actions{background:var(--surface)}
html[data-theme=dark] .lcSvg text{fill:#c6d8cf}
html[data-theme=dark] .lcSvg [stroke="#e3ebe6"]{stroke:#2c4237}
html[data-theme=dark] .lcSvg [stroke="#fff"]{stroke:#16221e}
html[data-theme=dark] .error{color:#ee9d99}
html[data-theme=dark] .warnText{color:#f0b96b}
html[data-theme=dark] input::placeholder{color:#6f877b}
html[data-theme=dark] .toast{background:#e3eee8;color:#10231b}
