:root{--fl-field-bg: var(--color-bg-secondary);--fl-field-border: #cbd5e1;--fl-error: #b91c1c;--fl-error-bg: rgba(239, 68, 68, .08);--fl-warn: #92400e;--fl-warn-bg: rgba(245, 158, 11, .12);--fl-strong: var(--color-primary-dark)}[data-theme=dark]{--fl-field-border: rgba(255, 255, 255, .14);--fl-error: #fca5a5;--fl-error-bg: rgba(239, 68, 68, .12);--fl-warn: #fcd34d;--fl-warn-bg: rgba(245, 158, 11, .12);--fl-strong: var(--color-primary-light)}.fl-tool [hidden]{display:none!important}.fl-tool-heading{display:flex;align-items:center;gap:8px;margin:0 0 var(--space-lg)}.fl-guide>:first-child{margin-top:0}.fl-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}.fl-stack{display:flex;flex-direction:column;gap:var(--space-lg);min-width:0}.fl-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-md)}.fl-step{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-sm)}.fl-field{display:flex;flex-direction:column;gap:6px;min-width:0}.fl-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.fl-hint{font-size:var(--font-size-xs);color:var(--color-text-tertiary);line-height:1.5}.fl-input,.fl-select,.fl-textarea{width:100%;min-width:0;min-height:46px;padding:10px 14px;background:var(--fl-field-bg);border:1px solid var(--fl-field-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-base);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}[data-theme=dark] .fl-input,[data-theme=dark] .fl-select,[data-theme=dark] .fl-textarea{color-scheme:dark}.fl-textarea{min-height:280px;resize:vertical;line-height:1.8}.fl-select{cursor:pointer}.fl-input:focus,.fl-select:focus,.fl-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #05966926}.fl-input[aria-invalid=true]{border-color:var(--fl-error);background:var(--fl-error-bg)}.fl-input-wrap{position:relative;display:flex;align-items:center}.fl-input-wrap .fl-input{padding-right:48px}.fl-suffix{position:absolute;right:14px;font-size:var(--font-size-sm);color:var(--color-text-tertiary);pointer-events:none}.fl-inline{display:flex;gap:var(--space-sm)}.fl-inline>*{flex:1;min-width:0}.fl-check{display:flex;gap:var(--space-sm);align-items:flex-start;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6}.fl-check input{width:18px;height:18px;margin-top:3px;accent-color:var(--color-primary);flex-shrink:0}.fl-check strong{color:var(--color-text)}.fl-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.fl-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 var(--space-md);border:1px solid var(--fl-field-border);border-radius:var(--radius-md);background:var(--fl-field-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.fl-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.fl-btn-remove{min-height:46px;padding:0 12px;color:var(--color-text-tertiary)}.fl-btn-remove:hover{border-color:var(--fl-error);color:var(--fl-error)}.fl-toggle{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.fl-toggle button{min-height:38px;padding:0 var(--space-md);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer}.fl-toggle button[aria-selected=true],.fl-toggle button[aria-pressed=true]{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm)}.fl-results{padding:clamp(1rem,3vw,2rem);background:var(--gradient-subtle);border:1px solid rgba(5,150,105,.15);border-radius:var(--radius-xl);min-width:0}.fl-results-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin:0 0 var(--space-md)}.fl-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-md)}.fl-stat-label{display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-tertiary)}.fl-stat-value{display:block;margin-top:2px;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--fl-strong);line-height:1.3;overflow-wrap:anywhere}.fl-stat-sub{display:block;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.fl-message{margin:0;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:1.6}.fl-error{background:var(--fl-error-bg);color:var(--fl-error)}.fl-warn{background:var(--fl-warn-bg);color:var(--fl-warn)}.fl-note{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.7;margin:0}.fl-muted{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.fl-approx{font-size:var(--font-size-xs);color:var(--fl-warn);white-space:nowrap}.fl-table-wrap{width:100%;overflow-x:auto}.fl-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.fl-table th,.fl-table td{padding:10px 8px;text-align:left;border-bottom:1px solid var(--color-border);vertical-align:middle}.fl-table th{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-tertiary)}.fl-table .fl-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.fl-table tr.fl-highlight td{color:var(--fl-strong);font-weight:var(--font-weight-semibold)}.fl-rows{display:flex;flex-direction:column}.fl-row{display:grid;gap:var(--space-sm) var(--space-md);align-items:end;padding:var(--space-md) 0;border-bottom:1px solid var(--color-border)}.fl-row:first-child{padding-top:0}.fl-row-result{grid-column:1 / -1;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.fl-row-result strong{color:var(--fl-strong)}.fl-row-result.is-error{color:var(--fl-error)}.fl-tool .primary-btn-cta{white-space:normal}@media(max-width:760px){.fl-columns{grid-template-columns:minmax(0,1fr)}}@media print{.nav,.footer,.hero,.prev-next-nav,.mapple-faqs,.fl-actions,.fl-no-print,main>section:not(.fl-tool){display:none!important}}
