@import url("https://api.fontshare.com/v2/css?f[]=switzer@400,500,600,700&display=swap");:root{--app-font-family:Switzer,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;--font-family-sans:var(--app-font-family);--font-display:var(--app-font-family);--font-body:var(--app-font-family);--app-font-size-base:16px;--app-line-height-base:24px;--font-size-body:16px;--line-height-body:24px;--letter-spacing-body:0;--font-size-h1:28px;--lh-h1:36px;--ls-h1:-0.2px;--font-size-h2:16px;--lh-h2:24px;--ls-h2:-0.1px;--font-size-h3:18px;--lh-h3:28px;--ls-h3:0;--color-bg:#ffffff;--color-bg-surface:#ffffff;--color-bg-elevated:#fcfcfb;--color-text:#0b0f1a;--color-text-strong:#101828;--color-muted:#667085;--color-border:#EAECF0;--color-border-strong:#D0D5DD;--color-primary:#2563eb;--color-accent:#2563eb;--color-accent-warm:#F79009;--color-warning:#f39c12;--color-danger:#e74c3c;--color-success:#27ae60;--bs-primary:#2563eb;--bs-secondary:#7f8c8d;--bs-danger:#e74c3c;--bs-warning:#f39c12;--bs-info:#3498db;--bs-success:#27ae60;--bs-primary-rgb:37,99,235;--bs-secondary-rgb:127,140,141;--bs-danger-rgb:231,76,60;--bs-warning-rgb:243,156,18;--bs-success-rgb:39,174,96;--bs-info-rgb:52,152,219;--bs-secondary-color:#667085;--bs-border-color:#EAECF0;--app-text-muted:#475467;--app-heading:#101828;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--bs-border-radius:12px;--shadow-sm:0 1px 2px rgba(16,24,40,0.05);--shadow-md:0 2px 8px rgba(16,24,40,0.08);--shadow-lg:0 12px 24px rgba(16,24,40,0.10);--shadow-header:0 2px 8px rgba(16,24,40,0.06);--shadow-floating:0 8px 20px rgba(16,24,40,0.12);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--max-content-width:1480px;--sidebar-width:280px;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body,html{height:100%}body{margin:0;overflow:hidden;font-family:var(--app-font-family);font-size:var(--font-size-body);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);background:var(--color-bg);color:var(--color-text)}h1{font-size:3.2em;line-height:1.1}.date-input-wrapper{position:relative;width:100%}.date-input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#667085;pointer-events:none;z-index:10;font-size:16px}.date-input-field{padding-left:40px!important}.react-datepicker-popper{z-index:2000!important}#datepicker-portal-root{position:relative;z-index:2000}.app-datepicker-popper .react-datepicker__current-month{display:none}.app-datepicker-popper .react-datepicker__header{padding-top:12px;padding-bottom:10px}.app-datepicker-popper .react-datepicker__header__dropdown{display:flex;justify-content:center;gap:8px}.app-datepicker-popper .react-datepicker__month-select,.app-datepicker-popper .react-datepicker__year-select{background:transparent;border:none;font-weight:600;color:var(--app-heading,#101828);font-size:var(--font-size-h2);padding:0 6px;min-width:110px}.app-datepicker-popper .react-datepicker__year-select{min-width:90px}.currency-input-wrapper{position:relative;width:100%}.currency-input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#667085;pointer-events:none;z-index:10;font-size:16px;font-weight:400}.currency-input-field{padding-left:32px!important}.table-income-table col:first-child{width:22rem}.table-income-table .currency-input-wrapper{max-width:11rem;margin-left:auto}.table-children-table th:first-child{min-width:10rem}.table-children-table th:nth-child(2){width:11rem}.table-children-table th:nth-child(3){width:7rem}.table-children-table th:nth-child(4){width:11rem}.table-children-table th:nth-child(5){width:60px}.table-children-table .date-input-wrapper{max-width:10rem}.table-children-table .child-nights-input{max-width:6rem;margin-left:auto}.form-control{min-height:36px;border-radius:var(--radius-sm);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-body);font-size:.9375rem;letter-spacing:-.01em;transition:all .2s cubic-bezier(.4,0,.2,1)}.form-control,.form-control:focus{background:var(--color-bg-surface)}.form-control:focus{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary),#000 10%);border-color:var(--color-primary)}.form-control::placeholder{color:var(--color-muted);opacity:.6}.form-control.form-control-sm{min-height:31px;font-size:.875rem}.table{font-size:.9375rem;color:var(--color-text)}.table thead th{font-family:var(--font-body);font-weight:600;font-size:.8125rem;letter-spacing:.02em;text-transform:uppercase;color:var(--color-muted);border-bottom:2px solid var(--color-border)}.table tbody td,.table thead th{padding:var(--space-2) var(--space-2)}.table tbody td{vertical-align:middle;border-bottom:1px solid var(--color-border);letter-spacing:-.01em}.table.table-sm tbody td,.table.table-sm thead th{padding:var(--space-1) var(--space-2)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:rgba(37,99,235,.02)}.btn{font-family:var(--font-body);font-weight:600;letter-spacing:-.01em;transition:all .2s cubic-bezier(.4,0,.2,1);border-radius:var(--radius-sm);padding:.5rem 1rem}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:white}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary),#000 10%);border-color:color-mix(in srgb,var(--color-primary),#000 10%);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline-primary{color:var(--color-primary);border-color:var(--color-primary);background:transparent}.btn-outline-primary:hover:not(:disabled){background:var(--color-primary);color:white}.btn-outline-secondary{color:var(--color-muted);border-color:var(--color-border-strong);background:transparent}.btn-outline-secondary:hover:not(:disabled){background:var(--color-text);border-color:var(--color-text);color:white}.scenario-tab{cursor:pointer;padding:8px 14px;border-left:3px solid transparent;transition:all .15s ease;position:relative;background:transparent}.scenario-tab:hover{background:rgba(37,99,235,.04);border-left-color:rgba(37,99,235,.2)}.scenario-tab.active{border-left-color:var(--color-primary);background:rgba(37,99,235,.08)}.scenario-tab.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-primary);box-shadow:0 0 8px rgba(37,99,235,.3)}.app-sections-container{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.app-section-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);cursor:default;-webkit-user-select:none;user-select:none}.app-sections-container>*+*>.app-section-header{border-top:1px solid var(--color-border)}.app-section-header.collapsible{cursor:pointer}.app-section-header.collapsible:hover{background:rgba(37,99,235,.02)}.app-section-title{font-size:.9375rem;font-weight:600;color:var(--app-heading);letter-spacing:-.01em;margin:0;font-family:var(--font-display)}.app-section-body{padding:var(--space-3) var(--space-4)}.app-max-width{max-width:var(--max-content-width)}.app-sidebar{width:var(--sidebar-width);flex-shrink:0;background:var(--color-bg-surface);border-right:1px solid var(--color-border)}.app-footer-bar{border-top:1px solid var(--color-border-strong);padding:var(--space-3) var(--space-6);padding-right:calc(var(--space-6) + max(0px, (100vw - var(--max-content-width)) / 2));width:calc(100% + max(0px, (100vw - var(--max-content-width)) / 2));background-color:var(--color-bg-surface);box-shadow:0 -4px 16px rgba(16,24,40,.06);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-content-padding{padding:var(--space-2) var(--space-6)}.app-content-scroll{width:calc(100% + max(0px, (100vw - var(--max-content-width)) / 2));padding-right:calc(var(--space-6) + max(0px, (100vw - var(--max-content-width)) / 2))}.comparison-section-header{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);padding-top:14px;padding-bottom:6px;border-bottom:1px solid var(--color-border)}.min-w-0{min-width:0!important}.min-h-0{min-height:0!important}.income-tooltip{position:relative;display:inline-flex;align-items:center}.income-tooltip-text{display:none;position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);background:#101828;color:#fff;font-size:.75rem;line-height:1.4;padding:7px 10px;border-radius:6px;white-space:normal;width:220px;z-index:1050;box-shadow:0 4px 12px rgba(0,0,0,.18);pointer-events:none;font-weight:400}.income-tooltip:hover .income-tooltip-text{display:block}.info-tooltip{position:relative;display:inline-flex;align-items:center}.info-tooltip-text{background:#101828;color:#fff;font-size:.75rem;line-height:1.4;padding:7px 10px;border-radius:6px;white-space:pre-line;width:220px;z-index:9999;box-shadow:0 4px 12px rgba(0,0,0,.18);pointer-events:none;font-weight:400}.info-tooltip-text--wide{width:400px}.app-viewport-root{height:100%;min-height:100vh;min-height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}.btn-compare{padding:12px 28px;font-size:.95rem;font-weight:600;box-shadow:var(--shadow-md);transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-compare:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-floating)}.section-empty-state{min-height:140px}.section-empty-state__bg{position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,235,.07) 1px,transparent 0),linear-gradient(90deg,rgba(37,99,235,.07) 1px,transparent 0);background-size:24px 24px;mask-image:radial-gradient(ellipse 65% 85% at 50% 50%,rgba(0,0,0,.6) 0,transparent 72%);-webkit-mask-image:radial-gradient(ellipse 65% 85% at 50% 50%,rgba(0,0,0,.6) 0,transparent 72%);pointer-events:none}.section-empty-state__icon{position:relative;width:48px;height:48px;flex-shrink:0}.section-empty-state__icon-bg{position:absolute;width:40px;height:40px;background:var(--color-primary);border-radius:var(--radius-md);transform:rotate(15deg);top:-8px;left:1px}.section-empty-state__icon-glass{position:absolute;width:40px;height:40px;background:rgba(255,255,255,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:.75px solid rgba(255,255,255,.6);border-radius:var(--radius-md);top:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--color-primary);font-size:1rem}