@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@600;700;800&family=IBM+Plex+Mono:wght@400;500;600&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --paper:#F1EEE3;
  --paper-dark:#E7E2D2;
  --ink:#18160F;
  --grey:#6E6A5E;
  --line:#D3CDB8;
  --line-soft:#E4DFCF;
  --reg-red:#D5391F;
  --cyan:#0E7A93;
  --card:#FBFAF4;
  --green:#3B7A34;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--paper);
  font-family:'Inter',sans-serif;
  color:var(--ink);
  font-size:14px;
  line-height:1.5;
}

header{
  background:var(--ink);
  color:var(--paper);
  padding:22px 24px 20px;
  position:sticky;top:0;z-index:40;
  border-bottom:3px solid var(--reg-red);
}
.head-in{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;}
.head-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.brand{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:30px;text-transform:uppercase;letter-spacing:.01em;line-height:1;}
.brand span{color:var(--reg-red);}
.brand .sub{font-family:'IBM Plex Mono',monospace;font-size:10px;color:#B4B0A0;letter-spacing:.14em;margin-top:5px;font-weight:400;}
.cmyk{display:flex;border:1px solid rgba(241,238,227,.3);}
.cmyk div{width:22px;height:12px;}
.c-c{background:#00AEEF;}.c-m{background:#EC008C;}.c-y{background:#FFF200;}.c-k{background:#000;}
.btn-settings{
  background:none;border:1px solid rgba(241,238,227,.35);color:var(--paper);
  font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;
  padding:8px 12px;border-radius:4px;cursor:pointer;transition:.15s;
}
.btn-settings:hover{background:rgba(241,238,227,.1);}

main{max-width:1180px;margin:0 auto;padding:28px 24px 90px;display:grid;grid-template-columns:1fr 380px;gap:28px;align-items:start;}
@media(max-width:900px){main{grid-template-columns:1fr;}}

.panel{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:20px;margin-bottom:20px;}
.panel h2{
  font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);
  display:flex;align-items:center;gap:10px;margin-bottom:16px;
}
.panel h2 .num{
  font-family:'Big Shoulders Display',sans-serif;font-size:20px;font-weight:800;color:var(--reg-red);
  border:1px solid var(--reg-red);width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:4px;
}

.field{margin-bottom:15px;}
.field:last-child{margin-bottom:0;}
label.fl{display:block;font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--grey);margin-bottom:6px;}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}

input[type=number],input[type=text],select{
  width:100%;border:1px solid var(--line);background:#fff;border-radius:5px;
  padding:9px 11px;font-size:14px;font-family:'IBM Plex Mono',monospace;color:var(--ink);
}
input[type=text]{font-family:'Inter',sans-serif;}
input:focus,select:focus{outline:2px solid var(--reg-red);outline-offset:-1px;border-color:var(--reg-red);}

.chip-row{display:flex;gap:7px;flex-wrap:wrap;}
.chip{
  border:1px solid var(--line);background:#fff;border-radius:20px;padding:7px 14px;
  font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--grey);cursor:pointer;transition:.12s;user-select:none;
}
.chip:hover{border-color:var(--ink);}
.chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}

.type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
@media(max-width:520px){.type-grid{grid-template-columns:repeat(2,1fr);}}
.type-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px 10px;text-align:center;cursor:pointer;transition:.12s;}
.type-card:hover{border-color:var(--ink);}
.type-card.on{border:2px solid var(--reg-red);background:#FCF3F0;}
.type-card .ic{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:22px;color:var(--grey);}
.type-card.on .ic{color:var(--reg-red);}
.type-card .nm{font-size:12px;font-weight:700;margin-top:5px;}

.toggle-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line-soft);}
.toggle-row:last-child{border-bottom:none;}
.toggle{width:38px;height:21px;border-radius:20px;background:var(--line);position:relative;flex-shrink:0;cursor:pointer;transition:.15s;}
.toggle.on{background:var(--reg-red);}
.toggle .knob{width:17px;height:17px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:.15s;box-shadow:0 1px 2px rgba(0,0,0,.3);}
.toggle.on .knob{left:19px;}
.tr-name{font-size:13px;font-weight:600;}
.tr-desc{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);}
.tr-info{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--grey);}

.hint{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--grey);margin-top:6px;line-height:1.5;}
.hidden{display:none!important;}

