/* =====================================================================
   PAINEL · CSS — tudo que veste o painel da padeira.
   Os tokens da marca vêm de tema.css (carregado antes); aqui ficam só os
   desvios que o painel sempre teve — valores diferentes das páginas
   públicas, mantidos até alguém unificar de propósito.
   ===================================================================== */
:root{
  --dt-cream-deep:#F3ECE0;      /* público usa #F3ECDD */
  --dt-line-deep:#DED2BC;       /* público usa #DFD3BE */
  --dt-radius-card-lg:16px;     /* público usa 20px */
  --dt-shadow-lg:0 2px 6px rgba(90,54,20,.10),0 14px 40px rgba(90,54,20,.10); /* público: 18px 44px .12 */
  --dt-grain:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNDAnIGhlaWdodD0nMTQwJz48ZmlsdGVyIGlkPSduJz48ZmVUdXJidWxlbmNlIHR5cGU9J2ZyYWN0YWxOb2lzZScgYmFzZUZyZXF1ZW5jeT0nMC44NScgbnVtT2N0YXZlcz0nMicgc3RpdGNoVGlsZXM9J3N0aXRjaCcvPjxmZUNvbG9yTWF0cml4IHR5cGU9J21hdHJpeCcgdmFsdWVzPScwIDAgMCAwIDAuMzYgIDAgMCAwIDAgMC4yNCAgMCAwIDAgMCAwLjEyICAwIDAgMCAwLjYgMCcvPjwvZmlsdGVyPjxyZWN0IHdpZHRoPScxMDAlJyBoZWlnaHQ9JzEwMCUnIGZpbHRlcj0ndXJsKCNuKScgb3BhY2l0eT0nMC4wNScvPjwvc3ZnPg=="); /* grão mais presente que o público */
}
/* ================= BASE ================= */
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--dt-cream);background-image:var(--dt-grain);color:var(--dt-brown);
  font-family:var(--dt-font-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
/* .hidden SEMPRE vence — nunca declarar display que a sobreponha */
.hidden{display:none !important}
h1,h2,h3{margin:0}
button{font-family:inherit}
svg{display:block}
a{color:var(--dt-crust)}
:focus-visible{outline:none;box-shadow:var(--dt-focus-ring)}
.serif{font-family:var(--dt-font-display);font-optical-sizing:auto;color:var(--dt-ink)}
.caps{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--dt-muted)}
.tnum{font-variant-numeric:tabular-nums}
.muted{color:var(--dt-muted)}

/* ================= COMPONENTES (espelho do design system) ================= */
.dt-btn{font-family:var(--dt-font-ui);font-weight:600;line-height:1;border:1px solid transparent;
  border-radius:var(--dt-radius-input);display:inline-flex;align-items:center;justify-content:center;gap:8px;
  cursor:pointer;text-decoration:none;white-space:nowrap;
  transition:background var(--dt-dur-fast) var(--dt-ease),border-color var(--dt-dur-fast) var(--dt-ease),transform var(--dt-dur-fast) var(--dt-ease)}
.dt-btn--sm{height:38px;padding:0 14px;font-size:13.5px}
.dt-btn--md{height:44px;padding:0 22px;font-size:15px}
.dt-btn--lg{height:52px;padding:0 30px;font-size:16.5px}
.dt-btn--block{width:100%}
.dt-btn--primary{background:var(--dt-crust);color:var(--dt-cream);box-shadow:var(--dt-shadow-sm)}
.dt-btn--primary:hover{background:var(--dt-crust-deep)}
.dt-btn--highlight{background:var(--dt-wheat);color:var(--dt-crust-deep);box-shadow:var(--dt-shadow-sm)}
.dt-btn--highlight:hover{background:var(--dt-wheat-deep)}
.dt-btn--secondary{background:var(--dt-paper);color:var(--dt-ink);border-color:var(--dt-line)}
.dt-btn--secondary:hover{background:var(--dt-cream-deep);border-color:var(--dt-line-deep)}
.dt-btn--ghost{background:transparent;color:var(--dt-crust)}
.dt-btn--ghost:hover{background:rgba(122,74,30,.08)}
.dt-btn--danger{background:transparent;color:var(--dt-error)}
.dt-btn--danger:hover{background:rgba(199,91,74,.08)}
.dt-btn:active:not(:disabled){transform:translateY(1px)}
.dt-btn:disabled{opacity:.5;cursor:not-allowed}
.dt-input,.dt-select{width:100%;font-family:inherit;font-size:15px;color:var(--dt-ink);background:var(--dt-paper);
  border:1px solid var(--dt-line);border-radius:var(--dt-radius-input);padding:11px 12px;line-height:1.3;
  transition:border-color var(--dt-dur-fast) var(--dt-ease),box-shadow var(--dt-dur-fast) var(--dt-ease)}
.dt-input::placeholder{color:var(--dt-muted)}
.dt-input:focus,.dt-select:focus{outline:none;border-color:var(--dt-wheat);box-shadow:var(--dt-focus-ring)}
.dt-input:disabled{background:var(--dt-cream-deep);opacity:.7;cursor:not-allowed}
.dt-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238A7C68' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:38px}
.dt-label{display:block;font-size:13px;font-weight:600;color:var(--dt-ink);margin:0 0 6px}
.dt-card{background:var(--dt-paper);border:1px solid var(--dt-line);border-radius:var(--dt-radius-card-lg);
  box-shadow:var(--dt-shadow);color:var(--dt-brown)}
