:root{--color-bg: #f9fafb;--color-card: #ffffff;--color-primary: #3b82f6;--color-primary-hover: #2563eb;--btn-transition: .15s ease;--btn-radius: 9px;--btn-primary-bg: #86c98f;--btn-primary-border: #22c55e;--btn-primary-color: #052e16;--btn-primary-hover: #16a34a;--btn-primary-hover-color: #ffffff;--btn-secondary-bg: #3b82f6;--btn-secondary-hover: #2563eb;--btn-secondary-color: #ffffff;--btn-danger-bg: #fee2e2;--btn-danger-hover: #fecaca;--btn-danger-color: #991b1b;--btn-danger-border: #fecaca;--btn-outline-border: #d1d5db;--btn-outline-color: #374151;--btn-outline-hover-bg: #f3f4f6;--btn-ghost-color: #374151;--btn-ghost-hover-bg: #f3f4f6;--btn-ghost-hover-color: #374151;--btn-disabled-bg: #e5e7eb;--btn-disabled-color: #9ca3af;--color-text: #111827;--color-heading-2: #1f2937;--color-section-title: #111827;--color-text-secondary: #6b7280;--color-placeholder: #9ca3af;--color-border: #e5e7eb;--color-input-border: #d1d5db;--input-focus-shadow: none;--color-primary-focus-ring: rgba(59, 130, 246, .22);--color-table-header: #f9fafb;--color-row-hover: #f9fafb;--color-secondary-btn: #f3f4f6;--color-danger: #991b1b;--color-danger-hover: #7f1d1d;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--shadow-card: 0 14px 40px -12px rgba(15, 23, 42, .1), 0 4px 14px -4px rgba(15, 23, 42, .06);--radius-card: 14px;--radius-control: 10px;--transition: .15s ease;font-family:var(--font-sans);line-height:1.5;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-text)}html,body,#root{height:100%;min-height:100%;width:100%;margin:0;background-color:var(--color-bg)}a{font-weight:500;color:var(--color-primary);text-decoration:inherit;transition:color var(--transition)}a:hover{color:var(--color-primary-hover)}body{display:flex;place-items:stretch;min-width:320px;scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0}h1{font-size:clamp(1.5rem,1.35rem + .6vw,2rem);font-weight:700;color:#111827;line-height:1.25;letter-spacing:-.03em;margin:0}h2{font-size:18px;font-weight:500;color:var(--color-heading-2);line-height:1.35;margin:0}button{border-radius:var(--btn-radius);border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--btn-transition)}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:disabled{cursor:not-allowed}button:disabled,button:disabled:hover{background:var(--btn-disabled-bg)!important;color:var(--btn-disabled-color)!important;opacity:1!important;box-shadow:none!important;border-color:transparent!important;pointer-events:none;transition:none}button.modal-btn-cancel:disabled,button.modal-btn-cancel:disabled:hover,button.products-btn-cancel-edit:disabled,button.products-btn-cancel-edit:disabled:hover{background:transparent!important;color:var(--btn-disabled-color)!important;border:1px solid var(--color-border)!important;opacity:1!important;transition:all var(--btn-transition)!important}input:not([type=checkbox]):not([type=radio]),select,textarea{font-family:inherit;background:#fff;border:1px solid var(--color-input-border);color:#111827;transition:border-color var(--transition),box-shadow var(--transition)}input:not([type=checkbox]):not([type=radio])::placeholder,textarea::placeholder{color:var(--color-placeholder)}input:not([type=checkbox]):not([type=radio]):focus,input:not([type=checkbox]):not([type=radio]):focus-visible,select:focus,select:focus-visible,textarea:focus,textarea:focus-visible{outline:none;border:1px solid var(--color-primary);box-shadow:var(--input-focus-shadow)}*{box-sizing:border-box}html,body,#root{background:var(--color-bg);height:100%;overflow:hidden}body{margin:0;font-family:var(--font-sans);min-height:100%;color:var(--color-text)}.layout{--sidebar-width: 240px;--sidebar-width-compact: 68px;display:flex;position:relative;height:100%;min-height:100vh;background:var(--color-bg);overflow:hidden}.menu-toggle{display:none;position:fixed;top:12px;left:12px;z-index:90;width:44px;height:44px;padding:0;border:none;border-radius:var(--radius-control);background:#0f172a;color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer;box-shadow:var(--shadow-card);transition:all var(--transition)}.menu-toggle:hover{background:#1e293b}.menu-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.menu-toggle--fab{display:none;top:auto;left:14px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:999px;background:#1d4ed8;box-shadow:0 10px 22px #0f172a38,0 2px 6px #0f172a2e}.menu-toggle--fab:hover{background:#1e40af}.menu-toggle--fab.menu-toggle--fab-hidden{opacity:0;pointer-events:none;transform:scale(.96)}.menu-toggle-icon{display:block;width:20px;height:2px;background:currentColor;border-radius:1px}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0f172a73;z-index:95;transition:opacity var(--transition)}.sidebar{width:var(--sidebar-width);max-width:100vw;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;flex-shrink:0;overflow:hidden;overflow-x:hidden;position:fixed;top:0;left:0;z-index:20;align-self:flex-start;background:linear-gradient(180deg,#0f172a,#0b1220);color:#f8fafc;border-right:1px solid rgba(255,255,255,.06);padding:24px 14px 20px;display:flex;flex-direction:column;min-height:0;transition:width .22s ease-out,padding .22s ease-out}.sidebar-close{display:none;position:absolute;top:12px;right:12px;width:36px;height:36px;padding:0;border:none;border-radius:var(--radius-control);background:#ffffff1a;color:#fff;font-size:18px;cursor:pointer;align-items:center;justify-content:center;transition:all .2s ease}.sidebar-close:hover{background:#ffffff2e}.sidebar-header{flex-shrink:0;margin-bottom:4px}.sidebar-header__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.sidebar-header__title-row .sidebar-brand{flex:1;min-width:0;margin-bottom:0}.sidebar-collapse-desktop-wrap{display:none;flex-shrink:0;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}@media(min-width:769px){.sidebar-collapse-desktop-wrap{display:flex;justify-content:flex-end}}.sidebar-collapse-desktop{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:36px;height:36px;padding:0;margin:0;border:none;border-radius:var(--radius-control);background:#ffffff14;color:#e2e8f0;cursor:pointer;transition:background .2s ease}.sidebar-collapse-desktop:hover{background:#ffffff24}.sidebar-collapse-desktop:focus-visible{outline:2px solid rgba(96,165,250,.6);outline-offset:2px}.sidebar-brand{margin:0 0 12px;font-size:1.0625rem;font-weight:700;letter-spacing:-.02em;color:#f8fafc;line-height:1.25}.sidebar-brand__compact{display:none;align-items:center;justify-content:center;width:36px;height:36px;margin:0 auto 8px;border-radius:10px;background:#ffffff1a;font-size:1rem;font-weight:700;color:#f8fafc}.sidebar-brand--empty{color:transparent}.sidebar-brand--fallback{color:#cbd5e19e;font-weight:600}.sidebar-skeleton{border-radius:8px;background:linear-gradient(90deg,#47556947,#64748b66,#47556947);background-size:180% 100%;animation:sidebar-skeleton-shimmer 1.4s ease-in-out infinite}@keyframes sidebar-skeleton-shimmer{0%{background-position:100% 0;opacity:.9}50%{opacity:1}to{background-position:-20% 0;opacity:.9}}.sidebar-skeleton--brand{width:72%;height:1.35rem;margin:0 0 12px;border-radius:7px}.sidebar-skeleton--icon{width:18px;height:18px;border-radius:999px}.sidebar-skeleton--email{height:.95rem;width:58%;margin-top:1px}.sidebar-skeleton--nav-item{height:36px;width:100%;border-radius:var(--radius-control)}.sidebar-skeleton--nav-item-highlight{background:linear-gradient(90deg,#3b82f633,#60a5fa47,#3b82f633);background-size:180% 100%}.sidebar-skeleton--plan-pill{width:88px;height:19px;border-radius:999px}.sidebar-skeleton--context-link{width:124px;height:17px;border-radius:6px}.sidebar-skeleton--action-link{width:100%;height:30px;border-radius:var(--radius-control)}.sidebar-skeleton--action-link-logout{margin-top:4px;opacity:.75}.sidebar-icon{flex-shrink:0;width:18px;height:18px;opacity:.88}.sidebar-user{display:flex;align-items:flex-start;gap:8px;margin:0;line-height:1.4}.sidebar-user__icon{margin-top:1px;opacity:.5;color:#94a3b8}.sidebar-user__email{flex:1;min-width:0;font-size:12px;font-weight:500;color:#e2e8f0eb;word-break:break-word}.sidebar-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.sidebar-content{flex:0 0 auto;overflow:visible;margin-top:8px;padding-bottom:6px}.sidebar-bottom{flex-shrink:0;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-section{flex-shrink:0}.sidebar-section--nav{flex:0 0 auto;display:flex;flex-direction:column;gap:2px}.sidebar-section-divider{flex-shrink:0;margin:20px 0;border:none;border-top:1px solid rgba(255,255,255,.08)}.sidebar-section--context{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:2px 0}.sidebar-section--secondary{display:flex;flex-direction:column;gap:2px;padding-bottom:4px}.sidebar-nav-item{position:relative;display:flex;align-items:center;gap:10px;margin:0;padding:10px 12px 10px 14px;border:none;border-radius:var(--radius-control);background:transparent;color:#cbd5e1;cursor:pointer;font-size:13px;font-weight:500;font-family:inherit;text-align:left;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.sidebar-nav-item__icon{flex-shrink:0;width:20px;height:20px;opacity:.95}.sidebar-nav-item__label{flex:1;min-width:0}.sidebar-nav-item__badge{margin-left:auto;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#16a34a;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:20px;align-self:center;position:relative;top:-1px;font-variant-numeric:tabular-nums}.sidebar-nav-item:hover{background:#ffffff12;color:#f1f5f9}.sidebar-nav-item:focus-visible{outline:2px solid rgba(96,165,250,.75);outline-offset:1px}.sidebar-nav-item--active{background:#ffffff1c;color:#fff;font-weight:600;box-shadow:inset 3px 0 #60a5fa}.sidebar-nav-item--highlight:not(.sidebar-nav-item--active){color:#d8dee9;background:#3b82f60f}.sidebar-nav-item--highlight:hover:not(.sidebar-nav-item--active){background:#ffffff12;color:#f1f5f9}.sidebar-nav-item--highlight.sidebar-nav-item--active{background:#ffffff1c;color:#fff;font-weight:600;box-shadow:inset 3px 0 #60a5fa}.sidebar-plan-badge{display:inline-block;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.04em;line-height:1.25;border:1px solid transparent}.sidebar-plan-badge--basic{color:#eef2f7;background:#94a3b81f;border-color:#bac6d657}.sidebar-plan-badge--pro{color:#bae6fd;background:#0ea5e924;border-color:#38bdf859}.sidebar-plan-badge--premium{color:#fde68a;background:#f59e0b1f;border-color:#fbbf2459}.sidebar-plan-badge__dot{display:none}.sidebar-context-link{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 4px;margin:0 0 0 -4px;border:none;border-radius:6px;background:none;color:#94a3b8eb;font-size:11px;font-weight:500;font-family:inherit;cursor:pointer;text-align:left;text-decoration:none;transition:all .2s ease}.sidebar-context-link:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-context-link>span:last-child{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:2px;transition:inherit}.sidebar-context-link:hover>span:last-child{text-decoration-color:#cbd5e18c}.sidebar-context-link__icon{width:18px;height:18px;opacity:.55}.sidebar-context-link:hover .sidebar-context-link__icon{opacity:.78}.sidebar-context-link:focus-visible{outline:2px solid rgba(148,163,184,.45);outline-offset:1px}.sidebar-action-link{display:flex;align-items:center;gap:.5rem;width:100%;padding:8px 6px;margin:0 0 0 -2px;border:none;border-radius:var(--radius-control);background:none;color:#94a3b8;font-size:12px;font-weight:500;font-family:inherit;line-height:1.35;cursor:pointer;text-align:left;transition:all .2s ease}.sidebar-action-link:hover:not(:disabled){background:#ffffff0f;color:#e2e8f0}.sidebar-action-link:disabled{opacity:.45;cursor:wait}.sidebar-action-link .sidebar-icon{opacity:.72;color:#94a3b8}.sidebar-action-link:hover:not(:disabled) .sidebar-icon{opacity:.92;color:#cbd5e1}.sidebar-action-link__text{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#94a3b852}.sidebar-action-link:hover:not(:disabled) .sidebar-action-link__text{text-decoration-color:#e2e8f073}.sidebar-action-link:focus-visible{outline:2px solid rgba(147,197,253,.5);outline-offset:1px;border-radius:4px}.sidebar-action-link--logout{color:#a8b0bd;margin-top:4px;opacity:.7}.sidebar-action-link--logout:hover:not(:disabled),.sidebar-action-link--logout:focus-visible{opacity:1}.sidebar-action-link--logout:hover:not(:disabled){background:#f871711a;color:#fecaca}.sidebar-action-link--logout:hover:not(:disabled) .sidebar-icon{color:#fca5a5;opacity:.95}.sidebar-action-link--logout .sidebar-action-link__text{text-decoration-color:#a8b0bd59}.sidebar-action-link--logout:hover:not(:disabled) .sidebar-action-link__text{text-decoration-color:#fecaca80}.sidebar-action-link--logout:focus-visible{outline-color:#f871718c}.main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;max-width:1200px;width:calc(100% - var(--sidebar-width));margin-left:var(--sidebar-width);margin-right:auto;padding:48px 52px 56px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.main-content-shell{width:100%;min-height:0}.main-content-shell:has(.sale-page){flex:1;display:flex;min-height:0}.main:has(.sale-page){overflow:hidden;padding-top:28px;padding-bottom:28px}.main:has(.products-page){padding-top:28px;padding-bottom:28px}@media(min-width:769px){#root:has(>.layout){height:100vh;overflow:hidden}.layout{height:100%;overflow:hidden}.main{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scrollbar-width:none;transition:margin-left .2s ease-out,width .2s ease-out}.main::-webkit-scrollbar{width:0;height:0}.sale-page{min-height:0}.sale-page .venta{flex:1;display:flex;gap:16px;align-items:stretch;min-height:0}.main:has(.sale-page){max-width:none;overflow:hidden}.sale-page .venta-panel--products{flex:6.5;display:flex;flex-direction:column;min-height:0}.sale-page .venta-sidebar{flex:3.5;display:flex;flex-direction:column;min-height:0}.sale-page .venta-sidebar__sticky{flex:1;min-height:0}.sale-page .productos-list{flex:1 1 auto;min-height:0;overflow-y:auto;max-height:none}.sale-page .venta-cart-body,.sale-page .carrito-list{flex:1 1 auto;min-height:0;overflow-y:auto}.sale-page .venta-panel--actions,.sale-page .venta-acciones{flex-shrink:0}.sidebar{transition:transform .2s ease-out,width .22s ease-out,padding .22s ease-out}.layout--sidebar-compact{--sidebar-width: var(--sidebar-width-compact)}.sidebar-shell{overflow:hidden}.sidebar-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none}.sidebar-content::-webkit-scrollbar{width:0;height:0}.sidebar.sidebar--desktop-compact{padding:18px 10px 16px}.sidebar.sidebar--desktop-compact .sidebar-header__title-row{justify-content:center;margin-bottom:8px}.sidebar.sidebar--desktop-compact .sidebar-header__title-row .sidebar-brand{width:100%;display:flex;justify-content:center;margin-bottom:0}.sidebar.sidebar--desktop-compact .sidebar-brand__full{display:none}.sidebar.sidebar--desktop-compact .sidebar-brand__compact{display:flex;margin-bottom:0}.sidebar.sidebar--desktop-compact .sidebar-user{justify-content:center}.sidebar.sidebar--desktop-compact .sidebar-user__email{display:none}.sidebar.sidebar--desktop-compact .sidebar-nav-item{justify-content:center;padding-left:10px;padding-right:10px}.sidebar.sidebar--desktop-compact .sidebar-nav-item__label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sidebar.sidebar--desktop-compact .sidebar-nav-item__badge,.sidebar.sidebar--desktop-compact .sidebar-plan-badge__text{display:none}.sidebar.sidebar--desktop-compact .sidebar-plan-badge__dot{display:block;width:10px;height:10px;margin:0 auto;border-radius:999px;border:1px solid transparent}.sidebar.sidebar--desktop-compact .sidebar-plan-badge--basic .sidebar-plan-badge__dot{background:#94a3b873;border-color:#bac6d666}.sidebar.sidebar--desktop-compact .sidebar-plan-badge--pro .sidebar-plan-badge__dot{background:#38bdf8a6;border-color:#38bdf873}.sidebar.sidebar--desktop-compact .sidebar-plan-badge--premium .sidebar-plan-badge__dot{background:#fbbf24bf;border-color:#fbbf2473}.sidebar.sidebar--desktop-compact .sidebar-section--context{align-items:center}.sidebar.sidebar--desktop-compact .sidebar-context-link{justify-content:center;margin-left:0;padding:8px}.sidebar.sidebar--desktop-compact .sidebar-context-link__label{display:none}.sidebar.sidebar--desktop-compact .sidebar-action-link{justify-content:center}.sidebar.sidebar--desktop-compact .sidebar-action-link__text{display:none}}@media(min-width:1280px){.main-content-shell{max-width:900px;margin:0 auto;padding:24px}.main-content-shell:has(.sale-page){max-width:none;margin:0;padding:0 0 32px}}@media(max-height:760px)and (min-width:769px){.main:has(.sale-page){padding-top:20px;padding-bottom:20px}.main:has(.products-page){padding-top:20px;padding-bottom:20px}.sale-page .products-header,.products-page .products-header{margin-bottom:14px}.sale-page .venta-panel{padding:20px 22px}.sale-page .venta-cart-header{margin-bottom:8px}}.main h1{margin:0 0 24px;font-size:clamp(1.5rem,1.25rem + 1.2vw,2.125rem);font-weight:700;letter-spacing:-.03em;color:#0f172a}.products-header{margin:0 0 40px}.products-header h1{margin:0;font-size:clamp(1.5rem,1.25rem + 1.2vw,2.125rem);font-weight:700;letter-spacing:-.03em;color:#0f172a;line-height:1.2}.sale-page{padding:0;height:100%;display:flex;flex-direction:column;min-height:0;overflow:hidden}.sale-page:focus,.sale-page:focus-visible{outline:none}.sale-page .products-header{margin-bottom:20px;flex-shrink:0}.sale-page .products-header h1{font-size:clamp(1.35rem,1.1rem + .8vw,1.75rem)}.products-page .products-header{margin-bottom:20px}.products-page .products-header h1{font-size:clamp(1.35rem,1.1rem + .8vw,1.75rem)}.dashboard-page{color:var(--color-text)}.dashboard-fecha{margin:0 0 28px;font-size:14px;color:#64748b}.cards{display:flex;flex-wrap:wrap;gap:28px;margin-top:8px}.card{background:#fff;padding:28px 30px;border-radius:var(--radius-card, 14px);min-width:160px;flex:1 1 180px;max-width:280px;box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.card h3{margin:0 0 12px;font-size:14px;font-weight:500;letter-spacing:0;text-transform:none;color:#6b7280}.card p{margin:0;font-size:26px;font-weight:700;letter-spacing:-.03em;color:#111827;line-height:1.15}.dashboard-appointments{margin-top:36px;display:grid;grid-template-columns:1fr;gap:24px}.dashboard-appointments-group{background:#fff;border:1px solid var(--color-border);border-radius:14px;padding:24px;box-shadow:var(--shadow-card)}.dashboard-appointments-group h3{margin:0 0 14px;font-size:18px;font-weight:500;color:#1f2937}.dashboard-appointments-group p{margin:0;color:#6b7280;font-size:14px}.dashboard-appointments-list{display:flex;flex-direction:column;gap:14px}.dashboard-appointments-item{display:grid;grid-template-columns:180px 1fr 1fr 110px;gap:10px;align-items:center;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg);font-size:13px;color:var(--color-text);transition:background var(--transition)}.dashboard-appointments-item:hover{background:var(--color-row-hover)}.app-loading{width:220px}.app-loading p{margin:0;font-size:14px;font-weight:500;color:#6b7280}.readonly-banner{background:#fef3c7;color:#92400e;padding:12px 16px;border-radius:var(--radius-control);margin-bottom:28px;font-size:14px;font-weight:600;border:1px solid #fde68a}.table-wrap{width:100%;margin-top:20px;overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;min-width:400px;background:var(--color-card);border-collapse:collapse}thead th{background:var(--color-table-header);color:var(--color-text);font-weight:600;font-size:13px}th,td{padding:12px 14px;border-bottom:1px solid var(--color-border);text-align:left}tbody tr{background:var(--color-card);transition:background var(--transition)}tbody tr:hover{background:var(--color-row-hover)}.venta{display:flex;gap:16px;margin-top:0;align-items:flex-start;min-height:0}.venta-panel{flex:1;min-width:0;min-height:0;background:#fff;color:var(--color-text);padding:32px 34px;border-radius:var(--radius-card, 14px);box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.sale-page .venta-panel{padding:24px 26px}.venta-panel--products{flex:7;display:flex;flex-direction:column;min-height:0}.venta-sidebar{flex:3;min-width:0;display:flex;flex-direction:column;min-height:0}.venta-sidebar__sticky{flex:1;display:flex;flex-direction:column;gap:16px;min-height:0}.venta-panel__title{margin:0 0 10px;font-size:20px;font-weight:600;color:var(--color-section-title);letter-spacing:-.02em}.venta-cart-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.sale-page .venta-cart-header{margin-bottom:10px}.venta-cart-header .venta-panel__title{margin:0;flex:1;min-width:0}.venta-cart-clear-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin:0;padding:0;border:none;border-radius:var(--btn-radius);background:transparent;color:#9ca3af;cursor:pointer;transition:color var(--btn-transition),background var(--btn-transition),opacity var(--btn-transition)}.venta-cart-clear-btn svg{display:block;width:22px;height:22px}.venta-cart-clear-btn:hover:not(:disabled){color:#ef4444;background:#ef444414}.venta-cart-clear-btn:focus-visible{outline:2px solid rgba(239,68,68,.45);outline-offset:2px}.venta-cart-clear-btn:disabled,.venta-cart-clear-btn:disabled:hover{background:transparent!important;color:var(--btn-disabled-color)!important;opacity:.45;cursor:not-allowed;pointer-events:none}.venta-search-input{width:100%;padding:16px 18px;margin-bottom:10px;border-radius:var(--radius-control);border:1px solid var(--color-input-border);font-size:18px;color:#111827;background:#fff;min-height:58px;box-sizing:border-box;transition:border-color var(--transition),box-shadow var(--transition)}.venta-panel .search-input-wrap{margin-bottom:8px}.venta-panel .search-input-wrap .venta-search-input{margin-bottom:0}.venta-search-input::placeholder{color:var(--color-placeholder);font-size:17px}.venta-search-input:hover:not(:disabled){border-color:#cbd5e1}.venta-search-input:focus,.venta-search-input:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--input-focus-shadow)}.venta-search-hint{margin:0 0 18px;font-size:13px;line-height:1.45;color:var(--color-text-secondary)}.venta-search-hint strong{color:var(--color-text);font-weight:600}.venta-status{margin:0;font-size:14px;color:var(--color-text-secondary)}.venta-cart-empty{margin:0 0 12px;font-size:14px;color:var(--color-text-secondary)}.venta-panel--cart{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}.venta-cart-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:4px;margin-right:-4px;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.venta-cart-body::-webkit-scrollbar{width:6px}.venta-cart-body::-webkit-scrollbar-track{background:transparent}.venta-cart-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.venta-cart-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.venta-panel--actions,.venta-acciones{flex:0 0 auto;padding:16px 20px;flex-shrink:0}.venta-panel--cart-soft-exit .carrito-item,.venta-panel--cart-soft-exit .carrito-total,.venta-panel--cart-soft-exit .venta-checkout-btn{opacity:0;transform:translateY(-3px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}.venta-panel--cart-soft-exit .venta-cart-clear-btn{opacity:0;transition:opacity .28s ease;pointer-events:none}.venta-cart-empty--soft-in{animation:venta-cart-empty-soft-in .48s ease both}@keyframes venta-cart-empty-soft-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.venta-panel--cart-soft-exit .carrito-item,.venta-panel--cart-soft-exit .carrito-total,.venta-panel--cart-soft-exit .venta-checkout-btn{transition-duration:.06s;transform:none}.venta-panel--cart-soft-exit .venta-cart-clear-btn{transition-duration:.06s}.venta-cart-empty--soft-in{animation:venta-cart-empty-soft-in-reduced .12s ease both}@keyframes venta-cart-empty-soft-in-reduced{0%{opacity:0}to{opacity:1}}}.venta .productos-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:8px;margin:0 -4px 0 0;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.venta .productos-list::-webkit-scrollbar{width:6px}.venta .productos-list::-webkit-scrollbar-track{background:transparent}.venta .productos-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.venta .productos-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.venta-search-group__title{padding:10px 12px 6px;margin:0 -8px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}.venta-search-group__title--similar-code{color:#9a6b2f}.venta-search-similar-notice{margin:4px -8px 8px;padding:0 12px;color:#64748b;font-size:13px;font-weight:500;line-height:1.35}.venta-search-group__divider+.venta-search-group__title{padding-top:4px}.venta-search-group__divider{height:0;margin:14px 8px 10px;border:0;border-top:1px solid rgb(15 23 42 / .08)}.venta-product-row__title-line{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px}.venta-product-row__title-line .venta-product-row__title{margin-bottom:0;flex:1;min-width:0}.venta-product-row__exact-mark{flex-shrink:0;margin-top:1px;font-size:13px;font-weight:600;line-height:1.35;color:#64748b}.venta-product-row__similar-badge{flex-shrink:0;align-self:flex-start;padding:3px 8px;border-radius:999px;background:#fff7df;color:#8a5b16;font-size:11px;font-weight:700;line-height:1.2}.venta-product-row--exact-code{background:#f8fafcf2;box-shadow:inset 3px 0 #94a3b8;border-radius:10px;border-bottom-color:transparent}.venta-product-row--similar-code{background:#fffbeb61;box-shadow:inset 2px 0 #f6c96b;border-radius:10px;border-bottom-color:transparent}.venta-product-row--exact-code.product-form__combobox-option--active{background:#e0f2fe;box-shadow:inset 3px 0 #38bdf8}.venta-product-row--exact-code.product-form__combobox-option--active .venta-product-row__exact-mark{color:#0369a1}.venta-product-row__code-line{margin:0 0 8px;font-size:13px;line-height:1.35;color:#64748b}.venta-product-row__code-label{font-weight:500;color:#94a3b8}.venta-product-row__similar-hint{color:#9a6b2f;font-weight:600}.venta .search-highlight-hit,.products-list-card .search-highlight-hit{padding:0;margin:0;font-weight:600;color:#1e40af;background:#3b82f61f;border-radius:3px}.venta-product-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 14px;margin:0 -8px;border-bottom:1px solid var(--color-border);position:relative;isolation:isolate;transition:all var(--transition)}.venta-product-row:focus,.venta-product-row:focus-visible,.carrito-item:focus,.carrito-item:focus-visible{outline:none}.venta-product-row:last-child{border-bottom:none}.venta-product-row:has(+.venta-search-group__divider){border-bottom-color:transparent}.venta-product-row.product-form__combobox-option--active{background:#e0f2fe;color:#0c4a6e;box-shadow:inset 3px 0 #38bdf8;border-radius:10px;border-bottom-color:transparent}.venta-product-row.product-form__combobox-option--active .venta-product-row__title,.venta-product-row.product-form__combobox-option--active .venta-product-row__stats,.venta-product-row.product-form__combobox-option--active .venta-product-row__price{color:#0c4a6e}.venta-product-row.product-form__combobox-option--active .venta-product-row__stock{color:#0369a1}.venta-product-row--similar-code.product-form__combobox-option--active{background:#e0f2fe;color:#0c4a6e;box-shadow:inset 3px 0 #38bdf8}.venta-product-row--similar-code.product-form__combobox-option--active .venta-product-row__title,.venta-product-row--similar-code.product-form__combobox-option--active .venta-product-row__stats,.venta-product-row--similar-code.product-form__combobox-option--active .venta-product-row__price{color:#0c4a6e}.venta-product-row--match{background:#e0f2fe;border-radius:10px;margin-bottom:4px;border-bottom:none}@keyframes venta-flash-surface{0%{opacity:1}40%{opacity:.82}to{opacity:0}}.venta-product-row--flash-add:after{content:"";position:absolute;inset:-6px -10px;border-radius:12px;background:#10b9813d;pointer-events:none;z-index:0;opacity:0;animation:venta-flash-surface .52s ease-out forwards}.venta-product-row--flash-add>*{position:relative;z-index:1}.venta-product-row__body{flex:1;min-width:0}.venta-product-row__jump{width:100%;border:0;margin:0;padding:0;text-align:left;background:transparent;color:inherit;cursor:pointer}.venta-product-row__title{font-size:17px;font-weight:600;color:#0f172a;line-height:1.35;margin-bottom:8px}.venta-product-row__stats{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 18px;font-size:15px;font-weight:600;color:#0f172a;font-variant-numeric:tabular-nums}.venta-product-row__price{font-size:18px;font-weight:700;color:#0f172a}.venta-product-row__stock{font-size:14px;font-weight:500;color:#64748b}.stock-value{color:inherit}.stock-value--low{color:#b45353;font-weight:600}.venta-product-row__meta{margin-top:8px;font-size:13px;line-height:1.35;color:var(--color-text-secondary)}.venta-product-row .venta-add-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;align-self:center;min-height:44px;padding:0 18px;border-radius:var(--btn-radius);border:1px solid var(--btn-primary-border);background:var(--btn-primary-bg);color:var(--btn-primary-color);cursor:pointer;outline-offset:2px;font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap;transition:all var(--btn-transition);box-shadow:none}.venta-product-row .venta-add-btn:focus-visible{outline:2px solid var(--color-primary)}.venta-product-row .venta-add-btn:hover:not(:disabled){background:var(--btn-primary-hover);color:var(--btn-primary-hover-color);border-color:var(--btn-primary-hover);transform:scale(1.01)}.venta-product-row .venta-add-btn:active:not(:disabled){transform:scale(1)}.carrito-item{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--color-border);position:relative;isolation:isolate;transition:background var(--transition),box-shadow var(--transition)}.carrito-item--active{border-bottom-color:transparent}.carrito-item--active:before{content:"";position:absolute;inset:-4px -8px;border-radius:10px;background:#e0f2fe;box-shadow:inset 3px 0 #38bdf8;pointer-events:none;z-index:0}.carrito-item--active>*{position:relative;z-index:1}.carrito-item--active .carrito-item__name,.carrito-item--active .carrito-item__sub,.carrito-item--active .carrito-item__line{color:#0c4a6e}.carrito-item--active .carrito-item__stock-note,.carrito-item--active .carrito-item__meta{color:#0369a1}.carrito-item--flash-add:after,.carrito-item--flash-remove:after{content:"";position:absolute;inset:-8px -12px;border-radius:12px;pointer-events:none;z-index:0;opacity:0;animation:venta-flash-surface .52s ease-out forwards}.carrito-item--flash-add:after{background:#10b98133}.carrito-item--flash-remove:after{background:#f8717138}.carrito-item--flash-add>*,.carrito-item--flash-remove>*{position:relative;z-index:1}.carrito-item:has(+.carrito-total){border-bottom:none}.venta-cart-body .carrito-item:last-child{border-bottom:none}.carrito-item__body{flex:1;min-width:0}.carrito-item__name{font-size:14px;font-weight:600;color:#0f172a;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.carrito-item__metrics{margin-top:6px;position:relative;isolation:isolate}.carrito-item__metrics--flash-remove:after{content:"";position:absolute;inset:-6px -8px;border-radius:12px;pointer-events:none;z-index:0;opacity:0;background:#f8717138;animation:venta-flash-surface .52s ease-out forwards}.carrito-item__metrics--flash-add:after{content:"";position:absolute;inset:-6px -8px;border-radius:12px;pointer-events:none;z-index:0;opacity:0;background:#10b98133;animation:venta-flash-surface .52s ease-out forwards}.carrito-item__metrics--flash-remove>*,.carrito-item__metrics--flash-add>*{position:relative;z-index:1}.carrito-item__line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:8px;margin-top:0;font-size:13px;font-weight:500;color:#475569;font-variant-numeric:tabular-nums}.carrito-item__sub{font-weight:600;color:#0f172a;white-space:nowrap}.carrito-item__stock-note{margin-top:6px;font-size:13px;color:var(--color-text-secondary)}.carrito-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:24px;margin-bottom:0;padding-top:24px;border-top:1px solid var(--color-border);gap:12px}.venta-panel--actions .carrito-total{margin-top:0;padding-top:0;border-top:none;gap:8px}.carrito-total__label{font-size:14px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.carrito-total__amount{font-size:clamp(2rem,1.65rem + 1.2vw,2.25rem);font-weight:800;letter-spacing:-.03em;color:#020617;font-variant-numeric:tabular-nums;line-height:1.1}.venta-checkout-btn{margin-top:16px;width:100%;min-height:56px;padding:16px 20px;border:none;border-radius:var(--btn-radius);background:var(--btn-disabled-bg);color:var(--btn-disabled-color);cursor:not-allowed;font-weight:600;font-size:18px;letter-spacing:-.01em;transition:all var(--btn-transition);box-shadow:none}.venta-checkout-btn--ready:not(:disabled){background:var(--btn-primary-bg);color:var(--btn-primary-color);border:1px solid var(--btn-primary-border);cursor:pointer;box-shadow:none}.venta-checkout-btn--ready:not(:disabled):hover{background:var(--btn-primary-hover);color:var(--btn-primary-hover-color);border-color:var(--btn-primary-hover);box-shadow:none;transform:scale(1.01)}.venta-checkout-btn--ready:not(:disabled):active{transform:scale(1)}.venta-checkout-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.venta-checkout-btn--keyboard-active{outline:2px solid var(--color-primary);outline-offset:2px}.venta-checkout-btn:disabled{pointer-events:none}.carrito-remove{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 9px;border-radius:var(--btn-radius);border:1px solid var(--btn-danger-border);background:var(--btn-danger-bg);color:var(--btn-danger-color);cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap;transition:all var(--btn-transition);box-shadow:none}.carrito-remove:hover:not(:disabled){background:var(--btn-danger-hover);color:var(--btn-danger-color);border-color:var(--btn-danger-hover)}.carrito-remove:active:not(:disabled){transform:scale(.99)}.btn{margin-top:20px;padding:11px 22px;background:var(--btn-secondary-bg);color:var(--btn-secondary-color);border:none;border-radius:var(--btn-radius);cursor:pointer;font-weight:600;font-size:15px;transition:all var(--btn-transition);box-shadow:none}.btn:hover:not(:disabled){background:var(--btn-secondary-hover);color:var(--btn-secondary-color)}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.login-container{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background:linear-gradient(160deg,#e8eef5 0%,var(--color-bg) 45%,#dbeafe 100%)}.login-card{background:var(--color-card);padding:40px;border-radius:var(--radius-card);width:380px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.login-card h2{text-align:center;margin:0 0 12px;font-size:18px;font-weight:500;color:#1f2937;letter-spacing:-.01em}.login-card .login-reset-subtitle{margin:-6px 0 14px;text-align:center;font-size:13px;line-height:1.45;color:#64748b}.login-reset-redirect-hint{margin:0;font-size:12px;line-height:1.45;color:#64748b;text-align:center}.login-reset-success-stack{display:flex;flex-direction:column;gap:12px}.login-card input{padding:12px 14px;border-radius:var(--radius-control);border:1px solid var(--color-input-border);font-size:14px;background:#fff;color:#111827;width:100%}.login-card input::placeholder{color:var(--color-placeholder)}.login-card input:disabled{cursor:not-allowed;background:#f8fafc;color:#94a3b8;border-color:#e2e8f0;-webkit-text-fill-color:#94a3b8}.login-card .login-form>button{margin-top:8px;padding:12px 16px;border-radius:var(--btn-radius);border:none;background:var(--btn-secondary-bg);color:var(--btn-secondary-color);font-weight:600;cursor:pointer;transition:all var(--btn-transition);box-shadow:none}.login-card .login-form>button:hover:not(:disabled){background:var(--btn-secondary-hover);color:var(--btn-secondary-color)}.login-card .login-form>button:disabled{opacity:.5;cursor:not-allowed}.login-card button.toggle-password{margin-top:0;padding:6px;background:transparent;color:#6b7280;font-weight:400}.login-card button.toggle-password:hover{background:transparent;color:#111827}.login-card button.toggle-password:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.login-form{display:flex;flex-direction:column;gap:16px}.login-auth-error{display:block;margin:-4px 0 0}.login-help-text{margin:0;font-size:13px;line-height:1.45;color:#64748b;text-align:center}.login-link-btn{margin:4px auto 0;padding:8px 4px;border:none;background:none;font-family:inherit;font-size:13px;font-weight:600;color:var(--color-primary, #2563eb);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#2563eb59}.login-link-btn:hover{color:#1d4ed8;text-decoration-color:#1d4ed880}.login-link-btn:focus-visible{outline:2px solid var(--color-primary, #2563eb);outline-offset:2px;border-radius:4px}.login-link-btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.login-success-banner{margin:0;padding:14px;border-radius:var(--radius-control);background:#ecfdf5;border:1px solid rgba(16,185,129,.28);text-align:left}.login-success-banner__title{margin:0 0 8px;font-size:14px;font-weight:600;color:#065f46;line-height:1.35}.login-success-banner__title--compact{margin:0}.login-reset-banner{margin:0;padding:10px 12px;border-radius:var(--radius-control);font-size:13px;line-height:1.4}.login-reset-banner--error{color:#991b1b;background:#fef2f2;border:1px solid rgba(220,38,38,.28)}.login-success-banner__sub{margin:0;font-size:12px;line-height:1.45;color:#047857}.login-success-banner__hint{margin:10px 0 0;font-size:12px;line-height:1.45;color:#059669}.login-forgot-success-wrap{display:flex;flex-direction:column;gap:1.25rem}.login-forgot-remote{margin:0;padding:10px 12px;border-radius:var(--radius-control);font-size:13px;line-height:1.4}.login-forgot-remote--notfound{color:#92400e;background:#fffbeb;border:1px solid rgba(245,158,11,.35)}.login-forgot-remote--general{color:#991b1b;background:#fef2f2;border:1px solid rgba(220,38,38,.28)}.login-forgot-support{padding-top:1.1rem;margin-top:.25rem;border-top:1px solid rgba(226,232,240,.9)}.login-forgot-support__lead{margin:0 0 .55rem;font-size:12px;font-weight:600;color:#64748b;letter-spacing:.01em}.login-forgot-support__block{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}.login-forgot-support__wa{display:inline-flex;align-items:center;gap:.4rem;font-size:13px;font-weight:500;line-height:1.4;color:#64748b;text-decoration:none;border-radius:4px}.login-forgot-support__wa:hover{color:#5a9a8f;text-decoration:underline;text-underline-offset:3px}.login-forgot-support__wa:focus-visible{outline:2px solid rgba(100,116,139,.4);outline-offset:2px}.login-forgot-support__wa-icon{flex-shrink:0;display:block}.login-forgot-support__email-line{margin:0;font-size:12px;line-height:1.55;font-weight:400;color:#64748b}.login-forgot-support__mail-icon{display:inline-block;width:15px;height:15px;margin-right:.35em;vertical-align:-.2em;color:#94a3b8}.login-forgot-support__email{font-weight:500;color:#4a5f78;text-decoration:none;word-break:normal;overflow-wrap:anywhere}.login-forgot-support__email:hover{color:#3d6b9e;text-decoration:underline;text-underline-offset:2px}.login-forgot-support__email:focus-visible{outline:2px solid rgba(74,111,165,.45);outline-offset:2px;border-radius:2px}.input-group{width:100%}.input-group input{width:100%;padding:12px 14px;border-radius:var(--radius-control);border:1px solid var(--color-input-border);font-size:14px;background:#fff;color:#111827}.input-group select{width:100%;padding:12px 38px 12px 14px;border-radius:var(--radius-control);border:1px solid var(--color-input-border);font-size:14px;background:#fff;color:#111827;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#6b7280 50%),linear-gradient(135deg,#6b7280 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.error{font-size:12px;color:var(--color-danger);margin-top:4px}.password-container{width:100%}.password-input-wrap{position:relative;width:100%}.password-container input{width:100%;padding:12px 40px 12px 14px;border-radius:var(--radius-control);border:1px solid var(--color-input-border);font-size:14px;background:#fff;color:#111827}.toggle-password{position:absolute;right:10px;top:50%;transform:translateY(-50%);margin:0;padding:6px;border:none;background:transparent;cursor:pointer;color:#6b7280;border-radius:6px;transition:color var(--transition),background var(--transition)}.toggle-password:hover{color:#111827;background:var(--color-secondary-btn)}.toggle-password:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.modal-overlay{position:fixed;inset:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:100}.modal-card{background:#fff;padding:24px;border-radius:14px;box-shadow:var(--shadow-card);border:1px solid var(--color-border);min-width:300px}.modal-card p{margin:0 0 20px;font-size:16px;color:#111827}.modal-card__title{margin:0 0 8px;font-size:17px;font-weight:600;color:#111827;line-height:1.3;letter-spacing:-.02em}.modal-card__message{margin:0 0 20px;font-size:15px;line-height:1.5;color:var(--color-text-secondary)}.modal-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.modal-btn{padding:10px 18px;border-radius:var(--btn-radius);border:1px solid transparent;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--btn-transition);box-shadow:none}.modal-btn-cancel{background:transparent;border:1px solid var(--btn-outline-border);color:var(--btn-outline-color)}.modal-btn-cancel:hover:not(:disabled){background:var(--btn-outline-hover-bg);color:var(--btn-outline-color)}.modal-btn-confirm--secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-color)}.modal-btn-confirm--secondary:hover:not(:disabled){background:var(--btn-secondary-hover);color:var(--btn-secondary-color)}.modal-btn-confirm--primary{background:var(--btn-primary-bg);color:var(--btn-primary-color);border:1px solid var(--btn-primary-border)}.modal-btn-confirm--primary:hover:not(:disabled){background:var(--btn-primary-hover);color:var(--btn-primary-hover-color);border-color:var(--btn-primary-hover);transform:scale(1.01)}.modal-btn-confirm--primary:active:not(:disabled){transform:scale(1)}.modal-btn-confirm--danger{background:var(--btn-danger-bg);color:var(--btn-danger-color);border:1px solid var(--btn-danger-border)}.modal-btn-confirm--danger:hover:not(:disabled){background:var(--btn-danger-hover);color:var(--btn-danger-color);border-color:var(--btn-danger-hover)}@media(max-width:768px){.menu-toggle:not(.menu-toggle--fab){display:none}.menu-toggle--fab{display:flex;z-index:94}.sidebar-overlay{display:block;pointer-events:none;opacity:0}.sidebar-overlay.sidebar-overlay-visible{pointer-events:auto;opacity:1}.sidebar{position:fixed;top:0;left:0;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-height:0;z-index:100;transform:translate(-100%);transition:transform .2s ease-out;box-shadow:none}.sidebar.sidebar-open{transform:translate(0);box-shadow:8px 0 32px #00000040}.sidebar{padding-top:56px}.sidebar-close{display:flex}.main{width:100%;margin-left:0;margin-right:0;padding:60px 16px 16px;max-width:none}.main h1{font-size:clamp(1.35rem,4vw,1.65rem);margin-bottom:18px}.products-header{margin:0 0 28px}.products-header h1{font-size:clamp(1.35rem,4vw,1.65rem)}.cards{gap:12px}.card{width:100%;min-width:0;max-width:none}.dashboard-appointments-item{grid-template-columns:1fr;gap:6px}.venta{flex-direction:column;gap:20px;margin-top:0;align-items:stretch}.venta-panel{min-width:0;width:100%;box-sizing:border-box;padding:24px 22px}.venta-sidebar{min-width:0;width:100%}.venta-sidebar__sticky{position:static;max-height:none}.login-card{padding:28px 24px}.modal-card{margin:16px;max-width:calc(100vw - 32px)}}@media(prefers-reduced-motion:reduce){.venta-product-row .venta-add-btn:hover:not(:disabled),.venta-product-row .venta-add-btn:active:not(:disabled),.venta-checkout-btn--ready:not(:disabled):hover,.venta-checkout-btn--ready:not(:disabled):active,.carrito-remove:active:not(:disabled),.modal-btn-confirm--primary:hover:not(:disabled),.modal-btn-confirm--primary:active:not(:disabled){transform:none}}.toast-host{position:fixed;z-index:10000;top:1rem;right:1rem;left:auto;display:flex;flex-direction:column;gap:.55rem;align-items:flex-end;pointer-events:none;max-width:min(22rem,calc(100vw - 2rem))}@media(max-width:640px){.toast-host{left:50%;right:auto;transform:translate(-50%);align-items:center;max-width:min(22rem,calc(100vw - 1.5rem))}}.toast-item{pointer-events:auto;display:flex;align-items:flex-start;gap:.65rem;width:100%;padding:.75rem .65rem .75rem .85rem;border-radius:12px;border:1px solid var(--toast-border, rgba(15, 23, 42, .08));background:var(--toast-bg);color:var(--toast-text);box-shadow:0 10px 28px -8px #0f172a1f,0 4px 10px -4px #0f172a0f;border-left:4px solid var(--toast-accent);animation:toast-in .32s ease forwards}@keyframes toast-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@media(max-width:640px){@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}}.toast-item--no-icon{gap:0}.toast-item__icon{flex-shrink:0;width:1.35rem;height:1.35rem;display:flex;align-items:center;justify-content:center;font-size:.85rem;line-height:1;margin-top:.05rem;color:var(--toast-accent)}.toast-item__message{margin:0;flex:1;min-width:0;font-size:.875rem;line-height:1.45;font-weight:500}.toast-item__close{flex-shrink:0;margin:-.15rem -.1rem -.15rem 0;padding:.2rem .35rem;border:none;background:transparent;color:var(--toast-muted);font-size:1.15rem;line-height:1;cursor:pointer;border-radius:6px;transition:all .15s ease}.toast-item__close:hover{background:#0f172a0f;color:var(--toast-text)}.toast-item__close:focus-visible{outline:2px solid var(--toast-accent);outline-offset:2px}.toast-item--success{--toast-bg: #f0fdf4;--toast-text: #14532d;--toast-accent: #16a34a;--toast-border: rgba(22, 163, 74, .2);--toast-muted: rgba(20, 83, 45, .55)}.toast-item--error{--toast-bg: #fef2f2;--toast-text: #7f1d1d;--toast-accent: #dc2626;--toast-border: rgba(220, 38, 38, .2);--toast-muted: rgba(127, 29, 29, .55)}.toast-item--warning{--toast-bg: #fffbeb;--toast-text: #78350f;--toast-accent: #d97706;--toast-border: rgba(217, 119, 6, .22);--toast-muted: rgba(120, 53, 15, .55)}.toast-item--info{--toast-bg: #eff6ff;--toast-text: #1e3a8a;--toast-accent: #3b82f6;--toast-border: rgba(59, 130, 246, .22);--toast-muted: rgba(30, 58, 138, .55)}.plans-modal-backdrop{position:fixed;inset:0;z-index:2000;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:plans-modal-backdrop-in .2s ease}@keyframes plans-modal-backdrop-in{0%{opacity:0}to{opacity:1}}.plans-modal{position:relative;width:100%;max-width:26.5rem;max-height:min(90vh,42rem);overflow-y:auto;padding:1.35rem 1.35rem 1.25rem;border-radius:14px;background:#fff;color:#0f172a;border:1px solid rgba(15,23,42,.08);box-shadow:0 24px 48px -20px #0f172a38,0 10px 24px -10px #0f172a1f;animation:plans-modal-in .22s ease}@keyframes plans-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.plans-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem;padding-right:.25rem}.plans-modal__title{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;color:#0f172a}.plans-modal__subtitle{margin:.35rem 0 0;font-size:.8125rem;line-height:1.4;color:#64748b}.plans-modal__intro{margin:.65rem 0 0;max-width:34em;font-size:.8125rem;line-height:1.45;color:#475569}.plans-modal__close{flex-shrink:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;margin:-.25rem -.35rem 0 0;border:none;border-radius:8px;background:#f1f5f9;color:#475569;font-size:1.25rem;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.plans-modal__close:hover{background:#e2e8f0;color:#0f172a}.plans-modal__close:focus-visible{outline:2px solid var(--color-primary, #2563eb);outline-offset:2px}.plans-modal__tiers{display:flex;flex-direction:column;gap:.75rem}.plans-modal-tier{padding:.85rem 1rem;border-radius:10px;border:1px solid #e2e8f0;background:#fafbfc}.plans-modal-tier--current{border-color:#2563eb59;background:#eff6ff;box-shadow:0 0 0 1px #2563eb14}.plans-modal-tier__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.plans-modal-tier__name{font-size:.9375rem;font-weight:700;color:#0f172a}.plans-modal-tier__badge{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .45rem;border-radius:6px;background:#2563eb1f;color:#1d4ed8}.plans-modal-tier__list{margin:0;padding-left:1.1rem;font-size:.8125rem;line-height:1.5;color:#475569}.plans-modal-tier__list li+li{margin-top:.2rem}.plans-modal-tier--premium-soon{opacity:.52}.plans-modal-tier--premium-soon--yours{opacity:1}.plans-modal-tier--premium-soon:not(.plans-modal-tier--premium-soon--yours) .plans-modal-tier__name{color:#64748b}.plans-modal-tier__badge--soon{background:#64748b29;color:#64748b}.plans-modal-tier__soon-msg{margin:0;font-size:.8125rem;line-height:1.45;color:#94a3b8;font-style:italic}.plans-modal__cta{margin-top:1.15rem;padding-top:1rem;border-top:1px solid #e2e8f0}.plans-modal__cta-btn{width:100%;padding:.75rem 1.1rem;border:none;border-radius:var(--btn-radius, 10px);font-family:inherit;font-size:.9375rem;font-weight:600;cursor:pointer;transition:background .15s ease,filter .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:.55rem}.plans-modal__cta-btn--whatsapp{background:#25d366;color:#fff;box-shadow:0 1px 2px #0f172a14}.plans-modal__cta-btn--whatsapp:hover{background:#20bd5a;filter:brightness(.98)}.plans-modal__cta-btn--whatsapp:focus-visible{outline:2px solid #128c7e;outline-offset:2px}.plans-modal__cta-wa-icon{flex-shrink:0;display:block}.plans-modal__cta-support{margin:.5rem 0 0;font-size:.75rem;line-height:1.4;color:#94a3b8;text-align:center;font-weight:400}.plans-modal__cta-email{margin-top:1rem;padding-top:.85rem;border-top:1px solid #f1f5f9;text-align:center}.plans-modal__cta-email-lead{margin:0;font-size:.75rem;line-height:1.4;color:#64748b}.plans-modal__cta-email-link{display:inline-block;margin-top:.35rem;font-size:.72rem;font-weight:500;color:#4a6fa5;text-decoration:underline;text-underline-offset:2px;word-break:break-all}.plans-modal__cta-email-link:hover{color:#2563eb}.plans-modal__cta-email-link:focus-visible{outline:2px solid var(--color-primary, #2563eb);outline-offset:2px;border-radius:4px}.plans-modal__foot{margin:.85rem 0 0;font-size:.75rem;line-height:1.45;color:#64748b;text-align:center}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(1.25rem,3vw,2rem) 1.25rem;max-width:22rem;margin-inline:auto;color:var(--color-text)}.empty-state__icon{font-size:2rem;line-height:1;margin-bottom:.75rem;opacity:.92;-webkit-user-select:none;user-select:none}.empty-state__title{margin:0 0 .4rem;font-size:1rem;font-weight:600;color:var(--color-text);letter-spacing:-.02em;line-height:1.3}.empty-state--loading .empty-state__title{margin-bottom:0}.empty-state__spinner-wrap{display:flex;align-items:center;justify-content:center;margin-bottom:.85rem}.empty-state__spinner{display:block;width:40px;height:40px;border-radius:999px;border:3px solid #e2e8f0;border-top-color:var(--color-primary, #3b82f6);animation:empty-state-spin .75s linear infinite}@keyframes empty-state-spin{to{transform:rotate(360deg)}}.empty-state__desc{margin:0 0 1rem;font-size:.875rem;line-height:1.5;color:var(--color-text-secondary);max-width:20rem}.empty-state__desc:last-child{margin-bottom:0}.empty-state__btn{margin-top:.15rem;padding:.55rem 1.1rem;border-radius:var(--btn-radius);font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--btn-transition)}.empty-state__btn--primary{border:1px solid var(--btn-primary-border);background:var(--btn-primary-bg);color:var(--btn-primary-color)}.empty-state__btn--primary:hover{background:var(--btn-primary-hover);color:var(--btn-primary-hover-color);border-color:var(--btn-primary-hover)}.empty-state__btn--secondary{border:1px solid var(--btn-outline-border);background:transparent;color:var(--btn-outline-color)}.empty-state__btn--secondary:hover{background:var(--btn-outline-hover-bg);color:var(--btn-outline-color)}.empty-state--compact{padding:1rem .75rem;max-width:none;margin-inline:0}.empty-state--compact .empty-state__icon{font-size:1.65rem;margin-bottom:.5rem}.empty-state--compact .empty-state__title{font-size:.9375rem}.empty-state--compact .empty-state__desc{font-size:.8125rem;margin-bottom:.85rem}.empty-state--in-card{padding:2rem 1rem 2.25rem;max-width:none}.empty-state--in-card.empty-state--loading{padding:2.5rem 1rem 2.75rem;min-height:11rem;justify-content:center}.empty-state--list{margin:.5rem auto 1rem}.sale-item{font-family:inherit;color:var(--color-text)}.sale-item--compact{width:100%;border:1px solid var(--color-border);border-radius:12px;background:#fff;padding:.7rem .85rem;display:grid;grid-template-columns:1fr auto;gap:.55rem .9rem;align-items:center;text-align:left;cursor:pointer;transition:transform var(--btn-transition),box-shadow var(--btn-transition),border-color var(--btn-transition),background var(--btn-transition)}.sale-item--compact:hover{transform:translateY(-1px);background:#fafbfc;border-color:#dbe4ef;box-shadow:0 8px 20px -14px #0f172a38}.sale-item__compact-main{min-width:0;display:flex;flex-direction:column;gap:.16rem}.sale-item__compact-title{font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sale-item__compact-meta{font-size:.75rem;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sale-item__compact-right{display:flex;align-items:baseline;gap:.5rem;font-variant-numeric:tabular-nums}.sale-item__compact-total{font-size:.92rem;font-weight:700;color:#0f172a}.sale-item__compact-time{font-size:.8rem;color:var(--color-text-secondary)}.sale-item--full{border:1px solid var(--color-border);border-radius:12px;overflow:visible;background:#fff;transition:border-color .22s ease,box-shadow .22s ease}.sale-item--highlight{animation:sale-item-highlight-pulse 1.35s ease-out 1}@keyframes sale-item-highlight-pulse{0%{box-shadow:0 0 #3b82f659}40%{box-shadow:0 0 0 6px #3b82f61f}to{box-shadow:0 0 #3b82f600}}.sale-item--full:hover{border-color:#dbe4ef}.sale-item--expanded{border-color:#cbd5e1;box-shadow:0 1px 3px #0f172a0f}.sale-item__header-row{display:flex;align-items:stretch;width:100%;min-width:0;overflow:visible}.sale-item__header{flex:1;min-width:0;width:auto;border:none;background:#f8fafc;color:inherit;padding:.78rem .95rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem;text-align:left;cursor:pointer;transition:background .2s ease}.sale-item__header:hover{background:#eff6ff}.sale-item__share{flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:42px;padding:0 .35rem;border:none;border-left:1px solid #e2e8f0;background:#f8fafc;color:#334155;cursor:pointer;transition:background .2s ease,color .2s ease}.sale-item__share:hover{background:#eff6ff;color:var(--color-primary, #2563eb)}.sale-item__share:focus-visible{outline:2px solid var(--color-primary, #2563eb);outline-offset:-2px;z-index:1}.sale-item__share:disabled{opacity:.55;cursor:wait}.sale-item__share--plan-gated{opacity:.5;cursor:not-allowed}.sale-item__share--plan-gated:hover{background:#f8fafc;color:#334155}.sale-item--expanded .sale-item__share--plan-gated:hover{background:#f1f5f9}.sale-item__share-ungated{display:contents}.sale-item__share-gate{position:relative;flex-shrink:0;display:flex;align-self:stretch}.sale-item__share-gate-tooltip{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:11.5rem;max-width:min(16.5rem,calc(100vw - 2rem));padding:.55rem .7rem;border-radius:10px;border:1px solid rgba(15,23,42,.1);background:#fff;color:#0f172a;box-shadow:0 10px 28px -8px #0f172a24,0 4px 10px -4px #0f172a14;font-size:.8125rem;line-height:1.35;font-weight:500;text-align:left;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s ease,visibility .14s ease}.sale-item__share-gate-tooltip-title{display:block;font-weight:600;color:#0f172a;letter-spacing:-.01em}.sale-item__share-gate-tooltip-sub{display:block;margin-top:.28rem;font-size:.75rem;font-weight:400;color:#64748b;line-height:1.35}@media(hover:hover)and (pointer:fine){.sale-item__share-gate:hover .sale-item__share-gate-tooltip,.sale-item__share-gate:focus-within .sale-item__share-gate-tooltip{opacity:1;visibility:visible}}.sale-item__share-icon{display:block;width:18px;height:18px;flex-shrink:0}.sale-item--expanded .sale-item__share{background:#f1f5f9;border-left-color:#e2e8f0}.sale-item__header-grid{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1.4fr) auto minmax(0,1fr);gap:.6rem 1rem;align-items:baseline}.sale-item__date{font-size:.81rem;font-weight:500;color:#64748b;font-variant-numeric:tabular-nums}.sale-item__count{justify-self:center;white-space:nowrap;font-size:.81rem;font-weight:600;color:#475569}.sale-item__total{justify-self:end;font-size:.95rem;font-weight:700;color:#0f172a;font-variant-numeric:tabular-nums}.sale-item__total-label{font-size:.73rem;font-weight:600;color:#64748b}.sale-item__chevron{color:#64748b;font-size:1rem;line-height:1;transition:transform .22s ease,color .22s ease}.sale-item__chevron--open{transform:rotate(180deg);color:var(--color-primary)}.sale-item__subheader{padding:.48rem .95rem .58rem;border-top:1px solid #f1f5f9;font-size:.82rem;font-weight:600;color:#334155;background:#fff}.sale-item__details-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .24s ease}.sale-item__details-wrap--open{grid-template-rows:1fr}.sale-item__details{min-height:0;overflow:hidden;border-top:1px solid var(--color-border);background:#fff;opacity:0;transform:translateY(-4px);transition:opacity .22s ease,transform .22s ease}.sale-item__details-wrap--open .sale-item__details{opacity:1;transform:translateY(0)}.sale-item__details-head,.sale-item__line{display:grid;grid-template-columns:minmax(0,1.5fr) auto minmax(5rem,1fr);gap:.5rem .75rem;align-items:baseline;padding-inline:1rem}.sale-item__details-head{padding-top:.5rem;padding-bottom:.35rem;font-size:.69rem;font-weight:600;text-transform:uppercase;color:#94a3b8}.sale-item__details-head span:last-child{text-align:right}.sale-item__details-list{padding-bottom:.5rem}.sale-item__line{padding-top:.6rem;padding-bottom:.6rem;border-bottom:1px solid #f1f5f9;font-size:.83rem}.sale-item__line:last-child{border-bottom:none}.sale-item__line-name{font-weight:600;color:#0f172a}.sale-item__line-mid{white-space:nowrap;color:#64748b;font-variant-numeric:tabular-nums}.sale-item__line-sub{text-align:right;font-weight:600;color:#0f172a;font-variant-numeric:tabular-nums}.dashboard-page .products-header.dashboard-header{margin-bottom:.85rem}.dashboard-page .dashboard-fecha{margin-top:0;margin-bottom:1.5rem}.dashboard-plan-hint{margin:-.25rem 0 1.35rem;padding:.65rem .9rem;max-width:26rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.dashboard-plan-hint--empty{margin:1rem auto 1.25rem;max-width:20rem;text-align:center}.dashboard-plan-hint__line{margin:0;font-size:.875rem;font-weight:600;color:#334155;letter-spacing:-.01em}.dashboard-plan-hint__sub{margin:.3rem 0 0;font-size:.8125rem;line-height:1.45;color:#64748b}.dashboard-header{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:0}@media(min-width:640px){.dashboard-header{flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:1rem 1.25rem}}.dashboard-header .dashboard-cta--hero{flex-shrink:0;margin-top:.12em}.dashboard-cta{display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-weight:600;border-radius:var(--btn-radius);cursor:pointer;transition:all var(--btn-transition);border:1px solid transparent}.dashboard-cta--primary{padding:.75rem 1.35rem;font-size:1.05rem;border:1px solid var(--btn-primary-border);background:var(--btn-primary-bg);color:var(--btn-primary-color)}.dashboard-cta--primary:hover{background:var(--btn-primary-hover);color:var(--btn-primary-hover-color);border-color:var(--btn-primary-hover)}.dashboard-cta--hero{padding:.95rem 1.65rem;font-size:1.125rem;box-shadow:0 1px 2px #0f172a0f}.dashboard-cta--secondary{padding:.65rem 1.15rem;font-size:.95rem;background:#fff;color:var(--btn-outline-color);border:1px solid var(--btn-outline-border)}.dashboard-cta--secondary:hover{background:var(--btn-outline-hover-bg)}.dashboard-cards{margin-top:1.25rem}.dashboard-card{text-align:left;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.dashboard-card:hover{transform:translateY(-1px);background:#fafbfc;box-shadow:0 10px 26px -12px #0f172a1f,0 4px 12px -4px #0f172a0f;border-color:#22c55e47}.dashboard-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.dashboard-card--clickable{font:inherit;color:inherit}.dashboard-card__hint{display:block;margin-top:.75rem;font-size:12px;font-weight:500;color:var(--color-text-secondary)}.dashboard-insights{margin-top:1.75rem;padding:1rem 1.15rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-card, 14px)}.dashboard-insights__list{margin:0;padding:0 0 0 1.15rem;display:flex;flex-direction:column;gap:.45rem;font-size:.9rem;font-weight:500;color:#1e3a5f}.dashboard-insights__item{line-height:1.4}.dashboard-recent{margin-top:2rem;padding:1.25rem 1.35rem;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-card, 14px);box-shadow:var(--shadow-card)}.dashboard-recent__title{margin:0 0 8px;font-size:1.05rem;font-weight:600;letter-spacing:-.02em;color:var(--color-section-title)}.dashboard-recent__status{margin:0;padding:.25rem 0 .5rem;font-size:14px;color:var(--color-text-secondary)}.dashboard-recent-empty{padding:.5rem 0 1rem}.dashboard-recent__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.dashboard-recent__row{margin:0}.dashboard-recent__row:last-child{margin-bottom:0}.dashboard-recent__link{margin-top:.85rem;padding:0;font:inherit;font-size:.875rem;font-weight:600;color:var(--color-primary);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.dashboard-recent__link:hover{color:var(--color-primary-hover)}.dashboard-help{margin-top:2.25rem;padding:1.25rem 1.35rem;background:#fafafa;border:1px dashed var(--color-border);border-radius:var(--radius-card, 14px)}.dashboard-help__title{margin:0 0 8px;font-size:1rem;font-weight:600;letter-spacing:-.02em;color:var(--color-section-title)}.dashboard-help__text{margin:0 0 .9rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.45;max-width:40rem}.dashboard-help__btn{padding:.5rem 1rem;font-size:.875rem;font-weight:600;border:1px solid var(--btn-outline-border);background:#fff;color:var(--btn-outline-color);border-radius:var(--btn-radius);cursor:pointer;transition:all var(--btn-transition)}.dashboard-help__btn:hover{background:var(--btn-outline-hover-bg)}.dashboardEmpty{max-width:28rem;margin:0 auto;padding:2rem 1rem 3rem;text-align:center}.dashboardEmpty__icon{font-size:2.5rem;line-height:1;margin-bottom:.75rem}.dashboardEmpty__title{margin:0 0 .5rem;font-size:clamp(1.35rem,3vw,1.75rem);font-weight:700;color:#0f172a}.dashboardEmpty__lead{margin:0 0 .75rem;font-size:.95rem;color:var(--color-text-secondary)}.dashboardEmpty__steps{text-align:left;margin:0 auto 1.5rem;padding-left:1.35rem;max-width:18rem;color:var(--color-text);font-size:.95rem;line-height:1.55}.dashboardEmpty__actions{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;margin-bottom:2rem}.dashboardEmpty .dashboard-help{margin-top:0;text-align:left}@media(max-width:480px){.dashboard-recent .sale-item__compact-right{display:grid;gap:.1rem;justify-items:end}}.creatable-select{position:relative;width:100%}.creatable-select__list{position:absolute;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px 0;list-style:none;max-height:220px;overflow-y:auto;z-index:25;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:var(--shadow-card, 0 4px 14px rgba(15, 23, 42, .12))}.creatable-select__option{width:100%;border:none;background:transparent;text-align:left;padding:10px 12px;font-size:14px;color:#0f172a;font-family:inherit;cursor:pointer}.creatable-select__option:hover{background:#f1f5f9}.creatable-select__option--active{background:#e0f2fe;color:#0c4a6e;box-shadow:inset 3px 0 #38bdf8}.creatable-select__option--create{color:#1d4ed8;font-weight:600;border-top:1px solid var(--color-border);margin-top:2px;padding-top:10px}.creatable-select__empty{padding:10px 12px;font-size:13px;color:var(--color-text-secondary)}.products-page{padding:0;color:var(--color-text)}.products-page__listing-start{margin-top:0;padding-top:0;border-top:0;scroll-margin-top:.75rem}@media(max-width:768px){.products-page__listing-start{scroll-margin-top:4.5rem}}.sales-preset-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;margin-bottom:1rem;padding:.65rem .9rem;font-size:.875rem;font-weight:500;color:#0c4a6e;background:#e0f2fe;border:1px solid rgb(125 211 252 / .55);border-radius:var(--radius-control)}.sales-preset-bar__btn{font:inherit;font-size:.8125rem;font-weight:600;padding:.35rem .75rem;border-radius:var(--btn-radius);border:1px solid var(--btn-outline-border);background:#fff;color:var(--btn-outline-color);cursor:pointer;transition:all var(--btn-transition)}.sales-preset-bar__btn:hover{background:var(--btn-outline-hover-bg)}.sales-list{background:#fff;padding:28px 32px;border-radius:var(--radius-card, 14px);box-shadow:var(--shadow-card);border:1px solid var(--color-border);display:flex;flex-direction:column;gap:12px}.sales-list__search{margin-bottom:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sales-list-status{margin:0;font-size:14px;color:var(--color-text-secondary)}.sales-list-empty{padding:1.5rem 0 2.5rem}.sales-list .empty-state--loading.sales-list-empty{flex:1;min-height:min(42vh,20rem);justify-content:center}.products-create{margin-bottom:20px}.products-section,.products-accordion-section{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card, 14px);box-shadow:var(--shadow-card);margin-bottom:40px}#products-alta-section{margin-bottom:0}.products-accordion-section{overflow:visible}.products-accordion-section__trigger{width:100%;margin:0;padding:24px 28px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px}.products-accordion-section__trigger:hover{background:#f8fafc}.products-accordion-section__trigger:focus-visible{outline:2px solid var(--color-primary-focus-ring);outline-offset:-2px}.products-accordion-section__copy{min-width:0;display:flex;flex-direction:column;gap:4px}.products-accordion-section__title{font-size:18px;font-weight:600;letter-spacing:-.02em;color:var(--color-section-title)}.products-accordion-section__description{font-size:13px;line-height:1.4;color:var(--color-text-secondary)}.products-accordion-section__chevron{flex-shrink:0;width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#f1f5f9;color:#334155;font-size:20px;font-weight:600;line-height:1}.products-accordion-section__panel{padding:0 32px 28px}.products-accordion-section--listing .products-filters--listing{margin-bottom:16px;width:100%}.products-section{padding:28px 32px}.products-section-title{margin:0 0 8px;font-size:18px;font-weight:600;letter-spacing:-.02em;color:var(--color-section-title)}.products-section .products-create{margin-bottom:0}.products-section .products-filters,.products-accordion-section .products-filters{margin-bottom:20px}.products-section .products-table{background:transparent;padding:0;box-shadow:none;border:none}.products-section .products-table table{background:var(--color-card)}.products-section--listing .products-filters--listing{margin-bottom:16px;width:100%}.products-filters--listing .table-search-input{min-height:44px;padding:12px 14px;font-size:15px}.products-filters--listing .products-filter-label{flex:1 1 100%;width:100%;min-width:0}.products-list-card{margin-top:28px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.products-listing-similar-pill{display:inline-flex;align-items:center;width:fit-content;margin-right:8px;padding:2px 7px;border-radius:999px;background:#fff7df;color:#8a5b16;font-size:11px;font-weight:700;line-height:1.2;vertical-align:middle}.products-listing-similar-section-row{width:100%;display:flex;align-items:end;background:#fff}.products-listing-similar-section{width:100%;padding:0 16px 12px}.products-listing-similar-section__notice{margin-bottom:10px;color:#64748b;font-size:13px;font-weight:500;line-height:1.35}.products-listing-similar-section__line{height:1px;margin-bottom:12px;background:#0f172a14}.products-listing-similar-section__title{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#9a6b2f}.products-listing-similar-section--mobile{height:100%;padding:0 0 12px;display:flex;flex-direction:column;justify-content:flex-end}.products-list-card-title{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--color-section-title);letter-spacing:-.02em}.products-list-card-subtitle{margin:-2px 0 10px;font-size:12px;color:var(--color-text-secondary)}.products-load-more{margin-top:20px;padding-top:16px;border-top:1px solid var(--color-border);min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.products-load-more__status{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--color-text-secondary)}.products-load-more__spinner{width:20px;height:20px;border-radius:999px;border:2px solid #e2e8f0;border-top-color:var(--color-primary);animation:products-load-spin .75s linear infinite;flex-shrink:0}@keyframes products-load-spin{to{transform:rotate(360deg)}}.products-load-more__hint{margin:0;max-width:32rem;text-align:center;font-size:13px;line-height:1.45;color:var(--color-text-secondary)}.products-load-more__btn{padding:11px 22px;border:none;border-radius:var(--btn-radius);background:var(--btn-secondary-bg);color:var(--btn-secondary-color);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;box-shadow:none;transition:background var(--btn-transition),opacity var(--btn-transition)}.products-load-more__btn:hover:not(:disabled){background:var(--btn-secondary-hover)}.products-load-more__btn:disabled{cursor:not-allowed}.products-load-more__sentinel{width:100%;height:24px;pointer-events:none;flex-shrink:0}.products-list-card .products-table{background:transparent;padding:0;box-shadow:none;border:none}.products-list-card .products-table table{background:var(--color-card)}.products-filters{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap;width:100%}.products-cost-filters{display:flex;flex-direction:column;gap:12px}.products-filters--cost-row{margin-bottom:0}.products-filters--cost-row .products-filter-label{flex:1 1 0}.products-filters--cost-row .creatable-select{width:100%;min-width:260px}.products-filters--cost-row .creatable-select>input{width:100%;min-width:260px;box-sizing:border-box}.products-filters--cost-actions .products-filter-label{flex:1 1 320px;max-width:460px}.products-filters--cost-actions .products-update-btn{margin-left:auto}.products-filters .products-filter-label:only-child{flex:1 1 100%;width:100%;min-width:0}.products-filter-label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#6b7280;justify-content:flex-end}.products-filter-label select,.products-filter-label input{padding:10px 12px;border:1px solid var(--color-input-border);border-radius:var(--radius-control);background:#fff;color:#111827;font-size:14px;min-width:140px}.products-filter-label select{min-width:260px}.products-filter-label--percent input{min-width:260px;max-width:260px}.products-filter-label input::placeholder{color:var(--color-placeholder)}.products-update-btn{padding:11px 22px;border-radius:var(--btn-radius);border:none;background:var(--btn-secondary-bg);color:var(--btn-secondary-color);font-size:14px;font-weight:600;cursor:pointer;align-self:flex-end;transition:background var(--btn-transition),opacity var(--btn-transition);box-shadow:none}.products-update-btn:hover:not(:disabled){background:var(--btn-secondary-hover)}.appointments-summary{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 24px}.appointments-summary-item{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-control);padding:10px 14px;color:var(--color-text);font-size:14px;box-shadow:var(--shadow-card)}.products-table{background:#fff;padding:24px;border-radius:14px;box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.products-table table{width:100%;border-collapse:collapse;background:#fff;color:#111827}.products-table th{text-align:left;padding:14px 16px;border-bottom:1px solid var(--color-border);background:var(--color-table-header);color:#111827;font-weight:600;font-size:13px}.products-table td{padding:14px 16px;border-bottom:1px solid var(--color-border);vertical-align:middle}.products-table tbody tr{background:var(--color-card);transition:background var(--transition)}.products-table tbody tr:not(.products-row--editing):hover{background:#f9fafb}.products-table tbody tr.products-row--editing td{background:#f8fafc;border-color:#e2e8f0;vertical-align:top;padding-top:12px;padding-bottom:12px}.products-table tbody tr.products-row--editing{outline:1px solid #e2e8f0;outline-offset:-1px}.products-table tbody tr.products-row--editing:hover td{background:#f8fafc}.products-table tbody tr.products-row--highlight td{background:#f0fdf4;transition:background .35s ease}.products-table tbody tr.products-row--editing.products-row--highlight td{background:#ecfdf5}.products-table td.products-col-name{font-weight:400;color:var(--color-text);max-width:min(28rem,46vw)}.products-table td.products-price-col:not(.products-profit-col){font-weight:600;font-size:14px;color:#0f172a}.products-table td.products-stock-col{min-width:8rem;color:var(--color-text-secondary);font-size:13px;font-weight:500}.products-table td.products-price-col{vertical-align:middle;font-variant-numeric:tabular-nums}.products-table td.products-profit-col{font-variant-numeric:tabular-nums;white-space:nowrap}.products-profit-cell{font-size:13px;font-weight:500;line-height:1.35}.products-profit-cell--gain{color:#16a34a;font-weight:500}.products-profit-cell--loss{color:var(--color-danger);font-weight:500}.products-profit-cell--empty{color:var(--color-text-secondary);font-weight:500}.products-stock-col{width:1%;white-space:nowrap}.products-table td.products-actions-col{width:1%;white-space:nowrap;text-align:right}.products-actions-cell{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:8px;vertical-align:middle;width:100%;max-width:100%;white-space:nowrap}.products-actions-cell .products-edit-price-btn+.products-edit-price-btn{margin-left:0}.products-table .clinic-edit-input,.products-table .products-stock-edit-input{border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#0f172a}.products-edit-price-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;margin-left:0;border:none;background:transparent;color:var(--btn-ghost-color);cursor:pointer;border-radius:var(--btn-radius);font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap;transition:color var(--btn-transition),background var(--btn-transition),opacity var(--btn-transition)}.products-edit-price-btn+.products-edit-price-btn{margin-left:10px}.products-edit-price-btn:hover:not(:disabled):not(.products-btn-edit):not(.products-btn-confirm):not(.products-btn-cancel-edit):not(.products-btn-danger):not(.clinic-attended-btn){color:var(--btn-ghost-hover-color);background:var(--btn-ghost-hover-bg)}.products-actions-cell .products-btn-confirm,.products-edit-modal-actions .products-btn-confirm{border-radius:var(--btn-radius);border:1px solid transparent;font-weight:600;background:var(--btn-secondary-bg);color:var(--btn-secondary-color);box-shadow:none;transition:all var(--btn-transition)}.products-actions-cell .products-btn-confirm{padding:10px 18px;font-size:14px;background:var(--btn-secondary-bg);border-color:transparent;color:var(--btn-secondary-color)}.products-edit-modal-actions .products-btn-confirm{width:100%;justify-content:center;padding:12px 20px;font-size:15px}.products-actions-cell .products-btn-confirm:hover:not(:disabled),.products-edit-modal-actions .products-btn-confirm:hover:not(:disabled){background:var(--btn-secondary-hover);border-color:transparent;color:var(--btn-secondary-color)}.products-actions-cell .products-btn-cancel-edit,.products-edit-modal-actions .products-btn-cancel-edit{border-radius:var(--btn-radius);border:1px solid var(--btn-outline-border);font-weight:600;background:transparent;color:var(--btn-outline-color);box-shadow:none;transition:all var(--btn-transition)}.products-actions-cell .products-btn-cancel-edit{padding:10px 18px;font-size:14px;border-color:#d1d5db;background:#fff;color:#64748b}.products-edit-modal-actions .products-btn-cancel-edit{width:100%;justify-content:center;padding:12px 20px;font-size:15px}.products-actions-cell .products-btn-cancel-edit:hover:not(:disabled),.products-edit-modal-actions .products-btn-cancel-edit:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#475569}.products-actions-cell .products-btn-edit{margin-left:5px;color:var(--btn-ghost-hover-color);font-weight:500;font-size:14px;background:transparent;cursor:pointer}.products-actions-cell .products-btn-edit:hover:not(:disabled){color:var(--color-primary-hover);background:var(--btn-ghost-hover-bg)}.products-edit-price-btn.products-btn-danger{background:var(--btn-danger-bg);color:var(--btn-danger-color);border:1px solid var(--btn-danger-border);font-weight:600}.products-edit-price-btn.products-btn-danger:hover:not(:disabled){background:var(--btn-danger-hover);color:var(--btn-danger-color);border-color:var(--btn-danger-hover)}.products-edit-price-btn.clinic-attended-btn{background:var(--btn-secondary-bg);color:var(--btn-secondary-color);font-weight:600;border-radius:var(--btn-radius);box-shadow:none}.products-edit-price-btn.clinic-attended-btn:hover:not(:disabled){background:var(--btn-secondary-hover);color:var(--btn-secondary-color)}.clinic-edit-input{width:100%;min-width:0;padding:8px 12px;border:1px solid var(--color-input-border);border-radius:var(--radius-control);background:#fff;color:#111827;font-size:14px}.products-table td .products-price-edit-input,.products-table td.products-col-name>.clinic-edit-input,.products-table td .clinic-edit-input.products-stock-edit-input{width:120px;min-width:120px;max-width:100%;padding:8px 10px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#0f172a;font-size:14px;font-weight:500;box-sizing:border-box}.products-table td .clinic-edit-input.products-stock-edit-input{font-variant-numeric:tabular-nums}.producto{display:flex;justify-content:space-between;margin-bottom:10px}.products-list-status{margin:0;color:var(--color-text-secondary);font-size:14px}.products-list-loading{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px}.products-list-desktop-only,.products-list-mobile-only{display:block}.products-table--compact table{min-width:0}.products-virtual-table{border:1px solid var(--color-border);border-radius:16px;overflow:hidden;background:var(--color-card)}.products-virtual-table__header,.products-virtual-table__row{display:grid;grid-template-columns:minmax(0,1fr) 120px 80px 140px 210px;align-items:center;gap:0}.products-virtual-table__header--readonly,.products-virtual-table__row--readonly{grid-template-columns:minmax(0,1fr) 120px 80px 140px}.products-virtual-table__head,.products-virtual-table__cell{min-width:0;padding:10px 14px}.products-virtual-table__header{border-bottom:1px solid var(--color-border);background:#f8fafc}.products-virtual-table__head{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#475569}.products-virtual-table__list{width:100%;scrollbar-width:thin;scrollbar-color:rgb(148 163 184 / .28) transparent}.products-virtual-table__list::-webkit-scrollbar,.products-mobile-virtual::-webkit-scrollbar{width:10px}.products-virtual-table__list::-webkit-scrollbar-track,.products-mobile-virtual::-webkit-scrollbar-track{background:transparent}.products-virtual-table__list::-webkit-scrollbar-thumb,.products-mobile-virtual::-webkit-scrollbar-thumb{background:#94a3b838;border-radius:999px;border:3px solid transparent;background-clip:content-box}.products-virtual-table__list::-webkit-scrollbar-thumb:hover,.products-mobile-virtual::-webkit-scrollbar-thumb:hover{background:#94a3b857;border:3px solid transparent;background-clip:content-box}.products-virtual-table__row-shell,.products-mobile-virtual__row-shell{width:100%}.products-virtual-table__row-shell{display:flex;flex-direction:column;width:100%;background:var(--color-card);border-bottom:1px solid var(--color-border);padding:8px 0;transition:background var(--transition),box-shadow var(--transition)}.products-virtual-table__row-shell:hover,.products-virtual-table__row-shell.products-row--editing{background:#f8fafc}.products-virtual-table__row{min-height:60px}.products-virtual-table__row-shell:last-child{border-bottom:none}.products-virtual-table__cell--price,.products-virtual-table__cell--stock,.products-virtual-table__cell--profit{font-variant-numeric:tabular-nums;text-align:right}.products-virtual-table__cell--actions{display:flex;justify-content:flex-end;align-items:center;padding-left:24px;overflow:hidden}.products-actions-cell--inline-edit{gap:8px}.products-actions-cell--inline-edit .products-edit-price-btn--compact{padding:5px 9px;font-size:12px}.products-mobile-virtual{width:100%;scrollbar-width:thin;scrollbar-color:rgb(148 163 184 / .28) transparent}.products-mobile-virtual .products-mobile-card{margin:0 0 12px}.products-th-actions{width:1%}.products-name-stack{display:flex;flex-direction:column;gap:2px;min-width:0;max-width:100%}.products-virtual-table__cell--name{overflow:hidden}.products-name-primary{display:block;font-weight:600;color:#0f172a;line-height:1.35;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.products-name-secondary{font-size:12px;line-height:1.35;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.products-table-inline-input--compact+.products-name-secondary{margin-top:4px}.products-list-card .products-virtual-table__row-shell.products-row--highlight{background:#e0f2fe;transition:background .35s ease}.products-list-card .products-virtual-table__row-shell.products-row--highlight .products-name-exact-mark{color:#0369a1}.products-list-card .products-virtual-table__row-shell.products-row--exact-code{background:#e0f2fe;box-shadow:inset 3px 0 #38bdf8}.products-list-card .products-virtual-table__row-shell.products-row--similar-code{background:#fffbeb5c;box-shadow:inset 2px 0 #f6c96b}.products-list-card .products-virtual-table__row-shell.products-row--exact-code.products-row--highlight{background:#e0f2fe;box-shadow:inset 3px 0 #38bdf8}.products-name-cell-edit{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:min(28rem,46vw)}.products-name-cell-edit__meta{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;font-size:12px;line-height:1.35;color:#64748b}.products-name-cell-edit__cost{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.35;color:#64748b}.products-name-cell-edit__supplier{color:#64748b;white-space:nowrap}.products-name-cell-edit__sep{color:#94a3b8}.products-table-inline-input{box-sizing:border-box;height:34px;margin:0;padding:6px 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font-size:13px;font-weight:500;line-height:1.2}.products-table-inline-input:focus{outline:2px solid var(--color-primary-focus-ring);outline-offset:0;border-color:var(--color-primary);box-shadow:var(--input-focus-shadow)}.products-table-inline-input:disabled{opacity:.65;cursor:not-allowed}.products-table-inline-input--name{width:100%;max-width:22rem}.products-table-inline-input--code{width:7.5rem;min-width:5.5rem;max-width:10rem;font-variant-numeric:tabular-nums}.products-table-inline-input--supplier{width:100%;min-width:12rem;max-width:22rem}.products-table-inline-input--supplier-inline{min-width:10rem;max-width:16rem}.products-table-inline-input--brand{width:6.5rem;min-width:4rem;max-width:9rem}.products-table-inline-input--rubro{width:7.5rem;min-width:5.5rem;max-width:10rem}.products-table-inline-input--cost{width:5.75rem;min-width:4rem;max-width:7rem;font-variant-numeric:tabular-nums}.products-table-inline-input--price{width:6.75rem;min-width:5rem;max-width:9rem;font-variant-numeric:tabular-nums}.products-table-inline-input--stock{width:4.25rem;min-width:3rem;max-width:6rem;font-variant-numeric:tabular-nums}.products-table-inline-input--compact{height:30px;padding:4px 8px;font-size:13px}.products-table-inline-input--align-right{text-align:right}.products-edit-price-btn--compact{padding:6px 10px;font-size:12px}.products-input-clear-wrap{position:relative;display:inline-block;max-width:100%;vertical-align:middle;min-width:0}.products-name-cell-edit__meta .products-input-clear-wrap{flex:0 1 auto}.products-input-clear-wrap--lg{display:block;width:100%}.products-input-clear-wrap:has(.products-input-clear) .products-table-inline-input--brand{padding-right:26px}.products-input-clear-wrap--lg:has(.products-input-clear) .products-edit-input--lg{padding-right:42px}.products-input-clear{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:24px;height:24px;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:#94a3b8;font-size:18px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color var(--transition),background var(--transition)}.products-input-clear--lg{right:8px;width:32px;height:32px;font-size:20px}.products-input-clear:hover{color:#64748b;background:#f1f5f9}.products-input-clear:focus-visible{outline:2px solid var(--color-primary);outline-offset:0}.products-table tbody tr.products-row--editing .products-price-col--editing,.products-table tbody tr.products-row--editing .products-stock-col--editing,.products-table tbody tr.products-row--editing .products-profit-col--editing,.products-table tbody tr.products-row--editing .products-actions-col--editing{vertical-align:middle}.products-table tbody tr.products-row--editing .products-actions-cell .products-btn-confirm,.products-table tbody tr.products-row--editing .products-actions-cell .products-btn-cancel-edit{padding:8px 12px;font-size:13px}.products-edit-inline-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.products-edit-supplier-note{font-size:12px;color:#64748b}.products-edit-input--lg{min-height:46px;padding:12px 14px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;font-size:15px;font-weight:500;width:100%;max-width:100%;box-sizing:border-box}.products-edit-input--lg:focus{outline:2px solid var(--color-primary-focus-ring);outline-offset:0;border-color:var(--color-primary);box-shadow:var(--input-focus-shadow)}.products-edit-input--flex{flex:1 1 140px;min-width:120px;max-width:220px}.products-mobile-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;padding:0;margin-bottom:12px;overflow:hidden;cursor:pointer;transition:box-shadow .15s ease,border-color .15s ease}.products-mobile-card:focus{outline:2px solid var(--color-primary-focus-ring);outline-offset:2px}.products-mobile-card--highlight{background:#f0fdf4;box-shadow:none;border-color:var(--btn-primary-bg)}.products-mobile-card__body{padding:14px 16px}.products-mobile-card__title{font-weight:600;font-size:16px;color:#0f172a;line-height:1.3;margin-bottom:4px}.products-mobile-card__code{font-size:12px;color:#64748b;line-height:1.35;margin-bottom:6px}.products-mobile-card__meta{font-size:13px;color:#64748b;line-height:1.4;margin-bottom:6px}.products-mobile-card__cost{font-size:13px;color:#64748b;line-height:1.4;margin-bottom:12px}.products-mobile-card__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.products-mobile-card__stats dt{margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8}.products-mobile-card__stats dd{margin:2px 0 0;font-size:14px;font-weight:600;color:#0f172a;font-variant-numeric:tabular-nums}.products-mobile-card__footer{padding:10px 16px;border-top:1px solid var(--color-border);background:#f8fafc;display:flex;justify-content:flex-end}.products-edit-modal-overlay{position:fixed;inset:0;z-index:1000;background:#0f172a73;display:flex;align-items:flex-end;justify-content:center;padding:0}@media(min-width:480px){.products-edit-modal-overlay{align-items:center;padding:24px}}.products-edit-modal{width:100%;max-width:680px;max-height:min(92vh,720px);overflow:hidden;display:flex;flex-direction:column;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -4px 24px #0f172a1f;padding:20px 20px 24px;box-sizing:border-box}@media(min-width:480px){.products-edit-modal{border-radius:16px}}.products-edit-modal-title{margin:0 0 8px;font-size:18px;font-weight:600;color:#0f172a}.products-edit-modal-supplier{margin:0 0 16px;font-size:13px;color:#64748b}.products-edit-modal-fields{display:flex;flex-direction:column;gap:14px;overflow-y:auto;padding-right:2px}.products-edit-modal-section{border-top:1px solid var(--color-border);padding-top:12px}.products-edit-modal-section:first-child{border-top:none;padding-top:0}.products-edit-modal-section__title{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#64748b}.products-edit-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.products-edit-modal-grid--identity{grid-template-columns:minmax(0,4fr) minmax(0,1fr)}.products-edit-modal-label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#475569}.products-edit-modal-field-hint{margin:0;font-size:12px;font-weight:500;color:#64748b}.products-edit-modal-field-hint--error{color:#b91c1c}.products-edit-modal-field-hint--ok{color:#15803d;display:inline-flex;align-items:center;gap:4px}.products-edit-modal-label--full{grid-column:1 / -1}.products-edit-modal-profit{margin:4px 0 0;font-size:14px;color:#475569}.products-edit-modal-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--color-border);position:sticky;bottom:0;background:#fff}@media(min-width:769px){.products-edit-modal-actions{flex-direction:row;justify-content:flex-end}.products-edit-modal-actions .products-btn-confirm,.products-edit-modal-actions .products-btn-cancel-edit{width:auto;min-width:140px}}.products-edit-modal-actions .products-edit-price-btn+.products-edit-price-btn{margin-left:0}@media(max-width:768px){.products-page{padding:0}.products-create{margin-bottom:28px}.products-section{padding:20px 18px}.products-filters{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:24px;overflow-x:auto;-webkit-overflow-scrolling:touch}.products-cost-filters{gap:16px}.products-filters--cost-actions .products-filter-label{max-width:none}.products-filters--cost-actions .products-update-btn{margin-left:0}.products-filter-label select,.products-filter-label input:not(.clinic-search-input):not(.table-search-input){min-width:0;width:100%}.products-filter-label .clinic-search-input,.products-filter-label .table-search-input{width:100%;min-width:0;max-width:100%}.products-edit-modal-grid{grid-template-columns:1fr}.appointments-summary{gap:8px}.appointments-summary-item{width:100%}.products-table{padding:14px;overflow-x:auto;-webkit-overflow-scrolling:touch}.products-table table{min-width:640px}.sale-row-summary{grid-template-columns:1fr;gap:6px}.sale-row-summary__count,.sale-row-summary__total{justify-self:start}.sale-detail-column-head{display:none}.sale-detail-line{grid-template-columns:1fr;gap:4px;padding:12px 4px}.sale-detail-line__sub{text-align:left}}.products-list-card .products-name-stack--exact-line{position:relative;padding-left:18px}.products-list-card .products-name-exact-mark{position:absolute;left:0;top:1px;font-size:13px;font-weight:600;line-height:1.35;color:#64748b}.products-actions-cell{display:flex;align-items:center;justify-content:flex-end;gap:8px}.products-list-card .products-row--exact-code td{background:#e0f2fe}.products-list-card .products-row--exact-code td:first-child{box-shadow:inset 3px 0 #38bdf8}.products-list-card .products-row--exact-code.products-row--highlight td{background:#e0f2fe}.products-list-card .products-mobile-card__title--exact-line{display:flex;align-items:flex-start;gap:8px;font-weight:600;font-size:16px}.products-list-card .products-mobile-card__exact-mark{flex-shrink:0;color:#0369a1;font-weight:600}.products-list-card .products-mobile-card--exact-code{border-color:#7dd3fc;background:#e0f2fe;box-shadow:inset 3px 0 #38bdf8}.products-list-card .products-mobile-card--similar-code{border-color:#f6e6b4;background:#fffdf5;box-shadow:inset 2px 0 #f6c96b}.clinic-search-input{min-width:840px}.table-search-input{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.table-search-input[type=search]::-webkit-search-cancel-button,.table-search-input[type=search]::-webkit-search-decoration,.clinic-search-input[type=search]::-webkit-search-cancel-button,.clinic-search-input[type=search]::-webkit-search-decoration,.venta-search-input[type=search]::-webkit-search-cancel-button,.venta-search-input[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}.search-input-wrap{position:relative;display:block;width:100%;max-width:100%;min-width:0}.search-input-wrap:has(.search-input-clear) .table-search-input,.search-input-wrap:has(.search-input-clear) .clinic-search-input{padding-right:40px}.search-input-wrap:has(.search-input-clear) .venta-search-input{padding-right:44px}.search-input-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:30px;height:30px;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:#94a3b8;font-size:20px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.search-input-clear:hover:not(:disabled){color:#64748b;background:#f1f5f9}.search-input-clear:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:0}.search-input-clear:disabled{opacity:.5;cursor:not-allowed}@media(min-width:1024px){.clinic-search-input{min-width:1680px}}.product-form{display:block;max-width:720px}.product-form__block{margin-bottom:20px}.product-form__block:last-child{margin-bottom:0}.product-form__block--stock-actions{margin-bottom:0}.product-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.product-form__field{display:flex;flex-direction:column;gap:6px;min-width:0}.product-form__field--full{grid-column:1 / -1}.product-form__field-required{color:#b91c1c;font-weight:600}.product-form__field-hint{margin:0;font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.product-form__field-hint--error{color:#b91c1c}.product-form__field-hint--ok{color:#15803d;display:inline-flex;align-items:center;gap:4px}.product-form__field-label{font-size:13px;font-weight:500;color:var(--color-text-secondary)}.product-form__field-label--emphasis{font-size:14px;font-weight:700;color:var(--color-heading-2)}.product-form input,.product-form select{padding:10px 12px;border-radius:var(--radius-control);border:1px solid var(--color-input-border);background:#fff;color:#0f172a;font-size:14px;min-height:42px;width:100%;box-sizing:border-box}.product-form select{min-width:0}.product-form__combobox-field{position:relative}.product-form__combobox,.product-form__combobox-input-wrap{position:relative;width:100%}.product-form__combobox-input-wrap:has(.product-form__combobox-clear) input{padding-right:40px}.product-form__combobox-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:30px;height:30px;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:#94a3b8;font-size:20px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color var(--transition),background var(--transition)}.product-form__combobox-clear:hover{color:#64748b;background:#f1f5f9}.product-form__combobox-clear:focus-visible{outline:2px solid var(--color-primary);outline-offset:0}.product-form__combobox-list{position:absolute;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px 0;list-style:none;max-height:220px;overflow-y:auto;z-index:20;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:var(--shadow-card, 0 4px 14px rgba(15, 23, 42, .12))}.product-form__combobox-option{display:block;width:100%;padding:10px 12px;border:none;background:transparent;text-align:left;font-size:14px;color:#0f172a;cursor:pointer;font-family:inherit}.product-form__combobox-option:hover{background:#f1f5f9}.product-form__combobox-option--active{background:#e0f2fe;color:#0c4a6e;box-shadow:inset 3px 0 #38bdf8}.product-form__combobox-option--create.product-form__combobox-option--active{color:#1e40af}.product-form__combobox-option--create{color:#1d4ed8;font-weight:600;border-top:1px solid var(--color-border);margin-top:2px;padding-top:10px}.product-form__combobox-empty{padding:10px 12px;font-size:13px;color:var(--color-text-secondary)}.product-form__field-feedback{position:absolute;top:calc(100% + 2px);left:2px;z-index:22;font-size:12px;line-height:1.35;color:#334155;display:inline-flex;align-items:center;gap:8px;pointer-events:none;background:#ffffffeb;padding:2px 6px;border-radius:6px}.product-form__field-feedback--success{color:#166534;font-weight:600}.product-form__spinner{width:14px;height:14px;border-radius:999px;border:2px solid #cbd5e1;border-top-color:var(--color-primary);animation:product-form-spin .8s linear infinite;flex:0 0 14px}@keyframes product-form-spin{to{transform:rotate(360deg)}}.product-form__input-emphasis{border-width:2px;border-color:var(--color-primary);background:#fff;color:#111827;font-weight:500;box-shadow:none}.product-form__input-emphasis:focus{outline:2px solid var(--color-primary-focus-ring);outline-offset:0;border-color:var(--color-primary);box-shadow:var(--input-focus-shadow)}.product-form input::placeholder{color:var(--color-placeholder)}.product-form__profit-line{margin:0;padding:10px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg);font-size:1rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--color-text-secondary);line-height:1.45}.product-form__profit-line--gain{background:#f7fcf8;border:1px solid #d1e7d8;color:#2f6d45}.product-form__profit-line--gain .product-form__profit-prefix,.product-form__profit-line--gain .product-form__profit-figures{color:#2f6d45;font-weight:500}.product-form__profit-line--loss{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.product-form__profit-line--loss .product-form__profit-prefix,.product-form__profit-line--loss .product-form__profit-figures{color:#991b1b;font-weight:500}.product-form__profit-prefix{font-weight:500}.product-form__profit-figures{font-weight:600}.product-form__stock-actions{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 20px;width:100%}.product-form__field--stock{flex:1 1 52%;min-width:0;max-width:none}.product-form__submit{padding:12px 24px;border:none;border-radius:var(--btn-radius);background:var(--btn-secondary-bg);color:var(--btn-secondary-color);font-size:15px;font-weight:500;line-height:1.25;cursor:pointer;white-space:nowrap;min-height:42px;box-sizing:border-box;transition:background var(--btn-transition),opacity var(--btn-transition);box-shadow:none}.product-form__submit:hover:not(:disabled){background:var(--btn-secondary-hover)}.product-form__submit:disabled{cursor:not-allowed;box-shadow:none}@media(max-width:768px){.product-form__grid{grid-template-columns:1fr}.product-form__stock-actions{flex-direction:column;align-items:stretch}.product-form__field--stock{flex:1 1 auto;max-width:none}.product-form__submit{margin-left:0;width:100%}}.venta-onboarding-root{position:fixed;inset:0;z-index:10000;animation:venta-onboarding-fade-in .28s ease}@keyframes venta-onboarding-fade-in{0%{opacity:0}to{opacity:1}}.venta-onboarding-backdrop{position:absolute;inset:0;background:#0f172a85;pointer-events:auto}.venta-onboarding-ring{position:fixed;border-radius:12px;box-shadow:0 0 0 2px #ffffffd9,0 0 20px #3b82f640;pointer-events:none;z-index:10001;transition:top .32s ease,left .32s ease,width .32s ease,height .32s ease,opacity .24s ease;animation:venta-onboarding-ring-in .36s ease both}@keyframes venta-onboarding-ring-in{0%{opacity:0}to{opacity:1}}.venta-onboarding-tooltip{pointer-events:auto;z-index:10002;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:1.1rem 1.15rem 1rem;box-shadow:var(--shadow-card);animation:venta-onboarding-tooltip-in .32s ease both}@keyframes venta-onboarding-tooltip-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.venta-onboarding-tooltip--centered{animation:venta-onboarding-tooltip-center .32s ease both}@keyframes venta-onboarding-tooltip-center{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.venta-onboarding-step-label{margin:0 0 .35rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}.venta-onboarding-title{margin:0 0 .5rem;font-size:1.05rem;font-weight:600;color:var(--color-text);line-height:1.25;letter-spacing:-.02em}.venta-onboarding-desc{margin:0 0 1rem;font-size:.875rem;line-height:1.5;color:var(--color-text-secondary)}.venta-onboarding-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem}.venta-onboarding-actions__main{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto}.venta-onboarding-btn{font-family:inherit;font-size:.875rem;font-weight:600;padding:.45rem .9rem;border-radius:var(--btn-radius);cursor:pointer;transition:all var(--btn-transition);border:1px solid transparent}.venta-onboarding-btn--primary{border:1px solid var(--btn-primary-border);background:var(--btn-primary-bg);color:var(--btn-primary-color)}.venta-onboarding-btn--primary:hover{background:var(--btn-primary-hover);color:var(--btn-primary-hover-color);border-color:var(--btn-primary-hover)}.venta-onboarding-btn--secondary{border:1px solid var(--btn-outline-border);background:transparent;color:var(--btn-outline-color)}.venta-onboarding-btn--secondary:hover{background:var(--btn-outline-hover-bg)}.venta-onboarding-btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent;padding-inline:.35rem}.venta-onboarding-btn--ghost:hover{color:var(--color-text)}.venta-onboarding-btn:disabled{cursor:not-allowed;opacity:.68;pointer-events:none}.venta-onboarding-btn--primary:disabled{cursor:wait}@media(prefers-reduced-motion:reduce){.venta-onboarding-root,.venta-onboarding-ring,.venta-onboarding-tooltip{animation:none}.venta-onboarding-ring{transition:none}}
