*{box-sizing:border-box}:root,[data-theme=light]{color-scheme:light;--color-bg: #f5f6fa;--color-surface: #ffffff;--color-surface-hover: #f1f5f9;--color-surface-muted: #f8fafc;--color-table-header-bg: #fafbfc;--color-border-subtle: #f1f5f9;--color-text: #0f172a;--color-text-secondary: #64748b;--color-text-tertiary: #475569;--color-text-muted: #94a3b8;--color-border: #e2e8f0;--color-border-strong: #cbd5e1;--color-input-bg: #ffffff;--color-input-border: #e2e8f0;--color-shadow: rgba(15, 23, 42, .08);--color-elevation-xs: 0 1px 2px rgba(15, 23, 42, .06);--color-elevation-sm: 0 1px 3px rgba(15, 23, 42, .08);--color-elevation-md: 0 4px 12px rgba(15, 23, 42, .08);--color-elevation-modal: 0 20px 50px rgba(15, 23, 42, .12);--color-elevation-floating: 0 20px 60px rgba(0, 0, 0, .2);--color-shadow-card: var(--color-elevation-sm);--color-shadow-lg: var(--color-elevation-modal);--color-overlay-scrim: rgba(15, 23, 42, .5);--color-scrim-photo: rgba(0, 0, 0, .45);--color-scrim-soft: rgba(0, 0, 0, .4);--color-surface-nested: #fafafa;--color-shadow-knob: 0 1px 3px rgba(0, 0, 0, .15);--color-ring-primary: 0 0 0 2px color-mix(in srgb, var(--color-primary) 38%, transparent);--color-sticky-bar-shadow: 0 1px 4px rgba(15, 23, 42, .12), 0 0 0 1px var(--color-border);--color-sticky-bar-shadow-active: 0 2px 8px rgba(15, 23, 42, .14), 0 0 0 1px color-mix(in srgb, var(--color-primary) 35%, transparent);--color-modal-deep-shadow: 0 20px 40px rgba(2, 6, 23, .2);--color-inset-well: inset 0 1px 2px color-mix(in srgb, var(--color-text) 6%, transparent);--color-on-image-control-bg: rgba(255, 255, 255, .22);--color-on-image-control-border: rgba(255, 255, 255, .42);--color-on-image-control-bg-hover: rgba(255, 255, 255, .32);--color-on-image-danger-border: color-mix(in srgb, var(--color-danger) 50%, transparent);--color-on-image-danger-bg: color-mix(in srgb, var(--color-danger) 22%, transparent);--color-surface-glass-96: color-mix(in srgb, var(--color-surface) 96%, transparent);--color-surface-glass-82: color-mix(in srgb, var(--color-surface) 82%, transparent);--color-surface-glass-70: color-mix(in srgb, var(--color-surface) 70%, transparent);--color-badge-border-faint: color-mix(in srgb, var(--color-text) 9%, transparent);--color-inset-highlight: 0 1px 0 rgba(255, 255, 255, .55);--color-primary: #1e3a5f;--color-primary-hover: #152a47;--color-on-primary: #ffffff;--color-primary-muted-bg: #e8eef5;--color-primary-muted-text: #1e3a5f;--color-focus-ring: rgba(30, 58, 95, .12);--color-danger: #dc2626;--color-danger-bg: #fef2f2;--color-danger-border: #fecaca;--color-danger-text: #991b1b;--color-danger-text-strong: #b91c1c;--color-success: #16a34a;--color-success-bright: #10b981;--color-success-bg: #f0fdf4;--color-success-border: #bbf7d0;--color-success-text: #166534;--color-success-chip-bg: #dcfce7;--color-warning: #d97706;--color-warning-text: #b45309;--color-accent-blue: #3b82f6;--color-accent-blue-bright: #2563eb;--color-accent-violet: #8b5cf6;--color-accent-violet-fg: #7c3aed;--color-amazon-orange: #ff9900;--color-tag-blue-bg: #dbeafe;--color-tag-blue-fg: #1d4ed8;--color-tag-teal-bg: #ccfbf1;--color-tag-teal-fg: #0f766e;--color-tag-teal-border: #99f6e4;--color-tag-teal-outline: #0d9488;--color-tag-teal-deep: #134e4a;--color-tag-purple-bg: #ede9fe;--color-tag-purple-fg: #5b21b6;--color-tag-purple-soft-bg: #f3e8ff;--color-tag-purple-soft-fg: #6b21a8;--color-tag-lilac-bg: #ebe8ff;--color-tag-lilac-fg: #6b6a9e;--color-tag-lilac-border: #ddd8f5;--color-tag-mint-pastel-bg: #dff6f1;--color-tag-mint-pastel-fg: #5a8f86;--color-tag-mint-pastel-border: #c8ebe3;--color-tag-sage-bg: #e3f5e6;--color-tag-sage-fg: #5a8c6a;--color-tag-sage-border: #cde9d3;--color-tag-slate-bg: #e3eef9;--color-tag-slate-fg: #5c7390;--color-tag-slate-border: #cddfea;--color-tag-orange-bg: #ffedd5;--color-tag-orange-fg: #c2410c;--color-tag-orange-strong: #9a3412;--color-tag-green-bg: #d1fae5;--color-tag-green-fg: #047857;--color-tag-green-alt: #15803d;--color-tag-green-soft-bg: #ecfdf5;--color-tag-green-border: #059669;--color-tag-pink-bg: #fce7f3;--color-tag-pink-fg: #9d174d;--color-tag-amber-bg: #fef3c7;--color-tag-amber-fg: #92400e;--color-tag-yellow-soft: #fffbeb;--color-tag-mint-bg: #f0fdfa;--color-tag-mint-gradient-end: #ecfdf5;--color-tag-warm-green: #d9f5e4;--color-tag-warm-cream: #ffe8dc;--color-indigo-bg: #e0e7ff;--color-indigo-fg: #3730a3;--color-blue-ring: #2563eb;--color-image-danger: #f87171;--color-image-danger-soft: #fca5a5;--color-login-gradient: linear-gradient(160deg, #f1f5f9 0%, #e2e8f0 45%, #f8fafc 100%);--color-login-card-border: #e2e8f0;--app-bg: var(--color-bg);--app-surface: var(--color-surface);--app-text: var(--color-text);--app-muted: var(--color-text-secondary);--app-border: var(--color-border);font-size:16px;font-family:Inter Variable,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark]{color-scheme:dark;--color-bg: #0f172a;--color-surface: #1e293b;--color-surface-hover: #334155;--color-surface-muted: #1e293b;--color-table-header-bg: color-mix(in srgb, var(--color-surface) 88%, var(--color-text));--color-border-subtle: #334155;--color-text: #f1f5f9;--color-text-secondary: #94a3b8;--color-text-tertiary: #cbd5e1;--color-text-muted: #64748b;--color-border: #334155;--color-border-strong: #475569;--color-input-bg: #0f172a;--color-input-border: #475569;--color-shadow: rgba(0, 0, 0, .35);--color-elevation-xs: 0 1px 2px rgba(0, 0, 0, .35);--color-elevation-sm: 0 1px 3px rgba(0, 0, 0, .35);--color-elevation-md: 0 4px 12px rgba(0, 0, 0, .35);--color-elevation-modal: 0 20px 50px rgba(0, 0, 0, .45);--color-elevation-floating: 0 20px 60px rgba(0, 0, 0, .55);--color-shadow-card: var(--color-elevation-sm);--color-shadow-lg: var(--color-elevation-modal);--color-overlay-scrim: rgba(0, 0, 0, .72);--color-scrim-photo: rgba(0, 0, 0, .65);--color-scrim-soft: rgba(0, 0, 0, .55);--color-surface-nested: #252f40;--color-shadow-knob: 0 1px 3px rgba(0, 0, 0, .45);--color-ring-primary: 0 0 0 2px color-mix(in srgb, var(--color-accent-blue-bright) 45%, transparent);--color-sticky-bar-shadow: 0 1px 4px rgba(0, 0, 0, .45), 0 0 0 1px var(--color-border);--color-sticky-bar-shadow-active: 0 2px 8px rgba(0, 0, 0, .5), 0 0 0 1px color-mix(in srgb, var(--color-accent-blue-bright) 40%, transparent);--color-modal-deep-shadow: 0 20px 40px rgba(0, 0, 0, .55);--color-inset-well: inset 0 1px 2px color-mix(in srgb, var(--color-text) 8%, transparent);--color-on-image-control-bg: rgba(255, 255, 255, .14);--color-on-image-control-border: rgba(255, 255, 255, .32);--color-on-image-control-bg-hover: rgba(255, 255, 255, .22);--color-on-image-danger-border: color-mix(in srgb, var(--color-danger) 55%, transparent);--color-on-image-danger-bg: color-mix(in srgb, var(--color-danger) 28%, transparent);--color-surface-glass-96: color-mix(in srgb, var(--color-surface) 92%, transparent);--color-surface-glass-82: color-mix(in srgb, var(--color-surface) 88%, transparent);--color-surface-glass-70: color-mix(in srgb, var(--color-surface) 78%, transparent);--color-badge-border-faint: color-mix(in srgb, var(--color-text) 14%, transparent);--color-inset-highlight: 0 1px 0 color-mix(in srgb, var(--color-text) 10%, transparent);--color-primary: #1e3a5f;--color-primary-hover: #2a5580;--color-on-primary: #ffffff;--color-primary-muted-bg: color-mix(in srgb, var(--color-primary) 22%, var(--color-surface));--color-primary-muted-text: #cbd5e1;--color-focus-ring: rgba(96, 165, 250, .22);--color-danger-bg: color-mix(in srgb, var(--color-danger) 16%, var(--color-surface));--color-danger-border: color-mix(in srgb, var(--color-danger) 45%, var(--color-surface));--color-danger-text: #fecaca;--color-danger-text-strong: #fca5a5;--color-success-bg: color-mix(in srgb, var(--color-success) 14%, var(--color-surface));--color-success-border: color-mix(in srgb, var(--color-success) 35%, var(--color-surface));--color-success-text: #86efac;--color-success-chip-bg: color-mix(in srgb, var(--color-success) 22%, var(--color-surface));--color-warning-text: #fcd34d;--color-accent-blue-bright: #60a5fa;--color-accent-violet: #a78bfa;--color-accent-violet-fg: #c4b5fd;--color-amazon-orange: #fbbf24;--color-tag-blue-bg: color-mix(in srgb, var(--color-accent-blue) 24%, var(--color-surface));--color-tag-blue-fg: #93c5fd;--color-tag-teal-bg: color-mix(in srgb, #14b8a6 22%, var(--color-surface));--color-tag-teal-fg: #5eead4;--color-tag-teal-border: color-mix(in srgb, #5eead4 38%, var(--color-border));--color-tag-teal-outline: #2dd4bf;--color-tag-teal-deep: #99f6e4;--color-tag-purple-bg: color-mix(in srgb, #a855f7 22%, var(--color-surface));--color-tag-purple-fg: #e9d5ff;--color-tag-purple-soft-bg: color-mix(in srgb, #a855f7 18%, var(--color-surface));--color-tag-purple-soft-fg: #ddd6fe;--color-tag-lilac-bg: color-mix(in srgb, #8b5cf6 20%, var(--color-surface));--color-tag-lilac-fg: #ddd6fe;--color-tag-lilac-border: color-mix(in srgb, #a78bfa 35%, var(--color-border));--color-tag-mint-pastel-bg: color-mix(in srgb, #14b8a6 18%, var(--color-surface));--color-tag-mint-pastel-fg: #99f6e4;--color-tag-mint-pastel-border: color-mix(in srgb, #5eead4 30%, var(--color-border));--color-tag-sage-bg: color-mix(in srgb, var(--color-success) 20%, var(--color-surface));--color-tag-sage-fg: var(--color-success-text);--color-tag-sage-border: color-mix(in srgb, var(--color-success) 35%, var(--color-border));--color-tag-slate-bg: color-mix(in srgb, var(--color-accent-blue) 16%, var(--color-surface));--color-tag-slate-fg: #cbd5e1;--color-tag-slate-border: var(--color-border-strong);--color-tag-orange-bg: color-mix(in srgb, #ea580c 22%, var(--color-surface));--color-tag-orange-fg: #fdba74;--color-tag-orange-strong: #fed7aa;--color-tag-green-bg: color-mix(in srgb, var(--color-success) 22%, var(--color-surface));--color-tag-green-fg: #86efac;--color-tag-green-alt: #4ade80;--color-tag-green-soft-bg: color-mix(in srgb, var(--color-success) 14%, var(--color-surface));--color-tag-green-border: #34d399;--color-tag-pink-bg: color-mix(in srgb, #db2777 20%, var(--color-surface));--color-tag-pink-fg: #f9a8d4;--color-tag-amber-bg: color-mix(in srgb, #d97706 22%, var(--color-surface));--color-tag-amber-fg: #fcd34d;--color-tag-yellow-soft: color-mix(in srgb, #eab308 16%, var(--color-surface));--color-tag-mint-bg: color-mix(in srgb, #14b8a6 12%, var(--color-surface));--color-tag-mint-gradient-end: color-mix(in srgb, var(--color-success) 12%, var(--color-surface));--color-tag-warm-green: color-mix(in srgb, var(--color-success) 18%, var(--color-surface));--color-tag-warm-cream: color-mix(in srgb, #ea580c 18%, var(--color-surface));--color-indigo-bg: color-mix(in srgb, #6366f1 22%, var(--color-surface));--color-indigo-fg: #c7d2fe;--color-blue-ring: #60a5fa;--color-image-danger: #f87171;--color-image-danger-soft: #fecaca;--color-login-gradient: linear-gradient(160deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);--color-login-card-border: var(--color-border);--app-bg: var(--color-bg);--app-surface: var(--color-surface);--app-text: var(--color-text);--app-muted: var(--color-text-secondary);--app-border: var(--color-border);color:var(--color-text);background-color:var(--color-bg)}html.font-size-sm{font-size:14px}html.font-size-lg{font-size:17px}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--color-bg);color:var(--color-text)}#root{min-height:100vh}a{font-weight:400;color:inherit;text-decoration:none}*{scrollbar-color:var(--color-border-strong) var(--color-surface-muted)}.app-route-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem;color:var(--color-text-secondary)}.page-loading-padded{padding:2rem;color:var(--color-text-secondary)}.table-scroll-x{overflow-x:auto}.btn-spacing-left{margin-left:1rem}.table-empty-cell{padding:2rem;text-align:center}.muted-note{font-weight:400;font-size:.9rem}.login-aux-margin{margin-top:1.25rem}.pw-strength{margin:.35rem 0 .75rem}.pw-strength-track{height:6px;border-radius:4px;background:var(--color-border);overflow:hidden}.pw-strength-fill{height:100%;border-radius:4px;transition:width .2s,background .2s}.pw-strength-fill--dynamic{width:var(--pw-strength-pct, 0%)}.pw-strength--weak{background:var(--color-danger)}.pw-strength--medium{background:var(--color-warning)}.pw-strength--strong{background:var(--color-success)}.pw-strength-label{display:block;margin-top:.25rem;font-size:.7rem;color:var(--color-text-secondary);text-transform:capitalize}.layout{display:flex;min-height:100vh;background:var(--color-bg);font-family:Inter Variable,Inter,system-ui,sans-serif}.sidebar{width:260px;background:var(--color-surface);color:var(--color-text);padding:0;box-shadow:4px 0 24px var(--color-shadow);display:flex;flex-direction:column}.sidebar-header{flex-shrink:0;min-height:75px;display:flex;align-items:center;padding:0 1.5rem;border-bottom:1px solid var(--color-border-subtle);margin-bottom:1rem}.logo-img{height:36px;width:auto;display:block}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:.25rem;padding:0 .75rem 1.5rem;overflow-y:auto}.nav-section{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}.nav-section-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:color-mix(in srgb,var(--color-text) 50%,transparent);padding:.75rem 1rem .25rem}.nav-section-title--leads{text-transform:none;letter-spacing:.02em;font-size:.75rem}.nav-section-title--programa{text-transform:none;letter-spacing:.02em;font-size:.75rem;margin-top:.35rem}.nav-section-title--admin{text-transform:none;letter-spacing:.02em;font-size:.75rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--color-text);text-decoration:none;border-radius:8px;transition:background .3s ease,color .3s ease;font-size:14px;font-weight:400}.nav-item:hover{background:color-mix(in srgb,var(--color-text) 6%,transparent);color:var(--color-text)}.nav-item.active{background:color-mix(in srgb,var(--color-text) 10%,transparent);color:var(--color-text);font-weight:600}.nav-item-group{display:flex;flex-direction:column;gap:.125rem}.nav-toggle{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:14px;font-weight:400;color:var(--color-text);background:none;border:none;border-radius:8px;cursor:pointer;font-family:inherit;text-align:left;transition:background .3s ease,color .3s ease}.nav-toggle:hover{background:color-mix(in srgb,var(--color-text) 6%,transparent);color:var(--color-text)}.nav-chevron{margin-left:auto;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.nav-toggle.expanded .nav-chevron{transform:rotate(180deg)}.nav-item.submenu{font-size:14px;font-weight:400}.nav-submenu-wrapper{overflow:hidden;max-height:0;transition:max-height .3s ease}.nav-submenu-wrapper.expanded{max-height:400px}.nav-submenu{display:flex;flex-direction:column;gap:.125rem;padding-left:1rem;margin-bottom:.25rem}.nav-item.subsubmenu{padding:.5rem 1rem;font-size:13px;margin-left:.375rem;border-left:1px solid var(--color-border);border-radius:0}.nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.9}.main-wrapper{flex:1;display:flex;flex-direction:column;min-width:0}.main-header{flex-shrink:0;min-height:75px;display:flex;justify-content:flex-end;align-items:center;padding:0 2rem;background:var(--color-surface);border-bottom:1px solid var(--color-border-subtle)}.user-menu-wrap{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:none;border:none;border-radius:8px;cursor:pointer;font-family:inherit;color:var(--color-text);transition:background .2s ease}.user-menu-trigger:hover{background:var(--color-surface-hover)}.user-info{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.user-nombre{font-size:.95rem;font-weight:600;color:var(--color-text)}.user-email{font-size:.8rem;color:var(--color-text-secondary)}.user-chevron{display:flex;align-items:center;opacity:.7}.user-menu-backdrop{position:fixed;inset:0;z-index:10}.user-menu-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:180px;padding:.5rem;background:var(--color-surface);border-radius:10px;box-shadow:0 4px 20px var(--color-shadow);border:1px solid var(--color-border);z-index:20}.user-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.6rem .75rem;font-size:.9rem;color:var(--color-text);background:none;border:none;border-radius:6px;cursor:pointer;font-family:inherit;text-decoration:none;text-align:left;transition:background .2s ease}.user-menu-item:hover{background:var(--color-surface-hover)}.user-menu-logout:hover{background:color-mix(in srgb,var(--color-danger) 14%,var(--color-surface));color:var(--color-danger)}.main-content{flex:1;padding:2rem;overflow-x:hidden}.user-menu-icon-svg{display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);flex-shrink:0}.password-input-wrap{position:relative;display:flex;flex-direction:column;gap:.25rem;width:100%}.password-input-field{width:100%;padding:.65rem 2.75rem .65rem .85rem;font-size:.95rem;background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:8px;outline:none;transition:border-color .2s,box-shadow .2s}.password-input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.password-input-field--error{border-color:var(--color-danger)}.password-input-toggle{position:absolute;right:.35rem;top:.45rem;display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:6px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:color .15s,background .15s}.password-input-toggle:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-hover)}.password-input-toggle:disabled{opacity:.5;cursor:not-allowed}.password-input-error-text{font-size:.75rem;color:var(--color-danger-text-strong)}.otp-six-wrap{display:flex;flex-direction:column;gap:.5rem;align-items:center}.otp-six-row{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.otp-six-cell{width:2.5rem;height:2.75rem;text-align:center;font-size:1.25rem;font-weight:600;background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:8px;outline:none;transition:border-color .2s,box-shadow .2s}.otp-six-cell:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.otp-six-cell--error{border-color:var(--color-danger)}.otp-six-error{margin:0;font-size:.875rem;color:var(--color-danger-text-strong);text-align:center}@keyframes login-card-enter{0%{opacity:0;transform:translateY(18px)}70%{opacity:1;transform:translateY(-2px)}88%{transform:translateY(1px)}to{opacity:1;transform:translateY(0)}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--color-login-gradient)}.login-card{width:100%;max-width:400px;background:var(--color-surface);border-radius:16px;padding:2rem 2rem 1.75rem;box-shadow:var(--color-elevation-modal);border:1px solid var(--color-login-card-border);animation:login-card-enter .48s cubic-bezier(.25,.46,.45,.94) both}@media(prefers-reduced-motion:reduce){.login-card{animation:none;opacity:1;transform:none}}.login-logo{height:40px;width:auto;display:block;margin:0 auto 1.25rem}.login-card h1{margin:0 0 .35rem;font-size:1.5rem;font-weight:700;color:var(--color-text);text-align:center}.login-subtitle{margin:0 0 1.5rem;font-size:.9rem;color:var(--color-text-secondary);text-align:center}.login-form{display:flex;flex-direction:column;gap:.35rem}.login-form label{font-size:.8rem;font-weight:600;color:var(--color-text-tertiary);margin-top:.5rem}.login-form label:first-of-type{margin-top:0}.login-form input{padding:.65rem .85rem;font-size:.95rem;background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:8px;outline:none;transition:border-color .2s,box-shadow .2s}.login-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.login-error{padding:.65rem .85rem;font-size:.875rem;color:var(--color-danger-text-strong);background:var(--color-danger-bg);border-radius:8px;margin-bottom:.25rem}.login-submit{margin-top:1rem;padding:.75rem 1rem;font-size:.95rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s}.login-submit:hover:not(:disabled){background:var(--color-primary-hover)}.login-submit:disabled{opacity:.7;cursor:not-allowed}.login-forgot-wrap{margin:1rem 0 0;text-align:center}.login-link{font-size:.875rem;color:var(--color-primary);font-weight:500;text-decoration:underline;text-underline-offset:2px}.login-link:hover{color:var(--color-primary-hover)}.login-form--2fa{align-items:center}.login-2fa-intro{margin:0 0 .75rem;font-size:.9rem;color:var(--color-text-tertiary);text-align:center;line-height:1.45}.login-secondary{margin-top:.75rem;padding:.55rem 1rem;font-size:.875rem;font-weight:500;color:var(--color-text-tertiary);background:transparent;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;width:100%;transition:background .2s,border-color .2s}.login-secondary:hover:not(:disabled){background:var(--color-surface-muted);border-color:var(--color-border-strong)}.login-secondary:disabled{opacity:.6;cursor:not-allowed}.forgot-success{margin:0;padding:.85rem 1rem;font-size:.9rem;line-height:1.5;color:var(--color-success-text);background:var(--color-success-bg);border-radius:8px;border:1px solid var(--color-success-border);text-align:center}.login-field-hint{margin:-.15rem 0 .35rem;font-size:.75rem;color:var(--color-text-secondary)}.login-field-hint--warn{color:var(--color-warning-text)}.config-page{max-width:720px;margin:0 auto;padding:0 0 2rem}.config-header{margin-bottom:1.25rem}.config-title{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text)}.config-subtitle{margin:.35rem 0 0;font-size:.9rem;color:var(--color-text-secondary)}.config-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.25rem;border-bottom:1px solid var(--color-border);padding-bottom:.5rem}.config-tab{padding:.5rem .85rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.config-tab:hover{background:var(--color-surface-hover);color:var(--color-text-tertiary)}.config-tab--active{color:var(--color-primary);background:var(--color-primary-muted-bg)}.config-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1.25rem 1.35rem;box-shadow:0 4px 20px var(--color-shadow)}.config-form{display:flex;flex-direction:column;gap:.5rem}.config-stack{display:flex;flex-direction:column;gap:2rem}.config-section{padding-bottom:1.5rem;border-bottom:1px solid var(--color-border-subtle)}.config-section:last-child{border-bottom:none;padding-bottom:0}.config-section-title{margin:0 0 .35rem;font-size:1.05rem;font-weight:600;color:var(--color-text)}.config-section-desc{margin:0 0 1rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.45}.config-label{font-size:.8rem;font-weight:600;color:var(--color-text-tertiary);margin-top:.35rem}.config-input{padding:.6rem .85rem;font-size:.95rem;background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:8px;outline:none;transition:border-color .2s,box-shadow .2s}.config-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.config-input--readonly{background:var(--color-surface-muted);color:var(--color-text-secondary)}.config-avatar-block{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.config-avatar{width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.35rem;font-weight:700;color:var(--color-on-primary);flex-shrink:0}.config-role-badge{display:inline-block;padding:.25rem .65rem;font-size:.8rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-muted-bg);border-radius:999px}.config-btn-primary{margin-top:.75rem;align-self:flex-start;padding:.65rem 1.15rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s}.config-btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.config-btn-primary:disabled{opacity:.65;cursor:not-allowed}.config-btn-secondary{padding:.55rem 1rem;font-size:.875rem;font-weight:500;color:var(--color-text-tertiary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s}.config-btn-secondary:hover:not(:disabled){background:var(--color-surface-muted);border-color:var(--color-border-strong)}.config-btn-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.config-banner{margin:.25rem 0;padding:.55rem .75rem;font-size:.85rem;border-radius:8px}.config-banner--ok{color:var(--color-success-text);background:var(--color-success-bg);border:1px solid var(--color-success-border)}.config-banner--err{color:var(--color-danger-text-strong);background:var(--color-danger-bg);border:1px solid var(--color-danger-border)}.config-field-hint{margin:-.2rem 0 .35rem;font-size:.75rem;color:var(--color-text-secondary)}.config-field-hint--warn{color:var(--color-warning-text)}.config-qr-wrap{display:flex;justify-content:center;margin:.5rem 0}.config-qr{max-width:220px;height:auto;border-radius:8px;border:1px solid var(--color-border)}.config-secret{font-size:.8rem;color:var(--color-text-tertiary);word-break:break-all}.config-secret-label{font-weight:600}.config-2fa-active{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.config-badge-ok{display:inline-block;padding:.2rem .6rem;font-size:.75rem;font-weight:600;color:var(--color-success-text);background:var(--color-success-chip-bg);border-radius:999px}.config-fieldset{border:none;margin:0 0 1rem;padding:0}.config-fieldset .config-label{margin-bottom:.5rem}.config-radio-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.45rem;font-size:.9rem;color:var(--color-text-tertiary);cursor:pointer}.config-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--color-border-subtle);font-size:.9rem;color:var(--color-text-tertiary)}.config-toggle-row:last-of-type{border-bottom:none}.config-switch{position:relative;width:44px;height:26px;border-radius:999px;border:none;background:var(--color-border-strong);cursor:pointer;flex-shrink:0;transition:background .2s}.config-switch--on{background:var(--color-primary)}.config-switch-knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--color-surface);box-shadow:var(--color-shadow-knob);transition:transform .2s}.config-switch--on .config-switch-knob{transform:translate(18px)}@media(max-width:640px){.config-page{padding:0 .25rem 1.5rem}.config-panel{padding:1rem}}.dashboard{width:100%}.dashboard-header{margin-bottom:2rem}.dashboard-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.dashboard-header .subtitle{color:var(--color-text-secondary);font-size:.95rem;margin:0}.chart-section{background:var(--color-surface);border-radius:12px;padding:1.5rem 1.5rem 1.75rem;box-shadow:var(--color-shadow-card);margin-bottom:2rem;border:1px solid var(--color-border-subtle)}.chart-section h3{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1rem}.canales-section{margin-bottom:2rem}.canales-title{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1rem}.dashboard .charts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.dashboard .chart-section.chart-card{margin-bottom:0;width:100%;background:var(--color-surface);border-radius:12px;padding:1.5rem 1.5rem 1.75rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.dashboard .chart-section.chart-card .chart-card-title{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1.25rem}.dashboard .chart-section.chart-card .tienda-chart-container{min-height:280px}@media(max-width:1024px){.dashboard .charts-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.dashboard .charts-grid{grid-template-columns:1fr}}.chart-container{width:100%;min-height:300px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--color-surface);border-radius:12px;padding:1.5rem;display:flex;align-items:flex-start;gap:1rem;box-shadow:var(--color-shadow-card)}.stat-icon{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 15%,transparent);padding:.5rem;border-radius:10px}.stat-content{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.85rem;color:var(--color-text-secondary)}.stat-value{font-size:1.5rem;font-weight:700;color:var(--color-text)}.stat-change.positive{font-size:.8rem;color:var(--color-success-bright);font-weight:600}.stat-change--muted{font-size:.75rem;color:var(--color-text-muted);font-weight:500;line-height:1.35}.dashboard-api-error{margin:0 0 1rem;padding:.75rem 1rem;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:10px;color:var(--color-danger-text);font-size:.9rem}.canales-hint-demo{margin:-.5rem 0 1rem;font-size:.82rem;color:var(--color-text-muted)}.dashboard-section{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card)}.dashboard-section h3{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1rem}.channel-table{width:100%;border-collapse:collapse}.channel-table th,.channel-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.channel-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.channel-table td{font-size:.95rem;color:var(--color-text-tertiary)}.progress-cell{display:flex;align-items:center;gap:.5rem;min-width:120px}.progress-bar{height:6px;background:var(--color-accent-blue);border-radius:3px;min-width:0}.tienda-en-linea-page{width:100%}.tienda-chart-section{width:100%;background:var(--color-surface);border-radius:12px;padding:1.5rem 1.5rem 1.75rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.tienda-chart-title{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1.25rem}.tienda-chart-container{width:100%;min-height:320px}.tienda-ventas-tabla-section{width:100%;margin-top:1.5rem;background:var(--color-surface);border-radius:12px;padding:1.5rem 1.5rem 1.75rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.tienda-ventas-tabla-title{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1.25rem}.tienda-ventas-tabla-wrap{overflow-x:auto}.tienda-ventas-tabla{width:100%;border-collapse:collapse}.tienda-ventas-tabla th,.tienda-ventas-tabla td{padding:.75rem 1.25rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.tienda-ventas-tabla th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.tienda-ventas-tabla td{font-size:.9rem;color:var(--color-text-tertiary)}.tienda-ventas-tabla .col-numero{text-align:right;font-variant-numeric:tabular-nums}.tienda-ventas-tabla tbody tr:hover:not(.tienda-ventas-total){background:var(--color-surface-muted)}.tienda-ventas-tabla .tienda-ventas-total{background:color-mix(in srgb,var(--color-primary) 8%,transparent);font-size:.95rem}.tienda-ventas-tabla .tienda-ventas-total td{padding-top:1rem;padding-bottom:1rem;border-top:2px solid var(--color-border);color:var(--color-text)}.productos-page{width:100%}.productos-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.productos-toolbar{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.productos-page .search-box{display:flex;align-items:center;gap:.75rem;max-width:400px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.productos-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.productos-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.productos-page .search-input{flex:1;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.productos-page .search-input::placeholder{color:var(--color-text-muted)}.productos-table-wrap{overflow-x:auto}.productos-table{width:100%;border-collapse:collapse}.productos-table th,.productos-table td{padding:.45rem 1rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.productos-table th{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.productos-table td{font-size:.8rem;color:var(--color-text-tertiary)}.productos-table tbody tr:hover{background:var(--color-surface-muted)}.productos-table-row-clickable{cursor:pointer}.productos-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}.productos-table .col-imagen{width:70px}.productos-table .col-nombre{min-width:220px}.productos-table .col-categorias{min-width:180px}.productos-table .col-tiendas{min-width:200px}.productos-table .col-estado{min-width:100px}.badge-estado{display:inline-block;font-size:.7rem;font-weight:600;padding:.25rem .5rem;border-radius:6px}.badge-estado--activo{background:var(--color-success-chip-bg);color:var(--color-tag-green-alt)}.badge-estado--inactivo{background:var(--color-tag-orange-bg);color:var(--color-tag-orange-fg)}.categorias-badges{display:flex;flex-wrap:wrap;gap:.4rem}.badge-categoria{display:inline-block;font-size:.7rem;font-weight:600;padding:.25rem .5rem;border-radius:6px}.producto-imagen-wrap{display:flex;align-items:center;justify-content:flex-start}.producto-imagen,.producto-imagen-placeholder{width:40px;height:40px;border-radius:8px;object-fit:cover;border:1px solid var(--color-border)}.producto-imagen{display:block}.producto-imagen-placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-surface-hover)}.tiendas-badges{display:flex;flex-wrap:wrap;gap:.4rem}.badge-tienda{display:inline-block;font-size:.7rem;font-weight:600;padding:.25rem .5rem;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.productos-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.productos-page-header .page-header-text{flex:1;min-width:0}.btn-agregar-producto{padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-agregar-producto:hover{background:var(--color-primary-hover)}@keyframes modalBackdropFade{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.productos-page .modal-backdrop{position:fixed;inset:0;background:var(--color-scrim-soft);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-x:hidden;overflow-y:auto;animation:modalBackdropFade .25s ease-out}.productos-page .modal-agregar-producto{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-elevation-floating);width:100%;max-width:min(520px,calc(100vw - 2rem));min-height:520px;max-height:90vh;overflow:hidden;overflow-x:hidden;display:flex;flex-direction:column;flex-shrink:0;animation:modalSlideUp .35s cubic-bezier(.34,1.56,.64,1)}.productos-page .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.productos-page .modal-header h3{margin:0;font-size:1.2rem;font-weight:600;color:var(--color-text)}.productos-page .modal-cerrar{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;color:var(--color-text-secondary);background:none;border:none;border-radius:6px;cursor:pointer;transition:background .2s,color .2s}.productos-page .modal-cerrar:hover{background:var(--color-surface-hover);color:var(--color-text)}.productos-page .modal-body{flex:1;min-width:0;padding:1.5rem;overflow-y:auto;overflow-x:hidden;min-height:320px}.productos-page .modal-agregar-campos{display:grid;grid-template-columns:1fr 1fr;gap:1rem;min-width:0}@media(max-width:560px){.productos-page .modal-agregar-campos{grid-template-columns:1fr}}.productos-page .modal-body .form-group{margin-bottom:0}.productos-page .dropdown-wrap{position:relative;min-width:0}.productos-page .modal-agregar-campos .form-group{min-width:0}.productos-page .modal-body .form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-tertiary);margin-bottom:.5rem}.productos-page .modal-label-with-logo{display:block;margin-bottom:.5rem}.productos-page .modal-label-logo{display:block;height:28px;width:auto;object-fit:contain;object-position:left center}.productos-page .custom-dropdown{position:relative;min-width:0}.productos-page .custom-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s}.productos-page .custom-dropdown-trigger:hover{border-color:var(--color-border-strong)}.productos-page .custom-dropdown-trigger[aria-expanded=true]{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.productos-page .custom-dropdown-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.productos-page .custom-dropdown-value.placeholder{color:var(--color-text-muted)}.productos-page .custom-dropdown-chevron{flex-shrink:0;font-size:.65rem;color:var(--color-text-secondary);transition:transform .2s}.productos-page .custom-dropdown-trigger[aria-expanded=true] .custom-dropdown-chevron{transform:rotate(180deg)}.productos-page .custom-dropdown-trigger--with-preview{min-height:48px}.productos-page .custom-dropdown-trigger-img,.productos-page .custom-dropdown-trigger-placeholder{width:36px;height:36px;flex-shrink:0;border-radius:6px;object-fit:cover;border:1px solid var(--color-border)}.productos-page .custom-dropdown-trigger-placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-surface-hover)}.productos-page .custom-dropdown-panel{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--color-elevation-floating);z-index:10;overflow:hidden;max-height:320px;display:flex;flex-direction:column}.productos-page .custom-dropdown-search{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-surface-muted);border-bottom:1px solid var(--color-border)}.productos-page .custom-dropdown-input{flex:1;border:none;background:transparent;font-size:.9rem;color:var(--color-text);outline:none}.productos-page .custom-dropdown-input::placeholder{color:var(--color-text-muted)}.productos-page .custom-dropdown-list{overflow-y:auto;padding:.35rem;max-height:260px}.productos-page .custom-dropdown-option{display:block;width:100%;padding:.5rem .75rem;font-size:.9rem;color:var(--color-text);background:none;border:none;border-radius:6px;text-align:left;cursor:pointer;font-family:inherit;transition:background .15s}.productos-page .custom-dropdown-option--with-img{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem}.productos-page .custom-dropdown-option-img,.productos-page .custom-dropdown-option-img-placeholder{width:32px;height:32px;flex-shrink:0;border-radius:6px;object-fit:cover;border:1px solid var(--color-border)}.productos-page .custom-dropdown-option-img-placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-surface-hover)}.productos-page .custom-dropdown-option-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.productos-page .custom-dropdown-option:hover{background:var(--color-surface-hover)}.productos-page .custom-dropdown-option.selected{background:var(--color-indigo-bg);color:var(--color-primary);font-weight:500}.productos-page .custom-dropdown-empty{padding:.75rem 1rem;font-size:.875rem;color:var(--color-text-muted);text-align:center}.productos-page .form-select{width:100%;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;outline:none;cursor:pointer;transition:border-color .2s,box-shadow .2s}.productos-page .form-select:hover{border-color:var(--color-border-strong)}.productos-page .form-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.productos-page .modal-agregar-estado{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--color-border-subtle)}.productos-page .modal-agregar-estado .form-group{margin-bottom:0}.productos-page .modal-agregar-estado label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-tertiary);margin-bottom:.5rem}.productos-page .modal-agregar-estado .form-select{max-width:160px}.productos-page .modal-aviso{margin:.5rem 0 0;font-size:.875rem;color:var(--color-text-secondary)}.productos-page .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border-subtle);background:var(--color-table-header-bg)}.productos-page .btn-modal-cancelar{padding:.5rem 1rem;font-size:.9rem;font-weight:500;color:var(--color-text-tertiary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s}.productos-page .btn-modal-cancelar:hover{background:var(--color-surface-muted);border-color:var(--color-border-strong)}.productos-page .btn-modal-primary{padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s}.productos-page .btn-modal-primary:hover:not(:disabled){background:var(--color-primary-hover)}.productos-page .btn-modal-primary:disabled{opacity:.6;cursor:not-allowed}.producto-detalle-page{width:100%}.producto-detalle-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.producto-detalle-page .btn-volver{display:inline-flex;align-items:center;justify-content:center;padding:.5rem;font-size:.95rem;color:var(--color-primary);background:none;border:none;border-radius:8px;cursor:pointer;transition:background .2s,color .2s}.producto-detalle-page .btn-volver:hover{background:var(--color-surface-hover);color:var(--color-primary-hover)}.producto-detalle-page .producto-detalle-header .producto-detalle-titulo-pagina{margin:0;font-size:22px;font-weight:700;color:var(--color-text)}.producto-detalle-layout{display:grid;grid-template-columns:1fr 380px;gap:2rem;align-items:start}@media(max-width:960px){.producto-detalle-layout{grid-template-columns:1fr}}.producto-detalle-derecha{display:flex;flex-direction:column;gap:1.5rem}.producto-detalle-ingredientes-block,.producto-detalle-estado-block{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.producto-detalle-estado-block label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-tertiary);letter-spacing:.03em;margin-bottom:.4rem}.producto-estado-select{width:100%;padding:.5rem .75rem;font-size:.9rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;outline:none}.producto-estado-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.producto-detalle-sync-block{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.producto-detalle-sync-block label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-tertiary);letter-spacing:.03em;margin-bottom:.75rem}.producto-detalle-sync-status{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.producto-detalle-sync-logo{height:28px;width:auto;object-fit:contain}.producto-detalle-sync-status.no-sincronizado .producto-detalle-sync-logo{opacity:.5}.producto-detalle-sync-flecha{font-size:1rem;color:var(--color-text-muted);font-weight:600}.producto-detalle-sync-status.sincronizado .producto-detalle-sync-flecha{color:var(--color-primary)}.producto-detalle-sync-texto{font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.producto-detalle-sync-status.sincronizado .producto-detalle-sync-texto{color:var(--color-tag-green-alt)}.producto-detalle-sync-status.no-sincronizado .producto-detalle-sync-texto{color:var(--color-text-muted)}.producto-detalle-categorias-block{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.producto-detalle-categorias-block label,.producto-detalle-ingredientes-block label,.producto-detalle-etiquetas-block label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-tertiary);letter-spacing:.03em;margin-bottom:.4rem}.producto-detalle-etiquetas-block{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.badge-etiqueta{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;padding:.25rem .45rem .25rem .55rem;background:var(--color-surface-hover);color:var(--color-text-secondary);border-radius:9999px;font-weight:500}.badge-etiqueta .badge-ingrediente-quitar:hover{color:var(--color-danger-text-strong)}.producto-detalle-imagenes{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);margin-bottom:1.5rem}.producto-detalle-file-input{position:absolute;width:0;height:0;opacity:0;overflow:hidden;pointer-events:none}.producto-imagenes-fila{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.producto-imagenes-fila .producto-imagen-principal-wrap,.producto-imagenes-fila .producto-imagen-secundaria-wrap{margin-bottom:0;flex-shrink:0}.producto-imagen-secundaria-columna{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;flex-shrink:0}.producto-imagen-principal-wrap{position:relative;width:200px;height:200px;border-radius:12px;overflow:hidden;background:var(--color-surface-muted);margin-bottom:1rem;border:1px solid var(--color-border)}.producto-imagen-principal{width:100%;height:100%;object-fit:cover}.producto-imagen-acciones{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background:var(--color-scrim-photo);opacity:0;transition:opacity .2s}.producto-imagen-principal-wrap:hover .producto-imagen-acciones{opacity:1}.btn-imagen-accion{padding:.35rem .65rem;font-size:.8rem;font-weight:500;color:var(--color-on-primary);background:var(--color-on-image-control-bg);border:1px solid var(--color-on-image-control-border);border-radius:6px;cursor:pointer;transition:background .2s}.btn-imagen-accion:hover{background:var(--color-on-image-control-bg-hover)}.btn-imagen-eliminar{padding:.35rem;color:var(--color-image-danger-soft);border-color:var(--color-on-image-danger-border)}.btn-imagen-eliminar:hover{color:var(--color-image-danger);background:var(--color-on-image-danger-bg)}.producto-imagen-placeholder-grande{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:var(--color-surface-hover)}.btn-imagen-subir-placeholder{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s}.btn-imagen-subir-placeholder:hover{background:var(--color-surface-muted);border-color:var(--color-primary)}.producto-imagen-secundaria-wrap{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;background:var(--color-surface-muted);margin-bottom:1rem;border:1px solid var(--color-border)}.producto-imagen-secundaria{width:100%;height:100%;object-fit:cover}.producto-imagen-acciones--secundaria{padding:.35rem}.producto-imagen-acciones--secundaria .btn-imagen-accion{font-size:.75rem;padding:.25rem .5rem}.producto-imagen-secundaria-wrap--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-surface-hover);border:1px dashed var(--color-border-strong)}.btn-agregar-secundaria{padding:.5rem 1rem;font-size:.85rem;font-weight:500;color:var(--color-text-secondary);background:transparent;border:none;cursor:pointer;transition:color .2s}.btn-agregar-secundaria:hover{color:var(--color-primary)}.producto-galeria-label{font-size:.8rem;font-weight:600;color:var(--color-text-secondary);letter-spacing:.03em;display:block;margin-bottom:.5rem}.producto-galeria-thumbs{display:flex;flex-wrap:wrap;gap:.5rem}.producto-galeria-thumb-wrap{position:relative;border-radius:8px;border:1px solid var(--color-border);transition:border-color .2s,box-shadow .2s}.producto-galeria-thumb-wrap.activo{border-color:var(--color-primary);box-shadow:var(--color-ring-primary)}.producto-galeria-thumb-wrap:hover .producto-galeria-thumb-acciones{opacity:1}.producto-galeria-thumb{width:56px;height:56px;border-radius:6px;overflow:hidden;padding:0;background:var(--color-surface-hover);display:block;border:none}.producto-galeria-thumb-agregar{width:56px;height:56px;flex-shrink:0;border-radius:8px;border:2px dashed var(--color-border-strong);background:var(--color-surface-hover);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s}.producto-galeria-thumb-agregar:hover{background:var(--color-border);border-color:var(--color-text-muted)}.producto-galeria-thumb-agregar-mas{font-size:1.5rem;font-weight:300;line-height:1;color:var(--color-text-secondary)}.producto-galeria-thumb-agregar:hover .producto-galeria-thumb-agregar-mas{color:var(--color-text-tertiary)}.producto-galeria-thumb img{width:100%;height:100%;object-fit:cover;display:block}.producto-galeria-thumb-acciones{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:2px;padding:2px;background:var(--color-overlay-scrim);opacity:0;transition:opacity .2s;border-radius:0 0 6px 6px}.btn-galeria-reemplazar,.btn-galeria-eliminar{padding:.2rem .35rem;font-size:.65rem;color:var(--color-on-primary);background:transparent;border:none;cursor:pointer;border-radius:4px;display:inline-flex;align-items:center;justify-content:center}.btn-galeria-reemplazar:hover,.btn-galeria-eliminar:hover{background:var(--color-on-image-control-bg)}.btn-galeria-eliminar{color:var(--color-image-danger-soft)}.producto-detalle-datos{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.producto-detalle-datos .form-group{margin-bottom:1.25rem}.producto-detalle-datos .form-group:last-child{margin-bottom:0}.producto-detalle-datos label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-tertiary);letter-spacing:.03em;margin-bottom:.4rem}.producto-detalle-datos .form-input{width:100%;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;outline:none}.producto-detalle-datos .form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.producto-nombre-input{font-size:1.1rem;font-weight:400}.ingredientes-badges-wrap{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.badge-ingrediente{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;padding:.25rem .45rem .25rem .55rem;background:var(--color-surface-hover);color:var(--color-text-secondary);border-radius:9999px;font-weight:500}.badge-ingrediente-quitar{padding:0 .15rem;font-size:.95rem;line-height:1;background:none;border:none;color:var(--color-text-muted);cursor:pointer;border-radius:4px;transition:color .15s,background .15s}.badge-ingrediente-quitar:hover{color:var(--color-danger);background:var(--color-danger-bg)}.ingredientes-agregar{display:flex;gap:.5rem;flex-wrap:wrap}.input-agregar-ingrediente{width:180px;min-width:140px}.btn-agregar-etiqueta{padding:.35rem .75rem;font-size:.8rem;font-weight:400;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:6px;cursor:pointer;transition:background .2s}.btn-agregar-etiqueta:hover{background:var(--color-primary-hover)}.categorias-asignar-wrap{display:flex;flex-direction:column;gap:.75rem}.categorias-badges-list{display:flex;flex-wrap:wrap;gap:.4rem}.producto-detalle-datos .badge-categoria{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;padding:.25rem .45rem .25rem .55rem;background:var(--color-surface-hover);color:var(--color-text-secondary);border-radius:9999px}.badge-categoria-quitar{padding:0 .15rem;font-size:.95rem;line-height:1;background:none;border:none;color:var(--color-text-muted);cursor:pointer;border-radius:4px;transition:color .15s,background .15s}.badge-categoria-quitar:hover{color:var(--color-danger);background:var(--color-danger-bg)}.categorias-agregar{display:flex;gap:.5rem;flex-wrap:wrap}.form-select{padding:.5rem .75rem;font-size:.9rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;outline:none;min-width:160px}.btn-agregar-categoria{padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:var(--color-primary);background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s}.btn-agregar-categoria:hover{background:var(--color-border);border-color:var(--color-border-strong)}.editor-desc-wrap{border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-surface)}.editor-desc-wrap:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.editor-desc-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:.35rem .5rem;background:var(--color-surface-muted);border-bottom:1px solid var(--color-border)}.editor-desc-toolbar-sep{width:1px;height:1.25rem;margin:0 4px;background:var(--color-border-strong)}.editor-desc-toolbar button{padding:.35rem .6rem;font-size:.85rem;background:transparent;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-tertiary);font-weight:600}.editor-desc-toolbar button:hover{background:var(--color-border);color:var(--color-text)}.editor-desc-toolbar button.active{background:var(--color-primary);color:var(--color-on-primary)}.producto-detalle-page .ProseMirror{min-height:160px;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);outline:none}.producto-detalle-page .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-muted);pointer-events:none;height:0}.producto-precios{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-subtle)}.input-precio-wrap{display:flex;align-items:center;gap:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.input-precio-wrap:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.input-precio-simbolo{padding:.6rem .75rem;font-size:.95rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-surface-muted);border-right:1px solid var(--color-border)}.input-precio-wrap .input-precio{border:none;border-radius:0;flex:1;min-width:0}.input-precio-wrap .input-precio:focus{box-shadow:none}@media(max-width:500px){.producto-precios{grid-template-columns:1fr}}.badge-cat--azul{background:var(--color-tag-blue-bg);color:var(--color-tag-blue-fg)}.badge-cat--verde{background:var(--color-success-chip-bg);color:var(--color-tag-green-alt)}.badge-cat--teal{background:var(--color-tag-teal-bg);color:var(--color-tag-teal-fg)}.badge-cat--violeta{background:var(--color-tag-purple-bg);color:var(--color-tag-purple-fg)}.badge-cat--naranja{background:var(--color-tag-orange-bg);color:var(--color-tag-orange-fg)}.badge-cat--esmeralda{background:var(--color-tag-green-bg);color:var(--color-tag-green-fg)}.badge-cat--gris{background:var(--color-surface-hover);color:var(--color-text-tertiary)}.tienda-subpage{width:100%}.tienda-subpage .page-header{margin-bottom:2rem}.tienda-subpage .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.tienda-subpage .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.tienda-subpage .channel-placeholder{background:var(--color-surface);border-radius:12px;padding:4rem 2rem;text-align:center;box-shadow:var(--color-shadow-card);border:2px dashed var(--color-border)}.tienda-subpage .placeholder-icon{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;opacity:.7}.tienda-subpage .channel-placeholder p{font-size:1.1rem;font-weight:600;color:var(--color-text-tertiary);margin:0 0 .5rem}.tienda-subpage .placeholder-hint{font-size:.9rem;color:var(--color-text-muted)}.precios-page{width:100%}.precios-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.precios-table-wrap{overflow-x:auto}.precios-table{width:100%;border-collapse:collapse;min-width:500px}.precios-table th,.precios-table td{padding:.6rem 1rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.precios-table th{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.precios-table td{font-size:.9rem;color:var(--color-text-tertiary)}.precios-table tbody tr:hover{background:var(--color-surface-muted)}.precios-table .col-nombre{min-width:200px;max-width:280px}.precios-table .col-precio-comp{min-width:140px}.precios-table .col-precio-lista{min-width:120px}.precios-table .col-actions{min-width:140px;background:var(--color-surface-muted)}.input-precio{width:100%;max-width:110px;padding:.4rem .6rem;font-size:.9rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;outline:none}.input-precio:hover{border-color:var(--color-border-strong)}.input-precio:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-focus-ring)}.th-columna{display:flex;align-items:center;gap:.5rem}.th-label{flex:1;cursor:pointer;padding:.2rem 0}.th-label:hover{color:var(--color-primary)}.th-input{flex:1;min-width:80px;padding:.3rem .5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-primary);border-radius:4px;outline:none}.btn-eliminar-col{display:flex;align-items:center;justify-content:center;padding:.25rem;color:var(--color-text-muted);background:transparent;border:none;border-radius:4px;cursor:pointer;transition:color .2s,background .2s}.btn-eliminar-col:hover{color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 10%,transparent)}.btn-agregar-columna{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.8rem;font-weight:600;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent);border:1px dashed var(--color-primary);border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s}.btn-agregar-columna:hover{background:color-mix(in srgb,var(--color-primary) 18%,transparent);border-color:var(--color-primary-hover)}.agregar-columna-inline{display:flex;align-items:center}.input-nueva-columna{min-width:140px;padding:.4rem .6rem;font-size:.8rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-primary);border-radius:6px;outline:none}.input-nueva-columna::placeholder{color:var(--color-text-muted)}.input-nueva-columna:focus{box-shadow:var(--color-ring-primary)}.pedidos-page{width:100%}.pedidos-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.pedidos-toolbar{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.pedidos-page .search-box{display:flex;align-items:center;gap:.75rem;max-width:400px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.pedidos-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.pedidos-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.pedidos-page .search-input{flex:1;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.pedidos-page .search-input::placeholder{color:var(--color-text-muted)}.pedidos-table-wrap{overflow-x:auto}.pedidos-table{width:100%;border-collapse:collapse}.pedidos-table th,.pedidos-table td{padding:.75rem 1.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.pedidos-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.pedidos-table td{font-size:.9rem;color:var(--color-text-tertiary)}.pedidos-table tbody tr:hover{background:var(--color-surface-muted)}.pedidos-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}.pedidos-table .badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:6px}.pedidos-table .badge.estado-pago-pagado{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.pedidos-table .badge.estado-pago-pendiente{background:color-mix(in srgb,var(--color-amazon-orange) 15%,transparent);color:var(--color-warning-text)}.pedidos-table .badge.estado-pago-rechazado{background:color-mix(in srgb,var(--color-danger) 15%,transparent);color:var(--color-danger)}.pedidos-table .badge.estado-prep-pendiente{background:color-mix(in srgb,var(--color-text-secondary) 15%,transparent);color:var(--color-text-secondary)}.pedidos-table .badge.estado-prep-en-preparación{background:color-mix(in srgb,var(--color-accent-blue) 15%,transparent);color:var(--color-accent-blue-bright)}.pedidos-table .badge.estado-prep-enviado{background:color-mix(in srgb,var(--color-accent-violet) 15%,transparent);color:var(--color-accent-violet-fg)}.pedidos-table .badge.estado-prep-entregado{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.pedidos-table .badge.estado-prep-cancelado{background:color-mix(in srgb,var(--color-danger) 15%,transparent);color:var(--color-danger)}.tiendas-fisicas{width:100%}.tiendas-fisicas .page-header{margin-bottom:2rem}.tiendas-fisicas .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.tiendas-fisicas .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.tiendas-chart-section{width:100%;margin-bottom:2rem;background:var(--color-surface);border-radius:12px;padding:1.5rem 1.5rem 1.75rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.tiendas-chart-title{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1.25rem}.tiendas-chart-container{width:100%;min-height:320px}.tiendas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.tienda-card{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:.75rem;transition:box-shadow .2s ease,border-color .2s ease}.tienda-card:hover{box-shadow:var(--color-elevation-md);border-color:var(--color-border)}.tienda-card-header{display:flex;align-items:center;justify-content:space-between}.tienda-icon{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-primary) 12%,transparent);padding:.5rem;border-radius:8px}.tienda-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:.25rem .5rem;border-radius:4px}.tienda-badge.activa{background:color-mix(in srgb,var(--color-success) 18%,transparent);color:var(--color-success)}.tienda-badge.inactiva{background:color-mix(in srgb,var(--color-text-secondary) 15%,transparent);color:var(--color-text-secondary)}.tienda-nombre{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0}.tienda-direccion{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:var(--color-text-secondary);margin:0;line-height:1.4}.tienda-direccion svg{flex-shrink:0;margin-top:2px}.tienda-ventas{font-size:.9rem;font-weight:600;color:var(--color-text-tertiary);margin:0}.tienda-card-btn{margin-top:auto;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-primary) 25%,transparent);border-radius:8px;cursor:pointer;transition:background .2s,color .2s}.tienda-card-btn:hover{background:color-mix(in srgb,var(--color-primary) 18%,transparent);color:var(--color-primary)}.tienda-card.agregar-tienda{display:flex;align-items:center;justify-content:center;min-height:220px;border:2px dashed var(--color-border);background:var(--color-table-header-bg);cursor:pointer}.tienda-card.agregar-tienda:hover{border-color:var(--color-text-muted);background:var(--color-surface-muted)}.tienda-card.agregar-tienda:focus{outline:none;border-color:var(--color-primary)}.agregar-tienda{flex-direction:column;gap:.5rem}.agregar-icon{display:flex;align-items:center;justify-content:center;opacity:.7}.agregar-tienda:hover .agregar-icon{opacity:1}.agregar-texto{font-size:.95rem;font-weight:500;color:var(--color-text-secondary)}.agregar-tienda:hover .agregar-texto{color:var(--color-text-tertiary)}.estadisticas-tiendas{width:100%}.estadisticas-tiendas .page-header{margin-bottom:2rem}.estadisticas-tiendas .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.estadisticas-tiendas .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.charts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}.estadisticas-tiendas .chart-section{background:var(--color-surface);border-radius:12px;padding:1.5rem 1.5rem 1.75rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.estadisticas-tiendas .chart-section.chart-card{margin-bottom:0}.estadisticas-tiendas .chart-section.chart-section-full{margin-bottom:2rem}.estadisticas-tiendas .chart-section:last-child{margin-bottom:0}@media(max-width:1024px){.charts-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.charts-grid{grid-template-columns:1fr}}.estadisticas-tiendas .chart-section h3{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1rem}.estadisticas-tiendas .chart-container{width:100%;min-height:280px}.pedidos-pos-page{width:100%}.pedidos-pos-page .page-header{margin-bottom:2rem}.pedidos-pos-page .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.pedidos-pos-page .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.pedidos-pos-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.pedidos-pos-toolbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.pedidos-pos-page .search-box{display:flex;align-items:center;gap:.75rem;flex:1;min-width:240px;max-width:400px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.pedidos-pos-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.pedidos-pos-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.pedidos-pos-page .search-input{flex:1;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.pedidos-pos-page .search-input::placeholder{color:var(--color-text-muted)}.filter-tienda{display:flex;align-items:center;gap:.5rem}.filter-tienda label{font-size:.875rem;font-weight:500;color:var(--color-text-tertiary)}.select-tienda{padding:.5rem 2rem .5rem .75rem;font-size:.9rem;color:var(--color-text);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;outline:none}.select-tienda:hover{border-color:var(--color-border-strong)}.select-tienda:focus{border-color:var(--color-primary)}.pedidos-pos-table-wrap{overflow-x:auto}.pedidos-pos-table{width:100%;border-collapse:collapse}.pedidos-pos-table th,.pedidos-pos-table td{padding:.75rem 1.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.pedidos-pos-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.pedidos-pos-table td{font-size:.9rem;color:var(--color-text-tertiary)}.pedidos-pos-table tbody tr:hover{background:var(--color-surface-muted)}.pedidos-pos-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}.pedidos-pos-table .badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:6px}.pedidos-pos-table .badge.estado-completado{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.pedidos-pos-table .badge.estado-pendiente{background:color-mix(in srgb,var(--color-amazon-orange) 15%,transparent);color:var(--color-warning-text)}.pedidos-pos-table .badge.estado-cancelado{background:color-mix(in srgb,var(--color-danger) 15%,transparent);color:var(--color-danger)}.promociones-tiendas-page{width:100%}.promociones-tiendas-page .page-header{margin-bottom:2rem}.promociones-tiendas-page .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.promociones-tiendas-page .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.promociones-tiendas-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.promociones-tiendas-toolbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.promociones-tiendas-page .search-box{display:flex;align-items:center;gap:.75rem;flex:1;min-width:240px;max-width:400px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.promociones-tiendas-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.promociones-tiendas-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.promociones-tiendas-page .search-input{flex:1;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.promociones-tiendas-page .search-input::placeholder{color:var(--color-text-muted)}.promociones-tiendas-page .filter-tienda{display:flex;align-items:center;gap:.5rem}.promociones-tiendas-page .filter-tienda label{font-size:.875rem;font-weight:500;color:var(--color-text-tertiary)}.promociones-tiendas-page .select-tienda{padding:.5rem 2rem .5rem .75rem;font-size:.9rem;color:var(--color-text);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;outline:none}.promociones-tiendas-page .select-tienda:hover{border-color:var(--color-border-strong)}.promociones-tiendas-page .select-tienda:focus{border-color:var(--color-primary)}.btn-crear-promocion{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s}.btn-crear-promocion:hover{background:var(--color-primary-hover)}.btn-crear-promocion:active{transform:scale(.98)}.promociones-tiendas-table-wrap{overflow-x:auto}.promociones-tiendas-table{width:100%;border-collapse:collapse}.promociones-tiendas-table th,.promociones-tiendas-table td{padding:.75rem 1.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.promociones-tiendas-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.promociones-tiendas-table td{font-size:.9rem;color:var(--color-text-tertiary)}.promociones-tiendas-table tbody tr:hover{background:var(--color-surface-muted)}.promociones-tiendas-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}.promociones-tiendas-table .badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:6px}.promociones-tiendas-table .badge.estado-activa{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.promociones-tiendas-table .badge.estado-expirada{background:color-mix(in srgb,var(--color-text-secondary) 15%,transparent);color:var(--color-text-secondary)}.asesores-page{width:100%}.asesores-page .page-header{margin-bottom:2rem}.asesores-page .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.asesores-page .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.asesores-resumen{margin-bottom:1.25rem;padding:1.1rem 1.25rem;background:var(--color-surface);border-radius:12px;border:1px solid var(--color-border-subtle);box-shadow:var(--color-shadow-card)}.asesores-resumen-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.asesores-resumen-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem}.asesores-resumen-valor{font-size:1.75rem;font-weight:800;color:var(--color-primary);letter-spacing:-.02em;line-height:1.1}.asesores-resumen-label{font-size:.95rem;color:var(--color-text-tertiary)}.asesores-resumen-hint{margin:.6rem 0 0;font-size:.8rem;color:var(--color-text-secondary);line-height:1.45}.asesores-resumen-filtros-wrap{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-subtle)}.asesores-resumen-filtros-caption{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin-bottom:.65rem}.asesores-resumen-chips{display:flex;flex-wrap:wrap;gap:.5rem}.asesores-resumen-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.85rem;font-weight:600;color:var(--color-text-tertiary);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:999px;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.asesores-resumen-chip:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong)}.asesores-resumen-chip--active{box-shadow:0 0 0 2px var(--color-focus-ring)}.asesores-resumen-chip-count{font-size:.78rem;font-weight:700;padding:.1rem .45rem;border-radius:999px;background:var(--color-border);color:var(--color-text-tertiary)}.asesores-resumen-chip--active .asesores-resumen-chip-count{background:var(--color-focus-ring);color:var(--color-primary)}.asesores-resumen-chip--activo.asesores-resumen-chip--active{background:var(--color-tag-green-soft-bg);border-color:var(--color-tag-green-border);color:var(--color-tag-green-fg)}.asesores-resumen-chip--activo.asesores-resumen-chip--active .asesores-resumen-chip-count{background:color-mix(in srgb,var(--color-tag-green-border) 24%,var(--color-surface));color:var(--color-tag-green-fg)}.asesores-resumen-chip--inactivo.asesores-resumen-chip--active{background:var(--color-surface-hover);border-color:var(--color-text-secondary);color:var(--color-text-tertiary)}.asesores-resumen-chip--inactivo.asesores-resumen-chip--active .asesores-resumen-chip-count{background:color-mix(in srgb,var(--color-text-secondary) 24%,var(--color-surface));color:var(--color-text-tertiary)}.asesores-toolbar-meta{margin-left:auto;font-size:.85rem;color:var(--color-text-secondary)}.asesores-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.asesores-api-error{margin:0 1.5rem 1rem;padding:.75rem 1rem;border-radius:8px;background:var(--color-danger-bg);color:var(--color-danger-text-strong);font-size:.9rem}.asesores-toolbar{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.asesores-page .toolbar-row{display:flex;align-items:center;justify-content:flex-start;gap:1rem;flex-wrap:wrap;width:100%}.btn-crear-asesor{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s}.btn-crear-asesor:hover{background:var(--color-primary-hover)}.btn-crear-asesor:active{transform:scale(.98)}.asesores-modal-backdrop{position:fixed;inset:0;background:var(--color-overlay-scrim);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000}.asesores-modal{width:min(560px,100%);background:var(--color-surface);border-radius:12px;border:1px solid var(--color-border);box-shadow:var(--color-modal-deep-shadow);padding:1rem 1rem 1.25rem}.asesores-modal h3{margin:0 0 .8rem;color:var(--color-text)}.asesores-modal-form{display:grid;gap:.65rem}.asesores-modal-form label{display:grid;gap:.35rem;font-size:.86rem;color:var(--color-text-tertiary)}.asesores-modal-form input,.asesores-modal-form textarea{border:1px solid var(--color-border-strong);border-radius:8px;padding:.55rem .65rem;font-family:inherit;font-size:.92rem;color:var(--color-text)}.asesores-modal-form textarea{resize:vertical}.asesores-modal-form select{border:1px solid var(--color-border-strong);border-radius:8px;padding:.55rem .65rem;font-family:inherit;font-size:.92rem;color:var(--color-text);background:var(--color-surface);cursor:pointer;width:100%}.asesores-phone-fieldset{display:flex;flex-direction:column;gap:.35rem}.asesores-phone-fieldset-label{font-size:.86rem;color:var(--color-text-tertiary);font-weight:500}.asesores-phone-row{display:grid;grid-template-columns:minmax(9.5rem,42%) 1fr;gap:.5rem;align-items:end}@media(max-width:480px){.asesores-phone-row{grid-template-columns:1fr}}.asesores-phone-country,.asesores-phone-local{display:grid;gap:.35rem;margin:0;min-width:0}.asesores-phone-country-caption,.asesores-phone-local-caption{font-size:.8rem;color:var(--color-text-muted)}.asesores-field-hint{margin:0;font-size:.78rem;color:var(--color-text-muted);line-height:1.35}.asesores-field-hint code{font-size:.85em;padding:.05rem .25rem;border-radius:4px;background:var(--color-surface-nested)}.asesores-field-hint--inline{margin-top:.2rem}.asesores-modal-error{margin:0;font-size:.86rem;color:var(--color-danger-text-strong)}.asesores-modal-actions{margin-top:.25rem;display:flex;justify-content:flex-end;gap:.55rem}.btn-modal-cancel,.btn-modal-submit{border:none;border-radius:8px;font-size:.88rem;font-weight:600;padding:.5rem .85rem;cursor:pointer}.btn-modal-cancel{background:var(--color-border);color:var(--color-text-tertiary)}.btn-modal-submit{background:var(--color-primary);color:var(--color-on-primary)}.asesores-page .search-box{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:min(100%,320px);max-width:720px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.asesores-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.asesores-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.asesores-page .search-input{flex:1;min-width:0;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.asesores-page .search-input::placeholder{color:var(--color-text-muted)}.asesores-table-wrap{overflow-x:auto}.asesores-table{width:100%;border-collapse:collapse}.asesores-table th,.asesores-table td{padding:.75rem 1.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.asesores-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.asesores-table td{font-size:.9rem;color:var(--color-text-tertiary)}.asesores-table tbody tr:hover{background:var(--color-surface-muted)}.asesores-table tbody tr.asesores-table-fila--clickable{cursor:pointer}.asesores-table tbody tr.asesores-table-fila--clickable:hover{background:var(--color-tag-blue-bg)}.asesores-table tbody tr.asesores-table-fila--clickable:focus-visible{outline:2px solid var(--color-accent-blue-bright);outline-offset:-2px}.asesores-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}.badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:6px}.badge.activo{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.badge.inactivo{background:color-mix(in srgb,var(--color-text-secondary) 15%,transparent);color:var(--color-text-secondary)}.table-skeleton-row{pointer-events:none}.table-skeleton-cell{padding:.75rem 1rem;vertical-align:middle}.table-skeleton-bar{display:block;height:.7rem;max-width:100%;border-radius:6px;background:linear-gradient(90deg,var(--color-surface-hover) 0%,var(--color-primary-muted-bg) 45%,var(--color-surface-muted) 55%,var(--color-surface-hover) 100%);background-size:220% 100%;animation:table-skeleton-shimmer 1.15s ease-in-out infinite}.table-skeleton-row:nth-child(odd) .table-skeleton-bar{animation-delay:.05s}@keyframes table-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.table-skeleton-cell--compact{padding:.5rem .75rem}.table-skeleton-bar--compact{height:.55rem}.paciente-detalle-page{width:100%}.detalle-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.btn-volver{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 0;font-size:.95rem;font-weight:500;color:var(--color-primary);background:none;border:none;cursor:pointer;transition:color .2s}.btn-volver:hover{color:var(--color-primary-hover)}.detalle-header-titulo{display:flex;flex-direction:column;gap:.15rem}.detalle-header-nombre{font-size:1.25rem;font-weight:700;color:var(--color-text)}.detalle-header-fecha{font-size:.875rem;color:var(--color-text-secondary)}.detalle-layout{display:grid;grid-template-columns:280px 1fr;gap:1.5rem;align-items:start}@media(max-width:900px){.detalle-layout{grid-template-columns:1fr}}.paciente-card{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);position:sticky;top:1rem}.paciente-foto-block{margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid var(--color-border-subtle)}.paciente-foto-frame{position:relative;width:100%;aspect-ratio:1;max-height:220px;border-radius:12px;overflow:hidden;background:var(--color-surface-hover);border:1px solid var(--color-border)}.paciente-foto-edit{position:absolute;top:.5rem;right:.5rem;z-index:2;display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:50%;background:var(--color-surface-glass-96);box-shadow:var(--color-sticky-bar-shadow);cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s}.paciente-foto-edit:hover:not(:disabled){background:var(--color-surface);box-shadow:var(--color-sticky-bar-shadow-active)}.paciente-foto-edit:active:not(:disabled){transform:scale(.96)}.paciente-foto-edit:disabled{opacity:.55;cursor:not-allowed}.paciente-foto-img{width:100%;height:100%;object-fit:cover;display:block}.paciente-foto-placeholder{width:100%;height:100%;min-height:140px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--color-surface-muted) 0%,var(--color-border) 100%)}.paciente-foto-saving{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;background:var(--color-surface-glass-82);font-size:.9rem;font-weight:600;color:var(--color-primary)}.paciente-foto-quitar{display:block;margin:.5rem auto 0;padding:.25rem .35rem;font-size:.75rem;font-weight:500;color:var(--color-text-muted);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.paciente-foto-quitar:hover:not(:disabled){color:var(--color-text-secondary)}.paciente-foto-quitar:disabled{opacity:.5;cursor:not-allowed}.paciente-foto-input-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.paciente-datos{margin:0}.paciente-datos .dato{margin-bottom:.75rem}.paciente-datos .dato:last-child{margin-bottom:0}.paciente-datos dt{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:.2rem}.paciente-datos dd{margin:0;font-size:.95rem;color:var(--color-text)}.paciente-datos dd.paciente-dd-telefono{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.paciente-telefono-numero{word-break:break-all}.paciente-btn-llamar{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.8125rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border-radius:8px;text-decoration:none;transition:background .2s,transform .1s;white-space:nowrap}.paciente-btn-llamar:hover{background:var(--color-primary-hover);color:var(--color-on-primary)}.paciente-btn-llamar:active{transform:scale(.98)}.detalle-main{display:flex;flex-direction:column;gap:1.5rem;min-width:0}.miembro-tabs{display:flex;flex-wrap:wrap;gap:.35rem;padding:.25rem;background:var(--color-surface-hover);border-radius:10px;border:1px solid var(--color-border)}.miembro-tab{flex:1 1 auto;min-width:7rem;padding:.65rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-text-secondary);background:transparent;border:none;border-radius:8px;cursor:pointer;transition:color .15s,background .15s,box-shadow .15s}.miembro-tab:hover{color:var(--color-primary);background:var(--color-surface-glass-70)}.miembro-tab--active{color:var(--color-primary);background:var(--color-surface);box-shadow:0 1px 3px var(--color-focus-ring)}.miembro-tab-panel{min-height:8rem}.miembro-tab-panel--stack{display:flex;flex-direction:column;gap:1.5rem;background:transparent;border:none;padding:0;box-shadow:none}.miembro-tab-placeholder{margin:0;font-size:.95rem;line-height:1.55;color:var(--color-text-secondary)}.campos-claves-dl--prioridad{margin-bottom:.5rem;padding:.85rem 1rem;background:linear-gradient(135deg,var(--color-surface-muted) 0%,var(--color-surface-hover) 100%);border-radius:10px;border:1px solid var(--color-border)}.campos-claves-dl--prioridad .dato{border-bottom-color:var(--color-border)}.campos-claves-dl--prioridad .dato:last-child{border-bottom:none;padding-bottom:0}.paso-programa-badge{display:inline-block;padding:.22rem .7rem;border-radius:999px;font-size:.875rem;font-weight:600;line-height:1.4;max-width:100%;border:1px solid var(--color-badge-border-faint);box-shadow:var(--color-inset-highlight)}.paso-programa-badge--tone-0{background:var(--color-tag-warm-green);color:var(--color-success-text)}.paso-programa-badge--tone-1{background:var(--color-tag-warm-cream);color:var(--color-tag-orange-strong)}.paso-programa-badge--tone-2{background:var(--color-tag-lilac-bg);color:var(--color-tag-purple-fg)}.paso-programa-badge--tone-3{background:var(--color-tag-blue-bg);color:var(--color-tag-blue-fg)}.paso-programa-badge--tone-4{background:var(--color-tag-pink-bg);color:var(--color-tag-pink-fg)}.paso-programa-badge--tone-5{background:var(--color-tag-amber-bg);color:var(--color-tag-amber-fg)}.paso-programa-badge--tone-6{background:var(--color-tag-teal-bg);color:var(--color-tag-teal-fg)}.paso-programa-badge--tone-7{background:var(--color-tag-purple-soft-bg);color:var(--color-tag-purple-soft-fg)}.campos-claves-subtitulo{font-size:.95rem;font-weight:700;color:var(--color-text);margin:0 0 .75rem;padding-top:.25rem}.campos-claves-panel .campos-claves-subtitulo:not(:first-of-type){margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--color-border-subtle)}.campos-claves-fecha{font-weight:500;color:var(--color-text-secondary)}.campos-claves-meta{margin:-.35rem 0 1rem;font-size:.875rem;color:var(--color-text-secondary)}.campos-claves-sin-eval{margin-top:.5rem}.campos-claves-sin-coincidencia{margin:0;font-size:.9rem;line-height:1.5;color:var(--color-text-secondary);font-style:italic}.ayudas-dl{margin:0;display:grid;gap:0}.ayudas-dl .dato{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:.35rem 1rem;padding:.65rem 0;border-bottom:1px solid var(--color-border-subtle);align-items:start}.ayudas-dl .dato:last-child{border-bottom:none}.ayudas-dl .dato dt{margin:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.ayudas-dl .dato dd{margin:0;font-size:.95rem;color:var(--color-text);word-break:break-word}@media(max-width:560px){.ayudas-dl .dato{grid-template-columns:1fr;gap:.2rem}}.seccion{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle)}.seccion-titulo{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 1rem}.historial-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.historial-table{width:100%;border-collapse:collapse;font-size:.9rem}.historial-table th,.historial-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.historial-table th{background:var(--color-surface-muted);font-weight:600;color:var(--color-text-tertiary);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.historial-table tbody tr:last-child td{border-bottom:none}.historial-table tbody tr:hover{background:var(--color-surface-nested)}.historial-table .historial-fecha{font-weight:600;color:var(--color-primary);white-space:nowrap}.historial-table .historial-notas{color:var(--color-text-tertiary);max-width:280px}.historial-table .historial-notas-html{display:block}.seguimiento-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.seguimiento-table{width:100%;border-collapse:collapse;font-size:.82rem}.seguimiento-table th,.seguimiento-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.seguimiento-table th{background:var(--color-surface-muted);font-weight:600;color:var(--color-text-tertiary);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.seguimiento-table th:last-child{min-width:300px}.seguimiento-table tbody tr:last-child td{border-bottom:none}.seguimiento-table tbody tr:hover{background:var(--color-surface-nested)}.seguimiento-table tbody tr.seguimiento-table-fila--clickable{cursor:pointer}.seguimiento-table tbody tr.seguimiento-table-fila--clickable:hover{background:var(--color-tag-blue-bg)}.seguimiento-table tbody tr.seguimiento-table-fila--clickable:focus-visible{outline:2px solid var(--color-accent-blue-bright);outline-offset:-2px}.seguimiento-table .seguimiento-table-fecha{font-weight:600;color:var(--color-primary);white-space:nowrap}.seguimiento-table .seguimiento-table-diff{font-variant-numeric:tabular-nums;color:var(--color-text-tertiary)}.seguimiento-table .seguimiento-table-rec{min-width:300px;max-width:42rem;font-size:.8rem;line-height:1.4;color:var(--color-text-tertiary);word-break:break-word}.ayudas-historial-section{margin-bottom:0}.ayudas-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.ayudas-table{width:100%;border-collapse:collapse;font-size:.82rem}.ayudas-table th,.ayudas-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.ayudas-table th{background:var(--color-surface-muted);font-weight:600;color:var(--color-text-tertiary);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.ayudas-table tbody tr:last-child td{border-bottom:none}.ayudas-table tbody tr:hover{background:var(--color-surface-nested)}.ayudas-table-fecha{font-weight:600;color:var(--color-tag-teal-fg);white-space:nowrap}.ayudas-table-recomendaciones{min-width:12rem;max-width:36rem;white-space:pre-wrap;word-break:break-word;line-height:1.45;color:var(--color-text-tertiary)}.ayudas-table-sucursal{white-space:nowrap;color:var(--color-text-tertiary);font-size:.8rem}.evaluaciones-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.evaluaciones-table{width:100%;border-collapse:collapse;font-size:.9rem}.evaluaciones-table th,.evaluaciones-table td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.evaluaciones-table th{background:var(--color-surface-muted);font-weight:600;color:var(--color-text-tertiary);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.evaluaciones-table tbody tr:last-child td{border-bottom:none}.evaluaciones-table tbody tr:hover{background:var(--color-surface-nested)}.evaluaciones-table .evaluaciones-table-fecha{font-weight:600;color:var(--color-primary);white-space:nowrap}.evaluaciones-table td.evaluaciones-table-asignado{max-width:12rem;padding-top:.5rem;padding-bottom:.5rem}.evaluaciones-table .evaluaciones-table-asignado-text{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:thin}.evaluaciones-table tbody tr.evaluaciones-table-fila--clickable{cursor:pointer}.evaluaciones-table tbody tr.evaluaciones-table-fila--clickable:hover{background:var(--color-tag-blue-bg)}.evaluaciones-table tbody tr.evaluaciones-table-fila--clickable:focus-visible{outline:2px solid var(--color-accent-blue-bright);outline-offset:-2px}.evaluacion-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:1.25rem;background:var(--color-overlay-scrim);overflow-y:auto}.evaluacion-modal{width:min(52rem,100%);max-height:min(90vh,56rem);margin-top:.5rem;margin-bottom:2rem;display:flex;flex-direction:column;background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-lg);border:1px solid var(--color-border)}.evaluacion-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border-subtle)}.evaluacion-modal-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--color-text)}.evaluacion-modal-cerrar{flex-shrink:0;padding:.4rem .85rem;font-size:.875rem;font-weight:600;color:var(--color-primary);background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:8px;cursor:pointer}.evaluacion-modal-cerrar:hover{background:var(--color-border)}.evaluacion-modal-meta{margin:0;padding:.65rem 1.25rem;font-size:.88rem;color:var(--color-text-secondary);border-bottom:1px solid var(--color-surface-muted)}.evaluacion-modal-body{padding:.75rem 1.25rem 1.25rem;overflow-y:auto}.evaluacion-modal-seccion{margin-top:1.25rem}.evaluacion-modal-seccion:first-child{margin-top:0}.evaluacion-modal-seccion-titulo{margin:0 0 .65rem;font-size:.92rem;font-weight:700;color:var(--color-primary);padding-bottom:.35rem;border-bottom:2px solid var(--color-border)}.evaluacion-modal-dl{margin:0;display:grid;gap:0}.evaluacion-modal-par{display:grid;grid-template-columns:minmax(140px,42%) 1fr;gap:.35rem 1rem;padding:.45rem 0;border-bottom:1px solid var(--color-border-subtle);align-items:start}.evaluacion-modal-par:last-child{border-bottom:none}.evaluacion-modal-par dt{margin:0;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.evaluacion-modal-par dd{margin:0;font-size:.875rem;color:var(--color-text);line-height:1.45;white-space:pre-wrap;word-break:break-word}@media(max-width:560px){.evaluacion-modal-par{grid-template-columns:1fr;gap:.2rem}}.seguimiento-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:1.25rem;background:var(--color-overlay-scrim);overflow-y:auto}.seguimiento-modal{width:min(52rem,100%);max-height:min(90vh,56rem);margin-top:.5rem;margin-bottom:2rem;display:flex;flex-direction:column;background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-lg);border:1px solid var(--color-tag-teal-bg)}.seguimiento-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-tag-mint-bg);background:linear-gradient(180deg,var(--color-tag-mint-bg) 0%,var(--color-surface) 100%)}.seguimiento-modal-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--color-tag-teal-fg)}.seguimiento-modal .seguimiento-modal-cerrar{flex-shrink:0;padding:.4rem .85rem;font-size:.875rem;font-weight:600;color:var(--color-tag-teal-fg);background:var(--color-tag-teal-bg);border:1px solid var(--color-tag-teal-border);border-radius:8px;cursor:pointer}.seguimiento-modal .seguimiento-modal-cerrar:hover{background:var(--color-tag-teal-border)}.seguimiento-modal-meta{margin:0;padding:.65rem 1.25rem;font-size:.88rem;color:var(--color-text-secondary);border-bottom:1px solid var(--color-surface-muted)}.seguimiento-modal-body{padding:.75rem 1.25rem 1.25rem;overflow-y:auto}.seguimiento-modal-seccion{margin-top:1.25rem}.seguimiento-modal-seccion:first-child{margin-top:0}.seguimiento-modal-seccion-titulo{margin:0 0 .65rem;font-size:.92rem;font-weight:700;color:var(--color-tag-teal-fg);padding-bottom:.35rem;border-bottom:2px solid var(--color-tag-teal-border)}.seguimiento-modal-dl{margin:0;display:grid;gap:0}.seguimiento-modal-par{display:grid;grid-template-columns:minmax(140px,42%) 1fr;gap:.35rem 1rem;padding:.45rem 0;border-bottom:1px solid var(--color-border-subtle);align-items:start}.seguimiento-modal-par:last-child{border-bottom:none}.seguimiento-modal-par dt{margin:0;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.seguimiento-modal-par dd{margin:0;font-size:.875rem;color:var(--color-text);line-height:1.45;white-space:pre-wrap;word-break:break-word}.seguimiento-modal-sin-notas{margin:0;font-size:.875rem;color:var(--color-text-muted);font-style:italic}.seguimiento-modal-notas .seguimiento-modal-par:last-of-type{border-bottom:none}.seguimiento-modal-parrafo{margin:0 0 .65rem;padding:.35rem 0;font-size:.875rem;color:var(--color-text-tertiary);line-height:1.5;white-space:pre-wrap;word-break:break-word;border-bottom:1px solid var(--color-border-subtle)}.seguimiento-modal-parrafo:last-child{border-bottom:none;margin-bottom:0}@media(max-width:560px){.seguimiento-modal-par{grid-template-columns:1fr;gap:.2rem}}.form-nueva-interaccion{display:flex;flex-direction:column;gap:1rem}.form-nueva-interaccion .form-group{margin-bottom:0}.form-nueva-interaccion label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--color-text-tertiary);margin-bottom:.4rem}.form-textarea{width:100%;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;outline:none;resize:vertical;min-height:80px;font-family:inherit}.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.form-group-rich .editor-notas-wrap{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);overflow:hidden}.form-group-rich .editor-notas-wrap:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.editor-notas-toolbar{display:flex;gap:2px;padding:.35rem .5rem;background:var(--color-surface-muted);border-bottom:1px solid var(--color-border)}.editor-notas-toolbar button{padding:.35rem .6rem;font-size:.85rem;background:transparent;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-tertiary);font-weight:600}.editor-notas-toolbar button:hover{background:var(--color-border);color:var(--color-text)}.editor-notas-toolbar button.active{background:var(--color-primary);color:var(--color-on-primary)}.paciente-detalle-page .ProseMirror{min-height:120px;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);outline:none}.paciente-detalle-page .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-muted);pointer-events:none;height:0}.paciente-detalle-page .ProseMirror ul,.paciente-detalle-page .ProseMirror ol{padding-left:1.5rem;margin:.35rem 0}.paciente-detalle-page .ProseMirror p{margin:.25rem 0}.historial-contenido .historial-notas-html{display:inline}.historial-contenido .historial-notas-html ul,.historial-contenido .historial-notas-html ol{margin:.25rem 0 0 1rem;padding-left:1rem}.form-input{width:100%;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;outline:none}.select-productos{position:relative;width:100%}.select-productos-input-wrap{margin-bottom:.5rem}.select-productos-input{width:100%}.select-productos-dropdown{position:absolute;top:100%;left:0;right:0;margin:0;padding:.35rem;list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--color-elevation-md);max-height:240px;overflow-y:auto;z-index:10}.select-productos-opcion{display:flex;align-items:center;gap:.75rem;padding:.5rem .6rem;cursor:pointer;border-radius:6px;transition:background .15s}.select-productos-opcion:hover{background:var(--color-surface-hover)}.select-productos-opcion.selected{background:var(--color-indigo-bg);color:var(--color-indigo-fg)}.select-productos-opcion-img{width:40px;height:40px;object-fit:cover;border-radius:6px;flex-shrink:0}.select-productos-opcion-nombre{font-size:.9rem;color:var(--color-text)}.select-productos-opcion.selected .select-productos-opcion-nombre{color:var(--color-indigo-fg)}.select-productos-seleccionados{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.select-productos-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .5rem .35rem .35rem;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;font-size:.875rem}.select-productos-chip-img{width:28px;height:28px;object-fit:cover;border-radius:4px}.select-productos-chip-nombre{color:var(--color-text);font-weight:500}.select-productos-chip-quitar{margin-left:.15rem;padding:0 .25rem;font-size:1.1rem;line-height:1;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:4px;transition:color .15s,background .15s}.select-productos-chip-quitar:hover{color:var(--color-danger);background:var(--color-danger-bg)}.form-file{width:100%;font-size:.9rem;color:var(--color-text-secondary)}.upload-analisis{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:1.5rem 1rem;border:2px dashed var(--color-border-strong);border-radius:10px;background:var(--color-surface-muted);cursor:pointer;transition:border-color .2s,background .2s}.upload-analisis:hover{border-color:var(--color-text-muted);background:var(--color-surface-hover)}.upload-analisis--dragover{border-color:var(--color-primary);background:var(--color-indigo-bg)}.upload-analisis-input{position:absolute;width:0;height:0;opacity:0;overflow:hidden;pointer-events:none}.upload-analisis-texto{font-size:.95rem;color:var(--color-text-tertiary);text-align:center}.upload-analisis-formatos{font-size:.8rem;color:var(--color-text-muted)}.upload-analisis--dragover .upload-analisis-texto,.upload-analisis--dragover .upload-analisis-formatos{color:var(--color-indigo-fg)}.lista-archivos{margin:.5rem 0 0;padding:0;list-style:none;font-size:.85rem;color:var(--color-text-secondary)}.lista-archivos li{padding:.2rem 0}.btn-guardar-interaccion{align-self:flex-start;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s}.btn-guardar-interaccion:hover{background:var(--color-primary-hover)}.btn-volver-plain{margin-top:1rem;padding:.5rem 1rem;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);cursor:pointer;font-weight:500}.btn-volver-plain:hover{background:var(--color-surface-muted)}.asesor-detalle-sin-perfil{font-size:.8rem;color:var(--color-text-secondary);line-height:1.4;margin-top:.75rem}.asesor-miembros-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.asesor-miembros-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.btn-quitar-seleccionados{padding:.55rem 1.1rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--color-danger, #b91c1c) 45%,var(--color-border));background:var(--color-surface);color:var(--color-danger, #b91c1c);font-weight:600;font-size:.9rem;cursor:pointer}.btn-quitar-seleccionados:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger, #b91c1c) 8%,var(--color-surface))}.btn-quitar-seleccionados:disabled{opacity:.6;cursor:not-allowed}.asesor-miembros-feedback{margin:0 0 .75rem;padding:.55rem .75rem;border-radius:8px;font-size:.88rem;line-height:1.4}.asesor-miembros-feedback--ok{background:color-mix(in srgb,var(--color-success, #15803d) 12%,var(--color-surface));color:var(--color-text);border:1px solid color-mix(in srgb,var(--color-success, #15803d) 35%,var(--color-border))}.asesor-miembros-feedback--err{background:color-mix(in srgb,var(--color-danger, #b91c1c) 10%,var(--color-surface));color:var(--color-text);border:1px solid color-mix(in srgb,var(--color-danger, #b91c1c) 30%,var(--color-border))}.asesor-miembros-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}.asesor-miembros-table-wrap .seguimiento-table th.asesor-miembros-col-check,.asesor-miembros-table-wrap .seguimiento-table td.asesor-miembros-col-check{min-width:0;width:2.25rem;text-align:center;vertical-align:middle;padding-left:.35rem;padding-right:.35rem}.asesor-miembros-table-wrap .seguimiento-table th.asesor-miembros-col-quitar,.asesor-miembros-table-wrap .seguimiento-table td.asesor-miembros-col-quitar{min-width:0;width:3rem;text-align:center;vertical-align:middle;padding-left:.35rem;padding-right:.35rem}.btn-asesor-quitar-fila{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:8px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.btn-asesor-quitar-fila:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger, #b91c1c) 12%,transparent);color:var(--color-danger, #b91c1c)}.btn-asesor-quitar-fila:disabled{opacity:.45;cursor:not-allowed}.btn-asesor-quitar-fila:focus-visible{outline:2px solid var(--color-focus-ring, var(--color-primary));outline-offset:2px}.asesor-miembros-titulo{margin:0}.btn-asignar-miembros{padding:.55rem 1.1rem;border-radius:8px;border:none;background:var(--color-primary);color:var(--color-on-primary);font-weight:600;font-size:.9rem;cursor:pointer}.btn-asignar-miembros:hover{background:var(--color-primary-hover)}.asesor-miembros-hint{font-size:.85rem;color:var(--color-text-secondary);margin:0 0 1rem;line-height:1.45}.asesor-miembros-hint-total{color:var(--color-text-tertiary);font-weight:500}.asesor-miembros-hint-total strong{font-weight:800;color:var(--color-primary);font-variant-numeric:tabular-nums}.asesor-miembros-table-wrap .seguimiento-table th.asesor-miembros-col-accion,.asesor-miembros-table-wrap .seguimiento-table td.asesor-miembros-col-accion{min-width:0;width:1%;max-width:7.5rem;white-space:nowrap;text-align:center;vertical-align:middle;padding-left:.5rem;padding-right:.5rem}.asesor-miembros-table-wrap .seguimiento-table th.asesor-miembros-col-accion{font-size:.68rem;letter-spacing:.04em}.asesor-btn-ficha{display:inline-flex;align-items:center;justify-content:center;padding:.4rem .7rem;font-size:.75rem;font-weight:600;line-height:1.2;letter-spacing:.02em;color:var(--color-on-primary);text-decoration:none;white-space:nowrap;background:linear-gradient(180deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);border:1px solid var(--color-primary-hover);border-radius:8px;box-shadow:var(--color-elevation-xs);transition:background .15s ease,box-shadow .15s ease,transform .1s ease}.asesor-btn-ficha:hover{color:var(--color-on-primary);background:linear-gradient(180deg,var(--color-accent-blue-bright) 0%,var(--color-tag-blue-fg) 100%);border-color:var(--color-primary-hover);box-shadow:0 2px 6px color-mix(in srgb,var(--color-accent-blue-bright) 30%,transparent)}.asesor-btn-ficha:active{transform:translateY(1px)}.asesor-btn-ficha:focus-visible{outline:2px solid var(--color-accent-blue-bright);outline-offset:2px}.asesor-modal-asignar{max-width:520px;max-height:min(90vh,640px);display:flex;flex-direction:column}.asesor-modal-asignar-sub{font-size:.88rem;color:var(--color-text-tertiary);margin:0 0 1rem;line-height:1.4}.asesor-modal-asignar .asesor-modal-search{margin-bottom:.5rem}.asesor-modal-asignar .asesor-modal-search-visual{display:flex;align-items:center;gap:.65rem;width:100%;min-height:48px;padding:.5rem .65rem .5rem .85rem;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:10px;box-shadow:var(--color-inset-well);transition:border-color .18s ease,box-shadow .18s ease;cursor:text}.asesor-modal-asignar .asesor-modal-search-visual:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring),var(--color-inset-well)}.asesor-modal-asignar .asesor-modal-search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.88;pointer-events:none}.asesor-modal-asignar .asesor-modal-search-input{flex:1;min-width:0;border:none;background:transparent;font-size:.95rem;line-height:1.4;padding:.35rem 0;color:var(--color-text);outline:none;-webkit-appearance:none;appearance:none}.asesor-modal-asignar .asesor-modal-search-input::placeholder{color:var(--color-text-muted)}.asesor-modal-asignar .asesor-modal-search-input:disabled{opacity:.65;cursor:not-allowed}.asesor-modal-search-clear{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0 -.15rem 0 0;padding:0;border:none;border-radius:8px;background:transparent;color:var(--color-text-secondary);font-size:1.35rem;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.asesor-modal-search-clear:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.asesor-modal-search-clear:disabled{opacity:.5;cursor:not-allowed}.asesor-modal-search-hint{margin:.35rem 0 0;font-size:.75rem;color:var(--color-text-muted);line-height:1.35}.asesor-modal-lista{flex:1;min-height:160px;max-height:320px;overflow:auto;border:1px solid var(--color-border);border-radius:8px;padding:.5rem;margin-bottom:1rem;background:var(--color-surface-nested)}.asesor-modal-cargando,.asesor-modal-vacio{margin:2rem 1rem;text-align:center;color:var(--color-text-secondary);font-size:.9rem}.asesor-modal-ul{list-style:none;margin:0;padding:0}.asesor-modal-item-label{display:flex;align-items:flex-start;gap:.65rem;padding:.45rem .35rem;border-radius:6px;cursor:pointer;font-size:.88rem}.asesor-modal-item-label:hover{background:var(--color-surface)}.asesor-modal-item-text{display:flex;flex-direction:column;gap:.15rem}.asesor-modal-item-meta{font-size:.78rem;color:var(--color-text-secondary)}.seguimientos-page{width:100%}.seguimientos-section{margin-bottom:2.5rem}.seguimientos-section:last-of-type{margin-bottom:0}.seguimientos-section__head{margin-bottom:1rem}.seguimientos-section__title{margin:0 0 .35rem;font-size:1.35rem;font-weight:700;color:var(--color-text)}.seguimientos-section__desc{margin:0;font-size:.95rem;color:var(--color-text-secondary);line-height:1.45;max-width:72ch}.seguimientos-section--cliente .seguimientos-content{border-top:none}.seguimientos-page .page-header{margin-bottom:2rem}.seguimientos-page .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.seguimientos-page .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.seguimientos-page .page-header p+p{margin-top:.5rem}.seguimientos-resumen{margin-bottom:1.25rem;padding:1.1rem 1.25rem;background:var(--color-surface);border-radius:12px;border:1px solid var(--color-border-subtle);box-shadow:var(--color-shadow-card)}.seguimientos-resumen-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem}.seguimientos-resumen-valor{font-size:1.75rem;font-weight:800;color:var(--color-primary);letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums}.seguimientos-resumen-label{font-size:.95rem;color:var(--color-text-tertiary)}.seguimientos-resumen-hint{margin:.6rem 0 0;font-size:.8rem;color:var(--color-text-secondary);line-height:1.45}.seguimientos-resumen-hint+.seguimientos-resumen-hint{margin-top:.35rem}.seguimientos-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border-subtle);background:var(--color-table-header-bg)}.seguimientos-pagination__info{font-size:.9rem;color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.seguimientos-pagination__btn{padding:.45rem .9rem;font-size:.875rem;font-weight:600;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s}.seguimientos-pagination__btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-strong)}.seguimientos-pagination__btn:disabled{opacity:.45;cursor:not-allowed}.seguimientos-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.seguimientos-toolbar{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.seguimientos-page .toolbar-row{display:flex;align-items:center;justify-content:flex-start;gap:1rem;flex-wrap:wrap}.seguimientos-page .search-box{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:min(100%,360px);max-width:640px;width:100%;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.seguimientos-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.seguimientos-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.seguimientos-page .search-input{flex:1 1 0;min-width:0;width:100%;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.seguimientos-page .search-input::placeholder{color:var(--color-text-muted)}.btn-crear-seguimiento{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s}.btn-crear-seguimiento:hover{background:var(--color-primary-hover)}.btn-crear-seguimiento:active{transform:scale(.98)}.seguimientos-table-wrap{overflow-x:auto}.seguimientos-table{width:100%;border-collapse:collapse}.seguimientos-table th,.seguimientos-table td{padding:.75rem 1.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.seguimientos-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.seguimientos-table td{font-size:.9rem;color:var(--color-text-tertiary)}.seguimientos-table tbody tr:hover{background:var(--color-surface-muted)}.seguimientos-table tbody tr.row-clickable{cursor:pointer}.seguimientos-api-error{margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;background:var(--color-danger-bg);color:var(--color-danger-text-strong);font-size:.9rem}.legacy-id-cell{font-size:.8rem;background:var(--color-surface-hover);padding:.15rem .4rem;border-radius:4px}.seguimientos-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(24px)}70%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes backdropFade{0%{opacity:0}to{opacity:1}}.modal-backdrop{position:fixed;inset:0;background:var(--color-scrim-soft);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:backdropFade .25s ease-out}.modal-paciente{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-elevation-floating);width:100%;max-width:440px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalSlideUp .4s cubic-bezier(.34,1.56,.64,1)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.modal-cerrar{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;color:var(--color-text-secondary);background:none;border:none;border-radius:6px;cursor:pointer;transition:background .2s,color .2s}.modal-cerrar:hover{background:var(--color-surface-hover);color:var(--color-text)}.modal-body{padding:1.5rem;overflow-y:auto}.form-group{margin-bottom:1.25rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-tertiary);margin-bottom:.4rem}.form-input{width:100%;padding:.6rem .75rem;font-size:.95rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;outline:none;transition:border-color .2s,box-shadow .2s}.form-input:hover{border-color:var(--color-border-strong)}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.form-section{margin:1.5rem 0 0;padding:1rem 0 0;border:none;border-top:1px solid var(--color-border)}.form-section legend{font-size:.9rem;font-weight:600;color:var(--color-text-tertiary);padding:0 .5rem .5rem 0}.asesor-dropdown{margin-top:.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--color-elevation-md);max-height:200px;overflow-y:auto}.asesor-option{display:block;width:100%;padding:.6rem .75rem;font-size:.9rem;color:var(--color-text);background:none;border:none;text-align:left;cursor:pointer;font-family:inherit;transition:background .15s}.asesor-option:hover{background:var(--color-surface-muted)}.asesor-option.empty{cursor:default;color:var(--color-text-muted)}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border-subtle);background:var(--color-table-header-bg)}.btn-modal-cancelar{padding:.5rem 1rem;font-size:.9rem;font-weight:500;color:var(--color-text-tertiary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s}.btn-modal-cancelar:hover{background:var(--color-surface-muted);border-color:var(--color-border-strong)}.btn-modal-guardar{padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s}.btn-modal-guardar:hover{background:var(--color-primary-hover)}.cotizaciones-page{width:100%}.cotizaciones-page .page-header{margin-bottom:2rem}.cotizaciones-page .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.cotizaciones-page .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.cotizaciones-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.cotizaciones-toolbar{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.cotizaciones-page .toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.btn-crear-cotizacion{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s}.btn-crear-cotizacion:hover{background:var(--color-primary-hover)}.btn-crear-cotizacion:active{transform:scale(.98)}.cotizaciones-page .search-box{display:flex;align-items:center;gap:.75rem;max-width:400px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.cotizaciones-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.cotizaciones-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.cotizaciones-page .search-input{flex:1;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.cotizaciones-page .search-input::placeholder{color:var(--color-text-muted)}.cotizaciones-table-wrap{overflow-x:auto}.cotizaciones-table{width:100%;border-collapse:collapse}.cotizaciones-table th,.cotizaciones-table td{padding:.75rem 1.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.cotizaciones-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.cotizaciones-table td{font-size:.9rem;color:var(--color-text-tertiary)}.cotizaciones-table tbody tr:hover{background:var(--color-surface-muted)}.cotizaciones-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}.cotizaciones-table .badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:6px}.cotizaciones-table .badge.estado-pendiente{background:color-mix(in srgb,var(--color-amazon-orange) 15%,transparent);color:var(--color-warning-text)}.cotizaciones-table .badge.estado-aprobada{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.cotizaciones-table .badge.estado-rechazada{background:color-mix(in srgb,var(--color-danger) 15%,transparent);color:var(--color-danger)}.cotizaciones-table .badge.estado-activa{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.cotizaciones-table .badge.estado-expirada{background:color-mix(in srgb,var(--color-text-secondary) 15%,transparent);color:var(--color-text-secondary)}.prospectos-page .prospectos-toolbar{margin-bottom:1rem}.prospectos-page .prospectos-hint{font-size:.85rem;color:var(--color-text-secondary);margin:0 0 1rem}.prospectos-page .prospectos-table-wrap{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.prospectos-page .prospectos-table{width:100%;border-collapse:collapse}.prospectos-page .prospectos-table th,.prospectos-page .prospectos-table td{padding:.75rem 1.25rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.prospectos-page .prospectos-table th{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.prospectos-page .prospectos-table td{font-size:.9rem;color:var(--color-text-tertiary)}.prospectos-page .prospectos-table tbody tr:hover{background:var(--color-surface-muted)}.prospectos-page .prospectos-table .col-origen{white-space:nowrap}.prospectos-page .badge-origen{display:inline-block;font-size:.75rem;font-weight:600;padding:.3rem .65rem;border-radius:8px;background:var(--color-surface-hover);color:var(--color-text-secondary);border:1px solid transparent}.prospectos-page .badge-origen--bot{background:var(--color-tag-lilac-bg);color:var(--color-tag-lilac-fg);border-color:var(--color-tag-lilac-border)}.prospectos-page .badge-origen--test{background:var(--color-tag-mint-pastel-bg);color:var(--color-tag-mint-pastel-fg);border-color:var(--color-tag-mint-pastel-border)}.prospectos-page .badge-origen--wa{background:var(--color-tag-sage-bg);color:var(--color-tag-sage-fg);border-color:var(--color-tag-sage-border)}.prospectos-page .badge-origen--tienda{background:var(--color-tag-slate-bg);color:var(--color-tag-slate-fg);border-color:var(--color-tag-slate-border)}.prospectos-page .prospectos-table .muted{color:var(--color-text-muted);font-size:.85rem}.test-metabolismo-page .page-header p{max-width:42rem}.test-metabolismo-resumen{margin-bottom:1.25rem;padding:1.1rem 1.25rem;background:var(--color-surface);border-radius:12px;border:1px solid var(--color-border-subtle);box-shadow:var(--color-shadow-card)}.test-metabolismo-resumen-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem}.test-metabolismo-resumen-valor{font-size:1.75rem;font-weight:800;color:var(--color-tag-teal-fg);letter-spacing:-.02em;line-height:1.1}.test-metabolismo-resumen-label{font-size:.95rem;color:var(--color-text-tertiary)}.test-metabolismo-resumen-hint{margin:.6rem 0 0;font-size:.8rem;color:var(--color-text-secondary);line-height:1.45}.test-metabolismo-risk-wrap{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-subtle)}.test-metabolismo-risk-caption{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin-bottom:.65rem}.test-metabolismo-risk-chips{display:flex;flex-wrap:wrap;gap:.5rem}.test-metabolismo-risk-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.85rem;font-weight:600;color:var(--color-text-tertiary);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:999px;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.test-metabolismo-risk-chip:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong)}.test-metabolismo-risk-chip--active{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-tag-teal-fg) 22%,transparent)}.test-metabolismo-risk-chip-count{font-size:.78rem;font-weight:700;padding:.1rem .45rem;border-radius:999px;background:var(--color-border);color:var(--color-text-tertiary)}.test-metabolismo-risk-chip--active .test-metabolismo-risk-chip-count{background:color-mix(in srgb,var(--color-tag-teal-fg) 20%,var(--color-surface));color:var(--color-tag-teal-fg)}.test-metabolismo-risk-chip--low.test-metabolismo-risk-chip--active{background:var(--color-tag-green-soft-bg);border-color:var(--color-tag-green-border);color:var(--color-tag-green-fg)}.test-metabolismo-risk-chip--low.test-metabolismo-risk-chip--active .test-metabolismo-risk-chip-count{background:color-mix(in srgb,var(--color-tag-green-border) 24%,var(--color-surface));color:var(--color-tag-green-fg)}.test-metabolismo-risk-chip--moderate.test-metabolismo-risk-chip--active{background:var(--color-tag-yellow-soft);border-color:var(--color-warning);color:var(--color-warning-text)}.test-metabolismo-risk-chip--moderate.test-metabolismo-risk-chip--active .test-metabolismo-risk-chip-count{background:color-mix(in srgb,var(--color-warning) 22%,var(--color-surface));color:var(--color-warning-text)}.test-metabolismo-risk-chip--high.test-metabolismo-risk-chip--active{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger-text-strong)}.test-metabolismo-risk-chip--high.test-metabolismo-risk-chip--active .test-metabolismo-risk-chip-count{background:color-mix(in srgb,var(--color-danger) 18%,var(--color-surface));color:var(--color-danger-text-strong)}.test-metabolismo-risk-chip--unknown.test-metabolismo-risk-chip--active{background:var(--color-surface-hover);border-color:var(--color-text-secondary);color:var(--color-text-tertiary)}.test-metabolismo-risk-chip--unknown.test-metabolismo-risk-chip--active .test-metabolismo-risk-chip-count{background:color-mix(in srgb,var(--color-text-secondary) 22%,var(--color-surface));color:var(--color-text-tertiary)}.test-metabolismo-toolbar{margin-bottom:1rem}.test-metabolismo-page .toolbar-row{display:flex;align-items:center;justify-content:flex-start;gap:1rem;flex-wrap:wrap}.test-metabolismo-page .search-box{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:min(100%,280px);max-width:520px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.test-metabolismo-page .search-box:focus-within{border-color:var(--color-tag-teal-fg);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-tag-teal-fg) 22%,transparent)}.test-metabolismo-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.test-metabolismo-page .search-input{flex:1 1 0;min-width:0;width:100%;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.test-metabolismo-page .search-input::placeholder{color:var(--color-text-muted)}.test-metabolismo-meta{margin-left:auto;font-size:.85rem;color:var(--color-text-secondary)}.test-metabolismo-page .prospectos-table-wrap{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow-x:auto}.test-metabolismo-page .prospectos-table{width:100%;border-collapse:collapse;min-width:720px}.test-metabolismo-page .prospectos-table th,.test-metabolismo-page .prospectos-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.test-metabolismo-page .prospectos-table th{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.test-metabolismo-page .prospectos-table tbody tr{cursor:pointer}.test-metabolismo-page .prospectos-table tbody tr:hover{background:var(--color-surface-muted)}.test-metabolismo-page .prospectos-table tbody tr:focus-visible{outline:2px solid var(--color-tag-teal-outline);outline-offset:-2px}.test-metabolismo-page .muted{color:var(--color-text-secondary);font-size:.88rem}.test-metabolismo-page .quiz-metabolismo-resumen{max-width:20rem;font-size:.82rem;line-height:1.45;color:var(--color-text-tertiary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.test-metabolismo-page .badge-quiz-risk{display:inline-block;font-size:.72rem;font-weight:700;padding:.25rem .55rem;border-radius:6px;text-transform:uppercase;letter-spacing:.04em}.test-metabolismo-page .badge-quiz-risk--low{background:var(--color-success-chip-bg);color:var(--color-success-text)}.test-metabolismo-page .badge-quiz-risk--moderate{background:var(--color-tag-orange-bg);color:var(--color-tag-orange-strong)}.test-metabolismo-page .badge-quiz-risk--high{background:color-mix(in srgb,var(--color-danger) 18%,var(--color-danger-bg));color:var(--color-danger-text)}.test-metabolismo-page .badge-quiz-risk--unknown{background:var(--color-surface-hover);color:var(--color-text-secondary)}.test-metabolismo-pagination{display:flex;align-items:center;gap:.75rem;margin-top:1rem;flex-wrap:wrap}.test-metabolismo-pagination button{padding:.4rem .85rem;font-size:.875rem;font-weight:600;color:var(--color-tag-teal-fg);background:var(--color-tag-mint-bg);border:1px solid var(--color-tag-teal-border);border-radius:8px;cursor:pointer}.test-metabolismo-pagination button:disabled{opacity:.45;cursor:not-allowed}.test-metabolismo-error{padding:1rem 1.25rem;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:10px;color:var(--color-danger-text);font-size:.9rem;margin-bottom:1rem}.test-metabolismo-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:1.25rem;background:var(--color-overlay-scrim);overflow-y:auto}.test-metabolismo-modal{width:min(52rem,100%);max-height:min(90vh,48rem);margin-top:.5rem;margin-bottom:2rem;background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-lg);border:1px solid var(--color-border);display:flex;flex-direction:column}.test-metabolismo-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border-subtle)}.test-metabolismo-modal-header h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--color-text)}.test-metabolismo-modal-cerrar{flex-shrink:0;padding:.35rem .75rem;font-size:.875rem;font-weight:600;color:var(--color-tag-teal-fg);background:var(--color-tag-teal-bg);border:1px solid var(--color-tag-teal-border);border-radius:8px;cursor:pointer}.test-metabolismo-modal-body{padding:1rem 1.25rem 1.25rem;overflow-y:auto;font-size:.875rem;color:var(--color-text-tertiary)}.test-metabolismo-modal-section{margin-top:1.15rem}.test-metabolismo-modal-section:first-child{margin-top:0}.test-metabolismo-modal-section h4{margin:0 0 .5rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.test-metabolismo-resp-table{width:100%;border-collapse:collapse;font-size:.8rem}.test-metabolismo-resp-table th,.test-metabolismo-resp-table td{padding:.4rem .5rem;border-bottom:1px solid var(--color-border-subtle);text-align:left;vertical-align:top}.test-metabolismo-resp-table th{width:6.5rem;font-weight:600;color:var(--color-text-secondary);font-size:.72rem;text-transform:uppercase}.test-metabolismo-resp-valor{font-size:.85rem;color:var(--color-text);font-variant-numeric:tabular-nums}.test-metabolismo-modal-contacto{margin:0 0 1rem;font-size:.88rem;color:var(--color-text-tertiary)}.quiz-modal-resumen{padding:1rem 1.1rem;margin-bottom:1rem;background:linear-gradient(135deg,var(--color-tag-mint-bg) 0%,var(--color-tag-mint-gradient-end) 100%);border:1px solid var(--color-tag-teal-border);border-radius:12px}.quiz-modal-resumen-titulo{margin:0 0 .75rem;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-tag-teal-fg)}.quiz-modal-resumen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.75rem 1.25rem}.quiz-modal-resumen-item{display:flex;flex-direction:column;gap:.2rem}.quiz-modal-resumen-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.quiz-modal-resumen-valor{font-size:1.1rem;font-weight:700;color:var(--color-tag-teal-deep)}.quiz-modal-interpretacion{margin:.85rem 0 0;font-size:.9rem;line-height:1.55;color:var(--color-text-tertiary)}.quiz-modal-secciones-puntos{margin:.75rem 0 0;padding-left:1.1rem;font-size:.85rem;line-height:1.6;color:var(--color-text-tertiary)}.usuarios-page{width:100%}.usuarios-page .page-header{margin-bottom:2rem}.usuarios-page .page-header h2{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.usuarios-page .page-header p{color:var(--color-text-secondary);font-size:.95rem;margin:0}.usuarios-content{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-card);border:1px solid var(--color-border-subtle);overflow:hidden}.usuarios-toolbar{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.usuarios-page .toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.usuarios-page .search-box{display:flex;align-items:center;gap:.75rem;max-width:400px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:8px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.usuarios-page .search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.usuarios-page .search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.usuarios-page .search-input{flex:1;border:none;background:transparent;font-size:.95rem;color:var(--color-text);outline:none}.usuarios-page .search-input::placeholder{color:var(--color-text-muted)}.btn-crear{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s}.btn-crear:hover{background:var(--color-primary-hover)}.btn-crear:active{transform:scale(.98)}.usuarios-table-wrap{overflow-x:auto}.usuarios-table{width:100%;border-collapse:collapse}.usuarios-table th,.usuarios-table td{padding:.75rem 1.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.usuarios-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-table-header-bg)}.usuarios-table td{font-size:.9rem;color:var(--color-text-tertiary)}.usuarios-table .col-num{text-align:right}.usuarios-table tbody tr:hover{background:var(--color-surface-muted)}.usuarios-table .no-results{text-align:center;color:var(--color-text-muted);padding:3rem;font-size:.95rem}.usuarios-table .badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:6px}.usuarios-table .badge.activo{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.usuarios-table .badge.inactivo{background:color-mix(in srgb,var(--color-text-secondary) 15%,transparent);color:var(--color-text-secondary)}.usuarios-table select.rol-select{font-size:.875rem;padding:.35rem .5rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text-tertiary);max-width:11rem;cursor:pointer}.usuarios-table select.rol-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-focus-ring)}.modal-backdrop{position:fixed;inset:0;background:var(--color-overlay-scrim);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-panel{background:var(--color-surface);border-radius:12px;box-shadow:var(--color-shadow-lg);width:100%;max-width:440px;max-height:90vh;overflow:auto}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border-subtle)}.modal-header h3{margin:0;font-size:1.15rem;font-weight:700;color:var(--color-text)}.modal-close{border:none;background:var(--color-surface-hover);color:var(--color-text-secondary);width:2rem;height:2rem;border-radius:8px;cursor:pointer;font-size:1.25rem;line-height:1;flex-shrink:0}.modal-close:hover{background:var(--color-border);color:var(--color-text-tertiary)}.modal-body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.modal-field label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.35rem}.modal-field input,.modal-field select{width:100%;box-sizing:border-box;padding:.5rem .75rem;font-size:.95rem;background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:8px;color:var(--color-text)}.modal-field input:focus,.modal-field select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.modal-error{background:var(--color-danger-bg);color:var(--color-danger-text-strong);font-size:.875rem;padding:.6rem .75rem;border-radius:8px}.modal-footer{padding:1rem 1.5rem 1.25rem;border-top:1px solid var(--color-border-subtle);display:flex;justify-content:flex-end;gap:.75rem}.btn-ghost{padding:.5rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-text-secondary);background:transparent;border:1px solid var(--color-border);border-radius:8px;cursor:pointer}.btn-ghost:hover{background:var(--color-surface-muted)}.btn-primary-modal{padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:8px;cursor:pointer}.btn-primary-modal:hover:not(:disabled){background:var(--color-primary-hover)}.btn-primary-modal:disabled{opacity:.65;cursor:not-allowed}.page-loading,.page-error-banner{margin:0 1.5rem 1rem;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.page-loading{background:var(--color-surface-muted);color:var(--color-text-secondary)}.page-error-banner{background:var(--color-danger-bg);color:var(--color-danger-text-strong)}.modal-panel--wide{max-width:520px}.modal-body--scroll{max-height:min(60vh,420px);overflow-y:auto}.btn-edit-rol{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.8rem;font-weight:600;color:var(--color-primary);background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:6px;cursor:pointer}.btn-edit-rol:hover{background:var(--color-border)}.perm-global-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.perm-global-actions .btn-ghost{font-size:.8125rem}.perm-section{border:1px solid var(--color-border-subtle);border-radius:8px;padding:.75rem 1rem 1rem;margin:0}.perm-section-title{padding:0 0 .5rem;font-size:.85rem;font-weight:700;color:var(--color-text)}.perm-section-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.perm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.perm-item-label{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--color-text-tertiary)}.perm-item-text{display:flex;flex-direction:column;gap:.15rem}.perm-item-name{font-weight:500;color:var(--color-text-tertiary)}.perm-item-path{font-size:.72rem;color:var(--color-text-muted);background:var(--color-surface-muted);padding:.1rem .35rem;border-radius:4px}.usuarios-table .col-acciones{min-width:200px;vertical-align:middle}.rol-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.btn-delete-rol{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.8rem;font-weight:600;color:var(--color-danger-text-strong);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:6px;cursor:pointer}.btn-delete-rol:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger) 18%,var(--color-danger-bg))}.btn-delete-rol:disabled{opacity:.45;cursor:not-allowed}.usuarios-col-acciones{width:4.5rem;text-align:center;vertical-align:middle}.btn-icon-edit-usuario{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-primary);cursor:pointer;transition:background .15s,border-color .15s}.btn-icon-edit-usuario:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong)}.modal-field-hint{font-weight:400;color:var(--color-text-muted)}.modal-field-checkbox{margin-bottom:0}.modal-checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:var(--color-text-tertiary);cursor:pointer;margin:0}.modal-checkbox-label input{width:auto;accent-color:var(--color-primary)}