.dt-card__body{padding:18px}
.dt-card__title{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:700;color:var(--dt-ink);margin:0 0 10px;line-height:1.3}
.dt-card__title::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dt-wheat);flex:none}
.dt-pill{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 12px;border-radius:var(--dt-radius-pill);
  font-size:12.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;line-height:1}
.dt-pill--sm{height:21px;padding:0 9px;font-size:11px}
.dt-pill i{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.85;flex:none}
.pill-sale{background:var(--dt-state-sale-bg);color:var(--dt-state-sale-ink)}
.pill-courtesy{background:var(--dt-state-courtesy-bg);color:var(--dt-state-courtesy-ink)}
.pill-alert{background:var(--dt-state-alert-bg);color:var(--dt-state-alert-ink)}
.pill-open{background:var(--dt-state-open-bg);color:var(--dt-state-open-ink)}
.pill-closed{background:var(--dt-state-closed-bg);color:var(--dt-state-closed-ink)}
.pill-done{background:var(--dt-state-done-bg);color:var(--dt-state-done-ink)}
.pill-new{background:var(--dt-wheat);color:var(--dt-crust-deep)}
.dt-kpi{background:var(--dt-paper);border:1px solid var(--dt-line);border-radius:var(--dt-radius-card);
  box-shadow:var(--dt-shadow-sm);padding:16px 18px;display:flex;flex-direction:column;gap:7px}
.dt-kpi__label{font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--dt-muted)}
.dt-kpi__value{font-family:var(--dt-font-display);font-optical-sizing:auto;font-size:30px;font-weight:600;line-height:1.02;color:var(--dt-ink);font-variant-numeric:tabular-nums}
.dt-kpi--crust .dt-kpi__value{color:var(--dt-crust)}
.dt-kpi--wheat .dt-kpi__value{color:var(--dt-wheat-deep)}
.dt-kpi--earth .dt-kpi__value{color:var(--dt-error)}
.dt-kpi__hint{font-size:12.5px;color:var(--dt-muted)}
.dt-kpi__hint--up{color:var(--dt-success)}
.dt-stepper{display:inline-flex;align-items:center;border:1px solid var(--dt-line);border-radius:var(--dt-radius-input);background:var(--dt-paper);overflow:hidden}
.dt-stepper button{border:0;background:transparent;color:var(--dt-crust);cursor:pointer;display:grid;place-items:center;
  width:48px;height:48px;font-size:24px;line-height:1;padding:0;transition:background var(--dt-dur-fast) var(--dt-ease)}
.dt-stepper button:hover{background:var(--dt-cream-deep)}
.dt-stepper button:active{background:var(--dt-line)}
.dt-stepper output{min-width:52px;text-align:center;font-weight:600;font-size:18px;color:var(--dt-ink);font-variant-numeric:tabular-nums}
.dt-stepper--sm button{width:38px;height:38px;font-size:18px}
.dt-stepper--sm output{min-width:36px;font-size:15px}

/* ================= LOGIN ================= */
.login-wrap{position:fixed;inset:0;z-index:100;background:var(--dt-cream);background-image:var(--dt-grain);
  display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}
.login-box{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;text-align:center}
.brand-logo{display:inline-block;background-image:url("data:image/jpeg;base64,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JV3S2UNXecIkcZKa7QsLzStJ4EVTx7jgSAHnhruRwQeWtjnSTWTOtFs1GRYVc/BMnDauhnBfT1jAfdlZyOfM8EcOHJ4I5K0L03396QZbboaTO46vD7m5vTKJ4nVNI8+vTIwEgH85o4+J80GW3BXlHFLNMyGGN0kjyGtY0clxPkAPUrWmspdjmWPNxq5NI5JJHF75G1FLSvcT3JcAWkn61+U2pOy7SBzrnj9z0/t9ZGwtE1ipmVdSR+SHwtc/v9J4QV12q7Lr7c8joNQ9X7O+3WikeJ6KwVrOJqx4PLXTxn3Iwe/Q7u7juA33pa3vbjaHB8FqtJsUuDZMovEHh3B0LuTbqR47hxHuySNPAHmGEu7csJjfWX2htTX2+osejNmnt/iAsN+ujGmVo+MMPdoPwc8n+aD3VFbjca+73apul0raitrqqV01RU1Ehkkle48uc5x7uJJJJKD5kREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREH//2Q==");background-size:cover;background-position:center;background-color:var(--dt-ink)}
.login-caption{margin-top:12px;font-size:10px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--dt-muted)}
.login-card{width:100%;margin-top:28px;background:var(--dt-paper);border:1px solid var(--dt-line);
  border-radius:var(--dt-radius-card-lg);box-shadow:var(--dt-shadow);padding:26px 24px;text-align:left}
.login-err{margin:10px 0 0;font-size:13.5px;color:var(--dt-error)}

/* ================= SHELL ================= */
.app-wrap{min-height:100vh}
.sidebar{display:none}
.app-header{position:sticky;top:0;z-index:30;background:rgba(250,246,239,.94);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--dt-line);padding:12px 16px;display:flex;align-items:center;gap:12px}
.app-header .mini-badge{width:38px;height:38px;border-radius:9px;background-color:var(--dt-ink);display:grid;place-items:center;flex:none}
.app-header h1{font-family:var(--dt-font-display);font-optical-sizing:auto;font-weight:600;font-size:21px;line-height:1.1;color:var(--dt-ink)}
.app-header .sub{font-size:12.5px;color:var(--dt-muted)}
.iconbtn{width:44px;height:44px;border-radius:10px;border:1px solid var(--dt-line);background:var(--dt-paper);
  color:var(--dt-muted);cursor:pointer;display:grid;place-items:center;flex:none;transition:background var(--dt-dur-fast) var(--dt-ease)}