.mach-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:520px){.mach-grid{grid-template-columns:1fr;}}
.mach{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px;position:relative;cursor:pointer;transition:.12s;}
.mach:hover{border-color:var(--ink);}
.mach.chosen{border:2px solid var(--reg-red);background:#FCF3F0;}
.mach.cheaper::after{content:'MAIS BARATA';position:absolute;top:-9px;right:10px;background:var(--green);color:#fff;font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.05em;padding:3px 7px;border-radius:20px;}
.mach .mn{font-family:'Big Shoulders Display',sans-serif;font-weight:700;font-size:19px;text-transform:uppercase;}
.mach .ms{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);margin-top:3px;line-height:1.7;}
.mach .mprice{font-family:'IBM Plex Mono',monospace;font-size:17px;font-weight:600;margin-top:9px;}
.mach .mnote{font-family:'IBM Plex Mono',monospace;font-size:9.5px;color:var(--cyan);margin-top:3px;}
.mach.disabled{opacity:.45;cursor:not-allowed;}
.mach.disabled:hover{border-color:var(--line);}

.result{position:sticky;top:110px;}
.result-head{background:var(--ink);color:var(--paper);border-radius:8px 8px 0 0;padding:16px 20px;}
.result-head .rtitle{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#B4B0A0;}
.result-head .rspec{font-family:'Big Shoulders Display',sans-serif;font-weight:700;font-size:19px;text-transform:uppercase;margin-top:3px;line-height:1.05;}
.result-body{background:var(--card);border:1px solid var(--line);border-top:none;border-radius:0 0 8px 8px;padding:18px 20px;}
.impo-note{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--cyan);background:#EAF2F3;border:1px solid #CDE3E6;border-radius:5px;padding:7px 10px;margin-bottom:12px;line-height:1.5;}
.impo-note.warn{color:#8a5a10;background:#FBF3E4;border-color:#EAD9B8;}
.sline{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13px;}
.sline .sv{font-family:'IBM Plex Mono',monospace;}
.sline.muted{color:var(--grey);font-size:12px;}
.subhead{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);margin:14px 0 4px;}
.stotal{display:flex;justify-content:space-between;align-items:baseline;padding-top:14px;margin-top:8px;border-top:2px solid var(--ink);}
.stotal .l{font-family:'IBM Plex Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.06em;}
.stotal .v{font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:600;color:var(--reg-red);}
.perunit{display:flex;justify-content:space-between;margin-top:10px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:10px 12px;}
.perunit .l{font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;color:var(--grey);}
.perunit .v{font-family:'IBM Plex Mono',monospace;font-size:15px;font-weight:600;}
.tinybar{display:flex;gap:2px;margin-bottom:14px;}
.tinybar div{width:18px;height:9px;}
.btns{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap;}
.btn-p{flex:1.4;background:var(--ink);color:var(--paper);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:13px;border-radius:5px;border:none;cursor:pointer;font-weight:600;}
.btn-p:hover{background:#000;}
.btn-o{flex:1;background:none;border:1px solid var(--ink);color:var(--ink);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:12px;border-radius:5px;cursor:pointer;}
.btn-o:hover{background:var(--paper-dark);}
.save-msg{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--green);text-align:center;margin-top:10px;min-height:14px;}

.overlay{position:fixed;inset:0;background:rgba(24,22,15,.55);z-index:60;display:none;align-items:flex-start;justify-content:center;padding:40px 18px;overflow-y:auto;}
.overlay.open{display:flex;}
.modal{background:var(--paper);border-radius:10px;max-width:640px;width:100%;padding:26px;border:1px solid var(--line);}
.modal h3{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:24px;text-transform:uppercase;}
.modal .msub{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);letter-spacing:.08em;margin-bottom:18px;}
.setgroup{margin-bottom:20px;}
.setgroup .gt{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--reg-red);border-bottom:1px solid var(--line);padding-bottom:6px;margin-bottom:12px;}
.setrow{display:grid;grid-template-columns:1fr 120px;gap:10px;align-items:center;margin-bottom:9px;}
.setrow label{font-size:12.5px;}
.setrow input{padding:7px 9px;font-size:13px;}
.modal-btns{display:flex;justify-content:flex-end;gap:10px;margin-top:8px;}

.saved-list{margin-bottom:16px;}
.saved-empty{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--grey);text-align:center;padding:24px 0;}
.saved-item{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:7px;padding:12px 14px;margin-bottom:9px;flex-wrap:wrap;}
.saved-item .si-main{flex:1;min-width:0;}
.saved-item .si-title{font-size:13px;font-weight:700;white-space:normal;overflow-wrap:anywhere;line-height:1.3;}
.saved-item .si-meta{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);margin-top:2px;overflow-wrap:anywhere;}
.saved-item .si-total{font-family:'IBM Plex Mono',monospace;font-size:14px;font-weight:600;color:var(--reg-red);margin-right:4px;white-space:nowrap;}
@media(max-width:520px){
  .saved-item .si-main{flex-basis:100%;}
  .saved-item .si-total{margin-left:0;}
}
.si-btn{font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--ink);background:none;color:var(--ink);border-radius:4px;padding:6px 9px;cursor:pointer;}
.si-btn:hover{background:var(--paper-dark);}
.si-btn.del{border-color:var(--reg-red);color:var(--reg-red);}
.si-btn.del:hover{background:#FCF3F0;}

@media print{
  header,.foot,.btns,.head-actions,.panel:not(.result-panel){display:none!important;}
  body{background:#fff;}
}

.client-pick{display:flex;gap:8px;}
.client-pick select{flex:1;}
.btn-inline{
  border:1px solid var(--ink);background:none;color:var(--ink);
  font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.04em;
  padding:0 12px;border-radius:5px;cursor:pointer;white-space:nowrap;
}
.btn-inline:hover{background:var(--paper-dark);}
.client-form-btns{display:flex;justify-content:flex-end;gap:10px;margin-top:6px;}
.client-meta-full{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);line-height:1.6;}
.edit-banner{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  background:#FBF3E4;border:1px solid #EAD9B8;border-radius:5px;
  padding:8px 10px;margin-top:14px;
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:#8a5a10;
}
.edit-banner button{
  border:1px solid #8a5a10;background:none;color:#8a5a10;
  font-family:'IBM Plex Mono',monospace;font-size:9px;text-transform:uppercase;letter-spacing:.04em;
  padding:5px 8px;border-radius:4px;cursor:pointer;white-space:nowrap;
}
.edit-banner button:hover{background:#f3e6cc;}

.chip.chip-add{border-style:dashed;color:var(--reg-red);border-color:var(--reg-red);}
.chip.chip-add:hover{background:#FCF3F0;}
.chip .chip-x{margin-left:9px;color:var(--reg-red);font-weight:700;font-size:14px;line-height:1;cursor:pointer;}
.chip.on .chip-x{color:var(--reg-red);}
.add-form{
  display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-top:10px;
  background:#fff;border:1px dashed var(--line);border-radius:6px;padding:10px;
}
.add-form input,.add-form select{padding:7px 9px;font-size:12px;flex:1;min-width:90px;}
.add-form input[type=text]{min-width:140px;}
.btn-add-go{
  background:var(--ink);color:var(--paper);border:none;border-radius:5px;
  font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;
  padding:8px 14px;cursor:pointer;white-space:nowrap;
}
.btn-add-go:hover{background:#000;}
.btn-add-row{
  margin-top:12px;width:100%;background:none;border:1px dashed var(--line);color:var(--grey);
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;
  padding:9px;border-radius:6px;cursor:pointer;
}
.btn-add-row:hover{border-color:var(--reg-red);color:var(--reg-red);}
.finish-del{margin-left:auto;color:var(--reg-red);font-family:'IBM Plex Mono',monospace;font-size:9px;text-transform:uppercase;cursor:pointer;border:1px solid var(--reg-red);border-radius:4px;padding:4px 7px;}
.finish-del:hover{background:#FCF3F0;}
.extra-list{margin-bottom:10px;}
.extra-item{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:9px 12px;margin-bottom:7px;}
.extra-item .ei-name{font-size:12.5px;font-weight:600;flex:1;}
.extra-item .ei-val{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--grey);}
.extra-item .ei-del{color:var(--reg-red);font-family:'IBM Plex Mono',monospace;font-size:9px;text-transform:uppercase;cursor:pointer;border:1px solid var(--reg-red);border-radius:4px;padding:4px 7px;}
.extra-item .ei-del:hover{background:#FCF3F0;}

/* ---- aproveitamento de papel ---- */
.ream-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:520px){.ream-grid{grid-template-columns:1fr;}}
.ream-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px;position:relative;cursor:pointer;transition:.12s;}
.ream-card:hover{border-color:var(--ink);}
.ream-card.chosen{border:2px solid var(--reg-red);background:#FCF3F0;}
.ream-card.best{border-color:var(--green);}
.ream-card.best.chosen{border-color:var(--reg-red);}
.ream-tag{position:absolute;top:-9px;left:12px;background:var(--green);color:#fff;font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.05em;padding:3px 8px;border-radius:20px;}
.ream-name{font-family:'Big Shoulders Display',sans-serif;font-weight:700;font-size:18px;text-transform:uppercase;}
.ream-spec{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);margin-top:5px;line-height:1.8;}
.ream-spec b{color:var(--ink);}
.ream-util{font-family:'IBM Plex Mono',monospace;font-size:9px;color:var(--cyan);margin-top:8px;}
.ream-empty{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--grey);line-height:1.5;grid-column:1/-1;}
.ream-modes{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:14px;}
.rmode{border:1px solid var(--line);background:#fff;border-radius:20px;padding:6px 13px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--grey);cursor:pointer;}
.rmode:hover{border-color:var(--ink);}
.rmode.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}

/* ---- abas do modal ---- */
.set-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px;flex-wrap:wrap;}
.set-tab{font-family:'IBM Plex Mono',monospace;font-size:11px;padding:8px 12px;color:var(--grey);cursor:pointer;}
.set-tab:hover{color:var(--ink);}
.set-tab.on{color:var(--reg-red);border-bottom:2px solid var(--reg-red);font-weight:600;}

/* ---- catálogo de papel ---- */
.paper-card{background:var(--card);border:1px solid var(--line);border-radius:7px;padding:11px 12px;margin-bottom:9px;}
.pr-grid{display:flex;align-items:flex-end;gap:8px;margin-bottom:10px;flex-wrap:wrap;}
.pr-f{display:flex;flex-direction:column;gap:3px;}
.pr-f-name{flex:1;min-width:150px;}
.pr-lbl{font-family:'IBM Plex Mono',monospace;font-size:8.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--grey);}
.pr-name{font-family:'Inter',sans-serif;font-size:13px;font-weight:600;padding:7px 8px;width:100%;}
.pr-gsm{width:64px;padding:7px 6px;font-size:12px;text-align:center;}
.pr-f select{padding:7px 6px;font-size:12px;}
.pr-del{font-family:'IBM Plex Mono',monospace;font-size:9px;text-transform:uppercase;color:var(--reg-red);border:1px solid var(--reg-red);border-radius:4px;padding:6px 8px;cursor:pointer;margin-left:auto;align-self:flex-end;}
.pr-del:hover{background:#FCF3F0;}
.pr-ream{display:flex;align-items:center;gap:6px;margin-top:5px;flex-wrap:wrap;}
.pr-rlabel{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--ink);font-weight:600;width:52px;}
.pr-flabel{font-family:'IBM Plex Mono',monospace;font-size:8.5px;color:var(--grey);text-transform:uppercase;}
.pr-ream input{padding:6px 8px;font-size:12px;flex:1;min-width:70px;}
.pr-min{font-family:'IBM Plex Mono',monospace;font-size:9.5px;color:var(--cyan);margin-top:7px;}
.paper-add{background:#fff;border:1px dashed var(--line);border-radius:7px;padding:11px;margin-top:12px;}
.pa-line{display:flex;gap:7px;align-items:center;margin-bottom:7px;flex-wrap:wrap;}
.pa-line input{padding:7px 8px;font-size:12px;flex:1;min-width:0;}
.pa-gsm{max-width:70px;}
.pa-lbl{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);width:46px;}

.tariff-row{display:grid;grid-template-columns:1fr 84px 20px 84px 20px;gap:7px;align-items:center;margin-bottom:9px;}
.tf-name{font-size:12.5px;font-weight:600;}
.tf-basis{font-family:'IBM Plex Mono',monospace;font-size:8.5px;text-align:center;border-radius:20px;padding:4px 5px;border:1px solid var(--line);}
.tf-basis.exemplar{background:#F1F6EF;color:#3B7A34;border-color:#DCE7D8;}
.tf-basis.folha{background:#EAF2F3;color:#0E7A93;border-color:#CDE3E6;}
.tf-basis.fixo{background:#FBF3E4;color:#8a5a10;border-color:#EAD9B8;}
.tf-cur{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);text-align:right;}
.tariff-row input{padding:7px 8px;font-size:12px;text-align:right;}
.tf-del{color:var(--reg-red);font-family:'IBM Plex Mono',monospace;font-size:15px;text-align:center;cursor:pointer;}

/* ---- relatórios ---- */
.modal-wide{max-width:860px;}
.rep-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:18px;}
.rep-periods{display:flex;gap:6px;flex-wrap:wrap;}
.rep-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px;}
@media(max-width:640px){.rep-cards{grid-template-columns:1fr 1fr;}}
.rep-card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px;}
.rep-card .l{font-family:'IBM Plex Mono',monospace;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--grey);line-height:1.3;}
.rep-card .v{font-family:'IBM Plex Mono',monospace;font-size:19px;font-weight:600;margin-top:5px;}
.rep-card .v.green{color:var(--green);}
.rep-block{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:14px;}
.rep-title{font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--grey);margin-bottom:10px;}
.rep-chart{position:relative;width:100%;height:210px;}
.rep-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media(max-width:640px){.rep-2col{grid-template-columns:1fr;}}
.rep-bar-row{margin-bottom:9px;}
.rep-bar-row .rl{display:flex;justify-content:space-between;font-size:11.5px;margin-bottom:3px;}
.rep-bar-row .rl span:last-child{font-family:'IBM Plex Mono',monospace;color:var(--grey);}
.rep-bar{height:6px;background:var(--paper-dark);border-radius:3px;overflow:hidden;}
.rep-bar div{height:100%;}
.rep-empty{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--grey);padding:6px 0;}
.rep-status-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
.rep-stag{border-radius:20px;padding:5px 11px;font-family:'IBM Plex Mono',monospace;font-size:10px;border:1px solid var(--line);}
.rep-litem{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:9px 11px;margin-bottom:7px;flex-wrap:wrap;}
.rep-litem .li-main{flex:1;min-width:0;}
.rep-litem .li-title{font-size:12.5px;font-weight:600;overflow-wrap:anywhere;}
.rep-litem .li-meta{font-family:'IBM Plex Mono',monospace;font-size:9.5px;color:var(--grey);margin-top:2px;}

