
:root{--bg:#f4f7fb;--panel:#fff;--text:#162033;--muted:#6b778b;--line:#dce3ed;--dark:#10223e;--blue:#0b5bd3;--green:#15753c;--red:#c9223e;--amber:#b66b00}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
.hidden{display:none!important}.muted{color:var(--muted)}.error{color:var(--red);margin-top:10px}
button,input,select,textarea{font:inherit}button{border:0;border-radius:9px;background:var(--blue);color:#fff;padding:10px 14px;cursor:pointer;font-weight:700}
button.secondary{background:#42516a}button.danger{background:var(--red)}button:disabled{opacity:.45;cursor:not-allowed}
input,select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:9px}
input[type=checkbox]{width:22px;height:22px}.stack{display:grid;gap:12px}.actions{display:flex;gap:8px;flex-wrap:wrap}
.auth-screen{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(160deg,#10223e,#1d426f)}
.auth-card{width:min(420px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 22px 60px #0004}.auth-card form{display:grid;gap:15px}.brand{font-weight:900;letter-spacing:.08em}.brand.big{font-size:25px}
.topbar{position:sticky;top:0;z-index:20;background:var(--dark);color:#fff;padding:15px 22px;display:flex;justify-content:space-between;align-items:center;gap:12px}.topbar .muted{color:#c9d3df}
.top-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.badge{border-radius:999px;background:#17723a;padding:7px 10px;font-size:13px}.badge.subtle{background:#41516b}
.nav{position:sticky;top:73px;z-index:18;background:#fff;border-bottom:1px solid var(--line);display:flex;gap:6px;padding:8px 16px;overflow:auto}.nav button{white-space:nowrap;background:#edf2f9;color:#263651}.nav button.active{background:var(--blue);color:#fff}
main{max-width:1900px;margin:auto;padding:18px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:15px}.page-head h1{margin:0 0 4px}
.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:16px}.cards{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr));gap:12px;margin-bottom:16px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.card .value{font-size:30px;font-weight:900;margin-top:3px}
.status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.status-card{border:1px solid var(--line);border-radius:12px;padding:12px}
.table-wrap{overflow:auto}.orders-table{width:100%;min-width:1600px;border-collapse:collapse}.orders-table th,.orders-table td{padding:8px;border-bottom:1px solid var(--line);text-align:center}.orders-table th{background:#eef3fb;position:sticky;top:0;z-index:1}.orders-table th:first-child,.orders-table td:first-child{text-align:left}.qty{width:80px}
.kitchen-grid,.display-grid,.driver-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px}.k-card,.d-card,.driver-card{background:#fff;border:2px solid #d8e0ea;border-radius:14px;padding:15px}.k-card h3,.d-card h3,.driver-card h3{margin:0 0 10px}.nums{display:grid;grid-template-columns:1fr 1fr;gap:7px;font-size:18px}
.status{font-weight:900;margin-top:10px}.ok{color:var(--green)}.warn{color:var(--amber)}.bad{color:var(--red)}
.flash{animation:flash 1s infinite;border-color:var(--red)!important}.flash-cell{animation:flash 1s infinite}
@keyframes flash{0%,100%{background:#fff0f2}50%{background:#ff96aa}}
.display-head{background:#10223e;color:#fff;border-radius:14px;padding:16px;margin-bottom:14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.display-totals{font-size:20px;font-weight:900;text-align:right}
.display-grid .d-card{font-size:19px}.display-grid .d-card h3{font-size:25px}.display-grid .nums{font-size:21px}
.client-row,.user-row{display:grid;grid-template-columns:2fr 2fr 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.user-row{grid-template-columns:2fr 2fr 1fr}
.split{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:30px}.audit{max-height:600px;overflow:auto}.audit-item{padding:10px;border-bottom:1px solid var(--line)}
dialog{border:0;border-radius:16px;padding:0;box-shadow:0 20px 70px #0005;width:min(520px,90vw)}dialog form{padding:22px}
#toastHost{position:fixed;right:20px;bottom:20px;z-index:100}.toast{background:#10223e;color:#fff;padding:12px 16px;border-radius:10px;margin-top:8px;box-shadow:0 8px 30px #0003}
.report-table{width:100%;border-collapse:collapse}.report-table th,.report-table td{border:1px solid #bbb;padding:7px;text-align:center}.report-table th:first-child,.report-table td:first-child{text-align:left}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.nav{top:96px}.client-row,.user-row{grid-template-columns:1fr}}
@media print{.topbar,.nav,.page-head .actions,.date-tools{display:none!important}body{background:#fff}main{padding:0}.page:not(#reportsPage){display:none!important}#reportsPage{display:block!important}.panel{border:0;padding:0}}

.orders-table tr.editing{background:#f7fbff;box-shadow:inset 0 0 0 2px #0b5bd333}
.orders-table tr:not(.editing) input:disabled,.orders-table tr:not(.editing) select:disabled{background:#f5f7fa;color:#344054;opacity:1}
.row-actions{min-width:205px;white-space:nowrap}
.row-actions button{padding:8px 10px;margin:2px;font-size:13px}
.orders-table tr.editing input,.orders-table tr.editing select{border-color:#0b5bd3;box-shadow:0 0 0 2px #0b5bd31a}

.user-row .actions{display:flex;justify-content:flex-end;gap:8px}
.user-row .danger{min-width:90px}

.user-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.user-actions button{white-space:nowrap}

.row-actions .active-alert{font-weight:800;box-shadow:0 0 0 3px rgba(255,140,0,.22)}
.row-actions .urgent-active{font-weight:900;animation:urgentPulse 1s infinite}
.urgent-card{outline:4px solid #c62828;outline-offset:-4px}
.urgent-banner{
  margin:8px 0 12px;padding:10px 12px;border-radius:10px;
  background:#c62828;color:#fff;font-weight:900;font-size:1.05em;
  text-transform:uppercase;letter-spacing:.3px;
  animation:urgentPulse 1s infinite
}
@keyframes urgentPulse{
  0%,100%{transform:scale(1);filter:brightness(1)}
  50%{transform:scale(1.015);filter:brightness(1.25)}
}

.user-role-group{margin:0 0 22px;border:1px solid #dfe5ee;border-radius:14px;overflow:hidden;background:#fff}
.user-role-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f5f7fa;border-bottom:1px solid #e5e9f0}
.user-role-head h3{margin:0}
.user-role-list{display:flex;flex-direction:column}
.user-card{display:grid;grid-template-columns:minmax(220px,1.3fr) 120px 100px minmax(320px,1fr);align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid #edf0f4}
.user-card:last-child{border-bottom:0}
.user-email{font-size:13px;color:#667085;margin-top:3px;word-break:break-all}
.user-inactive{opacity:.7;background:#fafafa}
@media(max-width:900px){
  .user-card{grid-template-columns:1fr;align-items:stretch}
  .user-actions{justify-content:flex-start}
}

.driver-change-icon{font-size:.95em;vertical-align:middle;display:inline-block}
.k-driver-assign{margin:10px 0}
.k-driver-assign select{width:100%;margin-top:4px}
.driver-route-picker{margin-bottom:18px}
.route-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}
.route-choice{display:flex;gap:10px;align-items:flex-start;border:1px solid #dfe5ee;border-radius:12px;padding:12px;background:#fff;cursor:pointer}
.route-choice input{margin-top:4px;transform:scale(1.25)}
.route-choice span{display:flex;flex-direction:column;gap:3px}
.route-choice small{color:#667085}
.route-choice.driver-changed{border-width:2px}
.warn-text{font-weight:700}
.driver-deliveries{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}

.missing-menu-badge{
  display:inline-block;margin-left:7px;padding:3px 7px;border-radius:999px;
  background:#b42318;color:#fff;font-size:.78em;font-weight:900;white-space:nowrap
}
.missing-menu-card{outline:3px solid #b42318;outline-offset:-3px}
.driver-missing-menu{margin:10px 0}
.route-copy-note{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:#f7f8fa}

.transfer-approval-panel{margin-bottom:16px}
.transfer-request-list{display:flex;flex-direction:column;gap:10px}
.transfer-request-item{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px;border:1px solid #e3e8ef;border-radius:12px;background:#fff}
.transfer-history-item{border-left:4px solid currentColor}
@media(max-width:700px){
  .transfer-request-item{flex-direction:column;align-items:stretch}
}

.reset-all-orders{
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.3px;
  border-width:2px
}

/* Driver mobile-first */
.driver-mobile-summary{
  margin-bottom:14px;
  padding:16px;
  border-radius:18px;
  background:#fff;
  border:1px solid #e3e8ef;
}
.driver-summary-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.driver-eyebrow{
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  opacity:.65;
}
.driver-summary-main h2{margin:4px 0 0;font-size:22px}
.driver-summary-count{
  width:58px;height:58px;
  border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  font-size:28px;font-weight:900;
  background:#eef2f6;
}
.driver-summary-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:14px;
}
.driver-summary-stats>div{
  padding:10px 8px;
  border-radius:12px;
  background:#f7f8fa;
  text-align:center;
}
.driver-summary-stats b{display:block;font-size:20px}
.driver-summary-stats span{font-size:12px;opacity:.7}

.driver-mobile-panel{
  border-radius:18px;
  padding:16px;
}
.driver-section-title h2{margin:0 0 4px}
.driver-section-title p{margin:0;color:#667085}
.driver-section-title.compact{margin:18px 0 10px}
.driver-route-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:14px 0;
}
.driver-big-btn{
  min-height:52px;
  font-size:15px;
  font-weight:800;
  border-radius:12px;
}
.driver-route-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.driver-route-item{
  min-height:64px;
  padding:12px 14px;
  border-radius:14px;
}
.driver-route-item input{
  width:24px;height:24px;
  flex:0 0 auto;
}
.route-choice-content{display:flex!important;flex-direction:column;gap:4px}
.route-choice-name{font-size:16px;font-weight:800}
.driver-route-item.occupied{opacity:.65}

.driver-delivery-section{margin-top:14px}
.driver-deliveries{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.driver-mobile-card{
  padding:16px;
  border-radius:18px;
  border:1px solid #e3e8ef;
  background:#fff;
}
.driver-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.driver-client-block{min-width:0}
.driver-client-name{
  font-size:20px;
  font-weight:900;
  line-height:1.15;
}
.driver-status-pill{
  display:inline-flex;
  margin-top:8px;
  padding:5px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
}
.driver-status-pill.pending{background:#fff3cd}
.driver-status-pill.departed{background:#dbeafe}
.driver-status-pill.delivered{background:#dcfce7}
.driver-portions{
  flex:0 0 auto;
  min-width:72px;
  padding:10px 8px;
  border-radius:14px;
  background:#f6f7f9;
  text-align:center;
  font-size:24px;
  font-weight:900;
}
.driver-portions span{
  display:block;
  font-size:11px;
  font-weight:700;
  opacity:.65;
}
.driver-info-row{
  display:grid;
  grid-template-columns:24px 1fr;
  gap:8px;
  margin-top:12px;
  font-size:15px;
  line-height:1.35;
}
.driver-info-row.important{
  padding:10px;
  border-radius:12px;
  background:#fff8e1;
  font-weight:700;
}
.driver-inline-alert{
  margin-top:10px;
  padding:8px 10px;
  border-radius:10px;
  background:#eef2f6;
  font-weight:800;
}
.driver-inline-alert.danger{background:#fdecec}
.driver-secondary-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:14px;
}
.driver-secondary-actions button{
  min-height:48px;
  border-radius:12px;
  font-size:14px;
  font-weight:800;
}
.driver-primary-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:10px;
}
.driver-action-btn{
  min-height:62px;
  border-radius:14px;
  font-size:17px;
  font-weight:900;
  letter-spacing:.02em;
}
.driver-action-btn:disabled{opacity:.55}
.driver-empty-state{
  padding:28px 16px;
  text-align:center;
  border-radius:18px;
  font-weight:700;
}

@media(max-width:640px){
  #driverPage{padding-left:10px!important;padding-right:10px!important}
  #driverPage .page-head{display:none}
  .driver-route-actions{grid-template-columns:1fr}
  .driver-primary-actions{grid-template-columns:1fr 1fr}
  .driver-secondary-actions{grid-template-columns:1fr}
  .driver-client-name{font-size:19px}
  .driver-mobile-card{padding:14px}
  .driver-big-btn{width:100%}
}

@media(max-width:390px){
  .driver-primary-actions{grid-template-columns:1fr}
  .driver-summary-main h2{font-size:19px}
  .driver-summary-stats span{font-size:11px}
}

.breakfast-display{font-weight:900;border:2px solid currentColor;border-radius:10px;padding:6px 8px}

.rectification-delta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:8px;
  min-width:34px;
  padding:3px 7px;
  border-radius:999px;
  font-size:.95em;
  font-weight:900;
  line-height:1.2;
  border:2px solid currentColor;
}
.rectification-delta.plus::before{content:"RECT. ";font-size:.65em;margin-right:3px}
.rectification-delta.minus::before{content:"RECT. ";font-size:.65em;margin-right:3px}

.display-head-actions{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

@media (max-width:700px){
  .display-head-actions{justify-content:flex-start}
}

.qty-control{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:142px;
}
.qty-control .qty{
  width:58px;
  min-width:58px;
  height:44px;
  padding:6px 4px;
  text-align:center;
  font-size:18px;
  font-weight:900;
  border:2px solid var(--line, #cfd5df);
  border-radius:10px;
  background:#fff;
}
.qty-control .qty:focus{
  outline:3px solid rgba(0,0,0,.16);
  outline-offset:1px;
}
.qty-step{
  width:38px;
  min-width:38px;
  height:44px;
  padding:0;
  border-radius:10px;
  font-size:25px;
  line-height:1;
  font-weight:900;
  touch-action:manipulation;
}
.qty-minus{font-size:27px}
.qty-saving{opacity:.55}
.qty-saved{box-shadow:0 0 0 3px rgba(0,0,0,.13)}
.qty-control.flash-cell{
  animation:flashCell 1s infinite;
  border-radius:12px;
  padding:2px;
}
@media (max-width:700px){
  .qty-control{
    min-width:136px;
    gap:4px;
  }
  .qty-control .qty{
    width:54px;
    min-width:54px;
    height:46px;
    font-size:19px;
  }
  .qty-step{
    width:37px;
    min-width:37px;
    height:46px;
    font-size:26px;
  }
}

.rectification-delta.cumulative{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:8px;
  min-width:58px;
  padding:3px 8px;
  border-radius:999px;
  font-size:.9em;
  font-weight:900;
  line-height:1.2;
  border:2px solid currentColor;
}


/* ===== OYRA FOOD — Comenzi UI optimizat ===== */

/* tabel mai clar și mai ușor de urmărit */
#orders table{
  border-collapse:separate;
  border-spacing:0 7px;
  width:100%;
}

#orders thead th{
  position:sticky;
  top:0;
  z-index:5;
  background:#fff;
  font-size:.86rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.02em;
  padding:10px 8px;
  border-bottom:2px solid rgba(0,0,0,.14);
  white-space:nowrap;
}

#orders tbody tr{
  background:#fff;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
}

#orders tbody td{
  padding:10px 8px;
  vertical-align:middle;
  border-top:1px solid rgba(0,0,0,.06);
  border-bottom:1px solid rgba(0,0,0,.06);
}

#orders tbody td:first-child{
  border-left:1px solid rgba(0,0,0,.06);
  border-radius:12px 0 0 12px;
}

#orders tbody td:last-child{
  border-right:1px solid rgba(0,0,0,.06);
  border-radius:0 12px 12px 0;
}

/* numele clientului mai vizibil */
#orders .client-name,
#orders td:first-child{
  font-weight:900;
  font-size:1.02rem;
  line-height:1.2;
}

/* control cantitate compact */
#orders .qty-control{
  min-width:116px;
  gap:3px;
  justify-content:center;
}

#orders .qty-control .qty{
  width:52px;
  min-width:52px;
  height:40px;
  font-size:18px;
  font-weight:900;
  border-radius:9px;
  padding:4px 3px;
}

/* plus/minus mai mici */
#orders .qty-step{
  width:28px;
  min-width:28px;
  height:32px;
  padding:0;
  border-radius:8px;
  font-size:20px;
  font-weight:900;
  line-height:1;
}

#orders .qty-minus{
  font-size:21px;
}

/* totalul evidențiat */
#orders .row-total{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  min-height:36px;
  border-radius:10px;
  font-size:1.05rem;
  font-weight:900;
  border:2px solid currentColor;
  padding:4px 8px;
}

/* câmpuri secundare mai lizibile */
#orders .allergies,
#orders .delivery-note,
#orders .driver{
  min-height:40px;
  border-radius:9px;
  font-size:.95rem;
}

/* checkbox Verificat mai ușor de apăsat */
#orders .checked{
  width:22px;
  height:22px;
  cursor:pointer;
}

/* butoane acțiuni mai compacte dar clare */
#orders .row-actions button,
#orders button.edit,
#orders button.save{
  min-height:36px;
  padding:7px 10px;
  border-radius:9px;
  font-weight:800;
}

/* rândurile cu alertă/flash rămân foarte vizibile */
#orders tr.flash,
#orders tr.urgent,
#orders tr.attention{
  outline:3px solid currentColor;
  outline-offset:1px;
}

/* scrollbar orizontal mai ușor de folosit */
#orders .table-wrap,
#ordersTableWrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  padding-bottom:8px;
}

/* mobil/tabletă */
@media (max-width:900px){
  #orders{
    font-size:.92rem;
  }

  #orders thead th{
    font-size:.76rem;
    padding:8px 6px;
  }

  #orders tbody td{
    padding:8px 6px;
  }

  #orders .qty-control{
    min-width:108px;
    gap:2px;
  }

  #orders .qty-control .qty{
    width:48px;
    min-width:48px;
    height:38px;
    font-size:17px;
  }

  #orders .qty-step{
    width:26px;
    min-width:26px;
    height:30px;
    font-size:18px;
  }

  #orders .client-name,
  #orders td:first-child{
    min-width:120px;
    font-size:.98rem;
  }

  #orders .allergies,
  #orders .delivery-note{
    min-width:130px;
  }

  #orders .driver{
    min-width:115px;
  }
}

@media (max-width:600px){
  #orders{
    font-size:.88rem;
  }

  #orders thead th{
    padding:7px 5px;
    font-size:.72rem;
  }

  #orders tbody td{
    padding:7px 5px;
  }

  #orders .qty-control{
    min-width:100px;
  }

  #orders .qty-control .qty{
    width:46px;
    min-width:46px;
    height:36px;
    font-size:16px;
  }

  #orders .qty-step{
    width:24px;
    min-width:24px;
    height:28px;
    border-radius:7px;
    font-size:17px;
  }

  #orders .row-total{
    min-width:42px;
    min-height:32px;
    font-size:.95rem;
  }

  #orders .checked{
    width:24px;
    height:24px;
  }

  #orders tbody tr{
    box-shadow:0 2px 6px rgba(0,0,0,.08);
  }
}



