:root{--font-display:"Outfit", sans-serif;--font-mono:"JetBrains Mono", monospace;--text-xs:10.5px;--text-sm:12px;--text-base:13.5px;--text-md:15px;--text-lg:17px;--text-xl:22px;--text-2xl:26px;--text-3xl:32px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--z-dropdown:50;--z-topbar:60;--z-sidebar:100;--z-sidebar-toggle:110;--z-modal:200;--z-toast:300;--z-overlay:9999;--green:#22c55e;--green-dim:rgba(34,197,94,.12);--red:#ef4444;--red-dim:rgba(239,68,68,.12);--amber:#f59e0b;--amber-dim:rgba(245,158,11,.12);--purple:#a855f7;--purple-dim:rgba(168,85,247,.12);--brand-primary:#2ec195;--brand-primary-hover:#28a883;--brand-primary-dim:rgba(46,193,149,.12);--brand-primary-contrast:#042222;--brand-primary-light:#e0f6ef;--brand-accent:#02df82;--brand-dark:#03624c;--brand-deep:#042222;--brand-soft:#f1f7f7;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#111;--bg-tertiary:#1a1a1a;--bg-card:#141414;--bg-card-hover:#1a1a1a;--bg-overlay:rgba(0,0,0,.8);--border-primary:#222;--border-secondary:#2a2a2a;--border-hover:#333;--text-primary:#fafafa;--text-secondary:#888;--text-tertiary:#555;--text-inverse:#0a0a0a;--sidebar-bg:#0e0e0e;--sidebar-active:#1a1a1a;--sidebar-hover:#151515;--input-bg:#1a1a1a;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-card:0 1px 3px rgba(0,0,0,.4);--shadow-card-hover:0 8px 25px rgba(0,0,0,.5);--shadow-modal:0 25px 60px rgba(0,0,0,.7)}[data-theme=light]{--bg-primary:#fafafa;--bg-secondary:#f5f5f5;--bg-tertiary:#eee;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-overlay:rgba(0,0,0,.5);--border-primary:#e5e5e5;--border-secondary:#eee;--border-hover:#d4d4d4;--text-primary:#0a0a0a;--text-secondary:#666;--text-tertiary:#999;--text-inverse:#fafafa;--sidebar-bg:#fff;--sidebar-active:#f5f5f5;--sidebar-hover:#fafafa;--input-bg:#f5f5f5;--shadow-sm:0 1px 2px rgba(0,0,0,.04);--shadow-card:0 1px 3px rgba(0,0,0,.06);--shadow-card-hover:0 8px 25px rgba(0,0,0,.1);--shadow-modal:0 25px 60px rgba(0,0,0,.2)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px}body{font-family:var(--font-display);background:var(--bg-primary);color:var(--text-primary);transition:background var(--transition-base), color var(--transition-base);overflow-x:hidden}a{color:var(--brand-accent,var(--text-primary));text-decoration:none}a:hover{opacity:.8}.layout{min-height:100vh}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border,var(--border-primary));padding:var(--space-lg) 0;width:240px;height:100vh;z-index:var(--z-sidebar);transition:width .25s ease, background var(--transition-base), border-color var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;left:0}.sidebar-brand{padding:0 var(--space-lg);margin-bottom:var(--space-xl);align-items:center;gap:10px;min-height:36px;display:flex}.sidebar-brand .brand-mark{background:var(--brand-primary,var(--text-primary));border-radius:var(--radius-sm);width:34px;height:34px;color:var(--brand-primary-contrast,var(--text-inverse));letter-spacing:-.5px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.sidebar-brand .brand-text{font-size:var(--text-lg);letter-spacing:-.4px;color:var(--sidebar-text,var(--text-primary));white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.sidebar-brand.has-logo{padding:0 var(--space-sm);margin-bottom:var(--space-xl);flex-direction:column;align-items:center;gap:4px}.sidebar-brand.has-logo .brand-logo{object-fit:contain;width:auto;height:52px;display:block}.sidebar-brand.has-logo .brand-text{font-size:var(--text-lg);text-align:center;letter-spacing:-.3px;color:var(--sidebar-text,var(--text-primary));font-weight:600;line-height:1.2}.sidebar-brand .brand-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px;color:var(--sidebar-text-dim,var(--text-tertiary));background:var(--bg-tertiary);border-radius:4px;margin-left:auto;padding:2px 6px;font-size:9px;font-weight:500}.sidebar-section{padding:0 var(--space-sm);margin-bottom:var(--space-lg)}.sidebar-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1.5px;color:var(--sidebar-text-dim,var(--text-tertiary));padding:0 var(--space-md);margin-bottom:var(--space-sm);font-size:10px;font-weight:500}.sidebar-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--sidebar-text-dim,var(--text-secondary));font-size:var(--text-base);cursor:pointer;transition:all var(--transition-fast);font-weight:400;text-decoration:none;display:flex;position:relative}.sidebar-item:hover{background:var(--sidebar-hover);color:var(--sidebar-text,var(--text-primary))}.sidebar-item:active{background:var(--sidebar-active)}.sidebar-item.active{background:var(--brand-primary-dim,var(--sidebar-active));color:var(--brand-primary,var(--text-primary));font-weight:500}.sidebar-item.active:before{content:"";background:var(--brand-primary,var(--text-primary));border-radius:0 2px 2px 0;width:3px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.sidebar-item svg{opacity:.6;pointer-events:none;flex-shrink:0;width:18px;height:18px}.sidebar-item span{pointer-events:none}.sidebar-item.active svg{opacity:1}.sidebar-group{flex-direction:column;display:flex}.sidebar-group__head{align-items:center;gap:2px;display:flex}.sidebar-group__head>.sidebar-item{flex:1;min-width:0}.sidebar-group__toggle{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--sidebar-text-dim,var(--text-tertiary));cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), transform .24s cubic-bezier(.4, 0, .2, 1);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-right:2px;padding:0;display:inline-flex}.sidebar-group__toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-text,var(--text-primary))}.sidebar-group__toggle svg{opacity:.75;width:14px;height:14px;transition:transform .26s cubic-bezier(.4,0,.2,1)}.sidebar-group.is-open .sidebar-group__toggle svg{transform:rotate(90deg)}.sidebar-group__submenu{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1);display:grid}.sidebar-group__submenu-inner{flex-direction:column;gap:2px;min-height:0;padding-top:2px;display:flex;overflow:hidden}.sidebar-group.is-open .sidebar-group__submenu{opacity:1;grid-template-rows:1fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),opacity .2s 80ms}.sidebar-item.sidebar-subitem{margin-left:calc(var(--space-md) + 18px);padding-top:calc(var(--space-sm) * .7);padding-bottom:calc(var(--space-sm) * .7);font-size:calc(var(--text-base) * .92);border-left:1px solid var(--sidebar-hover);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.sidebar-item.sidebar-subitem svg{opacity:.55;width:15px;height:15px}.sidebar-item.sidebar-subitem.active svg{opacity:.95}.sidebar-item.sidebar-subitem.sidebar-subitem--nested{margin-left:calc(var(--space-md) + 18px + 12px);font-size:calc(var(--text-base) * .88);border-left-color:var(--sidebar-active);position:relative}.sidebar-item.sidebar-subitem.sidebar-subitem--nested svg{opacity:.45;width:13px;height:13px}.sidebar-item.sidebar-subitem.sidebar-subitem--nested:after{content:"";background:var(--sidebar-hover);width:8px;height:1px;position:absolute;top:50%;left:-1px}.sidebar-item.sidebar-subitem.active:before{left:-1px}.sidebar-item .badge{font-family:var(--font-mono);text-align:center;min-width:20px;margin-left:auto;font-size:11px;font-weight:500}.sidebar-item .badge.alert{color:var(--red)}.sidebar-footer{padding:0 var(--space-sm);margin-top:auto}.sidebar-text{white-space:nowrap;transition:opacity .15s;overflow:hidden}.sidebar-edge-toggle{border:1px solid var(--border-primary);background:var(--bg-primary);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;z-index:var(--z-sidebar-toggle);opacity:0;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;transition:opacity .2s,background .15s,color .15s,border-color .15s,box-shadow .15s;display:flex;position:absolute;top:50%;right:-14px;transform:translateY(-50%)}.sidebar:hover .sidebar-edge-toggle{opacity:1}.sidebar-edge-toggle:focus-visible{opacity:1}.sidebar-edge-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-hover);box-shadow:0 2px 8px rgba(0,0,0,.12)}.sidebar-edge-toggle:active{transform:translateY(-50%)scale(.9)}.sidebar-edge-toggle svg{flex-shrink:0;width:14px;height:14px;transition:transform .25s}.sidebar.collapsed{width:64px}.sidebar.collapsed .brand-text,.sidebar.collapsed .brand-badge,.sidebar.collapsed .sidebar-label{display:none}.sidebar.collapsed .sidebar-brand{margin-bottom:var(--space-lg);justify-content:center;padding:0}.sidebar.collapsed .sidebar-brand.has-logo{padding:var(--space-xs) 0}.sidebar.collapsed .brand-logo{max-width:36px;max-height:36px;margin-bottom:0}.sidebar.collapsed .sidebar-text{opacity:0;width:0;display:none}.sidebar.collapsed .sidebar-item{padding:var(--space-sm);justify-content:center}.sidebar.collapsed .sidebar-item.sidebar-subitem{padding-top:var(--space-sm);padding-bottom:var(--space-sm);font-size:var(--text-base);border-radius:var(--radius-sm);border-left:none;margin-left:0}.sidebar.collapsed .sidebar-item.sidebar-subitem svg{opacity:.75;width:18px;height:18px}.sidebar.collapsed .sidebar-item.sidebar-subitem.active svg{opacity:1}.sidebar.collapsed .sidebar-group__toggle{display:none}.sidebar.collapsed .sidebar-group__submenu{opacity:1;grid-template-rows:1fr}.sidebar.collapsed .sidebar-edge-toggle svg{transform:rotate(180deg)}.sidebar.collapsed .sidebar-edge-toggle{opacity:1}.main{min-height:100vh;margin-left:240px;transition:margin-left .25s}.sidebar-is-collapsed .main{margin-left:64px}.topbar{border-bottom:1px solid var(--border-primary);height:56px;padding:0 var(--space-xl);align-items:center;gap:var(--space-md);background:var(--topbar-bg,var(--bg-primary));color:var(--topbar-text,inherit);z-index:var(--z-topbar);transition:background var(--transition-base), border-color var(--transition-base);display:flex;position:sticky;top:0}.topbar-breadcrumb{color:var(--text-tertiary);align-items:center;gap:6px;font-size:13px;display:flex}.topbar-breadcrumb>svg{flex-shrink:0;width:14px;height:14px}.breadcrumb-link{color:var(--text-tertiary);align-items:center;text-decoration:none;transition:color .15s;display:flex}.breadcrumb-link svg{width:16px;height:16px}.topbar-spacer{flex:1}.theme-toggle{border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:flex}.theme-toggle:hover{border-color:var(--border-hover);color:var(--text-primary)}.theme-toggle:active{transform:scale(.92)}.theme-toggle svg{width:16px;height:16px}[data-theme=dark] .theme-toggle .icon-sun{display:block}[data-theme=dark] .theme-toggle .icon-moon,[data-theme=light] .theme-toggle .icon-sun{display:none}[data-theme=light] .theme-toggle .icon-moon{display:block}.sidebar-logout-form{width:100%;margin:0;padding:0}.sidebar-logout-btn{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none}.topbar-avatar{background:var(--brand-primary,var(--text-primary));width:32px;height:32px;color:var(--brand-primary-contrast,var(--text-inverse));font-size:var(--text-sm);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.page{padding:var(--space-xl)}.page-header{margin-bottom:var(--space-xl);justify-content:space-between;align-items:flex-end;display:flex}.page-title{font-size:var(--text-2xl);letter-spacing:-.5px;font-weight:600;line-height:1}.page-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin-top:6px}.btn-primary{align-items:center;gap:var(--space-sm);background:var(--brand-primary,var(--text-primary));color:var(--brand-primary-contrast,var(--text-inverse));border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);border:none;padding:10px 20px;font-size:13px;font-weight:500;display:inline-flex}.btn-primary:hover{background:var(--brand-primary-hover,var(--text-secondary));box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.btn-primary:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-primary svg{width:15px;height:15px}.btn-ghost{align-items:center;gap:var(--space-sm);color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:8px 14px;font-size:13px;font-weight:400;display:inline-flex}.btn-ghost:hover{border-color:var(--border-hover);color:var(--text-primary)}.btn-ghost svg{width:14px;height:14px}.btn-icon{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon svg{width:15px;height:15px}.btn-icon:hover{background:var(--bg-tertiary);color:var(--text-primary)}.btn-icon:disabled{opacity:.25;cursor:not-allowed}.btn-icon:disabled:hover{color:var(--text-tertiary);background:0 0}.btn-icon-ghost{border:1px solid var(--border-secondary)}.btn-icon-ghost:hover{border-color:var(--border-hover)}.btn-icon-danger:hover:not(:disabled){color:var(--status-error);background:color-mix(in srgb, var(--status-error) 8%, transparent)}.btn-icon-danger.btn-icon-ghost:hover:not(:disabled){border-color:var(--status-error)}.btn-icon-success:hover:not(:disabled){color:var(--status-success,#10b981);background:color-mix(in srgb, var(--status-success,#10b981) 10%, transparent)}.btn-icon.inline-edit-icon{width:24px;height:24px}.btn-icon.inline-edit-icon svg{width:13px;height:13px}.stats-row{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-md);transition:all var(--transition-base)}.stat-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px;font-size:11px;font-weight:400}.stat-value{font-size:var(--text-xl);letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-weight:600;line-height:1}.stat-value.green{color:var(--green)}.stat-value.red{color:var(--red)}.stat-value.amber{color:var(--amber)}.stat-change{font-family:var(--font-mono);color:var(--text-tertiary);margin-top:var(--space-sm);font-size:11px}.stat-change .up{color:var(--green)}.stat-change .down{color:var(--red)}.toolbar{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);display:flex}.toolbar-tabs{background:var(--bg-tertiary);border-radius:var(--radius-sm);gap:2px;padding:3px;display:flex}.toolbar-tab{font-family:var(--font-display);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:4px;padding:6px 14px;font-size:12.5px;font-weight:400}.toolbar-tab:hover{color:var(--text-primary)}.toolbar-tab.active{background:var(--bg-card);color:var(--text-primary);font-weight:500;box-shadow:0 1px 2px rgba(0,0,0,.1)}.toolbar-spacer{flex:1}.search-input{align-items:center;width:280px;max-width:100%;display:flex;position:relative}.search-input__icon{color:var(--text-tertiary);pointer-events:none;font-size:14px;line-height:1;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input__field{border:1px solid var(--border-primary);border-radius:var(--radius-md,10px);background:var(--input-bg);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:8px 32px;font-family:inherit;font-size:13px}.search-input__field::placeholder{color:var(--text-tertiary)}.search-input__field:focus{border-color:var(--brand-primary,#2ec195);box-shadow:0 0 0 3px var(--brand-primary-dim,rgba(46,193,149,.15));outline:none}.search-input__field::-webkit-search-cancel-button{display:none}.search-input__clear{width:20px;height:20px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;line-height:1;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-input__clear:hover{background:var(--bg-tertiary);color:var(--text-primary)}.search-input__field:placeholder-shown~.search-input__clear{display:none}.view-toggle{border:1px solid var(--border-primary);border-radius:var(--radius-sm);gap:2px;padding:3px;display:flex}.view-btn{width:30px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;display:flex}.view-btn:hover{color:var(--text-primary)}.view-btn.active{background:var(--bg-tertiary);color:var(--text-primary)}.view-btn svg{width:14px;height:14px}.data-table-wrap{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-base);table-layout:fixed}.data-table thead th{text-align:left;font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary);border-bottom:1px solid var(--border-primary);background:var(--bg-secondary);white-space:nowrap;text-overflow:ellipsis;padding:10px 14px;font-weight:500;overflow:hidden}.data-table thead th:first-child{border-top-left-radius:calc(var(--radius-md) - 1px)}.data-table thead th:last-child{border-top-right-radius:calc(var(--radius-md) - 1px)}.data-table thead th.center{text-align:center}.data-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table thead th.sortable:hover{color:var(--text-primary)}.data-table thead th .sort-indicator{opacity:.6;margin-left:4px;font-size:12px}.data-table tbody tr{border-bottom:1px solid var(--border-secondary);transition:background var(--transition-fast)}.data-table tbody tr:nth-child(2n){background:var(--bg-secondary)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr.clickable-row{cursor:pointer}.data-table tbody tr.clickable-row:hover{background:var(--bg-tertiary)}.data-table td{vertical-align:middle;text-overflow:ellipsis;padding:10px 14px;overflow:hidden}.data-table td.center{text-align:center}.data-table .mono{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary)}.data-table .muted{color:var(--text-tertiary);font-size:12.5px}.data-table .font-medium{color:var(--text-primary);font-weight:500}.data-table td:last-child{overflow:visible}.data-table .actions-cell{white-space:nowrap;text-overflow:unset;align-items:center;gap:6px;display:flex;overflow:visible}.col-name{width:22%;min-width:160px}.col-contact{width:18%;min-width:140px}.col-email{width:20%;min-width:160px}.col-rfc{width:12%;min-width:100px}.col-category,.col-status{width:10%;min-width:90px}.col-badge{width:7%;min-width:60px}.col-date{width:10%;min-width:90px}.col-actions{width:8%;min-width:70px}.col-actions-wide{width:14%;min-width:140px}.table-skeleton{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.table-skeleton .skeleton-header{gap:var(--space-md);background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);grid-template-columns:2fr 1fr 1fr 1fr .5fr;padding:14px 16px;display:grid}.table-skeleton .skeleton-row{gap:var(--space-md);border-bottom:1px solid var(--border-secondary);grid-template-columns:2fr 1fr 1fr 1fr .5fr;padding:16px;display:grid}.table-skeleton .skeleton-row:last-child{border-bottom:none}.skeleton-bone{background:var(--bg-tertiary);border-radius:4px;height:12px;animation:1.8s ease-in-out infinite skeleton-pulse}.skeleton-bone.w-full{width:100%}.skeleton-bone.w-3-4{width:75%}.skeleton-bone.w-1-2{width:50%}.skeleton-bone.w-1-3{width:33%}.skeleton-bone.w-1-4{width:25%}.skeleton-bone-circle{background:var(--bg-tertiary);border-radius:50%;flex-shrink:0;width:32px;height:32px;animation:1.8s ease-in-out infinite skeleton-pulse}.skeleton-user{align-items:center;gap:var(--space-sm);display:flex}.skeleton-user-info{flex-direction:column;flex:1;gap:6px;display:flex}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.table-pagination{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;padding:12px 16px;display:flex}.pagination-info{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-tertiary);letter-spacing:.3px;white-space:nowrap}.pagination-size{align-items:center;gap:var(--space-xs);display:flex}.page-size-select{appearance:none;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23666'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding:4px 24px 4px 8px}.page-size-select:hover{border-color:var(--border-hover)}.page-size-select:focus{border-color:var(--text-tertiary);outline:none}.pagination-size-label{font-size:var(--text-sm);color:var(--text-tertiary);white-space:nowrap}.pagination-controls{align-items:center;gap:4px;display:flex}.pagination-btn{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:flex}.pagination-btn:hover:not(:disabled){border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-tertiary)}.pagination-btn:active:not(:disabled){transform:scale(.92)}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}.pagination-current{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);padding:0 var(--space-sm);white-space:nowrap}.empty-state{text-align:center;padding:var(--space-3xl) var(--space-xl);color:var(--text-tertiary)}.empty-state-icon{background:var(--bg-tertiary);width:48px;height:48px;color:var(--text-tertiary);margin:0 auto var(--space-lg);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty-state-icon svg{opacity:.5;width:24px;height:24px}.empty-state h3{font-size:var(--text-md);color:var(--text-secondary);margin-bottom:var(--space-sm);font-weight:500}.empty-state p{font-size:var(--text-base)}.clients-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.client-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-lg);cursor:pointer;transition:all var(--transition-base);position:relative}.client-card:before{content:"";opacity:0;height:3px;transition:opacity var(--transition-base);border-radius:var(--radius-lg) var(--radius-lg) 0 0;position:absolute;top:0;left:0;right:0}.client-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.client-card:hover:before{opacity:1}.client-card.status-active:before{background:var(--green)}.client-card.status-issue:before{background:var(--red)}.client-card.status-pending:before{background:var(--amber)}.card-top{align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.card-avatar{border-radius:var(--radius-md);border:1px solid var(--border-primary);background:var(--bg-tertiary);width:44px;height:44px;color:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.card-info{flex:1;min-width:0}.card-name{letter-spacing:-.2px;white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:15px;font-weight:600;overflow:hidden}.card-domain{font-family:var(--font-mono);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.card-rfc{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:6px;margin-top:2px;font-size:11px;display:flex}.badge-69b{font-family:var(--font-mono);letter-spacing:.3px;white-space:nowrap;border-radius:3px;align-items:center;gap:3px;padding:1px 6px;font-size:9.5px;font-weight:500;display:inline-flex}.badge-69b.clean{background:var(--green-dim);color:var(--green)}.badge-69b.flagged{background:var(--red-dim);color:var(--red)}.badge-69b svg{width:10px;height:10px}.badge-repse{font-family:var(--font-mono);letter-spacing:.3px;white-space:nowrap;background:var(--purple-dim);color:var(--purple);border-radius:3px;align-items:center;gap:3px;padding:1px 6px;font-size:9.5px;font-weight:500;display:inline-flex}.badge-repse svg{width:10px;height:10px}.client-card.blocked{opacity:.55;pointer-events:none;position:relative}.client-card.blocked:after{content:"OPERACIONES BLOQUEADAS —Art. 69-B";font-family:var(--font-mono);letter-spacing:1.5px;color:var(--red);background:var(--bg-card);border:2px solid var(--red);border-radius:var(--radius-sm);white-space:nowrap;z-index:10;pointer-events:none;padding:6px 16px;font-size:11px;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-8deg)}.card-status{border-radius:20px;flex-shrink:0;align-items:center;gap:5px;margin-top:2px;padding:4px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.card-status .dot{border-radius:50%;width:6px;height:6px}.card-status.active{background:var(--green-dim);color:var(--green)}.card-status.active .dot{background:var(--green)}.card-status.issue{background:var(--red-dim);color:var(--red)}.card-status.issue .dot{background:var(--red)}.card-status.pending{background:var(--amber-dim);color:var(--amber)}.card-status.pending .dot{background:var(--amber)}.card-status.suspended{background:var(--red-dim);color:var(--red);opacity:.7}.card-status.suspended .dot{background:var(--red)}.card-divider{border:none;border-top:1px solid var(--border-secondary);margin:0 0 var(--space-md)}.card-metrics{gap:var(--space-sm);grid-template-columns:repeat(3,1fr);display:grid}.metric{text-align:center}.metric-value{font-family:var(--font-mono);letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:16px;font-weight:500}.metric-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-top:1px;font-size:10.5px}.card-footer{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-secondary);justify-content:space-between;align-items:center;display:flex}.card-updated{color:var(--text-tertiary);font-size:11.5px}.card-actions{opacity:0;transition:opacity var(--transition-fast);gap:4px;display:flex}.client-card:hover .card-actions{opacity:1}.card-action-btn{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.card-action-btn:hover{border-color:var(--border-hover);color:var(--text-primary)}.card-action-btn svg{width:13px;height:13px}.client-card .action-dropdown{top:auto;bottom:100%;transform:translateY(4px)}.client-card .action-dropdown.open{transform:translateY(-4px)}.card-detail-rows{border-top:1px solid var(--border-secondary);margin-bottom:var(--space-md)}.card-detail-row{border-bottom:1px solid var(--border-secondary);justify-content:space-between;align-items:flex-start;padding:8px 0;display:flex}.card-detail-row:last-child{border-bottom:none}.card-detail-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-right:var(--space-sm);flex-shrink:0;padding-top:1px;font-size:11px;font-weight:500}.card-detail-value{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;min-width:0;display:flex}.card-detail-email{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:12.5px;overflow:hidden}.card-detail-phone{font-family:var(--font-mono);color:var(--text-tertiary);font-size:11px}.card-detail-rep-name{color:var(--text-primary);font-size:12.5px;font-weight:500}.card-detail-rep-rfc{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:4px;font-size:11px;display:flex}.client-table-wrap .data-table th:first-child{width:22%}.client-table-wrap .data-table th:nth-child(2){width:16%}.client-table-wrap .data-table th:nth-child(3),.client-table-wrap .data-table th:nth-child(4){width:18%}.client-table-wrap .data-table th:nth-child(5),.client-table-wrap .data-table th:nth-child(6){width:10%}.client-table-wrap .data-table th:nth-child(7){width:6%}.t-client{align-items:center;gap:var(--space-sm);font-weight:500;display:flex}.t-client-info{flex-direction:column;min-width:0;display:flex}.t-client-name{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.2px;font-size:13.5px;font-weight:600;overflow:hidden}.t-client-link{color:var(--text-primary);transition:color var(--transition-fast);text-decoration:none}.t-client-link:hover{color:var(--brand-accent,var(--green))}.t-client-domain{font-family:var(--font-mono);color:var(--text-tertiary);margin-top:1px;font-size:11px}.t-rfc-col{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.t-contact-col{flex-direction:column;gap:2px;display:flex}.t-contact-email{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.t-rep-col{flex-direction:column;gap:3px;display:flex}.t-rep-name{font-size:13px;font-weight:500}.t-rep-rfc{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:4px;font-size:11px;display:flex}.card-avatar.sm{border-radius:var(--radius-sm);width:32px;height:32px;font-size:12px}.data-table tbody tr.blocked{opacity:.45}.data-table tbody tr.blocked td{text-decoration:line-through;-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-decoration-thickness:1px}.data-table tbody tr.blocked td:first-child,.data-table tbody tr.blocked td:nth-child(3),.data-table tbody tr.blocked td:last-child{text-decoration:none}.breadcrumb{font-size:var(--text-sm);color:var(--text-tertiary);margin-bottom:var(--space-lg);align-items:center;gap:6px;display:flex}.breadcrumb-link{color:var(--text-secondary);transition:color var(--transition-fast);text-decoration:none}.breadcrumb-link:hover{color:var(--text-primary)}.breadcrumb-sep svg{width:10px;height:10px;color:var(--text-tertiary)}.breadcrumb-current{color:var(--text-primary);font-weight:500}.detail-header{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-primary);display:flex}.detail-title{letter-spacing:-.5px;margin-bottom:8px;font-size:1.5rem;font-weight:700;line-height:1.2}.detail-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.detail-rfc{font-size:var(--text-sm);color:var(--text-secondary);font-family:var(--font-mono);background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:2px 8px}.detail-domain{font-size:var(--text-sm);color:var(--text-tertiary);font-family:var(--font-mono)}.detail-meta .status-pill{letter-spacing:.2px;border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.detail-meta .status-pill .dot{border-radius:50%;width:6px;height:6px}.status-pill.active{background:var(--green-dim);color:var(--green)}.status-pill.active .dot{background:var(--green)}.status-pill.issue{background:var(--red-dim);color:var(--red)}.status-pill.issue .dot{background:var(--red)}.status-pill.pending{background:var(--amber-dim);color:var(--amber)}.status-pill.pending .dot{background:var(--amber)}.detail-header-actions{gap:var(--space-sm);align-items:center;display:flex}.btn-secondary{border:1px solid var(--border-primary);border-radius:var(--brand-radius,var(--radius-sm));background:var(--bg-card);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;align-items:center;gap:6px;padding:8px 16px;font-weight:500;text-decoration:none;display:inline-flex}.btn-secondary:hover{border-color:var(--brand-primary,var(--border-hover));color:var(--text-primary);background:var(--bg-card-hover)}.btn-secondary svg{width:14px;height:14px}.detail-sections{gap:var(--space-sm);flex-direction:column;display:flex}.detail-section{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--brand-radius,var(--radius-md));transition:border-color var(--transition-fast);overflow:hidden}.detail-section:hover,.detail-section.open{border-color:var(--border-hover)}.detail-section-header{width:100%;padding:14px var(--space-lg);cursor:pointer;color:var(--text-primary);transition:background var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.detail-section-header:hover{background:var(--bg-card-hover)}.detail-section-title{font-size:var(--text-md);letter-spacing:-.2px;font-weight:600}.detail-section-alarm{letter-spacing:.02em;color:#b45309;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.35);border-radius:999px;flex:none;align-items:center;gap:8px;margin-left:12px;margin-right:auto;padding:3px 10px 3px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.detail-section-alarm.alarm-danger{color:#b91c1c;background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.4)}.detail-section-alarm-dot{background:#f59e0b;border-radius:50%;flex-shrink:0;width:9px;height:9px;animation:1.4s ease-out infinite detail-alarm-pulse-warning;box-shadow:0 0 rgba(245,158,11,.6)}.detail-section-alarm.alarm-danger .detail-section-alarm-dot{background:#ef4444;animation-name:detail-alarm-pulse-danger;box-shadow:0 0 rgba(239,68,68,.65)}@keyframes detail-alarm-pulse-warning{0%{box-shadow:0 0 rgba(245,158,11,.55)}70%{box-shadow:0 0 0 10px rgba(245,158,11,0)}to{box-shadow:0 0 rgba(245,158,11,0)}}@keyframes detail-alarm-pulse-danger{0%{box-shadow:0 0 rgba(239,68,68,.6)}70%{box-shadow:0 0 0 12px rgba(239,68,68,0)}to{box-shadow:0 0 rgba(239,68,68,0)}}.detail-section-alarm-text{white-space:nowrap;line-height:1}.detail-section-chevron{transition:transform var(--transition-base);opacity:.4;display:flex}.detail-section:hover .detail-section-chevron{opacity:.7}.detail-section-chevron svg{width:14px;height:14px;color:var(--text-tertiary)}.detail-section.open .detail-section-chevron{opacity:1;transform:rotate(90deg)}.detail-section-body{max-height:0;transition:max-height var(--transition-slow), padding var(--transition-fast);padding:0 var(--space-lg);overflow:hidden}.detail-section.open .detail-section-body{max-height:3000px;padding:0 var(--space-lg) var(--space-lg)}.kv-grid{grid-template-columns:180px 1fr;gap:0;margin:0;display:grid}.kv-grid dt{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-secondary);padding:10px 12px 10px 0;font-size:11px;font-weight:600}.kv-grid dd{font-size:var(--text-base);color:var(--text-primary);border-bottom:1px solid var(--border-secondary);word-break:break-word;margin:0;padding:10px 0}.kv-grid dt:last-of-type,.kv-grid dd:last-of-type{border-bottom:none}.kv-grid-sm dt,.kv-grid-sm dd{font-size:var(--text-sm);padding:6px 0}.kv-subsection{margin:var(--space-md) 0;padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--brand-radius-sm,var(--radius-sm));border:1px solid var(--border-secondary)}.kv-subsection-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);margin-bottom:var(--space-sm);font-size:10px;font-weight:700}.detail-address{font-size:var(--text-base);color:var(--text-primary);margin:2px 0;line-height:1.6}.detail-list{flex-direction:column;display:flex}.detail-list-item{border-bottom:1px solid var(--border-secondary);flex-direction:column;gap:2px;padding:10px 0;display:flex}.detail-list-item:last-child{border-bottom:none}.detail-list-main{font-size:var(--text-base);color:var(--text-primary);font-weight:500}.detail-list-meta{font-size:var(--text-sm);color:var(--text-tertiary)}.rep-cards{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.rep-card{background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:var(--brand-radius,var(--radius-sm));padding:var(--space-md) var(--space-lg);transition:border-color var(--transition-fast)}.rep-card:hover{border-color:var(--border-hover)}.rep-card-header{margin-bottom:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-secondary);justify-content:space-between;align-items:center;display:flex}.rep-card-name{font-size:var(--text-md);letter-spacing:-.2px;font-weight:700}.rep-card-docs{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border-secondary)}.rep-card-docs-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rep-card-docs-row svg{width:14px;height:14px;color:var(--text-tertiary);flex-shrink:0}.rep-card-doc-pill{border-radius:var(--brand-radius-sm,3px);font-size:var(--text-xs);background:var(--green-dim);color:var(--green);align-items:center;gap:5px;padding:3px 10px;font-weight:600;display:inline-flex}.rep-card-doc-id{font-family:var(--font-mono,monospace);opacity:.6;font-size:10px;font-weight:400}.rep-card-no-docs{font-size:var(--text-xs);color:var(--text-tertiary);font-style:italic}.badge-risk{border-radius:var(--brand-radius-sm,3px);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;padding:3px 10px;font-weight:600;display:inline-block}.badge-risk.high{background:var(--red-dim);color:var(--red)}.badge-risk.medium{background:var(--amber-dim);color:var(--amber)}.badge-risk.none{background:var(--green-dim);color:var(--green)}.badge-blocked{border-radius:var(--brand-radius-sm,3px);font-size:var(--text-xs);letter-spacing:.5px;background:var(--red-dim);color:var(--red);text-transform:uppercase;padding:3px 10px;font-weight:700;display:inline-block}.badge-mod{border-radius:var(--brand-radius-sm,3px);font-size:var(--text-xs);align-items:center;gap:4px;padding:3px 10px;font-weight:600;display:inline-flex}.badge-mod.on{background:var(--green-dim);color:var(--green)}.badge-mod.off{background:var(--bg-tertiary);color:var(--text-tertiary)}.badge-doc{border-radius:var(--brand-radius-sm,3px);font-size:var(--text-xs);padding:3px 10px;font-weight:600;display:inline-block}.badge-doc.available{background:var(--green-dim);color:var(--green)}.badge-doc.missing{background:var(--bg-tertiary);color:var(--text-tertiary)}.badge-doc.badge-ocr-high{background:var(--green-dim);color:var(--green)}.badge-doc.badge-ocr-mid{background:var(--yellow-dim,rgba(234,179,8,.15));color:var(--yellow,#eab308)}.badge-doc.badge-ocr-low{background:var(--red-dim,rgba(239,68,68,.15));color:var(--red,#ef4444)}.detail-doc-card{border:1px solid var(--border-primary);border-radius:var(--brand-radius,var(--radius-sm));padding:var(--space-md);margin-bottom:var(--space-sm);transition:border-color var(--transition-fast)}.detail-doc-card:hover{border-color:var(--border-hover)}.detail-doc-row{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;display:flex}.detail-doc-row svg{width:18px;height:18px;color:var(--text-tertiary);flex-shrink:0}.detail-doc-label{flex:1;min-width:0}.detail-doc-badges{flex-wrap:wrap;flex-shrink:1;align-items:center;gap:6px;min-width:0;display:flex}.detail-doc-actions{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.detail-ocr-data{margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-secondary);border-radius:var(--brand-radius-sm,var(--radius-sm));border-left:3px solid var(--brand-primary,var(--text-tertiary));font-size:var(--text-xs)}.detail-ocr-data .kv-grid dt{text-transform:capitalize}.version-history-list{flex-direction:column;display:flex}.version-history-item{align-items:center;gap:var(--space-md);padding:var(--space-md);border-bottom:1px solid var(--border-secondary);transition:background var(--transition-fast);display:flex}.version-history-item:last-child{border-bottom:none}.version-history-item:hover{background:var(--bg-tertiary)}.version-history-number{background:var(--bg-tertiary);border:1px solid var(--border-primary);width:32px;height:32px;font-family:var(--font-mono);color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.version-history-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.version-history-filename{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.version-history-dates{color:var(--text-tertiary);font-size:11.5px}.version-history-actions{flex-shrink:0}.version-history-empty{text-align:center;padding:var(--space-xl);color:var(--text-tertiary);font-size:13px}.detail-section .btn-sm{border:1px solid var(--border-primary);border-radius:var(--brand-radius-sm,var(--radius-sm));background:var(--bg-card);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:4px;margin-left:auto;padding:5px 12px;font-weight:500;display:inline-flex}.btn-sm:hover:not(:disabled){border-color:var(--brand-primary,var(--border-hover));color:var(--text-primary)}.btn-sm svg{width:12px;height:12px}.color-swatches{gap:var(--space-xl);margin-top:var(--space-md);display:flex}.swatch-item{align-items:center;gap:10px;display:flex}.swatch-circle{border:2px solid var(--border-primary);border-radius:50%;flex-shrink:0;width:36px;height:36px}.swatch-info{flex-direction:column;gap:1px;display:flex}.swatch-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600}.swatch-value{font-size:var(--text-sm);color:var(--text-secondary);font-family:var(--font-mono)}.detail-logo-preview{object-fit:contain;border:1px solid var(--border-secondary);border-radius:var(--brand-radius-sm,var(--radius-sm));background:var(--bg-secondary);max-width:140px;max-height:52px;padding:6px 10px}.detail-loading{padding:var(--space-xl) 0}.detail-loading-bar{background:var(--bg-tertiary);border-radius:var(--radius-sm);height:24px;margin-bottom:var(--space-md);animation:1.5s infinite pulse}.detail-loading-bar.short{width:40%;height:16px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.data-table.compact th,.data-table.compact td{font-size:var(--text-sm);padding:6px 12px}@media (width<=768px){.detail-header{gap:var(--space-md);flex-direction:column}.kv-grid{grid-template-columns:1fr}.kv-grid dt{margin-top:var(--space-sm);border-bottom:none;padding-bottom:0}.kv-grid dd{padding-top:2px}.rep-cards{grid-template-columns:1fr}.color-swatches{gap:var(--space-sm);flex-direction:column}.detail-meta{gap:6px}}.detail-doc-card.doc-expired{background:var(--red-dim);border-left:3px solid var(--red)}.detail-doc-card.doc-expiring{background:var(--amber-dim);border-left:3px solid var(--amber)}.detail-doc-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.doc-dates{font-size:var(--text-xs);color:var(--text-tertiary);font-family:var(--font-mono)}.vigencia-alert{border-radius:var(--brand-radius-sm,var(--radius-sm));font-size:var(--text-xs);white-space:nowrap;letter-spacing:.3px;align-items:center;gap:4px;padding:4px 10px;font-weight:700;display:inline-flex}.vigencia-alert svg{width:14px;height:14px}.vigencia-alert.vencida{background:var(--red);color:#fff}.vigencia-alert.por-vencer{background:var(--amber);color:var(--text-primary)}.csf-diff-table{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin:var(--space-md) 0}.csf-diff-table th{text-align:left;background:var(--bg-secondary);text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);border-bottom:1px solid var(--border-primary);padding:10px 12px;font-size:10px;font-weight:700}.csf-diff-table td{border-bottom:1px solid var(--border-secondary);padding:10px 12px}.csf-diff-table tr.diff-changed{background:var(--amber-dim)}.csf-diff-table .diff-new{color:var(--green);font-weight:600}.doc-preview-panel{margin-top:var(--space-sm);border:1px solid var(--border-primary);border-radius:var(--brand-radius,var(--radius-sm));background:var(--bg-secondary);overflow:hidden}.doc-preview-iframe{border:none;width:100%;height:600px}.doc-preview-img{max-width:100%;max-height:600px;padding:var(--space-sm);margin:0 auto;display:block}.csf-loading-overlay{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-info-bg,rgba(59,130,246,.08));border:1px solid var(--color-info-border,rgba(59,130,246,.2));border-radius:var(--radius);margin-bottom:var(--space-md);color:var(--color-text);font-size:var(--text-sm);display:flex}.csf-loading-spinner{border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin}.add-doc-card-wrap{position:relative}.add-doc-card{justify-content:center;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);border:1.5px dashed var(--border-primary);border-radius:var(--brand-radius,var(--radius-sm));color:var(--text-tertiary);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast);background:0 0;display:flex}.add-doc-card:hover{border-color:var(--brand-primary,var(--color-primary));color:var(--brand-primary,var(--color-primary));background:var(--bg-secondary)}.add-doc-card svg{opacity:.6;flex-shrink:0}.add-doc-card:hover svg{opacity:1}.add-doc-backdrop{z-index:90;position:fixed;inset:0}.add-doc-popover{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--brand-radius,var(--radius-sm));z-index:91;max-height:300px;padding:4px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px rgba(0,0,0,.12)}.add-doc-status{padding:var(--space-sm) var(--space-md);color:var(--text-tertiary);font-size:var(--text-sm);text-align:center}.add-doc-option{width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;flex-direction:column;display:flex}.add-doc-option:hover{background:var(--bg-secondary)}.add-doc-option-label{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.add-doc-option-desc{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:2px}.modal-backdrop{background:var(--bg-overlay);z-index:var(--z-modal);opacity:0;pointer-events:none;transition:opacity var(--transition-base);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-backdrop.open{opacity:1;pointer-events:all}.modal{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);width:520px;max-width:92vw;max-height:85vh;box-shadow:var(--shadow-modal);transition:transform var(--transition-base);overflow-y:auto;transform:translateY(10px)scale(.98)}.modal-backdrop.open .modal{transform:translateY(0)scale(1)}.modal-header{padding:var(--space-lg);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--text-lg);letter-spacing:-.3px;font-weight:600}.modal-close{border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:flex}.modal-close:hover{border-color:var(--border-hover);color:var(--text-primary)}.modal-close svg{width:14px;height:14px}.modal-body{padding:var(--space-lg)}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-sm);padding:var(--space-lg);border-top:1px solid var(--border-primary);display:flex}.btn-cancel{border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-display);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:10px 20px;font-size:13px;font-weight:400}.btn-cancel:hover{border-color:var(--border-hover);color:var(--text-primary)}.form-group{margin-bottom:var(--space-lg)}.form-label{color:var(--text-secondary);margin-bottom:6px;font-size:12.5px;font-weight:500;display:block}.form-label .required{color:var(--red);margin-left:2px}.form-input{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:100%;font-family:var(--font-display);font-size:var(--text-base);color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:10px 14px}.form-input:focus{border-color:var(--brand-primary,var(--text-tertiary));box-shadow:0 0 0 2px var(--brand-primary-dim,rgba(255,255,255,.04))}.form-input::placeholder{color:var(--text-tertiary)}.form-input.mono{font-family:var(--font-mono);font-size:12.5px}.form-hint{color:var(--text-tertiary);margin-top:4px;font-size:11.5px}.form-hint.valid{color:var(--green)}.form-hint.invalid{color:var(--red)}.form-row{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.form-select{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:100%;font-family:var(--font-display);font-size:var(--text-base);color:var(--text-primary);transition:all var(--transition-fast);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;padding:10px 14px}.form-select:focus{border-color:var(--text-tertiary);box-shadow:0 0 0 2px rgba(255,255,255,.04)}.form-toggle-row{padding:var(--space-md);background:var(--input-bg);border:1px solid var(--border-primary);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;display:flex}.form-toggle-label{font-size:13.5px}.form-toggle-desc{color:var(--text-tertiary);margin-top:2px;font-size:11.5px}.toggle{background:var(--border-primary);cursor:pointer;width:40px;height:22px;transition:background var(--transition-fast);border:none;border-radius:11px;flex-shrink:0;position:relative}.toggle:after{content:"";background:var(--text-primary);width:16px;height:16px;transition:transform var(--transition-fast);border-radius:50%;position:absolute;top:3px;left:3px}.toggle.on{background:var(--green)}.toggle.on:after{background:#fff;transform:translate(18px)}.module-group{border:1px solid var(--border-primary);border-radius:var(--radius-sm);overflow:hidden}.module-group .module-parent{background:var(--input-bg);border:none;border-radius:0;font-weight:500}.module-children{border-left:3px solid var(--text-tertiary);transition:opacity var(--transition-base), border-color var(--transition-base);margin:0 0 0 20px}.module-child{border:none;border-bottom:1px solid var(--border-secondary);padding:12px var(--space-md) 12px var(--space-md);background:var(--bg-card);border-radius:0}.module-child:last-child{border-bottom:none}.module-children.disabled{opacity:.3;pointer-events:none;border-left-color:var(--border-primary)}.input-with-status{position:relative}.input-with-status .form-input{padding-right:40px}.rfc-status{align-items:center;gap:4px;font-size:12px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.rfc-status.checking{color:var(--text-tertiary)}.rfc-status.valid{color:var(--green)}.rfc-status.invalid{color:var(--red)}.rfc-status svg{width:16px;height:16px}.modal.modal-sm{width:400px}.modal.modal-lg{width:720px}.csf-upload-banner{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-tertiary);border:1px dashed var(--border-hover);border-radius:var(--radius-sm);margin-bottom:var(--space-lg);transition:border-color var(--transition-fast), background var(--transition-fast);flex-wrap:wrap;display:flex}.csf-upload-banner:hover{border-color:var(--text-tertiary)}.csf-upload-icon{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-primary);width:40px;height:40px;color:var(--text-tertiary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.csf-upload-icon svg{width:20px;height:20px}.csf-upload-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.csf-upload-title{color:var(--text-primary);font-size:13px;font-weight:500}.csf-upload-desc{color:var(--text-tertiary);font-size:11.5px;line-height:1.4}.csf-upload-btn{flex-shrink:0}.csf-lookup-controls{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.csf-id-input{text-align:right;width:160px;padding:6px 10px;font-size:12px}.csf-error-msg{color:var(--red);padding:6px var(--space-lg);margin-top:calc(-1 * var(--space-md));margin-bottom:var(--space-md);font-size:12px}.csf-file-input{display:none}.csf-file-label{cursor:pointer;align-items:center;gap:4px;display:inline-flex}.csf-file-label.disabled{opacity:.5;pointer-events:none}.csf-pdf-badge{color:var(--text-tertiary);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);margin-left:var(--space-sm);align-items:center;gap:4px;padding:2px 8px;font-size:11px;display:inline-flex}.csf-sat-badge{color:var(--amber);background:var(--amber-dim);border-radius:var(--radius-sm);margin-left:var(--space-sm);border:1px solid transparent;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.csf-sat-badge.verified{color:var(--green);background:var(--green-dim)}.csf-data-summary{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:var(--space-md);margin-bottom:var(--space-lg)}.csf-data-header{align-items:center;gap:var(--space-sm);color:var(--green);margin-bottom:var(--space-md);font-size:13px;font-weight:500;display:flex}.csf-data-header svg{width:16px;height:16px}.csf-data-grid{gap:var(--space-sm) var(--space-lg);margin-bottom:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.csf-data-item{flex-direction:column;gap:1px;display:flex}.csf-data-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);font-size:10.5px;font-weight:500}.csf-data-value{color:var(--text-primary);font-size:12.5px}.csf-data-value.warning-text{color:#dc2626;font-weight:600}.csf-data-section{border-top:1px solid var(--border-secondary);padding-top:var(--space-sm);margin-top:var(--space-sm)}.csf-data-list{flex-direction:column;gap:3px;margin-top:4px;display:flex}.csf-data-list-item{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:3px 0;font-size:12px;display:flex}.csf-data-list-item .mono{font-family:var(--font-mono);color:var(--text-tertiary);font-size:11px}.modal-body{counter-reset:form-section}.form-section{padding-bottom:var(--space-lg);margin-bottom:var(--space-md);border-bottom:1px solid var(--border-secondary)}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section-title{text-transform:uppercase;letter-spacing:1.2px;color:var(--text-tertiary);margin-bottom:var(--space-md);align-items:center;gap:var(--space-sm);counter-increment:form-section;font-size:11px;font-weight:600;display:flex}.form-section-title:before{content:counter(form-section, decimal-leading-zero);font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-tertiary);border:1px solid var(--border-primary);letter-spacing:0;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:400}.form-row-3{gap:var(--space-md);grid-template-columns:1fr 1fr 1fr;display:grid}.form-row-4{gap:var(--space-md);grid-template-columns:1fr 1fr 1fr 1fr;display:grid}.form-group.flex-2{grid-column:span 2}.form-row .form-group,.form-row-3 .form-group,.form-row-4 .form-group{margin-bottom:var(--space-xs)}.form-error-banner{color:var(--red);background:var(--red-dim);border:1px solid var(--red);border-radius:var(--radius-sm);margin-bottom:var(--space-md);padding:10px 14px;font-size:13px}@media (width<=720px){.modal.modal-lg{width:95vw}.form-row-4{grid-template-columns:1fr 1fr}.form-group.flex-2{grid-column:span 2}}@media (width<=520px){.form-row,.form-row-3,.form-row-4{grid-template-columns:1fr}.form-group.flex-2{grid-column:span 1}.csf-upload-banner{flex-direction:column;align-items:stretch}.csf-lookup-controls{flex-wrap:wrap}.csf-id-input{width:100%}.rep-ocr-banner{flex-direction:column;align-items:stretch}.rep-ocr-banner-controls{flex-wrap:wrap}}.confirm-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-2xl) var(--space-xl);text-align:center;width:380px;max-width:92vw;box-shadow:var(--shadow-modal)}.confirm-icon{width:52px;height:52px;margin:0 auto var(--space-lg);border-radius:50%;justify-content:center;align-items:center;display:flex}.confirm-icon svg{width:24px;height:24px}.confirm-icon.amber{background:var(--amber-dim);color:var(--amber)}.confirm-icon.red{background:var(--red-dim,rgba(239,68,68,.1));color:var(--red)}.confirm-icon.green{background:var(--green-dim,rgba(34,197,94,.1));color:var(--green)}.confirm-title{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.3px;color:var(--text-primary);margin-bottom:var(--space-sm);font-weight:600}.confirm-desc{font-family:var(--font-display);font-size:var(--text-base);color:var(--text-secondary);margin-bottom:var(--space-xl);line-height:1.6}.confirm-actions{gap:var(--space-sm);display:flex}.confirm-actions .btn-primary,.confirm-actions .btn-danger,.confirm-actions .btn-cancel{flex:1;justify-content:center}.confirm-actions a.btn-primary{align-items:center;text-decoration:none;display:inline-flex}.btn-danger{background:var(--red);border-radius:var(--radius-sm);font-family:var(--font-display);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;padding:10px 20px;font-size:13px;font-weight:500}.btn-danger:hover{opacity:.9}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.text-error{color:var(--red)}.text-warning{color:var(--amber)}.rep-legal-card{border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-md);background:var(--bg-secondary);transition:border-color var(--transition-fast)}.rep-legal-card:hover{border-color:var(--border-hover)}.rep-legal-card-header{margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-secondary);justify-content:space-between;align-items:center;display:flex}.rep-legal-card-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);font-size:12px;font-weight:600}.rep-legal-card-header .btn-sm.text-error{color:var(--red);border-color:var(--red-dim)}.rep-legal-card-header .btn-sm.text-error:hover{background:var(--red-dim);border-color:var(--red);color:var(--red)}.rep-ocr-banner{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-tertiary);border:1px dashed var(--border-hover);border-radius:var(--radius-sm);margin-bottom:var(--space-md);transition:border-color var(--transition-fast), background var(--transition-fast);flex-wrap:wrap;display:flex}.rep-ocr-banner:hover{border-color:var(--text-tertiary)}.rep-ocr-banner-icon{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-primary);width:40px;height:40px;color:var(--text-tertiary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.rep-ocr-banner-icon svg{width:20px;height:20px}.rep-ocr-banner-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.rep-ocr-banner-title{color:var(--text-primary);font-size:13px;font-weight:500}.rep-ocr-banner-desc{color:var(--text-tertiary);font-size:11.5px;line-height:1.4}.rep-ocr-banner-controls{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.rep-ocr-banner-controls .form-select-sm{width:auto;min-width:120px;padding:6px 28px 6px 10px;font-size:12px}.rep-ocr-banner-btn{flex-shrink:0}.rep-ocr-file-label{cursor:pointer;white-space:nowrap;align-items:center;gap:5px;display:inline-flex;position:relative}.rep-ocr-file-label.disabled{opacity:.5;pointer-events:none}.rep-ocr-file-label .sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rep-ocr-status{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);color:var(--text-secondary);background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-primary);font-size:12.5px;display:flex}.rep-ocr-error{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);color:var(--red);background:var(--red-dim);border-radius:var(--radius-sm);font-size:12.5px;display:flex}.rep-ocr-applied{margin-bottom:var(--space-md);padding:var(--space-md);background:var(--green-dim);border-left:3px solid var(--green);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.rep-ocr-applied-header{color:var(--green);margin-bottom:var(--space-sm);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.rep-ocr-applied-header svg{width:14px;height:14px}.rep-ocr-conf{border-radius:var(--radius-xs);margin-left:auto;padding:1px 6px;font-size:11px;font-weight:600}.rep-ocr-conf.high{background:var(--green);color:#fff}.rep-ocr-conf.mid{background:var(--amber);color:#000}.rep-ocr-conf.low{background:var(--red);color:#fff}.rep-ocr-applied-fields{color:var(--text-primary);flex-direction:column;gap:4px;font-size:12.5px;display:flex}.rep-ocr-applied-fields span{align-items:baseline;gap:4px;display:inline-flex}.rep-ocr-applied-fields strong{color:var(--text-secondary);font-size:11.5px;font-weight:500}.doc-ocr-status{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin-top:var(--space-sm);color:var(--text-secondary);background:var(--bg-card);border-radius:var(--radius-sm);font-size:12.5px;display:flex}.doc-ocr-error{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin-top:var(--space-sm);background:var(--red-dim);border-radius:var(--radius-sm);font-size:12.5px;display:flex}.rep-edit-attached-docs{margin-bottom:var(--space-sm);background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-tertiary);align-items:center;gap:6px;padding:6px 10px;font-size:11.5px;display:flex}.rep-edit-attached-docs svg{flex-shrink:0;width:14px;height:14px}.rep-edit-doc-pill{background:var(--green-dim);color:var(--green);border-radius:3px;align-items:center;padding:1px 7px;font-size:11px;font-weight:500;display:inline-flex}.rep-edit-doc-id{font-family:var(--font-mono,monospace);color:var(--text-tertiary);opacity:.7;margin-left:auto;font-size:10px;font-weight:400}.btn-add-rep{width:100%;padding:var(--space-sm) var(--space-md);border-style:dashed;border-color:var(--border-primary);color:var(--text-tertiary);transition:all var(--transition-fast);justify-content:center;font-size:12.5px}.btn-add-rep:hover{border-color:var(--text-tertiary);color:var(--text-secondary);background:var(--bg-tertiary)}.btn-add-rep svg{width:14px;height:14px}.doc-ocr-upload{border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-md);background:var(--bg-card);margin-bottom:var(--space-md)}.doc-ocr-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.doc-ocr-header svg{width:16px;height:16px;color:var(--text-tertiary)}.doc-ocr-label{flex:1;font-size:13px;font-weight:500}.doc-ocr-action{align-items:center;gap:var(--space-sm);display:flex}.doc-ocr-file-label{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.doc-ocr-results{margin-top:var(--space-md);padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-primary)}.doc-ocr-results-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.doc-ocr-summary{color:var(--text-primary);font-size:12.5px;font-weight:500}.doc-ocr-warnings{margin-bottom:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--amber-dim);border-radius:var(--radius-sm);flex-direction:column;gap:4px;font-size:12px;display:flex}@media (width<=520px){.rep-legal-ocr-controls{flex-direction:column;align-items:stretch}.rep-legal-ocr-controls .form-select-sm{width:100%}}.module-toggles{flex-direction:column;gap:6px;margin-top:4px;display:flex}.module-toggle-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), background var(--transition-fast);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.module-toggle-card:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.module-toggle-highlight{border-left:3px solid var(--brand-primary,var(--green))}.module-toggle-info{flex-direction:column;gap:1px;display:flex}.module-toggle-name{color:var(--text-primary);font-size:13.5px;font-weight:500}.module-toggle-desc{color:var(--text-tertiary);font-size:11.5px;line-height:1.3}.t-user{align-items:center;gap:var(--space-sm);display:flex}.t-user-info{flex-direction:column;min-width:0;display:flex}.t-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:500;overflow:hidden}.t-user-email{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.t-tenant-info{flex-direction:column;min-width:0;display:flex}.t-tenant-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.t-supplier-name{color:var(--amber);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.badge-role{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:500;display:inline-block}.badge-role.superadmin{color:#a855f7;background:rgba(168,85,247,.12)}.badge-role.admin{color:#3b82f6;background:rgba(59,130,246,.12)}.badge-role.user{background:var(--bg-tertiary);color:var(--text-secondary)}.badge-role.reseller{color:#10b981;background:rgba(16,185,129,.12)}.badge-role.portal-user{color:#6366f1;background:rgba(99,102,241,.12)}.badge-role.supplier-admin{color:#f59e0b;background:rgba(245,158,11,.18)}.badge-role.supplier{background:var(--amber-dim);color:var(--amber)}.badge-security{border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.badge-security svg{width:14px;height:14px}.badge-security.ok{background:var(--green-dim);color:var(--green)}.badge-security.no{background:var(--red-dim);color:var(--red)}.action-dropdown-wrap{position:relative}.action-dropdown{z-index:var(--z-dropdown);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-modal);opacity:0;pointer-events:none;min-width:200px;transition:all var(--transition-fast);padding:4px;position:absolute;top:100%;right:0;transform:translateY(-4px)}.action-dropdown.open{opacity:1;pointer-events:all;transform:translateY(4px)}tr:nth-last-child(-n+3) .action-dropdown{top:auto;bottom:100%;transform:translateY(4px)}tr:nth-last-child(-n+3) .action-dropdown.open{transform:translateY(-4px)}.dropdown-item{align-items:center;gap:var(--space-sm);width:100%;color:var(--text-secondary);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;border-radius:4px;padding:8px 12px;font-size:12.5px;display:flex}.dropdown-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.dropdown-item svg{opacity:.6;flex-shrink:0;width:14px;height:14px}.dropdown-item.danger{color:var(--red)}.dropdown-item.danger:hover{background:var(--red-dim);color:var(--red)}.dropdown-item.danger svg{opacity:.8}.dropdown-divider{background:var(--border-secondary);height:1px;margin:4px 0}.modal-subtitle{color:var(--text-tertiary);margin-top:2px;font-size:12.5px;font-weight:400;display:block}.sessions-loading{align-items:center;gap:var(--space-sm);color:var(--text-tertiary);padding:var(--space-lg) 0;font-size:13px;display:flex}.sessions-empty{align-items:center;gap:var(--space-sm);padding:var(--space-2xl) 0;color:var(--text-tertiary);flex-direction:column;display:flex}.sessions-empty svg{opacity:.4;width:32px;height:32px}.sessions-empty p{font-size:13.5px}.sessions-count{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-bottom:var(--space-sm);font-size:11px}.sessions-table{border-collapse:collapse;width:100%;font-size:13px}.sessions-table thead th{text-align:left;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);border-bottom:1px solid var(--border-primary);background:var(--bg-secondary);padding:8px 12px;font-size:10px;font-weight:500}.sessions-table tbody tr{border-bottom:1px solid var(--border-secondary)}.sessions-table tbody tr:last-child{border-bottom:none}.sessions-table td{vertical-align:middle;padding:10px 12px}.sessions-table .muted{color:var(--text-tertiary);font-size:12px}.session-ip{font-family:var(--font-mono);color:var(--text-primary);font-size:12.5px}.spinner-sm{border:2px solid var(--border-primary);border-top-color:var(--text-primary);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin;display:inline-block}.profile-grid{gap:var(--space-lg);max-width:720px;padding-bottom:var(--space-3xl);flex-direction:column;margin:0 auto;display:flex}.profile-section{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-lg);transition:background var(--transition-base), border-color var(--transition-base)}.section-title{letter-spacing:-.2px;padding-bottom:var(--space-md);margin-bottom:var(--space-lg);border-bottom:1px solid var(--border-primary);font-size:15px;font-weight:600}.profile-avatar-section{align-items:center;gap:var(--space-lg);margin-bottom:var(--space-lg);display:flex}.profile-avatar-preview{background:var(--text-primary);width:72px;height:72px;color:var(--text-inverse);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;font-weight:600;display:flex;overflow:hidden}.profile-avatar-preview img{object-fit:cover;background:#fff;width:100%;height:100%}.profile-avatar-fields{flex:1;min-width:0}.form-row{gap:var(--space-md);margin-bottom:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.form-group{gap:var(--space-xs);flex-direction:column;display:flex}.form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.form-input{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-display);color:var(--text-primary);transition:border-color var(--transition-fast);box-sizing:border-box;outline:none;width:100%;padding:8px 12px;font-size:13.5px}.form-input:focus{border-color:var(--text-tertiary)}.form-input:disabled{opacity:.5;cursor:not-allowed}.form-input option{background:var(--bg-card);color:var(--text-primary)}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}.form-hint{color:var(--text-tertiary);font-size:11.5px}.profile-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:4px;align-items:center;width:fit-content;padding:4px 10px;font-size:11px;font-weight:500;display:inline-flex}.toggle-row{align-items:center;gap:var(--space-sm);cursor:pointer;display:flex}.toggle-input{appearance:none;background:var(--border-primary);cursor:pointer;width:36px;height:20px;transition:background var(--transition-fast);border-radius:10px;flex-shrink:0;position:relative}.toggle-input:after{content:"";background:var(--text-primary);width:16px;height:16px;transition:transform var(--transition-fast);border-radius:50%;position:absolute;top:2px;left:2px}.toggle-input:checked{background:var(--green)}.toggle-input:checked:after{transform:translate(16px)}.toggle-input:disabled{opacity:.5;cursor:not-allowed}.toggle-label{color:var(--text-primary);font-size:13.5px}.security-item{padding:var(--space-sm) 0;border-bottom:1px solid var(--border-secondary);justify-content:space-between;align-items:center;display:flex}.security-item:last-of-type{border-bottom:none}.security-info{flex-direction:column;gap:2px;display:flex}.security-label{color:var(--text-primary);font-size:13.5px;font-weight:500}.security-desc{color:var(--text-tertiary);font-size:12px}.security-actions{flex-shrink:0}.status-badge{font-family:var(--font-mono);letter-spacing:.3px;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:500}.status-badge.active{background:var(--green-dim);color:var(--green)}.status-badge.pendiente{background:var(--amber-dim);color:var(--amber)}.btn-primary{background:var(--text-primary);color:var(--text-inverse);border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;transition:opacity var(--transition-fast);border:none;padding:8px 20px;font-size:13px;font-weight:500}.btn-primary:hover{opacity:.85}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:6px 14px;font-size:13px;font-weight:500}.btn-secondary:hover{border-color:var(--border-hover);color:var(--text-primary)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.btn-sm{padding:5px 12px;font-size:12px}.profile-actions{justify-content:flex-end;align-items:center;gap:var(--space-md);display:flex}.save-ok{color:var(--green);font-size:13px}.save-err{color:var(--red);font-size:13px}.alert{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md);font-size:13px}.alert-success{background:var(--green-dim);color:var(--green)}.alert-error,.alert-danger{background:var(--red-dim);color:var(--red)}.topbar-avatar-link{align-items:center;text-decoration:none;display:flex}.topbar-avatar-img{object-fit:cover;background:#fff;border-radius:50%;width:32px;height:32px}.config-policies{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.policy-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-lg);transition:background var(--transition-base), border-color var(--transition-base)}.policy-card-title{letter-spacing:-.2px;margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-primary);font-size:15px;font-weight:600}.policy-field{margin-bottom:var(--space-md)}.policy-hint{color:var(--text-tertiary);margin-top:4px;padding-left:44px;font-size:11.5px;display:block}.policy-readonly{flex-direction:column;gap:4px;display:flex}.policy-readonly-badge{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-secondary);cursor:default;align-items:center;gap:6px;padding:8px 14px;font-weight:500;display:inline-flex}.policy-actions{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-secondary);justify-content:flex-end;display:flex}.toast-container{bottom:var(--space-lg);right:var(--space-lg);z-index:var(--z-toast);gap:var(--space-sm);pointer-events:none;flex-direction:column-reverse;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-sm);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-card-hover);font-size:var(--text-base);color:var(--text-primary);pointer-events:all;min-width:260px;max-width:440px;animation:toast-in var(--transition-base) ease both;padding:10px 16px;display:flex}.toast.leaving{animation:toast-out var(--transition-fast) ease both}.toast-icon{flex-shrink:0;width:18px;height:18px}.toast.success{border-left:3px solid var(--green)}.toast.success .toast-icon{color:var(--green)}.toast.error{border-left:3px solid var(--red)}.toast.error .toast-icon{color:var(--red)}.toast.warning{border-left:3px solid var(--amber)}.toast.warning .toast-icon{color:var(--amber)}.toast.info{border-left:3px solid var(--text-tertiary)}.toast.info .toast-icon{color:var(--text-tertiary)}.toast-message{font-size:var(--text-base);flex:1;line-height:1.4}.toast-close{width:20px;height:20px;color:var(--text-tertiary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-close:hover{color:var(--text-primary)}.toast-close svg{width:12px;height:12px}@keyframes toast-in{0%{opacity:0;transform:translate(20px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(20px)scale(.95)}}@media (width<=480px){.toast-container{left:var(--space-md);right:var(--space-md);bottom:var(--space-md)}.toast{min-width:0;max-width:100%}}.sidebar-item.has-unread svg{color:var(--amber);animation:2.4s cubic-bezier(.4,0,.6,1) infinite notif-pulse}.sidebar-item.has-overdue svg{color:var(--red,#ef4444);animation:2s cubic-bezier(.4,0,.6,1) infinite notif-pulse-red}@keyframes notif-pulse{0%,to{opacity:1;filter:drop-shadow(0 0 4px var(--amber-dim))}50%{opacity:.55;filter:drop-shadow(0 0 transparent)}}@keyframes notif-pulse-red{0%,to{opacity:1;filter:drop-shadow(0 0 6px rgba(239,68,68,.55))}50%{opacity:.55;filter:drop-shadow(0 0 transparent)}}.notif-table td,.notif-table thead th{padding:10px 16px}.notif-table thead th:first-child{width:40%}.notif-table thead th:nth-child(2){width:80px}.notif-table thead th:nth-child(3){width:13%}.notif-table thead th:nth-child(4),.notif-table thead th:nth-child(5){width:60px}.notif-table thead th:nth-child(6){width:50px}.notif-table thead th:nth-child(7){width:60px}.notif-table thead th:nth-child(8){width:90px}.notif-table thead th:nth-child(9){width:40px}.notif-delete-btn{cursor:pointer;border-radius:var(--radius-sm);color:var(--text-tertiary);transition:all var(--transition-fast);background:0 0;border:1px solid transparent;justify-content:center;align-items:center;padding:5px;display:flex}.notif-delete-btn:hover{color:var(--red);background:var(--red-dim);border-color:rgba(239,68,68,.2)}.notif-delete-btn svg{width:14px;height:14px}.badge-priority{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.8px;white-space:nowrap;border:1px solid transparent;border-radius:99px;align-items:center;padding:3px 10px;font-size:10px;font-weight:500;line-height:1.4;display:inline-flex}.badge-priority.normal{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-primary)}.badge-priority.urgent{background:var(--red-dim);color:var(--red);border-color:rgba(239,68,68,.2);animation:3s ease-in-out infinite urgent-glow}@keyframes urgent-glow{0%,to{box-shadow:none}50%{box-shadow:0 0 8px var(--red-dim)}}.notif-row{transition:background var(--transition-fast), border-color var(--transition-fast)}.notif-row.notif-unread{background:var(--bg-secondary);box-shadow:inset 3px 0 0 var(--amber)}.notif-row.notif-unread .notif-subject{color:var(--text-primary);font-weight:600}.notif-unread-dot{background:var(--amber);width:7px;height:7px;box-shadow:0 0 4px var(--amber-dim);border-radius:50%;flex-shrink:0;display:inline-block}.notif-subject-cell{flex-direction:column;gap:4px;width:100%;min-width:0;display:flex;overflow:hidden}.notif-subject-row{align-items:center;gap:8px;min-width:0;max-width:100%;display:flex;overflow:hidden}.notif-tags-row{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.notif-tags-row:empty{display:none}.notif-subject{white-space:nowrap;text-overflow:ellipsis;min-width:0;transition:color var(--transition-fast);flex:1;overflow:hidden}.notif-row td:first-child:hover .notif-subject{color:var(--text-primary)}.notif-status-read{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);font-size:10px}.notif-status-unread{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;color:var(--amber);font-size:10px;font-weight:600}.notif-attach-badge,.notif-reply-badge{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:4px;font-size:11px;display:inline-flex}.notif-attach-badge svg,.notif-reply-badge svg{opacity:.7;width:13px;height:13px}.notif-read-count{font-family:var(--font-mono);color:var(--green);align-items:center;gap:3px;font-size:11px;display:inline-flex}.notif-read-count svg{width:12px;height:12px}.notif-broadcast-tag{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.8px;background:var(--amber-dim);color:var(--amber);white-space:nowrap;border:1px solid rgba(245,158,11,.15);border-radius:3px;flex-shrink:0;align-items:center;padding:2px 7px;font-size:9px;font-weight:600;line-height:1.4;display:inline-flex}.notif-detail-modal .modal-body{scroll-behavior:smooth;max-height:72vh;overflow-y:auto}.notif-detail-modal .modal-body::-webkit-scrollbar{width:4px}.notif-detail-modal .modal-body::-webkit-scrollbar-track{background:0 0}.notif-detail-modal .modal-body::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:2px}.notif-loading{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-lg);color:var(--text-tertiary);font-size:var(--text-sm);display:flex}.notif-detail-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm);display:flex}.notif-detail-subject{font-size:var(--text-xl);letter-spacing:-.3px;flex:1;min-width:0;margin:0;font-weight:600}.notif-detail-meta{font-size:var(--text-sm);color:var(--text-tertiary);padding-bottom:var(--space-md);margin-bottom:var(--space-md);border-bottom:1px solid var(--border-secondary);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.notif-detail-meta strong{color:var(--text-secondary);font-weight:500}.notif-detail-body{font-size:var(--text-base);white-space:pre-wrap;color:var(--text-primary);padding:var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);margin-bottom:var(--space-lg);line-height:1.7}.notif-detail-attachments{margin-bottom:var(--space-lg)}.notif-detail-attachments h4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px;margin:0 0 var(--space-sm);color:var(--text-tertiary);font-size:10px;font-weight:500}.reply-thread{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-primary)}.reply-thread h4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px;margin:0 0 var(--space-md);color:var(--text-tertiary);font-size:10px;font-weight:500}.reply-bubble{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-sm);max-width:88%;animation:fadeInUp var(--transition-base) ease both;border:1px solid transparent;position:relative}.reply-admin{border-radius:var(--radius-sm) var(--radius-sm) 2px var(--radius-sm);background:rgba(34,197,94,.04);border-color:rgba(34,197,94,.1);margin-left:auto}.reply-supplier{background:var(--bg-secondary);border-color:var(--border-secondary);border-radius:var(--radius-sm) var(--radius-sm) var(--radius-sm) 2px;margin-right:auto}.reply-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:4px;display:flex}.reply-header strong{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.reply-time{font-family:var(--font-mono);color:var(--text-tertiary);white-space:nowrap;font-size:10px}.reply-body{font-size:var(--text-base);white-space:pre-wrap;color:var(--text-secondary);margin:0;line-height:1.6}.reply-form{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-primary)}.reply-form .form-textarea{resize:vertical;min-height:72px;font-size:var(--text-base);line-height:1.5}.reply-form-actions{align-items:center;gap:var(--space-sm);margin-top:var(--space-sm);display:flex}.reply-attach-btn{cursor:pointer;color:var(--text-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-primary);width:32px;height:32px;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:flex}.reply-attach-btn:hover{color:var(--text-primary);border-color:var(--border-hover);background:var(--bg-tertiary)}.reply-attach-btn svg{width:15px;height:15px}.reply-file-count{font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.3px;font-size:10px}.reply-form-actions .btn-primary{margin-left:auto}.attachment-list,.attachment-item-wrap{flex-direction:column;gap:6px;display:flex}.attachment-item{border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border-secondary);font-size:var(--text-sm);transition:all var(--transition-fast);cursor:pointer;align-items:center;gap:10px;padding:8px 12px;display:flex}.attachment-item:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.attachment-item svg{width:14px;height:14px;color:var(--text-tertiary);flex-shrink:0}.att-icon{width:28px;height:20px;font-family:var(--font-mono);letter-spacing:.5px;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:8px;font-weight:700;display:inline-flex}.att-img-icon{background:var(--green-dim);color:var(--green);border:1px solid rgba(34,197,94,.15)}.att-pdf-icon{background:var(--red-dim);color:var(--red);border:1px solid rgba(239,68,68,.15)}.att-name{white-space:nowrap;text-overflow:ellipsis;color:var(--text-primary);flex:1;font-weight:400;overflow:hidden}.att-size{color:var(--text-tertiary);font-family:var(--font-mono);white-space:nowrap;letter-spacing:.2px;font-size:10px}.att-remove{cursor:pointer;color:var(--text-tertiary);transition:all var(--transition-fast);background:0 0;border:1px solid transparent;border-radius:3px;padding:3px;display:flex}.att-remove:hover{color:var(--red);background:var(--red-dim);border-color:rgba(239,68,68,.15)}.att-remove svg{width:12px;height:12px}.att-preview{border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border-secondary);max-width:260px;overflow:hidden}.att-preview-img{object-fit:contain;max-width:100%;max-height:160px;display:block}.att-preview-loading{height:48px;color:var(--text-tertiary);justify-content:center;align-items:center;display:flex}.file-upload-zone{padding:var(--space-lg) var(--space-xl);border:1.5px dashed var(--border-hover);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);color:var(--text-tertiary);font-size:var(--text-base);background:var(--bg-secondary);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:relative}.file-upload-zone:hover{border-color:var(--text-tertiary);background:var(--bg-tertiary);color:var(--text-secondary)}.file-upload-zone:hover svg{opacity:.8}.file-upload-zone svg{opacity:.4;width:22px;height:22px;transition:opacity var(--transition-fast)}.file-upload-zone input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.file-upload-hint{font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.3px;font-size:10px}.supplier-checklist{border:1px solid var(--border-primary);border-radius:var(--radius-sm);max-height:200px;padding:var(--space-xs);background:var(--bg-secondary);overflow-y:auto}.supplier-checklist::-webkit-scrollbar{width:3px}.supplier-checklist::-webkit-scrollbar-track{background:0 0}.supplier-checklist::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:2px}.supplier-check-item{font-size:var(--text-base);cursor:pointer;transition:background var(--transition-fast);border-radius:4px;align-items:center;gap:10px;padding:7px 10px;display:flex}.supplier-check-item:hover{background:var(--bg-tertiary)}.supplier-check-item input[type=checkbox]{accent-color:var(--green);flex-shrink:0;width:14px;height:14px}.recipient-tags{flex-wrap:wrap;gap:4px;display:flex}.recipient-tag{font-family:var(--font-mono);background:var(--bg-tertiary);border:1px solid var(--border-secondary);color:var(--text-secondary);letter-spacing:.2px;border-radius:99px;padding:3px 10px;font-size:10px}.form-toggle-label{font-size:var(--text-base);cursor:pointer;padding:var(--space-sm) var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);transition:border-color var(--transition-fast);align-items:center;gap:10px;display:flex}.form-toggle-label:hover{border-color:var(--border-hover)}.form-toggle-label input[type=checkbox]{accent-color:var(--green);flex-shrink:0;width:15px;height:15px}.toggle-text{color:var(--text-primary);font-weight:500}.toggle-hint{color:var(--text-tertiary);font-size:11px}.notif-read-receipts{margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-secondary)}.notif-read-receipts h4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px;margin:0 0 var(--space-sm);color:var(--text-tertiary);font-size:10px;font-weight:500}.read-receipt-list{flex-wrap:wrap;gap:6px;display:flex}.read-receipt-tag{font-family:var(--font-mono);background:var(--green-dim);color:var(--green);letter-spacing:.2px;border:1px solid rgba(34,197,94,.12);border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:10px;display:inline-flex}.read-receipt-tag svg{width:11px;height:11px}.read-receipt-tag--pending{background:var(--amber-dim);color:var(--amber);border-color:rgba(245,158,11,.18)}.read-receipt-tag--pending:before{content:"○";opacity:.8;font-size:12px;line-height:1}.notif-read-receipts--pending{border-left:2px solid var(--amber);padding-left:var(--space-sm);background:var(--amber-dim);border-radius:var(--radius-sm);padding-top:var(--space-sm);padding-right:var(--space-sm);border-bottom:none}.notif-read-receipts--pending h4{color:var(--amber)}.notif-broadcast-notice{margin-top:var(--space-lg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--amber-dim);color:var(--amber);font-size:var(--text-sm);letter-spacing:.1px;border:1px solid rgba(245,158,11,.12);align-items:center;gap:10px;font-weight:500;display:flex}.notif-broadcast-notice svg{opacity:.8;flex-shrink:0;width:15px;height:15px}@media (width<=768px){.reply-bubble{max-width:95%}.notif-detail-header{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.notif-detail-meta{flex-direction:column;gap:2px}.notif-detail-meta .meta-sep{display:none}.att-preview{max-width:100%}.file-upload-zone{padding:var(--space-md)}}@media (width<=480px){.read-receipt-list{gap:4px}.read-receipt-tag{padding:2px 8px;font-size:9px}}.form-segmented{background:var(--bg-tertiary);border-radius:var(--radius-sm);gap:4px;padding:4px;display:flex}.form-segmented__btn{font-size:var(--text-sm);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border var(--transition-fast);background:0 0;border:1px solid transparent;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:8px 12px;font-weight:500;display:flex}.form-segmented__btn:hover{color:var(--text-primary)}.form-segmented__btn.is-active{color:var(--text-primary);background:var(--bg-primary);border-color:var(--border-primary)}.form-segmented__hint{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.04em;font-weight:400}.procedimientos-page{--procs-serif:"Canela Deck", Georgia, "Times New Roman", serif;--procs-rule:1px solid var(--border-primary);padding:var(--space-md) var(--space-2xl) var(--space-2xl);gap:var(--space-2xl);flex-direction:column;display:flex}.procedimientos-page__head{padding:var(--space-lg) 0 var(--space-xl);flex-direction:column;display:flex;position:relative}.procedimientos-page__head-meta{justify-content:space-between;align-items:baseline;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.procedimientos-page__eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.24em;color:var(--text-tertiary);text-transform:uppercase;font-weight:500}.procedimientos-page__count-tag{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.12em;color:var(--text-secondary);border:var(--procs-rule);border-radius:999px;padding:3px 10px}.procedimientos-page__title{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.025em;color:var(--text-primary);margin:0;font-weight:500;line-height:1.05}.procedimientos-page__subtitle{margin:var(--space-md) 0 0;font-family:var(--procs-serif);font-size:var(--text-md);color:var(--text-secondary);max-width:56ch;font-style:italic;font-weight:400;line-height:1.55}.procedimientos-page__rule{height:1px;margin-top:var(--space-xl);background:linear-gradient(to right, var(--text-primary) 0%, var(--text-primary) 12%, var(--border-primary) 12%, var(--border-primary) 100%);opacity:.7}.procedimientos-page__layout{gap:var(--space-2xl);grid-template-columns:360px 1fr;align-items:start;display:grid}.procedimientos-page__list{gap:var(--space-md);flex-direction:column;display:flex}.procedimientos-page__search{border-bottom:1.5px solid var(--text-primary);margin-bottom:var(--space-sm);align-items:center;padding-bottom:6px;display:flex;position:relative}.procedimientos-page__search-prefix{font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-secondary);margin-right:8px}.procedimientos-page__search-input{font-family:var(--procs-serif);font-size:var(--text-md);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:4px 0;font-style:italic}.procedimientos-page__search-input::placeholder{color:var(--text-tertiary);font-style:italic}.procedimientos-page__empty{align-items:center;gap:var(--space-md);padding:var(--space-2xl) var(--space-md);text-align:center;flex-direction:column;display:flex}.procedimientos-page__empty-glyph{font-family:var(--procs-serif);color:var(--text-tertiary);opacity:.5;font-size:48px;line-height:1}.procedimientos-page__empty-text{font-family:var(--procs-serif);font-size:var(--text-sm);color:var(--text-tertiary);max-width:28ch;margin:0;font-style:italic;line-height:1.5}.procedimientos-list{border-top:var(--procs-rule);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.procedimientos-list__row{border-bottom:var(--procs-rule)}.procedimientos-list__item{gap:var(--space-md);width:100%;padding:var(--space-md) 4px;text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:56px 1fr;transition:background .16s,padding .16s;display:grid}.procedimientos-list__item:hover{background:var(--bg-secondary);padding-left:12px}.procedimientos-list__item:hover .procedimientos-list__item-num{color:var(--text-primary)}.procedimientos-list__item.is-selected{background:var(--bg-secondary);box-shadow:inset 2px 0 0 0 var(--text-primary);padding-left:12px}.procedimientos-list__item.is-selected .procedimientos-list__item-num,.procedimientos-list__item.is-selected .procedimientos-list__item-title{color:var(--text-primary)}.procedimientos-list__item-num{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;color:var(--text-tertiary);white-space:nowrap;padding-top:4px;font-weight:500;transition:color .16s}.procedimientos-list__item-body{flex-direction:column;gap:4px;min-width:0;display:flex}.procedimientos-list__item-title{font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.005em;color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:500;line-height:1.3;transition:color .16s;display:-webkit-box;overflow:hidden}.procedimientos-list__item-excerpt{font-family:var(--procs-serif);font-size:var(--text-sm);color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-style:italic;line-height:1.5;display:-webkit-box;overflow:hidden}.procedimientos-list__item-meta{justify-content:space-between;align-items:center;gap:var(--space-sm);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-top:4px;font-size:10px;display:flex}.procedimientos-list__item-att{white-space:nowrap;flex-shrink:0}.procedimientos-list__item-att:before{content:"✦";opacity:.7;margin-right:4px}.procedimientos-page__detail{min-height:70vh;padding:var(--space-2xl) var(--space-2xl) var(--space-2xl);background:var(--bg-secondary);border-left:3px solid var(--text-primary);position:relative}.procedimientos-page__detail-empty{justify-content:center;align-items:center;gap:var(--space-md);text-align:center;flex-direction:column;height:100%;min-height:60vh;display:flex}.procedimientos-page__detail-glyph{font-family:var(--procs-serif);color:var(--text-tertiary);opacity:.4;font-size:64px;line-height:1}.procedimientos-page__detail-empty-text{font-family:var(--procs-serif);font-size:var(--text-md);color:var(--text-tertiary);max-width:32ch;margin:0;font-style:italic;line-height:1.55}.procedimientos-detail__head{margin-bottom:var(--space-2xl)}.procedimientos-detail__kicker{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.24em;color:var(--text-tertiary);text-transform:uppercase;margin-bottom:var(--space-md);font-weight:500;display:inline-block}.procedimientos-detail__title{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.02em;color:var(--text-primary);max-width:24ch;margin:0;font-weight:500;line-height:1.1}.procedimientos-detail__byline{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:var(--procs-rule);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.12em;color:var(--text-tertiary);flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.procedimientos-detail__byline-label{text-transform:uppercase;opacity:.7}.procedimientos-detail__byline-name{font-family:var(--procs-serif);font-size:var(--text-sm);letter-spacing:0;color:var(--text-primary);text-transform:none;font-style:italic}.procedimientos-detail__byline-sep{color:var(--text-tertiary);opacity:.5}.procedimientos-detail__byline-date{font-variant-numeric:tabular-nums;color:var(--text-secondary)}.procedimientos-detail__body{font-family:var(--procs-serif);color:var(--text-primary);white-space:pre-line;max-width:64ch;margin-bottom:var(--space-2xl);font-size:16px;line-height:1.75}.procedimientos-detail__body:first-letter{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.6em;font-weight:500;line-height:1}.procedimientos-detail__attachments{margin-top:var(--space-2xl)}.procedimientos-detail__att-head{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.procedimientos-detail__att-rule{background:var(--border-primary);flex:1;height:1px}.procedimientos-detail__att-title{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.24em;color:var(--text-tertiary);text-transform:uppercase;white-space:nowrap;font-weight:500}.procedimientos-detail__att-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.procedimientos-detail__att-btn{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-sm);text-align:left;border:none;border-bottom:var(--procs-rule);font-family:var(--procs-serif);font-size:var(--text-md);color:var(--text-primary);cursor:pointer;background:0 0;grid-template-columns:36px 1fr auto auto;transition:padding .16s,background .16s;display:grid}.procedimientos-detail__att-btn:hover{background:var(--bg-tertiary);padding-left:var(--space-md)}.procedimientos-detail__att-btn:hover .procedimientos-detail__att-arrow{opacity:1;transform:translateY(2px)}.procedimientos-detail__att-num{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.procedimientos-detail__att-name{white-space:nowrap;text-overflow:ellipsis;font-style:italic;overflow:hidden}.procedimientos-detail__att-size{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;color:var(--text-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap}.procedimientos-detail__att-arrow{font-family:var(--font-mono);color:var(--text-tertiary);font-size:var(--text-md);opacity:.5;transition:transform .2s,opacity .2s}@media (width<=1024px){.procedimientos-page__layout{gap:var(--space-xl);grid-template-columns:1fr}.procedimientos-page__detail{padding:var(--space-lg)}}.suppliers-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.supplier-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-lg);cursor:default;transition:all var(--transition-base);position:relative;overflow:hidden}.supplier-card:before{content:"";opacity:0;height:3px;transition:opacity var(--transition-base);position:absolute;top:0;left:0;right:0}.supplier-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.supplier-card:hover:before{opacity:1}.supplier-card.status-active:before{background:var(--green)}.supplier-card.status-issue:before{background:var(--red)}.supplier-card.status-pending:before{background:var(--amber)}.supplier-card.blocked{opacity:.55;pointer-events:none;position:relative}.supplier-card.blocked:after{content:"OPERACIONES BLOQUEADAS —Art. 69-B";font-family:var(--font-mono);letter-spacing:1.5px;color:var(--red);background:var(--bg-card);border:2px solid var(--red);border-radius:var(--radius-sm);white-space:nowrap;z-index:10;pointer-events:none;padding:6px 16px;font-size:11px;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-8deg)}.supplier-card:hover .card-actions{opacity:1}.supplier-category-badge{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-secondary);letter-spacing:.2px;border-radius:4px;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.solicitud-detail{max-width:900px;margin:0 auto}.sol-loading{text-align:center;padding:60px 0}.sol-success{text-align:center;align-items:center;gap:var(--space-md);flex-direction:column;max-width:520px;margin:60px auto;display:flex}.sol-success h2{font-size:var(--text-lg);color:var(--text-primary);font-weight:600}.sol-not-found{text-align:center;color:var(--text-secondary);padding:60px 0}.sol-header-right{align-items:center;gap:8px;display:flex}.sol-company-bar{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);align-items:center;gap:12px;margin-bottom:4px;padding:16px 20px;display:flex}.sol-company-name{color:var(--text-primary);letter-spacing:-.03em;margin:0;font-size:20px;font-weight:700}.sol-csf-badge{color:var(--green);background:var(--green-dim);letter-spacing:.04em;border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.sol-section{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);margin:16px 0;padding:20px}.sol-section-title{color:var(--text-primary);letter-spacing:-.02em;margin:0 0 16px;font-size:15px;font-weight:600}.sol-doc-list{flex-direction:column;gap:6px;display:flex}.sol-doc-item{background:var(--bg-tertiary);border-radius:var(--radius-md);transition:border-color var(--transition-fast);border:1px solid transparent;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.sol-doc-item.uploaded{border-color:rgba(34,197,94,.15)}.sol-doc-info{align-items:center;gap:8px;min-width:0;display:flex}.sol-doc-label{color:var(--text-primary);font-size:13px;font-weight:500}.sol-doc-tag{color:var(--purple);background:var(--purple-dim);letter-spacing:.02em;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:500}.sol-doc-status{color:var(--text-tertiary);flex-shrink:0;align-items:center;gap:4px;font-size:12px;display:flex}.sol-doc-status.uploaded{color:var(--green);font-weight:500}.sol-kv-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 20px;display:grid}.sol-kv-item{flex-direction:column;gap:2px;display:flex}.sol-kv-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:500}.sol-kv-value{color:var(--text-primary);font-size:13px;font-weight:500;font-family:var(--font-mono)}.sol-steps-review{flex-direction:column;gap:16px;margin:16px 0;display:flex}.sol-step-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:20px}.sol-step-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.sol-step-num{background:var(--bg-tertiary);width:28px;height:28px;color:var(--text-secondary);font-size:12px;font-weight:700;font-family:var(--font-mono);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sol-step-title{color:var(--text-primary);flex:1;margin:0;font-size:15px;font-weight:600}.sol-review-group-badge{background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;border-radius:100px;padding:2px 8px;font-size:10px;font-weight:600}.sol-step-badge{letter-spacing:.3px;text-transform:uppercase;border-radius:100px;padding:3px 10px;font-size:11px;font-weight:600}.sol-step-badge.completed{background:var(--green-dim);color:var(--green)}.sol-step-badge.in-review{background:var(--amber-dim);color:var(--amber)}.sol-step-badge.rejected{background:var(--red-dim);color:var(--red)}.sol-step-badge.pending{background:var(--bg-tertiary);color:var(--text-tertiary)}.sol-doc-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);margin-bottom:10px;padding:14px 16px}.sol-doc-card.uploaded{border-left:3px solid var(--green)}.sol-doc-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sol-doc-name{color:var(--text-primary);font-size:13px;font-weight:600}.sol-doc-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sol-doc-filename{color:var(--text-secondary);font-size:11px;font-family:var(--font-mono)}.sol-doc-date{color:var(--text-tertiary);font-size:11px}.sol-doc-pending{color:var(--text-tertiary);font-size:11px;font-style:italic}.sol-instance-block{border-top:1px dashed var(--border-primary);margin-top:12px;padding-top:12px}.sol-instance-block:first-child{border-top:none;margin-top:0;padding-top:0}.sol-instance-header{align-items:center;gap:8px;margin-bottom:10px;display:flex}.sol-instance-num{font-variant-numeric:tabular-nums;min-width:26px;height:22px;color:var(--accent);background:rgba(var(--accent-rgb,99, 102, 241), .1);border:1px solid rgba(var(--accent-rgb,99, 102, 241), .25);border-radius:var(--radius-sm);justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.sol-instance-label{color:var(--text-primary);font-size:13px;font-weight:600}.sol-ai-badge{border-radius:100px;padding:2px 8px;font-size:10px;font-weight:600}.sol-ai-badge.completed{background:var(--green-dim);color:var(--green)}.sol-ai-badge.pending{background:var(--amber-dim);color:var(--amber)}.sol-ai-badge.rejected{background:var(--red-dim);color:var(--red)}.sol-ocr-grid{border-top:1px solid var(--border-primary);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 16px;margin-top:10px;padding-top:10px;display:grid}.sol-ocr-item{flex-direction:column;gap:1px;display:flex}.sol-ocr-label{text-transform:capitalize;color:var(--text-tertiary);letter-spacing:.3px;font-size:10px;font-weight:500}.sol-ocr-value{color:var(--text-primary);font-size:12px;font-weight:500;font-family:var(--font-mono)}.sol-ai-warnings{flex-direction:column;gap:4px;margin-top:10px;display:flex}.sol-ai-check-item{border-radius:var(--radius-sm);border:1px solid transparent;align-items:flex-start;gap:8px;padding:8px 14px;font-size:12px;font-weight:500;line-height:1.5;display:flex}.sol-ai-check-item.ok{background:var(--green-dim);color:var(--green);border-color:rgba(34,197,94,.15)}.sol-ai-check-item.partial{background:var(--amber-dim);color:var(--amber);border-color:rgba(245,158,11,.15)}.sol-ai-check-item.error{background:var(--red-dim);color:var(--red);border-color:rgba(239,68,68,.15)}.sol-ai-check-icon{flex-shrink:0;font-size:14px;line-height:1}.sol-doc-preview-frame{border:1px solid var(--border-primary);border-radius:var(--radius-md);width:100%;height:500px;margin-top:10px}.sol-doc-preview-img{border-radius:var(--radius-md);max-width:100%;max-height:500px;margin-top:10px}.sol-form-review{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);margin-top:12px;padding:12px 16px}.sol-review-notes{border-radius:var(--radius-md);align-items:flex-start;gap:6px;margin-top:10px;padding:10px 14px;font-size:12px;line-height:1.4;display:flex}.sol-review-notes.ok{background:var(--green-dim);color:var(--green)}.sol-review-notes.error{background:var(--red-dim);color:var(--red)}.sol-review-notes-icon{flex-shrink:0;font-size:14px}.sol-form-data{border-top:1px solid var(--border-primary);margin-top:10px;padding-top:10px}.sol-form-title{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.sol-step-approved{background:var(--green-dim);border-radius:var(--radius-md);color:var(--green);border:1px solid rgba(34,197,94,.2);align-items:center;gap:6px;margin-top:12px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.sol-step-actions{border-top:1px solid var(--border-primary);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:12px;display:flex}.sol-reject-form{align-items:center;gap:8px;width:100%;margin-top:6px;display:flex}.sol-reject-form .form-input{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);flex:1;padding:6px 10px;font-size:12px}.sol-confirm-modal{z-index:1000;background:rgba(0,0,0,.6);justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.sol-confirm-box{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);width:90%;max-width:480px;padding:28px}.sol-confirm-box h3{color:var(--red);margin:0 0 12px;font-size:16px}.sol-confirm-box p{color:var(--text-secondary);margin:0 0 8px;font-size:13px;line-height:1.5}.sol-confirm-warning{font-weight:600;color:var(--red)!important}.sol-confirm-actions{gap:8px;margin-top:16px;display:flex}.sol-actions{border-top:2px solid var(--border-primary);align-items:center;gap:10px;margin:20px 0;padding:20px 0 0;display:flex}td.cell-email-edit{overflow:hidden}.inline-email-edit{align-items:center;gap:4px;min-width:0;max-width:100%;display:flex}.inline-email-input{flex:auto;min-width:0;max-width:100%;padding:2px 6px!important;font-size:12px!important}.inline-spinner{border:2px solid;border-top-color:transparent;border-radius:50%;width:12px;height:12px;animation:.6s linear infinite inline-spin;display:inline-block}@keyframes inline-spin{to{transform:rotate(360deg)}}.detail-tenant-badge{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.detail-tenant-badge svg{width:12px;height:12px}.cda-wrap{position:relative}.cda-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.cda-header h3{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:15px;font-weight:600}.cda-add-btn{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.cda-add-btn:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-card-hover)}.cda-add-btn.active{border-color:var(--green);color:var(--green);background:var(--green-dim)}.cda-add-btn svg{width:16px;height:16px}.cda-pills{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.cda-pill{font-size:var(--text-xs);letter-spacing:.01em;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-secondary);transition:border-color var(--transition-fast);border-radius:100px;align-items:center;gap:5px;padding:3px 8px 3px 10px;font-weight:500;display:inline-flex}.cda-pill:hover{border-color:var(--border-hover)}.cda-pill-remove{width:16px;height:16px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.cda-pill-remove svg{width:10px;height:10px}.cda-pill-remove:hover{background:var(--red-dim);color:var(--red)}.cda-pill-remove:disabled{opacity:.4;cursor:not-allowed}.cda-dropdown{z-index:var(--z-dropdown);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);width:380px;max-height:360px;box-shadow:var(--shadow-modal);flex-direction:column;margin-top:6px;animation:.15s cubic-bezier(.2,0,.13,1.02) cda-slide-in;display:flex;position:absolute;top:100%;left:0;overflow:hidden}@keyframes cda-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.cda-dropdown-header{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border-primary);flex-shrink:0;padding:10px 14px;font-weight:600}.cda-dropdown-list{flex:1;padding:4px;overflow-y:auto}.cda-dropdown-empty,.cda-dropdown-loading{text-align:center;font-size:var(--text-sm);color:var(--text-tertiary);padding:24px 14px}.cda-dropdown-loading:after{content:"";border:2px solid var(--border-primary);border-top-color:var(--text-secondary);vertical-align:middle;border-radius:50%;width:14px;height:14px;margin-left:8px;animation:.6s linear infinite cda-spin;display:inline-block}@keyframes cda-spin{to{transform:rotate(360deg)}}.cda-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.cda-item:hover{background:var(--bg-card-hover)}.cda-item.checked{background:var(--green-dim)}.cda-check{border:1.5px solid var(--border-hover);width:18px;height:18px;transition:all var(--transition-fast);background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.cda-item.checked .cda-check{border-color:var(--green);background:var(--green)}.cda-item.checked .cda-check svg{opacity:1}.cda-check svg{width:12px;height:12px;stroke:var(--bg-card);stroke-width:3px;opacity:0;transition:opacity var(--transition-fast)}.cda-item-info{flex:1;min-width:0}.cda-item-label{font-size:var(--text-base);color:var(--text-primary);align-items:center;gap:6px;font-weight:500;display:flex}.cda-item-desc{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:2px;line-height:1.3}.cda-badge-sign{letter-spacing:.03em;background:var(--purple-dim);color:var(--purple);border-radius:100px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.cda-badge-upload{letter-spacing:.03em;background:var(--amber-dim);color:var(--amber);border-radius:100px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.cda-dropdown-footer{border-top:1px solid var(--border-primary);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.cda-count{font-size:var(--text-sm);color:var(--text-tertiary)}.cda-confirm-btn{border-radius:var(--radius-sm);background:var(--green);color:#fff;font-family:var(--font-display);font-size:var(--text-sm);cursor:pointer;transition:opacity var(--transition-fast);border:none;align-items:center;gap:6px;padding:6px 14px;font-weight:600;display:inline-flex}.cda-confirm-btn:hover{opacity:.88}.cda-confirm-btn:disabled{opacity:.4;cursor:not-allowed}.cda-backdrop{z-index:calc(var(--z-dropdown) - 1);position:fixed;inset:0}.card-actions__menu-wrap{display:inline-flex;position:relative}.card-actions__backdrop{z-index:calc(var(--z-dropdown) - 1);background:0 0;position:fixed;inset:0}.card-actions__menu{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md,8px);min-width:160px;box-shadow:var(--shadow-card-hover);z-index:var(--z-dropdown);flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 6px);right:0}.card-actions__menu-item{color:var(--text-primary);text-align:left;border-radius:var(--radius-sm,6px);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;padding:8px 12px;font-family:inherit;font-size:13px;display:flex}.card-actions__menu-item:hover{background:var(--bg-card-hover)}.tenant-loading,.tenant-error{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);font-family:var(--font-display);justify-content:center;align-items:center;gap:var(--space-md);flex-direction:column;display:flex}.tenant-loading h2,.tenant-error h2{font-size:var(--text-xl);font-weight:600}.tenant-loading p,.tenant-error p{color:var(--text-secondary);font-size:var(--text-base)}.tenant-loading a,.tenant-error a{color:var(--text-primary);text-underline-offset:3px;text-decoration:underline}.tenant-loading a:hover,.tenant-error a:hover{color:var(--green)}.tenant-loading-spinner{border:2px solid var(--border-primary);border-top-color:var(--text-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tenant-portal{background:var(--bg-primary);min-height:100vh;font-family:var(--font-display);padding:var(--space-xl);justify-content:center;align-items:center;display:flex}.tenant-portal-inner{align-items:center;gap:var(--space-2xl);flex-direction:column;width:100%;max-width:720px;display:flex}.tenant-portal-header{align-items:center;gap:var(--space-sm);text-align:center;flex-direction:column;display:flex}.tenant-logo{object-fit:contain;max-width:220px;max-height:72px;margin-bottom:var(--space-sm)}.tenant-name{color:var(--text-primary);letter-spacing:-.03em;font-size:28px;font-weight:700;line-height:1.2}.tenant-subtitle{color:var(--text-tertiary);letter-spacing:.02em;font-size:15px;font-weight:400}.tenant-portal-cards{gap:var(--space-lg);grid-template-columns:1fr 1fr;width:100%;display:grid}@media (width<=600px){.tenant-portal-cards{grid-template-columns:1fr}}.tenant-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);text-align:center;flex-direction:column;align-items:center;gap:16px;padding:32px 24px;transition:border-color .2s,box-shadow .2s;display:flex}.tenant-card:hover{border-color:var(--border-secondary);box-shadow:0 4px 24px rgba(0,0,0,.12)}.tenant-card-icon{background:var(--bg-tertiary);width:56px;height:56px;color:var(--text-secondary);border-radius:14px;justify-content:center;align-items:center;display:flex}.tenant-card-icon-register{background:var(--green-dim,rgba(34,197,94,.1));color:var(--green,#22c55e)}.tenant-card-title{color:var(--text-primary);font-size:18px;font-weight:600}.tenant-card-desc{color:var(--text-tertiary);max-width:260px;font-size:13px;line-height:1.5}.tenant-login-btn{background:var(--text-primary);color:var(--text-inverse);font-family:var(--font-display);border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;width:100%;margin-top:auto;padding:12px 28px;font-size:14px;font-weight:500;text-decoration:none;transition:opacity .15s;display:inline-flex}.tenant-login-btn:hover{opacity:.85}.tenant-register-btn{color:var(--green,#22c55e);font-family:var(--font-display);border:1.5px solid var(--green,#22c55e);border-radius:var(--radius-md);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:100%;margin-top:auto;padding:12px 28px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.tenant-register-btn:hover{background:var(--green,#22c55e);color:#fff}.choose-tenant-page{background:var(--bg-primary);min-height:100vh;font-family:var(--font-display);padding:var(--space-xl);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.choose-tenant-page:after{content:"";pointer-events:none;opacity:0;background:linear-gradient(transparent 0%,rgba(34,197,94,.03) 50%,transparent 100%);width:100%;height:120px;animation:1.6s cubic-bezier(.4,0,.2,1) forwards chooser-scan;position:absolute;inset:0}@keyframes chooser-scan{0%{opacity:1;top:-120px}80%{opacity:1}to{opacity:0;top:100%}}.choose-tenant-container{align-items:center;gap:var(--space-lg);width:100%;max-width:640px;animation:chooser-fade-in .5s var(--transition-base) both;flex-direction:column;display:flex}.choose-tenant-container h1{font-size:var(--text-2xl);color:var(--text-primary);letter-spacing:-.04em;text-align:center;font-weight:700;line-height:1.1}@keyframes chooser-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.choose-tenant-subtitle{font-size:var(--text-base);color:var(--text-tertiary);text-align:center;max-width:400px;line-height:1.5}.choose-tenant-loading{align-items:center;gap:var(--space-md);padding:var(--space-3xl) 0;flex-direction:column;display:flex}.choose-tenant-loading p{font-size:var(--text-sm);color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase}.choose-tenant-grid{gap:var(--space-sm);width:100%;margin-top:var(--space-sm);grid-template-columns:1fr;display:grid}@media (width>=480px){.choose-tenant-grid{gap:var(--space-md);grid-template-columns:1fr 1fr}}.choose-tenant-card{align-items:center;gap:var(--space-md);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);padding:20px;text-decoration:none;animation:.4s cubic-bezier(.4,0,.2,1) both chooser-card-in;display:flex}.choose-tenant-card:first-child{animation-delay:.15s}.choose-tenant-card:nth-child(2){animation-delay:.22s}.choose-tenant-card:nth-child(3){animation-delay:.29s}.choose-tenant-card:nth-child(4){animation-delay:.36s}.choose-tenant-card:nth-child(5){animation-delay:.43s}.choose-tenant-card:nth-child(6){animation-delay:.5s}.choose-tenant-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.choose-tenant-card:active{box-shadow:var(--shadow-card);transform:translateY(0)}@keyframes chooser-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.choose-tenant-card-logo{border-radius:var(--radius-md);background:var(--bg-tertiary);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.choose-tenant-card-logo img{object-fit:contain;max-width:100%;max-height:100%}.choose-tenant-card-logo:empty:after{content:"";border:1.5px solid var(--text-tertiary);opacity:.4;border-radius:4px;width:20px;height:20px}.choose-tenant-card-info{flex-direction:column;gap:2px;min-width:0;display:flex}.choose-tenant-card-name{font-size:var(--text-md);color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.choose-tenant-card-role{font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;font-weight:500}.choose-tenant-empty{align-items:center;gap:var(--space-md);padding:var(--space-2xl) 0;text-align:center;flex-direction:column;display:flex}.choose-tenant-empty p{font-size:var(--text-base);color:var(--text-secondary)}.choose-tenant-empty a,.choose-tenant-empty .logout-link-btn{font-size:var(--text-sm);color:var(--text-tertiary);text-underline-offset:3px;transition:color var(--transition-fast);text-decoration:underline}.choose-tenant-empty a:hover,.choose-tenant-empty .logout-link-btn:hover{color:var(--text-primary)}.choose-tenant-empty .logout-link-form{margin:0;padding:0}.choose-tenant-empty .logout-link-btn{cursor:pointer;font:inherit;background:0 0;border:none;padding:0}.choose-tenant-error{align-items:center;gap:var(--space-md);padding:var(--space-2xl) 0;text-align:center;flex-direction:column;display:flex}.choose-tenant-error p{font-size:var(--text-base);color:var(--red)}.choose-tenant-error a{font-size:var(--text-sm);color:var(--text-secondary);text-underline-offset:3px;transition:color var(--transition-fast);text-decoration:underline}.choose-tenant-error a:hover{color:var(--text-primary)}.tenant-status{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;border-radius:20px;padding:3px 10px;font-weight:500}.tenant-status.active{background:var(--green-dim);color:var(--green)}.tenant-status.inactive{background:var(--red-dim);color:var(--red)}.registro-page{background:var(--bg-primary);min-height:100vh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.registro-container{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);width:100%;max-width:560px;padding:var(--space-2xl);box-shadow:var(--shadow-card)}.registro-header{text-align:center;margin-bottom:var(--space-xl)}.registro-logo{height:48px;margin-bottom:var(--space-md)}.registro-header h1{color:var(--text-primary);margin:0 0 var(--space-xs);font-size:1.5rem;font-weight:600}.registro-subtitle{color:var(--text-secondary);font-size:.875rem}.registro-form{gap:var(--space-md);flex-direction:column;display:flex}.registro-form .form-group{gap:var(--space-xs);flex-direction:column;flex:1;display:flex}.registro-form .form-row{gap:var(--space-md);display:flex}.registro-form label{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.registro-form input,.registro-form select{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);transition:border-color var(--transition-base);padding:10px 12px;font-size:.875rem}.registro-form input:focus,.registro-form select:focus{border-color:var(--registro-primary,var(--accent));box-shadow:0 0 0 3px rgba(var(--accent-rgb,99, 102, 241), .15);outline:none}.registro-submit{margin-top:var(--space-sm);text-align:center;justify-content:center;align-items:center;width:100%;padding:12px;font-size:.9375rem;font-weight:600;display:flex}.registro-error{background:rgba(var(--red-rgb,239, 68, 68), .1);border:1px solid var(--red);border-radius:var(--radius-md);color:var(--red);padding:10px 14px;font-size:.8125rem}.registro-success{text-align:center;padding:var(--space-xl) 0}.registro-success-icon{color:var(--green);margin-bottom:var(--space-md)}.registro-success h2{color:var(--text-primary);margin:0 0 var(--space-sm);font-size:1.25rem;font-weight:600}.registro-success p{color:var(--text-secondary);font-size:.875rem;line-height:1.5}.registro-error-page{text-align:center;color:var(--text-secondary)}@media (width<=600px){.registro-form .form-row{flex-direction:column}.registro-container{padding:var(--space-lg)}}.pre-registro-detail{max-width:900px;margin:0 auto}.pre-reg-loading{text-align:center;padding:60px 0}.pre-reg-success{text-align:center;align-items:center;gap:var(--space-md);flex-direction:column;max-width:520px;margin:60px auto;display:flex}.pre-reg-success h2{font-size:var(--text-lg);color:var(--text-primary);font-weight:600}.pre-reg-not-found{text-align:center;color:var(--text-secondary);padding:60px 0}.pre-reg-badges{align-items:center;gap:8px;display:flex}.pre-reg-error{background:var(--red-dim);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--red);border:1px solid rgba(239,68,68,.25);margin-bottom:16px;padding:10px 14px}.pre-reg-section{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);margin:20px 0;padding:20px}.pre-reg-section-title{color:var(--text-primary);letter-spacing:-.02em;margin:0 0 16px;font-size:15px;font-weight:600}.pdf-viewer-wrap{width:100%}.pdf-viewer-controls{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.pdf-viewer-controls .btn-sm{align-items:center;gap:6px;display:inline-flex}.pre-reg-pdf-frame{border:1px solid var(--border-primary);border-radius:var(--radius-md);width:100%;height:600px}.pre-reg-sat-status{align-items:center;gap:5px;margin-top:4px;font-size:12px;display:flex}.pre-reg-sat-ok{color:var(--green);align-items:center;gap:5px;display:flex}.pre-reg-sat-pending{color:var(--text-tertiary);align-items:center;gap:5px;display:flex}.pre-reg-save-btn{margin-top:16px}.pre-reg-actions-bar{border-top:2px solid var(--border-primary);flex-wrap:wrap;align-items:flex-end;gap:16px;margin:20px 0;padding:20px;display:flex}.pre-reg-industry{flex:none;min-width:180px}.pre-reg-industry .form-label{margin-bottom:4px}.pre-reg-action-buttons{align-items:center;gap:10px;margin-left:auto;display:flex}.pre-reg-create-btn{border-radius:var(--radius-md);font-family:var(--font-display);letter-spacing:-.01em;cursor:pointer;transition:all var(--transition-base);border:1.5px solid transparent;align-items:center;gap:8px;padding:10px 22px;font-size:14px;font-weight:600;display:inline-flex}.pre-reg-create-icon{flex-shrink:0;width:18px;height:18px}.pre-reg-create-btn.ready{background:var(--green);color:#fff;border-color:var(--green)}.pre-reg-create-btn.ready .pre-reg-create-icon{animation:.4s cubic-bezier(.34,1.56,.64,1) both pre-reg-tick-pop}.pre-reg-create-btn.ready:hover:not(:disabled){background:#1eb854;box-shadow:0 0 20px rgba(34,197,94,.25)}.pre-reg-create-btn.ready:active:not(:disabled){transform:scale(.97)}.pre-reg-create-btn.ready:disabled{opacity:.7;cursor:wait}.pre-reg-create-btn.locked{background:var(--bg-tertiary);color:var(--text-tertiary);border-color:var(--border-primary);cursor:not-allowed;opacity:.4}.pre-reg-reject-btn{border:1.5px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:10px 18px;font-size:13px;font-weight:500;display:inline-flex}.pre-reg-reject-btn svg{flex-shrink:0;width:16px;height:16px}.pre-reg-reject-btn:hover:not(:disabled){border-color:var(--red);color:var(--red);background:var(--red-dim)}.pre-reg-reject-btn:active:not(:disabled){transform:scale(.97)}.pre-reg-reject-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes pre-reg-tick-pop{0%{opacity:0;transform:scale(.5)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.pre-reg-reject-warn{background:var(--amber-dim);border-radius:var(--radius-sm);color:var(--text-secondary);border:1px solid rgba(245,158,11,.3);margin-bottom:16px;padding:10px 14px;font-size:13px}.pre-reg-reject-warn strong{color:var(--amber)}.pre-reg-reject-options{flex-direction:column;gap:8px;margin:8px 0;display:flex}.pre-reg-reject-option{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.pre-reg-reject-option p{color:var(--text-tertiary);margin:0;font-size:12px}.rejection-detail{margin-top:6px}.rejection-reason{font-size:var(--text-sm);color:var(--red);margin:0;font-style:italic;line-height:1.4}.rejection-meta{font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.3px;margin-top:2px;font-size:10px;display:block}.reject-reason-presets{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.reject-preset-btn{font-size:var(--text-sm);font-family:var(--font-display);border:1px solid var(--border-primary);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:left;border-radius:20px;padding:5px 12px;line-height:1.4}.reject-preset-btn:hover{background:var(--bg-tertiary);border-color:var(--text-tertiary);color:var(--text-primary)}.reject-preset-btn:active{transform:scale(.97)}.resp-list{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);overflow:hidden}.resp-empty{align-items:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-xl);color:var(--text-tertiary);flex-direction:column;display:flex}.resp-empty svg{opacity:.3}.resp-empty p{font-size:var(--text-md);color:var(--text-secondary);margin:0;font-weight:500}.resp-empty span{font-size:var(--text-sm)}.resp-item{align-items:flex-start;gap:var(--space-md);border-bottom:1px solid var(--border-secondary);transition:background var(--transition-fast);padding:12px 16px;display:flex}.resp-item:last-child{border-bottom:none}.resp-item:hover{background:var(--bg-secondary)}.resp-item__body{flex:1;min-width:0}.resp-item__text{font-size:var(--text-base);color:var(--text-primary);margin:0 0 6px;line-height:1.45}.resp-item__meta{flex-wrap:wrap;gap:6px;display:flex}.resp-tag{font-family:var(--font-mono);letter-spacing:.5px;text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:500;line-height:1.6;display:inline-block}.resp-tag--rechazo{background:var(--red-dim);color:var(--red)}.resp-tag--resubir{background:var(--amber-dim);color:var(--amber)}.resp-tag--observacion{background:var(--purple-dim);color:var(--purple)}.resp-tag--proceso{background:var(--bg-tertiary);color:var(--text-secondary)}.resp-item__delete{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.resp-item__delete:hover{background:var(--red-dim);color:var(--red)}.resp-add{align-items:flex-start;gap:10px;margin-top:12px;display:flex}.resp-add__text{flex:1;min-width:0}.resp-add__text .form-input{width:100%}.resp-add__selects{flex-shrink:0;gap:8px;display:flex}.resp-add__select{width:120px;font-size:var(--text-sm)!important}.resp-add__btn{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-family:var(--font-display);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 16px;font-weight:500;display:inline-flex}.resp-add__btn:hover:not(:disabled){border-color:var(--text-tertiary);color:var(--text-primary);background:var(--bg-secondary)}.resp-add__btn:disabled{opacity:.3;cursor:not-allowed}@media (width<=700px){.resp-add{flex-direction:column}.resp-add__selects{width:100%}.resp-add__select{flex:1;width:auto}}.csf-review-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.csf-review-header .pre-reg-section-title{margin-bottom:0}.csf-approval-inline{flex-shrink:0}.csf-approval-stamp{border-radius:var(--radius-md);border:1.5px solid var(--border-primary);background:var(--bg-card);transition:all var(--transition-base);align-items:center;gap:14px;padding:14px 18px;display:flex}.csf-approval-stamp.pending{cursor:pointer;font-family:var(--font-display);text-align:left;width:100%}.csf-approval-stamp.pending .csf-stamp-check svg{width:32px;height:32px;color:var(--text-tertiary);transition:color var(--transition-base)}.csf-approval-stamp.pending .csf-stamp-title{color:var(--text-primary)}.csf-approval-stamp.pending:hover:not(:disabled){border-color:var(--green);background:var(--green-dim)}.csf-approval-stamp.pending:hover:not(:disabled) .csf-stamp-check svg{color:var(--green)}.csf-approval-stamp.pending:active:not(:disabled){transform:scale(.985)}.csf-approval-stamp.pending:disabled{opacity:.6;cursor:wait}.csf-approval-stamp.approved{border-color:var(--green);background:var(--green-dim)}.csf-approval-stamp.approved .csf-stamp-check svg{width:36px;height:36px;color:var(--green)}.csf-approval-stamp.approved .csf-stamp-title{color:var(--green)}.csf-approval-stamp.approved.animated{animation:.5s cubic-bezier(.34,1.56,.64,1) both csf-stamp-in}.csf-approval-stamp.approved.animated .csf-stamp-circle{stroke-dasharray:63;stroke-dashoffset:63px;animation:.6s cubic-bezier(.4,0,.2,1) .1s forwards csf-circle-draw}.csf-approval-stamp.approved.animated .csf-stamp-tick{stroke-dasharray:20;stroke-dashoffset:20px;animation:.35s cubic-bezier(.4,0,.2,1) .5s forwards csf-tick-draw}.csf-stamp-check{flex-shrink:0;justify-content:center;align-items:center;display:flex}.csf-stamp-info{flex-direction:column;gap:2px;min-width:0;display:flex}.csf-stamp-title{letter-spacing:-.01em;font-size:14px;font-weight:600}.csf-stamp-meta{color:var(--text-tertiary);letter-spacing:.01em;font-size:11.5px}@keyframes csf-stamp-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes csf-circle-draw{to{stroke-dashoffset:0}}@keyframes csf-tick-draw{to{stroke-dashoffset:0}}.badge-vigencia{font-family:var(--font-mono);letter-spacing:.3px;border-radius:6px;align-items:center;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.badge-vigencia.vigente{background:var(--green-dim);color:var(--green);border:1px solid rgba(34,197,94,.2)}.badge-vigencia.por-vencer{background:var(--amber-dim);color:var(--amber);border:1px solid rgba(245,158,11,.2)}.badge-vigencia.vencida{background:var(--red-dim);color:var(--red);border:1px solid rgba(239,68,68,.2)}.badge-vigencia.sin-datos{background:var(--bg-tertiary);color:var(--text-tertiary);border:1px solid var(--border-primary)}.onboarding-page{max-width:860px}.onboarding-form{gap:var(--space-xl);flex-direction:column;display:flex}.onboarding-section{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-lg)}.onboarding-section-title{color:var(--text-primary);margin:0 0 var(--space-xs);font-size:1rem;font-weight:600}.onboarding-section-desc{color:var(--text-secondary);margin-bottom:var(--space-md);font-size:.8125rem;line-height:1.5}.onboarding-section-desc a{color:var(--accent);text-decoration:underline}.onboarding-section .form-group{gap:var(--space-xs);margin-bottom:var(--space-sm);flex-direction:column;flex:1;display:flex}.onboarding-section .form-row{gap:var(--space-md);display:flex}.onboarding-section label{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.onboarding-section input,.onboarding-section select{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);transition:border-color var(--transition-base);padding:8px 12px;font-size:.875rem}.onboarding-section input:focus,.onboarding-section select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb,99, 102, 241), .15);outline:none}.onboarding-section input:disabled{opacity:.6;cursor:not-allowed}.file-upload-area{align-items:center;gap:var(--space-sm);display:flex}.file-upload-area input[type=file]{font-size:.8125rem}.file-name{color:var(--green);font-size:.8125rem;font-weight:500}.file-placeholder{color:var(--text-tertiary);font-size:.8125rem}.onboarding-submit-area{padding:var(--space-md) 0;justify-content:flex-end;display:flex}.onboarding-submit-area .btn-primary{padding:12px 32px;font-size:.9375rem;font-weight:600}.onboarding-waiting{text-align:center;padding:var(--space-3xl) var(--space-xl)}.onboarding-waiting-icon{color:var(--green);margin-bottom:var(--space-lg);animation:2s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.onboarding-waiting h2{color:var(--text-primary);margin:0 0 var(--space-sm);font-size:1.5rem;font-weight:600}.onboarding-waiting p{color:var(--text-secondary);max-width:480px;margin:0 auto;font-size:.9375rem;line-height:1.6}.onboarding-waiting-sub{margin-top:var(--space-sm)!important;color:var(--text-tertiary)!important;font-size:.8125rem!important}.onboarding-list{margin-top:var(--space-md)}.onboarding-table-wrap{scrollbar-width:thin;scrollbar-color:var(--border-primary) transparent;overflow-x:auto}.onboarding-table-wrap::-webkit-scrollbar{height:8px}.onboarding-table-wrap::-webkit-scrollbar-track{background:0 0}.onboarding-table-wrap::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}.onboarding-table-wrap::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.tab-badge{background:var(--accent,#6366f1);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.btn-sm{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);border:none;padding:4px 10px;font-size:.75rem;font-weight:500}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.btn-success{background:var(--green);color:#fff}.btn-success:hover:not(:disabled){filter:brightness(1.1)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(1.1)}.badge-success{background:rgba(var(--green-rgb,34, 197, 94), .15);color:var(--green);border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.badge-warning{background:rgba(var(--amber-rgb,245, 158, 11), .15);color:var(--amber);border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}@media (width<=768px){.onboarding-section .form-row{flex-direction:column}}.onboarding-wizard{width:100%;max-width:100%}.wizard-body{grid-template-columns:240px 1fr;align-items:start;gap:24px;display:grid}.wizard-stepper{scrollbar-width:thin;flex-direction:column;gap:2px;max-height:calc(100vh - 120px);padding:8px 0;display:flex;position:sticky;top:80px;overflow-y:auto}.wizard-step{border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-display);transition:all var(--transition-base);white-space:nowrap;color:var(--text-tertiary);text-align:left;background:0 0;border:2px solid transparent;align-items:center;gap:10px;width:100%;padding:10px 14px;font-size:13px;display:flex;position:relative}.wizard-step:not(:last-child):after{content:"";background:var(--border-primary);width:2px;height:4px;transition:background var(--transition-base);position:absolute;bottom:-4px;left:25px}.wizard-step:not(:last-child){margin-right:0}.wizard-step:hover{color:var(--text-secondary)}.wizard-step.active{background:var(--bg-card);border-color:var(--text-primary);color:var(--text-primary);box-shadow:0 2px 12px rgba(0,0,0,.2)}.wizard-step.completed{color:var(--green)}.wizard-step.completed:after{background:var(--green)}.wizard-step.in-review{color:var(--amber)}.wizard-step.rejected{color:var(--red)}.wizard-step-num{background:var(--bg-tertiary);width:32px;height:32px;color:var(--text-tertiary);transition:all var(--transition-base);font-size:13px;font-weight:700;font-family:var(--font-mono);border:2px solid transparent;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.wizard-step.active .wizard-step-num{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);transform:scale(1.1)}.wizard-step.completed .wizard-step-num{background:var(--green);color:#fff;border-color:var(--green)}.wizard-step.in-review .wizard-step-num{background:var(--amber);color:#fff;border-color:var(--amber);animation:2s ease-in-out infinite pulse-glow}.wizard-step.rejected .wizard-step-num{background:var(--red);color:#fff;border-color:var(--red)}.wizard-step-label{letter-spacing:-.2px;white-space:normal;font-weight:500;line-height:1.3}.wizard-main{min-width:0}.wizard-step.active .wizard-step-label{color:var(--text-primary);font-weight:600}.wizard-step.completed .wizard-step-label{color:var(--green)}.wizard-step.in-review .wizard-step-label{color:var(--amber)}.wizard-step.rejected .wizard-step-label{color:var(--red)}.wizard-step-content{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:28px;animation:.3s fadeSlideUp}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.wizard-step-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.wizard-step-title{color:var(--text-primary);letter-spacing:-.3px;margin:0 0 4px;font-size:1.25rem;font-weight:700}.wizard-step-mode{color:var(--text-secondary);margin:0;font-size:.8125rem}.wizard-step-badge{letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;border-radius:100px;flex-shrink:0;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.wizard-step-badge.completed{background:var(--green-dim);color:var(--green)}.wizard-step-badge.in-review{background:var(--amber-dim);color:var(--amber)}.wizard-step-badge.rejected{background:var(--red-dim);color:var(--red)}.wizard-doc-list{flex-direction:column;gap:12px;display:flex}.wizard-doc-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);transition:border-color var(--transition-base), box-shadow var(--transition-base);overflow:hidden}.wizard-doc-card:hover{border-color:var(--border-hover)}.wizard-doc-card.has-file{border-color:var(--green);border-left:3px solid var(--green)}.wizard-doc-row{align-items:stretch;display:flex}.wizard-doc-info{flex:1;min-width:0;padding:16px 20px}.wizard-doc-label{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:6px;font-size:.875rem;font-weight:600;display:flex}.wizard-doc-req{color:var(--red);font-weight:700}.wizard-doc-desc{color:var(--text-tertiary);margin-top:3px;font-size:.75rem;line-height:1.4}.wizard-doc-sig{color:var(--amber);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:4px;margin-top:6px;font-size:.6875rem;font-weight:600;display:inline-flex}.wizard-doc-action{flex-shrink:0;align-items:center;min-width:240px;display:flex}.wizard-doc-action:empty{min-width:0;display:none}.wizard-doc-upload-area{cursor:pointer;border-left:1px dashed var(--border-secondary);width:100%;height:100%;transition:all var(--transition-base);background:0 0;flex-direction:column;justify-content:center;align-items:center;padding:16px 20px;display:flex;position:relative}.wizard-doc-upload-area:hover{background:var(--bg-tertiary)}.wizard-doc-upload-area.dragging{background:var(--green-dim);border-left-color:var(--green)}.wizard-doc-upload-area input[type=file]{opacity:0;cursor:pointer;z-index:2;position:absolute;inset:0}.wizard-upload-prompt{pointer-events:none;flex-direction:column;align-items:center;gap:4px;display:flex}.wizard-upload-icon{width:24px;height:24px;color:var(--text-tertiary);transition:color var(--transition-base)}.wizard-doc-upload-area:hover .wizard-upload-icon{color:var(--text-secondary)}.wizard-upload-text{color:var(--text-tertiary);text-align:center;font-size:11px;line-height:1.3}.wizard-upload-formats{color:var(--text-tertiary);font-size:10px;font-family:var(--font-mono);opacity:.7}.wizard-doc-uploading{color:var(--text-secondary);align-items:center;gap:6px;font-size:.75rem;display:flex}.wizard-doc-uploading:before{content:"";border:2px solid var(--border-primary);border-top-color:var(--text-primary);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}.wizard-doc-error{color:var(--red);padding:4px 0;font-size:.75rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.wizard-step-actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:24px;display:flex}.wizard-step-error{color:var(--red);margin-right:auto;font-size:.8125rem}.wizard-step-actions .btn-primary{transition:all var(--transition-base);border-radius:100px;padding:10px 28px;font-size:.875rem;font-weight:600}.wizard-step-actions .btn-primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.3)}.wizard-nav{justify-content:space-between;margin-top:20px;display:flex}.wizard-nav .btn-secondary{border-radius:100px;padding:8px 20px;font-size:.8125rem}.wizard-final{text-align:center;background:var(--green-dim);border:1px solid var(--green);border-radius:var(--radius-lg);margin-top:24px;padding:32px;animation:.4s fadeSlideUp}.wizard-final-text{color:var(--green);margin:0;font-size:1rem;font-weight:600}.wizard-empty{text-align:center;color:var(--text-tertiary);padding:64px 0;font-size:.9375rem}@media (width<=768px){.wizard-body{grid-template-columns:1fr;gap:16px}.wizard-stepper{flex-direction:row;gap:0;max-height:none;padding:4px;position:static;overflow-x:auto}.wizard-step{white-space:nowrap;padding:8px 14px}.wizard-step-label{white-space:nowrap}.wizard-step:not(:last-child):after{width:8px;height:2px;inset:50% -8px auto auto}.wizard-step:not(:last-child){margin-right:8px}.wizard-step-content{padding:20px 16px}.wizard-doc-row{flex-direction:column}.wizard-doc-action{width:100%;min-width:auto}.wizard-doc-check{max-width:150px}.wizard-doc-upload-area{border-left:none;border-top:1px dashed var(--border-secondary);padding:20px}.wizard-signed{border-left:none;border-top:1px solid var(--border-secondary)}.wizard-signed:after{top:auto;bottom:14px;right:16px}.wizard-doc-uploaded{border-left:none;border-top:1px solid var(--green)}.wizard-step-header{flex-direction:column}.wizard-ocr-grid{grid-template-columns:1fr!important}}.wizard-ocr-result{background:var(--bg-card);border:1px solid var(--border-primary);border-left:3px solid var(--green);border-radius:0 var(--radius-md) var(--radius-md) 0;text-align:left;overscroll-behavior:contain;max-height:280px;margin-top:10px;padding:14px 18px;animation:.3s fadeSlideUp;overflow-y:auto;box-shadow:0 1px 4px rgba(0,0,0,.06)}.wizard-ocr-result.has-warnings{border-left-color:var(--amber)}.wizard-ocr-header{color:var(--green);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;margin-bottom:10px;font-size:11px;font-weight:600;display:flex}.wizard-ocr-result.has-warnings .wizard-ocr-header{color:var(--amber)}.wizard-ocr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;display:grid}@media (width<=640px){.wizard-ocr-grid{grid-template-columns:minmax(0,1fr)}}.wizard-ocr-item{flex-direction:column;gap:1px;min-width:0;display:flex}.wizard-ocr-label{text-transform:capitalize;color:var(--text-tertiary);letter-spacing:.3px;overflow-wrap:anywhere;font-size:10px;font-weight:500}.wizard-ocr-value{color:var(--text-primary);font-size:12px;font-weight:500;font-family:var(--font-mono);overflow-wrap:anywhere;word-break:break-word}.wizard-doc-filename{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.wizard-doc-check{color:var(--green);background:var(--green-dim);text-overflow:ellipsis;white-space:nowrap;border-radius:100px;align-items:center;gap:4px;max-width:200px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex;overflow:hidden}.wizard-doc-check svg{flex-shrink:0}.wizard-signed{border-left:1px solid var(--border-secondary);background:linear-gradient(135deg, rgba(var(--green-rgb,34, 197, 94), .08) 0%, transparent 70%);flex-direction:column;gap:10px;width:100%;height:100%;padding:14px 16px;display:flex;position:relative}.wizard-signed:after{content:"";background:var(--green);width:6px;height:6px;box-shadow:0 0 0 3px rgba(var(--green-rgb,34, 197, 94), .2);border-radius:50%;animation:2.4s ease-in-out infinite wizard-signed-pulse;position:absolute;top:17px;right:16px}@keyframes wizard-signed-pulse{0%,to{box-shadow:0 0 0 3px rgba(var(--green-rgb,34, 197, 94), .2)}50%{box-shadow:0 0 0 5px rgba(var(--green-rgb,34, 197, 94), .08)}}.wizard-signed-header{color:var(--green);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:6px;padding-right:18px;font-size:.6875rem;font-weight:700;display:inline-flex}.wizard-signed-header svg{stroke-width:3px;flex-shrink:0}.wizard-signed-actions{flex-direction:column;gap:6px;display:flex}.wizard-signed-btn{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);text-align:left;cursor:pointer;width:100%;min-width:0;transition:border-color var(--transition-base), background var(--transition-base), transform 80ms ease;align-items:center;gap:10px;padding:9px 11px;font-family:inherit;font-size:13px;text-decoration:none;display:flex}.wizard-signed-btn:hover{border-color:var(--green);background:var(--bg-tertiary)}.wizard-signed-btn:active{transform:translateY(1px)}.wizard-signed-btn:focus-visible{outline:2px solid var(--green);outline-offset:2px}.wizard-signed-btn-icon{background:var(--green-dim);width:30px;height:30px;color:var(--green);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.wizard-signed-btn-icon.audit{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-primary)}.wizard-signed-btn-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.wizard-signed-btn-label{color:var(--text-primary);font-size:.8125rem;font-weight:600;line-height:1.2}.wizard-signed-btn-meta{font-size:.625rem;font-family:var(--font-mono);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;text-transform:uppercase;letter-spacing:.04em;line-height:1.2;overflow:hidden}.wizard-signed-btn-arrow{color:var(--text-tertiary);transition:transform var(--transition-base), color var(--transition-base);flex-shrink:0}.wizard-signed-btn:hover .wizard-signed-btn-arrow{color:var(--green);transform:translate(2px)}.wizard-signed-loading{font-size:.6875rem;font-family:var(--font-mono);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;padding:6px 0;display:flex}.wizard-conf{font-size:10px;font-weight:600;font-family:var(--font-mono);border-radius:100px;margin-left:4px;padding:1px 6px}.wizard-conf.high{background:var(--green-dim);color:var(--green)}.wizard-conf.mid{background:var(--amber-dim);color:var(--amber)}.wizard-conf.low{background:var(--red-dim);color:var(--red)}.wizard-signing-success{background:linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);flex-direction:column;align-items:center;padding:56px 80px 40px;display:flex;position:relative}.wizard-signing-success:before{content:"";opacity:.025;pointer-events:none;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");position:absolute;inset:0}.wizard-signing-success:after{content:"";border-top:1px solid var(--border-primary);border-left:1px solid var(--border-primary);border-right:1px solid var(--border-primary);pointer-events:none;opacity:.4;height:24px;position:absolute;top:20px;left:24px;right:24px}.wizard-signing-success-kicker{z-index:1;width:100%;max-width:520px;font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-tertiary);align-items:center;gap:14px;margin-bottom:36px;font-size:10px;font-weight:600;animation:.42s cubic-bezier(.16,1,.3,1) both wizard-signing-fade-up;display:flex;position:relative}.wizard-signing-success-kicker:before,.wizard-signing-success-kicker:after{content:"";background:var(--border-primary);flex:1;height:1px}.wizard-signing-success-kicker-num{color:var(--text-secondary);font-variant-numeric:tabular-nums}.wizard-signing-success-stamp{z-index:1;background:radial-gradient(ellipse at center, rgba(var(--green-rgb,34, 197, 94), .12) 0%, rgba(var(--green-rgb,34, 197, 94), .02) 75%);border:1px solid var(--green);box-shadow:0 0 0 5px var(--bg-primary), 0 0 0 7px var(--green);flex-direction:column;justify-content:center;align-items:center;gap:6px;margin:4px 0 40px;padding:22px 56px;animation:.65s cubic-bezier(.34,1.56,.64,1) .15s both wizard-signing-stamp-in;display:inline-flex;position:relative;transform:rotate(-1.8deg)}.wizard-signing-success-stamp-word{letter-spacing:.1em;text-transform:uppercase;color:var(--green);font-family:Canela Deck,Georgia,Times New Roman,Baskerville Old Face,serif;font-size:38px;font-weight:700;line-height:1}.wizard-signing-success-stamp-date{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--green);opacity:.85;font-size:10px;font-weight:600}.wizard-signing-success-title{z-index:1;letter-spacing:-.015em;color:var(--text-primary);text-align:center;max-width:520px;margin:0 0 14px;font-family:Canela Deck,Georgia,Times New Roman,serif;font-size:30px;font-weight:400;line-height:1.15;animation:.52s cubic-bezier(.16,1,.3,1) .32s both wizard-signing-fade-up;position:relative}.wizard-signing-success-title em{color:var(--text-secondary);font-style:italic;font-weight:400}.wizard-signing-success-body{z-index:1;max-width:460px;color:var(--text-secondary);text-align:center;margin:0 0 32px;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.7;animation:.52s cubic-bezier(.16,1,.3,1) .42s both wizard-signing-fade-up;position:relative}.wizard-signing-success-divider{z-index:1;background:var(--border-primary);width:100%;max-width:420px;height:1px;margin:4px 0 24px;animation:.42s .52s both wizard-signing-fade-up;position:relative}.wizard-signing-success-divider:before{content:"§";background:var(--bg-secondary);color:var(--text-tertiary);padding:0 12px;font-family:Canela Deck,Georgia,serif;font-size:16px;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.wizard-signing-success-email{z-index:1;flex-direction:column;align-items:center;gap:6px;margin-bottom:36px;animation:.52s cubic-bezier(.16,1,.3,1) .62s both wizard-signing-fade-up;display:flex;position:relative}.wizard-signing-success-email-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-tertiary);font-size:9px;font-weight:600}.wizard-signing-success-email-value{color:var(--text-primary);font-family:Georgia,Times New Roman,serif;font-size:15px;font-style:italic}.wizard-signing-success-actions{z-index:1;gap:16px;padding-top:8px;animation:.52s cubic-bezier(.16,1,.3,1) .72s both wizard-signing-fade-up;display:flex;position:relative}.wizard-signing-success-actions button{letter-spacing:.02em;border-radius:var(--radius-sm);min-width:168px;transition:all var(--transition-base);cursor:pointer;padding:12px 24px;font-family:Georgia,Times New Roman,serif;font-size:14px;font-weight:500}.wizard-signing-success-actions .btn-secondary{border:1px solid var(--border-primary);color:var(--text-secondary);background:0 0}.wizard-signing-success-actions .btn-secondary:hover{border-color:var(--text-secondary);color:var(--text-primary)}.wizard-signing-success-actions .btn-primary{background:var(--green);border:1px solid var(--green);color:var(--bg-primary);font-weight:600}.wizard-signing-success-actions .btn-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.wizard-signing-success-actions .btn-primary:disabled{opacity:.7;cursor:wait}@keyframes wizard-signing-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes wizard-signing-stamp-in{0%{opacity:0;transform:rotate(-1.8deg)scale(.3)translateY(-20px)}55%{opacity:1;transform:rotate(-1.8deg)scale(1.08)translateY(0)}to{opacity:1;transform:rotate(-1.8deg)scale(1)translateY(0)}}@media (prefers-reduced-motion:reduce){.wizard-signing-success-kicker,.wizard-signing-success-stamp,.wizard-signing-success-title,.wizard-signing-success-body,.wizard-signing-success-divider,.wizard-signing-success-email,.wizard-signing-success-actions{animation:none}.wizard-signing-success-stamp{transform:rotate(-1.8deg)}}.wizard-doc-resubmit{color:var(--text-tertiary);border:1px solid var(--border-primary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border-radius:100px;margin-left:6px;padding:1px 8px;font-size:10px}.wizard-doc-resubmit:hover{color:var(--text-primary);border-color:var(--text-secondary)}.wizard-doc-analyzing{color:var(--text-secondary);align-items:center;gap:6px;font-size:11px;display:inline-flex}.wizard-ocr-checks{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.wizard-ocr-check-item{border-radius:var(--radius-sm);border:1px solid transparent;align-items:flex-start;gap:8px;padding:8px 14px;font-size:12px;font-weight:500;line-height:1.5;display:flex}.wizard-ocr-check-item.ok{background:var(--green-dim);color:var(--green);border-color:rgba(34,197,94,.15)}.wizard-ocr-check-item.partial{background:var(--amber-dim);color:var(--amber);border-color:rgba(245,158,11,.15)}.wizard-ocr-check-item.error{background:var(--red-dim);color:var(--red);border-color:rgba(239,68,68,.15)}.wizard-ocr-check-icon{flex-shrink:0;font-size:14px;line-height:1.2}.wizard-reject-reason{color:var(--red);background:var(--red-dim);border-radius:var(--radius-sm);margin-top:4px;padding:8px 12px;font-size:12px;line-height:1.4}.wizard-spinner{border:2px solid var(--border-primary);border-top-color:var(--text-primary);border-radius:50%;width:12px;height:12px;animation:.6s linear infinite spin}.rep-legal-toggle{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-base), background var(--transition-base);align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;display:flex}.rep-legal-toggle:hover{border-color:var(--accent);background:rgba(var(--accent-rgb,99, 102, 241), .04)}.rep-legal-toggle:has(.toggle-input:checked){border-color:var(--green);background:var(--green-dim)}.rep-legal-toggle-icon{border-radius:var(--radius-sm);background:rgba(var(--accent-rgb,99, 102, 241), .1);width:36px;height:36px;color:var(--accent);transition:all var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.rep-legal-toggle:has(.toggle-input:checked) .rep-legal-toggle-icon{color:var(--green);background:rgba(34,197,94,.15)}.rep-legal-toggle-text{flex-direction:column;flex:1;gap:1px;display:flex}.rep-legal-toggle-title{color:var(--text-primary);letter-spacing:-.01em;font-size:13px;font-weight:600}.rep-legal-toggle-desc{color:var(--text-tertiary);font-size:11px;line-height:1.3}.rep-legal-toggle .toggle-input{margin-left:auto}.wizard-form-section{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);flex-direction:column;gap:12px;margin-top:16px;padding:20px;display:flex}.wizard-form-section .form-group{flex-direction:column;gap:4px;display:flex}.wizard-form-section .form-label{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.wizard-form-section .form-input{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);transition:border-color var(--transition-base);padding:8px 12px;font-size:.875rem}.wizard-form-section .form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb,99, 102, 241), .15);outline:none}.wizard-form-section .form-input:disabled{opacity:.6;cursor:not-allowed}.wizard-instances{gap:var(--space-md);flex-direction:column;display:flex}.wizard-instance-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);transition:border-color var(--transition-base), box-shadow var(--transition-base);overflow:hidden}.wizard-instance-card:hover{border-color:var(--border-hover)}.wizard-instance-header{background:var(--bg-tertiary,var(--bg-card));border-bottom:1px solid var(--border-primary);align-items:center;gap:12px;padding:12px 16px;display:flex}.wizard-instance-num{font-variant-numeric:tabular-nums;min-width:28px;height:28px;color:var(--accent);background:rgba(var(--accent-rgb,99, 102, 241), .1);border:1px solid rgba(var(--accent-rgb,99, 102, 241), .25);border-radius:var(--radius-sm);letter-spacing:.02em;justify-content:center;align-items:center;padding:0 8px;font-size:.75rem;font-weight:700;display:inline-flex}.wizard-instance-title{color:var(--text-primary);letter-spacing:-.01em;flex:1;font-size:.9375rem;font-weight:600}.wizard-instance-remove{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid transparent;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .15s,background-color .15s,border-color .15s,transform .15s;display:inline-flex}.wizard-instance-remove:hover{color:var(--red);background:var(--red-dim,rgba(239,68,68,.1));border-color:var(--red)}.wizard-instance-remove:active{transform:scale(.92)}.wizard-instance-remove:focus-visible{box-shadow:0 0 0 2px var(--bg-card), 0 0 0 4px var(--red);outline:none}.wizard-instance-remove svg{pointer-events:none;display:block}.wizard-instance-card>.wizard-doc-card,.wizard-instance-card>.wizard-form-section{border:none;border-radius:0;margin:0}.wizard-instance-card>.wizard-doc-card+.wizard-doc-card,.wizard-instance-card>.wizard-doc-card+.wizard-form-section,.wizard-instance-card>.wizard-form-section+.wizard-doc-card{border-top:1px solid var(--border-primary)}.wizard-add-instance{color:var(--accent);border:1px dashed rgba(var(--accent-rgb,99, 102, 241), .4);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-self:flex-start;align-items:center;gap:6px;padding:8px 14px;font-size:.8125rem;font-weight:600;transition:color .15s,background-color .15s,border-color .15s;display:inline-flex}.wizard-add-instance:hover{background:rgba(var(--accent-rgb,99, 102, 241), .08);border-color:var(--accent);border-style:solid}.wizard-add-instance:focus-visible{box-shadow:0 0 0 2px var(--bg-card), 0 0 0 4px var(--accent);outline:none}.inicio-page{gap:var(--space-lg);flex-direction:column;max-width:1100px;margin:0 auto;display:flex}.inicio-welcome{justify-content:space-between;align-items:center;display:flex}.inicio-welcome-text{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.inicio-welcome-text h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0;font-weight:600}.inicio-role-badge{font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase;color:var(--green);background:var(--green-dim);border-radius:999px;align-items:center;padding:4px 12px;font-weight:500;display:inline-flex}.inicio-company-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-lg)}.inicio-company-header{align-items:center;gap:var(--space-md);display:flex}.inicio-company-header>svg{width:32px;height:32px;color:var(--text-secondary);flex-shrink:0}.inicio-company-header h2{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.inicio-company-info{flex:1;min-width:0}.inicio-tenant-name{font-size:var(--text-sm);color:var(--text-secondary);margin:2px 0 0}.inicio-status-badge{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;border-radius:999px;flex-shrink:0;align-items:center;padding:4px 12px;font-weight:500;display:inline-flex}.inicio-status-badge.status-approved{color:var(--green);background:var(--green-dim)}.inicio-status-badge.status-pending{color:var(--amber);background:var(--amber-dim)}.inicio-status-badge.status-rejected{color:var(--red);background:var(--red-dim)}.inicio-section-title{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary);margin:0 0 var(--space-md);font-weight:500}.inicio-modules-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.module-tile{align-items:flex-start;gap:var(--space-md);padding:var(--space-lg);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:inherit;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);cursor:pointer;text-decoration:none;display:flex}.module-tile:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover);background:var(--bg-card-hover)}.module-tile.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.module-tile-icon{background:var(--brand-primary-dim,var(--bg-tertiary));border-radius:var(--radius-sm);width:36px;height:36px;color:var(--brand-primary,var(--text-secondary));pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.module-tile-icon svg{width:20px;height:20px}.module-tile-body{pointer-events:none;flex:1;min-width:0}.module-tile-body h4{font-size:var(--text-base);color:var(--text-primary);margin:0 0 4px;font-weight:600}.module-tile-body p{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.4}.avisos-carousel{margin-bottom:var(--space-lg);padding:var(--space-md);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary)}.avisos-carousel__head{margin-bottom:var(--space-sm);justify-content:space-between;align-items:baseline;display:flex}.avisos-carousel__eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;color:var(--text-tertiary);font-weight:500}.avisos-carousel__count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary)}.avisos-carousel__strip{gap:var(--space-md);scroll-snap-type:x proximity;flex-direction:row;padding-bottom:4px;display:flex;overflow-x:auto}.avisos-carousel__strip::-webkit-scrollbar{height:6px}.avisos-carousel__strip::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:3px}.avisos-carousel__card{scroll-snap-align:start;padding:var(--space-md);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-primary);border-left-width:3px;flex-direction:column;flex:0 0 320px;gap:6px;padding-right:36px;display:flex;position:relative}.avisos-carousel__card--urgent{border-left-color:var(--red);background:var(--red-dim)}.avisos-carousel__dismiss{width:24px;height:24px;font-size:var(--text-md);color:var(--text-tertiary);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-weight:500;line-height:1;display:inline-flex;position:absolute;top:6px;right:6px}.avisos-carousel__dismiss:hover{color:var(--text-primary);background:var(--bg-tertiary)}.avisos-carousel__card-head{flex-direction:column;gap:4px;display:flex}.avisos-carousel__urgent-tag{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;color:var(--red);background:var(--bg-primary);border-radius:var(--radius-sm);align-self:flex-start;padding:2px 6px;font-weight:600;display:inline-block}.avisos-carousel__card-title{font-size:var(--text-sm);color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-weight:600;display:-webkit-box;overflow:hidden}.avisos-carousel__card-excerpt{font-size:var(--text-sm);color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.4;display:-webkit-box;overflow:hidden}.avisos-carousel__card-foot{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary);justify-content:space-between;align-items:center;margin-top:auto;padding-top:6px;display:flex}.avisos-carousel__sender{white-space:nowrap;text-overflow:ellipsis;max-width:60%;overflow:hidden}.avisos-carousel__att{flex-shrink:0}.config-tenant-select{flex-shrink:0;width:260px}.config-tenant-name{color:var(--text-secondary);padding:8px 0;font-size:14px;font-weight:500}.config-tab-content{padding-top:var(--space-lg)}.onboarding-tab{max-width:880px}.section-marker{background:var(--text-primary);width:20px;height:20px;color:var(--text-inverse);font-family:var(--font-mono);letter-spacing:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-right:10px;font-size:10px;font-weight:700;display:inline-flex}.onboarding-divider{margin:var(--space-2xl) 0;background:linear-gradient(90deg, var(--border-secondary) 0%, transparent 100%);border:none;height:1px}.flow-cards{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.flow-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), opacity var(--transition-fast);flex-direction:column;gap:10px;min-height:160px;padding:20px 18px;display:flex;position:relative}.flow-card.flow-active{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.flow-card.flow-active:before{content:"";background:var(--green);border-radius:var(--radius-md) var(--radius-md) 0 0;height:2px;position:absolute;top:0;left:0;right:0}.flow-card-header{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.flow-card-title{color:var(--text-primary);letter-spacing:-.2px;font-size:14px;font-weight:600}.flow-card-desc{color:var(--text-tertiary);flex:1;font-size:12px;line-height:1.55}.flow-card-badge{font-family:var(--font-mono);letter-spacing:.3px;text-transform:uppercase;border-radius:3px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.flow-card-badge.active{background:var(--green-dim);color:var(--green)}.flow-card-badge.inactive{background:var(--bg-tertiary);color:var(--text-tertiary)}.flow-card-csf{border-top:1px solid var(--border-secondary);flex-direction:column;gap:2px;margin-top:auto;padding-top:10px;display:flex}.onboarding-missing-docs{background:var(--amber-dim);color:var(--amber);border-radius:var(--radius-sm);margin-bottom:var(--space-md);border:1px solid rgba(245,158,11,.2);flex-direction:column;gap:6px;padding:12px 16px;font-size:13px;display:flex}.onboarding-missing-docs strong{font-weight:600}.onboarding-missing-docs .doc-key-badge{color:var(--amber);background:rgba(245,158,11,.15)}.onboarding-steps-list{flex-direction:column;gap:12px;display:flex}.onboarding-step-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);transition:background var(--transition-base), border-color var(--transition-base)}.onboarding-step-card:hover{border-color:var(--border-hover)}.onboarding-step-card:first-child{border-left:2px solid var(--green)}.onboarding-step-card.step-disabled{opacity:.55}.step-header{align-items:center;gap:var(--space-md);display:flex}.step-order-controls{flex-direction:column;align-items:center;gap:0;display:flex}.step-order-btn{color:var(--text-tertiary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:2px 4px;font-size:9px;line-height:1}.step-order-btn:hover{color:var(--text-primary)}.step-order-num{font-family:var(--font-mono);color:var(--text-secondary);text-align:center;width:18px;font-size:11px;font-weight:600}.step-toggle{flex-shrink:0}.step-label-input{flex:1;min-width:0;font-weight:500}.step-header-actions{gap:var(--space-xs);flex-shrink:0;display:flex}.step-remove-btn{color:var(--red)!important;border-color:transparent!important}.step-remove-btn:hover{background:var(--red-dim)!important}.step-details{padding-top:var(--space-md);margin-top:var(--space-md);border-top:1px solid var(--border-secondary);gap:var(--space-md);flex-direction:column;display:flex}.step-detail-row{margin-bottom:var(--space-md)}.step-toggles-row{align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.ai-prompt-section{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:14px 16px}.ai-prompt-label{color:var(--purple);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;margin-bottom:8px;font-size:12px;font-weight:600;display:flex}.ai-prompt-label svg{opacity:.8}.ai-prompt-textarea{font-family:var(--font-mono);resize:vertical;background:var(--bg-primary);border-color:var(--border-secondary);min-height:60px;font-size:12px;line-height:1.6}.ai-prompt-textarea::placeholder{color:var(--text-tertiary);font-style:italic}.ai-prompt-hint{color:var(--text-tertiary);margin-top:6px;font-size:10.5px;font-style:italic}.step-docs{gap:var(--space-sm);flex-direction:column;display:flex}.step-docs-header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.step-docs-header .step-docs-title{margin:0}.step-docs-header .form-input{width:auto;padding:4px 10px;font-size:12px}.step-docs-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-xs);font-size:12px;font-weight:600}.step-doc-row{align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;display:flex}.step-doc-label{flex:1;min-width:0}.step-doc-types{font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-tertiary);white-space:nowrap;border-radius:3px;padding:2px 8px;font-size:11px}.step-doc-required-label{font-size:12px}.step-doc-checks{gap:var(--space-sm);flex-direction:column;display:flex}.step-doc-check{padding:var(--space-xs) 0}.csf-info-banner{color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);align-items:flex-start;gap:10px;padding:12px 16px;font-size:12.5px;line-height:1.5;display:flex}.csf-info-banner svg{color:var(--text-tertiary);flex-shrink:0;margin-top:1px}.onboarding-actions{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border-secondary);justify-content:space-between;align-items:center;display:flex}.alert-info{background:var(--bg-tertiary);color:var(--text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md);font-size:13px}@media (width<=768px){.flow-cards{grid-template-columns:1fr}.step-toggles-row{gap:var(--space-md);flex-direction:column}}.stype-selector{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:fit-content;margin-bottom:var(--space-sm);gap:0;padding:3px;display:flex}.stype-pill{border-radius:calc(var(--radius-sm) - 2px);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:1px solid transparent;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:500;display:flex}.stype-pill svg{opacity:.5;transition:opacity var(--transition-fast)}.stype-pill:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.stype-pill:hover svg{opacity:.7}.stype-pill.stype-active{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-primary);box-shadow:var(--shadow-sm)}.stype-pill.stype-active svg{opacity:1}.ffe{border:1px solid var(--border-primary);border-radius:var(--radius-sm);overflow:hidden}.ffe-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.ffe-header-left{color:var(--text-secondary);align-items:center;gap:7px;display:flex}.ffe-header-left svg{opacity:.6}.ffe-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-size:11.5px;font-weight:600}.ffe-add-btn{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:4px;padding:4px 10px;font-size:11.5px;font-weight:500;display:flex}.ffe-add-btn:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-tertiary)}.ffe-list{flex-direction:column;display:flex}.ffe-empty{color:var(--text-tertiary);flex-direction:column;align-items:center;gap:8px;padding:28px 16px;font-size:12.5px;display:flex}.ffe-empty svg{opacity:.3}.ffe-row{border-bottom:1px solid var(--border-primary);gap:0;display:flex}.ffe-row:last-child{border-bottom:none}.ffe-row-num{background:var(--bg-secondary);width:36px;min-width:36px;color:var(--text-tertiary);font-size:11px;font-weight:600;font-family:var(--font-mono);border-right:1px solid var(--border-primary);justify-content:center;align-items:center;display:flex}.ffe-row-body{flex:1;min-width:0;padding:10px 12px}.ffe-row-main{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.ffe-field-group{flex-direction:column;gap:3px;display:flex}.ffe-micro-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);font-size:9.5px;font-weight:600}.ffe-input{height:auto!important;padding:5px 8px!important;font-size:12.5px!important}.ffe-field-key{width:110px;min-width:90px}.ffe-field-label{flex:1;min-width:120px}.ffe-field-type{width:130px;min-width:110px}.ffe-type-wrap{align-items:center;display:flex;position:relative}.ffe-type-icon{color:var(--text-tertiary);pointer-events:none;z-index:1;font-size:11px;font-weight:600;position:absolute;left:8px}.ffe-type-wrap select{padding-left:24px!important}.ffe-row-toggles{align-self:flex-end;gap:4px;padding-bottom:1px;display:flex}.ffe-chip{background:var(--bg-secondary);border:1px solid var(--border-primary);cursor:pointer;transition:all var(--transition-fast);color:var(--text-tertiary);-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:3px;align-items:center;gap:3px;padding:4px 8px;font-size:10.5px;display:flex}.ffe-chip input{display:none}.ffe-chip:has(input:checked){background:var(--green-dim);color:var(--green);border-color:rgba(34,197,94,.25)}.ffe-chip:hover{border-color:var(--border-hover)}.ffe-remove{color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid transparent;border-radius:3px;align-self:flex-end;margin-bottom:1px;padding:5px}.ffe-remove:hover{color:var(--red);background:var(--red-dim);border-color:rgba(239,68,68,.2)}.ffe-options{border-top:1px dashed var(--border-secondary);flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;display:flex}.ffe-options-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);font-size:9.5px;font-weight:600}.ffe-options-tags{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.ffe-opt-tag{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-secondary);border-radius:3px;align-items:center;gap:5px;padding:3px 4px 3px 9px;font-size:11.5px;display:inline-flex}.ffe-opt-rm{color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:2px;padding:1px 3px;font-size:9px;line-height:1}.ffe-opt-rm:hover{color:var(--red);background:var(--red-dim)}.ffe-opt-input{background:var(--bg-primary);border:1px solid var(--border-secondary);width:120px;color:var(--text-primary);transition:border-color var(--transition-fast);border-radius:3px;outline:none;padding:3px 8px;font-size:11.5px}.ffe-opt-input:focus{border-color:var(--border-hover)}.ffe-opt-input::placeholder{color:var(--text-tertiary)}.ffe-opt-add{background:var(--bg-tertiary);border:1px solid var(--border-secondary);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);border-radius:3px;justify-content:center;align-items:center;display:flex}.ffe-opt-add:hover{color:var(--green);background:var(--green-dim);border-color:rgba(34,197,94,.3)}.template-banner{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg);transition:border-color var(--transition-base);position:relative;overflow:hidden}.template-banner:before{content:"";background:linear-gradient(90deg, var(--brand-primary,var(--purple)) 0%, transparent 80%);height:2px;position:absolute;top:0;left:0;right:0}.template-banner:hover{border-color:var(--border-hover)}.template-banner-inner{justify-content:space-between;align-items:center;gap:var(--space-lg);display:flex}.template-banner-info{align-items:center;gap:var(--space-md);flex:1;min-width:0;display:flex}.template-banner-icon{border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-secondary);width:44px;height:44px;color:var(--brand-primary,var(--purple));flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.template-banner-text{flex-direction:column;gap:4px;min-width:0;display:flex}.template-banner-title{font-size:var(--text-base);color:var(--text-primary);letter-spacing:-.2px;font-weight:600}.template-banner-desc{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.4}.template-banner-meta{align-items:center;gap:var(--space-md);flex-shrink:0;display:flex}.template-banner-stat{background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:1px;padding:6px 12px;display:flex}.template-banner-stat-value{font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-primary);font-weight:700}.template-banner-stat-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);font-size:9px;font-weight:600}.template-confirm{text-align:center;padding:var(--space-lg) var(--space-md)}.template-confirm-icon{width:56px;height:56px;color:var(--purple);margin:0 auto var(--space-lg);background:rgba(168,85,247,.1);border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex}.template-confirm-title{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:var(--space-xs);font-weight:600}.template-confirm-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-lg)}.template-confirm-warning{align-items:flex-start;gap:var(--space-sm);background:var(--amber-dim);color:var(--amber);border-radius:var(--radius-sm);text-align:left;margin-bottom:var(--space-lg);border:1px solid rgba(245,158,11,.2);padding:10px 14px;font-size:12px;line-height:1.5;display:flex}.template-confirm-actions{gap:var(--space-sm);justify-content:center;display:flex}@media (width<=640px){.template-banner-inner{flex-direction:column;align-items:stretch}.template-banner-meta{justify-content:flex-start}}.documentos-tab{width:100%}.doc-search-bar{margin-bottom:var(--space-sm)}.doc-search-input{max-width:360px;font-size:13px}.doc-table-wrap{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-primary) transparent;width:100%;overflow-x:auto}.doc-table-wrap::-webkit-scrollbar{height:8px}.doc-table-wrap::-webkit-scrollbar-track{background:0 0}.doc-table-wrap::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}.doc-table-wrap::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.doc-table-wrap .data-table{table-layout:fixed;width:100%;min-width:900px}.doc-table-wrap .data-table td,.doc-table-wrap .data-table th{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.doc-table-wrap .data-table td:nth-child(2){white-space:normal}.doc-table-wrap .data-table th:first-child{width:10%}.doc-table-wrap .data-table th:nth-child(2){width:18%}.doc-table-wrap .data-table th:nth-child(3),.doc-table-wrap .data-table th:nth-child(4),.doc-table-wrap .data-table th:nth-child(5){width:8%}.doc-table-wrap .data-table th:nth-child(6),.doc-table-wrap .data-table th:nth-child(7),.doc-table-wrap .data-table th:nth-child(8),.doc-table-wrap .data-table th:nth-child(9),.doc-table-wrap .data-table th:nth-child(10){width:7%}.doc-table-wrap .data-table th:nth-child(11){width:5%}.doc-table-wrap .data-table th:nth-child(12){width:8%}@media (width<=1280px){.doc-table-wrap .data-table th:nth-child(3),.doc-table-wrap .data-table td:nth-child(3),.doc-table-wrap .data-table th:nth-child(4),.doc-table-wrap .data-table td:nth-child(4),.doc-table-wrap .data-table th:nth-child(9),.doc-table-wrap .data-table td:nth-child(9){display:none}}@media (width<=1024px){.doc-table-wrap .data-table th:nth-child(6),.doc-table-wrap .data-table td:nth-child(6),.doc-table-wrap .data-table th:nth-child(7),.doc-table-wrap .data-table td:nth-child(7){display:none}}.doc-empty-row{text-align:center;color:var(--text-tertiary);padding:var(--space-xl)!important}.doc-key-badge{font-family:var(--font-mono);background:var(--bg-tertiary);color:var(--text-secondary);white-space:nowrap;border-radius:3px;padding:2px 8px;font-size:11px;font-weight:500}.doc-label{font-size:13.5px;font-weight:500}.doc-desc{color:var(--text-tertiary);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;display:-webkit-box;overflow:hidden}.doc-formats{font-family:var(--font-mono);color:var(--text-tertiary);font-size:11px}.doc-actions{gap:var(--space-xs);display:flex}.doc-toolbar{margin-top:var(--space-md);margin-bottom:var(--space-lg);justify-content:flex-end;display:flex}.doc-form-panel{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-lg);margin-top:var(--space-md)}.doc-form-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;display:grid}.doc-form-full{grid-column:1/-1}.doc-renewal-row{gap:var(--space-sm);display:flex}.doc-renewal-num{flex-shrink:0;width:80px}.doc-renewal-unit{flex:1}.doc-inline-form .form-group{margin-bottom:0}.doc-inline-form .form-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-bottom:3px;font-size:10px;font-weight:500}.doc-inline-form .form-input{height:30px;padding:5px 8px;font-size:12.5px}.doc-inline-form select.form-input{height:30px}.doc-form-4col{border-bottom:1px solid var(--border-secondary);grid-template-columns:1fr 1.8fr .8fr .8fr;gap:8px 12px;margin-bottom:10px;padding-bottom:12px;display:grid}.doc-span2{grid-column:span 2}.doc-form-bar{flex-wrap:wrap;align-items:center;gap:8px;padding:7px 0;display:flex}.doc-form-bar+.doc-form-bar{border-top:1px solid var(--border-primary);margin-top:8px;padding-top:10px}.doc-bar-sep{background:var(--border-secondary);flex-shrink:0;width:1px;height:18px;margin:0 2px}.doc-bar-label{font-family:var(--font-mono);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;min-width:52px;font-size:10px;font-weight:500}.doc-toggles-compact{align-items:center;gap:14px;display:flex}.doc-toggles-compact .toggle-row{gap:6px}.doc-toggles-compact .toggle-label{white-space:nowrap;font-size:12px}.doc-industry-select{display:inline-block;position:relative}.doc-industry-trigger{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-fast);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.doc-industry-trigger:hover{border-color:var(--border-hover)}.doc-industry-arrow{color:var(--text-tertiary);font-size:10px}.doc-industry-dropdown{z-index:20;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);min-width:200px;max-height:200px;margin-top:4px;padding:4px;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 4px 12px rgba(0,0,0,.3)}.doc-industry-dropdown::-webkit-scrollbar{width:4px}.doc-industry-dropdown::-webkit-scrollbar-track{background:0 0}.doc-industry-dropdown::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:2px}.doc-industry-option{color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast);border-radius:3px;align-items:center;gap:8px;padding:5px 8px;font-size:12px;display:flex}.doc-industry-option:hover{background:var(--bg-tertiary)}.doc-industry-option input[type=checkbox]{width:14px;height:14px;accent-color:var(--green);cursor:pointer;flex-shrink:0}.doc-signing-inline-label{font-family:var(--font-mono);color:var(--text-tertiary);font-size:11px}.doc-form-actions{justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--border-primary);margin-top:8px;padding-top:10px;display:flex}.branding-tab{max-width:800px}.branding-form{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.branding-full-width{grid-column:1/-1}.color-input-row{align-items:center;gap:var(--space-sm);display:flex}.color-picker{border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;flex-shrink:0;width:36px;height:36px;padding:2px}.color-hex-input{flex:1;min-width:0}.branding-css-textarea{font-family:var(--font-mono);resize:vertical;min-height:80px;font-size:12px}.style-toggle-row{gap:var(--space-xs);display:flex}.style-toggle-btn{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:500;display:inline-flex}.style-toggle-btn:hover{border-color:var(--text-tertiary);color:var(--text-primary)}.style-toggle-btn.active{border-color:var(--brand-primary,var(--text-primary));background:var(--brand-primary-dim,var(--bg-tertiary));color:var(--brand-primary,var(--text-primary));font-weight:600}.style-toggle-icon{flex-shrink:0;display:inline-block}.branding-section-header{padding-top:var(--space-lg);border-top:1px solid var(--border-primary);margin-top:var(--space-sm)}.branding-preview-section{margin-top:var(--space-xl)}.branding-preview-mockup{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--preview-bg,var(--bg-secondary));height:220px;display:flex;overflow:hidden}.preview-sidebar{background:var(--preview-secondary,var(--bg-tertiary));flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:56px;padding:12px 0;display:flex}.preview-sidebar-mark{background:var(--preview-primary,var(--text-primary));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.preview-sidebar-logo{object-fit:contain;border-radius:4px;width:32px;height:32px}.preview-sidebar-items{flex-direction:column;gap:4px;width:100%;padding:0 8px;display:flex}.preview-sidebar-item{background:color-mix(in srgb, var(--preview-secondary,var(--bg-tertiary)) 60%, transparent);border-radius:3px;height:6px}.preview-sidebar-item.active{background:var(--preview-primary,var(--text-primary));opacity:.6}.preview-main{background:var(--preview-bg,var(--bg-secondary));flex-direction:column;flex:1;display:flex}.preview-topbar{background:var(--preview-topbar-bg,var(--bg-primary));border-bottom:1px solid var(--border-primary);flex-shrink:0;height:28px}.preview-content{background:var(--preview-bg,var(--bg-secondary));flex-direction:column;gap:10px;padding:14px;display:flex}.preview-btn{background:var(--preview-primary,var(--text-primary));border-radius:var(--preview-radius,8px);width:80px;height:28px}.preview-link{color:var(--preview-accent,var(--green));font-size:11px;text-decoration:underline}.preview-card{border:1px solid var(--border-primary);border-radius:var(--preview-radius,8px);background:var(--preview-bg-card,var(--bg-card));height:40px}.branding-preview-mockup{--preview-bg-card:color-mix(in srgb, var(--preview-bg,var(--bg-secondary)) 97%, white)}.preview-login-wrapper{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:#f5f5f5;flex-direction:column;height:260px;display:flex;position:relative;overflow:hidden}.preview-login-chrome{background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);flex-shrink:0;align-items:center;gap:4px;height:22px;padding:0 8px;display:flex}.preview-login-chrome-dot{background:var(--text-tertiary);opacity:.5;border-radius:50%;width:6px;height:6px}.preview-login-chrome-url{background:var(--bg-secondary);border-radius:3px;flex:1;height:12px;margin-left:6px}.preview-login-content{flex:1;display:flex}.preview-login-wrapper:not(.has-bg) .preview-login-content{background:#f5f5f5;justify-content:center;align-items:center}.preview-login-wrapper.has-bg .preview-login-content{display:flex}.preview-login-bg-panel{display:none}.preview-login-wrapper.has-bg .preview-login-bg-panel{background:var(--preview-login-bg) center/cover no-repeat;flex:1;display:block}.preview-login-card{flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px;display:flex}.preview-login-wrapper:not(.has-bg) .preview-login-card{border-radius:var(--preview-radius,8px);background:#fff;border:1px solid #e5e5e5;width:55%;box-shadow:0 1px 4px rgba(0,0,0,.04)}.preview-login-wrapper.has-bg .preview-login-card{background:#fff;flex:1}.preview-login-logo{object-fit:contain;max-width:80px;max-height:24px}.preview-login-name{color:#0a0a0a;font-size:11px;font-weight:700}.preview-login-title{color:#666;font-size:9px;font-weight:600}.preview-login-input{border-radius:var(--preview-radius,8px);background:#fafafa;border:1px solid #d4d4d4;width:100%;height:20px}.preview-login-btn{background:var(--preview-primary,#0a0a0a);border-radius:var(--preview-radius,8px);width:100%;height:22px}.preview-login-link{color:var(--preview-primary,#0a0a0a);font-size:8px}.branding-upload-group{flex-direction:column;display:flex}.branding-upload-header{margin-bottom:var(--space-xs);justify-content:space-between;align-items:center;display:flex}.branding-upload-header .form-label{margin-bottom:0}.btn-link.btn-xs{color:var(--text-tertiary);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.btn-link.btn-xs:hover{color:var(--text-secondary)}.branding-dropzone{border:2px dashed var(--border-primary);border-radius:var(--radius-md);cursor:pointer;width:100%;height:100px;transition:border-color var(--transition-fast), background var(--transition-fast);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.branding-dropzone:hover{border-color:var(--text-tertiary);background:var(--bg-tertiary)}.branding-dropzone.uploading{pointer-events:none;opacity:.7}.branding-dropzone-preview{object-fit:contain;border-radius:var(--radius-sm);max-width:100%;max-height:88px}.branding-dropzone-placeholder{align-items:center;gap:var(--space-xs);color:var(--text-tertiary);flex-direction:column;display:flex}.branding-dropzone-icon{font-size:24px;font-weight:300;line-height:1}.branding-dropzone-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.branding-dropzone-overlay{color:var(--text-on-primary,#fff);border-radius:var(--radius-md);background:rgba(0,0,0,.5);justify-content:center;align-items:center;font-size:12px;display:flex;position:absolute;inset:0}.branding-dropzone-hover-overlay{opacity:0;transition:opacity var(--transition-fast)}.branding-dropzone:hover .branding-dropzone-hover-overlay{opacity:1}.branding-actions{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border-secondary);justify-content:flex-end;display:flex}.doc-format-checks{flex-wrap:wrap;gap:10px;display:flex}.doc-format-check{color:var(--text-secondary);cursor:pointer;align-items:center;gap:5px;font-size:13px;display:flex}.doc-format-check input{cursor:pointer}.doc-edit-row td{background:var(--bg-tertiary);padding:0!important}.doc-inline-form{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);margin:4px 6px 8px;padding:14px 16px 12px}.doc-row-active{background:var(--bg-tertiary)}.doc-signing-card{justify-content:space-between;align-items:center;gap:var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:12px 16px;display:flex}.doc-signing-card-info{align-items:center;gap:12px;display:flex}.doc-signing-icon{color:var(--color-success);flex-shrink:0}.doc-signing-card-label{color:var(--text-primary);font-size:13px;font-weight:500;display:block}.doc-signing-card-id{font-size:12px;font-family:var(--font-mono);color:var(--text-tertiary);display:block}.doc-signing-card-actions{flex-shrink:0;gap:8px;display:flex}.doc-signing-upload-box{border:2px dashed var(--border-secondary);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;padding:24px;transition:border-color .2s,background .2s;display:flex}.doc-signing-upload-box:hover{border-color:var(--color-primary);background:var(--bg-tertiary)}.doc-signing-upload-content{color:var(--text-secondary);flex-direction:column;align-items:center;gap:8px;display:flex}.doc-signing-upload-content svg{color:var(--text-tertiary)}.doc-signing-upload-label{color:var(--text-primary);font-size:14px;font-weight:500}.doc-signing-upload-hint{color:var(--text-tertiary);text-align:center;max-width:300px;font-size:12px}.doc-signing-upload-spinner{color:var(--text-secondary);align-items:center;gap:12px;font-size:13px;display:flex}.btn-outline{color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-outline:hover{background:var(--bg-tertiary);border-color:var(--color-primary);color:var(--color-primary)}.btn-outline svg{flex-shrink:0}.modal-xl{border-radius:var(--radius-lg);width:1400px;max-width:96vw;max-height:94vh;overflow:hidden}.modal-xl .modal-header{border-bottom:1px solid var(--border-secondary);background:var(--bg-secondary);padding:16px 24px}.modal-xl .modal-title{font-size:16px;font-weight:600}.modal-xl .modal-close{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:18px;transition:all .15s;display:flex}.modal-xl .modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-xl .modal-body{background:var(--bg-primary);min-height:70vh;max-height:calc(94vh - 110px);padding:0;overflow:auto}.modal-xl .modal-footer{border-top:1px solid var(--border-secondary);background:var(--bg-secondary);justify-content:flex-end;gap:8px;padding:12px 24px;display:flex}.modal-xl docuseal-builder{width:100%;min-height:70vh;display:block}.doc-replace-modal .modal-header{flex-direction:column;align-items:flex-start;position:relative}.doc-replace-modal .modal-header .modal-close{top:var(--space-lg);right:var(--space-lg);position:absolute}.doc-replace-subtitle{color:var(--text-secondary);margin-top:2px;font-size:13px;font-weight:400}.doc-replace-steps{margin-bottom:var(--space-lg);padding:var(--space-sm) 0;justify-content:center;align-items:center;gap:0;display:flex}.step{opacity:.35;transition:opacity var(--transition-base);align-items:center;gap:6px;display:flex}.step.active{opacity:1}.step.done{opacity:.7}.step.done .step-dot{background:var(--green);border-color:var(--green);color:#fff}.step-dot{border:1.5px solid var(--border-primary);width:24px;height:24px;color:var(--text-secondary);transition:all var(--transition-base);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.active .step-dot{border-color:var(--brand-primary,var(--text-primary));color:var(--brand-primary,var(--text-primary));background:var(--brand-primary-dim,rgba(255,255,255,.06))}.step-label{color:var(--text-secondary);white-space:nowrap;font-size:12px;font-weight:500}.active .step-label{color:var(--text-primary)}.step-line{background:var(--border-primary);width:32px;height:1px;margin:0 var(--space-xs);flex-shrink:0}.drop-zone{border:2px dashed var(--border-primary);border-radius:var(--radius-md);padding:var(--space-xl) var(--space-lg);text-align:center;cursor:pointer;transition:all var(--transition-base);background:var(--bg-secondary);position:relative}.drop-zone:hover{border-color:var(--text-tertiary);background:var(--bg-tertiary)}.drop-zone.dragging{border-color:var(--brand-primary,var(--green));background:var(--brand-primary-dim,var(--green-dim));border-style:solid;transform:scale(1.01)}.drop-zone.dragging .drop-zone-icon{color:var(--brand-primary,var(--green));transform:translateY(-4px)}.drop-zone.dragging .drop-zone-text{color:var(--brand-primary,var(--green))}.drop-zone.has-file{border-style:solid;border-color:var(--border-primary);padding:var(--space-md) var(--space-lg);cursor:default}.drop-zone-content{align-items:center;gap:var(--space-xs);cursor:pointer;flex-direction:column;width:100%;display:flex}.drop-zone-icon{color:var(--text-tertiary);margin-bottom:var(--space-xs);transition:all var(--transition-base)}.drop-zone-text{color:var(--text-primary);transition:color var(--transition-base);font-size:14px;font-weight:500}.drop-zone-hint{color:var(--text-secondary);font-size:12.5px}.drop-zone-formats{color:var(--text-tertiary);margin-top:var(--space-xs);font-size:11px;font-family:var(--font-mono);letter-spacing:.3px}.drop-zone-preview{align-items:center;gap:var(--space-md);width:100%;display:flex}.file-badge{border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-primary);width:44px;height:44px;font-size:11px;font-weight:700;font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.5px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.file-info{text-align:left;flex:1;min-width:0}.file-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;display:block;overflow:hidden}.file-size{color:var(--text-tertiary);font-size:12px;font-family:var(--font-mono)}.file-change{color:var(--brand-primary,var(--text-secondary));cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border-primary);transition:all var(--transition-fast);flex-shrink:0;padding:4px 10px;font-size:12.5px;font-weight:500}.file-change:hover{border-color:var(--text-tertiary);color:var(--text-primary)}.doc-replace-progress{padding:var(--space-lg) 0}.progress-bar{background:var(--bg-tertiary);border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-fill{background:var(--brand-primary,var(--green));border-radius:2px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1);animation:1.5s ease-in-out infinite progress-pulse}@keyframes progress-pulse{0%,to{opacity:1}50%{opacity:.6}}.progress-label{align-items:center;gap:var(--space-sm);margin-top:var(--space-sm);color:var(--text-secondary);font-size:13px;display:flex}.doc-replace-result{border-radius:var(--radius-md);padding:var(--space-lg);border:1px solid var(--border-primary);background:var(--bg-secondary)}.doc-replace-result.success{background:var(--green-dim);border-color:rgba(34,197,94,.25)}.doc-replace-result.warning{background:var(--amber-dim);border-color:rgba(245,158,11,.25)}.doc-replace-result.info{border-color:var(--border-primary);background:var(--bg-tertiary)}.result-header{gap:var(--space-md);align-items:flex-start;display:flex}.result-icon{flex-shrink:0;margin-top:2px;font-size:20px;line-height:1}.result-title{color:var(--text-primary);margin:0;font-size:14px;font-weight:600}.result-desc{color:var(--text-secondary);margin:4px 0 0;font-size:13px;line-height:1.5}.result-diffs{margin:var(--space-md) 0 0 0;padding:0;padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,.06);list-style:none}[data-theme=light] .result-diffs{border-top-color:rgba(0,0,0,.08)}.diff-item{align-items:baseline;gap:var(--space-sm);font-size:12.5px;font-family:var(--font-mono);color:var(--text-secondary);word-break:break-word;padding:4px 0;line-height:1.5;display:flex}.diff-arrow{color:var(--amber);flex-shrink:0;font-weight:700}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.repse-page{gap:var(--space-xl,32px);padding-top:var(--space-sm,8px);flex-direction:column;display:flex}.repse-page__section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary,#64748b);margin-bottom:var(--space-sm,10px);font-size:11px;font-weight:700}.repse-page__alerts{margin-top:calc(-1 * var(--space-md,16px))}.repse-page__details{gap:var(--space-lg,24px);grid-template-columns:1.4fr 1fr;display:grid}@media (width<=900px){.repse-page__details{grid-template-columns:1fr}}.repse-services{columns:2;column-gap:var(--space-lg,24px);font-size:var(--text-sm,13px);color:var(--text-primary,#1e293b);margin:0;padding:0;line-height:1.6;list-style:none}@media (width<=700px){.repse-services{columns:1}}.repse-services li{break-inside:avoid;border-bottom:1px dashed var(--border-color,#e2e8f0);padding:6px 0}.repse-services li:last-child{border-bottom:none}.repse-hero{padding:var(--space-xl,36px) var(--space-xl,36px) var(--space-lg,28px);border-radius:var(--radius-lg,12px);border:1px solid var(--border-color,#e2e8f0);background:var(--bg-primary,#fff);gap:var(--space-lg,28px);flex-direction:column;display:flex;position:relative;overflow:hidden}.repse-hero:before{content:"";background:var(--repse-tone,#64748b);width:3px;position:absolute;top:0;bottom:0;left:0}.repse-hero:after{content:"";pointer-events:none;opacity:.35;background-image:radial-gradient(circle at 15% 30%,rgba(0,0,0,.01) 0,transparent 40%),radial-gradient(circle at 85% 80%,rgba(0,0,0,.016) 0,transparent 50%);position:absolute;inset:0}.repse-hero>*{z-index:1;position:relative}.repse-hero--ok{--repse-tone:#16a34a;--repse-tone-soft:rgba(34,197,94,.06);background:linear-gradient(180deg, var(--bg-primary,#fff) 0%, var(--repse-tone-soft) 100%)}.repse-hero--warn{--repse-tone:#d97706;--repse-tone-soft:rgba(245,158,11,.05);background:linear-gradient(180deg, var(--bg-primary,#fff) 0%, var(--repse-tone-soft) 100%)}.repse-hero--danger{--repse-tone:#dc2626;--repse-tone-soft:rgba(239,68,68,.05);background:linear-gradient(180deg, var(--bg-primary,#fff) 0%, var(--repse-tone-soft) 100%)}.repse-hero--neutral{--repse-tone:#64748b;--repse-tone-soft:rgba(100,116,139,.04)}.repse-hero--empty{--repse-tone:#94a3b8;padding:var(--space-xl,48px);text-align:center;max-width:560px;margin:0 auto}.repse-hero__head{justify-content:space-between;align-items:flex-start;gap:var(--space-md,16px);flex-wrap:wrap;display:flex}.repse-hero__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--repse-tone,var(--text-tertiary,#64748b));margin-bottom:6px;font-size:11px;font-weight:700;display:block}.repse-hero__headline{letter-spacing:-.01em;color:var(--text-primary,#1e293b);max-width:32ch;margin:0;font-size:clamp(22px,3vw,28px);font-weight:600;line-height:1.15}.repse-hero__folio{color:var(--text-tertiary,#64748b);margin-top:8px;font-size:12px;display:inline-block}.repse-hero__folio code{font-family:var(--font-mono,ui-monospace, "SF Mono", monospace);letter-spacing:.02em;color:var(--text-secondary,#475569);background:var(--bg-secondary,#f1f5f9);border-radius:4px;padding:1px 6px;font-size:12px}.repse-hero__lede{color:var(--text-secondary,#475569);font-size:var(--text-base,14px);margin:0;line-height:1.5}.repse-hero__metric-row{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.repse-hero__metric{color:var(--repse-tone,var(--text-primary,#1e293b));align-items:baseline;gap:14px;line-height:1;display:flex}.repse-hero__metric--danger{color:var(--repse-tone,#dc2626)}.repse-hero__metric--neutral{color:var(--text-tertiary,#94a3b8)}.repse-hero__metric-num{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-size:clamp(56px,9vw,88px);font-weight:600}.repse-hero__metric-unit{font-size:var(--text-lg,18px);letter-spacing:-.005em;color:var(--text-secondary,#475569);font-weight:500}.repse-hero__metric-caption{letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary,#94a3b8);margin-left:2px;font-size:12px}.repse-hero__footnotes{gap:var(--space-md,16px);padding-top:var(--space-md,20px);border-top:1px solid var(--border-color,#e2e8f0);grid-template-columns:repeat(4,1fr);margin:0;display:grid}@media (width<=800px){.repse-hero__footnotes{grid-template-columns:repeat(2,1fr)}}.repse-hero__footnotes>div{flex-direction:column;gap:3px;display:flex}.repse-hero__footnotes dt{letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary,#94a3b8);font-size:10.5px;font-weight:600}.repse-hero__footnotes dd{font-size:var(--text-sm,13px);color:var(--text-primary,#1e293b);font-variant-numeric:tabular-nums;margin:0}.repse-hero__block-banner{border-radius:var(--radius-sm,6px);color:#991b1b;font-size:var(--text-sm,13px);background:rgba(239,68,68,.08);border-left:3px solid #dc2626;padding:12px 16px;line-height:1.5}.badge{text-transform:uppercase;letter-spacing:.08em;background:var(--bg-tertiary,#f1f5f9);color:var(--text-secondary,#475569);white-space:nowrap;border:1px solid transparent;border-radius:999px;align-items:center;padding:4px 12px;font-size:11px;font-weight:600;line-height:1.3;display:inline-flex}.badge.badge-green{color:#15803d;background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.25)}.badge.badge-red{color:#b91c1c;background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.25)}.badge.badge-amber{color:#b45309;background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.3)}.badge.badge-gray{background:var(--bg-secondary,#f1f5f9);color:var(--text-tertiary,#64748b);border-color:var(--border-color,#e2e8f0)}tr.repse-row--has-overdue>td:first-child{box-shadow:inset 3px 0 #ef4444}tr.repse-row--auto-paused>td:first-child{box-shadow:inset 3px 0 #f59e0b}.btn-sm.repse-resume-btn{color:#b45309;border-color:rgba(245,158,11,.4)}.btn-sm.repse-resume-btn:hover:not(:disabled){background:rgba(245,158,11,.08)}.repse-alerts{margin:0}.repse-alerts-empty{color:var(--text-tertiary,#64748b);font-size:var(--text-sm,13px);margin:0;font-style:italic}.repse-alerts-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.repse-alert{border-radius:var(--radius-sm,6px);font-size:var(--text-sm,13px);background:var(--bg-primary,#fff);border-left:3px solid transparent;border:1px solid var(--border-color,#e2e8f0);padding:10px 14px;line-height:1.5}.repse-alert-info{color:#1e40af;background:rgba(59,130,246,.04);border-left-color:#3b82f6}.repse-alert-warning{color:#92400e;background:rgba(245,158,11,.05);border-left-color:#f59e0b}.repse-alert-error{color:#991b1b;background:rgba(239,68,68,.04);border-left-color:#ef4444}.constancia-card{padding:var(--space-lg,20px);border-radius:var(--radius-md,8px);border:1px solid var(--border-color,#e2e8f0);background:var(--bg-primary,#fff);flex-direction:column;gap:8px;display:flex;position:relative}.constancia-card:before{content:"";background:var(--border-color,#e2e8f0);border-radius:var(--radius-md,8px) 0 0 var(--radius-md,8px);width:3px;position:absolute;top:-1px;bottom:-1px;left:-1px}.constancia-card.constancia-uploaded:before{background:#16a34a}.constancia-card.constancia-missing:before{background:#d97706}.constancia-label{color:var(--text-primary,#1e293b);font-weight:600;font-size:var(--text-sm,13px)}.constancia-filename{font-family:var(--font-mono,monospace);color:var(--text-secondary,#475569);word-break:break-all;font-size:12px}.constancia-hint{color:var(--text-tertiary,#64748b);font-size:12px;line-height:1.5}.table-wrapper{background:var(--bg-primary,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,8px);overflow:hidden}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm,13px)}.data-table thead th{background:var(--bg-secondary,#f8fafc);text-align:left;color:var(--text-tertiary,#64748b);border-bottom:1px solid var(--border-color,#e2e8f0);text-transform:uppercase;letter-spacing:.1em;padding:11px 16px;font-size:10.5px;font-weight:600}.data-table tbody td{border-bottom:1px solid var(--border-color,#e2e8f0);color:var(--text-primary,#1e293b);vertical-align:middle;padding:14px 16px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover{background:var(--bg-secondary,#f8fafc)}.data-table .text-right{text-align:right}.row-actions{justify-content:flex-end;gap:6px;display:inline-flex}.repse-settings{max-width:920px;margin:var(--space-md,20px) auto 100px;gap:var(--space-xl,56px);flex-direction:column;display:flex}.settings-section{gap:var(--space-md,20px);flex-direction:column;display:flex}.settings-section__head{gap:var(--space-md,20px);padding-bottom:var(--space-md,18px);border-bottom:1px solid var(--border-color,#e2e8f0);grid-template-columns:56px 1fr;align-items:baseline;display:grid}.settings-section__num{font-family:var(--font-mono,ui-monospace, monospace);color:var(--text-tertiary,#cbd5e1);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:300}.settings-section__title{letter-spacing:-.015em;color:var(--text-primary,#1e293b);margin:0 0 4px;font-size:20px;font-weight:600;line-height:1.2}.settings-section__lede{color:var(--text-secondary,#64748b);max-width:64ch;margin:0;font-size:13px;line-height:1.6}.settings-grid{gap:var(--space-md,14px);display:grid}.settings-grid--2col{grid-template-columns:1fr 1fr}@media (width<=720px){.settings-grid--2col{grid-template-columns:1fr}}.settings-grid--3col{grid-template-columns:repeat(3,1fr)}@media (width<=900px){.settings-grid--3col{grid-template-columns:1fr 1fr}}@media (width<=600px){.settings-grid--3col{grid-template-columns:1fr}}.settings-note{border-radius:var(--radius-sm,6px);color:var(--text-secondary,#475569);background:rgba(59,130,246,.05);border-left:3px solid #3b82f6;padding:12px 14px;font-size:12.5px;line-height:1.5}.settings-note strong{color:var(--text-primary,#1e293b);font-weight:600}.settings-note--info{color:var(--text-primary,#1e293b);background:linear-gradient(90deg,rgba(34,197,94,.08) 0%,rgba(34,197,94,.02) 100%);border-left-color:#16a34a}.setting-card{gap:var(--space-md,16px);padding:var(--space-md,18px) var(--space-lg,22px);background:var(--bg-primary,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,8px);grid-template-columns:1fr auto;align-items:center;transition:border-color .15s,box-shadow .15s;display:grid}.setting-card:hover{border-color:var(--brand-primary-dim,rgba(46,193,149,.25));box-shadow:0 1px 2px rgba(0,0,0,.03)}.setting-card__title{color:var(--text-primary,#1e293b);letter-spacing:-.005em;margin-bottom:4px;font-size:14px;font-weight:600}.setting-card__desc{color:var(--text-tertiary,#64748b);max-width:54ch;margin:0;font-size:12.5px;line-height:1.5}.setting-card__control{flex-shrink:0;align-items:center;display:flex}.switch{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;position:relative}.switch input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.switch__track{background:var(--bg-tertiary,#e2e8f0);border:1px solid var(--border-color,#cbd5e1);border-radius:999px;width:42px;height:24px;transition:background .18s,border-color .18s;display:inline-block;position:relative}.switch__thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 3px rgba(0,0,0,.15),0 0 0 1px rgba(0,0,0,.04)}.switch input:checked~.switch__track{background:#16a34a;border-color:#15803d}.switch input:checked~.switch__track .switch__thumb{transform:translate(18px)}.switch input:focus-visible~.switch__track{box-shadow:0 0 0 3px rgba(22,163,74,.2)}.stepper{border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-sm,6px);background:var(--bg-primary,#fff);align-items:stretch;transition:border-color .14s;display:inline-flex;overflow:hidden}.stepper:focus-within{border-color:var(--brand-primary,#2ec195);box-shadow:0 0 0 3px var(--brand-primary-dim,rgba(46,193,149,.12))}.stepper__btn{background:var(--bg-secondary,#f8fafc);width:32px;color:var(--text-secondary,#475569);cursor:pointer;border:none;font-size:16px;font-weight:600;transition:background .12s}.stepper__btn:hover:not(:disabled){background:var(--bg-tertiary,#e2e8f0);color:var(--text-primary,#1e293b)}.stepper__btn:disabled{opacity:.35;cursor:not-allowed}.stepper__input{text-align:center;font-variant-numeric:tabular-nums;width:56px;color:var(--text-primary,#1e293b);-moz-appearance:textfield;background:0 0;border:none;margin:0;padding:0;font-size:15px;font-weight:600}.stepper__input:focus{outline:none}.stepper__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper__unit{letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary,#94a3b8);background:var(--bg-secondary,#f8fafc);border-left:1px solid var(--border-color,#e2e8f0);align-items:center;padding:0 12px;font-size:11.5px;font-weight:500;display:inline-flex}.reminder-scale{padding:var(--space-lg,32px) var(--space-lg,24px) var(--space-md,20px);background:var(--bg-primary,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,8px)}.reminder-scale__track{height:60px;margin:0 8px;position:relative}.reminder-scale__track:before{content:"";background:linear-gradient(90deg, var(--border-color,#e2e8f0) 0%, rgba(245,158,11,.5) 70%, rgba(239,68,68,.7) 100%);height:2px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.reminder-mark{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;padding:8px;font-family:inherit;transition:transform .16s;display:flex;position:absolute;top:50%;transform:translate(-50%,-50%)}.reminder-mark:hover{transform:translate(-50%,-50%)scale(1.08)}.reminder-mark__dot{background:var(--bg-primary,#fff);border:2px solid var(--text-tertiary,#cbd5e1);width:16px;height:16px;box-shadow:0 0 0 3px var(--bg-primary,#fff);border-radius:50%;transition:all .16s}.reminder-mark__label{letter-spacing:.04em;color:var(--text-tertiary,#94a3b8);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600;transition:color .16s}.reminder-mark--active .reminder-mark__dot{background:var(--brand-primary,#2ec195);border-color:var(--brand-primary,#2ec195);box-shadow:0 0 0 3px var(--bg-primary,#fff), 0 0 0 6px var(--brand-primary-dim,rgba(46,193,149,.15))}.reminder-mark--active .reminder-mark__label{color:var(--brand-primary,#03624c)}.reminder-scale__axis{letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary,#94a3b8);justify-content:space-between;padding:12px 8px 0;font-size:10.5px;font-weight:600;display:flex}.reminder-scale__axis-end{color:#dc2626}.user-picker{gap:var(--space-md,14px);flex-direction:column;display:flex}.user-picker__chips{border:1px dashed var(--border-color,#e2e8f0);border-radius:var(--radius-md,8px);background:var(--bg-secondary,#f8fafc);flex-wrap:wrap;gap:8px;min-height:40px;padding:8px;display:flex}.user-picker__empty{color:var(--text-tertiary,#94a3b8);padding:8px 12px;font-size:12.5px;font-style:italic}.user-chip{background:var(--bg-primary,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:999px;align-items:center;gap:10px;padding:5px 6px 5px 5px;transition:border-color .14s,transform .14s;display:inline-flex;box-shadow:0 1px 2px rgba(0,0,0,.04)}.user-chip:hover{border-color:var(--brand-primary-dim,rgba(46,193,149,.4))}.user-chip__avatar{background:linear-gradient(135deg, var(--brand-primary,#2ec195) 0%, var(--brand-dark,#03624c) 100%);color:#fff;letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:inline-flex}.user-chip__meta{flex-direction:column;padding-right:2px;line-height:1.2;display:flex}.user-chip__name{color:var(--text-primary,#1e293b);font-size:12.5px;font-weight:600}.user-chip__email{color:var(--text-tertiary,#64748b);font-size:11px;font-family:var(--font-mono,monospace);letter-spacing:-.005em}.user-chip__rm{width:22px;height:22px;color:var(--text-tertiary,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:2px;padding:0;font-size:15px;line-height:1;transition:background .12s,color .12s;display:inline-flex}.user-chip__rm:hover{color:#dc2626;background:rgba(239,68,68,.12)}.user-picker__search{position:relative}.user-picker__input{font-size:13px}.user-picker__dropdown{z-index:20;background:var(--bg-primary,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,8px);max-height:280px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px -8px rgba(0,0,0,.15),0 4px 8px rgba(0,0,0,.05)}.user-picker__no-results{text-align:center;color:var(--text-tertiary,#94a3b8);padding:14px;font-size:12.5px;font-style:italic}.user-picker__option{border-radius:var(--radius-sm,6px);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px 10px;font-family:inherit;transition:background .1s;display:flex}.user-picker__option:hover{background:var(--bg-secondary,#f1f5f9)}.user-picker__option-avatar{color:#fff;background:linear-gradient(135deg,#64748b 0%,#334155 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:11px;font-weight:700;display:inline-flex}.user-picker__option-meta{flex-direction:column;min-width:0;line-height:1.3;display:flex}.user-picker__option-name{color:var(--text-primary,#1e293b);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-picker__option-email{color:var(--text-tertiary,#64748b);font-size:11.5px;font-family:var(--font-mono,monospace);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.settings-savebar{bottom:var(--space-md,16px);z-index:10;justify-content:space-between;align-items:center;gap:var(--space-md,16px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,10px);background:rgba(255,255,255,.95);padding:14px 20px;display:flex;position:sticky;box-shadow:0 8px 24px -6px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.04)}.settings-savebar__hint{color:var(--text-tertiary,#64748b);flex:1;max-width:60ch;font-size:12px;line-height:1.5}.text-muted{color:var(--text-tertiary,#94a3b8)}.font-mono{font-family:var(--font-mono,ui-monospace, "SF Mono", monospace);letter-spacing:.02em;font-size:12px}.repse-page-shell{gap:var(--space-lg,24px);padding-top:var(--space-xs,4px);flex-direction:column;display:flex}.repse-page-shell__bar{justify-content:space-between;align-items:center;gap:var(--space-md,16px);border-bottom:1px solid var(--border-color,#e2e8f0);margin-bottom:calc(-1 * var(--space-sm,8px));padding:6px 2px 14px;display:flex}.repse-page-shell__eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--text-tertiary,#64748b);padding-left:14px;font-size:10.5px;font-weight:700;position:relative}.repse-page-shell__eyebrow:before{content:"";background:var(--text-tertiary,#64748b);width:8px;height:1px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.repse-page-shell__tenant{width:auto;min-width:220px;max-width:320px;font-size:13px;font-weight:500}.repse-dossier{border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-lg,14px);background:var(--bg-primary,#fff);padding:var(--space-xl,36px) var(--space-xl,36px) var(--space-lg,28px);gap:var(--space-lg,24px);flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.03),0 12px 28px -20px rgba(15,23,42,.12)}.repse-dossier:after{content:"";pointer-events:none;background:radial-gradient(circle at center, color-mix(in srgb, var(--brand-primary,#2ec195) 6%, transparent) 0%, transparent 65%);width:340px;height:340px;position:absolute;top:-80px;right:-80px}.repse-dossier>*{z-index:1;position:relative}.repse-dossier__grain{pointer-events:none;z-index:0;opacity:.4;background-image:radial-gradient(circle at 10% 15%, rgba(15,23,42,.016) 0, transparent 35%), radial-gradient(circle at 90% 85%, rgba(15,23,42,.02) 0, transparent 40%), radial-gradient(circle at 50% 50%, var(--brand-primary-dim,rgba(46,193,149,.008)) 0, transparent 50%);position:absolute;inset:0}.repse-dossier__head{gap:var(--space-xl,32px);grid-template-columns:minmax(260px,1fr) auto;align-items:flex-start;display:grid}@media (width<=900px){.repse-dossier__head{grid-template-columns:1fr}}.repse-dossier__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--brand-primary,#2ec195);margin-bottom:10px;font-size:10.5px;font-weight:700;display:inline-block}.repse-dossier__title{letter-spacing:-.022em;color:var(--text-primary,#0f172a);margin:0 0 6px;font-size:clamp(24px,3.2vw,32px);font-weight:600;line-height:1.1}.repse-dossier__lede{max-width:48ch;color:var(--text-secondary,#475569);margin:0;font-size:13.5px;line-height:1.55}.repse-dossier__metrics{gap:var(--space-lg,28px);grid-template-columns:auto repeat(3,minmax(90px,auto));align-items:end;display:grid}@media (width<=900px){.repse-dossier__metrics{gap:var(--space-md,16px);grid-template-columns:repeat(4,1fr)}}@media (width<=560px){.repse-dossier__metrics{grid-template-columns:repeat(2,1fr)}}.repse-dossier__metric{text-align:right;flex-direction:column;gap:6px;display:flex}@media (width<=900px){.repse-dossier__metric{text-align:left}}.repse-dossier__metric--hero{padding-right:var(--space-lg,20px);border-right:1px solid var(--border-color,#e2e8f0)}@media (width<=900px){.repse-dossier__metric--hero{padding-right:0;padding-bottom:var(--space-sm,10px);border-right:none;border-bottom:1px solid var(--border-color,#e2e8f0);grid-column:1/-1}}.repse-dossier__metric--hero .repse-dossier__metric-num{letter-spacing:-.035em;color:var(--text-primary,#0f172a);font-size:clamp(44px,5vw,64px);font-weight:300}.repse-dossier__metric--hero .repse-dossier__metric-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary,#64748b);font-size:11px;font-weight:600}.repse-dossier__metric-num{font-family:var(--font-display,inherit);letter-spacing:-.025em;font-variant-numeric:tabular-nums;color:var(--text-secondary,#475569);font-size:clamp(28px,2.8vw,36px);font-weight:500;line-height:1;display:block}.repse-dossier__metric-num--green{color:#15803d}.repse-dossier__metric-num--amber{color:#b45309}.repse-dossier__metric-num--red{color:#b91c1c}.repse-dossier__metric-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary,#94a3b8);font-size:10.5px;font-weight:600}.repse-dossier__meter{background:var(--bg-secondary,#f1f5f9);border-radius:999px;gap:2px;width:100%;height:6px;display:flex;overflow:hidden}.repse-dossier__meter-seg{height:100%;transition:width .4s cubic-bezier(.22,1,.36,1);display:block}.repse-dossier__meter-seg--ok{background:linear-gradient(90deg,#16a34a 0%,#22c55e 100%)}.repse-dossier__meter-seg--warn{background:linear-gradient(90deg,#d97706 0%,#f59e0b 100%)}.repse-dossier__meter-seg--danger{background:linear-gradient(90deg,#dc2626 0%,#ef4444 100%)}.repse-dossier__alerts{border-radius:var(--radius-md,10px);background:var(--bg-secondary,#f8fafc);border:1px solid var(--border-color,#e2e8f0);padding:12px 16px;transition:background .16s,border-color .16s;position:relative}.repse-dossier__alerts--quiet{color:var(--text-tertiary,#64748b);align-items:center;gap:10px;font-size:12.5px;display:flex}.repse-dossier__alerts--open{background:var(--bg-primary,#fff)}.repse-dossier__alerts-pulse{background:#16a34a;border-radius:50%;width:8px;height:8px;animation:2.4s ease-in-out infinite repse-dossier-pulse;display:inline-block;box-shadow:0 0 rgba(34,197,94,.4)}@keyframes repse-dossier-pulse{0%,to{box-shadow:0 0 rgba(34,197,94,0)}50%{box-shadow:0 0 0 6px rgba(34,197,94,.15)}}.repse-dossier__alerts-toggle{width:100%;font:inherit;color:var(--text-primary,#0f172a);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:0;font-size:13px;font-weight:500;display:flex}.repse-dossier__alerts-count{color:var(--text-primary,#0f172a);font-weight:600}.repse-dossier__alerts-chip{letter-spacing:.02em;background:var(--bg-tertiary,#f1f5f9);color:var(--text-secondary,#475569);border:1px solid var(--border-color,#e2e8f0);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.repse-dossier__alerts-chip--err{color:#991b1b;background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.25)}.repse-dossier__alerts-chip--warn{color:#b45309;background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.3)}.repse-dossier__alerts-caret{color:var(--text-tertiary,#94a3b8);margin-left:auto;font-size:16px;line-height:1}.repse-dossier__alerts-list{border-top:1px solid var(--border-color,#e2e8f0);flex-direction:column;gap:6px;margin:10px 0 0;padding:10px 0 0;list-style:none;display:flex}.repse-dossier__alert{color:var(--text-secondary,#475569);border-left:2px solid transparent;border-radius:3px;padding:8px 12px;font-size:12.5px;line-height:1.5}.repse-dossier__alert--err{color:#991b1b;background:rgba(239,68,68,.04);border-left-color:#dc2626}.repse-dossier__alert--warn{color:#92400e;background:rgba(245,158,11,.05);border-left-color:#f59e0b}.repse-nav{gap:var(--space-lg,28px);border-bottom:1px solid var(--border-color,#e2e8f0);margin-bottom:var(--space-md,16px);scrollbar-width:none;padding:0 2px;display:flex;overflow-x:auto}.repse-nav::-webkit-scrollbar{display:none}.repse-nav__tab{color:var(--text-tertiary,#64748b);font-family:var(--font-display,inherit);letter-spacing:-.005em;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid transparent;align-items:center;gap:8px;margin-bottom:-1px;padding:12px 2px 14px;font-size:14px;font-weight:500;transition:color .14s,border-color .14s;display:inline-flex;position:relative}.repse-nav__tab:hover:not(.active){color:var(--text-primary,#0f172a)}.repse-nav__tab.active{color:var(--text-primary,#0f172a);border-bottom-color:var(--brand-primary,#2ec195);font-weight:600}.repse-nav__label{display:inline-block}.repse-nav__count{background:var(--bg-secondary,#f1f5f9);min-width:22px;height:20px;color:var(--text-tertiary,#64748b);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.repse-nav__tab.active .repse-nav__count{background:color-mix(in srgb, var(--brand-primary,#2ec195) 12%, transparent);color:var(--brand-primary,#03624c)}.repse-nav__pill{background:var(--bg-secondary,#f1f5f9);color:var(--text-tertiary,#94a3b8);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.repse-subnav{background:var(--bg-secondary,#f1f5f9);border:1px solid var(--border-color,#e2e8f0);margin-bottom:var(--space-md,16px);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.repse-subnav__tab{color:var(--text-secondary,#475569);font-family:var(--font-display,inherit);letter-spacing:-.005em;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:7px 18px;font-size:12.5px;font-weight:500;transition:background .14s,color .14s,box-shadow .14s}.repse-subnav__tab:hover:not(.active){color:var(--text-primary,#0f172a)}.repse-subnav__tab.active{background:var(--bg-primary,#fff);color:var(--text-primary,#0f172a);font-weight:600;box-shadow:0 1px 3px rgba(15,23,42,.08)}.repse-filter{justify-content:space-between;align-items:center;gap:var(--space-md,16px);margin-bottom:var(--space-md,16px);flex-wrap:wrap;display:flex}.repse-filter__pills{flex-wrap:wrap;gap:6px;display:inline-flex}.repse-filter__pill{border:1px solid var(--border-color,#e2e8f0);background:var(--bg-primary,#fff);font-family:var(--font-display,inherit);color:var(--text-secondary,#475569);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:500;transition:border-color .14s,background .14s,color .14s,box-shadow .14s,transform .14s}.repse-filter__pill:hover:not(.active){border-color:color-mix(in srgb, var(--brand-primary,#2ec195) 30%, transparent);color:var(--text-primary,#0f172a);transform:translateY(-1px)}.repse-filter__pill.active{background:var(--text-primary,#0f172a);color:var(--bg-primary,#fff);border-color:var(--text-primary,#0f172a);box-shadow:0 2px 6px rgba(15,23,42,.18)}.repse-filter__search{flex:1;min-width:220px;max-width:320px;position:relative}.repse-filter__search-icon{width:14px;height:14px;color:var(--text-tertiary,#94a3b8);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.repse-filter__search-input{border:1px solid var(--border-color,#e2e8f0);background:var(--bg-primary,#fff);width:100%;color:var(--text-primary,#0f172a);border-radius:999px;padding:9px 12px 9px 34px;font-family:inherit;font-size:13px;transition:border-color .14s,box-shadow .14s}.repse-filter__search-input::placeholder{color:var(--text-tertiary,#94a3b8)}.repse-filter__search-input:focus{border-color:var(--brand-primary,#2ec195);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary,#2ec195) 15%, transparent);outline:none}.repse-pills-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.repse-pill{letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.repse-pill--success{color:#15803d;background:#dcfce7}.repse-pill--warning{color:#92400e;background:#fef3c7}.repse-pill--error{color:#b91c1c;background:#fee2e2}.repse-pill--info{color:#1e40af;background:#dbeafe}.repse-pill--neutral{background:var(--bg-tertiary,#e2e8e8);color:var(--text-secondary,#475569)}.repse-obligaciones{width:100%;display:block}.obligaciones-grid{gap:var(--space-lg);flex-direction:column;display:flex}.obligaciones-grid__header{justify-content:space-between;align-items:baseline;gap:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-primary);display:flex}.obligaciones-grid__title{font-size:var(--text-lg);letter-spacing:-.01em;color:var(--text-primary);margin:0;font-weight:500}.obligaciones-grid__title:before{content:"F10 · CICLO FISCAL";font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;color:var(--text-tertiary);margin-bottom:6px;font-weight:500;display:block}.obligaciones-grid__year{align-items:center;gap:var(--space-sm);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-secondary);padding:4px 6px;display:inline-flex}.obligaciones-grid__year button{width:24px;height:24px;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-tertiary);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.obligaciones-grid__year button:hover{color:var(--text-primary);background:var(--bg-tertiary)}.obligaciones-grid__year button:active{transform:translateY(1px)}.obligaciones-grid__year-label{text-align:center;min-width:56px;font-family:var(--font-mono);font-size:var(--text-md);font-feature-settings:"tnum";color:var(--text-primary);letter-spacing:.02em;font-weight:600}.obligaciones-grid__cards{gap:var(--space-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (width<=900px){.obligaciones-grid__cards{grid-template-columns:repeat(3,1fr)}}@media (width<=600px){.obligaciones-grid__cards{grid-template-columns:repeat(2,1fr)}}.obligaciones-card{justify-content:space-between;align-items:flex-start;gap:var(--space-md);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);text-align:left;cursor:pointer;min-height:112px;transition:transform var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;padding:14px 16px 12px;display:flex;position:relative;overflow:hidden}.obligaciones-card:before{content:"";background:var(--border-secondary);width:2px;transition:background var(--transition-fast);position:absolute;inset:0 auto 0 0}.obligaciones-card:after{content:"";border-top:1px solid var(--border-secondary);border-right:1px solid var(--border-secondary);width:6px;height:6px;transition:border-color var(--transition-fast);position:absolute;top:8px;right:8px}.obligaciones-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.obligaciones-card:hover:after{border-color:var(--text-tertiary)}.obligaciones-card:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.obligaciones-card__name{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--text-secondary);font-weight:600}.obligaciones-card__count{font-family:var(--font-mono);letter-spacing:-.02em;font-feature-settings:"tnum";color:var(--text-primary);align-items:baseline;gap:6px;font-size:26px;font-weight:500;line-height:1;display:inline-flex}.obligaciones-card__sub{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;color:var(--text-tertiary);text-transform:uppercase}.obligaciones-card--full:before{background:var(--green)}.obligaciones-card--full .obligaciones-card__count{color:var(--green)}.obligaciones-card--partial:before{background:var(--amber)}.obligaciones-card--partial .obligaciones-card__count{color:var(--text-primary)}.obligaciones-card--none:before{background:var(--border-hover)}.obligaciones-card--none .obligaciones-card__count{color:var(--text-tertiary)}.obligaciones-card--empty{opacity:.72}.obligaciones-card--empty:before{background:var(--border-secondary)}.obligaciones-card--empty .obligaciones-card__count{color:var(--text-tertiary)}.obligaciones-card--empty .obligaciones-card__sub:after{content:" · sin proveedores";text-transform:none}.obligaciones-card--alarm{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.45)}.obligaciones-card--alarm:before{background:var(--red,#ef4444);box-shadow:0 0 8px rgba(239,68,68,.4)}.obligaciones-card--alarm .obligaciones-card__name{color:var(--red,#ef4444)}.obligaciones-card--alarm .obligaciones-card__sub:after{content:" · todos vencidos";text-transform:none;color:var(--red,#ef4444)}.obligaciones-card--alarm .obligaciones-card__overdue-names{color:var(--red,#ef4444)}.obligaciones-card__overdue-names{-webkit-line-clamp:2;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--amber);-webkit-box-orient:vertical;margin-top:4px;line-height:1.3;display:-webkit-box;overflow:hidden}.obligaciones-card--warn{background:rgba(245,158,11,.07);border-color:rgba(245,158,11,.4)}.obligaciones-card--warn:before{background:var(--amber,#f59e0b);box-shadow:0 0 8px rgba(245,158,11,.35)}.obligaciones-card--warn .obligaciones-card__sub:after{content:" · por vencer";text-transform:none;color:var(--amber,#f59e0b)}.obligaciones-card--ok:before{background:var(--green,#22c55e)}.obligaciones-card__count--alarm{font-weight:600;color:var(--red,#ef4444)!important}.obligaciones-card__count--warn{font-weight:600;color:var(--amber,#f59e0b)!important}.obligaciones-card__count--ok{color:var(--green,#22c55e)!important}.obligaciones-card--blocked{cursor:not-allowed;opacity:.55;background-image:repeating-linear-gradient(-45deg, transparent 0, transparent 10px, var(--bg-secondary) 10px, var(--bg-secondary) 11px)}.obligaciones-card--blocked:hover{background:var(--bg-card);border-color:var(--border-primary);box-shadow:none;transform:none}.obligaciones-card--blocked:after{content:"⌧";width:auto;height:auto;font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-tertiary);border:none;font-weight:500;line-height:1;top:6px;right:8px}.obligaciones-card--blocked:hover:after{color:var(--text-tertiary);border-color:transparent}.obligaciones-card--blocked:before{background:var(--border-secondary)!important}.obligaciones-card--blocked .obligaciones-card__count,.obligaciones-card--blocked .obligaciones-card__name,.obligaciones-card--blocked .obligaciones-card__sub{color:var(--text-tertiary)!important}.obligaciones-card--blocked:focus{outline:none}.obligaciones-detail{gap:var(--space-lg);flex-direction:column;min-height:calc(100vh - 200px);display:flex}.obligaciones-detail__header{gap:4px var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-primary);grid-template-rows:auto auto;grid-template-columns:auto 1fr;display:grid}.obligaciones-detail__header>button{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.04em;color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);background:0 0;grid-row:1/span 2;align-self:center;padding:8px 14px}.obligaciones-detail__header>button:hover{color:var(--text-primary);border-color:var(--border-hover)}.obligaciones-detail__title{font-size:var(--text-xl);letter-spacing:-.01em;color:var(--text-primary);font-weight:600;font-family:var(--font-mono);font-feature-settings:"tnum";margin:0}.obligaciones-detail__info{font-size:var(--text-sm);color:var(--text-tertiary)}.obligaciones-detail__info:before{content:"◷ ";font-family:var(--font-mono);color:var(--amber);margin-right:4px}.obligaciones-bimonthly-hint{font-size:var(--text-sm);color:var(--text-secondary);background:var(--amber-dim);border-left:2px solid var(--amber);border-radius:var(--radius-sm);padding:10px 14px;line-height:1.5;display:block}.obligaciones-bimonthly-hint strong{color:var(--text-primary);font-weight:600}.obligaciones-detail__toolbar{gap:var(--space-sm);grid-template-columns:1fr auto auto auto;align-items:center;display:grid}.obligaciones-detail__toolbar input[type=search]{width:100%;min-width:0;font-family:var(--font-base,var(--font-display));font-size:var(--text-base);background:var(--input-bg);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color var(--transition-fast);padding:10px 14px}.obligaciones-detail__toolbar input[type=search]:focus{border-color:var(--text-primary);outline:none}.obligaciones-detail__toolbar input[type=search]::placeholder{color:var(--text-tertiary)}.obligaciones-detail__toolbar>button{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);white-space:nowrap;padding:10px 14px;font-weight:500}.obligaciones-detail__toolbar>button:hover{color:var(--text-primary);border-color:var(--border-hover)}.obligaciones-list{border-top:1px solid var(--border-primary);margin:0;padding:0;list-style:none}.obligaciones-item{align-items:center;gap:var(--space-md);padding:10px var(--space-md);border-bottom:1px solid var(--border-primary);transition:background var(--transition-fast);cursor:default;background:0 0;grid-template-columns:44px minmax(0,1fr) auto;display:grid}.obligaciones-item--clickable{cursor:pointer}.obligaciones-item--clickable:hover{background:var(--bg-secondary)}.obligaciones-item--marked{background:var(--bg-secondary);box-shadow:inset 2px 0 0 0 var(--green)}.obligaciones-item--alarm{box-shadow:inset 3px 0 0 0 var(--red,#ef4444);background:rgba(239,68,68,.05)}.obligaciones-item--warn{box-shadow:inset 3px 0 0 0 var(--amber,#f59e0b);background:rgba(245,158,11,.04)}.obligaciones-item--ok{box-shadow:inset 3px 0 0 0 var(--green,#22c55e)}.obligaciones-item__check{justify-content:center;align-items:center;display:flex}.obligaciones-item__check input[type=checkbox]{appearance:none;border:1.5px solid var(--border-hover);background:var(--bg-card);cursor:pointer;width:18px;height:18px;transition:var(--transition-fast);border-radius:3px;justify-content:center;align-items:center;display:inline-flex}.obligaciones-item__check input[type=checkbox]:hover{border-color:var(--text-secondary)}.obligaciones-item__check input[type=checkbox]:checked{background:var(--green);border-color:var(--green)}.obligaciones-item__check input[type=checkbox]:checked:after{content:"";border-left:2px solid var(--bg-primary);border-bottom:2px solid var(--bg-primary);width:10px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.obligaciones-item__check input[type=checkbox]:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.obligaciones-item__info{flex-direction:column;gap:2px;min-width:0;display:flex}.obligaciones-item__name{font-size:var(--text-base);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.obligaciones-item__rfc{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.04em}.obligaciones-item__meta{align-items:center;gap:var(--space-sm);flex-shrink:0;display:inline-flex}.badge,.repse-status-cancelled,.repse-status-blocked,.repse-status-not_found,.repse-status-pending,.repse-status-expired,.repse-status-active{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:3px;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:500;display:inline-flex}.badge:before,.repse-status-cancelled:before,.repse-status-blocked:before,.repse-status-not_found:before,.repse-status-pending:before,.repse-status-expired:before,.repse-status-active:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.badge--warning{background:var(--amber-dim);color:var(--amber)}.repse-status-active{background:var(--green-dim);color:var(--green)}.repse-status-expired{background:var(--red-dim);color:var(--red)}.repse-status-pending{background:var(--amber-dim);color:var(--amber)}.repse-status-not_found{background:var(--bg-tertiary);color:var(--text-tertiary)}.repse-status-blocked{background:var(--red-dim);color:var(--red)}.repse-status-cancelled{background:var(--bg-tertiary);color:var(--text-tertiary)}.supplier-obligaciones{gap:var(--space-lg);flex-direction:column;display:flex}.supplier-obligaciones__header{padding-bottom:var(--space-md);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:baseline;display:flex}.supplier-obligaciones__title{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:500}.supplier-obligaciones__title:before{content:"CICLO FISCAL";font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;color:var(--text-tertiary);margin-bottom:6px;font-weight:500;display:block}.supplier-obligaciones__section{gap:var(--space-sm);flex-direction:column;display:flex}.supplier-obligaciones__label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;color:var(--text-tertiary);font-weight:600}.supplier-obligaciones__months{grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;display:grid}@media (width<=900px){.supplier-obligaciones__months{grid-template-columns:repeat(6,1fr)}}@media (width<=500px){.supplier-obligaciones__months{grid-template-columns:repeat(4,1fr)}}.supplier-cell{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;min-height:68px;transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;display:flex;position:relative}.supplier-cell:hover:not(:disabled){border-color:var(--border-hover);background:var(--bg-card-hover);transform:translateY(-1px)}.supplier-cell:disabled{cursor:default;opacity:.4}.supplier-cell__name{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-weight:500}.supplier-cell__glyph{font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-tertiary);font-weight:600;line-height:1}.supplier-cell--complete .supplier-cell__glyph{color:var(--green)}.supplier-cell--partial .supplier-cell__glyph{color:var(--amber)}.supplier-cell--overdue .supplier-cell__glyph{color:var(--red)}.supplier-cell--pending .supplier-cell__glyph{color:var(--text-primary)}.supplier-cell--canceled .supplier-cell__glyph{color:var(--text-tertiary)}.supplier-cell--none .supplier-cell__glyph{color:var(--text-tertiary);opacity:.4}.supplier-cell--pending{background:rgba(59,130,246,.06);border-top:2px solid rgba(59,130,246,.55)}.supplier-cell--none{opacity:.5;background:0 0}.supplier-cell--complete{border-top:2px solid var(--green);background:rgba(34,197,94,.08)}.supplier-cell--partial{border-top:2px solid var(--amber);background:rgba(245,158,11,.06)}.supplier-cell--overdue{border-top:2px solid var(--red);background:rgba(239,68,68,.08)}.supplier-cell--selected{box-shadow:0 0 0 1px var(--text-primary);border-color:var(--text-primary)!important}.supplier-obligaciones__bimonths{gap:var(--space-sm);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}@media (width<=900px){.supplier-obligaciones__bimonths{grid-template-columns:repeat(3,1fr)}}@media (width<=500px){.supplier-obligaciones__bimonths{grid-template-columns:repeat(2,1fr)}}.supplier-bicell{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;text-align:left;min-height:72px;transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.supplier-bicell:hover:not(:disabled){border-color:var(--border-hover);background:var(--bg-card-hover);transform:translateY(-1px)}.supplier-bicell:disabled{cursor:default;opacity:.4}.supplier-bicell--complete{border-left:3px solid var(--green);background:rgba(34,197,94,.06)}.supplier-bicell--partial{border-left:3px solid var(--amber);background:rgba(245,158,11,.05)}.supplier-bicell--overdue{border-left:3px solid var(--red);background:rgba(239,68,68,.07)}.supplier-bicell--pending{background:rgba(59,130,246,.05);border-left:3px solid rgba(59,130,246,.55)}.supplier-bicell--selected{box-shadow:0 0 0 1px var(--text-primary);border-color:var(--text-primary)!important}.supplier-bicell__head{justify-content:space-between;align-items:center;display:flex}.supplier-bicell__range{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.04em;color:var(--text-primary);font-weight:600}.supplier-bicell__glyph{font-family:var(--font-mono);font-size:var(--text-md);font-weight:600;line-height:1}.supplier-bicell--complete .supplier-bicell__glyph{color:var(--green)}.supplier-bicell--partial .supplier-bicell__glyph{color:var(--amber)}.supplier-bicell--overdue .supplier-bicell__glyph{color:var(--red)}.supplier-bicell--pending .supplier-bicell__glyph{color:var(--text-secondary)}.supplier-bicell__due{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--text-tertiary)}.supplier-bicell__due.muted{opacity:.4}.supplier-period{gap:var(--space-sm);padding:var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex-direction:column;display:flex}.supplier-period__header{padding-bottom:var(--space-sm);border-bottom:1px dashed var(--border-primary);justify-content:space-between;align-items:baseline;display:flex}.supplier-period__title{font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-primary);margin:0;font-weight:600}.supplier-period__due{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary)}.supplier-period__due:before{content:"◷ ";color:var(--amber);margin-right:2px}.supplier-period__docs{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.supplier-period__docs th{text-align:left;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);border-bottom:1px solid var(--border-primary);padding:8px 10px;font-weight:600}.supplier-period__docs th.center{text-align:center}.supplier-period__docs td{border-bottom:1px solid var(--border-primary);color:var(--text-primary);vertical-align:top;padding:10px}.supplier-period__docs td.center{text-align:center}.supplier-period__docs tr:last-child td{border-bottom:none}.doc-label{display:block}.doc-reject{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--red);margin-top:4px;display:block}.doc-status{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:3px;align-items:center;padding:2px 8px;font-size:10px;font-weight:500;display:inline-flex}.doc-status--pending{background:var(--bg-tertiary);color:var(--text-secondary)}.doc-status--uploaded{background:var(--purple-dim);color:var(--purple)}.doc-status--in_review{background:var(--amber-dim);color:var(--amber)}.doc-status--approved{background:var(--green-dim);color:var(--green)}.doc-status--rejected{background:var(--red-dim);color:var(--red)}.supplier-obligaciones__legend{gap:var(--space-lg);padding-top:var(--space-sm);border-top:1px solid var(--border-primary);font-size:var(--text-xs);color:var(--text-secondary);flex-wrap:wrap;display:flex}.supplier-obligaciones__legend .glyph{text-align:center;width:16px;font-family:var(--font-mono);margin-right:2px;font-weight:600;display:inline-block}.supplier-obligaciones__legend .glyph--complete{color:var(--green)}.supplier-obligaciones__legend .glyph--partial{color:var(--amber)}.supplier-obligaciones__legend .glyph--overdue{color:var(--red)}.supplier-obligaciones__legend .glyph--pending{color:var(--text-secondary)}.supplier-obligaciones__legend .glyph--none{color:var(--text-tertiary)}.obligaciones-detail__footer{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) 0;background:var(--bg-primary);border-top:1px solid var(--border-primary);box-shadow:0 -8px 16px -8px var(--bg-primary);margin-top:auto;display:flex;position:sticky;bottom:0}.obligaciones-detail__footer .btn-primary,.obligaciones-detail__footer .btn-secondary{min-width:120px;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:600}.obl-period{gap:var(--space-lg);padding-top:var(--space-md);flex-direction:column;display:flex}.obl-period__topbar{justify-content:space-between;align-items:center;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-primary);display:flex}.obl-period__back{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:6px 10px;text-decoration:none;display:inline-flex}.obl-period__back:hover{color:var(--text-primary);border-color:var(--border-hover)}.obl-period__heading{flex-direction:column;gap:2px;display:flex}.obl-period__eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary)}.obl-period__title{font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:-.01em;color:var(--text-primary);font-feature-settings:"tnum";margin:0;font-weight:600}.obl-period__meta{align-items:center;gap:var(--space-md);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary);display:flex}.obl-period__companion-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin:var(--space-lg) 0 var(--space-sm) 0;padding-top:var(--space-md);border-top:1px dashed var(--border-primary);display:flex}.obl-period__companion-header>div{flex-direction:column;gap:2px;display:flex}.obl-period__due:before{content:"◷ ";color:var(--amber);margin-right:2px}.obl-period-status{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:5px;padding:3px 8px;font-weight:500;display:inline-flex}.obl-period-status:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.obl-period-status--complete{background:var(--green-dim);color:var(--green)}.obl-period-status--partial{background:var(--amber-dim);color:var(--amber)}.obl-period-status--overdue{background:var(--red-dim);color:var(--red)}.obl-period-status--pending{background:var(--bg-tertiary);color:var(--text-secondary)}.obl-docs-legend{gap:var(--space-md);padding:8px var(--space-md);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr 200px 180px;display:grid}.obl-doc-row{gap:var(--space-md);padding:var(--space-md);background:var(--bg-card);border:1px solid var(--border-primary);border-left:2px solid var(--border-secondary);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), background var(--transition-fast);grid-template-columns:1fr 200px 180px;align-items:start;display:grid;position:relative}.obl-doc-row+.obl-doc-row{margin-top:var(--space-sm)}.obl-doc-row:after{content:"";border-top:1px solid var(--border-secondary);border-right:1px solid var(--border-secondary);pointer-events:none;width:6px;height:6px;position:absolute;top:8px;right:8px}.obl-doc-row:hover{background:var(--bg-card-hover)}.obl-doc-row--pending{border-left-color:var(--border-hover)}.obl-doc-row--uploaded,.obl-doc-row--in-review{border-left-color:var(--amber)}.obl-doc-row--approved{border-left-color:var(--green)}.obl-doc-row--rejected{border-left-color:var(--red)}.obl-doc-row--approved .obl-doc-row__dropzone{opacity:.55;pointer-events:none}.obl-doc-row__label{flex-direction:column;gap:6px;min-width:0;display:flex}.obl-doc-row__title{font-size:var(--text-base);color:var(--text-primary);letter-spacing:-.01em;font-weight:500}.obl-doc-row__desc{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.4}.obl-doc-row__require-note{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);align-items:center;gap:4px;display:inline-flex}.obl-doc-row__require-note:before{content:"⤓";font-family:var(--font-mono);color:var(--text-secondary)}.obl-doc-row__dropzone{gap:var(--space-sm);flex-direction:column;display:flex}.obl-doc-row--multi-format .obl-doc-row__dropzone{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.obl-dropzone{min-height:78px;padding:var(--space-sm);background:var(--input-bg);border:1px dashed var(--border-hover);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:relative}.obl-dropzone:hover,.obl-dropzone.is-dragging{border-color:var(--text-primary);background:var(--bg-card)}.obl-dropzone__icon{font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-tertiary);line-height:1}.obl-dropzone__label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.obl-dropzone__format{font-family:var(--font-mono);letter-spacing:.12em;color:var(--text-tertiary);text-transform:uppercase;font-size:9.5px}.obl-file-slot{align-items:center;gap:var(--space-sm);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);transition:border-color var(--transition-fast);grid-template-columns:auto 1fr auto;padding:10px 12px;display:grid;position:relative}.obl-file-slot:hover{border-color:var(--border-hover)}.obl-file-slot__badge{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--bg-card);border:1px solid var(--border-primary);color:var(--text-secondary);border-radius:3px;padding:2px 6px;font-size:9.5px;font-weight:600}.obl-file-slot__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.obl-file-slot__name{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-feature-settings:"tnum";overflow:hidden}.obl-file-slot__size{font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.04em;font-feature-settings:"tnum";font-size:10px}.obl-file-slot__action{width:26px;height:26px;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);background:0 0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.obl-file-slot__action:hover{color:var(--text-primary);border-color:var(--border-hover)}.obl-file-slot__action:disabled{opacity:.35;cursor:default}.obl-doc-row__hint{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--amber);grid-column:1/-1;padding-top:4px}.obl-doc-row__aside{gap:var(--space-sm);flex-direction:column;align-items:flex-end;display:flex}.obl-status{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:3px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.obl-status:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.obl-status--pending{background:var(--bg-tertiary);color:var(--text-secondary)}.obl-status--uploaded,.obl-status--in-review{background:var(--amber-dim);color:var(--amber)}.obl-status--approved{background:var(--green-dim);color:var(--green)}.obl-status--rejected{background:var(--red-dim);color:var(--red)}.obl-review-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.obl-btn{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);padding:6px 10px;font-weight:600}.obl-btn:hover{color:var(--text-primary);border-color:var(--border-hover)}.obl-btn:disabled{opacity:.4;cursor:default}.obl-btn--approve{border-color:var(--green);color:var(--green);background:var(--green-dim)}.obl-btn--approve:hover{color:var(--text-primary);background:var(--green);border-color:var(--green)}.obl-btn--reject{border-color:var(--red);color:var(--red);background:0 0}.obl-btn--reject:hover{color:var(--text-primary);background:var(--red);border-color:var(--red)}.obl-btn--revert{border-color:var(--border-primary);color:var(--text-tertiary);padding:4px 8px;font-size:9.5px}.obl-btn--revert:hover{color:var(--text-primary);border-color:var(--border-hover)}.obl-review-meta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.04em;text-align:right}.obl-review-meta strong{color:var(--text-secondary);font-weight:500}.obl-reject-reason{font-size:var(--text-xs);color:var(--red);background:var(--red-dim);border-left:2px solid var(--red);border-radius:0 var(--radius-sm) var(--radius-sm) 0;grid-column:1/-1;align-items:flex-start;gap:8px;margin-top:4px;padding:10px 12px;font-style:italic;display:flex}.obl-reject-reason:before{content:"✗";font-family:var(--font-mono);color:var(--red);flex-shrink:0;font-style:normal;font-weight:600}.obl-reject-composer{margin-top:var(--space-sm);padding:var(--space-md);background:var(--bg-secondary);border:1px solid var(--red);border-left:2px solid var(--red);border-radius:var(--radius-sm);gap:var(--space-sm);flex-direction:column;grid-column:1/-1;animation:.18s cubic-bezier(.4,0,.2,1) obl-compose-in;display:flex}.obl-reject-composer__label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--red);font-weight:600}.obl-reject-composer__textarea{width:100%;min-height:72px;font-family:var(--font-display);font-size:var(--text-sm);background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);resize:vertical;padding:10px 12px;line-height:1.5}.obl-reject-composer__textarea:focus{border-color:var(--red);outline:none}.obl-reject-composer__textarea::placeholder{color:var(--text-tertiary)}.obl-reject-composer__actions{justify-content:flex-end;gap:6px;display:flex}@keyframes obl-compose-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.obl-save-pill{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--green);background:var(--bg-card);border:1px solid var(--green);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);z-index:300;align-items:center;gap:8px;padding:10px 14px;font-weight:500;animation:.2s cubic-bezier(.4,0,.2,1) obl-pill-in;display:inline-flex;position:fixed;bottom:28px;right:28px}.obl-save-pill:before{content:"✓";font-weight:700}.obl-save-pill__dismiss{color:var(--text-tertiary);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-sm);background:0 0;border:none;margin-left:4px;padding:2px 6px}.obl-save-pill__dismiss:hover{color:var(--text-primary)}@keyframes obl-pill-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.obl-doc-row,.obl-docs-legend{grid-template-columns:1fr}.obl-docs-legend{display:none}.obl-doc-row__aside{align-items:flex-start}.obl-doc-row--multi-format .obl-doc-row__dropzone{grid-template-columns:1fr}}@keyframes oblPeriodReveal{0%{opacity:0;clip-path:inset(0 0 100%);transform:translateY(-6px)}to{opacity:1;clip-path:none;transform:none}}@keyframes oblDocRowReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes oblAnalyzedPulse{0%{box-shadow:0 0 rgba(34,197,94,.45)}60%{box-shadow:0 0 0 14px rgba(34,197,94,0)}to{box-shadow:0 0 rgba(34,197,94,0)}}@keyframes oblAnalyzedSweep{0%{transform:translate(-140%)}to{transform:translate(140%)}}@keyframes oblRefreshFade{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes oblFieldsSlideDown{0%{opacity:0;max-height:0;transform:translateY(-4px)}to{opacity:1;max-height:520px;transform:translateY(0)}}@keyframes oblSelectionRing{0%{box-shadow:0 0 0 0 var(--text-primary)}to{box-shadow:0 0 0 1px var(--text-primary)}}@keyframes oblDropzoneDrag{0%,to{border-color:var(--text-primary);background:var(--bg-card)}50%{border-color:var(--green);background:rgba(34,197,94,.05)}}.obl-period{transform-origin:top;animation:.36s cubic-bezier(.2,.8,.2,1) both oblPeriodReveal}.obl-period .obl-doc-row{animation:.28s cubic-bezier(.2,.8,.2,1) both oblDocRowReveal}.obl-period .obl-doc-row:first-child{animation-delay:80ms}.obl-period .obl-doc-row:nth-child(2){animation-delay:.13s}.obl-period .obl-doc-row:nth-child(3){animation-delay:.18s}.obl-period .obl-doc-row:nth-child(4){animation-delay:.23s}.obl-period .obl-doc-row:nth-child(5){animation-delay:.28s}.obl-period .obl-doc-row:nth-child(6){animation-delay:.32s}.obl-period .obl-doc-row:nth-child(7){animation-delay:.36s}.obl-period .obl-doc-row:nth-child(n+8){animation-delay:.4s}.badge-analyzed{width:fit-content;max-width:max-content;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--green-dim);color:var(--green);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);border:1px solid transparent;border-radius:3px;flex-shrink:0;place-self:flex-start start;align-items:center;margin-top:2px;margin-left:0;padding:2px 8px;font-size:10px;font-weight:600;animation:1.6s cubic-bezier(.2,.8,.2,1) both oblAnalyzedPulse;display:inline-flex;position:relative;overflow:hidden}.badge-analyzed:after{content:"";pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.35) 50%,transparent 100%);animation:.9s cubic-bezier(.4,0,.2,1) .16s both oblAnalyzedSweep;position:absolute;inset:0}.badge-analyzed:hover{transform:translateY(-1px)}.badge-analyzed:active{transform:translateY(0)}.obl-row-busy{margin-top:var(--space-sm);background:linear-gradient(90deg, var(--bg-secondary) 0%, var(--bg-card-hover) 50%, var(--bg-secondary) 100%);border:1px dashed var(--border-hover);border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-secondary);text-transform:none;background-size:200% 100%;grid-column:1/-1;justify-content:center;align-items:center;gap:10px;padding:10px 14px;font-size:12px;animation:1.6s linear infinite oblRowBusyShimmer;display:flex}.obl-row-busy__spinner{border:2px solid var(--border-primary);border-top-color:var(--text-primary);border-radius:50%;width:14px;height:14px;animation:.72s linear infinite spin;display:inline-block}.obl-row-busy__text{font-weight:500}@keyframes oblRowBusyShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.badge-analyzed__text{display:inline-block}.badge-analyzed__chevron{opacity:.75;transition:transform .2s cubic-bezier(.2, .8, .2, 1), opacity var(--transition-fast);margin-left:4px;font-size:9px;line-height:1;display:inline-block;transform:rotate(0)}.badge-analyzed.is-expanded .badge-analyzed__chevron{opacity:1;transform:rotate(180deg)}.badge-analyzed:hover .badge-analyzed__chevron{opacity:1}.obl-refresh-indicator{animation:.22s cubic-bezier(.4,0,.2,1) both oblRefreshFade}.obl-refresh-indicator .spinner-sm{border:1.5px solid var(--border-primary);border-top-color:var(--text-primary);border-radius:50%;width:10px;height:10px;animation:.72s linear infinite spin;display:inline-block}.obl-doc-row__label .kv-grid{will-change:max-height, opacity, transform;animation:.32s cubic-bezier(.2,.8,.2,1) both oblFieldsSlideDown;overflow:hidden}.obl-doc-row__label .kv-grid dt,.obl-doc-row__label .kv-grid dd{animation:.24s cubic-bezier(.4,0,.2,1) both oblRefreshFade}.obl-doc-row__label .kv-grid dt:first-of-type,.obl-doc-row__label .kv-grid dd:first-of-type{animation-delay:.12s}.obl-doc-row__label .kv-grid dt:nth-of-type(2),.obl-doc-row__label .kv-grid dd:nth-of-type(2){animation-delay:.16s}.obl-doc-row__label .kv-grid dt:nth-of-type(3),.obl-doc-row__label .kv-grid dd:nth-of-type(3){animation-delay:.2s}.obl-doc-row__label .kv-grid dt:nth-of-type(4),.obl-doc-row__label .kv-grid dd:nth-of-type(4){animation-delay:.24s}.obl-doc-row__label .kv-grid dt:nth-of-type(n+5),.obl-doc-row__label .kv-grid dd:nth-of-type(n+5){animation-delay:.28s}.supplier-cell--selected{animation:.2s cubic-bezier(.4,0,.2,1) both oblSelectionRing;position:relative}.supplier-cell--selected:after{content:"";border:1px dashed var(--text-primary);border-radius:var(--radius-sm);opacity:.4;pointer-events:none;animation:.22s cubic-bezier(.4,0,.2,1) both oblRefreshFade;position:absolute;inset:-3px}.obl-dropzone.is-dragging{animation:1.2s ease-in-out infinite oblDropzoneDrag}.obl-doc-row:hover{transition:border-left-width var(--transition-fast);border-left-width:3px}.obl-file-slot__action svg{width:14px;height:14px}.obl-file-slot__action--active{color:var(--text-primary)!important;border-color:var(--text-primary)!important;background:var(--bg-card)!important}.obl-file-slot__action--disabled{opacity:.5;pointer-events:none;cursor:default!important}.obl-dropzone--uploading{opacity:.7;pointer-events:none;cursor:default}.obl-preview-inline{width:100%;margin-top:var(--space-md);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-soft,0 2px 8px rgba(0,0,0,.04));transform-origin:top;grid-column:1/-1;animation:.26s cubic-bezier(.2,.8,.2,1) both oblPreviewInlineIn;overflow:hidden}@keyframes oblPreviewInlineIn{0%{opacity:0;max-height:0;transform:translateY(-6px)scaleY(.985)}to{opacity:1;max-height:95vh;transform:translateY(0)scaleY(1)}}.obl-preview-inline__header{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-primary);background:var(--bg-secondary);display:flex}.obl-preview-inline__meta{align-items:baseline;gap:var(--space-sm);flex:1;min-width:0;display:flex}.obl-preview-inline__badge{border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-card);flex-shrink:0;padding:2px 8px;font-size:10px;display:inline-block}.obl-preview-inline__filename{font-size:var(--text-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.obl-preview-inline__size{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-tertiary);flex-shrink:0;font-size:10px}.obl-preview-inline__close{border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);transition:color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.obl-preview-inline__close:hover{color:var(--text-primary);border-color:var(--text-primary);transform:rotate(90deg)}.obl-preview-inline__body{background:var(--bg-secondary);min-height:85vh;max-height:92vh;display:flex}.obl-preview-inline__iframe{background:var(--bg-secondary);border:none;width:100%;min-height:85vh;max-height:92vh;display:block}.obl-preview-inline__img{object-fit:contain;max-width:100%;max-height:92vh;margin:auto;display:block}.obl-preview-inline__fallback{padding:var(--space-xl);text-align:center;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);margin:auto}.obl-preview-inline__fallback a{color:var(--text-primary);text-decoration:underline}.obl-file-slot:hover .obl-file-slot__badge{border-color:var(--border-hover);transition:transform var(--transition-fast), border-color var(--transition-fast);transform:translate(-1px)}@media (prefers-reduced-motion:reduce){.obl-period,.obl-period .obl-doc-row,.badge-analyzed,.badge-analyzed:after,.obl-refresh-indicator,.obl-doc-row__label .kv-grid,.obl-doc-row__label .kv-grid dt,.obl-doc-row__label .kv-grid dd,.supplier-cell--selected,.supplier-cell--selected:after,.obl-dropzone.is-dragging{animation:none!important}}.sat-results-panel{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px dashed var(--border-primary);animation:.28s cubic-bezier(.2,.8,.2,1) both satPanelIn}.obl-doc-row>.sat-results-panel{grid-column:1/-1}@keyframes satPanelIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.sat-results-panel__head{justify-content:space-between;align-items:flex-end;gap:var(--space-md);flex-wrap:wrap;margin-bottom:8px;display:flex}.sat-results-panel__title{flex-direction:column;gap:2px;min-width:0;display:flex}.sat-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);font-size:10px;font-weight:600}.sat-meta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-tertiary);font-size:10px}.sat-meta:before{content:"⌐ ";opacity:.55}.sat-tally{align-items:center;gap:6px;display:inline-flex}.sat-tally__chip{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-secondary);font-family:var(--font-mono);letter-spacing:.04em;text-transform:lowercase;color:var(--text-secondary);font-feature-settings:"tnum";align-items:baseline;gap:6px;padding:3px 8px;font-size:10px;display:inline-flex}.sat-tally__chip b{color:var(--text-primary);font-size:12px;font-weight:700}.sat-tally__chip i{color:var(--text-tertiary);font-style:normal}.sat-tally__chip--vigente b{color:var(--green)}.sat-tally__chip--vigente{border-color:rgba(34,197,94,.35)}.sat-tally__chip--no-encontrado b{color:var(--amber)}.sat-tally__chip--no-encontrado{border-color:rgba(245,158,11,.45)}.sat-tally__chip--desconocido{border-color:var(--border-hover)}.sat-tally__chip--cancelado b{color:var(--red)}.sat-tally__chip--cancelado{border-color:rgba(239,68,68,.5);animation:1.8s ease-in-out infinite satTallyAttention}@keyframes satTallyAttention{0%,to{box-shadow:0 0 rgba(239,68,68,0)}50%{box-shadow:0 0 0 3px rgba(239,68,68,.1)}}.sat-results-panel__scroll{scrollbar-width:thin;border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);max-height:420px;overflow-y:auto}.sat-results-table{border-collapse:separate;border-spacing:0;font-feature-settings:"tnum";width:100%}.sat-results-table thead{z-index:1;background:var(--bg-secondary);position:sticky;top:0}.sat-results-table thead th{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-tertiary);text-align:left;border-bottom:1px solid var(--border-primary);white-space:nowrap;padding:8px 10px;font-size:9px;font-weight:600}.sat-results-table thead th+th{box-shadow:inset 1px 0 0 var(--border-primary)}.sat-results-table td{vertical-align:middle;color:var(--text-primary);padding:8px 10px;font-size:12px}.sat-results-table tbody tr{transition:background var(--transition-fast);animation:.22s ease-out both satRowIn;animation-delay:calc(var(--i,0) * 18ms);position:relative}.sat-results-table tbody tr>td{border-bottom:1px solid var(--border-primary)}.sat-results-table tbody tr:last-child>td{border-bottom:none}.sat-results-table tbody tr:hover{background:var(--bg-card-hover)}.sat-results-table tbody tr:nth-child(n+12){animation-delay:.22s}.sat-th-right{text-align:right}@keyframes satRowIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.sat-c-empleado{letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;max-width:320px;font-weight:500;overflow:hidden}.sat-c-nss{font-family:var(--font-mono);font-feature-settings:"tnum";letter-spacing:.04em;color:var(--text-secondary);white-space:nowrap;font-size:11px}.sat-c-uuid{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-tertiary);white-space:nowrap;font-size:11px}.sat-c-uuid code{background:var(--bg-secondary);cursor:help;transition:border-color var(--transition-fast), background var(--transition-fast);border:1px solid transparent;border-radius:3px;align-items:center;padding:2px 6px;display:inline-flex}.sat-c-uuid code:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.sat-uuid-head{color:var(--text-secondary);font-weight:600}.sat-uuid-tail{color:var(--text-tertiary);margin-left:1px}.sat-c-estado{text-align:right;white-space:nowrap;width:1%}.sat-stamp{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:3px 8px 3px 6px;font-size:10px;font-weight:600;display:inline-flex}.sat-stamp__dot{width:6px;height:6px;box-shadow:0 0 0 2px var(--bg-card);opacity:.9;background:currentColor;border-radius:50%}.sat-stamp--vigente{color:var(--green);background:linear-gradient(180deg, var(--bg-card) 0%, rgba(34,197,94,.07) 100%);border-color:rgba(34,197,94,.35)}.sat-stamp--cancelado{color:var(--red);background:linear-gradient(180deg, var(--bg-card) 0%, rgba(239,68,68,.1) 100%);border-color:rgba(239,68,68,.5);font-weight:700}.sat-stamp--no-encontrado{color:var(--amber);background:linear-gradient(180deg, var(--bg-card) 0%, rgba(245,158,11,.09) 100%);border-color:rgba(245,158,11,.45)}.sat-stamp--desconocido{color:var(--text-tertiary)}.sat-row--cancelado>td:first-child{box-shadow:inset 2px 0 0 var(--red)}.sat-row--no-encontrado>td:first-child{box-shadow:inset 2px 0 0 var(--amber)}.sat-row--desconocido>td:first-child{box-shadow:inset 2px 0 0 var(--text-tertiary)}.sat-empty{font-family:var(--font-mono);color:var(--text-tertiary);opacity:.5;letter-spacing:.1em;display:inline-block}@media (prefers-reduced-motion:reduce){.sat-results-panel,.sat-results-table tbody tr,.sat-tally__chip--cancelado{animation:none!important}}.period-summary{margin-top:var(--space-xl);padding:var(--space-lg);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary)}.period-summary__head{justify-content:space-between;align-items:flex-end;gap:var(--space-md);margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-primary);display:flex}.period-summary__eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;color:var(--text-tertiary);margin-bottom:4px;font-weight:500;display:block}.period-summary__title{font-size:var(--text-lg);letter-spacing:-.01em;color:var(--text-primary);margin:0;font-weight:500}.period-summary__reevaluate{align-self:flex-end}.period-summary__reevaluate[disabled]{opacity:.6;cursor:progress}.period-summary__placeholder,.period-summary__error{padding:var(--space-md);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-tertiary);text-align:center;border:1px dashed var(--border-primary);border-radius:var(--radius-sm)}.period-summary__error{color:var(--red);border-color:var(--red-dim)}.period-summary__banner{padding:var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md);border-left:3px solid;flex-direction:column;gap:6px;display:flex}.period-summary__banner--ok{background:var(--green-dim);color:var(--green)}.period-summary__banner--warn{background:var(--amber-dim);color:var(--amber)}.period-summary__banner--reject{background:var(--red-dim);color:var(--red)}.period-summary__banner--idle{background:var(--bg-tertiary);color:var(--text-secondary)}.period-summary__banner-title{font-size:var(--text-md);letter-spacing:-.005em;font-weight:600}.period-summary__banner-msg{font-size:var(--text-sm);color:var(--text-primary);opacity:.85}.period-summary__counts{gap:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;flex-wrap:wrap;margin-top:4px;display:flex}.period-summary__count{border-radius:var(--radius-sm);background:var(--bg-primary);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.period-summary__count--pass{color:var(--green)}.period-summary__count--warn{color:var(--amber)}.period-summary__count--fail{color:var(--red)}.period-summary__list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.period-summary__item{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-primary);border-left-width:3px;display:flex}.period-summary__item--pass{border-left-color:var(--green)}.period-summary__item--inconclusive{border-left-color:var(--amber)}.period-summary__item--fail{border-left-color:var(--red)}.period-summary__item-icon{width:22px;height:22px;font-family:var(--font-mono);font-size:var(--text-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.period-summary__item-icon--pass{background:var(--green-dim);color:var(--green)}.period-summary__item-icon--inconclusive{background:var(--amber-dim);color:var(--amber)}.period-summary__item-icon--fail{background:var(--red-dim);color:var(--red)}.period-summary__item-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.period-summary__item-name{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.period-summary__item-detail{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.45}.period-summary__item-docs{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.02em}.payroll-page{gap:var(--space-xl);flex-direction:column;width:100%;display:flex}.payroll-page__header{align-items:end;gap:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-primary);grid-template-columns:1fr auto;display:grid;position:relative}.payroll-page__header:before,.payroll-page__header:after{content:"";border-style:solid;border-color:var(--text-tertiary);opacity:.5;width:10px;height:10px;position:absolute}.payroll-page__header:before{border-width:1px 0 0 1px;top:0;left:-2px}.payroll-page__header:after{border-width:0 1px 1px 0;bottom:-1px;right:-2px}.payroll-page__header-text{flex-direction:column;gap:6px;display:flex}.payroll-admin__chain{align-items:stretch;gap:var(--space-sm);padding:var(--space-md) 0;flex-wrap:wrap;margin-top:-8px;display:flex}.payroll-admin__chip{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);min-width:240px;max-width:360px;transition:border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;flex:1;gap:4px;padding:10px 14px 8px;display:flex;position:relative}.payroll-admin__chip:before{content:"";border-top:1px solid var(--text-tertiary);border-left:1px solid var(--text-tertiary);opacity:.5;width:8px;height:8px;position:absolute;top:0;left:0}.payroll-admin__chip:hover:not(.is-disabled){border-color:var(--border-hover);background:var(--bg-card-hover)}.payroll-admin__chip.is-disabled{opacity:.55;cursor:not-allowed}.payroll-admin__chip:focus-within:not(.is-disabled){border-color:var(--text-primary);background:var(--bg-card-hover)}.payroll-admin__chip:focus-within:not(.is-disabled):before{opacity:1}.payroll-admin__chip-tag{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:700;line-height:1}.payroll-admin__chip-select{font-family:var(--font-display);letter-spacing:-.005em;color:var(--text-primary);cursor:pointer;appearance:none;background:0 0;background-image:linear-gradient(45deg, transparent 50%, var(--text-tertiary) 50%), linear-gradient(135deg, var(--text-tertiary) 50%, transparent 50%);text-overflow:ellipsis;background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;border:none;width:100%;margin:0;padding:0 18px 0 0;font-size:13px;font-weight:500}.payroll-admin__chip-select:focus{outline:none}.payroll-admin__chip-select:disabled{cursor:not-allowed;color:var(--text-tertiary);background-image:none}.payroll-admin__chip-select option{font-family:var(--font-mono);background:var(--bg-card)}.payroll-admin__chain-arrow{font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-tertiary);letter-spacing:0;-webkit-user-select:none;user-select:none;align-self:center;align-items:center;padding:0 4px;display:inline-flex}.payroll-admin__count-row{font-feature-settings:"tnum";align-items:baseline;gap:10px;padding:4px 2px 0;display:flex}.payroll-admin__count-label{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:700}.payroll-admin__count-value{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);letter-spacing:-.02em;font-weight:200;line-height:1}.payroll-page__td-actions{white-space:nowrap;text-align:right}.payroll-page__td-actions .btn-sm{font-family:var(--font-display);letter-spacing:-.005em;text-transform:none;border-radius:var(--radius-sm);transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);margin-left:6px;padding:5px 11px;font-size:11.5px;font-weight:500}.text-ok{color:var(--green)}.payroll-page__title{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.025em;color:var(--text-primary);margin:0;font-weight:300;line-height:1.05}.payroll-page__subtitle{font-size:var(--text-sm);color:var(--text-tertiary);max-width:60ch;margin:4px 0 0;line-height:1.55}.payroll-page__counter{text-align:right;font-feature-settings:"tnum";flex-direction:column;align-items:flex-end;display:flex}.payroll-page__counter-value{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--text-primary);letter-spacing:-.04em;font-weight:200;line-height:1}.payroll-page__counter-label{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;margin-top:4px;font-size:10.5px;font-weight:500}.payroll-upload{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);position:relative;overflow:hidden}.payroll-upload:before{content:"";background:linear-gradient(135deg, var(--bg-primary) 50%, transparent 50%);z-index:1;width:14px;height:14px;position:absolute;top:0;left:0}.payroll-upload:after{content:"";background:linear-gradient(315deg, var(--bg-primary) 50%, transparent 50%);z-index:1;width:14px;height:14px;position:absolute;bottom:0;right:0}.payroll-upload__header{justify-content:space-between;align-items:center;gap:var(--space-md);border-bottom:1px solid var(--border-primary);background:var(--bg-secondary);flex-wrap:wrap;padding:14px 18px;display:flex}.payroll-upload__heading{flex-direction:column;gap:2px;display:flex}.payroll-upload__title{font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.005em;color:var(--text-primary);margin:0;font-weight:500}.payroll-upload__title-tag{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:500}.payroll-upload__tabs{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-primary);padding:3px;display:inline-flex}.payroll-upload__tab{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 14px;font-size:10.5px;font-weight:600;transition:color .14s,background .14s;position:relative}.payroll-upload__tab:hover{color:var(--text-secondary)}.payroll-upload__tab--active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 1px 0 var(--border-secondary)}.payroll-upload__panel{gap:var(--space-md);padding:var(--space-lg) var(--space-lg) var(--space-md);flex-direction:column;display:flex}.payroll-upload__csv-grid{gap:var(--space-lg);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}@media (width<=720px){.payroll-upload__csv-grid{grid-template-columns:1fr}}.payroll-upload__spec{flex-direction:column;gap:10px;display:flex}.payroll-upload__spec-title{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:600}.payroll-upload__spec-row{gap:var(--space-sm);border-bottom:1px dashed var(--border-secondary);font-size:var(--text-sm);grid-template-columns:100px 1fr;align-items:baseline;padding:6px 0;display:grid}.payroll-upload__spec-row:last-child{border-bottom:none}.payroll-upload__spec-key{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);font-weight:600}.payroll-upload__spec-val{color:var(--text-tertiary);font-size:var(--text-sm);line-height:1.4}.payroll-upload__spec-val em{color:var(--text-primary);font-style:normal;font-family:var(--font-mono);font-size:11px}.payroll-upload__dropzone{text-align:center;min-height:180px;padding:var(--space-lg);background:var(--bg-secondary);border:1px dashed var(--border-hover);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;transition:background .14s,border-color .14s,transform .14s;display:flex;position:relative;overflow:hidden}.payroll-upload__dropzone:before{content:"";background:var(--text-tertiary);opacity:.18;width:1px;height:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.payroll-upload__dropzone:after{content:"";background:var(--text-tertiary);opacity:.18;width:24px;height:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.payroll-upload__dropzone:hover:not(.is-busy){background:var(--bg-tertiary);border-color:var(--text-tertiary)}.payroll-upload__dropzone:hover:not(.is-busy) .payroll-upload__dropzone-icon{transform:scale(1.05)}.payroll-upload__dropzone.is-busy{cursor:wait;opacity:.85}.payroll-upload__dropzone-icon{font-family:var(--font-mono);color:var(--text-secondary);font-size:28px;font-weight:300;line-height:1;transition:transform .2s}.payroll-upload__dropzone-prompt{font-family:var(--font-display);font-size:var(--text-md);color:var(--text-primary);letter-spacing:-.005em;font-weight:500}.payroll-upload__dropzone-hint{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:500}.payroll-upload__file-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.payroll-upload__file-input:disabled{cursor:wait}.payroll-upload__receipt{margin-top:var(--space-md);background:var(--border-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);grid-template-columns:repeat(4,1fr);gap:1px;padding:0;display:grid;overflow:hidden}@media (width<=600px){.payroll-upload__receipt{grid-template-columns:repeat(2,1fr)}}.payroll-upload__receipt-cell{background:var(--bg-card);font-feature-settings:"tnum";flex-direction:column;gap:4px;padding:12px 14px;display:flex}.payroll-upload__receipt-value{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.02em;color:var(--text-primary);font-weight:300;line-height:1}.payroll-upload__receipt-value--ok{color:var(--green)}.payroll-upload__receipt-value--warn{color:var(--amber)}.payroll-upload__receipt-value--err{color:var(--red)}.payroll-upload__receipt-value--neutral{color:var(--text-secondary)}.payroll-upload__receipt-label{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:600}.payroll-upload__errors{margin-top:var(--space-sm);border:1px solid var(--border-secondary);border-radius:var(--radius-sm)}.payroll-upload__errors summary{cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-secondary);text-transform:uppercase;-webkit-user-select:none;user-select:none;padding:10px 14px;font-size:11px;font-weight:600;list-style:none;transition:color .12s}.payroll-upload__errors summary::-webkit-details-marker{display:none}.payroll-upload__errors summary:before{content:"+ ";color:var(--red);font-weight:600}.payroll-upload__errors summary:hover{color:var(--text-primary)}.payroll-upload__errors[open] summary:before{content:"− "}.payroll-upload__error-table{border-collapse:collapse;width:100%;font-size:var(--text-sm);border-top:1px solid var(--border-secondary)}.payroll-upload__error-table th,.payroll-upload__error-table td{text-align:left;border-bottom:1px solid var(--border-secondary);padding:8px 14px}.payroll-upload__error-table th{background:var(--bg-secondary);font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:600}.payroll-upload__error-table td{font-family:var(--font-mono);color:var(--text-secondary);font-size:11px}.payroll-upload__error-table tr:last-child td{border-bottom:none}.payroll-upload__error-table tr:hover td{background:var(--bg-secondary)}.payroll-upload__form{gap:var(--space-md);flex-direction:column;display:flex}.payroll-upload__row{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}@media (width<=600px){.payroll-upload__row{grid-template-columns:1fr}}.payroll-upload__form .form-field{flex-direction:column;gap:6px;display:flex}.payroll-upload__form .form-label{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:600}.payroll-upload__form .form-input{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm);font-feature-settings:"tnum";padding:9px 12px;transition:border-color .12s,background .12s}.payroll-upload__form .form-input:focus{border-color:var(--text-primary);background:var(--bg-tertiary);outline:none}.payroll-upload__form .form-input::placeholder{color:var(--text-tertiary)}.payroll-upload__actions{justify-content:flex-end;gap:var(--space-sm);display:flex}.payroll-upload__last-added{font-family:var(--font-mono);color:var(--text-secondary);background:var(--green-dim);border-left:2px solid var(--green);border-radius:var(--radius-sm);margin:0;padding:10px 14px;font-size:11px;font-weight:500}.payroll-upload__last-added strong{color:var(--text-primary);letter-spacing:.04em;font-weight:600}.payroll-page__list{gap:var(--space-sm);flex-direction:column;display:flex}.payroll-page__toolbar{align-items:stretch;gap:var(--space-sm);padding:10px 0 var(--space-sm);border-bottom:1px solid var(--border-primary);flex-wrap:wrap;display:flex}.payroll-page__toolbar input[type=search]{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);min-width:0;height:36px;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm);flex:280px;padding:0 14px;transition:border-color .12s,background .12s}.payroll-page__toolbar input[type=search]:focus{border-color:var(--text-primary);background:var(--bg-tertiary);outline:none}.payroll-page__toolbar input[type=search]::placeholder{color:var(--text-tertiary)}.payroll-page__toolbar .btn-secondary,.payroll-page__toolbar .btn-primary{height:36px;font-family:var(--font-display);letter-spacing:-.005em;text-transform:none;border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:6px;padding:0 16px;font-size:12.5px;font-weight:500;transition:color .12s,border-color .12s,background .12s,transform .12s;display:inline-flex}.payroll-page__toolbar .btn-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-primary)}.payroll-page__toolbar .btn-secondary:hover{color:var(--text-primary);border-color:var(--border-hover);background:var(--bg-tertiary)}.payroll-page__toolbar .btn-primary{background:var(--text-primary);color:var(--text-inverse);border:1px solid var(--text-primary)}.payroll-page__toolbar .btn-primary:hover:not(:disabled){background:var(--text-secondary);border-color:var(--text-secondary);box-shadow:none;transform:none}.payroll-page__toolbar .btn-primary:disabled{opacity:.35;cursor:not-allowed}.payroll-page__only-active{height:36px;font-family:var(--font-display);letter-spacing:-.005em;color:var(--text-secondary);text-transform:none;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer;align-items:center;gap:8px;padding:0 14px;font-size:12.5px;font-weight:500;transition:color .12s,border-color .12s;display:inline-flex}.payroll-page__only-active:has(input:checked){color:var(--text-primary);border-color:var(--text-tertiary)}.payroll-page__only-active input[type=checkbox]{accent-color:var(--text-primary);cursor:pointer}.payroll-page__table-wrap{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);overflow-x:auto}.payroll-page__table{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-feature-settings:"tnum"}.payroll-page__table th{text-align:left;background:var(--bg-secondary);font-family:var(--font-display);letter-spacing:-.005em;color:var(--text-secondary);text-transform:none;border-bottom:1px solid var(--border-primary);white-space:nowrap;padding:11px 14px;font-size:11px;font-weight:600}.payroll-page__table th.payroll-page__th-idx{text-align:right;color:var(--text-tertiary);width:1%;padding-right:10px}.payroll-page__table td{border-bottom:1px solid var(--border-secondary);color:var(--text-primary);font-size:var(--text-sm);vertical-align:middle;padding:11px 14px;line-height:1.4}.payroll-page__table tbody tr{transition:background .1s;position:relative}.payroll-page__table tbody tr:before{content:"";pointer-events:none;background:0 0;width:2px;position:absolute;top:0;bottom:0;left:0}.payroll-page__table tbody tr.is-active:before{background:var(--green)}.payroll-page__table tbody tr.is-inactive:before{background:var(--text-tertiary);opacity:.5}.payroll-page__table tbody tr:hover{background:var(--bg-card-hover)}.payroll-page__table tbody tr:last-child td{border-bottom:none}.payroll-page__table .payroll-page__td-idx{text-align:right;font-family:var(--font-mono);color:var(--text-tertiary);-webkit-user-select:none;user-select:none;width:1%;padding-right:10px;font-size:10.5px}.payroll-page__table .payroll-page__td-rfc{font-family:var(--font-mono);font-weight:600;font-size:var(--text-sm);color:var(--text-primary);letter-spacing:.02em;white-space:nowrap}.payroll-page__table .payroll-page__td-name{color:var(--text-primary);font-weight:500}.payroll-page__table .payroll-page__td-mono{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);white-space:nowrap}.payroll-page__table .payroll-page__td-mono--dim{color:var(--text-tertiary)}.payroll-page__status{font-family:var(--font-display);letter-spacing:-.005em;text-transform:none;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 8px;font-size:11px;font-weight:600;display:inline-flex}.payroll-page__status:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px}.payroll-page__status--active{color:var(--green);background:var(--green-dim)}.payroll-page__status--active:before{background:var(--green)}.payroll-page__status--inactive{color:var(--text-tertiary);background:var(--bg-tertiary)}.payroll-page__status--inactive:before{background:var(--text-tertiary)}.payroll-page__source{font-family:var(--font-display);letter-spacing:-.005em;text-transform:none;border:1px solid var(--border-primary);color:var(--text-tertiary);background:0 0;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:500;display:inline-block}.payroll-page__source--supplier{color:var(--text-secondary);border-color:var(--border-hover)}.payroll-page__source--tenant{color:var(--text-primary);border-color:var(--text-tertiary);background:var(--bg-secondary)}.payroll-page__source--integration{color:var(--amber);border-color:var(--amber);background:var(--amber-dim)}.payroll-page__empty{text-align:center;padding:var(--space-2xl) var(--space-lg);background:var(--bg-card);border:1px dashed var(--border-primary);border-radius:var(--radius-sm);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.payroll-page__empty-mark{font-family:var(--font-mono);letter-spacing:.2em;color:var(--text-tertiary);text-transform:uppercase;font-size:11px;font-weight:600}.payroll-page__empty-mark:before,.payroll-page__empty-mark:after{content:" — ";color:var(--text-tertiary);opacity:.5}.payroll-page__empty-title{font-family:var(--font-display);font-size:var(--text-xl);color:var(--text-primary);letter-spacing:-.01em;margin:0;font-weight:300}.payroll-page__empty-hint{font-size:var(--text-sm);color:var(--text-tertiary);max-width:40ch;margin:0}.payroll-page__loading{padding:var(--space-2xl) var(--space-lg);text-align:center;font-family:var(--font-mono);letter-spacing:.2em;color:var(--text-tertiary);text-transform:uppercase;font-size:11px;font-weight:600}.payroll-page__loading:after{content:" ◷";margin-left:6px;animation:1.6s linear infinite payrollSpin;display:inline-block}@keyframes payrollSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.payroll-page--v2{gap:var(--space-md,16px);padding:var(--space-lg,24px) var(--space-lg,24px) var(--space-2xl,48px);flex-direction:column;display:flex}.payroll-page--v2 .payroll-page__bar{justify-content:space-between;align-items:baseline;gap:var(--space-md,16px);padding-bottom:var(--space-sm,8px);border-bottom:1px solid var(--border-primary,#1e293b);margin:0;display:flex}.payroll-page__bar-title{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.payroll-page__bar-title h1{font-size:var(--text-2xl,26px);letter-spacing:-.01em;color:var(--text-primary);margin:0;font-weight:700}.payroll-page__bar-count{font-size:var(--text-sm,12px);color:var(--text-tertiary);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-weight:500}.payroll-page__bar-actions{gap:var(--space-sm,8px);display:flex}.payroll-page__bar-plus{margin-right:6px;font-size:14px;font-weight:700;line-height:1;display:inline-block}.payroll-page__toolbar--v2{gap:var(--space-md,16px);margin-bottom:var(--space-sm,8px);flex-wrap:wrap;align-items:center;padding:0;display:flex}.payroll-page__search-wrap{flex:320px;position:relative}.payroll-page__search{border:1px solid var(--border-primary);border-radius:var(--radius-md,10px);background:var(--input-bg);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:9px 14px;font-family:inherit;font-size:13px}.payroll-page__search::placeholder{color:var(--text-tertiary)}.payroll-page__search:focus{border-color:var(--brand-primary,#2ec195);box-shadow:0 0 0 3px var(--brand-primary-dim,rgba(46,193,149,.15));outline:none}.payroll-page__chips{flex-wrap:wrap;gap:6px;display:flex}.payroll-page__chip{border:1px solid var(--border-primary);color:var(--text-secondary);letter-spacing:.01em;cursor:pointer;transition:all var(--transition-fast);background:0 0;border-radius:999px;align-items:center;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:500;display:inline-flex}.payroll-page__chip:hover{border-color:var(--border-hover);color:var(--text-primary)}.payroll-page__chip--on{background:var(--brand-primary-dim,rgba(46,193,149,.12));border-color:var(--brand-primary,#2ec195);color:var(--brand-primary,#2ec195)}.payroll-page__chip--on:hover{color:var(--brand-primary,#2ec195)}.payroll-page__empty--v2{text-align:center;padding:var(--space-3xl,64px) var(--space-md,16px);border:1px dashed var(--border-primary);border-radius:var(--radius-lg,14px);background:var(--bg-card);align-items:center;gap:var(--space-sm,8px);flex-direction:column;display:flex}.payroll-page__empty-cta{margin-top:var(--space-md,16px)}.payroll-drawer{z-index:var(--z-modal,200);justify-content:flex-end;display:flex;position:fixed;inset:0}.payroll-drawer__backdrop{background:var(--bg-overlay,rgba(0,0,0,.5));animation:.2s cubic-bezier(.4,0,.2,1) payrollDrawerFadeIn;position:absolute;inset:0}.payroll-drawer__panel{background:var(--bg-card);border-left:1px solid var(--border-primary);width:min(520px,100vw);max-height:100vh;box-shadow:var(--shadow-modal);flex-direction:column;animation:.28s cubic-bezier(.4,0,.2,1) payrollDrawerSlideIn;display:flex;position:relative;overflow:hidden}.payroll-drawer__head{justify-content:space-between;align-items:flex-start;gap:var(--space-md,16px);padding:var(--space-lg,24px) var(--space-lg,24px) var(--space-md,16px);border-bottom:1px solid var(--border-primary);display:flex}.payroll-drawer__head-text{flex-direction:column;gap:4px;min-width:0;display:flex}.payroll-drawer__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-primary,#2ec195);font-size:10.5px;font-weight:600}.payroll-drawer__title{font-size:var(--text-xl,22px);letter-spacing:-.01em;color:var(--text-primary);margin:0;font-weight:700}.payroll-drawer__close{border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-family:inherit;font-size:22px;line-height:1;display:flex}.payroll-drawer__close:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-card-hover)}.payroll-drawer__body{padding:var(--space-md,16px) var(--space-lg,24px) var(--space-lg,24px);flex:1;overflow-y:auto}.payroll-drawer__body .payroll-upload__heading{display:none}.payroll-drawer__body .payroll-upload{background:0 0;border:none;padding:0}.payroll-drawer__body .payroll-upload__header{margin-bottom:var(--space-md,16px);border:none;padding:0}@keyframes payrollDrawerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes payrollDrawerSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.payroll-page--v2 .payroll-page__th-actions{text-align:right;width:110px}.payroll-page--v2 .payroll-page__td-action{text-align:right;white-space:nowrap}.payroll-page__row-btn{border-radius:var(--radius-sm,6px);color:var(--text-secondary);letter-spacing:.02em;cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:1px solid transparent;align-items:center;padding:4px 10px;font-family:inherit;font-size:11.5px;font-weight:500;display:inline-flex}tr:hover .payroll-page__row-btn,tr.is-inactive .payroll-page__row-btn{opacity:1}.payroll-page__row-btn--remove{color:var(--red,#ef4444)}.payroll-page__row-btn--remove:hover{background:var(--red-dim,rgba(239,68,68,.12));border-color:var(--red,#ef4444)}.payroll-page__row-btn--restore{color:var(--brand-primary,#2ec195)}.payroll-page__row-btn--restore:hover{background:var(--brand-primary-dim,rgba(46,193,149,.12));border-color:var(--brand-primary,#2ec195)}.payroll-page__row-locked{color:var(--text-tertiary);cursor:help;font-size:12px}.payroll-upload__panel--v2{gap:var(--space-md,16px);flex-direction:column;display:flex}.payroll-upload__spec-details{border:1px solid var(--border-primary);border-radius:var(--radius-md,10px);background:var(--bg-card)}.payroll-upload__spec-details>summary{cursor:pointer;letter-spacing:.01em;color:var(--text-secondary);-webkit-user-select:none;user-select:none;transition:color var(--transition-fast);padding:12px 16px;font-size:12px;font-weight:500;list-style:none}.payroll-upload__spec-details>summary::-webkit-details-marker{display:none}.payroll-upload__spec-details>summary:before{content:"›";color:var(--text-tertiary);margin-right:8px;font-weight:700;transition:transform .2s;display:inline-block}.payroll-upload__spec-details>summary:hover{color:var(--text-primary)}.payroll-upload__spec-details[open]>summary{color:var(--text-primary);border-bottom:1px solid var(--border-primary)}.payroll-upload__spec-details[open]>summary:before{transform:rotate(90deg)}.payroll-upload__spec-details>.payroll-upload__spec{padding:var(--space-sm,8px) var(--space-md,16px) var(--space-md,16px);margin:0}.payroll-month-panel{margin-top:var(--space-lg);padding:var(--space-md) var(--space-md) var(--space-lg);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);position:relative}.payroll-month-panel__head{justify-content:space-between;align-items:flex-end;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-primary);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.payroll-month-panel__heading{flex-direction:column;gap:2px;display:flex}.payroll-month-panel__tag{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:600}.payroll-month-panel__title{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.01em;color:var(--text-primary);margin:0;font-weight:500}.payroll-month-panel__loading{padding:var(--space-lg);text-align:center;font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-tertiary);font-size:11px;font-weight:600}.payroll-month-panel__empty{padding:var(--space-md);background:var(--bg-secondary);border:1px dashed var(--border-primary);border-radius:var(--radius-sm);text-align:center;font-size:var(--text-sm);color:var(--text-tertiary)}.payroll-month-panel__status{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--border-primary);border-radius:3px;align-items:center;gap:6px;padding:4px 10px 4px 8px;font-size:10.5px;font-weight:700;display:inline-flex}.payroll-month-panel__status:before{content:"";border-radius:50%;flex-shrink:0;width:7px;height:7px}.payroll-month-panel__status--draft{color:var(--text-secondary);background:var(--bg-secondary)}.payroll-month-panel__status--draft:before{background:var(--text-tertiary)}.payroll-month-panel__status--submitted{color:var(--amber);background:var(--amber-dim);border-color:var(--amber)}.payroll-month-panel__status--submitted:before{background:var(--amber)}.payroll-month-panel__status--approved{color:var(--green);background:var(--green-dim);border-color:var(--green)}.payroll-month-panel__status--approved:before{background:var(--green)}.payroll-month-panel__status--rejected{color:var(--red);background:var(--red-dim);border-color:var(--red)}.payroll-month-panel__status--rejected:before{background:var(--red)}.payroll-month-panel__body{gap:var(--space-md);flex-direction:column;display:flex}.payroll-month-panel__reject-banner{background:var(--red-dim);border-left:3px solid var(--red);border-radius:var(--radius-sm);flex-direction:column;gap:4px;padding:10px 14px;display:flex}.payroll-month-panel__reject-banner p{color:var(--text-primary);font-size:var(--text-sm);margin:0;line-height:1.4}.payroll-month-panel__reject-tag{font-family:var(--font-mono);letter-spacing:.18em;color:var(--red);text-transform:uppercase;font-size:10.5px;font-weight:700}.payroll-month-panel__stats{background:var(--border-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.payroll-month-panel__stat{background:var(--bg-card);font-feature-settings:"tnum";flex-direction:column;gap:2px;padding:10px 14px;display:flex}.payroll-month-panel__stat-value{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.02em;color:var(--text-primary);font-weight:300;line-height:1}.payroll-month-panel__stat-value--dim{color:var(--text-tertiary)}.payroll-month-panel__stat-value--alert{color:var(--red);font-weight:500}.payroll-month-panel__btn-approve{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}.payroll-month-panel__btn-approve:hover{filter:brightness(1.1)}.payroll-month-panel__remove-row{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.payroll-month-panel__stat-label{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:600}.payroll-month-panel__toolbar{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.payroll-month-panel__toolbar-spacer{flex:1}.payroll-month-panel__table-wrap{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-card);overflow-x:auto}.payroll-month-panel__table{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-feature-settings:"tnum"}.payroll-month-panel__table th{text-align:left;background:var(--bg-secondary);font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;border-bottom:1px solid var(--border-primary);padding:9px 14px;font-size:10.5px;font-weight:600}.payroll-month-panel__table th.payroll-month-panel__th-check{width:36px;padding-right:6px}.payroll-month-panel__table td{border-bottom:1px solid var(--border-secondary);color:var(--text-primary);vertical-align:middle;padding:9px 14px;line-height:1.35}.payroll-month-panel__table tbody tr{transition:background .1s;position:relative}.payroll-month-panel__table tbody tr:before{content:"";pointer-events:none;background:0 0;width:2px;position:absolute;top:0;bottom:0;left:0}.payroll-month-panel__table tbody tr.is-included:before{background:var(--green)}.payroll-month-panel__table tbody tr.is-excluded:before{background:var(--text-tertiary);opacity:.4}.payroll-month-panel__table tbody tr.is-excluded td{color:var(--text-tertiary)}.payroll-month-panel__table tbody tr:hover{background:var(--bg-card-hover)}.payroll-month-panel__table tbody tr:last-child td{border-bottom:none}.payroll-month-panel__table .payroll-month-panel__td-check{text-align:center;padding-right:6px}.payroll-month-panel__table .payroll-month-panel__td-check input[type=checkbox]{accent-color:var(--text-primary);cursor:pointer;width:16px;height:16px}.payroll-month-panel__table .payroll-month-panel__td-check input[type=checkbox]:disabled{cursor:not-allowed;opacity:.4}.payroll-month-panel__table .payroll-month-panel__td-rfc{font-family:var(--font-mono);color:var(--text-primary);letter-spacing:.02em;white-space:nowrap;font-weight:600}.payroll-month-panel__table .payroll-month-panel__td-mono{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);white-space:nowrap}.payroll-month-panel__table .payroll-month-panel__td-mono--dim{color:var(--text-tertiary);font-style:italic}.payroll-month-panel__evidences{gap:var(--space-sm);padding:var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex-direction:column;display:flex}.payroll-month-panel__evidences-head{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.payroll-month-panel__evidence-btn{cursor:pointer;align-items:center;display:inline-flex}.payroll-month-panel__evidence-btn.disabled{opacity:.6;cursor:wait}.payroll-month-panel__evidences-empty{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;padding:8px 0;font-style:italic}.payroll-month-panel__evidences-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.payroll-month-panel__evidence{justify-content:space-between;align-items:center;gap:var(--space-md);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:8px 12px;display:flex}.payroll-month-panel__evidence-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.payroll-month-panel__evidence-name{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.payroll-month-panel__evidence-info{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px}.payroll-month-panel__evidence-actions{flex-shrink:0;gap:6px;display:flex}.payroll-month-panel__modal-backdrop{background:var(--bg-overlay);padding:var(--space-md);z-index:100;backdrop-filter:blur(2px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.payroll-month-panel__modal{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);flex-direction:column;gap:0;width:100%;max-width:560px;display:flex;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.4)}.payroll-month-panel__modal-head{padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);flex-direction:column;gap:4px;display:flex}.payroll-month-panel__modal-head h4{font-family:var(--font-display);font-size:var(--text-md);color:var(--text-primary);letter-spacing:-.005em;margin:0;font-weight:500}.payroll-month-panel__modal-hint{font-size:var(--text-sm);color:var(--text-tertiary);margin:0;line-height:1.4}.payroll-month-panel__modal-body{padding:var(--space-lg);gap:var(--space-md);flex-direction:column;display:flex}.payroll-month-panel__form-row{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}@media (width<=500px){.payroll-month-panel__form-row{grid-template-columns:1fr}}.payroll-month-panel__form-row .form-field{flex-direction:column;gap:6px;display:flex}.payroll-month-panel__form-row .form-label{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-tertiary);text-transform:uppercase;font-size:10.5px;font-weight:600}.payroll-month-panel__form-row .form-input{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm);padding:9px 12px;transition:border-color .12s}.payroll-month-panel__form-row .form-input:focus{border-color:var(--text-primary);outline:none}.payroll-month-panel__form-row .form-input::placeholder{color:var(--text-tertiary)}.payroll-month-panel__modal-foot{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-top:1px solid var(--border-primary);display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stat-card{animation:fadeInUp var(--transition-slow) ease both}.stat-card:first-child{animation-delay:0s}.stat-card:nth-child(2){animation-delay:60ms}.stat-card:nth-child(3){animation-delay:.12s}.stat-card:nth-child(4){animation-delay:.18s}.stat-card:nth-child(5){animation-delay:.24s}.stat-card:nth-child(6){animation-delay:.3s}.client-card{animation:fadeInUp var(--transition-slow) ease both}.client-card:first-child{animation-delay:.2s}.client-card:nth-child(2){animation-delay:.26s}.client-card:nth-child(3){animation-delay:.32s}.client-card:nth-child(4){animation-delay:.38s}.client-card:nth-child(5){animation-delay:.44s}.client-card:nth-child(6){animation-delay:.5s}@media (width<=1280px){.data-table .col-hide-lg{display:none}}@media (width<=1024px){.clients-grid,.config-policies{grid-template-columns:1fr}.data-table .col-hide-md{display:none}}@media (width<=768px){.layout{grid-template-columns:1fr}.sidebar{display:none}.main{margin-left:0!important}.topbar{padding:0 var(--space-md)}.page{padding:var(--space-md)}.page-header{align-items:flex-start;gap:var(--space-md);flex-direction:column}.table-pagination{align-items:stretch;gap:var(--space-sm);flex-direction:column}.table-pagination .pagination-info{text-align:center}.table-pagination .pagination-size,.table-pagination .pagination-controls{justify-content:center}.form-row{grid-template-columns:1fr}}@media (width<=480px){.page-title{font-size:var(--text-xl)}.toolbar{flex-wrap:wrap}.toolbar-tabs{flex-shrink:0;overflow-x:auto}.toolbar-tab{white-space:nowrap}.card-actions{opacity:1}}@media (hover:none){.card-actions,.sidebar-edge-toggle{opacity:1}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.loading-page{min-height:60vh;color:var(--text-tertiary);justify-content:center;align-items:center;font-size:14px;display:flex}.error-page{min-height:60vh;color:var(--text-secondary);justify-content:center;align-items:center;gap:var(--space-md);flex-direction:column;display:flex}.error-page h2{font-size:20px;font-weight:600}.home-page{justify-content:center;align-items:center;gap:var(--space-lg);background:var(--bg-primary);flex-direction:column;min-height:100vh;display:flex}.home-page h1{font-size:var(--text-3xl);letter-spacing:-.5px;font-weight:600}.home-page a{align-items:center;gap:var(--space-sm);background:var(--text-primary);color:var(--text-inverse);border-radius:var(--radius-sm);transition:opacity var(--transition-fast);padding:12px 24px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.home-page a:hover{opacity:.85}.logged-out-page{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;display:flex}.logged-out-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-3xl) var(--space-2xl);width:90%;max-width:400px;box-shadow:var(--shadow-card);flex-direction:column;align-items:center;display:flex}.logged-out-icon{background:var(--bg-tertiary);width:56px;height:56px;color:var(--text-secondary);margin-bottom:var(--space-lg);border-radius:50%;justify-content:center;align-items:center;display:flex}.logged-out-card h1{font-size:var(--text-xl);letter-spacing:-.3px;margin-bottom:var(--space-sm);font-weight:600}.logged-out-card p{color:var(--text-tertiary);margin-bottom:var(--space-xl);font-size:14px}.logged-out-card a{align-items:center;gap:var(--space-sm);background:var(--text-primary);color:var(--text-inverse);border-radius:var(--radius-sm);transition:opacity var(--transition-fast);padding:12px 28px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.logged-out-card a:hover{opacity:.85}