/* Task-specific compositions; controls stay adjacent to their subject. */
.task-tool .task-composition {min-width:0}
.task-tool section {min-width:0}
.task-tool .task-inputs>h2,.task-tool .task-answer>h2 {font-size:1.15rem;margin:0 0 20px}
.task-tool .task-answer {background:var(--soft,#f2f4f2);padding:24px}
.task-tool .task-actions {display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.task-tool [hidden] {display:none!important}
.task-tool .task-actions:empty {display:none}
.task-tool .grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.task-tool .stat {box-shadow:none;min-width:0}
.task-tool .stats {gap:16px}
.task-tool .stat b {font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.task-tool .task-inputs .row {gap:12px}
.task-tool .task-inputs .grid {margin-bottom:20px}
.task-tool .task-composition .big-num {font-size:clamp(1.7rem,3vw,2.6rem);overflow-wrap:anywhere}
.task-tool .task-answer>.out>.result {background:none;padding:0;margin:0 0 24px}
.task-tool .task-answer .stats {grid-template-columns:repeat(2,minmax(0,1fr))}
.task-tool .task-answer table {font-variant-numeric:tabular-nums}
.task-tool button:focus-visible,.task-tool [role=button]:focus-visible {outline:3px solid currentColor;outline-offset:3px}
.task-tool input,.task-tool select,.task-tool button {min-height:44px}
.task-tool .task-note {margin:12px 0;font-size:.9rem}
.task-tool .table-wrap {max-width:100%;overflow-x:auto}
@media(max-width:760px){.task-tool .task-composition {display:block!important}.task-tool .task-inputs {margin-bottom:24px}.task-tool .task-answer {padding:18px}.task-tool .task-answer .stats {grid-template-columns:repeat(2,minmax(0,1fr))}.task-tool .task-composition .grid {grid-template-columns:repeat(2,minmax(0,1fr))}.task-tool .task-actions .btn {flex:1 1 auto}.task-tool .task-answer .big-num {font-size:1.8rem}}
@media(max-width:430px){.task-tool .task-composition .grid {grid-template-columns:1fr}.task-tool .task-answer .stats {grid-template-columns:1fr 1fr}.task-tool .task-answer .stat b{font-size:1.2rem}}
 .task-layout-bill,.task-layout-growth,.task-layout-earnings {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:32px;align-items:start}
.task-layout-receipt {display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:start}.task-layout-receipt .task-answer .stats{display:flex;flex-direction:column}.task-layout-receipt .stat{display:flex;justify-content:space-between;align-items:center;flex-direction:row-reverse;gap:18px}.task-layout-receipt .stat:last-child{border-top:2px solid currentColor;padding-top:20px}
.task-layout-sale {display:grid;grid-template-columns:1fr .85fr;gap:48px;align-items:start}.task-layout-sale .task-answer{background:var(--fg);color:var(--bg)}.task-layout-sale .muted{color:inherit;opacity:.8}
.task-layout-pay .task-inputs {margin-bottom:28px}.task-layout-pay .task-answer .stats {grid-template-columns:repeat(3,minmax(0,1fr))}
.task-layout-questions{max-width:800px;margin:auto}.percentage-questions{margin-bottom:24px}.task-layout-questions .result{padding:24px}.task-layout-questions h3{line-height:2.7}.task-layout-questions h3 input{margin:0 6px;max-width:42%}
.task-layout-bill [data-tip]{flex:1}.task-layout-growth details{margin-top:24px}.growth-bars{display:flex;align-items:end;gap:8px;height:140px;padding-top:20px}.growth-bars div{flex:1;background:var(--fg);min-height:2px}.growth-bars+p{display:flex;justify-content:space-between}
.task-layout-sale .task-answer {--accent:var(--bg);--muted:var(--bg)}
.task-layout-sale .task-answer .stat span,.task-layout-sale .task-answer .btn {color:inherit}
.task-layout-sale .task-answer .stat {border-color:color-mix(in srgb,var(--bg) 30%,transparent)}
.task-layout-sale .stats>.stat:last-child:nth-child(odd) {grid-column:1/-1}

/* Premium planning tools: one additional question, revealed where it belongs. */
.task-tool {--planning-ink:var(--fg);--planning-soft:color-mix(in srgb,var(--fg) 5%,var(--bg));--planning-line:color-mix(in srgb,var(--fg) 14%,var(--bg))}
.task-tool .task-inputs>h2,.task-tool .task-answer>h2 {font-size:1.1rem;font-weight:650;letter-spacing:-.015em}
.task-tool .task-answer {background:var(--bg);border:1px solid var(--planning-line);border-radius:20px;padding:26px}
.task-tool .task-answer .result,.task-tool .task-answer .stat {box-shadow:none}
.task-tool .task-answer .stats>.stat {background:none;border:0;padding:10px 0}
.task-tool .task-composition .big-num {color:var(--fg);font-weight:650;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.task-tool .task-answer .stat b {color:var(--fg);font-weight:650;font-variant-numeric:tabular-nums}
.task-tool .premium-feature {grid-column:1/-1;min-width:0;margin-top:28px;padding:0;background:var(--bg);border:1px solid var(--planning-line);border-radius:20px;overflow:hidden}
.task-tool section.premium-feature {padding:26px}
.task-tool section.premium-feature>h2 {font-size:1.25rem;margin:0 0 10px;letter-spacing:-.025em}
.task-tool .premium-feature>summary {font-size:1.05rem;font-weight:650;padding:20px 24px;min-height:44px;cursor:pointer;background:var(--planning-soft)}
.task-tool details.premium-feature[open]>summary {background:var(--bg)}
.task-tool details.premium-feature .premium-body {padding:0 24px 24px}
.task-tool .premium-note {max-width:76ch;font-size:.94rem;color:var(--muted);margin:0 0 20px}
.task-tool .premium-fields {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 22px;align-items:end}
.task-tool .premium-fields:empty {display:none}
.task-tool .premium-wide {grid-column:1/-1}
.task-tool .premium-fields label {font-weight:550;font-size:.88rem;margin-bottom:8px}
.task-tool .premium-fields input,.task-tool .premium-fields select,.task-tool .premium-fields textarea {border-radius:8px;background:var(--bg);font-variant-numeric:tabular-nums}
.task-tool .premium-fields textarea {line-height:1.65;font-family:inherit;min-height:124px}
.task-tool .premium-result {min-width:0}
.task-tool .premium-result .table-wrap {margin:18px 0}
.task-tool .premium-result table {font-size:.9rem;font-variant-numeric:tabular-nums;width:100%}
.task-tool .premium-result table th {text-transform:none;letter-spacing:0;background:none;color:var(--muted);font-weight:500}
.task-tool .premium-result table td {padding-top:15px;padding-bottom:15px}
.task-tool .premium-result table td:not(:first-child),.task-tool .premium-result table th:not(:first-child) {text-align:right}
.task-tool .premium-key {display:flex;flex-direction:column;gap:6px;min-width:0}
.task-tool .premium-key>span {font-size:.86rem;color:inherit;opacity:.8}
.task-tool .premium-key>strong {font-size:clamp(1.35rem,2.8vw,2rem);font-weight:650;letter-spacing:-.025em;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.task-tool .premium-verdict,.task-tool .premium-total,.task-tool .premium-offers {display:flex;gap:32px;flex-wrap:wrap;align-items:start;background:var(--planning-soft);padding:22px;border-radius:12px}
.task-tool p.premium-verdict {display:block;font-weight:600;font-size:1.05rem}
.task-tool .premium-actions {display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.task-tool .premium-actions .btn,.task-tool .task-actions .btn {background:transparent;border:1px solid var(--planning-line);border-radius:8px;color:inherit;font-weight:550}
.task-tool .premium-result>.btn {margin:12px 0}
.task-tool .premium-feature [hidden] {display:none!important}
.task-tool .premium-result .error {padding:14px 0;margin:0}
@media(max-width:760px){.task-tool section.premium-feature{padding:20px}.task-tool .premium-feature{margin-top:24px}.task-tool .premium-feature>summary{padding:18px 20px}.task-tool details.premium-feature .premium-body{padding:0 20px 20px}.task-tool .premium-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.task-tool .premium-verdict,.task-tool .premium-total,.task-tool .premium-offers{padding:18px;gap:20px}.task-tool .task-answer{padding:20px}.task-tool .premium-key>strong{font-size:1.55rem}.task-tool .premium-actions .btn{flex:1 1 auto}}
@media(max-width:430px){.task-tool .premium-fields{grid-template-columns:1fr}.task-tool .premium-note{font-size:.9rem}.task-tool .premium-verdict,.task-tool .premium-total,.task-tool .premium-offers{flex-direction:column}.task-tool .premium-feature table{min-width:500px}.task-tool .premium-feature .table-wrap{overflow:auto}.task-tool .premium-actions{gap:8px}}

.task-layout-growth {grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:40px}
.task-layout-growth .task-answer>.out>.result {padding:18px 0 10px}
.task-layout-growth .task-composition .big-num {font-size:3rem}
.task-layout-growth .growth-bars {height:160px;gap:10px}
.task-layout-growth .growth-bars>div {background:var(--accent);border-radius:3px 3px 0 0}
.task-layout-growth .premium-savings-goal {display:grid;grid-template-columns:.7fr 1.3fr;gap:24px;align-items:start}
.task-layout-growth .premium-savings-goal>h2 {font-size:1.6rem;max-width:12ch}
.task-layout-growth .premium-savings-goal .premium-fields {grid-template-columns:1fr;max-width:350px}
.task-layout-growth .premium-verdict {background:var(--accent);color:var(--bg)}
.task-layout-bill {grid-template-columns:1.1fr .9fr;gap:44px}
.task-layout-bill .task-answer {padding:32px;background:var(--planning-soft);border:0}
.task-layout-bill .task-answer .big-num {font-size:3rem}
.task-layout-bill .task-answer .stats {display:flex;flex-direction:column}
.task-layout-bill .task-answer .stat {display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:20px}
.task-layout-bill .task-answer .stat b {font-size:1.25rem}
.task-layout-bill .premium-uneven-split .premium-fields {max-width:580px}
.task-layout-questions {max-width:850px}
.task-layout-questions>.result {background:var(--bg);border:1px solid var(--planning-line);border-radius:20px}
.task-layout-questions>.result .big-num {font-size:3.4rem;margin:18px 0}
.task-layout-questions .percentage-questions {display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;align-items:center}
.task-layout-questions .premium-percent-chain .premium-fields {grid-template-columns:.55fr 1.45fr;align-items:start}
.task-layout-questions .premium-percent-chain .premium-wide {grid-column:auto}
.task-layout-receipt {gap:44px;grid-template-columns:1fr 1fr}
.task-layout-receipt .task-answer {background:var(--planning-soft);border:0}
.task-layout-receipt .premium-vat-basket .premium-fields {grid-template-columns:.65fr 1.35fr;align-items:start}
.task-layout-receipt .premium-vat-basket .premium-wide {grid-column:auto}
.task-layout-pay .task-inputs .grid {grid-template-columns:repeat(4,minmax(0,1fr))}
.task-layout-pay .task-answer {background:var(--planning-soft);border:0}
.task-layout-pay .task-answer .stats {display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}
.task-layout-pay .task-answer .stats>.stat {flex:1 1 120px}
.task-layout-pay .premium-offer-compare {display:grid;grid-template-columns:.65fr 1.35fr;gap:32px}
.task-layout-pay .premium-offer-compare>h2 {font-size:1.7rem;max-width:13ch}
.task-layout-sale {grid-template-columns:1.1fr .9fr;gap:44px}
.task-layout-sale .task-answer {background:var(--fg);--accent:var(--bg);border:0}
.task-layout-sale .task-answer .big-num,.task-layout-sale .task-answer .stat b {color:inherit}
.task-layout-sale .premium-offer-landed .premium-fields {grid-template-columns:repeat(4,minmax(0,1fr))}
.task-layout-sale .premium-offers {display:grid;grid-template-columns:1fr 1fr}
.task-layout-earnings {grid-template-columns:.9fr 1.1fr;gap:40px}
.task-layout-earnings .task-answer .stats {display:grid;grid-template-columns:1fr 1fr}
.task-layout-earnings .task-answer .stat:first-child {grid-column:1/-1;background:var(--planning-soft);padding:20px;border-radius:12px}
.task-layout-earnings .task-answer .stat:first-child b {font-size:2.5rem}
.task-layout-earnings .premium-target-pay {display:grid;grid-template-columns:.65fr 1.35fr;gap:28px}
.task-layout-earnings .premium-target-pay>h2 {font-size:1.65rem;max-width:14ch}
@media(max-width:760px){.task-layout-growth .premium-savings-goal,.task-layout-pay .premium-offer-compare,.task-layout-earnings .premium-target-pay {display:block}.task-layout-growth .premium-savings-goal>h2,.task-layout-pay .premium-offer-compare>h2,.task-layout-earnings .premium-target-pay>h2 {font-size:1.3rem;max-width:none;margin-bottom:18px}.task-layout-pay .task-inputs .grid,.task-layout-sale .premium-offer-landed .premium-fields{grid-template-columns:1fr 1fr}.task-layout-questions .percentage-questions,.task-layout-questions .premium-percent-chain .premium-fields,.task-layout-receipt .premium-vat-basket .premium-fields{grid-template-columns:1fr}.task-layout-bill .task-answer .big-num{font-size:2.6rem}}
.experience .hero h1 {font-size:32px;line-height:1.15}
.task-layout-growth .task-inputs .premium-savings-goal {display:block;padding:22px;margin-top:28px}
.task-layout-growth .task-inputs .premium-savings-goal>h2 {font-size:1.25rem;max-width:none;margin-bottom:16px}
.task-layout-growth .task-inputs .premium-verdict {display:flex;flex-direction:column;gap:20px;padding:20px}
.task-layout-growth .task-inputs .premium-verdict .premium-key>strong {font-size:1.7rem}
.task-layout-growth .task-inputs .premium-note {font-size:.88rem}
.task-layout-pay .premium-offer-compare {display:block}
.task-layout-pay .premium-offer-compare>h2 {font-size:1.3rem;max-width:none;margin-bottom:16px}
@media(max-width:760px){.experience .hero h1 {font-size:24px}.task-layout-growth .task-inputs .premium-savings-goal{padding:18px}}
/* On phones the projection precedes the optional goal question, while desktop uses both columns. */
@media(max-width:760px){.task-tool .task-layout-growth{display:flex!important;flex-direction:column;gap:0}.task-layout-growth .task-inputs{display:contents}.task-layout-growth .task-inputs>h2,.task-layout-growth .task-inputs>.grid{order:0;width:100%}.task-layout-growth .task-answer{order:1;width:100%;margin-top:8px}.task-layout-growth .task-inputs .premium-savings-goal{order:2;width:100%;margin-top:24px}}
