@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#e9f4ef;background:#0a1110;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.43;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #50d58f;outline-offset:2px}.new-shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.side{background:#0d1918;border-right:1px solid #20322e;display:flex;flex-direction:column;padding:22px 14px;gap:22px}.brand{display:flex;align-items:center;gap:12px;padding:10px 7px 23px;border-bottom:1px solid #23332f}.brand img{width:54px;height:54px;object-fit:contain;border-radius:9px}.brand strong{font-family:Georgia,serif;font-size:20px;letter-spacing:1px}.brand span{display:block;letter-spacing:4px;color:#54d28c;font-size:11px;margin-top:3px}.nav-label{color:#68867a;font-size:10px;letter-spacing:2px;margin:0 10px}.side nav{display:grid;gap:7px}.nav{width:100%;background:none;border:0;color:#adbfba;text-align:left;padding:15px 14px;border-radius:12px;display:flex;gap:14px;align-items:center;font-size:14px}.nav.active,.nav:hover{background:linear-gradient(110deg,#185e3c,#248251);color:#fff}.side-bottom{margin-top:auto;display:grid;gap:12px}.side-info{border:1px solid #284038;border-radius:12px;padding:17px;color:#c4dbcf}.side-info small{color:#89a397}.workspace{min-width:0;padding:0 22px 16px}.topbar{padding:22px 4px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #22322e}.topbar h1{margin:3px 0;font-size:21px}.eyebrow{font-size:10px;letter-spacing:2px;color:#53c785}.actions{display:flex;align-items:center;gap:12px}.status-dot{color:#55ce8c;font-size:12px}.secondary{background:#192725;border:1px solid #2b3e39;color:#dcece5;padding:11px 14px;border-radius:10px}.secondary:hover{background:#253b34}.welcome{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:23px 2px 18px}.welcome h2{font-size:27px;margin:7px 0}.welcome p{color:#8da89c;font-size:13px;margin:0}.welcome-tag{color:#52cf89;font-size:11px;letter-spacing:2px;font-weight:700}.preview-pill{background:#1b3328;color:#8be3af;border:1px solid #28553a;padding:9px 13px;border-radius:999px;font-size:12px;white-space:nowrap}.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,365px);gap:18px;align-items:start}.panel{background:#0e1a19;border:1px solid #263b35;border-radius:17px;padding:19px;min-width:0}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:17px}.section-title h2{font-size:19px;margin:0}.muted,.pos-hint{color:#819c90;font-size:12px}.search-field{display:block;color:#9db3a9;font-size:12px}.search-field input{display:block;width:100%;margin-top:7px;background:#182725;border:1px solid #345047;border-radius:11px;color:#fff;padding:15px}.pos-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:13px 0}.pos-tools label{font-size:12px;color:#8fa99e;flex:1;min-width:125px}.pos-tools select{width:100%;display:block;margin-top:5px}.pos-tools select,.pdv-field input,.pdv-field select{background:#152420;color:#eaf8f0;border:1px solid #334a41;border-radius:9px;padding:11px;width:100%}.pos-hint{margin:8px 0 17px}.pos-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:11px;max-height:calc(100vh - 365px);min-height:200px;overflow:auto;align-content:start}.pos-product{background:linear-gradient(140deg,#182926,#101e1b);border:1px solid #2c4038;border-radius:13px;color:#f3fbf7;padding:14px;text-align:left;min-height:151px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.pos-product:hover{border-color:#51d18c;background:#1a342a}.product-dot{color:#4bd48b;font-size:22px}.pos-name{display:grid;gap:7px;min-width:0}.pos-name strong{font-size:15px;overflow-wrap:anywhere}.pos-name small{color:#8ba99b;font-size:11px;line-height:1.4}.price{color:#63e3a0;font-size:15px;margin-top:auto}.add-mark{align-self:end;background:#2aab6b;color:#fff;padding:4px 12px;border-radius:8px;font-size:21px;font-weight:800}.pos-cart{position:sticky;top:14px;max-height:calc(100vh - 25px);overflow:auto}.pos-cart-actions{display:flex;gap:6px;flex-wrap:wrap}.pos-cart-actions button{font-size:11px;padding:8px}.text-link,.pos-remove{background:none;border:0;color:#eaa5a5}.cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;background:#172623;border:1px solid #2a3c35;border-radius:12px;padding:13px;margin:9px 0}.cart-item>div:first-child{display:grid;gap:4px}.cart-item strong{font-size:13px}.cart-item small{color:#91afa0}.qty-control{display:flex;align-items:center;gap:8px}.qty-control button{background:#283d36;border:0;border-radius:7px;color:#fff;padding:5px 10px}.pos-line-end{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;color:#68e3a1}.pdv-field{margin:12px 0;display:grid;gap:6px}.pdv-field label{color:#9db6aa;font-size:12px}.pos-held{display:grid;gap:7px;border-top:1px solid #2b4137;padding-top:15px;margin-top:16px}.pos-held strong{font-size:13px}.pdv-totals{border-top:1px solid #2c4239;margin-top:17px;padding-top:13px;display:grid;gap:11px}.pdv-totals>div{display:flex;justify-content:space-between;gap:10px}.pdv-grand{color:#64e3a1;font-size:22px;font-weight:800}.pdv-wide{width:100%;margin:15px 0 8px}.primary{background:#279e60;border:0;border-radius:10px;color:white;padding:15px;font-weight:800;width:100%}.checkout-disabled{margin-top:6px}.small-disclaimer{font-size:11px;line-height:1.6;color:#91a89e}.empty-cart{padding:20px 0}.system-footer{color:#698578;font-size:11px;padding:20px 4px}.message{padding:12px;background:#173e2d;color:#b2f2cf;border-radius:10px;margin:12px 0}.message.error{background:#422324;color:#ffcccc}.login{width:min(440px,calc(100% - 30px));margin:8vh auto;background:#111f1b;border:1px solid #2a4338;padding:30px;border-radius:20px;display:grid;gap:16px}.login .logo{max-width:110px;max-height:100px;object-fit:contain;margin:auto}.login h1{text-align:center;margin:0}.login p{text-align:center}.login form{display:grid;gap:15px}.field{display:grid;gap:7px}.field input{width:100%;padding:14px;background:#1b3028;color:#fff;border:1px solid #385344;border-radius:10px}.field label{font-size:13px;color:#b2c9bd}.loading{text-align:center;margin:20vh auto;color:#6ce2a0}@media(max-width:1100px){.new-shell{grid-template-columns:185px minmax(0,1fr)}.pos-layout{grid-template-columns:minmax(0,1fr) 310px}.pos-products{grid-template-columns:repeat(auto-fill,minmax(155px,1fr))}.side{padding:14px 9px}.brand strong{font-size:16px}}@media(max-width:780px){.new-shell{display:block}.side{padding:10px 15px;gap:8px;border-right:0;border-bottom:1px solid #2d4238}.brand{padding:4px;border:0}.brand img{width:39px;height:39px}.side nav{display:flex}.nav{width:auto;padding:9px 13px}.nav-label,.side-info{display:none}.side-bottom{position:absolute;top:9px;right:8px}.side-bottom .nav{font-size:12px}.side-bottom .nav span{display:none}.workspace{padding:0 12px}.topbar{padding:13px 0;flex-wrap:wrap}.topbar h1{font-size:18px}.actions{width:100%;justify-content:space-between}.welcome{padding:16px 0}.welcome h2{font-size:22px}.pos-layout{display:flex;flex-direction:column}.pos-layout .panel{width:100%}.pos-products{max-height:none;grid-template-columns:repeat(2,minmax(0,1fr))}.pos-cart{position:static;max-height:none}.pos-product{min-height:150px}.preview-pill{font-size:10px}.pos-hint{font-size:11px}}@media(max-width:390px){.pos-products{grid-template-columns:1fr}.pos-tools label{min-width:100px}.welcome{flex-wrap:wrap}}

