:root{--primary: #005A9C;--primary-dark: #003D6B;--primary-light: #e0f2fe;--primary-blue: #2563eb;--primary-blue-hover: #1d4ed8;--primary-blue-light: #eff6ff;--primary-blue-border: #bfdbfe;--accent-teal: #0d9488;--accent-indigo: #4f46e5;--accent-sky: #0284c7;--focus-ring: #005A9C;--border: #e2e8f0;--border-light: #f1f5f9;--border-strong: #cbd5e1;--bg-app: #F4F7FA;--text-main: #1e293b;--text-dark: #0f172a;--text-secondary: #64748b;--text-muted-strong: #475569;--success: #16a34a;--success-contrast: #14532d;--warning: #f59e0b;--warning-contrast: #92400e;--info: #2563eb;--info-contrast: #1e3a8a;--danger: #ef4444;--danger-contrast: #7f1d1d;--white: #ffffff;--surface: #ffffff;--surface-soft: #f8fafc;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .08);--shadow-md: 0 8px 20px rgba(15, 23, 42, .08);--shadow-lg: 0 18px 35px rgba(15, 23, 42, .12);--motion-fast: .14s;--motion-base: .2s;--ease-standard: cubic-bezier(.2, 0, 0, 1)}body{margin:0;padding:0;background-color:var(--bg-app);color:var(--text-main);font-family:Manrope,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;text-rendering:optimizeLegibility}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0}.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}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}html,body{width:100%;min-height:100%;overflow-x:auto}*{box-sizing:border-box}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}.viewport-safe{min-height:100dvh}.scroll-safe{overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-body{max-height:min(78dvh,680px);overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-body .form-actions{position:sticky;bottom:0;z-index:2;background:linear-gradient(to top,#fff 82%,#ffffffeb);margin-top:20px;padding-top:14px;padding-bottom:max(12px,env(safe-area-inset-bottom));box-shadow:0 -10px 20px -16px #0f172a59}.page-container{display:flex;flex-direction:column;min-height:calc(100dvh - 70px);padding:0 24px 24px;box-sizing:border-box;width:100%;min-width:0}@media(max-width:768px){.page-container{min-height:auto;padding:0 12px 16px}}.page-container .page-container,.inventory-center-shell .page-container,.inventory-center-shell .salidas-page{padding:0!important;min-height:auto!important}.table-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;border:1px solid var(--border);margin-bottom:20px}.table-container::-webkit-scrollbar{height:6px}.table-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.table-container table{width:max-content;min-width:100%}@media(max-width:480px){.table-container{margin-inline:0}.table-container table{font-size:.875rem}}@media(max-width:768px){.p-mobile-0{padding:0!important}}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}@media(max-width:640px){.admin-header{flex-direction:column;align-items:flex-start;gap:16px}.admin-header .btn-new{width:100%;text-align:center}}@media(max-width:768px){button,a.btn,.action-pill{min-height:44px;display:inline-flex;align-items:center;justify-content:center}}.responsive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}@media(max-width:480px){.responsive-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:375px){.page-container{padding-inline:8px}.form-actions,.actions-centered{flex-wrap:wrap}.form-actions>*,.actions-centered>*{flex:1 1 100%}}@media(max-width:320px){.page-container{padding-inline:6px}.table-container{border-radius:8px}}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.5em;padding-right:2.5rem!important;cursor:pointer}select:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-light)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;background:#fff;font-family:inherit;font-size:1rem;color:var(--text-main);transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.admin-surface{--admin-control-height: 42px;--admin-card-radius: 16px;color:var(--text-main)}.admin-surface .page-header,.admin-surface .header-section{padding:0;margin-bottom:28px}.admin-surface .page-header h1,.admin-surface .page-header h2,.admin-surface .header-section h1,.admin-surface .header-section h2{margin:4px 0 6px;color:var(--text-dark);font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.045em}.admin-surface .title-block p,.admin-surface .header-content p,.admin-surface .header-section p{margin:0;max-width:58rem;color:var(--text-secondary);line-height:1.55}.admin-surface .eyebrow,.admin-surface .badge-category{color:var(--primary);font-size:.69rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.admin-surface .toolbar,.admin-surface .context-bar,.admin-surface .companies-search-box,.admin-surface .search-box{border-color:var(--border);border-radius:var(--radius-md);background:var(--surface)}.admin-surface .toolbar,.admin-surface .context-bar{box-shadow:var(--shadow-sm)}.admin-surface input,.admin-surface select,.admin-surface textarea{min-height:var(--admin-control-height);border-color:var(--border);border-radius:var(--radius-sm)}.admin-surface .user-card,.admin-surface .role-card,.admin-surface .company-context-card,.admin-surface .registration-control-card,.admin-surface .metrics-card,.admin-surface .timeline-item,.admin-surface .sidebar-companies,.admin-surface .main-modules-panel{border-color:var(--border);border-radius:var(--admin-card-radius);box-shadow:var(--shadow-sm)}.admin-surface .material-symbols-rounded{vertical-align:middle}@media(max-width:768px){.admin-surface .page-header,.admin-surface .header-section{margin-bottom:20px}.admin-surface .page-header h1,.admin-surface .page-header h2,.admin-surface .header-section h1,.admin-surface .header-section h2{font-size:1.65rem}}.error-text{display:block;margin-top:.35rem;font-size:.8rem;font-weight:600;color:var(--danger);line-height:1.25}.btn-base,.btn-primary,.btn-secondary,.btn-cancel,.btn-danger,.btn-icon{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:background-color var(--motion-base) var(--ease-standard),border-color var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);border:1px solid transparent;text-decoration:none;line-height:1.4}.btn-base:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-cancel:disabled,.btn-danger:disabled,.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--white);border-color:var(--primary)}.btn-primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.btn-primary:focus-visible{outline:3px solid var(--primary-light);outline-offset:2px}.btn-secondary{background:var(--white);color:var(--text-secondary);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:var(--text-main)}.btn-cancel{background:#f1f5f9;color:var(--text-secondary);border-color:transparent}.btn-cancel:hover:not(:disabled){background:#e2e8f0;color:var(--text-main)}.btn-danger{background:var(--danger);color:var(--white);border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-icon{width:36px;height:36px;padding:0;border-radius:8px;background:var(--white);border-color:var(--border);color:var(--text-secondary)}.btn-icon:hover:not(:disabled){border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.btn-icon.edit:hover:not(:disabled){border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.btn-icon.delete:hover:not(:disabled){border-color:var(--danger);background:#fee2e2;color:var(--danger)}.btn-icon.stock:hover:not(:disabled){border-color:var(--success);background:#dcfce7;color:var(--success)}.btn-icon-sm{width:30px;height:30px;border-radius:7px;font-size:.9rem}.btn-close{background:#f1f5f9;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .2s;padding:0;font-size:1.2rem;line-height:1}.btn-close:hover{background:#e2e8f0;color:var(--text-main)}.btn-sm{padding:6px 12px;font-size:.85rem}.btn-lg{padding:14px 28px;font-size:1.1rem}.btn-block{width:100%}.badge{display:inline-flex;padding:4px 12px;border-radius:9999px;font-size:.75rem;font-weight:700;text-transform:uppercase;line-height:1.4}.badge.ACTIVE,.badge.ACTIVO,.badge.COMPLETADA,.badge.LIBRE,.badge.success{background:#dcfce7;color:var(--success-contrast)}.badge.INACTIVE,.badge.INACTIVO,.badge.CANCELADA,.badge.OCUPADA,.badge.danger{background:#fee2e2;color:var(--danger-contrast)}.badge.PENDIENTE,.badge.warning{background:#fef3c7;color:#78350f}.badge.info{background:var(--primary-light);color:var(--primary-dark)}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:btn-spin .6s linear infinite}.btn-loading.btn-primary:after{border-top-color:var(--white)}@keyframes btn-spin{to{transform:rotate(360deg)}}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border);flex-wrap:wrap}.actions-centered{display:flex;justify-content:center;gap:12px}
