:root,:root.dark{color-scheme:dark;--bg-primary: #0b1120;--bg-surface: #1e293b;--bg-surface-hover: #273549;--bg-card: #1e293b;--bg-card-subtle: rgba(255, 255, 255, .03);--bg-elevated: #283347;--bg-header: rgba(11, 17, 32, .85);--bg-drawer: #111827;--bg-overlay: rgba(0, 0, 0, .7);--bg-modal: #1e293b;--bg-input: #0f172a;--bg-input-focus: #172236;--bg-badge: rgba(255, 255, 255, .08);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--text-inverse: #0b1120;--border-color: rgba(255, 255, 255, .1);--border-subtle: rgba(255, 255, 255, .05);--border-focus: #10b981;--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px -1px rgba(0, 0, 0, .35), 0 2px 4px -2px rgba(0, 0, 0, .25);--shadow-lg: 0 10px 20px -3px rgba(0, 0, 0, .45), 0 4px 6px -4px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 30px -5px rgba(0, 0, 0, .55);--shadow-fab: 0 8px 24px -4px rgba(16, 185, 129, .45), 0 4px 12px 0 rgba(0, 0, 0, .3)}:root.light{color-scheme:light;--bg-primary: #f8fafc;--bg-surface: #ffffff;--bg-surface-hover: #f1f5f9;--bg-card: #ffffff;--bg-card-subtle: rgba(0, 0, 0, .02);--bg-elevated: #ffffff;--bg-header: rgba(255, 255, 255, .85);--bg-drawer: #ffffff;--bg-overlay: rgba(15, 23, 42, .5);--bg-modal: #ffffff;--bg-input: #f1f5f9;--bg-input-focus: #ffffff;--bg-badge: rgba(0, 0, 0, .06);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-inverse: #ffffff;--border-color: rgba(0, 0, 0, .08);--border-subtle: rgba(0, 0, 0, .04);--border-focus: #10b981;--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .06), 0 1px 2px 0 rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .08), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .06);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .12);--shadow-fab: 0 8px 20px -4px rgba(16, 185, 129, .4), 0 4px 10px 0 rgba(0, 0, 0, .1)}:root{--color-primary: #10b981;--color-primary-hover: #059669;--color-primary-rgb: 16, 185, 129;--color-primary-subtle: rgba(16, 185, 129, .15);--color-primary-text: #ffffff;--color-secondary: #06b6d4;--color-secondary-hover: #0891b2;--color-accent: #8b5cf6;--color-accent-hover: #7c3aed;--color-success: #10b981;--color-success-bg: rgba(16, 185, 129, .15);--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .15);--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-bg: rgba(239, 68, 68, .15);--color-info: #3b82f6;--color-info-bg: rgba(59, 130, 246, .15);--gradient-savings: linear-gradient(135deg, #10b981 0%, #06b6d4 50%, #3b82f6 100%);--gradient-savings-subtle: linear-gradient(135deg, rgba(16, 185, 129, .2) 0%, rgba(6, 182, 212, .15) 100%);--gradient-primary: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-accent: linear-gradient(135deg, #8b5cf6 0%, #6366f1 100%);--gradient-header: linear-gradient(180deg, rgba(16, 185, 129, .08) 0%, transparent 100%);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 28px;--radius-full: 9999px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .35s cubic-bezier(.4, 0, .2, 1);--header-height: 56px;--container-max-width: 680px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{height:100%;width:100%}html{font-size:16px;scroll-behavior:smooth;font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow-x:hidden;display:flex;flex-direction:column}dialog:modal{overscroll-behavior:contain}dialog::backdrop{overflow:hidden;overscroll-behavior:contain}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}button{font-family:inherit;font-size:1rem;border:none;background:none;cursor:pointer;color:inherit;outline:none;transition:transform var(--transition-fast),background-color var(--transition-fast),opacity var(--transition-fast)}button:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}button:active{transform:scale(.97)}.pmt-container{width:100%;max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.pmt-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),transform var(--transition-fast),border-color var(--transition-base)}.pmt-card:hover{border-color:#10b9814d;box-shadow:var(--shadow-md)}.pmt-savings-bar{width:100%;height:18px;background-color:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-full);overflow:hidden;position:relative;box-shadow:inset 0 2px 4px #0003}.pmt-savings-fill{height:100%;background:var(--gradient-savings);border-radius:var(--radius-full);transition:width var(--transition-smooth);position:relative}.pmt-savings-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#fff3,#fff0);animation:pmt-shimmer 2.5s infinite}@keyframes pmt-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.pmt-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);background-color:var(--bg-badge);color:var(--text-secondary)}.pmt-badge-success{background-color:var(--color-success-bg);color:var(--color-success)}
