.account-page-head { max-width: 760px; }
.account-page-head > p:not(.eyebrow) { max-width: 640px; }
.account-settings-link { display: inline-flex; gap: .45rem; margin-top: .45rem; color: var(--green); font-weight: 700; }
.account-workspace { display: grid; gap: 2.75rem; padding-top: 1.5rem; }
.account-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.account-summary-card, .account-card, .favorite-card, .account-empty { border: none; border-radius: 14px; background: var(--card, #fff); box-shadow: none; transition: transform 0.2s ease; }
.account-summary-card:hover, .account-card:hover, .favorite-card:hover { transform: translateY(-2px); box-shadow: none; }
.account-summary-card { display: grid; grid-template-columns: 56px minmax(0, 1fr); align-items: center; gap: 1rem; min-height: 96px; padding: 1rem 1.1rem; }
.account-summary-icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 12px; background: #edf4dd; color: var(--green); }
.account-summary-card p, .account-summary-card small { display: block; margin: 0; }
.account-summary-card p { color: var(--ink); font-size: .83rem; font-weight: 750; }
.account-summary-card b { display: block; margin: .08rem 0; font: 700 1.75rem/1 Fraunces, serif; }
.account-summary-card small { color: var(--muted); font-size: .78rem; }
.account-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; align-items: start; }
.account-panel { min-width: 0; }
.account-section-heading { display: grid; gap: .28rem; margin-bottom: .7rem; }
.account-section-heading > div { display: flex; align-items: center; gap: .65rem; }
.account-heading-icon, .account-lucide { display: inline-block; flex: 0 0 auto; width: 18px; height: 18px; color: var(--green); stroke-width: 2; vertical-align: -3px; }
.account-heading-icon { width: 23px; height: 23px; }
.account-summary-icon .account-lucide { width: 25px; height: 25px; vertical-align: 0; }
.card-meta .account-lucide, .job-professional .account-lucide, .favorite-rating .account-lucide { width: 14px; height: 14px; margin-right: .3rem; vertical-align: -2px; }
.account-card-actions .account-lucide { width: 15px; height: 15px; margin-right: .35rem; vertical-align: -3px; }
.account-section-heading h2 { margin: 0; font: 700 clamp(1.55rem, 2.2vw, 2rem)/1.1 Fraunces, serif; letter-spacing: -.8px; }
.account-section-heading > p { margin: 0; color: var(--muted); font-size: .9rem; }
.account-card-list { display: grid; gap: .85rem; }
.account-card { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 1rem; min-height: 142px; padding: .8rem; }
.account-card-media, .favorite-avatar { display: block; overflow: hidden; background: #edf4dd; }
.account-card-media { width: 104px; height: 104px; border-radius: 9px; }
.account-card-media img, .favorite-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
.account-card-content { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto 1fr auto; column-gap: .75rem; }
.account-card-top { display: flex; justify-content: space-between; align-items: flex-start; gap: .75rem; width: 100%; }
.account-card-heading { min-width: 0; }
.account-card h3, .favorite-card h3 { margin: 0; font-size: .98rem; line-height: 1.28; }
.job-professional { margin: .2rem 0 0; color: var(--muted); font-size: .86rem; }
.card-description { grid-column: 1 / -1; margin: .28rem 0; color: var(--muted); font-size: .82rem; line-height: 1.4; }
.status-badge { display: inline-flex; align-items: center; align-self: start; justify-self: end; border-radius: 999px; padding: .32rem .62rem; font-size: .72rem; font-weight: 750; line-height: 1.15; white-space: nowrap; background: #edf4dd; color: var(--green); }
.status-badge.status-pending { background: #fff3cf; color: #876319; }
.status-badge.status-quoted { background: #e4f1ff; color: #2563a8; }
.status-badge.status-accepted, .status-badge.status-completed { background: #e3f5e9; color: #167253; }
.status-badge.status-in_progress { background: #fff0db; color: #a65b05; }
.status-badge.status-rejected, .status-badge.status-cancelled, .status-badge.status-withdrawn { background: #fbe8e6; color: #a33f37; }
.card-meta { display: flex; flex-wrap: wrap; grid-column: 1 / -1; gap: .25rem .75rem; margin: 0; color: var(--muted); font-size: .76rem; }
.card-meta span { display: inline-flex; align-items: center; gap: .25rem; }
.account-card-actions { display: flex; grid-column: 1 / -1; justify-content: flex-end; gap: .55rem; margin-top: .45rem; }
.account-card-actions .button, .account-card-actions button { min-height: 34px; margin: 0; padding: 8px 12px; font-size: .76rem; }
.account-empty { display: grid; justify-items: start; gap: .45rem; min-height: 178px; padding: 1.25rem; align-content: center; }
.account-empty-icon { display: grid; place-items: center; width: 2.3rem; height: 2.3rem; border-radius: 50%; color: var(--green); background: #edf4dd; font-size: 1.2rem; }
.account-empty h3 { margin: .15rem 0 0; font-size: 1.05rem; }
.account-empty p { margin: 0; color: var(--muted); line-height: 1.45; }
.account-empty .button { margin-top: .4rem; }
.account-favorites-section { padding-top: .1rem; }
.account-favorites-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.favorite-card { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: .8rem; padding: .9rem; align-items: center; }
.favorite-avatar { width: 64px; height: 64px; border-radius: 50%; }
.favorite-rating, .favorite-location, .favorite-specialty { margin: .22rem 0 0; color: var(--muted); font-size: .78rem; }
.favorite-rating { color: var(--green); font-weight: 700; }
.favorite-specialty { display: inline-flex; width: fit-content; padding: .18rem .55rem; border: none; border-radius: 999px; background: #edf4dd; color: var(--green); font-weight: 600; }
.favorite-card .button { grid-column: 1 / -1; width: 100%; margin-top: .15rem; padding: 9px 12px; text-align: center; }

@media (max-width: 860px) { .account-summary, .account-columns { grid-template-columns: 1fr; } .account-favorites-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .account-workspace { gap: 2.15rem; } .account-card { grid-template-columns: 76px minmax(0, 1fr); } .account-card-media { width: 76px; height: 76px; } .account-card-content { display: block; } .status-badge { margin-top: .5rem; } .card-description { margin: .45rem 0; } .account-card-actions { justify-content: stretch; } .account-card-actions .button, .account-card-actions button { flex: 1; } .account-favorites-grid { grid-template-columns: 1fr; } }
