/* The navigation footprint stays identical across every formal page. */
@view-transition { navigation: auto; }
::view-transition-old(root), ::view-transition-new(root),
::view-transition-old(app-navigation), ::view-transition-new(app-navigation) { animation: none; }
body.app-layout { margin: 0; padding: 0; max-width: none; min-height: 100vh; background: #f6f7f9; font-family: var(--font-body, -apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif); }
.app-layout > .app-nav { box-sizing: border-box; position: fixed; inset: 0 auto 0 0; width: 220px; padding: 34px 22px 24px; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 0; flex-wrap: nowrap; border: 0; border-right: 1px solid #e7eaf0; overflow-y: auto; background: #fff; line-height: 1.65; view-transition-name: app-navigation; z-index: 2; }
.app-nav .app-brand { font-size: 25px; letter-spacing: -.05em; color: #172846; text-decoration: none; font-weight: 750; white-space: nowrap; }
.app-nav .app-brand span { font-size: 14px; letter-spacing: -.02em; color: #526b93; font-weight: 500; margin-left: 6px; }
.app-nav .app-caption { color: #737c8b; font-size: 11px; margin: 8px 0 38px; }
.app-nav nav { display: grid; gap: 7px; margin: 0; }
.app-nav nav a { text-decoration: none; color: #616b7c; padding: 11px 14px; border-radius: 8px; font-size: 14px; }
.app-nav nav a:hover { background: #f6f7f9; color: #385580; }
.app-nav nav a[aria-current="page"] { background: #edf2fa; color: #466397; font-weight: 600; }
.app-nav .app-nav-bottom { margin-top: auto; padding-top: 40px; }
.app-nav .app-chat { background: #1a52c4; color: #fff; display: block; padding: 11px 15px; border-radius: 8px; text-decoration: none; font-size: 14px; font-weight: 600; box-shadow: 0 4px 12px rgba(26, 82, 196, .22); }
.app-nav .app-chat:hover, .app-nav .app-chat[aria-current="page"] { color: #fff; background: #1442a8; }
.app-nav .app-help { display: flex; flex-wrap: wrap; gap: 8px 12px; margin: 22px 0 10px; font-size: 11px; }
.app-nav .app-help a { color: #647084; text-decoration: none; }
.app-nav .app-help a[aria-current="page"] { color: #466397; text-decoration: underline; }
.app-nav .app-logout { background: none; border: 1px solid #d5dae4; color: #647084; padding: 5px 12px; border-radius: 6px; font-size: 11px; cursor: pointer; margin-top: 4px; }
.app-nav .app-logout:hover { color: #a12626; border-color: #a12626; background: #fff5f5; }
.app-nav .app-nav-note { font-size: 10px; color: #737c8b; margin: 0; }

/* Shared TalentSeen design language — identical across every formal page. */
:root { font-family: var(--font-body, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif); color: #252a34; background: #f6f7f9; line-height: 1.65; }
body.app-layout { -webkit-font-smoothing: antialiased; }
.app-layout a { color: #466397; }
.app-layout a:hover { color: #304c7b; }
.app-layout button, .app-layout input, .app-layout select, .app-layout textarea { border-color: #dce1e9; color: #3e4c62; border-radius: 8px; }
.app-layout button:not(.app-logout):not([aria-pressed]),
.gate-wrap button { min-height: 40px; padding: 9px 14px; line-height: 1.35; }
.gate-wrap button { white-space: nowrap; }
.app-layout button:not(.secondary):not(.danger):not(.app-logout):not([aria-pressed]),
.gate-wrap button { background: #1a52c4; border: 1px solid #1a52c4; color: #fff; font-weight: 600; box-shadow: 0 3px 10px rgba(26, 82, 196, .2); transition: background .15s, border-color .15s, box-shadow .15s, transform .15s; }
.app-layout button:not(.secondary):not(.danger):not(.app-logout):not([aria-pressed]):hover,
.app-layout button:not(.secondary):not(.danger):not(.app-logout):not([aria-pressed]):focus-visible,
.gate-wrap button:hover,
.gate-wrap button:focus-visible { background: #1442a8; border-color: #1442a8; color: #fff; }
.app-layout button:not(.secondary):not(.danger):not(.app-logout):not([aria-pressed]):active,
.gate-wrap button:active { background: #0f358a; border-color: #0f358a; color: #fff; box-shadow: none; transform: translateY(1px); }
.app-layout button.secondary { background: #fff; border: 1px solid #9ab2e5; color: #1a52c4; font-weight: 600; box-shadow: none; }
.app-layout button.secondary:hover,
.app-layout button.secondary:focus-visible { background: #edf2fa; border-color: #6f91d7; color: #1442a8; }
.app-layout button.danger { background: #a12626; border: 1px solid #a12626; color: #fff; font-weight: 600; box-shadow: none; }
.app-layout button.danger:hover,
.app-layout button.danger:focus-visible { background: #7f1d1d; border-color: #7f1d1d; color: #fff; }
.app-layout button[aria-pressed="true"] { background: #1a52c4; border-color: #1a52c4; color: #fff; }
.app-layout button:not(.secondary):not(.danger):not(.app-logout):not([aria-pressed]):disabled,
.app-layout button.secondary:disabled,
.app-layout button.danger:disabled,
.app-layout button[aria-pressed]:disabled,
.gate-wrap button:disabled { background: #e4e8ef; border-color: #d5dbe5; color: #59667b; box-shadow: none; cursor: default; opacity: 1; transform: none; }
.app-layout h1, .app-layout h2, .app-layout h3 { color: #252a34; letter-spacing: -.025em; }
.app-layout h1 { font-size: 30px; font-weight: 650; }
.app-layout h2 { font-size: 19px; font-weight: 650; }
.app-layout h3 { font-size: 18px; font-weight: 600; }
.app-layout .muted, .app-layout .meta, .app-layout .eyebrow { color: #647084; font-size: 13px; }
.app-layout .card { background: #fff; border: 1px solid #e7eaf0; border-radius: 12px; padding: 22px; }
.app-layout .tag { color: #466397; background: #edf2fa; border-radius: 5px; padding: 3px 8px; }
.app-layout summary { font-size: 13px; color: #526b93; padding: 4px 0; }
.app-layout summary:hover { color: #304c7b; }
.app-layout .error:empty { display: none; }
.app-layout .skip-link { position: fixed; left: 16px; top: -100px; padding: 12px; background: white; z-index: 10; }
.app-layout .skip-link:focus { top: 12px; }
.app-layout > main { box-sizing: border-box; margin: 0 0 0 220px; padding: 42px 42px 64px; width: auto; max-width: 1520px; min-width: 0; }
.app-layout > main.account-shell, .app-layout > main.agent-content { max-width: 1060px; }
.app-layout :focus-visible { outline: 3px solid #8aa6d4; outline-offset: 3px; }
.workspace-page[data-workspace-view="searches"] #opportunities { display: none; }
.workspace-page[data-workspace-view="searches"] #search-tasks { margin-top: 0; padding-top: 0; border-top: 0; }
@media (max-width:1200px) { .app-layout > main { padding: 32px 26px 50px; } }
@media (max-width:760px) {
  .app-layout > .app-nav { position: sticky; top: 0; inset-inline: auto; width: auto; padding: 18px 20px 12px; border: 0; border-bottom: 1px solid #e7eaf0; display: block; overflow: visible; }
  .app-nav .app-brand { font-size: 23px; }
  .app-nav .app-caption, .app-nav .app-help, .app-nav .app-nav-note { display: none; }
  .app-nav nav { display: flex; flex-wrap: wrap; overflow-x: auto; gap: 4px; margin-top: 18px; padding-bottom: 2px; }
  .app-nav nav a { flex-shrink: 0; font-size: 12px; padding: 7px 10px; }
  .app-nav .app-nav-bottom { position: absolute; top: 18px; right: 20px; margin: 0; padding: 0; }
  .app-nav .app-chat { font-size: 11px; padding: 7px 10px; }
  .app-layout > main { margin: 0; padding: 26px 20px 48px; }
}