/* Flux separat Mic dejun / Prânz */
.breakfast-flow-box,
.lunch-flow-box,
.driver-breakfast-box,
.driver-lunch-box{
  border:2px solid rgba(0,0,0,.12);
  border-radius:14px;
  padding:12px;
  margin:10px 0;
  background:#fff;
}
.breakfast-flow-box,
.driver-breakfast-box{
  border-width:3px;
}
.breakfast-flow-title,
.lunch-flow-title,
.driver-meal-title{
  font-weight:900;
  font-size:1.02rem;
  margin-bottom:9px;
}
.breakfast-checks{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin:8px 0;
}
.breakfast-checks label{
  min-height:44px;
  display:flex;
  align-items:center;
  gap:7px;
}
.breakfast-checks input{
  width:24px;
  height:24px;
}
.driver-meal-status{
  font-weight:800;
  margin:6px 0 10px;
}
.driver-meal-status.ready,
.driver-meal-status.ok{
  font-weight:900;
}
.driver-breakfast-box .driver-action-btn{
  min-height:52px;
}
@media(max-width:700px){
  .breakfast-flow-box,
  .lunch-flow-box,
  .driver-breakfast-box,
  .driver-lunch-box{
    padding:10px;
    margin:8px 0;
  }
  .breakfast-checks{
    flex-direction:column;
    gap:6px;
  }
}

