/* Estrutura compacta de gestão e frente de caixa */
body{font-size:13px;background:#eef3f9}aside{top:57px;width:185px;padding:16px 10px;background:#f7f9fd;color:#142d48;border-right:1px solid #b5cae1;height:calc(100vh - 57px)}aside .brand,aside>small{display:none}aside .asidebottom{font-size:10px;color:#657e96;line-height:1.7}nav{margin:0;gap:3px}nav button{color:#203851;font-size:13px;padding:10px;gap:10px}nav button svg{width:19px;height:19px;flex-shrink:0}nav button.active{background:linear-gradient(#116de1,#0444bc);color:white}main{margin-left:185px;width:calc(100% - 185px);padding:78px 20px 20px}header{position:fixed;z-index:10;left:0;right:0;top:0;height:57px;border-radius:0;padding:0 22px;gap:16px;margin:0;box-shadow:0 1px 4px #1b345544;background:linear-gradient(110deg,#052e60,#075fac)}#market-header-brand{display:flex;align-items:center;gap:10px;flex:1;white-space:nowrap;font-size:19px;font-weight:700}#market-header-brand svg{width:30px;height:30px;color:#fff}#market-header-brand b{color:#ffcd3c}#market-header-brand small{font-size:15px;color:#e0eafb;font-weight:400;letter-spacing:0}header>div:not(#market-header-brand){flex:0}header>div:not(#market-header-brand)>small{display:none}header h1{font-size:14px;font-weight:500;margin:0;white-space:nowrap;color:#e7efff}header .badge{background:#ffffff1a;color:#e2ffec;padding:6px 10px;font-size:10px}#logout{padding:6px 12px;border-color:#ffffff40;background:#ffffff12;color:white;font-size:12px}.quick-grid{gap:12px;margin-bottom:18px}.quick-grid button{border-radius:7px;min-height:115px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:15px;font-weight:700;background:linear-gradient(#edf7ff,#c7dff5);border:1px solid #b9d3ec}.quick-grid button svg{width:43px;height:43px;color:#0865c6;filter:drop-shadow(0 2px 1px #fff)}.quick-grid button:nth-child(2) svg,.quick-grid button:nth-child(6) svg{color:#e69b15}.quick-grid button:nth-child(5) svg{color:#0b9e53}.panel{padding:16px;margin-bottom:15px;border:1px solid #bbcfe4;border-radius:6px}.panel h2{font-size:16px;margin-top:0;margin-bottom:16px}.cards{gap:12px;margin-bottom:16px}.card{padding:15px;margin-bottom:0}.card strong{font-size:23px;margin:10px 0}.card>span{font-size:12px}td,th{padding:10px 8px}th{font-size:10px;color:#1a3149;background:linear-gradient(#f6f9fd,#dce7f3)}input,select{padding:8px;border-radius:4px}button{border-radius:5px;padding:8px 12px}footer{margin-top:18px}.pos-status{border-radius:5px;padding:11px 14px;margin-bottom:12px;font-size:13px}.pos-status span{font-size:11px}.counter-layout{grid-template-columns:minmax(0,1fr) 150px;gap:12px}.counter-layout>div:first-child{min-width:0}.counter-layout>div:first-child>.panel:first-child{margin-bottom:12px}.counter-layout #add{grid-template-columns:minmax(180px,1fr) 95px 130px}.counter-commands{display:flex;flex-direction:column;gap:9px}.counter-commands button{display:flex;align-items:center;gap:8px;text-align:left;min-height:44px;background:linear-gradient(white,#e8f0f9);border-color:#b4c9df;color:#183c66}.counter-commands svg{width:20px;height:20px;color:#095ab5}kbd{font:700 17px Segoe UI,Arial,sans-serif;color:#085bbc}.counter-layout>.pos-checkout{grid-column:1/-1;position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 22px;border-top:1px solid #bbcfe4}.pos-checkout>.muted{font-size:14px;color:#203c59;align-self:center;font-weight:700}.pos-total{font-size:40px;margin:0;text-align:right;line-height:1.4}.pos-summary{grid-column:1/-1;margin:8px 0 14px;padding:8px 0}.pos-checkout #sale{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end}.pos-checkout #sale button{grid-column:1/-1;max-width:430px;justify-self:end;width:100%;padding:14px;font-size:21px}.pos-checkout #sale button kbd{color:white;font-size:21px}.pos-change{padding:12px 0;font-size:19px}.pos-checkout>p{font-size:11px;align-self:center}.pos-layout table{min-width:580px}.counter-layout .empty{min-height:180px;display:grid;place-items:center;background:linear-gradient(white,#f4f8fd)}#clear-cart{font-size:11px}.login-mode{min-height:100vh;background:linear-gradient(120deg,#061d37,#0b4778)}.login-mode aside,.login-mode header{display:none}.login-mode main{width:100%;margin:0;padding:0;min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column}.login-mode #content{display:grid;grid-template-columns:1fr 420px;align-items:center;gap:100px;width:min(1050px,92vw);padding:45px 0}.login-mode .login{margin:0;max-width:none;padding:30px 34px;background:#fffffff5;box-shadow:0 22px 70px #0005;border:1px solid #e7edf7;border-radius:9px}.login-mode .login h2{font-size:17px;text-align:center;margin-top:20px;margin-bottom:8px}.login-mode .login form{gap:15px}.login-mode .login input{padding:12px;background:white}.login-mode .login form button{margin-top:7px;padding:12px;background:linear-gradient(#146ce3,#033db8);font-size:16px}.login-mode .login>.muted{text-align:center;font-size:11px}.login-symbol{display:flex;justify-content:center}.login-symbol svg{height:65px;width:65px;color:#0755ac;filter:drop-shadow(0 2px 1px #acd5ff)}.login-brand{text-align:center;font-size:24px;font-weight:750;color:#08386c;margin-top:8px}.login-brand b{color:#d99900}.login-tagline{text-align:center;font-size:11px;color:#708398}.login-market-caption{color:white}.login-market-caption span{font-size:11px;letter-spacing:3px;color:#8ebfea}.login-market-caption h2{font-size:47px;line-height:1.15;font-weight:700;margin:22px 0}.login-market-caption p{font-size:15px;color:#b9d2e7;line-height:1.6}.login-mode #notice:not(:empty){position:relative;max-width:600px;margin:20px 0 0;width:90vw}.login-mode footer{font-size:10px;color:#adc6dc;margin-bottom:24px}.login-mode [hidden]{display:none!important}@media(min-width:1450px){.counter-layout{grid-template-columns:minmax(0,1fr) 170px}.pos-layout table{min-width:680px}}@media(max-width:850px){#market-header-brand small,header h1{display:none}aside{width:155px}main{margin-left:155px;width:calc(100% - 155px);padding:73px 12px 15px}.counter-layout{grid-template-columns:1fr}.counter-commands{display:grid;grid-template-columns:repeat(3,1fr)}.counter-layout #add{grid-template-columns:1fr 80px}.counter-layout #add button{grid-column:1/-1}.counter-layout>.pos-checkout{display:block}.pos-checkout #sale{grid-template-columns:1fr}.pos-checkout #sale button{max-width:none}.login-mode #content{grid-template-columns:1fr;max-width:420px;gap:20px}.login-market-caption{display:none}.login-mode .login{padding:28px}.login-mode main{margin:0;padding:20px;width:100%}}@media(max-width:650px){aside{top:57px;position:fixed;height:45px;width:100%;padding:3px 8px;overflow:auto;z-index:9}nav{display:flex;height:37px;align-items:stretch}nav button{font-size:11px;padding:6px;gap:5px}nav button svg{width:15px}aside .asidebottom{display:none}main{width:100%;margin:0;padding:118px 10px 15px}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-grid button{min-height:90px}.quick-grid button svg{width:32px;height:32px}#market-header-brand{font-size:16px}.badge{display:none}header{padding:0 12px}.cards{grid-template-columns:repeat(2,1fr)}.card strong{font-size:20px}.pos-status{flex-wrap:wrap}}@media print{header,aside,footer{display:none!important}main{padding:0;margin:0;width:100%}}

.cart-quantity{width:85px;min-width:65px}.pos-checkout #sale{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:850px){.pos-checkout #sale{grid-template-columns:1fr 1fr}}@media(max-width:500px){.pos-checkout #sale{grid-template-columns:1fr}}

body[data-view="Dashboard"] #content{max-width:1580px;margin-inline:auto}
.dashboard-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.dashboard-intro h2{margin:0;font-size:clamp(22px,2.1vw,30px);letter-spacing:-.035em;color:#112942}
.dashboard-intro .dashboard-sale{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#0757ba;color:white;border:1px solid #0757ba;border-radius:9px;padding:10px 16px;font-size:14px;min-height:44px;white-space:nowrap}
.dashboard-intro .dashboard-sale:hover{background:#064894}
.dashboard-sale svg,.dashboard-actions svg{width:19px;height:19px;flex:none}
body[data-view="Dashboard"] .cards{margin-bottom:16px}
body[data-view="Dashboard"] .cards .card{border-radius:12px;background:#fff;border:1px solid #dce5ef;box-shadow:0 2px 5px #193c6410}
body[data-view="Dashboard"] .cards .card strong{font-size:clamp(22px,2vw,30px);letter-spacing:-.025em}
.dashboard-actions .quick-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.dashboard-actions .quick-grid button{display:inline-flex;flex-direction:row;justify-content:flex-start;gap:8px;min-height:42px;padding:8px 12px;border-radius:8px;background:#fff;border:1px solid #d4e0ec;font-size:13px;color:#153551;box-shadow:none}
.dashboard-actions .quick-grid button:hover{background:#eef5fc;border-color:#99b8da}
.dashboard-actions .quick-grid button svg{width:19px;height:19px;filter:none;color:#1761ad}
.register-status{display:inline-flex;padding:3px 9px;border-radius:20px;color:#425870;background:#edf1f5;font-weight:650;font-size:12px}
.register-status.is-open{color:#146044;background:#dff4eb}
@media(max-width:600px){.dashboard-intro{align-items:flex-start}.dashboard-intro .dashboard-sale{padding-inline:10px}}

.store-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:16px;margin-top:18px}
.store-panel{min-width:0;margin:0;border-radius:12px;border:1px solid #d9e5ee;box-shadow:0 2px 5px #193c6410}
.store-sales{grid-column:1/-1}
.store-panel-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}
.store-panel-title h2{margin:0;color:#18334c;font-size:18px}
.store-panel-title p{margin:4px 0 0;color:#526b80;font-size:13px}
.store-panel-title button{color:#15589a;background:#edf5fc;border:1px solid #d8e7f5;border-radius:7px;padding:8px 10px;font-size:13px;font-weight:650}
.store-panel-title button:hover{background:#e1effd}
.till-list{list-style:none;margin:0;padding:0}
.till-list li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;border-top:1px solid #e7eef4}
.till-list small{display:block;color:#526b80}
.till-icon{width:34px;height:34px;display:grid;place-items:center;background:#eef4fa;color:#235c93;border-radius:8px}
.till-icon svg{width:19px;height:19px}
.store-empty{color:#526b80;border:1px dashed #d4e1ec;border-radius:8px;padding:14px;margin:0}
@media(max-width:900px){.store-grid{grid-template-columns:1fr}}

/* Frente de caixa */
body[data-view="PDV"] .counter-layout{grid-template-columns:minmax(0,1fr) minmax(290px,350px);grid-template-rows:auto 1fr;align-items:start;gap:12px 16px}
.counter-layout .pos-basket{grid-column:1;grid-row:2;min-width:0}
.counter-layout .counter-commands{grid-column:1;grid-row:1;display:flex;flex-direction:row;flex-wrap:wrap;gap:6px}
.counter-layout .counter-commands button{min-height:34px;padding:5px 8px;border-radius:7px;background:#fff;font-size:12px}
.counter-layout .counter-commands kbd{font-size:11px;color:#0757ba}
body[data-view="PDV"] .counter-layout>.pos-checkout{grid-column:2;grid-row:1/span 2;display:block;position:sticky;top:72px;padding:0;overflow:hidden;border-radius:12px;background:#fff;border:1px solid #cdddec}
.pos-payment-display{background:#0b2946;color:#e6f2ff;padding:14px 16px}
.pos-payment-display>span{font-size:12px;font-weight:700;letter-spacing:.05em}
.pos-payment-display .pos-total{color:#fff;text-align:left;font-size:clamp(32px,3.3vw,49px);line-height:1.15;margin:5px 0 8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.pos-payment-display .pos-summary{color:#d2e5f8;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px}
.counter-layout .pos-checkout #sale{padding:14px 16px 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.counter-layout .pos-checkout #sale label{min-width:0}
.counter-layout .pos-checkout #sale label:has([name="payment"]){grid-column:1/-1}
.counter-layout .pos-checkout #sale .pos-change{grid-column:1/-1;padding:8px 10px;border-radius:7px;background:#e9f5ef;color:#134b36;min-height:0;font-size:13px}
.counter-layout .pos-checkout #sale button{font-size:16px;max-width:none;padding:10px;min-height:44px}
.counter-layout .pos-checkout #sale button kbd{font-size:12px}
.counter-layout .pos-checkout>p{margin:10px 16px 14px;font-weight:400;line-height:1.45}
.counter-layout .pos-basket .panel{border-radius:10px}
.counter-layout .pos-basket table{min-width:520px}
.pos-basket-empty{display:grid;gap:4px;align-content:center;justify-items:center;text-align:center;min-height:125px;background:#f3f7fc;border:1px dashed #d0deec;border-radius:8px;color:#3e5872;margin-bottom:10px;padding:12px}
.pos-basket-empty strong{color:#193e64}
@media(max-width:1050px){body[data-view="PDV"] .counter-layout{grid-template-columns:minmax(0,1fr) minmax(270px,310px)}}
@media(max-width:860px){body[data-view="PDV"] .counter-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.counter-layout .pos-basket{grid-row:2}body[data-view="PDV"] .counter-layout>.pos-checkout{grid-column:1;grid-row:3;position:static}}

/* Terminal de caixa */
body[data-view="PDV"] aside{display:none}
body[data-view="PDV"] main{margin-left:0;width:100%;max-width:none;padding-inline:clamp(12px,2vw,28px)}
body[data-view="PDV"] .pos-status{min-height:48px;background:#102c47}
body[data-view="PDV"] .pos-status button{color:#fff;background:transparent;border:1px solid #ffffff65;border-radius:6px;padding:6px 10px}
.terminal-product{display:grid;gap:4px;background:#102c47;color:#fff;padding:13px 16px;margin-bottom:13px;border-radius:8px}
.terminal-product span,.terminal-product small{color:#c1d8ec;font-size:12px}
.terminal-product strong{font-size:clamp(20px,2.5vw,34px);line-height:1.12;overflow-wrap:anywhere}
.counter-layout .pos-checkout #sale .pos-change{font-size:clamp(17px,1.8vw,25px);font-weight:750;font-variant-numeric:tabular-nums}

/* Disposição do terminal com cupom ao lado da leitura */
body[data-view="PDV"] .counter-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto 1fr auto;gap:10px 14px}
body[data-view="PDV"] .counter-layout>.counter-commands{grid-column:1/-1;grid-row:1}
body[data-view="PDV"] .counter-layout>.pos-basket{grid-column:1;grid-row:2}
body[data-view="PDV"] .counter-layout>.terminal-receipt{grid-column:2;grid-row:2/4;align-self:stretch;margin:0;border-radius:6px;background:#fcfdff;min-width:0}
body[data-view="PDV"] .counter-layout>.pos-checkout{grid-column:1;grid-row:3;position:static;border-radius:6px}
.terminal-receipt .table table{min-width:510px}
.terminal-receipt .pos-section{border-bottom:1px dashed #a9bed2;padding-bottom:10px}
.terminal-receipt .pos-basket-empty{background:transparent;border:0;min-height:150px}
.terminal-product{border-radius:5px;background:#103d73}
.terminal-totals{grid-row:4;grid-column:1/-1;display:grid;grid-template-columns:1fr 1.45fr 1fr;gap:8px;position:sticky;bottom:0;z-index:3;padding:8px 0;background:#edf3fa}
.terminal-totals>*{border-radius:5px}
.terminal-register-status,.terminal-totals .pos-change{display:grid;place-items:center;margin:0;background:#103d73;color:white;padding:10px;font-weight:750;font-size:clamp(15px,2vw,26px);text-align:center}
.terminal-totals .pos-payment-display{background:#103d73;padding:8px 14px}
.terminal-totals .pos-total{font-size:clamp(26px,3vw,44px);margin:0}
.terminal-totals .pos-summary{margin:0;padding:2px 0;border:0}
@media(max-width:850px){
 body[data-view="PDV"] .counter-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}
 body[data-view="PDV"] .counter-layout>.pos-basket,body[data-view="PDV"] .counter-layout>.terminal-receipt,body[data-view="PDV"] .counter-layout>.pos-checkout,.terminal-totals{grid-column:1;grid-row:auto}
 .terminal-totals{position:static;grid-template-columns:1fr 1fr}
 .terminal-totals .pos-payment-display{grid-column:1/-1;grid-row:1}
}
