@font-face { font-family: 'Exo 2'; src: url('/exo2-regular.ttf') format('truetype'); font-weight: 400 600; font-display: swap; }
@font-face { font-family: 'Exo 2'; src: url('/exo2-bold.ttf') format('truetype'); font-weight: 700 900; font-display: swap; }
:root {
  --ink: #2f485c;
  --muted: #566979;
  --soft: #7a8f9c;
  --line: #cdd9df;
  --surface: #ffffff;
  --canvas: #f8fafb;
  --nav: #2f485c;
  --nav-hover: #3d5d74;
  --accent: #ff4900;
  --accent-dark: #e84500;
  --accent-soft: #fff4ee;
  --warning: #a76916;
  --warning-soft: #fff4e2;
  --danger: #b34e48;
  --danger-soft: #fff0ee;
  --blue: #436eab;
  --blue-soft: #edf3fc;
  --shadow: 0 15px 45px rgba(25, 52, 73, .08);
  --radius: 13px;
}
* { box-sizing: border-box; }
html { font-family: 'Exo 2', 'Segoe UI', Arial, sans-serif; color: var(--ink); background: var(--canvas); }
body { margin: 0; min-width: 320px; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .55; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
.sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.app-shell { display: grid; grid-template-columns: 254px minmax(0,1fr); min-height: 100vh; }
.sidebar { background: var(--nav); color: #d8e3e9; display: flex; flex-direction: column; padding: 28px 15px 20px; min-height: 100vh; height: 100vh; position: sticky; top: 0; align-self: start; overflow-y: auto; }
.brand { display: flex; align-items: center; padding: 0 12px 4px; min-height: 74px; }
.brand img { width: 151px; height: auto; object-fit: contain; }
.brand .brand-icon { display: none; width: 38px; height: 38px; }
.brand-product { font-size: 12px; font-weight: 700; letter-spacing: .12em; color: #ff8c57; padding: 0 14px 30px; }
.brand-mark { width: 36px; height: 36px; border-radius: 10px; background: #f5f9f9; color: var(--nav); display: grid; place-items: center; font-size: 20px; font-weight: 900; letter-spacing: -.08em; }
.brand strong { display: block; color: #fff; font-size: 12px; letter-spacing: .115em; white-space: nowrap; }
.brand span { display: block; color: #a9c0cd; font-size: 13px; margin-top: 5px; }
.sidebar-caption { padding: 0 14px 14px; font-size: 12px; font-weight: 700; letter-spacing: .12em; color: #7894a6; }
.main-nav { display: flex; flex: 1; flex-direction: column; gap: 4px; }
.nav-secondary { display: grid; gap: 4px; margin-top: auto; padding-top: 14px; border-top: 1px solid #3e596a; }
.nav-item { appearance: none; width: 100%; border: 0; color: #c3d3dd; background: transparent; display: flex; align-items: center; gap: 12px; text-align: left; border-radius: 9px; padding: 12px 14px; font-size: 15px; font-weight: 560; }
.nav-item:hover { background: var(--nav-hover); color: #fff; }
.browser-shortcut { text-decoration: none; }
.browser-shortcut:hover { text-decoration: none; }
.browser-shortcut-tag { display: none; }
.nav-item.active { background: #3d5d74; color: #fff; box-shadow: inset 4px 0 #ff6b2b; }
.nav-item:focus-visible, .button:focus-visible, .tab:focus-visible, .queue-row:focus-visible, .stage-card:focus-visible { outline: 2px solid #ff8c57; outline-offset: 2px; }
.nav-item svg { width: 18px; height: 18px; }
.settings-subnav { display: grid; gap: 3px; padding-left: 16px; margin-bottom: 3px; }
.settings-subnav[hidden] { display: none; }
.nav-subitem { font-size: 13px; padding: 9px 12px; }
.nav-subitem svg { width: 16px; height: 16px; }
@media (max-width: 820px) { .settings-subnav { padding-left: 0; } .nav-subitem { justify-content: center; padding: 13px; } }
@media (max-width: 600px) { .settings-subnav:not([hidden]) { display: flex; gap: 2px; margin: 0; } .nav-subitem { padding: 9px; } }
.sidebar-foot { margin-top: 12px; padding: 15px 11px 3px; border-top: 1px solid #3e596a; display: flex; align-items: flex-start; gap: 9px; }
.sidebar-foot strong, .sidebar-foot small { display: block; }
.sidebar-foot strong { font-size: 13px; color: #e8f1f4; }
.sidebar-foot small { font-size: 12px; line-height: 1.45; color: #93aeba; margin-top: 4px; }
.pulse { width: 7px; height: 7px; background: #ff6b2b; border-radius: 50%; margin-top: 4px; box-shadow: 0 0 0 3px rgba(255,107,43,.18); }
.main-frame { min-width: 0; }
.topbar { height: 64px; background: var(--surface); border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; padding: 0 34px; }
.breadcrumbs, .topbar-actions { display: flex; align-items: center; gap: 12px; }
.breadcrumbs { font-size: 14px; color: var(--soft); }
.breadcrumbs svg { width: 13px; height: 13px; }
.breadcrumbs strong { color: var(--ink); font-weight: 650; }
.topbar-actions { gap: 18px; }
.mode-badge { background: var(--warning-soft); color: var(--warning); border: 1px solid #f2dbaf; border-radius: 30px; padding: 5px 10px; font-size: 13px; font-weight: 700; }
.icon-button { position: relative; display: grid; place-items: center; color: #627988; width: 38px; height: 38px; border: none; border-radius: 8px; background: transparent; }
.icon-button:hover { background: var(--canvas); }
.notification-dot { position: absolute; width: 6px; height: 6px; top: 5px; right: 5px; border-radius: 50%; background: #e3a652; }
.avatar { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 50%; background: #eaf2f7; color: #2f485c; font-weight: 800; font-size: 13px; }
.main-content { max-width: 1710px; padding: 30px 34px 70px; margin: 0 auto; outline: 0; }
.page-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 26px; }
.eyebrow { color: var(--accent); font-size: 12px; letter-spacing: .15em; font-weight: 800; text-transform: uppercase; margin-bottom: 8px; }
h1, h2, h3, h4, p { margin-top: 0; }
h1 { font-size: clamp(24px, 2.2vw, 31px); line-height: 1.18; font-weight: 730; letter-spacing: -.035em; margin-bottom: 9px; }
h2 { font-size: 18px; line-height: 1.3; font-weight: 720; letter-spacing: -.02em; }
h3 { font-size: 16px; line-height: 1.35; font-weight: 700; }
.subtitle { color: var(--muted); font-size: 15px; line-height: 1.55; margin-bottom: 0; }
.page-actions { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; justify-content: flex-end; }
.sync-note { margin: -11px 0 17px; color: var(--muted); font-size: 13px; line-height: 1.45; }
.button { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 7px; border-radius: 8px; border: 1px solid var(--line); background: #fff; color: var(--ink); padding: 10px 14px; min-height: 36px; font-size: 14px; font-weight: 680; line-height: 1; white-space: nowrap; }
.button:hover { background: #f8fafb; border-color: #c9d5db; text-decoration: none; }
.button svg { width: 15px; height: 15px; }
.button-primary { background: var(--accent); border-color: var(--accent); color: #fff; }
.button-primary:hover { background: var(--accent-dark); border-color: var(--accent-dark); }
.button-subtle { border-color: transparent; background: transparent; color: var(--accent); }
.button-subtle:hover { background: var(--accent-soft); border-color: transparent; }
.button-small { padding: 7px 10px; min-height: 34px; font-size: 13px; }
.metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 25px; }
.metric { background: var(--surface); border: 2px solid var(--line); border-radius: var(--radius); padding: 17px 20px 16px; box-shadow: 0 3px 12px rgba(24,43,59,.025); }
.metric-icon { display: grid; place-items: center; width: 33px; height: 33px; background: var(--accent-soft); color: var(--accent); border-radius: 9px; margin-bottom: 12px; }
.metric:nth-child(2) .metric-icon { background: var(--warning-soft); color: var(--warning); }
.metric:nth-child(3) .metric-icon { background: var(--blue-soft); color: var(--blue); }
.metric:nth-child(4) .metric-icon { background: #f0eef8; color: #7960a4; }
.metric label { color: var(--muted); font-size: 13px; font-weight: 560; display: block; margin-bottom: 5px; }
.metric strong { font-size: 26px; font-weight: 760; letter-spacing: -.045em; line-height: 1.1; }
.metric small { display: block; color: var(--soft); font-size: 12px; margin-top: 8px; }
.content-grid { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(280px,.75fr); gap: 17px; align-items: start; }
.panel { background: var(--surface); border: 2px solid var(--line); border-radius: var(--radius); min-width: 0; overflow: hidden; }
.panel-head { padding: 17px 19px 14px; display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; border-bottom: 1px solid var(--line); }
.panel-head h2 { margin-bottom: 3px; }
.panel-head p { color: var(--soft); font-size: 13px; margin-bottom: 0; }
.panel-body { padding: 18px 19px; }
.settings-rule-form { padding: 16px 19px; }
.settings-rule-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-bottom: 14px; }
.settings-rule-actions span { color: var(--muted); font-size: 13px; }
.settings-rules { display: grid; grid-template-columns: 1fr; gap: 12px; }
.settings-rule { padding: 16px; border: 2px solid var(--line); border-radius: 10px; background: #fff; display: grid; gap: 10px; }
.settings-rule label { display: grid; gap: 5px; }
.settings-rule .settings-rule-toggle { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; }
.settings-rule .settings-rule-toggle input { width: 18px; height: 18px; }
.settings-rule small { color: var(--muted); }
.settings-rule strong { display: block; margin-bottom: 8px; font-size: 15px; }
.settings-rule p { color: var(--muted); line-height: 1.5; font-size: 14px; margin: 0; }
.settings-template { margin: 0 0 12px; padding: 13px 15px; background: var(--canvas); border-left: 3px solid var(--accent); border-radius: 6px; line-height: 1.5; }
@media (max-width: 760px) { .settings-rules { grid-template-columns: 1fr; } }
.segment-list-item, .segment-campaign-item { width: 100%; border: 0; border-top: 1px solid var(--line); background: #fff; color: var(--ink); padding: 16px 19px; text-align: left; display: flex; align-items: center; gap: 15px; flex-wrap: wrap; cursor: pointer; }
.segment-list-item:hover, .segment-campaign-item:hover { background: var(--canvas); }
.segment-list-item strong, .segment-campaign-item strong { flex: 1 1 260px; }
.segment-list-item span, .segment-campaign-item span { color: var(--muted); font-size: 13px; }
.segment-campaigns { margin-bottom: 16px; }
.segment-campaign-detail { border-top: 2px solid var(--line); padding: 18px 19px; }
.segment-campaign-detail .inline-note p { white-space: pre-wrap; margin: 8px 0 0; }
.campaign-analytics-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(145px,1fr)); gap: 9px; margin: 17px 0 12px; }
.campaign-analytics-grid > div { border: 2px solid var(--line); border-radius: 9px; padding: 11px 13px; background: var(--canvas); }
.campaign-analytics-grid strong { display: block; font-size: 20px; line-height: 1.25; color: var(--ink); }
.campaign-analytics-grid span { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; }
.campaign-analytics-note { color: var(--muted); font-size: 13px; line-height: 1.45; margin: 9px 0; }
.report-tabs { margin: 4px 0 16px; }
.script-analytics-panel { margin-top: 16px; }
.script-analytics-table { min-width: 980px; }
.script-analytics-table td { vertical-align: top; white-space: pre-wrap; overflow-wrap: anywhere; max-width: 350px; }
.script-analytics-table td small { display: block; margin-top: 5px; color: var(--muted); font-size: 12px; }
.script-analytics-table .script-select-cell { width: 40px; }
.script-analytics-table .script-chat-cell { width: 130px; white-space: nowrap; }
.script-analytics-table input[type="checkbox"] { width: 17px; height: 17px; accent-color: var(--accent); }
.script-pending { color: #a63225; font-weight: 700; }
.script-selected-questions { max-height: 180px; overflow: auto; border: 1px solid var(--line); border-radius: 8px; padding: 4px 12px; }
.script-selected-questions p { margin: 9px 0; }
.script-draft-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.script-draft-status { color: var(--muted); font-size: 12px; line-height: 1.4; flex: 1 1 260px; }
.script-draft-evidence { border: 1px solid var(--line); border-radius: 8px; padding: 8px 12px; color: var(--muted); font-size: 12px; }
.script-draft-evidence summary { cursor: pointer; color: var(--ink); font-weight: 700; }
.script-draft-evidence p { margin: 8px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.campaign-analysis-table { min-width: 760px; margin: 9px 0 13px; }
.campaign-analysis-table th,.campaign-analysis-table td { padding: 9px 11px; }
.campaign-analysis-pager { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin: 7px 0 16px; color: var(--muted); font-size: 13px; }
.campaign-cooldown-note { display: grid; gap: 4px; margin: 12px 0; padding: 11px 13px; border: 2px solid #e4b864; border-radius: 9px; background: var(--warning-soft); color: var(--ink); font-size: 13px; line-height: 1.45; }
.campaign-event-list { max-height: 260px; overflow-y: auto; border: 2px solid var(--line); border-radius: 9px; margin: 9px 0 15px; }
.campaign-event { display: grid; grid-template-columns: 145px 200px minmax(0,1fr); gap: 10px; align-items: baseline; padding: 9px 11px; border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.4; }
.campaign-event:last-child { border-bottom: 0; }
.campaign-event time { color: var(--muted); }
.campaign-event strong { color: var(--ink); }
@media (max-width: 700px) { .campaign-event { grid-template-columns: 1fr; gap: 2px; } }
.panel-foot { border-top: 1px solid var(--line); padding: 11px 19px; color: var(--soft); font-size: 13px; }
.queue-row { width: 100%; display: grid; grid-template-columns: 36px minmax(0,1fr) 105px 85px 16px; gap: 10px; align-items: center; padding: 11px 18px; border: 0; border-bottom: 2px solid #e4ebef; background: white; text-align: left; color: var(--ink); }
.queue-row:last-child { border-bottom: 0; }
.queue-row:hover { background: #f8fbfa; }
.initials { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #e1ebef; color: #3a6474; font-size: 12px; font-weight: 750; }
.queue-main strong { display: block; font-size: 14px; font-weight: 730; margin-bottom: 4px; }
.queue-main small { display: block; font-size: 13px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.queue-row > svg { color: #9aaab2; width: 14px; height: 14px; }
.channel { color: var(--muted); font-size: 12px; font-weight: 650; }
.channel:before { content: ''; display: inline-block; width: 6px; height: 6px; background: #e07e52; border-radius: 50%; margin-right: 5px; }
.channel.hh:before { background: #da5f65; }
.due { color: var(--muted); font-size: 12px; text-align: right; }
.due.overdue { color: var(--danger); font-weight: 750; }
.status { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; border-radius: 6px; padding: 4px 7px; background: var(--blue-soft); color: var(--blue); font-size: 12px; font-weight: 680; }
.status.new, .status.dialog { background: var(--blue-soft); color: var(--blue); }
.status.qualified, .status.hr_review, .status.call { background: var(--warning-soft); color: var(--warning); }
.status.documents, .status.departure { background: #f1edf8; color: #795fa3; }
.status.approved, .status.on_site, .status.accepted { background: var(--accent-soft); color: var(--accent-dark); }
.status.closed, .status.missing { background: #eef1f3; color: #6c7b85; }
.status.replace { background: var(--danger-soft); color: var(--danger); }
.status.received { background: var(--warning-soft); color: var(--warning); }
.candidate-stage-cell { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 5px; }
.recruiter-attention-badge { display: inline-flex; width: fit-content; align-items: center; border: 2px solid #aab7c0;
  border-radius: 6px; background: #f1f5f7; color: #526775; padding: 3px 7px; font-size: 12px;
  font-weight: 800; line-height: 1.25; white-space: normal; }
.recruiter-attention-badge.is-our-reply { border-color: #b5332b; background: #fff0ee; color: #952720; }
.recruiter-attention-badge.is-candidate-reply { border-color: #c88a16; background: #fff4d7; color: #79520d; }
.recruiter-attention-panel { display: flex; align-items: center; justify-content: space-between; gap: 12px;
  border-top: 2px solid #aab7c0; border-bottom: 2px solid #aab7c0; background: #f1f5f7;
  color: #526775; padding: 11px 19px; }
.recruiter-attention-panel.is-our-reply { border-color: #bd3e35; background: #fff0ee; color: #8e2923; }
.recruiter-attention-panel strong, .recruiter-attention-panel small { display: block; }
.recruiter-attention-panel small { margin-top: 3px; line-height: 1.35; }
.recruiter-attention-panel .button { flex: 0 0 auto; }
@media (max-width: 600px) { .recruiter-attention-panel { align-items: flex-start; flex-direction: column; } }
.status:before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.screening-card { max-width: none; }
.screening-card > .button { margin-top: 18px; }
.screening-card > .subtitle { margin-bottom: 18px; }
.question-list { display: grid; gap: 8px; margin: 20px 0; }
.question-step { display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--muted); }
.question-step.current { border-color: #ffad83; background: #fff4ee; color: var(--ink); }
.question-step.done { background: #f0f4f6; }
.question-step span { width: 21px; height: 21px; display: grid; place-items: center; border-radius: 50%; flex: none; background: #e0e7eb; font-size: 13px; font-weight: 800; }
.question-step.current span { background: var(--accent); color: #fff; }
.question-step.done span { background: #1a7a4a; color: #fff; }
.question-step p { margin: 1px 0 0; font-size: 14px; line-height: 1.5; }
.screening-next { border: 1px solid #f7c7ad; background: #fff8f4; border-radius: 9px; padding: 15px; margin-bottom: 19px; }
.screening-next p { font-size: 16px; line-height: 1.5; margin-bottom: 13px; }
.source-row { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.source-row:last-child { border-bottom: 0; }
.source-row strong { font-size: 14px; }
.source-row small { color: var(--soft); font-size: 12px; display: block; margin-top: 4px; }
.source-count { font-size: 17px; font-weight: 750; }
.info-callout { border-radius: 9px; background: #eff5f6; border: 1px solid #dce9eb; color: #416173; padding: 14px; font-size: 13px; line-height: 1.5; }
.info-callout strong { color: #24495a; }
.section-stack { display: grid; gap: 17px; }
.toolbar { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; margin-bottom: 14px; }
.search-wrap { min-width: 220px; flex: 1; position: relative; }
.search-wrap svg { position: absolute; left: 12px; top: 10px; width: 16px; color: var(--soft); }
.field, .select, .textarea { border: 1px solid #dce5e9; background: #fff; border-radius: 8px; color: var(--ink); min-height: 40px; padding: 8px 11px; font-size: 14px; outline: none; width: 100%; }
.field:focus, .select:focus, .textarea:focus { border-color: #58aaa0; box-shadow: 0 0 0 3px rgba(35,127,121,.1); }
.search-wrap .field { padding-left: 35px; }
.select { width: auto; min-width: 130px; }
.textarea { min-height: 80px; resize: vertical; line-height: 1.5; }
.table-wrap { overflow-x: auto; }
.directory-period { display: grid; grid-template-columns: max-content 1fr; gap: 5px 18px; padding: 13px 17px; margin-bottom: 13px; border: 2px solid #b7d5d1; border-radius: 9px; background: #eef8f5; font-size: 14px; }
.directory-period strong { color: #185b52; }
.directory-period span { color: var(--ink); }
.directory-period small { grid-column: 1 / -1; color: var(--muted); line-height: 1.4; }
.directory-filters { display: grid; grid-template-columns: minmax(220px,2fr) minmax(170px,1.3fr) minmax(135px,.8fr) minmax(135px,.8fr) auto; gap: 9px; align-items: end; margin-bottom: 12px; }
.directory-filters label { display: grid; gap: 4px; min-width: 0; font-size: 12px; font-weight: 700; color: var(--muted); }
.directory-filters .field,.directory-filters .select { width: 100%; min-width: 0; }
.directory-filters .button { min-height: 39px; }
.directory-table-scroll { overflow: auto; }
.directory-table { width: 100%; min-width: 1530px; border-collapse: collapse; }
.directory-table th { position: sticky; top: 0; z-index: 1; text-align: left; white-space: nowrap; padding: 10px 11px; background: #f4f8f9; color: #667d89; border-bottom: 2px solid var(--line); font-size: 11px; text-transform: uppercase; letter-spacing: .03em; }
.directory-table td { padding: 9px 11px; border-bottom: 1px solid var(--line); vertical-align: top; font-size: 13px; line-height: 1.35; }
.directory-table tr:hover td { background: #fbfdfd; }
.directory-table td strong,.directory-table td small { display: block; }
.directory-table td strong { font-size: 13px; }
.directory-table td small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.directory-table td:nth-child(1) { min-width: 210px; }
.directory-table td:nth-child(7) { min-width: 195px; }
.directory-table td:nth-child(8) { min-width: 150px; }
.directory-table td:nth-child(9) { min-width: 230px; }
.directory-links a { display: inline-block; margin: 0 8px 5px 0; white-space: nowrap; }
.directory-links .button { display: block; margin-top: 2px; }
@media (max-width: 1050px) { .directory-filters { grid-template-columns: repeat(2,minmax(0,1fr)); } .directory-filters .button { justify-self: start; } }
@media (max-width: 600px) { .directory-period { grid-template-columns: 1fr; } .directory-period small { grid-column: 1; } .directory-filters { grid-template-columns: 1fr 1fr; } .directory-filters label:first-child { grid-column: 1 / -1; } }
.data-table { width: 100%; border-collapse: collapse; min-width: 940px; }
.data-table th { text-align: left; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; color: #8698a3; font-weight: 730; background: #f9fbfb; border-bottom: 2px solid var(--line); padding: 10px 12px; white-space: nowrap; }
.data-table td { border-bottom: 2px solid #e4ebef; padding: 11px 12px; font-size: 14px; vertical-align: middle; }
.candidate-view-controls { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 12px; }
.candidate-sort-note { margin-right: auto; color: var(--muted); line-height: 1.4; }
.candidate-board-filters .search-wrap { flex: 1 1 230px; }
.candidate-table { table-layout: fixed; min-width: 1420px; }
.candidate-table th { padding-inline: 6px; font-size: 11px; }
.candidate-table th:nth-child(1) { width: 18%; }
.candidate-table th:nth-child(2) { width: 10%; }
.candidate-table th:nth-child(3) { width: 18%; }
.candidate-table th:nth-child(4) { width: 8%; }
.candidate-table th:nth-child(5) { width: 13%; }
.candidate-table th:nth-child(6) { width: 12%; }
.candidate-table th:nth-child(7) { width: 14%; }
.candidate-table th:nth-child(8) { width: 5%; }
.candidate-table th:nth-child(9) { width: 2%; }
.candidate-filter-row th { padding: 12px 6px 10px; background: #fff; border-bottom: 0; vertical-align: top; }
.candidate-filter-row .search-wrap { min-width: 0; }
.candidate-filter-row .field, .candidate-filter-row .select { width: 100%; min-width: 0; font-size: 13px; }
.candidate-vacancy-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.candidate-filter-row th:has(.candidate-date-filter[open]) { position: relative; z-index: 5; }
.candidate-date-filter { position: relative; font-weight: 400; text-transform: none; letter-spacing: normal; }
.candidate-date-filter summary { display: block; min-height: 40px; padding: 8px 28px 8px 11px;
  border: 1px solid #dce5e9; border-radius: 8px; color: var(--ink); background: #fff;
  font-size: 13px; line-height: 22px; cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.candidate-date-filter summary::-webkit-details-marker { display: none; }
.candidate-date-filter summary::after { content: '⌄'; position: absolute; right: 11px; top: 8px; }
.candidate-date-filter summary:focus-visible { outline: none; border-color: #58aaa0; box-shadow: 0 0 0 3px rgba(35,127,121,.1); }
.candidate-date-menu { position: absolute; top: calc(100% + 4px); right: 0; width: 270px; display: grid; gap: 7px;
  padding: 10px; border: 2px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 12px 28px #20344d2e; }
.candidate-date-menu label { display: grid; grid-template-columns: 22px minmax(0,1fr); align-items: center;
  color: var(--muted); font-size: 12px; font-weight: 700; }
.candidate-table .candidate-response-date { color: var(--muted); font-size: 12px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.candidate-board-filters .candidate-date-filter { flex: 1 1 180px; max-width: 240px; }
.candidate-table .name-cell, .candidate-table .name-cell > div { min-width: 0; }
.candidate-table .name-cell strong { display: block; overflow: hidden; text-overflow: ellipsis; }
.candidate-table td:nth-child(2) > small { display: block; margin-top: 4px; color: var(--muted); overflow-wrap: anywhere; }
.candidate-table .vacancy-object { max-width: 100%; }
.candidate-table .status { white-space: normal; }
.candidate-table td { padding-block: 7px; line-height: 1.25; }
.candidate-table td:nth-child(1) strong,.candidate-table td:nth-child(3) strong,.candidate-table .action-cell { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.candidate-table td:nth-child(2) > small { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.candidate-table .recruiter-attention-badge { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.data-table tr:last-child td { border-bottom: 0; }
.data-table tbody tr { cursor: pointer; }
.data-table tbody tr:hover { background: #f8fbfa; }
.name-cell { display: flex; align-items: center; gap: 9px; min-width: 150px; }
.name-cell .initials { width: 29px; height: 29px; }
.name-cell strong { font-size: 14px; white-space: nowrap; }
.name-cell small { color: var(--soft); display: block; margin-top: 2px; }
.test-tag { display: inline-block; margin-left: 6px; padding: 2px 7px; border: 2px solid #d76835; border-radius: 6px; background: #fff4eb; color: #934016 !important; font-size: 11px; font-weight: 800; letter-spacing: .02em; line-height: 1.3; }
.vacancy-object { display: block; max-width: 190px; margin-top: 3px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--muted); font-size: 12px; }
.action-cell { max-width: 220px; font-weight: 620; }
.muted { color: var(--muted); }
.empty { text-align: center; padding: 38px 20px; color: var(--muted); font-size: 14px; }
.empty-state { text-align: center; padding: 36px 25px 42px; }
.empty-state-icon { width: 42px; height: 42px; display: grid; place-items: center; margin: 0 auto 13px; color: var(--accent); background: var(--accent-soft); border-radius: 12px; }
.empty-state h3 { font-size: 16px; margin-bottom: 7px; }
.empty-state p { color: var(--muted); font-size: 13px; line-height: 1.6; max-width: 370px; margin: 0 auto 16px; }
.pilot-workspace { margin-top: 24px; border: 2px solid var(--line); border-radius: var(--radius); background: #fff; overflow: hidden; }
.pilot-workspace-head { padding: 21px; display: flex; justify-content: space-between; align-items: center; gap: 14px; border-bottom: 1px solid var(--line); }
.pilot-workspace-head h2 { margin: 0 0 5px; }
.pilot-workspace-head p { margin: 0; color: var(--muted); font-size: 13px; }
.pilot-vacancies { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.pilot-vacancy { display: grid; gap: 5px; background: #fff; border: 0; border-right: 1px solid var(--line); color: var(--ink); text-align: left; padding: 18px 22px; }
.pilot-vacancy:last-child { border-right: 0; }
.pilot-vacancy:hover { background: #fff8f4; }
.pilot-vacancy span { font-size: 14px; font-weight: 700; }
.pilot-vacancy strong { font-size: 22px; }
.pilot-vacancy small { color: var(--soft); font-size: 12px; }
.view-toggle { display: flex; background: #eef3f5; border-radius: 8px; padding: 3px; }
.view-toggle span { align-self: center; padding: 0 8px; color: var(--muted); font-size: 13px; white-space: nowrap; }
.view-toggle button:disabled { opacity: .45; cursor: default; }
.view-toggle button { border: 0; background: transparent; border-radius: 6px; padding: 7px 10px; color: var(--muted); font-size: 13px; }
.view-toggle button.active { background: #fff; color: var(--ink); box-shadow: 0 1px 4px rgba(35,55,67,.12); font-weight: 700; }
.stage-board { display: flex; gap: 12px; overflow-x: auto; padding: 0 0 16px; align-items: flex-start; }
.stage-column { width: 248px; min-width: 248px; border: 2px solid var(--line); border-radius: 10px; background: #f1f5f6; padding: 9px; min-height: 170px; }
.stage-column-head { display: flex; justify-content: space-between; align-items: center; padding: 7px 5px 12px; }
.stage-column-head h2 { font-size: 14px; margin: 0; }
.stage-column-head b { background: #fff; border-radius: 6px; font-size: 13px; padding: 3px 7px; }
.stage-card { width: 100%; display: grid; gap: 7px; text-align: left; border: 2px solid var(--line); background: #fff; border-radius: 8px; padding: 10px; margin-bottom: 8px; color: var(--ink); }
.stage-card:hover { border-color: #ffb08b; box-shadow: 0 4px 12px rgba(25,52,73,.08); }
.stage-card strong { font-size: 14px; }
.stage-card small { color: var(--muted); font-size: 12px; }
.stage-card > span { font-size: 12px; line-height: 1.4; }
.stage-empty { color: #96a5ae; font-size: 12px; text-align: center; padding: 24px 0; }
.object-card { border: 2px solid var(--line); border-radius: var(--radius); background: #fff; margin-bottom: 15px; }
.object-head { padding: 16px 20px 12px; display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.vacancy-head::-webkit-details-marker { display: none; }
.object-head h2 { margin-bottom: 5px; }
.object-head p { font-size: 13px; color: var(--muted); margin-bottom: 0; }
.object-meta { min-width: 0; }
.object-controls { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px 14px; }
.object-automation-toggle, .object-automation-state { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; color: var(--ink); font-size: 13px; font-weight: 700; }
.object-automation-toggle { cursor: pointer; }
.object-automation-toggle input { width: 18px; height: 18px; margin: 0; accent-color: var(--accent); cursor: pointer; }
.object-automation-toggle input:disabled { cursor: wait; }
.object-summary { border-top: 1px solid var(--line); padding: 9px 20px 11px; color: var(--muted); font-size: 12px; }
.details-hint { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; color: var(--muted); font-size: 12px; }
.details-hint svg { width: 14px; height: 14px; transition: transform .15s; }
details[open] > summary .details-hint svg { transform: rotate(90deg); }
.object-body { padding: 1px 0 4px; }
.object-actions, .vacancy-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.object-actions small, .vacancy-actions small { margin-right: auto; color: var(--muted); font-size: 12px; }
.vacancy-card { margin: 15px; border: 2px solid var(--line); border-radius: 10px; overflow: hidden; }
.vacancy-head { display: flex; justify-content: space-between; align-items: center; padding: 13px 16px; gap: 10px; background: #fbfcfc; cursor: pointer; list-style: none; }
.vacancy-card[open] > .vacancy-head { border-bottom: 1px solid var(--line); }
.vacancy-head h3 { margin: 0 0 5px; }
.vacancy-head small { color: var(--muted); font-size: 12px; }
.pub-list { padding: 0 16px 6px; }
.pub-row { padding: 12px 0; display: grid; grid-template-columns: 65px minmax(0,1fr) 138px; gap: 10px; align-items: center; border-top: 1px solid var(--line); }
.pub-title strong { font-size: 13px; display: block; }
.pub-title small { color: var(--soft); font-size: 12px; display: block; margin-top: 3px; word-break: break-all; }
.pub-row .select { min-width: 0; width: 100%; font-size: 13px; }
.object-head small { display: block; color: var(--soft); font-size: 13px; margin-top: 6px; }
.source-catalog { margin-top: 24px; }
.catalog-count { padding: 0 19px 12px; color: var(--muted); font-size: 13px; }
.catalog-scroll-hint { display: none; }
.catalog-bulk-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; padding: 12px 18px; border-top: 1px solid var(--line); background: #f8fafb; font-size: 13px; }
.catalog-bulk-bar small { color: var(--muted); }
.catalog-list { max-height: 650px; overflow: auto; border-top: 1px solid var(--line); }
.catalog-table { width: 100%; min-width: 1410px; table-layout: fixed; border-collapse: separate; border-spacing: 0; }
.catalog-table th, .catalog-table td { padding: 9px 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: middle; }
.catalog-table th { color: var(--muted); font-size: 12px; font-weight: 700; background: #f8fafb; }
.catalog-table thead tr:first-child th { height: 38px; position: sticky; top: 0; z-index: 2; }
.catalog-table .catalog-filter-row th { position: sticky; top: 38px; z-index: 2; background: #fff; }
.catalog-table th:first-child { width: 240px; }
.catalog-table th:nth-child(3) { width: 165px; }
.catalog-table th:nth-child(4) { width: 170px; }
.catalog-table th:nth-child(5) { width: 140px; }
.catalog-table th:nth-child(6) { width: 140px; }
.catalog-table th:nth-child(7) { width: 140px; }
.catalog-table th:nth-child(8) { width: 130px; }
.catalog-table:has([data-listing-select-page]) { min-width: 1460px; }
.catalog-table:has([data-listing-select-page]) th:first-child { width: 48px; text-align: center; }
.catalog-table:has([data-listing-select-page]) th:nth-child(2) { width: 240px; }
.catalog-table:has([data-listing-select-page]) th:nth-child(4) { width: 165px; }
.catalog-table:has([data-listing-select-page]) th:nth-child(5) { width: 170px; }
.catalog-table:has([data-listing-select-page]) th:nth-child(6),
.catalog-table:has([data-listing-select-page]) th:nth-child(7),
.catalog-table:has([data-listing-select-page]) th:nth-child(8) { width: 140px; }
.catalog-table:has([data-listing-select-page]) th:nth-child(9) { width: 130px; }
.catalog-select { text-align: center !important; }
.catalog-select input, [data-listing-select-page] { width: 18px; height: 18px; cursor: pointer; accent-color: var(--accent); }
.catalog-table .catalog-date { font-variant-numeric: tabular-nums; }
.catalog-filter-row .field, .catalog-filter-row .select { width: 100%; min-width: 0; font-size: 12px; }
.catalog-filter-row th:has(.listing-city-filter[open]) { z-index: 5; }
.listing-city-filter { position: relative; font-size: 12px; font-weight: 400; }
.listing-city-filter summary { display: block; padding: 10px 9px; border: 1px solid var(--line); border-radius: 6px; color: var(--ink); background: #fff; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.listing-city-filter summary::-webkit-details-marker { display: none; }
.listing-city-filter summary::after { content: '⌄'; float: right; }
.listing-city-filter summary:focus-visible { outline: 2px solid var(--accent); }
.listing-city-menu { position: absolute; top: calc(100% + 4px); left: 0; width: 250px; padding: 8px; border: 2px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 12px 28px #20344d2e; }
.listing-city-options { max-height: 280px; overflow-y: auto; margin-top: 6px; }
.listing-city-options label { display: flex; align-items: center; gap: 8px; padding: 6px 4px; color: var(--ink); cursor: pointer; font-weight: 400; }
.listing-city-options label[hidden] { display: none; }
.listing-city-options label:hover { background: #f3f7f9; }
.listing-city-options input { accent-color: var(--accent); }
.chat-city-all { display: block; width: 100%; padding: 7px 8px; border: 0; border-radius: 5px; background: #edf4f7; color: var(--ink); text-align: left; }
.chat-city-all:hover { background: #dcebf1; }
.archive-filters .listing-city-filter { min-width: 0; }
.archive-filters .listing-city-menu { z-index: 20; }
.list-pagination { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 8px 14px; padding: 12px 16px; color: var(--muted); font-size: 13px; }
.list-pagination.is-top { border-bottom: 1px solid var(--line); }
.list-pagination.is-bottom { border-top: 1px solid var(--line); }
.list-pagination > span, .list-pagination > label { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.list-pagination .select { width: auto; min-width: 67px; max-width: 104px; padding: 6px 8px; font-size: 13px; }
.list-pagination .button { white-space: nowrap; }
@media (max-width: 700px) { .list-pagination { justify-content: flex-start; } }
.catalog-table tbody tr:hover { background: #fbfcfc; }
.catalog-table tbody tr[data-listing-row] { cursor: pointer; }
.catalog-table strong { display: block; font-size: 13px; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.catalog-table small { display: block; font-size: 11px; color: var(--muted); margin-top: 3px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.catalog-assignment { display: flex; align-items: center; gap: 7px; white-space: nowrap; }
.catalog-assignment .button { padding: 5px 8px; font-size: 11px; }
.catalog-title { min-width: 0; }
.catalog-title-button { display: block; width: 100%; padding: 2px 0; border: 0; background: none; color: var(--ink); text-align: left; font: inherit; font-size: 14px; font-weight: 700; line-height: 1.3; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.catalog-title-button:hover { color: var(--accent); text-decoration: underline; }
.catalog-title-button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 2px; }
.listing-filter-note { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 10px 14px; margin: 12px 0; border: 2px solid var(--line); border-radius: 8px; background: #fff; font-size: 13px; }
.listing-filter-note strong { color: var(--ink); }
.catalog-account, .catalog-city, .catalog-date, .catalog-code, .catalog-id, .catalog-status { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--muted); font-size: 12px; }
.catalog-code { color: var(--ink); font-weight: 700; }
.catalog-id { font-variant-numeric: tabular-nums; user-select: text; }
.catalog-status.is-active { color: #267b57; font-weight: 700; }
.platform-card { display: grid; grid-template-columns: 46px minmax(0,1fr) auto; gap: 15px; align-items: center; padding: 21px; border: 2px solid var(--line); border-radius: var(--radius); background: #fff; margin-bottom: 13px; }
.platform-logo { display: grid; place-items: center; width: 45px; height: 45px; border-radius: 11px; background: #fce9e9; color: #c4505b; font-weight: 900; font-size: 17px; }
.platform-logo.avito { background: #fff0e5; color: #d97737; font-size: 14px; }
.platform-card h2 { margin: 0 0 4px; }
.platform-card p { margin: 0; font-size: 13px; color: var(--muted); line-height: 1.5; }
.connector-state { background: #f3f5f6; color: var(--muted); font-size: 12px; border-radius: 6px; padding: 6px 9px; font-weight: 700; }
.connector-controls { display: grid; justify-items: end; gap: 8px; }
.connector-error { color: var(--danger); font-size: 12px; display: block; margin-top: 5px; }
[data-admin-only][hidden] { display: none !important; }
.audit-panel { margin-top: 17px; }
.audit-list { display: grid; }
.audit-item, .staff-row { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.audit-item:last-child, .staff-row:last-child { border-bottom: 0; }
.audit-item strong, .staff-row strong { display: block; font-size: 14px; color: var(--ink); }
.audit-item small, .staff-row small { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; }
.audit-item > div:last-child { text-align: right; flex-shrink: 0; }
.audit-outcome { display: inline-block; padding: 5px 8px; border-radius: 6px; font-size: 12px; font-weight: 700; background: #f3f5f6; color: var(--muted); }
.audit-outcome.success { color: #25805d; background: #e9f7ef; }
.audit-outcome.failure, .audit-outcome.denied, .audit-outcome.uncertain { color: var(--danger); background: var(--danger-soft); }
.audit-employee-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px,1fr)); gap: 12px; }
.audit-employee-grid > div { padding: 14px; border: 1px solid var(--line); border-radius: 9px; }
.audit-employee-grid strong, .audit-employee-grid span { display: block; }
.audit-employee-grid strong { font-size: 14px; margin-bottom: 5px; }
.audit-employee-grid span { font-size: 12px; color: var(--muted); }
.staff-actions { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; justify-content: flex-end; }
@media (max-width: 650px) { .staff-row { align-items: flex-start; flex-direction: column; } .staff-actions { justify-content: flex-start; } }
.steps { display: flex; flex-wrap: wrap; gap: 9px; }
.step { background: #f4f7f8; border: 1px solid var(--line); color: var(--muted); padding: 8px 11px; border-radius: 7px; font-size: 13px; }
.report-bars { display: grid; gap: 13px; }
.bar-label { display: flex; justify-content: space-between; font-size: 13px; margin-bottom: 6px; }
.bar-track { background: #eaf0f2; height: 8px; border-radius: 20px; overflow: hidden; }
.bar-fill { height: 100%; background: var(--accent); border-radius: 20px; }
.bar-fill.hh { background: #d66d74; }
.drawer-overlay, .modal-overlay { position: fixed; inset: 0; background: rgba(22,42,55,.35); z-index: 20; display: flex; justify-content: flex-end; }
body:has(.drawer-overlay) { overflow: hidden; }
.drawer { background: #fff; width: min(1470px,100%); height: 100%; box-shadow: var(--shadow); display: flex; flex-direction: column; }
body:has(.candidate-drawer-overlay) .sidebar { position: sticky; z-index: 21; top: 0; height: 100vh; align-self: start; }
.candidate-drawer-overlay { left: 254px; padding: 16px 20px 16px 16px; }
.candidate-drawer { width: 100%; min-width: 0; min-height: 0; border-radius: 12px; overflow: hidden; }
.candidate-drawer .drawer-top { flex: 0 1 auto; min-height: 0; max-height: 45%; overflow-y: auto; }
.candidate-drawer .automation-bar, .candidate-drawer .tabs { flex-shrink: 0; }
.candidate-drawer .drawer-body { min-height: 0; }
.candidate-header-actions { display: flex; align-items: flex-start; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.candidate-header-actions .button { white-space: nowrap; }
.drawer-top { padding: 24px 29px 18px; border-bottom: 1px solid var(--line); }
.drawer-topline { display: flex; justify-content: space-between; align-items: flex-start; }
.drawer-top h2 { font-size: 23px; margin: 0 0 7px; }
.drawer-subtitle { color: var(--muted); font-size: 13px; }
.candidate-progress { display: flex; gap: 3px; margin: 21px 0 0; overflow-x: auto; }
.candidate-progress span { flex: 1; min-width: 70px; text-align: center; color: #9ba9b1; background: #f0f3f4; border-top: 3px solid #d5dfe4; padding: 8px 3px 7px; font-size: 11px; font-weight: 700; }
.candidate-progress span:first-child { border-radius: 6px 0 0 6px; }
.candidate-progress span:last-child { border-radius: 0 6px 6px 0; }
.candidate-progress span.done { color: #326d6a; background: #edf7f4; border-color: #60a99a; }
.drawer-close { border: 0; background: #f3f6f7; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 7px; color: #657987; }
.drawer-summary { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 20px; }
.summary-cell { background: #f7f9f9; border: 2px solid var(--line); border-radius: 8px; padding: 10px; }
.summary-cell small { color: var(--soft); font-size: 12px; display: block; margin-bottom: 6px; }
.summary-cell strong { display: block; font-size: 13px; }
.tabs { display: flex; gap: 23px; padding: 0 29px; border-bottom: 1px solid var(--line); overflow-x: auto; }
.tab { border: 0; background: transparent; border-bottom: 2px solid transparent; padding: 13px 0 11px; font-size: 13px; color: var(--muted); white-space: nowrap; font-weight: 650; }
.tab.active { border-color: var(--accent); color: var(--accent-dark); }
.drawer-body { padding: 24px 29px 35px; overflow-y: auto; flex: 1; }
.listing-drawer .drawer-top { max-height: none; }
.listing-card-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-top: 16px; }
.listing-card-muted { color: var(--muted); font-size: 13px; }
.listing-card-body { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; gap: 18px; }
.listing-card-body .detail-section { padding: 18px; margin: 0; border: 2px solid var(--line); border-radius: 9px; }
.listing-card-facts { margin: 0; display: grid; gap: 12px; }
.listing-card-facts div { display: grid; grid-template-columns: minmax(130px, 32%) 1fr; gap: 12px; padding-bottom: 9px; border-bottom: 1px solid var(--line); }
.listing-card-facts dt { color: var(--muted); font-size: 12px; }
.listing-card-facts dd { margin: 0; font-size: 14px; overflow-wrap: anywhere; }
.detail-grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(300px,.8fr); gap: 24px; }
.automation-bar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 13px 29px; border-bottom: 1px solid var(--line); background: #f7fafb; }
.automation-bar strong { display: block; font-size: 15px; }
.automation-bar small { display: block; color: var(--muted); font-size: 13px; margin-top: 3px; }
.automation-bar .button { flex: 0 0 auto; }
.automation-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.automation-option { display: flex; align-items: flex-start; gap: 11px; padding: 14px; border: 1px solid var(--line); border-radius: 9px; background: #f7fafb; }
.automation-option input { margin-top: 3px; width: 17px; height: 17px; flex: 0 0 auto; }
.automation-option strong { display: block; font-size: 14px; }
.automation-option small { display: block; color: var(--muted); line-height: 1.45; margin-top: 3px; }
.object-automation-settings { display: grid; gap: 14px; padding: 18px; border: 2px solid var(--line); border-radius: 10px; background: #f8fbfc; }
.object-automation-settings h3 { margin: 0; font-size: 17px; }
.object-automation-settings .subtitle { margin: -5px 0 0; line-height: 1.45; }
.object-criteria-settings { display: grid; gap: 12px; padding: 19px; border: 2px solid var(--accent); border-radius: 10px; background: #fff; }
.object-criteria-settings h3 { margin: 0; font-size: 19px; }
.object-criteria-settings .subtitle { margin: 0 0 3px; line-height: 1.5; }
.object-criteria-settings .automation-option:has(input:disabled) { background: #eef5f7; }
.object-rules-form { gap: 16px; }
.object-rules-form > .inline-note { margin: 0; }
.object-rules-form .object-criteria-settings { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; padding: 14px; }
.object-rules-form .object-criteria-settings > .eyebrow,.object-rules-form .object-criteria-settings > h3,.object-rules-form .object-criteria-settings > .subtitle { grid-column: 1 / -1; }
.object-rules-form .automation-option { gap: 8px; padding: 8px 10px; }
.object-rules-form .automation-option small { font-size: 12px; line-height: 1.3; }
.object-rules-form .object-automation-settings { gap: 10px; padding: 14px; }
.object-rule-section { display: grid; gap: 12px; padding: 18px; border: 2px solid var(--line); border-radius: 10px; background: #fff; }
.object-rule-section > h3 { margin: 0; }
.object-information { min-height: 220px; resize: vertical; }
.rule-editor { min-width: 0; padding: 12px; border: 2px solid var(--line); border-radius: 9px; background: #fff; }
.rule-editor-head { display: flex; justify-content: space-between; align-items: start; gap: 10px; margin-bottom: 9px; }
.rule-editor-head h3 { margin: 0; font-size: 15px; }
.rule-editor-head small { display: block; max-width: 720px; color: var(--muted); font-size: 12px; line-height: 1.4; margin-top: 3px; }
.rule-rows { display: grid; gap: 5px; }
.rule-entry[hidden], .rule-editor-pager[hidden] { display: none !important; }
.rule-row { display: grid; grid-template-columns: 21px minmax(0,1fr) 28px; gap: 7px; align-items: center; min-width: 0; }
.rule-editor[data-rule-list="faq"] .rule-row { grid-template-columns: 21px minmax(170px,.8fr) minmax(220px,1.1fr) minmax(220px,1.1fr) 28px; align-items: start; }
.rule-faq-field { display: block; min-width: 0; }
.rule-faq-field span { display: block; margin-bottom: 3px; color: var(--muted); font-size: 11px; font-weight: 700; }
.rule-editor[data-rule-list="followup"] .rule-row { grid-template-columns: 21px 160px minmax(0,1fr) 28px; }
.rule-delay-pair { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 5px; }
.rule-check { display: grid; place-items: center; width: 20px; height: 20px; border: 1px solid #82aca3; border-radius: 5px; background: #ecf6f3; color: #247566; font-size: 13px; font-weight: 800; }
.rule-row .field,.rule-row .textarea { min-width: 0; width: 100%; padding: 7px 9px; font-size: 13px; line-height: 1.3; }
.rule-row .textarea { min-height: 35px; resize: vertical; }
.rule-delay { display: block; color: var(--muted); font-size: 11px; }
.rule-delay .field { margin-top: 2px; }
@media (max-width: 700px) { .rule-editor[data-rule-list="followup"] .rule-row { grid-template-columns: 21px minmax(0,1fr) 28px; } .rule-editor[data-rule-list="followup"] .rule-row textarea { grid-column: 2; } .rule-editor[data-rule-list="followup"] .rule-row .rule-remove { grid-column: 3; grid-row: 1 / 3; } }
.rule-remove { width: 28px; height: 28px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--muted); font-size: 20px; line-height: 1; cursor: pointer; }
.rule-remove:hover { border-color: var(--danger); color: var(--danger); }
.rule-editor-pager { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 9px; color: var(--muted); font-size: 12px; }
.rule-editor-pager [data-rule-count] { margin-right: auto; }
.rule-editor-pager .button { min-height: 28px; padding: 5px 7px; }
.rule-editor-pager .button:disabled { opacity: .45; }
@media (max-width: 900px) { .rule-editor[data-rule-list="faq"] .rule-row { grid-template-columns: 21px minmax(0,1fr) 28px; } .rule-editor[data-rule-list="faq"] .rule-faq-field { grid-column: 2; } .rule-editor[data-rule-list="faq"] .rule-remove { grid-column: 3; grid-row: 1 / 4; } }
@media (max-width: 700px) { .object-rules-form .object-criteria-settings { grid-template-columns: 1fr; } }
.automation-bar.is-active { background: #eff8f3; }
.automation-bar.is-error { background: #fff7ed; }
.attachment-note { border: 1px solid #dce7eb; background: #f7fafb; border-radius: 9px; padding: 13px 15px; margin: 14px 0; }
@media (max-width: 700px) { .automation-bar { padding: 13px 17px; align-items: flex-start; flex-direction: column; } }
.detail-section { margin-bottom: 25px; }
.detail-section h3 { margin-bottom: 12px; }
.fact-row, .doc-row { display: flex; justify-content: space-between; align-items: flex-start; padding: 10px 0; border-bottom: 1px solid #edf1f3; gap: 12px; }
.fact-row span, .doc-row span { font-size: 13px; }
.fact-row small, .doc-row small { display: block; color: var(--soft); font-size: 12px; margin-top: 4px; }
.fact-row strong { font-size: 13px; text-align: right; }
.doc-row .select { width: 126px; min-width: 126px; }
.doc-row .doc-text { flex: 1; }
.work-stats { display: flex; gap: 8px; flex-wrap: wrap; margin: 18px 0; }
.work-stats span { display: flex; align-items: baseline; gap: 6px; border: 1px solid var(--line); border-radius: 8px; padding: 9px 12px; color: var(--muted); font-size: 12px; }
.work-stats strong { font-size: 19px; color: var(--ink); }
.work-entry { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.work-entry strong { font-size: 14px; }
.work-entry small { display: block; color: var(--soft); font-size: 12px; margin-top: 5px; }
.work-entry .select { min-width: 142px; }
.inline-note { background: var(--warning-soft); color: #8b682d; border: 1px solid #f0dfbd; padding: 10px 11px; border-radius: 7px; font-size: 12px; line-height: 1.45; margin: 11px 0; }
.form-stack { display: grid; gap: 11px; }
.form-label { font-size: 12px; font-weight: 730; color: var(--muted); margin-bottom: 5px; display: block; }
.form-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 6px; }
.message { max-width: min(82%, 920px); border-radius: 11px; padding: 11px 13px; margin-bottom: 11px; background: #f0f4f6; font-size: 14px; line-height: 1.5; }
.message.out { background: var(--accent-soft); margin-left: auto; }
.message-head { color: var(--muted); font-size: 12px; margin-bottom: 4px; }
.message-body { white-space: pre-wrap; }
.timeline { position: relative; padding-left: 20px; border-left: 1px solid #dce5e8; margin-left: 5px; }
.timeline-item { position: relative; padding: 0 0 19px 8px; }
.timeline-item:before { content: ''; position: absolute; width: 8px; height: 8px; border-radius: 50%; background: #7db8af; left: -24px; top: 3px; box-shadow: 0 0 0 3px #ecf6f3; }
.timeline-item strong { font-size: 13px; display: block; }
.timeline-item small { font-size: 12px; color: var(--soft); display: block; margin-top: 3px; }
.timeline-item p { font-size: 13px; color: var(--muted); margin: 6px 0 0; line-height: 1.5; white-space: pre-wrap; }
.modal-overlay { justify-content: center; align-items: center; padding: 20px; z-index: 30; }
.modal { background: #fff; border-radius: 13px; width: min(520px,100%); max-height: min(90vh,850px); overflow-y: auto; box-shadow: 0 25px 80px rgba(16,34,47,.25); }
.modal-wide { width: min(780px,100%); }
.modal-rules { width: 100%; max-width: none; max-height: calc(100vh - 40px); }
.modal-head { padding: 20px 23px; display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); }
.modal-head h2 { margin: 0; }
.modal-body { padding: 21px 23px 24px; }
.toast-root { position: fixed; z-index: 40; right: 19px; bottom: 94px; display: grid; gap: 8px; }
.unlinked-vacancies-alert { position: fixed; right: 18px; bottom: 18px; z-index: 12; display: grid; gap: 3px;
  max-width: min(360px,calc(100vw - 36px)); padding: 10px 15px; text-align: left; cursor: pointer;
  border: 2px solid #b5332b; border-radius: 9px; background: #fff0ee; color: #8e2923; box-shadow: var(--shadow); }
.unlinked-vacancies-alert[hidden] { display: none; }
.intake-health-alert { position: fixed; right: 18px; top: 64px; z-index: 12; display: grid; gap: 4px;
  max-width: min(390px, calc(100vw - 36px)); padding: 10px 14px; text-align: left;
  border: 1px solid #b5332b; border-radius: 10px; background: #fff1ef; color: #a52923; cursor: pointer; }
.intake-health-alert[hidden] { display: none; }
.intake-health-alert strong { font-size: 13px; }
.intake-health-alert span { font-size: 11px; }
.health-queue small { display: block; font-size: 11px; }
.unlinked-vacancies-alert strong { font-size: 13px; line-height: 1.3; }
.unlinked-vacancies-alert span { font-size: 11px; line-height: 1.3; }
.unlinked-vacancies-alert.is-backlog { border-color: #b9c8cf; background: #f3f7f8; color: #31515e; }
.unlinked-vacancies-alert:hover, .unlinked-vacancies-alert:focus-visible { background: #ffe0dc; outline: 2px solid #b5332b; }
.toast { color: #fff; background: #254754; border-radius: 9px; box-shadow: var(--shadow); padding: 11px 15px; min-width: 210px; max-width: 360px; font-size: 13px; }
.toast.error { background: #ae574f; }
.loading { padding: 50px; color: var(--muted); text-align: center; }
@media (max-width: 1250px) { .content-grid { grid-template-columns: 1fr; } .metrics { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 820px) { .app-shell { grid-template-columns: 67px minmax(0,1fr); } .sidebar { padding: 20px 8px; } .brand { padding: 0 6px 30px; } .brand .brand-full { display: none; } .brand .brand-icon { display: block; } .brand-product, .sidebar-caption, .sidebar-foot, .nav-item span, .nav-item b { display: none; } .main-nav { gap: 8px; } .nav-item { justify-content: center; padding: 13px; } .nav-item svg { width: 20px; height: 20px; } .browser-shortcut svg { display: none; } .browser-shortcut .browser-shortcut-tag { display: inline; font-size: 13px; font-weight: 800; } .topbar { padding: 0 22px; } .main-content { padding: 27px 21px 50px; } }
@media (max-width: 600px) { .app-shell { display: block; } .sidebar { min-height: 0; padding: 10px 13px; flex-direction: row; align-items: center; position: sticky; top: 0; z-index: 10; } .brand { padding: 0 10px 0 0; } .brand-mark { width: 30px; height: 30px; font-size: 17px; } .main-nav { display: flex; margin-left: auto; gap: 2px; overflow-x: auto; min-width: 0; scrollbar-width: thin; } .nav-item { width: 40px; min-width: 40px; padding: 9px; } .topbar { height: 49px; padding: 0 14px; } .topbar-actions { gap: 7px; } .breadcrumbs { gap: 4px; } .breadcrumbs span { display: none; } .breadcrumbs svg { display: none; } .main-content { padding: 22px 14px 50px; } .page-heading { display: block; } .page-actions { justify-content: flex-start; margin-top: 17px; } .metrics { gap: 9px; } .metric { padding: 14px; } .metric strong { font-size: 22px; } .queue-row { grid-template-columns: 34px minmax(0,1fr) 15px; padding: 12px; } .queue-row .channel, .queue-row .due { display: none; } .drawer-top, .drawer-body { padding-left: 17px; padding-right: 17px; } .tabs { padding: 0 17px; } .drawer-summary { grid-template-columns: 1fr 1fr; } .detail-grid { grid-template-columns: 1fr; } .platform-card { grid-template-columns: 43px minmax(0,1fr); } .platform-card .connector-state { grid-column: 2; justify-self: start; } .pub-row { grid-template-columns: 55px minmax(0,1fr); } .pub-row .select { grid-column: 2; } }
@media (max-width: 600px) { .sidebar { height: auto; align-self: auto; overflow-y: visible; } .main-nav { flex-direction: row; } .nav-secondary { display: flex; flex: none; gap: 2px; margin-top: 0; padding-top: 0; border-top: 0; } }
@media (max-width: 820px) { .candidate-drawer-overlay { left: 67px; padding: 12px 12px 12px 24px; } }
@media (max-width: 600px) { body:has(.candidate-drawer-overlay) .sidebar { height: auto; min-height: 0; } .candidate-drawer-overlay { top: 58px; left: 0; padding: 8px 8px 8px 20px; } .candidate-drawer { border-radius: 9px; } .candidate-drawer .drawer-top { padding-top: 14px; padding-bottom: 12px; } .candidate-drawer .candidate-progress, .candidate-drawer .drawer-summary { margin-top: 12px; } }
@media (max-width: 900px) { .catalog-list { overflow: auto; } }
@media (max-width: 900px) { .object-head { align-items: flex-start; flex-direction: column; } .object-controls { width: 100%; min-width: 0; justify-content: flex-start; } }
@media (max-width: 700px) { .catalog-scroll-hint { display: inline; } .vacancy-head { align-items: flex-start; } .details-hint { font-size: 0; } .object-actions, .vacancy-actions { flex-wrap: wrap; justify-content: flex-start; } }
@media (max-width: 700px) { .listing-card-body { grid-template-columns: 1fr; } .listing-card-facts div { grid-template-columns: 1fr; gap: 3px; } .listing-card-actions .button { width: 100%; justify-content: center; } }
@media (max-width: 700px) { .pilot-vacancies { grid-template-columns: 1fr; } .pilot-vacancy { border-right: 0; border-bottom: 1px solid var(--line); } .pilot-workspace-head { display: block; } .pilot-workspace-head .button { margin-top: 15px; } }
.archive-person:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.archive-filters { display: grid; grid-template-columns: minmax(230px,1.6fr) repeat(3,minmax(150px,1fr)); align-items: end; gap: 10px; margin-bottom: 16px; }
.archive-filters label, .archive-filters > div { min-width: 0; }
.archive-range { width: min(100%, 270px); }
.archive-date-range { width: min(100%, 340px); }
.archive-range-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; }
.archive-range-fields label { display: flex; align-items: center; gap: 4px; color: var(--muted); font-size: 12px; }
.archive-range-fields .field { min-width: 0; width: 100%; padding-inline: 7px; }
.archive-date-range .field { font-size: 12px; }
.archive-filters .archive-check { display: flex; align-items: center; gap: 7px; min-height: 37px; font-size: 13px; color: var(--muted); line-height: 1.25; }
.archive-filters .archive-check input { accent-color: var(--accent); }
.archive-list { overflow: hidden; }
.archive-loading { padding: 25px; color: var(--muted); margin-bottom: 12px; }
.archive-list-count { padding: 15px 18px; font-size: 13px; color: var(--muted); }
.archive-selection-note { padding: 0 18px 12px; font-size: 13px; line-height: 1.4; color: var(--muted); }
.archive-segment-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0 0 10px; }
.archive-segment-toolbar span { flex: 1; color: var(--muted); font-size: 13px; }
.archive-segments { display: flex; gap: 7px; flex-wrap: wrap; margin: 0 0 16px; }
.archive-select-menu { width: max-content; max-width: calc(100% - 36px); display: grid; margin: 0 18px 12px;
  padding: 6px; background: #fff; border: 1px solid var(--line); border-radius: 9px; box-shadow: 0 12px 32px #152c3b27; }
.archive-select-menu button { padding: 9px 11px; border: 0; border-radius: 6px; background: transparent;
  color: var(--ink); text-align: left; white-space: nowrap; cursor: pointer; }
.archive-select-menu button:hover, .archive-select-menu button:focus-visible { background: #ecf4f8; }
.archive-table { min-width: 1220px; table-layout: fixed; }
.archive-table th:nth-child(1) { width: 6%; }
.archive-table th:nth-child(2) { width: 16%; }
.archive-table th:nth-child(3) { width: 13%; }
.archive-table th:nth-child(4) { width: 20%; }
.archive-table th:nth-child(5) { width: 10%; }
.archive-table th:nth-child(6) { width: 10%; }
.archive-table th:nth-child(7) { width: 10%; }
.archive-table th:nth-child(8) { width: 8%; }
.archive-table th:nth-child(9) { width: 7%; }
.archive-list .archive-table { min-width: 1340px; }
.archive-list .archive-table th:nth-child(1) { width: 5%; }
.archive-list .archive-table th:nth-child(2) { width: 13%; }
.archive-list .archive-table th:nth-child(3) { width: 11%; }
.archive-list .archive-table th:nth-child(4) { width: 17%; }
.archive-list .archive-table th:nth-child(5) { width: 8%; }
.archive-list .archive-table th:nth-child(6) { width: 10%; }
.archive-list .archive-table th:nth-child(7) { width: 13%; }
.archive-list .archive-table th:nth-child(8) { width: 10%; }
.archive-list .archive-table th:nth-child(9) { width: 6%; }
.archive-list .archive-table th:nth-child(10) { width: 7%; }
.segment-table { min-width: 1050px; }
.segment-table th:nth-child(1) { width: 19%; }
.segment-table th:nth-child(2) { width: 17%; }
.segment-table th:nth-child(3) { width: 26%; }
.segment-table th:nth-child(4) { width: 13%; }
.segment-table th:nth-child(5) { width: 13%; }
.segment-table th:nth-child(6) { width: 12%; }
.archive-table td { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.archive-table tbody tr { cursor: default; }
.archive-table td small { display: block; color: var(--muted); }
.archive-person { border: 0; background: none; color: #126b87; font-weight: 700; text-align: left; padding: 4px 0; cursor: pointer; }
.archive-person:hover { text-decoration: underline; }
.archive-unread { display: inline-block; margin-left: 7px; padding: 2px 6px; border-radius: 12px; background: var(--accent); color: white; font-size: 11px; }
.archive-status { display: inline-block; border-radius: 10px; background: #edf5f4; color: #27645d; padding: 4px 7px; font-size: 11px; }
.archive-status.pending, .archive-status.partial { background: #fff3e6; color: #94580d; }
.archive-status.restricted { background: #f1f3f5; color: #64717a; }
.archive-outcome { color: var(--muted); }
.archive-table input[data-outreach-select], .archive-table input[data-outreach-select-page] { width: 17px; height: 17px; accent-color: var(--accent); cursor: pointer; }
.archive-table input[data-outreach-select]:disabled, .archive-table input[data-outreach-select-page]:disabled { cursor: not-allowed; }
.archive-select-cell { display: inline-flex; align-items: center; gap: 3px; }
.archive-selection-reason { width: 24px; height: 24px; padding: 0; border: 1px solid var(--muted); border-radius: 50%; background: transparent; color: var(--muted); font-size: 13px; font-weight: 700; line-height: 1; cursor: pointer; }
.archive-selection-reason:hover, .archive-selection-reason:focus-visible { border-color: var(--accent); color: var(--accent); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.outreach-modal { width: min(820px,100%); }
.outreach-recipient-list { max-height: 48vh; overflow-y: auto; display: grid; gap: 8px; margin: 12px 0; }
.outreach-recipient { border: 1px solid var(--line); border-radius: 8px; padding: 10px 12px; }
.outreach-recipient-error, .outreach-validation-error { border: 2px solid #ba4b42; background: #fff5f2; }
.outreach-validation-error { border-radius: 8px; padding: 11px 13px; line-height: 1.45; color: #87362f; }
.outreach-recipient strong, .outreach-recipient small { display: block; }
.outreach-recipient small { color: var(--muted); margin-top: 3px; }
.outreach-recipient p { margin: 9px 0 0; white-space: pre-wrap; line-height: 1.45; }
.outreach-recipient .button { margin-top: 8px; }
.outreach-history { border-top: 1px solid var(--line); margin-top: 16px; padding-top: 10px; display: flex; flex-wrap: wrap; gap: 6px; }
.outreach-history h3 { width: 100%; margin: 0 0 4px; }
.archive-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 16px; margin: 0 0 22px; }
.archive-facts > div { min-width: 0; }
.archive-facts dt { font-size: 11px; color: var(--muted); }
.archive-facts dd { margin: 3px 0 0; overflow-wrap: anywhere; font-size: 13px; }
.archive-profile-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 0 0 22px;
  padding: 15px; border: 1px solid var(--line); border-radius: 9px; }
.archive-profile-form h3,.archive-profile-form p { grid-column: 1 / -1; margin: 0; }
.archive-profile-form p { color: var(--muted); font-size: 13px; }
.archive-profile-form label { min-width: 0; }
.archive-profile-form .button { justify-self: start; }
.archive-drawer-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 14px; }
.archive-external-note { display: block; margin-top: 8px; color: var(--muted); line-height: 1.35; }
.archive-thread > .button { margin-bottom: 14px; }
@media (max-width: 1150px) { .archive-filters { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 700px) { .archive-filters, .archive-facts, .archive-profile-form { grid-template-columns: 1fr; } }
body.auth-checking .app-shell { visibility: hidden; }
body.login-mode { background: #fff; }
body.login-mode .app-shell { display: block; }
body.login-mode .sidebar, body.login-mode .topbar { display: none; }
body.login-mode .main-content { padding: 0; margin: 0; max-width: none; }
.login-layout { min-height: 100vh; display: grid; grid-template-columns: minmax(0,1.12fr) minmax(420px,.88fr); }
.login-story { position: relative; overflow: hidden; background: radial-gradient(circle at 94% 9%, #557589 0, transparent 30%), linear-gradient(145deg,#253f52 0%,#2f485c 53%,#1e3445 100%); color: #fff; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(32px,5vw,76px); }
.login-story:before { content: ''; position: absolute; right: -170px; bottom: -260px; width: 580px; height: 580px; border: 1px solid rgba(255,255,255,.09); border-radius: 50%; box-shadow: 0 0 0 82px rgba(255,255,255,.025), 0 0 0 160px rgba(255,255,255,.02); pointer-events: none; }
.login-story:after { content: ''; position: absolute; width: 11px; height: 11px; background: var(--accent); border-radius: 50%; right: 17%; top: 25%; box-shadow: 0 0 0 10px rgba(255,73,0,.13); }
.login-story-top, .login-story-body, .login-story-bottom { position: relative; z-index: 1; }
.login-story-top { display: flex; align-items: center; gap: 30px; }
.login-story-top img { width: 166px; height: auto; }
.login-story-top span { font-size: 11px; letter-spacing: .16em; color: #a9c0cd; padding-left: 29px; border-left: 1px solid #5a7382; }
.login-story-body { max-width: 740px; padding: 70px 0 55px; }
.login-kicker { color: #ff9a6c; font-size: 11px; font-weight: 800; letter-spacing: .18em; display: flex; align-items: center; gap: 11px; margin-bottom: 23px; }
.login-kicker-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 0 5px rgba(255,73,0,.15); }
.login-story h1 { color: #fff; font-size: clamp(38px,4.2vw,66px); line-height: 1.08; letter-spacing: -.045em; font-weight: 700; margin: 0 0 26px; }
.login-story h1 em { color: #ff8050; font-style: normal; }
.login-story-body > p { max-width: 570px; color: #c5d6df; font-size: 15px; line-height: 1.7; margin-bottom: 34px; }
.login-feature-list { display: grid; gap: 15px; max-width: 545px; }
.login-feature-list > div { display: flex; align-items: center; gap: 13px; font-size: 13px; color: #ecf3f6; }
.login-feature-list svg { width: 33px; height: 33px; padding: 8px; color: #ff8856; background: rgba(255,255,255,.09); border-radius: 9px; }
.login-story-bottom { color: #8ca5b2; font-size: 10px; font-weight: 700; letter-spacing: .14em; }
.login-story-bottom span { color: var(--accent); padding: 0 7px; }
.login-side { display: flex; flex-direction: column; justify-content: space-between; padding: clamp(30px,4vw,62px); background: #fff; }
.login-side-top, .login-side-bottom { color: #91a0aa; font-size: 11px; text-align: right; }
.login-card { width: min(100%,430px); margin: 55px auto 70px; }
.login-card .eyebrow { font-size: 11px; margin-bottom: 12px; }
.login-card h2 { font-size: 39px; letter-spacing: -.04em; color: var(--ink); margin-bottom: 12px; }
.login-card > p { font-size: 14px; line-height: 1.55; color: var(--muted); margin-bottom: 36px; }
.login-card .form-stack { gap: 20px; }
.login-card .form-label { font-size: 12px; color: var(--ink); margin-bottom: 9px; }
.login-card .field { min-height: 52px; font-size: 15px; padding: 12px 15px; }
.login-submit { width: 100%; min-height: 52px; margin-top: 6px; font-size: 14px; justify-content: space-between; padding: 0 19px; }
.login-error { border: 1px solid #eac3bf; background: var(--danger-soft); color: var(--danger); border-radius: 8px; padding: 11px 13px; font-size: 12px; }
.login-error[hidden] { display: none; }
.login-help { color: #91a0aa; font-size: 11px; line-height: 1.55; margin-top: 24px; }
@media (max-width: 940px) { .login-layout { grid-template-columns: minmax(0,1fr) minmax(380px,1fr); } .login-story { padding: 36px; } .login-story h1 { font-size: clamp(34px,4vw,52px); } .login-story-top { display: block; } .login-story-top span { display: block; border: 0; padding: 0; margin-top: 15px; } }
@media (max-width: 720px) { .login-layout { display: block; } .login-story { min-height: 310px; padding: 26px; } .login-story-top img { width: 135px; } .login-story-top span, .login-feature-list, .login-story-bottom { display: none; } .login-story-body { padding: 30px 0 20px; } .login-story h1 { font-size: 34px; } .login-story-body > p { font-size: 12px; margin: 0; } .login-side { min-height: 540px; padding: 26px; } .login-side-top { display: none; } .login-side-bottom { text-align: center; } .login-card { margin: 24px auto 40px; } .login-card h2 { font-size: 30px; } }