.iconbtn:hover{background:var(--dt-cream-deep)}

/* Modo discreto — o olho do cabeçalho embaça o dinheiro sem tirar ninguém da tela.
   Serve pra ela mostrar o sistema pra alguém sem mostrar o faturamento junto. */
.iconbtn.on{background:var(--dt-ink);border-color:var(--dt-ink);color:var(--dt-cream)}
.iconbtn.on:hover{background:var(--dt-ink)}
#btn-discreto .ico-off{display:none}
body.discreto #btn-discreto .ico-on{display:none}
body.discreto #btn-discreto .ico-off{display:block}
.cash,.dt-kpi__value,.dt-kpi__hint,.calcbox .val,.chart-box{transition:filter var(--dt-dur) var(--dt-ease)}
body.discreto .cash,
body.discreto .dt-kpi__value,
body.discreto .dt-kpi__hint,
body.discreto .calcbox .val{filter:blur(7px);user-select:none;cursor:default}
body.discreto .chart-box,
body.discreto .cash canvas{filter:blur(9px);opacity:.6;user-select:none;pointer-events:none}
main{padding:18px 16px 110px;max-width:640px;margin:0 auto;width:100%}
.view{display:flex;flex-direction:column;gap:18px}

/* Navegação inferior (polegar) */
.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--dt-paper);border-top:1px solid var(--dt-line);
  box-shadow:0 -4px 20px rgba(90,54,20,.08);display:grid;grid-template-columns:repeat(5,1fr);align-items:end;
  padding:8px 6px calc(10px + env(safe-area-inset-bottom))}
.bottomnav button{background:none;border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;
  padding:4px 0;color:var(--dt-muted);position:relative;min-height:44px;justify-content:flex-end}
.bottomnav button.active{color:var(--dt-crust)}
.bottomnav button span{font-size:10.5px;font-weight:500}
.bottomnav button.active span{font-weight:700}
.bottomnav .fab-ring{width:56px;height:56px;border-radius:50%;background:var(--dt-wheat);color:var(--dt-crust-deep);
  display:grid;place-items:center;margin-top:-26px;box-shadow:var(--dt-shadow);border:3px solid var(--dt-paper);
  transition:background var(--dt-dur-fast) var(--dt-ease)}
.bottomnav button:active .fab-ring{background:var(--dt-wheat-deep)}
.navdot{position:absolute;top:0;right:calc(50% - 16px);min-width:17px;height:17px;border-radius:9px;background:var(--dt-error);
  color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;padding:0 4px;line-height:1}

/* Folha "Mais" */
.sheet-backdrop{position:fixed;inset:0;z-index:60;background:rgba(58,44,26,.4)}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;background:var(--dt-paper);border-radius:18px 18px 0 0;
  box-shadow:var(--dt-shadow-lg);padding:10px 14px calc(18px + env(safe-area-inset-bottom));max-width:640px;margin:0 auto}
.sheet::before{content:"";display:block;width:38px;height:4px;border-radius:2px;background:var(--dt-line-deep);margin:4px auto 10px}
.sheet button{display:flex;align-items:center;gap:14px;width:100%;border:0;background:none;cursor:pointer;
  padding:14px 10px;border-radius:12px;font-size:15.5px;font-weight:500;color:var(--dt-ink);text-align:left;position:relative}
.sheet button:hover{background:var(--dt-cream-deep)}
.sheet button svg{color:var(--dt-crust)}
.sheet .cnt{margin-left:auto;min-width:20px;height:20px;border-radius:10px;background:var(--dt-error);color:#fff;
  font-size:11.5px;font-weight:700;display:grid;place-items:center;padding:0 6px}

/* Tabelas */
.tbl-wrap{overflow-x:auto;border:1px solid var(--dt-line);border-radius:var(--dt-radius-card-lg);background:var(--dt-paper);box-shadow:var(--dt-shadow)}
table{border-collapse:collapse;width:100%;min-width:560px;font-size:13.5px}
th{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dt-muted);
  text-align:left;padding:12px 12px 9px;border-bottom:1px solid var(--dt-line-deep);white-space:nowrap}
td{padding:10.5px 12px;border-bottom:1px solid var(--dt-line);color:var(--dt-brown);white-space:nowrap;vertical-align:middle}
tr:last-child td{border-bottom:0}
tbody tr:hover td{background:var(--dt-cream)}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
.prop-bar{height:7px;border-radius:4px;background:var(--dt-cream-deep);min-width:70px}
.prop-bar i{display:block;height:100%;border-radius:4px;background:var(--dt-wheat)}

/* Registrar venda */
.seg{display:flex;gap:4px;padding:4px;background:var(--dt-cream-deep);border-radius:12px}
.seg button{flex:1;height:46px;border:0;cursor:pointer;font-size:14px;font-weight:600;border-radius:9px;
  background:transparent;color:var(--dt-muted);transition:all var(--dt-dur-fast) var(--dt-ease)}
