:root{--rgds-100:#0fa3eb;--rgds-200:#0e79c2;--rgds-300:#117bae;--rgds-400:#0c62af;--rgds-500:#084386;--rgds-bg-1:#06172e;--rgds-bg-2:#071428;--rgds-card:#0e2548;--rgds-card-border:#0fa3eb1a;--rgds-dark:#06172e;--rgds-error:#ef4444;--rgds-info:#117bae;--rgds-success:#22c55e;--rgds-text:#eef9ff;--rgds-transparent:#fff0;--rgds-warning:#f59e0b;--rgds-white:#eef9ff}[data-theme=light]{--rgds-bg-1:#eef9ff;--rgds-bg-2:#e6f2ff;--rgds-card:#eef6fd;--rgds-card-border:#0c62af0d;--rgds-text:#06172e}.bg-rgds-bg-1{background-color:var(--rgds-bg-1)}.bg-rgds-bg-2{background-color:var(--rgds-bg-2)}.bg-rgds-card{background-color:var(--rgds-card)}.border-rgds-card{border-color:var(--rgds-card-border)}.text-rgds{color:var(--rgds-text)}.bg-rgds-100{background-color:#0fa3eb}.text-rgds-100{color:#0fa3eb}.border-rgds-100{border-color:#0fa3eb}.bg-rgds-200{background-color:#0e79c2}.text-rgds-200{color:#0e79c2}.border-rgds-200{border-color:#0e79c2}.bg-rgds-300{background-color:#117bae}.text-rgds-300{color:#117bae}.border-rgds-300{border-color:#117bae}.bg-rgds-400{background-color:#0c62af}.text-rgds-400{color:#0c62af}.border-rgds-400{border-color:#0c62af}.bg-rgds-500{background-color:#084386}.text-rgds-500{color:#084386}.border-rgds-500{border-color:#084386}.bg-rgds-success{background-color:#22c55e}.text-rgds-success{color:#22c55e}.border-rgds-success{border-color:#22c55e}.bg-rgds-warning{background-color:#f59e0b}.text-rgds-warning{color:#f59e0b}.border-rgds-warning{border-color:#f59e0b}.bg-rgds-error{background-color:#ef4444}.text-rgds-error{color:#ef4444}.border-rgds-error{border-color:#ef4444}.bg-rgds-info{background-color:#117bae}.text-rgds-info{color:#117bae}.border-rgds-info{border-color:#117bae}.bg-rgds-white{background-color:#eef9ff}.text-rgds-white{color:#eef9ff}.border-rgds-white{border-color:#eef9ff}.bg-rgds-dark{background-color:#06172e}.text-rgds-dark{color:#06172e}.border-rgds-dark{border-color:#06172e}.bg-rgds-transparent{background-color:#fff0}.text-rgds-transparent{color:#fff0}.border-rgds-transparent{border-color:#fff0}*,:before,:after{border-style:solid;border-width:0}.font-sans{font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.text-xs{letter-spacing:.0007em;font-size:12px;line-height:16px}.text-sm{letter-spacing:.0004em;font-size:14px;line-height:20px}.text-base{letter-spacing:0;font-size:16px;line-height:24px}.text-lg{letter-spacing:0;font-size:18px;line-height:28px}.text-xl{letter-spacing:0;font-size:20px;line-height:30px}.text-2xl{letter-spacing:.0007em;font-size:24px;line-height:34px}.text-3xl{letter-spacing:.0007em;font-size:30px;line-height:38px}.text-4xl{letter-spacing:.0002em;font-size:36px;line-height:44px}.text-5xl{letter-spacing:.0003em;font-size:48px;line-height:56px}.text-6xl{letter-spacing:.0003em;font-size:60px;line-height:68px}.text-7xl{letter-spacing:.0004em;font-size:72px;line-height:80px}.text-8xl{letter-spacing:.0004em;font-size:96px;line-height:104px}.font-regular{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.w-full{width:100%}.w-screen{width:100vw}.w-xs{width:1rem}.w-sm{width:2rem}.w-md{width:5rem}.w-base{width:10rem}.w-lg{width:15rem}.w-xl{width:20rem}.w-2xl{width:25rem}.w-3xl{width:30rem}.w-4xl{width:35rem}.w-5xl{width:40rem}.w-6xl{width:45rem}.h-full{height:100%}.h-screen{height:100vh}.h-xs{height:1rem}.h-sm{height:2rem}.h-md{height:5rem}.h-base{height:10rem}.h-lg{height:15rem}.h-xl{height:20rem}.h-2xl{height:25rem}.h-3xl{height:30rem}.h-4xl{height:35rem}.h-5xl{height:40rem}.h-6xl{height:45rem}.m-xs{margin:4px}.mx-xs{margin-left:4px;margin-right:4px}.my-xs{margin-top:4px;margin-bottom:4px}.mt-xs{margin-top:4px}.mb-xs{margin-bottom:4px}.ml-xs{margin-left:4px}.mr-xs{margin-right:4px}.m-sm{margin:8px}.mx-sm{margin-left:8px;margin-right:8px}.my-sm{margin-top:8px;margin-bottom:8px}.mt-sm{margin-top:8px}.mb-sm{margin-bottom:8px}.ml-sm{margin-left:8px}.mr-sm{margin-right:8px}.m-md{margin:16px}.mx-md{margin-left:16px;margin-right:16px}.my-md{margin-top:16px;margin-bottom:16px}.mt-md{margin-top:16px}.mb-md{margin-bottom:16px}.ml-md{margin-left:16px}.mr-md{margin-right:16px}.m-lg{margin:24px}.mx-lg{margin-left:24px;margin-right:24px}.my-lg{margin-top:24px;margin-bottom:24px}.mt-lg{margin-top:24px}.mb-lg{margin-bottom:24px}.ml-lg{margin-left:24px}.mr-lg{margin-right:24px}.m-xl{margin:32px}.mx-xl{margin-left:32px;margin-right:32px}.my-xl{margin-top:32px;margin-bottom:32px}.mt-xl{margin-top:32px}.mb-xl{margin-bottom:32px}.ml-xl{margin-left:32px}.mr-xl{margin-right:32px}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.p-xs{padding:4px}.px-xs{padding-left:4px;padding-right:4px}.py-xs{padding-top:4px;padding-bottom:4px}.pt-xs{padding-top:4px}.pb-xs{padding-bottom:4px}.pl-xs{padding-left:4px}.pr-xs{padding-right:4px}.p-sm{padding:8px}.px-sm{padding-left:8px;padding-right:8px}.py-sm{padding-top:8px;padding-bottom:8px}.pt-sm{padding-top:8px}.pb-sm{padding-bottom:8px}.pl-sm{padding-left:8px}.pr-sm{padding-right:8px}.p-md{padding:16px}.px-md{padding-left:16px;padding-right:16px}.py-md{padding-top:16px;padding-bottom:16px}.pt-md{padding-top:16px}.pb-md{padding-bottom:16px}.pl-md{padding-left:16px}.pr-md{padding-right:16px}.p-lg{padding:24px}.px-lg{padding-left:24px;padding-right:24px}.py-lg{padding-top:24px;padding-bottom:24px}.pt-lg{padding-top:24px}.pb-lg{padding-bottom:24px}.pl-lg{padding-left:24px}.pr-lg{padding-right:24px}.p-xl{padding:32px}.px-xl{padding-left:32px;padding-right:32px}.py-xl{padding-top:32px;padding-bottom:32px}.pt-xl{padding-top:32px}.pb-xl{padding-bottom:32px}.pl-xl{padding-left:32px}.pr-xl{padding-right:32px}.gap-xs{gap:4px}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.gap-xl{gap:32px}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px}.rounded-md{border-radius:8px}.rounded-lg{border-radius:12px}.rounded-full{border-radius:9999px}.shadow-sm{box-shadow:0 1px 2px #0f172a0d}.shadow-md{box-shadow:0 4px 6px -1px #0f172a1a}.shadow-lg{box-shadow:0 10px 15px -3px #0f172a26}.flex-row{flex-direction:row;display:flex}.flex-col{flex-direction:column;display:flex}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr));display:grid}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.z-base{z-index:1}.z-dropdown{z-index:1000}.z-sticky{z-index:1100}.z-modal{z-index:1300}.z-toast{z-index:1400}.transition-default{transition:all .15s ease-out}.transition-fast{transition:all .1s ease-out}.transition-slow{transition:all .25s ease-out}.border-xs{border-style:solid;border-width:1px}.border-sm{border-style:solid;border-width:2px}.border-md{border-style:solid;border-width:3px}.border-xl{border-style:solid;border-width:4px}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:var(--rgds-bg-1,#eef9ff);--bg-secondary:var(--rgds-bg-2,#e6f2ff);--surface:var(--rgds-card,#fff);--surface-raised:#fff;--surface-hover:color-mix(in srgb, var(--rgds-300,#117bae) 8%, var(--surface));--surface-active:color-mix(in srgb, var(--rgds-300,#117bae) 14%, var(--surface));--border:var(--rgds-card-border,#e2e8f0);--border-strong:color-mix(in srgb, var(--rgds-400,#0c62af) 30%, var(--border));--text:var(--rgds-text,#06172e);--text-muted:#475569;--text-subtle:#94a3b8;--accent:var(--rgds-400,#0c62af);--accent-hover:var(--rgds-500,#084386);--accent-light:color-mix(in srgb, var(--rgds-100,#0fa3eb) 12%, transparent);--accent-text:#fff;--success:var(--rgds-success,#22c55e);--success-light:color-mix(in srgb, var(--rgds-success,#22c55e) 12%, transparent);--danger:var(--rgds-error,#ef4444);--danger-light:color-mix(in srgb, var(--rgds-error,#ef4444) 12%, transparent);--warning:var(--rgds-warning,#f59e0b);--warning-light:color-mix(in srgb, var(--rgds-warning,#f59e0b) 12%, transparent);--shadow-sm:0 1px 3px #0c62af14;--shadow-md:0 4px 12px #0c62af1f;--shadow-lg:0 12px 24px #0c62af29;--radius-xs:.1875rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--rgds-bg-1,#06172e);--bg-secondary:var(--rgds-bg-2,#071428);--surface:var(--rgds-card,#0e2548);--surface-raised:var(--rgds-card,#0e2548);--surface-hover:color-mix(in srgb, var(--rgds-100,#0fa3eb) 12%, var(--surface));--surface-active:color-mix(in srgb, var(--rgds-100,#0fa3eb) 20%, var(--surface));--border:color-mix(in srgb, var(--rgds-100,#0fa3eb) 18%, transparent);--border-strong:color-mix(in srgb, var(--rgds-100,#0fa3eb) 35%, transparent);--text:var(--rgds-text,#eef9ff);--text-muted:#94a3b8;--text-subtle:#64748b;--accent:var(--rgds-100,#0fa3eb);--accent-hover:var(--rgds-200,#0e79c2);--accent-light:color-mix(in srgb, var(--rgds-100,#0fa3eb) 18%, transparent);--accent-text:#06172e;--success:var(--rgds-success,#22c55e);--success-light:color-mix(in srgb, var(--rgds-success,#22c55e) 18%, transparent);--danger:var(--rgds-error,#ef4444);--danger-light:color-mix(in srgb, var(--rgds-error,#ef4444) 18%, transparent);--warning:var(--rgds-warning,#f59e0b);--warning-light:color-mix(in srgb, var(--rgds-warning,#f59e0b) 18%, transparent);--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 24px #00000080}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--rgds-bg-1,#06172e);--bg-secondary:var(--rgds-bg-2,#071428);--surface:var(--rgds-card,#0e2548);--surface-raised:var(--rgds-card,#0e2548);--surface-hover:color-mix(in srgb, var(--rgds-100,#0fa3eb) 12%, var(--surface));--surface-active:color-mix(in srgb, var(--rgds-100,#0fa3eb) 20%, var(--surface));--border:color-mix(in srgb, var(--rgds-100,#0fa3eb) 18%, transparent);--border-strong:color-mix(in srgb, var(--rgds-100,#0fa3eb) 35%, transparent);--text:var(--rgds-text,#eef9ff);--text-muted:#94a3b8;--text-subtle:#64748b;--accent:var(--rgds-100,#0fa3eb);--accent-hover:var(--rgds-200,#0e79c2);--accent-light:color-mix(in srgb, var(--rgds-100,#0fa3eb) 18%, transparent);--accent-text:#06172e;--success:var(--rgds-success,#22c55e);--success-light:color-mix(in srgb, var(--rgds-success,#22c55e) 18%, transparent);--danger:var(--rgds-error,#ef4444);--danger-light:color-mix(in srgb, var(--rgds-error,#ef4444) 18%, transparent);--warning:var(--rgds-warning,#f59e0b);--warning-light:color-mix(in srgb, var(--rgds-warning,#f59e0b) 18%, transparent);--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 24px #00000080}}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5}h1{color:var(--text);font-size:1rem;font-weight:600}h2{color:var(--text);font-size:.875rem;font-weight:600}h3{color:var(--text);font-size:.875rem;font-weight:500}label{color:var(--text-muted);font-size:.75rem;font-weight:500}small{color:var(--text-muted);font-size:.75rem;font-weight:400}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-muted{color:var(--text-muted)}.text-subtle{color:var(--text-subtle)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-accent{color:var(--accent)}.text-num{font-variant-numeric:tabular-nums}.text-right{text-align:right}.text-center{text-align:center}.top-progress-bar{background:color-mix(in srgb, var(--accent) 25%, transparent);z-index:9999;height:3px;position:fixed;top:0;left:0;right:0;overflow:hidden}.top-progress-bar-fill{background:var(--accent);height:100%;box-shadow:0 0 8px var(--accent);transition:width .25s}.auth-shell{grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.auth-brand{background:var(--rgds-500,#084386);color:#fff;flex-direction:column;justify-content:center;gap:1.5rem;padding:4rem;display:flex;position:relative;overflow:hidden}.auth-brand:before{content:"";pointer-events:none;background:radial-gradient(circle,#0fa3eb40 0%,#0000 60%);width:140%;height:140%;position:absolute;top:-20%;left:-20%}.auth-logo{letter-spacing:-.02em;color:var(--rgds-100,#0fa3eb);z-index:1;font-size:1.75rem;font-weight:700;position:relative}.auth-tagline{opacity:.9;z-index:1;max-width:24rem;font-size:1rem;line-height:1.6;position:relative}.auth-form-wrap{background:var(--surface);flex-direction:column;justify-content:center;padding:3rem 2rem;display:flex}.auth-form-inner{flex-direction:column;gap:1.5rem;width:100%;max-width:22rem;margin:auto;display:flex}.auth-form-title{color:var(--text);font-size:1.25rem;font-weight:600}.auth-form-sub{color:var(--text-muted);margin-top:.25rem;font-size:.875rem}.auth-link{color:var(--accent);font-size:.875rem;font-weight:500;text-decoration:none;display:inline-block}.auth-link:hover{text-decoration:underline}.app-shell{background:var(--bg);grid-template-rows:56px 1fr;grid-template-columns:240px 1fr;min-height:100dvh;display:grid}.app-topbar{background:var(--surface);border-bottom:1px solid var(--border);height:56px;box-shadow:var(--shadow-sm);z-index:10;grid-column:1/-1;align-items:center;gap:.75rem;padding:0 1.25rem;display:flex;position:sticky;top:0}.topbar-hamburger{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:2rem;height:2rem;color:var(--text);cursor:pointer;place-items:center;display:none}.topbar-logo{color:var(--accent);font-size:.9375rem;font-weight:700;text-decoration:none}.topbar-sep{color:var(--text-subtle);font-size:.875rem}.topbar-breadcrumb{color:var(--text-muted);font-size:.875rem;font-weight:500}.topbar-spacer{flex:1}.topbar-actions{align-items:center;gap:.5rem;display:flex}.topbar-resolution-alert{border:1px solid color-mix(in srgb, var(--danger) 70%, transparent);background:color-mix(in srgb, var(--danger) 14%, var(--surface));color:var(--danger);cursor:pointer;font:inherit;white-space:nowrap;border-radius:999px;padding:.48rem .7rem;font-size:.75rem;font-weight:750}.topbar-import-progress{width:min(13rem,24vw);color:var(--text-muted);text-align:right;white-space:nowrap;gap:.32rem;font-size:.72rem;font-weight:700;display:grid}.topbar-import-progress i{background:var(--accent);border-radius:999px;justify-self:end;height:.25rem;transition:width .18s;display:block}.theme-toggle-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:2rem;height:2rem;color:var(--text-muted);cursor:pointer;place-items:center;transition:background .15s,color .15s;display:grid}.theme-toggle-btn:hover{background:var(--surface-hover);color:var(--text)}.app-sidebar{background:var(--surface);border-right:1px solid var(--border);-webkit-user-select:none;user-select:none;z-index:20;flex-direction:column;height:calc(100dvh - 56px);display:flex;position:sticky;top:56px;overflow-y:auto}.sidebar-backdrop{z-index:19;background:#0006;display:none;position:fixed;inset:0}.nav-section{padding:.5rem 0}.nav-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle);padding:.375rem 1rem;font-size:.6875rem;font-weight:600}.nav-item{border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.625rem;width:calc(100% - 1rem);margin:.0625rem .5rem;padding:.4375rem .875rem;font-family:inherit;font-size:.875rem;transition:background .1s,color .1s;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--text)}.nav-item.active{background:var(--accent-light);color:var(--accent);font-weight:600}.nav-icon{stroke:currentColor;fill:none;flex-shrink:0;width:1rem;height:1rem}.nav-badge{background:var(--danger);color:#fff;text-align:center;border-radius:999px;min-width:1rem;margin-left:auto;padding:.0625rem .375rem;font-size:.625rem;font-weight:600;line-height:1.2}.nav-divider{background:var(--border);height:1px;margin:.25rem 0}.nav-bottom{border-top:1px solid var(--border);margin-top:auto;padding:.5rem 0}.app-content{background:var(--bg);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.page-header{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.5rem;display:flex}.page-title{color:var(--text);font-size:.9375rem;font-weight:600}.page-subtitle{color:var(--text-muted);margin-top:.125rem;font-size:.75rem}.page-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.page-body{flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.875rem 1.25rem;display:flex}.card-title{color:var(--text);font-size:.875rem;font-weight:600}.card-desc{color:var(--text-muted);margin-top:.125rem;font-size:.75rem}.card-body{padding:1.25rem}.card-body--p0{padding:0;overflow-x:auto}.stat-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:.375rem;padding:1.25rem;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.6875rem;font-weight:600}.stat-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:600;line-height:1.2}.stat-value.success{color:var(--success)}.stat-value.danger{color:var(--danger)}.stat-desc{color:var(--text-subtle);font-size:.6875rem}.overview-main{grid-template-columns:280px 1fr;align-items:start;gap:1rem;display:grid}.analysis-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1rem;display:grid}.data-table{border-collapse:collapse;width:100%;min-width:500px;font-size:.875rem}.data-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:2px solid var(--border);white-space:nowrap;background:var(--surface);padding:.625rem 1rem;font-size:.6875rem;font-weight:600}.data-table tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.75rem 1rem}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--surface-hover)}.tx-row.tx-excluded td{opacity:.45}.tx-info{align-items:center;gap:.625rem;display:flex}.tx-icon{border-radius:var(--radius-sm);background:var(--accent-light);width:1.75rem;height:1.75rem;color:var(--accent);flex-shrink:0;place-items:center;font-size:.6875rem;font-weight:600;display:grid;overflow:hidden}.tx-icon--button{cursor:pointer;border:0;padding:0}.tx-merchant-avatar--button{cursor:pointer;border:0;padding:0;position:relative}.tx-merchant-avatar--button:after{background:color-mix(in srgb, var(--surface) 86%, transparent);border-radius:inherit;color:var(--text);content:"+";opacity:0;justify-content:center;align-items:center;font-size:1rem;transition:opacity .16s;display:flex;position:absolute;inset:0}.tx-merchant-avatar--button:hover:after,.tx-merchant-avatar--button:focus-visible:after{opacity:1}.field-label{color:var(--text-muted);flex-direction:column;flex:1;gap:.375rem;font-size:.75rem;font-weight:650;display:flex}.field-label .filter-select{width:100%}.toolbar-pills{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.chart-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.chart-account-select{min-width:10.5rem}.forecast-explanation{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.forecast-hero{overflow:visible}.forecast-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;padding:1.1rem 1.25rem 0;display:grid}.forecast-metric{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);gap:.3rem;min-width:0;padding:.8rem;display:grid}.forecast-metric--primary{background:linear-gradient(135deg, var(--accent-light), var(--surface-raised));border-color:color-mix(in srgb, var(--accent) 38%, var(--border))}.forecast-metric span,.forecast-metric small{color:var(--text-muted);font-size:.7rem;line-height:1.25}.forecast-metric strong{font-variant-numeric:tabular-nums;letter-spacing:-.035em;overflow-wrap:anywhere;font-size:clamp(1rem,1.7vw,1.35rem)}@media (max-width:1100px){.forecast-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.forecast-metrics{grid-template-columns:repeat(2,minmax(0,1fr));padding:.85rem}.forecast-metric--primary{grid-column:1/-1}}.forecast-explanation span{background:color-mix(in srgb, var(--surface) 78%, var(--accent-light));border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-muted);padding:.45rem .65rem;font-size:.75rem}.forecast-explanation .forecast-income{border-color:color-mix(in srgb, var(--success) 45%, var(--border));color:var(--success)}.claim-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.claim-overview>div{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);gap:.25rem;padding:.875rem;display:grid}.claim-overview span,.claim-card small{color:var(--text-muted);font-size:.72rem}.claim-overview strong{font-variant-numeric:tabular-nums;font-size:1.125rem}.claim-cards{gap:.75rem;display:grid}.claim-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);gap:.9rem;padding:1rem;display:grid}.claim-card__head,.claim-card__actions,.claim-card__amounts{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.claim-card h3{margin:0;font-size:.95rem}.claim-card p{color:var(--text-muted);margin:.25rem 0 0;font-size:.78rem}.claim-card__amounts span{gap:.2rem;display:grid}.claim-card__amounts b{font-variant-numeric:tabular-nums}.claim-status{border-radius:var(--radius-full);white-space:nowrap;padding:.35rem .55rem;font-size:.7rem;font-weight:700}.claim-status--settled{background:var(--success-light);color:var(--success)}.claim-status--partial{background:var(--warning-light);color:var(--warning)}.claim-status--open{background:var(--accent-light);color:var(--accent)}.claim-progress{background:var(--surface-hover);border-radius:var(--radius-full);height:.3rem;overflow:hidden}.claim-progress i{background:var(--accent);border-radius:inherit;height:100%;transition:width .18s;display:block}@media (max-width:640px){.claim-overview{grid-template-columns:1fr}.claim-card__amounts{flex-direction:column;align-items:flex-start}.claim-card__amounts span{grid-template-columns:4rem 1fr;align-items:baseline}}.subscription-summary{align-items:baseline;gap:.5rem;display:flex}.subscription-summary strong{color:var(--accent);letter-spacing:-.05em;font-size:1.75rem}.account-cards{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.625rem;display:grid}.accounts-section{gap:1rem;display:grid}.accounts-section__header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.accounts-section__header h2{letter-spacing:-.04em;margin:.15rem 0;font-size:1.35rem}.accounts-section__header p:not(.eyebrow){color:var(--text-muted);margin:0;font-size:.8rem}.account-panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.account-card{background:color-mix(in srgb, var(--surface) 92%, var(--surface-raised));border:1px solid var(--border);border-radius:var(--radius-lg);gap:.45rem;min-width:0;padding:.8rem;display:grid}.account-card__head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.account-card__head h3{overflow-wrap:anywhere;margin:0;font-size:.92rem;line-height:1.25}.account-card__currency{color:var(--text-muted);text-transform:uppercase;margin:.2rem 0 0;font-size:.7rem;font-weight:700}.account-card__balance{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.055em;font-size:clamp(1.25rem,2vw,1.55rem);line-height:1}.account-card__checkpoint{background:color-mix(in srgb, var(--surface-hover) 70%, transparent);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:1fr auto;align-items:center;gap:.2rem;padding:.5rem .6rem;display:grid}.account-card__checkpoint span,.account-card__checkpoint small{color:var(--text-muted);font-size:.72rem}.account-card__checkpoint b{font-variant-numeric:tabular-nums}.account-card__checkpoint small{grid-column:1/-1}.account-card__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem .6rem;font-size:.7rem;display:flex}.account-state{background:var(--surface-hover);border-radius:var(--radius-full);color:var(--text-muted);padding:.18rem .42rem}.account-state--active{background:var(--success-light);color:var(--success)}.account-settings-dialog{gap:.5rem;display:grid}.account-settings-dialog label{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-muted);justify-content:space-between;align-items:center;gap:.5rem;min-width:0;padding:.32rem .45rem;font-size:.68rem;font-weight:650;display:flex}.label-cloud{flex-wrap:wrap;gap:.35rem;min-height:0;display:flex}.alias-remove{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:.25rem;padding:0}.mapping-existing{border-top:1px solid var(--border);gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:grid}.mapping-existing>span{color:var(--text-muted);font-size:.75rem;font-weight:700}@media (max-width:640px){.account-cards{grid-template-columns:minmax(0,1fr)}.accounts-section__header{flex-direction:column;align-items:flex-start}}.transaction-image-preview{object-fit:cover;border-radius:.75rem;width:5rem;height:5rem;margin:0 auto;display:block}.tx-icon img{object-fit:cover;width:100%;height:100%}.tx-label{font-weight:500}.tx-account{color:var(--text-muted);margin-top:.0625rem;font-size:.75rem}.col-date{white-space:nowrap;width:5rem}.col-amount{text-align:right;white-space:nowrap}.col-actions{text-align:right;width:2.5rem}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.8125rem}.link-btn:hover{text-decoration:underline}.table-footer{text-align:center;color:var(--text-subtle);border-top:1px solid var(--border);padding:.875rem 1.25rem;font-size:.8125rem}.filter-bar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1.5rem;display:flex}.filter-search{flex:1;min-width:12rem}.filter-select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);height:2rem;color:var(--text);cursor:pointer;padding:0 .5rem;font-family:inherit;font-size:.8125rem}.filter-toggle{color:var(--text-muted);cursor:pointer;align-items:center;gap:.375rem;font-size:.8125rem;display:flex}.filter-reset{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:.25rem .5rem;font-family:inherit;font-size:.8125rem}.filter-reset:hover{color:var(--danger);background:var(--danger-light)}.kebab-wrap{display:inline-block;position:relative}.kebab-btn{border-radius:var(--radius-sm);width:1.75rem;height:1.75rem;color:var(--text-subtle);cursor:pointer;background:0 0;border:none;place-items:center;display:grid}.kebab-btn:hover{background:var(--surface-hover);color:var(--text)}.kebab-menu{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);white-space:nowrap;min-width:11rem;padding:.25rem;position:absolute;top:calc(100% + 4px);right:0}.kebab-item{cursor:pointer;text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text);background:0 0;border:none;align-items:center;gap:.5rem;padding:.4375rem .75rem;font-family:inherit;font-size:.8125rem;display:flex}.kebab-item:hover{background:var(--surface-hover)}.kebab-item--destructive{color:var(--danger)}.kebab-item--destructive:hover{background:var(--danger-light)}.donut-layout{grid-template-columns:10rem 1fr;align-items:center;gap:1.5rem;display:grid}.donut-chart{width:10rem;margin:auto;position:relative}.donut-chart svg{display:block;transform:rotate(-90deg)}.donut-track,.donut-segment{fill:none;stroke-width:5px}.donut-track{stroke:var(--border)}.donut-segment{transition:stroke-dasharray .45s,stroke-dashoffset .45s}.donut-center{text-align:center;place-content:center;gap:.15rem;display:grid;position:absolute;inset:0}.donut-center span{color:var(--text-muted);text-transform:uppercase;font-size:.6875rem;font-weight:600}.donut-center strong{font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:600}.donut-legend{flex-direction:column;gap:.375rem;display:flex}.donut-row{align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.donut-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.donut-row-name{color:var(--text-muted);flex:1}.donut-row-value{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:.75rem}.cashflow-chart{flex-direction:column;gap:.5rem;min-height:160px;display:flex}.cashflow-chart svg{width:100%;height:140px;overflow:visible}.cashflow-line{fill:none;stroke:var(--accent);stroke-width:2px;vector-effect:non-scaling-stroke}.cashflow-baseline{fill:none;stroke:var(--border-strong);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-dasharray:3 3}.cashflow-legend{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.goals-grid{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1rem;display:grid}.goal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:.875rem;padding:1.25rem;display:flex}.goal-card-top{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.goal-name{font-size:.9375rem;font-weight:600}.goal-account{color:var(--text-muted);margin-top:.125rem;font-size:.75rem}.goal-amounts{grid-template-columns:1fr 1fr 1fr;gap:.5rem;display:grid}.goal-amount-item strong{font-variant-numeric:tabular-nums;margin-top:.125rem;font-size:.9375rem;font-weight:600;display:block}.goal-bar{background:var(--border);border-radius:2px;height:.375rem;overflow:hidden}.goal-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .3s}.goal-fill--complete{background:var(--success)}.goal-footer{color:var(--text-muted);justify-content:space-between;font-size:.75rem;display:flex}.notice{border-radius:var(--radius-md);border:1px solid;align-items:flex-start;gap:.625rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.notice--success{background:var(--success-light);border-color:var(--success);color:var(--success)}.notice--error{background:var(--danger-light);border-color:var(--danger);color:var(--danger)}.notice--info{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.notice--warning{background:var(--warning-light);border-color:var(--warning);color:var(--warning)}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1.5rem;display:flex}.empty-icon{width:2.5rem;height:2.5rem;color:var(--text-subtle);stroke:currentColor;fill:none}.empty-title{color:var(--text-muted);font-weight:500}.empty-desc{color:var(--text-subtle);max-width:20rem;font-size:.8125rem}.skeleton-wrap{flex-direction:column;gap:1.25rem;display:flex}.skeleton-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.skeleton-card{background:var(--border);border-radius:var(--radius-lg);height:5rem;animation:1.5s ease-in-out infinite pulse}.skeleton-table{flex-direction:column;gap:.375rem;display:flex}.skeleton-row{background:var(--border);border-radius:var(--radius-sm);height:2.75rem;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.9}}.stepper{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.step-item{color:var(--text-muted);align-items:center;gap:.375rem;font-size:.75rem;display:flex}.step-item.active{color:var(--accent);font-weight:600}.step-num{background:var(--border);border-radius:999px;place-items:center;width:1.25rem;height:1.25rem;font-size:.625rem;font-weight:600;display:grid}.step-item.active .step-num{background:var(--accent);color:var(--accent-text)}.step-sep{background:var(--border);width:1.5rem;height:1px}.projection-banner{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:1rem;padding:.875rem 1.25rem;font-size:.875rem;display:flex}.period-shortcuts{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.period-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;color:var(--text-muted);padding:.25rem .5rem;font-family:inherit;font-size:.75rem;transition:all .15s}.period-btn:hover{border-color:var(--accent);color:var(--accent)}.period-btn.active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.form-stack{flex-direction:column;gap:1rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.label-cloud{flex-wrap:wrap;gap:.25rem;display:flex}.confirm-body{flex-direction:column;gap:1.25rem;display:flex}.confirm-actions{justify-content:flex-end;gap:.5rem;display:flex}.secret-code{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-sm);word-break:break-all;text-align:center;padding:.5rem .75rem;font-family:monospace;font-size:.8125rem;display:block}.qr-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:1.25rem;display:flex}.transfer-review{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-hover);grid-template-columns:1fr auto 1fr;align-items:end;gap:1rem;padding:1rem;display:grid}.transfer-review__actions{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}@media (max-width:1024px){.app-shell{grid-template-columns:200px 1fr}}@media (max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr)}.overview-main,.analysis-grid{grid-template-columns:1fr}}@media (max-width:768px){.app-shell{grid-template-columns:1fr}.topbar-hamburger{display:grid}.app-sidebar{width:260px;box-shadow:var(--shadow-lg);height:100dvh;transition:transform .25s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app-sidebar.app-sidebar--open{transform:translate(0)}.sidebar-backdrop{display:block}.stat-grid{grid-template-columns:1fr 1fr}.donut-layout{grid-template-columns:1fr}}@media (max-width:640px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.form-row,.stat-grid,.transfer-review{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}.page-actions{width:100%}}:root{--radius-xs:.375rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1.25rem;--radius-xl:1.75rem;--radius-full:9999px;--glass-bg:#ffffffbf;--glass-border:#e2e8f0cc;--glass-blur:blur(16px)}:root[data-theme=dark]{--glass-bg:#0b0f19bf;--glass-border:#ffffff14}@media (prefers-color-scheme:dark){:root:not([data-theme]){--glass-bg:#0b0f19bf;--glass-border:#ffffff14}}.hero-balance-card{background:linear-gradient(135deg, var(--surface) 0%, var(--surface-raised) 100%);border:1px solid var(--border);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:1.25rem;padding:1.75rem 1.5rem;display:flex;position:relative;overflow:hidden}.hero-balance-card:after{content:"";background:radial-gradient(circle, var(--accent-light) 0%, transparent 70%);pointer-events:none;opacity:.6;width:250px;height:250px;position:absolute;top:-40%;right:-20%}.hero-balance-amount{letter-spacing:-.03em;color:var(--text);font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:800;line-height:1.1}.hero-actions-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;width:100%;display:flex}.hero-action-pill{border-radius:var(--radius-full);background:var(--surface-hover);color:var(--text);border:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.625rem 1.125rem;font-size:.8125rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.hero-action-pill:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-1px)}.hero-action-pill--primary{background:var(--accent);color:#fff;border-color:var(--accent)}.hero-action-pill--primary:hover{background:var(--accent-hover);color:#fff}.app-bottom-nav{background:var(--glass-bg);height:64px;-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--border);z-index:1000;padding-bottom:env(safe-area-inset-bottom,0px);display:none;position:fixed;bottom:0;left:0;right:0}.bottom-nav-inner{grid-template-columns:repeat(5,1fr);align-items:center;height:100%;display:grid}.bottom-nav-item{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.375rem 0;font-size:.6875rem;font-weight:500;transition:color .15s;display:flex}.bottom-nav-item.active{color:var(--accent);font-weight:700}.bottom-nav-icon{stroke:currentColor;fill:none;width:1.375rem;height:1.375rem}.tx-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.tx-group-header{text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle);padding:.5rem .25rem;font-size:.75rem;font-weight:700}.tx-item-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.875rem 1rem;transition:transform .15s,background .15s,border-color .15s;display:flex}.tx-item-card:hover{background:var(--surface-hover);border-color:var(--border-strong);transform:scale(1.005)}.tx-item-left{align-items:center;gap:.875rem;min-width:0;display:flex}.tx-merchant-avatar{border-radius:var(--radius-full);background:var(--accent-light);width:2.5rem;height:2.5rem;color:var(--accent);flex-shrink:0;place-items:center;font-size:.875rem;font-weight:700;display:grid;overflow:hidden}.tx-item-meta{flex-direction:column;min-width:0;display:flex}.tx-item-label{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.tx-item-sub{color:var(--text-muted);align-items:center;gap:.375rem;font-size:.75rem;display:flex}.tx-item-amount{font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;margin-left:.5rem;font-size:.9375rem;font-weight:700}.tx-item-amount.positive{color:var(--success)}.tx-sheet-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;background:#00000073;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.tx-sheet-content{background:var(--surface);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);border:1px solid var(--border);width:100%;max-width:540px;max-height:85vh;box-shadow:var(--shadow-lg);flex-direction:column;gap:1.25rem;padding:1.5rem;animation:.25s cubic-bezier(.16,1,.3,1) slideUp;display:flex;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.filter-chips-bar{scrollbar-width:none;align-items:center;gap:.5rem;padding:.25rem 0;display:flex;overflow-x:auto}.filter-chips-bar::-webkit-scrollbar{display:none}.filter-chip{border-radius:var(--radius-full);background:var(--surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:.375rem;padding:.4375rem .875rem;font-size:.8125rem;font-weight:500;transition:all .15s;display:inline-flex}.filter-chip:hover{background:var(--surface-hover);color:var(--text)}.filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}@media (max-width:768px){.app-shell{padding-bottom:64px;grid-template-rows:56px 1fr!important;grid-template-columns:1fr!important}.app-sidebar{display:flex!important}.app-bottom-nav{display:block}.page-body{padding:1rem}.hero-balance-amount{font-size:2rem}}
