:root{--font:Inter,ui-sans-serif,"Segoe UI",Arial,sans-serif;--radius:12px;--shadow:0 8px 30px rgb(11 15 25/.08);font-family:var(--font);font-synthesis:none;color-scheme:light}
:root,[data-theme=ormu]{--brand:#6d3cff;--brand-strong:#3b65ff;--brand-soft:#ece9ff;--contrast:#fff;--accent:#12c6ed;--sidebar:#07080b;--side-soft:#151720;--side-text:#f8f9ff;--side-muted:#989dad;--page:#f3f5f9;--surface:#fff;--surface-alt:#f8f9fc;--text:#151821;--muted:#697083;--border:#e1e4eb;--danger:#bd2c3b;--danger-soft:#fff0f1;--success:#16845b;--success-soft:#e9f7f1;--warning:#a66b00;--warning-soft:#fff6df;--gradient:linear-gradient(120deg,#7928ff,#4a4dff 48%,#08c7ef)}
[data-theme=esquina]{--brand:#7b1016;--brand-strong:#4e090d;--brand-soft:#f8e9df;--contrast:#fff9ed;--accent:#d8a44f;--sidebar:#061c14;--side-soft:#102d22;--side-text:#fff5df;--side-muted:#c9bfa7;--page:#f6f1e8;--surface:#fffdf8;--surface-alt:#fbf7ef;--text:#221b16;--muted:#71675d;--border:#e6dac7;--danger:#95181c;--danger-soft:#fae9e7;--success:#1c6949;--success-soft:#e9f5ed;--warning:#966314;--warning-soft:#fff3d7;--gradient:linear-gradient(120deg,#6f0d13,#a72721 54%,#d9a951)}
[data-theme=mercadinho]{--brand:#08713f;--brand-strong:#064a2c;--brand-soft:#e8f5e8;--contrast:#fffdf1;--accent:#efb51e;--sidebar:#063a26;--side-soft:#105238;--side-text:#fffceb;--side-muted:#c1d4c8;--page:#f5f3e8;--surface:#fffef8;--surface-alt:#faf8ed;--text:#17251d;--muted:#637066;--border:#dce3d7;--danger:#c3232b;--danger-soft:#fdeceb;--success:#08713f;--success-soft:#e7f5eb;--warning:#976400;--warning-soft:#fff4cf;--gradient:linear-gradient(120deg,#08713f,#0b9250 58%,#e8b522)}
*{box-sizing:border-box}html,body{margin:0;min-width:0;min-height:100%;background:var(--page);color:var(--text);overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}img{display:block;max-width:100%}.kicker,.section-label{font-size:.68rem;font-weight:800;letter-spacing:.14em;color:var(--brand)}.primary,.secondary,.ghost{min-height:40px;border-radius:8px;padding:.65rem 1rem;font-weight:750;border:1px solid transparent}.primary{color:var(--contrast);background:var(--gradient);box-shadow:0 5px 15px color-mix(in srgb,var(--brand) 22%,transparent)}.secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.ghost{background:transparent;border-color:color-mix(in srgb,var(--side-text) 24%,transparent);color:inherit}.danger{color:var(--danger)!important}.feedback{border-radius:8px;padding:.75rem 1rem;font-size:.88rem}.feedback.error{background:var(--danger-soft);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 20%,transparent)}
.auth{min-height:100vh;display:grid;grid-template-columns:minmax(340px,1.1fr) minmax(360px,.9fr);background:var(--sidebar)}.auth-brand{position:relative;overflow:hidden;padding:clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:space-between;color:var(--side-text);background:radial-gradient(circle at 65% 18%,rgb(109 60 255/.25),transparent 36%),var(--sidebar)}.auth-brand:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;border:1px solid rgb(18 198 237/.25);right:-220px;bottom:-240px}.auth-logo{width:190px;height:120px;object-fit:contain;object-position:left}.auth-brand h1{max-width:650px;margin:.8rem 0;font-size:clamp(2.1rem,4vw,3.8rem);line-height:1.06;letter-spacing:-.045em}.auth-brand p{max-width:540px;color:var(--side-muted);font-size:1.05rem}.auth-panel{display:grid;place-items:center;padding:clamp(1.5rem,5vw,5rem);background:var(--surface)}.auth-card{width:min(420px,100%);display:grid;gap:1rem}.auth-card h2{font-size:1.65rem;letter-spacing:-.025em;margin:.35rem 0}.auth-card p{margin:.2rem 0;color:var(--muted)}.auth-card label,.form-grid label,.inline label{display:grid;gap:.4rem;font-size:.82rem;font-weight:700;color:var(--muted)}input,select{width:100%;min-width:0;height:42px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);padding:0 .8rem;outline:none}input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 13%,transparent)}.auth-card small{color:var(--muted);line-height:1.5}.mobile-logo{display:none}
.context-page{min-height:100vh}.global-header{height:68px;padding:0 clamp(1rem,4vw,4rem);display:flex;align-items:center;justify-content:space-between;color:var(--side-text);background:var(--sidebar);border-bottom:1px solid var(--side-soft)}.header-logo{width:108px;height:54px;object-fit:contain}.context-content{width:min(1080px,calc(100% - 2rem));margin:auto;padding:clamp(2rem,6vw,5rem) 0}.intro{max-width:680px;margin-bottom:2rem}.intro h1{font-size:clamp(1.8rem,4vw,2.7rem);letter-spacing:-.04em;margin:.55rem 0}.intro p{color:var(--muted);margin:0}.company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.company-card{width:100%;min-width:0;display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:1.25rem;text-align:left;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:16px;color:var(--text);box-shadow:var(--shadow);transition:.18s}.company-card:hover,.company-card:focus-visible{transform:translateY(-2px);border-color:var(--brand);box-shadow:0 12px 34px rgb(82 69 190/.14)}.company-image{height:112px;border-radius:12px;overflow:hidden;background:#101010}.company-logo{width:100%;height:100%;object-fit:contain}.company-copy{display:grid;min-width:0;gap:.35rem}.company-copy>b{font-size:1.08rem;overflow-wrap:anywhere}.company-copy>span{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}.company-copy>small{font-size:.62rem;font-weight:800;letter-spacing:.12em;color:var(--brand)}.company-copy em{font-size:.7rem;color:var(--success);font-weight:700;font-style:normal}.company-copy em i{display:inline-block;width:7px;height:7px;margin-right:.35rem;border-radius:50%;background:currentColor}.company-card>strong{font-size:1.45rem;color:var(--brand)}
.shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;z-index:20;padding:1rem;display:flex;flex-direction:column;background:var(--sidebar);color:var(--side-text);overflow:hidden;transition:.2s}.sidebar-brand{height:54px;display:grid;grid-template-columns:42px minmax(0,1fr) 26px;gap:.65rem;align-items:center}.sidebar-logo{width:42px;height:42px;border-radius:9px;object-fit:contain}.sidebar-brand>span,.profile>span:last-child{min-width:0;display:grid;gap:.15rem}.sidebar-brand b,.profile b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82rem}.sidebar-brand small,.profile small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.64rem;color:var(--side-muted)}#collapse{border:0;background:transparent;color:var(--side-muted);font-size:1.3rem}.current{display:grid;gap:.25rem;margin:1rem 0;padding:.75rem;border-radius:8px;background:var(--side-soft)}.current span{font-size:.58rem;letter-spacing:.13em;color:var(--side-muted)}.current b{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar nav{display:grid;gap:.25rem}.sidebar nav button{height:42px;display:flex;align-items:center;gap:.8rem;padding:0 .8rem;border:0;border-radius:8px;background:transparent;color:var(--side-muted);text-align:left}.sidebar nav button span{width:18px;text-align:center}.sidebar nav button b{font-size:.78rem}.sidebar nav button.active,.sidebar nav button:hover{color:var(--side-text);background:var(--side-soft)}.sidebar nav button.active{box-shadow:inset 3px 0 var(--accent)}.sidebar footer{display:grid;gap:.4rem;margin-top:auto}.profile{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);gap:.6rem;align-items:center;padding:.6rem 0}.avatar,.row-icon{display:grid;place-items:center;border-radius:9px;background:var(--brand-soft);color:var(--brand);font-weight:800}.avatar{width:34px;height:34px}.side-action{height:36px;text-align:left;padding:0 .7rem;border:0;border-radius:8px;background:transparent;color:var(--side-muted);font-size:.75rem}.side-action:hover{background:var(--side-soft);color:var(--side-text)}.workspace{min-width:0}.topbar{height:76px;display:flex;align-items:center;gap:1rem;padding:0 clamp(1rem,3vw,2rem);background:var(--surface);border-bottom:1px solid var(--border)}.topbar h1{font-size:1.22rem;margin:.18rem 0 0;letter-spacing:-.02em}.menu{display:none;border:0;background:transparent;font-size:1.3rem}.system,.health{margin-left:auto;display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.45rem .7rem;font-size:.72rem;font-weight:750;background:var(--success-soft);color:var(--success)}.system i,.health i{width:7px;height:7px;border-radius:50%;background:currentColor}.content{width:min(1320px,100%);margin:auto;padding:1.5rem clamp(1rem,3vw,2rem)}.loading{display:flex;align-items:center;gap:.7rem;padding:2rem;color:var(--muted)}.loading i{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.summary{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.3rem 1.5rem;border-radius:var(--radius);color:var(--contrast);background:var(--gradient)}.summary .kicker{color:color-mix(in srgb,var(--contrast) 75%,transparent)}.summary h2{font-size:1.35rem;margin:.3rem 0}.summary p{margin:0;opacity:.8;font-size:.82rem}.summary .health{background:color-mix(in srgb,var(--contrast) 16%,transparent);color:var(--contrast)}.metrics,.quick,.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:.9rem}.metrics article,.panel,.quick button{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 3px 14px rgb(11 15 25/.035)}.metrics article{display:grid;gap:.35rem;padding:1rem}.metrics span,.metrics small{font-size:.72rem;color:var(--muted)}.metrics b{font-size:1.65rem}.metrics b.text{font-size:1.05rem}.panel{padding:1rem}.content>section.panel{margin-top:.9rem}.heading,.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.heading h3,.section-head h2{margin:.15rem 0;font-size:1rem}.heading p,.section-head p{margin:.25rem 0;color:var(--muted);font-size:.78rem}.quick button{display:grid;gap:.35rem;padding:1rem;text-align:left;color:var(--text)}.quick button:hover{border-color:var(--brand)}.quick b{font-size:.82rem}.quick span{font-size:.72rem;color:var(--muted)}.section-head{margin-top:1.3rem}.section-head:first-child{margin-top:0}.section-head.spaced{margin-top:1.6rem}.version{white-space:nowrap;padding:.35rem .6rem;border-radius:999px;background:var(--surface-alt);color:var(--muted);font-size:.68rem}.form-grid{margin-top:.8rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.form-grid .wide,.form-grid fieldset,.actions{grid-column:1/-1}.form-grid fieldset{min-width:0;margin:0;padding:.8rem;border:1px solid var(--border);border-radius:8px}.form-grid legend{padding:0 .35rem;color:var(--muted);font-size:.75rem;font-weight:700}.checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.checks label{min-width:0;display:flex;align-items:center;gap:.5rem;padding:.55rem;border-radius:8px;background:var(--surface-alt)}.checks input{width:16px;height:16px;box-shadow:none}.checks span{font-size:.75rem;overflow-wrap:anywhere}.actions{display:flex;justify-content:flex-end}.inline{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:.8rem;align-items:end;margin:.8rem 0}.data-list{display:grid;gap:.55rem}.data-row{min-width:0;display:grid;grid-template-columns:38px minmax(170px,1fr) minmax(260px,1.25fr) auto;align-items:center;gap:.8rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.data-row.current{border-color:color-mix(in srgb,var(--brand) 35%,var(--border))}.row-icon{width:38px;height:38px}.row-main{min-width:0;display:grid;gap:.25rem}.row-main>div{display:flex;align-items:center;gap:.5rem;min-width:0}.row-main b{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-main>span{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-flex;white-space:nowrap;padding:.24rem .45rem;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:.6rem;font-weight:800}.badge.success{background:var(--success-soft);color:var(--success)}.badge.neutral{background:var(--surface-alt);color:var(--muted)}.badge.warning{background:var(--warning-soft);color:var(--warning)}.data-row dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin:0}.data-row dt,.health-card dt{font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.data-row dd,.health-card dd{margin:.15rem 0 0;font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.health-card>div{display:flex;align-items:center;gap:.6rem}.health-card h3{font-size:.85rem;margin:0}.health-card .badge{margin-left:auto}.health-dot{width:9px;height:9px;border-radius:50%;background:var(--warning)}.health-dot.normal{background:var(--success)}.health-card details{margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--border)}.health-card summary{font-size:.7rem;color:var(--muted);cursor:pointer}.health-card dl{display:grid;gap:.4rem;margin:.7rem 0 0}.health-card dl div{display:flex;justify-content:space-between;gap:1rem}.checked{font-size:.68rem;color:var(--muted);text-align:right}.empty{padding:2rem;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface)}.toast{position:fixed;z-index:100;right:1rem;bottom:1rem;max-width:min(380px,calc(100% - 2rem));padding:.8rem 1rem;border-radius:8px;color:#fff;background:var(--success);box-shadow:var(--shadow);font-size:.82rem}.toast.error{background:var(--danger)}.backdrop{display:none}
.shell.collapsed{grid-template-columns:76px minmax(0,1fr)}.collapsed .sidebar-brand{grid-template-columns:42px}.collapsed .sidebar-brand>span,.collapsed #collapse,.collapsed .current,.collapsed .sidebar nav b,.collapsed .profile>span:last-child,.collapsed .side-action{display:none}.collapsed .sidebar nav button{justify-content:center}.collapsed .profile{grid-template-columns:34px;justify-content:center}
@media(max-width:980px){.data-row{grid-template-columns:38px minmax(0,1fr) auto}.data-row dl{grid-column:2/-1}.checks{grid-template-columns:repeat(2,minmax(0,1fr))}.auth{grid-template-columns:1fr 1fr}.auth-brand{padding:2rem}.auth-brand h1{font-size:2.3rem}}
@media(max-width:760px){.auth{grid-template-columns:1fr;background:var(--surface)}.auth-brand{display:none}.auth-panel{min-height:100vh;padding:1.25rem}.mobile-logo{display:block;width:105px;height:65px;object-fit:contain;object-position:left;background:var(--sidebar);border-radius:8px}.company-grid{grid-template-columns:1fr}.company-card{grid-template-columns:86px minmax(0,1fr) auto}.company-image{height:86px}.shell,.shell.collapsed{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;left:0;transform:translateX(-100%);width:min(280px,86vw)}.sidebar.open{transform:translateX(0);box-shadow:20px 0 50px rgb(0 0 0/.22)}.sidebar.open+.backdrop{display:block;position:fixed;z-index:19;inset:0;border:0;background:rgb(0 0 0/.38)}.menu{display:block}.system{display:none}.topbar{height:68px}.content{padding:1rem}.metrics,.quick,.health-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.checks{grid-template-columns:1fr}.inline{grid-template-columns:1fr}.data-row{grid-template-columns:38px minmax(0,1fr)}.data-row dl{grid-column:1/-1}.data-row>button{grid-column:1/-1}.section-head{flex-direction:column}.summary{align-items:flex-start}.summary .health{display:none}.collapsed .sidebar-brand{grid-template-columns:42px minmax(0,1fr) 26px}.collapsed .sidebar-brand>span,.collapsed #collapse,.collapsed .current,.collapsed .sidebar nav b,.collapsed .profile>span:last-child,.collapsed .side-action{display:initial}.collapsed .sidebar nav button{justify-content:flex-start}.collapsed .profile{grid-template-columns:34px minmax(0,1fr);justify-content:initial}}
@media(max-width:440px){.context-content{width:calc(100% - 1rem)}.company-card{grid-template-columns:72px minmax(0,1fr);gap:.8rem}.company-image{height:72px}.company-card>strong{display:none}.intro h1{font-size:1.65rem}.data-row dl{grid-template-columns:1fr 1fr}}
.api-unavailable{position:fixed;z-index:200;top:.75rem;left:50%;transform:translateX(-50%);width:min(620px,calc(100% - 1.5rem));display:flex;align-items:center;gap:.7rem;padding:.7rem .9rem;border:1px solid color-mix(in srgb,var(--danger) 28%,transparent);border-radius:9px;color:var(--danger);background:var(--danger-soft);box-shadow:var(--shadow);font-size:.78rem}.api-unavailable b{white-space:nowrap}.api-unavailable span{min-width:0}.recovery{max-width:620px}.recovery h1{font-size:1.55rem;margin:.55rem 0}.recovery p{color:var(--muted);margin:0 0 1rem}@media(max-width:440px){.api-unavailable{align-items:flex-start;flex-direction:column;gap:.2rem}}
.nav-label{padding:.9rem .8rem .3rem;color:var(--side-muted);font-size:.56rem;font-weight:800;letter-spacing:.13em}.search-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;margin:.9rem 0}.product-list{display:grid;gap:.55rem}.product-row{min-width:0;display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(220px,1fr) minmax(100px,auto);align-items:center;gap:.8rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.product-row>div:first-child{display:grid;gap:.25rem;min-width:0}.product-row>div:first-child b{font-size:.83rem}.product-row>div:first-child span,.found span{color:var(--muted);font-size:.7rem}.product-row>strong{text-align:right;font-size:.82rem}.codes{display:flex;flex-wrap:wrap;gap:.3rem}.missing{display:grid;gap:.2rem;color:var(--warning);font-size:.7rem}.missing b{font-size:.62rem;text-transform:uppercase}dialog{width:min(680px,calc(100% - 1.5rem));max-height:90vh;overflow:auto;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);box-shadow:0 24px 70px rgb(0 0 0/.25)}dialog::backdrop{background:rgb(0 0 0/.48)}dialog h3{margin:.2rem 0}dialog p{margin:.2rem 0;color:var(--muted);font-size:.76rem}.quick-entry{max-width:720px;display:grid;gap:.8rem;margin-top:.9rem}.quick-entry>label{display:grid;gap:.35rem;color:var(--muted);font-size:.78rem;font-weight:700}.quick-entry>label:first-child input{height:52px;font-size:1.15rem;border-color:var(--brand)}.quick-product{min-height:0}.found{display:grid;gap:.2rem;padding:.8rem;border-radius:8px;background:var(--success-soft);color:var(--success)}.feedback.warning{background:var(--warning-soft);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 20%,transparent)}
@media(max-width:760px){.product-row{grid-template-columns:minmax(0,1fr) auto}.product-row .codes,.product-row .missing{grid-column:1/-1}.search-bar{grid-template-columns:1fr}.nav-label{padding-top:.7rem}}
.pos-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.pos-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(15rem,22rem);gap:1rem;align-items:start}
.pos-scan{display:flex;align-items:end;gap:.75rem;margin-bottom:1rem}
.pos-scan label{flex:1}
.pos-cart{display:grid;gap:.65rem}
.pos-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.85rem 1rem}
.pos-row span{display:block;color:var(--muted);font-size:.85rem;margin-top:.2rem}
.pos-controls{display:flex;align-items:center;gap:.35rem}
.pos-controls button{min-width:2rem}
.pos-controls input{width:4rem;text-align:center}
.pos-controls .danger{min-width:auto}
.pos-total{display:grid;gap:1rem;position:sticky;top:1rem}
.pos-total>strong{font-size:2rem}
.pos-close{display:grid;gap:.65rem;border-top:1px solid var(--line);padding-top:1rem}
.pos-open{max-width:28rem}
@media(max-width:760px){.pos-grid{grid-template-columns:1fr}.pos-total{position:static}.pos-row{grid-template-columns:1fr}.pos-controls{justify-content:flex-start}.pos-scan{align-items:stretch;flex-direction:column}}