.seg button.active{background:var(--dt-paper);color:var(--dt-ink);box-shadow:var(--dt-shadow-sm)}
.calcbox{background:var(--dt-ink);border-radius:14px;padding:16px 18px;display:flex;align-items:stretch;gap:16px;color:var(--dt-cream)}
.calcbox .lbl{font-size:11.5px;color:rgba(250,246,239,.65)}
.calcbox .val{font-family:var(--dt-font-display);font-optical-sizing:auto;font-size:26px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--dt-cream)}
.calcbox .val.gold{color:var(--dt-wheat)}
.calcbox .div{width:1px;background:rgba(250,246,239,.18)}
.sugg{position:absolute;top:100%;left:0;right:0;z-index:15;margin-top:4px;background:var(--dt-paper);
  border:1px solid var(--dt-line);border-radius:10px;box-shadow:var(--dt-shadow-lg);overflow:hidden}
.sugg button{display:block;width:100%;text-align:left;padding:12px 14px;border:0;border-bottom:1px solid var(--dt-line);
  background:transparent;cursor:pointer;font-size:14.5px;color:var(--dt-ink)}
.sugg button:last-child{border-bottom:0}
.sugg button:hover{background:var(--dt-cream)}
.sessao-item{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--dt-line);font-size:14px}
.sessao-item:last-child{border-bottom:0}

/* Fornadas / pedidos / produção */
.fornada-card .top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fornada-card h3{font-family:var(--dt-font-display);font-optical-sizing:auto;font-weight:600;font-size:20px;color:var(--dt-ink)}
.fornada-card .resumo{font-size:13.5px;color:var(--dt-muted);margin-top:4px}
.fornada-card .acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.pedido-card .itens{font-size:14.5px;color:var(--dt-brown);margin-top:6px;line-height:1.55}
.pedido-card .meta{font-size:12.5px;color:var(--dt-muted);margin-top:4px}
.pedido-card .acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.card-col{display:flex;flex-direction:column;gap:14px}
.prod-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--dt-line)}
.prod-row:last-child{border-bottom:0}
.prod-row .nome{flex:1;font-size:16px;font-weight:500;color:var(--dt-ink)}
.prod-row .tot{font-family:var(--dt-font-display);font-optical-sizing:auto;font-weight:600;font-size:34px;color:var(--dt-crust);
  font-variant-numeric:tabular-nums;min-width:56px;text-align:right}
.prod-row .quebra{font-size:12px;color:var(--dt-muted)}
.filters{display:flex;gap:10px;flex-wrap:wrap}
.filters .grow{flex:1;min-width:180px}
.searchwrap{position:relative}
.searchwrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--dt-muted);pointer-events:none}
.searchwrap input{padding-left:38px}

/* Histórico — filtro/ordenação por coluna (AutoFilter à la Excel) */
th .col-filter{display:inline-flex;align-items:center;gap:6px;width:100%;padding:0;border:0;background:transparent;cursor:pointer;
  font:inherit;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dt-muted);
  transition:color var(--dt-dur-fast) var(--dt-ease)}
th.num .col-filter{justify-content:flex-end;flex-direction:row-reverse}
th .col-filter .lbl{white-space:nowrap}
th .col-filter:hover{color:var(--dt-ink)}
th .col-filter .fn{width:12px;height:12px;flex:none;opacity:0;transition:opacity var(--dt-dur-fast) var(--dt-ease)}
th:hover .col-filter .fn{opacity:.45}
th .col-filter.on{color:var(--dt-crust)}
th .col-filter.filt .fn{opacity:1}
th .col-filter .cr{width:13px;height:13px;flex:none;color:var(--dt-crust)}

.hist-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:2px}
.hist-foot #hist-count{font-size:12.5px;margin:0}
.hist-clear{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;cursor:pointer;padding:4px 2px;
  font:inherit;font-size:12.5px;font-weight:600;color:var(--dt-crust)}
.hist-clear:hover{color:var(--dt-crust-deep);text-decoration:underline}

.colmenu{position:fixed;z-index:70;width:252px;max-width:calc(100vw - 20px);background:var(--dt-paper);
  border:1px solid var(--dt-line-deep);border-radius:12px;box-shadow:var(--dt-shadow-lg);padding:7px;
  font-family:var(--dt-font-ui);color:var(--dt-ink);animation:cm-in var(--dt-dur-fast) var(--dt-ease)}
@keyframes cm-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.colmenu .cm-sort{display:flex;flex-direction:column;gap:1px}
.colmenu .cm-s{display:flex;align-items:center;gap:9px;width:100%;text-align:left;border:0;background:transparent;cursor:pointer;
  padding:8px 9px;border-radius:8px;font:inherit;font-size:13.5px;color:var(--dt-brown)}
.colmenu .cm-s svg{width:15px;height:15px;flex:none;color:var(--dt-muted)}
.colmenu .cm-s:hover{background:var(--dt-cream)}
.colmenu .cm-s.active{background:var(--dt-cream-deep);color:var(--dt-ink);font-weight:600}
.colmenu .cm-s.active svg{color:var(--dt-crust)}
.colmenu .cm-sep{height:1px;background:var(--dt-line);margin:6px 3px}
.colmenu .cm-search{padding:0 2px 6px}
.colmenu .cm-search input{width:100%;font:inherit;font-size:13.5px;color:var(--dt-ink);background:var(--dt-cream);
  border:1px solid var(--dt-line);border-radius:8px;padding:8px 10px}
.colmenu .cm-search input:focus{outline:none;border-color:var(--dt-wheat);box-shadow:var(--dt-focus-ring)}
.colmenu .cm-all{display:flex;align-items:center;gap:9px;padding:6px 9px;border-radius:7px;cursor:pointer;
  font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--dt-muted)}
.colmenu .cm-all:hover{background:var(--dt-cream)}
.colmenu .cm-vals{max-height:216px;overflow-y:auto;margin:2px 0}
.colmenu .cm-vals label{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:7px;cursor:pointer;
  font-size:13.5px;color:var(--dt-brown)}
