@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap";.layout{width:100%;min-height:100dvh;display:flex}.skip-link{z-index:3000;border:2px solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-sm);border-radius:8px;padding:.65rem .85rem;font-weight:900;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.sidebar{background:var(--surface-color);border-right:var(--border-width,2px) solid var(--border-color);z-index:10;width:264px;height:100dvh;box-shadow:inset -1px 0 0 color-mix(in srgb, var(--shadow-color) 12%, transparent);flex-direction:column;transition:width .3s,background-color .2s,border-color .2s;display:flex;position:fixed;top:0;left:0}.sidebar.collapsed{width:72px}.sidebar-header{border-bottom:var(--border-width,2px) solid var(--border-subtle,var(--border-color));padding:1.5rem}.sidebar-header h2{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:700}.sidebar-collapse-btn{background-color:var(--surface-color);border:var(--border-width,2px) solid var(--border-color);cursor:pointer;z-index:50;width:44px;height:44px;box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:-22px;transform:translateY(-50%)}.sidebar-brand{border-bottom:var(--border-width,2px) solid var(--border-subtle,var(--border-color));justify-content:flex-start;align-items:center;padding:1.75rem 1rem 1rem;display:flex}.brand-lockup{white-space:nowrap;color:#0a0a0a;letter-spacing:-.03em;align-items:center;gap:.65rem;font-size:1.22rem;font-weight:900;display:flex}.brand-mark{color:#f5c518;width:34px;height:34px;box-shadow:none;background:#0a0a0a;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.05rem;line-height:1;display:inline-flex}html.dark .brand-lockup{color:#b8c0cc;letter-spacing:-.03em;font-weight:800}html.dark .brand-mark{color:#f5c518;box-shadow:none;background:#2a3140;border:0;border-radius:8px}html.dark .mobile-header h2{color:#b8c0cc;letter-spacing:-.03em;font-weight:800}.sidebar.collapsed .sidebar-brand{justify-content:center;padding:1.75rem 0 1rem}.bank-switcher{border-bottom:var(--border-width,2px) solid var(--border-subtle,var(--border-color));padding:.65rem .9rem;position:relative}.bank-switcher-trigger{background:color-mix(in srgb, var(--surface-color) 55%, transparent);border:1.5px solid color-mix(in srgb, var(--border-color) 14%, transparent);cursor:default;border-radius:999px;align-items:center;gap:.55rem;width:100%;min-height:44px;padding:.35rem .55rem;display:flex}.bank-dot{border:1.5px solid var(--border-color);border-radius:50%;flex-shrink:0;width:9px;height:9px}.bank-indicator-text{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;text-align:left;text-overflow:ellipsis;flex:1;font-size:.72rem;font-weight:900;overflow:hidden}.bank-count{color:var(--text-secondary);background-color:var(--surface-subtle);text-align:center;border-radius:6px;flex:none;padding:0 .35rem}.bank-menu{background-color:var(--surface-color);border:var(--border-width,2px) solid var(--border-color);min-width:210px;box-shadow:var(--shadow-lg);z-index:100;border-radius:12px;position:absolute;top:calc(100% + 4px);left:.75rem;overflow:hidden}.sidebar.collapsed .bank-switcher{padding:.65rem 0}.sidebar.collapsed .bank-switcher-trigger{background:color-mix(in srgb, var(--surface-color) 55%, transparent);border-radius:10px;justify-content:center;width:44px;height:44px;margin:0 auto;padding:0}.sidebar-nav{flex:1;padding:.85rem 0;overflow-y:auto}.sidebar-nav-section+.sidebar-nav-section{border-top:1.5px solid color-mix(in srgb, var(--border-color) 14%, transparent);margin-top:.55rem;padding-top:.6rem}.sidebar-nav-label,.mobile-nav-label{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;padding:0 1rem .15rem;font-size:.62rem;font-weight:900}.sidebar-footer{border-top:1.5px solid color-mix(in srgb, var(--border-color) 16%, transparent);flex-direction:column;gap:.55rem;padding:.75rem .75rem 1rem;display:flex}.theme-switch{border:var(--border-width,2px) solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-subtle);box-sizing:border-box;grid-template-columns:1fr 1fr;gap:.25rem;margin:0 .65rem;padding:.25rem;display:grid}.theme-switch-option{border-radius:calc(var(--radius-md) - 2px);min-height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.4rem;padding:.45rem .5rem;font-size:.82rem;font-weight:800;transition:background-color .15s,color .15s,box-shadow .15s;display:inline-flex}.theme-switch-option:hover:not(.is-active){color:var(--text-primary);background:color-mix(in srgb, var(--surface-color) 70%, transparent)}.theme-switch-option.is-active{background:var(--surface-color);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:900}html.dark .theme-switch-option.is-active{background:color-mix(in srgb, var(--info-accent) 14%, var(--surface-color));color:var(--text-primary);box-shadow:none;border:1px solid color-mix(in srgb, var(--info-accent) 30%, var(--border-color))}.theme-switch-option svg{flex-shrink:0}.nav-item{border-radius:var(--radius-md);color:var(--text-primary);border:var(--border-width,2px) solid transparent;box-sizing:border-box;align-items:center;gap:.65rem;min-width:0;max-width:100%;margin:.3rem .65rem;padding:.8rem .85rem;font-size:.95rem;font-weight:800;line-height:1.25;transition:all .2s;display:flex;position:relative;overflow:hidden}.nav-item span{white-space:normal;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;flex:auto;min-width:0}.sidebar-footer .nav-item{margin-bottom:1rem}.nav-item:hover{background-color:var(--surface-subtle);border-color:#0000}.nav-item.active{background-color:var(--surface-subtle);color:var(--text-primary);border:var(--border-width,2px) solid var(--border-color);box-shadow:var(--shadow-sm);font-weight:900;transform:translateZ(0)}html.dark .nav-item.active{background:color-mix(in srgb, var(--info-accent) 12%, var(--surface-subtle));border-color:color-mix(in srgb, var(--info-accent) 35%, var(--border-color));box-shadow:none}.nav-item svg{stroke-width:2.4px;flex-shrink:0}.sidebar.collapsed .nav-item{border-radius:var(--radius-md);justify-content:center;width:44px;height:44px;margin:.45rem auto;padding:0}.sidebar.collapsed .nav-item span,.sidebar.collapsed .sidebar-nav-label{display:none}.sidebar.collapsed .sidebar-nav-section+.sidebar-nav-section{margin-top:.35rem;padding-top:.35rem}.sidebar.collapsed .bank-indicator-text{display:none}.sidebar.collapsed .nav-item+div{display:none!important}.sidebar-subnav{border-left:2px solid #00000029;flex-direction:column;gap:.35rem;margin:.15rem .85rem 1rem 1.65rem;padding-left:.75rem;display:flex}.sidebar-subnav a{color:var(--text-primary);border-radius:8px;padding:.42rem .65rem;font-size:.86rem;font-weight:850;text-decoration:none}.sidebar-subnav a:hover{background:color-mix(in srgb, var(--surface-color) 72%, transparent);outline:1.5px solid color-mix(in srgb, var(--border-color) 16%, transparent)}.sidebar-user{border:1.5px solid color-mix(in srgb, var(--border-color) 16%, transparent);background:color-mix(in srgb, var(--surface-color) 55%, transparent);color:var(--text-secondary);border-radius:12px;align-items:center;gap:.5rem;margin:0 0 .6rem;padding:.65rem .75rem;font-size:.82rem;font-weight:800;display:flex;overflow:hidden}.sidebar-user span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-user-avatar{background-color:var(--surface-color);color:var(--text-primary);border:1.5px solid #00000029;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.logout-btn{width:100%;color:var(--danger-text);background-color:var(--danger-surface);border:var(--border-width,2px) solid color-mix(in srgb, var(--danger) 35%, var(--border-color));border-radius:var(--radius-md);box-sizing:border-box;margin:0;font-weight:900;transition:background-color .15s,color .15s,box-shadow .15s}.sidebar.collapsed .logout-btn{width:44px;height:44px;margin:0 auto}.sidebar.collapsed .sidebar-footer>div:first-child{display:none!important}.logout-btn:hover{background-color:var(--danger);color:var(--bg-color);border:var(--border-width,2px) solid var(--border-color);box-shadow:var(--shadow-sm)}.main-content{background-color:var(--bg-color);flex-direction:column;flex:1;min-width:0;margin-left:264px;transition:margin-left .3s,background-color .2s;display:flex}html.dark .main-content{background:radial-gradient(1200px 500px at 10% -10%, #7eb0e80f, transparent 55%), radial-gradient(900px 400px at 90% 0%, #7dcea00a, transparent 50%), var(--bg-color)}.main-content.collapsed{margin-left:72px}.mobile-header{min-height:calc(68px + env(safe-area-inset-top));padding:calc(.75rem + env(safe-area-inset-top)) 1.25rem .75rem;background-color:var(--bg-color);border-bottom:2px solid var(--border-color);z-index:1100;justify-content:space-between;align-items:center;display:none;position:sticky;top:0}.mobile-header h2{color:var(--text-primary);font-size:1.25rem;font-weight:700}.mobile-header button{width:44px;height:44px;color:var(--text-primary);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.mobile-nav{background-color:var(--bg-color);border-bottom:2px solid var(--border-color);flex-direction:column;display:none}.page-container{flex:1;width:100%;min-width:0;max-width:1360px;margin:0 auto;padding:2.25rem}@media (width<=1024px){.sidebar{display:none}.main-content{min-width:0;max-width:100%;margin-left:0}.mobile-header{display:flex}.mobile-nav{padding-top:calc(80px + env(safe-area-inset-top));padding-bottom:calc(2rem + env(safe-area-inset-bottom));padding-left:max(1.25rem, env(safe-area-inset-left));padding-right:max(1.25rem, env(safe-area-inset-right));background-color:color-mix(in srgb, var(--bg-color) 98%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden auto}.theme-switch{width:100%;margin:0}.mobile-nav-footer .theme-switch{margin:0}.mobile-nav-item{color:var(--text-primary);border-radius:var(--radius-md);background-color:var(--bg-color);border:2px solid #0000;align-items:center;gap:1rem;margin-bottom:.5rem;padding:1rem 1.25rem;font-size:1.05rem;font-weight:800;text-decoration:none;transition:all .2s;display:flex}.mobile-nav-item.active{background-color:var(--primary);color:var(--text-on-inverted);box-shadow:var(--shadow-sm)}html.dark .mobile-nav-item.active{background:color-mix(in srgb, var(--info-accent) 18%, var(--surface-subtle));color:var(--text-primary);border-color:color-mix(in srgb, var(--info-accent) 40%, var(--border-color));box-shadow:none}.mobile-nav-section+.mobile-nav-section{border-top:1.5px solid var(--border-subtle);margin-top:.75rem;padding-top:.75rem}.mobile-nav-label{margin-bottom:.35rem;padding-left:1.25rem}.mobile-nav-item .icon-container{justify-content:center;align-items:center;display:flex}.mobile-sub-nav{flex-direction:column;gap:.75rem;padding:.5rem 1rem 1rem 3.5rem;display:flex}.mobile-sub-nav a{color:var(--text-secondary);font-size:.95rem;font-weight:700;text-decoration:none}.mobile-nav-footer{border-top:2px solid var(--surface-disabled);flex-direction:column;gap:1rem;margin-top:auto;padding-top:2rem;display:flex}.mobile-user-profile{background-color:var(--info-surface);border-radius:var(--radius-lg);border:2px solid var(--info-border);align-items:center;gap:1rem;padding:1rem;display:flex}.mobile-user-profile .avatar{background-color:var(--info-border);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.mobile-user-profile .email{color:var(--text-primary);word-break:break-all;font-size:.9rem;font-weight:800}.mobile-logout-btn{background-color:var(--danger-surface);width:100%;color:var(--danger-text);border:2px solid var(--danger-surface);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-size:1rem;font-weight:800;transition:all .2s;display:flex}.page-container{padding:1.35rem max(1.15rem, env(safe-area-inset-right)) calc(5.5rem + env(safe-area-inset-bottom)) max(1.15rem, env(safe-area-inset-left));max-width:100%;overflow-x:clip}.mobile-header{width:100%;max-width:100%}.mobile-nav-item,.mobile-logout-btn{min-height:48px}}@media (width<=1024px) and (orientation:landscape) and (height<=900px){.mobile-header{min-height:calc(52px + env(safe-area-inset-top));padding:calc(.4rem + env(safe-area-inset-top)) 1.15rem .4rem}.mobile-header h2{font-size:1.1rem}.mobile-nav{padding-top:calc(60px + env(safe-area-inset-top));padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.page-container{padding:1rem max(1rem, env(safe-area-inset-right)) 1.5rem max(1rem, env(safe-area-inset-left))}}@media (width>=600px) and (width<=900px) and (orientation:portrait){.page-container{padding:1.5rem 1.35rem 2.25rem}.mobile-nav-item{font-size:1.02rem}}@media (width<=480px){.mobile-header,.mobile-nav{padding-left:1rem;padding-right:1rem}.page-container{padding:1rem}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-color:#fdfdfc;--surface-color:#fff;--text-primary:#000;--text-secondary:#334155;--text-muted:#64748b;--border-color:#000;--border-strong:#000;--surface-subtle:#f8fafc;--surface-disabled:#e2e8f0;--focus-ring:#2563eb;--shadow-color:#000;--primary:#000;--primary-hover:#222;--primary-light:#f0f0f0;--pastel-green:#dcfce7;--pastel-yellow:#fef08a;--pastel-purple:#f3e8ff;--pastel-blue:#dbeafe;--pastel-pink:#fce7f3;--gradient-rainbow:linear-gradient(120deg, #ffc8c8 0%, #fff0c8 25%, #c8ffc8 50%, #c8f0ff 75%, #e6c8ff 100%);--danger:#ef4444;--success:#22c55e;--warning:#f59e0b;--danger-surface:#fee2e2;--danger-text:#991b1b;--success-surface:#dcfce7;--success-text:#166534;--warning-surface:#fef3c7;--warning-text:#854d0e;--account-card-unconfigured:#fefce8;--account-card-unconfigured-badge:#fde047;--account-card-paid:#f0fdf4;--account-card-paid-badge:#86efac;--account-card-missing:#fff1f2;--account-card-missing-badge:#fecaca;--account-card-overdue:#fff1f2;--account-card-overdue-badge:#fca5a5;--account-card-pending:#fff7ed;--account-card-pending-badge:#fed7aa;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:9999px;--shadow-sm:2px 2px 0px 0px var(--shadow-color);--shadow-md:4px 4px 0px 0px var(--shadow-color);--shadow-lg:4px 4px 0px 0px var(--shadow-color);--shadow-hover:4px 4px 0px 0px var(--shadow-color);--border-width:2px;--control-height:44px;--focus-outline-width:3px;--border-subtle:#cbd5e1;--border-muted:#94a3b8;--overlay:#0f172a94;--chart-grid:#e2e8f0;--text-on-inverted:#fff;--info-surface:#eff6ff;--info-border:#bfdbfe;--info-accent:#93c5fd;--skeleton-base:#f1f5f9;--skeleton-shine:#e2e8f0;--success-soft:#bbf7d0;--warning-soft:#fde047;--cyan-soft:#a5f3fc;--purple-accent:#8b5cf6;--purple-text:#6d28d9}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-color:#0f1219;--surface-color:#171b24;--text-primary:#c5cbd6;--text-secondary:#8b93a7;--text-muted:#6a7285;--text-emphasis:#d2d7e2;--border-color:#2c3344;--border-strong:#4a5568;--surface-subtle:#1e2430;--surface-disabled:#2a3140;--shadow-color:#0000006b;--border-width:1.5px;--primary:#c5cbd6;--primary-hover:#d5dae4;--primary-light:#1e2430;--pastel-green:#1a2e26;--pastel-yellow:#2a2419;--pastel-purple:#241e32;--pastel-blue:#1a2433;--pastel-pink:#2a1e28;--gradient-rainbow:linear-gradient(120deg, #2a1e28 0%, #2a2419 25%, #1a2e26 50%, #1a2433 75%, #241e32 100%);--danger:#f09a9a;--success:#7dcea0;--warning:#e0b86a;--danger-surface:#2a1a1e;--danger-text:#f0b4b8;--success-surface:#1a2a22;--success-text:#a8dcc0;--warning-surface:#2a2419;--warning-text:#e8d4a0;--account-card-unconfigured:#2a2419;--account-card-unconfigured-badge:var(--warning-text);--account-card-paid:#1a2a22;--account-card-paid-badge:var(--success-text);--account-card-missing:#2a1a1e;--account-card-missing-badge:var(--danger-text);--account-card-overdue:#2a1a1e;--account-card-overdue-badge:var(--danger-text);--account-card-pending:#2a2018;--account-card-pending-badge:#c4a574;--shadow-sm:0 1px 2px #00000047, 0 1px 0 #ffffff08 inset;--shadow-md:0 4px 18px #00000052, 0 1px 0 #ffffff0a inset;--shadow-lg:0 10px 32px #00000061;--shadow-hover:0 8px 24px #0000005c;--border-subtle:#242a38;--border-muted:#3d4659;--overlay:#080a10b8;--chart-grid:#2a3140;--text-on-inverted:#0f1219;--info-surface:#1a2433;--info-border:#2a3a55;--info-accent:#7eb0e8;--skeleton-base:#1e2430;--skeleton-shine:#2a3140;--success-soft:#1a2e26;--warning-soft:#2a2419;--cyan-soft:#1a2a30;--purple-accent:#b4a0e8;--purple-text:#c8b8f0;--focus-ring:#7eb0e8}html.dark .card,html.dark .btn,html.dark .btn-icon,html.dark .badge,html.dark .input,html.dark .dialog-panel,html.dark .nav-item.active{box-shadow:var(--shadow-md)}html.dark .btn:active,html.dark .btn-icon:active{box-shadow:none;transform:translateY(1px)}html.dark .btn-primary{color:#0f1219;background-color:#dce3f0;border-color:#2c3344}html.dark .btn-primary:hover{background-color:#eef2f8}html.dark .btn-outline:hover{background-color:var(--surface-subtle)}html.dark .input{background-color:var(--surface-subtle);border-color:var(--border-color)}html.dark .input:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus-ring) 28%, transparent)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-width:320px;font-family:Montserrat,sans-serif;line-height:1.5;transition:background-color .2s,color .2s;overflow-x:clip}html.dark body{background-color:var(--bg-color);color:var(--text-primary)}html.dark h1,html.dark h2,html.dark .app-page-title,html.dark .dashboard-kpi-amount,html.dark .light-balance-card strong{color:var(--text-emphasis)}html.dark ::selection{background:color-mix(in srgb, var(--info-accent) 40%, transparent);color:var(--text-primary)}html.dark{scrollbar-color:var(--border-muted) var(--surface-subtle)}html,#root{min-width:320px;max-width:100%;min-height:100%}@media (width>=1025px){html{font-size:15px}}img,canvas{max-width:100%}.auth-shell{min-height:100dvh!important}.auth-form-col,.auth-form-inner{min-width:0}h1,h2,h3,h4,h5,h6{letter-spacing:0;font-family:Montserrat,sans-serif;font-weight:800}a{color:var(--text-primary);font-weight:500;text-decoration:none}button{cursor:pointer;color:inherit;appearance:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;font-family:inherit}:where(a,button,input,select,textarea,summary,[role=button],[tabindex]):focus-visible{outline:var(--focus-outline-width) solid var(--focus-ring);outline-offset:3px}button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled=true]{cursor:not-allowed;opacity:.58}button:disabled{box-shadow:none!important;transform:none!important}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.card{background-color:var(--surface-color);border-radius:var(--radius-md);border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-md);padding:1.5rem;transition:transform .16s,box-shadow .16s,border-color .16s,background-color .16s}.card-interactive:hover{box-shadow:var(--shadow-hover);transform:translate(-2px,-2px)}html.dark .card-interactive:hover{border-color:var(--border-strong);transform:translateY(-2px)}.btn{border-radius:var(--radius-md);border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-sm);min-height:var(--control-height);justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.95rem;font-weight:900;transition:all .15s;display:inline-flex}.btn:active{box-shadow:0px 0px 0px 0px var(--shadow-color);transform:translate(2px,2px)}.btn-icon{border-radius:var(--radius-sm);border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-sm);background-color:var(--surface-color);color:var(--text-primary);cursor:pointer;width:var(--control-height);height:var(--control-height);flex:0 0 var(--control-height);justify-content:center;align-items:center;padding:.35rem;transition:all .1s;display:inline-flex}.btn-icon:hover{background-color:var(--pastel-yellow);box-shadow:4px 4px 0px 0px var(--shadow-color);transform:translate(-2px,-2px)}.btn-icon:active{box-shadow:0px 0px 0px 0px var(--shadow-color);transform:translate(2px,2px)}.btn-primary{background-color:var(--primary);color:var(--bg-color)}.btn-primary:hover{background-color:var(--primary-hover)}.btn-outline{background-color:var(--surface-color);color:var(--text-primary)}.btn-outline:hover{background-color:var(--primary-light)}.btn-gradient{color:var(--text-primary);z-index:1;background:linear-gradient(90deg,#ff9a9e 0%,#fecfef 99% 100%);position:relative}.btn-gradient:before{content:"";background:var(--border-color);border-radius:calc(var(--radius-md) - 2px);z-index:-1;position:absolute;inset:2px}.btn-gradient{color:var(--bg-color)}.input{border-radius:var(--radius-md);border:var(--border-width) solid var(--border-color);background-color:var(--surface-color);width:100%;color:var(--text-primary);box-shadow:var(--shadow-sm);min-height:var(--control-height);padding:.75rem 1rem;font-family:inherit;font-size:.875rem;transition:transform .1s,box-shadow .1s}.input:focus:not(:focus-visible){box-shadow:var(--shadow-md);transform:translate(-1px,-1px)}.input::placeholder{color:var(--text-muted);opacity:1}select.input{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.5rem}.label{color:var(--text-primary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}.badge{border-radius:var(--radius-pill);border:var(--border-width) solid var(--border-color);box-shadow:2px 2px 0px 0px var(--shadow-color);align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex}.badge-success{background-color:var(--success-surface);color:var(--success-text)}.badge-danger{background-color:var(--danger-surface);color:var(--danger-text)}.badge-primary{background-color:var(--primary-light);color:var(--text-primary)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.info-tooltip{vertical-align:middle;align-items:center;margin-left:.25rem;display:inline-flex}.info-tooltip-trigger{width:44px;height:44px;color:var(--text-muted);cursor:help;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.info-tooltip-trigger:hover,.info-tooltip-trigger:focus-visible{background:var(--surface-disabled);color:var(--text-primary)}.auth-tabs button,.bank-menu [role=menuitemradio]{min-height:44px}.interactive-card{cursor:pointer;transition:transform .12s,box-shadow .12s,background-color .12s}.interactive-card:hover{transform:translate(-1px,-1px);box-shadow:var(--shadow-md)!important}.interactive-card:active{transform:translate(1px,1px);box-shadow:none!important}.dialog-backdrop{z-index:99999;background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;padding:1rem;animation:.16s ease-out dialog-backdrop-in;display:flex;position:fixed;inset:0}.dialog-panel{background:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-lg);width:min(100%,760px);max-height:min(88vh,900px);box-shadow:var(--shadow-md);animation:.18s ease-out dialog-panel-in;overflow:auto}.dialog-panel:focus{outline:none}.dialog-header{z-index:10;border-bottom:var(--border-width) solid var(--border-color);background:var(--surface-subtle);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex;position:sticky;top:0}.dialog-header h2,.dialog-header h3{margin:0}.dialog-close{width:var(--control-height);height:var(--control-height);flex:0 0 var(--control-height);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;display:inline-flex}.dialog-close:hover{background:var(--danger-surface)}@keyframes dialog-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-panel-in{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=600px){.dialog-backdrop{align-items:flex-end;padding:0}.dialog-panel{width:100%;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -4px 0 var(--shadow-color);border-bottom:0;border-radius:12px 12px 0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.light-dashboard{gap:1.25rem;width:min(100%,1120px);margin:0 auto;display:grid}.light-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.app-page-title,.light-header h1{letter-spacing:-.055em;margin:.3rem 0 .35rem;font-size:clamp(2rem,5vw,3.35rem);line-height:.98}.light-header p{max-width:650px;color:var(--text-secondary);margin:0;font-weight:650}.light-eyebrow,.light-month-pill,.light-card-label{letter-spacing:.065em;text-transform:uppercase;align-items:center;gap:.4rem;font-size:.72rem;font-weight:900;display:inline-flex}.light-eyebrow{color:var(--purple-text)}.light-month-pill{border:var(--border-width) solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-sm);color:var(--text-primary);border-radius:999px;padding:.65rem .85rem}.light-month-pill select{max-width:190px;color:var(--text-primary);-webkit-text-fill-color:var(--text-primary);font:inherit;text-transform:capitalize;cursor:pointer;background:0 0;border:0;font-weight:900}.light-month-pill select option{color:var(--text-primary);background:var(--surface-color)}.light-month-pill select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:3px}.light-month-navigation{width:auto;min-width:min(100%,390px)}.light-period-trigger{letter-spacing:.045em;text-transform:uppercase;color:var(--text-primary);gap:.45rem;font-size:.72rem}.light-period-trigger select{min-width:0;max-width:180px;color:var(--text-primary);-webkit-text-fill-color:var(--text-primary);cursor:pointer;font:inherit;text-transform:capitalize;background:0 0;border:0;font-weight:900}.light-period-trigger select option{color:var(--text-primary);background:var(--surface-color)}.light-period-trigger select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:3px}.light-period-scope{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.light-balance-card{border:3px solid var(--border-color);background:var(--pastel-green);min-height:180px;box-shadow:var(--shadow-lg);border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1.4rem,4vw,2.2rem);display:flex}.light-balance-card.is-negative{background:var(--danger-surface)}.light-balance-card strong{letter-spacing:-.06em;margin-top:.25rem;font-size:clamp(2.25rem,8vw,4.75rem);line-height:1;display:block}.light-balance-card p{margin:.65rem 0 0;font-weight:700}.light-opening-balance{color:var(--text-secondary);margin-top:.45rem;font-size:.76rem;font-weight:800;display:block}.light-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.light-kpi{border:2px solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-md);border-radius:12px;padding:1rem 1.1rem}.light-kpi-income{background:var(--pastel-green)}.light-kpi-expense{background:var(--danger-surface)}.light-kpi span{color:var(--text-secondary);align-items:center;gap:.4rem;font-size:.78rem;font-weight:850;display:flex}.light-kpi strong{margin-top:.35rem;font-size:clamp(1.3rem,3vw,2rem);line-height:1.1;display:block}.light-kpi small{color:var(--text-secondary);margin-top:.35rem;font-size:.72rem;font-weight:750;line-height:1.35;display:block}.light-accounting-note{border:2px solid var(--border-muted);background:var(--surface-subtle);color:var(--text-secondary);border-radius:10px;margin:-.2rem 0 0;padding:.7rem .9rem;font-size:.78rem;font-weight:700;line-height:1.4}.light-accounting-note small{color:var(--text-muted);margin-top:.3rem;font-size:.72rem;display:block}.light-main-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:1.25rem;display:grid}.light-section{border:3px solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-lg);border-radius:16px;padding:1.25rem}.light-section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.light-section-heading h2{letter-spacing:-.035em;margin:.2rem 0 0;font-size:1.55rem}.light-section-heading>strong{border:2px solid var(--border-color);background:var(--pastel-yellow);border-radius:999px;padding:.3rem .6rem;font-size:.82rem}.light-progress,.light-category-track{border:2px solid var(--border-color);background:var(--surface-disabled);overflow:hidden}.light-progress{border-radius:999px;height:14px;margin-bottom:1rem}.light-progress>span,.light-category-track>span{background:var(--success);height:100%;display:block}.light-payment-list,.light-category-list{gap:.65rem;display:grid}.light-payment-row{border-bottom:1.5px solid var(--border-subtle);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.75rem 0;display:grid}.light-payment-row:last-child{border-bottom:0}.light-payment-row small,.light-payment-row strong{display:block}.light-payment-row small{color:var(--text-muted);margin-top:.15rem;font-size:.74rem;font-weight:700}.light-payment-row>b{text-align:right;font-size:.8rem}.light-status-icon{border:2px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.light-status-icon.is-paid{background:var(--success-soft)}.light-status-icon.is-pending{background:var(--pastel-yellow)}.light-status-icon.is-unconfigured{background:var(--surface-disabled)}.light-category-row>div:first-child{justify-content:space-between;gap:1rem;font-size:.86rem;display:flex}.light-category-track{border-radius:3px;height:12px;margin:.35rem 0 .2rem}.light-category-track>span{background:var(--purple-accent)}.light-category-row small{color:var(--text-muted);font-size:.7rem;font-weight:750}.light-link{color:var(--border-color);text-underline-offset:3px;align-items:center;gap:.35rem;margin-top:1rem;font-size:.82rem;font-weight:900;text-decoration:underline;display:inline-flex}.light-more-button{border:2px solid var(--border-color);background:var(--surface-subtle);width:100%;color:var(--border-color);font:inherit;cursor:pointer;border-radius:8px;margin-top:.75rem;padding:.6rem;font-size:.78rem;font-weight:900}.light-more-button:hover{background:var(--pastel-yellow)}.light-empty{border:2px dashed var(--text-muted);text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;min-height:145px;padding:1rem;display:flex}.light-empty p{max-width:430px;color:var(--text-muted);margin:0;font-size:.82rem;font-weight:650}.light-insight,.light-error{border:2px solid var(--border-color);border-radius:12px;align-items:center;gap:.8rem;padding:1rem 1.1rem;display:flex}.light-insight{background:var(--pastel-yellow);box-shadow:var(--shadow-md)}.light-insight p{margin:.15rem 0 0;font-size:.84rem;font-weight:650}.light-error{background:var(--danger-surface);font-weight:750}.light-error span{flex:1}.light-skeleton-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.light-skeleton{background:var(--surface-disabled);border-radius:16px;min-height:280px;animation:1.5s ease-in-out infinite pulse}.light-skeleton-hero{min-height:220px}@media (width<=780px){.light-main-grid,.light-skeleton-grid{grid-template-columns:1fr}.light-kpis{grid-template-columns:1fr 1fr}.light-kpi:last-child{grid-column:1/-1}}@media (width<=520px){.light-dashboard{gap:1rem}.light-header{align-items:flex-start}.light-month-pill,.light-month-navigation{width:100%}.light-month-pill{border-radius:10px;justify-content:center}.light-month-navigation{grid-template-columns:42px minmax(0,1fr) 42px;min-width:0}.light-period-trigger{gap:.3rem;padding-inline:.4rem}.light-period-trigger select{max-width:115px}.light-balance-card{min-height:150px}.light-balance-card>svg{display:none}.light-kpis{grid-template-columns:1fr}.light-kpi:last-child{grid-column:auto}.light-payment-row{grid-template-columns:auto minmax(0,1fr)}.light-payment-row>b{text-align:left;grid-column:2}}@keyframes skeleton-shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:var(--skeleton-base);background-image:linear-gradient(90deg, var(--skeleton-base) 0px, var(--skeleton-shine) 40px, var(--skeleton-base) 80px);border-radius:var(--radius-sm);border:2px solid var(--border-color);box-shadow:var(--shadow-sm);background-size:1000px 100%;animation:2s linear infinite skeleton-shimmer}.route-loading{width:min(100%,1100px);margin:0 auto;padding:2rem 1rem 4rem}.route-loading-title{width:min(360px,75%);height:52px;margin-bottom:1.5rem}.route-loading-grid{grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.route-loading-grid .skeleton{height:140px}.route-loading-content{height:320px}.route-error{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--danger-surface);width:min(100%,720px);box-shadow:var(--shadow-md);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;margin:2rem auto;padding:1.25rem;display:grid}.route-error h2{margin:0 0 .3rem;font-size:1.2rem}.route-error p{color:var(--text-secondary);margin:0;font-weight:650}.route-error-actions{flex-wrap:wrap;grid-column:1/-1;gap:.75rem;width:100%;min-width:0;display:flex}.route-error-actions .btn{flex:180px;min-width:0}.dashboard-advanced-skeleton{height:360px}.dashboard-classifier-skeleton{height:240px;box-shadow:none;border:0;border-radius:0}.transactions-loading{width:min(100%,1320px);margin:0 auto;padding:1rem 0}.transactions-loading h1{margin:0 0 1.5rem;font-size:2rem}.transactions-loading-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:1rem;margin-bottom:2rem;display:grid}.transactions-actions{grid-template-columns:1fr;gap:.75rem;width:100%;display:grid}.transactions-actions>.btn,.transactions-actions>.responsive-tabs{width:100%}.import-flow-content{background:var(--bg-color);min-height:100%;padding:1rem}.import-flow-page{width:100%;min-width:0}.import-flow-page .import-flow-content{background:0 0;padding:0}.import-flow-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.import-flow-header h2{overflow-wrap:anywhere;min-width:0;margin:0;font-size:1.55rem;line-height:1.15}.import-dropzone,.import-confirm-card{padding:2rem 1rem!important}.import-flow-actions{grid-template-columns:1fr;gap:.75rem;display:grid}.import-flow-actions .btn{width:100%}.split-dialog-header{border-bottom:2px solid var(--border-color);background:var(--pastel-yellow);justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.split-dialog-header h2{overflow-wrap:anywhere;align-items:center;gap:.5rem;min-width:0;margin:0;font-size:1.15rem;display:flex}.split-dialog-body{flex-direction:column;gap:1rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.split-dialog-summary{border:2px solid var(--border-color);background:var(--surface-subtle);border-radius:8px;flex-direction:column;gap:.85rem;padding:.85rem;display:flex}.split-dialog-summary>div:last-child{border-top:1px solid var(--border-subtle);padding-top:.75rem;text-align:left!important}.split-debt-guidance{border:2px solid var(--border-color);background:var(--pastel-yellow);box-shadow:var(--shadow-sm);border-radius:8px;padding:.85rem 1rem}.split-debt-guidance strong,.split-debt-guidance small{display:block}.split-debt-guidance p{margin:.3rem 0;font-size:.82rem;font-weight:700;line-height:1.4}.split-debt-guidance small{color:var(--warning-text);font-size:.74rem;font-weight:750}.split-part-fields{grid-template-columns:1fr;gap:.85rem;display:grid}.split-part-fields>div{min-width:0}.split-dialog-footer{padding:1rem max(1rem, env(safe-area-inset-right)) calc(1rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border-top:2px solid var(--border-color);background:var(--surface-subtle);grid-template-columns:1fr;gap:.75rem;display:grid}.split-dialog-footer .btn{width:100%}.accounts-period-controls{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:.65rem;width:100%;display:grid}.accounts-period-label{border:var(--border-width) solid var(--border-color);background:var(--surface-color);min-width:0;box-shadow:var(--shadow-sm);color:var(--text-primary);text-align:center;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;border-radius:999px;padding:.65rem .75rem;font-size:.83rem;font-weight:900;overflow:hidden}.accounts-period-controls .accounts-period-previous,.accounts-period-controls .accounts-period-next{width:44px;min-width:44px;height:44px}.accounts-period-configure{grid-column:1/-1;width:100%}.dashboard-detail-table{width:100%}.dashboard-detail-category>span{border:2px solid var(--border-color);border-radius:var(--radius-sm);background:var(--pastel-blue);overflow-wrap:anywhere;max-width:240px;padding:.35rem .55rem;font-size:.72rem;font-weight:850;line-height:1.25;display:inline-block}.dashboard-detail-category>span.is-unclassified{background:var(--warning-surface)}.initial-adjustment-form{grid-template-columns:1fr;gap:1rem;display:grid}.initial-adjustment-actions{grid-template-columns:1fr;gap:.75rem;display:grid}.initial-adjustment-actions .btn{width:100%}@media (width<=600px){.admin-users-card{padding:1rem!important}.admin-users-table{table-layout:auto!important;min-width:0!important}.settings-hero h1,.transactions-header h1{overflow-wrap:anywhere;font-size:2rem!important}.dashboard-detail-table,.dashboard-detail-table tbody,.dashboard-detail-table tfoot,.dashboard-detail-table td{width:100%;display:block}.dashboard-detail-dialog{width:100%!important;max-width:none!important;max-height:92dvh!important}.dashboard-detail-dialog .dialog-header{align-items:center;padding:.8rem .9rem}.dashboard-detail-dialog .dialog-header h2{line-height:1.15;font-size:1.08rem!important}.dashboard-detail-dialog .dialog-close{flex-basis:40px;width:40px;height:40px}.dashboard-detail-body{padding:.65rem!important}.dashboard-detail-table{background:0 0;border:0!important}.dashboard-detail-table tbody{gap:.6rem;display:grid}.dashboard-detail-table thead{clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.dashboard-detail-table tbody tr{border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"date bank amount""description description amount""category category amount";gap:.45rem .65rem;padding:.75rem;display:grid;border:2px solid var(--border-subtle)!important;background:var(--surface-color)!important}.dashboard-detail-table tbody td[data-label]{min-width:0;display:block;text-align:left!important;white-space:normal!important;padding:0!important}.dashboard-detail-table tbody td[data-label]:before{display:none}.dashboard-detail-table tbody td[data-label=Fecha]{color:var(--text-muted);grid-area:date;align-self:center;font-size:.72rem!important;font-weight:800!important}.dashboard-detail-table tbody td[data-label=Banco]{grid-area:bank;align-self:center}.dashboard-detail-table tbody td[data-label=Banco]>span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden;box-shadow:none!important;padding:.18rem .45rem!important}.dashboard-detail-table tbody td[data-label=Descripción]{overflow-wrap:anywhere;grid-area:description;line-height:1.3;padding-top:.2rem!important;font-size:.84rem!important;font-weight:750!important}.dashboard-detail-table tbody td[data-label=Categoría]{grid-area:category}.dashboard-detail-category>span{border-width:1.5px;max-width:100%;padding:.25rem .45rem;font-size:.66rem}.dashboard-detail-table tbody td[data-label=Monto]{border-left:1px solid var(--border-subtle);grid-area:amount;align-self:stretch;width:auto;padding-left:.7rem!important}.dashboard-detail-table tbody td[data-label=Monto]>div{white-space:nowrap;flex-direction:column;height:100%;font-size:.88rem;justify-content:center!important;align-items:flex-end!important;gap:.4rem!important}.dashboard-detail-table tbody td[data-label=Monto] .btn-icon{width:34px;min-width:34px;height:34px}.dashboard-detail-edit-row td{display:block!important}.dashboard-detail-table tbody tr.dashboard-detail-edit-row{display:block}.dashboard-detail-table tfoot tr{border-radius:8px;grid-template-columns:1fr auto;margin-top:.65rem;display:grid;overflow:hidden;border:2px solid var(--border-color)!important}.dashboard-detail-table tfoot td{width:auto;padding:.7rem!important}}.flex-stack{flex-direction:column;align-items:stretch;display:flex}.flex-stack>*{width:100%}.responsive-tabs{background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.responsive-tabs button{border:none;border-bottom:var(--border-width) solid var(--border-color);min-height:44px;color:var(--text-primary);cursor:pointer;text-align:center;background:0 0;justify-content:center;align-items:center;gap:.45rem;padding:.75rem 1rem;font-size:.875rem;font-weight:800;transition:all .1s;display:inline-flex}.responsive-tabs button:last-child{border-bottom:none}.responsive-tabs button.active{background:var(--text-primary);color:var(--text-on-inverted)}html.dark .responsive-tabs button.active{background:color-mix(in srgb, var(--info-accent) 22%, var(--surface-color));color:var(--text-primary)}.responsive-tabs .transactions-import-tab{background:var(--surface-disabled);color:var(--text-primary)}.responsive-table{width:100%}.responsive-table table,.responsive-table thead,.responsive-table tbody,.responsive-table th,.responsive-table td{width:100%;display:block}.responsive-table thead tr{position:absolute;top:-9999px;left:-9999px}.responsive-table tr{border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);box-shadow:var(--shadow-sm);grid-template-columns:1fr auto;grid-template-areas:"date amount""desc desc""category category";gap:.25rem .5rem;margin-bottom:1rem;padding:1rem;display:grid}.responsive-table td{text-align:left;border:none;min-height:auto;padding:0}.responsive-table td[data-label=Fecha]{color:var(--text-secondary);grid-area:date;font-size:.85rem;font-weight:700}.responsive-table td[data-label=Monto]{text-align:right;grid-area:amount}.responsive-table td[data-label=Banco]{grid-area:bank}.responsive-table td[data-label=Descripción]{grid-area:desc}.responsive-table td[data-label=Clasificación],.responsive-table td[data-label=Tipo]{grid-area:category;margin-top:.5rem}.responsive-table td[data-label=Cant\.]{color:var(--text-secondary);grid-area:date;font-size:.85rem}.responsive-table td[data-label=Acumulado]{text-align:right;grid-area:amount}.responsive-table td[data-label=Clasificar]{grid-area:category;margin-top:.5rem}.date-popover{max-width:90vw;left:50%;transform:translate(-50%)}.dashboard-header{margin-bottom:2rem}.dashboard-header-main{flex-direction:column;align-items:stretch;gap:1rem;display:flex}.dashboard-title-context{min-width:0}.dashboard-title-context h1{letter-spacing:-.055em;margin:.3rem 0 .35rem;font-size:clamp(2rem,5vw,3.35rem);line-height:.98}.dashboard-context-line{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.45rem .65rem;margin-top:.65rem;font-size:.82rem;font-weight:700;display:flex}.dashboard-context-line strong{color:var(--text-primary);font-weight:900}.dashboard-context-line>span:last-child:not(.dashboard-context-dot):before{content:"";background:var(--border-muted);vertical-align:middle;border-radius:50%;width:4px;height:4px;margin-right:.65rem;display:inline-block}.dashboard-context-dot,.dashboard-bank-dot{border:2px solid var(--border-color);border-radius:50%;flex:0 0 12px;width:12px;height:12px}.dashboard-date-control{width:100%;position:relative}.dashboard-month-navigation{border:var(--border-width) solid var(--border-color);background:var(--surface-color);width:100%;min-height:44px;box-shadow:var(--shadow-md);color:var(--text-primary);border-radius:2rem;grid-template-columns:44px minmax(0,1fr) 44px;display:grid;overflow:hidden}html.dark .dashboard-month-navigation{background:color-mix(in srgb, var(--surface-color) 88%, #0f1219);border-color:var(--border-subtle);box-shadow:var(--shadow-sm)}.dashboard-date-control button{color:var(--text-primary);-webkit-text-fill-color:currentColor}.dashboard-month-arrow,.dashboard-period-trigger{min-width:0;color:var(--text-primary);cursor:pointer;background:0 0;border:0}.dashboard-month-arrow{color:var(--text-primary);place-items:center;padding:0;display:grid}.dashboard-month-arrow:first-child{border-right:1.5px solid var(--border-subtle)}.dashboard-month-arrow:last-child{border-left:1.5px solid var(--border-subtle)}.dashboard-month-arrow:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.45}.dashboard-month-arrow:not(:disabled):hover,.dashboard-period-trigger:hover{background:var(--surface-subtle)}.dashboard-period-trigger{text-transform:capitalize;color:var(--text-primary);justify-content:center;align-items:center;gap:.65rem;padding:.55rem .75rem;font-size:.95rem;font-weight:850;display:flex}.dashboard-period-trigger svg{color:var(--text-secondary);flex-shrink:0}html.dark .dashboard-period-trigger select,html.dark .light-period-trigger select,html.dark .light-month-pill select{color:var(--text-primary);-webkit-text-fill-color:var(--text-primary)}.dashboard-custom-date-fields{grid-template-columns:1fr;align-items:end;gap:.75rem;display:grid}.dashboard-section-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dashboard-section-heading>h2{flex:auto;align-items:center;gap:.5rem;min-width:0;margin:0;font-family:Montserrat,sans-serif;font-size:1.2rem;font-weight:900;line-height:1.25;display:flex}.dashboard-section-title{overflow-wrap:anywhere;min-width:0}.dashboard-section-heading>h2>svg,.dashboard-section-heading>h2>.info-tooltip{flex:none}.dashboard-collapse-button{max-width:100%;min-height:var(--control-height);border-radius:var(--radius-md);color:var(--text-secondary);flex:none;align-items:center;gap:.35rem;padding:.45rem .65rem;font-size:.8rem;font-weight:900;display:inline-flex}.dashboard-collapse-button:hover{background:var(--surface-subtle)}.dashboard-cash-summary{border:var(--border-width) solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-md);border-radius:14px;grid-template-columns:minmax(240px,.85fr) minmax(0,1.7fr);margin:0 0 1rem;display:grid;overflow:hidden}.dashboard-cash-summary-primary{border-right:var(--border-width) solid var(--border-color);padding:1rem 1.15rem}html.dark .dashboard-cash-summary{background:color-mix(in srgb, var(--surface-color) 92%, #1e2430);border-color:var(--border-subtle)}html.dark .dashboard-cash-summary-primary{border-right-color:var(--border-subtle)}.dashboard-cash-summary span,.dashboard-cash-summary strong,.dashboard-cash-summary small{display:block}.dashboard-cash-summary span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:850}.dashboard-cash-summary-primary strong{margin-top:.15rem;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.1}.dashboard-cash-summary-primary small{color:var(--text-secondary);margin-top:.35rem;font-size:.72rem;font-weight:700;line-height:1.35}.dashboard-cash-summary.is-negative .dashboard-cash-summary-primary{background:var(--danger-surface)}.dashboard-cash-summary.is-positive .dashboard-cash-summary-primary{background:var(--pastel-green)}.dashboard-cash-summary-breakdown{grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;display:grid}.dashboard-cash-summary-breakdown>div{border-right:1px solid var(--border-subtle);min-width:0;padding:.85rem 1rem}.dashboard-cash-summary-breakdown>div:last-child{border-right:0}.dashboard-cash-summary-breakdown strong{white-space:nowrap;margin-top:.2rem;font-size:.98rem}.dashboard-cash-net-change{background:var(--surface-subtle)}.dashboard-cash-summary-note{border-top:1px solid var(--border-subtle);color:var(--text-muted);grid-column:1/-1;padding:.45rem 1rem;font-size:.7rem;font-weight:750}.dashboard-kpi-pair{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:start;gap:2rem;margin-bottom:3rem;display:grid}.dashboard-analysis-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:3rem;display:grid}.dashboard-analysis-panel{min-width:0}@media (width<=1024px){.dashboard-cash-summary{grid-template-columns:1fr}.dashboard-cash-summary-primary{border-right:0;border-bottom:var(--border-width) solid var(--border-color)}.dashboard-cash-summary-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-cash-summary-breakdown>div{border-bottom:1px solid var(--border-subtle);padding:.75rem .85rem}.dashboard-cash-summary-breakdown strong{white-space:normal;overflow-wrap:anywhere;font-size:.9rem}.dashboard-kpi-pair{grid-template-columns:1fr;gap:1.25rem;margin-bottom:2rem}.dashboard-analysis-grid{grid-template-columns:1fr;gap:1.75rem}.dashboard-analysis-panel{height:min(320px,55vh)!important}.dashboard-header{margin-bottom:1.35rem}.dashboard-title-context h1{font-size:clamp(1.7rem,4.5vw,2.6rem)}.dashboard-kpi-amount{font-size:clamp(2rem,6vw,2.85rem)!important}.dashboard-month-navigation,.light-month-navigation{width:100%;min-width:0;max-width:100%}.dashboard-date-control{width:100%}.light-period-trigger select{max-width:min(180px,42vw)}}@media (width>=900px) and (width<=1024px){.dashboard-kpi-pair{grid-template-columns:1fr 1fr;gap:1.25rem}.dashboard-analysis-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.dashboard-header-main{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:1rem}.dashboard-date-control{flex:0 320px;width:auto;min-width:min(100%,280px)}}@media (width<=1024px) and (orientation:landscape) and (height<=900px){.dashboard-header{margin-bottom:1rem}.dashboard-title-context h1{font-size:clamp(1.45rem,3.5vw,2rem)}.dashboard-kpi-amount{font-size:clamp(1.75rem,4vw,2.35rem)!important}}@media (width<=899px){.dashboard-header-main{flex-direction:column;align-items:stretch}.dashboard-date-control{width:100%}.dashboard-month-navigation{width:100%;min-width:0}}@media (width<=520px){.dashboard-section-heading{grid-template-columns:minmax(0, 1fr) var(--control-height);align-items:start;gap:.5rem;display:grid}.dashboard-section-heading>h2{grid-template-columns:20px minmax(0, 1fr) var(--control-height);align-items:start;gap:.5rem;font-size:1.1rem;line-height:1.3;display:grid}.dashboard-section-heading>h2>svg{margin-top:.1rem}.dashboard-section-heading>h2>.info-tooltip{justify-self:end}.dashboard-collapse-button{width:var(--control-height);height:var(--control-height);min-width:var(--control-height);justify-content:center;justify-self:end;padding:0}.dashboard-collapse-button>span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.dashboard-kpi-amount{overflow-wrap:anywhere;max-width:100%;line-height:1.05;font-size:2.25rem!important}.dashboard-empty-period,.dashboard-error-state{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);box-shadow:var(--shadow-md);grid-template-columns:1fr;align-items:center;gap:1.25rem;margin-bottom:2.5rem;padding:1.5rem;display:grid}.dashboard-error-state{background:var(--danger-surface)}.dashboard-state-icon{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--danger-surface);width:48px;height:48px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;display:inline-flex}.dashboard-state-copy h2{margin:0 0 .35rem;font-size:1.25rem}.dashboard-state-copy p{color:var(--text-secondary);margin:0;font-weight:650}.dashboard-partial-warning{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--warning-surface);box-shadow:var(--shadow-sm);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:grid}.dashboard-partial-warning>div{gap:.2rem;min-width:0;display:grid}.dashboard-partial-warning span{color:var(--text-secondary);font-size:.82rem;font-weight:650}.dashboard-partial-warning .btn{grid-column:1/-1;width:100%}.dashboard-bank-section{margin:0 0 3rem;padding:.25rem 0}.dashboard-bank-header{flex-direction:column;gap:1rem;margin-bottom:1rem;display:flex}.dashboard-bank-header h2{align-items:center;gap:.55rem;margin:0 0 .3rem;font-size:1.35rem;display:flex}.dashboard-bank-header p{color:var(--text-secondary);margin:0;font-size:.88rem;font-weight:650}.dashboard-reconciliation{border:2px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-self:flex-start;align-items:center;gap:.4rem;padding:.45rem .7rem;font-size:.78rem;font-weight:900;display:inline-flex}.dashboard-reconciliation.is-ok{background:var(--success-surface)}.dashboard-reconciliation.is-warning{background:var(--warning-surface)}.dashboard-bank-summary{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-subtle);grid-template-columns:1fr;margin-bottom:1rem;display:grid;overflow:hidden}.dashboard-bank-summary span{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);padding:.8rem 1rem;font-size:.8rem;font-weight:700}.dashboard-bank-summary span:last-child{border-bottom:0}.dashboard-bank-summary strong{color:var(--border-color);font-size:1rem;display:block}.dashboard-bank-grid{grid-template-columns:1fr;gap:1rem;display:grid}.dashboard-bank-card{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);min-width:0;box-shadow:var(--shadow-sm);padding:1rem}.dashboard-bank-card-title{align-items:center;gap:.65rem;display:flex}.dashboard-bank-card-title h3{margin:0;font-size:1rem}.dashboard-bank-card-title span:not(.dashboard-bank-dot){color:var(--text-muted);font-size:.72rem;font-weight:750;display:block}.dashboard-bank-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:1rem 0;display:grid}.dashboard-bank-metrics div{min-width:0}.dashboard-bank-metrics dt{color:var(--text-muted);text-transform:uppercase;font-size:.65rem;font-weight:900}.dashboard-bank-metrics dd{overflow-wrap:anywhere;margin:.2rem 0 0;font-size:.9rem;font-weight:900}.dashboard-bank-metrics .is-income{color:var(--success-text)}.dashboard-bank-metrics .is-expense{color:var(--danger-text)}.dashboard-bank-card-footer{border-top:1px solid var(--border-subtle);flex-direction:column;align-items:stretch;gap:.75rem;padding-top:.85rem;display:flex}.dashboard-bank-card-footer>span{color:var(--text-muted);font-size:.72rem;font-weight:700}.dashboard-bank-card-footer .btn{padding:.5rem .75rem;font-size:.8rem}.dashboard-category-levels{border:var(--border-width) solid var(--border-color);background:var(--surface-subtle);border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.15rem;padding:.25rem;display:grid}.dashboard-category-level{min-height:var(--control-height);color:var(--text-secondary);overflow-wrap:anywhere;border:0;border-radius:999px;padding:.45rem .65rem;font-size:.78rem;font-weight:850;line-height:1.15;transition:background-color .15s,color .15s,box-shadow .15s}.dashboard-category-level:hover:not(.is-active){color:var(--text-primary);background:color-mix(in srgb, var(--surface-color) 55%, transparent)}.dashboard-category-level.is-active{color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:900}.dashboard-category-level.is-principal.is-active{background:var(--warning-soft);color:var(--warning-text)}.dashboard-category-level.is-secundaria.is-active{background:var(--cyan-soft);color:var(--text-primary)}.dashboard-category-level.is-detalle.is-active{background:var(--success-soft);color:var(--success-text)}html.dark .dashboard-category-levels{background:color-mix(in srgb, var(--surface-subtle) 88%, #0f1219);border-color:var(--border-subtle)}html.dark .dashboard-category-level.is-active{color:var(--text-primary);box-shadow:inset 0 1px #ffffff0a,0 4px 12px #00000047}html.dark .dashboard-category-level.is-principal.is-active{background:color-mix(in srgb, var(--warning) 22%, var(--surface-color));color:#f3e0b5}html.dark .dashboard-category-level.is-secundaria.is-active{background:color-mix(in srgb, var(--info-accent) 20%, var(--surface-color));color:#d5e7fb}html.dark .dashboard-category-level.is-detalle.is-active{background:color-mix(in srgb, var(--success) 18%, var(--surface-color));color:#c8ecd6}.dashboard-ranking-row{border-radius:var(--radius-sm);text-align:left;align-items:center;gap:.75rem;width:100%;min-height:44px;margin-bottom:.6rem;padding:.45rem .35rem;transition:opacity .2s,background-color .15s;display:flex}.dashboard-ranking-row:hover{background:var(--surface-subtle)}.dashboard-ranking-label{text-overflow:ellipsis;white-space:nowrap;flex:0 105px;width:105px;min-width:70px;font-size:.75rem;font-weight:700;overflow:hidden}.dashboard-ranking-amount{text-align:right;flex-shrink:0;font-size:.72rem;font-weight:850}.dashboard-advanced{border-top:2px solid var(--border-color);margin-top:2.5rem;padding-top:1.25rem}.dashboard-advanced-toggle{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-subtle);width:100%;min-height:64px;box-shadow:var(--shadow-sm);text-align:left;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.dashboard-advanced-toggle>div{gap:.2rem;display:grid}.dashboard-advanced-toggle>div>span{font-size:1rem;font-weight:900}.dashboard-advanced-toggle small{color:var(--text-muted);font-weight:650}.dashboard-advanced-action{flex-shrink:0;align-items:center;gap:.35rem;font-size:.8rem;font-weight:900;display:inline-flex}.dashboard-advanced-content{padding-top:1.5rem}.dashboard-mind-map h2{margin:0 0 .65rem;font-size:1.5rem}.dashboard-mind-map>p{color:var(--text-secondary);margin:0 0 1.5rem;font-weight:600}@media (width>=700px){.route-loading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-error{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:1.5rem}.route-error-actions{grid-column:auto;width:auto}.route-error-actions .btn{flex:none}.import-flow-content{padding:2rem}.import-flow-header h2{font-size:2rem}.import-dropzone,.import-confirm-card{padding:4rem 2rem!important}.import-flow-actions{justify-content:flex-end;gap:1rem;display:flex}.import-flow-actions.centered{justify-content:center}.import-flow-actions .btn{width:auto}.split-dialog-header,.split-dialog-body{padding:1.25rem 1.5rem}.split-dialog-header h2{font-size:1.25rem}.split-dialog-summary{flex-direction:row;justify-content:space-between;align-items:center;padding:1rem}.split-dialog-summary>div:last-child{border-top:0;border-left:1px solid var(--border-subtle);padding-top:0;padding-left:1rem;text-align:right!important}.split-part-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.split-part-fields>div:last-child{grid-column:1/-1}.split-dialog-footer{justify-content:flex-end;gap:1rem;padding:1.25rem 1.5rem;display:flex}.split-dialog-footer .btn{width:auto}.accounts-period-controls{flex-wrap:wrap;width:auto;display:flex}.accounts-period-label{min-width:170px;font-size:.9rem}.accounts-period-configure{width:auto}.initial-adjustment-form{grid-template-columns:repeat(2,minmax(0,1fr))}.initial-adjustment-actions{gap:1rem;display:flex}.initial-adjustment-actions .btn{width:auto}.dashboard-kpi-amount{font-size:3rem!important}.dashboard-header-main{flex-direction:row;justify-content:space-between;align-items:center}.dashboard-date-control{width:auto}.dashboard-month-navigation{width:auto;min-width:280px}.dashboard-custom-date-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.dashboard-ranking-label{flex-basis:130px;width:130px;font-size:.8rem}.dashboard-ranking-amount{min-width:80px;font-size:.78rem}.dashboard-empty-period{grid-template-columns:minmax(0,1fr) auto;padding:2rem}.dashboard-error-state{grid-template-columns:auto minmax(0,1fr) auto;padding:2rem}.dashboard-partial-warning{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.dashboard-partial-warning .btn{grid-column:auto;width:auto}.dashboard-bank-header{flex-direction:row;justify-content:space-between;align-items:flex-start}.dashboard-bank-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-bank-summary span{border-right:1px solid var(--border-subtle);border-bottom:0}.dashboard-bank-summary span:last-child{border-right:0}.dashboard-bank-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-bank-card-footer{flex-direction:row;justify-content:space-between;align-items:center}}.filter-bar{flex-direction:column;gap:1rem;display:flex}.header-container{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:2rem;display:flex}.transactions-page{width:min(100%,1320px);margin:0 auto}.transactions-header{gap:1.25rem}.transactions-header>*{min-width:0}.transactions-card{padding:1.25rem;overflow:hidden}.transactions-card:hover{transform:none}.transactions-card-header{grid-template-columns:1fr;align-items:start;gap:1rem;margin-bottom:1.25rem;display:grid}.transactions-summary{flex-wrap:wrap;gap:.5rem;display:flex}.transactions-summary span{border:2px solid var(--border-color);background:var(--surface-subtle);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;padding:.35rem .7rem;font-size:.75rem;font-weight:900;display:inline-flex}.transactions-filter-bar{border:2px solid var(--border-color);background:var(--surface-subtle);border-radius:10px;grid-template-columns:1fr;gap:.75rem;margin-bottom:1rem;padding:.75rem;display:grid}.transactions-filter-bar .input{background-color:var(--surface-color);min-height:46px;font-weight:700}.transactions-filter-toggle{background:var(--surface-color);justify-content:space-between;width:100%}.transactions-filter-toggle span{border:1.5px solid var(--border-color);background:var(--pastel-yellow);border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;margin-left:auto;font-size:.72rem;font-weight:900;display:inline-flex}.transactions-filter-controls{grid-template-columns:1fr;gap:.75rem;display:none}.transactions-filter-controls.open{display:grid}.transactions-filter-reset{background:var(--surface-color);width:100%}.transactions-search{min-width:0;position:relative}.transactions-search-clear{border:2px solid var(--border-color);background:var(--surface-color);width:40px;height:40px;box-shadow:1px 1px 0 var(--shadow-color);border-radius:7px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:.55rem;transform:translateY(-50%)}.transactions-table-wrap{border:2px solid var(--border-color);background:var(--surface-color);border-radius:10px;overflow-x:auto}.transactions-table{table-layout:fixed;width:100%;min-width:980px}.transactions-table thead th{z-index:2;position:sticky;top:0}.transactions-table tbody tr{transition:background-color .12s}.transactions-table tbody tr:hover{background-color:var(--surface-subtle)!important}.transactions-table td[data-label=Descripción] input{min-width:0}.transactions-table td[data-label=Monto]{text-align:right;white-space:nowrap}.transactions-table td[data-label=Clasificación] .input{min-width:0;width:100%!important}.editable-cell{border-radius:6px}.editable-cell:focus-within{padding:.25rem .4rem;box-shadow:0 0 0 2px #2563eb33;border-color:var(--focus-ring)!important;background:var(--surface-color)!important}.transaction-description-input:focus-visible{outline:none}.transaction-description-input{min-height:44px;padding:.5rem .25rem}.category-selector{align-items:center;gap:.5rem;width:100%;min-width:0;display:flex;position:relative}.category-selector-trigger{width:100%;min-width:0;min-height:44px;color:var(--text-primary);text-align:left;text-overflow:ellipsis;white-space:nowrap;padding:.5rem .7rem;font-size:.875rem;font-weight:750;overflow:hidden}.category-picker-body{background:var(--surface-subtle);grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0;display:grid}.category-picker-context{border-bottom:2px solid var(--border-color);background:var(--surface-color);grid-template-columns:1fr;gap:.65rem;padding:.85rem 1rem;display:grid}.category-picker-context>div{border:2px solid var(--border-color);background:var(--surface-subtle);border-radius:8px;min-width:0;padding:.65rem .75rem}.category-picker-context span,.category-create-preview span{color:var(--text-muted);text-transform:uppercase;margin-bottom:.2rem;font-size:.68rem;font-weight:900;display:block}.category-picker-context strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;display:block;overflow:hidden}.category-picker-modes{border-bottom:var(--border-width) solid var(--border-color);background:var(--surface-color);grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;padding:.75rem 1rem;display:grid}.category-picker-modes button{border:var(--border-width) solid var(--border-color);background:var(--surface-subtle);min-width:0;min-height:48px;color:var(--text-secondary);text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:.35rem;padding:.55rem .35rem;font-size:.78rem;font-weight:900;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.category-picker-modes button:hover:not(.active){color:var(--text-primary);border-color:var(--border-strong)}.category-picker-modes button.active{background:var(--primary);color:var(--text-on-inverted);border-color:var(--primary);box-shadow:var(--shadow-sm)}html.dark .category-picker-modes button.active{background:color-mix(in srgb, var(--info-accent) 22%, var(--surface-color));color:var(--text-primary);border-color:color-mix(in srgb, var(--info-accent) 45%, var(--border-color));box-shadow:none}.category-picker-panel{min-height:0;padding:1rem;overflow-y:auto}.category-picker-panel-heading{justify-content:space-between;gap:1rem;margin-bottom:.85rem;display:flex}.category-picker-panel-heading h4{margin:0 0 .25rem;font-size:1rem;font-weight:900}.category-picker-panel-heading p{color:var(--text-secondary);margin:0;font-size:.8rem;font-weight:650}.category-picker-search{margin-bottom:1rem;position:relative}.category-picker-search>svg{z-index:1;color:var(--text-muted);position:absolute;top:50%;left:.8rem;transform:translateY(-50%)}.category-picker-search input{background:var(--surface-color);width:100%;padding-left:2.45rem;padding-right:3rem}.category-picker-search button{border:2px solid var(--border-color);background:var(--surface-color);width:40px;height:40px;box-shadow:1px 1px 0 var(--shadow-color);border-radius:7px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:.55rem;transform:translateY(-50%)}.category-suggestion-list{grid-template-columns:1fr;gap:.65rem;display:grid}.category-suggestion{border:2px solid var(--border-color);width:100%;min-height:76px;box-shadow:var(--shadow-sm);text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.category-suggestion-copy{gap:.08rem;min-width:0;display:grid}.category-suggestion-copy strong,.category-suggestion-copy span,.category-suggestion-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.category-suggestion-copy strong{font-size:.9rem;font-weight:900}.category-suggestion-copy span{color:var(--text-secondary);font-size:.74rem;font-weight:750}.category-suggestion-copy small{color:var(--text-secondary);margin-top:.2rem;font-size:.7rem;font-weight:750}.category-suggestion-reason.source-rule{color:var(--success-text)}.category-suggestion-reason.source-pattern{color:var(--info-accent)}.category-suggestion-action{flex-shrink:0;align-items:center;gap:.15rem;font-size:.72rem;font-weight:900;display:inline-flex}.category-picker-empty{border:2px dashed var(--border-muted);background:var(--surface-color);border-radius:8px;flex-direction:column;justify-content:center;align-items:flex-start;gap:.6rem;min-height:190px;padding:1.5rem;display:flex}.category-picker-empty span{color:var(--text-secondary);font-size:.85rem;font-weight:650}.category-type-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.category-type-tabs button{border:var(--border-width) solid var(--border-color);min-height:44px;color:var(--text-primary);background:var(--surface-subtle);box-shadow:var(--shadow-sm);border-radius:999px;padding:.45rem .8rem;font-size:.78rem;font-weight:900;transition:background-color .15s,color .15s,border-color .15s}.category-type-tabs button.active{background:var(--primary);color:var(--text-on-inverted);border-color:var(--primary)}html.dark .category-type-tabs button.active{background:color-mix(in srgb, var(--info-accent) 22%, var(--surface-color));color:var(--text-primary);border-color:color-mix(in srgb, var(--info-accent) 45%, var(--border-color));box-shadow:none}.category-tree-grid{grid-template-columns:1fr;gap:.75rem;display:grid}.category-tree-branch{border:2px solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-sm);border-radius:9px;align-self:start;overflow:hidden}.category-tree-branch>button{text-align:left;border:0;justify-content:space-between;align-items:center;gap:.5rem;width:100%;min-height:46px;padding:.7rem .75rem;display:flex}.category-tree-branch>button span{font-size:.86rem;font-weight:900}.category-tree-options{flex-direction:column;gap:.4rem;padding:.5rem;display:flex}.category-tree-options button{border:1.5px solid var(--border-color);background:var(--surface-color);text-align:left;border-radius:7px;justify-content:space-between;align-items:center;gap:.5rem;min-height:44px;padding:.55rem .65rem;font-weight:750;display:flex}.category-tree-options button.active{background:var(--pastel-green)}.category-create-form{border:2px solid var(--border-color);background:var(--warning-surface);box-shadow:var(--shadow-sm);border-radius:9px;grid-template-columns:1fr;gap:.85rem;padding:1rem;display:grid}.category-create-form label{gap:.35rem;display:grid}.category-create-form label>span{font-size:.75rem;font-weight:900}.category-create-form .input{background:var(--surface-color);width:100%}.category-create-preview{border:2px solid var(--border-color);background:var(--surface-color);border-radius:8px;padding:.75rem}.category-create-preview strong{overflow-wrap:anywhere;font-size:.85rem;display:block}.category-create-form .btn{justify-self:start}.category-picker-footer{border-top:2px solid var(--border-color);background:var(--surface-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;padding:.75rem 1rem;display:flex}.category-picker-footer span{color:var(--text-secondary);font-size:.78rem;font-weight:700}.accounts-panel{border:2px solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-md);border-radius:10px;padding:1.25rem}.accounts-status-summary{flex-wrap:wrap;gap:.65rem;margin-bottom:1rem;display:flex}.accounts-explanation{border:2px solid var(--border-color);background:var(--info-surface);border-radius:8px;margin-bottom:1.25rem}.accounts-explanation summary{cursor:pointer;align-items:center;gap:.65rem;min-height:44px;padding:.65rem .85rem;list-style:none;display:flex}.accounts-explanation summary::-webkit-details-marker{display:none}.accounts-explanation summary:after{content:"+";margin-left:auto;font-size:1.1rem;font-weight:900}.accounts-explanation[open] summary:after{content:"−"}.accounts-explanation p{color:var(--text-secondary);margin:0;padding:0 .85rem .85rem 2.85rem;font-size:.82rem;font-weight:650}.accounts-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:.85rem;display:grid}.account-status-card{border:2px solid var(--border-color);width:100%;min-height:70px;color:inherit;box-shadow:var(--shadow-sm);text-align:left;border-radius:9px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon copy""result result";align-items:start;gap:.4rem .65rem;padding:1.25rem 1.45rem;display:grid}.account-status-icon{border:2px solid var(--border-color);background:var(--surface-color);border-radius:6px;grid-area:icon;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.account-status-copy{grid-area:copy;min-width:0}.account-status-copy>strong,.account-status-copy>span,.account-status-copy>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-status-copy>strong{font-size:.98rem;line-height:1.2}.account-status-copy>span{color:var(--text-secondary);margin-top:.2rem;font-size:.72rem;font-weight:750}.account-status-copy>small{color:var(--text-secondary);margin-top:.35rem;font-size:.76rem;font-weight:850}.account-status-result{flex-wrap:wrap;grid-area:result;justify-content:space-between;align-items:center;gap:.45rem;display:flex}.account-status-result>strong{color:var(--success-text);font-size:.88rem;font-weight:950}.account-status-result>small{color:var(--text-secondary);font-size:.7rem;font-weight:800}.account-status-result>span{border:2px solid var(--border-color);border-radius:999px;padding:.2rem .5rem;font-size:.7rem;font-weight:900;display:inline-block}.account-detail-subtitle{color:var(--text-muted);text-transform:capitalize;margin:.35rem 0 0;font-size:.82rem;font-weight:800}.account-detail-body{gap:1.1rem;padding:1rem;display:grid}.account-detail-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:.65rem;display:grid}.account-detail-metric{border:2px solid var(--border-color);background:var(--surface-subtle);border-radius:8px;padding:.75rem}.account-detail-metric span{color:var(--text-muted);text-transform:uppercase;margin-bottom:.15rem;font-size:.68rem;font-weight:900;display:block}.account-detail-metric strong{font-size:.95rem;display:block}.account-detail-metric.state-paid{background:var(--account-card-paid)}.account-detail-metric.state-unconfigured{background:var(--account-card-unconfigured)}.account-detail-metric.state-pending{background:var(--account-card-pending)}.account-detail-metric.state-missing,.account-detail-metric.state-overdue{background:var(--account-card-missing)}.account-detection-rule{border:2px solid var(--border-color);background:var(--info-surface);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.75rem;padding:.85rem;display:grid}.account-detection-icon{border:2px solid var(--border-color);background:var(--surface-color);border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.account-detection-rule h3,.account-section-heading h3,.account-history-toggle h3{margin:0;font-size:.95rem;font-weight:900}.account-detection-rule p{color:var(--text-secondary);margin:.2rem 0 .35rem;font-size:.78rem;font-weight:650}.account-detection-rule>div:nth-child(2)>strong{overflow-wrap:anywhere;font-size:.82rem;display:block}.account-detection-rule small{color:var(--text-secondary);margin-top:.35rem;font-size:.72rem;font-weight:750;display:block}.account-detection-rule>.btn{grid-column:1/-1;width:100%}.account-detail-section,.account-history-section{border-top:2px solid var(--surface-disabled);padding-top:1rem}.account-section-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.account-section-heading p{color:var(--text-muted);margin:.18rem 0 0;font-size:.76rem;font-weight:650}.account-section-heading>span{border:2px solid var(--border-color);background:var(--surface-color);border-radius:999px;justify-content:center;align-items:center;min-width:30px;height:30px;font-size:.75rem;font-weight:900;display:inline-flex}.account-transaction-list,.account-candidate-list,.account-history-list{gap:.65rem;display:grid}.account-transaction-row,.account-candidate-row{border:2px solid var(--border-color);background:var(--surface-color);border-radius:8px;gap:.65rem;padding:.75rem;display:grid}.account-candidate-row{background:var(--warning-surface)}.account-transaction-main{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;min-width:0;display:grid}.account-transaction-main>div{min-width:0}.account-transaction-main>div>strong,.account-transaction-main>div>span,.account-transaction-main>div>small{overflow-wrap:anywhere;display:block}.account-transaction-main>div>strong{font-size:.85rem}.account-transaction-main>div>span{color:var(--text-secondary);margin-top:.12rem;font-size:.72rem;font-weight:700}.account-transaction-main>div>small{color:var(--success-text);margin-top:.3rem;font-size:.7rem;font-weight:800}.account-candidate-row .account-transaction-main>div>small{color:var(--warning-text)}.account-transaction-amount{color:var(--danger);white-space:nowrap;font-size:.88rem}.account-correction-toggle{justify-self:start}.account-inline-correction{border-top:1px solid var(--border-subtle);padding-top:.65rem}.account-candidate-actions,.account-manual-actions{flex-wrap:wrap;gap:.5rem;display:flex}.account-empty-state{border:2px dashed var(--border-muted);background:var(--surface-subtle);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem;padding:1rem;display:grid}.account-empty-state.compact{padding:.8rem}.account-empty-state strong,.account-empty-state span{display:block}.account-empty-state strong{font-size:.85rem}.account-empty-state span{color:var(--text-muted);margin-top:.15rem;font-size:.75rem;font-weight:650}.account-manual-toggle{background:var(--surface-color);margin-top:.75rem}.account-manual-form{border:2px solid var(--border-color);background:var(--surface-subtle);border-radius:8px;grid-template-columns:1fr;gap:.75rem;margin-top:.75rem;padding:.85rem;display:grid}.account-manual-form>label{gap:.3rem;display:grid}.account-manual-form>label>span{font-size:.75rem;font-weight:900}.account-manual-form .input{background:var(--surface-color);width:100%}.account-history-toggle{width:100%;min-height:54px;color:var(--text-primary);text-align:left;justify-content:space-between;align-items:center;gap:1rem;display:flex}.account-history-toggle>div>span{color:var(--text-muted);margin-top:.15rem;font-size:.75rem;font-weight:650;display:block}.account-history-toggle>span{align-items:center;gap:.35rem;font-size:.76rem;font-weight:900;display:inline-flex}.account-history-list{margin-top:.75rem}.account-history-month{border:2px solid var(--border-color);background:var(--account-card-missing);border-radius:8px;overflow:hidden}.account-history-month.has-payments{background:var(--account-card-paid)}.account-history-month>button{width:100%;min-height:58px;color:var(--text-primary);text-align:left;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.account-history-month>button:disabled{cursor:default;opacity:1}.account-history-month>button>div>strong,.account-history-month>button>div>span{display:block}.account-history-month>button>div>strong{text-transform:capitalize;font-size:.82rem}.account-history-month>button>div>span{color:var(--text-secondary);margin-top:.1rem;font-size:.7rem;font-weight:700}.account-history-month>button>strong{white-space:nowrap;font-size:.8rem}.account-history-payments{border-top:2px solid var(--border-color);background:var(--surface-color);gap:.5rem;padding:.65rem;display:grid}.account-history-payment{border:1.5px solid var(--border-subtle);border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.65rem;display:grid}.account-history-payment>div:first-child{min-width:0}.account-history-payment>div:first-child>strong,.account-history-payment>div:first-child>span{overflow-wrap:anywhere;display:block}.account-history-payment>div:first-child>strong{font-size:.76rem}.account-history-payment>div:first-child>span{color:var(--text-muted);margin-top:.1rem;font-size:.68rem;font-weight:700}.account-history-payment .account-inline-correction{grid-column:1/-1;width:100%}.confirm-toast{border:2px solid var(--border-color);width:min(440px,100vw - 2rem);box-shadow:var(--shadow-md);background:var(--surface-color);border-radius:10px;padding:1rem}.confirm-toast-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.confirm-toast-header h3{margin:0;font-size:1.05rem;font-weight:900}.confirm-toast-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.confirm-toast-actions .btn{white-space:nowrap;min-height:40px;padding:.5rem .85rem;font-size:.85rem}.smart-assistant{background:var(--pastel-blue);border:2px solid var(--border-color);box-shadow:var(--shadow-md);box-sizing:border-box;border-radius:10px;width:100%;padding:1.5rem}.smart-assistant-header{grid-template-columns:1fr;align-items:start;gap:1rem;margin-bottom:1rem;display:grid}.assistant-kicker{border:2px solid var(--border-color);background:var(--pastel-yellow);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:.35rem;margin-bottom:.75rem;padding:.3rem .7rem;font-size:.75rem;font-weight:900;display:inline-flex}.smart-assistant h2{margin:0 0 .5rem}.smart-assistant p{color:var(--text-secondary);margin:0;font-weight:600}.assistant-metrics,.assistant-actions,.assistant-facts{flex-wrap:wrap;gap:.5rem;display:flex}.assistant-metrics{justify-content:flex-start}.assistant-metrics span,.assistant-facts span,.assistant-progress{border:2px solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;padding:.35rem .7rem;font-size:.85rem;font-weight:900;display:inline-flex}.assistant-actions{margin-top:1rem}.assistant-card{background:var(--surface-color);border:2px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:10px;flex-direction:column;margin-top:1rem;display:flex;overflow:hidden}.assistant-card-main h3{margin:.85rem 0;font-size:1.2rem;font-weight:900}.assistant-card-main p{align-items:center;gap:.5rem;margin-top:1rem;display:flex}.assistant-proposal{background:var(--pastel-green);border:2px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:10px;flex-direction:column;gap:.35rem;padding:1rem;display:flex}.assistant-proposal span{text-transform:uppercase;color:var(--text-secondary);font-size:.7rem;font-weight:900}.assistant-proposal strong{font-size:1.2rem}.assistant-proposal small{color:var(--text-secondary);font-weight:800}.assistant-contact{background:var(--surface-color);border:2px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:10px;grid-template-columns:auto 1fr;align-items:start;gap:.75rem;margin-top:1rem;padding:1rem;display:grid}.assistant-contact strong{margin-bottom:.5rem;display:block}.assistant-contact-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;display:flex}.assistant-contact-summary>span:first-child{min-width:0;color:var(--text-secondary);overflow-wrap:anywhere;font-size:.82rem;font-weight:800}.assistant-contact-summary .btn{background:var(--surface-color);min-height:38px;padding:.4rem .65rem;font-size:.76rem}.assistant-contact-saved{color:var(--success-text);align-items:center;gap:.3rem;font-size:.78rem;font-weight:900;display:inline-flex}.assistant-contact-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.assistant-contact-form label{gap:.25rem;display:grid}.assistant-contact-form label:first-child,.assistant-contact-form label:last-of-type,.assistant-contact-form .field-error,.assistant-contact-actions{grid-column:1/-1}.assistant-contact-form label>span{color:var(--text-secondary);font-size:.7rem;font-weight:900}.assistant-contact-form .input{background:var(--surface-color);width:100%;min-width:0;padding:.55rem .65rem;font-size:.82rem}.assistant-contact-actions{flex-wrap:wrap;gap:.5rem;display:flex}.assistant-contact-actions .btn{min-height:40px;padding:.45rem .7rem;font-size:.78rem}@media (width<=520px){.assistant-contact-form{grid-template-columns:1fr}.assistant-contact-form>*{grid-column:1}}.assistant-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.assistant-progress-label{font-size:1rem;font-weight:600}.assistant-progress-bar{background:var(--surface-disabled);border:1.5px solid var(--border-color);border-radius:999px;height:6px;margin-bottom:1.25rem;overflow:hidden}.assistant-progress-fill{background:var(--border-color);border-radius:999px;height:100%;transition:width .3s}.assistant-card-header{border-bottom:2px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.assistant-card-header .assistant-kicker{margin-bottom:.5rem}.assistant-card-header h3{text-transform:uppercase;word-break:break-word;margin:0;font-size:1.25rem;font-weight:900}.assistant-confidence{border:2px solid var(--border-color);white-space:nowrap;box-shadow:var(--shadow-sm);border-radius:999px;flex-shrink:0;align-items:center;padding:.35rem .8rem;font-size:.85rem;font-weight:900;display:inline-flex}.assistant-confidence.confidence-high{background:var(--pastel-green)}.assistant-confidence.confidence-mid{background:var(--pastel-yellow)}.assistant-confidence.confidence-low{background:var(--surface-subtle)}.assistant-body-grid{border-bottom:2px solid var(--border-color);grid-template-columns:1fr 1fr;gap:0;display:grid}.assistant-body-grid .assistant-card-main{border-right:2px solid var(--border-color);padding:1rem}.assistant-body-grid .assistant-proposal{background:var(--pastel-green);box-shadow:none;border:none;border-radius:0;padding:1rem}.assistant-section-label{text-transform:uppercase;color:var(--text-secondary);margin:0 0 .6rem;font-size:.72rem;font-weight:900}.fact-ingreso{background:var(--pastel-green)!important;color:var(--success-text)!important}.fact-egreso{background:var(--danger-surface)!important;color:var(--danger-text)!important;border-color:var(--danger-text)!important}@media (width<=600px){.assistant-body-grid{grid-template-columns:1fr}.assistant-body-grid .assistant-card-main{border-right:none;border-bottom:2px solid var(--border-color)}}.settings-page{width:min(100%,1180px);margin:0 auto}.settings-hero{grid-template-columns:1fr;align-items:end;gap:1rem;margin-bottom:1rem;display:grid}.settings-kicker{border:2px solid var(--border-color);background:var(--pastel-yellow);box-shadow:var(--shadow-sm);border-radius:999px;margin-bottom:.75rem;padding:.3rem .75rem;font-size:.75rem;font-weight:900;display:inline-flex}.settings-hero h1{margin:0 0 .5rem;font-size:2.7rem}.settings-hero p{max-width:680px;color:var(--text-secondary);margin:0;font-weight:650}.settings-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.settings-stats a,.settings-quick-links a{border:2px solid var(--border-color);background:var(--surface-color);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.55rem .8rem;font-size:.82rem;font-weight:900;display:inline-flex}.settings-quick-links{flex-wrap:wrap;gap:.55rem;margin-bottom:1.5rem;display:flex}.settings-bento{grid-template-columns:1fr;gap:1.1rem;display:grid}.settings-card{min-width:0;overflow:visible}.settings-card h2[id],.settings-anchor{scroll-margin-top:2rem}.settings-card:hover{transform:none}.settings-section-title{align-items:flex-start;gap:.8rem;margin-bottom:1rem;display:flex}.settings-section-title>svg{border:2px solid var(--border-color);background:var(--surface-subtle);width:40px;height:40px;box-shadow:var(--shadow-sm);border-radius:10px;flex-shrink:0;padding:.35rem}.settings-section-title h2{margin:0;font-size:1.35rem;line-height:1.15}.settings-section-title span{color:var(--text-muted);margin-top:.25rem;font-size:.82rem;font-weight:800;display:block}.settings-muted{color:var(--text-secondary);margin-bottom:1.25rem;font-weight:600}.settings-inline-form,.settings-stack-form,.settings-grid-form,.settings-rule-form{flex-wrap:wrap;align-items:end;gap:.8rem;margin-bottom:1.25rem;display:flex}.settings-inline-form>*,.settings-stack-form>*,.settings-grid-form>*,.settings-rule-form>*{flex:200px;min-width:0}.settings-inline-form>.btn,.settings-stack-form>.btn,.settings-grid-form>.btn,.settings-rule-form>.btn{flex:none;align-self:flex-end}.settings-rule-category{min-width:0}.settings-field-label,.settings-rule-category{gap:.35rem;display:grid}.settings-field-label>span,.settings-field-title{color:var(--text-secondary);font-size:.75rem;font-weight:900}.settings-field-label>span small{color:var(--text-muted);font-size:inherit;font-weight:700}.field-error{color:var(--danger-text);margin:.35rem 0 0;font-size:.78rem;font-weight:800;line-height:1.35}.input[aria-invalid=true]{border-color:var(--danger);background:var(--danger-surface)}.settings-rule-category:has(.field-error)>button{border-color:var(--danger)}.settings-rule-category:has(.field-error) [role=button]{border-color:var(--danger)}.settings-rule-category>button,.settings-rule-category button{width:100%;min-height:48px}.settings-rule-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.settings-rule-search{align-items:center;width:min(100%,520px);min-width:0;display:flex;position:relative}.settings-rule-search>svg{color:var(--text-muted);pointer-events:none;position:absolute;left:.9rem}.settings-rule-search input{border:2px solid var(--border-color);background:var(--surface-color);width:100%;min-height:48px;color:var(--text-primary);font:inherit;border-radius:8px;padding:.75rem 3.25rem .75rem 2.75rem;font-weight:700}.settings-rule-search-clear{width:44px;height:44px;min-height:44px;position:absolute;right:.125rem}.settings-rule-count{color:var(--text-secondary);white-space:nowrap;margin:0;font-size:.85rem;font-weight:800}.settings-rule-list{gap:.75rem;margin-top:1rem;display:grid}.settings-rule-item{border:2px solid var(--border-color);background:var(--surface-subtle);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;min-width:0;padding:.9rem 1rem;display:grid}.settings-rule-summary{gap:.3rem;min-width:0;display:grid}.settings-rule-summary strong{overflow-wrap:anywhere;font-size:.95rem;font-weight:900}.settings-rule-summary span{overflow-wrap:anywhere;color:var(--text-secondary);font-size:.82rem;font-weight:700;line-height:1.4}.settings-rule-actions{align-items:center;gap:.5rem;display:flex}.settings-rule-actions .btn{min-height:44px;padding:.55rem .75rem}.settings-rule-delete{border:2px solid var(--danger);background:var(--danger-surface);width:44px;color:var(--danger-text);flex:0 0 44px;padding:0}.settings-rule-empty{border:2px dashed var(--border-subtle);color:var(--text-secondary);text-align:center;border-radius:8px;gap:.3rem;margin:0;padding:1.25rem;font-weight:650;display:grid}.settings-rule-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1rem;display:flex}.settings-rule-pagination span{text-align:center;min-width:8rem;font-size:.9rem;font-weight:800}@media (width<=640px){.settings-rule-toolbar{flex-direction:column;align-items:stretch}.settings-rule-count{white-space:normal}.settings-rule-item{grid-template-columns:1fr}.settings-rule-actions .btn-outline{flex:1}.settings-rule-pagination{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.settings-rule-pagination span{grid-area:1/1/auto/-1}}@media (width<=900px){.duplicate-review-entry{grid-template-columns:1fr 1fr!important}}@media (width<=560px){.duplicate-review-entry{grid-template-columns:1fr!important}}.settings-fixed-expense-form{grid-template-columns:1fr;align-items:stretch;gap:.8rem;margin-bottom:1.25rem;display:grid}.settings-fixed-expense-form>*{min-width:0}.settings-callout{border-top:2px solid var(--surface-disabled);margin:1.25rem 0 0;padding-top:1.25rem}.settings-list{flex-direction:column;gap:.75rem;display:flex}.settings-list.compact{gap:.6rem}.settings-list-item,.settings-list-row{border:2px solid var(--border-color);background:var(--surface-subtle);border-radius:9px;padding:.85rem}.settings-list-row{justify-content:space-between;align-items:center;gap:.85rem;display:flex}.settings-row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.settings-fixed-expense-edit{grid-template-columns:1fr;gap:.75rem;width:100%;display:grid}.settings-empty{text-align:center;border:2px dashed var(--border-subtle);background:var(--surface-subtle);border-radius:9px;padding:1.5rem}.settings-danger{background:var(--danger-surface)}.bank-row{flex-wrap:wrap}@media (width>=700px){.account-status-card{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"icon copy result";align-items:center}.account-status-result{flex-direction:column;justify-content:flex-end;align-items:flex-end}.account-detection-rule{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.account-detection-rule>.btn{grid-column:auto;width:auto}.account-manual-form{grid-template-columns:repeat(3,minmax(0,1fr))}.account-manual-form .account-section-heading,.account-manual-actions{grid-column:1/-1}}@media (width<=1023px){.admin-users-table{table-layout:auto!important;min-width:0!important}.admin-users-table tr{padding:.9rem;display:block}.admin-users-table td{overflow-wrap:anywhere;grid-template-columns:120px minmax(0,1fr);align-items:start;gap:.65rem;display:grid;padding:.45rem 0!important}.admin-users-table td:before{content:attr(data-label);color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:900}.admin-users-table td[data-label]{text-align:left;margin-top:0}.admin-users-table td[data-label=Acciones]>div{flex-wrap:wrap}.transactions-table-wrap{background:0 0;border:0;border-radius:0;overflow:visible}.transactions-table{table-layout:auto;min-width:0}.transactions-table tr{grid-template-areas:"date amount""bank bank""desc desc""category category";gap:.35rem .75rem;padding:.9rem}.transactions-table td{padding:.25rem 0!important}.transactions-table td[data-label=Banco]{margin-top:.15rem}.transactions-table td[data-label=Descripción]{border-top:1px solid var(--surface-disabled);margin-top:.35rem;padding-top:.65rem!important}.transactions-table td[data-label=Clasificación]{padding-top:.65rem!important}.transactions-table td[data-label=Monto] .btn-icon{width:44px;height:44px}}.admin-dialog-body{padding:1.5rem}.admin-dialog-danger{box-shadow:5px 5px 0 var(--danger)}.admin-dialog-actions{justify-content:flex-end;gap:.75rem;display:flex}.mindmap-dialog{width:calc(100vw - 4rem);max-width:none;height:calc(100dvh - 4rem);max-height:none;overflow:hidden}@media (width<=480px){.admin-users-table td{grid-template-columns:1fr;gap:.2rem}.admin-dialog-body{padding:1rem}.admin-dialog-actions{flex-direction:column-reverse}.admin-dialog-actions .btn{width:100%}.mindmap-dialog{width:100%;height:92dvh}}@media (width>=1024px){.split-part-fields{grid-template-columns:1fr 1fr 2fr}.split-part-fields>div:last-child{grid-column:auto}.transactions-actions{align-items:center;width:100%;display:block}.transactions-actions>.btn,.transactions-actions>.responsive-tabs{width:auto}.transactions-actions>.responsive-tabs{width:100%;min-width:0}.header-container.transactions-header{flex-direction:column;align-items:stretch}.dashboard-kpi-amount{font-size:3.5rem!important}.dashboard-bank-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-stack{flex-direction:row;align-items:center}.flex-stack>*{width:auto}.header-container{flex-direction:row;justify-content:space-between;align-items:flex-end}.transactions-card{padding:1.5rem}.transactions-card-header{grid-template-columns:minmax(0,1fr) auto;align-items:center}.transactions-summary{justify-content:flex-end}.transactions-filter-bar{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:center}.transactions-filter-toggle{display:none}.transactions-filter-controls,.transactions-filter-controls.open{display:contents}.smart-assistant-header{grid-template-columns:1fr auto;align-items:center}.assistant-metrics{justify-content:flex-end}.assistant-card{grid-template-columns:minmax(0,1fr) 280px;align-items:stretch}.settings-hero{grid-template-columns:minmax(0,1fr) 420px}.settings-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-bento{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}.settings-card{grid-column:span 6}.settings-card-wide{grid-column:span 12}.settings-card-tall{grid-row:span 2}.settings-fixed-expense-form{grid-template-columns:minmax(160px,.9fr) minmax(160px,.9fr) minmax(220px,1.1fr)}.settings-fixed-expense-form .btn-primary{grid-column:1/-1;justify-self:start}.settings-fixed-expense-edit{grid-template-columns:minmax(160px,.9fr) minmax(160px,.9fr) minmax(220px,1.1fr)}.settings-fixed-expense-edit .settings-row-actions{grid-column:1/-1}.filter-bar{flex-direction:row;align-items:center}.responsive-tabs{border-radius:var(--radius-pill);flex-direction:row}.responsive-tabs button{border-bottom:none;border-left:var(--border-width) solid var(--border-color);flex:1 1 0;min-width:0;padding:.75rem 1.5rem;font-size:1rem}.responsive-tabs button:first-child{border-left:none}.date-popover{max-width:none;left:auto;right:0;transform:none}.responsive-table table{border-collapse:collapse;display:table}.responsive-table thead{display:table-header-group}.responsive-table thead tr{background-color:var(--text-primary);color:var(--surface-color);display:table-row;position:static}.responsive-table th{text-align:left;padding:1rem;font-weight:800;display:table-cell}.responsive-table tbody{display:table-row-group}.responsive-table tr{border:none;border-bottom:var(--border-width) solid var(--border-color);box-shadow:none;border-radius:0;margin-bottom:0;display:table-row}.responsive-table td{text-align:left;border-bottom:none;padding:1rem;display:table-cell}.responsive-table td[data-label]{margin-top:0}.category-picker-context{grid-template-columns:repeat(2,minmax(0,1fr))}.category-picker-modes button{font-size:.86rem}.category-suggestion-list,.category-tree-grid,.category-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.category-create-form label:first-child,.category-create-preview,.category-create-form .btn{grid-column:1/-1}}@media (width>=1500px){.header-container.transactions-header{flex-direction:row;align-items:flex-end}.transactions-actions{width:auto;min-width:820px}}.link-ingreso{stroke:var(--success-text);stroke-width:3px;fill:none}.link-egreso{stroke:var(--danger-text);stroke-width:3px;fill:none}.link-default{stroke:var(--border-subtle);stroke-width:3px;fill:none}@media (width<=768px){.auth-left-col{display:none!important}.auth-form-col{min-height:100dvh;padding:calc(1rem + env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) calc(1rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left))!important}.auth-tabs{margin-bottom:1.25rem!important}.auth-form-card{padding:1.5rem 1.25rem!important}}.import-route-shell{width:min(100%,1220px);padding:1.25rem max(1rem, env(safe-area-inset-right)) calc(4rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));margin:0 auto}.import-route-header{gap:1rem;margin-bottom:1.5rem;display:grid}.import-route-header h1{margin:0;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.1}.import-route-header p{max-width:62ch;color:var(--text-muted);margin-top:.4rem;font-weight:700}.import-source-tabs{border:2px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-color);width:100%;box-shadow:var(--shadow-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.import-source-tabs button{min-width:0;min-height:52px;color:var(--text-primary);justify-content:center;align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.78rem;font-weight:900;line-height:1.15;display:inline-flex}.import-source-tabs button+button{border-left:2px solid var(--border-color)}.import-source-tabs button.active{background:var(--pastel-blue)}.capture-import{width:100%;min-width:0}.capture-review-heading{align-items:start;gap:1rem;margin-bottom:1.25rem;display:grid}.capture-review-heading h2,.capture-processing h2,.capture-success h2{margin:.2rem 0 0;font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.15}.capture-review-heading p,.capture-processing p,.capture-success p{max-width:64ch;color:var(--text-secondary);margin-top:.45rem;font-weight:600}.capture-eyebrow{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:900;display:block}.capture-privacy-note{border:2px solid var(--border-color);border-radius:var(--radius-sm);background:var(--pastel-blue);align-items:center;gap:.7rem;width:100%;min-width:0;margin:0 0 1rem;padding:.75rem 1rem;display:flex}.capture-privacy-note svg{flex:none}.capture-privacy-note strong,.capture-privacy-note span{display:block}.capture-privacy-note span{color:var(--text-secondary);margin-top:.1rem;font-size:.78rem;font-weight:650}.capture-dropzone{border:3px dashed var(--border-color);border-radius:var(--radius-md);background:var(--surface-subtle);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;min-height:270px;padding:1.25rem;transition:background-color .15s,transform .15s;display:flex}.capture-dropzone.is-dragging{background:var(--pastel-yellow);transform:translateY(-2px)}.capture-dropzone.has-file{background:var(--surface-color);text-align:left;align-items:stretch}.capture-dropzone>strong{font-size:1.05rem}.capture-dropzone>span{color:var(--text-muted);font-size:.8rem;font-weight:700}.capture-selected-file{gap:.85rem;min-width:0;display:grid}.capture-selected-file img{object-fit:contain;background:var(--surface-color);width:100%;max-height:330px}.capture-selected-file>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.1rem .65rem;min-width:0;display:grid}.capture-selected-file>div svg{color:var(--success-text);grid-row:1/3}.capture-selected-file strong,.capture-selected-file span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.capture-selected-file span{color:var(--text-muted);font-size:.78rem;font-weight:700}.capture-file-actions{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;width:100%;margin-top:.75rem;padding-top:1rem;display:flex}.capture-file-actions>span{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.75rem;font-weight:750;display:inline-flex}.capture-start-controls{align-items:end;gap:1rem;width:100%;margin-top:1.25rem;display:grid}.capture-start-controls label,.capture-review-controls label,.capture-candidate-fields label,.capture-field-category{gap:.35rem;min-width:0;display:grid}.capture-start-controls label>span,.capture-review-controls label>span:first-child,.capture-candidate-fields label>span:first-child,.capture-field-category>span{color:var(--text-secondary);font-size:.75rem;font-weight:900}.capture-start-controls small,.capture-candidate-fields small{min-width:0;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:650;overflow:hidden}.capture-processing,.capture-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:420px;padding:2rem 1rem;display:flex}.capture-processing>svg:not(.capture-spinner),.capture-success>svg{color:var(--success-text)}.capture-spinner{animation:.9s linear infinite capture-spin}@keyframes capture-spin{to{transform:rotate(360deg)}}.capture-progress{border:2px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-color);width:min(100%,420px);height:16px;margin-top:1.25rem;overflow:hidden}.capture-progress span{background:var(--pastel-green);height:100%;transition:width .2s;display:block}.capture-processing>strong{margin:.45rem 0 1.25rem}.capture-success-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.25rem;display:flex}.capture-review-heading .btn{width:100%}.capture-review-controls{border-top:2px solid var(--border-color);border-bottom:2px solid var(--border-color);gap:1rem;margin-bottom:1rem;padding:1rem 0;display:grid}.capture-date-control,.capture-money-field{gap:.5rem;min-width:0;display:grid}.capture-review-summary{flex-wrap:wrap;align-content:end;gap:.4rem;min-width:0;display:flex}.capture-review-summary strong,.capture-review-summary span{border:2px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-color);padding:.45rem .65rem;font-size:.72rem;font-weight:900}.capture-review-summary strong{background:var(--pastel-green)}.capture-alert{border:2px solid var(--border-color);border-radius:var(--radius-md);align-items:flex-start;gap:.7rem;margin:.9rem 0;padding:.85rem;font-size:.82rem;font-weight:700;display:flex}.capture-alert svg{flex:none}.capture-alert strong,.capture-alert span{display:block}.capture-alert div>span{color:var(--text-secondary);margin-top:.15rem;font-weight:650}.capture-alert-error{background:var(--danger-surface);color:var(--danger-text)}.capture-alert-warning{background:var(--warning-surface);color:var(--warning-text)}.capture-source-preview{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin:1rem 0}.capture-source-preview summary,.capture-candidate-details summary{cursor:pointer;align-items:center;gap:.5rem;min-height:44px;padding:.65rem 0;font-weight:850;display:flex}.capture-source-preview img{object-fit:contain;background:var(--surface-color);width:100%;max-height:620px;margin-bottom:1rem}.capture-selection-actions{flex-wrap:wrap;gap:.75rem;margin:.75rem 0 1rem;display:flex}.capture-candidate-list{gap:1rem;display:grid}.capture-candidate{border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);min-width:0;box-shadow:var(--shadow-sm);padding:1rem}.capture-candidate.is-excluded{background:var(--surface-disabled);opacity:.7}.capture-candidate.has-error{border-color:var(--danger);box-shadow:2px 2px 0 var(--danger)}.capture-candidate-index{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.9rem;display:flex}.capture-checkbox{cursor:pointer;align-items:center;gap:.55rem;font-weight:900;display:inline-flex}.capture-checkbox input,.capture-duplicate-review input[type=radio]{width:22px;height:22px;accent-color:var(--border-color)}.capture-checkbox span{border:2px solid var(--border-color);background:var(--pastel-blue);border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.capture-confidence{border:2px solid var(--border-color);border-radius:var(--radius-pill);padding:.35rem .55rem;font-size:.68rem;font-weight:900}.confidence-high{background:var(--pastel-green)}.confidence-medium{background:var(--warning-surface)}.confidence-low{background:var(--danger-surface)}.capture-candidate-fields{align-items:start;gap:.85rem;min-width:0;display:grid}.capture-candidate-fields .input,.capture-field-category .category-selector,.capture-field-category .category-selector-trigger{width:100%;min-width:0}.capture-money-field{grid-template-columns:84px minmax(0,1fr)}.capture-candidate-details{border-top:1px solid var(--border-subtle);margin-top:.75rem}.capture-candidate-details dl{color:var(--text-secondary);grid-template-columns:auto minmax(0,1fr);gap:.35rem .75rem;padding:.5rem 0;font-size:.78rem;display:grid}.capture-candidate-details dt{font-weight:900}.capture-candidate-details dd{overflow-wrap:anywhere;min-width:0}.capture-inline-error{color:var(--danger-text);margin-top:.75rem;font-size:.75rem;font-weight:850}.capture-duplicate-review{border-top:2px solid var(--border-color);background:var(--warning-surface);margin:1rem -1rem -1rem;padding:1rem}.capture-duplicate-review>div{align-items:flex-start;gap:.65rem;display:flex}.capture-duplicate-review>div svg{flex:none}.capture-duplicate-review strong,.capture-duplicate-review span{display:block}.capture-duplicate-review span{color:var(--text-secondary);margin-top:.2rem;font-size:.75rem;font-weight:700}.capture-duplicate-match-list{border-top:1px solid #0f172a3d;margin-top:.55rem}.capture-duplicate-match{border-bottom:1px solid #0f172a29;padding:.55rem 0}.capture-duplicate-match:last-child{border-bottom:0}.capture-duplicate-match strong{overflow-wrap:anywhere;font-size:.78rem}.capture-duplicate-match small{color:var(--text-primary);margin-top:.2rem;font-size:.7rem;font-weight:850;display:block}.capture-duplicate-review fieldset{border:0;gap:.55rem;margin-top:.85rem;padding:0;display:grid}.capture-duplicate-review legend{margin-bottom:.45rem;font-size:.76rem;font-weight:900}.capture-duplicate-review label{border:2px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-color);cursor:pointer;align-items:center;gap:.55rem;min-height:44px;padding:.55rem;font-size:.76rem;font-weight:800;display:flex}.capture-review-footer{z-index:20;padding:1rem max(1rem, env(safe-area-inset-right)) calc(1rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border-top:2px solid var(--border-color);background:color-mix(in srgb, var(--surface-color) 97%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);gap:.8rem;margin:1.5rem -1rem 0;display:grid;position:sticky;bottom:0}.capture-review-footer strong,.capture-review-footer span{display:block}.capture-review-footer span{color:var(--text-muted);font-size:.72rem;font-weight:700}.capture-review-footer .btn{width:100%}@media (width>=700px){.import-route-shell{padding-top:2rem}.import-route-header{grid-template-columns:minmax(0,1fr) minmax(420px,.8fr);align-items:end}.import-source-tabs button{font-size:.86rem}.capture-start-controls label{grid-template-columns:auto minmax(180px,230px) minmax(0,1fr);align-items:center}.capture-start-controls label>span{white-space:nowrap}.capture-start-controls small{white-space:normal}.capture-review-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.45fr)}.capture-review-heading .btn{justify-self:end;width:auto}.capture-review-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.capture-review-summary{grid-column:1/-1}.capture-date-control{grid-template-columns:minmax(0,1fr) auto}.capture-candidate-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-review-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-left:0;margin-right:0}.capture-review-footer .btn{width:auto}}@media (width>=1100px){.capture-review-controls{grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr) minmax(0,1fr)}.capture-review-summary{grid-column:auto}}@media (width>=1280px){.capture-candidate-fields{grid-template-columns:minmax(0,1.35fr) minmax(0,.75fr) minmax(0,.85fr) minmax(0,1.2fr)}}@media (prefers-reduced-motion:reduce){.capture-spinner{animation-duration:1.8s}.capture-progress span{transition:none}}.feedback-fab{z-index:900;right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));border:var(--border-width) solid var(--border-color);background:var(--surface-color);width:48px;height:48px;min-height:48px;color:var(--text-primary);box-shadow:var(--shadow-md);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:0;padding:0;font-size:.88rem;font-weight:900;transition:width .2s,padding .2s,gap .2s,transform .15s,box-shadow .15s,background-color .15s;display:inline-flex;position:fixed;left:auto;overflow:hidden}.feedback-fab-label{opacity:0;max-width:0;line-height:1;transition:max-width .2s,opacity .15s,transform .2s;display:inline-block;overflow:hidden;transform:translate(4px)}.feedback-fab:hover,.feedback-fab:focus-visible,.feedback-fab.is-expanded,.feedback-fab:active{background:var(--surface-subtle);justify-content:flex-start;gap:.45rem;width:auto;min-width:48px;padding:0 1rem 0 .85rem;transform:translateY(-2px)}.feedback-fab:hover .feedback-fab-label,.feedback-fab:focus-visible .feedback-fab-label,.feedback-fab.is-expanded .feedback-fab-label,.feedback-fab:active .feedback-fab-label{opacity:1;max-width:7rem;transform:translate(0)}.feedback-fab:focus-visible{outline:var(--focus-outline-width) solid var(--focus-ring);outline-offset:3px}@media (width<=600px){.feedback-fab{right:max(.75rem, env(safe-area-inset-right));bottom:max(.75rem, env(safe-area-inset-bottom))}}.feedback-dialog{border:var(--border-width) solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-color);width:min(520px,100vw - 2rem);max-height:min(90dvh,720px);box-shadow:var(--shadow-lg);padding:0;overflow:auto}.feedback-form{gap:.85rem;padding:1.15rem 1.2rem 1.25rem;display:grid}.feedback-dialog-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.feedback-eyebrow{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .2rem;font-size:.7rem;font-weight:900}.feedback-dialog-header h2{margin:0;font-size:1.25rem;font-weight:900}.feedback-subtitle{color:var(--text-secondary);margin:.35rem 0 0;font-size:.84rem;font-weight:600;line-height:1.4}.feedback-meta{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.feedback-chip{border:1px solid var(--border-color);background:var(--surface-subtle);border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:900;display:inline-flex}.feedback-path{color:var(--text-muted);overflow-wrap:anywhere;font-size:.75rem;font-weight:700}.feedback-fieldset{border:0;min-width:0;margin:0;padding:0}.feedback-fieldset legend{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:.45rem;font-size:.78rem;font-weight:900}.feedback-categories{flex-wrap:wrap;gap:.4rem;display:flex}.feedback-category{border:var(--border-width) solid var(--border-color);background:var(--surface-subtle);min-height:40px;color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:.4rem .7rem;font-size:.8rem;font-weight:800}.feedback-category.is-active{background:var(--primary);color:var(--text-on-inverted);border-color:var(--primary)}html.dark .feedback-category.is-active{background:color-mix(in srgb, var(--info-accent) 22%, var(--surface-color));color:var(--text-primary);border-color:color-mix(in srgb, var(--info-accent) 45%, var(--border-color))}.feedback-rating{gap:.25rem;display:flex}.feedback-star{width:44px;height:44px;color:var(--border-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.feedback-star.is-active{color:#eab308}.feedback-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-top:.15rem;font-size:.78rem;font-weight:900;display:block}.feedback-textarea{resize:vertical;min-height:110px;font-weight:600;line-height:1.45}.feedback-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;margin-top:.35rem;display:flex}.feedback-actions .btn{min-width:120px}.admin-feedback-list{gap:.85rem;display:grid}.admin-feedback-item{border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);box-shadow:var(--shadow-sm);padding:1rem 1.1rem}.admin-feedback-item header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.55rem;display:flex}.admin-feedback-item h3{margin:0;font-size:1rem;font-weight:900}.admin-feedback-item p{color:var(--text-primary);margin:.35rem 0 0;font-weight:650;line-height:1.45}.admin-feedback-meta{color:var(--text-muted);flex-wrap:wrap;gap:.35rem;margin-top:.65rem;font-size:.75rem;font-weight:700;display:flex}.admin-feedback-actions{flex-wrap:wrap;gap:.4rem;margin-top:.75rem;display:flex}.admin-page{gap:1.35rem;width:min(100%,1200px);margin:0 auto;display:grid}.admin-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-page-heading h1{align-items:center;gap:.65rem;margin:0;font-size:clamp(1.75rem,4vw,2.35rem);display:flex}.admin-page-heading p{color:var(--text-secondary);margin:.35rem 0 0;font-weight:650}.admin-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:.85rem;display:grid}.admin-kpi-card{text-align:left;border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);box-shadow:var(--shadow-sm);color:inherit;cursor:pointer;grid-template-columns:auto 1fr;grid-template-areas:"icon label""icon value""icon meta";align-items:center;gap:.1rem .75rem;padding:1rem 1.05rem;transition:transform .12s,box-shadow .12s;display:grid}.admin-kpi-card.is-static{cursor:default}.admin-kpi-card:not(.is-static):hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.admin-kpi-icon{border:1.5px solid var(--border-color);border-radius:10px;grid-area:icon;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.admin-kpi-icon.is-blue{background:var(--pastel-blue)}.admin-kpi-icon.is-green{background:var(--pastel-green)}.admin-kpi-icon.is-yellow{background:var(--pastel-yellow)}.admin-kpi-icon.is-purple{background:var(--pastel-purple)}.admin-kpi-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);grid-area:label;font-size:.72rem;font-weight:900}.admin-kpi-value{grid-area:value;font-size:1.55rem;font-weight:900;line-height:1.1}.admin-kpi-meta{color:var(--text-secondary);grid-area:meta;font-size:.78rem;font-weight:700}.admin-tabs{border:var(--border-width) solid var(--border-color);background:var(--surface-subtle);border-radius:999px;flex-wrap:wrap;gap:.3rem;width:fit-content;max-width:100%;padding:.3rem;display:inline-flex}.admin-tab{min-height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .95rem;font-size:.88rem;font-weight:800;display:inline-flex}.admin-tab.is-active{background:var(--surface-color);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:900}html.dark .admin-tab.is-active{background:color-mix(in srgb, var(--info-accent) 16%, var(--surface-color));box-shadow:none}.admin-tab-badge{background:var(--danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.35rem;height:1.35rem;padding:0 .35rem;font-size:.7rem;font-weight:900;display:inline-flex}.admin-panel{min-width:0;padding:1.35rem 1.4rem 1.5rem}.admin-panel-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-panel-toolbar h2{margin:0;font-size:1.25rem;font-weight:900}.admin-panel-toolbar p{color:var(--text-secondary);margin:.25rem 0 0;font-size:.9rem;font-weight:650}.admin-search{width:min(100%,360px);position:relative}.admin-search svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.admin-search .input{background:var(--surface-color);width:100%;padding-left:2.6rem}.admin-overview-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem;display:grid}.admin-overview-card{gap:.75rem;padding:1.25rem;display:grid}.admin-overview-card h2{margin:0;font-size:1.1rem}.admin-overview-card p{color:var(--text-secondary);margin:0;font-weight:650;line-height:1.45}.admin-overview-card .btn{width:fit-content}.admin-users-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.admin-users-table{border-collapse:collapse;table-layout:auto;width:100%;min-width:780px}.admin-users-table th{text-align:left;background:var(--text-primary);color:var(--text-on-inverted);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;padding:.75rem .85rem;font-size:.75rem;font-weight:900}html.dark .admin-users-table th{background:var(--surface-subtle);color:var(--text-primary);border-bottom:1px solid var(--border-color)}.admin-users-table td{border-bottom:1px solid var(--border-subtle);vertical-align:top;padding:.85rem}.admin-users-table tr.is-paused{background:var(--danger-surface)}.admin-user-email,.admin-user-name{overflow-wrap:anywhere;font-size:.92rem;font-weight:800}.admin-user-sub{color:var(--text-muted);margin-top:.15rem;font-size:.75rem;font-weight:650}.admin-user-tx{white-space:nowrap;font-size:1.05rem;font-weight:900}.admin-bank-chips{flex-wrap:wrap;gap:.3rem;max-width:220px;display:flex}.admin-bank-chip{border:1.5px solid var(--border-color);white-space:nowrap;border-radius:999px;align-items:center;gap:.2rem;padding:.15rem .45rem;font-size:.68rem;font-weight:800;display:inline-flex}.admin-row-actions{flex-wrap:wrap;gap:.4rem;display:flex}.admin-empty-cell{text-align:center;color:var(--text-secondary);font-weight:700;padding:2.5rem 1rem!important}.admin-empty-copy{color:var(--text-muted);margin:0;font-weight:650}.admin-filter-pills{flex-wrap:wrap;gap:.35rem;display:flex}.admin-filter-pill{border:var(--border-width) solid var(--border-color);background:var(--surface-subtle);min-height:36px;color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:.35rem .75rem;font-size:.8rem;font-weight:800}.admin-filter-pill.is-active{background:var(--primary);color:var(--text-on-inverted);border-color:var(--primary)}html.dark .admin-filter-pill.is-active{background:color-mix(in srgb, var(--info-accent) 22%, var(--surface-color));color:var(--text-primary);border-color:color-mix(in srgb, var(--info-accent) 40%, var(--border-color))}.admin-mini-btn{min-height:40px!important;padding:.4rem .75rem!important}.admin-loading{gap:.75rem;display:grid}@media (width<=720px){.admin-page-header{align-items:stretch}.admin-page-header .btn{justify-content:center;width:100%}.admin-tabs{width:100%}.admin-tab{flex:auto;justify-content:center}.admin-search{width:100%}}.dashboard-kpi-card{min-width:0;padding-bottom:6.5rem!important}html,body,#root,.main-content,.page-container,.admin-page{max-width:100%}@media (width<=1024px){.page-container{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))!important}.dialog-backdrop{align-items:flex-end;padding:0}.dialog-panel,.feedback-dialog{border-radius:18px 18px 0 0!important;width:100%!important;max-width:100%!important;max-height:min(92dvh,100%)!important;margin:0!important}.feedback-actions{padding-bottom:env(safe-area-inset-bottom);background:linear-gradient(to top, var(--surface-color) 70%, transparent);position:sticky;bottom:0}.feedback-categories{gap:.35rem}.feedback-category{flex:auto;justify-content:center;min-width:calc(50% - .35rem)}.dashboard-kpi-card{padding:1.25rem 1.1rem 5rem!important}.dashboard-kpi-card h3{font-size:1.1rem!important}.admin-users-table{min-width:0!important}.admin-users-table thead{display:none}.admin-users-table tbody,.admin-users-table tr{width:100%;display:block}.admin-users-table tr{border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);box-shadow:var(--shadow-sm);margin-bottom:.85rem;padding:.95rem 1rem}.admin-users-table tr.is-paused{background:var(--danger-surface)}.admin-users-table td{grid-template-columns:96px minmax(0,1fr);align-items:start;gap:.5rem .75rem;border-bottom:0!important;padding:.4rem 0!important;display:grid!important}.admin-users-table td:before{content:attr(data-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding-top:.15rem;font-size:.68rem;font-weight:900}.admin-bank-chips{max-width:none}.admin-row-actions{justify-content:flex-start}.admin-panel{padding:1.1rem 1rem 1.25rem}.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-tabs{width:100%;display:flex}.admin-tab{flex:1 1 0;justify-content:center}}@media (width<=480px){.dashboard-kpi-card{padding:1.05rem .95rem 4.5rem!important}.dashboard-cash-summary-breakdown{grid-template-columns:1fr 1fr}.dashboard-cash-summary-breakdown strong{font-size:.85rem}.admin-kpi-grid{grid-template-columns:1fr 1fr;gap:.65rem}.admin-kpi-value{font-size:1.3rem}.admin-users-table td{grid-template-columns:1fr;gap:.15rem}.admin-users-table td:before{padding-top:0}.feedback-fab{width:48px;height:48px;right:max(.75rem, env(safe-area-inset-right));bottom:max(.85rem, env(safe-area-inset-bottom))}.admin-row-actions .btn-icon{width:44px;height:44px}.feedback-actions{flex-direction:column-reverse}.feedback-actions .btn,.admin-page-header .btn,.route-error-actions .btn,.dashboard-partial-warning .btn{justify-content:center;width:100%}}@media (width<=1024px) and (orientation:landscape) and (height<=500px){.mobile-header{min-height:calc(48px + env(safe-area-inset-top));padding:calc(.25rem + env(safe-area-inset-top)) .85rem .25rem}.page-container{padding-top:.75rem!important;padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))!important}.dashboard-kpi-card{padding-bottom:3.5rem!important}.dashboard-analysis-panel{height:min(240px,50vh)!important}.feedback-fab{width:44px;height:44px;min-height:44px}}@media (width>=600px) and (width<=900px) and (orientation:portrait){.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpi-pair{grid-template-columns:1fr}.page-container{padding-left:1.5rem!important;padding-right:1.5rem!important}}@media (width>=900px) and (width<=1024px) and (orientation:landscape){.admin-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.page-container{padding-left:1.5rem!important;padding-right:1.5rem!important}}@media (width<=1024px){.card,.dashboard-cash-summary,.admin-panel,.admin-feedback-item,img,svg,canvas,table{max-width:100%}.admin-users-scroll{overflow-x:visible}}
