/* Freya executive theme: shared visual language with Grupo Dos inventory. */
:root {
  --font-executive: "Segoe UI", "Aptos", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --paper: #f2f5f8;
  --white: #ffffff;
  --ink: #142438;
  --muted: #526277;
  --sage: #e8f4f0;
  --green: #168b75;
  --green-hover: #11715f;
  --line: #e0e6ed;
  --gold: #8c601c;
  --rose: #a43d49;
  --radius: 12px;
  --shadow: 0 5px 24px rgba(16, 32, 51, .045);
  font-family: var(--font-executive);
  color: var(--ink);
  font-size: 14px;
}
body { background: var(--paper); color: var(--ink); }
button, input, textarea, select { font-family: var(--font-executive); }
h1, h2, h3, h4, h5, h6, .page-heading h1, .hero-card h2,
.brand, .brand-symbol, .avatar, .stat-value,
.metric-item strong, .calendar-header h2, .chat-about h2,
.dialog-header h2, .auth-story h1, .auth-form-wrap h2, .initial-loading h1 {
  font-family: var(--font-executive);
}
button:focus-visible, a:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible { outline-color: #168b75; }

.expense-filter.field {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 0 auto;
}
.expense-filter.field label { margin: 0; }
.expense-filter.field select { width: auto; min-width: 155px; }
.expense-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 18px;
  border-top: 1px solid var(--line);
  padding: 18px 22px;
}
.expense-row h3 { margin: 0; font-size: 15px; overflow-wrap: anywhere; }
.expense-meta, .expense-notes {
  margin: 6px 0 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--muted);
  overflow-wrap: anywhere;
}
.expense-notes { white-space: pre-wrap; }
.expense-evidence {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 13px;
  overflow-wrap: anywhere;
}
.expense-evidence a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--green-hover);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.expense-evidence a .icon { width: 15px; height: 15px; flex-shrink: 0; }
.expense-review + .expense-evidence { margin: -8px 0 20px; }
.expense-evidence-field input[type="file"] {
  width: 100%;
  max-width: 100%;
  cursor: pointer;
}
.expense-evidence-field input[type="file"]::file-selector-button {
  margin-inline-end: 8px;
  padding: 5px 8px;
  border: 0;
  border-radius: 5px;
  background: var(--sage);
  color: var(--green-hover);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.expense-evidence-field [data-action="expense-clear-evidence"] { margin-top: 6px; }
.expense-row-side { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.expense-amount { font-size: 16px; font-variant-numeric: tabular-nums; }
.expense-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 14px 18px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 12px;
}
.expense-review {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 20px;
  padding: 14px;
  border-radius: 8px;
  background: var(--sage);
  overflow-wrap: anywhere;
}
.expense-review p { margin: 4px 0 0; color: var(--muted); }
@media (max-width: 760px) {
  .expense-filter.field { width: 100%; }
  .expense-filter.field select { flex: 1; }
  .expense-row { grid-template-columns: 1fr; gap: 12px; padding: 16px 20px; }
  .expense-row-side { align-items: flex-start; }
}

/* A dark, permanent anchor for the white Freya wordmark. */
.sidebar {
  background: linear-gradient(165deg, #102033 0%, #142b41 100%);
  border-right: 1px solid #20364b;
  color: #edf3f9;
  scrollbar-color: #365066 transparent;
}
.brand, .auth-story .brand {
  color: #fff;
  font-size: 31px;
  font-weight: 650;
  letter-spacing: -.8px;
  gap: 10px;
}
.brand-symbol, .brand-dot, .brand-wordmark { color: #fff; }
.brand-symbol { font-size: 33px; width: 33px; height: 33px; display: inline-grid; place-items: center; }
.brand-symbol svg, .brand-symbol img { width: 32px; height: 32px; display: block; }
.brand .brand-mark { width: 34px; height: 34px; display: block; flex-shrink: 0; }
.brand-wordmark { line-height: 1.1; }
.sidebar .company-mark {
  background: rgba(255, 255, 255, .045);
  border-color: #32465b;
  border-radius: 10px;
  margin-top: 31px;
  margin-bottom: 27px;
}
.sidebar .company-square { background: #243d51; color: #fff; border-radius: 5px; }
.sidebar .company-mark strong { color: #fff; font-size: 13px; font-weight: 600; }
.sidebar .company-mark div>span, .sidebar .company-chevron { color: #bccbd9; }
.sidebar .nav-caption { color: #a8bacb; font-size: 10px; letter-spacing: 1.45px; font-weight: 600; }
.sidebar nav a { color: #c9d5e1; font-size: 14px; font-weight: 450; border-radius: 7px; min-height: 45px; }
.sidebar nav a:hover { color: #fff; background: rgba(255,255,255,.07); }
.sidebar nav a.active { color: #fff; background: #174647; box-shadow: inset 3px 0 #43c5a6; font-weight: 600; }
.sidebar .nav-count { color: #e3f7f0; background: #254d52; border-radius: 4px; }
.sidebar .tiny-star { color: #92dfc9; }
.sidebar .notification-dot { background: #92dfc9; }
.sidebar .privacy-note, .sidebar .privacy-note strong,
.sidebar .privacy-note span:not([data-icon]) { color: #b8c9d9; }
.sidebar .profile-button { border-color: #32465b; color: #fff; }
.sidebar .profile-button strong { color: #fff; font-weight: 600; }
.sidebar .profile-button small, .sidebar .profile-button .icon,
.sidebar .logout-form button { color: #b8c9d9; }
.sidebar .profile-button:hover, .sidebar .logout-form button:hover { color: #fff; }
.sidebar .avatar { color: #e8f7f2; background: #28505a; }
.sidebar-scrim { background: rgba(8,22,37,.48); }

/* Typography and neutral work surfaces. */
.topbar { background: #fff; border-bottom-color: var(--line); }
.breadcrumb, .breadcrumb>span:first-child, .connection-pill { color: var(--muted); }
.connection-pill>span { background: #168b75; }
.avatar { background: #e7edf3; color: #334e65; font-weight: 600; }
.icon-button { color: #52677b; }
.icon-button:hover { background: #edf3f7; color: #18384a; }
.eyebrow, .hero-label { color: #526277; font-weight: 650; letter-spacing: 1.45px; font-size: 10px; }
.page-heading h1, .initial-loading h1 {
  color: var(--ink); font-size: 32px; font-weight: 600;
  letter-spacing: -.03em; line-height: 1.18;
}
.page-heading p, .panel-subtitle, .stat-detail, .small-muted,
.member-note, .task-meta, .task-trailing, .connection-info small, .source-foot,
.source-card-header a, .source-card-content>p, .source-card-content .small-muted,
.form-panel>p, .field small, .checkbox-field small, .settings-side .panel-body p,
.detail-description, .detail-grid dt, .comment-item time, .comment-item p,
.memory-card .memory-footer, .notification-body p, .notification-body time,
.council-card p, .council-card .updated, .council-card .member-flags,
.chat-about p, .chat-header small, .message-label time, .composer-note,
.privacy-note-dialog, .users-table small, .users-table td, .sync-indicator,
.kanban-bottom, .calendar-weekday, .calendar-number { color: var(--muted); }
.date-chip { color: #526277; background: #fff; border-color: var(--line); }
.panel, .stat-card, .kanban-card, .source-card, .council-card,
.memory-card { background: #fff; border-color: var(--line); border-radius: 12px; box-shadow: var(--shadow); }
.panel-title, .form-panel h2, .form-section-title { color: var(--ink); font-size: 15px; font-weight: 650; }
.stat-top { color: #526277; font-size: 12px; }
.stat-top .icon { color: #6f8296; }
.stat-value { color: #142438; font-size: 31px; font-weight: 600; letter-spacing: -.035em; }
.stat-card.urgent .stat-value { color: #8c601c; }
.main-footer, .main-footer i { color: #596b7d; }
.initial-loading, .initial-loading p { color: #526277; }
.freya-loader { color: #168b75; }

/* The assistant retains a white emblem against the navy brand surface. */
.hero-card {
  background: linear-gradient(115deg, #102033 0%, #173849 100%);
  color: #fff; border-color: #18384c; border-radius: 12px;
  box-shadow: 0 7px 26px rgba(16,32,51,.09);
  min-height: 214px;
}
.hero-card .hero-label { color: #a8dfd1; }
.hero-card h2 { color: #fff; font-weight: 550; font-size: 28px; letter-spacing: -.03em; }
.hero-card p { color: #c3d0dc; font-size: 13px; max-width: 570px; }
.hero-orb { background: radial-gradient(circle, rgba(92,198,174,.15) 0%, rgba(70,144,142,.07) 50%, transparent 73%); }
.hero-orb:before, .hero-orb:after { border-color: rgba(187,231,224,.19); }
.orb-mark { color: #fff; filter: drop-shadow(0 3px 14px rgba(119,226,197,.18)); }
.orb-mark circle { fill: #fff; }
.orb-stars { color: #a3dfcf; }
.hero-actions .button { color: #e5edf5; background: transparent; border-color: #627c8c; }
.hero-actions .button:hover { color: #fff; background: rgba(255,255,255,.08); border-color: #92a7b6; }

/* The accent is slightly deeper on small white labels for readable contrast. */
.button { color: var(--ink); font-weight: 600; border-color: #d7e0e8; border-radius: 7px; background: #fff; }
.button:hover { color: #18384a; background: #f3f7fa; border-color: #bfcdd9; }
.button.primary, .hero-actions .button.primary {
  color: #fff; background: #158570; border-color: #158570;
  box-shadow: 0 2px 3px rgba(12,88,75,.07);
}
.button.primary:hover, .hero-actions .button.primary:hover { color: #fff; background: #11715f; border-color: #11715f; }
.button.ghost { background: transparent; }
.button.danger { color: #9d3443; border-color: #edcdd3; background: #fff; }
.button.danger:hover { background: #fff2f4; border-color: #dca4af; }
.text-link { color: #146b5c; font-weight: 550; }
.text-link:hover { color: #0c5247; }
.tag { color: #14634f; background: #e8f4ef; border-color: #c7e5d9; border-radius: 5px; }
.tag.gold { color: #79531a; background: #fff4dc; border-color: #ecdab3; }
.tag.rose { color: #963b49; background: #fff0f2; border-color: #efd1d8; }
.tag.blue { color: #315f85; background: #eaf2fb; border-color: #cfdfee; }
.tag.gray { color: #536477; background: #f1f4f7; border-color: #dde5ed; }

/* Tasks, calendar and forms. */
.task-row, .member-row, .metric-item, .comment-item { border-color: #e6ecf1; }
.task-title, .member-name { color: #172c40; font-weight: 550; }
.task-row.done .task-title { color: #647385; }
.task-check { border-color: #b7c7d4; }
.task-check:hover { background: #e8f4ef; border-color: #168b75; }
.task-check.checked { background: #158570; border-color: #158570; }
.task-check:not(.checked) .icon { color: #526f79; }
.tabs, .view-toggle, .kanban-column { background: #e9eef4; border-color: #dce4ed; }
.tab { color: #526277; font-weight: 500; }
.tab.active, .view-toggle button.active { background: #fff; color: #146b5c; box-shadow: 0 1px 5px rgba(16,32,51,.06); }
.view-toggle button { color: #60768b; }
.search-input { background: #fff; border-color: #d5dfe9; }
.search-input .icon { color: #667c91; }
.search-input input { color: #142438; }
.kanban-title { color: #4c6176; font-weight: 650; }
.kanban-title span { border-color: #cbd7e3; color: #526277; }
.kanban-card:hover { border-color: #91b7bd; box-shadow: 0 4px 16px rgba(16,32,51,.07); }
.kanban-card h3 { font-weight: 600; }
.calendar-header h2 { font-size: 20px; font-weight: 600; color: #142438; letter-spacing: -.025em; }
.calendar-cell { border-color: #e6ecf2; }
.calendar-cell.outside { background: #f7f9fb; }
.calendar-cell.today .calendar-number { color: #fff; background: #158570; }
.calendar-task { color: #165f50; background: #e6f3ed; }
.calendar-task:hover { background: #d4ebe1; }
.field label, .field-label, .checkbox-field, .password-form label { color: #344a60; font-weight: 600; }
.field input:not([type=checkbox]), .field textarea, .field select, .password-form input {
  background: #fff; color: #142438; border: 1px solid #ccd8e4; border-radius: 7px;
}
.field input::placeholder, .field textarea::placeholder,
.password-form input::placeholder, .search-input input::placeholder,
.chat-composer textarea::placeholder { color: #687b8f; opacity: 1; }
.field input:focus, .field textarea:focus, .field select:focus,
.password-form input:focus { border-color: #168b75; }
.checkbox-field input { accent-color: #158570; }
.form-divider { border-color: #e0e6ed; background: #e0e6ed; }
.detail-grid { background: #f2f6f9; border-color: #dfe7ef; border-radius: 8px; }
.detail-grid dd { color: #253e55; }
.comment-item strong { color: #253e55; font-weight: 650; }
.subtask-list button { color: #244b57; background: #f2f7f8; border-color: #d7e4e8; }
.subtask-list button:hover { background: #e9f3f2; border-color: #b9d6d0; }
.app-dialog { color: var(--ink); border-color: var(--line); border-radius: 13px; box-shadow: 0 25px 100px rgba(8,24,41,.24); }
.app-dialog::backdrop { background: rgba(8,22,37,.42); }
.dialog-header h2 { color: #142438; font-size: 25px; font-weight: 600; letter-spacing: -.03em; }
.dialog-header p { color: #526277; }
.dialog-footer { background: #f8fafc; border-color: #e0e6ed; }

/* Readable business, council, memory and notification surfaces. */
.connection-icon { color: #356675; background: #edf4f7; border-radius: 8px; }
.source-card-header, .source-foot { border-color: #e0e6ed; }
.source-foot { background: #f8fafc; }
.inventory-detail { min-width: 0; margin-top: 36px; }
.inventory-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 20px; }
.inventory-heading .eyebrow { margin: 0 0 9px; }
.inventory-heading h2 { margin: 0; font-size: 24px; font-weight: 600; letter-spacing: -.025em; color: #142438; }
.inventory-heading p { margin: 9px 0 0; font-size: 12px; line-height: 1.7; color: #526277; }
.inventory-heading .button { flex-shrink: 0; }
.inventory-coverage { padding: 18px 22px; margin-bottom: 22px; background: #e8f4f0; border: 1px solid #c8e4d9; border-radius: 10px; color: #265849; }
.inventory-coverage h3 { font-size: 13px; margin: 0 0 8px; font-weight: 650; }
.inventory-coverage ul { margin: 0; padding-left: 18px; font-size: 12px; line-height: 1.8; }
.inventory-toolbar { margin-bottom: 22px; max-width: 520px; }
.inventory-toolbar>label { display: block; color: #344a60; font-size: 12px; font-weight: 600; margin-bottom: 8px; }
.inventory-toolbar .search-input { width: 100%; }
.inventory-toolbar .search-input input { width: 100%; }
.inventory-toolbar>p { margin: 7px 0 0; color: #526277; font-size: 11px; line-height: 1.6; }
.inventory-tables { display: grid; gap: 22px; min-width: 0; }
.inventory-group { min-width: 0; overflow: hidden; }
.inventory-group .panel-header { padding: 20px 22px; }
.inventory-group h3 { margin: 0; color: #183b50; font-size: 16px; font-weight: 650; }
.inventory-table-wrap { overflow-x: auto; overscroll-behavior-x: contain; outline-offset: -3px; }
.inventory-table { width: 100%; min-width: 560px; border-collapse: collapse; color: #344a60; font-size: 12px; }
.inventory-table th { padding: 13px 22px; text-align: left; background: #f2f6f9; border-bottom: 1px solid #dce5ed; color: #385568; font-size: 11px; font-weight: 650; white-space: nowrap; }
.inventory-table td { padding: 15px 22px; text-align: left; vertical-align: top; border-bottom: 1px solid #e6ecf1; line-height: 1.7; max-width: 360px; overflow-wrap: anywhere; }
.inventory-table tbody tr:last-child td { border-bottom: 0; }
.inventory-table tbody tr:nth-child(even) { background: #fbfcfd; }
.inventory-note { padding: 12px 22px; background: #f8fafc; border-top: 1px solid #e0e6ed; color: #526277; }
.inventory-note p { margin: 4px 0; font-size: 11px; line-height: 1.8; }
.inventory-empty { color: #526277; margin: 0; padding: 24px 22px; font-size: 13px; line-height: 1.8; }
@media (max-width: 760px) {
  .inventory-heading { flex-direction: column; align-items: flex-start; }
  .inventory-heading h2 { font-size: 23px; }
  .inventory-coverage { padding: 16px; }
  .inventory-group .panel-header { padding: 17px 16px; }
  .inventory-group h3 { font-size: 15px; }
  .inventory-table th, .inventory-table td { padding: 13px 16px; }
  .inventory-note { padding: 12px 16px; }
}
.source-card-header h2, .connection-info strong { color: #183147; font-weight: 600; }
.source-card-header a:hover { color: #116d5b; }
.metric-item>span { color: #526277; }
.metric-item strong { color: #183b50; font-size: 19px; font-weight: 600; }
.source-error { color: #8b5b21; }
.council-card h2 { color: #183147; font-weight: 650; }
.council-card .member-flags { border-color: #e0e6ed; }
.presence-chip { color: #16634e; }
.presence-chip:before { background: #168b75; }
.presence-chip.busy, .presence-chip.meeting { color: #815719; }
.presence-chip.busy:before, .presence-chip.meeting:before { background: #a97b32; }
.presence-chip.dnd { color: #963b49; }
.presence-chip.dnd:before { background: #b75765; }
.presence-chip.away, .presence-chip.unknown { color: #596b7d; }
.presence-chip.away:before, .presence-chip.unknown:before { background: #8395a6; }
.memory-card p { color: #294155; }
.notification-body h2 { color: #183147; font-weight: 600; }
.notification-row.unread .connection-icon { color: #12634f; background: #e6f4ed; }
.notification-row.unread .notification-body h2:after { background: #168b75; }
.users-table th { color: #526277; background: #f3f6fa; border-color: #dfe7ef; font-weight: 650; }
.users-table td { color: #526277; border-color: #e3eaf1; }
.users-table strong { color: #1b364d; font-weight: 600; }
.empty-state { color: #526277; }
.empty-state .empty-icon { color: #58798a; background: #edf3f7; }
.empty-state strong { color: #314d60; font-weight: 600; }
.empty-state p { color: #526277; }
.notice-banner { color: #22604e; background: #ecf7f0; border-color: #cde6d8; }
.error-banner, .inline-form-error { color: #8b4c2c; background: #fff5ed; border-color: #eddbce; }
.toast { color: #fff; background: #183849; border-color: #35586b; box-shadow: 0 10px 30px rgba(8,24,41,.17); }
.toast.error { color: #fff; background: #8f3b49; border-color: #ad5c69; }

/* Conversation mirrors the navy/teal identity without becoming a dark workspace. */
.chat-about { color: #c3d0dc; background: #102a3b; border-color: #1d3b50; }
.chat-about h2 { color: #fff; font-weight: 550; font-size: 24px; letter-spacing: -.03em; }
.chat-about p { color: #c3d0dc; }
.chat-about .privacy-note { border-color: #3a5265; }
.chat-about .privacy-note, .chat-about .privacy-note strong,
.chat-about .privacy-note span:not([data-icon]) { color: #c3d0dc; }
.suggestion-list button { background: #183a4a; border-color: #456271; color: #e3eef4; }
.suggestion-list button:hover { background: #244b59; color: #fff; }
.chat-header .mini-orb { color: #fff; background: #183b4b; }
.chat-header h2 { color: #142438; font-weight: 650; }
.chat-message .avatar { background: #e7edf4; color: #355267; }
.chat-message.assistant .avatar { background: #17394a; color: #fff; }
.message-label { color: #36576b; }
.message-text { color: #253f53; background: #f0f4f8; border-radius: 0 9px 9px 9px; }
.chat-message.user .message-text { color: #215344; background: #e8f3ed; }
.message-play { color: #236a58; }
.chat-composer { color: #142438; background: #f8fafc; border-color: #ccd9e5; }
.chat-composer textarea { color: #142438; }
.chat-send { color: #fff; background: #158570; border-color: #158570; border-radius: 7px; }
.chat-send:hover { color: #fff; background: #11715f; }
.voice-active { color: #0f5f4f!important; background: #d8eee6!important; }

/* The same split entrance as the deployed inventory application. */
.auth-page { background: #fff; grid-template-columns: 1fr 1fr; }
.auth-story { color: #fff; background: #102033; padding: 52px 64px; isolation: isolate; }
.auth-story::before {
  content: ""; position: absolute; width: 670px; height: 670px; border: 1px solid rgba(188,213,228,.11);
  border-radius: 50%; right: -380px; bottom: -455px; pointer-events: none; z-index: -1;
  box-shadow: 0 0 0 80px rgba(188,213,228,.035), 0 0 0 160px rgba(188,213,228,.025);
}
.auth-story::after {
  content: ""; position: absolute; width: 450px; height: 450px; border: 1px solid rgba(188,213,228,.07);
  border-radius: 50%; left: -320px; top: 160px; pointer-events: none; z-index: -1;
  box-shadow: 0 0 0 64px rgba(188,213,228,.022);
}
.auth-story .brand { padding: 0; font-size: 31px; }
.auth-story-main { max-width: 460px; padding: 65px 0; margin: auto 0; }
.auth-story h1 { color: #fff; font-size: 43px; line-height: 1.2; font-weight: 550; letter-spacing: -.035em; margin-bottom: 22px; }
.auth-highlight { display: block; color: #9ee5d3; }
.auth-story p { color: #c3d0dc; max-width: 410px; font-size: 14px; line-height: 1.85; }
.auth-story .eyebrow { color: #a8c9d3; font-size: 10px; letter-spacing: 1.65px; }
.auth-capabilities { display: grid; grid-template-columns: 1fr 1fr; gap: 15px 20px; padding: 0; margin: 32px 0 0; list-style: none; }
.auth-capabilities>* { color: #d2e0e9; font-size: 12px; line-height: 1.5; display: flex; gap: 9px; align-items: center; }
.auth-capabilities>*::before { content: "✓"; color: #9ee5d3; font-size: 14px; font-weight: 650; }
.auth-capabilities svg { color: #9ee5d3; }
.auth-story-footer { color: #b7c7d6; font-size: 10px; letter-spacing: 1.25px; line-height: 1.6; }
.auth-form-area { background: #fff; padding: 60px 52px; }
.auth-form-wrap { max-width: 380px; }
.auth-form-wrap h2 { color: #142438; font-size: 30px; font-weight: 600; letter-spacing: -.035em; line-height: 1.2; }
.auth-form-wrap>p, .auth-security, .auth-support, .auth-form-wrap .helptext,
.password-form p, .password-form ul { color: #526277; }
.auth-form-wrap .eyebrow { color: #526277; }
.auth-form-wrap .field label { color: #344a60; font-size: 12px; font-weight: 600; }
.auth-form-wrap .field input { background: #fff; border-color: #ccd8e4; border-radius: 7px; color: #142438; min-height: 46px; font-size: 14px; }
.auth-form-wrap .button { min-height: 46px; font-size: 13px; font-weight: 650; }
.auth-form-wrap .forgot { color: #146b5c; font-size: 12px; }
.auth-security { font-size: 11px; }
.auth-form-wrap ul.errorlist { color: #8b4c2c; background: #fff5ed; border-color: #eddbce; }

@media (min-width: 1700px) {
  .hero-card h2 { font-size: 31px; }
}
@media (max-width: 1250px) {
  .auth-story { padding: 45px; }
  .auth-story h1 { font-size: 40px; }
  .auth-form-area { padding: 55px 40px; }
}
@media (max-width: 1050px) {
  .auth-story { padding: 38px; }
  .auth-story h1 { font-size: 36px; }
  .auth-capabilities { grid-template-columns: 1fr; gap: 12px; }
  .page-heading h1 { font-size: 31px; }
}
@media (max-width: 760px) {
  .sidebar { background: #102033; }
  .workspace.menu-open .sidebar-scrim { background: rgba(8,22,37,.48); }
  .brand { font-size: 30px; }
  .sidebar nav a { min-height: 48px; font-size: 14px; }
  .sidebar .company-mark strong { font-size: 14px; }
  .sidebar .company-mark div>span, .sidebar .profile-button small,
  .sidebar .logout-form button { font-size: 12px; }
  .page-heading h1 { font-size: 29px; }
  .hero-card h2 { font-size: 26px; }
  .hero-card p { font-size: 14px; }
  .button, .button.small, .heading-actions .button, .hero-actions .button,
  .notification-row .button { min-height: 44px; font-size: 13px; padding: 11px 14px; }
  .icon-button, .chat-send, .view-toggle button, .memory-actions .icon-button { min-height: 44px; min-width: 44px; }
  .task-check, .task-check.checked { background: transparent; }
  .task-check:before { border-color: #9eafbf; background: #fff; }
  .task-check.checked:before { background: #158570; border-color: #158570; }
  .task-check.checked .icon { color: #fff; }
  .task-check:not(.checked) .icon { color: #526f79; }
  .field input:not([type=checkbox]), .field textarea, .field select,
  .chat-composer textarea, .search-input input, .password-form input,
  .auth-form-wrap .field input { font-size: 16px; min-height: 46px; }
  .auth-page { grid-template-columns: 1fr; }
  .auth-story { padding: 28px 26px 31px; }
  .auth-story .brand { font-size: 29px; }
  .auth-story-main { padding: 35px 0 0; max-width: 520px; margin: 0; }
  .auth-story h1 { font-size: 32px; margin-bottom: 15px; }
  .auth-story p { font-size: 14px; margin: 0; max-width: 510px; }
  .auth-story .eyebrow { font-size: 9px; margin-bottom: 13px; }
  .auth-capabilities { grid-template-columns: 1fr; gap: 11px; margin-top: 24px; }
  .auth-capabilities>* { font-size: 12px; }
  .auth-story-footer { display: none; }
  .auth-form-area { padding: 35px 26px; }
  .auth-form-wrap { max-width: 520px; }
  .auth-form-wrap h2 { font-size: 28px; }
  .auth-form-wrap>p { font-size: 14px; }
  .auth-form-wrap .button { font-size: 14px; min-height: 48px; }
  .auth-security, .auth-support { font-size: 12px; }
  .auth-support { margin-top: 30px; }
}
@media (max-width: 410px) {
  .page-heading h1 { font-size: 28px; }
  .auth-story { padding-right: 23px; padding-left: 23px; }
  .auth-form-area { padding-left: 23px; padding-right: 23px; }
  .auth-story h1 { font-size: 30px; }
  .auth-capabilities { gap: 10px; }
}
