/*
File: public/app/styles/account.css
Purpose: Own Account/Profile/Settings-specific presentation for the local SMS opt-in card.
Owner/Card: BC-20260922-THROTTLELEAGUE-WEB-SMS-OPT-IN-DEPENDENCY-REPAIR-LOCAL-ACCEPTANCE-190
Runtime Surface: Account/Settings UI stylesheet
Public API: CSS selectors only
Dependencies: public/styles.css design tokens and button/card primitives.
Side Effects: None; presentation only.
Determinism: Fixed selectors and responsive rules produce stable layout for the same viewport and markup.
Safety: No behavior, persistence, legal content, or external integration is implemented here.
Evidence: Card-190 responsive browser evidence and focused markup verifier.
Notes: The rest of Account/Profile styling remains in the shared stylesheet.
*/

/* SECTION: SMS Consent Card */
/* Descriptor: Keeps the disclosure, phone field, consent, support, legal links, and event preferences readable as one reviewable flow. */
.settings-sms-card { grid-column: 1 / -1; }
.sms-settings { display: grid; gap: 12px; }
.sms-brand-context { margin: 0; }
.sms-phone-label { display: grid; gap: 6px; }
.sms-consent-row, .sms-preference-row { display: flex; align-items: flex-start; gap: 9px; min-width: 0; }
.sms-consent-row input, .sms-preference-row input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--teal); }
.sms-consent-row span, .sms-preference-row span { min-width: 0; line-height: 1.45; }
.sms-disclosure, .sms-help { margin: 0; line-height: 1.55; }
.sms-legal-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.sms-preferences { display: grid; gap: 10px; margin: 0; padding: 12px; border: 1px solid var(--line); border-radius: 7px; }
.sms-preferences legend { padding: 0 6px; color: var(--amber); font-weight: 800; }
.sms-preferences:disabled { opacity: .72; }

/* SECTION: SMS-I mobile interaction. Labels own the whole touch target. */
.sms-settings { min-width: 0; overflow-wrap: anywhere; }
.sms-consent-row, .sms-preference-row { min-height: 44px; align-items: center; }
.sms-settings input[type="tel"] { min-height: 44px; font-size: 16px; }
.sms-settings .toolbar button { min-height: 44px; }
.sms-settings .sms-legal-links a { min-height: 44px; display: inline-flex; align-items: center; }

/* SECTION: Legal & Agreements */
/* Descriptor: Keeps the four authoritative document links readable, keyboard reachable, and isolated from save controls. */
.settings-legal-card { grid-column: 1 / -1; }
.legal-document-list { display: grid; gap: 10px; }
.legal-document-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 7px; }
.legal-document-row > div { min-width: 0; }
.legal-document-row strong { overflow-wrap: anywhere; }
.legal-document-row .btn { flex: 0 0 auto; }
.legal-documents-status { margin: 0; line-height: 1.55; }
.legal-document-row a:focus-visible, .settings-legal-card button:focus-visible { outline: 3px solid var(--amber); outline-offset: 3px; }

/* SECTION: Responsive Account Layout */
/* Descriptor: Preserves one-column readability at narrow widths without changing shared application breakpoints. */
@media (max-width: 640px) {
  .settings-sms-card, .settings-legal-card { grid-column: auto; }
  .sms-disclosure, .sms-help { font-size: 14px; }
  .legal-document-row { align-items: flex-start; flex-direction: column; }
  .legal-document-row .btn { width: 100%; text-align: center; }
}