.driver-meal-status.ready{
  border:2px solid currentColor;
  border-radius:10px;
  padding:8px 10px;
  font-weight:900;
  font-size:1rem;
}
.driver-breakfast-box .driver-meal-status.ready,
.driver-lunch-box .driver-meal-status.ready{
  text-transform:uppercase;
}

.driver-ready-blink-box{
  position:relative;
  border:3px solid rgba(0,0,0,.2);
  animation:driverReadyPulse 1s infinite;
}
.driver-ready-car{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:34px;
  margin-right:6px;
  border-radius:999px;
  font-size:1.2rem;
  border:2px solid currentColor;
  animation:driverReadyPulse 1s infinite;
}
@keyframes driverReadyPulse{
  0%,100%{opacity:1; transform:scale(1)}
  50%{opacity:.35; transform:scale(1.08)}
}
.driver-admin-meal-box{
  border:2px solid rgba(0,0,0,.12);
  border-radius:14px;
  padding:10px;
  margin:10px 0;
  background:#fff;
}


/* ===== OYRA FOOD — Monitor compact pe o singură pagină ===== */
#displayPage{
  height:100vh;
  overflow:hidden;
  padding:8px 10px;
  box-sizing:border-box;
}

#displayPage .page-head,
#displayPage .display-head{
  margin:0 0 6px 0;
  padding:4px 6px;
  min-height:auto;
}

