:root{--color-primary-hsl: 153 50% 12%;--color-primary-dark-hsl: 153 50% 8%;--color-secondary-hsl: 153 40% 20%;--color-accent-gold-hsl: 32 68% 52%;--color-surface-base: #f4f4f0;--color-surface-elevated: rgba(255, 255, 255, .85);--color-surface-glass: rgba(255, 255, 255, .78);--color-surface-solid: #ffffff;--color-surface-muted: #ebe4da;--color-surface-hover: rgba(255, 255, 255, .95);--color-text-primary: #221d18;--color-text-secondary: #4a4540;--color-text-muted: #6e6258;--color-text-inverse: #ffffff;--color-border-light: rgba(34, 29, 24, .08);--color-border-medium: rgba(34, 29, 24, .15);--color-border-focus: hsl(var(--color-primary-hsl));--color-success-hsl: 145 58% 42%;--color-success-bg: rgba(46, 213, 115, .12);--color-warning-hsl: 38 85% 50%;--color-warning-bg: rgba(240, 165, 0, .12);--color-danger-hsl: 0 55% 54%;--color-danger-bg: rgba(201, 76, 76, .12);--color-owner-walt-hsl: 162 50% 32%;--color-owner-walt-bg: rgba(46, 139, 119, .12);--color-owner-mo-hsl: 282 39% 53%;--color-owner-mo-bg: rgba(155, 89, 182, .12);--color-income-hsl: 153 50% 20%;--color-income-bg: rgba(14, 41, 28, .1);--shadow-sm: 0 1px 2px rgba(44, 32, 20, .06);--shadow-md: 0 4px 6px -1px rgba(44, 32, 20, .1), 0 2px 4px -1px rgba(44, 32, 20, .06);--shadow-lg: 0 10px 15px -3px rgba(44, 32, 20, .12), 0 4px 6px -2px rgba(44, 32, 20, .08);--shadow-xl: 0 20px 25px -5px rgba(44, 32, 20, .12), 0 10px 10px -5px rgba(44, 32, 20, .06);--shadow-2xl: 0 25px 50px -12px rgba(44, 32, 20, .18);--shadow-glass: 0 8px 32px rgba(44, 32, 20, .12);--bg-gradient: radial-gradient(circle at top left, rgba(199, 156, 92, .08), transparent 40%), radial-gradient(circle at bottom right, rgba(14, 41, 28, .04), transparent 50%), linear-gradient(135deg, #f6f1e9, #ece7de 50%, #e7e3dc);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--blur-sm: blur(8px);--blur-md: blur(12px);--blur-lg: blur(20px);--blur-glass: blur(16px)}:root[data-theme=dark]{--color-primary-hsl: 153 42% 45%;--color-primary-dark-hsl: 153 42% 35%;--color-secondary-hsl: 153 30% 35%;--color-accent-gold-hsl: 35 70% 50%;--color-surface-base: #26282c;--color-surface-elevated: #3a3d44;--color-surface-glass: rgba(62, 65, 72, .95);--color-surface-solid: #44474f;--color-surface-muted: #4e525a;--color-surface-hover: #52565f;--color-text-primary: #edeef0;--color-text-secondary: #b8bbc2;--color-text-muted: #888b94;--color-text-inverse: #2d2f33;--color-border-light: rgba(255, 255, 255, .06);--color-border-medium: rgba(255, 255, 255, .12);--color-border-focus: hsl(var(--color-primary-hsl));--color-success-hsl: 152 50% 42%;--color-success-bg: rgba(64, 175, 125, .22);--color-warning-hsl: 40 90% 48%;--color-warning-bg: rgba(245, 166, 35, .22);--color-danger-hsl: 4 70% 55%;--color-danger-bg: rgba(220, 75, 70, .22);--color-owner-walt-hsl: 168 40% 38%;--color-owner-walt-bg: rgba(60, 160, 140, .18);--color-owner-mo-hsl: 280 40% 55%;--color-owner-mo-bg: rgba(160, 95, 200, .18);--color-income-hsl: 152 45% 40%;--color-income-bg: rgba(64, 175, 125, .15);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 3px 6px rgba(0, 0, 0, .22);--shadow-lg: 0 6px 14px rgba(0, 0, 0, .25);--shadow-xl: 0 12px 28px rgba(0, 0, 0, .3);--shadow-2xl: 0 20px 40px rgba(0, 0, 0, .35);--shadow-glass: 0 6px 24px rgba(0, 0, 0, .25);--bg-gradient: radial-gradient(ellipse at top left, rgba(80, 85, 95, .3), transparent 50%), radial-gradient(ellipse at bottom right, rgba(60, 140, 110, .08), transparent 50%), #2d2f33;--dark-theme-version: 3}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;min-height:100vh;background:var(--bg-gradient);background-attachment:fixed;color:var(--color-text-primary);font-family:var(--font-sans);font-size:16px;line-height:1.6}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-text-primary);margin:0}h1{font-size:clamp(1.5rem,4vw,2rem);letter-spacing:-.02em}h2{font-size:clamp(1.25rem,3vw,1.75rem);letter-spacing:-.015em}h3{font-size:1.25rem;letter-spacing:-.01em}h4{font-size:1.125rem}p{margin:0;color:var(--color-text-secondary)}strong{font-weight:600;color:var(--color-text-primary)}button,input,select,textarea{font:inherit;color:inherit;border:none;background:none}button{cursor:pointer;-webkit-user-select:none;user-select:none}button:disabled{cursor:not-allowed;opacity:.5}input:focus,select:focus,textarea:focus,button:focus{outline:none}.focus-ring:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.eyebrow{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.subtle{font-size:.875rem;color:var(--color-text-secondary)}.footnote{font-size:.8125rem;color:var(--color-text-muted);line-height:1.5}.mono{font-family:var(--font-mono);font-size:.875em}.screen-center,.login-shell{min-height:100vh;display:grid;place-items:center;padding:var(--space-lg)}.login-card{width:min(480px,100%);padding:var(--space-2xl);border-radius:var(--radius-2xl);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:var(--color-surface-glass);border:1px solid var(--color-border-light);box-shadow:var(--shadow-glass);display:grid;gap:var(--space-lg);animation:fadeInUp var(--transition-smooth) ease-out}.login-card h1{margin-top:var(--space-sm);background:linear-gradient(135deg,hsl(var(--color-primary-hsl)),hsl(var(--color-accent-gold-hsl)));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-error{background:hsl(var(--color-danger-hsl) / .12);border:1px solid hsl(var(--color-danger-hsl) / .3);color:hsl(var(--color-danger-hsl));padding:var(--space-md);border-radius:var(--radius-md);font-size:.875rem;text-align:center}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;gap:var(--space-lg);padding:var(--space-lg);width:100%;max-width:100%}@media (min-width: 1600px){.app-shell{padding:var(--space-lg) var(--space-2xl)}}@media (min-width: 2000px){.app-shell{padding:var(--space-xl) calc(var(--space-2xl) * 1.5)}}@media (max-width: 980px){.app-shell{grid-template-columns:1fr}}.sidebar{border-radius:var(--radius-2xl);padding:var(--space-xl);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:var(--color-surface-glass);border:1px solid var(--color-border-light);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:var(--space-xl);height:fit-content;position:sticky;top:var(--space-lg)}.brand-block{display:flex;gap:var(--space-md);align-items:center}.brand-mark{width:56px;height:56px;border-radius:var(--radius-lg);display:grid;place-items:center;background:linear-gradient(135deg,hsl(var(--color-primary-hsl)),hsl(var(--color-primary-dark-hsl)));color:var(--color-text-inverse);font-weight:800;font-size:1.25rem;box-shadow:var(--shadow-md)}.user-card{border-radius:var(--radius-lg);padding:var(--space-md);-webkit-backdrop-filter:var(--blur-sm);backdrop-filter:var(--blur-sm);background:var(--color-surface-elevated);border:1px solid var(--color-border-light);display:flex;gap:var(--space-md);align-items:center;transition:transform var(--transition-base),box-shadow var(--transition-base)}.user-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.avatar{width:44px;height:44px;border-radius:var(--radius-md);object-fit:cover;background:var(--color-surface-muted)}.avatar.placeholder{background:linear-gradient(135deg,var(--color-surface-muted),var(--color-border-medium))}.nav-list,.sidebar-actions{display:grid;gap:var(--space-sm)}.nav-section{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border-light)}.nav-section-label{font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-sm);padding-left:var(--space-sm)}.nav-list.secondary .nav-button{padding:.5rem 1rem;font-size:.875rem}.nav-button,.primary-button,.secondary-button{border:0;border-radius:var(--radius-lg);padding:.75rem 1.25rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden;text-align:left}.nav-button{text-transform:capitalize;background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border-light)}.nav-button:hover{background:var(--color-surface-elevated);color:var(--color-text-primary);transform:translate(4px);border-color:var(--color-border-medium)}.nav-button.active{background:linear-gradient(135deg,hsl(var(--color-primary-hsl)),hsl(var(--color-primary-dark-hsl)));color:var(--color-text-inverse);border-color:transparent;box-shadow:var(--shadow-md)}.primary-button{background:linear-gradient(135deg,hsl(var(--color-primary-hsl)),hsl(var(--color-primary-dark-hsl)));color:var(--color-text-inverse);box-shadow:var(--shadow-sm);border:none}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.primary-button:active:not(:disabled){transform:translateY(0)}.secondary-button{background:var(--color-surface-elevated);color:var(--color-text-primary);border:1px solid var(--color-border-light)}.secondary-button:hover:not(:disabled){background:var(--color-surface-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.secondary-button.active{background:hsl(var(--color-primary-hsl));color:#fff;border-color:hsl(var(--color-primary-hsl))}.secondary-button.active:hover{background:hsl(var(--color-primary-hsl) / .9)}.secondary-button.slim{padding:.5rem .875rem;font-size:.875rem}.main-panel{display:grid;gap:var(--space-lg);align-content:start}.hero{border-radius:var(--radius-2xl);padding:var(--space-2xl);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:var(--color-surface-glass);border:1px solid var(--color-border-light);box-shadow:var(--shadow-lg);display:flex;justify-content:space-between;gap:var(--space-lg);align-items:flex-start;flex-wrap:wrap}.hero h2{margin-top:var(--space-sm);max-width:780px;font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.1}.toolbar,.field-row,.panel-header{display:flex;gap:var(--space-md);align-items:center;justify-content:space-between;flex-wrap:wrap}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-md)}@media (min-width: 1400px){.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-lg)}}@media (min-width: 1800px){.card-grid{grid-template-columns:repeat(4,1fr);gap:var(--space-xl)}}.stat-card{border-radius:var(--radius-xl);padding:var(--space-xl);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:var(--color-surface-glass);border:1px solid var(--color-border-light);box-shadow:var(--shadow-md);transition:all var(--transition-base);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,hsl(var(--color-primary-hsl)),hsl(var(--color-accent-gold-hsl)));opacity:0;transition:opacity var(--transition-base)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-card:hover:before{opacity:1}.stat-label{color:var(--color-text-muted);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.stat-value{font-size:1.875rem;font-weight:700;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.panel{border-radius:var(--radius-2xl);padding:var(--space-xl);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:var(--color-surface-glass);border:1px solid var(--color-border-light);box-shadow:var(--shadow-md);overflow:auto}.controls-panel{display:grid;gap:var(--space-lg)}.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2xl)}@media (max-width: 980px){.two-column{grid-template-columns:1fr}}.bar-row{display:grid;grid-template-columns:200px 1fr 80px;gap:var(--space-md);align-items:center;padding:var(--space-md) 0;transition:background var(--transition-fast);border-radius:var(--radius-md);margin:0 calc(-1 * var(--space-sm));padding-left:var(--space-sm);padding-right:var(--space-sm)}@media (min-width: 1400px){.bar-row{grid-template-columns:260px 1fr 100px;gap:var(--space-lg)}}@media (min-width: 1800px){.bar-row{grid-template-columns:300px 1fr 120px}}.bar-row:hover{background:var(--color-surface-elevated)}.bar-track{background:var(--color-surface-muted);border-radius:var(--radius-full);height:12px;overflow:hidden;position:relative;box-shadow:inset 0 1px 2px #0000001a}.bar-fill{height:100%;border-radius:var(--radius-full);transition:width var(--transition-smooth),background var(--transition-base);position:relative;overflow:hidden}.bar-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.bar-fill.green{background:linear-gradient(90deg,hsl(var(--color-success-hsl)),#3bde77)}.bar-fill.yellow{background:linear-gradient(90deg,hsl(var(--color-warning-hsl)),#f7b23b)}.bar-fill.red{background:linear-gradient(90deg,hsl(var(--color-danger-hsl)),#f37272)}@media (max-width: 980px){.bar-row{grid-template-columns:1fr;gap:var(--space-sm)}}.table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;table-layout:auto}@media (min-width: 1400px){.table th,.table td{padding:var(--space-md) var(--space-md)}.table{font-size:.9375rem}}@media (min-width: 1800px){.table th,.table td{padding:var(--space-md) var(--space-lg)}.table{font-size:1rem}}.table th,.table td{padding:var(--space-md) var(--space-sm);border-bottom:1px solid var(--color-border-light);text-align:left;vertical-align:middle}.table th{color:var(--color-text-muted);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--color-surface-elevated);position:sticky;top:0;z-index:10}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--color-surface-elevated)}.table tbody tr:last-child td{border-bottom:none}.table input,.table select,.controls-panel input,.controls-panel select{width:100%;border-radius:var(--radius-md);padding:.625rem .875rem;border:1px solid var(--color-border-light);background:var(--color-surface-solid);color:var(--color-text-primary);transition:all var(--transition-base);font-size:.9375rem}.table input:focus,.table select:focus,.controls-panel input:focus,.controls-panel select:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px hsla(var(--color-primary-hsl),.1)}.table input:hover,.table select:hover,.controls-panel input:hover,.controls-panel select:hover{border-color:var(--color-border-medium)}.controls-panel label{display:grid;gap:var(--space-sm);font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.manage-table{table-layout:auto}.manage-table th,.manage-table td{white-space:nowrap}.manage-table input,.manage-table select{width:100%;min-width:0}.manage-table .col-last4 input,.manage-table .col-cvv input{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.875rem}.cvv-toggle{padding:.375rem .625rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-elevated);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0}.cvv-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium);color:var(--color-text-primary)}.column-picker{position:absolute;top:100%;right:0;margin-top:var(--space-sm);padding:var(--space-md);background:var(--color-surface-solid);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:100;min-width:160px;display:grid;gap:var(--space-sm)}.column-picker-item{display:flex;align-items:center;gap:var(--space-sm);font-size:.875rem;cursor:pointer;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);transition:background var(--transition-fast)}.column-picker-item:hover{background:var(--color-surface-hover)}.column-picker-item input[type=checkbox]{width:16px;height:16px;accent-color:hsl(var(--color-primary-hsl))}.pct-badge,.money-badge{display:inline-block;padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:700;white-space:nowrap;border:1px solid transparent}.pct-badge.green,.money-badge.green{background:#ebfaf1;color:#178244;border-color:#9fdfba}.pct-badge.yellow,.money-badge.yellow{background:#fff5d6;color:#915808;border-color:#edc95e}.pct-badge.red,.money-badge.red{background:#fde7e7;color:#ad1f1f;border-color:#e69999}[data-theme=dark] .pct-badge.green,[data-theme=dark] .money-badge.green{background:#133923;color:#52e08d;border-color:#2e6b47}[data-theme=dark] .pct-badge.yellow,[data-theme=dark] .money-badge.yellow{background:#3d320f;color:#f5c73d;border-color:#736026}[data-theme=dark] .pct-badge.red,[data-theme=dark] .money-badge.red{background:#451717;color:#ed5e5e;border-color:#7d3636}.secondary-button.slim.danger{color:hsl(var(--color-danger-hsl))}.secondary-button.slim.danger:hover{background:var(--color-danger-bg)}.pill{padding:.5rem 1rem;border-radius:var(--radius-full);background:var(--color-surface-elevated);border:1px solid var(--color-border-light);font-size:.875rem;font-weight:600;white-space:nowrap}.row-income{background:var(--color-income-bg);border-left:3px solid hsl(var(--color-income-hsl))}.row-low{background:var(--color-warning-bg);border-left:3px solid hsl(var(--color-warning-hsl))}.row-negative{background:var(--color-danger-bg);border-left:3px solid hsl(var(--color-danger-hsl))}.owner-walt{border-left:3px solid hsl(var(--color-owner-walt-hsl));background:var(--color-owner-walt-bg)}.owner-mo,.owner-monica{border-left:3px solid hsl(var(--color-owner-mo-hsl));background:var(--color-owner-mo-bg)}.view-toggle{display:flex;background:var(--color-surface-elevated);border-radius:var(--radius-lg);padding:4px;border:1px solid var(--color-border-light)}.toggle-btn{padding:.5rem 1rem;border:none;background:transparent;color:var(--color-text-secondary);font-weight:600;font-size:.875rem;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.toggle-btn:hover{color:var(--color-text-primary)}.toggle-btn.active{background:hsl(var(--color-primary-hsl));color:#fff;box-shadow:var(--shadow-sm)}.flip-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-lg)}.flip-card{perspective:1000px;height:220px;cursor:pointer}.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d;border-radius:var(--radius-xl)}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:var(--radius-xl);padding:var(--space-lg);display:flex;flex-direction:column;background:var(--color-surface-solid);border:1px solid var(--color-border-light);box-shadow:var(--shadow-md)}.flip-card-inner.owner-walt .flip-card-front,.flip-card-inner.owner-walt .flip-card-back{border-left:4px solid hsl(var(--color-owner-walt-hsl));background:linear-gradient(135deg,var(--color-owner-walt-bg),var(--color-surface-solid))}.flip-card-inner.owner-mo .flip-card-front,.flip-card-inner.owner-mo .flip-card-back{border-left:4px solid hsl(var(--color-owner-mo-hsl));background:linear-gradient(135deg,var(--color-owner-mo-bg),var(--color-surface-solid))}.flip-card-back{transform:rotateY(180deg)}.flip-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-sm)}.flip-card-header h4{margin:0;font-size:1.125rem;font-weight:700;color:var(--color-text-primary)}.flip-card-owner{font-size:.875rem;color:var(--color-text-muted);margin-bottom:var(--space-md)}.flip-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);flex:1}.flip-stat{text-align:center}.flip-stat-label{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:4px}.flip-stat-value{display:block;font-size:1rem;font-weight:700;color:var(--color-text-primary)}.flip-card-details{display:grid;gap:var(--space-md);flex:1}.flip-detail{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm)}.flip-detail-label{font-size:.8125rem;color:var(--color-text-muted)}.flip-detail-value{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.flip-detail-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);text-align:center;padding-top:var(--space-sm);border-top:1px solid var(--color-border-light)}.flip-detail-col{display:flex;flex-direction:column;gap:2px}.flip-detail-col .flip-detail-label{font-size:.625rem}.flip-detail-col .flip-detail-value{font-size:.8125rem}.flip-card-hint{font-size:.75rem;color:var(--color-text-muted);text-align:center;margin-top:auto;padding-top:var(--space-sm);opacity:.6}.flip-card:hover .flip-card-inner{box-shadow:var(--shadow-lg)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:var(--blur-sm);backdrop-filter:var(--blur-sm);display:grid;place-items:center;padding:var(--space-lg);z-index:1000;animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{width:min(560px,100%);border-radius:var(--radius-2xl);padding:var(--space-xl);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:var(--color-surface-glass);border:1px solid var(--color-border-light);box-shadow:var(--shadow-2xl);animation:modalSlideUp var(--transition-smooth) cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.snapshot-modal{width:min(400px,90%);border-radius:var(--radius-xl);padding:var(--space-xl);background:#fff;box-shadow:var(--shadow-2xl);animation:modalSlideUp var(--transition-smooth) cubic-bezier(.34,1.56,.64,1)}[data-theme=dark] .snapshot-modal{background:#1a1a1a}.snapshot-header{text-align:center;margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:2px solid hsl(var(--color-primary-hsl))}.snapshot-header h2{margin:0 0 var(--space-xs) 0;font-size:1.5rem;color:hsl(var(--color-primary-hsl))}.snapshot-date{font-size:.875rem;color:var(--color-text-muted)}.snapshot-list{display:grid;gap:var(--space-sm)}.snapshot-item{display:grid;grid-template-columns:1fr auto auto;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border-light);align-items:center}.snapshot-card-name{font-weight:600;color:var(--color-text-primary)}.snapshot-amount{font-weight:700;font-size:1.125rem;color:hsl(var(--color-success-hsl));text-align:right}.snapshot-owner{font-size:.8125rem;color:var(--color-text-muted);min-width:40px;text-align:right}.snapshot-total{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-md);padding-top:var(--space-md);border-top:2px solid var(--color-border-medium);font-size:1.25rem;font-weight:700}.snapshot-total span:last-child{color:hsl(var(--color-success-hsl))}.modal-form{display:grid;gap:var(--space-md);margin-top:var(--space-lg)}.modal-form input,.modal-form select{width:100%;border-radius:var(--radius-md);padding:.75rem 1rem;border:1px solid var(--color-border-light);background:var(--color-surface-solid);color:var(--color-text-primary);transition:all var(--transition-base);font-size:1rem}.modal-form input::placeholder{color:var(--color-text-muted)}.modal-form input:focus,.modal-form select:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px hsla(var(--color-primary-hsl),.1)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-md);margin-top:var(--space-xl)}.loading-skeleton{background:linear-gradient(90deg,var(--color-surface-muted) 25%,var(--color-surface-elevated) 50%,var(--color-surface-muted) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:var(--radius-md)}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}*{scrollbar-width:thin;scrollbar-color:var(--color-border-medium) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:var(--radius-full)}*::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@media (max-width: 640px){.hero,.panel,.stat-card{padding:var(--space-lg)}.sidebar{position:static}.card-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.table{font-size:.875rem}.table th,.table td{padding:var(--space-sm) var(--space-xs)}}@media print{.sidebar,.hero .toolbar,.panel-header button,.modal-backdrop{display:none!important}.app-shell{grid-template-columns:1fr}.panel,.stat-card{break-inside:avoid}}
