:root{--ink:#1b2436;--muted:#77818e;--paper:#f5f6f8;--line:#e5e8ec;--accent:#ef6d4c;--green:#287659;--rail:#172434}*{box-sizing:border-box}body{margin:0;font:14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{border:0;border-radius:10px;padding:11px 15px;cursor:pointer;background:#edf0f3;color:var(--ink);font-weight:600}button:disabled{cursor:not-allowed;opacity:.45}.primary{background:var(--accent);color:var(--accent-ink,white)}.danger{background:#fff0ed;color:#b8422a}.quiet{background:transparent;color:var(--muted);padding:7px 10px}.hidden{display:none!important}input,select,textarea{padding:11px 12px;border:1px solid #dce1e7;border-radius:9px;background:white;width:100%;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid #ef6d4c60;border-color:var(--accent)}label{display:block;font-size:12px;font-weight:600;color:#5f6876;margin-bottom:15px}label input,label select,label textarea{display:block;margin-top:6px;font-size:14px;font-weight:400}label.check{display:flex;align-items:center;gap:8px}label.check input{width:auto;margin:0}h1,h2,h3,p{margin-top:0}h1{font-size:28px;letter-spacing:-.9px;line-height:1.2;margin-bottom:0}h2{font-size:20px;letter-spacing:-.4px}h3{font-size:15px;margin-bottom:12px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--muted);display:block;margin-bottom:7px}small{display:block;color:var(--muted);font-size:11px}.shell{display:grid;grid-template-columns:235px 1fr;min-height:100vh}.sidebar{background:var(--rail);color:#f2f4f6;padding:30px 18px;display:flex;flex-direction:column;min-height:100vh}.brand{color:white;text-decoration:none;display:flex;gap:12px;align-items:center;font-size:21px;font-weight:700;margin:0 10px 48px;letter-spacing:-.6px}.brand-icon{display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:12px;background:var(--accent);font-size:20px;font-weight:800;letter-spacing:-1px;color:white}.nav-label{color:#6f8298;font-size:10px;letter-spacing:1.7px;margin:0 15px 15px}.sidebar nav button{display:flex;gap:12px;align-items:center;color:#a9b7c6;width:100%;text-align:left;background:transparent;padding:13px 15px;margin-bottom:5px;font-size:16px}.sidebar nav button span{font-size:13px;font-weight:500}.sidebar nav button.active{background:#2a394a;color:white;box-shadow:inset 3px 0 var(--accent)}.sidebar-foot{margin-top:auto;padding:40px 12px 0;color:#a3b2c3;font-size:11px}.sidebar-foot small{color:#6f8298;margin-top:8px}.status-dot{display:inline-block;width:6px;height:6px;background:#78ba9a;border-radius:50%;margin-right:7px}.topbar{padding:29px 35px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:white}.user-box{display:flex;align-items:center;gap:18px}.user-box strong{font-size:12px}.user-box small{font-size:10px}.badge{display:inline-block;border-radius:7px;background:#eff1f4;color:#728093;padding:5px 9px;font-size:10px;font-weight:700}.badge.green{background:#eaf5ef;color:var(--green)}.badge.red{background:#fdeeea;color:#b54731}#content{padding:28px 35px}.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:25px}.section-intro{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.section-intro p{margin:4px 0 0;color:var(--muted);font-size:12px}.search{position:relative}.search input{padding:15px 16px;background:white;border-color:var(--line);font-size:14px;box-shadow:0 2px 5px #15233503}.filters{display:flex;gap:8px;margin:20px 0;flex-wrap:wrap}.filters button{font-size:11px;padding:7px 12px;background:white;border:1px solid var(--line);color:var(--muted)}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:14px}.product-card{padding:0;background:white;text-align:left;border:1px solid var(--line);overflow:hidden;box-shadow:0 4px 12px #17243403;transition:transform .12s}.product-card:hover{transform:translateY(-3px);border-color:var(--accent)}.product-art{height:85px;display:flex;align-items:center;justify-content:center;background:#f9eee8;font-size:40px;position:relative}.product-card:nth-child(3n+2) .product-art{background:#eef3e9}.product-card:nth-child(3n) .product-art{background:#eff0fb}.product-art .badge{position:absolute;top:8px;right:8px;font-size:8px;background:#ffffffbf}.product-info{padding:13px}.product-info strong{display:block;font-size:12px;min-height:36px;line-height:1.4}.product-info .price{color:var(--ink);font-size:16px;font-weight:750;margin-top:7px}.product-info small{font-size:9px;margin-top:4px}.order{background:white;border:1px solid var(--line);border-radius:15px;overflow:hidden;align-self:start;position:sticky;top:20px}.order-head{padding:20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.order-head h2{font-size:17px;margin:0}.order-items{min-height:230px;max-height:45vh;overflow-y:auto;padding:8px 20px}.empty{text-align:center;padding:35px 15px;color:var(--muted)}.empty .icon{font-size:36px;color:#cbd3db;margin-bottom:10px}.empty h3{color:#778393;font-size:13px;margin-bottom:7px}.empty p{font-size:11px;max-width:200px;margin:auto}.cart-line{display:grid;grid-template-columns:1fr auto;gap:8px;padding:13px 0;border-bottom:1px solid #edf0f3}.cart-line strong{font-size:12px}.cart-line .amount{font-weight:700;font-size:12px}.qty-row{display:flex;gap:6px;align-items:center;margin-top:8px}.qty-row button{padding:2px 8px;font-size:12px;border-radius:5px}.qty-row input{width:65px;padding:3px 4px;text-align:center;font-size:11px}.qty-row .remove{color:#bd695c;background:transparent;margin-left:auto}.order-foot{padding:20px;background:#fafbfc}.order-total{display:flex;justify-content:space-between;font-size:25px;letter-spacing:-.7px;font-weight:750;margin:14px 0 20px}.order-total span:first-child{font-size:14px;align-self:center;letter-spacing:0}.order-foot button.primary{width:100%;padding:15px}.order-foot small{text-align:center;margin-top:10px;font-size:9px}.hint{background:#fff4e6;color:#916131;border:1px solid #f6e4ce;border-radius:9px;padding:12px 15px;font-size:12px;margin-bottom:17px}.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:22px;margin-bottom:20px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:25px}.metric{padding:20px;background:white;border:1px solid var(--line);border-radius:12px}.metric small{font-size:11px}.metric strong{display:block;font-size:26px;letter-spacing:-1px;margin:8px 0 4px}.metric.accent{background:var(--rail);color:white;border-color:var(--rail)}.metric.accent small{color:#9aaec2}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}th{color:var(--muted);font-weight:600;font-size:10px;letter-spacing:.5px;text-transform:uppercase;border-bottom:1px solid var(--line);padding:12px 10px}td{padding:13px 10px;border-bottom:1px solid #edf0f3;vertical-align:middle}td button{font-size:10px;padding:6px 9px;margin:2px}td small{font-size:10px}.amount{text-align:right;white-space:nowrap}.toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:18px}.toolbar label{margin:0;max-width:180px}.toolbar button{height:43px}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.grid-three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:15px}.stretch{width:100%}.note{color:var(--muted);font-size:12px}.recipe-row{display:grid;grid-template-columns:1fr 100px 35px;gap:8px;margin:10px 0}.recipe-row small{grid-column:1/-1}.payment-total{font-size:30px;font-weight:800;letter-spacing:-1px;margin:10px 0 25px}.success{color:var(--green)}pre{overflow:auto;background:#f6f7f9;padding:12px;font-size:11px;border-radius:8px}dialog{width:min(640px,94vw);max-height:90vh;overflow-y:auto;border:1px solid var(--line);padding:25px;border-radius:16px;box-shadow:0 30px 90px #10182740;color:var(--ink)}dialog::backdrop{background:#15233573;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-head h2{margin:0}.toast{position:fixed;right:25px;bottom:25px;background:var(--ink);color:white;border-radius:12px;padding:15px 22px;box-shadow:0 6px 25px #0003;z-index:5;max-width:min(500px,90vw);font-size:13px}.toast.error{background:#a6412e}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 15%,#ef6d4c18,transparent 55%),var(--rail)}.login-card{width:min(430px,90vw);background:white;padding:38px;border-radius:20px;box-shadow:0 20px 60px #0003}.login-card .brand-icon{margin-bottom:25px;width:50px;height:50px;font-size:27px}.login-card h1{font-size:32px}.login-card p{color:var(--muted);font-size:13px;margin:12px 0 28px}.login-card button{width:100%;margin:8px 0 20px}.login-card small{text-align:center;font-size:10px}@media(max-width:1200px){.shell{grid-template-columns:205px 1fr}.sidebar{padding:25px 10px}.brand{font-size:19px}#content{padding:22px}.topbar{padding:25px 22px}.pos-layout{grid-template-columns:minmax(0,1fr) 315px;gap:18px}.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:880px){.shell{display:block}.sidebar{min-height:0;padding:12px 15px}.brand{margin:0 0 12px;font-size:18px}.brand-icon{width:32px;height:32px;font-size:17px}.nav-label,.sidebar-foot{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:5px}.sidebar nav button{width:auto;white-space:nowrap;padding:9px 11px;margin:0}.sidebar nav button span{font-size:11px}.topbar{padding:20px}.topbar h1{font-size:22px}.user-box{gap:9px}.user-box .badge{display:none}.pos-layout{grid-template-columns:minmax(0,1fr) 300px}.grid-three{grid-template-columns:1fr}.metrics .metric strong{font-size:21px}}@media(max-width:650px){#content{padding:16px}.pos-layout,.grid-two{grid-template-columns:1fr}.order{position:static}.product-grid{grid-template-columns:repeat(2,1fr)}.product-art{height:70px}.topbar .eyebrow{font-size:8px}.user-box strong{max-width:105px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.metrics{gap:10px}.metric{padding:15px}.section-intro{align-items:start}.section-intro h2{font-size:17px}.order-items{max-height:280px;min-height:120px}dialog{padding:20px}.toolbar label{max-width:calc(50% - 6px)}}

.promotion-card{border:1px solid var(--accent)}.promotion-card .product-art{background:#fff0e8}.promotion-saving{color:var(--green)!important;font-weight:600}.promotion-summary{background:#f7f8fa;border:1px solid var(--line);border-radius:12px;padding:16px;margin:15px 0}.promotion-summary>div{display:flex;justify-content:space-between;gap:15px;margin:8px 0}.promotion-row{grid-template-columns:minmax(0,1fr) 90px 35px}.promotion-row select{min-width:0}

.brand-logo{width:44px;height:44px;object-fit:contain;flex-shrink:0;background:#fff;border-radius:9px;padding:3px}.login-logo{width:auto;max-width:100%;height:85px;margin-bottom:22px}.brand{overflow-wrap:anywhere}.brand-icon{color:var(--accent-ink,white)}.sidebar,.brand,.sidebar nav button,.sidebar-foot,.sidebar-foot small,.nav-label{color:var(--rail-ink,#fff)}.sidebar nav button{opacity:.78}.sidebar nav button.active{color:var(--rail-ink,#fff);background:color-mix(in srgb,var(--rail-ink,#fff) 12%,transparent);opacity:1}.metric.accent,.metric.accent small{color:var(--rail-ink,#fff)}.section-intro{color:var(--page-ink,var(--ink))}.section-intro p{color:inherit;opacity:.7}.panel,.order,.product-card,.metric,dialog{color:var(--ink)}.metric.accent{color:var(--rail-ink,#fff)}
.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px}.settings-preview{align-self:start;position:sticky;top:20px}.settings-preview .panel{padding:18px}.settings-save{display:flex;gap:20px;align-items:center;justify-content:space-between;background:#fff;padding:18px;border-radius:12px;border:1px solid var(--line);margin-bottom:20px}.settings-save>span{font-size:12px;color:var(--muted)}.color-control input{height:44px;padding:4px;cursor:pointer}.color-control small{margin-top:5px}.appearance-preview{display:grid;grid-template-columns:105px 1fr;border:1px solid #dce1e7;border-radius:10px;overflow:hidden;min-height:215px;font-size:11px}.preview-sidebar{background:var(--preview-sidebar);color:var(--preview-sidebar-ink);padding:13px 10px;display:flex;flex-direction:column;gap:12px;overflow-wrap:anywhere}.preview-sidebar img{width:65px;height:40px;object-fit:contain;background:white;border-radius:5px}.preview-sidebar span{font-size:10px}.preview-sidebar strong{font-size:12px}.preview-initials{font-weight:800}.preview-page{background:var(--preview-bg);color:var(--preview-ink);padding:12px;min-width:0}.preview-topbar{display:flex;flex-direction:column;gap:3px;font-size:10px;margin-bottom:15px}.preview-page h3{font-size:12px}.preview-product{display:flex;flex-direction:column;gap:6px;padding:12px;background:#fff;color:#1b2436;border-radius:7px;font-size:12px;margin-bottom:14px}.preview-button{background:var(--preview-accent);color:var(--preview-accent-ink);font-size:10px;padding:8px;width:100%;pointer-events:none}.preview-ticket{margin-top:22px}.preview-ticket article{width:100%;max-width:240px;margin:0 auto;background:#fff;border:1px dashed #bcc4cc;color:#000;padding:15px;font:11px/1.5 Arial,sans-serif;overflow-wrap:anywhere}.preview-ticket article img{display:block;width:auto;max-width:100%;height:45px;object-fit:contain;margin:0 auto 8px}.preview-ticket h3,.preview-ticket article>strong,.preview-ticket p{text-align:center;display:block}.preview-ticket h4{margin:12px 0 5px;border-bottom:1px solid #000}.preview-ticket small{font-size:9px;color:#000}.preview-money{text-align:right}.settings-preview label{min-width:0}.settings-preview select{font-size:12px}.settings-layout .actions{flex-wrap:wrap}@media(max-width:1200px){.settings-layout{grid-template-columns:minmax(0,1fr) 310px}.settings-layout .grid-three{grid-template-columns:1fr}.settings-preview .grid-two{grid-template-columns:1fr}.settings-save{align-items:stretch;flex-direction:column}}@media(max-width:1000px){.settings-layout{grid-template-columns:1fr}.settings-preview{position:static}.settings-preview .grid-two{grid-template-columns:1fr 1fr}.settings-preview .panel{max-width:520px}.settings-layout .grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.settings-layout .grid-three{grid-template-columns:1fr}.settings-preview .grid-two{grid-template-columns:1fr}.appearance-preview{grid-template-columns:95px 1fr}}

#content>.toolbar label{color:var(--page-ink,var(--ink))}.pos-layout>section>.note{color:var(--page-ink,var(--muted));opacity:.75}.cart-line>.qty-row,.cart-line>small{grid-column:1/-1}

.browser-tab-preview{display:flex;align-items:center;gap:8px;background:#e9eef6;border:1px solid #d8dfe9;border-radius:9px 9px 0 0;padding:10px 12px;margin-bottom:12px;color:#1b2436;font-size:12px}.browser-tab-preview img{width:18px;height:18px;object-fit:contain;flex-shrink:0}.browser-tab-preview span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}

.sidebar{max-height:100vh;position:sticky;top:0;overflow-y:auto}.purchase-line{padding:15px;background:#fafbfc}.purchase-line-summary{font-weight:600}#modal:has(#purchase-form){width:min(800px,94vw)}@media(max-width:880px){.sidebar{position:static;max-height:none}}

.pos-card{position:relative;min-width:0}.pos-card>.product-card{width:100%;height:100%}.favorite-button{position:absolute;right:7px;top:7px;width:31px;height:31px;padding:0;border-radius:50%;background:#fff;color:#68768a;font-size:23px;border:1px solid #dde3ea;box-shadow:0 2px 5px #17243414}.favorite-button.selected{color:#b56f00;background:#fff8de}.pos-card .product-art .badge{right:auto;left:8px;max-width:calc(100% - 49px);overflow:hidden;text-overflow:ellipsis}.keyboard-selected>.product-card{outline:3px solid var(--accent);outline-offset:2px}.quick-order-actions{display:flex;gap:6px;flex-wrap:wrap}.quick-order-actions button{font-size:11px;padding:8px}.order-note{border-left:3px solid var(--accent);background:#f1f4f7;padding:10px;margin:12px 0;font-size:12px;overflow-wrap:anywhere}.order-note p{margin:6px 0 0}.order-discount{display:grid;grid-template-columns:1fr auto;gap:6px;font-size:12px;background:#eaf5ef;padding:10px;margin:10px 0;border-radius:8px}.order-discount small{grid-column:1/-1}.order-discount button{font-size:10px;justify-self:end;grid-column:2}.product-card:disabled{opacity:.65}#search-count{min-height:18px}

/* Navegación 0.3.1: acordeón administrativo y menú contraíble. */
.shell{grid-template-columns:250px minmax(0,1fr)}.shell>main{min-width:0}.sidebar{padding:25px 14px}.brand{margin:0 9px 30px;min-height:44px}.brand-icon{flex-shrink:0}.sidebar nav button{gap:10px;padding:11px 12px;min-height:44px;font-size:17px}.sidebar nav button .nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;font-size:19px;font-weight:600}.sidebar nav button .nav-text{font-size:12px;white-space:normal;overflow-wrap:anywhere}.nav-group-toggle .nav-chevron{margin-left:auto;flex-shrink:0;transition:transform .15s}.nav-group-toggle[aria-expanded="true"] .nav-chevron{transform:rotate(180deg)}.sidebar nav button.contains-active{opacity:1;color:var(--rail-ink,#fff)}.nav-submenu{padding:1px 0 5px 13px;border-left:1px solid color-mix(in srgb,var(--rail-ink,#fff) 22%,transparent);margin:0 0 9px 22px}.nav-submenu[hidden]{display:none!important}.sidebar nav .nav-submenu button{padding:9px 10px;gap:7px;min-height:38px;margin-bottom:2px}.sidebar nav .nav-submenu button .nav-icon{display:none}.sidebar nav button:hover{background:color-mix(in srgb,var(--rail-ink,#fff) 9%,transparent);opacity:1}.sidebar nav button:focus-visible{outline:2px solid var(--rail-ink,#fff);outline-offset:1px}.topbar-heading{display:flex;align-items:center;gap:15px;min-width:0}.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:10px;width:42px;height:42px;background:#f1f3f6;color:var(--ink);border:1px solid var(--line)}.sidebar-close{display:none}.sidebar-backdrop{position:fixed;inset:0;border-radius:0;background:#17243480;z-index:19;width:100%;height:100%;padding:0}.shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar-collapsed .sidebar{padding:25px 8px}.sidebar-collapsed .brand{margin:0 0 30px;justify-content:center}.sidebar-collapsed .brand-logo{width:40px;height:40px}.sidebar-collapsed #store-name,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-text,.sidebar-collapsed .nav-chevron,.sidebar-collapsed .sidebar-foot #connection,.sidebar-collapsed .sidebar-foot small{display:none}.sidebar-collapsed .sidebar nav button{justify-content:center;padding:12px 8px}.sidebar-collapsed .sidebar-foot{padding:25px 0 0;text-align:center}.sidebar-collapsed .status-dot{margin:0}.sidebar-collapsed .nav-submenu{display:none!important}
@media(max-width:1200px) and (min-width:881px){.shell{grid-template-columns:230px minmax(0,1fr)}.shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}}
@media(max-width:880px){.shell,.shell.sidebar-collapsed{display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:min(290px,85vw);min-height:100dvh;max-height:100dvh;padding:22px 14px;z-index:20;overflow-y:auto;overscroll-behavior:contain}.mobile-nav-closed .sidebar{display:none}.sidebar .brand{margin:0 40px 25px 8px;min-height:44px}.sidebar .brand-icon{width:39px;height:39px;font-size:20px}.sidebar .nav-label{display:block}.sidebar .sidebar-foot{display:block}.sidebar nav{display:block;overflow:visible}.sidebar nav button{width:100%;white-space:normal;margin-bottom:5px;padding:11px 12px}.sidebar nav button .nav-text{font-size:12px}.sidebar-close{display:block;position:absolute;top:24px;right:12px;padding:8px 11px;background:transparent;color:var(--rail-ink,#fff);border:1px solid color-mix(in srgb,var(--rail-ink,#fff) 25%,transparent)}body.navigation-open{overflow:hidden}.topbar-heading{gap:10px}.topbar{gap:12px}.sidebar-toggle{width:38px;height:38px;padding:8px}}
@media(max-width:650px){.topbar{padding:16px;flex-wrap:wrap}.topbar h1{font-size:20px}.topbar-heading{flex:1 1 auto}.user-box{margin-left:auto;gap:8px}.user-box strong{max-width:90px}.sidebar .brand{font-size:18px}}
@media(prefers-reduced-motion:reduce){.nav-group-toggle .nav-chevron{transition:none}}

/* Fotos opcionales del catálogo. El ícono queda detrás por si la imagen falla. */
.pos-card .product-art{height:142px;background:#f7f5f1;isolation:isolate}
.product-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:42px}
.product-art .product-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;padding:33px 10px 10px;z-index:1}
.pos-card .product-art .badge{z-index:2;background:#ffffffed;border:1px solid #e5e7eb;max-width:calc(100% - 50px);font-size:9px}
.pos-card .favorite-button{z-index:3}
.product-info strong{overflow-wrap:anywhere}
.catalog-photo-editor{display:grid;grid-template-columns:132px minmax(0,1fr);gap:18px;align-items:start;background:#f7f8fa;border:1px solid var(--line);border-radius:12px;padding:16px;margin:18px 0}
.catalog-photo-preview{height:132px;position:relative;display:flex;align-items:center;justify-content:center;background:#fff;border:1px dashed #ccd4dd;border-radius:10px;overflow:hidden;color:#a0acba;font-size:40px}
.catalog-photo-preview img{width:100%;height:100%;object-fit:contain}
.catalog-photo-preview [hidden],.catalog-photo-editor [hidden]{display:none!important}
.catalog-photo-controls h3{margin:0 0 10px}.catalog-photo-controls label{margin-bottom:8px}.catalog-photo-controls input[type=file]{width:100%;font-size:12px;padding:8px;background:#fff}.catalog-photo-controls .note{font-size:11px;margin:8px 0;line-height:1.5}.photo-actions{display:flex;gap:8px;flex-wrap:wrap}.photo-actions button{font-size:11px;padding:7px 10px}.photo-error{color:var(--red,#b63a2b)!important}
@media(max-width:650px){.pos-card .product-art{height:120px}.catalog-photo-editor{grid-template-columns:90px minmax(0,1fr);gap:12px;padding:12px}.catalog-photo-preview{height:100px}}

.online-public-link{display:inline-block;text-decoration:none;padding:12px 16px;border-radius:8px;background:var(--accent);color:var(--accent-ink,#fff);font-size:12px}.online-history{border-top:1px solid var(--line);margin-top:20px;padding-top:10px;font-size:12px}.online-history small{display:block;margin:7px 0}.online-payments{font-size:12px;background:#f4f6f8;padding:12px;border-radius:8px;margin:15px 0}

.online-counter{margin-left:auto;min-width:22px;padding:3px 5px;border-radius:20px;background:#ffcf32;color:#172434;font-size:11px;text-align:center}.sidebar-collapsed .online-counter{display:none}

/* Catálogo: búsqueda, miniaturas y estados con teclado/clic. */
.catalog-toolbar{align-items:end;justify-content:space-between;margin-bottom:16px;gap:12px}.catalog-toolbar label{flex:1;max-width:560px!important;min-width:0}.catalog-toolbar input{width:100%}.catalog-toolbar .note{margin:0 0 10px;white-space:nowrap}
.catalog-item{display:flex;align-items:center;gap:12px}.catalog-item>div{min-width:0;overflow-wrap:anywhere}.catalog-item-photo{position:relative;display:block;flex:0 0 52px;width:52px;height:52px;border:1px solid #e2e8ee;border-radius:10px;overflow:hidden;background:#f4f6f8}.catalog-item-photo .product-photo-placeholder{font-size:25px}.catalog-item-photo .product-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:#fff;padding:3px}.catalog-state{cursor:pointer;border:1px solid currentColor;padding:6px 10px;white-space:nowrap}.catalog-state:hover{filter:brightness(.95)}.catalog-state:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.catalog-state:disabled{cursor:wait;opacity:.6}.catalog-warning{color:#9c4a17!important}
@media(max-width:650px){.catalog-toolbar{align-items:stretch}.catalog-toolbar label{flex-basis:100%;max-width:100%!important}.catalog-toolbar .note{margin-bottom:0}.catalog-item{gap:8px}.catalog-item-photo{flex-basis:44px;width:44px;height:44px}}

/* Controles comunes de tablas. */
.data-table{min-width:0}.data-table-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 14px}.data-table-controls label,.data-table-length{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:12px;font-weight:500}.data-table-length select{width:78px;min-width:78px;margin:0;padding:8px 9px}.data-table-search input{width:240px;max-width:100%;margin:0;padding:9px 11px}.data-table-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px}.data-table-info{font-size:11px;color:var(--muted)}.data-table-pages{display:flex;gap:4px;flex-wrap:wrap}.data-table-pages button{padding:7px 10px;font-size:11px;min-width:32px}.data-table-pages [aria-current="page"]{background:var(--accent);color:var(--accent-ink,#fff)}.data-table-pages button:disabled{opacity:.45;cursor:default}.data-table-sort{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:0;border-radius:3px;background:transparent;color:inherit;font:inherit;font-weight:inherit;text-align:left;white-space:normal}.data-table-sort:hover{background:#17243408}.data-table-sort:focus-visible,.data-table-pages button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.data-table-arrow{font-size:13px;opacity:.55;flex-shrink:0}.data-table [aria-sort="ascending"] .data-table-arrow,.data-table [aria-sort="descending"] .data-table-arrow{opacity:1;color:var(--accent)}.data-table tr[hidden]{display:none!important}
.catalog-toolbar .data-table-length{flex:0 0 auto;min-width:max-content;max-width:none!important;margin:0 0 5px}.catalog-toolbar label:not(.data-table-length){margin-left:auto;flex:0 1 440px;max-width:440px!important}.catalog-toolbar:has(.data-table-length) #catalog-admin-count{display:none}
@media(max-width:650px){.data-table-controls{align-items:stretch;gap:12px}.data-table-search{flex:1 1 100%}.data-table-search input{flex:1;min-width:0;width:100%}.data-table-footer{align-items:flex-start;gap:10px}.data-table-pages button{padding:8px}.catalog-toolbar label:not(.data-table-length){flex:1 1 100%;max-width:100%!important}.data-table-sort{gap:6px}}

.cash-sales{margin-top:30px}.cash-sales>.section-intro{margin-bottom:16px}.cash-sales .toolbar label{min-width:150px}