#displayPage .brand.big{
  font-size:1.35rem;
  line-height:1.05;
}

#displayPage #displayDate{
  font-size:.82rem;
  margin-top:2px;
}

#displayPage .display-totals{
  font-size:.85rem;
  line-height:1.15;
}

#displayGrid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:6px;
  height:calc(100vh - 82px);
  overflow:hidden;
  align-content:start;
}

#displayGrid .k-card{
  margin:0;
  padding:7px 8px;
  border-radius:10px;
  min-height:0;
  height:auto;
  box-sizing:border-box;
  overflow:hidden;
}

#displayGrid .k-card h3{
  margin:0 0 4px 0;
  font-size:.96rem;
  line-height:1.08;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

#displayGrid .nums{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2px 5px;
  font-size:.78rem;
  line-height:1.05;
  margin:2px 0;
}

#displayGrid .nums > div{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

#displayGrid .breakfast-display{
  grid-column:1/-1;
  padding:3px 5px;
  font-size:.78rem;
  border-width:1px;
  border-radius:7px;
  margin-bottom:1px;
}

#displayGrid p{
  margin:2px 0;
  font-size:.75rem;
  line-height:1.08;
}

#displayGrid .status{
  margin-top:3px;
  padding:3px 5px;
  font-size:.72rem;
  line-height:1.05;
  border-radius:7px;
}

#displayGrid .urgent-banner{
  padding:3px 5px;
  margin:3px 0;
  font-size:.72rem;
  line-height:1.05;
}