.colmenu .cm-vals label:hover{background:var(--dt-cream)}
.colmenu .cm-vals label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.colmenu input[type=checkbox]{width:17px;height:17px;flex:none;accent-color:var(--dt-crust);cursor:pointer;margin:0}
.colmenu .cm-empty{margin:0;padding:12px 9px;font-size:13px;color:var(--dt-muted)}
.colmenu .cm-foot{display:flex;gap:8px;margin-top:6px;padding-top:7px;border-top:1px solid var(--dt-line)}
.colmenu .cm-foot .dt-btn{flex:1}

/* Produtos — a linha desliza pra esquerda e revela "Editar" (o botão mora atrás dela) */
.plist{border:1px solid var(--dt-line);border-radius:var(--dt-radius-card-lg);background:var(--dt-paper);
  box-shadow:var(--dt-shadow);overflow:hidden}
.plist-head,.plist-grid{display:grid;grid-template-columns:minmax(0,1fr) 92px 92px 92px 78px;gap:10px;align-items:center}
.plist-head{padding:12px 16px 9px;border-bottom:1px solid var(--dt-line-deep);font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:var(--dt-muted)}
.plist-row{position:relative;overflow:hidden;border-bottom:1px solid var(--dt-line)}
.plist-row:last-child{border-bottom:0}
/* Aberta, a linha cede 108px à direita: os números escorregam pra esquerda e o nome fica ancorado */
.plist-face{position:relative;z-index:1;display:block;width:100%;padding:12px 16px;border:0;background:var(--dt-paper);
  font:inherit;color:var(--dt-brown);text-align:left;cursor:pointer;
  transition:padding-right var(--dt-dur-fast) var(--dt-ease),background var(--dt-dur-fast) var(--dt-ease)}