/* status: cores por estado */
.st-orcado{background:#EAF2F3;color:var(--cyan);border-color:#CDE3E6;}
.st-aprovado{background:#F1F6EF;color:var(--green);border-color:#DCE7D8;}
.st-producao{background:#FBF3E4;color:#8a5a10;border-color:#EAD9B8;}
.st-entregue{background:#EAEAE0;color:var(--grey);border-color:var(--line);}
select.status-sel{font-family:'IBM Plex Mono',monospace;font-size:10px;padding:5px 8px;border-radius:5px;border:1px solid var(--line);cursor:pointer;}

/* ---- etiqueta de máquina no resumo ---- */
.mach-pill{font-family:'IBM Plex Mono',monospace;font-size:8px;padding:1px 5px;border-radius:8px;vertical-align:middle;}
.mach-pill.ry{background:#FCE9E4;color:var(--reg-red);}
.mach-pill.hd{background:#EAF2F3;color:var(--cyan);}

/* ---- card de chapas ---- */
.chapa-info{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--line);border-radius:6px;padding:9px 11px;margin-top:10px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--grey);}
.chapa-info span:last-child{font-size:14px;font-weight:600;color:var(--ink);}
.chapa-info.green{background:#F1F6EF;border-color:#CBE3C4;color:var(--green);}
.chapa-info.green span:last-child{color:var(--green);}

/* ---- plano de corte ---- */
.cut-inputs{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px;}
.cut-fi{display:flex;flex-direction:column;}
.cut-fi input{width:120px;}
.cut-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:640px){.cut-grid{grid-template-columns:1fr;}}
.cut-card{background:var(--card);border:1px solid var(--line);border-radius:9px;padding:12px;position:relative;}
.cut-card.best{border:2px solid var(--green);}
.cut-tag{position:absolute;top:-9px;left:12px;background:var(--green);color:#fff;font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.05em;padding:3px 8px;border-radius:20px;}
.cut-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;}
.cut-name{font-family:'Big Shoulders Display',sans-serif;font-weight:700;font-size:16px;text-transform:uppercase;}
.cut-count{font-family:'IBM Plex Mono',monospace;font-size:16px;font-weight:600;color:var(--green);}
.cut-card:not(.best) .cut-count{color:var(--ink);}
.cut-svg{width:100%;height:auto;max-height:300px;background:#fff;border:1px solid var(--line);border-radius:4px;display:block;}
.cut-meta{font-family:'IBM Plex Mono',monospace;font-size:9.5px;color:var(--grey);margin-top:8px;line-height:1.6;}


/* ===== ORDEM DE SERVIÇO ===== */
textarea{
  width:100%;border:1px solid var(--line);background:#fff;border-radius:5px;
  padding:9px 11px;font-size:14px;font-family:'Inter',sans-serif;color:var(--ink);resize:vertical;
}
textarea:focus,input[type=date]:focus{outline:2px solid var(--reg-red);outline-offset:-1px;border-color:var(--reg-red);}
input[type=date]{
  width:100%;border:1px solid var(--line);background:#fff;border-radius:5px;
  padding:8px 11px;font-size:14px;font-family:'IBM Plex Mono',monospace;color:var(--ink);
}
.os-info{background:var(--card);border:1px solid var(--line);border-radius:7px;padding:12px 14px;margin-bottom:18px;}
.os-row{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:3px 0;}
.os-row span{font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--grey);}
.os-row b{text-align:right;overflow-wrap:anywhere;}
.os-alert{margin-top:9px;padding:7px 9px;border-radius:5px;background:#FCF3F0;border:1px solid #EAD1C7;color:#B23A1C;font-size:11px;}
.os-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink);cursor:pointer;}
.os-check input{width:15px;height:15px;accent-color:var(--reg-red);cursor:pointer;}
.si-btn.os{border-color:var(--cyan);color:var(--cyan);}
.si-btn.os:hover{background:#EAF4F6;}

/* ---- Simulador (⊞) ---- */
.sim-inputs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px;}
.sim-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.sim-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px;}
.sim-card.win{border:2px solid var(--reg-red);background:#FCF3F0;}
.sim-card.off{opacity:.45;}
.sim-card .sn{font-family:'Big Shoulders Display',sans-serif;font-weight:700;font-size:19px;text-transform:uppercase;}
.sim-card .sfolha{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--cyan);margin:3px 0 9px;}
.sim-card .sbig{font-family:'IBM Plex Mono',monospace;font-size:22px;font-weight:600;}
.sim-card .sunit{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);}
.sim-card .sblock{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--grey);line-height:1.7;padding:12px 0;}
.sim-buy{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--reg-red);margin-top:2px;}
.sim-ok{color:var(--green);} .sim-warn{color:var(--reg-red);}
@media(max-width:900px){.sim-inputs{grid-template-columns:repeat(2,1fr);}.sim-grid{grid-template-columns:1fr;}}

/* ---- Tipo de cola da lombada (Hotmelt / PUR) ---- */
.glue-type{display:flex;gap:6px;margin:-4px 0 10px 52px;}
.glue-type.hidden{display:none;}
.glue-btn{cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:5px;padding:5px 14px;font-family:'IBM Plex Mono',monospace;font-size:11px;transition:.12s;}
.glue-btn:hover{border-color:var(--ink);}
.glue-btn.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}

/* ---- Medida da capa aberta (card 4) ---- */
.cover-open{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);}
.cover-open .co-icon{color:var(--cyan);font-size:15px;font-family:'IBM Plex Mono',monospace;}
.cover-open .co-main{flex:1;}
.cover-open .co-lbl{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--grey);}
.cover-open .co-val{font-family:'IBM Plex Mono',monospace;font-size:15px;color:var(--ink);margin-top:2px;}
.cover-open .co-val small{color:var(--grey);font-size:11px;}
.cover-open .co-ref{text-align:right;}
.cover-open .co-ref .co-lbl{color:var(--grey);}
.cover-open .co-ref .co-fech{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--grey);margin-top:2px;}
