.tbb-root{min-width:0}.tbb-root .tk-result-label{align-items:center;display:flex;font-size:15px;font-weight:600;gap:6px;justify-content:center;line-height:1.3}.tbb-root .tk-result-value{font-size:clamp(40px,12vw,64px);font-variant-numeric:tabular-nums;line-height:1.05}.tbb-root .tk-hint,.tbb-root .tk-msg{font-size:13px;line-height:1.45}.tbb-root p.tk-label,.tbb-root span.tk-label{font-size:14px;line-height:1.3}.tbb-inputs{gap:20px;margin:0 auto;max-width:480px}.tbb-fields,.tbb-inputs{display:grid;min-width:0}.tbb-fields{gap:18px 16px;grid-template-columns:minmax(0,1fr)}.tbb-inputs .tk-input{font-size:20px;font-variant-numeric:tabular-nums;min-height:52px}.tbb-inputs .tk-seg-btn{min-height:48px}.tbb-page .tbb-more,.tbb-page .tbb-more .tk-acc-body{border:0}.tbb-more .tk-acc-summary{gap:6px;justify-content:center;min-height:44px;padding:4px 12px}.tbb-more .tk-acc-title{color:var(--tk-green);font-size:15px;font-weight:600}.tbb-more .tk-acc-chevron{color:var(--tk-green)}.tbb-more .tk-acc-inner{margin:0 -6px;padding:8px 6px 6px}.tbb-more-body{display:grid;gap:18px;min-width:0}.tbb-estimate{border-top:1px solid var(--tk-line);display:grid;gap:14px;min-width:0;padding-top:14px}.tbb-page .tbb-estimate-label{margin:0}.tbb-borrower{min-width:0}.tbb-result{display:grid;gap:12px;min-width:0;transition-duration:var(--tk-base);transition-property:opacity;transition-timing-function:var(--tk-ease)}.tbb-result.is-stale{opacity:.55}.tbb-stats .tk-stat-value{font-variant-numeric:tabular-nums;white-space:nowrap}.tbb-page .tbb-sentence{color:var(--tk-copy);font-size:15px;line-height:1.45;margin:0 auto;max-width:52ch;text-align:center}.tbb-about{display:grid;gap:8px}.tbb-about-note{display:block}.tbb-badge{background:var(--tk-gold-wash);border-radius:999px;box-shadow:inset 0 0 0 1px var(--tk-gold);color:var(--tk-gold-deep);display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.02em;margin-right:4px;padding:1px 8px}.tbb-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.tbb-bar{margin:0 auto;max-width:460px;min-width:0;width:100%}.tbb-bar,.tbb-bar-plot{position:relative}.tbb-bar-svg{display:block;height:44px;overflow:visible;width:100%}.tbb-seg--counted .tbb-slot{fill:var(--tk-green)}.tbb-seg--bought .tbb-slot{fill:var(--tk-gold)}.tbb-seg--missing .tbb-slot{fill:none;stroke:var(--tk-muted);stroke-width:1;vector-effect:non-scaling-stroke}.tbb-seg{transform-box:fill-box;transform-origin:0 50%}.tbb-bar--armed .tbb-seg{opacity:0;transform:scaleX(0)}.tbb-bar--armed .tbb-ends,.tbb-bar--armed .tbb-legend{opacity:0}.tbb-bar--in .tbb-seg{animation:tbb-grow var(--tk-draw) var(--tk-ease) calc(var(--tbb-i, 0)*.22s) backwards}.tbb-bar--in .tbb-ends,.tbb-bar--in .tbb-legend{animation:tbb-fade var(--tk-base) var(--tk-ease) .7s backwards}@keyframes tbb-grow{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes tbb-fade{0%{opacity:0}to{opacity:1}}.tbb-page .tbb-ends{color:var(--tk-muted);display:flex;font-size:12px;font-variant-numeric:tabular-nums;font-weight:700;justify-content:space-between;line-height:1.3;margin:2px 0 0}.tbb-legend{display:flex;flex-wrap:wrap;gap:4px 16px;justify-content:center;list-style:none;margin:8px 0 0;padding:0}.tbb-key{align-items:baseline;color:var(--tk-copy);display:inline-flex;font-size:12.5px;gap:6px;line-height:1.4}.tbb-key-count{color:var(--tk-ink);font-variant-numeric:tabular-nums;font-weight:800}.tbb-swatch{align-self:center;border-radius:3px;box-sizing:border-box;flex:0 0 auto;height:12px;width:12px}.tbb-swatch--counted{background:var(--tk-green)}.tbb-swatch--bought{background:var(--tk-gold)}.tbb-swatch--missing{background:transparent;border:1.5px solid var(--tk-muted)}.tbb-how{display:grid;gap:14px;max-width:820px}.tbb-how p{margin:0}.tbb-page .tbb-formula{background:var(--tk-mint-wash);border-radius:var(--tk-radius-sm);color:var(--tk-ink);font-weight:700;padding:12px 16px}.tbb-page .tbb-formula--plan{font-size:15px;font-weight:600;line-height:1.5}.tbb-steps{display:grid;gap:8px;margin:0;padding-left:22px}.tbb-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--tk-radius-sm);box-shadow:0 0 0 1px var(--tk-line)}.tbb-table{border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums;width:100%}.tbb-table caption{color:var(--tk-ink);font-size:14px;font-weight:700;line-height:1.4;padding:12px 12px 8px;text-align:left}.tbb-table td,.tbb-table th{border-top:1px solid var(--tk-line);padding:10px 12px;text-align:right;white-space:nowrap}.tbb-table thead th{background:var(--tk-bg-soft);color:var(--tk-muted);font-size:13px}.tbb-table td:first-child,.tbb-table th:first-child{text-align:left}.tbb-table tbody th{color:var(--tk-ink);font-weight:700}.tbb-table-wrap:focus-visible{outline:3px solid var(--tk-green);outline-offset:2px}.tbb-explainers{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}.tbb-explainer{background:var(--tk-bg-soft);border-radius:16px;min-width:0;padding:20px}.tbb-explainer h3{color:var(--tk-ink);font-size:17px;font-weight:800;line-height:1.3;margin:0 0 8px}.tbb-explainer p{font-size:15px;line-height:1.55;margin:0}.tbb-page .tbb-faq .faq-title{color:var(--tk-ink);font-size:clamp(22px,3.4vw,28px);margin:0 0 8px;max-width:none;padding:0;text-align:left;width:100%}.tbb-page .tbb-faq .faq-item{margin:0;max-width:820px;width:100%}.tbb-page .tbb-faq .faq-answer{font-size:16px;font-weight:400;line-height:1.55}.tbb-page .tbb-faq .faq-answer-container-visible{max-height:1600px}@media (min-width:561px){.tbb-inputs{max-width:560px}.tbb-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.tbb-explainer{padding:16px}.tbb-actions .tk-btn:not(.tk-btn--icon){flex:1 1 0;padding-left:12px;padding-right:12px}.tbb-stats .tk-stat{padding:10px 4px}.tbb-stats .tk-stat-value{font-size:14px;letter-spacing:-.01em}}@media (max-width:400px){.tbb-stats .tk-stat-value{font-size:13px}}@media print{.tbb-actions{display:none!important}.tbb-result.is-stale{opacity:1}.tbb-stats .tk-stat{background:#fff;box-shadow:inset 0 0 0 1px #888}.tbb-seg--counted .tbb-slot{fill:#555}.tbb-seg--bought .tbb-slot{fill:#aaa}.tbb-seg--missing .tbb-slot{stroke:#000}.tbb-swatch--counted{background:#555}.tbb-swatch--bought{background:#aaa}.tbb-swatch--missing{border-color:#000}}@media (prefers-reduced-motion:reduce){.tbb-result{transition:none}.tbb-bar--armed .tbb-seg,.tbb-bar--in .tbb-seg{animation:none;opacity:1;transform:none}.tbb-bar--armed .tbb-ends,.tbb-bar--armed .tbb-legend{opacity:1}.tbb-bar--in .tbb-ends,.tbb-bar--in .tbb-legend{animation:none}}