.calc{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:24px;display:grid}.calc-result{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0;display:grid}@media (width>=860px){.calc{grid-template-columns:320px minmax(0,1fr);align-items:start}.calc-form{position:sticky;top:16px}}.field{margin-bottom:16px}.field label{margin-bottom:6px;font-size:.9rem;font-weight:600;display:block}.input-unit{background:var(--page);border:1px solid var(--axis);border-radius:8px;align-items:center;display:flex}.input-unit:focus-within{outline:2px solid var(--link);outline-offset:1px}.input-unit input{min-width:0;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;flex:1;padding:10px 12px}.input-unit span{color:var(--ink-2);padding:0 12px 0 4px;font-size:.9rem}.input-unit .unit-lead{padding:0 0 0 12px}.input-unit .unit-lead+input{padding-left:6px}.input-unit:has([aria-invalid=true]){border-color:#d03b3b}.field select{width:100%;font:inherit;color:var(--ink);background:var(--page);border:1px solid var(--axis);border-radius:8px;padding:10px 12px}.field-error{color:#d03b3b;margin:6px 0 0;font-size:.85rem}.field-hint{color:var(--ink-2);margin:6px 0 0;font-size:.85rem}@media (prefers-color-scheme:dark){.field-error{color:#e66767}}.calc-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.btn{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--axis);cursor:pointer;border-radius:8px;padding:8px 14px;font-size:.9rem}.btn:hover{background:var(--surface-2)}.hero-label{color:var(--ink-2);margin:0;font-size:.95rem}.hero-value{overflow-wrap:anywhere;margin:0;font-size:clamp(2.25rem,9vw,3.25rem);font-weight:650;line-height:1.15}.hero-note{color:var(--ink-2);margin:8px 0 0;font-size:.95rem}.tiles{border-top:1px solid var(--grid);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;padding-top:16px;display:grid}.tile-label{color:var(--ink-2);align-items:center;gap:6px;margin:0;font-size:.875rem;display:flex}.tile-value{overflow-wrap:anywhere;margin:0;font-size:1.25rem;font-weight:600}.swatch{border-radius:2px;flex:none;width:10px;height:10px;display:inline-block}.swatch-1{background:var(--series-1)}.swatch-2{background:var(--series-2)}.chart-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin-bottom:8px;display:flex}.chart-head h2{margin:0;font-size:1rem}.chart-legend{color:var(--ink-2);gap:16px;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.chart-legend li{align-items:center;gap:6px;display:flex}.chart{position:relative}.chart-svg{border-radius:4px;display:block}.chart-grid{stroke:var(--grid);stroke-width:1px}.chart-axis{stroke:var(--axis);stroke-width:1px}.chart-tick{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.chart-end-label{fill:var(--ink);font-size:12px;font-weight:600}.chart-s1{fill:var(--series-1)}.chart-s2{fill:var(--series-2)}.chart-wash{fill:var(--surface-2)}.chart-tip{z-index:1;pointer-events:none;background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:168px;padding:10px 12px;font-size:13px;line-height:1.5;position:absolute;box-shadow:0 4px 16px #0000001f}.chart-tip[hidden]{display:none}.tip-title{color:var(--ink-2);margin:0}.tip-total{margin:0 0 6px;font-size:16px;font-weight:650}.tip-row{align-items:center;gap:8px;margin:0;display:flex}.tip-row strong{font-variant-numeric:tabular-nums;font-weight:600}.tip-row span:last-child{color:var(--ink-2);margin-left:auto;padding-left:12px}.tip-key{border-radius:1px;flex:none;width:12px;height:2px}.tip-key-1{background:var(--series-1)}.tip-key-2{background:var(--series-2)}.table-wrap{margin-top:12px;overflow-x:auto}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.925rem}.data-table th,.data-table td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--grid);padding:8px 12px}.data-table th:first-child,.data-table td:first-child{text-align:left}.data-table thead th{color:var(--ink-2);border-bottom-color:var(--axis);font-size:.85rem;font-weight:600}.data-table tbody tr:last-child td{border-bottom:0;font-weight:600}.faq h3{margin-top:1.4em}@media (width<=480px){.data-table{font-size:.85rem}.data-table th,.data-table td{padding:8px 5px}}
