/* Compléments du client connecté ; aucun exemple fictif chargé dans ce paquet. */
.auth-intro { padding: 40px 8px 22px; }
.auth-intro img { border-radius: 16px; margin-bottom: 22px; }
.auth-intro h1 { font-size: 30px; line-height: 1.12; letter-spacing: -1px; margin: 0 0 12px; }
.auth-intro p { color: var(--muted); font-size: 16px; line-height: 1.5; margin: 0; }
.auth-form { padding: 0 8px; }
.auth-form label { display: grid; gap: 9px; margin: 18px 0; font-size: 13px; color: var(--muted); }
.auth-form input { width: 100%; border: 0; border-radius: 17px; background: var(--surface); color: var(--ink); min-height: 54px; padding: 15px; font-size: 17px; }
.auth-form .primary { width: 100%; margin-top: 15px; }
.text-button { background: none; color: var(--tint); font-size: 15px; min-height: 44px; padding: 10px 0; }
.auth-form .text-button { display: block; margin: 14px auto; }
.auth-foot { margin: 24px 10px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.sync-badge { grid-column: 2; background: none; color: var(--muted); font-size: 11px; padding: 8px; min-height: 44px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sync-badge.pending { color: var(--tint); }
.add-button > span { font-size: 27px; font-weight: 300; }
.small-note { color: var(--muted); font-size: 12px; line-height: 1.6; margin: 18px 4px; }
.function-error { padding: 15px; margin-bottom: 18px; border-radius: 17px; background: var(--surface); color: #ba5142; font-size: 13px; line-height: 1.5; }
.waiting-icon { color: var(--tint); font-size: 15px; flex-shrink: 0; }
.clip-image { width: 34px; height: 38px; object-fit: cover; border-radius: 8px; }
.favorite-detail-image { display: block; width: 100%; max-height: 55dvh; object-fit: contain; border-radius: 14px; }
.view-filter { width: 100%; margin-bottom: 18px; }
.page-placeholder { aspect-ratio: 1.55; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 11px; background: var(--control); color: var(--muted); font-size: 14px; padding: 24px; text-align: center; }
.page-placeholder svg { width: 30px; height: 30px; }
.page-count { display: block; margin-top: 8px; font-size: 12px; color: var(--muted); }
.page-error { font-size: 12px; color: var(--muted); padding: 0 16px 14px; line-height: 1.5; }
.repartition { margin: 0; padding: 0; list-style: none; }
.repartition li { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 0; font-size: 14px; }
.repartition li + li { border-top: .5px solid var(--line); }
.repartition span { overflow-wrap: anywhere; }
.repartition strong { flex-shrink: 0; font-weight: 550; font-variant-numeric: tabular-nums; }
.metric-value.no-price { font-size: 23px; letter-spacing: -.6px; }
.account-lines { margin: 0; }
.account-lines p { overflow-wrap: anywhere; }
.conflict-card { background: var(--surface); padding: 16px; margin: 14px 0; border-radius: 16px; }
.conflict-card p { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 14px; line-height: 1.5; }
.conflict-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.conflict-actions button { font-size: 13px; }
.status-detail { font-size: 14px; line-height: 1.65; color: var(--muted); }
.status-detail strong { color: var(--ink); }
.offline-banner { color: var(--muted); font-size: 12px; line-height: 1.5; padding: 12px 4px; }
.task-row button:disabled { opacity: .55; }
.project-archived { color: var(--muted); }
