:root {
  color-scheme: dark;
  --cms-bg: #353a49;
  --cms-sidebar: #2e3341;
  --cms-sidebar-deep: #292e3b;
  --cms-panel: #3a4050;
  --cms-panel-2: #414757;
  --cms-border: rgba(255, 255, 255, .09);
  --cms-text: #f6f7fb;
  --cms-muted: #aeb4c3;
  --cms-purple: #7d23f6;
  --cms-purple-soft: #9a53ff;
  --cms-green: #75c62b;
  --cms-danger: #ff747d;
  --cms-shadow: 0 18px 48px rgba(9, 12, 22, .24);
  font-family: Poppins, Rubik, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--cms-bg); }
body { margin: 0; min-height: 100vh; color: var(--cms-text); background: var(--cms-bg); }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
code { color: #c49aff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
[hidden] { display: none !important; }

/* Authentication */
.cms-auth-page { display: grid; min-height: 100vh; place-items: center; padding: 24px; background: radial-gradient(circle at 20% 0, rgba(125, 35, 246, .18), transparent 34rem), #242936; }
.cms-auth-shell { width: min(100%, 470px); }
.cms-auth-card { padding: clamp(28px, 6vw, 46px); border: 1px solid var(--cms-border); border-radius: 22px; background: rgba(46, 51, 65, .97); box-shadow: var(--cms-shadow); }
.cms-auth-brand { display: inline-block; margin-bottom: 32px; }
.cms-auth-brand img { display: block; width: 150px; height: auto; }
.cms-eyebrow { margin: 0 0 7px; color: #b58aff; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.cms-auth-card h1 { margin: 0; font-size: clamp(28px, 7vw, 40px); line-height: 1.12; letter-spacing: -.035em; }
.cms-auth-intro { margin: 15px 0 28px; color: var(--cms-muted); line-height: 1.65; }
.cms-alert { margin: 18px 0; padding: 13px 15px; border-radius: 10px; font-size: 14px; line-height: 1.5; }
.cms-alert.is-error { color: #ffd7da; border: 1px solid rgba(255, 116, 125, .3); background: rgba(255, 116, 125, .11); }
.cms-alert.is-info { color: #e8ddff; border: 1px solid rgba(181, 138, 255, .28); background: rgba(125, 35, 246, .13); }
.cms-auth-form, .cms-knowledge-editor { display: grid; gap: 17px; }
.cms-back-link { display: inline-block; margin-top: 24px; color: var(--cms-muted); font-size: 13px; text-decoration: none; }

/* Form controls */
label { display: grid; gap: 8px; color: #e7e9f0; font-size: 13px; font-weight: 700; }
label small { color: var(--cms-muted); font-weight: 500; }
input, textarea, select { width: 100%; color: var(--cms-text); border: 1px solid var(--cms-border); border-radius: 7px; outline: 0; background: #2d3240; transition: border-color .2s, box-shadow .2s; }
input, select { min-height: 44px; padding: 0 13px; }
textarea { min-height: 150px; padding: 13px; resize: vertical; line-height: 1.55; }
input:focus, textarea:focus, select:focus { border-color: var(--cms-purple-soft); box-shadow: 0 0 0 3px rgba(125, 35, 246, .17); }
button { color: var(--cms-text); border: 1px solid var(--cms-border); border-radius: 6px; background: var(--cms-panel-2); cursor: pointer; transition: border-color .18s, background .18s, transform .18s; }
button:hover { border-color: rgba(181, 138, 255, .52); }
button:disabled { opacity: .55; cursor: wait; }
.cms-auth-form button, .cms-primary { min-height: 46px; padding: 0 18px; color: #fff; border-color: transparent; background: linear-gradient(135deg, var(--cms-purple), var(--cms-purple-soft)); font-weight: 800; }

/* Old-dashboard inspired shell */
.cms-layout { display: grid; min-height: 100vh; grid-template-columns: 278px minmax(0, 1fr); }
.cms-sidebar { position: sticky; top: 0; z-index: 30; display: flex; height: 100vh; min-width: 0; flex-direction: column; border-right: 1px solid rgba(255, 255, 255, .04); background: var(--cms-sidebar); box-shadow: 5px 0 18px rgba(16, 20, 31, .12); }
.cms-sidebar-head { display: flex; min-height: 74px; align-items: center; justify-content: space-between; padding: 12px 20px; border-bottom: 1px solid var(--cms-border); background: var(--cms-sidebar-deep); }
.cms-sidebar-brand { display: flex; align-items: center; text-decoration: none; }
.cms-sidebar-brand img { display: block; width: 124px; height: auto; }
.cms-sidebar-head > button { width: 34px; height: 34px; border: 0; background: transparent; color: #bbc0cc; font-size: 28px; font-weight: 300; line-height: 1; }
.cms-nav { flex: 1 1 auto; overflow-x: hidden; overflow-y: auto; padding: 18px 0 24px; scrollbar-color: #51586b transparent; scrollbar-width: thin; }
.cms-nav button { width: 100%; border: 0; border-radius: 0; background: transparent; text-align: left; }
.cms-nav-link, .cms-nav-parent { position: relative; display: grid; min-height: 51px; align-items: center; gap: 10px; padding: 0 16px 0 28px; grid-template-columns: 21px minmax(0, 1fr) auto auto; color: #aeb4c3; font-size: 14px; font-weight: 500; }
.cms-nav-link { grid-template-columns: 21px minmax(0, 1fr); }
.cms-nav-link::before, .cms-nav-parent::before { position: absolute; inset: 9px auto 9px 0; width: 4px; border-radius: 0 3px 3px 0; background: transparent; content: ""; }
.cms-nav-link:hover, .cms-nav-parent:hover, .cms-nav-link.is-active { color: #fff; background: rgba(255, 255, 255, .025); }
.cms-nav-link.is-active::before { background: var(--cms-purple); box-shadow: 0 0 11px rgba(125, 35, 246, .85); }
.cms-nav-icon { display: inline-grid; width: 21px; height: 21px; place-items: center; color: #7970b2; font-size: 16px; font-weight: 700; }
.cms-nav-parent > b { min-width: 24px; padding: 2px 6px; border-radius: 9px; color: #c8cad2; background: rgba(255, 255, 255, .07); text-align: center; font-size: 9px; }
.cms-nav-parent > i { color: #8d93a2; font-size: 15px; font-style: normal; transition: transform .2s; }
.cms-nav-group.is-open > .cms-nav-parent { color: #fff; }
.cms-nav-group.is-open > .cms-nav-parent > i { transform: rotate(180deg); }
.cms-nav-children { display: none; padding: 2px 0 8px 48px; background: rgba(20, 24, 34, .13); }
.cms-nav-group.is-open > .cms-nav-children { display: block; }
.cms-nav-children button { display: grid; min-height: 38px; align-items: center; padding: 7px 15px 7px 11px; grid-template-columns: minmax(0, 1fr) auto; color: #999faf; font-size: 12px; font-weight: 500; line-height: 1.35; }
.cms-nav-children button:hover, .cms-nav-children button.is-active { color: #fff; background: rgba(125, 35, 246, .13); }
.cms-nav-children button > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cms-nav-children button > b { min-width: 21px; color: #868c9b; font-size: 9px; font-weight: 700; text-align: right; }
.cms-sidebar-user { display: grid; flex: 0 0 auto; gap: 4px; padding: 15px 20px 18px; border-top: 1px solid var(--cms-border); background: var(--cms-sidebar-deep); }
.cms-sidebar-user strong { font-size: 13px; }
.cms-sidebar-user > span { color: var(--cms-muted); font-size: 11px; }
.cms-sidebar-user form { margin-top: 8px; }
.cms-sidebar-user button { min-height: 34px; padding: 0 11px; color: #c7cad4; background: #363c4b; font-size: 11px; }

.cms-main { min-width: 0; padding: 0 clamp(18px, 3vw, 44px) 60px; }
.cms-topbar { position: sticky; top: 0; z-index: 20; display: flex; min-height: 74px; align-items: center; gap: 18px; margin: 0 calc(clamp(18px, 3vw, 44px) * -1); padding: 0 clamp(18px, 3vw, 44px); border-bottom: 1px solid var(--cms-border); background: rgba(47, 52, 66, .97); box-shadow: 0 4px 18px rgba(16, 20, 31, .08); backdrop-filter: blur(16px); }
.cms-menu-button { display: none; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; }
.cms-title-area { display: flex; min-width: 0; align-items: baseline; gap: 24px; }
.cms-title-area h1 { margin: 0; font-size: clamp(21px, 2.5vw, 28px); font-weight: 600; letter-spacing: -.025em; }
.cms-title-area p { display: flex; margin: 0; align-items: center; gap: 9px; color: #c4c8d2; font-size: 12px; }
.cms-title-area p i { color: #777e90; font-style: normal; }
.cms-title-area p strong { color: #f5f6f9; font-weight: 600; }
.cms-topbar-actions { display: flex; margin-left: auto; align-self: stretch; align-items: center; gap: 18px; }
.cms-topbar-actions > a { min-height: 40px; padding: 0 18px; display: inline-flex; align-items: center; border-radius: 4px; color: #fff; background: #537df4; font-size: 12px; font-weight: 700; text-decoration: none; }
.cms-profile { display: flex; min-width: 205px; align-self: stretch; align-items: center; gap: 10px; margin-right: calc(clamp(18px, 3vw, 44px) * -1); padding: 0 clamp(18px, 3vw, 28px); border: 0; border-radius: 0; background: linear-gradient(120deg, #7c0ff1, #9c5cff); font-size: 13px; font-weight: 700; }
.cms-profile img { width: 34px; height: 34px; border-radius: 50%; background: #fff; }
.cms-profile span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cms-profile i { margin-left: auto; font-style: normal; }

.cms-global-alert { position: fixed; z-index: 80; top: 20px; right: 20px; max-width: min(420px, calc(100vw - 40px)); padding: 14px 17px; border: 1px solid rgba(181, 138, 255, .38); border-radius: 8px; color: #f2ebff; background: #482479; box-shadow: var(--cms-shadow); font-size: 14px; }
.cms-global-alert.is-error { color: #ffdede; border-color: rgba(255, 116, 125, .4); background: #6b2830; }
.cms-panel { display: grid; gap: 24px; padding-top: 28px; }
.cms-panel[hidden] { display: none; }
body.cms-modal-open { overflow: hidden; }
.cms-modal[hidden] { display: none; }
.cms-modal { position: fixed; z-index: 90; inset: 0; display: grid; place-items: center; padding: 24px; }
.cms-modal-backdrop { position: absolute; inset: 0; background: rgba(11, 13, 20, .72); backdrop-filter: blur(4px); }
.cms-modal-card { position: relative; z-index: 1; width: min(940px, calc(100vw - 36px)); max-height: min(820px, calc(100vh - 36px)); overflow: auto; padding: 26px; border: 1px solid rgba(181, 138, 255, .35); border-radius: 6px; background: var(--cms-panel); box-shadow: 0 24px 70px rgba(0, 0, 0, .42); }
.cms-modal-close { position: absolute; top: 14px; right: 14px; display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid var(--cms-border); border-radius: 50%; color: #fff; background: #333947; font-size: 22px; line-height: 1; }
.cms-modal-close:hover { border-color: rgba(181, 138, 255, .45); background: #3f4658; }

/* Dashboard */
.cms-welcome, .cms-ai-intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; padding: clamp(23px, 3vw, 34px); border: 1px solid var(--cms-border); border-radius: 4px; background: linear-gradient(135deg, rgba(125, 35, 246, .11), rgba(255, 255, 255, .025)); }
.cms-welcome h2, .cms-ai-intro h2 { max-width: 760px; margin: 0; font-size: clamp(24px, 3.4vw, 38px); line-height: 1.18; letter-spacing: -.035em; }
.cms-welcome p:not(.cms-eyebrow), .cms-ai-intro p:not(.cms-eyebrow) { max-width: 760px; margin: 13px 0 0; color: var(--cms-muted); line-height: 1.65; }
.cms-status-pill { display: inline-flex; min-height: 33px; flex: 0 0 auto; align-items: center; padding: 0 12px; border: 1px solid rgba(157, 92, 255, .32); border-radius: 999px; color: #d6bdff; background: rgba(125, 35, 246, .1); font-size: 11px; font-weight: 800; }
.cms-stat-grid { display: grid; gap: 16px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.cms-stat-grid article { position: relative; display: grid; min-height: 132px; align-items: center; gap: 12px; padding: 22px 16px; overflow: hidden; grid-template-columns: 64px minmax(0, 1fr); border: 0; border-radius: 3px; box-shadow: 0 10px 28px rgba(16, 19, 29, .15); }
.cms-stat-grid article.is-magenta { background: #bb3b84; }
.cms-stat-grid article.is-purple { background: #6b3dc5; }
.cms-stat-grid article.is-green { background: #70bf29; }
.cms-stat-grid article.is-blue { background: #2384c6; }
.cms-stat-grid article.is-orange { background: #e18420; }
.cms-stat-icon { display: grid; width: 58px; height: 58px; place-items: center; border-radius: 50%; color: #7022ef; background: rgba(255,255,255,.94); font-size: 26px; font-weight: 800; }
.cms-stat-grid article span { display: block; color: #fff; font-family: Rubik, Poppins, sans-serif; font-size: clamp(25px, 2.9vw, 34px); font-weight: 700; line-height: 1; }
.cms-stat-grid article p { margin: 8px 0 0; color: #fff; font-size: 13px; line-height: 1.4; }
.cms-stat-grid article > button { position: absolute; top: 10px; right: 10px; width: 38px; height: 38px; border: 0; color: #8055c5; background: rgba(255,255,255,.82); font-size: 20px; }

.cms-card { min-width: 0; padding: 22px; border: 1px solid var(--cms-border); border-radius: 4px; background: var(--cms-panel); box-shadow: 0 8px 24px rgba(16, 20, 31, .1); }
.cms-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 18px; }
.cms-card-heading h2 { margin: 0; font-size: 20px; font-weight: 600; letter-spacing: -.02em; }
.cms-card-heading > button, .cms-card-heading > a { display: inline-flex; min-height: 38px; align-items: center; padding: 0 12px; border: 1px solid var(--cms-border); border-radius: 4px; color: #d9c4ff; background: var(--cms-panel-2); font-size: 12px; font-weight: 750; text-decoration: none; }
.cms-card-heading input[type="search"] { width: min(230px, 48%); }
.cms-card-copy { color: var(--cms-muted); font-size: 13px; line-height: 1.6; }
.cms-permission-list { display: flex; flex-wrap: wrap; gap: 8px; }
.cms-permission-list span { padding: 7px 10px; border: 1px solid var(--cms-border); border-radius: 999px; color: var(--cms-muted); background: #303544; font: 700 11px ui-monospace, monospace; }
.cms-category-grid { display: grid; gap: 12px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cms-category-grid > button { position: relative; display: grid; min-height: 118px; gap: 5px; padding: 17px; grid-template-columns: 40px minmax(0, 1fr); grid-template-rows: auto auto; border-color: var(--cms-border); background: #343a49; text-align: left; }
.cms-category-grid > button > span { display: grid; width: 34px; height: 34px; grid-row: 1 / 3; place-items: center; border-radius: 50%; color: #bd98ff; background: rgba(125, 35, 246, .13); font-size: 17px; }
.cms-category-grid strong { align-self: end; font-size: 13px; }
.cms-category-grid small { align-self: start; color: var(--cms-muted); font-size: 10px; }
.cms-category-grid i { position: absolute; right: 13px; bottom: 12px; color: #a76cff; font-style: normal; }

/* Content, AI and administration tools */
.cms-page-grid, .cms-ai-grid { display: grid; gap: 20px; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
.cms-page-list, .cms-section-list, .cms-knowledge-list, .cms-application-list, .cms-user-list, .cms-ai-page-list { display: grid; gap: 8px; max-height: 620px; overflow: auto; padding-right: 4px; }
.cms-list-button, .cms-section-button, .cms-knowledge-button, .cms-application-button, .cms-user-button { display: grid; gap: 5px; width: 100%; padding: 13px 14px; border-color: transparent; background: #333947; text-align: left; }
.cms-list-button strong, .cms-section-button strong, .cms-knowledge-button strong, .cms-application-button strong, .cms-user-button strong { font-size: 13px; }
.cms-list-button span, .cms-section-button span, .cms-knowledge-button span, .cms-application-button span, .cms-user-button span { overflow: hidden; color: var(--cms-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cms-list-button.is-active, .cms-section-button.is-active, .cms-knowledge-button.is-active, .cms-application-button.is-active, .cms-user-button.is-active { border-color: rgba(181, 138, 255, .38); background: rgba(125, 35, 246, .13); }
.cms-application-button strong { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 10px; }
.cms-application-button em { padding: 3px 7px; border-radius: 999px; color: #d7c4ff; background: rgba(125,35,246,.18); font-size: 10px; font-style: normal; }
.cms-filter-row { display: flex; gap: 9px; align-items: center; }
.cms-filter-row select, .cms-filter-row input { width: 170px; }
.cms-import-box { display: grid; gap: 12px; align-items: center; margin: -4px 0 16px; padding: 13px; grid-template-columns: minmax(0, 1fr) minmax(0, 190px) auto; border: 1px solid var(--cms-border); border-radius: 6px; background: #303644; }
.cms-import-box strong, .cms-import-box small, .cms-import-box span { display: block; }
.cms-import-box strong { font-size: 13px; }
.cms-import-box small { margin-top: 4px; color: var(--cms-muted); font-size: 11px; line-height: 1.45; }
.cms-import-box label { gap: 6px; margin: 0; }
.cms-import-box input { min-height: 38px; padding: 7px; font-size: 11px; }
.cms-import-box button { min-height: 38px; padding: 0 13px; color: #fff; background: #537df4; font-weight: 800; }
.cms-application-module { margin-bottom: 20px; }
.cms-legacy-toolbar { display: grid; align-items: center; gap: 14px; margin: 4px 0 16px; grid-template-columns: minmax(0, 1fr) auto auto; color: #c9cfda; font-size: 13px; }
.cms-bulk-controls { display: flex; gap: 8px; align-items: center; }
.cms-bulk-controls select, .cms-show-entries select { width: auto; min-width: 132px; min-height: 38px; }
.cms-bulk-controls button { min-height: 38px; padding: 0 14px; color: #fff; background: #537df4; font-weight: 700; }
.cms-show-entries, .cms-table-search { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.cms-show-entries select { min-width: 74px; }
.cms-table-search input { width: 190px; min-height: 38px; }
.cms-table-shell { overflow: auto; border: 1px solid var(--cms-border); border-radius: 5px; background: #2f3542; }
.cms-legacy-table { width: 100%; min-width: 850px; border-collapse: collapse; color: #edf0f6; font-size: 13px; }
.cms-reminder-table { min-width: 1220px; }
.cms-legacy-table th { padding: 13px 14px; border-bottom: 1px solid var(--cms-border); color: #fff; background: #272c37; font-size: 12px; font-weight: 600; text-align: left; white-space: nowrap; }
.cms-legacy-table td { padding: 13px 14px; border-bottom: 1px solid rgba(255,255,255,.075); color: #dfe3ec; vertical-align: middle; }
.cms-legacy-table tbody tr:hover, .cms-legacy-table tbody tr.is-active { background: rgba(125,35,246,.12); }
.cms-legacy-table tbody tr:last-child td { border-bottom: 0; }
.cms-legacy-table strong, .cms-legacy-table small { display: block; }
.cms-legacy-table strong { color: #fff; font-weight: 600; }
.cms-legacy-table small { margin-top: 3px; color: var(--cms-muted); font-size: 11px; }
.cms-row-action { min-height: 32px; padding: 0 11px; border-color: rgba(181,138,255,.38); color: #e0d0ff; background: rgba(125,35,246,.16); font-size: 12px; font-weight: 600; }
.cms-table-footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 15px; color: var(--cms-muted); font-size: 13px; }
.cms-table-footer p { margin: 0; }
.cms-pagination { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.cms-pagination button, .cms-pagination span { min-width: 34px; min-height: 34px; padding: 0 10px; border-radius: 4px; font-size: 12px; }
.cms-pagination span { display: inline-flex; align-items: center; justify-content: center; color: var(--cms-muted); }
.cms-pagination button.is-active { border-color: rgba(181,138,255,.5); color: #fff; background: #7d23f6; }
.cms-application-summary { display: grid; gap: 8px; margin-bottom: 18px; }
.cms-application-summary .cms-status-pill { justify-self: start; }
.cms-application-summary strong { font-size: 20px; font-weight: 600; }
.cms-application-summary small { color: var(--cms-muted); }
.cms-detail-list { display: grid; gap: 10px; margin: 0 0 18px; }
.cms-detail-list div { display: grid; gap: 5px; padding: 11px 12px; border: 1px solid var(--cms-border); border-radius: 6px; background: #333947; }
.cms-detail-list dt { color: var(--cms-muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.cms-detail-list dd { margin: 0; color: #edf0f6; font-size: 13px; line-height: 1.45; overflow-wrap: anywhere; }
.cms-assessment-answer-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.cms-assessment-answer-list > div { display: grid; gap: 5px; min-width: 0; padding: 10px 11px; border: 1px solid var(--cms-border); border-radius: 5px; background: #2d3340; }
.cms-assessment-answer-list strong { color: var(--cms-muted); font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.cms-assessment-answer-list span { color: #edf0f6; font-size: 12px; line-height: 1.48; overflow-wrap: anywhere; }
.cms-application-skills { margin-bottom: 18px; padding: 14px; border-radius: 6px; background: #303644; }
.cms-application-skills h3 { margin: 0 0 8px; font-size: 15px; }
.cms-application-skills p { margin: 0; color: var(--cms-muted); line-height: 1.6; white-space: pre-wrap; }
.cms-download-link { display: inline-flex; min-height: 34px; align-items: center; padding: 0 12px; border: 1px solid rgba(181,138,255,.4); border-radius: 4px; color: #fff; background: rgba(125,35,246,.22); font-size: 12px; font-weight: 700; text-decoration: none; }
.cms-download-link:hover { background: rgba(125,35,246,.36); }
.cms-download-link + small { display: block; margin-top: 7px; color: var(--cms-muted); font-size: 11px; }
.cms-applicant-modal-card { width: min(1120px, calc(100vw - 36px)); padding: clamp(22px, 3vw, 34px); border-radius: 14px; }
.cms-applicant-modal-card > .cms-card-heading { padding-right: 44px; }
.cms-applicant-hero { display: grid; align-items: center; gap: 18px; margin-bottom: 18px; padding: clamp(19px, 2.6vw, 28px); grid-template-columns: 76px minmax(0, 1fr) minmax(240px, .8fr); border: 1px solid rgba(181, 138, 255, .22); border-radius: 12px; background: linear-gradient(135deg, rgba(125, 35, 246, .2), rgba(83, 125, 244, .08) 58%, rgba(255, 255, 255, .025)); }
.cms-applicant-avatar { display: grid; width: 76px; height: 76px; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 22px; color: #fff; background: linear-gradient(145deg, #7d23f6, #537df4); box-shadow: 0 14px 28px rgba(64, 32, 143, .28); font-family: Rubik, Poppins, sans-serif; font-size: 24px; font-weight: 800; letter-spacing: .04em; }
.cms-applicant-identity { min-width: 0; }
.cms-applicant-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 9px; }
.cms-applicant-kicker > span:not(.cms-status-pill) { color: #c1c6d2; font-size: 11px; font-weight: 700; }
.cms-applicant-identity h3 { margin: 0; font-size: clamp(22px, 3vw, 32px); line-height: 1.15; letter-spacing: -.035em; }
.cms-applicant-identity p { margin: 7px 0 0; color: #e4ddf2; font-size: 13px; line-height: 1.5; }
.cms-applicant-identity small { display: block; margin-top: 7px; color: var(--cms-muted); font-size: 11px; }
.cms-applicant-contact-actions { display: grid; gap: 7px; }
.cms-applicant-contact-actions a { display: grid; min-width: 0; gap: 3px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; background: rgba(25, 29, 40, .34); text-decoration: none; transition: border-color .18s, background .18s; }
.cms-applicant-contact-actions a:hover { border-color: rgba(181, 138, 255, .46); background: rgba(125, 35, 246, .12); }
.cms-applicant-contact-actions span { color: var(--cms-muted); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.cms-applicant-contact-actions strong { min-width: 0; overflow: hidden; color: #f7f4ff; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cms-applicant-resume-panel { display: grid; align-items: center; gap: 22px; margin-bottom: 18px; padding: 18px 20px; grid-template-columns: minmax(0, 1fr) auto; border: 1px solid rgba(83, 229, 183, .23); border-radius: 12px; background: linear-gradient(110deg, rgba(83, 229, 183, .1), rgba(83, 125, 244, .07)); }
.cms-applicant-resume-panel > div > span, .cms-applicant-notes > span { color: #79e3bd; font-size: 9px; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.cms-applicant-resume-panel h3 { margin: 5px 0 0; font-size: 17px; }
.cms-applicant-resume-panel p { margin: 5px 0 0; color: var(--cms-muted); font-size: 11px; line-height: 1.5; }
.cms-resume-download { display: grid; min-width: 260px; min-height: 64px; align-items: center; gap: 11px; padding: 9px 12px; grid-template-columns: 42px minmax(0, 1fr) 24px; border: 1px solid rgba(83, 229, 183, .34); border-radius: 9px; color: #f6fffb; background: rgba(25, 91, 71, .32); text-decoration: none; transition: border-color .18s, background .18s, transform .18s; }
.cms-resume-download:hover { border-color: rgba(83, 229, 183, .65); background: rgba(25, 117, 85, .42); transform: translateY(-1px); }
.cms-resume-filetype { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 8px; color: #fff; background: #df4c57; font-size: 10px; font-weight: 900; letter-spacing: .04em; }
.cms-resume-download > span:nth-child(2) { min-width: 0; }
.cms-resume-download strong, .cms-resume-download small { display: block; }
.cms-resume-download strong { font-size: 12px; }
.cms-resume-download small { margin-top: 3px; overflow: hidden; color: #b9d8cd; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.cms-resume-download i { color: #87ecc8; font-size: 24px; font-style: normal; text-align: center; }
.cms-resume-unavailable { color: var(--cms-muted); font-size: 12px; }
.cms-assessment-sections { display: grid; align-items: start; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cms-assessment-section { min-width: 0; overflow: hidden; border: 1px solid var(--cms-border); border-radius: 11px; background: #333947; }
.cms-assessment-section > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; padding: 16px 17px; border-bottom: 1px solid var(--cms-border); background: rgba(255,255,255,.018); }
.cms-assessment-section h3 { margin: 0; font-size: 14px; }
.cms-assessment-section header p { margin: 5px 0 0; color: var(--cms-muted); font-size: 10px; line-height: 1.45; }
.cms-assessment-section header > span { display: grid; width: 27px; height: 27px; flex: 0 0 auto; place-items: center; border-radius: 50%; color: #d8c5ff; background: rgba(125, 35, 246, .18); font-size: 10px; font-weight: 800; }
.cms-assessment-field-grid { display: grid; padding: 5px 17px 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cms-assessment-field { display: grid; min-width: 0; gap: 5px; padding: 12px 8px 12px 0; border-bottom: 1px solid rgba(255,255,255,.055); }
.cms-assessment-field:nth-last-child(-n+2) { border-bottom-color: transparent; }
.cms-assessment-field span { color: var(--cms-muted); font-size: 9px; font-weight: 750; line-height: 1.4; letter-spacing: .035em; text-transform: uppercase; }
.cms-assessment-field strong { color: #f1f3f8; font-size: 12px; font-weight: 650; line-height: 1.5; overflow-wrap: anywhere; }
.cms-applicant-notes { margin-top: 14px; padding: 17px 18px; border: 1px solid rgba(255, 192, 91, .2); border-radius: 11px; background: rgba(225, 132, 32, .07); }
.cms-applicant-notes p { margin: 8px 0 0; color: #e6e0d7; font-size: 12px; line-height: 1.65; white-space: pre-wrap; }
.cms-applicant-status-actions { align-items: end; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--cms-border); }
.cms-applicant-status-actions label { width: min(230px, 100%); }
.cms-applicant-status-actions button { min-height: 44px; }
.cms-loading, .cms-empty { margin: 0; padding: 20px 4px; color: var(--cms-muted); font-size: 13px; }
.cms-editor-card { display: grid; gap: 16px; }
.cms-editor-mode-bar { display: inline-flex; width: fit-content; gap: 4px; padding: 4px; border: 1px solid var(--cms-border); border-radius: 7px; background: #292e3a; }
.cms-editor-mode-bar button { min-height: 38px; padding: 0 16px; border-color: transparent; background: transparent; color: var(--cms-muted); font-weight: 750; }
.cms-editor-mode-bar button.is-active { border-color: rgba(181, 138, 255, .35); background: rgba(125, 35, 246, .2); color: #fff; box-shadow: 0 2px 8px rgba(8, 10, 16, .2); }
.cms-visual-editor, .cms-code-editor { overflow: hidden; border: 1px solid var(--cms-border); border-radius: 7px; background: #2b303d; }
.cms-editor-toolbar { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px; border-bottom: 1px solid var(--cms-border); background: #303644; }
.cms-editor-toolbar button, .cms-editor-toolbar select { width: auto; min-height: 36px; padding: 0 11px; border: 1px solid #555d70; border-radius: 5px; color: #edf0f6; background: #3a4150; font-size: 12px; }
.cms-editor-toolbar button:hover, .cms-editor-toolbar select:hover { border-color: #8e62d1; background: #444c5d; }
.cms-editor-toolbar button:focus-visible, .cms-editor-toolbar select:focus-visible { outline: 2px solid #b58aff; outline-offset: 1px; }
.cms-editor-toolbar select { min-width: 126px; }
.cms-visual-editor iframe { display: block; width: 100%; min-height: 480px; border: 0; background: #fff; }
.cms-code-editor { padding: 14px; }
.cms-code-editor label { gap: 8px; }
.cms-code-editor textarea { min-height: 480px; font: 12px/1.6 ui-monospace, SFMono-Regular, Menlo, monospace; tab-size: 2; }
.cms-editor-note { margin: 0; color: var(--cms-muted); font-size: 12px; line-height: 1.55; }
.cms-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.cms-actions button { min-height: 42px; padding: 0 16px; font-weight: 750; }
.cms-danger { color: #ffd3d6; border-color: rgba(255, 116, 125, .35); background: rgba(255, 116, 125, .1); }
.cms-lead-recordings dd { display: grid; gap: 12px; }
.cms-lead-recording { display: grid; gap: 8px; padding: 12px; border: 1px solid rgba(83, 229, 183, .18); border-radius: 16px; background: rgba(83, 229, 183, .07); }
.cms-lead-recording div { display: grid; gap: 2px; }
.cms-lead-recording strong { font-size: 13px; font-weight: 750; color: var(--cms-text); }
.cms-lead-recording small,
.cms-lead-recording p { margin: 0; color: var(--cms-muted); font-size: 12px; line-height: 1.55; }
.cms-lead-recording audio { width: 100%; min-height: 38px; }
.cms-profile-summary { display: flex; align-items: center; gap: 15px; margin-bottom: 16px; }
.cms-profile-summary img { width: 62px; height: 62px; flex: 0 0 auto; border-radius: 50%; background: #fff; }
.cms-profile-summary strong, .cms-profile-summary span, .cms-profile-summary small { display: block; }
.cms-profile-summary strong { font-size: 18px; }
.cms-profile-summary span { margin-top: 4px; color: #d7c4ff; font-size: 12px; font-weight: 800; }
.cms-profile-summary small { margin-top: 4px; color: var(--cms-muted); font-size: 12px; }
.cms-profile-editor { display: grid; gap: 16px; }
.cms-password-box { display: grid; gap: 14px; margin-top: 4px; padding-top: 18px; border-top: 1px solid var(--cms-border); }
.cms-password-box h3 { margin: 0; font-size: 16px; }
.cms-knowledge-editor label { gap: 7px; }
.cms-knowledge-editor textarea { min-height: 190px; }
.cms-form-row { display: grid; gap: 14px; grid-template-columns: 1fr 1fr; }
.cms-check { display: flex; min-height: 44px; align-items: center; align-self: end; padding: 0 12px; border: 1px solid var(--cms-border); border-radius: 7px; background: #2d3240; }
.cms-check input { width: 18px; min-height: 18px; margin: 0 9px 0 0; accent-color: var(--cms-purple); }
.cms-ai-lower-grid { align-items: start; }
.cms-ai-page-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 12px; border: 1px solid var(--cms-border); border-radius: 6px; background: #333947; }
.cms-ai-page-row div { min-width: 0; }
.cms-ai-page-row strong, .cms-ai-page-row span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cms-ai-page-row strong { font-size: 12px; }
.cms-ai-page-row span { margin-top: 4px; color: var(--cms-muted); font-size: 10px; }
.cms-switch { position: relative; flex: 0 0 auto; width: 42px; height: 24px; }
.cms-switch input { position: absolute; opacity: 0; pointer-events: none; }
.cms-switch i { position: absolute; inset: 0; border-radius: 999px; background: #596070; transition: background .2s; }
.cms-switch i::after { position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; content: ""; transition: transform .2s; }
.cms-switch input:checked + i { background: var(--cms-purple); }
.cms-switch input:checked + i::after { transform: translateX(18px); }
.cms-test-box { display: grid; gap: 12px; margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--cms-border); }
.cms-test-box h3 { margin: 0; font-size: 16px; }
.cms-test-box button { min-height: 42px; }
.cms-test-box pre { max-height: 360px; margin: 0; padding: 14px; overflow: auto; border: 1px solid var(--cms-border); border-radius: 6px; color: #e4e6ed; background: #2b303d; white-space: pre-wrap; word-break: break-word; font: 11px/1.55 ui-monospace, monospace; }
.cms-table-wrap { overflow: auto; }
table { width: 100%; border-collapse: collapse; font-size: 12px; }
th, td { padding: 12px 10px; border-bottom: 1px solid var(--cms-border); text-align: left; vertical-align: top; }
th { color: var(--cms-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
td { color: #e1e4eb; }

/* WhatsApp operations */
.cms-whatsapp-nav-icon { border-radius: 50%; color: #fff; background: #1fae66; font-size: 10px; }
.cms-whatsapp-panel { display: grid; gap: 18px; }
.cms-whatsapp-panel[hidden] { display: none; }
.cms-whatsapp-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 24px; border: 1px solid var(--cms-border); border-radius: 6px; background: #303643; }
.cms-whatsapp-head h2 { margin: 2px 0 6px; font-size: 24px; }
.cms-whatsapp-head p:last-child { max-width: 720px; margin: 0; color: var(--cms-muted); font-size: 12px; line-height: 1.6; }
.cms-whatsapp-connection { display: flex; min-width: 218px; align-items: center; gap: 11px; padding: 12px 14px; border: 1px solid rgba(255,255,255,.1); border-radius: 6px; background: #292f3b; }
.cms-whatsapp-connection > span { width: 11px; height: 11px; flex: 0 0 auto; border-radius: 50%; background: #f2a23c; box-shadow: 0 0 0 5px rgba(242,162,60,.12); }
.cms-whatsapp-connection.is-ready > span { background: #27c476; box-shadow: 0 0 0 5px rgba(39,196,118,.12); }
.cms-whatsapp-connection strong, .cms-whatsapp-connection small { display: block; }
.cms-whatsapp-connection strong { color: #fff; font-size: 12px; }
.cms-whatsapp-connection small { margin-top: 3px; color: var(--cms-muted); font-size: 10px; }
.cms-whatsapp-tabs { display: flex; max-width: 100%; overflow-x: auto; border: 1px solid var(--cms-border); border-radius: 5px; background: #303643; scrollbar-width: thin; }
.cms-whatsapp-tabs button { position: relative; min-height: 48px; flex: 0 0 auto; padding: 0 18px; border: 0; border-right: 1px solid var(--cms-border); border-radius: 0; color: #aeb5c2; background: transparent; font-size: 12px; font-weight: 600; }
.cms-whatsapp-tabs button:last-child { border-right: 0; }
.cms-whatsapp-tabs button:hover { color: #fff; background: rgba(255,255,255,.025); }
.cms-whatsapp-tabs button.is-active { color: #fff; background: rgba(31,174,102,.08); }
.cms-whatsapp-tabs button.is-active::after { position: absolute; right: 12px; bottom: 0; left: 12px; height: 3px; border-radius: 3px 3px 0 0; background: #25c174; content: ""; }
.cms-whatsapp-view { display: grid; gap: 18px; }
.cms-whatsapp-view[hidden] { display: none; }
.cms-whatsapp-stat-grid { display: grid; gap: 14px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cms-whatsapp-stat-grid article { display: grid; min-width: 0; min-height: 130px; align-items: center; gap: 14px; padding: 20px; border: 1px solid var(--cms-border); border-radius: 5px; background: #303643; grid-template-columns: 48px minmax(0, 1fr); box-shadow: 0 8px 24px rgba(16,20,31,.1); }
.cms-wa-stat-icon { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 6px; font-size: 19px; font-style: normal; font-weight: 800; }
.cms-wa-stat-icon.is-green { color: #43d28c; background: rgba(31,174,102,.13); }
.cms-wa-stat-icon.is-blue { color: #60aef4; background: rgba(40,133,224,.14); }
.cms-wa-stat-icon.is-purple { color: #c399ff; background: rgba(125,35,246,.14); }
.cms-wa-stat-icon.is-orange { color: #f6b154; background: rgba(232,143,34,.14); }
.cms-whatsapp-stat-grid small, .cms-whatsapp-stat-grid strong, .cms-whatsapp-stat-grid em { display: block; min-width: 0; }
.cms-whatsapp-stat-grid small { overflow: hidden; color: #b5bbc7; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cms-whatsapp-stat-grid strong { margin-top: 7px; color: #fff; font-size: 25px; font-weight: 700; }
.cms-whatsapp-stat-grid em { margin-top: 5px; color: #7f8797; font-size: 9px; font-style: normal; }
.cms-whatsapp-overview-grid { display: grid; gap: 18px; grid-template-columns: minmax(0, 1.8fr) minmax(270px, .8fr); }
.cms-wa-legend { display: flex; gap: 13px; color: var(--cms-muted); font-size: 10px; }
.cms-wa-legend span { display: inline-flex; align-items: center; gap: 5px; }
.cms-wa-legend i { width: 8px; height: 8px; border-radius: 2px; }
.cms-wa-legend .is-outbound, .cms-wa-chart i.is-outbound { background: #25c174; }
.cms-wa-legend .is-inbound, .cms-wa-chart i.is-inbound { background: #6d82e8; }
.cms-wa-chart { display: grid; min-height: 230px; align-items: stretch; gap: 16px; padding: 12px 8px 2px; grid-template-columns: repeat(7, minmax(22px, 1fr)); }
.cms-wa-chart-day { display: grid; min-width: 0; align-items: end; gap: 10px; grid-template-rows: minmax(170px, 1fr) auto; }
.cms-wa-chart-day > div { display: flex; height: 100%; align-items: end; justify-content: center; gap: 5px; border-bottom: 1px solid rgba(255,255,255,.08); }
.cms-wa-chart-day i { display: block; width: min(13px, 32%); min-height: 4px; border-radius: 3px 3px 0 0; }
.cms-wa-chart-day span { color: #818999; font-size: 9px; text-align: center; }
.cms-wa-health-list { display: grid; }
.cms-wa-health-list > div { display: flex; min-height: 48px; align-items: center; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--cms-border); }
.cms-wa-health-list span { color: #aeb5c2; font-size: 11px; }
.cms-wa-health-list strong { font-size: 14px; }
.cms-wa-process-button { width: 100%; min-height: 40px; margin-top: 16px; border-color: rgba(31,174,102,.35); color: #9de3bf; background: rgba(31,174,102,.1); }
.cms-wa-table { min-width: 950px; }
.cms-wa-status { display: inline-flex; min-height: 23px; align-items: center; padding: 3px 8px; border-radius: 999px; color: #bbc2cf; background: #454c5a; font-size: 9px; font-weight: 700; text-transform: capitalize; white-space: nowrap; }
.cms-wa-status.is-approved, .cms-wa-status.is-delivered, .cms-wa-status.is-read, .cms-wa-status.is-completed, .cms-wa-status.is-opted-in { color: #8ce0b6; background: rgba(31,174,102,.15); }
.cms-wa-status.is-pending, .cms-wa-status.is-scheduled, .cms-wa-status.is-processing, .cms-wa-status.is-sent, .cms-wa-status.is-received { color: #99c8f5; background: rgba(40,133,224,.16); }
.cms-wa-status.is-rejected, .cms-wa-status.is-failed, .cms-wa-status.is-cancelled, .cms-wa-status.is-opted-out { color: #ff9ea3; background: rgba(220,65,77,.16); }
.cms-wa-status.is-draft, .cms-wa-status.is-paused, .cms-wa-status.is-queued, .cms-wa-status.is-unknown { color: #e8bd7d; background: rgba(232,143,34,.15); }
.cms-table-action { min-height: 30px; padding: 0 10px; border: 1px solid var(--cms-border); color: #d7c5fa; background: #363c49; font-size: 10px; }
.cms-wa-tags { display: flex; max-width: 240px; flex-wrap: wrap; gap: 4px; }
.cms-wa-tags span { padding: 3px 6px; border-radius: 3px; color: #c9d0dd; background: #434a58; font-size: 9px; }
.cms-wa-heading-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.cms-wa-segmented { display: inline-flex; overflow: hidden; border: 1px solid var(--cms-border); border-radius: 5px; }
.cms-wa-segmented button { min-height: 34px; border: 0; border-right: 1px solid var(--cms-border); border-radius: 0; background: #303642; font-size: 9px; }
.cms-wa-segmented button:last-child { border-right: 0; }
.cms-wa-segmented button.is-active { color: #dff7ea; background: #17663f; }
.cms-wa-sync-state { display: block; margin-top: 5px; color: var(--cms-muted); font-size: 9px; font-weight: 500; }
.cms-wa-sync-state.is-error { color: #ff9ea3; }
.cms-wa-template-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cms-wa-template-card { display: grid; min-width: 0; min-height: 220px; grid-template-rows: auto 1fr auto; padding: 17px; border: 1px solid var(--cms-border); border-radius: 5px; background: #333946; }
.cms-wa-template-card header, .cms-wa-template-card footer { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.cms-wa-template-card header strong, .cms-wa-template-card header small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cms-wa-template-card header strong { max-width: 220px; font-size: 12px; }
.cms-wa-template-card header small { margin-top: 4px; color: var(--cms-muted); font-size: 9px; }
.cms-wa-template-card > p { margin: 18px 0; overflow: hidden; color: #cbd0da; font-size: 11px; line-height: 1.65; white-space: pre-line; }
.cms-wa-template-card > em { margin: 0 0 12px; color: #ff9ea3; font-size: 9px; font-style: normal; }
.cms-wa-template-card footer { align-items: center; padding-top: 12px; border-top: 1px solid var(--cms-border); color: var(--cms-muted); font-size: 9px; }
.cms-wa-template-card footer div { display: flex; gap: 6px; }
.cms-wa-template-card footer button { min-height: 30px; padding: 0 10px; font-size: 9px; }
.cms-wa-row-actions { display: flex; gap: 5px; }
.cms-wa-row-actions button { min-height: 29px; padding: 0 8px; font-size: 9px; }
.cms-wa-row-actions .is-launch { border-color: rgba(31,174,102,.35); color: #8ce0b6; background: rgba(31,174,102,.1); }
.cms-wa-schedule-list { display: grid; gap: 8px; }
.cms-wa-schedule-list article { display: grid; min-height: 72px; align-items: center; gap: 14px; padding: 10px 14px; border: 1px solid var(--cms-border); border-radius: 5px; background: #333946; grid-template-columns: 48px minmax(0, 1fr) auto 170px; }
.cms-wa-schedule-date { display: grid; width: 42px; height: 48px; place-items: center; border-radius: 5px; color: #fff; background: rgba(31,174,102,.13); }
.cms-wa-schedule-date strong { font-size: 16px; line-height: 1; }
.cms-wa-schedule-date small { color: #8ce0b6; font-size: 8px; text-transform: uppercase; }
.cms-wa-schedule-list article > div strong, .cms-wa-schedule-list article > div small { display: block; }
.cms-wa-schedule-list article > div strong { font-size: 12px; }
.cms-wa-schedule-list article > div small, .cms-wa-schedule-list time { margin-top: 4px; color: var(--cms-muted); font-size: 9px; }
.cms-wa-inbox-card { padding-bottom: 0; overflow: hidden; }
.cms-wa-inbox-toolbar { display: grid; align-items: end; gap: 12px; margin: 0 -22px; padding: 14px 22px; border-top: 1px solid var(--cms-border); border-bottom: 1px solid var(--cms-border); background: #2c323e; grid-template-columns: minmax(250px, 320px) minmax(260px, 1fr); }
.cms-wa-inbox-toolbar label { display: grid; gap: 6px; }
.cms-wa-inbox-toolbar label > span { color: #aeb5c2; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.cms-wa-inbox-toolbar select, .cms-wa-inbox-toolbar input { width: 100%; min-height: 40px; padding: 0 12px; border-radius: 5px; font-size: 11px; }
.cms-wa-inbox { display: grid; min-height: 620px; max-height: 720px; margin: 0 -22px; background: #303643; grid-template-columns: minmax(290px, 340px) minmax(0, 1fr); }
.cms-wa-conversation-list { min-width: 0; overflow-y: auto; border-right: 1px solid var(--cms-border); background: #2c323e; }
.cms-wa-list-summary { position: sticky; z-index: 2; top: 0; display: flex; min-height: 42px; align-items: center; justify-content: space-between; gap: 10px; padding: 0 14px; border-bottom: 1px solid var(--cms-border); background: #292f3a; }
.cms-wa-list-summary strong { font-size: 10px; }
.cms-wa-list-summary span { color: var(--cms-muted); font-size: 8px; text-transform: uppercase; }
.cms-wa-conversation-item { position: relative; display: grid; width: 100%; min-height: 112px; align-items: start; gap: 11px; padding: 14px 12px; border: 0; border-bottom: 1px solid var(--cms-border); border-radius: 0; color: #e9edf4; background: #2f3541; text-align: left; grid-template-columns: 38px minmax(0, 1fr) auto; }
.cms-wa-conversation-item:hover { background: #353c49; }
.cms-wa-conversation-item.is-active { box-shadow: inset 3px 0 #1fae66; background: #39414e; }
.cms-wa-conversation-item .cms-wa-avatar { width: 36px; height: 36px; }
.cms-wa-list-content { display: grid; min-width: 0; gap: 4px; }
.cms-wa-list-row { display: flex; min-width: 0; align-items: baseline; justify-content: space-between; gap: 8px; }
.cms-wa-list-row strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.cms-wa-list-row time { flex: 0 0 auto; color: var(--cms-muted); font-size: 8px; font-weight: 500; }
.cms-wa-list-content > small { overflow: hidden; color: #aeb5c2; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.cms-wa-message-preview { display: -webkit-box; overflow: hidden; color: #b8c0cd; font-size: 10px; font-weight: 500; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.cms-wa-message-preview.is-inbound { color: #eef2f7; }
.cms-wa-message-preview b { color: #8fc2f2; font-weight: 800; }
.cms-wa-list-content > em { overflow: hidden; color: #7fd7aa; font-size: 8px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.cms-wa-unread { display: grid; min-width: 22px; height: 22px; place-items: center; align-self: center; padding: 0 6px; border-radius: 11px; color: #102a1d; background: #5fd89a; font-size: 9px; font-weight: 800; }
.cms-wa-conversation-detail { display: grid; min-width: 0; min-height: 0; background: #343b47; }
.cms-wa-inbox-empty { display: grid; min-height: 180px; place-content: center; justify-items: center; gap: 7px; padding: 24px; color: var(--cms-muted); text-align: center; }
.cms-wa-inbox-empty strong { color: #dce1ea; font-size: 13px; }
.cms-wa-inbox-empty span { font-size: 10px; line-height: 1.5; }
.cms-wa-conversation { display: grid; min-width: 0; min-height: 0; overflow: hidden; background: #303643; grid-template-rows: auto minmax(0, 1fr) auto; }
.cms-wa-conversation > header { display: grid; min-height: 66px; align-items: center; gap: 10px; padding: 10px 13px; border-bottom: 1px solid var(--cms-border); background: #2c323e; grid-template-columns: 38px minmax(0, 1fr) auto; }
.cms-wa-avatar { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; color: #fff; background: #1fae66; font-size: 13px; font-weight: 700; }
.cms-wa-conversation header strong, .cms-wa-conversation header small { display: block; }
.cms-wa-conversation header strong { font-size: 13px; }
.cms-wa-conversation header small, .cms-wa-conversation header time { margin-top: 3px; color: var(--cms-muted); font-size: 9px; }
.cms-wa-conversation-meta { display: grid; justify-items: end; gap: 3px; }
.cms-wa-source { display: inline-flex; min-height: 20px; align-items: center; padding: 2px 7px; border-radius: 3px; color: #a9d1f8; background: rgba(40,133,224,.15); font-size: 8px; font-weight: 700; }
.cms-wa-source.is-website { color: #d7c5fa; background: rgba(139,92,246,.15); }
.cms-wa-thread { display: grid; min-height: 0; overflow-y: auto; align-content: start; gap: 12px; padding: 20px; background: #343b47; }
.cms-wa-thread p { display: grid; max-width: min(82%, 620px); gap: 5px; margin: 0; justify-items: start; }
.cms-wa-thread p.is-outbound { justify-self: end; justify-items: end; }
.cms-wa-thread p > span { padding: 10px 12px; border-radius: 5px; color: #f1f3f7; background: #48515f; font-size: 13px; line-height: 1.55; white-space: pre-wrap; }
.cms-wa-thread p.is-outbound > span { color: #dff7ea; background: #17663f; }
.cms-wa-thread p.is-system { max-width: 100%; justify-self: stretch; }
.cms-wa-thread p.is-system > span { color: #cbd0da; background: #3b414d; font-style: italic; }
.cms-wa-thread p small { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; color: #9fa7b5; font-size: 8px; }
.cms-wa-thread p small b { color: #8fc2f2; font-size: 8px; text-transform: uppercase; }
.cms-wa-thread p.is-outbound small b { color: #7fd7aa; }
.cms-wa-thread .cms-wa-status { min-height: 18px; padding: 2px 5px; font-size: 7px; }
.cms-wa-conversation > footer { padding: 9px 12px; border-top: 1px solid var(--cms-border); }
.cms-wa-conversation > footer button { width: 100%; min-height: 34px; border-color: rgba(31,174,102,.3); color: #9de3bf; background: rgba(31,174,102,.08); font-size: 10px; }
.cms-wa-conversation > footer button:disabled { border-color: var(--cms-border); color: #7e8795; background: #383e4b; }
.cms-wa-reply-panel { display: grid; gap: 10px; background: #2c323e; }
.cms-wa-conversation-controls { display: grid; align-items: end; gap: 10px; grid-template-columns: auto minmax(190px, 1fr); }
.cms-wa-conversation-controls > div, .cms-wa-conversation-controls > label { display: grid; gap: 5px; }
.cms-wa-control-label { color: #949cab; font-size: 8px; font-weight: 700; text-transform: uppercase; }
.cms-wa-mode-switch { display: inline-flex; overflow: hidden; border: 1px solid var(--cms-border); border-radius: 5px; }
.cms-wa-conversation > footer .cms-wa-mode-switch button { width: auto; min-width: 58px; min-height: 36px; padding: 0 10px; border: 0; border-right: 1px solid var(--cms-border); border-radius: 0; color: #aeb5c2; background: #353b48; }
.cms-wa-conversation > footer .cms-wa-mode-switch button:last-child { border-right: 0; }
.cms-wa-conversation > footer .cms-wa-mode-switch button.is-active { color: #dff7ea; background: #17663f; }
.cms-wa-conversation-controls select { min-height: 36px; padding: 0 9px; border-radius: 5px; font-size: 9px; }
.cms-wa-reply-composer { display: grid; align-items: stretch; gap: 8px; grid-template-columns: minmax(0, 1fr) 68px; }
.cms-wa-reply-composer textarea { min-height: 62px; max-height: 150px; padding: 9px 10px; border-radius: 5px; font-size: 10px; resize: vertical; }
.cms-wa-conversation > footer .cms-wa-reply-composer button { width: 68px; min-height: 62px; color: #e4f8ed; background: #17663f; font-weight: 700; }
.cms-wa-reply-state { color: #959dac; font-size: 8px; line-height: 1.45; }
.cms-wa-contact-actions { display: grid; gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cms-wa-contact-actions a { display: grid; min-height: 34px; place-items: center; border: 1px solid var(--cms-border); border-radius: 4px; color: #dbe1eb; background: #383e4b; font-size: 10px; text-decoration: none; }
.cms-wa-direction { display: inline-flex; gap: 5px; color: #aab2c0; font-size: 9px; text-transform: capitalize; }
.cms-wa-direction.is-outbound { color: #7fd7aa; }
.cms-wa-direction.is-inbound { color: #91baf0; }
.cms-wa-settings-grid { align-items: start; }
.cms-wa-readiness { display: grid; gap: 8px; }
.cms-wa-readiness > div { display: grid; min-height: 56px; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid var(--cms-border); border-radius: 5px; background: #333946; grid-template-columns: 30px minmax(0, 1fr); }
.cms-wa-readiness > div > span { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; font-size: 11px; font-weight: 800; }
.cms-wa-readiness .is-ready > span { color: #b8efd2; background: rgba(31,174,102,.18); }
.cms-wa-readiness .is-missing > span { color: #f7c77e; background: rgba(232,143,34,.18); }
.cms-wa-readiness strong, .cms-wa-readiness small { display: block; }
.cms-wa-readiness strong { font-size: 11px; }
.cms-wa-readiness small { margin-top: 3px; color: var(--cms-muted); font-size: 9px; }
.cms-wa-webhook-box { display: grid; gap: 6px; margin-top: 18px; padding: 13px; border: 1px solid var(--cms-border); border-radius: 5px; background: #292f3b; }
.cms-wa-webhook-box span { color: var(--cms-muted); font-size: 9px; text-transform: uppercase; }
.cms-wa-webhook-box code { overflow: hidden; color: #9de3bf; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.cms-wa-modal { width: min(760px, calc(100vw - 36px)); }
.cms-wa-template-modal { width: min(1080px, calc(100vw - 36px)); }
.cms-wa-template-editor-grid { display: grid; align-items: start; gap: 22px; grid-template-columns: minmax(0, 1.35fr) minmax(250px, .65fr); }
.cms-wa-button-editor { display: grid; gap: 8px; }
.cms-wa-button-editor > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.cms-wa-button-editor strong { font-size: 11px; }
.cms-wa-button-editor button { min-height: 32px; padding: 0 9px; font-size: 9px; }
[data-wa-template-buttons] { display: grid; gap: 6px; }
.cms-wa-button-row { display: grid; gap: 6px; grid-template-columns: 120px minmax(100px, .8fr) minmax(130px, 1fr) 34px; }
.cms-wa-button-row select, .cms-wa-button-row input { min-width: 0; min-height: 38px; font-size: 10px; }
.cms-wa-button-row > button { width: 34px; padding: 0; color: #ff9ea3; }
.cms-wa-phone-preview { position: sticky; top: 0; overflow: hidden; min-height: 500px; border: 8px solid #1d222c; border-radius: 22px; background: #dfe7e2; box-shadow: 0 12px 30px rgba(0,0,0,.22); }
.cms-wa-phone-top { min-height: 52px; padding: 18px 14px 0 48px; color: #fff; background: #17663f; font-size: 11px; font-weight: 700; }
.cms-wa-phone-body { min-height: 430px; padding: 28px 16px; background: #dbe2dd; }
.cms-wa-phone-body article { max-width: 92%; overflow: hidden; border-radius: 5px; color: #27322d; background: #fff; box-shadow: 0 2px 4px rgba(0,0,0,.1); }
.cms-wa-phone-body article > strong, .cms-wa-phone-body article > p, .cms-wa-phone-body article > small { display: block; padding: 0 11px; }
.cms-wa-phone-body article > strong { padding-top: 10px; font-size: 11px; }
.cms-wa-phone-body article > p { margin: 8px 0; font-size: 10px; line-height: 1.55; white-space: pre-line; }
.cms-wa-phone-body article > small { padding-bottom: 8px; color: #68746e; font-size: 8px; }
.cms-wa-phone-body article > div { display: grid; border-top: 1px solid #e7ebe9; }
.cms-wa-phone-body article > div span { padding: 8px; border-bottom: 1px solid #e7ebe9; color: #1681c4; font-size: 9px; text-align: center; }

@media (max-width: 1260px) {
  .cms-stat-grid { gap: 12px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .cms-stat-grid article { min-height: 122px; gap: 10px; padding: 20px 13px; grid-template-columns: 52px minmax(0, 1fr); }
  .cms-stat-icon { width: 48px; height: 48px; font-size: 22px; }
  .cms-stat-grid article span { font-size: clamp(22px, 2.4vw, 30px); }
  .cms-stat-grid article p { font-size: 12px; }
  .cms-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cms-profile { min-width: 175px; }
  .cms-whatsapp-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cms-wa-template-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1050px) {
  .cms-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cms-page-grid, .cms-ai-grid { grid-template-columns: 1fr; }
  .cms-legacy-toolbar { grid-template-columns: 1fr; }
  .cms-show-entries, .cms-table-search { justify-content: space-between; }
  .cms-table-search input { width: min(100%, 260px); }
  .cms-table-footer { align-items: flex-start; flex-direction: column; }
  .cms-visual-editor iframe, .cms-code-editor textarea { min-height: 390px; }
  .cms-title-area p { display: none; }
  .cms-applicant-hero { grid-template-columns: 70px minmax(0, 1fr); }
  .cms-applicant-avatar { width: 70px; height: 70px; }
  .cms-applicant-contact-actions { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cms-whatsapp-overview-grid, .cms-wa-template-editor-grid { grid-template-columns: 1fr; }
  .cms-wa-phone-preview { position: static; min-height: 390px; }
  .cms-wa-phone-body { min-height: 320px; }
  .cms-wa-inbox { grid-template-columns: minmax(260px, 310px) minmax(0, 1fr); }
}

@media (max-width: 780px) {
  .cms-assessment-answer-list { grid-template-columns: 1fr; }
  .cms-layout { display: block; }
  .cms-sidebar { position: fixed; left: 0; transform: translateX(-104%); width: min(310px, 88vw); transition: transform .25s; box-shadow: var(--cms-shadow); }
  body.cms-menu-open .cms-sidebar { transform: translateX(0); }
  body.cms-menu-open::after { position: fixed; z-index: 25; inset: 0; background: rgba(15, 18, 27, .64); content: ""; }
  .cms-main { padding: 0 16px 45px; }
  .cms-topbar { margin: 0 -16px; padding: 0 16px; }
  .cms-menu-button { display: inline-grid; }
  .cms-topbar-actions { gap: 8px; }
  .cms-topbar-actions > a { padding: 0 12px; }
  .cms-profile { min-width: 0; margin-right: -16px; padding: 0 14px; }
  .cms-profile span, .cms-profile i { display: none; }
  .cms-welcome, .cms-ai-intro { display: grid; }
  .cms-status-pill { justify-self: start; }
  .cms-card { padding: 17px; }
  .cms-card-heading { align-items: flex-start; }
  .cms-card-heading input[type="search"] { width: 44%; }
  .cms-applicant-modal-card { width: calc(100vw - 20px); max-height: calc(100vh - 20px); padding: 18px; }
  .cms-applicant-hero { align-items: start; gap: 14px; padding: 17px; grid-template-columns: 58px minmax(0, 1fr); }
  .cms-applicant-avatar { width: 58px; height: 58px; border-radius: 16px; font-size: 19px; }
  .cms-applicant-contact-actions { grid-template-columns: 1fr; }
  .cms-applicant-resume-panel { align-items: stretch; grid-template-columns: 1fr; }
  .cms-resume-download { min-width: 0; width: 100%; }
  .cms-assessment-sections { grid-template-columns: 1fr; }
  .cms-whatsapp-head { align-items: flex-start; flex-direction: column; }
  .cms-whatsapp-connection { min-width: 0; width: 100%; }
  .cms-wa-template-grid { grid-template-columns: 1fr; }
  .cms-wa-schedule-list article { grid-template-columns: 48px minmax(0, 1fr) auto; }
  .cms-wa-schedule-list time { grid-column: 2 / -1; }
  .cms-wa-inbox-toolbar { grid-template-columns: 1fr; }
  .cms-wa-inbox { max-height: none; grid-template-columns: 1fr; }
  .cms-wa-conversation-list { max-height: 330px; border-right: 0; border-bottom: 1px solid var(--cms-border); }
  .cms-wa-conversation-detail { min-height: 560px; }
}

@media (max-width: 560px) {
  .cms-auth-page { padding: 12px; }
  .cms-auth-card { padding: 25px 20px; border-radius: 16px; }
  .cms-stat-grid, .cms-category-grid, .cms-form-row { grid-template-columns: 1fr; }
  .cms-stat-grid article { min-height: 124px; }
  .cms-topbar-actions > a { min-height: 36px; padding: 0 10px; font-size: 11px; }
  .cms-title-area h1 { font-size: 19px; }
  .cms-card-heading { display: grid; }
  .cms-card-heading input[type="search"] { width: 100%; }
  .cms-filter-row { display: grid; }
  .cms-filter-row select, .cms-filter-row input { width: 100%; }
  .cms-import-box { grid-template-columns: 1fr; }
  .cms-editor-mode-bar { width: 100%; }
  .cms-editor-mode-bar button { flex: 1 1 0; padding: 0 10px; }
  .cms-editor-toolbar { gap: 5px; padding: 8px; }
  .cms-editor-toolbar button, .cms-editor-toolbar select { flex: 1 1 auto; }
  .cms-visual-editor iframe, .cms-code-editor textarea { min-height: 340px; }
  .cms-applicant-identity h3 { font-size: 21px; }
  .cms-applicant-kicker { align-items: flex-start; flex-direction: column; }
  .cms-assessment-field-grid { grid-template-columns: 1fr; }
  .cms-assessment-field:nth-last-child(-n+2) { border-bottom-color: rgba(255,255,255,.055); }
  .cms-assessment-field:last-child { border-bottom-color: transparent; }
  .cms-applicant-status-actions { align-items: stretch; flex-direction: column; }
  .cms-applicant-status-actions label { width: 100%; }
  .cms-whatsapp-stat-grid { grid-template-columns: 1fr; }
  .cms-whatsapp-stat-grid article { min-height: 112px; }
  .cms-whatsapp-tabs button { min-height: 44px; padding: 0 14px; }
  .cms-wa-chart { gap: 6px; padding-right: 0; padding-left: 0; }
  .cms-wa-chart-day { grid-template-rows: minmax(140px, 1fr) auto; }
  .cms-wa-button-row { grid-template-columns: 1fr 1fr 34px; }
  .cms-wa-button-row [data-wa-template-button-value] { grid-column: 1 / -1; grid-row: 2; }
  .cms-wa-button-row > button { grid-column: 3; grid-row: 1; }
  .cms-wa-inbox-toolbar, .cms-wa-inbox { margin-right: -17px; margin-left: -17px; }
  .cms-wa-inbox-toolbar { padding-right: 17px; padding-left: 17px; }
  .cms-wa-thread { padding: 14px; }
  .cms-wa-thread p { max-width: 92%; }
  .cms-wa-thread p > span { font-size: 12px; }
  .cms-wa-conversation-controls { grid-template-columns: 1fr; }
  .cms-wa-mode-switch { width: 100%; }
  .cms-wa-conversation > footer .cms-wa-mode-switch button { flex: 1 1 0; }
  .cms-wa-reply-composer { grid-template-columns: minmax(0, 1fr) 62px; }
  .cms-wa-conversation > footer .cms-wa-reply-composer button { width: 62px; }
  .cms-wa-modal { width: calc(100vw - 20px); max-height: calc(100vh - 20px); padding: 18px; }
}
