:root {
  --retail-forest: #123f35;
  --retail-forest-2: #1f6858;
  --retail-mint: #dff7ef;
  --retail-orange: #f9734f;
  --retail-sand: #f7f4ee;
  --retail-ink: #18251f;
  --retail-soft: #6c7872;
}

/* Venda presencial da Loja */
.retail-pos-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px;padding:26px 30px;border-radius:24px;background:linear-gradient(120deg,#123c34,#176b59);color:#fff;box-shadow:0 18px 44px rgba(15,76,65,.16)}
.retail-pos-heading h2{margin:5px 0 6px;font-size:30px}.retail-pos-heading p{margin:0;color:rgba(255,255,255,.76)}
.retail-pos-heading .retail-eyebrow{color:#a7f3d0}.retail-pos-heading__status{display:grid;grid-template-columns:auto 1fr;gap:1px 9px;align-items:center;min-width:220px;padding:13px 17px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.09)}
.retail-pos-heading__status i{grid-row:1/3;width:10px;height:10px;border-radius:50%;background:#5ee0a0;box-shadow:0 0 0 6px rgba(94,224,160,.12)}.retail-pos-heading__status span{font-size:11px;color:rgba(255,255,255,.7)}.retail-pos-heading__status strong{font-size:14px}
.retail-pos-heading__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.retail-pos-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(350px,.75fr);gap:20px;align-items:start}.retail-pos-catalog,.retail-pos-checkout{border:1px solid #e4ebe7;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(31,57,49,.06)}
.retail-pos-search{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid #e8eeeb}.retail-pos-search>span{font-size:22px;color:#527069}.retail-pos-search input{flex:1;border:0;outline:0;font:inherit;color:#18332c}.retail-pos-search b{font-size:12px;color:#6b7f79;white-space:nowrap}
.retail-pos-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;max-height:calc(100vh - 285px);overflow:auto}.retail-pos-product{position:relative;display:grid;grid-template-columns:76px 1fr 38px;gap:12px;align-items:center;padding:12px;border:1px solid #e3eae6;border-radius:16px;transition:.18s ease}.retail-pos-product:hover,.retail-pos-product.is-selected{border-color:#7cc7b4;box-shadow:0 8px 20px rgba(20,105,86,.08)}
.retail-pos-product__visual{position:relative;display:grid;place-items:center;width:76px;height:76px;overflow:hidden;border-radius:13px;background:var(--product-accent,#ecfdf5);font-size:30px}.retail-pos-product__visual img{width:100%;height:100%;object-fit:cover}.retail-pos-product__visual>b{position:absolute;right:5px;top:5px;display:grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:20px;background:#0f6d59;color:#fff;font-size:11px}
.retail-pos-product__copy{min-width:0}.retail-pos-product__copy>small{display:block;color:#70847e;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.retail-pos-product__copy>strong{display:block;margin:4px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1d302b}.retail-pos-product__copy>span{display:block;color:#81918c;font-size:11px}.retail-pos-product__copy footer{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:9px}.retail-pos-product__copy footer b{color:#116a56}.retail-pos-product__copy footer em{color:#7a8c86;font-size:10px;font-style:normal}.retail-pos-product>button{width:36px;height:36px;border:0;border-radius:11px;background:#e5f6f0;color:#0d6d58;font-size:22px;cursor:pointer}.retail-pos-product>button:disabled{opacity:.35;cursor:not-allowed}
.retail-pos-checkout{position:sticky;top:88px;overflow:hidden}.retail-pos-checkout>header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e8eeeb}.retail-pos-checkout>header h3{margin:3px 0 0;color:#17352e}.retail-pos-checkout>header button{border:0;background:none;color:#9b4c3f;font-weight:700;cursor:pointer}.retail-pos-checkout>header button:disabled{opacity:.35}
.retail-pos-cart{padding:10px 18px;max-height:230px;overflow:auto}.retail-pos-cart-empty{display:grid;justify-items:center;padding:25px 10px;color:#70827c;text-align:center}.retail-pos-cart-empty>span{font-size:28px}.retail-pos-cart-empty strong{margin-top:6px;color:#2b403a}.retail-pos-cart-empty p{margin:4px 0;font-size:12px}.retail-pos-cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #eef2f0}.retail-pos-cart-item>div:first-child strong,.retail-pos-cart-item>div:first-child small{display:block}.retail-pos-cart-item small{margin-top:2px;color:#80908b;font-size:10px}.retail-pos-cart-item>strong{color:#174f42;font-size:13px}.retail-pos-stepper{display:flex;align-items:center;gap:8px;padding:3px;border-radius:12px;background:#f0f5f2}.retail-pos-stepper button{width:27px;height:27px;border:0;border-radius:9px;background:#fff;color:#164b3e;cursor:pointer}.retail-pos-stepper button:disabled{opacity:.35}
.retail-pos-section{padding:16px 20px;border-top:1px solid #e8eeeb}.retail-pos-section__title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.retail-pos-section__title>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#dff6ee;color:#0d6d58;font-size:11px;font-weight:800}.retail-pos-section__title strong,.retail-pos-section__title small{display:block}.retail-pos-section__title small{margin-top:2px;color:#80908b;font-size:10px}.retail-pos-control{width:100%;padding:11px 12px;border:1px solid #d9e3de;border-radius:11px;background:#fff;color:#213b34}.retail-pos-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.retail-pos-inline-fields label,.retail-pos-received{color:#526a63;font-size:10px;font-weight:700}.retail-pos-inline-fields input,.retail-pos-received input{width:100%;margin-top:5px;padding:11px;border:1px solid #d9e3de;border-radius:11px;font:inherit;color:#1b342d;box-sizing:border-box}
.retail-pos-customer-search{display:flex;align-items:center;gap:7px;margin-bottom:8px;padding:0 10px;border:1px solid #d9e3de;border-radius:11px}.retail-pos-customer-search span{color:#668078}.retail-pos-customer-search input{width:100%;padding:10px 0;border:0;outline:0;font:inherit;font-size:12px}.retail-pos-customer-search+.retail-pos-control{margin-bottom:8px}
.retail-pos-customer,.retail-pos-payment{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #cce8dd;border-radius:13px;background:#f0fbf7}.retail-pos-customer>span,.retail-pos-payment>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#d7f4e9;color:#0a725b;font-weight:800}.retail-pos-customer div,.retail-pos-payment div{flex:1}.retail-pos-customer strong,.retail-pos-customer small,.retail-pos-payment strong,.retail-pos-payment small{display:block}.retail-pos-customer small,.retail-pos-payment small{color:#71857e;font-size:10px}.retail-pos-customer>b,.retail-pos-payment>b{color:#0d785f;font-size:10px}
.retail-pos-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.retail-pos-options button{padding:11px;border:1px solid #dce5e1;border-radius:12px;background:#fff;color:#263d37;text-align:left;cursor:pointer}.retail-pos-options button.is-active{border-color:#168168;background:#ecfaf5;box-shadow:inset 0 0 0 1px #168168}.retail-pos-options button:disabled{opacity:.45;cursor:not-allowed}.retail-pos-options b,.retail-pos-options small{display:block}.retail-pos-options small{margin-top:3px;color:#71847e;font-size:9px}.retail-pos-options+.retail-pos-control{margin-top:9px}.retail-pos-received{display:block;margin-top:10px}
.retail-pos-summary{display:grid;gap:7px;padding:16px 20px;background:#f5f8f6}.retail-pos-summary>div{display:flex;justify-content:space-between;color:#657872;font-size:12px}.retail-pos-summary .is-total{margin-top:3px;padding-top:10px;border-top:1px solid #dce5e1;color:#173a31;font-size:17px}.retail-pos-summary #retail-pos-change-row{color:#0d755e}.retail-pos-checkout>.retail-form-error{margin:12px 20px 0}.retail-pos-finish{display:grid;width:calc(100% - 40px);margin:14px 20px 20px;padding:14px;border:0;border-radius:14px;background:#11735d;color:#fff;cursor:pointer;box-shadow:0 9px 22px rgba(17,115,93,.2)}.retail-pos-finish span{font-size:14px;font-weight:800}.retail-pos-finish small{margin-top:2px;color:rgba(255,255,255,.74)}.retail-pos-finish:disabled{background:#aabbb6;box-shadow:none;cursor:not-allowed}
.retail-pos-success{display:grid;justify-items:center;padding:38px;text-align:center}.retail-pos-success>span{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#dcfce7;color:#087157;font-size:30px}.retail-pos-success>small{margin-top:14px;color:#637871;letter-spacing:.08em}.retail-pos-success h2{margin:6px 0;color:#123d33;font-size:34px}.retail-pos-success p{max-width:360px;color:#6c7f79}.retail-pos-success>div{display:flex;justify-content:space-between;width:100%;margin-top:12px;padding:13px 15px;border-radius:12px;background:#f1f7f4;color:#155343}
@media(max-width:1100px){.retail-pos-layout{grid-template-columns:1fr}.retail-pos-checkout{position:static}.retail-pos-products{max-height:none}}@media(max-width:680px){.retail-pos-heading{align-items:flex-start;flex-direction:column;padding:21px}.retail-pos-heading h2{font-size:25px}.retail-pos-heading__status{min-width:0;width:100%;box-sizing:border-box}.retail-pos-products{grid-template-columns:1fr;padding:10px}.retail-pos-inline-fields,.retail-pos-options{grid-template-columns:1fr}}

/* Frente de caixa: tela dedicada, isolada do painel administrativo. */
body.retail-cashier-mode { display: block; background: #edf2f1; }
body.retail-cashier-mode .sidebar,
body.retail-cashier-mode #global-topbar { display: none !important; }
body.retail-cashier-mode .main { width: 100%; min-height: 100vh; margin-left: 0; padding: 0; }
body.retail-cashier-mode .page.active { min-height: 100vh; }
.retail-cashier-shell { min-height: 100vh; color: #17342d; background: linear-gradient(135deg,#f3f7f6 0%,#e8efed 100%); }
.retail-cashier-topbar { min-height: 86px; padding: 0 28px; display: grid; grid-template-columns: minmax(230px,280px) minmax(500px,1fr) auto; align-items: center; gap: 24px; border-bottom: 1px solid #d9e4e0; background: rgba(255,255,255,.96); color: #17342d; box-shadow: 0 5px 22px rgba(25,65,54,.08); }
.retail-cashier-brand { display: flex; align-items: center; gap: 11px; min-width: 0; }
.retail-cashier-brand > span { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: linear-gradient(145deg,#0b735b,#20a47f); font-size: 22px; font-weight: 900; box-shadow: 0 8px 18px rgba(16,122,96,.18); }
.retail-cashier-brand strong, .retail-cashier-brand small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.retail-cashier-brand strong { font-size: 17px; }.retail-cashier-brand small { margin-top: 3px; color: #72877f; font-size: 10px; }
.retail-cashier-context { display: grid; grid-template-columns: repeat(4,minmax(100px,1fr)); align-items: center; }
.retail-cashier-meta { min-width: 0; min-height: 42px; padding: 0 18px; display: flex; align-items: center; gap: 10px; border-left: 1px solid #dce5e2; }.retail-cashier-meta > span { color: #0b735b; font-size: 19px; }.retail-cashier-meta small,.retail-cashier-meta strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.retail-cashier-meta small { color: #81918b; font-size: 8px; font-weight: 800; letter-spacing: .08em; }.retail-cashier-meta strong { margin-top: 3px; color: #18362f; font-size: 11px; }
.retail-cashier-top-actions { justify-self: end; }.retail-cashier-top-actions button { padding: 10px 13px; border: 1px solid #cfdcd7; border-radius: 9px; color: #34564d; background: #fff; cursor: pointer; font: inherit; font-size: 10px; font-weight: 800; }.retail-cashier-top-actions button:hover { border-color: #178269; color: #0b7059; background: #f0faf6; }
.retail-cashier-main { min-height: calc(100vh - 86px); padding: 16px 18px 20px; display: grid; grid-template-columns: minmax(510px,1.35fr) minmax(300px,.78fr) minmax(340px,.9fr); gap: 14px; max-width: 1900px; margin: 0 auto; align-items: start; background: linear-gradient(135deg,rgba(255,255,255,.18),rgba(220,231,227,.32)); }
.retail-cashier-catalog, .retail-cashier-cart-panel, .retail-cashier-order { min-width: 0; height: calc(100vh - 122px); overflow: hidden; border-radius: 16px; }.retail-cashier-catalog { display: flex; flex-direction: column; border: 1px solid #cbd9d5; border-top: 5px solid #6f968b; background: #f3f7f6; box-shadow: 0 10px 26px rgba(36,69,61,.07); }.retail-cashier-cart-panel { position: sticky; top: 0; display: flex; flex-direction: column; border: 1px solid #c7d9d3; border-top: 5px solid #2d8e76; background: #f8fbfa; box-shadow: 0 12px 30px rgba(31,82,68,.09); }.retail-cashier-order { border: 1px solid #bad4cc; border-top: 5px solid #0d745c; background: #fffdfa; box-shadow: 0 14px 34px rgba(20,78,63,.13); }
.retail-cashier-catalog-head { min-height: 82px; padding: 14px 17px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid #d7e3df; background: linear-gradient(110deg,#e9f1ee,#f7faf9); }.retail-cashier-column-heading { min-width: 0; display: flex; align-items: center; gap: 11px; }.retail-cashier-column-heading > div { min-width: 0; }.retail-cashier-column-number { width: 36px; height: 36px; flex: 0 0 36px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(145deg,#0d745c,#1b9c7c); box-shadow: 0 5px 12px rgba(13,116,92,.2); font-size: 16px; font-weight: 900; }.retail-cashier-catalog-head h1 { margin: 0; color: #14362e; font-size: 20px; letter-spacing: -.03em; }.retail-cashier-catalog-head p { margin: 3px 0 0; color: #687f77; font-size: 10px; }.retail-cashier-catalog-head > strong { align-self: center; padding: 7px 10px; border: 1px solid #ccdfd9; border-radius: 8px; color: #406c60; background: #fff; font-size: 9px; white-space: nowrap; }
.retail-cashier-search { height: 54px; margin: 14px 18px 10px; padding-left: 14px; display: flex; align-items: center; gap: 10px; overflow: hidden; border: 2px solid #bedbd1; border-radius: 10px; background: #fff; box-shadow: 0 4px 12px rgba(21,117,91,.06); }.retail-cashier-search:focus-within { border-color: #178269; box-shadow: 0 0 0 3px rgba(23,130,105,.1); }.retail-cashier-search > span { color: #0d735c; font-size: 23px; }.retail-cashier-search input { min-width: 0; width: 100%; border: 0; outline: 0; color: #19332d; background: transparent; font: inherit; font-size: 13px; }.retail-cashier-search > b { align-self: stretch; width: 64px; display: grid; place-items: center; color: #fff; background: #0c745c; font-size: 25px; font-weight: 500; }
.retail-cashier-categories { padding: 0 18px 10px; display: flex; gap: 7px; overflow-x: auto; scrollbar-width: thin; }.retail-cashier-categories button { min-height: 31px; padding: 0 12px; border: 1px solid #dce5e6; border-radius: 999px; color: #5f746e; background: #fff; cursor: pointer; font: inherit; font-size: 10px; font-weight: 750; white-space: nowrap; }.retail-cashier-categories button.is-active { border-color: #0f836a; color: #fff; background: #0f836a; }
.retail-cashier-products { min-height: 0; flex: 1; padding: 8px 14px 18px; display: grid; grid-template-columns: repeat(auto-fill,minmax(130px,1fr)); align-content: start; gap: 8px; overflow-y: auto; }.retail-cashier-product { min-width: 0; min-height: 154px; padding: 9px; position: relative; display: grid; align-content: start; gap: 3px; border: 1px solid #d7e3df; border-radius: 11px; background: #fff; box-shadow: 0 3px 10px rgba(43,76,67,.04); cursor: pointer; transition: border-color .16s ease,box-shadow .16s ease,transform .16s ease; }.retail-cashier-product:hover,.retail-cashier-product.is-selected { border-color: #4faf94; box-shadow: 0 7px 18px rgba(27,111,91,.11); transform: translateY(-1px); }.retail-cashier-product-image { height: 68px; display: grid; place-items: center; overflow: hidden; border-radius: 9px; background: linear-gradient(145deg,var(--product-accent,#e5f7f0),#fff); font-size: 32px; }.retail-cashier-product-image img { width: 100%; height: 100%; object-fit: cover; }.retail-cashier-product > strong { margin-top: 3px; overflow: hidden; color: #19322c; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }.retail-cashier-product > small { overflow: hidden; color: #84928e; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }.retail-cashier-product > b { margin-top: 3px; color: #08755e; font-size: 14px; }.retail-cashier-product > button { width: 28px; height: 28px; position: absolute; right: 9px; bottom: 9px; border: 0; border-radius: 8px; color: #fff; background: #119878; cursor: pointer; font-size: 18px; line-height: 1; }.retail-cashier-product > button:disabled { opacity: .35; cursor: not-allowed; }.retail-cashier-product > em { position: absolute; top: 14px; right: 14px; min-width: 22px; height: 22px; padding: 0 5px; display: grid; place-items:center; border-radius:999px; color:#fff; background:#0d795f; font-size:10px; font-style:normal; font-weight:800; }
.retail-cashier-order { position: sticky; top: 0; display: flex; flex-direction: column; overflow-y: auto; }.retail-cashier-cart-head, .retail-cashier-order-head { min-height: 82px; padding: 13px 14px; display: flex; align-items: center; justify-content: space-between; gap: 9px; border-bottom: 1px solid #d8e6e1; }.retail-cashier-cart-head { background: linear-gradient(110deg,#edf5f2,#fbfdfc); }.retail-cashier-order-head { background: linear-gradient(110deg,#edf8f4,#fffdfa); }.retail-cashier-cart-head h2, .retail-cashier-order-head h2 { margin: 0; color: #153a30; font-size: 17px; letter-spacing: -.02em; }.retail-cashier-cart-head small, .retail-cashier-order-head small { display:block; margin-top:3px; color:#6f847c; font-size:8px; line-height:1.35; }.retail-cashier-cart-actions { display: grid; justify-items: end; gap: 5px; }.retail-cashier-cart-actions > strong { padding: 5px 7px; border-radius: 7px; color: #14725d; background: #dff3ec; font-size: 9px; white-space: nowrap; }.retail-cashier-cart-actions button { padding: 4px 6px; border: 0; color: #b85448; background: transparent; cursor: pointer; font: inherit; font-size: 9px; font-weight: 800; }.retail-cashier-cart-actions button:disabled { opacity: .3; cursor: not-allowed; }
.retail-cashier-cart { min-height: 0; flex: 1; padding: 5px 13px; overflow-y: auto; }.retail-cashier-cart .retail-pos-cart-item { grid-template-columns: minmax(0,1fr) auto; gap: 4px 8px; padding: 12px 2px; }.retail-cashier-cart .retail-pos-cart-item > div:first-child { grid-column: 1; grid-row: 1; min-width: 0; }.retail-cashier-cart .retail-pos-cart-item > div:first-child strong, .retail-cashier-cart .retail-pos-cart-item > div:first-child small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.retail-cashier-cart .retail-pos-cart-item > .retail-pos-stepper { grid-column: 2; grid-row: 1 / span 2; }.retail-cashier-cart .retail-pos-cart-item > strong { grid-column: 1; grid-row: 2; color: #08755e; }.retail-cashier-cart .retail-pos-stepper { gap: 3px; }.retail-cashier-cart .retail-pos-stepper button { width: 24px; height: 24px; }.retail-cashier-cart-empty { min-height: 100%; display: grid; place-items: center; align-content: center; color: #81908d; text-align: center; }.retail-cashier-cart-empty span { font-size: 28px; }.retail-cashier-cart-empty strong { margin-top: 5px; color: #34544b; font-size: 12px; }.retail-cashier-cart-empty small { margin-top: 3px; font-size: 9px; }
.retail-cashier-step { margin: 8px 12px 0; padding: 13px 12px; border: 1px solid #e0e8e5; border-radius: 10px; background: #fff; }.retail-cashier-step-head { display: flex; align-items: center; gap: 9px; margin-bottom: 10px; }.retail-cashier-step-head > span { width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: #148268; font-size: 10px; font-weight: 900; }.retail-cashier-step-head strong, .retail-cashier-step-head small { display: block; }.retail-cashier-step-head strong { color: #233b34; font-size: 12px; }.retail-cashier-step-head small { margin-top: 2px; color: #899690; font-size: 9px; }.retail-cashier-customer-search { height: 34px; padding: 0 9px; display: flex; align-items: center; gap: 7px; border: 1px solid #dce5e5; border-radius: 8px; background: #fbfcfc; }.retail-cashier-customer-search span { color: #7b8b86; }.retail-cashier-customer-search input { min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; font: inherit; font-size: 10px; }.retail-cashier-control { width: 100%; height: 34px; margin-top: 7px; padding: 0 9px; border: 1px solid #dce5e5; border-radius: 8px; color: #3b514a; background: #fff; font: inherit; font-size: 10px; }.retail-cashier-customer-fields { margin-top: 7px; display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }.retail-cashier-customer-fields label, .retail-cashier-payment > label, .retail-cashier-received { display: grid; gap: 4px; color: #667872; font-size: 9px; font-weight: 750; }.retail-cashier-customer-fields input, .retail-cashier-payment > label input, .retail-cashier-received input { width: 100%; height: 34px; padding: 0 9px; border: 1px solid #dce5e5; border-radius: 8px; outline: 0; color: #203a32; background: #fbfcfc; font: inherit; font-size: 10px; }.retail-cashier-customer-card { margin-top: 7px; padding: 8px; display: flex; align-items: center; gap: 8px; border: 1px solid #c7e9dc; border-radius: 9px; background: #f0fbf7; }.retail-cashier-customer-card > span { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; color: #08755d; background: #d8f2e8; font-size: 11px; font-weight: 900; }.retail-cashier-customer-card div { min-width: 0; flex: 1; }.retail-cashier-customer-card strong, .retail-cashier-customer-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.retail-cashier-customer-card strong { color: #174d3e; font-size: 10px; }.retail-cashier-customer-card small { margin-top: 2px; color: #788d85; font-size: 9px; }.retail-cashier-customer-card button { border: 0; color: #0a735b; background: transparent; cursor: pointer; font: inherit; font-size: 9px; font-weight: 800; }
.retail-cashier-choice-row { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }.retail-cashier-choice-row button { min-height: 43px; padding: 7px 8px; border: 1px solid #dce5e5; border-radius: 9px; color: #536a63; background: #fff; cursor: pointer; text-align: left; }.retail-cashier-choice-row button.is-active { border-color: #1c9c7e; box-shadow: inset 0 0 0 1px #1c9c7e; color: #125f4e; background: #edf9f5; }.retail-cashier-choice-row button:disabled { opacity: .45; cursor: not-allowed; }.retail-cashier-choice-row b, .retail-cashier-choice-row small { display: block; }.retail-cashier-choice-row b { font-size: 10px; }.retail-cashier-choice-row small { margin-top: 3px; color: #8a9893; font-size: 8px; }.retail-cashier-choice-row + .retail-cashier-control { margin-top: 7px; }
.retail-cashier-payment-method { margin-bottom: 9px; padding: 8px; display: flex; align-items: center; gap: 8px; border: 1px solid #c7e9dc; border-radius: 9px; background: #effaf6; }.retail-cashier-payment-method > span { font-size: 17px; }.retail-cashier-payment-method div { flex: 1; }.retail-cashier-payment-method strong, .retail-cashier-payment-method small { display: block; }.retail-cashier-payment-method strong { color: #195a49; font-size: 10px; }.retail-cashier-payment-method small { margin-top: 2px; color: #789089; font-size: 8px; }.retail-cashier-payment-method b { color: #138267; font-size: 8px; }
.retail-cashier-total { margin: 8px 12px 12px; padding: 12px; flex: 0 0 auto; border: 1px solid #d6e5df; border-radius: 10px; background: #f4f9f7; }.retail-cashier-total > div { display: flex; justify-content: space-between; padding: 3px 0; color: #677c75; font-size: 10px; }.retail-cashier-total .is-total { margin-top: 8px; padding: 11px 12px; align-items: center; border: 1px solid #bfe8d4; border-radius: 9px; color: #087246; background: linear-gradient(90deg,#e4f8ed,#ccf3dd); font-size: 14px; font-weight: 900; }.retail-cashier-total .is-total strong { font-size: 24px; }.retail-cashier-total #retail-pos-change-row { color: #0c7c60; }.retail-cashier-total #retail-pos-change-row[hidden] { display: none; }.retail-cashier-pay { min-height: 56px; margin: 10px 12px 14px; position: sticky; bottom: 10px; z-index: 2; flex: 0 0 auto; border: 0; border-radius: 10px; color: #fff; background: linear-gradient(90deg,#087b55,#16a764); box-shadow: 0 9px 18px rgba(13,137,86,.2); cursor: pointer; }.retail-cashier-pay span, .retail-cashier-pay small { display: block; }.retail-cashier-pay span { font-size: 14px; font-weight: 850; }.retail-cashier-pay small { margin-top: 3px; color: rgba(255,255,255,.82); font-size: 8px; }.retail-cashier-pay:disabled { color: #fff; background: #a6b8b2; box-shadow: none; cursor: not-allowed; }
.retail-cashier-order > .retail-form-error { margin: 0 20px 8px; }
@media(max-width:1200px){.retail-cashier-topbar{grid-template-columns:minmax(200px,1fr) auto auto}.retail-cashier-context{grid-template-columns:repeat(2,minmax(110px,1fr))}.retail-cashier-meta:nth-child(3),.retail-cashier-meta:nth-child(4){display:none}.retail-cashier-main{grid-template-columns:minmax(0,1fr) minmax(360px,410px)}.retail-cashier-catalog{grid-row:span 2;height:calc(100vh - 122px)}.retail-cashier-cart-panel,.retail-cashier-order{position:static;height:auto;max-height:none}.retail-cashier-products{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.retail-cashier-cart{min-height:180px;max-height:320px}}
@media(max-width:820px){.retail-cashier-topbar{grid-template-columns:1fr auto;padding:0 16px}.retail-cashier-context{display:none}.retail-cashier-main{display:block;padding:12px}.retail-cashier-catalog,.retail-cashier-cart-panel,.retail-cashier-order{position:static;height:auto;margin-top:14px}.retail-cashier-catalog{margin-top:0}.retail-cashier-products{max-height:none}.retail-cashier-cart{min-height:190px;max-height:360px}}
@media(max-width:500px){.retail-cashier-brand small{display:none}.retail-cashier-top-actions button{padding:8px}.retail-cashier-catalog-head,.retail-cashier-cart-head,.retail-cashier-order-head{padding:13px 12px}.retail-cashier-column-number{width:32px;height:32px;flex-basis:32px;font-size:14px}.retail-cashier-catalog-head h1{font-size:18px}.retail-cashier-search,.retail-cashier-categories{margin-left:12px;margin-right:12px}.retail-cashier-products{padding-left:12px;padding-right:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.retail-cashier-product{min-height:158px;padding:8px}.retail-cashier-product-image{height:68px}.retail-cashier-product > strong{font-size:10px}.retail-cashier-product > b{font-size:13px}.retail-cashier-customer-fields{grid-template-columns:1fr}.retail-cashier-step{padding-left:14px;padding-right:14px}.retail-cashier-total{padding-left:14px;padding-right:14px}.retail-cashier-pay{margin-left:14px;margin-right:14px}}

.is-retail-profile { --teal: #159a7f; --teal-dark: #117764; --teal-light: #e5f8f2; }
.is-retail-profile .sidebar { background: #fbfdfc; }
.is-retail-profile .logo-icon { background: linear-gradient(145deg, var(--retail-forest), #28a487); color: #fff; }
.retail-page { padding: 22px 26px 40px; color: var(--retail-ink); }
.retail-page-meta { min-height: 32px; margin-bottom: 16px; display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.retail-preview-pill, .retail-live-pill { min-height: 30px; padding: 0 12px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid #d8e5e0; border-radius: 999px; color: #5d6c65; background: rgba(255,255,255,.82); font-size: 11px; font-weight: 750; }
.retail-readonly-pill, .retail-inline-status { display: inline-flex; align-items: center; border-radius: 999px; padding: 6px 10px; color: #5d675f; background: #eef2ef; font-size: 11px; font-weight: 800; white-space: nowrap; }
.retail-readonly-copy { max-width: 180px; color: #69766d; font-size: 12px; font-weight: 650; text-align: right; }
.retail-preview-pill i, .retail-live-pill i, .retail-picking-live i { width: 7px; height: 7px; border-radius: 50%; background: #eeae3c; box-shadow: 0 0 0 4px rgba(238,174,60,.12); }
.retail-live-pill i, .retail-picking-live i { background: #22b87a; box-shadow: 0 0 0 4px rgba(34,184,122,.12); }
.retail-store-link { min-height: 30px; padding: 0 12px; display: inline-flex; align-items: center; border-radius: 999px; color: var(--retail-forest); background: #def4ed; text-decoration: none; font-size: 11px; font-weight: 800; }
.retail-loading { min-height: 360px; display: grid; place-items: center; color: var(--retail-soft); font-weight: 700; }
.retail-eyebrow { display: block; margin-bottom: 9px; color: #70d7c1; font-size: 10px; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }

.retail-hero-admin { min-height: 240px; padding: clamp(26px, 4vw, 46px); display: flex; align-items: end; justify-content: space-between; gap: 30px; overflow: hidden; position: relative; border-radius: 28px; color: #fff; background: linear-gradient(125deg, #0e392f 0%, #185a4b 63%, #2a8b74 100%); box-shadow: 0 18px 48px rgba(18,63,53,.2); }
.retail-hero-admin::before, .retail-hero-admin::after { content: ''; position: absolute; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; }
.retail-hero-admin::before { width: 320px; height: 320px; right: -80px; top: -170px; }
.retail-hero-admin::after { width: 230px; height: 230px; right: 110px; bottom: -185px; }
.retail-hero-admin > * { position: relative; z-index: 1; }
.retail-hero-admin h2 { max-width: 720px; margin: 0; color: #fff; font-size: clamp(28px, 3.3vw, 46px); line-height: 1.05; letter-spacing: -.045em; }
.retail-hero-admin p { max-width: 630px; margin: 14px 0 0; color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.6; }
.retail-hero-admin__actions { display: flex; gap: 10px; flex: 0 0 auto; }
.retail-button { min-height: 42px; padding: 0 16px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; border: 0; border-radius: 12px; cursor: pointer; font-family: inherit; font-size: 12px; font-weight: 800; transition: transform .14s ease, box-shadow .14s ease; }
.retail-button:hover { transform: translateY(-1px); }
.retail-button--light { color: #fff; background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.18); }
.retail-button--accent { color: var(--retail-forest); background: #b7f0df; box-shadow: 0 9px 22px rgba(0,0,0,.13); }
.retail-button--primary { color: #fff; background: var(--retail-forest); box-shadow: 0 8px 20px rgba(18,63,53,.16); }
.retail-button--ghost { color: var(--retail-forest); background: #edf4f1; }
.retail-button--stage { flex: 1; color: #fff; background: var(--retail-forest); }

.retail-kpis { margin: 20px 0; display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; }
.retail-kpi { min-height: 142px; padding: 19px; position: relative; overflow: hidden; border: 1px solid #e0e8e4; border-radius: 19px; background: #fff; box-shadow: 0 7px 24px rgba(34,68,56,.05); }
.retail-kpi::after { content: ''; width: 82px; height: 82px; position: absolute; right: -31px; bottom: -38px; border-radius: 50%; background: currentColor; opacity: .055; }
.retail-kpi small { display: block; max-width: calc(100% - 42px); color: #78847e; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.retail-kpi strong { display: block; margin-top: 11px; color: var(--retail-ink); font-size: clamp(21px, 2.1vw, 29px); letter-spacing: -.04em; }
.retail-kpi p { margin: 7px 0 0; color: #85918b; font-size: 11px; }
.retail-kpi__icon { width: 34px; height: 34px; position: absolute; top: 16px; right: 16px; display: grid; place-items: center; border-radius: 11px; background: currentColor; color: inherit; font-weight: 900; }
.retail-kpi__icon::first-line { color: #fff; }
.retail-kpi--teal { color: #19a083; }.retail-kpi--blue { color: #4b82da; }.retail-kpi--violet { color: #8b67cc; }.retail-kpi--coral { color: #e86850; }.retail-kpi--green { color: #28a86d; }
.retail-kpis--compact .retail-kpi { min-height: 124px; }

.retail-overview-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(320px,.65fr); gap: 18px; margin-bottom: 18px; }
.retail-panel { overflow: hidden; border: 1px solid #e0e8e4; border-radius: 20px; background: #fff; box-shadow: 0 8px 26px rgba(35,68,57,.05); }
.retail-panel-head { min-height: 80px; padding: 19px 21px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid #edf1ef; }
.retail-panel-head span { display: block; margin-bottom: 4px; color: #8a968f; font-size: 9px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.retail-panel-head h3 { margin: 0; color: var(--retail-ink); font-size: 17px; }
.retail-panel-head button { border: 0; color: var(--retail-forest-2); background: transparent; cursor: pointer; font-size: 11px; font-weight: 800; }
.retail-stage-summary { padding: 9px 20px 18px; }
.retail-stage-summary__item { min-height: 61px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 12px; border-bottom: 1px solid #edf1ef; }
.retail-stage-summary__item:last-child { border-bottom: 0; }
.retail-stage-summary__item i { width: 11px; height: 11px; border-radius: 50%; box-shadow: 0 0 0 5px rgba(20,70,58,.06); }
.retail-stage-summary__item i.is-coral { background: #f06d61; }.retail-stage-summary__item i.is-amber { background: #f4bd43; }.retail-stage-summary__item i.is-blue { background: #5794e8; }.retail-stage-summary__item i.is-green { background: #39be7b; }
.retail-stage-summary__item span { font-size: 12px; font-weight: 650; }.retail-stage-summary__item strong { font-size: 18px; }
.retail-watch-list { padding: 9px 18px 17px; }
.retail-watch-item { min-height: 68px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 11px; border-bottom: 1px solid #edf1ef; }
.retail-watch-item:last-child { border-bottom: 0; }.retail-watch-item strong, .retail-table-product strong { display: block; font-size: 12px; }.retail-watch-item small, .retail-table-product small { display: block; margin-top: 4px; color: #89948f; font-size: 9px; }
.retail-product-mini, .retail-table-product > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 13px; background: var(--product-accent, #edf3ef); font-size: 20px; }
.retail-stock-pill { padding: 6px 9px; border-radius: 999px; font-size: 9px; font-weight: 850; white-space: nowrap; }.retail-stock-pill.is-success { color: #18734f; background: #e5f7ef; }.retail-stock-pill.is-warning { color: #9b6815; background: #fff2d6; }.retail-stock-pill.is-danger { color: #b33f38; background: #fee9e6; }.retail-stock-pill.is-info { color: #2e64a8; background: #e8f1fd; }
.retail-empty-inline { padding: 25px 8px; color: #839089; font-size: 12px; text-align: center; }

.retail-featured { margin-bottom: 20px; }.retail-featured-grid { padding: 18px; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.retail-featured-product { padding: 12px; display: grid; grid-template-columns: 80px minmax(0,1fr); gap: 12px; border: 1px solid #e7ece9; border-radius: 16px; }
.retail-featured-product__visual { min-height: 92px; position: relative; display: grid; place-items: center; border-radius: 14px; background: var(--product-accent); font-size: 36px; }.retail-featured-product__visual em { position: absolute; top: 6px; left: 6px; padding: 3px 5px; border-radius: 6px; color: #fff; background: var(--retail-orange); font-size: 7px; font-style: normal; font-weight: 800; text-transform: uppercase; }
.retail-featured-product small { color: #8a958f; font-size: 8px; text-transform: uppercase; }.retail-featured-product strong { margin-top: 3px; display: block; font-size: 11px; line-height: 1.3; }.retail-featured-product p { margin: 3px 0 8px; color: #89958f; font-size: 8px; }.retail-featured-product b { color: var(--retail-forest); font-size: 13px; }

.retail-toolbar-card, .retail-inventory-summary, .retail-picking-head { min-height: 150px; padding: 26px 28px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border: 1px solid #dde8e3; border-radius: 22px; background: linear-gradient(120deg,#fff 0%,#f5faf8 100%); box-shadow: 0 7px 26px rgba(38,69,58,.05); }
.retail-toolbar-copy h2, .retail-inventory-summary h2, .retail-picking-head h2 { margin: 0; color: var(--retail-ink); font-size: 25px; letter-spacing: -.035em; }.retail-toolbar-copy p, .retail-inventory-summary p, .retail-picking-head p { margin: 8px 0 0; color: #7b8881; font-size: 12px; }
.retail-toolbar-actions { display: flex; align-items: center; gap: 9px; }
.retail-filterbar { min-height: 68px; margin: 16px 0; padding: 10px 12px; display: flex; align-items: center; gap: 10px; border: 1px solid #e1e8e5; border-radius: 17px; background: #fff; }
.retail-search { min-height: 45px; min-width: 260px; flex: 1; display: flex; align-items: center; gap: 9px; padding: 0 13px; border: 1px solid #e1e8e5; border-radius: 12px; background: #f8faf9; }.retail-search span { color: var(--retail-forest); font-size: 19px; }.retail-search input { width: 100%; border: 0; outline: 0; color: var(--retail-ink); background: transparent; font: inherit; font-size: 12px; }.retail-search--compact { max-width: 320px; flex: 0 1 320px; background: #fff; }
.retail-filterbar select { min-height: 45px; min-width: 190px; padding: 0 12px; border: 1px solid #e1e8e5; border-radius: 12px; color: #56635d; background: #fff; font: inherit; font-size: 11px; }.retail-results-count { padding: 0 8px; color: #7d8a83; font-size: 10px; font-weight: 800; }
.retail-products-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.retail-products-pagination { margin-top: 18px; display: flex; align-items: center; justify-content: center; gap: 14px; color: #718078; font-size: 11px; font-weight: 700; }
.retail-products-pagination .retail-button { min-height: 36px; padding: 0 12px; font-size: 10px; }
.retail-products-pagination .retail-button:disabled { opacity: .45; cursor: not-allowed; transform: none; }
.retail-admin-product { overflow: hidden; border: 1px solid #dfe7e3; border-radius: 20px; background: #fff; box-shadow: 0 8px 24px rgba(35,68,57,.05); }.retail-admin-product.is-inactive { opacity: .68; }
.retail-admin-product__visual { height: 150px; position: relative; display: grid; place-items: center; overflow: hidden; background: linear-gradient(145deg,var(--product-accent),#fff); font-size: 64px; }.retail-admin-product__visual img { width: 100%; height: 100%; object-fit: cover; display: block; }.retail-admin-product__visual em { position: absolute; top: 13px; left: 13px; padding: 6px 9px; border-radius: 999px; color: var(--retail-forest); background: rgba(255,255,255,.88); font-size: 8px; font-style: normal; font-weight: 850; text-transform: uppercase; }
.retail-admin-product__body { padding: 18px 18px 14px; }.retail-admin-product__category { color: #6c9b8d; font-size: 8px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }.retail-admin-product h3 { margin: 7px 0 0; color: var(--retail-ink); font-size: 16px; }.retail-admin-product__body > p { margin: 6px 0 12px; color: #7d8882; font-size: 10px; }.retail-admin-product__codes { display: flex; flex-wrap: wrap; gap: 6px; }.retail-admin-product__codes span { padding: 5px 7px; border-radius: 7px; color: #69766f; background: #f1f5f3; font-family: 'JetBrains Mono',monospace; font-size: 8px; }
.retail-admin-product__footer { min-height: 77px; padding: 12px 16px; display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 12px; border-top: 1px solid #edf1ef; }.retail-admin-product__footer small { display: block; color: #919b96; font-size: 8px; }.retail-admin-product__footer strong { display: block; margin-top: 3px; font-size: 12px; }.retail-admin-product__footer > button, .retail-table-action { border: 0; color: var(--retail-forest); background: transparent; cursor: pointer; font: inherit; font-size: 9px; font-weight: 850; }
.retail-empty-state { grid-column: 1/-1; min-height: 300px; display: grid; place-items: center; align-content: center; border: 1px dashed #cbd8d2; border-radius: 20px; color: #7c8982; background: rgba(255,255,255,.55); text-align: center; }.retail-empty-state span { font-size: 28px; }.retail-empty-state h3 { margin: 12px 0 0; color: var(--retail-ink); }.retail-empty-state p { margin: 7px 0 0; font-size: 11px; }

.retail-product-form { max-height: 68vh; overflow-y: auto; }.retail-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }.retail-field { display: grid; gap: 6px; color: #56635d; font-size: 10px; font-weight: 750; }.retail-field-label { color: #56635d; font-size: 10px; font-weight: 750; }.retail-field--wide { grid-column: 1/-1; }.retail-field input, .retail-field textarea, .retail-field select { width: 100%; min-height: 43px; padding: 10px 12px; border: 1px solid #dce5e1; border-radius: 11px; outline: none; color: var(--retail-ink); background: #fbfcfc; font: inherit; font-size: 12px; }.retail-field textarea { resize: vertical; }.retail-field input:focus, .retail-field textarea:focus, .retail-field select:focus { border-color: #58bba5; box-shadow: 0 0 0 3px rgba(88,187,165,.12); }.retail-image-upload { display:grid; gap:9px; }.retail-image-upload__main { display:grid; grid-template-columns:92px minmax(0,1fr); gap:10px; }.retail-image-upload__preview { min-height:72px; display:grid; place-items:center; overflow:hidden; border:1px solid #dce5e1; border-radius:11px; color:#849089; background:#f7f9f8; font-size:10px; text-align:center; }.retail-image-upload__preview img { width:100%; height:100%; object-fit:cover; }.retail-image-upload__actions { min-width:0; display:grid; align-content:start; gap:7px; }.retail-image-upload__select { min-height:43px; display:flex; align-items:center; gap:9px; padding:7px 10px; border:1px solid #dce5e1; border-radius:11px; color:#315b50; background:#fbfcfc; cursor:pointer; transition:border-color .16s ease, box-shadow .16s ease; }.retail-image-upload__select:hover { border-color:#58bba5; box-shadow:0 0 0 3px rgba(88,187,165,.1); }.retail-image-upload__select input { position:absolute; width:1px; height:1px; overflow:hidden; opacity:0; }.retail-image-upload__icon { width:26px; height:26px; display:grid; flex:0 0 auto; place-items:center; border-radius:8px; color:#fff; background:#19a483; font-size:15px; }.retail-image-upload__select strong { display:block; color:#315b50; font-size:11px; }.retail-image-upload__select small { display:block; margin-top:2px; color:#7a8882; font-size:9px; font-weight:600; }.retail-image-upload__url { color:#7a8882; font-size:10px; }.retail-image-upload__url summary { width:max-content; cursor:pointer; }.retail-image-upload__url input { width:100%; min-height:38px; margin-top:7px; padding:8px 10px; border:1px solid #dce5e1; border-radius:10px; color:var(--retail-ink); background:#fbfcfc; font:inherit; font-size:11px; }.retail-switch { margin-top:17px; padding:14px; display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; align-items:center; border:1px solid #dce7e2; border-radius:13px; cursor:pointer; }.retail-switch input { position:absolute; opacity:0; }.retail-switch > span { width:43px; height:25px; padding:3px; border-radius:999px; background:#cfd8d4; }.retail-switch > span::after { content:''; width:19px; height:19px; display:block; border-radius:50%; background:#fff; transition:transform .16s ease; }.retail-switch input:checked + span { background:#19a483; }.retail-switch input:checked + span::after { transform:translateX(18px); }.retail-switch strong { display:block; font-size:11px; }.retail-switch small { margin-top:3px; display:block; color:#7c8982; font-size:9px; }.retail-form-note { padding:12px; border-radius:12px; color:#714c18; background:#fff5df; }.retail-form-note strong, .retail-form-note span { display:block; }.retail-form-note strong { font-size:10px; }.retail-form-note span { margin-top:4px; font-size:9px; line-height:1.45; }.retail-form-error { margin-top:12px; padding:10px 12px; border-radius:10px; color:#a9322d; background:#feecea; font-size:10px; }.retail-form-help { margin:10px 0 0; color:#7d8882; font-size:9px; line-height:1.5; }
.retail-image-suggestions { display:grid; gap:8px; padding:9px; border:1px solid #d8ebe5; border-radius:11px; background:#f7fcfa; color:#6b7c75; font-size:11px; }.retail-image-suggestions.is-idle { min-height:0; padding:0; border:0; color:#849089; background:transparent; font-size:10px; }.retail-image-suggestions > strong { color:#235f50; font-size:11px; }.retail-image-suggestions__grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(92px,1fr)); gap:7px; }.retail-image-suggestions__grid button { display:grid; gap:4px; padding:6px; overflow:hidden; color:#24443a; text-align:left; background:#fff; border:1px solid #d9ebe5; border-radius:8px; cursor:pointer; }.retail-image-suggestions__grid button:hover { border-color:#22a887; box-shadow:0 4px 12px rgba(25,109,86,.12); }.retail-image-suggestions__grid img { width:100%; height:62px; object-fit:cover; border-radius:5px; background:#edf5f2; }.retail-image-suggestions__grid span { overflow:hidden; font-size:10px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.retail-image-suggestions__grid small { overflow:hidden; color:#74847e; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }

.featured-manager__body { padding: 22px; display: grid; gap: 18px; }
.featured-manager__intro, .featured-manager__catalog-head { display: grid; gap: 4px; }
.featured-manager__intro strong, .featured-manager__catalog-head strong { color: var(--retail-forest); font-size: 14px; }
.featured-manager__intro span, .featured-manager__catalog-head span { color: #84928b; font-size: 12px; line-height: 1.5; }
.featured-manager__selected, .featured-manager__options { display: grid; gap: 9px; }
.featured-manager__selected { min-height: 72px; padding: 10px; border: 1px dashed #b7c9be; border-radius: 16px; background: #f7faf5; }
.featured-manager__selected-item, .featured-manager__option { min-width: 0; display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 10px; border: 1px solid #e4ebe6; border-radius: 13px; background: #fff; }
.featured-manager__option { grid-template-columns: auto 42px minmax(0,1fr); cursor: pointer; }
.featured-manager__option.is-unavailable { opacity: .62; }
.featured-manager__option input { width: 17px; height: 17px; accent-color: var(--retail-forest); }
.featured-manager__media { width: 42px; height: 42px; display: grid; place-items: center; overflow: hidden; border-radius: 11px; color: #527160; background: #edf4ed; font-size: 20px; }
.featured-manager__media img { width: 100%; height: 100%; object-fit: cover; }
.featured-manager__selected-item strong, .featured-manager__option strong { display: block; overflow: hidden; color: #24342b; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.featured-manager__selected-item small, .featured-manager__option small { display: block; margin-top: 3px; overflow: hidden; color: #84928b; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.featured-manager__selected-actions { display: flex; gap: 5px; }
.featured-manager__selected-actions button { width: 28px; height: 28px; border: 1px solid #d7e2da; border-radius: 8px; color: var(--retail-forest); background: #fff; cursor: pointer; }
.featured-manager__selected-actions button:disabled { opacity: .35; cursor: default; }
.featured-manager__selected-actions .is-remove { color: #a74b3b; }
.featured-manager__empty { padding: 18px; color: #84928b; font-size: 12px; text-align: center; }
.featured-manager__footer { justify-content: space-between; gap: 14px; color: #84928b; font-size: 11px; }
.featured-manager__catalog { display: grid; gap: 10px; }
.featured-manager__filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(180px, .45fr); gap: 10px; }
.featured-manager__filters label { display: grid; gap: 5px; color: #65756b; font-size: 11px; font-weight: 700; }
.featured-manager__filters input, .featured-manager__filters select { width: 100%; min-height: 38px; padding: 0 11px; border: 1px solid #d7e2da; border-radius: 10px; outline: none; color: #24342b; background: #fff; font: inherit; }
.featured-manager__filters input:focus, .featured-manager__filters select:focus { border-color: #527160; box-shadow: 0 0 0 3px rgb(82 113 96 / 13%); }
.featured-manager__pagination { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #718077; font-size: 11px; }
.featured-manager__pagination > div { display: inline-flex; align-items: center; gap: 8px; }
.featured-manager__pagination strong { color: #3a5143; font-size: 11px; white-space: nowrap; }
.featured-manager__pagination button { width: 30px; height: 30px; border: 1px solid #d7e2da; border-radius: 8px; color: var(--retail-forest); background: #fff; font-size: 20px; line-height: 1; cursor: pointer; }
.featured-manager__pagination button:disabled { opacity: .4; cursor: default; }
.featured-manager__result-count { color: #84928b; font-size: 11px; }
@media (max-width: 620px) { .featured-manager__footer { align-items: stretch; flex-direction: column; } .featured-manager__footer button { width: 100%; } .featured-manager__filters { grid-template-columns: 1fr; } .featured-manager__pagination { align-items: flex-start; flex-direction: column; } }
.retail-category-manager { margin-bottom: 18px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }.retail-category-manager > div { min-height: 62px; padding: 10px 12px; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; column-gap: 10px; border: 1px solid #e0e8e4; border-radius: 13px; background: #f8faf9; }.retail-category-manager > div > span { grid-row: 1/3; width: 35px; height: 35px; display: grid; place-items: center; border-radius: 11px; background: #e7f4ef; font-size: 17px; }.retail-category-manager strong { font-size: 10px; }.retail-category-manager small { color: #859089; font-size: 8px; }

.retail-category-manager > article { min-height: 74px; padding: 10px 12px; display: flex; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid #e0e8e4; border-radius: 13px; background: #f8faf9; }.retail-category-manager > article > div { min-width: 0; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 10px; }.retail-category-manager__visual { width: 42px; height: 42px; display: grid; place-items: center; overflow: hidden; border-radius: 12px; background: #e7f4ef; }.retail-category-manager__visual img { width: 100%; height: 100%; display: block; object-fit: cover; border-radius: 10px; }.retail-category-manager__visual b { font-size: 19px; font-weight: 400; }.retail-category-manager > article strong, .retail-category-manager > article small { overflow: hidden; display: block; text-overflow: ellipsis; white-space: nowrap; }.retail-category-manager > article button { border: 0; color: var(--retail-forest); background: transparent; cursor: pointer; font: inherit; font-size: 9px; font-weight: 850; }.retail-category-form-heading { margin: 4px 0 13px; }.retail-category-form-heading strong, .retail-category-form-heading small { display: block; }.retail-category-form-heading strong { color: var(--retail-forest); font-size: 12px; }.retail-category-form-heading small { margin-top: 4px; color: #7d8983; font-size: 9px; }.retail-image-upload__remove { min-height: 32px; padding: 0 10px; border: 1px solid #d8e3de; border-radius: 9px; color: #64766e; background: #fff; cursor: pointer; font: inherit; font-size: 9px; font-weight: 750; }

.retail-inventory-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr); gap: 17px; }.retail-panel-head--wrap { flex-wrap: wrap; }.retail-segmented { padding: 3px; display: flex; border-radius: 10px; background: #eef3f1; }.retail-segmented button { min-height: 31px; padding: 0 10px; border: 0; border-radius: 8px; color: #78847e; background: transparent; cursor: pointer; font: inherit; font-size: 9px; font-weight: 750; }.retail-segmented button.is-active { color: var(--retail-forest); background: #fff; box-shadow: 0 2px 7px rgba(34,68,56,.08); }
.retail-table-wrap { overflow-x: auto; }.retail-table { min-width: 720px; }.retail-table th { padding: 11px 14px; color: #86928c; background: #f7f9f8; font-size: 8px; }.retail-table td { padding: 13px 14px; border-bottom: 1px solid #edf1ef; font-size: 10px; }.retail-table tr:last-child td { border-bottom: 0; }.retail-table-product { min-width: 210px; display: flex; align-items: center; gap: 10px; }.retail-table-sub { display: block; margin-top: 4px; color: #849089; font-size: 8px; font-weight: 600; }.retail-orders-history { overflow: hidden; }.retail-orders-history .retail-table { min-width: 900px; }.retail-movement-list { padding: 7px 17px 14px; }.retail-movement { min-height: 67px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 10px; border-bottom: 1px solid #edf1ef; }.retail-movement:last-child { border-bottom: 0; }.retail-movement__icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; font-weight: 900; }.retail-movement__icon.is-positive { color: #19835a; background: #e4f7ef; }.retail-movement__icon.is-negative { color: #c95147; background: #feebe8; }.retail-movement strong { display: block; font-size: 10px; }.retail-movement small { margin-top: 4px; display: block; color: #849089; font-size: 8px; }.retail-movement b { font-size: 11px; }.retail-movement b.is-positive { color: #19835a; }.retail-movement b.is-negative { color: #c95147; }.retail-stock-current { margin-bottom: 16px; display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }.retail-stock-current div { padding: 12px; border-radius: 12px; background: #f2f6f4; }.retail-stock-current small, .retail-stock-current strong { display: block; }.retail-stock-current small { color: #7d8983; font-size: 8px; }.retail-stock-current strong { margin-top: 4px; font-size: 18px; }
.retail-lots-panel { margin-top: 17px; }.retail-panel-head p { margin: 5px 0 0; color: #839089; font-size: 9px; }.retail-lot-grid { padding: 15px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }.retail-lot-card { min-height: 78px; padding: 12px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 10px; border: 1px solid #e2e9e6; border-radius: 14px; background: #fafcfb; }.retail-lot-card small, .retail-lot-card strong, .retail-lot-card p { display: block; }.retail-lot-card small { color: #6f9a8d; font-size: 7px; font-weight: 850; letter-spacing: .08em; }.retail-lot-card strong { margin-top: 3px; font-size: 9px; }.retail-lot-card p { margin: 4px 0 0; color: #859089; font-size: 8px; }

.retail-picking-head { min-height: 130px; }.retail-picking-live { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 15px; color: #728078; font-size: 10px; }.retail-picking-live span { display: flex; align-items: center; gap: 8px; }.retail-picking-live strong { color: #4f5f57; }
.retail-board { display: grid; grid-template-columns: repeat(4,minmax(270px,1fr)); gap: 13px; overflow-x: auto; padding-bottom: 12px; }.retail-board-column { min-width: 270px; min-height: 620px; overflow: hidden; border: 1px solid #dfe6e3; border-radius: 19px; background: #f6f4f0; }.retail-board-column:nth-child(even) { background: #edf5f2; }.retail-board-column > header { min-height: 76px; padding: 15px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 10px; border-bottom: 1px solid #dfe6e3; background: rgba(255,255,255,.65); }.retail-board-column > header > i { width: 10px; height: 10px; border-radius: 50%; }.retail-board-column.is-coral > header > i { background: #ef6e62; box-shadow: 0 0 0 5px rgba(239,110,98,.1); }.retail-board-column.is-amber > header > i { background: #efb735; box-shadow: 0 0 0 5px rgba(239,183,53,.1); }.retail-board-column.is-blue > header > i { background: #538ce0; box-shadow: 0 0 0 5px rgba(83,140,224,.1); }.retail-board-column.is-green > header > i { background: #32b874; box-shadow: 0 0 0 5px rgba(50,184,116,.1); }.retail-board-column > header strong { display: block; font-size: 12px; }.retail-board-column > header small { margin-top: 3px; display: block; color: #859089; font-size: 8px; }.retail-board-column > header b { min-width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid #dedfdc; border-radius: 9px; background: #fff; font-size: 10px; }.retail-board-column__body { padding: 11px; display: grid; align-content: start; gap: 11px; }
.retail-order-card { padding: 15px; overflow: hidden; border: 1px solid #dfe5e2; border-radius: 17px; background: #fff; box-shadow: 0 6px 17px rgba(39,67,57,.07); }.retail-order-card__top { display: flex; align-items: start; justify-content: space-between; gap: 10px; }.retail-order-card__top small, .retail-order-customer small { display: block; color: #8a958f; font-size: 7px; font-weight: 850; letter-spacing: .12em; }.retail-order-card__top h3 { margin: 3px 0 0; font-size: 17px; }.retail-mode-pill { padding: 6px 8px; border-radius: 999px; color: #147158; background: #e4f7f0; font-size: 8px; font-weight: 800; }.retail-order-customer { margin: 13px 0; padding: 11px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 9px; border-radius: 12px; background: #f4f7f5; }.retail-order-customer > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 10px; color: var(--retail-forest); background: #dff4ed; font-size: 10px; font-weight: 900; }.retail-order-customer strong { margin-top: 3px; display: block; font-size: 10px; }.retail-order-customer time { color: #829089; font-size: 8px; font-weight: 700; }.retail-order-items { display: grid; gap: 8px; }.retail-order-items > button { border: 0; color: var(--retail-forest-2); background: transparent; cursor: pointer; font-size: 8px; font-weight: 800; text-align: left; }.retail-order-item { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 8px; }.retail-order-item:has(.retail-check) { grid-template-columns: auto auto minmax(0,1fr); }.retail-order-item.is-picked { opacity: .6; }.retail-order-item.is-picked strong { text-decoration: line-through; }.retail-check { width: 18px; height: 18px; display: grid; place-items: center; border: 1px solid #c9d7d1; border-radius: 6px; color: #fff; background: #fff; font-size: 9px; }.retail-order-item.is-picked .retail-check { border-color: #27a87a; background: #27a87a; }.retail-order-item__visual { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; background: var(--product-accent); font-size: 16px; }.retail-order-item strong { display: block; font-size: 9px; }.retail-order-item small { margin-top: 3px; display: block; color: #88938d; font-size: 7px; }.retail-progress { margin: -3px 0 12px; }.retail-progress > span { height: 5px; display: block; overflow: hidden; border-radius: 99px; background: #e6ece9; }.retail-progress i { height: 100%; display: block; border-radius: inherit; background: #25a77e; }.retail-progress small { margin-top: 5px; display: block; color: #7c8882; font-size: 7px; }.retail-order-note { margin-top: 11px; padding: 9px; border-left: 3px solid #efad3e; border-radius: 8px; background: #fff7e8; }.retail-order-note b, .retail-order-note span { display: block; }.retail-order-note b { color: #936119; font-size: 7px; text-transform: uppercase; }.retail-order-note span { margin-top: 4px; color: #685b45; font-size: 8px; line-height: 1.45; }.retail-order-card__summary { margin-top: 12px; padding: 10px 0; display: flex; align-items: center; justify-content: space-between; gap: 8px; border-top: 1px solid #edf1ef; }.retail-order-card__summary span { color: #7d8983; font-size: 8px; }.retail-order-card__summary strong { color: var(--retail-forest); font-size: 12px; }.retail-order-card__actions { display: flex; gap: 7px; }.retail-order-card__actions .retail-button { min-height: 38px; padding: 0 10px; font-size: 8px; }.retail-column-empty { min-height: 180px; display: grid; place-items: center; align-content: center; color: #8b9690; text-align: center; }.retail-column-empty span { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 12px; background: rgba(255,255,255,.7); }.retail-column-empty p { margin: 9px 0 0; font-size: 9px; }.retail-order-detail__destination { padding: 14px; border-radius: 13px; background: #eff5f2; }.retail-order-detail__destination small { display: block; color: #849089; font-size: 8px; font-weight: 850; }.retail-order-detail__destination strong { margin-top: 5px; display: block; font-size: 11px; }.retail-order-detail__list { margin: 16px 0; display: grid; gap: 11px; }.retail-order-detail__total { padding-top: 14px; display: flex; justify-content: space-between; border-top: 1px solid #e6ece9; }.retail-order-detail__total span { font-size: 10px; }.retail-order-detail__total strong { color: var(--retail-forest); }
.retail-integration-state { min-height: 430px; display: grid; place-items: center; align-content: center; text-align: center; }.retail-integration-state > span { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 18px; color: #fff; background: var(--retail-forest); font-size: 27px; }.retail-integration-state h2 { margin: 17px 0 0; }.retail-integration-state p { max-width: 540px; margin: 9px 0 18px; color: #7e8a84; font-size: 12px; }.retail-integration-state a { padding: 11px 15px; border-radius: 11px; color: #fff; background: var(--retail-forest); text-decoration: none; font-size: 10px; font-weight: 800; }

.retail-image-upload__actions { display:flex; align-items:center; gap:8px; }.retail-image-upload__select { min-width:0; flex:1; }.retail-image-library-optin { min-height:32px; width:auto; flex:0 0 auto; display:inline-flex; align-items:center; gap:6px; padding:0 10px; border:1px solid #d8ebe5; border-radius:9px; color:#49685e; background:#fbfefd; cursor:pointer; font-size:9px; font-weight:750; line-height:1.2; white-space:nowrap; }.retail-image-library-optin[hidden] { display:none; }.retail-field .retail-image-library-optin input { width:14px; min-width:14px; min-height:14px; height:14px; margin:0; padding:0; border:0; border-radius:0; box-shadow:none; accent-color:#19a483; appearance:auto; }

@media (max-width: 1180px) {
  .retail-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .retail-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .retail-products-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .retail-overview-grid, .retail-inventory-layout { grid-template-columns: 1fr; }
  .retail-lot-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .retail-page { padding: 14px 12px 28px; }
  .retail-page-meta { justify-content: space-between; overflow-x: auto; }
  .retail-hero-admin, .retail-toolbar-card, .retail-inventory-summary, .retail-picking-head { padding: 23px 20px; align-items: stretch; flex-direction: column; }
  .retail-toolbar-actions { width: 100%; }.retail-toolbar-actions .retail-button { flex: 1; }
  .retail-hero-admin__actions { width: 100%; }.retail-hero-admin__actions .retail-button { flex: 1; }
  .retail-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }.retail-kpi { min-height: 124px; padding: 15px; }.retail-kpi__icon { top: 13px; right: 13px; }
  .retail-products-grid { grid-template-columns: 1fr; }.retail-filterbar { align-items: stretch; flex-direction: column; }.retail-filterbar select, .retail-search { min-width: 0; width: 100%; }.retail-results-count { padding: 4px 5px; }
  .retail-featured-grid { grid-template-columns: 1fr; }.retail-form-grid { grid-template-columns: 1fr; }.retail-field--wide { grid-column: auto; }
  .retail-image-upload__main { grid-template-columns:76px minmax(0,1fr); }.retail-image-upload__preview { min-height:68px; }
  .retail-image-upload__actions { align-items:stretch; flex-direction:column; }.retail-image-library-optin { width:max-content; }
  .retail-category-manager, .retail-lot-grid { grid-template-columns: 1fr; }
  .retail-board { grid-template-columns: repeat(4,84vw); scroll-snap-type: x mandatory; }.retail-board-column { scroll-snap-align: start; }
  .retail-picking-live { align-items: flex-start; flex-direction: column; padding: 11px 2px; }
}
@media (max-width: 460px) {
  .retail-kpis { grid-template-columns: 1fr; }.retail-kpi { min-height: 112px; }
  .retail-hero-admin__actions { flex-direction: column; }.retail-featured-product { grid-template-columns: 72px minmax(0,1fr); }
}

/* Payment choices shared by the administrative POS and the dedicated cashier. */
.retail-pos-payment-methods,.retail-cashier-payment-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.retail-pos-payment-methods button,.retail-cashier-payment-methods button{min-height:58px;padding:7px;border:1px solid #dce5e1;border-radius:10px;color:#526b63;background:#fff;cursor:pointer;text-align:left}.retail-pos-payment-methods button.is-active,.retail-cashier-payment-methods button.is-active{border-color:#168168;box-shadow:inset 0 0 0 1px #168168;background:#ecfaf5;color:#126550}.retail-pos-payment-methods button span,.retail-pos-payment-methods button b,.retail-pos-payment-methods button small,.retail-cashier-payment-methods button span,.retail-cashier-payment-methods button b,.retail-cashier-payment-methods button small{display:block}.retail-pos-payment-methods button span,.retail-cashier-payment-methods button span{font-size:16px}.retail-pos-payment-methods button b,.retail-cashier-payment-methods button b{margin-top:2px;font-size:10px}.retail-pos-payment-methods button small,.retail-cashier-payment-methods button small{margin-top:2px;color:#81918b;font-size:8px}.retail-pos-payment-note,.retail-cashier-payment-note{margin:8px 0 0;padding:9px;border-radius:9px;color:#667a73;background:#f4f8f6;font-size:9px;line-height:1.45}.retail-pos-pix-modal{display:grid;justify-items:center;gap:11px;text-align:center}.retail-pos-pix-modal strong{color:#165c4b;font-size:22px}.retail-pos-pix-modal label{display:grid;width:100%;gap:5px;color:#64756f;text-align:left;font-size:10px;font-weight:800}.retail-pos-pix-modal input{width:100%;padding:10px;border:1px solid #dce5e1;border-radius:9px;background:#f8faf9;font:inherit;font-size:10px}.retail-pos-pix-qr{width:220px;height:220px;object-fit:contain;border:8px solid #fff;border-radius:12px;box-shadow:0 3px 18px rgba(24,62,51,.13)}.retail-pos-pix-qr--empty{display:grid;place-items:center;color:#6c8078;background:#f0f5f2}.retail-pos-pix-modal p{margin:0;color:#6f817a;font-size:10px}
.retail-cashier-payment-methods{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.retail-cashier-payment-methods button{min-height:68px;padding:9px;text-align:center;border-color:#cfddd8;background:linear-gradient(180deg,#fff,#f7faf9)}.retail-cashier-payment-methods button.is-active{border-color:#159274;background:#e8f8f1;box-shadow:inset 0 0 0 1px #159274,0 4px 10px rgba(21,146,116,.08)}.retail-cashier-payment-methods button span{font-size:19px}.retail-cashier-payment-methods button b{font-size:11px}.retail-cashier-payment-methods button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
