:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
}
.account-main { max-width: 700px; margin-inline: auto; }
.account-main.overview-main { width: 100%; max-width: none; }
.account-page { min-width: 0; }
.account-stack { display: grid; gap: var(--space-4); }
.client-message-dialog { width: min(520px, calc(100% - 32px)); max-height: calc(100dvh - 48px); margin: auto; padding: 28px; border: 1px solid var(--line); border-radius: 22px; background: var(--surface); color: var(--ink); overflow-y: auto; box-shadow: 0 24px 80px #10234226; }
.client-message-dialog::backdrop { background: #10234266; }
.client-message-dialog h2 { margin: 12px 0; overflow-wrap: anywhere; }
.client-message-body { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.65; }
.client-message-image { display: block; max-width: 100%; width: auto; height: auto; max-height: 360px; object-fit: contain; border-radius: 12px; margin: 16px auto; }
.client-message-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.account-card, .auth-card { background: var(--surface); border: 1px solid var(--line); border-radius: 20px; padding: var(--space-6); min-width: 0; }
.account-card h2 { margin-bottom: var(--space-3); font-weight: 650; }
.account-card p { font-size: 1rem; line-height: 1.55; color: var(--muted); }
.account-card p:last-child { margin-bottom: 0; }
.account-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.account-muted { color: var(--muted); font-size: .875rem; }
.account-value { display: block; font-size: 2rem; font-weight: 650; letter-spacing: -.7px; margin: 4px 0 8px; }
.account-button { min-height: 52px; border-radius: 12px; border: 1px solid transparent; padding: 12px 20px; display: inline-flex; justify-content: center; align-items: center; gap: 8px; font-size: 1rem; font-weight: 600; text-align: center; cursor: pointer; transition: transform 120ms var(--ease-out); }
.account-button.primary { background: var(--green); color: white; }
.account-button.secondary { background: #fff; color: var(--ink); border-color: var(--line); }
.account-button.text { color: var(--green); background: transparent; padding-inline: 8px; font-size: .875rem; min-height: 44px; }
.account-button:active:not(:disabled) { transform: scale(.98); }
.account-button:disabled { background: #e7ece9; color: var(--muted); cursor: wait; }
.account-form { display: grid; gap: 16px; min-width: 0; }
.auth-name-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.auth-name-row .account-field, .auth-name-row .account-input-wrap { min-width: 0; }
.auth-card .account-field label, .auth-card .field-help, .auth-card .checkbox-row, .auth-card .auth-switch { font-size: 1rem; }
.account-terms-content h3 { margin: 24px 0 8px; font-size: 1rem; }
.account-terms-content h3:first-child { margin-top: 0; }
.account-terms-content p { color: var(--muted); line-height: 1.6; font-size: 1rem; }
.account-terms-content p:last-child { margin-bottom: 0; }
.account-form > .account-card { display: grid; gap: 12px; }
.account-form .account-card h2 { margin: 0; }
.account-field { display: grid; gap: 6px; }
.account-field label, .invite-card > label { font-size: .875rem; font-weight: 600; }
.account-input-wrap { position: relative; }
.account-field input, .account-field select, .account-field textarea, .invite-link input { width: 100%; min-width: 0; min-height: 52px; background: #fbfdfc; border: 1px solid #b5c9c0; border-radius: 10px; padding: 12px 14px; font: inherit; font-size: 1rem; }
.account-input-wrap:has(.password-toggle) input { padding-right: 54px; }
.account-input-wrap input::-ms-reveal { display: none; }
.password-toggle { position: absolute; top: 4px; right: 4px; width: 44px; height: 44px; border: 0; border-radius: 8px; background: transparent; display: grid; place-items: center; color: var(--muted); }
.account-field textarea { resize: vertical; }
.account-form .field-help { font-size: .875rem; margin: 0; }
.account-form .checkbox-row { margin: 0; align-items: flex-start; }
.account-form .checkbox-row a { color: var(--green); text-decoration: underline; text-underline-offset: 3px; }
.account-error { color: var(--error); font-size: .875rem; margin: 0; }
.account-success { color: var(--green); font-size: .875rem; margin: 0; }
.account-error:empty, .account-success:empty { display: none; }
.account-notice { background: #eaf7f1; color: #246351; font-size: .875rem; padding: 12px 14px; border-radius: 10px; line-height: 1.5; }
.form-link { color: var(--green); justify-self: end; min-height: 32px; font-size: .875rem; }
.auth-card [data-account-form="login"] > .form-link { margin-top: -6px; }
.auth-layout .shell { display: block; max-width: 540px; }
.auth-layout .sidebar, .auth-layout .bottom-nav, .auth-layout .header-actions { display: none; }
.auth-layout .workspace { padding-inline: 20px; }
.auth-layout .topbar { display: none; }
.auth-layout main { padding-top: 32px; }
.auth-layout .app-footer { padding-bottom: 32px; }
.auth-card { padding: 32px; }
.auth-card .auth-brand { margin-bottom: 24px; gap: 9px; font-size: 1.375rem; line-height: 1.2; letter-spacing: -.7px; }
.auth-card .auth-brand .brand-logo { width: 34px; height: 34px; flex: none; }
.auth-card h1 { font-size: 1.75rem; }
.auth-intro { color: var(--muted); font-size: 1rem; margin-bottom: 24px; }
.auth-switch { text-align: center; color: var(--muted); font-size: .875rem; margin: 24px 0 0; }
.auth-switch a { color: var(--green); font-weight: 600; display: inline-block; padding-block: 8px; }
.local-inbox { text-align: center; font-size: .8125rem; color: var(--muted); line-height: 1.6; border-top: 1px solid var(--line); padding-top: 16px; margin: 16px 0 0; }
.local-inbox a { color: var(--green); text-decoration: underline; text-underline-offset: 3px; }
.side-help { display: inline-block; margin-top: 12px; color: var(--green); font-size: .875rem; }
.profile-identity { display: flex; align-items: center; gap: 16px; }
.account-avatar { width: 68px; height: 68px; flex: 0 0 auto; background: #e2eee8; border-radius: 22px; display: grid; place-items: center; font-size: 1.4rem; font-weight: 650; color: #2b6452; }
.account-avatar, .header-actions .avatar { overflow: hidden; }
.account-avatar img, .header-actions .avatar img { width: 100%; height: 100%; object-fit: cover; }
.avatar-initials[hidden], [data-account-avatar][hidden], [data-account-action][hidden] { display: none; }
.photo-preview { display: flex; gap: 16px; align-items: center; margin-bottom: 20px; }
.photo-preview .account-avatar { width: 80px; height: 80px; }
.photo-preview p { font-size: .875rem; }
.account-field input[type="file"] { font-size: .875rem; padding: 8px; }
.account-field input[type="file"]::file-selector-button { min-height: 36px; margin-right: 8px; border: 0; border-radius: 6px; padding: 8px; color: var(--green); background: #e7f4ec; }
.request-history { padding-block: 16px; border-top: 1px solid var(--line); }
.request-history > div { display: flex; flex-wrap: wrap; gap: 8px; justify-content: space-between; }
.request-history small { color: var(--muted); }
.request-history p, .closure-review p { overflow-wrap: anywhere; }
.request-history p { margin: 8px 0; font-size: .875rem; }
.operator-tabs { margin-bottom: 20px; }
.operator-tabs { flex-wrap: wrap; }
.community-filter { margin-bottom: 20px; min-width: 0; }
.community-actions { display: flex; gap: 16px; align-items: start; justify-content: space-between; margin-bottom: 20px; }
.community-actions .community-filter { flex: 1; max-width: 240px; margin-bottom: 0; }
.community-actions > .account-button { margin-top: 29px; }
.load-more { width: 100%; margin-top: 16px; }
.history-row { display: flex; gap: 12px; padding-block: 16px; border-bottom: 1px solid var(--line); }
.history-row:last-child { border-bottom: 0; }
.history-row > div { min-width: 0; }
.history-row p { font-size: .875rem; margin: 6px 0; overflow-wrap: anywhere; }
.history-row small { color: var(--muted); }
.invitation-code { overflow-wrap: anywhere; font-size: .8125rem; }
.invite-card .invitation-code { max-width: none; margin: 0 0 16px; }
.invitation-code code { display: block; padding: 4px; user-select: all; }
.referral-review summary { color: var(--green); padding-block: 14px; cursor: pointer; }
.referral-review p { overflow-wrap: anywhere; }
.referral-row .status { flex: 0 0 auto; }
.referral-row small { overflow-wrap: anywhere; }
.announcement-card { margin-top: 20px; }
#article-preview { padding: 20px; background: #f3f8f5; border: 1px solid var(--line); border-radius: 12px; }
.level-unlocked { display: flex; align-items: center; gap: 14px; background: #e5f5ec; border: 1px solid #bddeca; border-radius: 16px; padding: 20px; margin-bottom: 16px; color: #126444; animation: level-reveal 220ms var(--ease-out) both; }
.level-unlocked strong, .level-unlocked small { display: block; }
.level-unlocked small { margin-top: 4px; }
@keyframes level-reveal { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.closure-review summary { padding-block: 14px; color: var(--green); cursor: pointer; }
#unsaved-dialog { padding: 0; }
.unsaved-content { padding: 24px; }
.unsaved-content h2 { font-size: 1.3rem; margin-bottom: 12px; }
.unsaved-content p { color: var(--muted); line-height: 1.5; }
.unsaved-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.unsaved-actions > button { flex: 1; }
.profile-identity > div { flex: 1; min-width: 0; }
.profile-identity h2 { margin: 0 0 4px; overflow-wrap: anywhere; }
.profile-identity p { font-size: .875rem; margin: 0 0 6px; overflow-wrap: anywhere; }
.verified-label { display: inline-flex; gap: 5px; align-items: center; color: var(--green); font-size: .8125rem; }
.verified-label svg { width: 15px; height: 15px; }
.level-banner { display: flex; align-items: center; gap: 14px; padding: 20px 24px; background: #e7f4ec; border: 1px solid #cde4d5; border-radius: 18px; }
.level-banner > span:nth-child(2) { flex: 1; min-width: 0; }
.level-banner strong { display: block; font-size: 1.1rem; margin-bottom: 3px; }
.level-banner small { display: block; color: #4d6758; font-size: .875rem; }
.level-seal { display: grid; place-items: center; width: 44px; height: 44px; color: #18775e; flex-shrink: 0; }
.level-seal svg { width: 36px; height: 36px; }
.account-menu { padding: 4px 20px; }
.account-menu-row { display: flex; align-items: center; gap: 12px; min-height: 78px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.account-menu-row:last-child { border-bottom: 0; }
.account-menu-row > span:nth-child(2) { flex: 1; min-width: 0; }
.account-menu-row strong { display: block; font-size: 1rem; font-weight: 600; }
.account-menu-row small { display: block; color: var(--muted); font-size: .875rem; margin-top: 3px; }
.account-menu-row > svg { width: 18px; color: #73867c; }
.menu-icon { width: 38px; height: 38px; display: grid; place-items: center; color: #587466; flex-shrink: 0; }
.preference-row { display: flex; align-items: center; gap: 20px; min-height: 70px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.preference-row > span { flex: 1; }
.preference-row strong { display: block; font-size: .9375rem; font-weight: 600; }
.preference-row small { display: block; color: var(--muted); font-size: .875rem; margin-top: 4px; }
.preference-row input { width: 22px; height: 22px; margin: 11px; accent-color: var(--green); }
.session-row, .referral-row { display: flex; align-items: center; gap: 12px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.session-row > span, .referral-row > span:nth-child(2) { flex: 1; min-width: 0; }
.session-row strong, .referral-row strong { display: block; font-weight: 500; font-size: .9375rem; }
.session-row small, .referral-row small { display: block; color: var(--muted); font-size: .8125rem; margin-top: 4px; }
.session-list { margin-bottom: 16px; }
.feature-icon { width: 62px; height: 62px; background: #e4f3ea; display: inline-grid; place-items: center; border-radius: 20px; color: var(--green); margin-bottom: 16px; }
.feature-icon svg { width: 30px; height: 30px; }
.invite-card, .level-hero { text-align: center; }
.invite-card h2 { font-size: 1.5rem; }
.invite-card p { max-width: 36ch; margin: 0 auto 24px; }
.invite-card > label { display: block; text-align: left; margin-bottom: 8px; }
.invite-link { display: flex; gap: 8px; align-items: center; margin-bottom: 16px; }
.invite-link input { font-size: .875rem; color: var(--muted); }
.invite-card > .account-button, .level-hero > .account-button { width: 100%; }
.mini-avatar { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; background: var(--mint); color: var(--green); display: grid; place-items: center; }
.invitation-empty { padding-top: 10px; }
.level-hero > .account-muted { display: block; }
.level-hero h2 { font-size: 2.5rem; margin: 4px 0; letter-spacing: -1px; }
.level-hero > p { margin-bottom: 24px; }
.next-level { display: flex; justify-content: space-between; gap: 12px; font-size: .875rem; text-align: left; }
.next-level strong { color: var(--green); font-weight: 500; }
.level-hero progress { margin: 12px 0 24px; width: 100%; height: 8px; }
.milestones { padding: 0; margin: 0; list-style: none; }
.milestones li { display: flex; gap: 14px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--line); }
.milestones li:last-child { border-bottom: 0; padding-bottom: 0; }
.milestone-icon { width: 38px; height: 38px; flex: 0 0 auto; border-radius: 50%; border: 1px solid var(--line); display: grid; place-items: center; color: var(--muted); background: #f7faf8; }
.achieved .milestone-icon { background: var(--green); color: white; border-color: var(--green); }
.milestones strong, .milestones small { display: block; }
.milestones strong { font-size: .9375rem; font-weight: 600; }
.milestones small { font-size: .875rem; color: var(--muted); margin-top: 3px; }
.current-label { font-size: .75rem; color: var(--green); margin-left: auto; }
.notification-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 16px; }
.account-tabs { display: flex; flex-wrap: wrap; padding: 4px; gap: 4px; background: #eaf0ec; border-radius: 12px; }
.account-tabs a { padding: 10px 14px; min-height: 44px; display: grid; place-items: center; font-size: .875rem; border-radius: 8px; color: var(--muted); }
.account-tabs .selected { background: #fff; color: var(--green); box-shadow: 0 1px 3px #193d2510; }
.notification-list { padding: 0; overflow: hidden; }
.notification-item { display: flex; gap: 14px; padding: 20px; border-bottom: 1px solid var(--line); }
.notification-item:last-child { border-bottom: 0; }
.notification-item.unread { background: #f1faf5; }
.notification-item > span:nth-child(2) { min-width: 0; }
.notification-item strong { display: block; font-weight: 600; font-size: 1rem; margin-bottom: 5px; }
.notification-item span > span { display: block; color: var(--muted); font-size: .875rem; line-height: 1.5; }
.notification-item small { display: block; color: var(--muted); font-size: .8125rem; margin-top: 8px; }
.notification-symbol { width: 38px; height: 38px; background: #e2f0e7; color: var(--green); border-radius: 12px; display: grid; place-items: center; flex-shrink: 0; }
.empty-account { text-align: center; padding-block: 36px; }
.empty-icon { display: inline-flex; color: #678474; margin-bottom: 16px; }
.empty-icon svg { width: 32px; height: 32px; }
.empty-account p { max-width: 38ch; margin-inline: auto; }
.article-meta { display: block; font-size: .8125rem; color: var(--muted); margin-bottom: 12px; }
.article-card h2 { font-size: 1.25rem; }
.news-article { overflow-wrap: anywhere; }
.news-article h1 { font-size: 1.75rem; margin: 16px 0; }
.news-article .article-lead { font-size: 1.125rem; }
.news-article p { margin-bottom: 20px; }
.welcome-mining { display: flex; align-items: center; gap: 16px; background: #eaf6f0; }
.welcome-mining > div { flex: 1; min-width: 0; }
.welcome-mining img { width: 32%; height: auto; mix-blend-mode: multiply; object-fit: contain; }
.account-loading { min-height: 260px; display: grid; place-items: center; color: var(--muted); }
.first-entrance .account-stack > :nth-child(-n+3), .first-entrance > .auth-card {
  transition: opacity 200ms var(--ease-out), transform 200ms var(--ease-out);
}
.first-entrance .account-stack > :nth-child(2) { transition-delay: 40ms; }
.first-entrance .account-stack > :nth-child(3) { transition-delay: 80ms; }
@starting-style {
  .first-entrance .account-stack > :nth-child(-n+3), .first-entrance > .auth-card { opacity: 0; transform: translateY(6px); }
}
@media (hover: hover) and (pointer: fine) {
  .account-button.primary:hover { background: #056b57; }
  .account-menu-row:hover, .article-card:hover { color: var(--green); }
}
@media (max-width: 780px) {
  .workspace { padding-inline: 16px; }
  .account-card { padding: 20px; }
  .account-menu { padding: 2px 16px; }
  .account-main .page-head { margin-bottom: 20px; }
  .account-two { gap: 12px; }
  .account-two .account-card { padding: 16px; }
  .level-banner { padding: 18px 16px; }
  .profile-identity { gap: 12px; }
  .profile-identity .account-avatar { width: 52px; height: 52px; border-radius: 17px; font-size: 1.1rem; }
  .profile-identity h2 { font-size: 1.0625rem; }
  .profile-identity > .icon-button { width: 44px; height: 44px; }
  .account-main { padding-bottom: 12px; }
  .notification-list { padding: 0; }
  .notification-item { padding: 18px 16px; }
}
@media (max-width: 360px) {
  .community-actions { flex-wrap: wrap; }
  .community-actions > .account-button { margin-top: 0; }
  .community-actions .community-filter { max-width: none; flex-basis: 100%; }
  .account-card { padding: 16px; }
  .auth-layout .workspace { padding-inline: 12px; }
  .auth-card { padding: 24px 20px; }
  .profile-identity { flex-wrap: wrap; }
  .profile-identity > div { min-width: 135px; }
  .notification-toolbar { flex-wrap: wrap; }
  .welcome-mining img { display: none; }
  .notification-list { padding: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .level-unlocked { animation: none; }
  .account-button, .first-entrance .account-stack > :nth-child(-n+3), .first-entrance > .auth-card { transition: none; transform: none; }
  @starting-style { .first-entrance .account-stack > :nth-child(-n+3), .first-entrance > .auth-card { opacity: 1; transform: none; } }
}
.support-conversation { display: grid; gap: 16px; }
.support-home-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, 1fr); gap: 20px; align-items: start; }
.support-card-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.support-card-heading h2 { margin: 0; font-size: 1.125rem; }
.support-card-heading p { margin: 4px 0 0; font-size: .875rem; }
.support-form-top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 16px; }
.support-compose .account-form > button { width: 100%; }
.support-request-card .account-menu-row { overflow-wrap: anywhere; }
.support-request-card .account-menu-row > svg { width: 20px; height: 20px; flex-shrink: 0; }
.support-request-empty { border-radius: 14px; background: #f5faf8; }
.support-request-empty h3 { font-size: 1rem; margin: 12px 0 0; }
.support-request-card .support-demo-note { border-top: 1px solid var(--line); padding-top: 18px; margin-top: 20px; font-size: .8125rem; }
.support-workspace .support-toolbar { flex-wrap: wrap; }
.support-workspace .support-controls { padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); margin-bottom: 20px; }
.support-controls .support-search { margin-bottom: 0; }
@media (max-width: 900px) { .support-home-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 540px) { .support-form-top { grid-template-columns: minmax(0, 1fr); } .support-compose, .support-request-card { padding: 20px; } }
.support-message { padding: 20px; border: 1px solid #dce9e5; border-radius: 18px; background: #fff; min-width: 0; }
.support-message.from-support { background: #eef9f5; border-color: #cde9de; }
.support-message header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.support-message time, .support-message small { color: #536b65; font-size: .8125rem; }
.support-message p { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.6; margin-block: 12px 0; }
.support-message small { display: block; margin-top: 12px; }
.audit-entry { overflow-wrap: anywhere; }
.audit-entry > small { display: block; color: #536b65; margin-top: 4px; }
.audit-entry dl { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 8px; font-size: .8125rem; }
.audit-entry dd { margin: 0; }
.referral-row .text-link { display: inline-flex; min-height: 44px; align-items: center; }
.ledger-amount { font-variant-numeric: tabular-nums; white-space: nowrap; margin-left: auto; }
.operational-details { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(0, 1.4fr); gap: 16px; margin-block: 24px 0; }
.operational-details dt { color: #536b65; }
.operational-details dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.saved-rental { display: flex; align-items: center; gap: 16px; color: inherit; text-decoration: none; }
.saved-rental > div { flex: 1; min-width: 0; }
.saved-rental h2 { margin-bottom: 4px; overflow-wrap: anywhere; }
.saved-rental p { margin: 0 0 8px; }
.saved-rental small { color: #536b65; }
.rental-terms { white-space: pre-wrap; overflow-wrap: anywhere; }
.catalog-search { display: flex; gap: 12px; margin-bottom: 20px; }
.catalog-search input { flex: 1; min-width: 0; min-height: 52px; border: 1px solid #b5c9c0; background: #fbfdfc; border-radius: 10px; padding: 12px 14px; font: inherit; font-size: 1rem; }
.catalog-search .account-button { margin-top: 0; flex-shrink: 0; }
.catalog-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.catalog-actions .account-button { margin-top: 0; flex: 1 1 180px; }
.catalog-terms { margin-top: 24px; }
.service-status-row { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; padding-block: 14px; border-bottom: 1px solid #dce9e5; }
.service-status-row strong { font-size: .875rem; color: #536b65; }
.approved-catalog { grid-template-columns: minmax(0, 1fr); max-width: 640px; gap: 24px; margin-top: 20px; }
@media (min-width: 1081px) {
  .account-main:has(.approved-catalog) { max-width: none; }
  .approved-catalog { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: none; }
}
.approved-offer-detail { max-width: 640px; }
.approved-catalog .offer-title h2, .approved-offer-detail .offer-title h2 { margin-bottom: 0; overflow-wrap: anywhere; }
.offer-financials .offer-estimate-pending { font-size: 1.125rem; line-height: 1.4; letter-spacing: 0; }
.approved-catalog .offer-financials strong, .approved-offer-detail .offer-financials strong { overflow-wrap: anywhere; }
.offer-photo-missing { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 12px; color: #58716b; }
.offer-photo-missing svg { width: 64px; height: 64px; }
.offer-checkout { width: 100%; margin-top: 20px; min-height: 60px; }
.offer-checkout:disabled { cursor: not-allowed; }
.offer-financials .offer-estimate-loss, .account-card .offer-estimate-loss { color: #a04726; }
.offer-disclosure-fields { padding-block: 12px; border-top: 1px solid var(--line); }
.offer-disclosure-fields[open] > .account-field, .offer-disclosure-fields[open] > .account-two { margin-top: 16px; }
.rental-filters { margin-bottom: 16px; align-items: start; }
.rental-row-time { display: block; margin-top: 6px; }
.rental-attention { list-style: none; padding: 0; margin: 12px 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.rental-attention li { font-size: .8125rem; line-height: 1.4; padding: 6px 10px; color: #72501c; background: #fff4dc; border-radius: 8px; }
.rental-record-reference { overflow-wrap: anywhere; }
.reading-state { display: inline-block; padding: 5px 10px; border-radius: 8px; color: #35534a; background: #edf4ef; font-size: .875rem; }
[data-reading-state="stale"] .reading-state, [data-reading-state="unavailable"] .reading-state { color: #72501c; background: #fff4dc; }
.reading-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 20px 0; }
.reading-metrics dt { color: var(--muted); font-size: .8125rem; }
.reading-metrics dd { margin: 8px 0 0; font-size: 1.125rem; font-weight: 650; overflow-wrap: anywhere; }
.reading-periods { display: flex; flex-wrap: wrap; gap: 8px; margin-block: 20px 8px; }
.reading-periods a { min-height: 44px; padding: 12px 14px; border-radius: 8px; font-size: .875rem; }
.reading-periods [aria-current] { background: #e1f4eb; color: #116d53; }
.reading-chart { display: block; width: 100%; height: auto; margin-top: 20px; }
.reading-chart-guide { fill: none; stroke: var(--line); }
.reading-chart-line { fill: none; stroke: #128265; stroke-width: 2; }
.reading-chart-point { fill: #128265; }
.reading-chart-axis { display: flex; justify-content: space-between; gap: 16px; color: var(--muted); font-size: .75rem; }
.reading-chart-axis span:last-child { text-align: right; }
.reading-values { margin-block: 16px; }
.reading-values summary { padding-block: 12px; min-height: 44px; }
.reading-table-wrap { overflow-x: auto; margin-top: 12px; }
.reading-table-wrap table { border-collapse: collapse; width: 100%; text-align: left; font-size: .8125rem; }
.reading-table-wrap th, .reading-table-wrap td { border-bottom: 1px solid var(--line); padding: 10px; min-width: 85px; }
.reading-table-wrap th:first-child { min-width: 138px; }
@media (max-width: 380px) { .reading-metrics { grid-template-columns: minmax(0, 1fr); gap: 12px; } .reading-metrics div { display: flex; justify-content: space-between; gap: 12px; } .reading-metrics dd { margin-top: 0; text-align: right; } }
.overview-wallet { background: #edf8f3; }
.overview-wallet .account-value { font-size: clamp(1.75rem, 6vw, 2.5rem); overflow-wrap: anywhere; }
.overview-wallet-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 20px 0; }
.overview-wallet-details dt { color: var(--muted); font-size: .875rem; }
.overview-wallet-details dd { margin: 6px 0 0; font-weight: 600; overflow-wrap: anywhere; }
.overview-wallet .account-button { width: 100%; }
.overview-metrics .account-card { padding: 16px; }
.overview-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.overview-section-heading h2 { margin-bottom: 0; }
.overview-section-heading .text-link { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; flex-shrink: 0; font-size: .875rem; }
.overview-section-heading svg, .overview-level svg { width: 16px; height: 16px; }
.overview-secondary-action { margin-top: 16px; }
.overview-status-note { margin: 10px 0 0; }
.overview-level { display: block; }
.overview-level .text-link { display: flex; align-items: center; gap: 4px; font-size: .875rem; }
.overview-checked { margin: 0; text-align: center; }
.provider-event-row, .provider-event-row:last-child { padding: 16px; border: 1px solid var(--line); }
.provider-event-row > span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.provider-event-row > svg { flex-shrink: 0; }
.saved-rental small { overflow-wrap: anywhere; }
@media (max-width: 430px) {
  .rental-filters { grid-template-columns: minmax(0, 1fr); }
}

/* Support conversations */
.nav-tone-support { color:#7655df; background:#f0eaff; }
.support-toolbar,.support-search {display:flex;gap:12px;align-items:center;margin-bottom:20px;}
.support-toolbar .icon {width:18px;height:18px;}
.support-filters {display:flex;gap:6px;flex-wrap:wrap;padding:6px;background:#eaf2f1;border-radius:14px;margin-bottom:18px;}
.support-filters a {padding:10px 16px;border-radius:10px;color:#526c78;text-decoration:none;font-weight:600;font-size:14px;}
.support-filters a[aria-current] {background:#fff;color:#007e6b;box-shadow:0 2px 6px #173b3710;}
.support-search input {flex:1;min-width:0;border:1px solid #dce7e5;border-radius:10px;padding:12px;background:white;font:inherit;}
.support-ticket-list {padding:0!important;overflow:hidden;}
.support-ticket-row {display:flex;align-items:center;gap:16px;padding:22px;text-decoration:none;color:inherit;border-bottom:1px solid #e5edeb;}
.support-ticket-row:last-child {border-bottom:0;}
.support-ticket-row:hover {background:#f5fbf9;}
.support-ticket-icon {display:grid;place-items:center;background:#e5f6f1;color:#008771;border-radius:12px;width:44px;height:44px;flex-shrink:0;}
.support-ticket-icon svg,.support-ticket-row>svg {width:22px;height:22px;}
.support-ticket-copy {min-width:0;flex:1;display:grid;gap:7px;overflow-wrap:anywhere;}
.support-ticket-copy small,.support-ticket-meta {color:#6c8390;font-size:13px;}
.support-status {display:inline-flex;align-items:center;border-radius:30px;padding:6px 10px;font-size:12px;font-weight:600;white-space:nowrap;background:#e8f1ff;color:#2364b2;}
.support-status-waiting {background:#fff4d9;color:#8c5c06;}
.support-status-resolved {background:#def5e9;color:#087344;}
.support-ticket-meta {display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:-10px 0 24px;}
.support-conversation {display:grid;gap:16px;}
.support-message {overflow-wrap:anywhere;}
.support-message header time {font-size:12px;color:#667e8b;}
.support-attachments,.support-image-previews {display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;}
.support-attachments img,.support-image-previews img {width:130px;height:100px;object-fit:cover;border:1px solid #d7e6e1;border-radius:10px;display:block;}
.support-image-previews>div {display:grid;gap:6px;}
.support-upload input {padding:12px;background:#f8fbfa;border:1px dashed #b6cfc8;border-radius:10px;max-width:100%;}
.support-empty {padding:48px 24px;text-align:center;}
.support-empty>svg {width:40px;height:40px;color:#008a73;}
.support-empty p {color:#6c8390;margin:12px auto 24px;max-width:430px;}
@media(max-width:600px){.support-ticket-row{padding:16px;gap:10px;flex-wrap:wrap}.support-ticket-copy{flex-basis:70%}.support-ticket-row>svg{display:none}.support-ticket-row>.support-status{margin-left:54px}.support-message header{gap:8px;flex-wrap:wrap}.support-filters a{padding:9px 11px}}
.support-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;border-radius:20px;background:#7455dd;color:#fff;font-size:11px;font-weight:700;line-height:1}
.support-unread-badge[hidden]{display:none}
.support-ticket-row.is-unread{background:#f7f4ff;box-shadow:inset 3px 0 #7953df}
.support-ticket-row.is-unread:hover{background:#f0ebff}
.support-ticket-copy strong{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.support-ticket-unread{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:20px;background:#ede5ff;color:#6941c6;font-size:11px;font-weight:600;white-space:nowrap}
.support-ticket-unread i{width:6px;height:6px;border-radius:50%;background:currentColor}

/* Keep ticket navigation and read-state controls separate for keyboard access. */
.support-ticket-row .support-ticket-link{display:flex;align-items:center;gap:16px;flex:1;min-width:0;color:inherit;text-decoration:none}
.support-ticket-link .support-ticket-copy{flex:1;min-width:0}
.support-ticket-row .support-read-action{flex-shrink:0;font-size:12px;padding:8px 12px;min-height:36px}
.support-ticket-row .support-read-action:disabled{opacity:.45;cursor:default}
@media(max-width:640px){.support-ticket-row .support-ticket-link{flex-wrap:wrap;flex-basis:100%}.support-ticket-row .support-read-action{margin-left:54px}.support-ticket-link .support-ticket-copy{flex-basis:70%}}

.support-ticket-link>svg{width:22px;height:22px;flex-shrink:0}
@media(max-width:640px){.support-ticket-link>svg{display:none}.support-ticket-link>.support-status{margin-left:54px}}
