/* Final mobile content layer. Desktop styles and all financial calculations stay unchanged. */
@media (max-width: 760px) {
  :is(#page-agent-work, #page-tasks, #page-assistants, #page-account, #page-wallet, #page-tools, #page-project, #page-projects) {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  /* Controls retain their existing actions; only their reading and touch size changes. */
  :is(#page-agent-work, #page-tasks, #page-assistants, #page-account, #page-wallet, #page-tools, #page-project, #page-projects) button,
  :is(.agent-work-form, .agent-work-confirm, .assistant-editor, .project-file-picker, .project-settings-form) button {
    min-height: 44px;
    min-width: 44px;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.45;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  :is(.agent-work-form, .agent-work-continuation, .assistant-editor-form, .member-form, .project-settings-form, .tasks-filter) input:not([type=checkbox]):not([type=radio]),
  :is(.agent-work-form, .agent-work-continuation, .assistant-editor-form, .member-form, .project-settings-form, .tasks-filter) :is(select, textarea),
  .billing-line input, .billing-topup-label input, .tool-catalog-search, .project-search, .ws-search {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 48px;
    font-size: 16px;
    line-height: 1.5;
    padding: 12px;
    box-sizing: border-box;
  }
  :is(.agent-work-form, .agent-work-continuation, .assistant-editor-form, .member-form, .project-settings-form) label,
  .tasks-filter, .billing-topup-label, .member-field-label {
    min-width: 0;
    font-size: 14px;
    line-height: 1.55;
  }
  :is(.agent-work-form, .agent-work-continuation, .assistant-editor-form, .member-form, .project-settings-form) textarea {
    min-height: 120px;
  }

  /* Durable cloud work: one readable card per row, followed by its full detail. */
  .agent-work-heading { display: block; margin: 0 0 24px; }
  .agent-work-heading h2 { font-size: 30px; line-height: 1.2; letter-spacing: -.8px; }
  .agent-work-heading .lead { font-size: 16px; line-height: 1.65; }
  .agent-work-heading > .primary { width: 100%; margin: 18px 0 0; padding: 12px 16px; }
  .agent-work-layout, .agent-work-task-list, .agent-work-template-grid, .agent-work-form-row { grid-template-columns: minmax(0, 1fr); }
  .agent-work-layout { gap: 20px; }
  .agent-work-task-list { gap: 12px; }
  .agent-work-task, .agent-work-detail { padding: 18px; border-radius: 16px; }
  .agent-work-task > strong { font-size: 17px; line-height: 1.45; }
  .agent-work-task-goal { font-size: 15px; line-height: 1.6; }
  .agent-work-task > small, .agent-work-assistant > small { font-size: 14px; line-height: 1.5; }
  .agent-work-status, .agent-work-task .agent-work-status { max-width: 100%; font-size: 14px; white-space: normal; padding: 6px 9px; }
  .agent-work-summary { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 16px 18px; }
  .agent-work-summary > div:not(.agent-work-connection) { flex-direction: row; justify-content: space-between; align-items: center; gap: 12px; }
  .agent-work-summary strong { font-size: 25px; }
  .agent-work-summary span { font-size: 14px; line-height: 1.5; }
  .agent-work-toolbar { display: grid; gap: 12px; margin: 22px 0 16px; }
  .agent-work-filters { gap: 8px; }
  .agent-work-filter { flex: 1 1 120px; padding: 10px 12px; }
  .agent-work-toolbar > .link { justify-self: start; font-size: 14px; padding: 10px 0; }
  .agent-work-template { grid-template-columns: 36px minmax(0, 1fr); gap: 6px 12px; padding: 16px; }
  .agent-work-template-mark { width: 36px; height: 36px; grid-row: 1 / 3; margin: 0; }
  .agent-work-template strong { font-size: 16px; line-height: 1.5; }
  .agent-work-template > span:last-child, .agent-work-template-heading p { font-size: 14px; line-height: 1.6; }
  .agent-work-template-heading { display: block; }
  .agent-work-template-heading h3 { font-size: 18px; }
  .agent-work-template-heading p { margin-top: 6px; }
  .agent-work-detail-top { flex-wrap: wrap; align-items: flex-start; }
  .agent-work-task-mode { font-size: 14px; line-height: 1.5; }
  .agent-work-detail-title { font-size: 25px; line-height: 1.35; margin-top: 18px; }
  .agent-work-assistant { flex-wrap: wrap; font-size: 15px; gap: 9px; }
  .agent-work-assistant > small { width: 100%; margin-left: 0; }
  .agent-work-brief, .agent-work-context { padding: 14px; }
  .agent-work-facts { grid-template-columns: minmax(0, 1fr); gap: 5px; font-size: 15px; line-height: 1.6; }
  .agent-work-facts dt { margin-top: 8px; }
  .agent-work-facts dd { text-align: left; font-size: 16px; }
  .agent-work-brief > summary, .agent-work-usage > summary, .agent-work-state-detail > summary, .agent-work-context > summary {
    min-height: 44px; font-size: 15px; line-height: 1.55; padding: 10px 0; cursor: pointer;
  }
  .agent-work-goal, .agent-work-output-content { font-size: 16px; line-height: 1.75; }
  .agent-work-caption, .agent-work-note, .agent-work-note p, .agent-work-feedback, .agent-work-task-notice,
  .agent-work-form-intro p, .agent-work-template-preview, .agent-work-confirm-goal, .agent-work-confirm-notice,
  .agent-work-empty p, .agent-work-output-empty p, .agent-work-detail-placeholder, .agent-work-loading {
    font-size: 14px; line-height: 1.7; overflow-wrap: anywhere;
  }
  .agent-work-note { padding: 15px; }
  .agent-work-controls, .agent-work-form-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .agent-work-controls button, .agent-work-form-actions button, .agent-work-form-recovery button { width: 100%; padding: 12px 14px; }
  .agent-work-form-actions > .primary, .agent-work-form-actions > .secondary, .agent-work-context > .secondary { min-height: 44px; font-size: 14px; }
  .agent-work-continuation > .secondary { justify-self: stretch; font-size: 14px; }
  .agent-work-draft-tag, .agent-work-paid-tag { font-size: 13px; letter-spacing: .7px; line-height: 1.5; }
  .agent-work-draft-persona { font-size: 15px; line-height: 1.5; }
  .agent-work-result-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .agent-work-result-actions > .link { font-size: 14px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; }
  .agent-work-welcome { padding: 28px 20px; border-radius: 18px; }
  .agent-work-welcome h3, .agent-work-confirm h3 { font-size: 25px; line-height: 1.35; }
  .agent-work-welcome p { font-size: 16px; line-height: 1.7; }
  .agent-work-welcome a.primary { width: 100%; min-height: 48px; font-size: 16px; padding: 12px 16px; }
  .agent-work-artifact { padding: 14px; min-height: 58px; }
  .agent-work-artifact strong { font-size: 16px; white-space: normal; overflow: visible; overflow-wrap: anywhere; }
  .agent-work-artifact small, .agent-work-artifacts h4, .agent-work-sources h4 { font-size: 14px; line-height: 1.5; }
  .agent-work-sources .source-link, .task-sources a { width: 100%; max-width: 100%; min-height: 44px; font-size: 14px; overflow-wrap: anywhere; }
  .agent-work-sources .source-link span:last-child { white-space: normal; }

  /* Shared task history and saved results. */
  .tasks-toolbar, .tasks-grid { grid-template-columns: minmax(0, 1fr); }
  .tasks-filter, .tasks-search { min-width: 0; }
  .tasks-grid { gap: 14px; }
  .task-card, .task-result { min-width: 0; padding: 18px; border-radius: 16px; }
  .task-card h3 { font-size: 19px; line-height: 1.4; }
  .task-preview, .task-result { font-size: 16px; line-height: 1.7; }
  .task-kind, .task-date, .task-id, .task-card .task-status, .task-detail-head .task-status, .tasks-count, .tasks-feedback, .tasks-explanation { font-size: 14px; line-height: 1.65; }
  .task-card .task-status, .task-detail-head .task-status { width: auto; max-width: 100%; white-space: normal; margin: 0; }
  .task-detail-head { flex-wrap: wrap; align-items: flex-start; }
  .task-detail-actions { display: grid; gap: 10px; }
  .task-detail-actions button { width: 100%; }
  .tasks-empty { padding: 28px 18px; }
  .tasks-empty p { font-size: 16px; }

  /* Companions keep full descriptions and comfortably sized selection controls. */
  .assistant-gallery, .settings-panel .assistant-gallery, .assistant-editor, .assistant-form-grid { grid-template-columns: minmax(0, 1fr); }
  .assistants-hero { display: block; padding: 22px 18px; border-radius: 18px; }
  .assistants-hero > .assistant-avatar-hero { display: none; }
  .assistants-hero h2 { font-size: 30px; line-height: 1.2; }
  .assistants-hero p { font-size: 16px; line-height: 1.7; }
  .assistants-hero-actions { display: grid; gap: 10px; }
  .assistants-hero-actions .primary { width: 100%; padding: 12px 16px; font-size: 16px; }
  .assistants-hero-actions .link { font-size: 14px; }
  .assistant-card, .settings-panel .assistant-card { padding: 20px; }
  .assistant-card h3 { font-size: 24px; }
  .assistant-card-description { min-height: 0; font-size: 16px; line-height: 1.7; }
  .assistant-card-type { font-size: 13px; letter-spacing: .8px; }
  .assistant-avatar-card { width: 112px; height: 112px; }
  .assistant-tags { gap: 8px; }
  .assistant-tags span { font-size: 14px; line-height: 1.4; padding: 6px 9px; }
  .assistant-card-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .assistant-card-actions button { width: 100%; padding: 12px; }
  .assistant-active-strip { flex-wrap: wrap; font-size: 16px; line-height: 1.5; padding: 14px; }
  .assistants-section-heading { flex-wrap: wrap; align-items: flex-start; }
  .assistants-section-heading h3 { font-size: 21px; }
  .assistants-section-heading > span { font-size: 14px; max-width: none; text-align: left; }
  .assistants-account-note, .assistants-feedback, .assistants-footnote p, .assistants-empty p, .assistants-loading,
  .assistant-editor-preview p, .assistant-form-hint, .assistant-delete-area p { font-size: 14px; line-height: 1.7; }
  .assistant-editor-preview { position: static; grid-template-columns: minmax(0, 1fr); padding: 16px; text-align: center; }
  .assistant-editor-preview > div { grid-row: auto; }
  .assistant-editor-preview .assistant-avatar-hero { width: 112px; height: 112px; }
  .assistant-editor-preview p { max-width: none; }
  .assistant-editor-actions, .assistant-delete-area { display: grid; grid-template-columns: minmax(0, 1fr); }
  .assistant-editor-actions button, .assistant-delete-area button { width: 100%; min-height: 44px; padding: 12px; }
  .assistant-editor-actions .primary, .assistant-editor-actions .secondary, .assistant-delete-area .assistant-danger { font-size: 14px; }
  .assistant-editor-form .assistant-memory-check { min-height: 44px; padding: 6px 0; font-size: 15px; }
  .assistant-memory-check input { width: 22px; height: 22px; flex: none; }

  /* Account panels use the same readable scale, including secondary notes. */
  .member-heading { flex-wrap: wrap; gap: 14px; }
  .member-heading > div { flex: 1; min-width: 0; }
  .member-heading h2 { font-size: 28px; line-height: 1.3; overflow-wrap: anywhere; }
  .member-avatar { width: 60px; height: 60px; border-radius: 18px; font-size: 28px; }
  .member-identity-badge { margin-left: 0; max-width: 100%; white-space: normal; font-size: 14px; line-height: 1.5; }
  .member-tabs { max-width: 100%; min-width: 0; gap: 8px; overscroll-behavior-inline: contain; }
  .member-tab { flex: none; min-height: 44px; padding: 10px 14px; font-size: 14px; }
  .member-grid, .member-three, .member-stats, .member-form { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .member-card, .member-three .member-card { padding: 20px 18px; border-radius: 16px; }
  .member-card h3 { font-size: 21px; line-height: 1.4; }
  .member-description, .member-welcome p { font-size: 16px; line-height: 1.7; }
  .member-caption, .member-notice, .member-empty, .member-form-feedback, .member-action small,
  .member-activity-row small, .member-job-status, .member-usage, .member-plan-badge { font-size: 14px; line-height: 1.65; }
  .member-stat { display: flex; padding: 18px; gap: 9px; min-width: 0; }
  .member-stat > span, .member-stat > small { font-size: 14px; line-height: 1.55; }
  .member-stat > strong { font-size: 28px; overflow-wrap: anywhere; }
  .member-action { grid-template-columns: 42px minmax(0, 1fr) 16px; gap: 7px 12px; padding: 18px; }
  .member-action strong { font-size: 17px; line-height: 1.45; }
  .member-form-actions button, .member-form-recovery button { width: 100%; min-height: 48px; }
  .member-colors { flex-wrap: wrap; gap: 12px; padding: 4px 0; }
  .member-color { width: 44px; height: 44px; }
  .member-welcome h2 { font-size: 32px; line-height: 1.2; }
  .member-auth-link { width: 100%; min-height: 48px; font-size: 16px; }
  .member-activity-row > div { min-width: 0; }
  .member-activity-row strong { font-size: 16px; overflow-wrap: anywhere; }
  .member-job-status { white-space: normal; }
  .member-usage summary { min-height: 44px; padding: 10px 0; }
  .member-usage dl { grid-template-columns: minmax(0, 1fr); max-width: 100%; }
  .member-usage dd { margin-bottom: 8px; overflow-wrap: anywhere; }
  .member-capabilities > div { flex-direction: column; gap: 5px; font-size: 15px; line-height: 1.5; }

  /* Financial rows stay factual; wide ledgers scroll inside their own wrapper. */
  .billing-hero { flex-direction: column; align-items: stretch; padding: 22px 18px; gap: 18px; }
  .billing-hero h2 { font-size: 30px; line-height: 1.25; }
  .billing-hero p { font-size: 16px; line-height: 1.7; }
  .billing-formula { width: 100%; display: flex; padding: 18px; min-height: 0; gap: 10px; }
  .billing-formula strong { font-size: 42px; }
  .billing-formula small, .billing-eyebrow, .billing-badge { font-size: 14px; line-height: 1.5; }
  .billing-grid, .billing-wallet-stats, .billing-capabilities, .billing-line { grid-template-columns: minmax(0, 1fr); }
  .billing-card { padding: 20px 18px; border-radius: 16px; }
  .billing-card h3 { font-size: 22px; line-height: 1.35; }
  .billing-caption, .billing-capability > .billing-caption, .billing-payment-row .billing-caption,
  .billing-notice, .billing-stats, .billing-empty, .billing-loading, .billing-wallet-stat > small,
  .billing-payment-id, .billing-limit-bar span { font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
  .billing-controls, .billing-payment-controls, .billing-reservation-actions { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; gap: 10px; }
  .billing-controls button, .billing-payment-controls button, .billing-reservation-actions button { width: 100%; min-width: 0; padding: 12px; }
  .billing-topup-label { max-width: none; min-width: 0; font-size: 14px; }
  .billing-line button { grid-column: auto; justify-self: stretch; }
  .billing-result:not(:empty) { padding: 18px 14px; }
  .billing-breakdown { grid-template-columns: minmax(0, 1fr); gap: 6px; font-size: 16px; line-height: 1.6; }
  .billing-breakdown dt { margin-top: 8px; }
  .billing-breakdown dd { text-align: left; margin-bottom: 5px; overflow-wrap: anywhere; }
  .billing-wallet-stat { display: flex; gap: 9px; padding: 18px; }
  .billing-wallet-stat > span { font-size: 15px; line-height: 1.5; }
  .billing-wallet-stat > strong { font-size: 29px; }
  .billing-payment-row { grid-template-columns: minmax(0, 1fr); gap: 10px; font-size: 16px; }
  .billing-payment-row strong, .billing-attempt > strong, .billing-capability > strong { font-size: 16px; line-height: 1.5; }
  .billing-payment-row > .billing-badge { grid-column: auto; justify-self: start; }
  .billing-pay-link { min-height: 48px; max-width: 100%; font-size: 16px; white-space: normal; overflow-wrap: anywhere; }
  .billing-attempt > .billing-pay-link, .billing-attempt > button { width: 100%; margin-right: 0; }
  .billing-reservation summary { min-height: 44px; flex-wrap: wrap; font-size: 16px; line-height: 1.5; }
  .billing-reservation summary > span { font-size: 14px; white-space: normal; }
  .billing-reservation summary > strong { flex-basis: 100%; }
  .billing-reservation .billing-breakdown { grid-template-columns: minmax(0, 1fr); }
  .billing-scenario > summary { min-height: 48px; padding: 16px 18px; font-size: 16px; line-height: 1.5; }
  .billing-card .table-scroll { width: 100%; min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
  .billing-card table { min-width: 440px; font-size: 14px; }
  .billing-card td strong, .billing-card td small { font-size: 14px; white-space: normal; line-height: 1.6; }

  /* The tool catalog is a vertical list, with no tiny pin or launch targets. */
  .tool-catalog-heading { align-items: flex-start; gap: 12px; }
  .tool-catalog-heading > div { min-width: 0; }
  .tool-catalog-heading h2 { font-size: 29px; line-height: 1.25; }
  .tool-catalog-heading .lead { font-size: 16px; line-height: 1.7; }
  .tool-catalog-orbit { width: 48px; height: 48px; border-radius: 14px; font-size: 30px; }
  .tool-catalog-search-row { flex-direction: column; align-items: stretch; gap: 10px; }
  .tool-catalog-count { display: block; font-size: 14px; white-space: normal; }
  .tool-catalog-grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .tool-catalog-card { padding: 20px 18px; border-radius: 16px; }
  .tool-catalog-card h3 { font-size: 22px; line-height: 1.35; }
  .tool-catalog-card > p { font-size: 16px; line-height: 1.7; }
  .tool-readiness { font-size: 14px; line-height: 1.5; padding: 6px 9px; }
  .tool-catalog-card-foot { flex-direction: column; align-items: stretch; gap: 12px; }
  .tool-open { text-align: left; padding: 10px 0; }
  .tool-pin { width: 44px; height: 44px; }
  .tool-catalog-tip { flex-direction: column; align-items: stretch; font-size: 15px; line-height: 1.65; }
  .tool-catalog-tip .link { white-space: normal; text-align: left; padding: 10px 0; }
  .tool-catalog-note { font-size: 14px; line-height: 1.7; }

  /* Projects and their actual workspace cards, files, and instructions. */
  .project-header { flex-direction: column; align-items: stretch; gap: 18px; }
  .project-identity { gap: 12px; }
  .project-mark { width: 48px; height: 48px; border-radius: 14px; font-size: 24px; }
  .project-titles h2 { font-size: 28px; line-height: 1.3; }
  .project-description, .project-section-copy, .project-note p, .ws-project-card > p { font-size: 16px; line-height: 1.7; }
  .project-summary, .project-hint, .project-context-badge, .project-chat-meta,
  .project-section-heading p, .project-file-copy span, .project-file-choice small, .project-policy-note,
  .project-form-status, .project-context-note p { font-size: 14px; line-height: 1.65; overflow-wrap: anywhere; }
  .project-context-badge { max-width: 100%; margin-left: 0; }
  .project-header > .primary, .project-source-intro > .primary { width: 100%; }
  .project-tabs { max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-inline: contain; gap: 6px; }
  .project-tab { flex: 0 0 auto; min-height: 48px; padding: 12px 14px; white-space: nowrap; }
  .project-toolbar, .project-section-heading, .project-source-intro { flex-direction: column; align-items: stretch; gap: 12px; }
  .project-search { width: 100%; }
  .project-chat-row, .project-file-row { padding: 16px; gap: 12px; flex-wrap: wrap; }
  .project-chat-open { min-height: 44px; flex-basis: calc(100% - 48px); }
  .project-chat-open strong, .project-file-copy strong, .project-note h4 { font-size: 17px; line-height: 1.5; }
  .project-chat-open span { font-size: 15px; line-height: 1.65; }
  .project-chat-meta { margin-left: 0; white-space: normal; }
  .project-file-copy { min-width: 0; }
  .project-file-mark { font-size: 13px; }
  .project-file-row > .project-actions { width: 100%; margin-left: 0; }
  .project-actions { gap: 10px; }
  .project-actions button { flex: 1 1 120px; padding: 10px 12px; }
  .project-notes { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .project-note, .project-settings-form { padding: 18px; border-radius: 15px; }
  .project-file-choice { min-height: 52px; padding: 12px; gap: 10px; }
  .project-file-choice input { width: 22px; height: 22px; }
  .project-file-choice span { font-size: 16px; line-height: 1.5; }
  .project-empty { padding: 26px 18px; }
  .project-empty p { font-size: 16px; }
  .ws-project-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .ws-project-card { min-width: 0; padding: 20px 18px; }
  .ws-project-card h3 { font-size: 23px; line-height: 1.35; }
  .ws-toolbar { flex-direction: column; align-items: stretch; gap: 12px; }
  .ws-toolbar > .primary { width: 100%; align-self: stretch; }
  .ws-count, .ws-actions button, .ws-empty, .ws-form-hint { font-size: 14px; line-height: 1.6; }
  .ws-actions button { min-height: 44px; padding: 10px 12px; }
  .ws-card-footer { gap: 10px; }
  .ws-card-footer button { flex: 1 1 120px; }

  /* Rich tables and code stay within a scrollable result, never the whole page. */
  .agent-work-output-content, .task-result, .project-tab-content, .ws-note-reader { min-width: 0; max-width: 100%; }
  :is(.agent-work-output-content, .task-result, .ws-note-reader) pre {
    max-width: 100%; overflow-x: auto; font-size: 14px; line-height: 1.65; overscroll-behavior-inline: contain;
  }
  :is(.agent-work-output-content, .task-result, .ws-note-reader) :is(.markdown-table, .rich-table) {
    min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain;
  }
  :is(.agent-work-output-content, .task-result, .ws-note-reader) :is(.markdown-table, .rich-table) table { font-size: 14px; }
  :is(.agent-work-output-content, .task-result) img { max-width: 100%; height: auto; }
}
