/* Trust module: job messages, babysitting exchange, reviews, verified-client pages.
   Uses only the tokens from site.css; loaded once per page by the trust partials or in extra_head. */

.trust-block { margin-block: var(--space-5); }
.trust-note { font-size: 0.92rem; }
.trust-callout { padding: var(--space-3) var(--space-4); border-radius: var(--radius-sm); background: var(--color-primary-soft); border-left: 5px solid var(--color-primary); }

/* Messages */
.trust-thread { list-style: none; margin: 0 0 var(--space-4); padding: 0; display: grid; gap: var(--space-3); max-height: 28rem; overflow-y: auto; }
.trust-msg { max-width: 85%; padding: var(--space-3) var(--space-4); border-radius: var(--radius); background: var(--color-bg); border: 1px solid var(--color-line); }
.trust-msg--mine { margin-left: auto; background: var(--color-primary-soft); border-color: transparent; }
.trust-msg--unread { border-color: var(--color-accent); box-shadow: inset 4px 0 0 var(--color-accent); }
.trust-msg__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); font-size: 0.88rem; margin-bottom: var(--space-1); }
.trust-msg__meta .avatar { width: 28px; height: 28px; }
.trust-msg__body { margin: 0; overflow-wrap: anywhere; }
.trust-form .btn { margin-top: var(--space-1); }

/* Exchange */
.trust-steps { list-style: none; padding: 0; margin: 0 0 var(--space-4); display: grid; gap: var(--space-2); }
.trust-steps li { padding-left: 1.6rem; position: relative; }
.trust-steps li::before { content: "○"; position: absolute; left: 0; color: var(--color-ink-soft); }
.trust-steps li.trust-steps__done::before { content: "✓"; color: var(--color-aurora); font-weight: 700; }
.trust-details { display: grid; grid-template-columns: max-content 1fr; gap: var(--space-2) var(--space-4); margin: 0 0 var(--space-4); }
.trust-details dt { font-weight: 700; }
.trust-details dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 480px) { .trust-details { grid-template-columns: 1fr; } .trust-details dd { margin-bottom: var(--space-2); } }

/* Reviews */
.trust-stars { color: var(--color-accent); letter-spacing: 0.1em; margin-bottom: var(--space-1); }
.trust-summary span + span { color: var(--color-ink-soft); letter-spacing: normal; margin-left: var(--space-2); font-size: 0.92rem; }
.trust-review-list { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-4); }
.trust-review-row { display: flex; gap: var(--space-3); align-items: flex-start; }
.trust-review__text { margin: 0 0 var(--space-1); font-style: italic; }
.trust-review__by { font-size: 0.9rem; margin: 0; }

/* Client pages */
.trust-client-nav { margin-bottom: var(--space-5); font-weight: 600; }
.trust-client-nav a[aria-current="page"] { text-decoration: none; color: var(--color-ink); }
.trust-inline-form { display: inline; margin: 0; }
.trust-linkbutton { background: none; border: 0; padding: 0; font: inherit; color: var(--color-primary); text-decoration: underline; cursor: pointer; }
.trust-stat { font-size: 2rem; font-weight: 700; margin: 0; }
.trust-actions { margin-block: var(--space-5); }
.trust-requests { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-4); }
.trust-request__title { font-size: 1.15rem; margin: 0; }
.trust-request__helpers { list-style: none; padding: 0; margin: 0 0 var(--space-3); }
