@import url('https://fonts.googleapis.com/css2?family=Tiro+Devanagari+Marathi&family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,700&display=swap');
:root{
  --b1:#5D4037;--b2:#795548;--b3:#8D6E63;--b4:#BCAAA4;--b5:#EFEBE9;--b6:#D7CCC8;--b7:#4E342E;--b8:#A1887F;
  --bg:#FAF7F4;--card:#FFFDF9;--text:#3E2723;--textm:#5D4037;--textl:#8D6E63;--brd:#D7CCC8;
  --ibg:#FFFDF9;--ibrd:#BCAAA4;--dbg:#EFEBE9;--dbrd:#8D6E63;
  --obg:#EFEBE9;--obrd:#795548;
  --hi:#FFF8E1;--hibrd:#FFB300;--hitext:#4E3500;
  --shad:0 2px 12px rgba(93,64,55,.10);--r:10px;--rs:6px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--text);font-family:'DM Mono',monospace;font-size:13px;min-height:100vh;padding-bottom:76px;}
.sticky-top{position:sticky;top:0;z-index:100;box-shadow:0 2px 14px rgba(0,0,0,.22);}
header{background:var(--b1);color:#EFEBE9;padding:14px 14px 10px;}
.brand{font-family:'Fraunces',serif;font-size:18px;font-weight:700;line-height:1.2;}
.brand span{color:#FFCCBC;}
.sub{font-family:'Tiro Devanagari Marathi',serif;font-size:11px;opacity:.8;margin-top:2px;}
.ptag{display:inline-block;background:var(--b3);color:#fff;font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;margin-top:4px;}
.prod-bar{background:var(--b1);padding:0 10px 10px;}
.prod-sel{width:100%;padding:8px 10px;border-radius:var(--rs);font-family:'DM Mono',monospace;font-size:12px;font-weight:700;border:2px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#EFEBE9;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23EFEBE9' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px;}
.tabs{display:flex;background:var(--b2);overflow-x:auto;scrollbar-width:none;}
.tabs::-webkit-scrollbar{display:none;}
.tb{flex:0 0 auto;padding:9px 13px;color:rgba(239,235,233,.6);font-family:'DM Mono',monospace;font-size:10.5px;border:none;background:transparent;cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent;transition:all .2s;}
.tb.active{color:#FFCCBC;border-bottom-color:#FFCCBC;background:rgba(0,0,0,.12);}
.prod-panel{display:none;}
.prod-panel.active{display:block;}
.sec{display:none;padding:12px 11px;}
.sec.active{display:block;}
.card{background:var(--card);border-radius:var(--r);padding:13px 11px;margin-bottom:11px;box-shadow:var(--shad);border:1px solid var(--b6);}
.ct{font-family:'Fraunces',serif;font-size:14px;font-weight:700;color:var(--b1);margin-bottom:3px;}
.ctm{font-family:'Tiro Devanagari Marathi',serif;font-size:10.5px;color:var(--textl);margin-bottom:9px;}
.fr2{display:grid;grid-template-columns:1fr 1fr;gap:7px;}
.fr3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;}
.fr4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:5px;}
.fg{margin-bottom:9px;}
.ml{font-size:10.5px;color:var(--textm);font-weight:500;margin-bottom:3px;}
.mh{background:var(--b1);color:#D7CCC8;padding:6px 10px;border-radius:var(--rs);font-size:11px;font-weight:500;margin-bottom:9px;display:flex;align-items:center;gap:5px;}
.mh .mr{font-family:'Tiro Devanagari Marathi',serif;font-size:10px;opacity:.85;}
hr.dv{border:none;border-top:1px dashed var(--b6);margin:10px 0;}
input[type=number],select{width:100%;padding:7px 9px;border-radius:var(--rs);font-family:'DM Mono',monospace;font-size:13px;outline:none;transition:border-color .2s;}
input[type=number]{background:var(--ibg);border:1.5px solid var(--ibrd);color:var(--text);}
input[type=number]:focus{border-color:var(--b2);box-shadow:0 0 0 3px rgba(121,85,72,.15);}
select{background:var(--dbg);border:1.5px solid var(--dbrd);color:var(--b1);appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23795548' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;padding-right:26px;}
select:focus{border-color:var(--b1);outline:none;}
.ov{background:var(--obg);border:1.5px solid var(--obrd);border-radius:var(--rs);padding:7px 9px;font-family:'DM Mono',monospace;font-size:12px;color:var(--b1);font-weight:500;min-height:34px;display:flex;align-items:center;}
.ov.big{background:var(--hi);border-color:var(--hibrd);color:var(--hitext);font-size:16px;font-weight:700;font-family:'Fraunces',serif;}
.cg{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.cc{background:rgba(141,110,99,.08);border:1px solid var(--b3);border-radius:var(--rs);padding:6px 9px;font-size:12px;color:var(--b1);margin-top:3px;min-height:30px;display:flex;align-items:center;}
.tsc{overflow-x:auto;-webkit-overflow-scrolling:touch;}
table.ot{width:100%;border-collapse:collapse;font-size:11px;margin-top:6px;}
table.ot th{background:var(--b1);color:#D7CCC8;padding:6px 5px;text-align:left;font-weight:500;font-size:10px;}
table.ot td{padding:5px 5px;border-bottom:1px solid var(--b6);vertical-align:middle;}
table.ot tr:nth-child(even) td{background:rgba(188,170,164,.07);}
table.ot tr.tr td{background:var(--obg);font-weight:700;color:var(--b1);border-top:2px solid var(--b3);}
.nr{text-align:right;font-family:'DM Mono',monospace;}
.crow{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:var(--b5);border-radius:var(--rs);border:1px solid var(--b6);margin-bottom:7px;}
.clabel{font-size:11.5px;color:var(--textm);}
.cval{font-family:'Fraunces',serif;font-size:15px;font-weight:700;color:var(--b1);}
.hcard{background:var(--card);border-radius:var(--r);padding:11px;margin-bottom:9px;border:1px solid var(--b6);box-shadow:var(--shad);}
.hdate{font-size:10px;color:var(--textl);margin-bottom:5px;}
.hprod{display:inline-block;background:var(--b1);color:#EFEBE9;font-size:9px;padding:1px 7px;border-radius:10px;margin-bottom:5px;font-weight:700;}
.hkv{display:flex;justify-content:space-between;font-size:11.5px;padding:3px 0;border-bottom:1px dashed var(--b6);}
.hkv:last-child{border-bottom:none;}
.hval{font-weight:700;color:var(--b1);}
.bdel{background:#fee;border:1px solid #fcc;color:#c0392b;border-radius:var(--rs);padding:4px 10px;font-size:11px;cursor:pointer;font-family:'DM Mono',monospace;}
.badge{display:inline-block;background:var(--b3);color:#fff;font-size:9px;padding:1px 6px;border-radius:10px;margin-left:4px;vertical-align:middle;font-weight:700;}
.badge.g{background:#4CAF50;}
.abar{position:fixed;bottom:0;left:0;right:0;background:var(--b1);padding:9px 11px;display:flex;gap:7px;z-index:200;box-shadow:0 -2px 14px rgba(0,0,0,.18);}
.btn{flex:1;padding:11px 6px;border-radius:var(--rs);font-family:'DM Mono',monospace;font-size:11.5px;font-weight:500;border:none;cursor:pointer;text-align:center;line-height:1.2;}
.bcalc{background:var(--b8);color:#fff;font-weight:700;font-size:13px;}
.bcalc:active{background:var(--b4);transform:scale(.97);}
.breset{background:rgba(255,255,255,.12);color:#EFEBE9;}
.bsave{background:rgba(255,255,255,.22);color:#EFEBE9;}
.bprint{background:rgba(255,255,255,.08);color:#EFEBE9;}
#toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%) translateY(16px);background:var(--b1);color:#EFEBE9;padding:9px 16px;border-radius:20px;font-size:12px;opacity:0;transition:all .3s;z-index:300;pointer-events:none;white-space:nowrap;}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0);}
/* Supabase auth banner */
#authBanner{background:var(--b2);color:#EFEBE9;font-size:11px;padding:5px 11px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;}
#authBanner button{color:#FFCCBC;background:none;border:none;cursor:pointer;font-family:'DM Mono',monospace;font-size:11px;text-decoration:underline;padding:0;}
#authModal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:500;align-items:center;justify-content:center;}
#authModal.open{display:flex;}
#authBox{background:var(--card);border-radius:var(--r);padding:20px;width:min(340px,92vw);border:1px solid var(--b6);}
#authBox h2{font-family:'Fraunces',serif;color:var(--b1);margin-bottom:14px;font-size:16px;}
#authBox input[type=email],#authBox input[type=password]{margin-bottom:10px;}
#authBox .authBtn{width:100%;padding:10px;background:var(--b1);color:#EFEBE9;border:none;border-radius:var(--rs);font-family:'DM Mono',monospace;font-size:13px;cursor:pointer;margin-top:4px;}
#authBox .authCancel{margin-top:10px;text-align:center;font-size:11px;color:var(--textl);cursor:pointer;display:block;}
#authMsg{font-size:11px;color:#c0392b;margin-top:6px;min-height:16px;}
@media print{.sticky-top,.prod-bar,.tabs,.abar,header,#authBanner{display:none!important}.prod-panel,.sec{display:block!important}body{background:#fff;padding:0;}}