#displayGrid .rectification-delta,
#displayGrid .rectification-delta.cumulative{
  min-width:auto;
  padding:1px 4px;
  margin-left:3px;
  font-size:.66rem;
  border-width:1px;
}

#displayGrid .driver-change-icon{
  font-size:.8rem;
}

#displayGrid .badge{
  font-size:.68rem;
  padding:1px 4px;
}

/* 20 clienți = 5 coloane x 4 rânduri pe Full HD */
@media (min-width:1500px){
  #displayGrid{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}

/* monitoare foarte late */
@media (min-width:2100px){
  #displayGrid{
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:7px;
  }
  #displayGrid .k-card h3{font-size:1rem}
}

/* rezoluții mai mici */
@media (max-width:1499px){
  #displayGrid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
    height:calc(100vh - 76px);
  }
  #displayGrid .k-card{
    padding:6px;
  }
  #displayGrid .k-card h3{
    font-size:.88rem;
  }
  #displayGrid .nums,
  #displayGrid p{
    font-size:.7rem;
  }
  #displayGrid .status{
    font-size:.66rem;
  }
}

/* monitor landscape 1366x768 */
@media (max-width:1400px) and (max-height:850px){
  #displayPage{
    padding:5px 6px;
  }
  #displayPage .brand.big{
    font-size:1.05rem;
  }
  #displayGrid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:4px;
    height:calc(100vh - 62px);
  }
  #displayGrid .k-card{
    padding:4px 5px;
    border-radius:7px;
  }
  #displayGrid .k-card h3{
    font-size:.76rem;
    margin-bottom:2px;
  }
  #displayGrid .nums{
    font-size:.61rem;
    gap:1px 3px;
  }
  #displayGrid p{
    font-size:.59rem;
    margin:1px 0;
  }
  #displayGrid .status{
    font-size:.58rem;
    padding:2px 3px;
    margin-top:2px;
  }
  #displayGrid .breakfast-display{
    font-size:.6rem;
    padding:2px 3px;
  }
  #displayGrid .urgent-banner{
    font-size:.58rem;
    padding:2px 3px;
  }
  #displayGrid .rectification-delta,
  #displayGrid .rectification-delta.cumulative{
    font-size:.54rem;
    padding:1px 3px;
  }
}

body.monitor-fullscreen #displayPage{
  height:100vh;
  max-height:100vh;
}


/* Total meniuri defalcat */
.menu-breakdown,
.monitor-total-breakdown{
  display:flex;
  flex-wrap:wrap;
  gap:5px 10px;
  margin-top:6px;
  font-size:.78rem;
  line-height:1.15;
}
.menu-breakdown span,
.monitor-total-breakdown span{
  white-space:nowrap;
}
.total-menu-card .value{
  margin-bottom:2px;
}
.monitor-total-main{
  font-weight:900;
  font-size:.95rem;
}
#displayPage .monitor-total-breakdown{
  margin-top:2px;
  gap:4px 8px;
  font-size:.72rem;
  justify-content:flex-end;
}
@media (max-width:1400px) and (max-height:850px){
  #displayPage .monitor-total-main{font-size:.76rem}
  #displayPage .monitor-total-breakdown{
    font-size:.58rem;
    gap:2px 5px;
  }
}


/* ===== Monitor Auto-Fit dinamic ===== */
#displayPage{
  width:100%;
  max-width:none;
  height:100dvh;
  min-height:100vh;
  overflow:hidden !important;
}

#displayGrid{
  width:100%;
  box-sizing:border-box;
  transform-origin:top left;
  overflow:hidden;
}

/* Cardurile acceptă micșorarea automată fără să producă scroll */
#displayGrid .d-card,
#displayGrid .k-card{
  min-width:0;
  min-height:0;
  box-sizing:border-box;
}

/* Pe Monitor eliminăm orice scroll vertical accidental */
body.monitor-fullscreen,
body.monitor-fullscreen main,
body.monitor-fullscreen #displayPage{
  overflow:hidden !important;
  max-height:100dvh;
}

/* Textul lung nu forțează creșterea cardului */
#displayGrid h3,
#displayGrid p,
#displayGrid .status,
#displayGrid .urgent-banner,
#displayGrid .nums > div{
  overflow:hidden;
  text-overflow:ellipsis;
}

/* În rezoluții joase păstrăm lizibilitatea minimă; JS decide coloanele/scara finală */
@media (max-height:700px){
  #displayPage .display-head{
    margin-bottom:3px;
    padding-top:2px;
    padding-bottom:2px;
  }
  #displayGrid{
    gap:3px;
  }
}


/* ===== Monitor Kiosk Exact Fit ===== */
body.monitor-kiosk{
  margin:0 !important;
  padding:0 !important;
  width:100vw !important;
  height:100dvh !important;
  overflow:hidden !important;
}

body.monitor-kiosk #appShell{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100dvh !important;
  overflow:hidden !important;
  background:#fff !important;
}

body.monitor-kiosk .topbar,
body.monitor-kiosk #nav{
  display:none !important;
}

body.monitor-kiosk main{
  margin:0 !important;
  padding:0 !important;
  width:100vw !important;
  height:100dvh !important;
  max-width:none !important;
  overflow:hidden !important;
}

body.monitor-kiosk #displayPage{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  flex-direction:column !important;
  width:100vw !important;
  height:100dvh !important;
  max-height:100dvh !important;
  box-sizing:border-box !important;
  padding:4px !important;
  margin:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}

body.monitor-kiosk #displayPage.hidden{
  display:none !important;
}

body.monitor-kiosk #displayPage .display-head{
  flex:0 0 auto !important;
  margin:0 0 4px 0 !important;
  padding:3px 5px !important;
  min-height:0 !important;
  box-sizing:border-box !important;
  line-height:1 !important;
}

body.monitor-kiosk #displayPage .brand.big{
  font-size:clamp(12px,1.05vw,18px) !important;
  line-height:1 !important;
  margin:0 !important;
}

