/* One card on mobile, two on laptops, three on large desktop displays. */
.helper-grid,.category-helper-grid,.job-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:stretch}
@media(min-width:900px){.helper-grid,.category-helper-grid,.job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1600px){:root{--content-width:1440px}.helper-grid,.category-helper-grid,.job-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.compact-helper-card.helper-card,.compact-job-card.job-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:24px;border-radius:18px;min-width:0;overflow:hidden}
.helper-card-identity{display:grid;grid-template-columns:60px minmax(0,1fr);gap:15px;align-items:start}
.helper-card-person{min-width:0}.compact-helper-card .avatar,.category-helper-grid .compact-helper-card .avatar{width:60px;height:60px;font-size:20px}
.compact-helper-card .compact-name-row{display:grid;grid-template-columns:minmax(0,1fr) auto;margin:0 0 4px;gap:9px;align-items:baseline}
.compact-helper-card .compact-name-row h3{font-size:19px;line-height:1.35;margin:0;min-width:0;height:2.7em;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-account-type{color:var(--muted);font-size:12px;line-height:1.5;font-weight:400;white-space:nowrap}
.compact-helper-card h4,.category-helper-grid .rich-helper-card h4{font-size:14px;line-height:1.55;height:3.1em;margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.compact-location{color:var(--muted);font-size:12px;line-height:1.5;min-height:3em;display:flex;align-items:flex-start;gap:5px;flex-wrap:nowrap}.compact-location span{min-width:0;max-height:3em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.compact-location .card-icon{width:15px;height:15px;flex-basis:15px;margin-top:1px}
.helper-card-review:empty{display:none}.helper-card-review{margin-top:10px}.helper-card-review .safety-badge{font-size:10px}
.helper-rate-rating{display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px;margin:18px 0 11px}
.compact-rate{font-size:16px;line-height:1.5}.helper-rate-rating .card-rating{margin:0;gap:5px}.helper-rate-rating .rating-stars{width:77px;flex-basis:77px}.helper-rate-rating .rating-value strong{font-size:14px}.helper-rate-rating .rating-value>span,.helper-rate-rating .rating-review-count{font-size:10px}
.helper-results{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px 16px;margin-bottom:15px;font-size:12px;line-height:1.6;color:var(--muted)}.helper-results>span{display:flex;align-items:center;gap:5px;flex-wrap:wrap;max-width:100%;overflow-wrap:anywhere}.helper-results strong{color:var(--ink)}.helper-results .card-icon{width:16px;height:16px;flex-basis:16px}
.compact-helper-card .card-skill-tags,.compact-job-card .card-skill-tags{gap:6px;margin:0 0 12px}.compact-helper-card .card-skill-tags>span,.compact-job-card .card-skill-tags>span{padding:4px 9px;font-size:12px;line-height:1.5}
.compact-helper-card .compact-description,.compact-job-card .compact-description{font-size:13px;line-height:1.75;flex:none;margin:0;min-height:3.5em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.helper-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:17px}.helper-card-actions>div{min-width:0}.helper-availability{font-size:12px;color:var(--muted)}.helper-card-actions .time-pill{font-size:10px;padding:5px 8px}
.compact-helper-card .helper-view{margin:0;min-width:0;min-height:40px;padding:10px 14px;font-size:12px;gap:10px;white-space:normal}.compact-helper-card .helper-view span{font-size:17px}
.compact-job-card .card-topline{font-size:10px;margin-bottom:10px;align-items:flex-start}.compact-job-card .card-topline>span:first-child{min-width:0}.compact-job-card .badge{flex-shrink:0}
.compact-job-card h3{font-size:21px;line-height:1.4;height:2.8em;margin:0 0 17px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.compact-job-card h3:focus-within{outline:2px solid var(--blue);outline-offset:4px;border-radius:3px}
.compact-job-card .card-skill-tags{margin-bottom:0;min-height:26px}
.compact-job-card .compact-description{border-top:1px solid var(--border);padding-top:17px;margin-top:17px;-webkit-line-clamp:3;min-height:86px}
.job-facts-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 18px;margin:20px 0 16px;font-size:13px;line-height:1.65}
.job-facts-grid>div{min-width:0}.job-facts-grid dd{display:flex;gap:8px;align-items:flex-start;margin:0;overflow-wrap:anywhere;min-width:0}.job-facts-grid dd>span,.job-facts-grid dd>strong{min-width:0}.job-facts-grid strong{font-size:13px;font-weight:400}.job-facts-grid .card-icon{color:var(--muted);margin-top:1px}
.job-location-line{display:flex;align-items:flex-start;gap:7px;color:var(--muted);font-size:12px;line-height:1.7;margin-bottom:18px;overflow-wrap:anywhere}.job-location-line>span{min-width:0}.job-location-line .card-icon{width:17px;height:17px;flex-basis:17px;margin-top:1px}
.job-card-actions{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px;margin-top:auto}.job-card-actions .button{min-height:42px;font-size:12px;padding:10px 12px;gap:9px;white-space:normal}.job-card-actions .button span{font-size:18px}.job-card-actions .button:disabled{cursor:not-allowed;background:#2855e8;border-color:#2855e8;color:#fff;transform:none}.job-apply-note{font-size:10px;line-height:1.5;color:var(--muted);margin-top:9px}
@media(max-width:480px){.compact-helper-card.helper-card,.compact-job-card.job-card{padding:20px;border-radius:15px}.helper-card-identity{grid-template-columns:50px minmax(0,1fr);gap:12px}.compact-helper-card .avatar,.category-helper-grid .compact-helper-card .avatar{width:50px;height:50px;font-size:17px}.compact-helper-card .compact-name-row h3{font-size:18px}.compact-helper-card h4{font-size:12px}.compact-helper-card .compact-description{font-size:12px}.helper-results{font-size:10px;gap:7px 12px}.compact-job-card h3{font-size:20px}.job-facts-grid{font-size:11px;gap:12px}.job-facts-grid strong{font-size:11px}.job-facts-grid .card-icon{width:17px;height:17px;flex-basis:17px}.job-card-actions{gap:8px}.job-card-actions .button{padding:10px 8px;font-size:10px}.helper-card-actions .time-pill{font-size:9px}.compact-helper-card .helper-view{padding:9px 12px}}
