:root{
  --black:#0b0b0b;
  --white:#ffffff;
  --paper:#f6f6f4;
  --line:#dedede;
  --muted:#777;
  --soft:#efefed;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--black)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.hidden{display:none!important}

.login{min-height:100vh;display:grid;place-items:center;background:var(--black)}
.loginbox{width:min(430px,92vw);background:var(--white);padding:34px;border:1px solid #222;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.18)}
.loginbox img{max-width:240px;width:100%;display:block;margin:0 auto 22px}
.loginbox h2{margin:0 0 4px;letter-spacing:.03em}
.loginbox p{color:var(--muted);margin-top:0}

label{display:grid;gap:6px;font-weight:700;margin:12px 0}
input,select,textarea{
  width:100%;padding:12px 13px;border:1px solid #cfcfcf;border-radius:8px;background:#fff;color:#111;outline:none
}
input:focus,select:focus,textarea:focus{border-color:#111;box-shadow:0 0 0 2px rgba(0,0,0,.05)}
input[readonly]{background:#f0f0ee;font-weight:700}
textarea{min-height:86px;resize:vertical}
.helper{color:var(--muted);font-size:11px;margin-top:4px}

button{
  padding:11px 15px;border:1px solid var(--black);border-radius:8px;background:var(--black);color:#fff;font-weight:800;letter-spacing:.01em
}
button:hover{opacity:.92}
button.light{background:#fff;color:#111;border:1px solid #cfcfcf}

#shell{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100vh}
aside{
  background:var(--black);color:#fff;border-right:1px solid #222;padding:24px 18px;position:sticky;top:0;height:100vh
}
aside img{max-width:205px;width:100%;background:#fff;padding:10px;border-radius:8px}
nav{display:grid;gap:7px;margin-top:25px}
nav button{
  text-align:left;background:transparent;color:#fff;border:1px solid #2f2f2f;padding:12px 14px
}
nav button:hover{background:#171717}
.user{
  position:absolute;bottom:20px;left:18px;right:18px;display:grid;gap:9px;font-size:12px;color:#fff
}
.user .light{background:#fff;color:#111}

main{padding:28px 32px;max-width:1550px;width:100%}
.hero{
  display:flex;justify-content:space-between;align-items:flex-start;gap:15px;
  border-bottom:2px solid #111;padding-bottom:16px;margin-bottom:18px
}
.hero h1{margin:0;font-size:34px;letter-spacing:-.02em}
.muted{color:var(--muted)}
.badge{
  padding:6px 10px;border:1px solid #111;border-radius:999px;background:#fff;font-size:12px;font-weight:800
}

.card{
  background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:16px
}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.metric{font-size:30px;font-weight:900;margin-top:4px}
.actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.action{
  background:#fff;color:#111;border:1px solid #cfcfcf;text-align:left;padding:18px;min-height:92px
}
.action:hover{border-color:#111}
.action small{display:block;color:#666;margin-top:7px;font-weight:400}

.formgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.field{display:grid;gap:5px}
.field label{margin:0;font-size:13px}
.field.full{grid-column:1/-1}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:14px}

.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}
table{border-collapse:collapse;width:100%;min-width:850px;background:#fff}
th,td{padding:11px 12px;border-bottom:1px solid #ececec;text-align:left;font-size:13px}
th{background:#111;color:#fff;font-weight:800;position:sticky;top:0}
tbody tr:hover{background:#fafafa}

.tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.tabs button{background:#fff;color:#111;border:1px solid #ccc}
.tabs button.active{background:#111;color:#fff;border-color:#111}

.ok,.warn{padding:12px 14px;border-radius:9px;margin-bottom:14px}
.ok{background:#f3f3f1;border:1px solid #cfcfcf}
.warn{background:#fff;border:1px dashed #999}

#siMsg,#bm,#mm{font-weight:700}
#siMsg{color:#111}

@media(max-width:1000px){
  #shell{grid-template-columns:1fr}
  aside{position:relative;height:auto;border-right:0}
  aside img{max-width:180px}
  .user{position:static;margin-top:14px}
  nav{grid-template-columns:repeat(3,minmax(0,1fr))}
  main{padding:18px}
  .grid,.actions,.formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  nav,.grid,.actions,.formgrid{grid-template-columns:1fr}
  .hero{flex-direction:column}
  main{padding:12px}
  aside{padding:16px}
  .hero h1{font-size:28px}
}


/* ===== Production alignment with perfected Functional App v0.6 ===== */
.field select[multiple]{min-height:145px}
.title{font-weight:800;margin:22px 0 9px}
.kpirow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mainStockTable{min-width:1080px}
.photoPending{font-size:9px;font-weight:900;padding:7px;border:1px dashed #94a3b8;background:#f8fafc;border-radius:8px;cursor:pointer}
.boxPrintV06{width:130mm;margin:15mm auto;border:1.5px solid #111;padding:12mm;font-family:Arial,sans-serif;color:#111;background:#fff}
.boxPrintV06 h1{text-align:center;font-size:18px;margin:0 0 12mm}
.boxPrintRow{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #111;padding:6mm 2mm;font-size:16px}
.boxPrintRow b{text-align:right}
.boxPrintStamp{font-size:9px;margin-top:12mm;color:#444;text-align:center}
@media print{
  header,.sidebar,.hero,.noPrint{display:none!important}
  main{margin:0!important;padding:0!important;max-width:none!important}
  body{background:#fff}
  .boxPrintV06{margin:0 auto}
}


/* Stock Out + Chitti production v6.0 */
.helper{font-size:11px;color:#6b7280}.chittiCalcCard{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.chittiCalcCard>div{border:1px solid #ddd;border-radius:9px;padding:10px;display:grid;gap:4px}.chittiCalcCard span{font-size:10px;color:#666;text-transform:uppercase}.chittiV06{width:200mm;min-height:138mm;padding:4mm;margin:0 auto;background:#fff;color:#111;font-family:Arial,sans-serif}.chittiTitle{text-align:center;font-size:10px;line-height:1.15}.chittiTitle b{font-size:14px}.chittiMeta{font-size:9px;margin:4mm 0 2mm}.chittiV06 table{width:100%;border-collapse:collapse;min-width:0}.chittiV06 th,.chittiV06 td{border:1px solid #111;padding:2mm 1.25mm;font-size:8px;text-align:center}.chittiV06 th{position:static;background:#fff;color:#111}.chittiV06 th:nth-child(2),.chittiV06 td:nth-child(2){text-align:left}.chittiV06 tbody tr:not(.totalRow){height:9.5mm}.totalRow{font-weight:800}.chittiBottomV06{display:grid;grid-template-columns:1fr 66mm;gap:5mm;margin-top:2.5mm;align-items:start}.remarks{font-size:9px;padding-top:4mm}.chittiCalcV06>b{display:block;text-align:center;border:1px solid #111;border-bottom:0;padding:.7mm;font-size:7px}.chittiCalcV06 table{margin:0}.chittiCalcV06 td{padding:.65mm 1mm!important;font-size:6.7px!important;text-align:left!important;line-height:1.05}.chittiCalcV06 td:last-child{text-align:right!important;white-space:nowrap}@media(max-width:700px){.chittiCalcCard{grid-template-columns:1fr 1fr}}@media print{body.printChittiMode aside,body.printChittiMode header,body.printChittiMode .hero,body.printChittiMode .noPrint{display:none!important}body.printChittiMode main{padding:0!important;margin:0!important}.printChittiMode .chittiV06{width:200mm!important;min-height:138mm!important}}

/* Inventory Completion v7 */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dangerBox{border:2px solid #b91c1c}.dcprint table{width:100%;border-collapse:collapse}.dcprint th,.dcprint td{border:1px solid #111;padding:8px}@media print{aside,.hero,.noprint{display:none!important}main{margin:0!important;padding:0!important}.card{box-shadow:none!important;border:0!important}}@media(max-width:800px){.grid2{grid-template-columns:1fr}}