body.monitor-kiosk #displayDate{
  font-size:clamp(9px,.68vw,12px) !important;
  line-height:1 !important;
  margin-top:2px !important;
}

body.monitor-kiosk #displayTotals{
  font-size:clamp(8px,.64vw,11px) !important;
  line-height:1 !important;
}

body.monitor-kiosk #displayGrid{
  flex:0 0 auto !important;
  display:grid !important;
  gap:4px !important;
  margin:0 !important;
  padding:0 !important;
  max-width:none !important;
  max-height:none !important;
  min-width:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
  align-items:stretch !important;
  align-content:stretch !important;
  justify-items:stretch !important;
  transform:none !important;
}

body.monitor-kiosk #displayGrid .d-card,
body.monitor-kiosk #displayGrid .k-card{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:calc(5px * var(--monitor-scale,1)) !important;
  box-sizing:border-box !important;
  border-radius:7px !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
}

body.monitor-kiosk #displayGrid .d-card h3,
body.monitor-kiosk #displayGrid .k-card h3{
  font-size:calc(15px * var(--monitor-scale,1)) !important;
  line-height:1.02 !important;
  margin:0 0 calc(3px * var(--monitor-scale,1)) 0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

body.monitor-kiosk #displayGrid .nums{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:1px 5px !important;
  margin:1px 0 !important;
  font-size:calc(10px * var(--monitor-scale,1)) !important;
  line-height:1.02 !important;
}

body.monitor-kiosk #displayGrid p{
  margin:1px 0 !important;
  font-size:calc(9px * var(--monitor-scale,1)) !important;
  line-height:1.02 !important;
}

body.monitor-kiosk #displayGrid .status{
  margin-top:2px !important;
  padding:calc(2px * var(--monitor-scale,1)) calc(4px * var(--monitor-scale,1)) !important;
  font-size:calc(9px * var(--monitor-scale,1)) !important;
  line-height:1.02 !important;
  border-radius:5px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

body.monitor-kiosk #displayGrid .breakfast-display{
  grid-column:1/-1 !important;
  margin:0 !important;
  padding:calc(2px * var(--monitor-scale,1)) calc(4px * var(--monitor-scale,1)) !important;
  font-size:calc(9px * var(--monitor-scale,1)) !important;
  line-height:1.02 !important;
  border-width:1px !important;
  border-radius:5px !important;
}

body.monitor-kiosk #displayGrid .urgent-banner{
  margin:1px 0 !important;
  padding:2px 4px !important;
  font-size:calc(9px * var(--monitor-scale,1)) !important;
  line-height:1 !important;
}

body.monitor-kiosk #displayGrid .rectification-delta,
body.monitor-kiosk #displayGrid .rectification-delta.cumulative{
  min-width:0 !important;
  margin-left:2px !important;
  padding:1px 3px !important;
  font-size:calc(8px * var(--monitor-scale,1)) !important;
  border-width:1px !important;
}

body.monitor-kiosk .monitor-total-main{
  font-size:clamp(9px,.7vw,12px) !important;
}

body.monitor-kiosk .monitor-total-breakdown{
  margin-top:1px !important;
  gap:2px 6px !important;
  font-size:clamp(7px,.54vw,9px) !important;
  justify-content:flex-end !important;
}

/* Ambalare permanentă client: Vrac / Caserolă */
#orders .packaging-mode,
#ordersPage .packaging-mode{
  min-width:94px;
  height:38px;
  padding:5px 8px;
  border-radius:9px;
  font-weight:800;
  font-size:.9rem;
  background:#fff;
}
@media(max-width:700px){
  #orders .packaging-mode,
  #ordersPage .packaging-mode{
    min-width:88px;
    height:36px;
    padding:4px 6px;
    font-size:.84rem;
  }
}

/* Ambalare afișată pe Monitor după numele clientului */
.packaging-monitor-label{
  display:inline-block;
  margin-left:5px;
  font-weight:900;
  font-size:.78em;
  line-height:1;
  white-space:nowrap;
  vertical-align:middle;
}
body.monitor-kiosk .packaging-monitor-label{
  font-size:calc(10px * var(--monitor-scale,1)) !important;
  margin-left:3px !important;
}

/* Prefix compact ambalare Monitor: V→ / C→ */
.packaging-monitor-label{
  display:inline-block;
  margin-right:4px;
  margin-left:0;
  font-weight:900;
  font-size:.9em;
  line-height:1;
  white-space:nowrap;
  vertical-align:middle;
}
body.monitor-kiosk .packaging-monitor-label{
  font-size:calc(11px * var(--monitor-scale,1)) !important;
  margin-right:3px !important;
  margin-left:0 !important;
}


/* ===== Monitor: carduri puțin mai înguste + font puțin mai mare ===== */
body.monitor-kiosk #displayGrid{
  gap:3px !important;
}

body.monitor-kiosk #displayGrid .d-card,
body.monitor-kiosk #displayGrid .k-card{
  padding:calc(4px * var(--monitor-scale,1)) !important;
  border-radius:6px !important;
}

body.monitor-kiosk #displayGrid .d-card h3,
body.monitor-kiosk #displayGrid .k-card h3{
  font-size:calc(16.5px * var(--monitor-scale,1)) !important;
  line-height:1.03 !important;
  margin-bottom:calc(2px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk #displayGrid .nums{
  font-size:calc(11px * var(--monitor-scale,1)) !important;
  gap:1px 4px !important;
  line-height:1.03 !important;
}

body.monitor-kiosk #displayGrid p{
  font-size:calc(10px * var(--monitor-scale,1)) !important;
  line-height:1.03 !important;
}

