@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm, 8px);padding:var(--space-lg, 24px)}.loading-spinner__circle{border:3px solid var(--color-gray-200, #e5e7eb);border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner__text{color:var(--text-secondary, #64748b);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500)}.loading-spinner--sm .loading-spinner__circle{width:20px;height:20px;border-width:2px}.loading-spinner--md .loading-spinner__circle{width:32px;height:32px;border-width:3px}.loading-spinner--lg .loading-spinner__circle{width:48px;height:48px;border-width:4px}.loading-spinner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 500)}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width, 260px);background:linear-gradient(180deg,var(--sidebar-bg, #1e293b) 0%,var(--sidebar-bg-dark, #0f172a) 100%);color:var(--sidebar-text, #e2e8f0);display:flex;flex-direction:column;z-index:var(--z-fixed, 300);transition:transform var(--transition-slow, .3s ease);box-shadow:4px 0 20px #00000026}.sidebar-overlay{display:none}.sidebar__header{padding:20px;border-bottom:1px solid var(--sidebar-divider, #475569)}.sidebar__logo{display:flex;align-items:center;gap:12px}.sidebar__logo-icon{font-size:1.5rem}.sidebar__logo-text{font-size:1.25rem;font-weight:700;color:#fff;margin:0;letter-spacing:-.02em}.sidebar__content{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 0;scrollbar-width:thin;scrollbar-color:var(--sidebar-divider) transparent}.sidebar__content::-webkit-scrollbar{width:6px}.sidebar__content::-webkit-scrollbar-track{background:transparent}.sidebar__content::-webkit-scrollbar-thumb{background:var(--sidebar-divider);border-radius:3px}.sidebar__menu{list-style:none;margin:0;padding:0}.sidebar__section{margin:4px 0}.sidebar__section-header{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;background:transparent;border:none;color:var(--sidebar-text-muted, #94a3b8);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:all var(--transition-fast, .15s ease);text-align:left}.sidebar__section-header:hover{background:#ffffff0d;color:var(--sidebar-text, #e2e8f0)}.sidebar__section-header--active{color:var(--sidebar-text, #e2e8f0)}.sidebar__section-header--featured{background:#3b82f614;border-left:3px solid rgba(59,130,246,.5);color:#93c5fd}.sidebar__section-header--featured:hover{background:#3b82f61f}.sidebar__section-icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0}.sidebar__section-label{flex:1}.sidebar__section-arrow{font-size:10px;transition:transform var(--transition-fast, .15s ease);opacity:.6}.sidebar__section-arrow--expanded{transform:rotate(90deg)}.sidebar__section-items{list-style:none;margin:0;padding:0;max-height:0;overflow:hidden;transition:max-height var(--transition-normal, .2s ease-out)}.sidebar__section-items--expanded{max-height:500px}.sidebar__item--child{margin-left:8px}.sidebar__item--child .sidebar__link{padding-left:32px;font-size:13px}.sidebar__divider{display:flex;align-items:center;justify-content:space-between;padding:12px 20px 8px;margin-top:8px}.sidebar__divider-text{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--sidebar-text-muted, #94a3b8)}.sidebar__divider--featured{background:#3b82f614;border-top:1px solid rgba(59,130,246,.2);border-bottom:1px solid rgba(59,130,246,.2);margin-top:16px;padding:10px 20px}.sidebar__divider--featured .sidebar__divider-text{color:#93c5fd;font-size:12px}.sidebar__divider--admin{background:#eab30814;border-top:1px solid rgba(234,179,8,.2)}.sidebar__item{margin:2px 8px}.sidebar__link{display:flex;align-items:center;gap:12px;padding:10px 12px;color:var(--sidebar-text-muted, #94a3b8);text-decoration:none;border-radius:8px;font-size:14px;font-weight:500;transition:all var(--transition-fast, .15s ease);border-left:3px solid transparent}.sidebar__link:hover{background:var(--sidebar-hover, #334155);color:#fff}.sidebar__item--active .sidebar__link{background:var(--sidebar-active-bg, rgba(59, 130, 246, .15));color:#fff;border-left-color:var(--sidebar-active-border, #3b82f6)}.sidebar__icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0}.sidebar__label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-badge{font-size:10px;font-weight:600;padding:3px 8px;border-radius:10px;text-transform:none;letter-spacing:0}.nav-badge--success{background:#10b98133;color:#6ee7b7}.nav-badge--warning{background:#f59e0b33;color:#fcd34d}.nav-badge--demo{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.nav-badge--neutral{background:#64748b33;color:#94a3b8}.sidebar__quick-links{padding:8px 16px;border-top:1px solid var(--sidebar-divider, #475569);display:flex;gap:12px}.sidebar__quick-link{color:var(--sidebar-text-secondary, #94a3b8);text-decoration:none;font-size:13px;padding:6px 10px;border-radius:6px;transition:all .15s ease}.sidebar__quick-link:hover{color:var(--sidebar-text-primary, #fff);background:var(--sidebar-item-hover, rgba(255, 255, 255, .08))}.sidebar__footer{padding:16px;border-top:1px solid var(--sidebar-divider, #475569);display:flex;align-items:center;gap:12px}.sidebar__user{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.sidebar__user-avatar{width:36px;height:36px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;color:#fff;flex-shrink:0}.sidebar__user-info{flex:1;min-width:0;display:flex;flex-direction:column}.sidebar__user-name{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__user-role{font-size:11px;color:var(--sidebar-text-muted, #94a3b8)}.sidebar__logout{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ef44441a;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:all var(--transition-fast, .15s ease)}.sidebar__logout:hover{background:#ef444433}@media (max-width: 1024px){.sidebar{width:220px}.sidebar__header{padding:16px}.sidebar__logo-text{font-size:1.1rem}.sidebar__link{padding:9px 10px;font-size:13px}}@media (max-width: 768px){.sidebar{transform:translate(-100%);width:280px;box-shadow:none}.sidebar--open{transform:translate(0);box-shadow:4px 0 30px #0000004d}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:calc(var(--z-fixed, 300) - 1);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar__link{padding:14px 12px;min-height:48px}.sidebar__divider{padding:14px 20px 10px}.sidebar__user-avatar{width:40px;height:40px}.sidebar__logout{width:44px;height:44px}}@media (max-width: 480px){.sidebar{width:85vw;max-width:300px}}.health-dashboard{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:24px;grid-column:1 / -1}.health-dashboard__title{font-size:1.1rem;font-weight:600;color:#1e293b;margin:0 0 16px;display:flex;align-items:center;gap:8px}.health-dashboard__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.health-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px;text-decoration:none;transition:all .15s ease;cursor:pointer}.health-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.health-card__header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.health-card__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#64748b}.health-card__value{font-size:.95rem;font-weight:600;color:#1e293b;margin-bottom:4px}.health-card__amount{font-size:1.1rem;font-weight:700;color:inherit;margin-bottom:8px}.health-card__cta{font-size:.75rem;color:#64748b;margin-top:auto;opacity:.7;transition:opacity .15s}.health-card:hover .health-card__cta{opacity:1}.health-card--ok{border-left:3px solid #22c55e}.health-card--ok .health-card__value,.health-card--ok .health-card__amount{color:#16a34a}.health-card--warning{border-left:3px solid #eab308;background:linear-gradient(135deg,#fffbeb,#fff)}.health-card--warning .health-card__value,.health-card--warning .health-card__amount{color:#ca8a04}.health-card--error{border-left:3px solid #ef4444;background:linear-gradient(135deg,#fef2f2,#fff)}.health-card--error .health-card__value,.health-card--error .health-card__amount{color:#dc2626}.health-card--info{border-left:3px solid #3b82f6;background:linear-gradient(135deg,#eff6ff,#fff)}.health-card--info .health-card__value,.health-card--info .health-card__amount{color:#2563eb}.health-card--not_configured{border-left:3px solid #94a3b8;background:linear-gradient(135deg,#f8fafc,#fff)}.health-card--not_configured .health-card__value{color:#64748b}.health-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:.7rem;font-weight:700}.health-icon--ok{background:#dcfce7;color:#16a34a}.health-icon--warning{background:#fef3c7;color:#ca8a04}.health-icon--error{background:#fee2e2;color:#dc2626}.health-icon--info{background:#dbeafe;color:#2563eb}.health-dashboard__activity{display:flex;align-items:center;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #e2e8f0;font-size:.8rem;color:#64748b}.health-dashboard__activity-label{font-weight:500}.health-dashboard__activity-text{color:#475569}.health-dashboard__activity-time{margin-left:auto;font-size:.75rem;opacity:.8}.health-card--skeleton{min-height:100px;border-left:3px solid #e2e8f0}.skeleton-pulse{width:100%;height:100%;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite;border-radius:4px}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 768px){.health-dashboard{padding:16px}.health-dashboard__grid{grid-template-columns:repeat(2,1fr);gap:10px}.health-card{padding:12px}.health-card__amount{font-size:1rem}}@media (max-width: 480px){.health-dashboard__grid{grid-template-columns:1fr}}.onboarding-banner{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #cbd5e1;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #0000000d}.onboarding-banner__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.onboarding-banner__title-section{flex:1}.onboarding-banner__title{font-size:1.25rem;font-weight:600;color:#1e293b;margin:0 0 4px}.onboarding-banner__subtitle{font-size:.875rem;color:#64748b;margin:0}.onboarding-banner__progress-text{font-size:.875rem;font-weight:500;color:#334155}.onboarding-banner__progress-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:20px}.onboarding-banner__progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:4px;transition:width .3s ease}.onboarding-banner__steps{display:flex;gap:12px;flex-wrap:wrap}.onboarding-banner__step{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease;border:1px solid transparent}.onboarding-banner__step--completed{background:#f0fdf4;color:#22c55e;border-color:#bbf7d0;cursor:default;opacity:.85}.onboarding-banner__step--completed .onboarding-banner__step-icon{color:#22c55e}.onboarding-banner__step--pending{background:#f8fafc;color:#94a3b8;border-color:#e2e8f0;cursor:not-allowed;opacity:.6}.onboarding-banner__step--current{background:#2563eb;color:#fff;border-color:#1d4ed8;cursor:pointer;box-shadow:0 2px 8px #2563eb40}.onboarding-banner__step--current:hover{background:#1d4ed8;box-shadow:0 4px 12px #2563eb59}.onboarding-banner__step-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center}.onboarding-banner__step-number{width:20px;height:20px;border-radius:50%;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.onboarding-banner__step--current .onboarding-banner__step-number{background:#fff3}.onboarding-banner__step--pending .onboarding-banner__step-number{background:#e2e8f0;color:#94a3b8}.onboarding-banner__afip-actions{display:flex;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.onboarding-banner__afip-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:6px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease}.onboarding-banner__afip-btn--primary{background:#2563eb;color:#fff}.onboarding-banner__afip-btn--primary:hover{background:#1d4ed8}.onboarding-banner__afip-btn--secondary{background:#fff;color:#475569;border:1px solid #e2e8f0}.onboarding-banner__afip-btn--secondary:hover{background:#f1f5f9;border-color:#cbd5e1}.onboarding-banner--loading{opacity:.7}@media (max-width: 768px){.onboarding-banner__header{flex-direction:column;gap:12px}.onboarding-banner__steps{flex-direction:column}.onboarding-banner__step{width:100%}.onboarding-banner__afip-actions{flex-direction:column}}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);align-items:start}.widget{background-color:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);display:flex;flex-direction:column;min-height:0}.widget-title{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.widget-large{grid-column:1 / -1}.kpi-container{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm)}.kpi-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-sm);background:var(--bg-secondary);border-radius:var(--radius-sm)}.kpi-item h4{margin:0 0 var(--space-xs) 0;color:var(--text-secondary);font-size:10px;font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.03em;line-height:1.2}.kpi-item p{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);font-family:var(--font-family-mono);color:var(--text-primary);line-height:1.1;white-space:nowrap}.kpi-item p.kpi-positive{color:var(--color-success-dark)}.kpi-item p.kpi-negative{color:var(--color-error-dark)}.kpi-item p.kpi-warning{color:var(--color-warning-dark)}.quick-actions-container{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs)}.quick-action-btn{display:flex;align-items:center;justify-content:center;padding:var(--space-xs) var(--space-sm);background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-decoration:none;color:var(--text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.quick-action-btn:hover{background-color:var(--color-gray-100);border-color:var(--color-gray-300)}.quick-action-btn span{font-size:1rem;margin-right:var(--space-xs);color:var(--color-primary)}.empty-widget-message{color:var(--text-muted);text-align:center;padding:var(--space-md) 0;flex-grow:1;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs)}.actionable-list{list-style:none;padding:0;margin:0;max-height:200px;overflow-y:auto}.list-item{border-bottom:1px solid var(--border-color)}.list-item:last-child{border-bottom:none}.list-item-link{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xs);text-decoration:none;color:inherit;transition:background-color var(--transition-fast);border-radius:var(--radius-sm)}.list-item-link:hover{background-color:var(--bg-secondary)}.list-item-main{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.list-item-title{font-weight:var(--font-weight-medium);color:var(--text-primary);font-size:var(--font-size-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item-subtitle{font-size:10px;color:var(--text-muted)}.list-item-details{text-align:right;flex-shrink:0;margin-left:var(--space-sm)}.list-item-amount{font-weight:var(--font-weight-semibold);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--text-primary)}.list-item-overdue,.list-item-due{font-size:10px;font-weight:var(--font-weight-medium)}.list-item-overdue{color:var(--color-error-dark)}.list-item-due{color:var(--color-warning-dark)}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr;gap:var(--space-sm)}.widget-large{grid-column:span 1}.kpi-container{grid-template-columns:repeat(3,1fr);gap:var(--space-xs)}.kpi-item p{font-size:var(--font-size-sm)}.quick-actions-container{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.kpi-container,.quick-actions-container{grid-template-columns:1fr}}.chart-of-accounts-page{padding:2rem}.chart-of-accounts-page .page-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.chart-of-accounts-page .page-subtitle{color:var(--text-secondary);font-size:.95rem;margin-top:.25rem}.coa-info-block{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.coa-info-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.coa-info-title{display:flex;gap:1rem;align-items:flex-start}.coa-info-icon{font-size:2rem;line-height:1}.coa-info-title h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:#212529}.coa-info-title p{margin:0;color:#6c757d;font-size:.9rem;max-width:500px}.coa-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #dee2e6}.coa-template-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;transition:all .2s;text-align:left;position:relative}.coa-template-item:hover:not(:disabled){border-color:var(--primary-color);box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.coa-template-item:disabled,.coa-template-item--exists{opacity:.6;cursor:not-allowed;background:#f8f9fa}.coa-template-code{font-family:SF Mono,Consolas,monospace;font-size:.85rem;font-weight:600;color:#495057;min-width:50px}.coa-template-name{flex:1;font-size:.9rem;color:#212529}.coa-type-badge{font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.coa-template-check{position:absolute;right:.75rem;color:#198754;font-weight:700}.coa-create-section{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.coa-create-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#495057}.coa-create-form{display:flex;gap:.75rem;flex-wrap:wrap;align-items:flex-end}.coa-input-code{width:120px;font-family:SF Mono,Consolas,monospace}.coa-input-name{flex:1;min-width:200px}.coa-input-type{width:140px}.coa-empty-state{text-align:center;padding:3rem 2rem;background:var(--surface-color);border:1px dashed var(--border-color);border-radius:8px}.coa-empty-state .empty-icon{font-size:3rem;opacity:.5;display:block;margin-bottom:1rem}.coa-empty-state p{margin:.5rem 0;color:#495057}.coa-empty-state .text-secondary{color:#6c757d;font-size:.9rem}.coa-table-container{display:flex;flex-direction:column;gap:1.5rem}.coa-group{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.coa-group-header{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:linear-gradient(to right,#f8f9fa,transparent);border-left:4px solid;border-bottom:1px solid var(--border-color)}.coa-group-badge{font-size:.8rem;font-weight:600;padding:.35rem .75rem;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.coa-group-count{color:#6c757d;font-size:.85rem}.coa-table{width:100%;border-collapse:collapse}.coa-table thead{background:#f8f9fa}.coa-table thead th{padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:#6c757d;border-bottom:1px solid #dee2e6}.coa-col-code{width:120px}.coa-col-actions{width:120px;text-align:center}.coa-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background-color .15s}.coa-table tbody tr:last-child{border-bottom:none}.coa-table tbody tr:hover{background-color:#f8f9fa}.coa-table tbody td{padding:.875rem 1rem;vertical-align:middle}.coa-cell-code{font-family:SF Mono,Consolas,monospace;font-size:.85rem;font-weight:500;color:#495057}.coa-cell-name{font-size:.95rem;color:#212529}.coa-actions-cell{text-align:center;white-space:nowrap}.coa-edit-input{width:100%;padding:.5rem;border:1px solid var(--primary-color);border-radius:4px;font-size:.9rem}.btn-icon{background:none;border:none;padding:.4rem;cursor:pointer;font-size:1rem;opacity:.6;transition:all .2s;border-radius:4px}.btn-icon:hover{opacity:1;background:#f0f0f0}.btn-icon-danger:hover{background:#f8d7da}@media (max-width: 768px){.chart-of-accounts-page{padding:1rem}.coa-info-header,.coa-create-form{flex-direction:column}.coa-input-code,.coa-input-name,.coa-input-type{width:100%}.coa-template-grid{grid-template-columns:1fr}}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:300px;max-width:450px;pointer-events:auto;animation:toast-slide-in .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toast-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-left:4px solid #047857}.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-left:4px solid #b91c1c}.toast-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-left:4px solid #b45309}.toast-info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-left:4px solid #1d4ed8}.toast-icon{font-size:1.2rem;flex-shrink:0}.toast-message{flex:1;font-size:.95rem;font-weight:500;line-height:1.4}.toast-close{background:transparent;border:none;color:inherit;font-size:1.5rem;cursor:pointer;opacity:.7;transition:opacity .2s;padding:0;line-height:1;flex-shrink:0}.toast-close:hover{opacity:1}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-exit{animation:toast-slide-out .3s ease-in forwards}@keyframes toast-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@media (max-width: 480px){.toast-container{left:10px;right:10px;top:10px}.toast{min-width:auto;max-width:none}}.currency-select{width:100%;min-width:70px}.amount-base-input{background-color:#f5f5f5;color:#666;cursor:not-allowed}.amount-base-input:disabled{opacity:.8}input.loading{background-color:#fffbea;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.period-closed-warning{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background-color:#fff3cd;border:1px solid #ffc107;border-radius:6px;margin-bottom:16px}.period-closed-warning .warning-icon{font-size:24px;line-height:1}.checking-period{font-size:12px;color:#666;margin-left:8px;font-style:italic}.cc-selector{border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1rem;background:var(--bg-secondary, #fafafa)}.cc-selector.loading,.cc-selector.error,.cc-selector.empty{color:var(--text-secondary, #6b7280);font-size:.875rem}.cc-selector.error{color:#dc2626}.cc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.cc-label{font-size:.875rem;font-weight:500;color:var(--text-primary, #1a1a2e)}.btn-equal{padding:.25rem .5rem;background:transparent;border:1px solid var(--border-color, #e5e7eb);border-radius:4px;font-size:.75rem;color:var(--text-secondary, #6b7280);cursor:pointer}.btn-equal:hover{background:var(--bg-tertiary, #f3f4f6)}.cc-empty{text-align:center;padding:1rem;color:var(--text-secondary, #6b7280)}.cc-empty p{margin:0 0 .75rem;font-size:.875rem}.btn-add{padding:.5rem 1rem;background:transparent;border:1px dashed var(--border-color, #d1d5db);border-radius:6px;color:#6366f1;font-size:.875rem;font-weight:500;cursor:pointer}.btn-add:hover{background:#6366f10d;border-color:#6366f1}.cc-allocations{display:flex;flex-direction:column;gap:.5rem}.cc-allocation-row{display:flex;gap:.5rem;align-items:center}.cc-allocation-row select{flex:1;padding:.5rem .75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;font-size:.875rem;background:var(--input-bg, #fff)}.percentage-input{display:flex;align-items:center;position:relative;width:100px}.percentage-input input{width:100%;padding:.5rem 1.5rem .5rem .75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;font-size:.875rem;text-align:right;background:var(--input-bg, #fff)}.percentage-input .suffix{position:absolute;right:.5rem;color:var(--text-tertiary, #9ca3af);font-size:.875rem;pointer-events:none}.btn-remove{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;font-size:1.25rem;color:var(--text-tertiary, #9ca3af);cursor:pointer}.btn-remove:hover{background:#ef44441a;color:#dc2626}.cc-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, #e5e7eb)}.cc-total{font-size:.875rem;font-weight:500}.cc-total.valid{color:#047857}.cc-total.invalid{color:#dc2626}.cc-total .warning{font-weight:400}.btn-add-more{padding:.375rem .75rem;background:transparent;border:none;color:#6366f1;font-size:.8125rem;font-weight:500;cursor:pointer}.btn-add-more:hover{text-decoration:underline}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 30px}.field-hint{font-size:.8rem;color:var(--text-muted);margin-top:4px;margin-bottom:0}.field-hint.budget-hint{color:var(--primary-color, #2563eb);background-color:#2563eb14;padding:8px 12px;border-radius:4px;border-left:3px solid var(--primary-color, #2563eb)}.form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 30px}.readonly-input{background-color:var(--bg-tertiary, #f3f4f6);cursor:not-allowed;color:var(--text-secondary, #6b7280)}.calculated-amount{font-weight:600;color:var(--text-primary, #1a1a2e)}.rate-source{font-size:.75rem;color:var(--text-muted, #9ca3af);font-weight:400}.conversion-summary{display:flex;align-items:center;gap:8px;padding:12px 16px;background:linear-gradient(135deg,#6366f114,#8b5cf614);border-radius:8px;font-size:.9rem;color:var(--text-primary, #1a1a2e);margin-top:8px;border:1px solid rgba(99,102,241,.2)}.conversion-icon{font-size:1.2rem}@media (max-width: 768px){.form-grid-3{grid-template-columns:1fr}}.budget-warning-box{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:6px;margin-top:8px;font-size:.875rem;line-height:1.4}.budget-warning-box .warning-icon{font-size:1.1rem;flex-shrink:0}.budget-warning-box .warning-content{flex:1}.budget-warning-box .warning-percent{font-weight:600;margin-left:4px}.budget-warning{background:#fff8e1;border-left:4px solid #fbc02d;color:#856404}.budget-danger{background:#fdecea;border-left:4px solid #d32f2f;color:#721c24}.export-button-container{position:relative;display:inline-block}.export-button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.export-button:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.export-button:disabled{opacity:.7;cursor:not-allowed}.export-button__icon{font-size:1rem}.export-button__caret{font-size:.6rem;opacity:.6;margin-left:2px}.export-button__spinner{display:inline-block;width:14px;height:14px;border:2px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:export-spin .8s linear infinite}@keyframes export-spin{to{transform:rotate(360deg)}}.export-button__dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:140px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;overflow:hidden}.export-button__option{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:transparent;border:none;font-size:.875rem;color:#475569;cursor:pointer;text-align:left;transition:background .1s}.export-button__option:hover{background:#f1f5f9;color:#1e293b}.export-button__option:first-child{border-bottom:1px solid #f1f5f9}.export-button__option-icon{font-size:1rem}.export-button__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}@media (max-width: 640px){.export-button{padding:8px 12px}.export-button__dropdown{right:auto;left:0}}.form-section h2,.form-section h3{margin-top:0;border-bottom:1px solid var(--border-color);padding-bottom:15px;margin-bottom:20px}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:var(--content-bg);padding:25px 30px;border-radius:8px;box-shadow:0 5px 15px #0000004d;width:100%;max-width:500px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.form-section{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);margin-bottom:var(--space-lg)}.form-section h2{margin:0 0 var(--space-md) 0;padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.inline-form{display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:flex-end}.inline-form input,.inline-form select{flex:1;min-width:150px}.inline-form .form-actions{display:flex;gap:var(--space-sm);margin-top:0;padding-top:0;border-top:none}.table-section{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.table-section h2{margin:0 0 var(--space-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.helper-message{font-size:var(--font-size-sm);color:var(--text-secondary);padding:var(--space-sm);background:var(--color-warning-light);border-radius:var(--radius-md);width:100%}.helper-message a{color:var(--color-primary);font-weight:var(--font-weight-medium)}.actions-cell{display:flex;gap:var(--space-sm);white-space:nowrap}@media (max-width: 768px){.inline-form{flex-direction:column}.inline-form input,.inline-form select{width:100%}}.export-dropdown{position:relative;display:inline-block}.export-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:linear-gradient(135deg,#1565c0,#1976d2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.export-btn:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#2196f3);transform:translateY(-1px)}.export-btn:disabled{opacity:.6;cursor:not-allowed}.export-menu{position:absolute;top:100%;right:0;margin-top:.25rem;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;z-index:1000;min-width:160px;overflow:hidden}.export-menu button{display:block;width:100%;padding:.75rem 1rem;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;transition:background .2s}.export-menu button:hover{background:#f5f5f5}.import-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:linear-gradient(135deg,#43a047,#66bb6a);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.import-btn:hover:not(:disabled){background:linear-gradient(135deg,#66bb6a,#81c784);transform:translateY(-1px)}.import-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.import-modal{background:#fff;border-radius:16px;width:90%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.import-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e0e0e0}.import-modal-header h2{margin:0;font-size:1.25rem;color:#1a1a1a}.close-btn{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:.25rem;line-height:1}.close-btn:hover{color:#333}.import-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.import-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e0e0e0}.template-info{text-align:center;margin-bottom:1.5rem}.template-info p{margin:0 0 1rem;color:#555}.btn-template{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#f5f5f5;border:2px dashed #ccc;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-template:hover{background:#e8e8e8;border-color:#999}.divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid #e0e0e0}.divider span{padding:0 1rem;color:#888;font-size:.85rem;font-weight:500}.drop-zone{border:2px dashed #ccc;border-radius:12px;padding:2.5rem;text-align:center;cursor:pointer;transition:all .2s;background:#fafafa}.drop-zone:hover{border-color:#1976d2;background:#f0f7ff}.drop-zone.dragging{border-color:#1976d2;background:#e3f2fd;transform:scale(1.01)}.drop-icon{font-size:3rem;margin-bottom:.5rem}.drop-zone p{margin:.25rem 0;color:#555}.drop-zone .hint{color:#888;font-size:.85rem}.drop-zone .formats{color:#999;font-size:.8rem;margin-top:.75rem}.preview-summary{display:flex;gap:1rem;margin-bottom:1.5rem}.summary-item{flex:1;text-align:center;padding:1rem;background:#f5f5f5;border-radius:8px}.summary-item .count{display:block;font-size:1.75rem;font-weight:700;color:#333}.summary-item .label{font-size:.75rem;color:#666}.summary-item.valid .count{color:#43a047}.summary-item.warning .count{color:#ff9800}.summary-item.error .count{color:#e53935}.preview-table-container{max-height:300px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:8px}.preview-table{width:100%;border-collapse:collapse;font-size:.85rem}.preview-table th{background:#f5f5f5;padding:.75rem 1rem;text-align:left;font-weight:600;position:sticky;top:0}.preview-table td{padding:.75rem 1rem;border-top:1px solid #eee;vertical-align:top}.preview-table tr.status-valid{background:#f1f8e9}.preview-table tr.status-warning{background:#fff8e1}.preview-table tr.status-error{background:#ffebee}.data-cell{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#555}.status-badge{font-size:1.1rem}.row-errors,.row-warnings{margin-top:.25rem;font-size:.8rem}.row-errors p,.row-warnings p{margin:.15rem 0}.row-errors{color:#c62828}.row-warnings{color:#ef6c00}.preview-note{text-align:center;color:#888;font-size:.85rem;margin-top:.75rem}.import-options{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.import-options label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#555}.importing-step{text-align:center;padding:3rem 0}.importing-step p{margin-top:1rem;color:#555}.result-step{text-align:center}.result-icon{font-size:4rem;margin-bottom:.5rem}.result-step h3{margin:0 0 1.5rem;color:#333}.result-summary{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.result-item{text-align:center;padding:1rem 1.5rem;background:#f5f5f5;border-radius:8px}.result-item .count{display:block;font-size:2rem;font-weight:700}.result-item .label{font-size:.85rem;color:#666}.result-item.success .count{color:#43a047}.result-item.warning .count{color:#ff9800}.result-item.error .count{color:#e53935}.result-errors{text-align:left;background:#ffebee;border-radius:8px;padding:1rem}.result-errors h4{margin:0 0 .5rem;color:#c62828}.result-errors ul{margin:0;padding-left:1.25rem}.result-errors li{color:#555;font-size:.85rem;margin:.25rem 0}.error-message{background:#ffebee;color:#c62828;padding:1rem;border-radius:8px;margin-top:1rem}.btn-cancel{padding:.75rem 1.5rem;background:#f5f5f5;color:#555;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-cancel:hover{background:#e0e0e0}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite}.loading-spinner.small{width:14px;height:14px}.loading-spinner.large{width:48px;height:48px;border-width:4px;border-color:#1976d233;border-top-color:#1976d2}.customer-tax-settings{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;margin-top:1.5rem}.tax-section-header{margin-bottom:1.5rem}.tax-section-header h3{margin:0 0 .5rem;font-size:1.2rem;color:var(--color-text)}.tax-section-hint{margin:0;font-size:.9rem;color:var(--color-text-muted)}.tax-field-group{margin-bottom:1.25rem}.tax-label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--color-text)}.tax-label.required:after{content:" *";color:var(--color-error)}.tax-select{width:100%;max-width:300px;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;font-size:1rem;background:var(--color-surface);color:var(--color-text)}.tax-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light, rgba(59, 130, 246, .2))}.tax-info-notice{background:var(--color-warning-light, #fff3e0);color:var(--color-warning-dark, #e65100);padding:.75rem 1rem;border-radius:6px;margin-bottom:1.25rem;font-size:.9rem}.checkbox-group{margin-bottom:1.25rem}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label.inline{align-items:center}.checkbox-label input[type=checkbox]{width:18px;height:18px;margin:0;cursor:pointer;accent-color:var(--color-primary);flex-shrink:0}.checkbox-text{display:flex;flex-direction:column;gap:.25rem}.checkbox-text strong{color:var(--color-text)}.checkbox-hint{font-size:.85rem;color:var(--color-text-muted)}.tax-divider{border:none;border-top:1px solid var(--color-border);margin:1.5rem 0}.tax-impuesto-section{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;padding:1rem;margin-bottom:1rem;transition:opacity .2s}.tax-impuesto-section.disabled{opacity:.6}.tax-impuesto-header{margin-bottom:0}.tax-impuesto-section:not(.disabled) .tax-impuesto-header{margin-bottom:.75rem}.impuesto-title{font-weight:600;font-size:1rem;color:var(--color-text)}.tax-impuesto-config{padding-left:1.75rem;border-left:3px solid var(--color-primary-light, #93c5fd)}.tax-field-row{display:flex;gap:1rem;flex-wrap:wrap}.tax-field{flex:1;min-width:150px;max-width:200px}.tax-field label{display:block;font-size:.85rem;color:var(--color-text-muted);margin-bottom:.25rem}.tax-field select,.tax-field input{width:100%;padding:.5rem;border:1px solid var(--color-border);border-radius:4px;font-size:.9rem;background:var(--color-surface);color:var(--color-text)}.tax-field select:focus,.tax-field input:focus{outline:none;border-color:var(--color-primary)}.rate-input-container{display:flex;align-items:center;gap:.25rem}.rate-input-container input{flex:1;text-align:right}.rate-suffix{font-size:.9rem;color:var(--color-text-muted)}.tax-summary{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;padding:1rem;margin-top:1.5rem}.tax-summary h4{margin:0 0 .75rem;font-size:.95rem;color:var(--color-text)}.tax-summary-list{display:flex;flex-direction:column;gap:.5rem}.tax-summary-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--color-surface);border-radius:4px;font-size:.9rem}.tax-summary-item.exempt{background:var(--color-success-light, #e8f5e9);color:var(--color-success-dark, #2e7d32)}.tax-summary-item.none{color:var(--color-text-muted);font-style:italic}.tax-name{font-weight:500}.tax-rate{font-family:var(--font-mono, monospace);color:var(--color-primary);font-weight:600}@media (max-width: 600px){.tax-field-row{flex-direction:column}.tax-field{max-width:none}}.account-statement-page{max-width:1200px}.account-statement-page .header-left{display:flex;flex-direction:column;gap:.25rem}.account-statement-page .back-link{color:var(--text-secondary, #6b7280);text-decoration:none;font-size:.875rem}.account-statement-page .back-link:hover{color:var(--primary, #3b82f6)}.account-statement-page h1{margin:0}.account-statement-page .customer-name{font-size:1.25rem;font-weight:500;color:var(--text-primary, #1f2937);margin:0}.account-statement-page .customer-tax-id{font-size:.875rem;color:var(--text-secondary, #6b7280)}.balance-card{background:linear-gradient(135deg,#1e3a5f,#2563eb);border-radius:12px;padding:1.5rem 2rem;color:#fff;text-align:center;margin-bottom:1.5rem;box-shadow:0 4px 6px -1px #0000001a}.balance-card .balance-label{font-size:.875rem;opacity:.9;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.balance-card .balance-amount{font-size:2.5rem;font-weight:700}.balance-card .balance-amount.positive{color:#10b981}.balance-card .balance-amount.negative{color:#ef4444}.balance-card .balance-note{font-size:.75rem;opacity:.7;margin-top:.75rem}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1rem 1.25rem}.summary-card .summary-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.summary-card .summary-value{font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.summary-card .summary-value.negative{color:#ef4444}.aging-section{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.aging-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600}.aging-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}@media (max-width: 768px){.aging-grid{grid-template-columns:repeat(2,1fr)}}.aging-card{background:var(--bg-secondary, #f9fafb);border-radius:6px;padding:.75rem;text-align:center}.aging-card.current{background:#ecfdf5;border:1px solid #10b981}.aging-card.warning{background:#fffbeb;border:1px solid #f59e0b}.aging-card.danger{background:#fef2f2;border:1px solid #ef4444}.aging-card.critical{background:#fef2f2;border:2px solid #ef4444}.aging-card .aging-label{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-bottom:.25rem}.aging-card .aging-value{font-size:1rem;font-weight:600}.aging-total-overdue{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e5e7eb);text-align:right;color:#ef4444}.movements-section{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1.25rem}.movements-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600}.movements-table .text-right{text-align:right}.movement-type{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.movement-type.type-invoice{background:#dbeafe;color:#1e40af}.movement-type.type-credit-note{background:#fef3c7;color:#92400e}.movement-type.type-payment{background:#d1fae5;color:#065f46}.invoice-tax-preview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem;margin:1.5rem 0}.invoice-tax-preview.exempt{background:var(--color-success-light, #e8f5e9);border-color:var(--color-success, #4caf50)}.invoice-tax-preview.loading,.invoice-tax-preview.empty{opacity:.7}.tax-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.tax-preview-header h4{margin:0;font-size:1rem;color:var(--color-text)}.customer-category{font-size:.8rem;background:var(--color-primary-light, #e3f2fd);color:var(--color-primary, #1976d2);padding:.25rem .5rem;border-radius:4px;font-weight:500}.tax-preview-loading,.tax-preview-hint{text-align:center;padding:1rem;color:var(--color-text-muted);font-style:italic}.tax-preview-exempt{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 0}.exempt-icon{font-size:1.5rem;color:var(--color-success, #4caf50)}.exempt-content strong{display:block;margin-bottom:.25rem;color:var(--color-success-dark, #2e7d32)}.exempt-content p{margin:0;font-size:.9rem;color:var(--color-text-muted)}.tax-preview-table{width:100%;border-collapse:collapse;margin-bottom:1rem}.tax-preview-table th,.tax-preview-table td{padding:.75rem .5rem;text-align:left;border-bottom:1px solid var(--color-border)}.tax-preview-table th{font-weight:600;font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.tax-preview-table .tax-label{font-weight:500}.tax-preview-table .tax-base,.tax-preview-table .tax-rate,.tax-preview-table .tax-amount{font-family:var(--font-mono, "SF Mono", monospace);text-align:right}.tax-preview-table .tax-rate{color:var(--color-primary);font-weight:600}.tax-preview-table tfoot td{border-top:2px solid var(--color-border);font-weight:600}.tax-preview-table .total-label{text-align:right;color:var(--color-text)}.tax-preview-table .total-amount{text-align:right;color:var(--color-primary);font-size:1.1rem}.tax-preview-notes{background:var(--color-background);border-radius:6px;padding:.75rem;margin-top:1rem}.tax-note{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:var(--color-text-muted);padding:.25rem 0}.tax-note .note-icon{flex-shrink:0}.tax-preview-summary{background:var(--color-background);border-radius:6px;padding:1rem;margin-top:1rem}.summary-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.95rem}.summary-row.grand-total{border-top:2px solid var(--color-border);margin-top:.5rem;padding-top:.75rem;font-weight:700;font-size:1.1rem;color:var(--color-text)}.summary-row.grand-total span:last-child{color:var(--color-primary)}.form-container{display:flex;flex-direction:column;gap:30px}.form-section h2{margin-top:0;border-bottom:1px solid var(--border-color);padding-bottom:15px;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group input,.form-group select,.form-group span{width:100%;box-sizing:border-box}.invoice-line{border:1px solid var(--border-color);padding:15px;border-radius:6px;margin-bottom:15px;background-color:#f8f9fa}.line-grid{display:grid;grid-template-columns:3fr 1fr 1fr 2fr 1fr;gap:15px;align-items:flex-end}.totals-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-color);display:flex;flex-direction:column;align-items:flex-end;gap:10px}.totals-section div{width:250px;display:flex;justify-content:space-between;font-size:1.1rem}.loading-state{display:inline-flex;align-items:center;gap:var(--space-sm, 8px);color:var(--text-secondary, #64748b);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500);padding:var(--space-xs, 4px) 0}.loading-state__spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--color-gray-200, #e5e7eb);border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:loading-state-spin .7s linear infinite;flex-shrink:0}.loading-state__text{white-space:nowrap}@keyframes loading-state-spin{to{transform:rotate(360deg)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-2xl, 48px) var(--space-lg, 24px);background:var(--bg-card, #ffffff);border:2px dashed var(--border-color, #e2e8f0);border-radius:var(--radius-lg, 12px);margin:var(--space-lg, 24px) 0}.empty-state__icon{font-size:3rem;margin-bottom:var(--space-md, 16px);opacity:.8}.empty-state__title{font-size:var(--font-size-lg, 1.125rem);font-weight:var(--font-weight-semibold, 600);color:var(--text-primary, #1e293b);margin:0 0 var(--space-sm, 8px) 0}.empty-state__description{font-size:var(--font-size-sm, .875rem);color:var(--text-secondary, #64748b);margin:0 0 var(--space-lg, 24px) 0;max-width:400px;line-height:var(--line-height-relaxed, 1.75)}.empty-state__action{display:inline-flex;align-items:center;gap:var(--space-sm, 8px);padding:var(--space-sm, 8px) var(--space-lg, 24px);background:linear-gradient(135deg,var(--color-primary, #2563eb),var(--color-primary-dark, #1d4ed8));color:#fff;font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500);text-decoration:none;border:none;border-radius:var(--radius-md, 8px);cursor:pointer;transition:all var(--transition-base, .2s ease);box-shadow:var(--shadow-sm)}.empty-state__action:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}@media (max-width: 640px){.empty-state{padding:var(--space-xl, 32px) var(--space-md, 16px)}.empty-state__icon{font-size:2.5rem}.empty-state__title{font-size:var(--font-size-base, 1rem)}}.empty-state--search,.empty-state--filter{border-style:solid;border-color:var(--color-info-light, #dbeafe);background:var(--color-info-bg, #eff6ff)}.empty-state--error{border-color:var(--color-error-light, #fee2e2);background:var(--color-error-bg, #fef2f2)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-full, 9999px);font-weight:var(--font-weight-medium, 500);white-space:nowrap;transition:all var(--transition-fast, .15s ease)}.status-badge--sm{font-size:var(--font-size-xs, .75rem);padding:2px 8px}.status-badge--md{font-size:var(--font-size-sm, .875rem);padding:4px 12px}.status-badge__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-badge--success{background:#10b9811f;color:#059669}.status-badge--success .status-badge__dot{background:#10b981}.status-badge--warning{background:#f59e0b1f;color:#d97706}.status-badge--warning .status-badge__dot{background:#f59e0b}.status-badge--error{background:#ef44441f;color:#dc2626}.status-badge--error .status-badge__dot{background:#ef4444}.status-badge--info{background:#3b82f61f;color:#2563eb}.status-badge--info .status-badge__dot{background:#3b82f6}.status-badge--neutral{background:var(--color-gray-100, #f3f4f6);color:var(--color-gray-600, #4b5563)}.status-badge--neutral .status-badge__dot{background:var(--color-gray-400, #9ca3af)}.sales-invoices-page .page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap}.sales-invoices-page .page-header h1{display:flex;align-items:center;gap:var(--space-sm)}.sales-invoices-page .page-header h1:before{content:"🧾"}.sales-invoices-page .btn-new-sale{background:linear-gradient(135deg,var(--color-success),var(--color-success-dark));color:#fff;padding:12px 24px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.sales-invoices-page .btn-new-sale:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.sales-invoices-page .btn-new-sale:before{content:"+";font-size:1.2em;font-weight:700;margin-right:6px}.sales-invoices-page .header-actions{display:flex;gap:var(--space-sm);align-items:center}.sales-invoices-page .btn-export{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);padding:12px 20px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base)}.sales-invoices-page .btn-export:hover:not(:disabled){background:var(--color-gray-100);border-color:var(--color-gray-300)}.sales-invoices-page .btn-export:disabled{opacity:.5;cursor:not-allowed}.sales-invoices-page .filters-bar{display:flex;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;align-items:flex-end;background:var(--bg-card);padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.sales-invoices-page .filter-group{display:flex;flex-direction:column;gap:var(--space-xs)}.sales-invoices-page .filter-group label{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.sales-invoices-page .filter-group input,.sales-invoices-page .filter-group select{padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--bg-input);color:var(--text-primary);min-width:140px;height:36px}.sales-invoices-page .filter-group input:focus,.sales-invoices-page .filter-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.sales-invoices-page .btn-clear-filters{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-xs);height:fit-content}.sales-invoices-page .stats-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-md);margin-bottom:var(--space-lg)}.sales-invoices-page .stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;align-items:center;gap:var(--space-md)}.sales-invoices-page .stat-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem}.sales-invoices-page .stat-icon--success{background:var(--color-success-light)}.sales-invoices-page .stat-icon--warning{background:var(--color-warning-light)}.sales-invoices-page .stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.sales-invoices-page .stat-label{font-size:var(--font-size-xs);color:var(--text-muted)}.sales-invoices-page .invoice-number{font-family:var(--font-family-mono);font-weight:var(--font-weight-medium);color:var(--color-primary)}.sales-invoices-page .invoice-total{font-family:var(--font-family-mono);font-weight:var(--font-weight-semibold);text-align:right}.sales-invoices-page .actions-cell{text-align:center}.sales-invoices-page .actions-cell select{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-xs);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);cursor:pointer;min-width:120px}.sales-invoices-page .actions-cell select:hover{border-color:var(--color-primary)}@media (max-width: 768px){.sales-invoices-page .page-header{flex-direction:column;align-items:stretch}.sales-invoices-page .btn-new-sale{width:100%;justify-content:center}.sales-invoices-page .stats-bar{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.sales-invoices-page .stats-bar{grid-template-columns:1fr}}.customer-payments-page{padding:1.5rem;max-width:1200px;margin:0 auto}.page-header h1{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a202c)}.table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--border-color, #e2e8f0)}.payments-table,.invoices-table,.alloc-table,.summary-table{width:100%;border-collapse:collapse;font-size:.875rem}.payments-table th,.invoices-table th,.alloc-table th{background:var(--bg-subtle, #f7fafc);padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary, #718096);border-bottom:1px solid var(--border-color, #e2e8f0)}.payments-table td,.invoices-table td,.alloc-table td,.alloc-table th,.summary-table th,.summary-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.payments-table tr:last-child td{border-bottom:none}.payments-table td.amount,.invoices-table td.amount,.alloc-table td.amount{text-align:right;font-variant-numeric:tabular-nums}.empty-row{text-align:center;color:var(--text-secondary, #718096);padding:2rem!important}.status-badge{display:inline-block;padding:.2rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-draft{background:#edf2f7;color:#4a5568}.badge-confirmed{background:#c6f6d5;color:#276749}.badge-cancelled{background:#fed7d7;color:#9b2c2c}.btn{padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.875rem;font-weight:500;transition:opacity .15s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#3182ce;color:#fff}.btn-secondary{background:#e2e8f0;color:#2d3748}.btn-success{background:#38a169;color:#fff}.btn-danger{background:#e53e3e;color:#fff}.btn-warning{background:#d69e2e;color:#fff}.btn-sm{padding:.3rem .6rem;font-size:.8rem}.action-buttons{display:flex;gap:.4rem;flex-wrap:wrap}.alert{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.875rem}.alert-error{background:#fff5f5;border:1px solid #FEB2B2;color:#9b2c2c}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #00000026}.modal-lg{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2{font-size:1.2rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:#718096}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;margin-top:1rem}.modal-steps{display:flex;gap:1.5rem;padding:.75rem 1.5rem;background:#f7fafc;border-bottom:1px solid #e2e8f0}.step{font-size:.8rem;color:#a0aec0;font-weight:500}.step.active{color:#3182ce;font-weight:700}.step.done{color:#38a169}.payment-form{display:flex;flex-direction:column;gap:1rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem;font-weight:500;color:#4a5568}input,select,textarea{padding:.5rem .75rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.875rem}input:focus,select:focus,textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 2px #3182ce33}.allocation-summary{background:#ebf8ff;border:1px solid #BEE3F8;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.alloc-input{width:120px;text-align:right}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.5rem;margin-bottom:1rem;font-size:.875rem}.alloc-list{list-style:none;padding:0;margin:0 0 1rem}.alloc-list li{padding:.35rem 0;border-bottom:1px solid #f0f0f0;font-size:.875rem}.confirm-warning{background:#fffbeb;border:1px solid #F6E05E;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin-top:1rem}.empty-msg{color:#718096;font-style:italic;font-size:.875rem}.loading{padding:2rem;text-align:center;color:#718096}.afip-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:600}.afip-badge-icon{font-size:.9rem}.afip-badge-label{white-space:nowrap}.afip-badge-none{background-color:#e9ecef;color:#6c757d}.afip-badge-pending{background-color:#fff3cd;color:#856404;animation:pulse 2s infinite}.afip-badge-approved{background-color:#d4edda;color:#155724}.afip-badge-rejected{background-color:#f8d7da;color:#721c24}.afip-badge-retry{background-color:#ffe4cc;color:#995700;animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.afip-badge-retry .afip-badge-icon{animation:spin 1s linear infinite;display:inline-block}.afip-badge-retry{animation:none}.emit-afip-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.emit-afip-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.emit-afip-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e9ecef}.emit-afip-modal-header h2{margin:0;font-size:1.25rem;color:#333}.emit-afip-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:4px 8px;border-radius:4px;transition:background .2s}.emit-afip-modal-close:hover{background:#f0f0f0}.emit-afip-modal-close:disabled{opacity:.5;cursor:not-allowed}.emit-afip-modal-body{padding:24px;max-height:60vh;overflow-y:auto}.emit-afip-field{margin-bottom:24px}.emit-afip-field>label{display:block;font-weight:600;color:#333;margin-bottom:12px}.emit-afip-radio-group{display:flex;flex-direction:column;gap:8px}.emit-afip-radio{display:flex;align-items:center;gap:10px;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .2s}.emit-afip-radio:hover{border-color:#0056b3;background:#f8f9fa}.emit-afip-radio input{margin:0;width:18px;height:18px}.emit-afip-radio input:checked+span{color:#0056b3;font-weight:600}.emit-afip-radio span{flex:1;color:#333}.emit-afip-radio small{color:#666;font-size:.85rem}.emit-afip-warning{display:flex;align-items:flex-start;gap:12px;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:16px}.emit-afip-warning-icon{font-size:1.5rem}.emit-afip-warning p{margin:0;color:#856404;line-height:1.5}.emit-afip-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e9ecef;background:#f8f9fa;border-radius:0 0 12px 12px}.emit-afip-modal-footer .btn{padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.emit-afip-modal-footer .btn-secondary{background:#e9ecef;color:#333}.emit-afip-modal-footer .btn-secondary:hover{background:#dee2e6}.emit-afip-modal-footer .btn-primary{background:linear-gradient(135deg,#0056b3,#003d80);color:#fff}.emit-afip-modal-footer .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0056b34d}.emit-afip-modal-footer .btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 540px){.emit-afip-modal{margin:10px}.emit-afip-modal-body{padding:16px}.emit-afip-modal-footer{flex-direction:column}.emit-afip-modal-footer .btn{width:100%}}.afip-fiscal-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;margin-top:24px;overflow:hidden}.afip-section-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border-bottom:1px solid #dee2e6}.afip-section-header h3{margin:0;font-size:1.1rem;color:#333}.afip-section-content{padding:20px}.afip-no-voucher{text-align:center;padding:20px}.afip-no-voucher p{color:#666;margin-bottom:16px}.afip-no-permission{color:#6c757d;font-style:italic;font-size:.9rem}.afip-approved{display:flex;flex-direction:column;gap:20px}.afip-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.afip-info-item{display:flex;flex-direction:column;gap:4px}.afip-info-item strong{color:#666;font-size:.85rem}.afip-info-item span{color:#333;font-weight:500}.afip-cae{font-family:monospace;font-size:1.1rem;color:#155724!important;background:#d4edda;padding:4px 8px;border-radius:4px;display:inline-block}.afip-qr-container{display:flex;flex-direction:column;align-items:center;padding:20px;background:#fff;border-radius:8px;border:1px solid #dee2e6}.afip-qr-image{width:200px;height:200px;object-fit:contain}.afip-qr-hint{margin-top:12px;color:#666;font-size:.85rem;text-align:center}.afip-pending{text-align:center;padding:30px}.afip-pending-icon{font-size:3rem;margin-bottom:16px;animation:pulse 2s infinite}.afip-pending p{color:#666;margin-bottom:8px}.afip-pending-hint{font-size:.85rem;color:#999}.afip-rejected{text-align:center}.afip-error-box{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;padding:20px;margin-bottom:16px}.afip-error-box h4{color:#721c24;margin:0 0 12px}.afip-error-code{color:#856404;font-size:.85rem;font-family:monospace}.afip-error-message{color:#721c24;font-weight:500}.afip-no-retry{color:#856404;font-style:italic;font-size:.9rem;margin-top:12px}.afip-fiscal-section .btn{padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.afip-fiscal-section .btn-primary{background:linear-gradient(135deg,#0056b3,#003d80);color:#fff}.afip-fiscal-section .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0056b34d}.afip-fiscal-section .btn-warning{background:linear-gradient(135deg,#ffc107,#e0a800);color:#333}.afip-fiscal-section .btn-warning:hover{transform:translateY(-2px)}.afip-fiscal-section .btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.afip-download-section{margin-top:20px;padding-top:20px;border-top:1px solid #dee2e6;text-align:center}.afip-fiscal-section .btn-download{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff;padding:12px 24px;font-size:1rem;display:inline-flex;align-items:center;gap:8px}.afip-fiscal-section .btn-download:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #28a7454d}.afip-fiscal-section .btn-download:disabled{opacity:.7;cursor:not-allowed}.spinner{animation:spin 1s linear infinite;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.invoice-taxes-section{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1rem 1.25rem;margin:1rem 0}.invoice-taxes-section.loading{text-align:center;color:var(--text-secondary, #6b7280);padding:1.5rem}.invoice-taxes-section h4{margin:0 0 1rem;font-size:.9rem;font-weight:600;color:var(--text-primary, #1f2937);display:flex;align-items:center;gap:.5rem}.invoice-taxes-section h4:before{content:"📋"}.taxes-table{width:100%;border-collapse:collapse;font-size:.875rem}.taxes-table th,.taxes-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--border-color, #e5e7eb)}.taxes-table th{background:var(--bg-secondary, #f9fafb);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280)}.taxes-table .text-right{text-align:right}.taxes-table .tax-icon{margin-right:.5rem}.taxes-table .tax-name{font-weight:500}.taxes-table .tax-code{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-left:.25rem}.taxes-table .tax-amount{font-weight:600;color:var(--text-primary, #1f2937)}.taxes-table tfoot .total-row{background:var(--bg-secondary, #f9fafb)}.taxes-table tfoot .total-row td{border-bottom:none;font-weight:600}.invoice-totals-summary{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e5e7eb)}.invoice-totals-summary .summary-row{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.875rem}.invoice-totals-summary .summary-row.total{margin-top:.5rem;padding-top:.5rem;border-top:2px solid var(--border-color, #e5e7eb);font-weight:700;font-size:1rem}.taxes-note{margin-top:.75rem;font-size:.75rem;color:var(--text-secondary, #6b7280);text-align:right;font-style:italic}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:1.5rem 2rem;border-radius:8px;width:90%;max-width:500px;box-shadow:0 5px 15px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:1rem;margin-bottom:1rem}.modal-header h2{margin:0;font-size:1.25rem}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.error-message{color:#d93025;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;padding:.75rem;margin-top:1rem;text-align:center}.clickable-row{cursor:pointer}.clickable-row:hover{background-color:var(--color-gray-100)}.status{display:inline-flex;align-items:center;padding:var(--badge-padding);border-radius:var(--badge-radius);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:capitalize}.status-completed{background-color:var(--color-success-light);color:var(--color-success-dark)}.detail-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--space-md);margin-bottom:var(--space-lg);border-bottom:1px solid var(--border-color)}.detail-header h1{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.reconciliation-summary.card{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg);padding:var(--space-md) var(--space-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:var(--space-lg)}.info-item{display:flex;flex-direction:column;gap:var(--space-xs)}.info-item span{font-size:var(--font-size-sm);color:var(--text-secondary)}.info-item strong{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary)}.reconciliation-details{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-lg);align-items:start}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.transactions-column h3,.summary-card h3{margin:0 0 var(--space-md) 0;padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-color);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.table-responsive{overflow-x:auto}.summary-card{display:flex;flex-direction:column;gap:var(--space-md)}.summary-line{display:flex;justify-content:space-between;font-size:var(--font-size-sm)}.summary-line.difference strong{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.summary-card hr{border:none;border-top:1px solid var(--border-color);margin:var(--space-sm) 0}.btn-block{width:100%;margin-top:var(--space-sm)}.transaction-row td{transition:background-color var(--transition-fast)}.transaction-row.selected td{background-color:var(--color-info-light)}.debit-amount{color:var(--color-error-dark);font-weight:var(--font-weight-medium);font-family:var(--font-family-mono)}.credit-amount{color:var(--color-success-dark);font-weight:var(--font-weight-medium);font-family:var(--font-family-mono)}@media (max-width: 992px){.reconciliation-details{grid-template-columns:1fr}}.budget-form{display:flex;flex-direction:column;gap:var(--space-lg)}.form-header,.form-line{display:flex;gap:var(--space-md);align-items:center}.form-header input{flex:1}.form-line select{flex:3}.form-line input{flex:1}.form-help-text{color:var(--text-muted);font-size:var(--font-size-sm);margin:0 0 var(--space-md) 0}.budget-table{width:100%;border-collapse:collapse}.budget-table th,.budget-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-color);text-align:left}.budget-table th{font-weight:var(--font-weight-semibold);background-color:var(--bg-table-header)}.budget-table .text-right{text-align:right}.budget-table .text-center{text-align:center}.budget-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.budget-link:hover{text-decoration:underline}.period-cell{font-size:var(--font-size-sm);color:var(--text-muted)}.spent-cell{color:var(--text-muted)}.status-badge.status-ok{background-color:var(--color-success-light);color:var(--color-success-dark)}.status-badge.status-warning{background-color:#fef3c7;color:#92400e}.status-badge.status-exceeded{background-color:var(--color-error-light);color:var(--color-error-dark)}.status-badge .percent-used{font-size:.7em;opacity:.8}.available-cell.status-ok{color:var(--color-success-dark);font-weight:var(--font-weight-medium)}.available-cell.status-warning{color:#92400e;font-weight:var(--font-weight-medium)}.available-cell.status-exceeded{color:var(--color-error-dark);font-weight:var(--font-weight-semibold)}.info-section{margin-top:var(--space-xl);padding:var(--space-md) var(--space-lg);background-color:var(--color-info-light);border:1px solid var(--color-info);border-radius:var(--radius-lg)}.info-section h3{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-base);color:var(--color-info-dark)}.info-section ul{margin:0;padding-left:var(--space-lg)}.info-section li{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-sm)}.info-section li:last-child{margin-bottom:0}.info-section strong{color:var(--text-primary)}.budgets-page .empty-state{text-align:center;padding:var(--space-2xl);color:var(--text-muted)}.positive-variance{color:#2e7d32}.negative-variance{color:#c62828}.page-container{display:flex;flex-direction:column;gap:20px}.table-section{background-color:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000000d;border:1px solid #e0e0e0}.header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.filters-panel{background-color:var(--content-bg, #fff);border:1px solid var(--border-color, #dee2e6);border-radius:8px;margin-bottom:1.5rem;overflow:hidden}.filters-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#f8f9fa;border-bottom:1px solid var(--border-color, #dee2e6);-webkit-user-select:none;user-select:none}.filters-header h3{margin:0;font-size:1rem;display:flex;align-items:center;gap:.5rem}.filters-badge{background-color:var(--primary-color, #007bff);color:#fff;font-size:.7rem;padding:.15rem .5rem;border-radius:10px;font-weight:400}.filters-content{padding:1rem}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.filter-group{display:flex;flex-direction:column;gap:.35rem}.filter-group label{font-size:.85rem;font-weight:500;color:#495057}.filter-group input,.filter-group select{padding:.5rem .75rem;border:1px solid var(--border-color, #ced4da);border-radius:4px;font-size:.9rem}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--primary-color, #007bff);box-shadow:0 0 0 2px #007bff1a}.filters-actions{display:flex;gap:.75rem;padding-top:.5rem;border-top:1px solid #eee}.summary-bar{display:flex;flex-wrap:wrap;gap:1.5rem;padding:.75rem 1rem;background-color:#e9ecef;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem;align-items:center}.filter-indicator{color:var(--primary-color, #007bff);font-weight:500}.journal-container{display:flex;flex-direction:column;gap:1.5rem}.journal-entry{background-color:var(--content-bg, #fff);border:1px solid var(--border-color, #dee2e6);border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.entry-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;background-color:#f8f9fa;border-bottom:1px solid var(--border-color, #dee2e6);flex-wrap:wrap;gap:.5rem}.entry-header-left{display:flex;align-items:center;gap:1rem}.entry-number{background-color:var(--primary-color, #007bff);color:#fff;padding:.2rem .6rem;border-radius:4px;font-size:.8rem;font-weight:600}.entry-date{font-weight:500;color:#6c757d;font-size:.95rem}.entry-description{font-weight:600;font-size:1rem;color:#212529}.entry-source-badge{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.7rem;font-weight:600;color:#fff;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap}.entry-table{width:100%;border-collapse:collapse}.entry-table th,.entry-table td{padding:.65rem 1.25rem;text-align:left}.entry-table thead{background-color:#fafafa}.entry-table thead th{font-weight:600;font-size:.85rem;color:#6c757d;text-transform:uppercase;letter-spacing:.3px}.entry-table tbody tr:not(:last-child) td{border-bottom:1px solid #eee}.entry-table tbody tr:hover{background-color:#f8f9fa}.debit-row .account-col{padding-left:1.25rem}.credit-row .account-col{padding-left:2.5rem}.credit-row .account-name:before{content:"a ";color:#6c757d;font-style:italic}.account-col{width:60%}.account-col .account-code{display:inline-block;background-color:#e9ecef;padding:.15rem .4rem;border-radius:3px;font-family:Courier New,Courier,monospace;font-size:.8rem;margin-right:.5rem;color:#495057}.account-col .account-name{color:#212529}.debit-col,.credit-col{width:20%;text-align:right;font-family:Courier New,Courier,monospace;font-size:.95rem}.entry-table tfoot{background-color:#f8f9fa;border-top:2px solid var(--border-color, #dee2e6)}.entry-totals td{font-size:.9rem}.empty-state{text-align:center;padding:3rem 1rem;background-color:var(--content-bg, #fff);border:1px solid var(--border-color, #dee2e6);border-radius:8px}.empty-state p{color:#6c757d;margin-bottom:1rem}.loading-state{text-align:center;padding:2rem;color:#6c757d}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start}.filters-grid{grid-template-columns:1fr}.summary-bar{flex-direction:column;gap:.5rem;align-items:flex-start}.entry-header{flex-direction:column;align-items:flex-start}.entry-table th,.entry-table td{padding:.5rem .75rem}.debit-col,.credit-col{font-size:.85rem}}.amount{text-align:right;font-family:var(--font-family-mono);font-weight:var(--font-weight-medium);white-space:nowrap}.profit{color:var(--color-success-dark)}.loss{color:var(--color-error-dark)}.vat-tabs{display:flex;gap:0;margin-bottom:1rem;border-bottom:2px solid var(--border-color, #e2e8f0)}.vat-tab{padding:.75rem 1.5rem;border:none;background:none;cursor:pointer;font-size:.95rem;font-weight:var(--font-weight-medium, 500);color:var(--text-secondary, #64748b);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s}.vat-tab:hover{color:var(--text-primary, #1e293b)}.vat-tab--active{color:var(--color-primary, #3b82f6);border-bottom-color:var(--color-primary, #3b82f6);font-weight:var(--font-weight-semibold, 600)}.vat-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.vat-ledger-table{min-width:1100px}.vat-ledger-table th,.vat-ledger-table td{white-space:nowrap;padding:.5rem .75rem}.vat-ledger-table .amount{text-align:right;font-family:var(--font-family-mono, "SF Mono", "Fira Code", monospace);font-weight:var(--font-weight-medium, 500)}.vat-ledger-table .total-col{font-weight:var(--font-weight-semibold, 600)}.vat-report-header{margin-bottom:1rem}.vat-report-header h2{margin:0 0 .5rem;font-size:1.15rem}.vat-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem}.vat-meta-item{color:var(--text-secondary, #64748b)}.vat-meta-item--closed{color:var(--color-warning-dark, #d97706);font-weight:var(--font-weight-medium, 500)}.vat-meta-item--validated{color:var(--color-success-dark, #16a34a);font-weight:var(--font-weight-medium, 500)}.vat-meta-item--warning{color:var(--color-warning-dark, #d97706)}.vat-totals{margin-top:1.5rem}.vat-totals h3{margin:0 0 1rem;font-size:1rem}.vat-totals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.vat-total-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;border-radius:var(--border-radius, 8px);background:var(--bg-secondary, #f8fafc)}.vat-total-label{font-size:.8rem;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.03em}.vat-total-value{font-size:1.05rem;font-weight:var(--font-weight-semibold, 600);font-family:var(--font-family-mono, "SF Mono", "Fira Code", monospace)}.vat-total-item--grand{background:var(--color-primary-light, #eff6ff);border:1px solid var(--color-primary, #3b82f6)}.vat-total-item--grand .vat-total-label{color:var(--color-primary-dark, #1d4ed8);font-weight:var(--font-weight-semibold, 600)}.vat-total-item--grand .vat-total-value{color:var(--color-primary-dark, #1d4ed8);font-size:1.15rem}.vat-precision{margin-top:1rem;padding:.75rem 1rem;border-radius:var(--border-radius, 8px);background:var(--bg-warning-light, #fffbeb);border:1px solid var(--border-warning, #fbbf24);font-size:.875rem;color:var(--text-primary, #1e293b)}.vat-precision-hint{color:var(--text-secondary, #64748b);font-size:.825rem}@media (max-width: 768px){.vat-tabs{gap:0}.vat-tab{flex:1;text-align:center;padding:.6rem .5rem;font-size:.9rem}.vat-totals-grid{grid-template-columns:repeat(2,1fr)}}.consumption-grand-total{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);margin-top:var(--space-md)}.consumption-grand-total .total-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.consumption-grand-total .total-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);font-family:var(--font-family-mono);color:var(--color-success-dark)}.consumption-stats{display:flex;gap:var(--space-lg);margin-top:var(--space-sm)}.consumption-stats .stat-item{font-size:var(--font-size-sm);color:var(--text-secondary)}.consumption-stats .stat-value{font-weight:var(--font-weight-semibold);color:var(--text-primary)}.consumption-empty{text-align:center;padding:var(--space-2xl);color:var(--text-secondary)}.consumption-empty .empty-icon{font-size:3rem;margin-bottom:var(--space-md)}.po-form-container{display:flex;flex-direction:column;gap:30px;max-width:900px;margin:20px auto}.form-section{background-color:var(--content-bg);padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000000d;border:1px solid var(--border-color)}.form-section h2{margin-top:0;border-bottom:1px solid var(--border-color);padding-bottom:15px;margin-bottom:20px;font-size:1.2rem}.header-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;font-size:.9rem}.lines-table{width:100%;border-collapse:collapse;margin-bottom:15px}.lines-table th,.lines-table td{text-align:left;padding:8px;vertical-align:middle}.lines-table td{border-bottom:1px solid var(--border-color)}.btn-remove{background:none;border:none;color:#dc3545;font-size:1.5rem;line-height:1;cursor:pointer;padding:0 5px;border-radius:50%;transition:background-color .2s}.btn-remove:hover{background-color:#f8d7da}.btn-remove:disabled{color:#adb5bd;cursor:not-allowed}.form-footer{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.form-footer h3{margin:0;font-size:1.4rem}.form-actions{display:flex;gap:10px}.dashboard-container{padding:0}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);padding:var(--space-lg);background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.dashboard-header h1{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.btn-refresh{background-color:var(--color-success);color:#fff;border:none;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background-color var(--transition-fast)}.btn-refresh:hover{background-color:var(--color-success-dark)}.overview-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-md);margin-bottom:var(--space-lg)}.card{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);display:flex;align-items:center;gap:var(--space-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.card-icon{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:var(--radius-md)}.card-content h3{margin:0 0 var(--space-xs) 0;font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em}.card-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);font-family:var(--font-family-mono);line-height:1.1}.dashboard-grid.crm-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}.dashboard-section{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.dashboard-section h2{margin:0 0 var(--space-md) 0;padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-primary);color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.dashboard-section.widget-large{grid-column:span 2}.stats-table{overflow-x:auto}.stats-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.stats-table thead tr{background:var(--bg-table-header)}.stats-table th{padding:var(--space-sm) var(--space-md);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid var(--border-color)}.stats-table th:nth-child(2),.stats-table th:nth-child(3),.stats-table td:nth-child(2),.stats-table td:nth-child(3){text-align:right}.stats-table td{padding:var(--space-sm) var(--space-md);color:var(--text-primary);border-bottom:1px solid var(--border-color);vertical-align:middle}.stats-table tbody tr:last-child td{border-bottom:none}.stats-table tbody tr:hover{background:var(--color-gray-50)}.stats-table td:nth-child(2){font-weight:var(--font-weight-semibold);font-family:var(--font-family-mono)}.stats-table td:nth-child(3){font-weight:var(--font-weight-bold);font-family:var(--font-family-mono);color:var(--color-success-dark)}.followups-list,.quotes-list{display:flex;flex-direction:column;gap:var(--space-sm);max-height:350px;overflow-y:auto}.followup-item{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-md);background:var(--bg-secondary);transition:border-color var(--transition-fast)}.followup-item:hover{border-color:var(--color-primary)}.followup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm);gap:var(--space-sm)}.followup-header strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.followup-type{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);background-color:var(--color-info-light);color:var(--color-info-dark);border-radius:var(--radius-full);font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0}.followup-date{font-size:var(--font-size-xs);color:var(--text-muted);margin-bottom:var(--space-sm)}.followup-description{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--text-secondary);margin-bottom:var(--space-sm)}.followup-outcome{font-size:var(--font-size-xs);color:var(--color-success-dark);padding-top:var(--space-sm);border-top:1px solid var(--border-color)}.followup-outcome strong{font-weight:var(--font-weight-medium)}.quote-item{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-md);background:var(--bg-secondary);transition:border-color var(--transition-fast)}.quote-item:hover{border-color:var(--color-primary)}.quote-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm);gap:var(--space-sm)}.quote-header strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-number{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);background-color:var(--color-gray-100);color:var(--color-gray-600);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-weight-bold);font-family:var(--font-family-mono);white-space:nowrap;flex-shrink:0}.quote-details{display:grid;grid-template-columns:1fr auto;gap:var(--space-md);align-items:center;margin-bottom:var(--space-sm);padding:var(--space-sm) 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.quote-details>div:first-child{font-size:var(--font-size-xs);color:var(--text-muted)}.quote-details>div:last-child{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);font-family:var(--font-family-mono);color:var(--text-primary);text-align:right}.quote-status{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);color:var(--text-secondary)}.quote-status:before{content:"";width:8px;height:8px;border-radius:50%;background-color:var(--color-warning)}.empty-state{text-align:center;padding:var(--space-xl);color:var(--text-muted);font-size:var(--font-size-sm)}@media (max-width: 1400px){.overview-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.dashboard-grid.crm-grid{grid-template-columns:1fr}.dashboard-section.widget-large{grid-column:span 1}.overview-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.overview-cards{grid-template-columns:1fr}.card{flex-direction:row;text-align:left}.dashboard-header{flex-direction:column;gap:var(--space-md);text-align:center}.dashboard-header h1{font-size:var(--font-size-xl)}.btn-refresh{width:100%}.quote-details{grid-template-columns:1fr;gap:var(--space-xs)}.quote-details>div:last-child{text-align:left}}.crm-financial-dashboard{padding:1.5rem;color:#444}.dashboard-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;padding:1rem;background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem}.quick-filters{display:flex;gap:.5rem;flex-grow:1;margin-bottom:.5rem}.filter-item{display:flex;flex-direction:column}.filter-item label{font-size:.8rem;font-weight:500;color:#444;margin-bottom:.25rem}.filter-item input{padding:.6rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.9rem}.filter-button,.quick-filter-btn{padding:.6rem 1rem;border-radius:6px;border:1px solid transparent;font-weight:600;cursor:pointer;transition:all .2s;font-size:.9rem;white-space:nowrap}.filter-button{background-color:#3182ce;color:#fff;border-color:#3182ce}.filter-button:hover{background-color:#2b6cb0}.quick-filter-btn{background-color:#fff;color:#444;border-color:#cbd5e0}.quick-filter-btn.active,.quick-filter-btn:hover{background-color:#edf2f7;border-color:#a0aec0;color:#2b6cb0}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.kpi-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;box-shadow:0 2px 6px #00000014;text-align:center}.kpi-title{font-size:.9rem;font-weight:600;color:#444;margin:0 0 .5rem}.kpi-value{font-size:2.5rem;font-weight:700;color:#1a202c;margin:0;line-height:1.2}.kpi-change{font-size:.8rem;font-weight:500;margin-top:.3rem;display:flex;align-items:center;justify-content:center;opacity:.8}.kpi-change--positive{color:#38a169}.kpi-change--negative{color:#c53030}.kpi-change--negative-balance{color:#e57373}.chart-container{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;box-shadow:0 2px 6px #00000014;margin-bottom:1.5rem}.chart-container:last-child{margin-bottom:0}.chart-title{margin-top:0;margin-bottom:1.5rem;font-size:1.15rem;font-weight:600;color:#444}.no-data-message{min-height:350px;display:flex;justify-content:center;align-items:center;font-size:.9rem;color:#666;text-align:center;padding:1rem}.error-message{color:#c53030;background-color:#fed7d7;border:1px solid #f56565;padding:1rem;border-radius:8px;margin-bottom:1.5rem}@media (max-width: 768px){.crm-financial-dashboard{padding:1rem}.kpi-grid{grid-template-columns:1fr;gap:.8rem}.kpi-value{font-size:2rem}.kpi-change{font-size:.75rem}.dashboard-filters{flex-direction:column;align-items:stretch}.quick-filters{justify-content:center;width:100%;margin-bottom:1rem}.quick-filter-btn{flex-grow:1}.filter-item{width:100%}.filter-item input{font-size:1rem}.filter-button{width:100%;margin-top:.5rem}.chart-container{padding:1rem}.chart-title{font-size:1.1rem}body{font-size:14px}.recharts-cartesian-axis-tick-value{font-size:.75rem}}.kpi-fulfillment{font-size:.8rem;font-weight:600;margin-top:.5rem;padding:.2rem .5rem;border-radius:12px;display:inline-block}.kpi-fulfillment--on-track{background-color:#e6f7eb;color:#38a169}.kpi-fulfillment--off-track{background-color:#feeeee;color:#c53030}.status-badge{padding:.25em .6em;border-radius:10px;font-size:.8em;font-weight:700;color:#fff;text-transform:uppercase;white-space:nowrap}.status-draft{background-color:#6c757d}.status-sent{background-color:#007bff}.status-accepted{background-color:#28a745}.status-rejected{background-color:#dc3545}.status-expired{background-color:#ffc107;color:#333}.status-converted{background-color:#6f42c1}.lines-header{margin-top:var(--space-lg);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-color);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.form-line-item{display:grid;grid-template-columns:1fr 2fr 80px 100px 40px;gap:var(--space-sm);align-items:center;margin-bottom:var(--space-sm);padding:var(--space-sm);background:var(--bg-secondary);border-radius:var(--radius-md)}.form-line-item select,.form-line-item input{height:36px;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm)}.form-line-item .btn-danger{padding:var(--space-xs);min-width:32px;height:32px}@media (max-width: 768px){.form-line-item{grid-template-columns:1fr 1fr;gap:var(--space-xs)}.form-line-item .btn-danger{grid-column:span 2;justify-self:end}}.delivery-note-modal{max-width:700px;width:95%}.modal-header{position:relative}.order-reference{margin:.5rem 0 0;color:var(--color-text-muted);font-size:.9rem}.modal-close{position:absolute;top:0;right:0;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-muted);padding:.5rem}.modal-close:hover{color:var(--color-text)}.lines-section{margin:1.5rem 0}.section-header h3{margin:0;font-size:1rem}.select-all{display:flex;align-items:center;gap:.5rem;font-size:.9rem;cursor:pointer}.lines-table{width:100%;border-collapse:collapse}.lines-table th,.lines-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--color-border)}.lines-table th{font-weight:600;font-size:.85rem;color:var(--color-text-muted);text-transform:uppercase}.lines-table tr.disabled{opacity:.5}.quantity-input{width:80px;padding:.4rem;text-align:right;border:1px solid var(--color-border);border-radius:4px}.quantity-input:disabled{background:var(--color-background)}.max-qty{margin-left:.5rem;color:var(--color-text-muted);font-size:.85rem}.delivery-info-section{margin:1.5rem 0;padding:1rem;background:var(--color-background);border-radius:8px}.delivery-info-section h3{margin:0 0 1rem;font-size:1rem}.form-group label{font-size:.85rem;font-weight:500;color:var(--color-text-muted)}.form-group input,.form-group textarea{padding:.5rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.95rem;cursor:pointer;transition:all .2s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-surface);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-background)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.followups-page{max-width:1200px}.followups-page .page-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm);margin-top:var(--space-xs)}.followups-page .description-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.followups-page tbody tr.row-overdue{background-color:var(--color-error-light)}.followups-page tbody tr.row-overdue:hover{background-color:#fecaca}.followups-page .date-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);font-family:var(--font-family-mono)}.followups-page .date-badge.badge-today{background:var(--color-info-light);color:var(--color-info-dark);border:1px solid rgba(37,99,235,.2)}.followups-page .date-badge.badge-overdue{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid rgba(239,68,68,.2)}.followups-page .date-badge.badge-future{background:var(--color-gray-100);color:var(--color-gray-600);border:1px solid var(--border-color)}.followups-page .badge-label{font-family:var(--font-family);font-weight:var(--font-weight-semibold);margin-right:var(--space-xs)}.followups-page .type-badge{display:inline-block;padding:var(--space-xs) var(--space-sm);background:var(--color-gray-100);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-gray-600)}.followups-page .customer-name{font-weight:var(--font-weight-medium);color:var(--color-primary)}.followups-page .date-cell{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--text-secondary);white-space:nowrap}.followups-page .next-followup-cell{text-align:center}.followups-page .empty-value{color:var(--text-muted);font-style:italic}.followups-page .actions-cell{text-align:center;white-space:nowrap}.followups-page .btn-icon{background:none;border:none;padding:var(--space-xs);cursor:pointer;font-size:1rem;transition:transform var(--transition-fast),opacity var(--transition-fast);opacity:.7}.followups-page .btn-icon:hover{opacity:1;transform:scale(1.1)}.followups-page .btn-edit{margin-right:var(--space-xs)}.followups-page .empty-state-cell{padding:var(--space-2xl);text-align:center}.followups-page .empty-state-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.followups-page .empty-icon{font-size:2.5rem;opacity:.5}.followups-page .empty-state-content p{color:var(--text-secondary);margin:0}@media (max-width: 768px){.followups-page .description-cell{max-width:150px}}.crm-page{padding:1.5rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-left{display:flex;align-items:center;gap:1rem}.header-left h1{margin:0;font-size:1.75rem;font-weight:600;color:#1e293b}.count-badge{background:#e2e8f0;color:#475569;padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:500}.filters-bar{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-input{flex:1;min-width:200px;padding:.625rem 1rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-select{padding:.625rem 1rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;background:#fff;min-width:150px}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.data-table th{background:#f8fafc;padding:1rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;color:#64748b;border-bottom:1px solid #e2e8f0}.data-table td{padding:1rem;border-bottom:1px solid #f1f5f9;font-size:.875rem;color:#334155}.data-table tr:hover td{background:#f8fafc}.name-cell strong{color:#1e293b}.contact-cell{font-size:.8125rem}.contact-cell .email{color:#3b82f6}.contact-cell .phone{color:#64748b}.actions-cell{display:flex;gap:.5rem;align-items:center}.status-select{padding:.25rem .5rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.75rem;background:#fff}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;color:#fff}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;padding:1.5rem;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #0003}.modal-content h2{margin:0 0 1.5rem;font-size:1.25rem;color:#1e293b}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.875rem;color:#374151}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input{width:auto}.convert-info{background:#f0f9ff;border:1px solid #bae6fd;padding:.75rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem;color:#0369a1}.form-note{background:#fef3c7;border:1px solid #fde68a;padding:.75rem;border-radius:8px;margin-top:1rem;font-size:.8125rem;color:#92400e}.loading-spinner{text-align:center;padding:3rem;color:#64748b}.empty-state{text-align:center;padding:4rem 2rem;background:#f8fafc;border-radius:12px;color:#64748b}.empty-state p{margin-bottom:1rem}.pipeline-page .pipeline-stats{display:flex;gap:1.5rem}.pipeline-stats .stat{font-size:.875rem;color:#64748b}.pipeline-stats .stat strong{color:#1e293b}.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;overflow-x:auto}.kanban-column{background:#f8fafc;border-radius:12px;min-height:400px;display:flex;flex-direction:column;transition:background .2s}.kanban-column.drop-target{background:#dbeafe;outline:2px dashed #3b82f6}.column-header{padding:1rem;border-top:4px solid #94a3b8;border-radius:12px 12px 0 0;background:#fff}.column-title{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.stage-name{font-weight:600;color:#1e293b}.stage-count{background:#e2e8f0;color:#475569;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem}.column-total{font-size:.875rem;color:#059669;font-weight:500}.column-cards{flex:1;padding:.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.opportunity-card{background:#fff;border-radius:8px;padding:.875rem;box-shadow:0 1px 3px #00000014;cursor:grab;transition:all .2s}.opportunity-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.opportunity-card.dragging{opacity:.5}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.opp-name{font-weight:500;color:#1e293b;font-size:.875rem}.opp-probability{background:#f1f5f9;color:#64748b;padding:.125rem .375rem;border-radius:4px;font-size:.75rem}.card-value{font-size:.9375rem;font-weight:600;color:#059669;margin-bottom:.25rem}.card-date{font-size:.75rem;color:#64748b}.empty-column{text-align:center;padding:2rem;color:#94a3b8;font-size:.875rem}.modal-detail{max-width:400px}.opp-detail{margin-bottom:1rem}.detail-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #f1f5f9}.detail-row .label{color:#64748b;font-size:.875rem}.detail-row .value{font-weight:500;color:#1e293b}.detail-row.notes{flex-direction:column;gap:.5rem}.detail-row.notes p{margin:0;color:#374151}.stage-badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:500;color:#fff}.my-day-page .day-stats{display:flex;gap:1.5rem}.day-stats .stat{font-size:.875rem;color:#64748b}.day-stats .stat.urgent{color:#dc2626;font-weight:500}.day-stats .stat strong{color:#1e293b}.my-day-content{display:flex;flex-direction:column;gap:1.5rem}.task-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.task-section.overdue-section{border-left:4px solid #dc2626}.section-header{padding:1rem 1.25rem;background:#f8fafc;display:flex;justify-content:space-between;align-items:center}.section-header.collapsible{cursor:pointer}.section-header.collapsible:hover{background:#f1f5f9}.section-header h2{margin:0;font-size:1rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:.5rem}.section-count{background:#e2e8f0;color:#475569;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.overdue-section .section-count{background:#fee2e2;color:#dc2626}.collapse-icon{color:#64748b;font-size:.75rem}.section-tasks{padding:.5rem}.empty-section{text-align:center;padding:2rem;color:#94a3b8;font-size:.875rem}.task-card{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;border-radius:8px;transition:background .2s;border-left:3px solid transparent}.task-card:hover{background:#f8fafc}.task-card.overdue{background:#fef2f2;border-left-color:#dc2626}.task-card.priority-high{border-left-color:#dc2626}.task-card.priority-low{border-left-color:#94a3b8}.task-main{display:flex;align-items:flex-start;gap:.75rem;flex:1}.complete-btn{width:24px;height:24px;border-radius:50%;border:2px solid #e2e8f0;background:#fff;cursor:pointer;font-size:.875rem;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.complete-btn:hover{border-color:#22c55e;background:#dcfce7}.task-content{flex:1;cursor:pointer}.task-header{display:flex;gap:.5rem;align-items:center;margin-bottom:.25rem}.task-type{font-size:.75rem;color:#64748b}.task-title{font-weight:500;color:#1e293b;margin-bottom:.25rem}.task-due{font-size:.8125rem;color:#64748b}.task-card.overdue .task-due{color:#dc2626}.task-actions{display:flex;gap:.25rem}.all-done{text-align:center;padding:4rem 2rem;background:#f0fdf4;border-radius:12px;border:2px dashed #22c55e}.all-done-icon{font-size:3rem;margin-bottom:1rem}.all-done h2{margin:0 0 .5rem;color:#166534}.all-done p{color:#15803d;margin-bottom:1.5rem}@media (max-width: 1024px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.page-header{flex-direction:column;gap:1rem;align-items:stretch}.filters-bar{flex-direction:column}.form-row,.kanban-board{grid-template-columns:1fr}.data-table{display:block;overflow-x:auto}.actions-cell{flex-wrap:wrap}}.form-group.full-width{flex-basis:100%}.form-group textarea{width:100%;min-height:80px;padding:8px;border:1px solid #ccc;border-radius:4px}.page-container{padding:20px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;padding:25px;border-radius:8px;width:100%;max-width:500px;box-shadow:0 4px 15px #0003}.modal-content h2{margin-top:0;margin-bottom:20px}.message.small{padding:8px;margin-top:15px;font-size:.9rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.filters-container{display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:8px;flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:.25rem}.filter-group label{font-size:.85rem;font-weight:500;color:#666}.filter-group select{padding:.5rem;border:1px solid #ddd;border-radius:4px;min-width:180px}.filter-actions{display:flex;gap:.5rem}.data-table th,.data-table td{padding:.75rem;text-align:left;border-bottom:1px solid #e2e8f0}.data-table th{background:#2d3748;color:#fff;font-weight:600}.data-table tbody tr:hover{background:#f7fafc}.data-table tr.sin-stock{background:#fed7d7}.data-table tr.stock-bajo{background:#fefcbf}.data-table tr.stock-ok{background:#c6f6d5}.badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.badge-green{background:#c6f6d5;color:#276749}.badge-red{background:#fed7d7;color:#c53030}.badge-gray{background:#e2e8f0;color:#4a5568}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:8px;min-width:400px;max-width:90vw}.modal-content h2{margin-top:0;margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.25rem;font-weight:500}.form-group input,.form-group select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem}.message{padding:1rem;border-radius:4px;margin-bottom:1rem}.message.success{background:#c6f6d5;color:#276749}.message.error{background:#fed7d7;color:#c53030}.loading,.empty-state{text-align:center;padding:2rem;color:#718096}.kardex-filters-container{padding:var(--space-md);background-color:var(--bg-card);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.kardex-header{margin-bottom:var(--space-md);padding:0 var(--space-xs)}.kardex-header h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--space-xs) 0}.kardex-header strong{font-weight:var(--font-weight-bold);color:var(--text-primary)}.kardex-header span{color:var(--text-secondary);font-size:var(--font-size-sm)}td.quantity-in{color:var(--color-success-dark);font-weight:var(--font-weight-semibold);font-family:var(--font-family-mono)}td.quantity-out{color:var(--color-error-dark);font-weight:var(--font-weight-semibold);font-family:var(--font-family-mono)}td.quantity-balance{font-weight:var(--font-weight-bold);font-family:var(--font-family-mono);color:var(--text-primary)}td.value-cell{text-align:right;font-family:var(--font-family-mono);font-weight:var(--font-weight-medium)}.kardex-total-row{background:var(--bg-table-header);font-weight:var(--font-weight-bold)}.kardex-total-row td{border-top:2px solid var(--border-color);padding:var(--space-md)}.delivery-notes-page{max-width:1200px}.order-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.order-link:hover{text-decoration:underline}.remito-notice{background:var(--color-warning-light);border:1px solid var(--color-warning);border-left:4px solid var(--color-warning);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg);font-size:var(--font-size-sm);color:var(--color-warning-dark)}.remito-microcopy{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--color-primary)}.remito-microcopy a{color:var(--color-primary);font-weight:var(--font-weight-medium)}.remito-microcopy a:hover{text-decoration:underline}.empty-state .empty-hint{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-sm)}.flow-diagram{margin-top:var(--space-xl);padding:var(--space-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.flow-diagram h3{margin:0 0 var(--space-md) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.flow-steps{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);flex-wrap:wrap}.flow-step{display:flex;flex-direction:column;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-radius:var(--radius-md);min-width:100px}.flow-step.active{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-darker) 100%);color:var(--text-inverse)}.flow-step .step-icon{font-size:1.5rem;margin-bottom:var(--space-sm)}.flow-step .step-label{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.flow-step .step-action,.flow-step .step-impact{font-size:var(--font-size-xs);margin-top:var(--space-xs);opacity:.8}.flow-arrow{font-size:1.5rem;color:var(--text-muted)}.actions-cell{display:flex;gap:var(--space-sm)}@media print{.sidebar,nav,.page-header,.page-actions,.btn,.form-actions,.sidebar-overlay{display:none!important}body,.main-content,.page-container{background:#fff!important;padding:0!important;margin:0!important}.card{box-shadow:none!important;border:1px solid #ccc!important;break-inside:avoid}.data-table{width:100%!important}.data-table th,.data-table td{border:1px solid #ccc!important}}.dn-selector{border:1px solid var(--color-border, #e5e7eb);border-radius:8px;overflow:hidden}.dn-selector-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--color-background, #f9fafb);border-bottom:1px solid var(--color-border, #e5e7eb)}.dn-selector-header h3{margin:0;font-size:1rem}.select-all{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.dn-groups{max-height:400px;overflow-y:auto}.dn-group{border-bottom:1px solid var(--color-border, #e5e7eb)}.dn-group:last-child{border-bottom:none}.dn-group-header{padding:.75rem 1rem;background:var(--color-surface, #fff);border-bottom:1px solid var(--color-border, #e5e7eb)}.dn-lines-table{width:100%;border-collapse:collapse}.dn-lines-table th,.dn-lines-table td{padding:.5rem 1rem;text-align:left}.dn-lines-table th{font-size:.75rem;font-weight:600;color:var(--color-text-muted, #6b7280);text-transform:uppercase;background:var(--color-background, #f9fafb)}.dn-lines-table tr.selected{background:#eff6ff}.dn-lines-table .text-right{text-align:right}.qty-input{width:80px;padding:.25rem .5rem;text-align:right;border:1px solid var(--color-border, #e5e7eb);border-radius:4px}.qty-input:disabled{background:var(--color-background, #f9fafb);color:var(--color-text-muted, #9ca3af)}.dn-selector-empty,.dn-selector-loading,.dn-selector-error{padding:2rem;text-align:center;color:var(--color-text-muted, #6b7280)}.dn-selector-empty .empty-icon{font-size:2rem;margin-bottom:.5rem}.dn-selector-error{color:#dc2626}.invoice-from-dn-page{max-width:900px}.business-rule-notice{background:#fef3c7;border:1px solid #f59e0b;border-left:4px solid #f59e0b;border-radius:8px;padding:1rem;margin-bottom:1.5rem;font-size:.9rem;color:#92400e}.invoice-dn-form{display:flex;flex-direction:column;gap:1.5rem}.form-section{background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:10px;padding:1.5rem}.form-section h2{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--color-text, #111)}.customer-select{width:100%;padding:.75rem;font-size:1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;background:#fff}.invoice-details-grid{display:grid;grid-template-columns:1fr 2fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.25rem}.form-group label{font-size:.85rem;font-weight:500;color:var(--color-text-muted, #6b7280)}.form-group input,.form-group textarea{padding:.5rem;border:1px solid var(--color-border, #e5e7eb);border-radius:4px;font-size:.95rem}.form-group textarea{resize:vertical}.summary-section{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-item span{font-size:.8rem;color:var(--color-text-muted, #6b7280)}.summary-item strong{font-size:1.1rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--color-border, #e5e7eb)}.message{padding:1rem;border-radius:8px;margin-bottom:1rem}.message.error{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.message.success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}@media (max-width: 768px){.invoice-details-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}}.login-page{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.login-container{background-color:#fff;padding:2.5rem;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px;text-align:center}.login-container h1{margin-top:0;margin-bottom:.5rem;color:#333;font-size:1.75rem}.login-container p{margin-bottom:2rem;color:#666}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-form .form-group{text-align:left}.login-form label{display:block;margin-bottom:.5rem;font-weight:600;color:#444}.login-form input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.login-button{padding:.75rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;transition:background-color .2s;margin-top:.5rem}.login-button:disabled{background-color:#aaa;cursor:not-allowed}.login-button:hover:not(:disabled){background-color:#0056b3}.login-error{color:#d9534f;margin-top:0;background-color:#f8d7da;border:1px solid #f5c6cb;padding:.75rem;border-radius:4px;text-align:center}.signup-link{margin-top:1.5rem;font-size:.9rem}.signup-link a{color:#007bff;text-decoration:none;font-weight:600}.signup-link a:hover{text-decoration:underline}.forgot-password-link{margin-top:1rem;font-size:.9rem}.forgot-password-link a{color:#6c757d;text-decoration:none}.forgot-password-link a:hover{color:#007bff;text-decoration:underline}.forgot-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:20px}.forgot-password-container{background:#fffffff2;padding:40px;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:420px;text-align:center}.forgot-password-container h1{color:#1a1a2e;margin-bottom:10px;font-size:1.8rem}.forgot-password-description{color:#666;margin-bottom:30px;line-height:1.5}.forgot-password-form{display:flex;flex-direction:column;gap:20px}.forgot-password-form .form-group{text-align:left}.forgot-password-form label{display:block;margin-bottom:8px;color:#333;font-weight:500}.forgot-password-form input{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.forgot-password-form input:focus{outline:none;border-color:#0f3460;box-shadow:0 0 0 3px #0f34601a}.forgot-password-form input:disabled{background-color:#f5f5f5;cursor:not-allowed}.forgot-password-button{padding:14px 24px;background:linear-gradient(135deg,#0f3460,#16213e);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.forgot-password-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #0f34604d}.forgot-password-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.forgot-password-success{padding:20px 0}.forgot-password-success p{color:#333;line-height:1.6;margin-bottom:10px}.success-note{color:#666;font-size:.9rem}@media (max-width: 480px){.forgot-password-container{padding:30px 20px}.forgot-password-container h1{font-size:1.5rem}}.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:20px}.reset-password-container{background:#fffffff2;padding:40px;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:420px;text-align:center}.reset-password-container h1{color:#1a1a2e;margin-bottom:10px;font-size:1.8rem}.reset-password-description{color:#666;margin-bottom:30px;line-height:1.5}.reset-password-form{display:flex;flex-direction:column;gap:20px}.reset-password-form .form-group{text-align:left}.reset-password-form label{display:block;margin-bottom:8px;color:#333;font-weight:500}.reset-password-form input{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.reset-password-form input:focus{outline:none;border-color:#0f3460;box-shadow:0 0 0 3px #0f34601a}.reset-password-form input:disabled{background-color:#f5f5f5;cursor:not-allowed}.validation-error{display:block;margin-top:6px;color:#dc3545;font-size:.85rem}.reset-password-button{display:inline-block;padding:14px 24px;background:linear-gradient(135deg,#0f3460,#16213e);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;text-decoration:none;text-align:center}.reset-password-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #0f34604d}.reset-password-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.reset-password-success{padding:20px 0}.success-icon{font-size:3rem;margin-bottom:20px}.reset-password-success p{color:#333;line-height:1.6;margin-bottom:20px}.reset-password-error{padding:20px 0}.error-icon{font-size:3rem;margin-bottom:20px}.reset-password-error h1{color:#dc3545;margin-bottom:15px}.reset-password-error p{color:#666;line-height:1.6;margin-bottom:25px}.back-to-login{margin-top:30px;padding-top:20px;border-top:1px solid #e0e0e0}.back-to-login a{color:#0f3460;text-decoration:none;font-weight:500;transition:color .2s}.back-to-login a:hover{color:#16213e;text-decoration:underline}@media (max-width: 480px){.reset-password-container{padding:30px 20px}.reset-password-container h1{font-size:1.5rem}}.signup-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:2rem 0}.signup-container{background-color:#fff;padding:2.5rem;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:450px;text-align:center}.signup-container h1{margin-top:0;margin-bottom:.5rem;color:#333;font-size:1.75rem}.signup-container p{margin-bottom:2rem;color:#666}.signup-form{display:flex;flex-direction:column;gap:1.25rem}.signup-form .form-group{text-align:left}.signup-form label{display:block;margin-bottom:.5rem;font-weight:600;color:#444}.signup-form input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.signup-button{padding:.75rem;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;transition:background-color .2s;margin-top:.5rem}.signup-button:disabled{background-color:#aaa;cursor:not-allowed}.signup-button:hover:not(:disabled){background-color:#218838}.signup-error{color:#d9534f;margin-top:0;background-color:#f8d7da;border:1px solid #f5c6cb;padding:.75rem;border-radius:4px;text-align:center}.login-link{margin-top:1.5rem;font-size:.9rem}.login-link a{color:#007bff;text-decoration:none;font-weight:600}.login-link a:hover{text-decoration:underline}.mfa-verify-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-page);padding:var(--space-lg)}.mfa-verify-card{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-2xl);max-width:400px;width:100%;text-align:center}.mfa-verify-header{margin-bottom:var(--space-xl)}.mfa-icon{font-size:3rem;display:block;margin-bottom:var(--space-md)}.mfa-verify-header h1{font-size:var(--font-size-xl);color:var(--text-primary);margin-bottom:var(--space-sm)}.mfa-verify-header p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.mfa-verify-form{display:flex;flex-direction:column;gap:var(--space-lg)}.code-input-container{display:flex;justify-content:center}.code-input{width:200px;padding:var(--space-md);font-size:2rem;font-family:var(--font-family-mono);text-align:center;letter-spacing:.5em;border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);transition:border-color var(--transition-base)}.code-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f126}.code-input::placeholder{color:var(--color-gray-300);letter-spacing:.5em}.btn-verify{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.btn-verify:disabled{opacity:.5;cursor:not-allowed}.mfa-error{background:var(--color-error-light);color:var(--color-error-dark);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.mfa-help{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.mfa-help p{color:var(--text-muted);font-size:var(--font-size-xs);margin-bottom:var(--space-xs)}.mfa-help a{color:var(--color-primary);font-size:var(--font-size-sm);text-decoration:none}.mfa-help a:hover{text-decoration:underline}.team-settings-page{max-width:1000px;margin:0 auto;padding:var(--space-lg)}.team-settings-page h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--space-lg) 0;padding-bottom:var(--space-md);border-bottom:2px solid var(--border-color)}.invite-form{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);margin-bottom:var(--space-xl)}.invite-form h2{margin:0 0 var(--space-lg) 0;padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.invite-form-fields{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:var(--space-md);align-items:flex-end}.invite-form .form-group{margin-bottom:0}.invite-form .invite-button{height:var(--input-height);white-space:nowrap}.team-list{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.team-list h2{margin:0 0 var(--space-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.team-list table{margin:0}.delete-button{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;font-size:1rem;padding:var(--space-xs);line-height:1;opacity:.7;transition:all var(--transition-fast);border-radius:var(--radius-sm);color:var(--color-error)}.delete-button:hover{opacity:1;background-color:var(--color-error-light);transform:scale(1.1)}.team-settings-page .login-error{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--space-md)}@media (max-width: 768px){.team-settings-page{padding:var(--space-md)}.invite-form-fields{grid-template-columns:1fr}.invite-form .invite-button{width:100%}}.superadmin-page{padding:20px;max-width:1400px;margin:0 auto}.superadmin-header{margin-bottom:24px;padding:20px 24px;background:linear-gradient(135deg,#1a365d,#2c5282);border-radius:12px;color:#fff}.superadmin-header-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:12px}.superadmin-header h1{margin:0 0 4px;font-size:1.6rem}.superadmin-header p{margin:0;opacity:.85;font-size:.95rem}.month-kpi-title{margin:0;font-size:1rem;font-weight:500;opacity:.9;border-top:1px solid rgba(255,255,255,.2);padding-top:12px}.superadmin-header .month-selector label{color:#ffffffd9}.superadmin-header .month-selector select{background:#ffffff26;color:#fff;border-color:#ffffff4d}.superadmin-header .month-selector select option{background:#1a365d;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{display:flex;align-items:center;gap:15px;padding:20px;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-icon{font-size:2rem}.stat-content h3{margin:0;font-size:.85rem;color:#666;font-weight:500}.stat-value{margin:5px 0 0;font-size:1.5rem;font-weight:700}.stat-card.primary{border-left:4px solid #3182ce}.stat-card.primary .stat-value{color:#3182ce}.stat-card.info{border-left:4px solid #00b5d8}.stat-card.info .stat-value{color:#00b5d8}.stat-card.success{border-left:4px solid #38a169}.stat-card.success .stat-value{color:#38a169}.stat-card.warning{border-left:4px solid #d69e2e}.stat-card.warning .stat-value{color:#d69e2e}.stat-card.danger{border-left:4px solid #e53e3e}.stat-card.danger .stat-value{color:#e53e3e}.stat-card.money{border-left:4px solid #48bb78}.stat-card.money .stat-value{color:#48bb78}.stat-card.money-month{border-left:4px solid #9f7aea}.stat-card.money-month .stat-value{color:#9f7aea}.tabs-container{margin-bottom:20px}.tabs{display:flex;gap:10px;border-bottom:2px solid #e2e8f0;padding-bottom:0}.tabs button{padding:12px 20px;border:none;background:none;cursor:pointer;font-size:.95rem;color:#666;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s}.tabs button:hover{color:#1a365d}.tabs button.active{color:#1a365d;font-weight:600;border-bottom-color:#1a365d}.tab-content{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.overview-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:30px}.recent-section h3{margin:0 0 15px;color:#1a365d;font-size:1.1rem}.table-container{overflow-x:auto}.superadmin-page table{width:100%;border-collapse:collapse}.superadmin-page table th,.superadmin-page table td{padding:12px 15px;text-align:left;border-bottom:1px solid #e2e8f0}.superadmin-page table th{background:#f7fafc;font-weight:600;color:#1a365d;font-size:.85rem;text-transform:uppercase}.superadmin-page table tr:hover{background:#f7fafc}.badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.badge-success{background:#c6f6d5;color:#22543d}.badge-warning{background:#fefcbf;color:#744210}.badge-danger{background:#fed7d7;color:#822727}.badge-primary{background:#bee3f8;color:#2a4365}.badge-secondary{background:#e2e8f0;color:#4a5568}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#1a365d;border-radius:50%;animation:spin 1s linear infinite}.error-container h2{color:#e53e3e;margin-bottom:10px}.no-data{text-align:center;color:#666;padding:40px}.tab-section-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1rem;flex-wrap:wrap}.tab-section-header h3{margin:0;color:#1a365d;font-size:1.1rem}.month-selector{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.month-selector label{font-size:.85rem;color:#4a5568;font-weight:500}.month-selector select{padding:6px 10px;border:1px solid #cbd5e0;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;color:#2d3748}.month-selector select:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 2px #3182ce33}.monthly-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:1rem}.stat-subtitle{margin:2px 0 0;font-size:.75rem;color:#718096}.kpi-loading{color:#a0aec0!important;font-size:1.2rem!important}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr 1fr}.overview-section{grid-template-columns:1fr}.tabs{flex-wrap:wrap}.tabs button{padding:10px 15px;font-size:.85rem}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}}.superadmin-org-users{padding:20px}.superadmin-org-users h1{margin-bottom:20px;color:#333}.superadmin-org-users .back-link{display:inline-block;margin-bottom:20px;color:#007bff;text-decoration:none}.superadmin-org-users .back-link:hover{text-decoration:underline}.superadmin-org-users table{width:100%;border-collapse:collapse;margin-top:20px}.superadmin-org-users th,.superadmin-org-users td{padding:12px;text-align:left;border-bottom:1px solid #ddd}.superadmin-org-users th{background-color:#f8f9fa;font-weight:600}.superadmin-org-users tr:hover{background-color:#f5f5f5}.superadmin-org-users .status-active{color:#28a745;font-weight:500}.superadmin-org-users .status-inactive{color:#dc3545;font-weight:500}.superadmin-org-users .actions button{margin-right:8px;padding:6px 12px;border:none;border-radius:4px;cursor:pointer}.superadmin-org-users .btn-reset{background-color:#ffc107;color:#333}.superadmin-org-users .btn-toggle{background-color:#17a2b8;color:#fff}.superadmin-org-users .btn-delete{background-color:#dc3545;color:#fff}.superadmin-org-users .loading,.superadmin-org-users .error{padding:20px;text-align:center}.superadmin-org-users .error{color:#dc3545}.audit-log-page{padding:1.5rem;max-width:1400px;margin:0 auto}.audit-log-page .page-header{margin-bottom:1.5rem}.audit-log-page .page-header h1{margin:0;font-size:1.75rem;color:var(--text-primary, #1a1a2e)}.audit-log-page .subtitle{color:var(--text-secondary, #6c757d);margin:.25rem 0 0}.audit-log-page .filters-bar{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem;padding:1rem;background:var(--bg-secondary, #f8f9fa);border-radius:8px}.audit-log-page .filter-group{display:flex;align-items:center;gap:.5rem}.audit-log-page .filter-group label{font-weight:500;color:var(--text-secondary, #6c757d);font-size:.875rem}.audit-log-page .filter-group select{padding:.5rem 2rem .5rem .75rem;border:1px solid var(--border-color, #dee2e6);border-radius:6px;background:#fff;font-size:.875rem;cursor:pointer}.audit-log-page .btn-refresh{padding:.5rem 1rem;background:var(--primary, #4361ee);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;margin-left:auto}.audit-log-page .btn-refresh:hover:not(:disabled){background:var(--primary-dark, #3651d4)}.audit-log-page .btn-refresh:disabled{opacity:.6;cursor:not-allowed}.audit-log-page .results-info{font-size:.875rem;color:var(--text-secondary, #6c757d);margin-bottom:.75rem}.audit-log-page .table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--border-color, #dee2e6)}.audit-log-page .audit-table{width:100%;border-collapse:collapse;font-size:.875rem}.audit-log-page .audit-table th{background:var(--bg-secondary, #f8f9fa);padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary, #6c757d);border-bottom:1px solid var(--border-color, #dee2e6)}.audit-log-page .audit-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color, #dee2e6);vertical-align:middle}.audit-log-page .audit-table tr:hover:not(.details-row){background:var(--bg-hover, #f1f3f5)}.audit-log-page .audit-table tr.expanded{background:var(--bg-hover, #f1f3f5)}.audit-log-page .date-cell{white-space:nowrap;font-family:SF Mono,Monaco,monospace;font-size:.8rem}.audit-log-page .id-cell,.audit-log-page .ip-cell{font-family:SF Mono,Monaco,monospace;font-size:.8rem;color:var(--text-secondary, #6c757d)}.audit-log-page .system{color:var(--text-muted, #adb5bd);font-style:italic}.audit-log-page .badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.audit-log-page .badge-success{background:#d1fae5;color:#059669}.audit-log-page .badge-warning{background:#fef3c7;color:#d97706}.audit-log-page .badge-danger{background:#fee2e2;color:#dc2626}.audit-log-page .badge-info{background:#dbeafe;color:#2563eb}.audit-log-page .badge-secondary{background:#e5e7eb;color:#4b5563}.audit-log-page .btn-expand{padding:.25rem .5rem;background:transparent;border:1px solid var(--border-color, #dee2e6);border-radius:4px;cursor:pointer;font-size:.75rem}.audit-log-page .btn-expand:hover{background:var(--bg-secondary, #f8f9fa)}.audit-log-page .details-row td{background:var(--bg-secondary, #f8f9fa);padding:0}.audit-log-page .details-content{display:flex;gap:2rem;padding:1rem}.audit-log-page .data-block{flex:1;min-width:0}.audit-log-page .data-block strong{display:block;margin-bottom:.5rem;color:var(--text-secondary, #6c757d);font-size:.75rem;text-transform:uppercase}.audit-log-page .data-block pre{margin:0;padding:.75rem;background:#fff;border:1px solid var(--border-color, #dee2e6);border-radius:4px;font-size:.75rem;overflow-x:auto;max-height:200px}.audit-log-page .pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem}.audit-log-page .pagination button{padding:.5rem 1rem;background:#fff;border:1px solid var(--border-color, #dee2e6);border-radius:6px;cursor:pointer;font-size:.875rem}.audit-log-page .pagination button:hover:not(:disabled){background:var(--bg-secondary, #f8f9fa)}.audit-log-page .pagination button:disabled{opacity:.5;cursor:not-allowed}.audit-log-page .pagination span{font-size:.875rem;color:var(--text-secondary, #6c757d)}.audit-log-page .loading,.audit-log-page .error-message{text-align:center;padding:3rem;color:var(--text-secondary, #6c757d)}.audit-log-page .error-message{color:var(--danger, #dc2626)}.accounting-periods-page .page-header h1{display:flex;align-items:center;gap:var(--space-sm)}.accounting-periods-page .info-banner{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.accounting-periods-page .info-banner .info-icon{font-size:1.5rem;flex-shrink:0}.accounting-periods-page .info-banner p{margin:0;font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5}.accounting-periods-page .empty-state{text-align:center;padding:var(--space-xl) var(--space-lg);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-lg)}.accounting-periods-page .empty-state .empty-icon{font-size:3rem;display:block;margin-bottom:var(--space-md)}.accounting-periods-page .empty-state h3{margin-bottom:var(--space-sm);color:var(--text-primary)}.accounting-periods-page .empty-state p{color:var(--text-muted)}.accounting-periods-page .table-container{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);overflow:hidden}.accounting-periods-page .data-table{width:100%;border-collapse:collapse}.accounting-periods-page .data-table th{padding:14px 16px;text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--color-gray-50);border-bottom:1px solid var(--border-color)}.accounting-periods-page .data-table td{padding:14px 16px;font-size:var(--font-size-sm);color:var(--text-primary);border-bottom:1px solid var(--border-color)}.accounting-periods-page .data-table tbody tr:hover{background:var(--color-gray-50)}.accounting-periods-page .data-table tbody tr:last-child td{border-bottom:none}.accounting-periods-page .text-mono{font-family:var(--font-family-mono);font-weight:var(--font-weight-medium)}.accounting-periods-page .period-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.accounting-periods-page .period-status.status-open{background:#10b9811f;color:#059669}.accounting-periods-page .period-status.status-closed{background:#6b72801f;color:#4b5563}.accounting-periods-page .actions-cell{text-align:center}.accounting-periods-page .warning-box{background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);padding:var(--space-md);margin:var(--space-md) 0}.accounting-periods-page .warning-box ul{margin:var(--space-sm) 0 0 var(--space-lg);padding:0}.accounting-periods-page .warning-box li{margin-bottom:4px;color:var(--text-secondary);font-size:var(--font-size-sm)}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover{background:#b91c1c}.btn-danger:disabled{background:#f87171;cursor:not-allowed}.whatsapp-inbox{display:flex;height:calc(100vh - 60px);background:var(--bg-secondary, #f5f5f5)}.conversation-list-panel{width:320px;min-width:280px;background:var(--bg-primary, #fff);border-right:1px solid var(--border-color, #e0e0e0);display:flex;flex-direction:column}.chat-panel{flex:1;display:flex;flex-direction:column;background:var(--bg-chat, #e5ddd5);min-width:400px}.context-panel{width:300px;min-width:260px;background:var(--bg-primary, #fff);border-left:1px solid var(--border-color, #e0e0e0);display:flex;flex-direction:column}.conversation-list-header{padding:16px;border-bottom:1px solid var(--border-color, #e0e0e0)}.conversation-list-header h2{margin:0;font-size:1.25rem;color:var(--text-primary, #1a1a1a)}.header-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.demo-badge{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;font-size:.6875rem;font-weight:600;padding:4px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.conversation-search{width:100%;padding:10px 14px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;font-size:.875rem;background:var(--bg-secondary, #f5f5f5)}.conversation-search:focus{outline:none;border-color:var(--primary-color, #25d366)}.conversation-filters{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-color, #e0e0e0)}.filter-btn{padding:6px 12px;border:none;border-radius:16px;font-size:.75rem;cursor:pointer;background:var(--bg-secondary, #f5f5f5);color:var(--text-secondary, #666);transition:all .2s}.filter-btn.active{background:var(--primary-color, #25d366);color:#fff}.conversation-items{flex:1;overflow-y:auto}.conversation-item{display:flex;align-items:center;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-light, #f0f0f0);transition:background .2s}.conversation-item:hover{background:var(--bg-hover, #f5f5f5)}.conversation-item.active{background:var(--bg-active, #e7f3e7)}.conversation-avatar{width:48px;height:48px;border-radius:50%;background:var(--primary-color, #25d366);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600;margin-right:12px;flex-shrink:0}.conversation-info{flex:1;min-width:0}.conversation-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.conversation-name{font-weight:600;color:var(--text-primary, #1a1a1a);font-size:.9375rem}.conversation-time{font-size:.75rem;color:var(--text-secondary, #666)}.conversation-preview{font-size:.8125rem;color:var(--text-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-meta{display:flex;align-items:center;gap:8px;margin-left:8px}.unread-badge{background:var(--primary-color, #25d366);color:#fff;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.status-badge{font-size:.625rem;padding:2px 6px;border-radius:4px;text-transform:uppercase}.status-badge.open{background:#e7f3e7;color:#2e7d32}.status-badge.closed{background:#fce4ec;color:#c62828}.status-badge.demo{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;font-weight:600;padding:4px 10px;border-radius:12px}.status-badge.connected{background:#e7f3e7;color:#2e7d32;font-weight:600;padding:4px 10px;border-radius:12px}.chat-header{padding:12px 16px;background:var(--bg-primary, #fff);border-bottom:1px solid var(--border-color, #e0e0e0);display:flex;align-items:center;gap:12px}.chat-header-info{flex:1}.chat-header-name{font-weight:600;color:var(--text-primary, #1a1a1a)}.chat-header-phone{font-size:.8125rem;color:var(--text-secondary, #666)}.chat-header-actions{display:flex;gap:8px}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.chat-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #666);font-size:1rem}.message-bubble{max-width:65%;padding:8px 12px;border-radius:8px;position:relative}.message-bubble.inbound{align-self:flex-start;background:var(--bg-primary, #fff);border-top-left-radius:0}.message-bubble.outbound{align-self:flex-end;background:#dcf8c6;border-top-right-radius:0}.message-text{font-size:.9375rem;line-height:1.4;color:var(--text-primary, #1a1a1a);word-wrap:break-word}.message-meta{display:flex;justify-content:flex-end;align-items:center;gap:4px;margin-top:4px}.message-time{font-size:.6875rem;color:var(--text-secondary, #999)}.message-status{font-size:.75rem}.message-status.pending,.message-status.sent{color:var(--text-secondary, #999)}.message-status.delivered{color:var(--primary-color, #25d366)}.message-status.read{color:#34b7f1}.message-status.failed{color:var(--error-color, #e53935)}.chat-input-container{padding:12px 16px;background:var(--bg-primary, #fff);border-top:1px solid var(--border-color, #e0e0e0);display:flex;gap:12px;align-items:flex-end}.chat-input{flex:1;padding:12px 16px;border:1px solid var(--border-color, #e0e0e0);border-radius:24px;font-size:.9375rem;resize:none;min-height:44px;max-height:120px;font-family:inherit}.chat-input:focus{outline:none;border-color:var(--primary-color, #25d366)}.send-btn{width:44px;height:44px;border-radius:50%;border:none;background:var(--primary-color, #25d366);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;transition:background .2s}.send-btn:hover{background:var(--primary-dark, #128c7e)}.send-btn:disabled{background:var(--bg-disabled, #ccc);cursor:not-allowed}.window-warning{width:100%;padding:10px 16px;background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100;font-size:.8125rem;border-radius:8px;margin-bottom:8px;display:flex;align-items:center;gap:8px}.send-error{width:100%;padding:10px 16px;background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;font-size:.8125rem;border-radius:8px;margin-bottom:8px;display:flex;align-items:center;gap:8px}.chat-input:disabled{background:var(--bg-disabled, #f5f5f5);color:var(--text-secondary, #999);cursor:not-allowed}.context-header{padding:16px;border-bottom:1px solid var(--border-color, #e0e0e0)}.context-header h3{margin:0;font-size:1rem;color:var(--text-primary, #1a1a1a)}.context-content{flex:1;overflow-y:auto;padding:16px}.context-section{margin-bottom:24px}.context-section-title{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary, #666);margin-bottom:8px;font-weight:600}.context-info-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-light, #f0f0f0);font-size:.875rem}.context-info-label{color:var(--text-secondary, #666)}.context-info-value{color:var(--text-primary, #1a1a1a);font-weight:500}.context-actions{display:flex;flex-direction:column;gap:8px}.context-btn{padding:10px 16px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;background:var(--bg-primary, #fff);color:var(--text-primary, #1a1a1a);font-size:.875rem;cursor:pointer;text-align:left;transition:all .2s}.context-btn:hover{background:var(--bg-hover, #f5f5f5);border-color:var(--primary-color, #25d366)}.context-btn.primary{background:var(--primary-color, #25d366);color:#fff;border-color:var(--primary-color, #25d366)}.context-btn.danger{color:var(--error-color, #e53935)}.entity-link{display:block;padding:12px;background:var(--bg-secondary, #f5f5f5);border-radius:8px;text-decoration:none;color:inherit;transition:background .2s}.entity-link:hover{background:var(--bg-hover, #e0e0e0)}.entity-link-type{font-size:.75rem;color:var(--text-secondary, #666);text-transform:uppercase}.entity-link-name{font-weight:600;color:var(--text-primary, #1a1a1a);margin-top:4px}@media (max-width: 1024px){.context-panel{display:none}}@media (max-width: 768px){.conversation-list-panel{width:100%}.chat-panel,.whatsapp-inbox.chat-open .conversation-list-panel{display:none}.whatsapp-inbox.chat-open .chat-panel{display:flex;width:100%}}.afip-settings-page{max-width:800px;margin:0 auto;padding:var(--space-lg)}.afip-header{margin-bottom:var(--space-xl)}.afip-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--space-sm) 0;display:flex;align-items:center;gap:var(--space-sm)}.afip-header h1:before{content:"🧾"}.afip-subtitle{color:var(--text-secondary);font-size:var(--font-size-base);margin:0}.afip-guide-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:#3b82f60f;border:1px solid rgba(59,130,246,.15);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.afip-guide-content{display:flex;align-items:flex-start;gap:var(--space-md)}.afip-guide-icon{font-size:1.5rem;flex-shrink:0}.afip-guide-text{display:flex;flex-direction:column;gap:2px}.afip-guide-text strong{font-size:var(--font-size-sm);color:var(--text-primary)}.afip-guide-text p{margin:0;font-size:var(--font-size-xs);color:var(--text-secondary)}.afip-guide-link{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--color-primary);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none;white-space:nowrap;transition:all var(--transition-base)}.afip-guide-link:hover{background:var(--color-primary-dark);transform:translateY(-1px)}@media (max-width: 768px){.afip-guide-banner{flex-direction:column;align-items:flex-start}.afip-guide-link{width:100%;justify-content:center}}.afip-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-2xl);color:var(--text-secondary);font-size:var(--font-size-base)}.afip-status-card,.afip-form-card,.afip-help-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg);box-shadow:var(--shadow-sm)}.afip-status-card h2,.afip-form-card h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--space-md) 0;padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.afip-status-card{position:relative;overflow:hidden}.afip-status-card.status-active{border-color:#10b9814d;background:linear-gradient(135deg,rgba(16,185,129,.03) 0%,transparent 100%)}.afip-status-card.status-not-configured{border-color:var(--color-gray-200)}.afip-status-card.status-expiring{border-color:#f59e0b4d;background:linear-gradient(135deg,rgba(245,158,11,.03) 0%,transparent 100%)}.afip-status-row{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0}.afip-status-row:first-of-type{padding-top:var(--space-md)}.afip-status-label{font-weight:var(--font-weight-medium);color:var(--text-secondary);min-width:130px;font-size:var(--font-size-sm)}.afip-status-value{color:var(--text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.afip-status-value.text-warning{color:var(--color-warning-dark);font-weight:var(--font-weight-semibold)}.afip-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.afip-badge-success{background:#10b9811f;color:#059669}.afip-badge-warning{background:#f59e0b1f;color:#d97706}.afip-badge-error{background:#ef44441f;color:#dc2626}.afip-form{display:flex;flex-direction:column;gap:var(--space-md)}.afip-form-group{display:flex;flex-direction:column;gap:var(--space-xs)}.afip-form-group label{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);color:var(--text-primary)}.afip-form-group input,.afip-form-group select{padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:inherit;background:var(--bg-input);color:var(--text-primary);transition:all var(--transition-fast)}.afip-form-group input:focus,.afip-form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.afip-form-group input:disabled,.afip-form-group select:disabled{background-color:var(--bg-disabled);cursor:not-allowed;opacity:.7}.afip-form-group input[type=file]{padding:10px;cursor:pointer}.afip-form-group small{font-size:var(--font-size-xs);color:var(--text-muted)}.afip-form-group .file-selected{color:var(--color-success-dark);font-weight:var(--font-weight-medium)}.afip-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.afip-form-actions{display:flex;gap:var(--space-md);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.afip-btn{padding:12px 24px;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);border:none;font-family:inherit}.afip-btn:disabled{opacity:.6;cursor:not-allowed}.afip-btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:var(--shadow-sm)}.afip-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.afip-btn-danger{background:transparent;color:var(--color-error);border:1px solid var(--color-error)}.afip-btn-danger:hover:not(:disabled){background:var(--color-error-light)}.afip-help-card{background:#3b82f608;border-color:#3b82f626}.afip-help-card h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--space-md) 0}.afip-help-card ul{margin:0;padding-left:var(--space-lg);color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.8}.afip-help-card li{margin-bottom:var(--space-xs)}@media (max-width: 768px){.afip-settings-page{padding:var(--space-md)}.afip-form-row{grid-template-columns:1fr}.afip-form-actions{flex-direction:column}.afip-btn{width:100%}.afip-status-row{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.afip-status-label{min-width:auto}}@media (max-width: 480px){.afip-header h1{font-size:var(--font-size-xl)}.afip-status-card,.afip-form-card,.afip-help-card{padding:var(--space-md);margin-left:calc(-1 * var(--space-md));margin-right:calc(-1 * var(--space-md));border-radius:0;border-left:none;border-right:none}}.skeleton{background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton--text{height:1em;border-radius:var(--radius-sm);margin-bottom:var(--space-xs)}.skeleton--text:last-child{margin-bottom:0}.skeleton--rect{border-radius:var(--radius-md);min-height:40px}.skeleton--circle{border-radius:50%}.skeleton-card{background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-color)}.skeleton-card__content{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.skeleton-row td{padding:var(--space-md);border-bottom:1px solid var(--border-color)}.skeleton-table{width:100%;border-collapse:collapse}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background:var(--color-gray-200)}}.job-row--failed td,.job-row--dead td{background:var(--color-error-bg, #fef2f2)}.job-row--running td{background:var(--color-warning-bg, #fffbeb)}.job-type{font-weight:var(--font-weight-medium)}.job-description{display:flex;flex-direction:column;gap:var(--space-xs)}.job-error{color:var(--color-error);font-size:var(--font-size-xs);background:var(--color-error-light);padding:2px 6px;border-radius:var(--radius-sm);display:inline-block}.job-progress{display:flex;align-items:center;gap:var(--space-xs);margin-top:var(--space-xs)}.job-progress__bar{height:4px;background:var(--color-primary);border-radius:2px;min-width:4px;max-width:80px;transition:width .3s ease}.job-progress__text{font-size:var(--font-size-xs);color:var(--text-secondary)}.jobs-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);text-align:center}.jobs-error__icon{font-size:3rem;margin-bottom:var(--space-md)}.jobs-error p{color:var(--text-secondary);margin-bottom:var(--space-md)}.jobs-pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-md);margin-top:var(--space-lg);padding:var(--space-md)}.jobs-pagination__info{color:var(--text-secondary);font-size:var(--font-size-sm)}.gastos-page{max-width:1200px}.gastos-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.gastos-page .page-subtitle{color:#64748b;margin:4px 0 0}.gastos-filters{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;margin-bottom:24px;padding:16px;background:#f8fafc;border-radius:8px}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-size:.8rem;color:#64748b;font-weight:500}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:.9rem;min-width:150px}.gastos-summary{display:flex;gap:16px;margin-bottom:24px}.summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px 24px;display:flex;flex-direction:column;gap:4px}.summary-card.highlight{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}.summary-label{font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:1.5rem;font-weight:600;color:#1e293b}.summary-card.highlight .summary-value{color:#166534}.table-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.data-table th{background:#f8fafc;font-weight:600;font-size:.85rem;color:#475569;text-transform:uppercase;letter-spacing:.5px}.data-table tbody tr:hover{background:#f8fafc}.concept-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-badge{display:inline-block;padding:4px 10px;background:#e0e7ff;color:#4338ca;border-radius:12px;font-size:.8rem;font-weight:500}.amount-cell{font-weight:600;color:#dc2626}.empty-state{text-align:center;padding:60px 20px;background:#f8fafc;border-radius:12px;border:2px dashed #cbd5e1}.empty-icon{font-size:3rem;margin-bottom:16px}.empty-state h3{margin:0 0 8px;color:#334155}.empty-state p{color:#64748b;margin:0 0 24px}.loading-state{text-align:center;padding:40px;color:#64748b}.gastos-page .btn-icon{padding:6px 8px;font-size:1rem;line-height:1;border-radius:6px;min-width:auto;min-height:auto}.gastos-page .btn-danger-outline{background:transparent;color:#dc2626;border:1px solid #e2e8f0}.gastos-page .btn-danger-outline:hover:not(:disabled){background:#fef2f2;border-color:#dc2626}.gastos-page .btn-danger-outline:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.gastos-page .page-header{flex-direction:column;gap:16px}.gastos-filters{flex-direction:column}.filter-group input,.filter-group select{width:100%}.gastos-summary{flex-direction:column}.data-table th,.data-table td{padding:8px;font-size:.85rem}.gastos-page .btn-icon{width:auto}}.help-page{min-height:100vh;background:var(--bg-page, #f8fafc);padding:var(--space-lg, 24px)}.help-page__container{max-width:800px;margin:0 auto}.help-breadcrumb{display:flex;align-items:center;gap:var(--space-xs, 4px);font-size:var(--font-size-sm, .875rem);color:var(--text-secondary, #64748b);margin-bottom:var(--space-lg, 24px)}.help-breadcrumb a{color:var(--color-primary, #2563eb);text-decoration:none}.help-breadcrumb a:hover{text-decoration:underline}.help-header{margin-bottom:var(--space-xl, 32px);padding-bottom:var(--space-lg, 24px);border-bottom:1px solid var(--border-color, #e2e8f0)}.help-header__title{font-size:var(--font-size-2xl, 1.5rem);font-weight:var(--font-weight-bold, 700);color:var(--text-primary, #1e293b);margin:0 0 var(--space-sm, 8px) 0}.help-header__subtitle{font-size:var(--font-size-base, 1rem);color:var(--text-secondary, #64748b);margin:0}.help-section{background:var(--bg-card, #ffffff);border-radius:var(--radius-lg, 12px);padding:var(--space-lg, 24px);margin-bottom:var(--space-lg, 24px);border:1px solid var(--border-color, #e2e8f0)}.help-section__title{font-size:var(--font-size-lg, 1.125rem);font-weight:var(--font-weight-semibold, 600);color:var(--text-primary, #1e293b);margin:0 0 var(--space-md, 16px) 0}.help-steps{display:flex;flex-direction:column;gap:var(--space-md, 16px)}.help-step{display:flex;gap:var(--space-md, 16px);padding:var(--space-md, 16px);background:var(--color-gray-50, #f8fafc);border-radius:var(--radius-md, 8px);border-left:4px solid var(--color-primary, #2563eb)}.help-step__number{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-primary, #2563eb);color:#fff;font-weight:var(--font-weight-bold, 700);border-radius:50%}.help-step__content h3{font-size:var(--font-size-base, 1rem);font-weight:var(--font-weight-semibold, 600);margin:0 0 var(--space-xs, 4px) 0}.help-step__content p{color:var(--text-secondary, #64748b);margin:0 0 var(--space-sm, 8px) 0;line-height:1.6}.help-step__content code{background:var(--color-gray-200, #e2e8f0);padding:2px 6px;border-radius:4px;font-size:.9em}.help-step__tip,.help-step__warning{font-size:var(--font-size-sm, .875rem);padding:var(--space-xs, 4px) var(--space-sm, 8px);border-radius:var(--radius-sm, 4px);margin-top:var(--space-xs, 4px)}.help-step__tip{background:var(--color-info-light, #dbeafe);color:var(--color-info-dark, #1e40af)}.help-step__warning{background:var(--color-warning-light, #fef3c7);color:var(--color-warning-dark, #92400e)}.help-errors{display:flex;flex-direction:column;gap:var(--space-md, 16px)}.help-error{padding:var(--space-md, 16px);background:var(--color-error-bg, #fef2f2);border-radius:var(--radius-md, 8px);border-left:4px solid var(--color-error, #ef4444)}.help-error h4{font-size:var(--font-size-sm, .875rem);color:var(--color-error-dark, #991b1b);margin:0 0 var(--space-xs, 4px) 0}.help-error p{font-size:var(--font-size-sm, .875rem);color:var(--text-secondary, #64748b);margin:0}.help-list{list-style:none;padding:0;margin:0}.help-list li{padding:var(--space-sm, 8px) 0;border-bottom:1px solid var(--border-color, #e2e8f0);display:flex;align-items:center;gap:var(--space-sm, 8px)}.help-list li:before{content:"✓";color:var(--color-success, #22c55e);font-weight:700}.help-list li:last-child{border-bottom:none}.help-footer{margin-top:var(--space-xl, 32px);padding-top:var(--space-lg, 24px);border-top:1px solid var(--border-color, #e2e8f0)}.help-contact{text-align:center;padding:var(--space-lg, 24px);background:linear-gradient(135deg,var(--color-primary-light, #dbeafe),var(--bg-card, #ffffff));border-radius:var(--radius-lg, 12px)}.help-contact h3{margin:0 0 var(--space-sm, 8px) 0;color:var(--text-primary, #1e293b)}.help-contact p{margin:0 0 var(--space-md, 16px) 0;color:var(--text-secondary, #64748b)}.help-contact__email{display:inline-block;padding:var(--space-sm, 8px) var(--space-lg, 24px);background:var(--color-primary, #2563eb);color:#fff;text-decoration:none;border-radius:var(--radius-md, 8px);font-weight:var(--font-weight-medium, 500);transition:background var(--transition-base, .2s)}.help-contact__email:hover{background:var(--color-primary-dark, #1d4ed8)}.help-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md, 16px)}.help-card{display:flex;flex-direction:column;padding:var(--space-lg, 24px);background:var(--bg-card, #ffffff);border-radius:var(--radius-lg, 12px);border:1px solid var(--border-color, #e2e8f0);text-decoration:none;color:inherit;transition:all var(--transition-base, .2s)}.help-card:hover{border-color:var(--color-primary, #2563eb);box-shadow:var(--shadow-md);transform:translateY(-2px)}.help-card__icon{font-size:2rem;margin-bottom:var(--space-sm, 8px)}.help-card__title{font-size:var(--font-size-base, 1rem);font-weight:var(--font-weight-semibold, 600);color:var(--text-primary, #1e293b);margin:0 0 var(--space-xs, 4px) 0}.help-card__description{font-size:var(--font-size-sm, .875rem);color:var(--text-secondary, #64748b);margin:0;flex-grow:1}@media (max-width: 640px){.help-page{padding:var(--space-md, 16px)}.help-step{flex-direction:column}.help-step__number{margin-bottom:var(--space-sm, 8px)}}.help-features{display:flex;flex-direction:column;gap:var(--space-md, 16px)}.help-feature{display:flex;gap:var(--space-md, 16px);padding:var(--space-md, 16px);background:var(--color-gray-50, #f8fafc);border-radius:var(--radius-md, 8px)}.help-feature__icon{font-size:1.5rem}.help-feature strong{display:block;margin-bottom:var(--space-xs, 4px)}.help-feature p{margin:0;color:var(--text-secondary, #64748b);font-size:var(--font-size-sm, .875rem)}.help-diagram{display:flex;align-items:center;justify-content:center;gap:var(--space-md, 16px);padding:var(--space-lg, 24px);background:var(--color-gray-50, #f8fafc);border-radius:var(--radius-lg, 12px);flex-wrap:wrap;margin-top:var(--space-md, 16px)}.help-diagram__item{display:flex;flex-direction:column;align-items:center;padding:var(--space-md, 16px);background:var(--bg-card, #ffffff);border-radius:var(--radius-md, 8px);border:2px solid var(--border-color, #e2e8f0);min-width:120px}.help-diagram__item--crm{border-color:var(--color-primary, #2563eb)}.help-diagram__item--erp{border-color:var(--color-success, #22c55e)}.help-diagram__item--wa{border-color:#25d366}.help-diagram__icon{font-size:2rem;margin-bottom:var(--space-xs, 4px)}.help-diagram__arrow{font-size:1.5rem;color:var(--text-muted, #94a3b8)}.help-list-simple{list-style:disc;padding-left:var(--space-lg, 24px);margin:var(--space-sm, 8px) 0;color:var(--text-secondary, #64748b)}.help-list-simple li{padding:var(--space-xs, 4px) 0}.help-flow{padding:var(--space-md, 16px);background:var(--color-primary-light, #dbeafe);border-radius:var(--radius-md, 8px);text-align:center;font-weight:var(--font-weight-medium, 500);color:var(--color-primary-dark, #1d4ed8)}.csr-generator-page{max-width:800px}.back-link{display:inline-block;margin-bottom:16px;color:#3b82f6;text-decoration:none;font-size:.9rem}.back-link:hover{text-decoration:underline}.csr-generator-page h1{margin-bottom:8px}.csr-generator-page .page-subtitle{color:#64748b;margin:0 0 24px}.security-warning{display:flex;gap:16px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:12px;padding:20px;margin-bottom:24px}.security-warning .warning-icon{font-size:2rem;flex-shrink:0}.security-warning h3{margin:0 0 12px;color:#92400e}.security-warning ul{margin:0;padding-left:20px;color:#78350f}.security-warning li{margin-bottom:6px}.csr-form{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.csr-form h2{margin:0 0 20px;font-size:1.2rem;color:#334155}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.form-group input{padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background:#f1f5f9;color:#94a3b8}.generate-btn{width:100%;padding:14px;font-size:1.1rem}.generated-files{background:#f0fdf4;border:1px solid #86efac;border-radius:12px;padding:24px}.generated-files h2{margin:0 0 8px;color:#166534}.generated-files>p{color:#166534;margin:0 0 24px}.file-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.file-card{background:#fff;border-radius:8px;padding:20px;display:flex;gap:16px;box-shadow:0 1px 3px #0000001a}.file-card.private-key{border:2px solid #f59e0b}.file-card.csr{border:2px solid #3b82f6}.file-icon{font-size:2rem;flex-shrink:0}.file-info h3{margin:0 0 8px;font-size:1rem}.file-info p{margin:0 0 12px;font-size:.85rem;color:#64748b}.file-info button{width:100%}.next-steps{background:#fff;border-radius:8px;padding:20px}.next-steps h3{margin:0 0 16px;font-size:1rem;color:#334155}.next-steps ol{margin:0;padding-left:20px}.next-steps li{margin-bottom:8px;color:#475569}.next-steps a{color:#3b82f6}@media (max-width: 640px){.form-grid,.file-cards{grid-template-columns:1fr}.security-warning,.file-card{flex-direction:column;text-align:center}}.security-page{min-height:100vh;background:var(--bg-page, #f8fafc);padding:var(--space-lg, 24px)}.security-page__container{max-width:700px;margin:0 auto}.security-loading{text-align:center;padding:var(--space-2xl, 48px);color:var(--text-secondary, #64748b)}.security-header{margin-bottom:var(--space-xl, 32px);padding-bottom:var(--space-lg, 24px);border-bottom:1px solid var(--border-color, #e2e8f0)}.security-header__title{font-size:var(--font-size-2xl, 1.5rem);font-weight:var(--font-weight-bold, 700);color:var(--text-primary, #1e293b);margin:0 0 var(--space-sm, 8px) 0}.security-header__subtitle{font-size:var(--font-size-base, 1rem);color:var(--text-secondary, #64748b);margin:0}.security-section{background:var(--bg-card, #ffffff);border-radius:var(--radius-lg, 12px);padding:var(--space-lg, 24px);margin-bottom:var(--space-lg, 24px);border:1px solid var(--border-color, #e2e8f0)}.security-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md, 16px)}.security-section__header h2{margin:0;font-size:var(--font-size-lg, 1.125rem)}.security-section__description{color:var(--text-secondary, #64748b);margin-bottom:var(--space-md, 16px);line-height:1.6}.security-section h2{font-size:var(--font-size-lg, 1.125rem);margin:0 0 var(--space-md, 16px) 0}.security-recommendation{padding:var(--space-sm, 8px) var(--space-md, 16px);background:var(--color-info-light, #dbeafe);color:var(--color-info-dark, #1e40af);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-md, 16px)}.security-error{padding:var(--space-sm, 8px) var(--space-md, 16px);background:var(--color-error-bg, #fef2f2);color:var(--color-error, #ef4444);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-md, 16px)}.security-warning{padding:var(--space-sm, 8px) var(--space-md, 16px);background:var(--color-warning-light, #fef3c7);color:var(--color-warning-dark, #92400e);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-md, 16px)}.security-success{padding:var(--space-sm, 8px) var(--space-md, 16px);background:var(--color-success-light, #dcfce7);color:var(--color-success-dark, #166534);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-md, 16px)}.security-actions{margin-top:var(--space-lg, 24px)}.security-setup h3,.security-backup h3,.security-disable h3{font-size:var(--font-size-base, 1rem);margin:var(--space-lg, 24px) 0 var(--space-sm, 8px) 0}.security-setup p,.security-backup p,.security-disable p{color:var(--text-secondary, #64748b);margin-bottom:var(--space-md, 16px)}.security-qr{display:flex;justify-content:center;padding:var(--space-lg, 24px);background:var(--color-gray-50, #f8fafc);border-radius:var(--radius-lg, 12px);margin-bottom:var(--space-lg, 24px)}.security-qr img{border-radius:var(--radius-md, 8px)}.security-form{margin-top:var(--space-md, 16px)}.security-input{display:block;width:100%;max-width:200px;padding:var(--space-md, 16px);font-size:var(--font-size-xl, 1.5rem);text-align:center;letter-spacing:.5em;border:2px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-md, 16px)}.security-input:focus{outline:none;border-color:var(--color-primary, #2563eb)}.security-form__actions{display:flex;gap:var(--space-sm, 8px)}.security-backup-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm, 8px);padding:var(--space-md, 16px);background:var(--color-gray-50, #f8fafc);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-md, 16px)}.security-backup-codes code{font-family:var(--font-family-mono, monospace);font-size:var(--font-size-base, 1rem);padding:var(--space-sm, 8px);background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-sm, 4px);text-align:center}.security-backup-warning{padding:var(--space-sm, 8px) var(--space-md, 16px);background:var(--color-warning-light, #fef3c7);color:var(--color-warning-dark, #92400e);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-md, 16px);font-size:var(--font-size-sm, .875rem)}.security-list{list-style:none;padding:0;margin:0}.security-list li{display:flex;gap:var(--space-md, 16px);padding:var(--space-md, 16px) 0;border-bottom:1px solid var(--border-color, #e2e8f0)}.security-list li:last-child{border-bottom:none}.security-list__icon{color:var(--color-success, #22c55e);font-weight:700;flex-shrink:0}.security-list strong{display:block;margin-bottom:var(--space-xs, 4px)}.security-list p{margin:0;color:var(--text-secondary, #64748b);font-size:var(--font-size-sm, .875rem)}@media (max-width: 640px){.security-page{padding:var(--space-md, 16px)}.security-section__header{flex-direction:column;align-items:flex-start;gap:var(--space-sm, 8px)}.security-backup-codes{grid-template-columns:1fr}}.org-settings-page{max-width:800px}.org-settings-page h1{margin-bottom:24px}.warning-banner{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:8px;padding:16px 20px;margin-bottom:24px}.warning-icon{font-size:1.5rem}.warning-banner strong{color:#92400e}.org-settings-form{display:flex;flex-direction:column;gap:24px}.org-settings-form .form-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.org-settings-form .form-section h3{margin:0 0 20px;font-size:1.1rem;color:#334155;border-bottom:1px solid #e2e8f0;padding-bottom:12px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-weight:500;color:#475569;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-hint{font-size:.8rem;color:#94a3b8}.logo-preview{margin-top:12px;padding:12px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;text-align:center}.logo-preview img{max-width:200px;max-height:100px;object-fit:contain}.form-actions{display:flex;justify-content:flex-end;padding-top:16px}.form-actions .btn{padding:12px 24px;font-size:1rem}.org-info-footer{margin-top:32px;padding:16px;background:#f1f5f9;border-radius:8px;font-size:.9rem;color:#64748b}.org-info-footer p{margin:4px 0}.loading-state{padding:40px;text-align:center;color:#64748b}@media (max-width: 640px){.form-grid{grid-template-columns:1fr}.warning-banner{flex-direction:column;text-align:center}}.currency-config-page{padding:2rem;max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a2e);margin:0 0 .5rem}.page-header .subtitle{color:var(--text-secondary, #6b7280);margin:0}.config-section{background:var(--card-bg, #fff);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.config-section h2{font-size:1.125rem;font-weight:600;margin:0 0 1rem}.config-status{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.config-status.enabled{background:#10b9811a;color:#047857}.config-status.disabled{background:#f59e0b1a;color:#b45309}.config-status .status-icon{font-size:1.25rem}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.config-field label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary, #6b7280);margin-bottom:.5rem}.config-field select{width:100%;padding:.75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:.9375rem;background:var(--input-bg, #fff)}.config-value{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--bg-tertiary, #f9fafb);border-radius:8px;font-weight:500}.config-missing{padding:.75rem;background:#f59e0b1a;color:#b45309;border-radius:8px;font-size:.875rem}.currency-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:6px;font-weight:600;font-size:.875rem}.currencies-section{margin-bottom:1.5rem}.currencies-section h2{font-size:1.125rem;font-weight:600;margin-bottom:1rem}.currencies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.currency-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--card-bg, #fff);border-radius:10px;box-shadow:0 1px 3px #0000001a}.currency-symbol{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:8px;font-weight:700;font-size:1.125rem}.currency-info{flex:1}.currency-code{font-weight:600;color:var(--text-primary, #1a1a2e)}.currency-name{font-size:.8125rem;color:var(--text-secondary, #6b7280)}.currency-decimals{font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.rates-section{background:var(--card-bg, #fff);border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{font-size:1.125rem;font-weight:600;margin:0}.rates-table{width:100%;border-collapse:collapse}.rates-table th,.rates-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid var(--border-color, #e5e7eb)}.rates-table th{font-size:.8125rem;font-weight:500;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.rates-table tr:hover{background:var(--bg-tertiary, #f9fafb)}.currency-tag{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--bg-tertiary, #f3f4f6);border-radius:4px;margin-right:.5rem;font-size:.75rem;font-weight:600}.rate-value{font-family:SF Mono,Monaco,monospace;font-weight:500}.rate-type{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.rate-type.global{background:#3b82f61a;color:#1d4ed8}.rate-type.org{background:#10b9811a;color:#047857}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary, #6b7280)}.empty-state .hint{font-size:.875rem;color:var(--text-tertiary, #9ca3af);margin-top:.5rem}.btn-primary{padding:.625rem 1.25rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:transform .15s,box-shadow .15s}.form-group .hint{display:block;font-size:.75rem;color:var(--text-tertiary, #9ca3af);margin-top:.25rem}.cost-centers-page{padding:2rem;max-width:1200px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-content h1{font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a2e);margin:0 0 .5rem}.header-content .subtitle{color:var(--text-secondary, #6b7280);margin:0}.tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color, #e5e7eb);margin-bottom:1.5rem}.tab{padding:.875rem 1.5rem;background:transparent;border:none;font-size:.9375rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;position:relative;transition:color .2s}.tab:hover{color:var(--text-primary, #1a1a2e)}.tab.active{color:#6366f1}.tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(135deg,#6366f1,#8b5cf6)}.list-section,.periods-section{background:var(--card-bg, #fff);border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.cc-table,.locks-table{width:100%;border-collapse:collapse}.cc-table th,.cc-table td,.locks-table th,.locks-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid var(--border-color, #e5e7eb)}.cc-table th,.locks-table th{font-size:.8125rem;font-weight:500;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.cc-table tr:hover,.locks-table tr:hover{background:var(--bg-tertiary, #f9fafb)}.cc-table tr.inactive{opacity:.6}.cc-name-cell{display:flex;align-items:center;gap:.5rem}.type-icon{font-size:1.125rem}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:500}.status-badge.active{background:#10b9811a;color:#047857}.status-badge.inactive{background:#6b72801a;color:#6b7280}.actions-cell{display:flex;gap:.5rem}.btn-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary, #f3f4f6);border:none;border-radius:6px;cursor:pointer;transition:background .15s}.btn-icon:hover{background:var(--border-color, #e5e7eb)}.btn-icon.danger:hover{background:#ef44441a}.hierarchy-section{background:var(--card-bg, #fff);border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.hierarchy-tree{display:flex;flex-direction:column;gap:.25rem}.hierarchy-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;transition:background .15s}.hierarchy-item:hover{background:var(--bg-tertiary, #f9fafb)}.hierarchy-item.inactive{opacity:.5}.type-indicator{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:1rem}.type-indicator.project{background:#3b82f61a}.type-indicator.department{background:#10b9811a}.type-indicator.campaign{background:#f59e0b1a}.hierarchy-item .cc-name{flex:1;font-weight:500}.hierarchy-item .cc-code{font-size:.8125rem;color:var(--text-tertiary, #9ca3af);font-family:SF Mono,monospace}.lock-form{margin-bottom:1.5rem;padding:1rem;background:var(--bg-tertiary, #f9fafb);border-radius:8px}.form-row{display:flex;gap:.75rem;align-items:center}.form-row input{flex:1;padding:.625rem .875rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:.9375rem}.form-row input:first-child{max-width:140px}.period-cell{display:flex;align-items:center;gap:.5rem;font-weight:500}.lock-icon{font-size:1rem}.btn-text{background:transparent;border:none;font-size:.875rem;font-weight:500;color:#6366f1;cursor:pointer;padding:.25rem .5rem}.btn-text:hover{text-decoration:underline}.btn-text.danger{color:#dc2626}.empty-state{text-align:center;padding:3rem 2rem;color:var(--text-secondary, #6b7280)}.empty-state .hint{font-size:.875rem;color:var(--text-tertiary, #9ca3af);margin-top:.5rem;max-width:400px;margin-left:auto;margin-right:auto}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.8}.btn-large{padding:1rem 2rem;font-size:1rem;margin-top:1.5rem}.error-alert{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#ef44441a;color:#dc2626;border-radius:8px;margin-bottom:1.5rem}.error-alert button{background:transparent;border:none;font-size:1.25rem;cursor:pointer;color:inherit}.loading-spinner{display:flex;justify-content:center;align-items:center;min-height:300px;color:var(--text-secondary, #6b7280)}.btn-primary{padding:.625rem 1.25rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:transform .15s,box-shadow .15s;white-space:nowrap}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{padding:.625rem 1.25rem;background:var(--bg-tertiary, #f3f4f6);color:var(--text-primary, #1a1a2e);border:none;border-radius:8px;font-weight:500;cursor:pointer}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--card-bg, #fff);border-radius:12px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.modal-header h3{margin:0;font-size:1.125rem;font-weight:600}.close-btn{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary, #6b7280);line-height:1}.modal form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary, #1a1a2e);margin-bottom:.5rem}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:.9375rem;background:var(--input-bg, #fff)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem}.executive-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.main-kpi-section{margin-bottom:2rem}.main-kpi-card{display:flex;align-items:center;gap:1.5rem;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;box-shadow:0 4px 20px #667eea4d}.main-kpi-icon{font-size:3rem}.main-kpi-title{font-size:1rem;opacity:.9;text-transform:uppercase;letter-spacing:.05em}.main-kpi-value{font-size:2.5rem;font-weight:700;margin:.25rem 0}.main-kpi-value.negative{color:#fca5a5}.main-kpi-hint{font-size:.85rem;opacity:.75}.kpi-section{margin-bottom:2rem}.kpi-section h2{font-size:1.1rem;color:var(--text-secondary, #6b7280);margin-bottom:1rem;font-weight:500}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.kpi-grid.two-col{grid-template-columns:repeat(2,1fr)}.kpi-card{background:#fff;border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem;transition:box-shadow .2s,transform .2s}.kpi-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.kpi-title{font-size:.85rem;color:var(--text-secondary, #6b7280);margin-bottom:.5rem}.kpi-value{font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a2e)}.kpi-value.negative{color:var(--error-color, #ef4444)}.kpi-change{display:flex;align-items:center;gap:.35rem;margin-top:.75rem;font-size:.8rem}.trend-icon{font-weight:600}.change-label{color:var(--text-tertiary, #9ca3af)}.trend-positive{color:var(--success-color, #10b981)}.trend-negative{color:var(--error-color, #ef4444)}.trend-neutral{color:var(--text-secondary, #6b7280)}.btn-retry:hover{opacity:.9}@media (max-width: 768px){.executive-dashboard{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem}.kpi-grid,.kpi-grid.two-col{grid-template-columns:1fr}.main-kpi-card{padding:1.5rem}.main-kpi-value{font-size:2rem}}.cc-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.totals-section{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.total-card{padding:1.5rem;border-radius:12px;background:#fff;border:1px solid var(--border-color, #e5e7eb)}.total-card.income{border-left:4px solid var(--success-color, #10b981)}.total-card.expenses{border-left:4px solid var(--error-color, #ef4444)}.total-card.result.positive{border-left:4px solid var(--success-color, #10b981);background:linear-gradient(135deg,#10b9810d,#fff)}.total-card.result.negative{border-left:4px solid var(--error-color, #ef4444);background:linear-gradient(135deg,#ef44440d,#fff)}.total-label{font-size:.85rem;color:var(--text-secondary, #6b7280);margin-bottom:.5rem}.total-value{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a1a2e)}.ranking-section{background:#fff;border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.ranking-section h2{margin:0 0 1rem;font-size:1.1rem}.ranking-list{display:flex;flex-direction:column;gap:.75rem}.ranking-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--bg-secondary, #f9fafb);border-radius:8px}.rank-badge{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;font-weight:600;font-size:.85rem}.cc-info{flex:1;display:flex;align-items:center;gap:.5rem}.cc-icon{font-size:1.1rem}.cc-name{font-weight:500}.cc-code{font-size:.8rem;color:var(--text-tertiary, #9ca3af);padding:.15rem .5rem;background:var(--bg-tertiary, #e5e7eb);border-radius:4px}.cc-result{font-weight:600;font-size:1rem}.cc-result.positive{color:var(--success-color, #10b981)}.cc-result.negative{color:var(--error-color, #ef4444)}.cc-table{width:100%;border-collapse:collapse}.cc-table th,.cc-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color, #e5e7eb)}.cc-table th{font-weight:500;color:var(--text-secondary, #6b7280);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.cc-table td{font-size:.95rem}.income-value{color:var(--success-color, #10b981)}.expense-value{color:var(--error-color, #ef4444)}.positive{color:var(--success-color, #10b981);font-weight:600}.negative{color:var(--error-color, #ef4444);font-weight:600}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary, #6b7280)}.empty-state .hint{font-size:.9rem;color:var(--text-tertiary, #9ca3af);margin-top:.5rem}.period-selector select{padding:.5rem 1rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:#fff;font-size:.9rem;cursor:pointer}.dashboard-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color, #e5e7eb);text-align:center;color:var(--text-tertiary, #9ca3af);font-size:.85rem}@media (max-width: 768px){.cc-dashboard{padding:1rem}.totals-section{grid-template-columns:1fr}.cc-table{font-size:.85rem}}.cashflow-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.weeks-selector{display:flex;align-items:center;gap:.5rem}.weeks-selector label{font-size:.9rem;color:var(--text-secondary, #6b7280)}.weeks-selector select{padding:.5rem 1rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:#fff;font-size:.9rem;cursor:pointer}.negative-alert{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fca5a5;border-radius:12px;margin-bottom:2rem}.alert-icon{font-size:2rem}.alert-content strong{display:block;color:#b91c1c;font-size:1.05rem}.alert-content p{margin:.25rem 0 0;color:#dc2626;font-size:.9rem}.summary-section{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.summary-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#fff;border:1px solid var(--border-color, #e5e7eb);border-radius:12px}.summary-icon{font-size:2rem}.summary-label{font-size:.85rem;color:var(--text-secondary, #6b7280)}.summary-value{font-size:1.25rem;font-weight:600}.summary-value.positive{color:var(--success-color, #10b981)}.summary-value.negative{color:var(--error-color, #ef4444)}.chart-section{background:#fff;border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.chart-section h2{margin:0 0 1rem;font-size:1.1rem}.chart-container{position:relative;padding:1rem 0;min-height:200px}.chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:180px;gap:4px}.chart-bar-group{display:flex;flex-direction:column;align-items:center;flex:1;max-width:60px}.chart-bar{width:100%;max-width:40px;border-radius:4px 4px 0 0;transition:height .3s ease}.chart-bar.positive{background:linear-gradient(180deg,#34d399,#10b981)}.chart-bar.negative{background:linear-gradient(180deg,#f87171,#ef4444)}.chart-label{font-size:.7rem;color:var(--text-tertiary, #9ca3af);margin-top:.5rem;text-align:center}.chart-zero-line{position:absolute;bottom:40px;left:0;right:0;height:1px;background:var(--border-color, #e5e7eb)}.table-section{background:#fff;border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem}.table-section h2{margin:0 0 1rem;font-size:1.1rem}.cashflow-table{width:100%;border-collapse:collapse}.cashflow-table th,.cashflow-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color, #e5e7eb)}.cashflow-table th{font-weight:500;color:var(--text-secondary, #6b7280);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.align-right{text-align:right!important}.row-negative{background:#fef2f2}.warning-badge{margin-right:.5rem}.inflow{color:var(--success-color, #10b981)}.outflow{color:var(--error-color, #ef4444)}.positive{color:var(--success-color, #10b981)}.negative{color:var(--error-color, #ef4444)}.dashboard-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color, #e5e7eb);text-align:center}.dashboard-footer p{margin:.25rem 0;color:var(--text-tertiary, #9ca3af);font-size:.85rem}.disclaimer{font-style:italic;font-size:.8rem!important}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-content h1{margin:0;font-size:1.75rem;color:var(--text-primary, #1a1a2e)}.subtitle{margin:.5rem 0 0;color:var(--text-secondary, #6b7280);font-size:.95rem}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid var(--border-color, #e5e7eb);border-top-color:var(--primary-color, #667eea);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.error-icon{font-size:3rem;margin-bottom:1rem}.error-message{color:var(--error-color, #ef4444);margin-bottom:1rem}.btn-retry{padding:.75rem 1.5rem;background:var(--primary-color, #667eea);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500}@media (max-width: 768px){.cashflow-dashboard{padding:1rem}.summary-section{grid-template-columns:1fr}.chart-bars{overflow-x:auto}.cashflow-table{font-size:.85rem}}.landing-page{font-family:Inter,system-ui,-apple-system,sans-serif;color:#1f2937;line-height:1.6;background-color:#fff;min-height:100vh}.landing-container{max-width:1200px;margin:0 auto;padding:0 1.5rem;width:100%}.text-gradient{background:linear-gradient(90deg,#0d6efd,#0a58ca);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.landing-nav{position:sticky;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e5e7eb;z-index:1000;padding:1rem 0}.nav-content{display:flex;justify-content:space-between;align-items:center}.landing-logo{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.25rem;color:#111827}.logo-icon{font-size:1.5rem}.landing-hero{padding:5rem 0 4rem;text-align:center;background:linear-gradient(to bottom,#f9fafb,#fff)}.hero-title{font-size:3.5rem;line-height:1.1;font-weight:800;margin-bottom:1.5rem;letter-spacing:-.02em;color:#111827}.hero-subtitle{font-size:1.25rem;color:#4b5563;max-width:700px;margin:0 auto 2.5rem;font-weight:400}.hero-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:3rem}.btn-lg{padding:.875rem 2rem;font-size:1.1rem;font-weight:600}.btn-outline{background:transparent;border:1px solid #d1d5db;color:#374151}.btn-outline:hover{border-color:#9ca3af;background:#f9fafb}.hero-trust{font-size:.9rem;color:#6b7280;font-weight:500}.section-problem{background:#f3f4f6;padding:4rem 0}.problem-solution-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:center}.card-problem,.card-solution{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a}.card-problem{border-left:4px solid #ef4444}.card-solution{border-left:4px solid #10b981}.list-problem,.list-solution{list-style:none;padding:0;margin:1.5rem 0 0}.list-problem li,.list-solution li{margin-bottom:.75rem;font-size:1rem}.card-arrow{font-size:2rem;color:#9ca3af}.section-features{padding:5rem 0}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#111827}.section-header p{font-size:1.25rem;color:#6b7280}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem 2rem}.feature-card{padding:1rem}.feature-icon{font-size:2.5rem;margin-bottom:1rem;display:inline-block;background:#eff6ff;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px}.feature-card h3{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.feature-card p{color:#4b5563;line-height:1.6}.section-diff{background:#111827;color:#fff;padding:5rem 0;overflow:hidden}.content-diff{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.diff-text h2{font-size:2.25rem;margin-bottom:1.5rem;line-height:1.3;font-weight:700;color:#fff}.diff-text p{color:#f3f4f6;margin-bottom:1.5rem;font-size:1.1rem;font-weight:400;line-height:1.7}.diff-text strong{color:#fff;font-weight:600}.dummy-ui{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:1.5rem;border-radius:8px;font-family:monospace}.dummy-row{display:flex;justify-content:space-between;padding:.75rem;border-bottom:1px solid rgba(255,255,255,.1);color:#e5e7eb}.tag-ok{color:#34d399;font-size:.9rem}.section-cta{padding:5rem 0;text-align:center;background:#f9fafb}.cta-content h2{font-size:2.5rem;margin-bottom:1rem;color:#111827}.cta-content p{font-size:1.25rem;color:#4b5563;margin-bottom:2.5rem}.btn-xl{padding:1rem 3rem;font-size:1.25rem;box-shadow:0 4px 6px -1px #0d6efd4d}.cta-note{font-size:.875rem!important;color:#9ca3af!important;margin-top:1rem!important}.landing-footer{border-top:1px solid #e5e7eb;padding:3rem 0}.footer-links a:hover{color:#000}@media (max-width: 768px){.hero-title{font-size:2.5rem}.problem-solution-grid{grid-template-columns:1fr}.card-arrow{transform:rotate(90deg);text-align:center;margin:-1rem 0}.content-diff{grid-template-columns:1fr}.nav-links .nav-link{display:none}.footer-content{flex-direction:column;gap:2rem;text-align:center}}.pricing-page{font-family:Inter,system-ui,-apple-system,sans-serif;color:#1f2937;line-height:1.6;background-color:#f9fafb;min-height:100vh}.pricing-container{max-width:1200px;margin:0 auto;padding:0 1.5rem;width:100%}.pricing-nav{background:#fff;border-bottom:1px solid #e5e7eb;padding:1rem 0}.pricing-logo{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.25rem;color:#111827;text-decoration:none}.nav-links{display:flex;align-items:center;gap:1.5rem}.nav-link{color:#4b5563;text-decoration:none;font-weight:500;transition:color .2s}.nav-link.active{color:#0d6efd;font-weight:600}.nav-link:hover{color:#111827}.nav-cta{padding:.5rem 1.25rem;font-size:.95rem}.pricing-header{text-align:center;padding:4rem 0 3rem;background:#fff}.header-title{font-size:3rem;font-weight:800;color:#111827;margin-bottom:1rem;letter-spacing:-.02em}.header-subtitle{font-size:1.25rem;color:#4b5563;max-width:600px;margin:0 auto}.pricing-section{padding:3rem 0 6rem}.pricing-card-wrapper{max-width:500px;margin:0 auto 4rem}.pricing-card{background:#fff;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;overflow:hidden;border:1px solid #e5e7eb;transition:transform .2s}.pricing-card:hover{transform:translateY(-5px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.card-header{padding:2rem 2rem 1.75rem;text-align:center;background:linear-gradient(to bottom,#f0f9ff,#fff);border-bottom:1px solid #f3f4f6}.plan-name{font-size:1.35rem;font-weight:700;color:#1f2937;margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.05em}.plan-price{display:flex;align-items:baseline;justify-content:center;gap:.15rem;margin-bottom:.75rem;color:#111827}.currency{font-size:2rem;font-weight:800;color:#111827}.pricing-card .amount{font-size:3.5rem;font-weight:800;line-height:1;letter-spacing:-.02em;color:#111827}.period{font-size:1.25rem;color:#111827;font-weight:600;margin-left:.1rem}.price-detail{font-size:.8rem;font-weight:500;color:#6b7280;margin-bottom:.15rem;margin-top:0}.price-subdetail{font-size:.75rem;color:#9ca3af;font-weight:400}.card-actions{padding:2rem 2rem 0;text-align:center}.btn-block{display:block;width:100%;text-align:center}.card-note{font-size:.85rem;color:#9ca3af;margin-top:1rem}.card-features{padding:2rem}.features-title{font-weight:600;margin-bottom:1rem;color:#374151}.features-list{list-style:none;padding:0;margin:0}.features-list li{margin-bottom:.75rem;color:#4b5563;display:flex;align-items:center;gap:.5rem}.pricing-disclaimers{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:900px;margin:0 auto;text-align:center}.disclaimer-item .icon{font-size:2rem;margin-bottom:.5rem;display:block}.disclaimer-item p{color:#4b5563;font-size:.95rem;line-height:1.5}.pricing-footer{border-top:1px solid #e5e7eb;padding:3rem 0;background:#fff;margin-top:auto}.footer-content{display:flex;justify-content:space-between;align-items:center}.footer-brand .logo-text{font-weight:700;font-size:1.25rem}.footer-brand p{color:#6b7280;font-size:.875rem;margin-top:.5rem}.footer-links{display:flex;gap:2rem}.footer-links a{color:#4b5563;text-decoration:none}.footer-links a:hover{color:#111827}@media (max-width: 768px){.header-title{font-size:2.25rem}.pricing-disclaimers{grid-template-columns:1fr;gap:1.5rem}.nav-links{display:none}.footer-content{flex-direction:column;gap:1.5rem}}.app{display:flex;min-height:100vh}.main-content{flex:1;margin-left:var(--sidebar-width, 260px);padding:var(--space-lg);background-color:var(--bg-page);min-height:100vh}.page-container{max-width:1400px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap}.page-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-lg);margin-bottom:var(--space-md)}.card-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-md);margin-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.card-header h2,.card-header h3{margin:0}.form-group{margin-bottom:var(--space-md)}.form-group label{display:block;margin-bottom:var(--space-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.form-group input:not([type=checkbox]):not([type=radio]),.form-group select,.form-group textarea{width:100%;padding:10px 14px;font-size:var(--font-size-base);font-family:inherit;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group small{display:block;margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--text-muted)}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:var(--color-error)}.form-group .error-message{color:var(--color-error);font-size:var(--font-size-xs);margin-top:var(--space-xs)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:14px 16px;text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--color-gray-50);border-bottom:1px solid var(--border-color)}.data-table td{padding:14px 16px;font-size:var(--font-size-sm);color:var(--text-primary);border-bottom:1px solid var(--border-color)}.data-table tbody tr:last-child td{border-bottom:none}.actions-cell{display:flex;gap:var(--space-sm);flex-wrap:wrap}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap}.status-badge.status-paid,.status-badge.status-active,.status-badge.status-approved,.status-badge.status-confirmed{background:#10b9811f;color:#059669}.status-badge.status-pending,.status-badge.status-awaiting_payment,.status-badge.status-partially_paid{background:#f59e0b1f;color:#d97706}.status-badge.status-draft{background:var(--color-gray-100);color:var(--color-gray-600)}.status-badge.status-sent,.status-badge.status-processing{background:#3b82f61f;color:#2563eb}.status-badge.status-void,.status-badge.status-rejected,.status-badge.status-cancelled{background:#ef44441f;color:#dc2626}.message{padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin-bottom:var(--space-md)}.message.success{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid rgba(16,185,129,.2)}.message.error{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid rgba(239,68,68,.2)}.message.warning{background:var(--color-warning-light);color:var(--color-warning-dark);border:1px solid rgba(245,158,11,.2)}.message.info{background:var(--color-info-light);color:var(--color-info-dark);border:1px solid rgba(59,130,246,.2)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-md);z-index:var(--z-modal);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;padding:var(--space-lg);animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content h2{margin:0 0 var(--space-lg) 0;font-size:var(--font-size-xl)}.modal-actions{display:flex;gap:var(--space-sm);justify-content:flex-end;margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.filters-bar{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--space-md);flex-wrap:wrap}.filters-bar label{font-weight:var(--font-weight-medium);color:var(--text-primary);font-size:var(--font-size-sm)}.filters-bar input,.filters-bar select{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.mobile-menu-toggle{display:none;position:fixed;top:12px;left:12px;z-index:1100;background:var(--sidebar-bg);border:none;color:#fff;padding:12px;border-radius:var(--radius-md);cursor:pointer;font-size:20px;box-shadow:var(--shadow-lg)}@media (max-width: 1024px){.main-content{margin-left:220px;padding:var(--space-md)}.page-header h1{font-size:var(--font-size-xl)}.data-table th,.data-table td{padding:12px 10px;font-size:var(--font-size-xs)}}@media (max-width: 768px){.mobile-menu-toggle{display:flex;align-items:center;justify-content:center}.app{flex-direction:column}.main-content{margin-left:0;padding:70px var(--space-md) var(--space-md) var(--space-md);width:100%}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.page-header h1{font-size:var(--font-size-lg)}.table-container{margin:0 calc(-1 * var(--space-md));border-radius:0;border-left:none;border-right:none}.data-table{min-width:600px}.data-table th,.data-table td{padding:10px 8px;font-size:11px}.form-row{grid-template-columns:1fr}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:12px}.card{padding:var(--space-md);margin:0 calc(-1 * var(--space-md)) var(--space-md);border-radius:0;border-left:none;border-right:none}.filters-bar{flex-direction:column;align-items:stretch}.modal-content{max-width:none;margin:var(--space-md);max-height:calc(100vh - 40px)}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}.actions-cell{flex-direction:column;gap:4px}.actions-cell .btn,.actions-cell select{width:100%;min-width:auto}}@media (max-width: 480px){.main-content{padding:65px var(--space-sm) var(--space-sm) var(--space-sm)}.page-header h1{font-size:var(--font-size-base)}.data-table th,.data-table td{padding:8px 6px;font-size:10px}.hide-mobile{display:none!important}}@media (pointer: coarse){.form-group input,.form-group select{min-height:48px}.data-table td,.data-table th{padding:14px 12px}}@media print{.sidebar,.mobile-menu-toggle,.sidebar-overlay{display:none!important}.main-content{margin-left:0!important;padding:0!important}}.subscription-banner{position:fixed;top:0;left:250px;right:0;z-index:1000;padding:8px 20px;font-size:13px}.subscription-banner.warning{background:#2d3748;color:#cbd5e0;border-bottom:2px solid #ed8936}.subscription-banner.expired{background:#2d3748;color:#fc8181;border-bottom:2px solid #e53e3e}.subscription-banner.grace{background:#2d3748;color:#fbd38d;border-bottom:2px solid #d69e2e}.banner-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:12px}.banner-icon{font-size:14px}.banner-text{flex:1;text-align:center}.banner-button{background:#ed8936;color:#fff;border:none;padding:6px 16px;border-radius:4px;font-weight:500;font-size:12px;cursor:pointer;transition:background .2s}.banner-button:hover{background:#dd6b20}.subscription-banner.expired .banner-button{background:#e53e3e}.subscription-banner.expired .banner-button:hover{background:#c53030}.subscription-banner.grace .banner-button{background:#d69e2e}.subscription-banner.grace .banner-button:hover{background:#b7791f}.banner-error{color:#fc8181;font-size:12px;margin-left:8px}.banner-button:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.subscription-banner{left:0}}:root{--color-success: #10b981;--color-success-light: #d1fae5;--color-success-dark: #059669;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-warning-dark: #d97706;--color-error: #ef4444;--color-error-light: #fee2e2;--color-error-dark: #dc2626;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-info-dark: #2563eb;--color-primary: #2563eb;--color-primary-light: #dbeafe;--color-primary-dark: #1d4ed8;--color-primary-darker: #1e40af;--color-accent: #10b981;--color-accent-dark: #059669;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--sidebar-width: 260px;--sidebar-width-collapsed: 70px;--sidebar-bg: #1e293b;--sidebar-bg-dark: #0f172a;--sidebar-text: #e2e8f0;--sidebar-text-muted: #94a3b8;--sidebar-hover: #334155;--sidebar-active-bg: rgba(59, 130, 246, .15);--sidebar-active-border: #3b82f6;--sidebar-divider: #475569;--bg-page: #f8fafc;--bg-card: #ffffff;--bg-elevated: #ffffff;--bg-input: #ffffff;--bg-disabled: #f3f4f6;--bg-secondary: var(--color-gray-50);--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--text-inverse: #ffffff;--border-color: #e2e8f0;--border-color-dark: #cbd5e1;--border-focus: #3b82f6;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--bg-table-header: var(--color-gray-50);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "SF Mono", "Monaco", "Inconsolata", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px rgba(0, 0, 0, .05), 0 2px 4px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .08), 0 4px 6px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-toast: 800;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--input-height: 40px;--input-padding: 10px 14px;--table-row-height: 44px;--badge-padding: 4px 10px;--badge-radius: 999px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.5;text-decoration:none;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.btn-primary:active:not(:disabled){background:var(--color-primary-darker)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-100);border-color:var(--color-gray-400)}.btn-danger{background:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background:var(--color-error-dark);border-color:var(--color-error-dark)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-gray-100);color:var(--text-primary)}.btn-link{background:transparent;color:var(--color-primary);border-color:transparent;padding:0;text-decoration:underline}.btn-link:hover:not(:disabled){color:var(--color-primary-dark)}.btn-sm{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-md) var(--space-lg);font-size:var(--font-size-base)}.btn-icon{padding:var(--space-sm);min-width:36px;min-height:36px}.btn-icon.btn-sm{padding:var(--space-xs);min-width:28px;min-height:28px}.btn-group{display:inline-flex;gap:var(--space-sm)}.btn-group .btn:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group .btn:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .btn:not(:first-child):not(:last-child){border-radius:0}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:currentColor;border-radius:50%;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-edit,.btn-delete{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;min-height:32px;min-width:60px}.btn-edit{background:var(--color-info-light);color:var(--color-info-dark);border:1px solid var(--color-info)}.btn-edit:hover:not(:disabled){background:var(--color-info);color:#fff}.btn-delete{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error)}.btn-delete:hover:not(:disabled){background:var(--color-error);color:#fff}.btn-delete-mini{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error);border-radius:var(--radius-full);font-size:12px;font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-fast);line-height:1}.btn-delete-mini:hover:not(:disabled){background:var(--color-error);color:#fff}.btn-warning{background:var(--color-warning);color:#fff;border-color:var(--color-warning)}.btn-warning:hover:not(:disabled){background:var(--color-warning-dark);border-color:var(--color-warning-dark)}.btn-success{background:var(--color-success);color:#fff;border-color:var(--color-success)}.btn-success:hover:not(:disabled){background:var(--color-success-dark);border-color:var(--color-success-dark)}.btn-small{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs)}@media (max-width: 768px){.btn{padding:12px 16px;font-size:var(--font-size-sm)}.btn:not(.btn-sm):not(.btn-small){width:100%}.page-header .btn,.modal-actions .btn{width:100%}.actions-cell .btn{width:100%;min-width:auto}}@media (pointer: coarse){.btn{min-height:48px}}@media print{.btn{display:none!important}}.form-group{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.form-group:last-child{margin-bottom:0}label,.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);line-height:var(--line-height-normal)}label .required,.form-label .required{color:var(--color-error);margin-left:2px}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=date],input[type=time],input[type=datetime-local],input[type=search],select,textarea{height:var(--input-height);padding:var(--input-padding);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--text-primary);background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}textarea{height:auto;min-height:100px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb1a}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:disabled,select:disabled,textarea:disabled{background-color:var(--bg-disabled);color:var(--text-muted);cursor:not-allowed;opacity:.7}.input-error,.has-error input,.has-error select,.has-error textarea,input.error,select.error,textarea.error{border-color:var(--color-error)!important;background-color:var(--color-error-light)}.input-error:focus,.has-error input:focus,.has-error select:focus,.has-error textarea:focus{box-shadow:0 0 0 3px #ef444426}.field-error{display:block;margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-error);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight)}.field-helper{display:block;margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--text-secondary);line-height:var(--line-height-normal)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);margin-bottom:var(--space-md)}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color)}input[type=checkbox],input[type=radio]{width:18px;height:18px;margin:0;cursor:pointer;accent-color:var(--color-primary)}.checkbox-label,.radio-label{display:inline-flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-size:var(--font-size-sm)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop)}.modal-content{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:90%;max-width:700px;max-height:90vh;overflow-y:auto}.modal-content.large{max-width:900px}.modal-content.small{max-width:480px}.modal-content h2{margin:0 0 var(--space-lg) 0;font-size:var(--font-size-xl);color:var(--text-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:var(--badge-padding);border-radius:var(--badge-radius);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;line-height:1}.status-draft{background-color:var(--color-gray-100);color:var(--color-gray-600)}.status-pending{background-color:var(--color-gray-200);color:var(--color-gray-700)}.status-confirmed,.status-approved{background-color:var(--color-info-light);color:var(--color-info-dark)}.status-active,.status-paid,.status-invoiced,.status-received{background-color:var(--color-success-light);color:var(--color-success-dark)}.status-shipped,.status-processing{background-color:var(--color-warning-light);color:var(--color-warning-dark)}.status-issued,.status-sent{background-color:var(--color-info-light);color:var(--color-info-dark)}.status-partial,.status-partially_paid,.status-partially_invoiced{background-color:#fef3c7;color:#92400e}.status-awaiting_payment{background-color:var(--color-warning-light);color:var(--color-warning-dark)}.status-cancelled,.status-void,.status-rejected{background-color:var(--color-error-light);color:var(--color-error-dark)}.type-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em}.type-badge.type-inv{background-color:var(--color-gray-100);color:var(--color-gray-600)}.type-badge.type-cn{background-color:#a855f71f;color:#7c3aed}.delivery-hint{display:inline-block;margin-left:var(--space-sm);padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background-color:var(--color-info-light);color:var(--color-info-dark);border:1px solid rgba(37,99,235,.2)}.delivery-hint.shipped{background-color:var(--color-warning-light);color:var(--color-warning-dark);border-color:#f59e0b33}.delivery-hint.clickable{cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.delivery-hint.clickable:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.delivery-hint.clickable:active{transform:translateY(0)}.stock-processed{color:var(--color-success-dark);font-weight:var(--font-weight-medium)}.stock-pending{color:var(--color-warning-dark)}.empty-state-inline{padding:var(--space-lg);text-align:center;color:var(--text-secondary)}.empty-state-inline p{margin:var(--space-xs) 0}.empty-state-inline .text-muted{font-size:var(--font-size-sm);color:var(--text-muted)}.table-container{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border-color)}.table-container--scrollable{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-table th,.data-table td{padding:var(--space-sm) var(--space-md);text-align:left;vertical-align:middle}.data-table thead{background:var(--bg-table-header)}.data-table th{font-weight:var(--font-weight-semibold);color:var(--text-secondary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.data-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:var(--color-gray-50)}.data-table td{color:var(--text-primary)}.data-table--compact th,.data-table--compact td{padding:var(--space-xs) var(--space-sm)}.data-table--striped tbody tr:nth-child(2n){background:var(--color-gray-50)}.data-table--borderless tbody tr{border-bottom:none}.data-table td.cell-numeric,.data-table th.cell-numeric{text-align:right;font-family:var(--font-family-mono)}.text-right{text-align:right}.text-left{text-align:left}.text-center{text-align:center}.data-table td.cell-date{white-space:nowrap}.data-table td.cell-actions{text-align:right;white-space:nowrap}.data-table td.cell-actions .btn{margin-left:var(--space-xs)}.data-table td.cell-actions .btn:first-child{margin-left:0}.data-table td.cell-status{white-space:nowrap}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{color:var(--text-primary)}.data-table th.sortable:after{content:"↕";margin-left:var(--space-xs);opacity:.3}.data-table th.sorted-asc:after{content:"↑";opacity:1}.data-table th.sorted-desc:after{content:"↓";opacity:1}.data-table .table-empty{text-align:center;padding:var(--space-2xl);color:var(--text-muted)}@media (max-width: 768px){.data-table th,.data-table td{padding:var(--space-xs) var(--space-sm)}.data-table .hide-mobile{display:none}}.report-container{background:var(--bg-card);padding:var(--space-lg);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.report-container h2{margin:0 0 var(--space-lg) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.report-filters{margin-bottom:var(--space-lg);padding:var(--space-lg)}.report-form{display:flex;flex-direction:column;gap:var(--space-lg)}.report-form__filters{display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:flex-start;padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.report-form__actions{display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:center}.filter-group{display:flex;flex-direction:column;gap:var(--space-xs);min-width:140px}.filter-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);letter-spacing:.01em}.filter-hint{font-size:var(--font-size-xs);color:var(--text-tertiary);line-height:1.4;max-width:280px}.filter-hint--wide{max-width:100%;flex-basis:100%;margin-top:var(--space-xs)}.filter-input{height:var(--input-height);padding:var(--input-padding);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--bg-input);color:var(--text-primary);min-width:160px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.filter-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.report-filters form:not(.report-form){display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:flex-end}.report-filters label:not(.filter-label){font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.report-filters input[type=date],.report-filters select{height:var(--input-height);padding:var(--input-padding);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--bg-input);color:var(--text-primary);min-width:140px}.report-filters input[type=date]:focus,.report-filters select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.report-section{margin-bottom:var(--space-xl)}.report-section:last-child{margin-bottom:0}.report-section h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);padding:var(--space-sm) 0;margin:0 0 var(--space-md) 0;border-bottom:2px solid var(--color-primary);text-transform:uppercase;letter-spacing:.03em}.report-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm);background:var(--bg-card)}.report-table thead{background:var(--bg-table-header)}.report-table th{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;text-align:left}.report-table th.col-amount,.report-table th:not(.col-name):not(.col-account):not(.col-customer):not(.text-left){text-align:right}.report-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast);height:var(--table-row-height)}.report-table tbody tr:hover{background:var(--bg-secondary)}.report-table td{padding:var(--space-sm) var(--space-md);vertical-align:middle;color:var(--text-primary)}.report-table td.col-name,.report-table td.col-account,.report-table td.col-customer,.report-table .text-left{text-align:left}.report-table td.col-amount,.report-table td:not(.col-name):not(.col-account):not(.col-customer):not(.text-left){text-align:right;font-family:var(--font-family-mono);font-weight:var(--font-weight-medium);white-space:nowrap}.report-table tbody tr.row-subtotal{background:var(--color-gray-50);font-weight:var(--font-weight-semibold)}.report-table tbody tr.row-subtotal td{border-top:1px solid var(--color-gray-300);padding:var(--space-sm) var(--space-md)}.report-table tfoot tr{border-top:2px solid var(--border-color);background:var(--bg-table-header)}.report-table tfoot th,.report-table tfoot td{padding:var(--space-md);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.report-table tfoot td{text-align:right;font-family:var(--font-family-mono)}.report-table tfoot .totals-row th,.report-table tfoot .totals-row td{padding:var(--space-md);border-top:2px solid var(--border-color)}.report-summary{margin-top:var(--space-xl);padding:var(--space-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);text-align:right}.report-summary h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-sm) 0;border:none;padding:0}.report-summary .summary-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);font-family:var(--font-family-mono)}.report-summary .summary-value.profit{color:var(--color-success-dark)}.report-summary .summary-value.loss{color:var(--color-error-dark)}.report-summary-inline{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-radius:var(--radius-md);margin-top:var(--space-md)}.report-summary-inline .summary-label{font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.report-summary-inline .summary-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);font-family:var(--font-family-mono);color:var(--text-primary)}.balance-sheet-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl)}@media (max-width: 992px){.balance-sheet-columns{grid-template-columns:1fr}}.report-form__actions .btn-primary,.report-form__actions button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);background:var(--color-primary);color:#fff;padding:var(--space-sm) var(--space-lg);text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);transition:background-color var(--transition-fast),transform var(--transition-fast);border:none;cursor:pointer;min-width:140px;height:var(--input-height)}.report-form__actions .btn-primary:hover,.report-form__actions button[type=submit]:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.report-form__actions .btn-primary:disabled,.report-form__actions button[type=submit]:disabled{background:var(--color-gray-400);cursor:not-allowed;transform:none}.report-form__actions .btn-secondary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);background:var(--bg-secondary);color:var(--text-primary);padding:var(--space-sm) var(--space-md);text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background-color var(--transition-fast),border-color var(--transition-fast);border:1px solid var(--border-color);cursor:pointer;height:var(--input-height)}.report-form__actions .btn-secondary:hover,.btn-secondary:hover{background:var(--bg-hover);border-color:var(--text-tertiary);color:var(--text-primary)}.button-csv,.btn-export{display:inline-flex;align-items:center;gap:var(--space-xs);background-color:var(--color-success);color:#fff;padding:var(--space-sm) var(--space-md);text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background-color var(--transition-fast);border:none;cursor:pointer}.button-csv:hover,.btn-export:hover{background-color:var(--color-success-dark);color:#fff}@media (max-width: 768px){.report-form{gap:var(--space-md)}.report-form__filters{flex-direction:column;padding-bottom:var(--space-sm)}.report-form__filters .filter-group{width:100%}.report-form__actions{flex-direction:column}.report-form__actions .btn-primary,.report-form__actions .btn-secondary,.report-form__actions button[type=submit]{width:100%}.filter-hint{max-width:100%}.report-filters form:not(.report-form){flex-direction:column;align-items:stretch}.report-filters input[type=date],.report-filters select,.report-filters button,.filter-input,.button-csv,.btn-secondary{width:100%}.report-table th,.report-table td{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs)}.report-summary{text-align:center}.report-summary .summary-value{font-size:var(--font-size-xl)}.report-summary-inline{flex-direction:column;gap:var(--space-sm);text-align:center}}@media print{.report-filters,.button-csv,.btn-export{display:none!important}.report-container{box-shadow:none;border:none;padding:0;background:none}.report-table,.report-section{page-break-inside:avoid}.balance-sheet-columns{grid-template-columns:1fr 1fr}.report-summary{background:none;border:2px solid var(--text-primary)}}.page-container{padding:var(--space-lg);max-width:1400px;margin:0 auto}@media (max-width: 768px){.page-container{padding:var(--space-md)}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);flex-wrap:wrap;gap:var(--space-md)}.page-header__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.page-header__subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-xs)}.page-header__actions{display:flex;gap:var(--space-sm);align-items:center}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-color)}.section-header__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-md);background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color)}.filter-bar__group{display:flex;flex-direction:column;gap:var(--space-xs)}.filter-bar__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase}.filter-bar__input{min-width:150px}.filter-bar__actions{display:flex;gap:var(--space-xs);align-items:flex-end;margin-left:auto}.stats-bar{display:flex;gap:var(--space-md);margin-bottom:var(--space-lg);padding:var(--space-md);background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color)}.stats-bar__item{display:flex;flex-direction:column;gap:var(--space-xs);min-width:100px}.stats-bar__label{font-size:var(--font-size-xs);color:var(--text-secondary)}.stats-bar__value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.content-card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);padding:var(--space-lg);margin-bottom:var(--space-md)}.content-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.content-card__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.layout-two-column{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}@media (max-width: 992px){.layout-two-column{grid-template-columns:1fr}}.layout-sidebar-main{display:grid;grid-template-columns:300px 1fr;gap:var(--space-lg)}@media (max-width: 992px){.layout-sidebar-main{grid-template-columns:1fr}}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-family);background-color:var(--bg-page);color:var(--text-primary);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:var(--line-height-tight)}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}h4{font-size:var(--font-size-base)}p{margin:0 0 var(--space-md) 0;color:var(--text-secondary)}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-dark)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-gray-100)}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}::selection{background:var(--color-primary-light);color:var(--color-primary-dark)}