.plist-face:hover{background:var(--dt-cream)}
.plist-row.open .plist-face{padding-right:124px;background:var(--dt-cream)}
.plist-face .nome{display:flex;align-items:center;gap:7px;min-width:0;font-size:15px;color:var(--dt-ink)}
.plist-face .nome b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plist-face .sub{display:none;font-size:12px;color:var(--dt-muted);margin-top:3px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plist-face .n{text-align:right;font-variant-numeric:tabular-nums}
.linkish{border:0;background:none;padding:0;font:inherit;font-weight:600;color:var(--dt-crust);
  cursor:pointer;text-decoration:underline;text-underline-offset:2px}
/* Linha do tempo da receita: cheio é trabalho, listrado é a massa descansando */
.tbar{display:flex;height:16px;border-radius:8px;overflow:hidden;background:var(--dt-cream-deep);border:1px solid var(--dt-line-deep)}
.tbar-seg{background:repeating-linear-gradient(135deg,var(--dt-line) 0 5px,var(--dt-cream-deep) 5px 10px);
  border-right:1px solid var(--dt-paper)}
.tbar-seg:last-child{border-right:0}
.tbar-seg.on{background:var(--dt-crust)}
.tbar-key{display:inline-block;width:11px;height:11px;border-radius:3px;vertical-align:-1px;
  background:repeating-linear-gradient(135deg,var(--dt-line) 0 4px,var(--dt-cream-deep) 4px 8px);border:1px solid var(--dt-line-deep)}
.tbar-key.on{background:var(--dt-crust);border-color:var(--dt-crust)}
.plist-act{position:absolute;inset:0 0 0 auto;z-index:2;width:108px;display:flex;align-items:center;justify-content:center;
  background:var(--dt-cream-deep);opacity:0;visibility:hidden;
  transition:opacity var(--dt-dur-fast) var(--dt-ease),visibility var(--dt-dur-fast)}
.plist-row.open .plist-act{opacity:1;visibility:visible}
@media (max-width:719px){
  .plist-head{display:none}
  .plist-grid{grid-template-columns:minmax(0,1fr) auto}
  .plist-face .col-sm{display:none}
  .plist-face .sub{display:block}
  /* na tela estreita, a linha aberta cede o preço pro nome não se espremer */
  .plist-row.open .plist-face{padding-right:112px}
  .plist-row.open .col-md{display:none}
  .plist-act{width:96px}
}

/* ================= EDITOR DE ENCARTE =================
   A visita típica é confirmação, não composição: o encarte pronto ocupa a tela
   e as escolhas ficam numa doca de 48px por linha, a um toque. */
.enc-wrap{position:fixed;inset:0;z-index:80;background:rgba(58,44,26,.45);display:flex;align-items:flex-end;justify-content:center}
.enc-folha{background:var(--dt-cream);width:100%;max-width:560px;height:100%;display:flex;flex-direction:column;
  animation:enc-sobe var(--dt-dur) var(--dt-ease)}
@keyframes enc-sobe{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.enc-cab{height:52px;flex:none;display:flex;align-items:center;gap:12px;padding:0 8px 0 18px;border-bottom:1px solid var(--dt-line)}
.enc-cab h2{font-family:var(--dt-font-display);font-size:18px;font-weight:600;color:var(--dt-ink);line-height:1.1}
.enc-cab .sub{font-size:12px;color:var(--dt-muted)}
.enc-x{width:44px;height:44px;flex:none;margin-left:auto;border:0;background:transparent;color:var(--dt-muted);
  font-size:26px;line-height:1;cursor:pointer;border-radius:10px}
.enc-x:hover{background:var(--dt-cream-deep)}

/* Palco: fundo quase-preto quente pro modelo escuro não sumir */
.enc-palco{flex:1;min-height:0;position:relative;background:#1E1A16;overflow:hidden}
.enc-rolo{height:100%;overflow-y:auto;overscroll-behavior:contain;padding:14px;scrollbar-width:none}
.enc-rolo::-webkit-scrollbar{display:none}
.enc-rolo canvas{display:block;width:100%;height:auto;border-radius:2px;
  box-shadow:0 8px 24px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.08);
  transition:opacity var(--dt-dur-fast) var(--dt-ease)}
.enc-rolo.trocando canvas{opacity:.55}
.enc-pousa{animation:enc-pousa 180ms var(--dt-ease)}
@keyframes enc-pousa{from{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.45)}to{transform:none}}
/* Minimapa: a peça inteira em 30px, com a janela visível marcada */
.enc-mapa{position:absolute;top:14px;right:6px;width:30px;opacity:0;pointer-events:auto;cursor:pointer;
  transition:opacity 150ms var(--dt-ease);border-radius:2px}
.enc-mapa.on{opacity:.9}
.enc-carimbo{position:absolute;left:50%;transform:translateX(-50%);bottom:8px;font-size:11px;
  color:rgba(250,246,239,.75);background:rgba(20,18,16,.72);padding:4px 12px;border-radius:12px;
  pointer-events:none;white-space:nowrap}
.enc-prog{position:absolute;top:0;left:0;right:0;height:2px;background:rgba(232,176,75,.25);overflow:hidden}
.enc-prog i{display:block;height:100%;width:40%;background:var(--dt-wheat);animation:enc-corre 1.1s linear infinite}
@keyframes enc-corre{from{transform:translateX(-100%)}to{transform:translateX(350%)}}

/* Doca: uma linha por escolha, com o valor atual à mostra */
.enc-doca{flex:none;background:var(--dt-cream);border-top:1px solid var(--dt-line)}
.enc-lin{height:48px;display:flex;align-items:center;gap:10px;padding:0 18px;width:100%;border:0;background:transparent;
  cursor:pointer;font:inherit;text-align:left;border-bottom:1px solid var(--dt-line)}
.enc-lin .rot{font-size:13px;color:var(--dt-muted);min-width:56px}
.enc-lin .val{font-size:14px;font-weight:600;color:var(--dt-ink);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.enc-lin .epoca{width:6px;height:6px;border-radius:50%;background:var(--dt-wheat);flex:none}
.enc-lin svg{color:var(--dt-muted);transition:transform 150ms var(--dt-ease);flex:none}
.enc-lin.aberta svg{transform:rotate(180deg)}
.enc-gav{max-height:0;overflow:hidden;transition:max-height 180ms var(--dt-ease);background:var(--dt-cream-deep);position:relative}
.enc-gav.aberta{max-height:190px}
.enc-trilha{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;padding:12px 16px;scrollbar-width:none;
  scroll-padding:0 16px;-webkit-overflow-scrolling:touch}
.enc-trilha::-webkit-scrollbar{display:none}
.enc-trilha>*{scroll-snap-align:start;flex:none}

/* A fila é mais longa que a doca. Um véu na borda avisa que ela continua e leva
   até lá num toque — no celular o arrasto de sempre continua valendo por baixo. */
.enc-borda{position:absolute;top:0;bottom:0;width:48px;border:0;padding:0;margin:0;z-index:2;
  display:flex;align-items:center;color:var(--dt-brown);opacity:0;pointer-events:none;
  cursor:pointer;transition:opacity var(--dt-dur-fast) var(--dt-ease)}
.enc-borda.on{opacity:1;pointer-events:auto}
.enc-borda.ini{left:0;justify-content:flex-start;padding-left:4px;
  background:linear-gradient(90deg,#F3ECE0 40%,rgba(243,236,224,0))}
.enc-borda.fim{right:0;justify-content:flex-end;padding-right:4px;
  background:linear-gradient(270deg,#F3ECE0 40%,rgba(243,236,224,0))}
.enc-borda svg{width:20px;height:20px}
.enc-borda.ini svg{transform:rotate(90deg)}
.enc-borda.fim svg{transform:rotate(-90deg)}
@media (hover:hover){ .enc-borda.on:hover{color:var(--dt-ink)} }

/* Modelos: miniatura do canvas real, recortada pelo topo */
.enc-tpl{width:104px;border:0;background:transparent;padding:0;cursor:pointer;font:inherit}
.enc-tpl .jan{width:104px;height:112px;border-radius:12px;overflow:hidden;position:relative;
  border:1.5px solid var(--dt-line);background:var(--dt-paper);transition:border-color var(--dt-dur-fast) var(--dt-ease)}
.enc-tpl .jan canvas{width:100%;display:block}
.enc-tpl .jan::after{content:"";position:absolute;left:0;right:0;bottom:0;height:16px;
  background:linear-gradient(rgba(255,255,255,0),var(--dt-cream-deep))}
.enc-tpl .rot{display:block;font-size:11px;font-weight:500;color:var(--dt-muted);margin-top:6px;
  height:22px;line-height:1.1;overflow:hidden}
.enc-tpl.on .jan{border:2px solid var(--dt-ink)}
.enc-tpl.on .rot{font-weight:600;color:var(--dt-ink)}

/* Temas: pílula com o ponto na cor do próprio ornamento */
.enc-pil{height:36px;border-radius:18px;padding:0 14px;display:inline-flex;align-items:center;gap:7px;
  border:1px solid var(--dt-line);background:var(--dt-paper);color:var(--dt-brown);
  font-size:13px;font-weight:500;cursor:pointer;transition:background var(--dt-dur-fast) var(--dt-ease)}
.enc-pil i{width:8px;height:8px;border-radius:50%;flex:none}
.enc-pil.on{background:var(--dt-ink);color:var(--dt-cream);border-color:var(--dt-ink)}
.enc-pil .selo{font-size:10px;font-weight:700;color:var(--dt-wheat-deep);text-transform:uppercase;letter-spacing:.06em}
.enc-pil.on .selo{color:var(--dt-wheat)}

/* Fotos: as da fornada primeiro; utilitários fixos no começo */
.enc-fot{width:72px;height:72px;border-radius:10px;overflow:hidden;position:relative;padding:0;cursor:pointer;
  border:1.5px solid var(--dt-line);background:var(--dt-paper)}
.enc-fot img{width:100%;height:100%;object-fit:cover;display:block}
.enc-fot.util{border-style:dashed;border-color:var(--dt-muted);display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:3px;color:var(--dt-muted);font-size:10px}
.enc-fot.on{border:2px solid var(--dt-ink)}
.enc-fot .ck{position:absolute;top:4px;right:4px;width:18px;height:18px;border-radius:50%;background:var(--dt-ink);
  color:var(--dt-cream);display:none;align-items:center;justify-content:center;font-size:11px}
.enc-fot.on .ck{display:flex}

.enc-acoes{flex:none;height:76px;display:flex;align-items:center;gap:8px;padding:0 16px;
  background:var(--dt-cream);border-top:1px solid var(--dt-line)}
.enc-acoes button{height:48px;border-radius:10px;font-family:var(--dt-font-ui);font-size:13px;font-weight:600;
  cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}
.enc-acoes .fantasma{border:1px solid var(--dt-line);background:var(--dt-paper);color:var(--dt-brown);padding:0 14px}
.enc-acoes .primario{flex:1;border:0;background:var(--dt-ink);color:var(--dt-cream);padding:0 18px}
.enc-acoes .ok{background:var(--dt-wheat-soft);border-color:var(--dt-wheat)}
@media (min-width:600px){
  .enc-wrap{align-items:center;padding:16px}
  .enc-folha{height:auto;max-height:calc(100vh - 32px);border-radius:16px;overflow:hidden}
  /* palco ELÁSTICO: antes era height:420px fixa + overflow:hidden na folha, e em
     tela baixa a doca e as ações saíam do quadro — cortadas, sem rolagem. */
  .enc-palco{height:auto;flex:1 1 auto;min-height:200px}
  .enc-doca{max-height:42vh;overflow-y:auto}   /* rola em vez de empurrar as ações pra fora */
}
/* Tela larga: DUAS COLUNAS — preview à esquerda, opções e ações à direita.
   É o que faz o encarte caber inteiro em notebook de tela baixa, sem zoom. */
@media (min-width:900px){
  .enc-folha{max-width:1060px;
    display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-template-rows:auto minmax(0,1fr) auto}
  .enc-cab{grid-column:1/-1;grid-row:1}
  .enc-palco{grid-column:1;grid-row:2/4;min-height:0;height:auto}
  .enc-doca{grid-column:2;grid-row:2;min-height:0;max-height:none;overflow-y:auto;
    border-top:0;border-left:1px solid var(--dt-line)}
  .enc-acoes{grid-column:2;grid-row:3;border-left:1px solid var(--dt-line)}
  /* a peça inteira cabe na altura disponível, centralizada — sem precisar rolar */
  .enc-rolo{display:flex;align-items:center;justify-content:center}
  .enc-rolo canvas{width:auto;height:auto;max-width:100%;max-height:100%}
  .enc-gav.aberta{max-height:240px}
}
/* Altura curta: encolhe cabeçalho, ações e gavetas pra sobrar tela pro preview */
@media (max-height:720px){
  .enc-cab{height:46px}
  .enc-acoes{height:62px}
  .enc-acoes button{height:42px}
  .enc-gav.aberta{max-height:132px}
}

/* Modal */
.modal-backdrop{position:fixed;inset:0;z-index:70;background:rgba(58,44,26,.4);display:flex;align-items:flex-end;justify-content:center;padding:0}
.modal{background:var(--dt-paper);border-radius:18px 18px 0 0;box-shadow:var(--dt-shadow-lg);width:100%;max-width:560px;
  max-height:88vh;overflow:auto;padding:22px 20px calc(22px + env(safe-area-inset-bottom))}
.modal h2{font-family:var(--dt-font-display);font-optical-sizing:auto;font-weight:600;font-size:22px;color:var(--dt-ink);margin:0 0 16px}
.chk-row{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--dt-line)}
.chk-row:last-child{border-bottom:0}
.chk-row input[type="checkbox"]{width:20px;height:20px;accent-color:var(--dt-crust);flex:none}
.chk-row .nm{flex:1;font-size:15px;color:var(--dt-ink)}
.chk-row input[type="number"]{width:74px;padding:8px 10px;font-size:14px}

/* Ajuda de escolha da fornada — o que dá lucro e o que tem saída */
.nf-ajuda{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}
.nf-ord{display:flex;gap:3px;padding:3px;background:var(--dt-cream-deep);border-radius:10px}
.nf-ord button{height:31px;padding:0 11px;border:0;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;
  border-radius:8px;background:transparent;color:var(--dt-muted);
  transition:background var(--dt-dur-fast) var(--dt-ease),color var(--dt-dur-fast) var(--dt-ease)}
.nf-ord button.active{background:var(--dt-paper);color:var(--dt-ink);box-shadow:var(--dt-shadow-sm)}
.nf-sel{display:flex;gap:2px}
.nf-sel button{height:31px;padding:0 10px;border:0;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;
  border-radius:8px;background:transparent;color:var(--dt-wheat-deep);
  transition:background var(--dt-dur-fast) var(--dt-ease),color var(--dt-dur-fast) var(--dt-ease)}
.nf-sel button:hover{background:var(--dt-cream-deep);color:var(--dt-ink)}
.nf-conta{font-size:12px;color:var(--dt-muted);margin-left:auto;font-variant-numeric:tabular-nums}
.chk-row .nm{display:block}
.nf-met{display:block;font-size:11.5px;color:var(--dt-muted);margin-top:3px;font-variant-numeric:tabular-nums}
.nf-met b{font-weight:600;color:var(--dt-brown)}
.nf-tag{display:inline-flex;align-items:center;height:19px;padding:0 8px;margin-left:6px;border-radius:var(--dt-radius-pill);
  font-size:10.5px;font-weight:700;letter-spacing:.03em;white-space:nowrap;vertical-align:2px}
.nf-tag--lucro{background:var(--dt-state-open-bg);color:var(--dt-state-open-ink)}
.nf-tag--saida{background:var(--dt-state-sale-bg);color:var(--dt-state-sale-ink)}

/* Toast */
.toast-wrap{position:fixed;left:12px;right:12px;bottom:96px;z-index:90;display:flex;justify-content:center;pointer-events:none}
.toast{background:var(--dt-ink);color:var(--dt-cream);border-radius:12px;padding:13px 18px;font-size:14.5px;
  box-shadow:var(--dt-shadow-lg);max-width:480px;opacity:0;transform:translateY(8px);
  transition:opacity var(--dt-dur) var(--dt-ease),transform var(--dt-dur) var(--dt-ease)}
.toast.show{opacity:1;transform:none}
.toast.err{background:var(--dt-error);color:#fff}

.chart-box{height:210px;position:relative}
.kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.kpi-grid .span2{grid-column:span 2}
.grid-2{display:grid;grid-template-columns:1fr;gap:18px}

/* ================= DESKTOP ================= */
@media (min-width:960px){
  .sidebar{display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:236px;z-index:50;
    background:var(--dt-crust);color:var(--dt-cream);padding:22px 14px 16px}
  .sidebar .brand{display:flex;align-items:center;gap:11px;padding:0 10px 20px}
  .sidebar .brand .bb{width:40px;height:40px;border-radius:9px;background-color:var(--dt-ink);display:grid;place-items:center;flex:none}
  .sidebar .brand b{font-family:var(--dt-font-display);font-weight:600;font-size:18px;letter-spacing:.02em}
  .sidebar .brand small{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(250,246,239,.55);font-weight:600}
  .sidebar nav{display:flex;flex-direction:column;gap:2px;flex:1;overflow:auto}
  .sidebar nav button{display:flex;align-items:center;gap:12px;border:0;background:none;color:rgba(250,246,239,.78);
    font-size:14px;font-weight:500;padding:11px 12px;border-radius:10px;cursor:pointer;text-align:left;position:relative;
    transition:background var(--dt-dur-fast) var(--dt-ease)}
  .sidebar nav button:hover{background:rgba(250,246,239,.08)}
  .sidebar nav button.active{background:rgba(250,246,239,.14);color:#fff;font-weight:600}
  .sidebar nav button .cnt{margin-left:auto;min-width:19px;height:19px;border-radius:10px;background:var(--dt-wheat);
    color:var(--dt-crust-deep);font-size:11px;font-weight:700;display:grid;place-items:center;padding:0 5px}
  .sidebar .foot{border-top:1px solid rgba(250,246,239,.16);padding-top:12px;display:flex;align-items:center;justify-content:space-between}
  .sidebar .foot small{font-size:11.5px;color:rgba(250,246,239,.5)}
  .sidebar .foot button{border:0;background:none;color:rgba(250,246,239,.8);font-size:13px;font-weight:600;cursor:pointer;
    display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border-radius:8px}
  .sidebar .foot button:hover{background:rgba(250,246,239,.1)}
  .bottomnav{display:none}
  .app-header{padding-left:24px;padding-right:24px}
  .app-header .mini-badge{display:none}
  body.logged{padding-left:236px}
  body.logged .app-header{left:236px}
  main{max-width:1600px;padding:24px 40px 60px}
  #view-venda{max-width:900px}
  .kpi-grid{grid-template-columns:repeat(3,1fr)}
  .kpi-grid .span2{grid-column:span 1}
  .grid-2{grid-template-columns:3fr 2fr;align-items:start}
  .chart-box{height:250px}
  .toast-wrap{left:260px;bottom:28px}
  .modal-backdrop{align-items:center;padding:24px}
  .modal{border-radius:18px}
  .sheet,.sheet-backdrop{display:none}
}
/* Telas largas: listas de cards (pedidos, fornadas) em 2 colunas */
@media (min-width:1160px){
  .card-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
}

/* ================= IMPRESSÃO (lista de produção na parede) ================= */
@media print{
  body{background:#fff !important;background-image:none !important;padding-left:0 !important}
  .sidebar,.bottomnav,.app-header,.no-print,.toast-wrap{display:none !important}
  main{padding:0;max-width:none}
  .dt-card{border:0;box-shadow:none}
  .prod-row .tot{color:#000}
  .prod-row .nome,.serif{color:#000}
}