body.monitor-kiosk #displayGrid .status{
  font-size:calc(10px * var(--monitor-scale,1)) !important;
  padding:calc(2px * var(--monitor-scale,1)) calc(3px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk #displayGrid .breakfast-display{
  font-size:calc(10px * var(--monitor-scale,1)) !important;
  padding:calc(2px * var(--monitor-scale,1)) calc(3px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk #displayGrid .urgent-banner{
  font-size:calc(10px * var(--monitor-scale,1)) !important;
  padding:2px 3px !important;
}

body.monitor-kiosk #displayGrid .rectification-delta,
body.monitor-kiosk #displayGrid .rectification-delta.cumulative{
  font-size:calc(8.8px * var(--monitor-scale,1)) !important;
  padding:1px 2px !important;
}

body.monitor-kiosk .packaging-monitor-label{
  font-size:calc(12px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk #displayPage .display-head{
  padding:2px 4px !important;
  margin-bottom:3px !important;
}

body.monitor-kiosk #displayPage .brand.big{
  font-size:clamp(13px,1.08vw,19px) !important;
}

body.monitor-kiosk #displayDate{
  font-size:clamp(10px,.72vw,13px) !important;
}

body.monitor-kiosk #displayTotals{
  font-size:clamp(9px,.68vw,12px) !important;
}

/* Monitor: C→ / V→ garantat vizibil */
.monitor-client-title{
  display:flex !important;
  align-items:center !important;
  gap:4px !important;
  min-width:0 !important;
}

.packaging-monitor-label{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  min-width:24px !important;
  height:22px !important;
  padding:0 3px !important;
  margin:0 !important;
  border:2px solid currentColor !important;
  border-radius:6px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  opacity:1 !important;
}

.monitor-client-name{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

body.monitor-kiosk .packaging-monitor-label{
  min-width:calc(24px * var(--monitor-scale,1)) !important;
  height:calc(21px * var(--monitor-scale,1)) !important;
  font-size:calc(11px * var(--monitor-scale,1)) !important;
  padding:0 calc(3px * var(--monitor-scale,1)) !important;
  border-width:1px !important;
  border-radius:4px !important;
}

#displayGrid .monitor-allergies{
  font-weight:700;
}


/* ===== Monitor lizibilitate + rectificări persistente ===== */
body.monitor-kiosk #displayGrid .d-card{
  font-weight:700 !important;
}

body.monitor-kiosk #displayGrid .d-card h3,
body.monitor-kiosk #displayGrid .monitor-client-title{
  font-weight:900 !important;
  font-size:calc(18px * var(--monitor-scale,1)) !important;
  line-height:1.05 !important;
}

body.monitor-kiosk #displayGrid .nums{
  font-weight:750 !important;
  font-size:calc(12px * var(--monitor-scale,1)) !important;
  line-height:1.06 !important;
}

body.monitor-kiosk #displayGrid .nums b,
body.monitor-kiosk #displayGrid p b,
body.monitor-kiosk #displayGrid .status b{
  font-weight:900 !important;
}

body.monitor-kiosk #displayGrid p{
  font-weight:750 !important;
  font-size:calc(11px * var(--monitor-scale,1)) !important;
  line-height:1.06 !important;
}

body.monitor-kiosk #displayGrid .status{
  font-weight:850 !important;
  font-size:calc(11px * var(--monitor-scale,1)) !important;
  line-height:1.05 !important;
}

body.monitor-kiosk #displayGrid .breakfast-display,
body.monitor-kiosk #displayGrid .packed-course{
  font-weight:850 !important;
}

body.monitor-kiosk .packaging-monitor-label{
  font-weight:950 !important;
  font-size:calc(13px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk .monitor-total-main,
body.monitor-kiosk .monitor-total-breakdown{
  font-weight:900 !important;
}

body.monitor-kiosk #displayGrid .rectification-delta,
body.monitor-kiosk #displayGrid .rectification-delta.cumulative{
  font-weight:950 !important;
}

/* Fel 1 / Fel 2 sunt informații de ambalare, nu intră în totalul porțiilor. */
#ordersPage .qty-control:has(.qty[data-field="fel1_ambalat"]),
#ordersPage .qty-control:has(.qty[data-field="fel2_ambalat"]){
  font-weight:800;
}


/* Comenzi fără butoane + / - */
#ordersPage .qty-control{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0 !important;
}
#ordersPage .qty{
  width:58px;
  min-width:58px;
  text-align:center;
}
#ordersPage .qty-step{
  display:none !important;
}


/* ===== Client Optional: comandă text liber ===== */
.optional-order-row td{
  vertical-align:middle;
}
.optional-order-cell{
  min-width:360px;
}
.optional-order-editor{
  display:flex;
  align-items:stretch;
  gap:6px;
  width:100%;
}
.optional-order-text{
  flex:1 1 auto;
  min-width:280px;
  min-height:64px;
  resize:vertical;
  padding:8px 10px;
  border:1px solid #b8c3d1;
  border-radius:8px;
  font:inherit;
  font-weight:700;
  line-height:1.25;
  box-sizing:border-box;
}
.optional-order-save{
  flex:0 0 auto;
  white-space:nowrap;
}

body.monitor-kiosk #displayGrid .optional-monitor-card{
  overflow:hidden !important;
}
body.monitor-kiosk #displayGrid .optional-monitor-text{
  flex:1 1 auto;
  min-height:0;
  overflow:hidden;
  padding:calc(5px * var(--monitor-scale,1));
  border:1px solid rgba(0,0,0,.14);
  border-radius:6px;
  font-size:calc(12px * var(--monitor-scale,1)) !important;
  font-weight:900 !important;
  line-height:1.12 !important;
  overflow-wrap:anywhere;
}
body.monitor-kiosk #displayGrid .optional-monitor-text.empty{
  opacity:.58;
  font-weight:700 !important;
}


/* ===== Monitor: indicator de rectificare/verificare în colț dreapta-jos ===== */
#displayGrid .d-card,
#displayGrid .optional-monitor-card{
  position: relative;
}

.monitor-corner-indicator{
  position:absolute;
  right:6px;
  bottom:4px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  min-height:22px;
  font-weight:900;
  line-height:1;
  z-index:3;
  user-select:none;
}