/* Mercadinho da Cida — caixa rápido. Escopo deliberadamente restrito ao novo PDV. */
.market-pos{--market-green:#0b6b3a;--market-dark:#064c2a;--market-yellow:#f7c934;--market-cream:#fffaf0;--market-line:#dfe9df;min-height:calc(100vh - 8rem);margin:-1.4rem;background:var(--market-cream);color:#173126;border-radius:1.25rem;overflow:hidden}
.market-pos button,.market-pos input,.market-pos select{font:inherit}
.market-pos-header{height:4.6rem;display:grid;grid-template-columns:minmax(15rem,1fr) auto minmax(17rem,1fr);align-items:center;gap:1rem;padding:.55rem 1rem;background:linear-gradient(105deg,var(--market-dark),var(--market-green) 55%,#d6ad12);color:#fff;box-shadow:0 3px 18px #063b252b}
.market-pos-brand{display:flex;align-items:center;gap:.75rem;min-width:0}
.market-pos-brand>div{display:grid;line-height:1.1}.market-pos-brand b{font-size:1rem}.market-pos-brand small{opacity:.78;margin-top:.25rem}
.market-logo-crop{width:4.5rem;height:3.35rem;display:grid;place-items:center;overflow:hidden;border-radius:.7rem;background:transparent}
.market-logo-crop img{height:4.25rem;width:auto;max-width:none;object-fit:contain;transform:scale(1.15)}
.market-pos-header nav{display:flex;gap:.35rem;align-items:center}
.market-pos-header nav button{min-height:2.75rem;border:1px solid #ffffff3b;border-radius:.7rem;padding:.55rem .9rem;background:#ffffff12;color:#fff;font-weight:800;cursor:pointer}
.market-pos-header nav button:hover,.market-pos-header nav button.active{background:#fff;color:var(--market-dark)}
.market-pos-header nav .consult-button{background:var(--market-yellow);border-color:var(--market-yellow);color:#243415}
.market-pos kbd{font:700 .68rem/1 system-ui;border:1px solid currentColor;border-radius:.25rem;padding:.18rem .3rem;opacity:.72;background:transparent}
.market-pos-meta{display:flex;align-items:center;justify-content:flex-end;gap:.8rem;text-align:right}.market-pos-meta>span{display:grid}.market-pos-meta small{opacity:.78;margin-top:.2rem}
.market-pos-meta>strong{padding:.48rem .7rem;border-radius:999px;font-size:.78rem;white-space:nowrap}.market-pos-meta>strong.open{background:#e8ffbf;color:#174d22}.market-pos-meta>strong.closed{background:#fff0dd;color:#7c3218}
.market-pos-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:.8rem;padding:.8rem;min-height:calc(100vh - 12.6rem)}
.market-shortcuts,.market-sale{min-width:0;background:#fff;border:1px solid var(--market-line);border-radius:1rem;padding:.9rem;box-shadow:0 8px 24px #15552b0c}
.market-section-title{display:flex;justify-content:space-between;align-items:center;gap:1rem}.market-section-title span,.pos-consult-modal header span,.shortcut-modal header span,.market-pos-closed section>span{font-size:.7rem;font-weight:900;letter-spacing:.12em;color:var(--market-green)}.market-section-title h2{font-size:1.2rem;margin:.18rem 0}
.market-section-title>button{border:1px solid var(--market-green);background:#fff;color:var(--market-green);border-radius:.6rem;padding:.55rem .7rem;font-weight:800;cursor:pointer}
.market-categories{display:flex;gap:.4rem;overflow:auto;padding:.7rem 0 .75rem;scrollbar-width:thin}.market-categories button{white-space:nowrap;border:1px solid var(--market-line);background:var(--market-cream);border-radius:999px;padding:.45rem .72rem;font-weight:750;color:#365344;cursor:pointer}.market-categories button.active{background:var(--market-green);border-color:var(--market-green);color:#fff}
.market-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;align-content:start}
.market-product-grid>button{min-height:7.3rem;display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1px solid #dbe8dc;border-radius:.85rem;padding:.7rem;background:linear-gradient(155deg,#fff,#f4faef);color:#173126;cursor:pointer;box-shadow:0 3px 10px #15552b0c;touch-action:manipulation}
.market-product-grid>button:hover{border-color:var(--market-green);transform:translateY(-1px)}.market-product-grid>button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.market-product-grid>button span{font-size:.63rem;text-transform:uppercase;letter-spacing:.07em;color:#6c7f72}.market-product-grid>button b{font-size:.9rem;line-height:1.15;margin:.35rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.market-product-grid>button strong{margin-top:auto;font-size:1.08rem;color:var(--market-green)}.market-product-grid>button small{font-size:.65rem;color:#718078;margin-top:.2rem}
.market-empty{grid-column:1/-1;min-height:12rem;display:grid;place-content:center;text-align:center;color:#607066}.market-empty small{display:block;margin-top:.4rem}
.market-sale{display:flex;flex-direction:column;gap:.65rem}
.market-search label{font-size:.7rem;font-weight:900;letter-spacing:.09em;color:var(--market-green)}.market-search>div{display:grid;grid-template-columns:1fr auto;gap:.45rem;margin-top:.3rem}.market-search input{height:3.35rem;border:2px solid var(--market-green);border-radius:.75rem;padding:0 1rem;font-size:1rem;min-width:0}.market-search button{border:0;border-radius:.75rem;padding:0 1rem;background:var(--market-green);color:#fff;font-weight:900}.market-search small{display:block;color:#6b7a70;margin-top:.28rem}
.market-search-results{position:absolute;z-index:8;right:1.7rem;width:min(42rem,48vw);top:11.4rem;background:#fff;border:1px solid var(--market-line);border-radius:.75rem;box-shadow:0 14px 35px #17312635;padding:.35rem}.market-search-results button{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid #edf1ed;background:#fff;padding:.65rem;text-align:left}.market-search-results span{display:grid}.market-search-results small{color:#718078}.market-search-results strong{color:var(--market-green)}
.market-cart-head,.market-cart article{display:grid;grid-template-columns:minmax(0,1.7fr) 8.2rem 5.6rem 6.2rem 2.2rem;gap:.45rem;align-items:center}.market-cart-head{padding:.35rem .65rem;color:#718078;font-size:.7rem;font-weight:850;text-transform:uppercase}
.market-cart{min-height:12rem;max-height:calc(100vh - 32rem);overflow:auto;border-block:1px solid var(--market-line)}
.market-cart article{padding:.55rem .65rem;border-bottom:1px solid #edf1ed}.market-cart article>div:first-child{display:grid;min-width:0}.market-cart article b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-cart article small{color:#718078}.market-cart article>span,.market-cart article>strong{text-align:right;font-size:.85rem}.market-cart article>strong{color:var(--market-green)}
.market-qty{display:grid;grid-template-columns:2rem 1fr 2rem;align-items:center}.market-qty button{height:2.25rem;border:1px solid var(--market-line);background:#f3f8f3;font-weight:900}.market-qty input{height:2.25rem;min-width:0;border:1px solid var(--market-line);text-align:center}
.market-remove{width:2rem;height:2rem;border:0;border-radius:.5rem;background:#fff0ec;color:#a32f20;font-size:1.25rem;cursor:pointer}
.market-cart-empty{min-height:11rem;display:grid;place-content:center;text-align:center;color:#617268}.market-cart-empty b{font-size:1.1rem}.market-cart-empty span{margin-top:.25rem}
.market-checkout{margin-top:auto;border-radius:.9rem;background:#f4f8f1;padding:.75rem;display:grid;gap:.65rem}.market-values{display:grid;gap:.25rem}.market-values>span{display:flex;justify-content:space-between;color:#52655a}.market-values>strong{display:flex;justify-content:space-between;align-items:baseline;padding:.55rem .7rem;border-radius:.7rem;background:linear-gradient(105deg,var(--market-green),#2a8b42 65%,var(--market-yellow));color:#fff;font-size:1.05rem}.market-values>strong b{font-size:2.15rem}
.market-payment{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:end}.market-payment label{display:grid;gap:.2rem;font-size:.72rem;font-weight:800}.market-payment select,.market-payment input{height:2.75rem;border:1px solid #bfd2c2;border-radius:.55rem;padding:0 .65rem;background:#fff}.market-payment output{min-width:8.2rem;padding:.72rem;border-radius:.55rem;background:#fff2ae;color:#3c4718;font-weight:900;text-align:center}
.market-actions{display:grid;grid-template-columns:auto 1fr;gap:.55rem}.market-actions button{min-height:3.6rem;border-radius:.75rem;font-weight:950;cursor:pointer}.market-actions button:disabled{opacity:.45;cursor:not-allowed}.market-cancel{border:1px solid #dcbdb5;background:#fff;color:#9d3021;padding:0 1rem}.market-finalize{border:0;background:linear-gradient(100deg,var(--market-green),#3d9f45 68%,var(--market-yellow));color:#fff;font-size:1rem;box-shadow:0 6px 16px #0b6b3a30}
.market-close{font-size:.75rem;color:#6c766f}.market-close summary{cursor:pointer}.market-close form{display:flex;gap:.45rem;margin-top:.45rem}.market-close input{height:2.35rem;border:1px solid var(--market-line);border-radius:.45rem;padding:0 .55rem}.market-close button{border:0;border-radius:.45rem;background:#425348;color:#fff;padding:0 .75rem}
.market-pos-closed{min-height:calc(100vh - 12.6rem);display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at top,#fff9cf,transparent 45%),var(--market-cream)}.market-pos-closed section{width:min(30rem,100%);background:#fff;border:1px solid var(--market-line);border-radius:1.2rem;padding:2rem;box-shadow:0 18px 50px #174b2630}.market-pos-closed h2{font-size:1.8rem;margin:.35rem 0}.market-pos-closed form{display:grid;gap:.75rem;margin-top:1.3rem}.market-pos-closed label{display:grid;gap:.3rem;font-weight:800}.market-pos-closed input{height:3.2rem;border:2px solid var(--market-green);border-radius:.65rem;padding:0 .8rem;font-size:1.15rem}.market-pos-closed button{height:3.5rem;border:0;border-radius:.65rem;background:linear-gradient(100deg,var(--market-green),var(--market-yellow));color:#fff;font-weight:950}
.pos-modal-backdrop{position:fixed;z-index:1000;inset:0;background:#092719b8;backdrop-filter:blur(3px);display:grid;place-items:center;padding:1rem}
.pos-consult-modal,.shortcut-modal{width:min(48rem,96vw);max-height:92vh;overflow:auto;background:var(--market-cream);border-radius:1.2rem;padding:1.1rem;box-shadow:0 24px 80px #0006}.pos-consult-modal>header,.shortcut-modal>header{display:flex;justify-content:space-between;gap:1rem}.pos-consult-modal header h2,.shortcut-modal header h2{margin:.25rem 0}.pos-consult-modal header>button,.shortcut-modal header>button{width:2.6rem;height:2.6rem;border:0;border-radius:50%;background:#e9eee9;font-size:1.5rem}
.pos-consult-modal form{display:grid;grid-template-columns:1fr auto;gap:.5rem;margin:1rem 0}.pos-consult-modal form input{height:3.7rem;border:2px solid var(--market-green);border-radius:.75rem;padding:0 1rem;font-size:1.05rem}.pos-consult-modal form button{border:0;border-radius:.75rem;background:var(--market-green);color:#fff;padding:0 1.1rem;font-weight:900}
.consult-result{text-align:center;background:#fff;border:2px solid var(--market-yellow);border-radius:1rem;padding:1.3rem}.consult-result small{font-weight:900;color:var(--market-green);letter-spacing:.12em}.consult-result h3{font-size:1.7rem;margin:.45rem 0}.consult-result strong{display:block;font-size:3.8rem;line-height:1;color:var(--market-green)}.consult-result p{color:#657269}
.consult-options{display:grid;gap:.4rem}.consult-options button{display:flex;justify-content:space-between;align-items:center;text-align:left;border:1px solid var(--market-line);border-radius:.6rem;background:#fff;padding:.7rem}.consult-options span{display:grid}.consult-options small{color:#6b776f}.consult-options strong{font-size:1.1rem;color:var(--market-green)}
.pos-consult-modal footer{text-align:center;margin-top:.8rem;color:#64736a;font-size:.75rem}
.shortcut-modal{width:min(56rem,96vw)}.shortcut-modal header p{margin:.2rem 0;color:#657269}.shortcut-manager-list{display:grid;gap:.35rem;margin-top:1rem}.shortcut-manager-list article{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--market-line);border-radius:.65rem;padding:.55rem}.shortcut-manager-list label{display:flex;align-items:center;gap:.65rem}.shortcut-manager-list label>span{display:grid}.shortcut-manager-list small{color:#6d7b71}.shortcut-manager-list article>div{display:flex;gap:.3rem}.shortcut-manager-list button{width:2.3rem;height:2.3rem;border:1px solid var(--market-line);border-radius:.45rem;background:#f6faf5;font-weight:900}
@media(max-width:1180px){.market-pos-header{grid-template-columns:1fr auto}.market-pos-header nav{order:3;grid-column:1/-1;justify-content:center}.market-pos-header{height:auto}.market-pos-body{grid-template-columns:1fr}.market-product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.market-cart{max-height:22rem}.market-search-results{position:static;width:auto}.market-pos-meta{grid-column:2}.market-pos{margin:-1rem}}
@media(max-width:760px){.market-pos-header{grid-template-columns:1fr}.market-pos-meta{grid-column:1;justify-content:flex-start}.market-pos-header nav{overflow:auto;justify-content:flex-start}.market-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-cart-head{display:none}.market-cart article{grid-template-columns:1fr auto}.market-cart article>span{display:none}.market-cart article>strong{grid-column:1;text-align:left}.market-remove{grid-column:2;grid-row:1}.market-payment{grid-template-columns:1fr}.market-actions{grid-template-columns:1fr}.market-pos{margin:-.75rem}.market-pos-body{padding:.5rem}}

.quick-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:center}.barcode-scanner-backdrop{position:fixed;inset:0;z-index:100;background:rgb(0 0 0/.72);display:grid;place-items:center;padding:1rem}.barcode-scanner{width:min(520px,100%);overflow:hidden;border-radius:16px;background:var(--surface);box-shadow:0 20px 70px rgb(0 0 0/.35)}.barcode-scanner header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1rem;color:var(--text)}.barcode-scanner header button{border:0;background:transparent;font-size:1.7rem;color:var(--muted)}.barcode-scanner video{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#111}.barcode-scanner p{margin:.9rem 1rem .25rem;font-weight:700}.barcode-scanner small{display:block;margin:0 1rem 1rem;color:var(--muted)}@media(max-width:600px){.quick-code-row{grid-template-columns:1fr}.quick-code-row button{width:100%}.barcode-scanner-backdrop{padding:0}.barcode-scanner{width:100%;border-radius:0}}

.cash-modal{width:min(480px,100%);background:var(--surface);border-radius:16px;padding:1.1rem;box-shadow:0 20px 70px rgb(0 0 0/.35)}.cash-modal header{display:flex;justify-content:space-between;align-items:flex-start}.cash-modal header button{border:0;background:transparent;font-size:1.7rem;color:var(--muted)}.cash-modal form{display:grid;gap:.8rem;margin:1rem 0}.cash-modal label{display:grid;gap:.4rem;font-weight:700}.cash-modal-summary{display:grid;gap:.2rem;padding:.8rem;background:var(--surface-alt);border-radius:10px}.cash-modal-summary p{display:flex;justify-content:space-between;margin:.2rem 0}.cash-close-note{font-size:.78rem;color:var(--muted)}.cash-modal>button{width:100%}

.market-print-option{display:flex;align-items:center;gap:.45rem;margin:.7rem 0;color:var(--muted);font-size:.78rem}.market-print-option input{width:16px;height:16px}.market-checkout #pos-reprint{margin-top:.45rem}

/* Terminal Positivo: o modo de tela cheia é exclusivo do PDV Mercadinho. */
body:has(.market-pos){overflow:hidden}body:has(.market-pos) .shell>.sidebar{display:none}body:has(.market-pos) .shell{display:block;height:100dvh}body:has(.market-pos) .workspace{height:100dvh}body:has(.market-pos) .topbar{display:none}body:has(.market-pos) .content{width:100%;height:100dvh;padding:0;overflow:hidden}.market-pos{height:100dvh;min-height:0;margin:0;border-radius:0;display:flex;flex-direction:column}.market-pos-header{height:3.9rem;min-height:3.9rem;padding:.35rem .75rem;grid-template-columns:minmax(12rem,1fr) auto minmax(12rem,1fr)}.market-logo-crop{width:3.7rem;height:2.9rem}.market-logo-crop img{height:3.55rem}.market-pos-header nav button{min-height:2.25rem;padding:.35rem .65rem}.market-pos-body{flex:1;min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:.5rem;gap:.5rem}.market-shortcuts,.market-sale{min-height:0;padding:.6rem;gap:.45rem;overflow:hidden}.market-section-title h2{font-size:1rem}.market-categories{padding:.35rem 0}.market-product-grid{min-height:0;overflow:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem}.market-product-grid>button{min-height:5.4rem;padding:.45rem}.market-product-grid>button b{font-size:.78rem;margin:.2rem 0}.market-product-grid>button strong{font-size:.95rem}.market-cart{flex:1;min-height:4rem;max-height:none;overflow:auto}.market-cart-head,.market-cart article{grid-template-columns:minmax(0,1.7fr) 7.5rem 4.8rem 5.5rem 2rem}.market-checkout{flex:none;margin-top:0;padding:.5rem;gap:.4rem}.market-values>strong{padding:.35rem .5rem}.market-values>strong b{font-size:1.75rem}.market-payment input,.market-payment select{height:2.35rem}.market-payment output{min-width:7rem;padding:.52rem}.market-actions button{min-height:2.9rem}.market-print-option{margin:.2rem 0}.market-close{display:block}.market-close form{margin-top:.25rem}.market-pos-closed{height:calc(100dvh - 3.9rem);min-height:0}.market-pos-closed section{padding:1.25rem}
@media(max-width:900px){.market-pos-header{grid-template-columns:1fr auto}.market-pos-meta{display:none}.market-pos-body{grid-template-columns:1fr}.market-shortcuts{display:none}.market-sale{width:100%}.market-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-height:700px) and (min-width:901px){.market-pos-header{height:3.35rem;min-height:3.35rem}.market-pos-body{padding:.35rem}.market-product-grid>button{min-height:4.4rem}.market-search input{height:2.7rem}.market-checkout{padding:.35rem}.market-values>strong b{font-size:1.55rem}.market-actions button{min-height:2.45rem}.market-pos-closed{height:calc(100dvh - 3.35rem)}}

/* PDV Mercadinho: venda à esquerda e atalhos auxiliares à direita. */
.market-pos-body{grid-template-areas:"sale shortcuts";grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}.market-sale{grid-area:sale}.market-shortcuts{grid-area:shortcuts}.market-scan-row{display:grid;grid-template-columns:4.2rem minmax(0,1fr) auto;gap:.4rem;align-items:center}.market-scan-row input{min-width:0}.market-scan-row input:first-child{text-align:center;font-weight:800}.market-scan-row button{height:3.35rem}.market-sale{min-height:0}.market-sale .market-cart{flex:1}.market-shortcuts{display:flex;flex-direction:column}.market-shortcuts .market-product-grid{flex:1;min-height:0;overflow:auto}@media(max-width:900px){.market-pos-body{grid-template-areas:"sale" "shortcuts";grid-template-columns:1fr}.market-shortcuts{display:flex;min-height:18rem}}

.sales-modal{width:min(620px,96vw);max-height:90dvh;overflow:auto;background:var(--market-cream);border-radius:1rem;padding:1rem;box-shadow:0 24px 80px #0006}.sales-modal>header{display:flex;justify-content:space-between}.sales-modal header button{border:0;background:transparent;font-size:1.5rem}.sales-list{display:grid;gap:.35rem;margin-top:.8rem}.sales-list>button{display:flex;justify-content:space-between;align-items:center;padding:.7rem;border:1px solid var(--market-line);border-radius:.6rem;background:#fff;text-align:left}.sales-list span{display:grid}.sales-list small{color:#68766c}.sales-list strong{color:var(--market-green)}.sale-detail{margin-top:.8rem;padding:.8rem;background:#fff;border-radius:.7rem}.sale-detail p{margin:.35rem 0;font-size:.85rem}.sale-detail button{margin-top:.5rem}
