:root{--bg:#0e1012;--panel:#171a1d;--panel2:#202429;--line:#343a40;--text:#e3e6e9;--muted:#9aa3ab;--accent:#7d8d6a;--accent2:#98a67f;--danger:#c95c5c;--shadow:0 12px 30px #0005;--radius:14px;--sidebar:245px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}body{display:flex}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar);background:#111416;border-right:1px solid #24282c;padding:18px 14px;display:flex;flex-direction:column;z-index:50;transition:.22s}.brand{display:flex;gap:11px;align-items:center;padding:8px 6px 22px}.brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--accent);color:#111;font-weight:900}.brand b{display:block}.brand small{color:var(--muted)}nav{display:grid;gap:6px}nav a{color:#b9c0c6;text-decoration:none;padding:12px 13px;border-radius:10px;font-size:14px}nav a:hover,nav a.active{background:#242a2f;color:#fff}.sidebar-bottom{margin-top:auto;color:#777;padding:8px}.main{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));min-height:100vh}.topbar{min-height:75px;border-bottom:1px solid #24282c;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;position:sticky;top:0;background:#0e1012e8;backdrop-filter:blur(10px);z-index:20}.topbar h1{font-size:20px;margin:0 0 4px}.topbar small{color:var(--muted)}.status-pill{font-size:12px;color:#aebe97;border:1px solid #33402d;background:#182016;padding:7px 10px;border-radius:99px}.content{padding:20px;max-width:1600px;margin:auto}.card{background:var(--panel);border:1px solid #2a2e33;border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin-bottom:16px}.card h2,.card h3{margin:0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.card-head small{color:var(--muted)}.actions,.checks-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #3a4148;background:#292e33;color:#e7e9eb;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:600}.btn:hover{filter:brightness(1.12)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#111}.btn.danger{background:#3a2020;border-color:#683434;color:#f6b0b0}.btn.ghost{background:#202428}.icon-btn{border:0;background:transparent;color:#ddd;cursor:pointer;font-size:18px}.input{width:100%;background:#25292e;border:1px solid #3a4046;border-radius:9px;color:#eee;padding:10px 11px;outline:0}.input:focus{border-color:#778b63;box-shadow:0 0 0 2px #778b6330}.input.big{font-size:17px;min-height:44px}.input.qty{width:82px}.scan-row{display:flex;gap:8px;align-items:center}.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.85fr);gap:16px}.form-grid{display:grid;gap:10px;margin-bottom:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.thirds{grid-template-columns:2fr 1fr 1fr}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}label{display:grid;gap:5px;font-size:12px;color:#aeb6bd}.check{display:flex;align-items:center;gap:8px}.check input{accent-color:#84966e}.section-title{font-size:13px;color:#c6cbd0;border-top:1px solid #30353a;padding-top:14px;margin:16px 0 10px!important}.text-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.text-control{background:#202429;border:1px solid #31363b;border-radius:11px;padding:10px}.text-control-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.mini-grid{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:6px}.switch input{display:none}.switch span{display:block;width:36px;height:20px;border-radius:99px;background:#4a4f55;position:relative}.switch span:after{content:"";position:absolute;width:16px;height:16px;background:#ddd;border-radius:50%;top:2px;left:2px;transition:.2s}.switch input:checked+span{background:#778b63}.switch input:checked+span:after{left:18px}.profiles-layout{display:grid;grid-template-columns:minmax(620px,1.45fr) minmax(300px,.65fr);gap:16px}.list-cards{display:grid;gap:8px;max-height:520px;overflow:auto}.list-item{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid #31363c;background:#202429;border-radius:10px;padding:10px;cursor:pointer}.list-item:hover,.list-item.selected{border-color:#71805e;background:#262d24}.list-item small{display:block;color:#9ca4aa}.sticky-preview{margin-top:12px}.sticky-preview iframe,.preview-wrap iframe{width:100%;border:1px solid #333;border-radius:10px;background:#23272b}.sticky-preview iframe{height:300px}.preview-wrap iframe{height:330px}.table-wrap{overflow:auto;border:1px solid #2f3439;border-radius:10px}table{border-collapse:collapse;width:100%;min-width:700px}th,td{padding:10px 12px;border-bottom:1px solid #2f3439;text-align:left;font-size:13px}th{position:sticky;top:0;background:#24282d;color:#aeb5bb}.search-results{display:grid;gap:6px;margin-top:10px}.search-hit{display:flex;justify-content:space-between;gap:10px;padding:10px;background:#202429;border:1px solid #31373c;border-radius:10px;cursor:pointer}.search-hit:hover{border-color:#768964}.search-hit b{display:block}.search-hit small{color:#9aa3aa}.camera-box{position:relative;margin-top:12px;background:#050505;border-radius:12px;overflow:hidden;padding-bottom:10px}.camera-box.hidden{display:none}.camera-box video{width:100%;max-height:420px;object-fit:cover;display:block}.camera-guide{position:absolute;left:8%;right:8%;top:32%;height:28%;border:2px solid #b7d38c;border-radius:10px;box-shadow:0 0 0 9999px #0005;pointer-events:none}.camera-actions{display:flex;gap:8px;padding:10px}.camera-box small{padding:0 10px;color:#aaa}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.product-card{background:#202429;border:1px solid #31363b;border-radius:12px;padding:12px}.product-card .price{font-size:22px;font-weight:800;margin-top:8px}.product-card small{color:#9ca5ac}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px}.feature-grid>div{background:#202429;border:1px solid #30363a;border-radius:10px;padding:13px}.toast{position:fixed;right:18px;bottom:18px;background:#20262b;color:#fff;padding:11px 14px;border:1px solid #3c454c;border-radius:10px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:none}.mobile-menu{display:none;position:fixed;z-index:90;left:12px;top:12px;width:42px;height:42px;border-radius:10px;background:#24292e;color:#fff;border:1px solid #3a4147;font-size:20px}
@media(max-width:1050px){.two-col,.profiles-layout{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){body{display:block}.mobile-menu{display:block}.sidebar{transform:translateX(-105%);box-shadow:15px 0 40px #0008}.sidebar.open{transform:none}.main{margin-left:0;width:100%}.topbar{padding:13px 14px 13px 64px;min-height:66px}.topbar h1{font-size:17px}.status-pill{display:none}.content{padding:10px}.card{padding:12px;border-radius:12px}.card-head{align-items:flex-start}.scan-row{display:grid;grid-template-columns:1fr 78px}.scan-row .btn{grid-column:1/-1}.text-controls{grid-template-columns:1fr}.form-grid.thirds,.form-grid.four,.form-grid.two{grid-template-columns:1fr 1fr}.product-grid,.feature-grid{grid-template-columns:1fr}.preview-wrap iframe{height:260px}.table-wrap{margin-left:-12px;margin-right:-12px;border-left:0;border-right:0;border-radius:0}.camera-actions{flex-direction:column}}
@media(max-width:440px){.form-grid.thirds,.form-grid.four,.form-grid.two{grid-template-columns:1fr}.mini-grid{grid-template-columns:.75fr 1fr 1fr}.btn{padding:10px 12px}.actions{width:100%}.actions .btn{flex:1}.card-head{flex-wrap:wrap}}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.stat-card{background:linear-gradient(145deg,#1a1e21,#20252a);border:1px solid #30363b;border-radius:14px;padding:16px}.stat-card small{display:block;color:#98a1a8}.stat-card b{display:block;font-size:28px;margin-top:5px}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.quick-grid a{display:grid;grid-template-columns:32px 1fr;gap:2px 8px;padding:12px;background:#202429;border:1px solid #31373c;border-radius:11px;color:#e8eaec;text-decoration:none;font-size:21px}.quick-grid a b{font-size:14px}.quick-grid a small{grid-column:2;color:#979fa6;font-size:11px}@media(max-width:760px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-grid{grid-template-columns:1fr}}
/* ============================= ESTOQUE ============================= */
.money-stat{font-size:20px!important}.stock-searchbar{display:grid;grid-template-columns:minmax(260px,1fr) auto 190px auto;gap:8px}.stock-camera-inline{white-space:nowrap}.stock-mobile-list{display:none}.stock-card{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;color:inherit;background:#202429;border:1px solid #31373c;border-radius:12px;padding:12px}.stock-card.critical{border-color:#6a4444;background:#2a2020}.stock-card-main{min-width:0;flex:1}.stock-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.stock-card-title b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stock-card small{color:#99a2a9}.stock-card-prices{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;font-size:12px}.stock-card-prices span{color:#9aa2a8}.stock-card-prices b{color:#e8eaec}.stock-qty{text-align:right;min-width:86px}.stock-qty small{display:block}.stock-qty b{display:block;font-size:24px;color:#dfe5d6}.stock-badge{font-size:10px;padding:3px 6px;border-radius:99px;text-transform:uppercase;white-space:nowrap}.stock-badge.ok{background:#223021;color:#a8c899}.stock-badge.warn{background:#3b3320;color:#e1c47f}.stock-badge.danger{background:#3c2222;color:#e7a0a0}.btn.small{padding:6px 9px;font-size:11px;border-radius:8px}.stock-product-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:10px 0 16px}.stock-product-head h2{margin:4px 0}.stock-meta{color:#9da5ab;font-size:13px}.stock-current{background:#20282a;border:1px solid #384047;border-radius:12px;padding:10px 14px;text-align:right;min-width:130px}.stock-current small{display:block;color:#9ba4aa}.stock-current b{font-size:30px}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:14px}.segmented label input{display:none}.segmented label span{display:block;text-align:center;padding:11px;border:1px solid #3a4148;background:#23272c;border-radius:10px;cursor:pointer;font-weight:700}.segmented label input:checked+span{background:#657255;color:#fff;border-color:#82916f}.readonly{background:#1b1f23!important;color:#aab2b8}.adjust-preview{padding:11px 13px;border:1px dashed #58634d;background:#1e251d;border-radius:10px;color:#bfd0ad;margin:10px 0 14px}.sticky-actions{position:sticky;bottom:8px;background:#171a1dee;padding:10px;border-radius:12px;border:1px solid #31363b;backdrop-filter:blur(8px)}.history-list{display:grid;gap:8px}.history-item{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;padding:11px;border:1px solid #30363b;background:#202429;border-radius:11px}.history-item small{display:block;color:#9da5ab;margin:2px 0 5px}.history-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:800}.history-icon.in{background:#263622;color:#a4cc91}.history-icon.out{background:#3a2323;color:#e3a0a0}.hidden{display:none!important}.compact th,.compact td{padding:7px 9px}
@media(max-width:900px){.stock-searchbar{grid-template-columns:minmax(0,1fr) auto 150px}.stock-searchbar #stockSearchBtn{grid-column:1/-1}.stock-desktop-table{display:none}.stock-mobile-list{display:grid;gap:8px}.stock-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.stock-searchbar{grid-template-columns:minmax(0,1fr) auto}.stock-searchbar #stockFilter,.stock-searchbar #stockSearchBtn{grid-column:1/-1}.stock-product-head{align-items:stretch}.stock-current{min-width:110px}.stock-current b{font-size:24px}.segmented{grid-template-columns:1fr}.stock-card{padding:10px}.stock-card-prices{gap:7px}.stock-qty b{font-size:21px}.sticky-actions{display:grid;grid-template-columns:1fr 1fr}.stock-stats{grid-template-columns:1fr 1fr}.stock-stats .stat-card{padding:12px}.stock-stats .stat-card b{font-size:22px}.money-stat{font-size:16px!important}}
.report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.report-card{display:flex;gap:12px;align-items:center;text-decoration:none;color:#e7e9eb;background:#202429;border:1px solid #31373c;border-radius:12px;padding:14px}.report-card:hover{border-color:#738361;background:#252c24}.report-card>span{font-size:28px}.report-card b{display:block}.report-card small{display:block;color:#99a2a9;margin-top:3px}@media(max-width:900px){.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.report-grid{grid-template-columns:1fr}}

/* Configuração de conexão por aparelho */
.config-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px;align-items:start}.config-card{max-width:none}.device-db-form{display:grid;gap:10px}.device-db-form label{font-weight:700;margin-top:4px}.device-db-form input{width:100%;min-height:48px}.password-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.btn.compact{min-width:48px;padding:0 12px;height:48px}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.alert{padding:12px 14px;border-radius:10px;margin:12px 0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}.alert.danger{background:rgba(220,53,69,.13);border-color:rgba(220,53,69,.35)}.alert.success{background:rgba(25,135,84,.14);border-color:rgba(25,135,84,.35)}.kv-row{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08)}.kv-row span{color:var(--muted,#9aa0a6)}.kv-row b{text-align:right;word-break:break-all}.danger-btn{background:#8f2d36!important;border-color:#b8414d!important}.status-pill.warn{background:rgba(255,193,7,.12);border-color:rgba(255,193,7,.35);color:#ffd76a;text-decoration:none}.status-pill{text-decoration:none}
.app-device-settings{margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--field2)}.app-device-settings h3{font-size:14px;margin:0 0 10px}.app-device-settings select{min-height:44px}
@media(max-width:780px){.config-grid{grid-template-columns:1fr}.config-card{padding:16px}.fixed-db-card{order:2}.device-db-form input{font-size:16px}.form-actions .btn{flex:1 1 150px;min-height:46px}.kv-row{font-size:14px}}

/* ============================= PWA / INSTALAÇÃO ============================= */
.sidebar nav{overflow-y:auto;min-height:0;padding-right:2px}.pwa-home-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;background:linear-gradient(135deg,#1d261b,#20262b);border:1px solid #46533c;border-radius:14px;padding:13px 15px;margin-bottom:16px;box-shadow:var(--shadow)}.pwa-home-icon{width:46px;height:46px;border-radius:12px;background:#7d8d6a22;display:grid;place-items:center;font-size:25px}.pwa-home-copy{min-width:0}.pwa-home-copy b{display:block}.pwa-home-copy small{display:block;color:#aeb7aa;margin-top:3px}.install-hero{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;align-items:center;padding:22px}.install-app-icon img{width:96px;height:96px;border-radius:22px;display:block;box-shadow:0 12px 28px #0007}.install-hero-text h2{font-size:25px;margin:4px 0 8px}.install-hero-text p{color:#aeb6bd;line-height:1.55}.eyebrow{color:#9fb488;font-weight:800;letter-spacing:.08em}.install-actions{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0 8px}.install-main-btn{min-height:44px;font-size:15px}.install-status{font-size:13px;margin:10px 0 0!important;color:#9da6ac!important}.install-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.install-platform{margin-bottom:0}.platform-title{display:flex;gap:12px;align-items:center;margin-bottom:12px}.platform-title>span{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#242a2f;font-size:24px}.platform-title h2{font-size:18px}.platform-title small{color:#9da6ac}.install-steps{margin:0;padding-left:23px;display:grid;gap:10px;color:#c7ccd0;line-height:1.45}.install-platform p{color:#aeb6bd;line-height:1.55}.pwa-standalone .sidebar-bottom small:after{content:' • App instalado';color:#9fb488}
@media(max-width:760px){.pwa-home-banner{grid-template-columns:auto 1fr}.pwa-home-banner .btn{grid-column:1/-1;width:100%}.install-hero{grid-template-columns:70px 1fr;padding:16px;align-items:start}.install-app-icon img{width:64px;height:64px;border-radius:16px}.install-hero-text h2{font-size:20px}.install-actions{grid-column:1/-1}.install-grid{grid-template-columns:1fr}.install-platform{padding:15px}.install-main-btn{width:100%}}
@media(max-width:480px){.install-hero{grid-template-columns:1fr}.install-app-icon img{width:72px;height:72px}.install-actions{display:grid}.install-actions .btn{width:100%;text-align:center}}

/* Cadastro de produtos */
.product-editor-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.product-editor-head h2{margin:4px 0}.product-form{padding-bottom:70px}.product-section summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}.product-section summary::-webkit-details-marker{display:none}.product-section summary small{color:var(--muted);font-weight:400}.product-section[open] summary{border-bottom:1px solid #30353a;padding-bottom:12px;margin-bottom:12px}.top-gap{margin-top:12px}.input-action{display:grid;grid-template-columns:1fr auto;gap:6px}.input-action .btn{padding:8px 12px}.promo-box{background:#20261e;border:1px solid #3a4935;border-radius:12px;padding:12px;margin:12px 0}.strong{font-weight:700;color:#dce7d5}.product-checks{padding:10px 0}.product-savebar{display:flex;gap:8px;z-index:15}.big-action{min-height:46px;font-size:15px}.muted-note{display:block;color:var(--muted);margin-top:10px;line-height:1.5}.product-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.product-card-head b,.product-card-head small{display:block}.cloud-search-form{display:grid;grid-template-columns:220px minmax(240px,1fr) 180px auto;gap:8px;align-items:end}.cloud-results{display:grid;gap:9px}.cloud-product{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#202429;border:1px solid #31373c;border-radius:12px;padding:12px}.cloud-product.duplicate{border-color:#663d3d;background:#282020}.cloud-product-main b,.cloud-product-main small{display:block}.cloud-product-main small{color:var(--muted);margin-top:3px}.cloud-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.cloud-tags span{font-size:11px;background:#292e33;border:1px solid #3a4148;border-radius:99px;padding:4px 7px;color:#bac1c7}.cloud-product-action{min-width:150px;text-align:right}
@media(max-width:900px){.cloud-search-form{grid-template-columns:1fr 1fr}.cloud-search-form .big-action{grid-column:1/-1}}
@media(max-width:760px){.product-editor-head{align-items:flex-start;flex-direction:column}.product-editor-head .actions{width:100%}.product-editor-head .actions .btn{flex:1}.product-section summary{align-items:flex-start;flex-direction:column;gap:3px}.product-savebar{display:grid;grid-template-columns:1fr 1fr;bottom:4px}.product-savebar .primary{grid-column:1/-1}.cloud-product{align-items:flex-start;flex-direction:column}.cloud-product-action{width:100%;text-align:left}.cloud-product-action .btn{width:100%}}
@media(max-width:520px){.cloud-search-form{grid-template-columns:1fr}.cloud-search-form .big-action{grid-column:auto}.product-savebar{grid-template-columns:1fr}.product-savebar .primary{grid-column:auto}}

/* ========================================================================
   SOFTFÁCIL WEB 2026 - layout inspirado no WinForms/FlatUI do Sistema_SF
   Menu fixo à DIREITA, tema escuro padrão e tema claro por aparelho.
   ======================================================================== */
:root{
  --bg:#1e1e1e;--panel:#232323;--panel2:#292929;--line:#393c3e;--text:#e2e2e2;
  --muted:#8f9396;--accent:#ea1d2c;--accent2:#ff5662;--danger:#c45f5f;
  --field:#232323;--field2:#2b2b2b;--header:#1c1c1c;--sidebar-bg:#191919;
  --hover:#2d302c;--shadow:0 10px 28px rgba(0,0,0,.30);--radius:9px;--sidebar:252px;
}
html[data-theme="light"]{
  --bg:#f1f2f3;--panel:#ffffff;--panel2:#f7f7f8;--line:#d4d7da;--text:#25282b;
  --muted:#6c7278;--accent:#ea1d2c;--accent2:#c91524;--danger:#b94d55;
  --field:#ffffff;--field2:#f5f6f7;--header:#fafafa;--sidebar-bg:#ffffff;
  --hover:#eef1eb;--shadow:0 8px 24px rgba(25,30,35,.10);
}
html[data-theme-variant="cardapio"]{
  --bg:#f7f7f8;--panel:#ffffff;--panel2:#fff4f5;--line:#ead5d8;--text:#26282b;
  --muted:#6f7378;--accent:#ea1d2c;--accent2:#bd1421;--danger:#b4232f;
  --field:#ffffff;--field2:#fff7f8;--header:#ffffff;--sidebar-bg:#ffffff;--hover:#fff0f2;
  --shadow:0 10px 26px rgba(70,20,25,.09);--radius:14px;
}
html{color-scheme:dark}
html[data-theme="light"]{color-scheme:light}
html,body{background:var(--bg);color:var(--text)}
.product-image-editor{display:flex;gap:16px;align-items:flex-start}.product-image-preview{position:relative;width:180px;height:180px;border-radius:12px;overflow:hidden;background:var(--field2);border:1px solid var(--line);display:grid;place-items:center;transition:opacity .18s,border-color .18s,box-shadow .18s}.product-image-preview img{width:100%;height:100%;object-fit:cover}.product-image-preview.is-loading{opacity:.62;border-color:var(--accent);box-shadow:0 0 0 3px rgba(234,29,44,.12)}.product-image-preview.is-loading::after{content:'Atualizando…';position:absolute;inset:auto 8px 8px;padding:5px 7px;border-radius:7px;background:rgba(38,40,43,.82);color:#fff;font-size:11px;font-weight:800;text-align:center}.product-image-preview.has-image{border-color:var(--accent)}.product-image-preview.has-error{border-color:var(--danger)}.product-image-tools{display:grid;gap:8px;max-width:560px}.product-image-tools small{color:var(--muted)}.product-image-search-controls{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.product-image-search-controls label:not(.btn){display:grid;gap:4px;min-width:190px}.product-image-search-controls .input{min-height:40px}.product-image-results{display:flex;gap:8px;flex-wrap:wrap;max-height:230px;overflow:auto}.image-result{position:relative;width:112px;background:var(--field2);border:1px solid var(--line);border-radius:8px;padding:4px;color:var(--text);cursor:pointer}.image-result:hover,.image-result.is-index-selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(234,29,44,.16)}.image-result img{width:100px;height:80px;object-fit:cover;border-radius:5px;display:block}.image-result span{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.image-result span small{display:block;color:var(--muted);font-size:9px;font-weight:700}.image-result-index{display:block;color:var(--accent);font-size:11px;font-weight:800;text-align:left;padding:2px 0}.product-table-thumb{width:38px;height:38px;object-fit:cover;border-radius:7px;background:var(--field2)}.product-card-thumb{width:48px;height:48px;object-fit:cover;border-radius:9px;background:var(--field2);flex:0 0 48px}.stock-card-thumb{flex:0 0 38px}.product-image-bulk{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.product-image-bulk label{display:grid;gap:4px}.product-image-bulk .input{min-height:40px}@media(max-width:760px){.product-image-editor{align-items:stretch;flex-direction:column}.product-image-preview{width:100%;height:220px}.product-image-tools{max-width:none}.product-image-search-controls{display:grid;grid-template-columns:1fr 1fr}.product-image-search-controls label:not(.btn){grid-column:1/-1}.product-image-search-controls button,.product-image-search-controls label.btn{width:100%}.product-image-bulk{display:grid;grid-template-columns:1fr 1fr}.product-image-bulk label:first-child{grid-column:1/-1}.product-image-bulk button{grid-column:1/-1;width:100%}}

/* Tema opcional Cardápio: aplicação global em modo claro. */
html[data-theme-variant="cardapio"] body,
html[data-theme-variant="cardapio"] .main{background:var(--bg)!important;color:var(--text)!important}
html[data-theme-variant="cardapio"] .sidebar,
html[data-theme-variant="cardapio"] .topbar,
html[data-theme-variant="cardapio"] .product-titlebar{background:var(--header)!important;border-color:var(--line)!important}
html[data-theme-variant="cardapio"] .brand-mark{background:linear-gradient(145deg,#ff4553,#ea1d2c)!important;color:#fff!important;box-shadow:0 8px 22px rgba(234,29,44,.25)}
html[data-theme-variant="cardapio"] .side-nav a{color:#65686d!important;border-radius:12px}
html[data-theme-variant="cardapio"] .side-nav a:hover{background:var(--hover)!important;color:#8f101b!important;border-color:#f0b7bd!important}
html[data-theme-variant="cardapio"] .side-nav a.active{background:#fff0f2!important;color:#a40f1b!important;border-color:#f0aab1!important;box-shadow:inset 3px 0 0 var(--accent)}
html[data-theme-variant="cardapio"] .card,
html[data-theme-variant="cardapio"] .flat-window,
html[data-theme-variant="cardapio"] .flat-panel,
html[data-theme-variant="cardapio"] .product-flat-panel,
html[data-theme-variant="cardapio"] .product-window,
html[data-theme-variant="cardapio"] .stat-card,
html[data-theme-variant="cardapio"] .product-card,
html[data-theme-variant="cardapio"] .stock-card,
html[data-theme-variant="cardapio"] .report-card,
html[data-theme-variant="cardapio"] .history-item{border-color:var(--line)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow)!important}
html[data-theme-variant="cardapio"] .input,
html[data-theme-variant="cardapio"] select,
html[data-theme-variant="cardapio"] textarea{background:#fff!important;color:var(--text)!important;border-color:#e1c5c9!important;border-radius:10px!important}
html[data-theme-variant="cardapio"] .input:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(234,29,44,.14)!important}
html[data-theme-variant="cardapio"] .btn{background:#fff!important;color:#4a4e53!important;border-color:#e1c5c9!important;border-radius:10px!important}
html[data-theme-variant="cardapio"] .btn:hover{background:#fff4f5!important;color:#a40f1b!important;border-color:#ef9da5!important;filter:none!important}
html[data-theme-variant="cardapio"] .btn.primary{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important;box-shadow:0 6px 15px rgba(234,29,44,.18)}
html[data-theme-variant="cardapio"] .theme-toggle,
html[data-theme-variant="cardapio"] .theme-variant{background:#fff4f5!important;color:#8f101b!important;border-color:#efb2b8!important}
html[data-theme-variant="cardapio"] .theme-toggle:disabled{opacity:1;cursor:default}
html[data-theme-variant="cardapio"] .product-tab.active,
html[data-theme-variant="cardapio"] .mobile-product-section.active{background:#fff0f2!important;color:#a40f1b!important;border-color:var(--accent)!important}
html[data-theme-variant="cardapio"] .product-savebar,
html[data-theme-variant="cardapio"] .sticky-actions{background:rgba(255,255,255,.96)!important;border-color:var(--line)!important}
html[data-theme-variant="cardapio"] th{background:#fff0f2!important;color:#8f101b!important}
html[data-theme-variant="cardapio"] tbody tr:hover,
html[data-theme-variant="cardapio"] tbody tr:hover>td{background:#fff4f5!important}
html[data-theme-variant="cardapio"] .promo-box,
html[data-theme-variant="cardapio"] .info-box,
html[data-theme-variant="cardapio"] .product-values span{background:#fff7f8!important;border-color:#efd6d9!important;color:var(--text)!important}
html[data-theme-variant="cardapio"] .product-image-preview{box-shadow:0 10px 24px rgba(234,29,44,.10)}
body{display:block}

/* menu lateral à direita */
.sidebar{
  left:auto!important;right:0;top:0;bottom:0;width:var(--sidebar);background:var(--sidebar-bg)!important;
  border-right:0!important;border-left:1px solid var(--line);padding:14px 12px;box-shadow:none;
}
.main{margin-left:0!important;margin-right:var(--sidebar);width:calc(100% - var(--sidebar))!important}
.mobile-menu{left:auto!important;right:12px;background:var(--panel2)!important;color:var(--text)!important;border-color:var(--line)!important}
.brand{padding:7px 5px 16px;border-bottom:1px solid var(--line);margin-bottom:8px}
.brand-mark{border-radius:6px;background:var(--accent)!important;color:#161816;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
.brand small{color:var(--muted)}
.side-nav{display:block;overflow-y:auto;min-height:0;padding:0 2px 8px}
.nav-group{margin:8px 0 12px}
.nav-title{font-size:10px;letter-spacing:.11em;color:var(--muted);padding:7px 11px 5px;font-weight:800}
.side-nav a{display:block;color:var(--muted);text-decoration:none;padding:10px 11px;border-radius:7px;font-size:13px;margin:2px 0;border:1px solid transparent}
.side-nav a:hover{background:var(--hover);color:var(--text);border-color:color-mix(in srgb,var(--line) 75%,transparent)}
.side-nav a.active{background:color-mix(in srgb,var(--accent) 16%,var(--panel));color:var(--text);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:inset 3px 0 0 var(--accent)}
.sidebar-tools{padding:8px 4px;border-top:1px solid var(--line)}
.theme-toggle{width:100%;display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--field2);color:var(--text);padding:9px 11px;border-radius:7px;cursor:pointer;text-align:left;font-weight:600}
.theme-toggle:hover{border-color:var(--accent)}
.theme-toggle:disabled{cursor:default}
.theme-variant-label{display:grid;gap:5px;margin-top:8px;color:var(--muted)!important;font-size:11px!important;font-weight:700!important}
.theme-variant{width:100%;min-height:38px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--field2);color:var(--text);font:inherit;cursor:pointer}
.theme-variant:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}
.theme-icon{width:22px;text-align:center;font-size:17px}
.sidebar-bottom{color:var(--muted)!important;padding:8px 6px 4px;line-height:1.45}

.topbar{background:color-mix(in srgb,var(--header) 92%,transparent)!important;border-bottom-color:var(--line)!important;padding:12px 20px;min-height:67px}
.topbar h1{font-size:18px;font-weight:650}.topbar small{color:var(--muted)}
.topbar-actions{display:flex;align-items:center;gap:8px}.status-pill{color:var(--accent2)!important;background:color-mix(in srgb,var(--accent) 9%,var(--panel))!important;border-color:color-mix(in srgb,var(--accent) 38%,var(--line))!important}
.content{padding:15px 18px 24px;max-width:1680px}
.card{background:var(--panel)!important;border-color:var(--line)!important;border-radius:8px!important;box-shadow:var(--shadow)!important}
.card-head small,.muted-note,.stock-meta{color:var(--muted)!important}
.input{background:var(--field)!important;border:1px solid var(--line)!important;color:var(--text)!important;border-radius:7px!important;min-height:39px}
.input:focus{border-color:var(--accent)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)!important}
.input.readonly,.readonly{background:var(--field2)!important;color:var(--muted)!important}
.btn{background:var(--field2)!important;color:var(--text)!important;border-color:var(--line)!important;border-radius:7px!important}
.btn.primary{background:var(--accent)!important;border-color:var(--accent)!important;color:#171917!important}
.btn.danger,.danger-btn{background:color-mix(in srgb,var(--danger) 23%,var(--panel))!important;border-color:color-mix(in srgb,var(--danger) 55%,var(--line))!important;color:color-mix(in srgb,var(--danger) 42%,white)!important}
.btn.ghost{background:transparent!important}
label{color:var(--muted)!important}.check input{accent-color:var(--accent)!important}
.table-wrap{border-color:var(--line)!important}th,td{border-bottom-color:var(--line)!important}th{background:var(--field2)!important;color:var(--muted)!important}
.toast{right:calc(var(--sidebar) + 18px);background:var(--panel2)!important;color:var(--text)!important;border-color:var(--line)!important}
.sidebar-backdrop{display:none}

/* converte superfícies antigas para variáveis nos dois temas */
.stock-card,.stock-current,.history-item,.report-card,.stat-card,.quick-grid a,.feature-grid>div,.cloud-product,.text-control,.list-item,.segmented label span,.promo-box,.adjust-preview,.pwa-home-banner,.platform-title>span{
  background:var(--panel2)!important;border-color:var(--line)!important;color:var(--text)!important;
}
.stock-card.critical,.cloud-product.duplicate{background:color-mix(in srgb,var(--danger) 10%,var(--panel))!important;border-color:color-mix(in srgb,var(--danger) 55%,var(--line))!important}
.stock-card small,.report-card small,.quick-grid a small,.cloud-product-main small,.cloud-tags span,.history-item small{color:var(--muted)!important}
.cloud-tags span{background:var(--field2)!important;border-color:var(--line)!important}
.product-photo{background:var(--field2)!important;border-color:var(--line)!important;color:var(--muted)!important}
.product-section[open] summary{border-bottom-color:var(--line)!important}
.sticky-actions{background:color-mix(in srgb,var(--panel) 93%,transparent)!important;border-color:var(--line)!important}

/* Cadastro de produto: visual por abas semelhante ao CadProduto.vb */
.product-editor-head{border-left:3px solid var(--accent)!important;padding:13px 15px!important}
.product-editor-head h2{font-size:19px;margin:2px 0 3px!important}
.product-code-pill{display:inline-flex;align-items:center;gap:7px;background:var(--field2);border:1px solid var(--line);border-radius:6px;padding:5px 9px;font:600 12px/1.2 Segoe UI;color:var(--text)}
.product-tabs{display:flex;gap:3px;overflow:auto;padding:0 1px 7px;margin-bottom:9px;scrollbar-width:thin}
.product-tab{white-space:nowrap;border:1px solid var(--line);background:var(--field2);color:var(--muted);padding:9px 13px;border-radius:7px;cursor:pointer;font-weight:650;font-size:12px}
.product-tab.active{background:color-mix(in srgb,var(--accent) 18%,var(--panel));color:var(--text);border-color:var(--accent)}
.product-tab-panel{display:none}.product-tab-panel.active{display:block}
.product-flat-panel{background:var(--panel)!important;border:1px solid var(--line);border-radius:8px;padding:13px;margin-bottom:11px}
.product-flat-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px;margin-bottom:11px;border-bottom:1px solid var(--line)}
.product-flat-title b{font-size:13px}.product-flat-title small{color:var(--muted)}
.product-form .input.big{font-size:15px;min-height:42px}.product-form textarea.input{resize:vertical;min-height:78px}
.product-form .description-main{font-weight:700;text-transform:uppercase;font-size:16px!important}
.inline-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px}.inline-field .btn{min-width:42px;padding:7px 10px}
.financial-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:8px}.financial-grid .wide2{grid-column:span 2}
.financial-value{font-weight:700;font-size:15px!important}
.profit-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px}.profit-chip{border:1px solid var(--line);background:var(--field2);border-radius:7px;padding:8px 10px}.profit-chip small{display:block;color:var(--muted)}.profit-chip b{display:block;margin-top:2px}
.switch-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:7px;margin:10px 0}.switch-card{display:flex!important;align-items:center!important;gap:8px;background:var(--field2);border:1px solid var(--line);border-radius:7px;padding:8px 9px;color:var(--text)!important;font-size:12px!important}.switch-card input{accent-color:var(--accent);width:17px;height:17px}
.fiscal-preset{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(110px,.6fr);gap:8px;align-items:end;margin-bottom:10px;padding:10px;background:var(--field2);border:1px solid var(--line);border-radius:7px}

.cloud-product-main-wrap{display:flex;gap:10px;align-items:center;min-width:0;flex:1}
.cloud-source-note{font-size:11px;color:var(--muted);margin-top:5px}

/* Tema claro: pequenos ajustes de contraste para superfícies ainda específicas */
html[data-theme="light"] .camera-box{background:#111}
html[data-theme="light"] .camera-guide{box-shadow:0 0 0 9999px rgba(0,0,0,.45)}
html[data-theme="light"] .stock-badge.ok{background:#e8f2e3;color:#49633e}
html[data-theme="light"] .stock-badge.warn{background:#fff4d7;color:#79601d}
html[data-theme="light"] .stock-badge.danger{background:#f9e1e1;color:#8b3838}
html[data-theme="light"] code{color:#3e5542}

@media(max-width:1100px){.financial-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.switch-grid{grid-template-columns:repeat(3,minmax(130px,1fr))}}
@media(max-width:760px){
  .sidebar{transform:translateX(105%)!important;box-shadow:-15px 0 40px rgba(0,0,0,.35)!important}
  .sidebar.open{transform:none!important}
  .main{margin-right:0!important;width:100%!important}
  .topbar{padding:12px 64px 12px 12px!important}
  .content{padding:9px 9px 84px}
  .sidebar-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:45}
  .sidebar.open~.main+.sidebar-backdrop,.sidebar.open~.sidebar-backdrop{display:block}
  .toast{right:12px;left:12px;bottom:12px}
  .product-tabs{position:sticky;top:65px;z-index:18;background:var(--bg);padding-top:6px}
  .financial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.financial-grid .wide2{grid-column:span 2}
  .switch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fiscal-preset{grid-template-columns:1fr}
}
@media(max-width:480px){
  .financial-grid{grid-template-columns:1fr}.financial-grid .wide2{grid-column:auto}
  .switch-grid{grid-template-columns:1fr 1fr}
  .profit-summary{grid-template-columns:1fr 1fr}
  .product-editor-head{padding:11px!important}.product-editor-head .actions{display:grid;grid-template-columns:1fr 1fr}
}

/* ===== Cadastro de produto 2026 - equivalência visual CadProduto.vb ===== */
.flat-window{border:1px solid var(--line);background:var(--panel);border-radius:8px;overflow:visible}
.product-titlebar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--header);border-bottom:1px solid var(--line);padding:10px 12px;border-radius:8px 8px 0 0}
.product-title-left{display:flex;align-items:center;gap:9px}.product-title-left b,.product-title-left small{display:block}.product-title-left small{color:var(--muted);font-size:11px;margin-top:2px}.sf-dot{width:10px;height:10px;background:var(--accent);border-radius:2px;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}
.product-window>.alert{margin:10px 10px 0}.product-window .product-form{padding:10px 10px 78px}
.flat-panel{background:var(--panel)!important;border:1px solid var(--line);border-radius:7px;padding:12px;margin-bottom:10px}.panel-caption{font-size:12px;font-weight:700;color:var(--text);padding-bottom:8px;margin-bottom:10px;border-bottom:1px solid var(--line)}
.product-main-ident{border-left:3px solid var(--accent)}.product-ident-grid{grid-template-columns:145px minmax(260px,1.2fr) minmax(220px,.8fr) 160px}.description-field{margin-top:8px}.description-detail-field{grid-column:1/-1;margin-top:8px}.description-detail-field textarea{min-height:72px;resize:vertical}.description-detail-field small{color:var(--muted);font-size:11px}.input.xl{font-size:18px;font-weight:700;min-height:48px}.input.huge{font-size:19px;font-weight:700;min-height:48px}.code-display{text-align:center;font-weight:800;letter-spacing:.08em}.btn.square{min-width:45px;padding-left:8px;padding-right:8px}
.product-tab-page{display:none}.product-tab-page.active{display:block}.product-tabs{margin-top:9px}.product-desktop-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:10px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.price-panel{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.price-grid .sale-price,.price-grid .sale-price2{color:var(--accent2)}
.flat-switch{display:flex!important;align-items:center!important;gap:8px!important;background:var(--field2);border:1px solid var(--line);border-radius:6px;padding:8px 9px;color:var(--text)!important;cursor:pointer;min-height:39px}.flat-switch input{position:absolute;opacity:0;pointer-events:none}.flat-switch span{width:35px;height:19px;border-radius:99px;background:#555;display:block;position:relative;flex:0 0 35px}.flat-switch span:after{content:"";width:15px;height:15px;border-radius:50%;background:#ddd;position:absolute;left:2px;top:2px;transition:.15s}.flat-switch input:checked+span{background:var(--accent)}.flat-switch input:checked+span:after{left:18px;background:#182018}.flat-switch b{font-size:11px;font-weight:600}.promo-switch{margin-bottom:10px}
.promo-box{background:color-mix(in srgb,var(--accent) 8%,var(--panel2))!important;border-color:color-mix(in srgb,var(--accent) 42%,var(--line))!important;border-radius:7px!important}.adjust-preview{border-radius:6px!important;padding:9px!important;font-weight:650}
.fiscal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fiscal-subtitle{font-size:10px;letter-spacing:.08em;color:var(--accent2);font-weight:800;margin:7px 0}.fiscal-preset{display:block!important}.fiscal-preset .form-grid{margin-bottom:5px}.rtc-panel{border-left:3px solid var(--accent)}
.textarea{font-family:inherit;line-height:1.35}.muted{color:var(--muted)}.info-box{background:var(--field2);border:1px solid var(--line);padding:12px;border-radius:7px;margin-top:10px}.info-box p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.5}
.product-photo-box{min-height:260px;background:var(--field2);border:1px dashed var(--line);border-radius:7px;display:grid;place-items:center;overflow:hidden;margin-bottom:10px}.product-photo-box img{max-width:100%;max-height:300px;object-fit:contain}.photo-empty{color:var(--muted);font-size:13px}.file-button{display:inline-flex!important;position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}
.product-savebar{position:fixed;left:18px;right:calc(var(--sidebar) + 18px);bottom:10px;background:color-mix(in srgb,var(--header) 95%,transparent);border:1px solid var(--line);box-shadow:0 8px 30px rgba(0,0,0,.3);border-radius:8px;padding:9px 11px;display:flex!important;align-items:center;justify-content:space-between;gap:10px;backdrop-filter:blur(12px);z-index:30}.product-savebar b,.product-savebar small{display:block}.product-savebar small{color:var(--muted);font-size:10px}.save-product{min-width:150px}
.product-values{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.product-values span{background:var(--field2);border:1px solid var(--line);border-radius:6px;padding:7px}.product-values small,.product-values b{display:block}.product-values small{color:var(--muted);font-size:10px}.product-values b{margin-top:2px}
.camera-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;color:#fff}.camera-box video{min-height:220px}.sidebar-backdrop.show{display:block!important;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:45}.toast.bad{border-color:var(--danger)!important}

@media(max-width:1180px){.product-ident-grid{grid-template-columns:135px 1fr 1fr}.field-date{grid-column:3}.product-desktop-columns{grid-template-columns:1fr}.form-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
 .product-window{border-radius:0;margin:-9px}.product-titlebar{border-radius:0;position:sticky;top:65px;z-index:17}.product-window .product-form{padding:8px 8px 92px}.product-main-ident{padding:9px}.product-ident-grid{grid-template-columns:1fr 1fr}.field-ean{grid-column:1/-1;order:-1}.field-code,.field-ean-int,.field-date{grid-column:auto}.input.xl{font-size:16px}.input.huge{font-size:17px}.product-tabs{top:122px!important;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px}.fiscal-grid{grid-template-columns:1fr}.form-grid.three,.form-grid.five{grid-template-columns:1fr 1fr}.product-savebar{left:8px;right:8px;bottom:8px;display:grid!important;grid-template-columns:1fr}.product-savebar>div:first-child{display:none}.product-savebar .actions{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.product-savebar .actions .btn{width:100%;min-width:0}.save-product{min-width:0}.product-photo-box{min-height:220px}}
@media(max-width:440px){.product-ident-grid{grid-template-columns:1fr}.field-ean,.field-code,.field-ean-int,.field-date{grid-column:1}.form-grid.three,.form-grid.five{grid-template-columns:1fr}.switch-grid{grid-template-columns:1fr 1fr}.product-savebar .actions{grid-template-columns:1fr 1fr}.product-savebar .save-product{grid-column:1/-1}}

/* Pesquisa NCM/IBPT no mesmo fluxo do CadProduto.vb */
.ncm-search{margin-top:12px;padding:12px;border:1px solid var(--line);background:var(--panel2);border-radius:8px}
.ncm-search-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.ncm-search-head small{display:block;color:var(--muted);margin-top:2px}
.ncm-results{margin-top:10px;max-height:330px;overflow:auto;border:1px solid var(--line);border-radius:6px;background:var(--panel)}
.ncm-result{display:grid;grid-template-columns:100px 1fr auto;gap:10px;align-items:center;width:100%;padding:9px 10px;text-align:left;color:var(--text);background:transparent;border:0;border-bottom:1px solid var(--line);cursor:pointer}
.ncm-result:last-child{border-bottom:0}.ncm-result:hover{background:var(--hover)}
.ncm-result code{font-weight:800;color:var(--accent)}.ncm-result span{min-width:0}.ncm-result small{display:block;color:var(--muted);margin-top:2px}.ncm-result b{white-space:nowrap;font-size:.82rem}
@media(max-width:700px){.ncm-result{grid-template-columns:82px 1fr}.ncm-result b{grid-column:1/-1}.ncm-results{max-height:45vh}}

/* ======================================================================
   UX 2026-08-12 - modal temático, consulta em grid e editor rápido móvel
   ====================================================================== */
.sf-modal-backdrop[hidden]{display:none!important}
.sf-modal-backdrop{position:fixed;inset:0;z-index:250;background:rgba(0,0,0,.58);display:grid;place-items:center;padding:18px;backdrop-filter:blur(4px)}
.sf-modal{width:min(440px,100%);background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 24px 70px rgba(0,0,0,.5);overflow:hidden;color:var(--text)}
.sf-modal-head{display:flex;align-items:center;gap:10px;padding:13px 14px;background:var(--header);border-bottom:1px solid var(--line)}
.sf-modal-head h3{font-size:15px;margin:0}.sf-modal-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#172016;font-weight:900;flex:0 0 28px}
.sf-modal-body{padding:18px 16px;white-space:pre-wrap;line-height:1.48;font-size:14px;max-height:58vh;overflow:auto}
.sf-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:11px 14px;border-top:1px solid var(--line);background:var(--panel2)}
.sf-modal-backdrop.danger .sf-modal{border-color:color-mix(in srgb,var(--danger) 70%,var(--line))}.sf-modal-backdrop.danger .sf-modal-icon{background:var(--danger);color:white}
.sf-modal-backdrop.success .sf-modal-icon{background:var(--accent);color:#172016}.sf-modal-backdrop.confirm .sf-modal-icon{background:#b69b62;color:#211b0e}

/* Consulta de produtos: grid no PC, cartões objetivos no celular. */
.product-consult-table{min-width:900px}.product-consult-table .actions-col{width:220px}.row-actions{display:flex;gap:6px;white-space:nowrap}.row-actions .btn{padding:7px 9px}
.product-consult-mobile{display:none}.mobile-product-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.mobile-product-actions .btn{text-align:center;text-decoration:none}
.product-consult-search{grid-template-columns:minmax(260px,1fr) auto auto}.product-consult-search .btn{white-space:nowrap}

/* Cadastro: no navegador de PC mantém proporções próximas da janela CadProduto.vb. */
@media(min-width:1181px){
 .product-window{max-width:1220px;margin:0 auto}
 .product-window .product-form{padding:10px 12px 82px}
 .product-main-ident{padding:11px 12px}.product-ident-grid{grid-template-columns:130px minmax(320px,1.35fr) minmax(260px,.95fr) 155px;gap:8px}
 .description-field .input{min-height:52px;font-size:17px}
 .product-desktop-columns{grid-template-columns:minmax(600px,1.32fr) minmax(390px,.78fr);align-items:start;gap:9px}
 .product-desktop-columns>.flat-panel:first-child .form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .product-desktop-columns .flat-panel{padding:10px}.product-tabs{margin-top:7px;margin-bottom:6px}
 .product-tab{padding:8px 15px;min-width:145px}.price-panel{position:sticky;top:78px}
 .fiscal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.rtc-panel{max-width:100%}
}

/* Editor de preço separado do movimento de estoque. */
.price-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:9px}.price-editor-grid .input{font-size:22px;font-weight:800;text-align:center}.price-editor-grid .price-main,.price-editor-grid .price-second{color:var(--accent2)!important}
.price-metrics{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin:8px 0 4px}.price-only-editor{max-width:940px;margin-left:auto;margin-right:auto}.price-only-editor .stock-product-head{margin-bottom:12px}
.price-promo-compact{margin-top:8px}.price-promo-compact .section-title{margin-top:9px!important}.price-only-editor .sticky-actions{justify-content:flex-end}

@media(max-width:760px){
 .sf-modal-backdrop{padding:12px;align-items:end}.sf-modal{width:100%;border-radius:12px}.sf-modal-body{font-size:15px}.sf-modal-actions .btn{min-width:105px}
 .scan-row,.product-consult-search{display:grid!important;grid-template-columns:minmax(0,1fr) 52px 86px!important;gap:6px}.scan-row .btn,.product-consult-search .btn{grid-column:auto!important;padding:9px 7px}
 .product-consult-desktop{display:none}.product-consult-mobile{display:grid;margin-top:10px}.product-card{padding:10px}.product-card-head b{font-size:14px}.product-values{gap:4px}.product-values span{padding:6px}.product-values b{font-size:13px}
 .price-only-editor{margin:-2px 0 0;padding:10px!important}.price-only-editor .stock-product-head{padding:8px;margin-bottom:8px}.price-only-editor .stock-product-head h2{font-size:16px;margin:2px 0}.price-only-editor .stock-meta{font-size:11px}.price-only-editor .stock-current b{font-size:19px}
 .price-editor-grid{grid-template-columns:1fr 1fr;gap:7px}.price-editor-grid label:first-child{grid-column:1/-1}.price-editor-grid .input{min-height:52px;font-size:21px}.price-metrics{display:none}
 .price-only-editor .section-title{padding-top:9px;margin:9px 0 7px!important}.price-promo-compact .checks-row{margin-bottom:6px}.price-promo-compact .form-grid.two{grid-template-columns:1fr 1fr!important;gap:6px}.price-promo-compact .input{min-height:42px}
 .price-only-editor .sticky-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:6px;position:sticky;bottom:7px;padding:7px}.price-only-editor .sticky-actions #adjustSave{grid-column:1/-1;font-size:16px;min-height:48px}
 .history-actions{display:grid!important;grid-template-columns:1fr auto auto}.history-actions input{grid-column:1/-1}.history-actions .btn{width:auto!important}
}
@media(max-width:430px){
 .price-promo-compact .form-grid.two{grid-template-columns:1fr!important}.mobile-product-actions{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
 .scan-row,.product-consult-search{grid-template-columns:minmax(0,1fr) 82px 90px!important}
 .scan-row .btn,.product-consult-search .btn{font-size:12px!important;white-space:nowrap}
}

.pwa-readiness{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.pwa-readiness span{font-size:12px;padding:6px 9px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:var(--panel2)}.pwa-readiness span.ok{color:#b8d49e;border-color:#506641;background:#24301f}

/* Ajustes 2026-08-12 - nuvem dentro do cadastro + editor rápido preço/qtd */
.cloud-inline-panel{margin:10px 12px 0;padding:10px 12px;border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.cloud-inline-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.cloud-inline-caption .btn{margin-left:auto}
.cloud-search-form.compact{grid-template-columns:190px minmax(280px,1fr) 160px auto}
.cloud-inline-term{min-width:0}.inline-results{margin-top:10px;max-height:390px;overflow:auto;padding-right:2px}
.quick-edit-stock{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:8px 0 10px}
.quick-edit-stock .input{font-size:22px;font-weight:800;text-align:center}
@media(max-width:900px){.cloud-search-form.compact{grid-template-columns:1fr 1fr}.cloud-search-form.compact .cloud-inline-term{grid-column:1/-1}}
@media(max-width:760px){
 .cloud-inline-panel{margin:7px 5px 0;padding:8px}.cloud-search-form.compact{grid-template-columns:1fr!important}.cloud-search-form.compact .cloud-inline-term{grid-column:auto}.cloud-search-form.compact>.btn{min-height:46px}
 .inline-results{max-height:52vh}.quick-edit-stock{grid-template-columns:1fr 1fr;gap:7px}.quick-edit-stock .input{min-height:52px;font-size:20px}
}
@media(max-width:430px){.quick-edit-stock{grid-template-columns:1fr}}


/* ======================================================================
   MOBILE UX 2026-08-12 - revisão geral de responsividade
   ====================================================================== */
.inventory-mobile-list{display:none}
.inventory-mobile-card{background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:10px}
.inventory-mobile-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.inventory-mobile-head>div{min-width:0}.inventory-mobile-head b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inventory-mobile-head small{display:block;color:var(--muted);margin-top:2px}.inventory-mobile-head strong{white-space:nowrap;font-size:18px;color:var(--accent2)}
.inventory-mobile-values{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px}.inventory-mobile-values span{background:var(--field2);border:1px solid var(--line);border-radius:6px;padding:6px}.inventory-mobile-values small,.inventory-mobile-values b{display:block}.inventory-mobile-values small{color:var(--muted);font-size:9px}.inventory-mobile-values b{font-size:12px;margin-top:2px}

@media(max-width:900px){.inventory-desktop-table{display:none}.inventory-mobile-list{display:grid;gap:7px}}

@media(max-width:760px){
 :root{--sidebar:min(86vw,310px)}
 body{font-size:14px;-webkit-tap-highlight-color:transparent}
 .sidebar{width:var(--sidebar)!important;padding:10px 9px!important}.brand{padding:5px 4px 10px!important}.brand-mark{width:34px;height:34px}.side-nav a{min-height:42px;display:flex!important;align-items:center;padding:9px 10px!important;font-size:13px!important}.nav-group{margin:5px 0 8px}.nav-title{padding:5px 9px 3px}
 .mobile-menu{width:44px;height:44px;top:9px;right:9px!important;border-radius:8px!important}
 .topbar{min-height:61px!important;padding:9px 60px 9px 10px!important}.topbar h1{font-size:16px!important;margin:0!important}.topbar-title small{display:none}.topbar-actions{min-width:0}.status-pill{display:none!important}
 .content{padding:6px 6px 82px!important;max-width:none!important}
 .card{padding:10px!important;border-radius:7px!important;margin-bottom:7px!important;box-shadow:none!important}.card-head{margin-bottom:9px!important;gap:6px;flex-wrap:wrap}.card-head h2{font-size:17px}.card-head small{font-size:11px;line-height:1.3}.card-head>.actions{margin-left:auto}
 .btn{min-height:44px;padding:9px 11px!important;font-size:14px;touch-action:manipulation}.btn.small{min-height:36px;padding:6px 8px!important;font-size:11px}.btn.square{width:46px;min-width:46px;padding:0!important;font-size:18px}
 .input{min-height:44px!important;padding:9px 10px!important;font-size:16px!important}select.input{padding-right:28px!important}
 label{font-size:11px!important;gap:4px!important}
 .form-grid,.form-grid.two,.form-grid.three,.form-grid.thirds,.form-grid.four,.form-grid.five{gap:7px!important;margin-bottom:8px!important}
 .stat-grid{gap:6px!important;margin-bottom:7px!important}.stat-card{padding:9px!important;border-radius:7px!important}.stat-card small{font-size:10px}.stat-card b{font-size:20px!important;margin-top:2px}.money-stat{font-size:15px!important}
 .quick-grid{gap:6px!important;margin-top:8px!important}.quick-grid a{padding:9px!important;border-radius:7px!important;grid-template-columns:26px 1fr;font-size:18px}.quick-grid a b{font-size:13px}.quick-grid a small{font-size:10px}
 .stock-searchbar{grid-template-columns:minmax(0,1fr) 48px!important;gap:6px!important}.stock-searchbar #stockFilter{grid-column:1/2}.stock-searchbar #stockSearchBtn{grid-column:2/3!important}.stock-camera-inline{font-size:0!important;width:48px;padding:0!important}.stock-camera-inline::after{content:'📷';font-size:18px}.stock-mobile-list{gap:6px!important}.stock-card{padding:9px!important;border-radius:7px!important;gap:8px}.stock-card-title b{font-size:13px}.stock-card-prices{gap:7px;margin-top:5px}.stock-qty{min-width:75px}.stock-qty b{font-size:19px}
 .scan-row,.product-consult-search{grid-template-columns:minmax(0,1fr) 48px!important;gap:6px!important}.scan-row .btn,.product-consult-search .btn{grid-column:auto!important}.scan-row .btn:not(.primary),.product-consult-search .btn:not(.primary){font-size:0!important;width:48px;padding:0!important}.scan-row .btn:not(.primary)::after,.product-consult-search .btn:not(.primary)::after{content:'📷';font-size:18px}.scan-row .btn.primary,.product-consult-search .btn.primary{grid-column:1/-1!important;width:100%}
 .product-consult-card .card-head .actions{width:auto!important}.product-consult-card .card-head .actions .btn{min-height:38px!important;font-size:12px;padding:7px 9px!important}.product-card{padding:9px!important;border-radius:7px!important}.product-values{gap:4px!important;margin-top:7px!important}.mobile-product-actions{gap:5px!important;margin-top:7px!important}.mobile-product-actions .btn{min-height:42px}
 .stock-product-head{padding:5px 0 9px!important;gap:8px}.stock-product-head h2{font-size:16px!important;margin:2px 0!important}.stock-current{min-width:100px!important;padding:7px 9px!important}.stock-current b{font-size:21px!important}.stock-meta{font-size:10px!important}.segmented{gap:4px;margin-bottom:9px}.segmented label span{padding:9px 5px!important;font-size:12px}
 .history-item{grid-template-columns:34px 1fr!important;gap:7px!important;padding:8px!important;border-radius:7px!important}.history-icon{width:31px;height:31px;font-size:18px}.history-item div:last-child{min-width:0;font-size:12px}.history-item small{font-size:10px}.history-actions{gap:5px!important}
 .report-grid{gap:6px!important}.report-card{padding:10px!important;border-radius:7px!important;gap:9px}.report-card>span{font-size:22px}.report-card b{font-size:13px}.report-card small{font-size:10px}
 .config-grid{gap:7px!important}.config-card{padding:10px!important}.config-card>p.muted{font-size:11px;line-height:1.4}.fixed-db-card{font-size:12px}.kv-row{padding:8px 0!important;gap:8px!important}.kv-row b{font-size:11px}.form-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}.form-actions .btn{width:100%}
 .install-hero{display:block!important;padding:11px!important}.install-app-icon{display:none}.install-hero-text h2{font-size:18px!important}.install-hero-text p{font-size:12px;line-height:1.4}.install-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}.pwa-readiness{gap:4px}.pwa-readiness span{font-size:9px;padding:4px 6px}.install-platform{padding:10px!important}.install-steps{gap:6px;font-size:12px;padding-left:19px}
 .sf-modal-backdrop{place-items:end center!important;padding:0!important}.sf-modal{width:100%!important;max-width:none!important;border-radius:16px 16px 0 0!important;border-left:0!important;border-right:0!important;border-bottom:0!important}.sf-modal-head{padding:11px 12px!important}.sf-modal-body{padding:14px 12px!important;max-height:55vh!important}.sf-modal-actions{padding:8px!important}.sf-modal-actions .btn{min-width:0!important;flex:1;min-height:46px}
 /* Scanner ocupa quase a tela toda: mais fácil apontar o EAN com uma mão. */
 .camera-box:not(.hidden){position:fixed!important;z-index:230!important;inset:62px 5px 5px!important;margin:0!important;border:1px solid var(--line);border-radius:10px!important;background:#050505!important;padding-bottom:7px!important;box-shadow:0 20px 70px rgba(0,0,0,.75)}.camera-box video{width:100%!important;height:calc(100% - 106px)!important;max-height:none!important;min-height:0!important;object-fit:cover!important}.camera-head{min-height:45px!important}.camera-actions{padding:6px!important;gap:5px!important;display:grid!important;grid-template-columns:1fr auto!important}.camera-actions .btn{min-width:92px}.camera-box>select.input{margin:6px;width:calc(100% - 12px);min-height:38px!important;font-size:12px!important}.camera-box>small{display:none}.camera-guide{top:38%!important;height:21%!important;left:6%!important;right:6%!important}
 /* Cadastro: menos molduras e menos rolagem lateral no celular. */
 .product-window{margin:-6px!important;border-left:0!important;border-right:0!important}.product-titlebar{padding:7px 8px!important;top:61px!important}.product-title-left small{display:none}.product-titlebar .actions{display:grid!important;grid-template-columns:repeat(3,1fr)!important;width:100%;gap:4px!important}.product-titlebar .actions .btn{min-height:36px!important;padding:5px!important;font-size:10px!important;white-space:nowrap}.product-window .product-form{padding:6px 6px 88px!important}.product-main-ident,.flat-panel{padding:8px!important;border-radius:6px!important}.panel-caption{margin-bottom:7px!important;padding-bottom:6px!important}.product-ident-grid{gap:6px!important}.product-tabs{top:101px!important;margin-left:-6px!important;margin-right:-6px!important;padding:4px 6px 5px!important;gap:3px!important}.product-tab{padding:8px 10px!important;font-size:11px!important}.product-savebar{left:5px!important;right:5px!important;bottom:5px!important;padding:6px!important}.product-savebar .actions{gap:4px!important}.product-savebar .actions .btn{min-height:42px!important;font-size:11px!important;padding:6px!important}.save-product{font-size:14px!important}.flat-switch{padding:7px!important;min-height:38px!important}.flat-switch b{font-size:10px!important}
 /* Nuvem dentro do cadastro: Cosmos fica como padrão e o painel usa somente 2 linhas principais. */
 .cloud-inline-panel{margin:5px 0 0!important;padding:7px!important}.cloud-inline-caption{margin-bottom:5px!important}.cloud-search-form.compact{grid-template-columns:1fr 1fr!important;gap:5px!important}.cloud-search-form.compact .cloud-inline-term{grid-column:1/-1!important;order:-1}.cloud-search-form.compact>.btn{grid-column:1/-1!important;min-height:44px!important}.cloud-search-form.compact label:first-child,.cloud-search-form.compact label:nth-child(3){font-size:10px!important}.inline-results{max-height:none!important}.cloud-product{display:block!important;padding:8px!important;border-radius:7px!important}.cloud-product-main b{font-size:12px}.cloud-product-main small{font-size:9px}.cloud-tags{gap:3px!important}.cloud-tags span{font-size:9px!important;padding:3px 5px!important}.cloud-product-action{margin-top:7px!important;width:100%!important}.cloud-product-action form,.cloud-product-action .btn{width:100%!important}.cloud-product-action .btn{min-height:42px!important}
 .ncm-search{padding:8px!important;margin-top:7px!important}.ncm-search-head{margin-bottom:6px!important}.ncm-result{padding:7px!important;gap:6px!important;font-size:11px!important}
 .inventory-mobile-list{gap:5px}.inventory-mobile-card{padding:8px}.inventory-mobile-values{grid-template-columns:1fr 1fr;gap:4px}
}

@media(max-width:430px){
 .stat-grid{grid-template-columns:1fr 1fr!important}.stat-card b{font-size:18px!important}
 .form-grid.two,.form-grid.three,.form-grid.thirds,.form-grid.four,.form-grid.five{grid-template-columns:1fr!important}
 .product-ident-grid{grid-template-columns:1fr!important}.field-ean,.field-code,.field-ean-int,.field-date{grid-column:1!important}.product-tabs{top:101px!important}
 .financial-grid{grid-template-columns:1fr!important}.profit-summary{grid-template-columns:1fr 1fr!important}.switch-grid{grid-template-columns:1fr 1fr!important}
 .price-editor-grid,.price-promo-compact .form-grid.two,.quick-edit-stock{grid-template-columns:1fr!important}.price-editor-grid label:first-child{grid-column:auto!important}
 .cloud-search-form.compact{grid-template-columns:1fr 1fr!important}.cloud-search-form.compact .cloud-inline-term,.cloud-search-form.compact>.btn{grid-column:1/-1!important}
}


/* Consulta sempre pronta para digitação/leitor e valores monetários no padrão brasileiro. */
[data-query-focus="1"]:focus{border-color:var(--accent2)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 28%,transparent)!important}
.money-calc,.calc-price{text-align:right;font-variant-numeric:tabular-nums}
.readonly[id^="profit"],#prodProfit1,#prodProfit2{text-align:right;font-variant-numeric:tabular-nums}
@media(max-width:760px){[data-query-focus="1"]{min-height:48px;font-size:16px}.money-calc,.calc-price{font-size:18px!important}}

/* Login independente da conexao MySQL */
.auth-page{display:grid;place-items:center;min-height:100vh}.auth-page .sidebar,.auth-page .topbar,.auth-page .mobile-menu,.auth-page .sidebar-backdrop{display:none!important}.auth-page .main{margin:0;width:100%;min-height:100vh;display:grid;place-items:center}.auth-page .content{width:100%;max-width:520px;padding:18px}.login-shell{width:100%}.login-card{margin:0}.login-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.login-head h2{font-size:24px;margin:4px 0 0}.login-form{display:grid;gap:10px}.btn.square{width:46px;min-width:46px;height:46px;display:inline-grid;place-items:center;padding:0!important;text-decoration:none}.config-gear{font-size:20px}
.auth-page .auth-configuracao,.auth-page .auth-instalar{max-width:1240px}.auth-page .auth-configuracao .config-grid{width:100%}

/* Menu maior e mais legivel */
.brand{gap:13px!important}
.brand-mark{width:46px!important;height:46px!important;font-size:16px!important}
.brand b{font-size:18px!important;line-height:1.15}
.brand small{font-size:13px!important}
.nav-title{font-size:12px!important;padding:9px 12px 6px!important}
.side-nav a{font-size:16px!important;min-height:48px!important;padding:13px 13px!important;line-height:1.25}
.side-nav a::first-letter{font-size:18px}
.theme-toggle{min-height:50px!important;font-size:16px!important;padding:12px 13px!important}
.theme-icon{font-size:21px!important;width:28px!important}
.theme-label{font-size:16px!important}
.sidebar-bottom small{font-size:13px!important}
.mobile-menu{width:52px!important;height:52px!important;font-size:26px!important}
@media(max-width:760px){
 .sidebar{width:min(86vw,310px)!important}
 .brand-mark{width:48px!important;height:48px!important;font-size:17px!important}
 .side-nav a{font-size:17px!important;min-height:54px!important;padding:14px 15px!important}
 .nav-title{font-size:12px!important}
 .theme-toggle{min-height:54px!important;font-size:17px!important}
}

/* Tema claro revisado */
html[data-theme="light"]{
 --bg:#f4f6f8;--panel:#ffffff;--panel2:#f9fafb;--line:#d8dee4;--text:#202428;
 --muted:#5e6872;--accent:#ea1d2c;--accent2:#c91524;--danger:#b94a52;
 --field:#ffffff;--field2:#f1f3f5;--header:#ffffff;--sidebar-bg:#ffffff;--hover:#edf2e9;
 --shadow:0 10px 24px rgba(20,30,40,.08);
}
html[data-theme="light"] body,
html[data-theme="light"] .main{background:var(--bg)!important;color:var(--text)!important}
html[data-theme="light"] .sidebar,
html[data-theme="light"] .topbar,
html[data-theme="light"] .product-titlebar{background:#fff!important;color:var(--text)!important;border-color:var(--line)!important}
html[data-theme="light"] .card,
html[data-theme="light"] .flat-window,
html[data-theme="light"] .flat-panel,
html[data-theme="light"] .product-flat-panel,
html[data-theme="light"] .sf-modal,
html[data-theme="light"] .install-platform,
html[data-theme="light"] .product-window{background:#fff!important;color:var(--text)!important;border-color:var(--line)!important}
html[data-theme="light"] .stat-card,
html[data-theme="light"] .quick-grid a,
html[data-theme="light"] .feature-grid>div,
html[data-theme="light"] .stock-card,
html[data-theme="light"] .product-card,
html[data-theme="light"] .cloud-product,
html[data-theme="light"] .report-card,
html[data-theme="light"] .history-item,
html[data-theme="light"] .inventory-mobile-card,
html[data-theme="light"] .product-values span,
html[data-theme="light"] .info-box,
html[data-theme="light"] .text-control,
html[data-theme="light"] .list-item,
html[data-theme="light"] .promo-box,
html[data-theme="light"] .ncm-search,
html[data-theme="light"] .ncm-results,
html[data-theme="light"] .sf-modal-actions{background:var(--panel2)!important;color:var(--text)!important;border-color:var(--line)!important}
html[data-theme="light"] .input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{background:#fff!important;color:#1f2429!important;border-color:#cbd3da!important}
html[data-theme="light"] .input::placeholder,
html[data-theme="light"] textarea::placeholder{color:#8a949e!important}
html[data-theme="light"] .readonly,
html[data-theme="light"] .input.readonly{background:#eef1f4!important;color:#59636d!important}
html[data-theme="light"] .btn{background:#f1f3f5!important;color:#202428!important;border-color:#cbd3da!important}
html[data-theme="light"] .btn:hover{background:#e8edf1!important;filter:none!important}
html[data-theme="light"] .btn.primary{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}
html[data-theme="light"] .btn.danger{background:#fff0f1!important;color:#96343b!important;border-color:#e0a8ad!important}
html[data-theme="light"] .side-nav a{color:#3c4650!important}
html[data-theme="light"] .side-nav a:hover{background:#f0f4ee!important;color:#182018!important;border-color:#cfd8c8!important}
html[data-theme="light"] .side-nav a.active{background:#e8f0e2!important;color:#172016!important;border-color:#a9b89a!important}
html[data-theme="light"] .nav-title,
html[data-theme="light"] .brand small,
html[data-theme="light"] .topbar small,
html[data-theme="light"] small,
html[data-theme="light"] .muted{color:var(--muted)!important}
html[data-theme="light"] table,
html[data-theme="light"] .table-wrap{background:#fff!important;border-color:var(--line)!important}
html[data-theme="light"] th{background:#eef1f4!important;color:#36414b!important}
html[data-theme="light"] td{border-color:#e1e6eb!important;color:#202428!important}
html[data-theme="light"] .product-tab,
html[data-theme="light"] .segmented label span,
html[data-theme="light"] .flat-switch,
html[data-theme="light"] .switch-card,
html[data-theme="light"] .theme-toggle,
html[data-theme="light"] .theme-variant{background:#f1f3f5!important;color:#283039!important;border-color:#cbd3da!important}
html[data-theme="light"] .product-tab.active{background:#e5eedf!important;color:#172016!important;border-color:var(--accent)!important}
html[data-theme="light"] .product-savebar,
html[data-theme="light"] .sticky-actions{background:rgba(255,255,255,.96)!important;color:var(--text)!important;border-color:var(--line)!important;box-shadow:0 8px 24px rgba(20,30,40,.12)!important}
html[data-theme="light"] .alert{background:#f7f9fb!important;color:#25303a!important;border-color:#d8dee4!important}
html[data-theme="light"] .alert.success{background:#edf7e8!important;color:#375f2e!important;border-color:#bad7ae!important}
html[data-theme="light"] .alert.danger{background:#fff0f1!important;color:#96343b!important;border-color:#e0a8ad!important}
html[data-theme="light"] .toast{background:#fff!important;color:#202428!important;border-color:#cbd3da!important}

/* Home: leitura rapida em balcao/celular, acompanhando menu ampliado. */
.home-page .pwa-home-banner{padding:18px 20px!important;gap:16px!important;border-radius:12px!important}
.home-page .pwa-home-icon{width:58px!important;height:58px!important;border-radius:12px!important;font-size:34px!important}
.home-page .pwa-home-copy b{font-size:18px!important;line-height:1.2}
.home-page .pwa-home-copy small{font-size:14px!important;line-height:1.35}
.home-page .pwa-home-banner .btn{min-height:48px!important;font-size:15px!important;padding:12px 18px!important}
.home-page .stat-grid{gap:14px!important;margin-bottom:18px!important}
.home-page .stat-card{padding:20px 18px!important;border-radius:12px!important}
.home-page .stat-card small{font-size:15px!important;line-height:1.25}
.home-page .stat-card b{font-size:34px!important;line-height:1.15;margin-top:8px!important}
.home-page .card{padding:22px 20px!important;border-radius:12px!important}
.home-page .card h2{font-size:26px!important;line-height:1.2}
.home-page .quick-grid{gap:12px!important;margin-top:18px!important}
.home-page .quick-grid a{grid-template-columns:42px minmax(0,1fr)!important;gap:4px 12px!important;min-height:74px!important;padding:17px 18px!important;border-radius:12px!important;font-size:30px!important;align-items:center}
.home-page .quick-grid a b{font-size:17px!important;line-height:1.25}
.home-page .quick-grid a small{font-size:13px!important;line-height:1.35}
.home-page .muted{font-size:16px!important;line-height:1.45}
.share-menu-dialog{width:min(520px,calc(100% - 28px));border:1px solid var(--border,#444);border-radius:14px;background:var(--card,#1d1d1d);color:var(--text,#fff);padding:18px}
.share-menu-dialog::backdrop{background:rgba(0,0,0,.68)}
.share-menu-head{display:flex;align-items:center;justify-content:space-between;font-size:20px}.share-menu-head button{border:0;background:transparent;color:inherit;font-size:30px;cursor:pointer}
.share-social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.share-social-grid a,.share-social-grid button{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--border,#444);border-radius:10px;background:var(--surface,#292929);color:inherit;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}
.pedidos-destination{margin:16px 0;padding:14px;border:1px solid var(--border,#444);border-radius:10px}.pedidos-destination legend{padding:0 7px;font-weight:700}.pedidos-destination .check{display:block;margin:9px 0;cursor:pointer}.pedidos-destination input{width:auto;margin-right:7px}
@media(max-width:760px){
 .home-page .pwa-home-banner{padding:14px!important;gap:12px!important}
 .home-page .pwa-home-icon{width:52px!important;height:52px!important;font-size:30px!important}
 .home-page .pwa-home-copy b{font-size:17px!important}
 .home-page .pwa-home-copy small{font-size:13px!important}
 .home-page .stat-grid{gap:8px!important;margin-bottom:9px!important}
 .home-page .stat-card{padding:13px 12px!important;border-radius:9px!important}
 .home-page .stat-card small{font-size:12px!important}
 .home-page .stat-card b{font-size:27px!important;margin-top:4px!important}
 .home-page .card{padding:14px!important;border-radius:9px!important}
 .home-page .card h2{font-size:22px!important}
 .home-page .quick-grid{gap:8px!important;margin-top:11px!important}
 .home-page .quick-grid a{grid-template-columns:36px minmax(0,1fr)!important;min-height:68px!important;padding:13px!important;border-radius:9px!important;font-size:27px!important;gap:2px 10px!important}
 .home-page .quick-grid a b{font-size:16px!important}
 .home-page .quick-grid a small{font-size:12px!important}
 .home-page .muted{font-size:13px!important}
}
@media(max-width:430px){
 .home-page .stat-card b{font-size:25px!important}
 .home-page .quick-grid a{font-size:26px!important}
}


/* Modal global de mensagens/confirmacoes - segue tema claro/escuro. */
body.sf-modal-open{overflow:hidden}
.sf-modal-backdrop{animation:sfModalFade .14s ease-out}
.sf-modal{animation:sfModalPop .16s ease-out;max-height:min(78vh,620px)}
.sf-modal-backdrop .sf-modal-body{font-size:15px}
.sf-modal-backdrop.danger .sf-modal-head{background:color-mix(in srgb,var(--danger) 10%,var(--header))}
.sf-modal-backdrop.success .sf-modal-head{background:color-mix(in srgb,var(--accent) 12%,var(--header))}
.sf-modal-backdrop.confirm .sf-modal-head{background:color-mix(in srgb,#b69b62 12%,var(--header))}
.sf-modal-backdrop.danger #sfModalOk{background:#5a292d!important;border-color:#8d434a!important;color:#ffd9dc!important}
.sf-modal-actions .btn{min-width:96px}
@keyframes sfModalFade{from{opacity:0}to{opacity:1}}
@keyframes sfModalPop{from{opacity:0;transform:translateY(7px) scale(.985)}to{opacity:1;transform:none}}
.image-repair-modal .sf-modal{width:min(520px,100%)}.image-repair-modal .sf-modal-icon{font-size:20px}.image-repair-spin{animation:imageRepairSpin .85s linear infinite}.image-repair-live-title{display:flex;align-items:center;gap:8px;margin-bottom:15px;color:var(--text)}.image-repair-pulse{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 rgba(234,29,44,.35);animation:imageRepairPulse 1.1s infinite}.image-repair-progress{height:10px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:var(--field2)}.image-repair-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ea1d2c,#ff6872);transition:width .25s ease}.image-repair-progress-label{display:flex;justify-content:space-between;margin-top:6px;color:var(--muted);font-size:12px;font-weight:700}.image-repair-live-current{min-height:48px;margin-top:16px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--field2);font-size:13px;line-height:1.4}.image-repair-live-meta{margin-top:12px;color:var(--muted);font-size:12px}.image-repair-live-stats{margin-top:12px;padding-top:11px;border-top:1px solid var(--line);font-size:13px;line-height:1.6}.image-repair-live-stats small{color:var(--muted)}.image-repair-finished p{margin:10px 0 0;color:var(--muted);line-height:1.5}@keyframes imageRepairSpin{to{transform:rotate(360deg)}}@keyframes imageRepairPulse{0%,100%{box-shadow:0 0 0 0 rgba(234,29,44,.34)}50%{box-shadow:0 0 0 8px rgba(234,29,44,0)}}
@media(max-width:760px){
 .sf-modal{max-height:82vh}
 .sf-modal-backdrop .sf-modal-body{font-size:15px;line-height:1.45}
}
@media(prefers-reduced-motion:reduce){.sf-modal-backdrop,.sf-modal{animation:none!important}}

/* Cadastro existente: abre direto no formulário, sem painel superior. */
.product-window.product-editing-compact .product-form{padding-top:10px}
@media(max-width:760px){
 .product-window.product-editing-compact .product-tabs{top:61px!important}
}
@media(max-width:430px){
 .product-window.product-editing-compact .product-tabs{top:61px!important}
}


/* Cadastro de produtos no celular: apenas identificação básica fica aberta.
   As demais áreas usam uma faixa horizontal e somente uma seção abre por vez. */
.mobile-product-sections{display:none}
@media(max-width:760px){
 .product-tabs{display:none!important}
 .mobile-product-sections{
  display:flex;gap:5px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;
  position:sticky;top:61px;z-index:18;margin:7px -6px 7px;padding:5px 6px 6px;
  background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(8px);scrollbar-width:thin
 }
 .mobile-product-section{
  flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;border:1px solid var(--line);background:var(--field2);
  color:var(--muted);border-radius:7px;padding:9px 11px;font-size:10.5px;font-weight:750;cursor:pointer
 }
 .mobile-product-section.active{background:color-mix(in srgb,var(--accent) 20%,var(--panel));border-color:var(--accent);color:var(--text)}
 .product-tab-page{display:none!important}
 .product-tab-page.active{display:block!important}
 .product-tab-page[data-product-page="geral"].active .mobile-product-panel{display:none!important}
 .product-tab-page[data-product-page="geral"].active .mobile-product-panel.mobile-open{display:block!important}
 .product-tab-page[data-product-page="geral"] .product-desktop-columns{display:block!important}
 .mobile-product-panel{margin-bottom:7px!important}
 .mobile-product-panel .panel-caption{font-size:12px}
 .product-window.product-editing-compact .mobile-product-sections{top:61px!important}
}
@media(max-width:430px){
 .mobile-product-sections{top:61px!important}
 .mobile-product-section{padding:8px 10px;font-size:10px}
}


@media (max-width:760px){
 .mobile-product-sections{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0 10px}
 .mobile-product-section{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px;border:2px solid var(--line);background:var(--field2);color:var(--text);border-radius:12px;font-size:12px;font-weight:800;text-align:center;line-height:1.1;cursor:pointer}
 .mobile-product-section[data-mobile-product-section="resumo"]{grid-column:1 / -1}
 .mobile-product-section.active{background:color-mix(in srgb,var(--accent) 18%,var(--panel));border-color:var(--accent);color:var(--text);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%, transparent) inset}
 .product-tabs{display:none!important}
 .product-tab-page{display:none!important}
 .product-tab-page.active{display:block!important}
 .product-tab-page[data-product-page="geral"] .product-desktop-columns{display:block!important}
 .product-tab-page[data-product-page="geral"] .mobile-product-panel{display:none!important;margin-bottom:8px}
 .product-tab-page[data-product-page="geral"] .mobile-product-panel.mobile-open{display:block!important}
 .product-tab-page[data-product-page="geral"] .price-panel .panel-caption::after{content:'Resumo produto';float:right;color:var(--muted);font-size:11px;font-weight:600}
}
html[data-theme="light"] .mobile-product-section{background:#fff!important;border-color:#c9d2d8!important;color:#202428!important}
html[data-theme="light"] .mobile-product-section.active{background:#e5eedf!important;border-color:var(--accent)!important;color:#172016!important}


@media (max-width:760px){
 .product-titlebar{display:none!important}
 .product-window .product-form{padding-top:6px!important}
 .product-main-ident{padding:8px!important}
 .product-ident-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
 .mobile-main-ean{grid-column:1!important}
 .mobile-main-code{grid-column:2!important}
 .mobile-main-desc{grid-column:1 / -1!important}
 .mobile-main-ean-int,.mobile-main-date{display:none!important}
 .mobile-main-ean .input,.mobile-main-code .input{min-height:42px;text-align:center}
 .mobile-main-desc .input{min-height:54px;text-align:center;font-size:16px;font-weight:700}
 .mobile-product-sections{display:grid!important;grid-template-columns:1fr!important;gap:8px;margin:10px 0}
 .mobile-product-section{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;padding:8px 10px;border:2px solid #000;background:var(--field2);color:var(--text);border-radius:12px;font-size:12px;font-weight:700;text-align:center;line-height:1.1;cursor:pointer}
 .mobile-product-section.active{background:color-mix(in srgb,var(--accent) 18%,var(--panel));border-color:var(--accent)}
 .product-tabs{display:none!important}
 .product-tab-page{display:none!important}
 .product-tab-page.active{display:block!important}
 [data-product-page="geral"]{display:block!important}
 .mobile-summary-panel{display:block!important;padding:8px!important;border-radius:10px!important}
 .mobile-summary-panel .panel-caption{display:none!important}
 .mobile-summary-panel .price-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
 .mobile-summary-panel .mobile-sum{display:grid!important}
 .mobile-summary-panel .mobile-sum-cost{order:1}.mobile-summary-panel .mobile-sum-margin{order:2}.mobile-summary-panel .mobile-sum-price1{order:3}.mobile-summary-panel .mobile-sum-price2{order:4}.mobile-summary-panel .mobile-sum-qty{order:5}.mobile-summary-panel .mobile-sum-min{order:6}
 .mobile-summary-panel .mobile-hide-extra{display:none!important}
 .mobile-summary-panel .mobile-sum .input{min-height:42px!important}
 .mobile-summary-panel .promo-box{display:none!important}
 .mobile-extra-panel{display:none!important}
 .mobile-extra-panel.mobile-open{display:block!important;margin-top:8px!important}
 .product-tab-page[data-product-page="fiscal"],.product-tab-page[data-product-page="rtc"],.product-tab-page[data-product-page="outros"]{margin-top:8px}
 .product-savebar{display:grid!important;grid-template-columns:1fr!important;padding:8px!important}
 .product-savebar>div:first-child{display:none!important}
 .product-savebar .actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
 .product-savebar .actions .btn{min-height:42px!important}
 .product-savebar .actions .danger{display:none!important}
}
html[data-theme="light"] .mobile-product-section{background:#fff!important;border-color:#202428!important;color:#202428!important}
html[data-theme="light"] .mobile-product-section.active{background:#e5eedf!important;border-color:var(--accent)!important;color:#172016!important}

/* Cadastro mobile: Voltar | Nuvem | Salvar na mesma linha. */
@media (max-width:760px){
 .product-savebar .actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
 .product-savebar .actions .back-product{grid-column:1!important}
 .product-savebar .actions .mobile-cloud-product{display:flex!important;align-items:center;justify-content:center;grid-column:2!important;white-space:nowrap;text-decoration:none;padding-left:5px!important;padding-right:5px!important}
 .product-savebar .actions .save-product{grid-column:3!important}
}


/* Cadastro de produto mobile: somente abas reais; Dados básicos abre primeiro. */
@media (max-width:760px){
 .mobile-product-sections{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
 .mobile-product-section[data-mobile-product-section="basico"]{order:0}
 .mobile-summary-panel{display:none!important}
 .mobile-summary-panel.mobile-open{display:block!important}
 .mobile-summary-panel .promo-box{display:none!important}
 .mobile-summary-panel.mobile-promo-open .price-grid{display:none!important}
 .mobile-summary-panel.mobile-promo-open .promo-box.mobile-open{display:block!important}
 .mobile-summary-panel.mobile-promo-open{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
 .mobile-summary-panel.mobile-promo-open>.panel-caption{display:none!important}
}


/* Cadastro mobile: abas no topo; identificação faz parte de Dados básicos. */
@media(max-width:760px){
 .product-form>.mobile-product-sections{margin-top:0!important;margin-bottom:8px!important}
 .product-form>.product-main-ident{display:none!important;margin-bottom:8px!important}
 .product-form.mobile-basic-open>.product-main-ident{display:block!important}
 .product-form.mobile-basic-open [data-product-page="geral"]{display:block!important}
 .mobile-main-ean .input{width:100%!important}
}


/* Cadastro de produto mobile: valores editáveis centralizados. */
@media (max-width:760px){
 #productForm input.input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):not([readonly]),
 #productForm textarea.input:not([readonly]),
 #productForm select.input:not([disabled]){
  text-align:center!important;
 }
 #productForm select.input:not([disabled]){
  text-align-last:center!important;
 }
}


/* Ícones padronizados dos botões do sistema. */
.sf-btn-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin-right:6px;line-height:1;font-size:1.08em;vertical-align:-.05em}
.sf-btn-label{display:inline-block}
.btn.square .sf-btn-icon,.icon-btn .sf-btn-icon{margin-right:0}

/* Cadastro de produto mobile: ações grandes, mas compactas para não ocupar a tela. */
@media (max-width:760px){
 .product-window .product-form{padding-bottom:96px!important}
 .product-savebar{padding:7px!important}
 .product-savebar .actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;align-items:stretch!important}
 .product-savebar .actions .back-product,
 .product-savebar .actions .mobile-cloud-product,
 .product-savebar .actions .save-product{
   min-height:68px!important;
   height:68px!important;
   padding:7px 5px!important;
   font-size:14px!important;
   line-height:1.05!important;
   font-weight:800!important;
   border-radius:11px!important;
   display:flex!important;
   align-items:center!important;
   justify-content:center!important;
   text-align:center!important;
   white-space:nowrap!important;
 }
 .product-savebar .actions .back-product .sf-btn-icon,
 .product-savebar .actions .mobile-cloud-product .sf-btn-icon,
 .product-savebar .actions .save-product .sf-btn-icon{
   font-size:24px!important;
   margin-right:5px!important;
 }
 .product-savebar .actions .danger{
   min-height:42px!important;
   height:auto!important;
   padding:7px 10px!important;
   font-size:12px!important;
   border-radius:9px!important;
 }
 .product-savebar .actions .back-product{grid-column:1!important}
 .product-savebar .actions .mobile-cloud-product{grid-column:2!important}
 .product-savebar .actions .save-product{grid-column:3!important}
}

/* Aviso de EAN já existente: destaque suave sem consumir atenção excessiva. */
.ean-registered-alert{font-size:13px!important;font-weight:800;letter-spacing:.2px;animation:sfEanRegisteredBlink 1.8s ease-in-out infinite}
@keyframes sfEanRegisteredBlink{0%,100%{opacity:1}50%{opacity:.42}}
@media (prefers-reduced-motion:reduce){.ean-registered-alert{animation:none!important}}


/* Botão Abrir da consulta de produtos: usa os ícones fornecidos em /Icones. */
.product-open-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;min-width:38px!important;padding-left:7px!important;padding-right:7px!important;font-size:0!important}
.product-open-btn::before{content:"";display:inline-block;width:24px;height:24px;flex:0 0 24px;background-image:url('../icons/open_sign_24branco.png');background-repeat:no-repeat;background-position:center;background-size:24px 24px}
html[data-theme="light"] .product-open-btn::before{background-image:url('../icons/open_sign_24branco.png')}

@media(max-width:760px){.product-open-btn{min-width:46px!important;min-height:42px!important}}


/* Consulta de produtos mobile: botão Abrir somente do tamanho do ícone. */
@media(max-width:760px){
 .product-consult-mobile .mobile-product-actions,
 .product-card .mobile-product-actions{
   grid-template-columns:minmax(0,1fr) 40px!important;
   align-items:stretch!important;
 }
 .product-consult-mobile .product-open-btn,
 .product-card .product-open-btn{
   width:40px!important;
   min-width:40px!important;
   max-width:40px!important;
   min-height:42px!important;
   padding:6px!important;
   box-sizing:border-box!important;
 }
}

/* ================= Etiquetas WEB / Auto Print Windows ================= */
.etq-head-card{padding-bottom:12px}.etq-head-title{margin-bottom:10px}.etq-auto-badge,.etq-queue-state{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--panel2));color:var(--text);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;white-space:nowrap}.etq-auto-badge:before{content:'●';margin-right:7px;color:#8dbd73;animation:etqPulse 2.4s ease-in-out infinite}.etq-main-controls{display:grid;grid-template-columns:minmax(320px,1fr) minmax(220px,.55fr);gap:12px;align-items:end}.etq-profile-info{border:1px solid var(--line);background:var(--field2);border-radius:9px;padding:9px 12px;display:grid;gap:2px}.etq-profile-info small,.etq-profile-info span{color:var(--muted)}.etq-profile-info span{font-size:11px}.etq-desktop-grid{display:grid;grid-template-columns:1fr;gap:14px}.etq-search-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:8px;align-items:end}.etq-search-row #scanInput,.etq-search-row #scanQty{text-align:center}.etq-qty-label{display:grid;gap:4px}.etq-qty-label span{font-size:10px;color:var(--muted);text-align:center}.etq-search-results{display:grid;gap:6px;margin-top:9px;max-height:300px;overflow:auto}.etq-search-hit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);background:var(--field2);border-radius:9px;padding:9px}.etq-search-hit b,.etq-search-hit small{display:block}.etq-search-hit small{color:var(--muted);margin-top:2px}.etq-search-hit .etq-hit-values{display:flex;gap:10px;margin-top:5px;font-size:11px;color:var(--muted)}.etq-selected{margin-top:8px;padding:8px 10px;border:1px solid var(--accent);border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,var(--field2))}.etq-desktop-extra{margin-top:14px}.etq-help{font-size:12px}.etq-queue-mobile,.etq-mobile-tip{display:none}.etq-queue-state{border-color:var(--line);background:var(--field2);color:var(--muted)}.etq-queue-state.waiting{border-color:var(--accent);color:var(--text)}
@keyframes etqPulse{0%,100%{opacity:.35}50%{opacity:1}}

@media(max-width:900px){.etq-desktop-grid{grid-template-columns:1fr}.etq-preview-card{display:none}.etq-main-controls{grid-template-columns:1fr}.etq-profile-info{display:none}}
@media(max-width:760px){
 .etq-head-card{padding:9px!important}.etq-head-title{display:block!important}.etq-head-title h2{font-size:17px}.etq-head-title small{display:none}.etq-auto-badge{margin-top:7px;width:100%;padding:6px 8px;font-size:11px}.etq-main-controls{display:block}.etq-profile-label{font-size:11px}.etq-profile-label .input{font-size:14px;min-height:42px}
 .etq-search-card{padding:9px!important}.etq-search-card .card-head{margin-bottom:7px}.etq-search-card .card-head h2{font-size:15px}.etq-search-card .card-head small{display:none}.etq-search-row{grid-template-columns:1fr;gap:6px}.etq-search-row #scanInput{grid-column:1/-1;text-align:center}.etq-search-row .etq-qty-label{width:45%;min-width:110px;max-width:160px;justify-self:center}.etq-search-row #scanQty{text-align:center}.etq-search-results{max-height:260px}.etq-search-hit{grid-template-columns:1fr auto;padding:8px}.etq-search-hit .btn{min-width:46px;min-height:42px;font-size:0}.etq-search-hit .btn:after{content:'＋';font-size:22px}.etq-desktop-extra{display:none}
 .etq-queue-card{padding:9px!important}.etq-queue-card .card-head{align-items:flex-start}.etq-queue-card .card-head h2{font-size:15px}.etq-queue-desktop{display:none!important}.etq-queue-mobile{display:grid;gap:6px}.etq-queue-mobile-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);background:var(--field2);border-radius:8px;padding:8px}.etq-queue-mobile-card b{display:block;font-size:12px}.etq-queue-mobile-card small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.etq-queue-mobile-card .etq-q-price{font-size:12px;margin-top:4px}.etq-queue-mobile-card .icon-btn{font-size:20px;min-width:38px;min-height:38px}.etq-mobile-tip{display:block;margin-top:8px;border:1px dashed var(--line);border-radius:7px;padding:8px;text-align:center;color:var(--muted);font-size:10px}.etq-queue-state{font-size:10px;padding:5px 8px}
}


/* Inicio: Produtos removido; Etiquetas fica dentro de Estoque em PC e celular. */


/* search icon buttons */
.search-icon-btn{width:46px;min-width:46px;max-width:46px;padding:0!important;font-size:0!important;display:inline-flex;align-items:center;justify-content:center;line-height:1}
.search-icon-btn::after{content:'🔍';font-size:18px;line-height:1}
.search-inline-action{display:grid;grid-template-columns:1fr auto auto;gap:6px;align-items:center}
.search-inline-action .search-icon-btn{justify-self:end}
.product-consult-search #productSearchBtn,.stock-searchbar #stockSearchBtn{width:46px;min-width:46px}
@media(max-width:900px){.stock-searchbar{grid-template-columns:minmax(0,1fr) 48px 48px!important}.stock-searchbar #stockFilter{grid-column:1/-1}.stock-searchbar #stockSearchBtn{grid-column:auto!important;width:48px!important;min-width:48px!important}.product-consult-search{grid-template-columns:minmax(0,1fr) 48px 48px!important}.product-consult-search #productSearchBtn{grid-column:auto!important;width:48px!important;min-width:48px!important}}
@media(max-width:560px){.stock-searchbar{grid-template-columns:minmax(0,1fr) 48px 48px!important}.stock-searchbar #stockFilter{grid-column:1/-1!important}.stock-searchbar #stockSearchBtn{grid-column:auto!important}.product-consult-search{grid-template-columns:minmax(0,1fr) 48px 48px!important}.product-consult-search #productSearchBtn{grid-column:auto!important}}
@media(max-width:520px){.cloud-search-form{grid-template-columns:1fr!important}.cloud-search-form .search-inline-action{grid-template-columns:1fr 44px 44px}.cloud-search-form .search-icon-btn{min-height:44px}.cloud-search-form .big-action{display:none!important}}
@media(max-width:900px){.cloud-search-form.compact{grid-template-columns:1fr 1fr!important}.cloud-search-form.compact .cloud-inline-term{grid-column:1/-1!important}.cloud-search-form.compact .search-inline-action{grid-template-columns:1fr 44px 44px}}
@media(max-width:760px){.cloud-search-form.compact>.btn{display:none!important}}


/* Pesquisa estilo pill: lupa integrada dentro do campo */
.search-pill{position:relative;display:block;width:100%;min-width:0}
.search-pill>.input{width:100%!important;min-width:0!important;padding-right:52px!important;border-radius:999px!important}
.search-pill>.search-icon-btn{position:absolute!important;right:3px!important;top:50%!important;transform:translateY(-50%)!important;width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;min-height:40px!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:#090909!important;color:#fff!important;box-shadow:none!important;display:block!important;cursor:pointer!important;z-index:3!important;font-size:0!important}
.search-pill>.search-icon-btn:hover{background:#222!important}
.search-pill>.search-icon-btn:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px!important}
.search-pill>.search-icon-btn::before{content:''!important;position:absolute!important;width:14px!important;height:14px!important;border:3px solid #fff!important;border-radius:50%!important;left:10px!important;top:8px!important;box-sizing:content-box!important;background:transparent!important}
.search-pill>.search-icon-btn::after{content:''!important;position:absolute!important;width:12px!important;height:3px!important;border-radius:2px!important;background:#fff!important;left:22px!important;top:24px!important;transform:rotate(-45deg)!important;transform-origin:left center!important}

/* botão pesquisar deixa de ocupar uma coluna própria */
.product-consult-search{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}
.stock-searchbar{grid-template-columns:minmax(0,1fr) auto 190px!important;align-items:center!important}
.search-inline-action{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}
.cloud-search-form{grid-template-columns:220px minmax(240px,1fr) 180px!important}
.cloud-search-form.compact{grid-template-columns:190px minmax(280px,1fr) 160px!important}

@media(max-width:900px){
 .product-consult-search{grid-template-columns:minmax(0,1fr) 52px!important}
 .stock-searchbar{grid-template-columns:minmax(0,1fr) 48px!important}
 .stock-searchbar #stockFilter{grid-column:1/-1!important}
 .cloud-search-form{grid-template-columns:1fr 1fr!important}
 .cloud-search-form.compact{grid-template-columns:1fr 1fr!important}
 .cloud-search-form .cloud-inline-term,.cloud-search-form.compact .cloud-inline-term{grid-column:1/-1!important}
}
@media(max-width:560px){
 .search-pill>.input{padding-right:50px!important}
 .search-pill>.search-icon-btn{right:2px!important;width:40px!important;height:40px!important}
 .product-consult-search{grid-template-columns:minmax(0,1fr) 48px!important}
 .stock-searchbar{grid-template-columns:minmax(0,1fr) 48px!important}
 .stock-searchbar #stockFilter{grid-column:1/-1!important}
 .search-inline-action{grid-template-columns:minmax(0,1fr) 44px!important}
 .cloud-search-form,.cloud-search-form.compact{grid-template-columns:1fr!important}
 .cloud-search-form label,.cloud-search-form.compact label{grid-column:1/-1!important}
}


/* Ajustes finais: ícone de lupa igual ao anterior e digitação centralizada */
.input, textarea.input{text-align:center!important}
.input::placeholder, textarea.input::placeholder{text-align:center!important}
.search-pill>.search-icon-btn::before{display:none!important;content:none!important}
.search-pill>.search-icon-btn::after{content:'🔍'!important;position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:auto!important;height:auto!important;background:none!important;border:none!important;border-radius:0!important;font-size:18px!important;line-height:1!important;color:#fff!important}

/* Tema claro: lupa integrada sem fundo preto */
html[data-theme="light"] .search-pill>.search-icon-btn{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-theme="light"] .search-pill>.search-icon-btn:hover{
  background:color-mix(in srgb,var(--accent) 10%,transparent)!important;
}
html[data-theme="light"] .search-pill>.search-icon-btn::after{
  filter:none!important;
}


/* Tema escuro: lupa integrada sem preto chapado */
html:not([data-theme="light"]) .search-pill>.search-icon-btn{
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
html:not([data-theme="light"]) .search-pill>.search-icon-btn:hover{
  background:rgba(255,255,255,.10)!important;
}

/* ======================================================================
   Sistema_SF Mobile - PDV, Mesas, OS, Clientes e Caixa
   ====================================================================== */
.mobile-module,.mobile-form-window,.mobile-pdv,.mobile-mesas{width:100%;max-width:1440px;margin:0 auto}.mobile-module-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:12px}.mobile-search{display:flex;gap:7px;flex:1}.mobile-search .input{flex:1}.mobile-entity-list{display:grid;gap:8px}.mobile-entity-list.inside{max-height:56vh;overflow:auto}.mobile-entity-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--text);text-decoration:none}.mobile-entity-card:hover{border-color:var(--accent)}.mobile-entity-card b,.mobile-entity-card small{display:block}.mobile-entity-card small{color:var(--muted);margin-top:3px}.mobile-card-arrow{font-size:27px;color:var(--muted)}.mobile-form{padding-bottom:78px}.mobile-primary-panel,.mobile-details{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:11px;margin-bottom:9px}.mobile-details{padding:0;overflow:hidden}.mobile-details summary{cursor:pointer;padding:11px 12px;font-weight:800;color:var(--text);background:var(--panel2);border-bottom:1px solid transparent}.mobile-details[open] summary{border-bottom-color:var(--line)}.mobile-details-body{padding:11px}.mobile-form-grid{display:grid;gap:8px;margin-bottom:8px}.mobile-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-form-grid.thirds{grid-template-columns:1.1fr 1.4fr .5fr}.cep-grid{grid-template-columns:1fr auto;align-items:end}.mobile-sticky-actions{position:fixed;left:18px;right:calc(var(--sidebar) + 18px);bottom:9px;z-index:35;display:flex;justify-content:flex-end;gap:8px;padding:8px;background:color-mix(in srgb,var(--panel) 95%,transparent);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);backdrop-filter:blur(9px)}.mobile-sticky-actions .btn{min-width:120px}.full{width:100%}.compact-card{padding:13px}.mobile-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.mobile-kpi{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:12px}.mobile-kpi small,.mobile-kpi b{display:block}.mobile-kpi small{color:var(--muted)}.mobile-kpi b{font-size:19px;margin-top:5px}.mobile-action-grid{display:grid;gap:7px;margin-bottom:10px}.mobile-action-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-action-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-pay-list{display:grid;gap:6px}.mobile-pay-list>div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.cash-row{margin:0}.cash-row button{width:100%;display:flex;justify-content:space-between;gap:8px;text-align:left;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--text);cursor:pointer}.cash-row button b,.cash-row button small{display:block}.cash-row button small{color:var(--muted);margin-top:2px}.cash-row.selected button{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.mobile-sheet[hidden]{display:none!important}.mobile-sheet{position:fixed;inset:0;z-index:220;background:#0009;display:flex;align-items:flex-end;justify-content:center;padding:12px;backdrop-filter:blur(4px)}.mobile-sheet-card{position:relative;width:min(520px,100%);max-height:86vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 13px 13px;box-shadow:0 24px 70px #0009}.mobile-sheet-card>.sheet-close{position:absolute;right:8px;top:6px}.mobile-sheet-card h3{margin:0 34px 12px 0}

/* PDV */
.mobile-pdv{padding-bottom:92px}.pdv-top-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:9px 10px;margin-bottom:8px}.pdv-top-strip small,.pdv-top-strip b{display:block}.pdv-top-strip small{color:var(--muted);font-size:10px}.pdv-top-strip b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-scan-panel{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:9px;margin-bottom:8px}.pdv-scan-line{display:grid;grid-template-columns:minmax(0,1fr) 78px 46px;gap:6px}.input.huge{min-height:50px;font-size:18px;font-weight:750}.pdv-qty{text-align:center;font-size:18px;font-weight:800}.pdv-product-results{margin-top:7px;max-height:220px;overflow:auto}.pdv-product-results .search-hit{padding:8px 10px}.pdv-items{display:grid;gap:6px}.pdv-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px 10px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.pdv-item-main{min-width:0}.pdv-item-main b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-item-main small{display:block;color:var(--muted);margin-top:2px}.pdv-item-values{display:flex;align-items:center;gap:6px;margin-top:6px}.pdv-item-values .line-price{color:var(--accent2);font-weight:800}.pdv-item-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:5px}.pdv-item-side strong{font-size:17px}.pdv-item-qty{display:flex;align-items:center;gap:3px}.pdv-item-qty button{width:28px;height:28px;padding:0;border-radius:7px}.pdv-item-qty span{min-width:42px;text-align:center;font-weight:800}.pdv-bottom-bar{position:fixed;left:18px;right:calc(var(--sidebar) + 18px);bottom:8px;z-index:34;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:color-mix(in srgb,var(--panel) 96%,transparent);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.pdv-total small,.pdv-total b{display:block}.pdv-total small{color:var(--muted);font-size:10px}.pdv-total b{font-size:25px;color:var(--accent2)}.pdv-bottom-actions{display:flex;gap:6px}.pdv-bottom-actions .btn{min-width:100px}

/* Mesas */
.mesa-head-actions{display:flex;gap:8px;margin-bottom:10px}.mesa-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.mesa-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:11px;text-decoration:none;color:var(--text)}.mesa-card:hover{border-color:var(--accent)}.mesa-number{width:58px;height:58px;display:grid;place-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:11px;font-size:24px;font-weight:900;color:var(--accent2)}.mesa-card b,.mesa-card small,.mesa-card strong{display:block}.mesa-card small{color:var(--muted);margin:2px 0}
.mesa-card-v2{display:flex;flex-direction:column;gap:8px;padding:13px 14px;border-radius:22px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--text);min-height:178px}
.mesa-card-v2:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:0 5px 15px rgba(0,0,0,.14)}
.mesa-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mesa-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.mesa-status i{width:14px;height:14px;border-radius:999px;display:inline-block;background:#78a35f;box-shadow:0 0 0 2px rgba(0,0,0,.04)}
.mesa-card-v2.status-ocupada .mesa-status{color:#d26b6b}.mesa-card-v2.status-ocupada .mesa-status i{background:#d34d4d}
.mesa-card-v2.status-livre .mesa-status{color:#69b673}.mesa-card-v2.status-livre .mesa-status i{background:#45b95c}
.mesa-card-cutlery{font-size:34px;line-height:1;color:var(--muted);opacity:.85;filter:grayscale(1)}
.mesa-cupom-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);font-size:17px;cursor:pointer;padding:0;line-height:1}.mesa-cupom-btn:hover{border-color:var(--accent);transform:translateY(-1px)}
html[data-theme='light'] .mesa-cupom-btn{background:#fff;border-color:#dadada}
.btn.sent{background:#2e7d32!important;border-color:#2e7d32!important;color:#fff!important}

/* Destaque dos botões do cupom da mesa */
.btn-back-circle{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:999px;background:var(--accent);border:1px solid var(--accent);color:#111;font-size:22px;font-weight:900;text-decoration:none;box-shadow:0 4px 12px rgba(0,0,0,.35);cursor:pointer;transition:.15s}
.btn-back-circle:hover{filter:brightness(1.12);transform:translateY(-2px)}
.btn-back-circle:active{transform:translateY(0)}
.budget-preview-head .btn{font-weight:900;letter-spacing:.02em}
#mesaSalePrint,#budgetPrintCurrent{background:var(--accent);border:1px solid var(--accent);color:#fff;border-radius:999px;padding:6px 16px;box-shadow:0 3px 10px rgba(0,0,0,.28);cursor:pointer}
#mesaSalePrint:hover,#budgetPrintCurrent:hover{filter:brightness(1.1);transform:translateY(-1px)}
#mesaSalePrint.sent,#budgetPrintCurrent.sent{background:#2e7d32!important;border-color:#2e7d32!important}
#mesaSaleClose{background:var(--panel2);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:6px 16px;box-shadow:0 2px 8px rgba(0,0,0,.18);font-weight:900;cursor:pointer}
#mesaSaleClose:hover{border-color:var(--accent);transform:translateY(-1px)}
.mobile-mesas .icon-btn.sheet-close{width:34px;height:34px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);font-size:18px;font-weight:900;cursor:pointer}
.mobile-mesas .icon-btn.sheet-close:hover{border-color:#d34d4d;color:#d34d4d}
.mesa-card-title{font-size:clamp(28px,2.4vw,40px);line-height:1.05;font-weight:900;color:var(--text)}
.mesa-card-mini{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:18px;font-weight:800}.mesa-card-mini-icon{font-size:25px;line-height:1;color:var(--muted)}
.mesa-card-total{font-size:18px;color:var(--text)}.mesa-card-total b{display:inline;font-size:22px;font-weight:900;color:var(--text)}
.mesa-card-action{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);box-shadow:0 2px 7px rgba(0,0,0,.08);font-size:18px;font-weight:900;letter-spacing:.01em;color:var(--text);padding:0 16px;text-align:center}
html[data-theme='light'] .mesa-card-v2{background:#ffffff;border-color:#dddddd;color:#111;box-shadow:0 2px 10px rgba(0,0,0,.08)}
html[data-theme='light'] .mesa-card-v2:hover{box-shadow:0 5px 15px rgba(0,0,0,.10)}
html[data-theme='light'] .mesa-card-title,html[data-theme='light'] .mesa-card-total,html[data-theme='light'] .mesa-card-total b{color:#111}
html[data-theme='light'] .mesa-card-mini,html[data-theme='light'] .mesa-card-mini-icon,html[data-theme='light'] .mesa-card-cutlery{color:#6e6e6e}
html[data-theme='light'] .mesa-card-action{background:#fff;color:#111;border-color:#dadada}
html[data-theme='dark'] .mesa-card-v2{background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 96%,#fff 4%),var(--panel));border-color:color-mix(in srgb,var(--line) 80%,#fff 10%);color:var(--text)}
html[data-theme='dark'] .mesa-card-title,html[data-theme='dark'] .mesa-card-total,html[data-theme='dark'] .mesa-card-total b{color:var(--text)}
html[data-theme='dark'] .mesa-card-mini,html[data-theme='dark'] .mesa-card-mini-icon,html[data-theme='dark'] .mesa-card-cutlery{color:var(--muted)}
html[data-theme='dark'] .mesa-card-action{background:color-mix(in srgb,var(--accent) 10%,var(--panel2));color:var(--text);border-color:color-mix(in srgb,var(--accent) 34%,var(--line))}
.mesa-detail-head{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;margin-bottom:8px}.mesa-detail-head>div small,.mesa-detail-head>div b{display:block}.mesa-detail-head>div b{font-size:23px}.mesa-detail-total{text-align:right;font-size:24px;font-weight:900;color:var(--accent2)}.mesa-actions{justify-content:space-between}

/* OS */
.os-card{align-items:stretch}.os-card-side{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;gap:6px}.os-number-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.os-number-row small,.os-number-row b{display:block}.os-number-row b{font-size:20px}.os-items-panel{margin-top:10px;margin-bottom:86px}

@media(min-width:761px){
 .content{width:100%;max-width:none;padding-left:20px;padding-right:20px}
 .mobile-module,.mobile-form-window,.mobile-pdv,.mobile-mesas{width:100%;max-width:1440px}
 .os-editor{max-width:1440px}
 .os-editor .mobile-primary-panel,.os-editor .os-items-panel-inline,.os-editor .mobile-details{width:100%}
 .mobile-primary-panel,.mobile-details{padding:13px 14px}
 .mobile-details summary{padding:12px 14px}
 .mobile-details-body{padding:13px 14px}
 .mobile-form-grid{gap:10px}
 .mobile-sticky-actions{left:20px;right:calc(var(--sidebar) + 20px);bottom:10px}
 .pdv-bottom-bar{left:20px;right:calc(var(--sidebar) + 20px);bottom:10px}
 .mobile-sticky-actions .btn{min-width:136px}
 .mesa-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(min-width:1500px){
 .mobile-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mobile-form-grid.thirds{grid-template-columns:1.2fr 1.45fr .55fr}
 .mobile-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
 .mobile-module,.mobile-form-window,.mobile-pdv,.mobile-mesas{max-width:none}.mobile-module-toolbar{display:grid;grid-template-columns:1fr auto}.mobile-search{min-width:0}.mobile-search .btn{display:none}.mobile-form-grid.two,.mobile-form-grid.thirds{grid-template-columns:1fr 1fr}.mobile-sticky-actions,.pdv-bottom-bar{left:8px;right:8px}.mobile-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mesa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pdv-top-strip{grid-template-columns:auto minmax(0,1fr) auto}.os-card-side strong{font-size:14px}
}
@media(max-width:440px){
 .mobile-module-toolbar{grid-template-columns:1fr}.mobile-module-toolbar>.btn{width:100%}.mobile-form-grid.two,.mobile-form-grid.thirds{grid-template-columns:1fr}.cep-grid{grid-template-columns:1fr auto}.mobile-action-grid.three{grid-template-columns:1fr 1fr 1fr}.pdv-scan-line{grid-template-columns:minmax(0,1fr) 62px 44px}.pdv-bottom-actions .btn{min-width:86px;padding-left:9px;padding-right:9px}.mesa-grid{grid-template-columns:1fr 1fr;gap:10px}.mesa-card-v2{min-height:158px;padding:10px 11px;border-radius:17px}.mesa-card-title{font-size:24px}.mesa-card-mini{font-size:16px}.mesa-card-mini-icon{font-size:21px}.mesa-card-cutlery{font-size:30px}.mesa-card-total{font-size:16px}.mesa-card-total b{font-size:20px}.mesa-card-action{min-height:42px;font-size:15px;padding:0 10px}.mobile-sheet{padding:7px}.mobile-sheet-card{border-radius:14px 14px 10px 10px}.os-card{display:grid;grid-template-columns:1fr auto}
}

/* ===== Orçamentos / pré-venda mobile ===== */
.pdv-top-actions{display:flex;gap:5px;align-items:center}.receipt-note{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2)}.receipt-note strong{font-size:22px;color:var(--accent2)}
.budget-page{max-width:960px;margin:0 auto}.mobile-search-card.budget-search{display:flex;gap:7px;align-items:center;margin-bottom:9px;padding:9px;background:var(--panel);border:1px solid var(--line);border-radius:11px}.budget-search .input{min-width:0;flex:1}.budget-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}.budget-toolbar small{color:var(--muted)}.budget-list{display:grid;gap:8px}.budget-card{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:11px}.budget-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.budget-card-head small,.budget-card-head b{display:block}.budget-card-head small{font-size:9px;color:var(--muted);letter-spacing:.08em}.budget-card-head b{font-size:17px}.budget-card-head strong{font-size:20px;color:var(--accent2)}.budget-card-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;padding:9px 0}.budget-card-body b,.budget-card-body small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-card-body small{color:var(--muted);font-size:11px}.budget-card-body span{grid-column:2;grid-row:1/3;align-self:center;color:var(--muted);font-size:11px}.budget-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.budget-actions .btn{min-width:0;padding-left:6px;padding-right:6px;white-space:nowrap}.budget-preview-card{width:min(760px,100%);height:min(86vh,760px);display:flex;flex-direction:column;overflow:hidden}.budget-preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-right:30px;margin-bottom:8px}.budget-preview-head h3{margin:0}.budget-preview-head>div{display:flex;gap:5px}.budget-preview-card iframe{width:100%;min-height:480px;flex:1;border:1px solid var(--line);border-radius:9px;background:#282a2d}.empty-state{display:grid;gap:4px;text-align:center}.empty-state small{color:var(--muted)}
@media(max-width:620px){.pdv-top-strip{grid-template-columns:auto minmax(0,1fr)}.pdv-top-actions{grid-column:1/-1}.pdv-top-actions .btn{flex:1}.mobile-search-card.budget-search{display:grid;grid-template-columns:minmax(0,1fr) auto}.budget-search>a.btn{grid-column:1/-1}.budget-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-preview-card{height:82vh}.budget-preview-card iframe{min-height:420px}}
.budget-wa-icon{width:18px;height:18px;object-fit:contain;vertical-align:middle;margin-right:3px}

/* Orçamento: previsão/intenção de pagamento (mesma lógica do FormaPgOrc desktop) */
.budget-pay-intent{margin:12px 0}.budget-pay-intent>label,.budget-card-auth label{display:block;font-weight:800;margin:0 0 7px}.budget-pay-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:9px}.budget-pay-option{min-height:62px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;font:inherit}.budget-pay-option span{font-size:19px}.budget-pay-option b{font-size:12px}.budget-pay-option.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:color-mix(in srgb,var(--accent) 14%,var(--panel2))}.budget-card-auth{margin:8px 0}.budget-pay-badge{display:inline-flex!important;width:max-content;max-width:100%;padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:var(--panel2);color:var(--muted);font-size:11px}
@media(max-width:380px){.budget-pay-options{grid-template-columns:1fr}.budget-pay-option{min-height:46px;flex-direction:row}}

/* Ações rápidas da lista de Ordens de Serviço */
.os-card-actions{display:block;padding:0;overflow:hidden}.os-card-open{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:11px;color:inherit;text-decoration:none}.os-card-main{min-width:0}.os-card-main b,.os-card-main small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.os-card-main small{color:var(--muted);margin-top:2px}.os-grid-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:7px 9px 9px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 92%,var(--bg))}.os-grid-actions .btn{min-width:0;padding-left:5px;padding-right:5px;white-space:nowrap}.os-preview-card{width:min(760px,100%);height:min(86vh,760px);display:flex;flex-direction:column;overflow:hidden}.os-preview-card iframe{width:100%;min-height:480px;flex:1;border:1px solid var(--line);border-radius:9px;background:#282a2d}@media(max-width:620px){.os-grid-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.os-grid-actions .btn{font-size:11px}.os-preview-card{height:82vh}.os-preview-card iframe{min-height:420px}}

/* OS mobile: itens prioritários no topo e seções auxiliares recolhidas. */
.os-editor .os-items-panel-inline{margin-top:0;margin-bottom:9px}
.os-editor details.mobile-details:not([open]){margin-bottom:7px}

/* Consultas mobile: campo sempre fixo; resultado flutua acima/abaixo conforme espaço. */
@media(max-width:760px){
 .mobile-search-results-floating{position:fixed!important;z-index:360!important;display:grid!important;overflow:auto!important;margin:0!important;padding:4px!important;background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:11px!important;box-shadow:0 12px 32px #0009!important;scrollbar-width:thin;overscroll-behavior:contain;min-height:0!important}
 .mobile-search-results-floating:empty{display:none!important}
 .mobile-search-results-floating .mobile-entity-card,.mobile-search-results-floating .search-hit,.mobile-search-results-floating .etq-search-hit,.mobile-search-results-floating .product-card,.mobile-search-results-floating .stock-card{margin:0!important}
 .mobile-search-results-floating.product-grid{grid-template-columns:1fr!important}
 .mobile-search-results-floating.is-above{transform-origin:bottom center}
 .mobile-search-results-floating.is-below{transform-origin:top center}

 /* Teclado próprio: distribuição QWERTY inspirada no teclado nativo, porém mais baixa. */
 .sf-search-keyboard{position:fixed;left:0;right:0;bottom:0;z-index:500;padding:5px 5px calc(6px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--panel) 98%,var(--bg));border-top:1px solid var(--line);box-shadow:0 -8px 28px #0009;user-select:none;-webkit-user-select:none;touch-action:manipulation}
 .sf-search-keyboard[hidden]{display:none!important}
 .sf-search-keyboard-head{height:25px;display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:5px;margin-bottom:3px}
 .sf-search-keyboard-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px;font-weight:700;padding-left:4px}
 .sf-search-keyboard-head button,.sf-search-key-row button{appearance:none;-webkit-appearance:none;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--panel2) 94%,#fff 6%),var(--panel2));color:var(--text);font:700 17px/1 "Segoe UI",sans-serif;border-radius:6px;min-width:0;padding:0;box-shadow:0 1px 1px #0005}
 .sf-search-keyboard-head button{height:25px;font-size:19px}
 .sf-search-keyboard-head button:active,.sf-search-key-row button:active{transform:translateY(1px);background:color-mix(in srgb,var(--accent) 25%,var(--panel2));border-color:var(--accent)}
 .sf-search-key-row{display:flex;justify-content:center;gap:3px;margin-top:3px;padding-inline:2px}
 .sf-search-key-row .sf-key{height:38px;flex:1 1 0;max-width:44px}
 .sf-row-numbers .sf-key{height:31px;font-size:14px;opacity:.94}
 .sf-row-home{padding-inline:5.2%}
 .sf-row-bottomletters{padding-inline:1px}
 .sf-row-bottomletters .sf-key-shift,.sf-row-bottomletters .sf-key-back{flex:1.3 1 0;max-width:54px;font-size:19px;background:color-mix(in srgb,var(--panel2) 78%,var(--line))}
 .sf-key-shift.is-active{border-color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 20%,var(--panel2))!important}
 .sf-row-actions{align-items:center}
 .sf-row-actions .sf-key{height:36px}
 .sf-row-actions .sf-key-symbol{flex:.75 1 0;max-width:38px;font-size:16px}
 .sf-row-actions .sf-key-space{flex:4.8 1 0;max-width:none;font-size:11px;font-weight:600;color:var(--muted)}
 .sf-row-actions .sf-key-clear{flex:1.25 1 0;max-width:58px;font-size:10px}
 .sf-row-actions .sf-key-search{flex:1.35 1 0;max-width:58px;background:color-mix(in srgb,var(--accent) 30%,var(--panel2))!important;border-color:var(--accent)!important;font-size:20px!important}
 body.sf-search-keyboard-open .sf-search-keyboard{display:block}
 body.sf-search-keyboard-open .mobile-sheet:not([hidden]){padding-bottom:calc(var(--sf-keyboard-height,0px) + 8px);align-items:flex-end}
 body.sf-search-keyboard-open .mobile-sheet:not([hidden]) .mobile-sheet-card{max-height:calc(100dvh - var(--sf-keyboard-height,0px) - 24px);scroll-padding-top:12px;scroll-padding-bottom:12px}
}
@media(max-width:360px){
 .sf-search-keyboard{padding-left:3px;padding-right:3px}
 .sf-search-key-row{gap:2px;margin-top:2px}
 .sf-search-key-row .sf-key{height:36px;font-size:16px}
 .sf-row-numbers .sf-key{height:29px;font-size:13px}
 .sf-row-actions .sf-key{height:34px}
 .sf-row-home{padding-inline:4.8%}
 .sf-search-keyboard-head{margin-bottom:2px}
}

/* Teclado numérico próprio para quantidade, valores, documentos e demais campos numéricos. */
@media(max-width:760px) and (pointer:coarse){
 .sf-search-keyboard.sf-keyboard-numeric,.sf-search-keyboard.sf-keyboard-decimal{padding:4px 7px calc(5px + env(safe-area-inset-bottom,0px))}
 .sf-search-keyboard.sf-keyboard-numeric .sf-search-keyboard-head,.sf-search-keyboard.sf-keyboard-decimal .sf-search-keyboard-head{height:23px;margin-bottom:1px;grid-template-columns:minmax(0,1fr) 30px}
 .sf-search-keyboard.sf-keyboard-numeric .sf-search-keyboard-head button,.sf-search-keyboard.sf-keyboard-decimal .sf-search-keyboard-head button{height:23px;font-size:18px}
 .sf-numeric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:2px}
 .sf-numeric-grid .sf-key{appearance:none;-webkit-appearance:none;height:38px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:7px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel2) 94%,#fff 6%),var(--panel2));color:var(--text);font:700 21px/1 "Segoe UI",sans-serif;box-shadow:0 1px 1px #0005;padding:0}
 .sf-numeric-grid .sf-key:active{transform:translateY(1px);background:color-mix(in srgb,var(--accent) 25%,var(--panel2));border-color:var(--accent)}
 .sf-numeric-grid .sf-num-back{font-size:22px;background:color-mix(in srgb,var(--panel2) 78%,var(--line))}
 .sf-numeric-grid .sf-num-clear{font-size:11px}
 .sf-numeric-grid .sf-num-action{grid-row:3 / span 2;grid-column:4;height:auto;background:color-mix(in srgb,var(--accent) 30%,var(--panel2));border-color:var(--accent);font-size:15px}
 .sf-numeric-grid .sf-num-zero{font-size:22px}
}

/* Pesquisa padrão global — mesmo visual da Consulta de Produtos */
.search-pill{position:relative;display:block;width:100%;min-width:0}
.search-pill>.input{width:100%!important;min-width:0!important;padding-right:52px!important;border-radius:999px!important}
.mobile-search>.search-pill,.budget-search>.search-pill,.history-actions>.search-pill,.pdv-scan-line>.search-pill,.etq-search-row>.search-pill{min-width:0}
.mobile-search>.search-pill,.budget-search>.search-pill{flex:1 1 auto}
.os-product-search-line{grid-template-columns:minmax(0,1fr) 46px!important}
.etq-search-row>.search-pill{grid-column:1}
@media(max-width:900px){
 .history-actions>.search-pill{grid-column:1/-1}
 .etq-search-row>.search-pill{grid-column:1/-1}
}
@media(max-width:620px){
 .budget-search>.search-pill{grid-column:1/-1}
}

/* Cadastro produto: opção fiscal rápida acima da descrição */
.product-fiscal-auto-inline{margin:8px 0 6px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--panel2)}
.product-fiscal-auto-inline .flat-switch{margin:0;min-height:30px}
.product-fiscal-auto-inline small{display:block;margin:3px 0 0 40px;color:var(--muted);font-size:11px}
@media(max-width:760px){
 .product-fiscal-auto-inline{margin:6px 0 5px;padding:7px 9px;border-radius:9px}
 .product-fiscal-auto-inline .flat-switch b{font-size:12px}
 .product-fiscal-auto-inline small{margin-left:38px;font-size:10px}
}

/* Consulta na nuvem: câmera compacta somente com ícone ao lado da pesquisa */
#cloudSearchForm .search-inline-action{grid-template-columns:minmax(0,1fr) 44px!important;gap:6px!important;align-items:center!important}
#cloudCamera.cloud-camera-icon{width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;border-radius:8px!important;font-size:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
#cloudCamera.cloud-camera-icon::after{content:'📷'!important;font-size:20px!important;line-height:1!important}
@media(max-width:560px){
 #cloudSearchForm .search-inline-action{grid-template-columns:minmax(0,1fr) 44px!important}
 #cloudCamera.cloud-camera-icon{width:44px!important;min-width:44px!important;max-width:44px!important}
}

/* v73 - Grids/tabelas acompanham integralmente o tema claro/escuro. */
.table-wrap,
.table-wrap table,
table,
thead,
tbody,
tfoot,
tr,
td{background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important}
th{background:var(--field2)!important;color:var(--muted)!important;border-color:var(--line)!important}
tbody tr:nth-child(even),
.table-wrap tbody tr:nth-child(even){background:color-mix(in srgb,var(--panel2) 58%,var(--panel))!important}
tbody tr:nth-child(even)>td,
.table-wrap tbody tr:nth-child(even)>td{background:color-mix(in srgb,var(--panel2) 58%,var(--panel))!important}
tbody tr:hover,
.table-wrap tbody tr:hover,
tbody tr:hover>td,
.table-wrap tbody tr:hover>td{background:color-mix(in srgb,var(--accent) 10%,var(--panel))!important}
td a,th a,td b,td strong,td span{color:inherit}

/* Resultados e listas que funcionam como grid também usam as superfícies do tema. */
.search-hit,
.mobile-entity-card,
.budget-card,
.mobile-kpi,
.cash-row button,
.pdv-item,
.pdv-scan-panel,
.pdv-top-strip,
.mobile-primary-panel,
.mobile-details,
.mobile-details summary,
.os-grid-actions{
 background:var(--panel)!important;
 color:var(--text)!important;
 border-color:var(--line)!important;
}
.search-hit:hover,
.mobile-entity-card:hover,
.cash-row button:hover{
 background:color-mix(in srgb,var(--accent) 10%,var(--panel))!important;
 border-color:var(--accent)!important;
}
.os-grid-actions,
.mobile-details summary{background:var(--panel2)!important}

html[data-theme="light"] .table-wrap,
html[data-theme="light"] .table-wrap table,
html[data-theme="light"] table,
html[data-theme="light"] thead,
html[data-theme="light"] tbody,
html[data-theme="light"] tfoot,
html[data-theme="light"] tr,
html[data-theme="light"] td{
 background:#fff!important;
 color:#202428!important;
 border-color:#dfe5ea!important;
}
html[data-theme="light"] th{
 background:#eef2f5!important;
 color:#3d4852!important;
 border-color:#d7dee4!important;
}
html[data-theme="light"] tbody tr:nth-child(even),
html[data-theme="light"] tbody tr:nth-child(even)>td{
 background:#f8fafb!important;
}
html[data-theme="light"] tbody tr:hover,
html[data-theme="light"] tbody tr:hover>td{
 background:#edf3e9!important;
}
html[data-theme="light"] .search-hit,
html[data-theme="light"] .mobile-entity-card,
html[data-theme="light"] .budget-card,
html[data-theme="light"] .mobile-kpi,
html[data-theme="light"] .cash-row button,
html[data-theme="light"] .pdv-item,
html[data-theme="light"] .pdv-scan-panel,
html[data-theme="light"] .pdv-top-strip,
html[data-theme="light"] .mobile-primary-panel,
html[data-theme="light"] .mobile-details{
 background:#fff!important;
 color:#202428!important;
 border-color:#d8dee4!important;
}
html[data-theme="light"] .os-grid-actions,
html[data-theme="light"] .mobile-details summary{
 background:#f5f7f8!important;
 color:#202428!important;
 border-color:#d8dee4!important;
}
html[data-theme="light"] .search-hit:hover,
html[data-theme="light"] .mobile-entity-card:hover,
html[data-theme="light"] .cash-row button:hover{
 background:#edf3e9!important;
 border-color:var(--accent)!important;
}

/* Mesas v76: card mais compacto e sem numero duplicado */
.mesa-card-v2 .mesa-card-mini{display:none!important}
@media(max-width:620px){.mesa-card-v2{gap:7px}.mesa-card-action{min-height:40px}}


/* Mesa: fechamento real MEI / PIX */
.mesa-real-pay-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:9px 0 11px}.mesa-real-pay-grid .budget-pay-option{min-width:0}.mesa-real-pay-grid .budget-pay-option:disabled{opacity:.42;cursor:not-allowed}.mesa-pix-box{display:grid;gap:8px;justify-items:center;margin:10px 0;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--panel2)}.mesa-pix-box #mesaPixQr{background:#fff;padding:8px;border-radius:8px;min-width:210px;min-height:210px;display:grid;place-items:center}.mesa-pix-box #mesaPixQr img,.mesa-pix-box #mesaPixQr canvas{max-width:210px!important;width:100%!important;height:auto!important}.mesa-pix-box textarea{font-size:11px;resize:none}.mesa-pay-sheet{max-width:620px}
/* Produto genérico - somente PDV */
.generic-product-sheet{max-width:650px}.generic-section-title{margin:11px 0 6px;font-size:12px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.generic-icon-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:8px;max-height:245px;overflow:auto}.generic-icon{min-width:0;min-height:76px;padding:6px 3px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--text);display:grid;place-items:center;gap:3px;cursor:pointer;text-align:center;font:inherit}.generic-icon img{width:43px;height:43px;object-fit:contain}.generic-icon small{font-size:9px;line-height:1.05}.generic-icon.selected,.generic-color.selected,.generic-size.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:color-mix(in srgb,var(--accent) 14%,var(--panel2))}.generic-color-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.generic-color{min-height:39px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--text);cursor:pointer;font-size:11px;font-weight:750}.generic-size-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.generic-size{min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--text);cursor:pointer;font-weight:850}.generic-preview{min-height:48px;margin:10px 0;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--text);font-weight:800}.order-minus::before,.order-minus::after{content:none!important}.order-minus{font-family:Arial,sans-serif!important;line-height:1!important;text-indent:0!important}
@media(max-width:700px){.mesa-real-pay-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.generic-icon-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:220px}.generic-color-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}


.mobile-pay-list.desktop-like div:last-child{border-top:1px dashed var(--line);padding-top:10px;margin-top:4px}
.mobile-pay-list.desktop-like div:nth-last-child(2){border-top:1px dashed var(--line);padding-top:10px;margin-top:4px}

/* Mesas sincronizadas + imagem WEB do produto */
.mesa-card-v2.mesa-ifood{border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.mesa-card-v2.mesa-ifood .mesa-card-cutlery{font-size:15px;font-weight:900;letter-spacing:.02em;filter:none;opacity:1}.pdv-item:has(.pdv-item-web-image){grid-template-columns:52px minmax(0,1fr) auto}.pdv-item-web-image{width:48px;height:48px;border-radius:10px;overflow:hidden;background:var(--panel2);border:1px solid var(--line);align-self:center}.pdv-item-web-image img,.mobile-product-web-thumb img{width:100%;height:100%;object-fit:cover;display:block}.mobile-product-web-thumb{width:42px;height:42px;flex:0 0 42px;border-radius:9px;overflow:hidden;background:var(--panel2);border:1px solid var(--line)}.mobile-product-pick{display:flex;align-items:center;gap:9px}.mobile-product-pick>span:nth-last-child(2){min-width:0;flex:1}
@media(max-width:620px){.pdv-item:has(.pdv-item-web-image){grid-template-columns:44px minmax(0,1fr) auto}.pdv-item-web-image{width:40px;height:40px}.mobile-product-web-thumb{width:38px;height:38px;flex-basis:38px}}

/* Tema Cardápio global: prioridade final sobre os ajustes específicos do tema claro. */
html[data-theme-variant="cardapio"]{
  --bg:#f7f7f8;--panel:#ffffff;--panel2:#fff4f5;--line:#ead5d8;--text:#26282b;
  --muted:#6f7378;--accent:#ea1d2c;--accent2:#bd1421;--danger:#b4232f;
  --field:#ffffff;--field2:#fff7f8;--header:#ffffff;--sidebar-bg:#ffffff;--hover:#fff0f2;
  --shadow:0 10px 26px rgba(70,20,25,.09);--radius:14px;color-scheme:light;
}
html[data-theme-variant="cardapio"] body,
html[data-theme-variant="cardapio"] .main{background:var(--bg)!important;color:var(--text)!important}
html[data-theme-variant="cardapio"] .sidebar,
html[data-theme-variant="cardapio"] .topbar,
html[data-theme-variant="cardapio"] .product-titlebar{background:#fff!important;color:var(--text)!important;border-color:var(--line)!important}
html[data-theme-variant="cardapio"] .card,
html[data-theme-variant="cardapio"] .flat-window,
html[data-theme-variant="cardapio"] .flat-panel,
html[data-theme-variant="cardapio"] .product-flat-panel,
html[data-theme-variant="cardapio"] .product-window,
html[data-theme-variant="cardapio"] .sf-modal{background:#fff!important;color:var(--text)!important;border-color:var(--line)!important}
html[data-theme-variant="cardapio"] .product-tab,
html[data-theme-variant="cardapio"] .segmented label span,
html[data-theme-variant="cardapio"] .flat-switch,
html[data-theme-variant="cardapio"] .switch-card{background:#fff!important;color:#4a4e53!important;border-color:#e1c5c9!important}
html[data-theme-variant="cardapio"] .side-nav a.active{background:#fff0f2!important;color:#a40f1b!important;border-color:#f0aab1!important;box-shadow:inset 3px 0 0 #ea1d2c!important}
html[data-theme-variant="cardapio"] .side-nav a:hover{background:#fff4f5!important;color:#8f101b!important;border-color:#f0b7bd!important}
html[data-theme-variant="cardapio"] .btn{background:#fff!important;color:#4a4e53!important;border-color:#e1c5c9!important}
html[data-theme-variant="cardapio"] .btn:hover{background:#fff4f5!important;color:#a40f1b!important;border-color:#ef9da5!important}
html[data-theme-variant="cardapio"] .btn.primary{background:#ea1d2c!important;color:#fff!important;border-color:#ea1d2c!important}
html[data-theme-variant="cardapio"] .product-tab.active,
html[data-theme-variant="cardapio"] .mobile-product-section.active{background:#fff0f2!important;color:#a40f1b!important;border-color:#ea1d2c!important}
html[data-theme-variant="cardapio"] .theme-toggle,
html[data-theme-variant="cardapio"] .theme-variant{background:#fff4f5!important;color:#8f101b!important;border-color:#efb2b8!important}
html[data-theme-variant="cardapio"] .theme-variant-label{color:#8f101b!important}
html[data-theme-variant="cardapio"] .input,
html[data-theme-variant="cardapio"] select,
html[data-theme-variant="cardapio"] textarea{background:#fff!important;color:#26282b!important;border-color:#e1c5c9!important}
html[data-theme-variant="cardapio"] .readonly,
html[data-theme-variant="cardapio"] .input.readonly{background:#fff7f8!important;color:#6f7378!important}
html[data-theme-variant="cardapio"] .product-tab.active,
html[data-theme-variant="cardapio"] .mobile-product-section.active{background:#fff0f2!important;color:#a40f1b!important;border-color:#ea1d2c!important}
html[data-theme-variant="cardapio"] th{background:#fff0f2!important;color:#8f101b!important}
html[data-theme-variant="cardapio"] tbody tr:hover,
html[data-theme-variant="cardapio"] tbody tr:hover>td{background:#fff4f5!important;border-color:#ea1d2c!important}
html[data-theme-variant="cardapio"] .search-hit:hover,
html[data-theme-variant="cardapio"] .mobile-entity-card:hover,
html[data-theme-variant="cardapio"] .cash-row button:hover,
html[data-theme-variant="cardapio"] tbody tr:hover,
html[data-theme-variant="cardapio"] tbody tr:hover>td{background:#fff4f5!important;border-color:#ea1d2c!important}
html[data-theme-variant="cardapio"] .pwa-home-banner{background:linear-gradient(135deg,#fff0f2,#fff)!important;border-color:#f0b7bd!important}
.product-local-images-panel{margin-top:14px}.product-image-local-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.product-image-local-actions .btn{min-height:40px}.product-local-images-panel code{font-weight:800;color:var(--accent)}@media(max-width:760px){.product-image-local-actions{display:grid}.product-image-local-actions .btn{width:100%;text-align:center}}
