.tool-shell{padding:clamp(20px,4vw,48px);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-md)}.tool-grid{display:grid;gap:18px;margin-top:24px}@media(min-width:720px){.tool-grid{grid-template-columns:1fr 1fr}}.tool-grid .tool-span{grid-column:1 / -1}.tool-segment{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;margin:0;padding:5px;border:1px solid var(--line-strong);border-radius:14px;background:var(--paper)}.tool-segment legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tool-segment label{position:relative;display:flex;cursor:pointer}.tool-segment input{position:absolute;opacity:0;pointer-events:none}.tool-segment span{flex:1;display:grid;place-items:center;min-height:54px;padding:8px 10px;border-radius:10px;color:var(--slate);font:600 .9375rem/1.25 var(--sans);text-align:center;transition:background-color .25s var(--ease),color .2s}.tool-segment input:checked+span{background:var(--solid-bg);color:var(--solid-text);box-shadow:var(--shadow-sm)}.tool-segment input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}.tool-segment small{display:block;margin-top:2px;font-weight:500;font-size:.75rem}@media(max-width:520px){.tool-segment.tool-segment-stack{grid-auto-flow:row}}.tool-check{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--charcoal);font-size:.9375rem;line-height:1.5;cursor:pointer}.tool-check input{flex:0 0 auto;width:20px;height:20px;margin-top:2px;accent-color:var(--gold)}.tool-check strong{color:var(--ink);font-weight:600}.tool-money{position:relative;display:flex;align-items:center}.tool-money span{position:absolute;left:16px;color:var(--slate);font:600 .875rem var(--sans);pointer-events:none}.tool-money input{padding-left:58px!important;font-variant-numeric:tabular-nums}.tool-results{margin-top:36px;padding-top:32px;border-top:1px solid var(--line)}.tool-letterhead{display:flex;gap:14px;align-items:flex-start;padding-bottom:18px;margin-bottom:22px;border-bottom:1px double var(--line-strong)}.tool-letterhead img{width:44px;height:44px;-o-object-fit:contain;object-fit:contain}.tool-letterhead strong{display:block;color:var(--ink);font:600 1.375rem/1.1 var(--serif)}.tool-letterhead span{display:block;margin-top:3px;color:var(--slate);font-size:.8125rem}.tool-headline{display:grid;gap:8px;padding:clamp(22px,4vw,34px);border:1px solid var(--tint-line);border-radius:var(--radius);background:var(--tint);text-align:center}.tool-headline>span{color:var(--gold-ink);font:600 .75rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase}.tool-headline strong{color:var(--ink);font:500 clamp(2.4rem,8vw,3.75rem)/1.05 var(--serif);font-variant-numeric:tabular-nums lining-nums;text-wrap:balance}.tool-headline p{margin:0;color:var(--charcoal);font-size:.9375rem}.tool-notes{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}.tool-notes li{position:relative;padding:12px 14px 12px 38px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--charcoal);font-size:.875rem;line-height:1.55}.tool-notes li:before{content:"";position:absolute;top:18px;left:16px;width:8px;height:8px;border-radius:50%;background:var(--gold)}.tool-share{margin-top:22px}.tool-share .ht-btn{padding-inline:20px}.tool-share p{margin:10px 0 0;color:var(--slate);font-size:.8125rem;line-height:1.5;text-align:center}.tool-cta{display:grid;gap:18px;margin-top:26px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}@media(min-width:720px){.tool-cta{grid-template-columns:1fr auto;align-items:center}}.tool-cta h3{margin:6px 0 0;font-size:1.5rem}.tool-cta p{margin:6px 0 0}.tool-secondary{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px;margin-top:18px}.tool-secondary button{border:0;background:none;cursor:pointer}.tool-sources{margin:12px 0 0;padding-left:1.1rem;color:var(--charcoal);font-size:.9375rem;line-height:1.6}.tool-sources li+li{margin-top:6px}.tool-related{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:32px;padding-top:22px;border-top:1px solid var(--line);font-size:.9375rem}.tool-related p{width:100%;margin:0;color:var(--slate);font-size:.8125rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.cl-step{margin:0;padding:0;border:0;min-width:0}.cl-step+.cl-step{margin-top:32px}.cl-step-title{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:0;color:var(--ink);font:500 clamp(1.4rem,4vw,1.75rem)/1.2 var(--serif)}.cl-step-title>span{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border:1px solid var(--tint-line);border-radius:50%;background:var(--tint);color:var(--gold-ink);font:600 .875rem/1 var(--sans)}.cl-step-title em{color:var(--slate);font:500 .8125rem var(--sans);font-style:normal}.cl-matters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(min-width:820px){.cl-matters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:819px){.cl-matters>.cl-matter:last-child:nth-child(odd){grid-column:1 / -1}}.cl-matter{position:relative;display:flex;cursor:pointer}.cl-matter input,.cl-chip input,.cl-item input{position:absolute;opacity:0;pointer-events:none}.cl-matter>span{flex:1;display:grid;align-content:start;gap:6px;padding:16px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);transition:border-color .2s var(--ease),background-color .2s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease-enter)}.cl-matter .ht-ico{width:22px;height:22px;margin-bottom:4px;color:var(--gold-ink)}.cl-matter strong{color:var(--ink);font:600 .9375rem/1.3 var(--sans)}.cl-matter small{color:var(--slate);font-size:.8125rem;line-height:1.45}.cl-matter input:checked+span{border-color:var(--gold);background:var(--tint);box-shadow:0 0 0 1px var(--gold) inset}.cl-matter input:focus-visible+span,.cl-chip input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}.cl-matter:active>span{transform:scale(.985)}@media(hover:hover){.cl-matter:hover>span{border-color:var(--line-strong)}}@media(max-width:420px){.cl-matter small{display:none}}.cl-options{display:flex;flex-wrap:wrap;gap:8px}.cl-chip{position:relative;display:flex;cursor:pointer}.cl-chip>span{display:grid;gap:2px;padding:10px 16px 10px 38px;border:1px solid var(--line-strong);border-radius:14px;background:var(--paper);position:relative;transition:border-color .2s var(--ease),background-color .2s var(--ease)}.cl-chip>span:before{content:"";position:absolute;top:50%;left:14px;width:14px;height:14px;margin-top:-7px;border:1.5px solid var(--line-strong);border-radius:4px;transition:background-color .15s var(--ease),border-color .15s var(--ease)}.cl-chip strong{color:var(--ink);font:600 .875rem/1.3 var(--sans)}.cl-chip small{color:var(--slate);font-size:.75rem;line-height:1.35}.cl-chip input:checked+span{border-color:var(--gold);background:var(--tint)}.cl-chip input:checked+span:before{border-color:var(--gold);background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23191510' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 10px no-repeat}.cl-summary{display:flex;align-items:center;justify-content:space-between;gap:20px}.cl-summary .ht-h3{margin:0}.cl-title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:6px}.cl-change{min-height:32px;padding:0 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--ink);font:600 .8125rem/1 var(--sans);cursor:pointer;transition:border-color .2s var(--ease),background-color .2s var(--ease)}.cl-change:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.cl-change:active{transform:scale(.97)}@media(hover:hover){.cl-change:hover{border-color:var(--gold)}}.cl-step{scroll-margin-top:84px}.cl-summary p{margin:6px 0 0}.cl-progress{display:flex;align-items:center;gap:12px;flex:0 0 auto}.cl-progress svg{width:56px;height:56px;transform:rotate(-90deg)}.cl-progress circle{fill:none;stroke:var(--line);stroke-width:4}.cl-progress circle+circle{stroke:var(--gold);stroke-linecap:round;transition:stroke-dashoffset .5s var(--ease-enter)}.cl-progress p{margin:0;color:var(--charcoal);font-size:.8125rem;line-height:1.25}.cl-progress strong{color:var(--ink);font:600 1.25rem var(--sans);font-variant-numeric:tabular-nums}.cl-progress span{color:var(--slate)}@media(max-width:520px){.cl-progress{flex-direction:column;gap:4px;text-align:center}.cl-progress br,.cl-progress p>span:last-child{display:none}.cl-progress svg{width:44px;height:44px}.cl-progress strong{font-size:1rem}}.cl-group{margin-top:26px}.cl-group h3{margin:0 0 8px;color:var(--gold-ink);font:600 .75rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase}.cl-group ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.cl-group li{border-bottom:1px solid var(--line)}.cl-item{position:relative;display:flex;gap:14px;padding:14px 2px;cursor:pointer}.cl-box{display:grid;place-items:center;flex:0 0 auto;width:24px;height:24px;margin-top:1px;border:1.5px solid var(--line-strong);border-radius:7px;background:var(--card);transition:background-color .2s var(--ease),border-color .2s var(--ease)}.cl-box svg{width:14px;height:14px;fill:none;stroke:var(--solid-text);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .28s var(--ease-enter)}.cl-item input:checked~.cl-box{border-color:var(--solid-bg);background:var(--solid-bg)}.cl-item input:checked~.cl-box svg{stroke-dashoffset:0}.cl-item input:focus-visible~.cl-box{outline:2px solid var(--focus);outline-offset:2px}.cl-text{display:grid;gap:3px;min-width:0}.cl-text strong{color:var(--ink);font:600 .9375rem/1.4 var(--sans);transition:color .2s var(--ease)}.cl-text em{justify-self:start;padding:1px 8px;border-radius:999px;background:var(--paper-2);color:var(--charcoal);font:600 .6875rem/1.6 var(--sans);font-style:normal;letter-spacing:.02em}.cl-text small{color:var(--slate);font-size:.8125rem;line-height:1.5}.cl-item input:checked~.cl-text strong{color:var(--slate);text-decoration:line-through;text-decoration-color:var(--gold)}.cl-saved{margin:18px 0 0}.cl-actions{display:grid;gap:10px;margin-top:24px}@media(min-width:620px){.cl-actions{grid-template-columns:1fr 1fr}}.tool-results.is-complete .cl-progress circle+circle{stroke:var(--ok, var(--gold))}@media print{.tool-results{margin-top:0;padding-top:0;border:0}.cl-box{border-color:#999}}