/* v1.2 — conferência de dinheiro recebido */
.payment-shortfall{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:10px;padding:14px;border:2px solid #ef7777;border-radius:12px;background:#451e24;color:#fff3f3;font-weight:800}.payment-shortfall strong{font-size:1.35rem;color:#ffb2b2}.payment-ok{margin-top:10px;padding:12px;border:1px solid #287a55;border-radius:10px;color:#8af0b6;background:#153b2b;font-weight:700}.payment-neutral{margin-top:8px;color:#b8c6c1;font-size:.88rem}

/* PDV v1.3: caixa */
.cash-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px}.cash-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.cash-stats>div{background:#192b24;border:1px solid #2c4b3b;border-radius:12px;padding:15px;display:grid;gap:8px}.cash-stats small,.cash-history small{color:#94aa9e;font-size:12px}.cash-stats strong{color:#75e6a8;font-size:19px}.cash-form{display:grid;gap:13px;padding-top:18px;margin-top:18px;border-top:1px solid #2a4036}.cash-form h3{margin:0;font-size:17px}.cash-form label{display:grid;gap:7px;font-size:13px;color:#a8c2b3}.cash-form input,.cash-form select{background:#152420;border:1px solid #365346;border-radius:9px;padding:12px;color:#fff;width:100%}.cash-history{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid #294038}.cash-history div{display:grid;gap:5px}.cash-history>strong{white-space:nowrap;color:#7ce4a6}@media(max-width:960px){.cash-layout{grid-template-columns:1fr}}@media(max-width:600px){.cash-stats{grid-template-columns:1fr}}
