/* Resource pages share Arete's existing pricing card and result styles. */
.category-page:has(.tools-directory),.category-page:has(.paycheck-workspace),.category-page:has(.refund-workspace){background:#f6f8fc}
.tools-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-bottom:48px}.tool-card{position:relative;display:flex;flex-direction:column;text-align:left;background:#fff;border:1px solid #dce5ee;border-radius:24px;padding:36px;min-height:290px;color:var(--ink);transition:transform .2s,box-shadow .2s,border-color .2s}.tool-card:hover{transform:translateY(-4px);border-color:#9ab1ce;box-shadow:0 16px 30px #15284510}.tool-card:first-child{background:var(--navy);color:#fff}.tool-card:first-child p,.tool-card:first-child .text-link{color:#d6e3f4}.tool-card-index{align-self:end;margin-bottom:16px;font-size:12px;opacity:.5}.tool-card h2{font:400 32px/1.15 var(--serif);letter-spacing:-.5px;margin-bottom:18px}.tool-card>p:not(.eyebrow){font-size:15px;line-height:1.75;color:var(--muted);margin-bottom:25px}.tool-card .text-link{margin-top:auto}.tools-note{padding-bottom:80px}.tools-note p{max-width:730px;color:var(--muted);line-height:1.8;margin-bottom:20px}.tools-back{margin-bottom:32px}.paycheck-workspace{padding-bottom:80px}.pay-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.pay-fields legend{float:none;margin:0;padding:0 8px;width:auto}.pay-fields .field label{font-size:14px;font-weight:600;line-height:1.5;margin-bottom:8px}.pay-fields .field input,.pay-fields .field select,.map-heading select{width:100%;border:1px solid #cbd8e5;border-radius:12px;background:#f8fafc;min-height:48px;padding:11px 13px;color:var(--ink);font-size:16px}.pay-fields small,.pay-check small{display:block;font-size:12px;color:var(--muted);font-weight:400;line-height:1.7;margin-top:8px}.hourly-fields{display:grid;grid-template-columns:1fr 1fr;grid-column:1/-1;gap:22px}.hourly-fields[hidden]{display:none}.pay-check{display:flex;align-items:start;gap:12px;grid-column:1/-1;font-size:14px;font-weight:600;cursor:pointer}.pay-check input{accent-color:var(--blue);margin-top:3px;width:20px;height:20px;flex-shrink:0}.pay-state-note{grid-column:1/-1;font-size:13px;line-height:1.75;color:var(--muted);margin:0}.pay-private{margin-top:22px}.paycheck-workspace .fee-total{font-size:clamp(35px,4vw,53px)}.refund-workspace{padding-bottom:80px}.refund-choices{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:30px}.refund-choice{background:#fff;border:1px solid #dce5ee;border-radius:24px;padding:34px;text-align:left;color:var(--ink);display:flex;flex-direction:column;align-items:start;transition:box-shadow .2s,border-color .2s}.refund-choice:hover{border-color:#9ab1ce;box-shadow:0 12px 25px #15284510}.refund-choice h2{font:400 38px/1.2 var(--serif);margin:20px 0 16px}.refund-choice p{color:var(--muted);font-size:16px;line-height:1.75;margin-bottom:20px}.tool-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#edf3fa;color:var(--blue);font-size:14px;font-weight:600}.map-card{border:1px solid #dce5ee;border-radius:26px;background:#fff;padding:34px;scroll-margin-top:115px}.map-card[hidden]{display:none}.map-heading{display:grid;grid-template-columns:1fr 320px;gap:30px;align-items:start}.map-heading h2{font:400 38px/1.2 var(--serif);margin-bottom:14px}.map-heading p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.7}.map-heading .button{width:100%;margin-top:12px;justify-content:center}.map-heading button:disabled{opacity:.45;cursor:default}.refund-map{display:block;width:100%;height:auto;margin:22px auto}.state-shape{fill:#dce7f3;stroke:#fff;stroke-width:1.5;stroke-linejoin:round;transition:fill .2s}.state-shape.no-income-tax{fill:#edf0f3}.refund-map a:hover .state-shape,.refund-map a:focus .state-shape,.refund-map .selected .state-shape{fill:#385785;stroke:#152845;stroke-width:2}.refund-map a{outline:none}.map-legend{display:flex;flex-wrap:wrap;gap:20px;font-size:12px;color:var(--muted)}.map-legend span{display:flex;align-items:center;gap:8px}.map-legend i{width:12px;height:12px;border-radius:3px;background:#dce7f3}.map-legend i.muted{background:#edf0f3}.state-message{padding:18px;background:#f4f7fb;border-radius:12px;font-size:14px;line-height:1.7;margin:22px 0 0}.map-credit{font-size:10px;color:var(--muted);margin-top:16px}.map-credit a{text-decoration:underline}.refund-help{max-width:790px;padding:38px 0 0}.refund-help h3{font:400 29px/1.25 var(--serif);margin-bottom:15px}.refund-help p{color:var(--muted);font-size:15px;line-height:1.85}
@media(max-width:1024px){.tools-directory{grid-template-columns:1fr 1fr}.map-heading{grid-template-columns:1fr 280px}}
@media(max-width:700px){.tools-directory,.refund-choices,.map-heading{grid-template-columns:1fr}.tool-card{min-height:260px;padding:28px}.map-card{padding:22px 16px}.refund-choice{padding:28px}.pay-fields{grid-template-columns:1fr;padding:22px}.hourly-fields{grid-template-columns:1fr 1fr;gap:16px}.map-heading h2{font-size:31px}.refund-map{margin:30px 0}.map-legend{gap:12px;font-size:11px}.paycheck-workspace .fee-total{font-size:40px}.refund-workspace,.paycheck-workspace{padding-bottom:50px}}
@media(max-width:400px){.hourly-fields{grid-template-columns:1fr}.paycheck-workspace .fee-total{font-size:34px}}
@media(prefers-reduced-motion:reduce){.tool-card,.refund-choice,.state-shape{transition:none}.tool-card:hover{transform:none}}
/* Keep arrows consistent with the site's existing stroke icons. */
.resource-arrow{width:18px!important;height:18px!important;font-size:18px!important;vertical-align:middle;flex:0 0 18px}.tool-card .text-link,.tools-back{display:inline-flex;align-items:center;gap:12px}.tool-card .text-link>span:has(.resource-arrow){display:inline-flex;align-items:center;font-size:18px}.map-heading .button{gap:12px}.pay-fields input[type="date"]{width:100%;min-height:48px;border:1px solid #cbd8e5;border-radius:12px;padding:11px 13px;background:#f8fafc;color:var(--ink);font-size:16px}.fee-result:has(.participation-tests) .fee-total,.fee-result:has(.result-secondary) .fee-total{font:400 clamp(28px,3vw,39px)/1.2 var(--serif);letter-spacing:-.6px}.participation-tests{list-style:none;padding:0;margin:0;border-top:1px solid #ffffff30}.participation-tests li{padding:20px 0;border-bottom:1px solid #ffffff30}.participation-tests h3{font:600 15px/1.5 var(--sans);margin:10px 0 8px;color:#fff}.participation-tests p{font-size:13px;color:#d1dce9;line-height:1.7;margin:0}.test-status{display:inline-block;padding:3px 9px;border-radius:30px;background:#ffffff16;font-size:11px;color:#dae6f3}.test-status.supported{background:#cde6d7;color:#1f4b36}.test-status.review{background:#fae9bd;color:#684c17}.test-status.unavailable{background:#dae0e8;color:#485566}.exchange-timeline{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;font-size:12px;color:#d1dce9}.exchange-timeline strong{display:inline-block;font-size:17px;margin-top:8px;color:#fff}.result-secondary{display:flex;align-items:center;gap:12px;margin-bottom:25px;color:#e0eaf7;font-size:14px;text-decoration:underline;text-underline-offset:5px}.fee-extra-note .resource-arrow{width:14px!important;height:14px!important}.fee-result .fee-breakdown li{align-items:start}.fee-result .fee-breakdown strong{flex-shrink:0}
@media(max-width:420px){.exchange-timeline{grid-template-columns:1fr}.fee-result .fee-breakdown li{font-size:13px}}
.irs-payment-list,.irs-payment-row{grid-column:1/-1}.irs-payment-list{display:grid;gap:20px}.irs-payment-row{display:grid;grid-template-columns:1fr 1fr 40px;gap:12px;align-items:end}.irs-remove-payment{display:grid;place-items:center;border:1px solid #cbd8e5;border-radius:50%;height:40px;font-size:23px;margin-bottom:4px}.irs-detail{margin-top:20px;border-bottom:1px solid #ffffff30;padding-bottom:18px}.irs-detail summary{cursor:pointer;font-size:14px;color:#e1ebf6}.irs-detail .fee-breakdown{margin-top:15px}.irs-table-wrap{overflow:auto;max-height:300px;margin-top:18px}.irs-table-wrap table{width:100%;border-collapse:collapse;font-size:12px}.irs-table-wrap td,.irs-table-wrap th{padding:8px 4px;text-align:left;border-bottom:1px solid #ffffff20}.irs-table-wrap th{color:#dce6f3;font-weight:500}.irs-table-wrap td:last-child{text-align:right}
@media(max-width:480px){.irs-payment-row{grid-template-columns:1fr 40px}.irs-payment-row .field:first-child{grid-column:1/-1}}