.monitor-corner-indicator.pending{
  color:#d10000;
  font-size:1.1rem;
}

.monitor-corner-indicator.checked{
  color:#0a9a2a;
  font-size:1.2rem;
  text-shadow:0 0 0 currentColor;
}

.monitor-corner-indicator.hidden{
  display:none !important;
}

body.monitor-kiosk .monitor-corner-indicator{
  right:calc(5px * var(--monitor-scale,1)) !important;
  bottom:calc(4px * var(--monitor-scale,1)) !important;
  min-width:calc(20px * var(--monitor-scale,1)) !important;
  min-height:calc(20px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk .monitor-corner-indicator.pending{
  font-size:calc(15px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk .monitor-corner-indicator.checked{
  font-size:calc(16px * var(--monitor-scale,1)) !important;
}


/* ===== Istoric: filtre rapide ===== */
.history-filters{
  display:grid;
  grid-template-columns:minmax(190px,1.5fr) minmax(170px,1fr) minmax(170px,1fr) auto;
  gap:10px;
  align-items:end;
  margin-bottom:8px;
}
.history-filters label{
  display:flex;
  flex-direction:column;
  gap:4px;
  font-weight:800;
}
.history-filters input,
.history-filters select{
  min-height:40px;
}
.history-filter-info{
  margin:6px 0 10px;
}
.audit-verification{
  border-left:5px solid #159947;
  background:rgba(21,153,71,.06);
}
.audit-verified-by{
  margin-top:4px;
  font-size:.96rem;
}
@media(max-width:900px){
  .history-filters{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:560px){
  .history-filters{
    grid-template-columns:1fr;
  }
}

/* ===== Raport: totaluri pe categorii ===== */
.report-total-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(130px,1fr));
  gap:8px;
  margin:12px 0 16px;
}
.report-total-card{
  border:1px solid #ccd5e0;
  border-radius:9px;
  padding:9px 11px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-weight:800;
}
.report-total-card span{
  font-size:.86rem;
}
.report-total-card b{
  font-size:1.3rem;
}
.report-total-card.primary{
  border-width:2px;
  font-weight:900;
}
.report-total-row th{
  font-weight:900;
  border-top:2px solid currentColor;
}
@media(max-width:850px){
  .report-total-grid{
    grid-template-columns:repeat(2,minmax(120px,1fr));
  }
}
@media print{
  .report-total-grid{
    grid-template-columns:repeat(4,1fr);
    gap:5px;
  }
  .report-total-card{
    padding:5px 7px;
  }
  .history-filters,
  .history-filter-info{
    display:none !important;
  }
}


/* ===== Monitor: Fel 1 / Fel 2 ambalat în partea dreaptă ===== */
body.monitor-kiosk #displayGrid .monitor-card-body,
#displayGrid .monitor-card-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px;
  min-width:0;
  min-height:0;
  align-items:start;
}

#displayGrid .monitor-card-main{
  min-width:0;
  min-height:0;
}

#displayGrid .monitor-packed-side{
  align-self:start;
  min-width:92px;
  max-width:42%;
  padding:4px 5px;
  border:1px solid rgba(0,0,0,.16);
  border-radius:6px;
  box-sizing:border-box;
  font-weight:850;
  line-height:1.08;
}

#displayGrid .monitor-packed-side > div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px;
  align-items:center;
  margin:0 0 3px 0;
}

#displayGrid .monitor-packed-side > div:last-child{
  margin-bottom:0;
}

#displayGrid .monitor-packed-side span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#displayGrid .monitor-packed-side b{
  font-weight:950;
}

body.monitor-kiosk #displayGrid .monitor-packed-side{
  min-width:calc(88px * var(--monitor-scale,1)) !important;
  max-width:40% !important;
  padding:calc(3px * var(--monitor-scale,1)) calc(4px * var(--monitor-scale,1)) !important;
  font-size:calc(10px * var(--monitor-scale,1)) !important;
  line-height:1.04 !important;
}

body.monitor-kiosk #displayGrid .monitor-card-body{
  gap:calc(4px * var(--monitor-scale,1)) !important;
}


/* Monitor: Mic dejun fără chenar / casetă rotunjită */
#displayGrid .breakfast-display,
body.monitor-kiosk #displayGrid .breakfast-display{
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
}


/* ===== Monitor: 🍳 pentru Mic dejun verificat, deasupra bifei ===== */
#displayGrid .monitor-corner-stack{
  position:absolute;
  right:6px;
  bottom:4px;
  z-index:4;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:1px;
  min-width:22px;
}

#displayGrid .monitor-corner-stack .monitor-corner-indicator{
  position:static !important;
  right:auto !important;
  bottom:auto !important;
}

#displayGrid .monitor-breakfast-verified{
  display:flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  font-size:1.2rem;
  line-height:1;
  user-select:none;
}

body.monitor-kiosk #displayGrid .monitor-corner-stack{
  right:calc(5px * var(--monitor-scale,1)) !important;
  bottom:calc(4px * var(--monitor-scale,1)) !important;
  gap:calc(1px * var(--monitor-scale,1)) !important;
  min-width:calc(20px * var(--monitor-scale,1)) !important;
}

body.monitor-kiosk #displayGrid .monitor-breakfast-verified{
  width:calc(20px * var(--monitor-scale,1)) !important;
  height:calc(20px * var(--monitor-scale,1)) !important;
  font-size:calc(16px * var(--monitor-scale,1)) !important;
}


/* Monitor: 🍳 în dreapta bifei verzi */
#displayGrid .monitor-corner-stack{
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:2px !important;
}

body.monitor-kiosk #displayGrid .monitor-corner-stack{
  gap:calc(2px * var(--monitor-scale,1)) !important;
}


#displayGrid .monitor-corner-stack .monitor-corner-indicator{
  order:1;
}

#displayGrid .monitor-corner-stack .monitor-breakfast-verified{
  order:2;
}
