
:root{--bg:#fbf2eb;--paper:#fffdfb;--wine:#901f35;--ink:#4e3933;--muted:#7b665f;--line:#ead6cc;--soft:#fff7f2;--ok:#2f6c4f;--warn:#8a5b16;--serif:Georgia,"Times New Roman",serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans)}button,input,select{font:inherit}.admin-shell{width:min(1180px,94vw);margin:28px auto 110px}.brand-panel{display:flex;align-items:center;gap:24px;margin-bottom:18px}.brand-panel img{width:150px}.eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:800;color:var(--wine)}h1,h2,h3{font-family:var(--serif);color:var(--wine);margin:4px 0 8px}.brand-panel p,.toolbar p,.login-card p{margin:0;color:var(--muted);line-height:1.45}.card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px}.login-card{max-width:520px;margin:38px auto;display:grid;gap:20px}.login-card form{display:grid;gap:14px}label{display:grid;gap:6px;font-weight:700;color:var(--wine)}input,select{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:#fff;color:var(--ink)}input:focus,select:focus,button:focus-visible{outline:3px solid rgba(144,31,53,.18);outline-offset:2px}.primary,.secondary{border-radius:11px;padding:11px 15px;font-weight:800;cursor:pointer}.primary{border:1px solid var(--wine);background:var(--wine);color:#fff}.primary:disabled{opacity:.5;cursor:not-allowed}.secondary{border:1px solid var(--line);background:#fff;color:var(--wine)}.message{min-height:20px;font-size:.86rem}.message.error,.status.error{color:#9a2e2e}.message.ok,.status.ok{color:var(--ok)}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.toolbar-actions{display:flex;gap:8px}.notice{margin:14px 0;background:#fff8f4;border:1px solid var(--line);border-radius:13px;padding:11px 14px;color:var(--muted);font-size:.86rem}.status{min-height:24px;margin:8px 0}.catalog-section{margin:18px 0}.catalog-section h3{font-size:1.45rem}.catalog-grid{display:grid;gap:10px}.price-row{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(140px,.8fr) 150px 170px 110px;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px}.price-row.changed{box-shadow:0 0 0 2px rgba(144,31,53,.12);border-color:#c88793}.item-name strong{display:block;color:var(--wine);font-family:var(--serif)}.item-name small{display:block;color:var(--muted);margin-top:3px}.mode-price.hidden{opacity:.45}.toggle{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:700}.toggle input{width:18px;height:18px}.savebar{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);width:min(900px,92vw);display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fffdfb;border:1px solid var(--line);border-radius:16px;padding:12px 14px;box-shadow:0 14px 40px rgba(80,45,48,.18);z-index:20}.savebar span{font-size:.86rem;color:var(--muted)}
@media(max-width:820px){.brand-panel{align-items:flex-start}.brand-panel img{width:110px}.toolbar{align-items:flex-start;flex-direction:column}.price-row{grid-template-columns:1fr 1fr}.item-name{grid-column:1/-1}.active-cell{grid-column:1/-1}.savebar{bottom:8px}.savebar span{display:none}}
@media(max-width:480px){.admin-shell{width:95vw;margin-top:16px}.brand-panel{gap:12px}.brand-panel h1{font-size:1.55rem}.card{padding:16px}.price-row{grid-template-columns:1fr}.item-name,.active-cell{grid-column:auto}.toolbar-actions{width:100%}.toolbar-actions button{flex:1}.savebar{padding:9px}.savebar button{width:100%}}

/* V44.1 — login: visualizar senha e mensagens de diagnóstico */
.password-wrap{position:relative;display:flex;align-items:center}.password-wrap input{padding-right:50px}.password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;background:transparent;color:var(--wine);border-radius:9px;display:grid;place-items:center;cursor:pointer;font-size:1.05rem}.password-toggle:hover{background:#fff4ef}.password-toggle:focus-visible{outline:3px solid rgba(144,31,53,.18);outline-offset:1px}.message.detail{white-space:pre-line;line-height:1.35}

/* V44.2 — recuperação de senha e ícones claros */
.password-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.text-action{border:0;background:transparent;color:var(--wine);padding:2px 0 0;text-align:center;cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.text-action:hover{opacity:.8}.text-action:disabled{opacity:.5;cursor:not-allowed}
.reset-card{max-width:560px;margin:38px auto;display:grid;gap:20px}.reset-card form{display:grid;gap:14px}.reset-help{font-size:.84rem;color:var(--muted);line-height:1.45}.password-strength{font-size:.78rem;color:var(--muted);margin-top:-4px}.password-strength.ok{color:var(--ok)}

/* V44.4 — painel mais compacto e eficiente */
.admin-shell{margin-top:20px}.brand-panel{gap:18px;margin-bottom:12px}.brand-panel img{width:112px}.brand-panel h1{font-size:2rem;line-height:1.05}.brand-panel p{font-size:.88rem}.toolbar{padding:18px 20px}.toolbar h2{font-size:1.55rem;margin-bottom:3px}.admin-tools{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;margin-top:12px;padding:12px 14px}.search-label{font-size:.78rem}.search-label input{margin-top:4px;min-height:42px}.price-row[hidden]{display:none!important}.catalog-section.empty{display:none}.savebar{padding:10px 12px}.savebar .primary{min-width:170px}.status.ok{font-weight:700}.price-row.changed{background:#fffaf7}.price-row.changed::before{content:"Alterado";position:absolute;right:12px;top:-9px;background:var(--wine);color:#fff;border-radius:999px;padding:2px 7px;font-size:.62rem;font-weight:800}.price-row{position:relative}
@media(max-width:820px){.admin-tools{grid-template-columns:1fr}.admin-tools button{width:100%}.brand-panel img{width:88px}.brand-panel h1{font-size:1.7rem}}
@media(max-width:480px){.brand-panel{align-items:center}.brand-panel p{font-size:.78rem}.toolbar{padding:15px}.catalog-section h3{font-size:1.25rem}.price-row{padding:10px}.savebar{bottom:max(6px,env(safe-area-inset-bottom));width:94vw}}


/* V44.5 — navegação de retorno ao site */
.brand-panel{position:relative}
.brand-copy{min-width:0}
.back-site{margin-left:auto;align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid var(--line);background:#fff;color:var(--wine);border-radius:11px;padding:9px 12px;font-size:.82rem;font-weight:800;text-decoration:none;transition:.15s ease}
.back-site:hover{background:#fff4ef;border-color:#d8afa8}
.back-site:focus-visible{outline:3px solid rgba(144,31,53,.18);outline-offset:2px}
@media(max-width:820px){.brand-panel{flex-wrap:wrap}.back-site{margin-left:0}}
@media(max-width:480px){.back-site{width:100%;order:3;margin-top:2px}}

/* V45.3 — solicitações registradas pelo site */
.orders-card{margin-top:14px;padding:18px 20px}.orders-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.orders-head h2{font-size:1.5rem;margin-bottom:3px}.orders-head p{margin:0;color:var(--muted);font-size:.84rem}.orders-list{display:grid;gap:9px;max-height:440px;overflow:auto;padding-right:3px}.order-admin-row{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(135px,.8fr) 110px 120px minmax(150px,.8fr);gap:10px;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fff;padding:11px 12px}.order-admin-row strong{color:var(--wine);font-family:var(--serif)}.order-admin-row small{display:block;color:var(--muted);margin-top:3px;line-height:1.35}.order-code{font-size:.7rem;font-weight:800;color:var(--muted);letter-spacing:.05em}.order-total{font-weight:800;color:var(--wine)}.order-status-select{padding:8px 9px}.orders-empty{color:var(--muted);font-size:.86rem;padding:8px 0}.order-consult{display:inline-block;margin-top:4px;font-size:.66rem;border-radius:999px;padding:2px 6px;background:#fff2ec;color:var(--wine)}
@media(max-width:900px){.order-admin-row{grid-template-columns:1fr 1fr}.order-admin-row .order-customer{grid-column:1/-1}.orders-list{max-height:none}.orders-head{align-items:stretch;flex-direction:column}.orders-head button{width:100%}}
@media(max-width:520px){.order-admin-row{grid-template-columns:1fr}.order-admin-row .order-customer{grid-column:auto}.orders-card{padding:15px}.orders-head h2{font-size:1.3rem}}

/* V45.4 — organização do painel administrativo */
.admin-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;align-items:start}
.admin-sidebar{position:sticky;top:18px;padding:16px;display:grid;gap:18px}
.sidebar-user{display:grid;gap:5px;min-width:0}.sidebar-user strong{font-size:.76rem;color:var(--muted);overflow-wrap:anywhere}
.admin-nav{display:grid;gap:6px}.admin-nav-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px;border-radius:10px;color:var(--ink);text-decoration:none;font-weight:800;font-size:.88rem}.admin-nav-link:hover,.admin-nav-link.active{background:#fff4ef;color:var(--wine)}
.nav-badge{min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:inline-grid;place-items:center;background:#f5e4df;color:var(--wine);font-size:.72rem}
.sidebar-actions{padding-top:4px;border-top:1px solid var(--line)}.sidebar-actions button{width:100%}
.admin-content{min-width:0}.admin-section{scroll-margin-top:18px}.admin-section+.admin-section{margin-top:18px}
.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.summary-card{text-decoration:none;color:inherit;display:grid;gap:4px;padding:16px 18px}.summary-card span{font-size:.78rem;font-weight:800;color:var(--muted)}.summary-card strong{font-family:var(--serif);font-size:2rem;color:var(--wine);line-height:1}.summary-card small{color:var(--muted)}
.orders-tools{display:grid;grid-template-columns:minmax(220px,1fr) 190px;gap:10px;margin:14px 0 6px}.orders-tools label{font-size:.76rem}.orders-tools input,.orders-tools select{margin-top:4px}
.orders-list{max-height:none;overflow:visible;padding-right:0}.orders-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px}.orders-pagination span{font-size:.8rem;color:var(--muted);min-width:150px;text-align:center}.orders-pagination button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:980px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:sticky;top:0;z-index:15;display:block;padding:9px 10px}.sidebar-user,.sidebar-actions{display:none}.admin-nav{display:flex;overflow-x:auto;gap:6px;scrollbar-width:none}.admin-nav::-webkit-scrollbar{display:none}.admin-nav-link{white-space:nowrap;flex:0 0 auto;padding:9px 10px}.admin-section{scroll-margin-top:66px}}
@media(max-width:700px){.summary-grid{grid-template-columns:1fr}.orders-tools{grid-template-columns:1fr}.orders-pagination{display:grid;grid-template-columns:1fr 1fr}.orders-pagination span{grid-column:1/-1;grid-row:1}.orders-pagination button{width:100%}}

/* V45.5 — sessão autenticada: login realmente oculto e ações únicas no cabeçalho */
.brand-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.brand-actions .secondary,.brand-actions .back-site{white-space:nowrap}.brand-actions .secondary{background:#fff}
@media(max-width:760px){.brand-panel{flex-wrap:wrap}.brand-actions{width:100%;justify-content:flex-end}.brand-copy{flex:1;min-width:190px}}

/* V45.6 — atributo HTML hidden sempre prevalece sobre layouts do admin */
[hidden]{display:none!important}


/* V45.7 — CRM simples, detalhes em modal e relatórios */
.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.order-customer strong.order-open,.customer-open{cursor:pointer;text-decoration:underline;text-decoration-color:rgba(144,31,53,.22);text-underline-offset:3px}.order-customer strong.order-open:hover,.customer-open:hover{color:#b02a47}
.order-admin-row{grid-template-columns:minmax(220px,1.25fr) minmax(130px,.72fr) 105px 118px minmax(145px,.78fr)}
.data-section{padding:18px 20px}.customers-tools{grid-template-columns:minmax(220px,1fr) auto;align-items:end}.customers-list{display:grid;gap:9px}.customer-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(170px,.8fr) 110px 150px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:12px;background:#fff}.customer-row strong{font-family:var(--serif);color:var(--wine)}.customer-row small{display:block;color:var(--muted);margin-top:3px}.customer-phone{font-weight:800;color:var(--ink)}
.report-filters{display:grid;grid-template-columns:1.2fr repeat(2,.8fr) 1fr;gap:10px;margin:14px 0}.report-filters label{font-size:.76rem}.report-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0}.report-metric{border:1px solid var(--line);border-radius:13px;background:#fff;padding:13px}.report-metric span{display:block;font-size:.72rem;font-weight:800;color:var(--muted)}.report-metric strong{display:block;margin-top:4px;font-family:var(--serif);font-size:1.45rem;color:var(--wine)}.report-actions{display:flex;justify-content:flex-end;margin:8px 0}.report-products{display:grid;gap:6px}.report-product-row{display:grid;grid-template-columns:1fr 140px 140px;gap:10px;padding:9px 11px;border-bottom:1px solid var(--line);font-size:.84rem}.report-product-row.head{font-weight:800;color:var(--wine);background:#fff8f4;border-radius:9px}.report-product-row strong{text-align:right}
.admin-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px}.admin-modal-backdrop{position:absolute;inset:0;background:rgba(44,27,27,.46);backdrop-filter:blur(2px)}.admin-modal-card{position:relative;z-index:1;width:min(760px,96vw);max-height:min(86vh,850px);overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(54,31,35,.25);padding:20px}.admin-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;position:sticky;top:-20px;background:var(--paper);padding:20px 0 12px;z-index:2}.admin-modal-body{display:grid;gap:14px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-box{border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff}.detail-box span{display:block;font-size:.7rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.detail-box strong,.detail-box a{display:block;margin-top:4px;color:var(--wine);overflow-wrap:anywhere}.detail-items{display:grid;gap:8px}.detail-item{border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff}.detail-item h4{margin:0 0 6px;color:var(--wine);font-family:var(--serif)}.detail-item p{margin:3px 0;color:var(--ink);font-size:.84rem;line-height:1.4}.detail-item small{color:var(--muted)}.detail-message{white-space:pre-wrap;font-size:.8rem;background:#fff8f4;border:1px solid var(--line);border-radius:12px;padding:12px;max-height:220px;overflow:auto}.modal-actions{display:flex;gap:8px;flex-wrap:wrap}.modal-actions a{text-decoration:none}
@media(max-width:980px){.summary-grid{grid-template-columns:1fr 1fr}.report-metrics{grid-template-columns:repeat(3,1fr)}.report-filters{grid-template-columns:1fr 1fr}.customer-row{grid-template-columns:1fr 1fr}.customer-row>div:first-child{grid-column:1/-1}}
@media(max-width:700px){.summary-grid{grid-template-columns:1fr}.report-metrics{grid-template-columns:1fr 1fr}.report-filters{grid-template-columns:1fr}.customers-tools{grid-template-columns:1fr}.customer-row{grid-template-columns:1fr}.customer-row>div:first-child{grid-column:auto}.detail-grid{grid-template-columns:1fr}.report-product-row{grid-template-columns:1fr 90px}.report-product-row>*:last-child{display:none}.admin-modal{padding:10px}.admin-modal-card{padding:15px}.admin-modal-head{top:-15px;padding-top:15px}}

/* V45.8 — relatórios gerenciais */
.report-customer-filter{grid-column:1/-1}.report-actions{gap:8px;flex-wrap:wrap}.report-status-breakdown{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 14px}.report-status-chip{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:#fff}.report-status-chip span{font-size:.73rem;color:var(--muted);font-weight:800}.report-status-chip strong{font-size:.88rem;color:var(--wine)}.report-panels{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-top:10px}.report-panel{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}.report-panel h3{margin:0 0 8px}.report-note{font-size:.75rem;color:var(--muted);margin:0 0 10px;line-height:1.45}.report-flavor-row{display:grid;grid-template-columns:1fr 90px;gap:10px;padding:9px 11px;border-bottom:1px solid var(--line);font-size:.84rem}.report-flavor-row.head{font-weight:800;color:var(--wine);background:#fff8f4;border-radius:9px}.report-flavor-row strong{text-align:right}.report-product-row b{color:var(--wine);font-size:.74rem;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:980px){.report-panels{grid-template-columns:1fr}.report-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.report-metrics{grid-template-columns:1fr 1fr}.report-actions{justify-content:stretch}.report-actions button{flex:1 1 160px}.report-status-breakdown{display:grid;grid-template-columns:1fr 1fr}.report-status-chip{justify-content:space-between}}

/* V45.12 — correção responsiva definitiva da listagem de pedidos */
@media (max-width: 900px){
  .order-admin-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:10px 14px;
  }
  .order-admin-row .order-customer{grid-column:1/-1;min-width:0}
  .order-admin-row > div{min-width:0}
  .order-admin-row strong,.order-admin-row small,.order-admin-row div{overflow-wrap:anywhere}
  .order-status-select{width:100%;min-width:0}
}
@media (max-width: 600px){
  .order-admin-row{
    grid-template-columns:1fr;
    gap:9px;
    padding:12px;
  }
  .order-admin-row .order-customer{grid-column:auto}
  .order-admin-row > div{width:100%}
  .order-total{font-size:1rem}
  .order-status-select{min-height:44px}
}
