:root {
  --bg: #f5f7fb;
  --surface: #ffffff;
  --surface-2: #f8fafc;
  --border: #e5e9f0;
  --border-strong: #d6dce7;
  --text: #172033;
  --text-2: #59657a;
  --text-3: #8791a3;
  --accent: #4f46e5;
  --accent-2: #eef2ff;
  --success: #17845a;
  --success-bg: #eaf8f2;
  --warning: #a35d06;
  --warning-bg: #fff6df;
  --danger: #c33c54;
  --danger-bg: #fff0f3;
  --shadow: 0 8px 24px rgba(31, 41, 55, .06);
  --radius: 16px;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--text);
  background: var(--bg);
}
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--bg); }
body { min-width: 320px; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { cursor: pointer; }
.icon { flex: none; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: 232px 1fr; }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 24px 16px; background: #111827; color: #d1d5db; display: flex; flex-direction: column; }
.brand { display:flex; align-items:center; gap:12px; padding: 0 10px 24px; color:white; }
.brand__mark { width:36px; height:36px; border-radius:11px; display:grid; place-items:center; background:linear-gradient(145deg,#6366f1,#8b5cf6); font-weight:800; box-shadow:0 6px 18px rgba(99,102,241,.35); }
.brand strong { display:block; font-size:14px; letter-spacing:.01em; }
.brand small { color:#818cf8; font-size:11px; }
.nav { display:grid; gap:6px; }
.nav-item { display:flex; gap:11px; align-items:center; padding:10px 12px; border-radius:10px; color:#aeb7c7; font-size:14px; }
.nav-item:hover { background:#192133; color:#fff; }
.nav-item--active { background:#252f49; color:#fff; }
.sidebar__footer { margin-top:auto; padding:16px 10px 0; border-top:1px solid #263044; font-size:12px; color:#7f8ba0; line-height:1.5; }
.main { min-width:0; }
.topbar { height:64px; display:flex; align-items:center; justify-content:space-between; padding:0 32px; background:rgba(255,255,255,.88); backdrop-filter:blur(8px); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:20; }
.topbar__title { font-size:13px; color:var(--text-2); }
.health { display:flex; gap:7px; align-items:center; color:var(--text-2); font-size:12px; }
.health-dot { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 3px var(--success-bg); }
.content { max-width:1480px; margin:0 auto; padding:32px; }
.page-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:26px; }
.page-header__main { min-width:0; }
.page-header h1 { margin:4px 0 7px; font-size:28px; line-height:1.2; letter-spacing:-.025em; }
.page-header p { margin:0; color:var(--text-2); font-size:14px; max-width:780px; line-height:1.55; }
.page-header__actions { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.eyebrow { font-size:11px; font-weight:700; color:var(--accent); text-transform:uppercase; letter-spacing:.11em; }
.back-link { display:inline-flex; align-items:center; gap:4px; color:var(--text-2); font-size:13px; margin-bottom:12px; }
.btn { border:1px solid var(--border-strong); background:var(--surface); color:var(--text); border-radius:10px; padding:9px 13px; display:inline-flex; gap:7px; align-items:center; justify-content:center; font-size:13px; font-weight:600; min-height:38px; }
.btn:hover { border-color:#bfc7d6; background:#fbfcfe; }
.btn--primary { border-color:var(--accent); background:var(--accent); color:white; }
.btn--primary:hover { background:#4338ca; border-color:#4338ca; }
.btn--danger { border-color:#f4c9d1; color:var(--danger); background:#fffafb; }
.btn--ghost { background:transparent; border-color:transparent; color:var(--text-2); }
.btn:disabled { opacity:.48; cursor:not-allowed; }
.card { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); }
.card__head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 22px 14px; }
.card__head h2, .card__head h3 { margin:0; font-size:16px; }
.card__body { padding:0 22px 22px; }
.section-title { margin:30px 0 13px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.section-title h2 { margin:0; font-size:17px; }
.section-title p { margin:3px 0 0; color:var(--text-2); font-size:12px; }
.grid { display:grid; gap:16px; }
.grid--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.grid--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.grid--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.grid--5 { grid-template-columns:repeat(5,minmax(0,1fr)); }
.grid--6 { grid-template-columns:repeat(6,minmax(0,1fr)); }
.metric-card { background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:17px 18px; min-width:0; }
.metric-card__top { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--text-2); font-size:12px; }
.metric-card__value { margin-top:10px; font-size:25px; font-weight:720; letter-spacing:-.025em; font-variant-numeric:tabular-nums; }
.metric-card__hint { margin-top:6px; color:var(--text-3); font-size:11px; }
.metric-delta { font-weight:700; font-size:11px; }
.metric-delta--positive { color:var(--success); }
.metric-delta--negative { color:var(--danger); }
.metric-delta--neutral { color:var(--text-3); }
.badge { display:inline-flex; align-items:center; gap:5px; padding:4px 8px; border-radius:999px; font-size:11px; font-weight:650; white-space:nowrap; }
.badge--success { color:var(--success); background:var(--success-bg); }
.badge--warning { color:var(--warning); background:var(--warning-bg); }
.badge--danger { color:var(--danger); background:var(--danger-bg); }
.badge--muted, .badge--neutral { color:var(--text-2); background:#f1f4f8; }
.toolbar { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:16px; }
.search { position:relative; flex:1; min-width:220px; max-width:420px; }
.search svg { position:absolute; left:11px; top:50%; transform:translateY(-50%); color:var(--text-3); }
.search input { width:100%; padding:10px 12px 10px 36px; border:1px solid var(--border-strong); border-radius:10px; background:white; outline:none; }
.search input:focus, .field input:focus, .field select:focus, .select:focus { border-color:#9b9ff2; box-shadow:0 0 0 3px #eef2ff; }
.select { border:1px solid var(--border-strong); border-radius:10px; padding:9px 32px 9px 11px; background:white; color:var(--text); outline:none; }
.table-wrap { overflow:auto; border:1px solid var(--border); border-radius:14px; background:white; }
table { width:100%; border-collapse:collapse; min-width:680px; }
th { text-align:left; padding:11px 14px; font-size:10px; text-transform:uppercase; letter-spacing:.07em; color:var(--text-3); background:var(--surface-2); border-bottom:1px solid var(--border); }
td { padding:13px 14px; border-bottom:1px solid #edf0f4; font-size:13px; vertical-align:middle; }
tr:last-child td { border-bottom:0; }
tbody tr:hover { background:#fbfcff; }
.cell-main { display:flex; align-items:center; gap:10px; min-width:190px; }
.cell-main strong { display:block; font-size:13px; }
.cell-main small { display:block; color:var(--text-3); margin-top:2px; }
.avatar { flex:none; display:grid; place-items:center; border-radius:10px; font-weight:750; background:#eef2ff; color:#4f46e5; }
.avatar--sm { width:30px; height:30px; font-size:10px; }
.avatar--md { width:38px; height:38px; font-size:12px; }
.avatar--lg { width:52px; height:52px; font-size:16px; border-radius:14px; }
.campaign-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.campaign-card { padding:18px; transition:.16s ease; }
.campaign-card:hover { transform:translateY(-1px); border-color:#cbd2df; box-shadow:0 12px 30px rgba(31,41,55,.08); }
.campaign-card__top { display:flex; align-items:start; justify-content:space-between; gap:12px; }
.campaign-card h3 { margin:8px 0 5px; font-size:16px; }
.campaign-card p { margin:0; color:var(--text-3); font-size:12px; }
.campaign-card__meta { display:flex; gap:12px; margin-top:18px; padding-top:14px; border-top:1px solid var(--border); color:var(--text-2); font-size:11px; }
.progress-layout { display:grid; grid-template-columns:210px 1fr; gap:24px; align-items:center; }
.progress-ring { --progress:0; width:146px; height:146px; border-radius:50%; background:conic-gradient(var(--accent) calc(var(--progress)*1%), #edf0f6 0); display:grid; place-items:center; margin:auto; }
.progress-ring::before { content:""; position:absolute; }
.progress-ring__inner { width:114px; height:114px; background:white; border-radius:50%; display:grid; place-content:center; text-align:center; box-shadow:inset 0 0 0 1px var(--border); }
.progress-ring__inner strong { font-size:24px; }
.progress-ring__inner span { color:var(--text-3); font-size:10px; margin-top:3px; }
.progress-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.progress-stat { padding:12px; background:var(--surface-2); border-radius:11px; }
.progress-stat strong { display:block; font-size:20px; }
.progress-stat span { color:var(--text-3); font-size:11px; }
.stacked-bar { height:12px; border-radius:999px; overflow:hidden; display:flex; background:#edf0f4; }
.stacked-bar__segment--success { background:#39a477; }
.stacked-bar__segment--warning { background:#e0a034; }
.stacked-bar__segment--danger { background:#d85669; }
.stacked-bar__segment--neutral { background:#a8b0bf; }
.priority-legend { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:16px; }
.priority-legend>div { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:7px; font-size:11px; }
.priority-legend strong { font-size:13px; }
.priority-legend small { grid-column:2/4; color:var(--text-3); padding-left:1px; }
.legend-dot { width:8px; height:8px; border-radius:50%; }
.legend-dot--success { background:#39a477; }.legend-dot--warning { background:#e0a034; }.legend-dot--danger { background:#d85669; }.legend-dot--neutral { background:#a8b0bf; }
.profile-banner { display:flex; align-items:center; gap:16px; padding:20px; background:linear-gradient(135deg,#f5f7ff,#fff); border:1px solid #e1e5ff; border-radius:16px; }
.profile-banner__text { flex:1; min-width:0; }
.profile-banner h2 { margin:0 0 5px; font-size:18px; }
.profile-banner p { margin:0; color:var(--text-2); font-size:12px; }
.comparison-strip { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; }
.comparison-card { padding:13px; background:var(--surface-2); border-radius:11px; }
.comparison-card span { display:block; color:var(--text-3); font-size:10px; }
.comparison-card strong { display:block; font-size:16px; margin-top:5px; }
.comparison-card small { display:block; margin-top:3px; font-size:10px; }
.empty-state { text-align:center; padding:50px 24px; border:1px dashed var(--border-strong); border-radius:16px; background:rgba(255,255,255,.6); }
.empty-state__icon { width:52px; height:52px; border-radius:15px; display:grid; place-items:center; background:var(--accent-2); color:var(--accent); margin:0 auto 13px; }
.empty-state h3 { margin:0 0 7px; font-size:16px; }
.empty-state p { max-width:520px; margin:0 auto 18px; color:var(--text-2); font-size:13px; line-height:1.5; }
.empty-inline { color:var(--text-3); font-size:12px; padding:14px 0; }
.error-state { display:flex; gap:12px; align-items:flex-start; padding:15px; border:1px solid #f0cbd2; background:#fff7f8; color:#9d3044; border-radius:12px; }
.error-state strong { font-size:13px; }.error-state p { margin:3px 0 0; font-size:12px; }
.skeleton-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.skeleton-card { height:120px; border:1px solid var(--border); background:white; border-radius:14px; padding:18px; overflow:hidden; }
.skeleton-card span { display:block; height:10px; width:55%; margin-bottom:13px; background:#edf0f4; border-radius:6px; animation:pulse 1.3s infinite; }.skeleton-card span:nth-child(2){width:35%;height:24px}.skeleton-card span:nth-child(3){width:70%}
@keyframes pulse { 50% { opacity:.45; } }
.dialog { border:0; border-radius:16px; padding:0; width:min(520px,calc(100vw - 32px)); box-shadow:0 28px 80px rgba(15,23,42,.25); }
.dialog::backdrop { background:rgba(15,23,42,.44); backdrop-filter:blur(2px); }
.dialog__head { display:flex; align-items:center; justify-content:space-between; padding:19px 20px; border-bottom:1px solid var(--border); }
.dialog__head h3 { margin:0; font-size:16px; }
.dialog__body { padding:20px; }
.dialog__foot { display:flex; justify-content:flex-end; gap:9px; padding:14px 20px 20px; }
.field { display:grid; gap:6px; margin-bottom:14px; }
.field label { font-size:11px; font-weight:650; color:var(--text-2); }
.field input, .field select { width:100%; border:1px solid var(--border-strong); border-radius:10px; padding:10px 11px; outline:none; background:white; color:var(--text); }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.check-list { border:1px solid var(--border); border-radius:12px; max-height:250px; overflow:auto; }
.check-row { display:flex; align-items:center; gap:10px; padding:10px 12px; border-bottom:1px solid var(--border); font-size:12px; }.check-row:last-child{border-bottom:0}.check-row input{accent-color:var(--accent)}
.toast-root { position:fixed; right:20px; bottom:20px; z-index:100; display:grid; gap:8px; width:min(360px,calc(100vw - 40px)); }
.toast { padding:12px 14px; border-radius:11px; background:#111827; color:white; box-shadow:0 16px 50px rgba(0,0,0,.25); font-size:12px; animation:toast-in .2s ease; }
.toast--error { background:#991f36; }
@keyframes toast-in { from { transform:translateY(8px); opacity:0; } }
.muted { color:var(--text-3); }.nowrap{white-space:nowrap}.numeric{font-variant-numeric:tabular-nums}.link{color:var(--accent);font-weight:600}.text-danger{color:var(--danger)}.text-success{color:var(--success)}
.divider { height:1px; background:var(--border); margin:18px 0; }
.detail-list { display:grid; grid-template-columns:repeat(2,1fr); gap:10px 22px; }
.detail-list div { padding-bottom:10px; border-bottom:1px solid #edf0f4; }
.detail-list span { display:block; color:var(--text-3); font-size:10px; text-transform:uppercase; letter-spacing:.05em; }.detail-list strong{display:block;margin-top:4px;font-size:13px}
.scale-change--improvement td:first-child { border-left:3px solid var(--success); }.scale-change--deterioration td:first-child{border-left:3px solid var(--danger)}
@media (max-width: 1100px) { .grid--5,.grid--6{grid-template-columns:repeat(3,1fr)}.campaign-grid{grid-template-columns:repeat(2,1fr)}.comparison-strip{grid-template-columns:repeat(3,1fr)} }
@media (max-width: 820px) { .app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;align-items:center;padding:10px 14px}.brand{padding:0 10px 0 0}.brand div:last-child,.sidebar__footer{display:none}.nav{display:flex;overflow:auto}.nav-item span{display:none}.topbar{padding:0 18px}.content{padding:22px 18px}.page-header{flex-direction:column}.page-header__actions{justify-content:flex-start}.grid--4,.grid--5,.grid--6{grid-template-columns:repeat(2,1fr)}.grid--2,.grid--3{grid-template-columns:1fr}.progress-layout{grid-template-columns:1fr}.campaign-grid{grid-template-columns:1fr}.priority-legend{grid-template-columns:repeat(2,1fr)} }
@media (max-width: 520px) { .grid--4,.grid--5,.grid--6{grid-template-columns:1fr 1fr}.field-row{grid-template-columns:1fr}.comparison-strip{grid-template-columns:1fr 1fr}.content{padding:18px 12px}.page-header h1{font-size:24px}.topbar__title{display:none} }

/* Questionnaire */
.btn--sm { min-height:32px; padding:6px 10px; font-size:11px; border-radius:8px; }
.questionnaire-progress { position:sticky; top:76px; z-index:15; margin-bottom:18px; padding:17px 20px 0; box-shadow:0 10px 30px rgba(31,41,55,.08); }
.questionnaire-progress__head { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.questionnaire-progress__head>div { display:grid; gap:3px; }
.questionnaire-progress__head strong { font-size:13px; }
.questionnaire-progress__head>strong { font-size:18px; font-variant-numeric:tabular-nums; }
#save-state { font-size:10px; color:var(--text-3); }
#save-state[data-tone="dirty"] { color:var(--warning); }
#save-state[data-tone="saving"] { color:var(--accent); }
#save-state[data-tone="error"] { color:var(--danger); }
.questionnaire-progress__bar { height:6px; margin-top:13px; border-radius:999px; overflow:hidden; background:#edf0f4; }
.questionnaire-progress__bar span { display:block; height:100%; width:0; border-radius:inherit; background:linear-gradient(90deg,#6366f1,#8b5cf6); transition:width .2s ease; }
.questionnaire-tabs { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:12px; }
.questionnaire-tab { border:0; border-top:2px solid transparent; background:transparent; color:var(--text-2); padding:11px 10px 13px; text-align:left; display:grid; gap:2px; }
.questionnaire-tab strong { font-size:11px; }
.questionnaire-tab span { font-size:10px; color:var(--text-3); }
.questionnaire-tab:hover { background:#fafbff; }
.questionnaire-tab.is-active { color:var(--accent); border-top-color:var(--accent); background:#f8f8ff; }
.questionnaire-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:18px; align-items:start; }
.questionnaire-index { position:sticky; top:222px; box-shadow:none; }
.questionnaire-index .card__head { padding-bottom:10px; }
.questionnaire-index__body { max-height:calc(100vh - 310px); overflow:auto; padding:0 10px 12px; }
.scale-index-item { width:100%; border:0; background:transparent; border-radius:9px; padding:9px 10px; display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--text-2); text-align:left; }
.scale-index-item:hover { background:var(--surface-2); }
.scale-index-item>span { min-width:0; display:grid; gap:2px; }
.scale-index-item strong { font-size:11px; }
.scale-index-item small { display:block; color:var(--text-3); overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:9px; }
.scale-index-item b { flex:none; font-size:10px; font-variant-numeric:tabular-nums; color:var(--text-3); }
.scale-index-item.is-done b { color:var(--success); }
.questionnaire-module-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin:4px 0 14px; }
.questionnaire-module-head h2 { margin:5px 0 0; font-size:19px; }
.questionnaire-scale { scroll-margin-top:230px; margin-bottom:16px; box-shadow:none; }
.scale-title { display:flex; align-items:center; gap:8px; }
.scale-title h2 { font-size:15px; }
.scale-code { display:grid; place-items:center; min-width:38px; height:28px; border-radius:8px; background:var(--accent-2); color:var(--accent); font-size:10px; font-weight:800; letter-spacing:.04em; }
.question-list { border-top:1px solid var(--border); }
.question-card { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:22px; align-items:center; padding:17px 22px; border-bottom:1px solid #edf0f4; transition:background .12s,border-color .12s; }
.question-card:last-child { border-bottom:0; }
.question-card:hover { background:#fbfcff; }
.question-card--missing { background:var(--danger-bg); outline:2px solid #f2bec8; outline-offset:-2px; }
.question-card__copy { display:grid; grid-template-columns:42px minmax(0,1fr); gap:4px 10px; align-items:start; }
.question-card__copy>span { grid-row:1; grid-column:1; color:var(--text-3); font-size:10px; font-weight:700; padding-top:3px; }
.question-card__copy>p { grid-row:1; grid-column:2; margin:0; font-size:13px; line-height:1.48; }
.likert { display:grid; grid-template-columns:repeat(5,1fr); gap:7px; }
.likert-option { position:relative; }
.likert-option input { position:absolute; opacity:0; pointer-events:none; }
.likert-option span { height:39px; border:1px solid var(--border-strong); border-radius:9px; background:white; display:grid; place-items:center; font-size:12px; font-weight:700; color:var(--text-2); transition:.12s ease; cursor:pointer; }
.likert-option span:hover { border-color:#9b9ff2; background:#f8f8ff; color:var(--accent); }
.likert-option input:checked + span { border-color:var(--accent); background:var(--accent); color:white; box-shadow:0 4px 12px rgba(79,70,229,.22); }
.likert-option input:focus-visible + span { box-shadow:0 0 0 3px #dfe3ff; }
.likert-option input:disabled + span { cursor:default; opacity:.7; }
@media (max-width: 1050px) {
  .questionnaire-layout { grid-template-columns:1fr; }
  .questionnaire-index { position:static; }
  .questionnaire-index__body { max-height:none; display:flex; overflow:auto; padding-bottom:12px; }
  .scale-index-item { min-width:145px; width:auto; }
  .question-card { grid-template-columns:1fr; gap:12px; }
  .likert { max-width:360px; }
}
@media (max-width: 700px) {
  .questionnaire-progress { top:64px; padding-left:12px; padding-right:12px; }
  .questionnaire-tabs { grid-template-columns:repeat(2,1fr); }
  .questionnaire-module-head { align-items:flex-start; flex-direction:column; }
  .question-card { padding:15px 14px; }
  .question-card__copy { grid-template-columns:34px 1fr; }
  .likert { max-width:none; }
}

/* Authentication / respondent access */
.auth-screen { min-height:100vh; display:grid; place-items:center; padding:28px; background:linear-gradient(145deg,#f7f8fc 0%,#eef0fb 100%); }
.auth-card { width:min(520px,100%); padding:30px; }
.auth-card h1 { margin:7px 0 10px; font-size:25px; }
.auth-card form { display:grid; gap:15px; margin-top:22px; }
.respondent-main { min-height:100vh; background:var(--surface-2); }
.respondent-main .content { max-width:1180px; margin:0 auto; padding-top:34px; }
@media (max-width:700px) { .auth-screen{padding:14px}.auth-card{padding:22px}.respondent-main .content{padding:18px 12px} }

/* Survey administration */
.survey-version-meta { margin-bottom:16px; }
.survey-editor-meta { display:grid; grid-template-columns:1fr 1fr auto; gap:12px; align-items:end; padding:0 20px 20px; }
.question-editor { border-top:1px solid var(--border); }
.question-editor-row { display:grid; grid-template-columns:120px minmax(260px,1fr) 100px 130px 36px; gap:9px; align-items:center; padding:10px 16px; border-bottom:1px solid #edf0f4; }
.question-editor-row input[type="text"], .question-editor-row>input { width:100%; border:1px solid var(--border-strong); border-radius:8px; padding:8px 9px; background:white; }
.question-editor-row input:disabled { border-color:transparent; background:transparent; color:var(--text-2); }
.question-editor-check { display:flex; gap:7px; align-items:center; font-size:11px; color:var(--text-2); }
.question-editor__foot { display:flex; justify-content:flex-end; padding:14px 16px; }
@media (max-width:900px){.survey-editor-meta{grid-template-columns:1fr}.question-editor-row{grid-template-columns:90px 1fr}.question-editor-row>[data-q="module"],.question-editor-check,.question-editor-row>[data-remove-question]{grid-column:auto}}

/* v0.13 campaign operations */
.campaign-ops-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; flex-wrap:wrap; }
.campaign-tabs { display:flex; gap:6px; flex-wrap:wrap; }
.campaign-tab { border:1px solid var(--border); background:var(--surface); color:var(--text-2); border-radius:999px; padding:8px 11px; cursor:pointer; font:inherit; font-size:12px; display:inline-flex; align-items:center; gap:7px; }
.campaign-tab span { min-width:20px; text-align:center; padding:1px 6px; border-radius:999px; background:var(--surface-2); font-size:10px; }
.campaign-tab--active { border-color:#c7c9ff; background:#f3f3ff; color:var(--accent); }
.search-box { display:flex; align-items:center; gap:8px; border:1px solid var(--border); background:var(--surface); border-radius:10px; padding:0 10px; min-width:240px; }
.search-box input { border:0; outline:0; background:transparent; width:100%; padding:9px 0; font:inherit; color:var(--text); }
.campaign-card__progress { margin-top:15px; display:grid; gap:7px; }
.campaign-card__progress>div:first-child { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.campaign-card__progress strong { font-size:16px; }
.campaign-card__progress span { font-size:11px; color:var(--text-3); }
.mini-progress { height:6px; overflow:hidden; border-radius:999px; background:#edf0f6; }
.mini-progress span { display:block; height:100%; background:var(--accent); border-radius:inherit; }
.campaign-card__stats { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:11px; }
.campaign-card__stats span { display:grid; gap:2px; padding:8px; background:var(--surface-2); border-radius:9px; font-size:10px; color:var(--text-3); }
.campaign-card__stats strong { color:var(--text); font-size:14px; }
.campaign-progress-strip { position:relative; display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:1px; margin-bottom:18px; border:1px solid var(--border); border-radius:14px; background:var(--border); overflow:hidden; }
.campaign-progress-strip>div:not(.campaign-progress-strip__bar) { background:var(--surface); padding:15px 17px; display:grid; gap:3px; }
.campaign-progress-strip span { color:var(--text-3); font-size:11px; }
.campaign-progress-strip strong { font-size:20px; }
.campaign-progress-strip small { color:var(--text-2); }
.campaign-progress-strip__bar { position:absolute; left:0; right:0; bottom:0; height:4px; background:#edf0f6; }
.campaign-progress-strip__bar span { display:block; height:100%; background:var(--accent); }
.campaign-section-head { display:flex; align-items:end; justify-content:space-between; gap:16px; margin:25px 0 12px; }
.campaign-section-head h2 { margin:0; font-size:18px; }
.campaign-section-head p { margin:4px 0 0; color:var(--text-3); font-size:12px; }
.toolbar--compact { margin:0; }
.campaign-audience { margin-bottom:18px; }
.audience-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.field-label { display:block; margin-bottom:7px; font-size:11px; color:var(--text-3); }
.participant-toolbar { display:flex; gap:10px; margin-bottom:12px; flex-wrap:wrap; }
.check-row { display:flex; align-items:flex-start; gap:9px; margin:10px 0; font-size:13px; }
.invite-report { margin-top:16px; border:1px solid var(--border); background:var(--surface-2); border-radius:10px; padding:12px; display:grid; grid-template-columns:repeat(2,1fr); gap:6px 12px; font-size:12px; }
.invite-report strong { grid-column:1/-1; }
@media (max-width:820px) { .campaign-progress-strip{grid-template-columns:repeat(2,1fr)} .campaign-progress-strip__bar{display:none}.audience-grid{grid-template-columns:1fr}.campaign-section-head{align-items:flex-start;flex-direction:column}.search-box{min-width:100%} }

/* v0.13 alpha2 — manager workspace */
.workspace-team-picker { display:flex; align-items:center; gap:10px; margin:0 0 18px; }
.workspace-team-picker label { color:var(--text-2); font-size:12px; font-weight:650; }
.workspace-team-picker .select { min-width:240px; }
.workspace-content { min-height:220px; }
.workspace-hero { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:28px; padding:22px 24px; }
.workspace-hero__main { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:12px; }
.workspace-hero__title { width:100%; display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.workspace-hero__title h2 { margin:2px 0 4px; font-size:22px; }
.workspace-hero__title p { margin:0; color:var(--text-2); font-size:12px; }
.workspace-hero__progress { display:flex; align-items:center; gap:16px; padding-left:20px; border-left:1px solid var(--border); }
.workspace-progress-copy { display:flex; flex-direction:column; gap:4px; min-width:90px; }
.workspace-progress-copy span { color:var(--text-2); font-size:12px; }
.workspace-panels { margin-top:16px; align-items:stretch; }
.signal-list { display:flex; flex-direction:column; gap:2px; }
.signal-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 0; border-bottom:1px solid var(--border); }
.signal-row:last-child { border-bottom:0; }
.signal-row > div:first-child { display:flex; flex-direction:column; min-width:0; }
.signal-row > div:first-child span { color:var(--text-2); font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:250px; }
.signal-row__value { display:flex; flex-direction:column; align-items:flex-end; gap:4px; text-align:right; }
.signal-row__value small { color:var(--text-3); font-size:10px; }
.workspace-reasons { display:flex; flex-direction:column; gap:2px; margin-top:5px; color:var(--text-2); font-size:10px; }
td > small.muted { display:block; margin-top:3px; }
@media (max-width: 820px) { .workspace-hero{grid-template-columns:1fr}.workspace-hero__progress{padding-left:0;border-left:0;border-top:1px solid var(--border);padding-top:16px}.workspace-hero__title{flex-direction:column}.workspace-team-picker{align-items:stretch;flex-direction:column}.workspace-team-picker .select{min-width:0;width:100%} }

/* Employee card + 1-1 */
.focus-card { padding:18px; box-shadow:none; min-height:118px; }
.focus-card .eyebrow { margin-bottom:10px; }
.focus-card strong { display:block; font-size:15px; line-height:1.45; }
.focus-card--resource { border-left:3px solid var(--success); }
.focus-card--risk { border-left:3px solid var(--danger); }
.employee-timeline { display:flex; gap:0; overflow:auto; padding:6px 2px 14px; }
.timeline-point { min-width:210px; position:relative; padding-top:22px; flex:1; }
.timeline-point::before { content:""; position:absolute; left:10px; right:-10px; top:8px; height:2px; background:#dfe4ec; }
.timeline-point:last-child::before { right:calc(100% - 10px); }
.timeline-point__marker { position:absolute; top:2px; left:4px; width:14px; height:14px; border-radius:50%; background:white; border:3px solid #aab3c3; z-index:1; }
.timeline-point--current .timeline-point__marker { border-color:var(--accent); box-shadow:0 0 0 4px var(--accent-2); }
.timeline-point__body { display:grid; gap:5px; padding-right:18px; }
.timeline-point__body>span { color:var(--text-3); font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.timeline-point__body>strong { font-size:13px; line-height:1.35; }
.timeline-point__body>small { color:var(--text-3); font-size:10px; }
.timeline-point__body .badge { width:max-content; margin-top:2px; }
.dynamics-stack, .one-to-one-list { display:grid; gap:14px; }
.dynamics-card { box-shadow:none; }
.signal-list { margin-top:14px; border-top:1px solid var(--border); }
.signal-row { display:grid; grid-template-columns:minmax(180px,1fr) auto 180px; gap:16px; align-items:center; padding:11px 0; border-bottom:1px solid #edf0f4; border-left:3px solid transparent; padding-left:10px; }
.signal-row>div:first-child { display:grid; gap:2px; }
.signal-row>div:first-child span { color:var(--text-3); font-size:10px; }
.signal-row small { color:var(--text-2); font-size:10px; text-align:right; }
.signal-row b { margin-left:6px; }
.signal-row--danger { border-left-color:var(--danger); }
.signal-row--success { border-left-color:var(--success); }
.one-to-one-card { box-shadow:none; }
.one-to-one-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.note-block { background:var(--surface-2); border-radius:11px; padding:12px; min-height:82px; }
.note-block>span { display:block; color:var(--text-3); text-transform:uppercase; letter-spacing:.06em; font-size:9px; margin-bottom:7px; }
.note-block p { margin:0; font-size:12px; line-height:1.55; white-space:pre-wrap; }
.one-to-one-actions { margin-top:16px; border-top:1px solid var(--border); padding-top:14px; }
.one-to-one-actions__head { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; font-size:12px; }
.one-to-one-actions__head span { color:var(--text-3); font-size:10px; }
.action-list { display:grid; gap:4px; }
.action-row { display:grid; grid-template-columns:28px 1fr auto; gap:8px; align-items:center; padding:7px 8px; border-radius:9px; }
.action-row:hover { background:var(--surface-2); }
.action-row>div { display:grid; gap:2px; }
.action-row strong { font-size:12px; font-weight:600; }
.action-row small { color:var(--text-3); font-size:9px; }
.action-row--done strong { text-decoration:line-through; color:var(--text-3); }
.action-check { width:24px; height:24px; border-radius:50%; border:1px solid var(--border-strong); background:white; color:var(--success); font-weight:800; }
.inline-action-form { display:grid; grid-template-columns:minmax(0,1fr) 145px auto; gap:8px; margin-top:10px; }
.inline-action-form input { border:1px solid var(--border-strong); border-radius:9px; padding:8px 10px; outline:none; }
.plan-editor { margin-top:14px; border-top:1px solid var(--border); padding-top:12px; }
.plan-editor summary { cursor:pointer; color:var(--accent); font-size:11px; font-weight:650; }
.plan-edit-form { padding-top:14px; }
.field textarea { width:100%; border:1px solid var(--border-strong); border-radius:10px; padding:10px 11px; outline:none; background:white; color:var(--text); resize:vertical; font:inherit; }
.field textarea:focus { border-color:#9b9ff2; box-shadow:0 0 0 3px #eef2ff; }
@media (max-width:820px){ .one-to-one-notes{grid-template-columns:1fr}.signal-row{grid-template-columns:1fr}.signal-row small{text-align:left}.inline-action-form{grid-template-columns:1fr}.employee-timeline{padding-bottom:18px}.timeline-point{min-width:190px} }

.admin-tabs{gap:8px;flex-wrap:wrap;margin-bottom:18px}.admin-resolved{margin-top:16px}.admin-resolved summary{cursor:pointer;font-weight:700}.block{display:block}.bulk-bar{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:12px 16px}.bulk-bar select{min-width:220px}.callout{padding:14px 16px;border:1px solid var(--border);border-radius:12px;margin-bottom:14px}.callout code{margin-top:8px;overflow-wrap:anywhere}.actions{display:flex;gap:8px;flex-wrap:wrap}

/* v0.13 alpha5 — respondent UX */
.respondent-intro { max-width:760px; margin:8vh auto 0; padding:34px; box-shadow:0 18px 50px rgba(31,41,55,.10); }
.respondent-intro__eyebrow { color:var(--accent); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.respondent-intro h1 { margin:8px 0 10px; font-size:30px; }
.respondent-intro>p { margin:0; color:var(--text-2); font-size:14px; line-height:1.6; max-width:620px; }
.respondent-intro__facts { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:26px 0 20px; }
.respondent-intro__facts>div { display:grid; gap:3px; padding:16px; border:1px solid var(--border); border-radius:12px; background:var(--surface-2); }
.respondent-intro__facts strong { font-size:20px; }
.respondent-intro__facts span { color:var(--text-3); font-size:11px; }
.respondent-intro__notes { display:grid; gap:6px; padding:16px 18px; border-radius:12px; background:#f8f8ff; color:var(--text-2); font-size:12px; }
.respondent-intro__notes p { margin:0; }
.respondent-intro__start { margin-top:22px; min-width:180px; }
.resume-banner { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:14px; padding:12px 16px; border:1px solid #d9dcff; border-radius:12px; background:#f7f7ff; color:var(--text-2); font-size:11px; }
.resume-banner>div { display:grid; gap:2px; }
.resume-banner strong { color:var(--text); font-size:12px; }
.missing-dialog { width:min(680px,calc(100vw - 28px)); }
.missing-dialog .dialog__head { align-items:flex-start; }
.missing-dialog .dialog__head p { margin:4px 0 0; }
.missing-list { display:grid; gap:18px; }
.missing-list section { display:grid; gap:6px; }
.missing-list section>strong { color:var(--text-2); font-size:11px; text-transform:uppercase; letter-spacing:.04em; }
.missing-list button { width:100%; display:grid; grid-template-columns:54px 1fr; gap:8px; border:1px solid var(--border); border-radius:9px; background:white; padding:10px 12px; text-align:left; color:var(--text); cursor:pointer; font:inherit; font-size:12px; }
.missing-list button:hover { border-color:#b9bdf5; background:#fafaff; }
.missing-list button span { color:var(--accent); font-size:10px; font-weight:800; }
@media (max-width:700px) {
  .respondent-main .content { padding:12px 10px 90px; }
  .respondent-intro { margin:3vh auto 0; padding:22px 18px; }
  .respondent-intro h1 { font-size:25px; }
  .respondent-intro__facts { grid-template-columns:1fr; }
  .respondent-intro__start { width:100%; min-height:46px; }
  .resume-banner { align-items:flex-start; flex-direction:column; gap:5px; }
  .questionnaire-progress { position:sticky; top:0; border-radius:0 0 12px 12px; margin-left:-10px; margin-right:-10px; }
  .questionnaire-tabs { display:flex; overflow-x:auto; scrollbar-width:none; margin-left:-12px; margin-right:-12px; padding:0 12px; }
  .questionnaire-tabs::-webkit-scrollbar { display:none; }
  .questionnaire-tab { min-width:138px; flex:0 0 auto; }
  .questionnaire-index { display:none; }
  .question-card__copy>p { font-size:14px; }
  .likert-option span { height:45px; font-size:14px; }
}

/* v0.13 alpha5 — survey builder polish */
.dialog--wide { width:min(920px,calc(100vw - 32px)); }
.survey-builder-overview { margin:16px 0; align-items:stretch; }
.publish-checklist,.version-diff { min-height:220px; }
.checklist-list { display:grid; gap:2px; padding:0 18px 14px; }
.checklist-item { display:grid; grid-template-columns:24px 1fr; gap:8px; align-items:start; padding:8px 0; border-bottom:1px solid var(--border); }
.checklist-item:last-child { border-bottom:0; }
.checklist-item>span { width:20px; height:20px; display:grid; place-items:center; border-radius:999px; font-size:10px; font-weight:800; }
.checklist-item.is-ok>span { background:var(--success-bg); color:var(--success); }
.checklist-item.is-error>span { background:var(--danger-bg); color:var(--danger); }
.checklist-item strong { display:block; font-size:11px; }
.checklist-item small { display:block; margin-top:2px; color:var(--text-3); font-size:9px; }
.checklist-note { margin:0; padding:0 18px 16px; }
.diff-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; padding:0 18px 14px; }
.diff-stats div { display:grid; gap:2px; padding:10px; border-radius:9px; background:var(--surface-2); }
.diff-stats strong { font-size:18px; }
.diff-stats span { color:var(--text-3); font-size:9px; }
.diff-list { display:grid; gap:2px; padding:0 18px 16px; }
.diff-list>div { display:grid; grid-template-columns:24px 56px minmax(0,1fr); gap:7px; align-items:center; padding:7px 0; border-bottom:1px solid var(--border); }
.diff-list>div>span { font-weight:800; color:var(--accent); }
.diff-list>div>strong { font-size:10px; }
.diff-list>div>small { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:var(--text-3); font-size:9px; }
.builder-section { border-bottom:1px solid var(--border); }
.builder-section:last-child { border-bottom:0; }
.builder-section__head { display:flex; align-items:center; justify-content:space-between; padding:10px 16px; background:var(--surface-2); }
.builder-section__head>div { display:flex; align-items:center; gap:8px; }
.builder-section__head span { color:var(--text-3); font-size:9px; text-transform:uppercase; }
.builder-section__head strong { font-size:12px; }
.builder-section__head b { min-width:24px; text-align:center; padding:2px 7px; border-radius:999px; background:white; color:var(--text-2); font-size:10px; }
.question-editor-row { grid-template-columns:105px minmax(220px,1fr) 110px 120px 70px 36px; }
.question-order { display:flex; gap:2px; }
.question-order .btn { min-width:30px; padding:5px; }
.survey-preview { display:grid; gap:22px; }
.survey-preview>section { display:grid; gap:8px; }
.survey-preview__section { display:flex; align-items:baseline; justify-content:space-between; padding-bottom:8px; border-bottom:1px solid var(--border); }
.survey-preview__section span { color:var(--text-3); font-size:10px; }
.survey-preview article { display:grid; grid-template-columns:55px minmax(0,1fr) 210px; gap:10px; align-items:center; padding:10px 0; border-bottom:1px solid #edf0f4; }
.survey-preview article>span { color:var(--accent); font-size:9px; font-weight:800; }
.survey-preview article p { margin:0; font-size:12px; }
.survey-preview__likert { display:grid; grid-template-columns:repeat(5,1fr); gap:4px; }
.survey-preview__likert b { height:30px; display:grid; place-items:center; border:1px solid var(--border); border-radius:7px; color:var(--text-2); font-size:10px; }
@media (max-width:900px) {
  .question-editor-row { grid-template-columns:90px minmax(0,1fr); }
  .question-editor-row>[data-q="module"],.question-editor-check,.question-order,.question-editor-row>[data-remove-question] { grid-column:auto; }
  .survey-preview article { grid-template-columns:45px 1fr; }
  .survey-preview__likert { grid-column:2; }
}
@media (max-width:620px) {
  .diff-stats { grid-template-columns:repeat(2,1fr); }
  .survey-preview article { grid-template-columns:1fr; }
  .survey-preview__likert { grid-column:1; }
}

/* v0.13 alpha5 — methodology glossary */
.methodology-help { text-decoration:underline dotted #a5a9c8; text-underline-offset:3px; cursor:help; }
.methodology-note { margin-bottom:16px; padding:18px 20px; }
.methodology-note p { margin:5px 0 0; color:var(--text-2); font-size:12px; line-height:1.55; }
.methodology-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.methodology-term { padding:18px 20px; }
.methodology-term>div { display:flex; align-items:baseline; gap:10px; }
.methodology-term span { color:var(--accent); font-size:11px; font-weight:800; }
.methodology-term h2 { margin:0; font-size:15px; }
.methodology-term p { margin:8px 0 0; color:var(--text-2); font-size:12px; line-height:1.55; }
@media (max-width:760px) { .methodology-grid{grid-template-columns:1fr} }

/* v0.13 beta2 — campaign wizard and lifecycle safety */
.dialog--wide { width:min(820px,calc(100vw - 32px)); }
.wizard-head { align-items:flex-start; }
.wizard-head p { margin:4px 0 0; color:var(--text-3); font-size:11px; }
.wizard-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-bottom:1px solid var(--border); background:var(--surface-2); }
.wizard-step { position:relative; display:flex; align-items:center; gap:8px; padding:12px 14px; color:var(--text-3); font-size:11px; }
.wizard-step:not(:last-child)::after { content:""; position:absolute; right:0; top:12px; bottom:12px; width:1px; background:var(--border); }
.wizard-step span { width:22px; height:22px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--border-strong); background:white; font-size:10px; }
.wizard-step strong { font-weight:650; }
.wizard-step--active { color:var(--accent); background:#f6f6ff; }
.wizard-step--active span { border-color:var(--accent); background:var(--accent); color:white; }
.wizard-step--done { color:var(--success); }
.wizard-step--done span { border-color:#b8dfcf; background:#eef9f4; color:var(--success); }
.wizard-body { min-height:350px; }
.wizard-note { border:1px solid var(--border); background:var(--surface-2); border-radius:10px; padding:11px 12px; color:var(--text-2); font-size:11px; line-height:1.5; }
.wizard-audience-head,.wizard-review-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:14px; }
.wizard-audience-head h4,.wizard-review-head h4,.wizard-final h4 { margin:0 0 4px; font-size:15px; }
.wizard-audience-head p,.wizard-review-head p { margin:0; color:var(--text-3); font-size:11px; }
.wizard-audience-head>span { flex:none; padding:5px 9px; border-radius:999px; background:var(--surface-2); color:var(--text-2); font-size:10px; }
.wizard-search { width:100%; margin-bottom:13px; }
.wizard-audience-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.wizard-audience-grid h5 { margin:0 0 7px; font-size:11px; color:var(--text-2); text-transform:uppercase; letter-spacing:.04em; }
.wizard-audience-row { margin:0; }
.wizard-audience-row>span { display:grid; gap:2px; min-width:0; }
.wizard-audience-row strong { font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.wizard-audience-row small { color:var(--text-3); font-size:10px; }
.preflight-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-bottom:14px; }
.preflight-summary>div { display:grid; gap:3px; padding:11px; border-radius:10px; background:var(--surface-2); }
.preflight-summary span { color:var(--text-3); font-size:9px; text-transform:uppercase; letter-spacing:.04em; }
.preflight-summary strong { font-size:18px; }
.preflight-list { display:grid; gap:7px; }
.preflight-check { display:flex; align-items:flex-start; gap:10px; border:1px solid var(--border); border-radius:10px; padding:10px 11px; }
.preflight-check__mark { flex:none; width:22px; height:22px; display:grid; place-items:center; border-radius:50%; font-weight:700; font-size:11px; }
.preflight-check strong { font-size:11px; }
.preflight-check p { margin:2px 0 0; color:var(--text-2); font-size:11px; line-height:1.4; }
.preflight-check--pass .preflight-check__mark { background:#eef9f4; color:var(--success); }
.preflight-check--warn { border-color:#ead9ad; background:#fffaf0; }
.preflight-check--warn .preflight-check__mark { background:#fff0c7; color:#986b0d; }
.preflight-check--block { border-color:#efc6ce; background:#fff7f8; }
.preflight-check--block .preflight-check__mark { background:#fbe3e7; color:var(--danger); }
.wizard-final { margin-bottom:16px; }
.wizard-warning { margin:12px 0 0; border-left:3px solid var(--warning); padding:8px 10px; background:#fffaf0; color:var(--text-2); font-size:11px; }
.wizard-send-invites { margin:14px 0; border:1px solid var(--border); border-radius:10px; padding:12px; }
.wizard-send-invites>span { display:grid; gap:3px; }
.wizard-send-invites small { color:var(--text-3); font-size:10px; line-height:1.45; }
.wizard-foot { align-items:center; justify-content:space-between; }
.wizard-foot__actions { display:flex; gap:9px; margin-left:auto; }
.campaign-preflight-card { margin-bottom:18px; }
.campaign-preflight-card .card__head { align-items:flex-start; }
.lifecycle-dialog-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:12px 0; }
.lifecycle-dialog-summary>div { padding:10px; border-radius:9px; background:var(--surface-2); display:grid; gap:3px; }
.lifecycle-dialog-summary span { color:var(--text-3); font-size:10px; }
.lifecycle-dialog-summary strong { font-size:16px; }
.lifecycle-warning { border:1px solid #ead9ad; background:#fffaf0; color:var(--text-2); border-radius:10px; padding:10px 11px; font-size:11px; line-height:1.45; }
@media (max-width:700px) { .wizard-steps{grid-template-columns:1fr 1fr}.wizard-step:nth-child(2)::after{display:none}.wizard-audience-grid{grid-template-columns:1fr}.preflight-summary{grid-template-columns:1fr 1fr}.wizard-foot{align-items:stretch;flex-direction:column}.wizard-foot__actions{width:100%;margin:0}.wizard-foot__actions .btn{flex:1} }

/* v0.13 beta3 — respondent flow hardening */
.respondent-access-state__note { margin-top:18px; padding:12px 14px; border-radius:10px; background:var(--surface-2); color:var(--text-2); font-size:12px; line-height:1.5; }
.completion-review-dialog { width:min(720px,calc(100vw - 28px)); }
.completion-review-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.completion-review-summary>div { display:grid; gap:4px; padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--surface-2); }
.completion-review-summary span { color:var(--text-3); font-size:10px; }
.completion-review-summary strong { font-size:18px; }
.completion-review-sections { display:grid; gap:7px; margin-top:14px; }
.completion-review-sections>div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border:1px solid var(--border); border-radius:9px; }
.completion-review-sections span { color:var(--text-2); font-size:12px; }
.completion-review-sections strong { font-size:12px; font-variant-numeric:tabular-nums; }
.completion-review-note { margin-top:14px; padding:11px 13px; border-radius:10px; background:#f8f8ff; color:var(--text-2); font-size:11px; line-height:1.5; }
.completion-review-warning { display:grid; gap:5px; margin-top:14px; padding:13px 14px; border:1px solid #f1d79f; border-radius:10px; background:var(--warning-bg); }
.completion-review-warning strong { color:var(--warning); font-size:12px; }
.completion-review-warning span { color:var(--text-2); font-size:11px; line-height:1.5; }
.respondent-main button:focus-visible, .respondent-main input:focus-visible { outline:3px solid #cfd3ff; outline-offset:2px; }
@media (max-width:700px) {
  .respondent-main .content { padding-bottom:96px; }
  .questionnaire-progress { top:8px; border-radius:12px; }
  .questionnaire-tabs { display:flex; overflow-x:auto; scrollbar-width:thin; }
  .questionnaire-tab { min-width:132px; flex:0 0 auto; }
  .likert-option span { min-height:46px; }
  .completion-review-summary { grid-template-columns:1fr; }
  .completion-review-dialog .dialog__foot { display:grid; grid-template-columns:1fr; }
  .completion-review-dialog .dialog__foot .btn { width:100%; min-height:46px; }
}
.respondent-mobile-actions { display:none; }
@media (max-width:700px) {
  .respondent-mobile-actions { position:fixed; left:0; right:0; bottom:0; z-index:40; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px calc(10px + env(safe-area-inset-bottom)); border-top:1px solid var(--border); background:rgba(255,255,255,.96); backdrop-filter:blur(10px); box-shadow:0 -8px 24px rgba(31,41,55,.08); }
  .respondent-mobile-actions span { color:var(--text-3); font-size:10px; }
  .respondent-mobile-actions .btn { min-height:46px; flex:none; }
}

/* v0.13 beta4 — manager workflow and immutable 1-1 SDT context */
.attention-cards { display:grid; gap:14px; }
.attention-card { overflow:hidden; box-shadow:none; border-left:4px solid var(--border-strong); }
.attention-card--danger { border-left-color:var(--danger); }
.attention-card--warning { border-left-color:var(--warning); }
.attention-card__head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 18px; border-bottom:1px solid var(--border); }
.attention-card__priority { display:flex; align-items:center; gap:10px; color:var(--text-2); font-size:11px; white-space:nowrap; }
.attention-card__body { display:grid; grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr); gap:24px; padding:16px 18px; }
.attention-why, .attention-context { min-width:0; }
.attention-reason { margin-top:7px; font-weight:650; font-size:12px; }
.attention-why p { margin:8px 0 0; color:var(--text-2); font-size:11px; line-height:1.5; }
.attention-dynamics { display:flex; gap:18px; margin:7px 0 10px; }
.attention-dynamics>div { display:grid; gap:1px; }
.attention-dynamics strong { font-size:16px; }
.attention-dynamics span { color:var(--text-3); font-size:9px; text-transform:uppercase; letter-spacing:.05em; }
.attention-changes { display:grid; gap:6px; }
.attention-change { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:7px 9px; border-radius:9px; background:var(--surface-2); border-left:3px solid var(--border-strong); }
.attention-change--danger { border-left-color:var(--danger); }
.attention-change--success { border-left-color:var(--success); }
.attention-change>div { display:grid; gap:1px; min-width:0; }
.attention-change span, .attention-change small { color:var(--text-3); font-size:9px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.attention-change b { font-variant-numeric:tabular-nums; text-align:right; }
.attention-summary { margin:8px 0 0; }
.attention-card__foot { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 18px; border-top:1px solid var(--border); background:var(--surface-2); color:var(--text-2); font-size:11px; }
.attention-card__foot>div { display:flex; gap:8px; }
.latest-change-card { margin-top:16px; box-shadow:none; }
.latest-change-summary { display:grid; grid-template-columns:auto auto minmax(0,1fr); gap:18px; align-items:center; margin-bottom:12px; }
.latest-change-summary>div { display:grid; gap:2px; min-width:84px; }
.latest-change-summary>div strong { font-size:20px; }
.latest-change-summary>div span { color:var(--text-3); font-size:9px; text-transform:uppercase; letter-spacing:.04em; }
.latest-change-summary p { margin:0; color:var(--text-2); font-size:11px; line-height:1.5; }
.one-to-one-context { margin-bottom:16px; padding:14px; border:1px solid #dce5f4; border-radius:12px; background:#f8fbff; }
.one-to-one-context__head { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
.one-to-one-context__head>div { display:grid; gap:4px; }
.one-to-one-context__head small { color:var(--text-3); font-size:9px; }
.one-to-one-context__metrics { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.one-to-one-context__metrics span { padding:5px 8px; border-radius:8px; background:white; border:1px solid var(--border); color:var(--text-2); font-size:10px; }
.one-to-one-context__metrics b { color:var(--text); margin-left:3px; }
.one-to-one-context__interpretation { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:10px; }
.one-to-one-context__interpretation>div { display:grid; gap:4px; padding:9px; border-radius:9px; background:white; border:1px solid var(--border); }
.one-to-one-context__interpretation span { color:var(--text-3); font-size:9px; text-transform:uppercase; letter-spacing:.04em; }
.one-to-one-context__interpretation strong { font-size:11px; line-height:1.45; }
.one-to-one-context__dynamics { display:grid; gap:3px; margin-top:10px; padding-top:10px; border-top:1px solid var(--border); }
.one-to-one-context__dynamics span { color:var(--text-2); font-size:10px; line-height:1.45; }
.one-to-one-context__note { margin:10px 0 0; color:var(--text-3); font-size:9px; }
@media (max-width:820px) {
  .attention-card__body { grid-template-columns:1fr; gap:16px; }
  .attention-card__head, .attention-card__foot { align-items:flex-start; flex-direction:column; }
  .attention-card__foot>div { width:100%; }
  .attention-card__foot .btn { flex:1; }
  .latest-change-summary { grid-template-columns:1fr 1fr; }
  .latest-change-summary p { grid-column:1/-1; }
  .one-to-one-context__interpretation { grid-template-columns:1fr; }
}

/* v0.13 beta6 — constrained Survey Builder */
.builder-profile { display:inline-flex; align-items:center; padding:4px 8px; border-radius:999px; background:var(--surface-2); color:var(--text-2); font-size:10px; font-weight:700; }
.builder-profile--locked { background:#f4f1ff; color:var(--accent); }
.builder-mode-card,.methodology-lock-card { display:flex; gap:16px; align-items:flex-start; padding:18px 20px; margin-bottom:16px; }
.builder-mode-icon,.methodology-lock-card__icon { width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; border-radius:12px; background:var(--surface-2); font-size:18px; }
.builder-mode-card h2,.methodology-lock-card h2 { margin:0 0 5px; font-size:15px; }
.builder-mode-card p,.methodology-lock-card p { margin:0; color:var(--text-2); font-size:12px; line-height:1.55; }
.methodology-lock-card { border-color:#dcd8ff; background:linear-gradient(135deg,#fff 0%,#faf9ff 100%); }
.methodology-lock-card__copy { min-width:0; flex:1; }
.methodology-lock-card__title { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.methodology-lock-card__stats { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.methodology-lock-card__stats span { display:flex; align-items:baseline; gap:5px; padding:7px 9px; border-radius:9px; background:white; border:1px solid var(--border); color:var(--text-3); font-size:10px; }
.methodology-lock-card__stats strong { color:var(--text); font-size:13px; }
.methodology-lock-card__modules { display:flex; gap:6px; flex-wrap:wrap; margin-top:10px; }
.draft-save-state { font-size:10px; color:var(--text-3); padding:4px 8px; border-radius:999px; background:var(--surface-2); }
.draft-save-state.is-dirty { color:#8a5b00; background:#fff5d9; }
.builder-profile-picker { display:grid; gap:9px; margin-top:12px; }
.builder-profile-picker label { display:flex; gap:10px; align-items:flex-start; padding:12px; border:1px solid var(--border); border-radius:11px; cursor:pointer; }
.builder-profile-picker label:has(input:checked) { border-color:#c9c5ff; background:#faf9ff; }
.builder-profile-picker input { margin-top:3px; }
.builder-profile-picker span { display:grid; gap:3px; }
.builder-profile-picker strong { font-size:12px; }
.builder-profile-picker small { color:var(--text-3); font-size:10px; line-height:1.45; }
.generic-builder .card__head { align-items:flex-start; }
.builder-section__identity { min-width:0; }
.builder-section__identity input { min-width:190px; max-width:340px; border:1px solid var(--border-strong); background:white; border-radius:8px; padding:7px 9px; color:var(--text); font:inherit; font-size:12px; font-weight:700; }
.builder-section__actions { display:flex; align-items:center; gap:5px; }
.builder-section__actions .btn { padding:5px 8px; min-height:30px; }
.question-editor-row { grid-template-columns:120px minmax(260px,1fr) 160px 120px 70px 36px; align-items:end; }
.question-editor-field { margin:0; gap:4px; }
.question-editor-field label { font-size:9px; color:var(--text-3); }
.question-editor-field small { font-size:8px; color:var(--text-3); }
.question-editor-row .question-editor-check { align-self:center; margin-bottom:8px; }
.question-editor-row input.is-invalid { border-color:#d66 !important; background:#fff8f8; }
.question-editor__foot { align-items:center; gap:12px; }
.builder-foot-note { margin-right:auto; color:var(--text-3); font-size:10px; }
.sdt-catalogue__sections { border-top:1px solid var(--border); }
.sdt-catalogue-section { border-bottom:1px solid var(--border); }
.sdt-catalogue-section:last-child { border-bottom:0; }
.sdt-catalogue-row { display:grid; grid-template-columns:90px minmax(0,1fr); gap:12px; padding:10px 16px; border-top:1px solid #edf0f4; }
.sdt-catalogue-row:first-of-type { border-top:0; }
.sdt-catalogue-row__code { color:var(--accent); font-size:10px; font-weight:800; padding-top:2px; }
.sdt-catalogue-row p { margin:0 0 4px; font-size:11px; line-height:1.45; }
.sdt-catalogue-row small { color:var(--text-3); font-size:9px; }
@media (max-width:1000px) {
  .question-editor-row { grid-template-columns:110px minmax(220px,1fr) 140px; }
  .question-editor-row .question-editor-check,.question-editor-row .question-order,.question-editor-row>[data-remove-question] { align-self:center; }
}
@media (max-width:700px) {
  .builder-mode-card,.methodology-lock-card { padding:15px; }
  .methodology-lock-card__stats { display:grid; grid-template-columns:repeat(2,1fr); }
  .builder-section__head { align-items:flex-start; gap:10px; flex-direction:column; }
  .builder-section__identity,.builder-section__identity input { width:100%; max-width:none; }
  .builder-section__actions { width:100%; }
  .builder-section__actions .btn:last-child { margin-left:auto; }
  .question-editor-row { grid-template-columns:1fr; padding:13px 14px; align-items:stretch; }
  .question-editor-row .question-editor-check { margin:0; }
  .question-order { justify-content:flex-start; }
  .sdt-catalogue-row { grid-template-columns:1fr; gap:4px; }
}

/* v0.13 beta7 — product polish / accessibility */
.sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }
.skip-link { position:fixed; left:16px; top:12px; z-index:1000; transform:translateY(-180%); padding:10px 14px; border-radius:9px; background:#111827; color:white; font-size:13px; font-weight:700; box-shadow:var(--shadow); }
.skip-link:focus { transform:translateY(0); }
:where(a,button,input,select,textarea,[tabindex]):focus-visible { outline:3px solid #cfd3ff; outline-offset:2px; }
[data-page-title]:focus { outline:none; }
.loading-state { min-height:120px; }
.confirmation-dialog .dialog__body p { margin:0; color:var(--text-2); line-height:1.55; }
#main-content[aria-busy="true"] { cursor:progress; }
.nav-item[aria-current="page"] { box-shadow:inset 3px 0 0 #818cf8; }
.toast[role="alert"] { box-shadow:0 16px 50px rgba(153,31,54,.26); }

@media (max-width:820px) {
  .sidebar { gap:8px; overflow:hidden; }
  .nav { flex:1; min-width:0; gap:4px; }
  .nav-item { flex:none; white-space:nowrap; padding:9px 10px; }
  .nav-item span { display:inline; font-size:11px; }
  .nav-item[aria-current="page"] { box-shadow:inset 0 -3px 0 #818cf8; }
}
@media (max-width:520px) {
  .sidebar { padding:8px 10px; }
  .brand { padding-right:2px; }
  .brand__mark { width:32px; height:32px; }
  .nav-item { gap:6px; padding:8px; }
  .nav-item .icon { width:16px; height:16px; }
  .dialog__foot { flex-direction:column-reverse; }
  .dialog__foot .btn { width:100%; min-height:44px; }
  .toast-root { right:12px; bottom:12px; width:calc(100vw - 24px); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

.methodology-term h3{margin:6px 0 8px;font-size:17px}.methodology-term small{display:block;margin-top:12px;color:var(--muted)}.methodology-technical{margin-top:24px;padding:18px 20px}.methodology-technical summary{cursor:pointer;font-weight:700}.technical-code-list{margin-top:10px;font-size:12px;color:var(--muted);line-height:1.6}.metric-card__top span{line-height:1.25}.profile-explanation{margin-top:8px;color:var(--muted);max-width:760px}.technical-details{margin-top:12px}.technical-details summary{cursor:pointer;color:var(--muted);font-size:12px}.scale-score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.scale-score-item{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.scale-score-item strong{display:block;font-size:13px}.scale-score-item span{display:block;margin-top:5px;font-size:12px;color:var(--muted)}.scale-score-item b{display:block;margin-top:8px;font-size:18px}.scale-score-group{margin-top:18px}.scale-score-group h3{margin-bottom:10px}@media(max-width:820px){.scale-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.scale-score-grid{grid-template-columns:1fr}}

/* v0.14 alpha1 — employee self-service */
.employee-self-summary .card__body{padding-top:18px}.profile-distribution{display:grid;gap:8px;margin-top:12px}.profile-distribution>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border)}.profile-distribution>div:last-child{border-bottom:0}.portal-preview-frame{margin-top:20px;padding:18px;border:1px dashed var(--border-strong);border-radius:14px;background:#fafbfc}.portal-preview-frame .page-header{margin-top:0}.detail-list dt{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.detail-list dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}@media(max-width:700px){.portal-preview-frame{padding:10px}.grid.grid--5{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.14.0-beta2 — Product Visual System & UX Redesign */
:root {
  --bg: #f4f6f5;
  --surface: #ffffff;
  --surface-2: #f7f9f8;
  --surface-3: #eef3f1;
  --border: #e1e7e4;
  --border-strong: #cdd7d2;
  --text: #17221f;
  --text-2: #52625d;
  --text-3: #7b8a85;
  --text-secondary: var(--text-2);
  --surface-subtle: var(--surface-2);
  --muted: var(--text-3);
  --accent: #315f58;
  --accent-hover: #284f49;
  --accent-2: #eaf3f1;
  --accent-3: #dcebe7;
  --success: #247457;
  --success-bg: #eaf6f0;
  --warning: #95611c;
  --warning-bg: #fff5df;
  --danger: #a94352;
  --danger-bg: #fff0f2;
  --private: #66518f;
  --private-bg: #f6f2fb;
  --shared: #2e6a5d;
  --shared-bg: #edf7f3;
  --shadow: 0 10px 32px rgba(30, 50, 43, .055);
  --shadow-hover: 0 16px 40px rgba(30, 50, 43, .09);
  --radius-sm: 10px;
  --radius: 16px;
  --radius-lg: 22px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  color: var(--text);
  background: var(--bg);
}
html { background: var(--bg); }
body { color:var(--text); font-size:14px; line-height:1.5; }
button, input, select, textarea { color:var(--text); }

/* Shell and navigation */
.app-shell { grid-template-columns: 252px minmax(0,1fr); background:var(--bg); }
.sidebar { padding:22px 16px; background:#f8faf9; color:var(--text-2); border-right:1px solid var(--border); }
.sidebar--employee { background:#f7f8f4; }
.brand { padding:0 10px 26px; color:var(--text); }
.brand__mark { background:linear-gradient(145deg,#315f58,#477d73); color:#fff; box-shadow:0 6px 18px rgba(49,95,88,.18); }
.brand strong { font-size:14px; font-weight:750; }
.brand small { color:var(--text-3); font-size:11px; }
.nav { display:grid; gap:20px; }
.nav-group { display:grid; gap:5px; }
.nav-group__label { padding:0 12px 5px; color:#95a29d; font-size:10px; font-weight:760; text-transform:uppercase; letter-spacing:.11em; }
.nav-group__items { display:grid; gap:4px; }
.nav-item { padding:10px 12px; color:#65736f; border-radius:11px; font-weight:600; }
.nav-item:hover { background:#edf2f0; color:var(--text); }
.nav-item--active { background:var(--accent-2); color:var(--accent); }
.nav-item[aria-current="page"] { box-shadow:inset 3px 0 0 var(--accent); }
.sidebar__footer { border-top:1px solid var(--border); color:var(--text-3); padding:16px 10px 0; }
.sidebar-user { display:grid; gap:2px; margin-bottom:8px; }
.sidebar-user strong { color:var(--text); font-size:12px; }
.sidebar-user span { color:var(--text-3); font-size:10px; }
.sidebar-logout { padding-left:0; color:var(--text-2); }
.main { background:linear-gradient(180deg,#f7f9f8 0,#f4f6f5 280px); }
.topbar { height:70px; padding:0 34px; background:rgba(250,252,251,.9); border-bottom:1px solid var(--border); backdrop-filter:blur(12px); }
.topbar__title { color:var(--text); font-weight:700; font-size:12px; }
.topbar__context { margin-top:2px; color:var(--text-3); font-size:10px; }
.topbar--employee { background:rgba(249,250,246,.92); }
.health { color:var(--text-3); }
.health-dot { background:var(--success); box-shadow:0 0 0 3px var(--success-bg); }
.content { max-width:1380px; padding:38px 40px 64px; }
.content--employee { max-width:1180px; }

/* Typography and surfaces */
.page-header { margin-bottom:28px; align-items:center; }
.page-header h1 { font-size:32px; line-height:1.14; font-weight:760; letter-spacing:-.035em; }
.page-header p { color:var(--text-2); font-size:14px; line-height:1.65; max-width:720px; }
.eyebrow { color:var(--accent); font-size:10px; font-weight:800; letter-spacing:.12em; }
.section-title { margin:38px 0 15px; align-items:end; }
.section-title h2 { font-size:20px; line-height:1.25; letter-spacing:-.015em; }
.section-title h3 { margin:0; font-size:16px; }
.section-title p, .subsection-title p { color:var(--text-3); font-size:12px; line-height:1.55; }
.section-title--prominent { margin-top:30px; }
.card { border-color:var(--border); border-radius:var(--radius); box-shadow:var(--shadow); }
.card__head { padding:20px 22px 15px; }
.card__head h2,.card__head h3 { line-height:1.3; }
.card__subtitle { margin:4px 0 0; color:var(--text-3); font-size:11px; line-height:1.45; }
.card__body { padding:0 22px 22px; }
.card__body--spacious { padding-top:22px; }
.btn { border-color:var(--border-strong); border-radius:10px; background:rgba(255,255,255,.9); box-shadow:0 1px 1px rgba(20,35,30,.02); }
.btn:hover { border-color:#aebdb7; background:#fff; }
.btn--primary { border-color:var(--accent); background:var(--accent); color:#fff; }
.btn--primary:hover { background:var(--accent-hover); border-color:var(--accent-hover); }
.btn--ghost { background:transparent; box-shadow:none; }
.badge { font-size:10px; padding:5px 8px; }
.callout { background:var(--surface-2); line-height:1.55; }
.callout--subtle { margin-top:16px; background:#fafbfa; }
.callout--info { border-color:#d8e5e1; background:#f2f7f5; }
.data-caption { display:block; color:var(--text-3); font-size:11px; }
.privacy-note { margin-bottom:16px; padding:14px 16px; border-left:3px solid var(--accent); border-radius:0 12px 12px 0; background:#f0f5f3; }
.privacy-note p { margin:4px 0 0; color:var(--text-2); font-size:12px; }
.detail-panel { margin-top:16px; padding-top:4px; }
.subsection-title { margin:24px 0 10px; }
.subsection-title h3 { margin:0; }

/* Metrics are secondary explanatory data, not dashboard chrome. */
.summary-metric-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.summary-metric-grid--compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.metric-card { padding:15px 16px; background:#fbfcfb; border-color:var(--border); border-radius:13px; }
.metric-card__top { min-height:32px; align-items:flex-start; line-height:1.3; }
.metric-card__top > span:first-child { color:var(--text-2); font-weight:600; }
.metric-card__value { margin-top:7px; font-size:23px; font-weight:730; }
.metric-card__hint { font-size:10px; }

/* Manager workspace: action first. */
.workspace-team-picker { justify-content:flex-end; margin-top:-66px; margin-bottom:24px; position:relative; z-index:2; }
.workspace-team-picker label { color:var(--text-3); }
.workspace-hero { grid-template-columns:minmax(0,1fr) 250px; gap:28px; padding:26px 28px; overflow:hidden; }
.workspace-hero__title h2 { font-size:24px; letter-spacing:-.025em; }
.workspace-hero__title p { margin-top:5px; font-size:12px; }
.workspace-hero__actions { display:flex; gap:8px; flex-wrap:wrap; }
.workspace-hero__progress { padding-left:26px; }
.workspace-focus-grid { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:12px; margin-top:14px; }
.insight-card { min-height:146px; display:flex; flex-direction:column; padding:20px; border:1px solid var(--border); border-radius:var(--radius); background:var(--surface); }
.insight-card > span { color:var(--text-3); font-size:10px; font-weight:750; text-transform:uppercase; letter-spacing:.08em; }
.insight-card > strong { margin-top:12px; font-size:19px; line-height:1.3; letter-spacing:-.015em; }
.insight-card > p { margin:auto 0 0; color:var(--text-2); font-size:11px; line-height:1.5; }
.insight-card--danger { border-color:#efd3d8; background:#fffafb; }
.insight-card--warning { border-color:#eadcc3; background:#fffdf8; }
.insight-card--success { border-color:#cfe4db; background:#f9fcfa; }
.workspace-action-section { margin-top:4px; }
.workspace-panels { margin-top:12px; }
.attention-card { border-left-width:3px; }
.attention-card__head { padding:17px 20px; }
.attention-card__body { padding:18px 20px; }
.attention-card__foot { padding:13px 20px; background:#fafbfa; }
.signal-row { grid-template-columns:minmax(180px,1fr) auto minmax(150px,190px); }
.signal-row__value details { margin-top:0; }

/* Employee portal gets a calmer report-like rhythm. */
.app-shell--employee .main { background:linear-gradient(180deg,#fafbf8 0,#f6f7f3 320px); }
.app-shell--employee .nav-item--active { background:#eaf0e9; color:#395d51; }
.employee-result-hero { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr); gap:28px; padding:30px; border-radius:var(--radius-lg); }
.employee-result-hero__copy h2 { margin:7px 0 9px; font-size:27px; letter-spacing:-.025em; }
.employee-result-hero__copy > p { margin:0; max-width:650px; color:var(--text-2); font-size:14px; line-height:1.65; }
.employee-result-insights { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:24px; }
.result-insight { min-height:128px; padding:16px; border:1px solid var(--border); border-radius:13px; background:#fbfcfb; }
.result-insight > span { display:block; margin-bottom:9px; color:var(--text-3); font-size:10px; font-weight:760; text-transform:uppercase; letter-spacing:.06em; }
.result-insight > strong { font-size:13px; line-height:1.55; }
.result-insight--resource { border-left:3px solid var(--success); }
.result-insight--attention { border-left:3px solid var(--warning); }
.reflection-note { margin-top:10px; padding:14px 16px; border-radius:12px; background:#f1f5f3; }
.reflection-note > span { color:var(--accent); font-size:10px; font-weight:760; text-transform:uppercase; letter-spacing:.06em; }
.reflection-note p { margin:4px 0 0; color:var(--text-2); font-size:12px; line-height:1.55; }
.employee-result-hero__details { padding:18px; border-radius:15px; background:#f6f8f7; align-self:start; }
.employee-result-hero__details .summary-metric-grid { margin-top:12px; }
.employee-scale-details { grid-column:1/-1; margin-top:2px; padding-top:14px; border-top:1px solid var(--border); }
.employee-scale-details > summary { cursor:pointer; color:var(--text-2); font-weight:650; }
.employee-scale-details__body { padding-top:10px; }
.employee-dynamics .card { box-shadow:none; }
.comparison-strip--3 { grid-template-columns:repeat(3,1fr); }
.dynamics-transition { margin:15px 0 0; color:var(--text-2); font-size:12px; }
.employee-team-card { margin-top:14px; }
.data-caption { margin-top:12px; }
.history-cards { display:grid; gap:10px; }
.history-card { display:grid; grid-template-columns:180px 1fr; gap:26px; padding:18px 20px; box-shadow:none; }
.history-card > div { display:grid; gap:4px; }
.history-card span { color:var(--text-3); font-size:11px; }
.history-card p { margin:0; color:var(--text-2); font-size:12px; line-height:1.5; }
.report-cta { margin-top:38px; }
.report-cta .card__body { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.report-cta h2 { margin:5px 0; font-size:18px; }
.report-cta p { margin:0; color:var(--text-2); font-size:12px; }

/* Compact notification center */
.notification-center { position:relative; }
.notification-center > summary { list-style:none; }
.notification-center > summary::-webkit-details-marker { display:none; }
.notification-trigger { position:relative; }
.notification-count { min-width:19px; height:19px; display:grid; place-items:center; margin-left:2px; border-radius:999px; background:var(--accent); color:#fff; font-size:9px; }
.notification-popover { position:absolute; right:0; top:48px; z-index:30; width:min(420px,calc(100vw - 28px)); overflow:hidden; border:1px solid var(--border); border-radius:16px; background:#fff; box-shadow:0 22px 60px rgba(31,50,44,.16); }
.notification-popover__head { display:grid; gap:2px; padding:16px 18px; border-bottom:1px solid var(--border); }
.notification-popover__head span { color:var(--text-3); font-size:10px; }
.notification-list { max-height:440px; overflow:auto; }
.notification-item { padding:14px 18px; border-bottom:1px solid #edf0ee; }
.notification-item:last-child { border-bottom:0; }
.notification-item--unread { background:#f7fbf9; box-shadow:inset 3px 0 0 var(--accent); }
.notification-item > div:first-child { display:flex; justify-content:space-between; gap:14px; }
.notification-item small { color:var(--text-3); font-size:9px; }
.notification-item p { margin:6px 0 9px; color:var(--text-2); font-size:11px; line-height:1.45; }

/* Shared 1-1 in the employee portal */
.agreement-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.agreement-card { box-shadow:none; }
.agreement-copy { padding:14px; border-radius:12px; background:var(--shared-bg); }
.agreement-copy + .agreement-copy { margin-top:8px; }
.agreement-copy--follow { background:#f7f8f7; }
.agreement-copy span { display:block; color:var(--text-3); font-size:9px; font-weight:750; text-transform:uppercase; letter-spacing:.06em; }
.agreement-copy p { margin:5px 0 0; font-size:12px; line-height:1.55; }
.shared-actions { margin-top:16px; }
.shared-actions > strong { font-size:12px; }
.shared-actions .action-list { margin-top:8px; }

/* Manager Employee Card */
.employee-profile-hero { padding:24px; background:linear-gradient(135deg,#fbfdfc,#fff); }
.employee-profile-hero__top { display:flex; align-items:flex-start; gap:16px; }
.employee-profile-hero__copy { flex:1; min-width:0; }
.employee-profile-hero__copy h2 { margin:4px 0 5px; font-size:22px; }
.employee-profile-hero .summary-metric-grid { margin-top:20px; }
.employee-profile-technical { margin-top:14px; }
.focus-card { min-height:132px; padding:20px; }
.focus-card strong { font-size:14px; }
.latest-change-card { margin-top:14px; }
.comparison-result { margin-top:18px; }
.legacy-notice { margin-bottom:16px; }
.legacy-notice__copy { margin:6px 0 0; }

/* 1-1 privacy is visible in the interface, not just enforced by the API. */
.one-to-one-card { overflow:hidden; }
.one-to-one-card > .card__body { display:grid; grid-template-columns:1fr 1fr; gap:14px; padding-top:2px; }
.one-to-one-zone { min-width:0; padding:16px; border:1px solid var(--border); border-radius:14px; }
.one-to-one-zone--private { border-color:#e2dced; background:var(--private-bg); }
.one-to-one-zone--shared { border-color:#d5e7e0; background:var(--shared-bg); }
.one-to-one-zone__head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:12px; }
.one-to-one-zone__head h4 { margin:3px 0 0; font-size:14px; }
.privacy-label,.shared-label { font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.privacy-label { color:var(--private); }
.shared-label { color:var(--shared); }
.privacy-lock,.shared-visibility { padding:4px 7px; border-radius:999px; background:rgba(255,255,255,.75); color:var(--text-3); font-size:9px; font-weight:700; }
.one-to-one-zone .one-to-one-context { margin-top:0; border-color:#e0d9ec; background:rgba(255,255,255,.68); }
.one-to-one-zone .note-block { background:rgba(255,255,255,.72); border:1px solid rgba(220,228,224,.8); }
.sharing-state { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:12px; padding:11px 12px; border-radius:11px; background:rgba(255,255,255,.72); }
.sharing-state > div { display:grid; gap:2px; }
.sharing-state span { color:var(--text-3); font-size:9px; }
.sharing-state--private { border:1px dashed #cfc3df; }
.sharing-state--shared { border:1px solid #cce2da; }
.one-to-one-card .plan-editor { grid-column:1/-1; margin:0; padding-top:14px; }
.editor-zone { margin:14px 0; padding:14px; border:1px solid var(--border); border-radius:12px; }
.editor-zone > strong { display:block; margin-bottom:10px; font-size:11px; }
.editor-zone--private { border-color:#e2dced; background:var(--private-bg); }
.editor-zone--shared { border-color:#d5e7e0; background:var(--shared-bg); }
.dialog--one-to-one { width:min(720px,calc(100vw - 32px)); }

/* Campaigns and operations keep higher information density, but share the visual system. */
.campaign-card { box-shadow:none; }
.campaign-card:hover { box-shadow:var(--shadow-hover); border-color:#cbd8d3; }
.campaign-tab--active { border-color:#bad3cd; background:var(--accent-2); color:var(--accent); }
.mini-progress span,.campaign-progress-strip__bar span { background:var(--accent); }
.table-wrap { border-color:var(--border); box-shadow:none; }
th { color:#81908a; background:#f7f9f8; }
tbody tr:hover { background:#fafcfb; }

/* Responsive beta2 */
@media (max-width:1100px) {
  .workspace-focus-grid { grid-template-columns:1fr 1fr; }
  .workspace-focus-grid .insight-card:first-child { grid-column:1/-1; }
  .employee-result-hero { grid-template-columns:1fr; }
  .employee-result-hero__details { padding:16px; }
  .agreement-grid { grid-template-columns:1fr; }
}
@media (max-width:820px) {
  .app-shell { grid-template-columns:1fr; }
  .sidebar { position:sticky; top:0; z-index:40; height:auto; min-height:56px; flex-direction:row; align-items:center; padding:8px 12px; border-right:0; border-bottom:1px solid var(--border); background:rgba(250,252,251,.96); backdrop-filter:blur(12px); }
  .brand { padding:0 6px 0 0; }
  .brand div:last-child,.sidebar__footer { display:none; }
  .nav { flex:1; display:flex; overflow-x:auto; gap:4px; scrollbar-width:none; }
  .nav::-webkit-scrollbar { display:none; }
  .nav-group { display:contents; }
  .nav-group__label { display:none; }
  .nav-group__items { display:contents; }
  .nav-item { flex:none; gap:6px; padding:9px 10px; }
  .nav-item span { display:inline; font-size:11px; }
  .nav-item[aria-current="page"] { box-shadow:inset 0 -3px 0 var(--accent); }
  .topbar { display:none; }
  .content,.content--employee { padding:26px 18px 54px; }
  .workspace-team-picker { margin:0 0 18px; justify-content:flex-start; }
  .workspace-hero { grid-template-columns:1fr; padding:22px; }
  .workspace-hero__progress { padding-left:0; border-left:0; border-top:1px solid var(--border); padding-top:18px; }
  .workspace-focus-grid { grid-template-columns:1fr; }
  .workspace-focus-grid .insight-card:first-child { grid-column:auto; }
  .summary-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .employee-result-insights { grid-template-columns:1fr; }
  .one-to-one-card > .card__body { grid-template-columns:1fr; }
  .one-to-one-card .plan-editor { grid-column:auto; }
  .history-card { grid-template-columns:1fr; gap:8px; }
  .report-cta .card__body { align-items:flex-start; flex-direction:column; }
  .notification-popover { position:fixed; top:74px; right:14px; }
}
@media (max-width:520px) {
  .content,.content--employee { padding:22px 12px 44px; }
  .page-header { align-items:flex-start; }
  .page-header h1 { font-size:27px; }
  .page-header__actions { width:100%; }
  .employee-result-hero { padding:20px 16px; }
  .employee-result-hero__copy h2 { font-size:23px; }
  .summary-metric-grid,.summary-metric-grid--compact { grid-template-columns:1fr; }
  .workspace-hero__actions { width:100%; }
  .workspace-hero__actions .btn { flex:1; }
  .workspace-focus-grid .insight-card { min-height:126px; }
  .comparison-strip--3 { grid-template-columns:1fr 1fr; }
  .comparison-strip--3 > :first-child { grid-column:1/-1; }
  .one-to-one-zone { padding:13px; }
  .one-to-one-zone__head,.sharing-state { align-items:flex-start; flex-direction:column; }
  .sharing-state .btn { width:100%; }
  .notification-center { width:100%; }
  .notification-trigger { width:100%; }
}

/* AI assistant: advisory presentation layer. */
.ai-assistant-section { margin-top: 28px; }
.ai-assistant-section .section-title { align-items: center; }
.ai-insight { margin-top: 12px; border-color: #dfe3ff; background: linear-gradient(180deg, #fff 0%, #fbfbff 100%); }
.ai-insight .eyebrow { display:flex; align-items:center; gap:6px; }
.ai-insight__summary { margin: 0 0 18px; white-space: pre-line; font-size: 15px; line-height: 1.7; color: var(--text); }
.ai-insight__block { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--border); }
.ai-insight__block > strong { font-size: 13px; }
.ai-insight__list { margin: 9px 0 0; padding-left: 20px; color: var(--text-2); font-size: 13px; line-height: 1.6; }
.ai-insight__list li + li { margin-top: 5px; }
.ai-evidence { margin-top: 16px; border-top: 1px solid var(--border); padding-top: 14px; }
.ai-evidence summary { cursor:pointer; color: var(--text-2); font-size: 12px; font-weight: 700; }
.ai-evidence p { margin: 10px 0 0; font-size: 12px; color: var(--text-2); line-height: 1.5; }
.ai-disclaimer { margin-top: 18px; padding: 13px 15px; border-radius: 12px; background: var(--warning-bg); color: #6f470d; font-size: 12px; }
.ai-disclaimer .ai-insight__list { color: inherit; }
.ai-insight__meta { margin-top: 16px; color: var(--text-3); font-size: 10px; }
@media (max-width: 820px) {
  .ai-assistant-section .section-title { align-items:flex-start; flex-direction:column; }
  .ai-assistant-section .section-title .btn { width:100%; }
}

/* v0.15 alpha2: persistent/versioned AI insight history and 1-1 planning. */
.ai-insight__badges { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; align-items:center; }
.ai-insight__block--tensions { border-top:0; background:var(--warning-bg); border-radius:12px; padding:12px 14px; }
.ai-insight__actions { margin-top:18px; display:flex; gap:10px; flex-wrap:wrap; align-items:flex-start; }
.ai-history-list { display:grid; gap:12px; }
.ai-history-item { margin:0; overflow:hidden; }
.ai-history-item > summary { cursor:pointer; list-style:none; display:flex; gap:14px; justify-content:space-between; align-items:center; padding:14px 16px; font-size:13px; font-weight:700; color:var(--text); }
.ai-history-item > summary::-webkit-details-marker { display:none; }
.ai-history-item > summary::after { content:'⌄'; color:var(--text-3); font-size:16px; transition:transform .15s ease; }
.ai-history-item[open] > summary::after { transform:rotate(180deg); }
.ai-history-item > summary span:last-child { color:var(--text-3); font-size:11px; font-weight:600; margin-left:auto; }
.ai-empty { margin-top:12px; padding:16px; border:1px dashed var(--border); border-radius:12px; color:var(--text-2); background:var(--surface-2); }
.ai-schedule { width:100%; margin-top:14px; padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
.ai-schedule > summary { cursor:pointer; font-size:13px; font-weight:700; color:var(--text); }
.ai-schedule__form { margin-top:12px; display:grid; gap:12px; }
.ai-question-select { display:grid; gap:8px; }
.ai-question-option { display:flex; gap:9px; align-items:flex-start; padding:9px 10px; border:1px solid var(--border); border-radius:10px; background:var(--surface-2); font-size:12px; line-height:1.45; }
.ai-question-option input { margin-top:2px; flex:0 0 auto; }
.ai-linked-state { margin-top:12px; padding:10px 12px; border-radius:10px; background:var(--success-bg); color:var(--success-text); font-size:12px; font-weight:700; }
@media (max-width: 820px) {
  .ai-insight__badges { justify-content:flex-start; }
  .ai-history-item > summary { align-items:flex-start; flex-direction:column; }
  .ai-history-item > summary span:last-child { margin-left:0; }
  .ai-insight__actions .btn { width:100%; }
}

/* v0.15.0-alpha4 — AI Action Planner */
.ai-action-planner-launch{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.ai-action-planner-launch span{color:var(--text-secondary);font-size:12px;max-width:620px}
.ai-action-planner{margin-top:14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-subtle)}
.ai-action-planner>summary{cursor:pointer;padding:14px 16px;font-weight:650}
.ai-action-planner__body{padding:0 16px 16px}
.ai-action-proposals{display:grid;gap:12px;margin:14px 0}
.ai-action-proposal{position:relative;padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}
.ai-action-proposal__select{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:650;color:var(--text-secondary)}
.ai-action-proposal .field{margin-top:10px}
.ai-action-proposal textarea{min-height:70px}
.ai-action-proposal__meta{display:grid;gap:6px;margin-top:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text-secondary);font-size:12px;line-height:1.45}
.team-actions-section{margin:24px 0}
.team-action-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.team-action__head{display:flex;align-items:flex-start;gap:10px}
.team-action__head>div{display:grid;gap:4px}
.team-action__head small{color:var(--text-secondary)}
.team-action p{margin:12px 0 0;color:var(--text-secondary);line-height:1.55}
.team-action__success{display:grid;gap:4px;margin-top:12px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-subtle)}
.team-action__success span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}
.team-action--done{opacity:.72}
.action-row>div{display:grid;gap:3px}
.action-row>div>span{font-size:12px;color:var(--text-secondary);line-height:1.4}
@media (max-width:820px){.team-action-list{grid-template-columns:1fr}.ai-action-proposal{padding:14px}}
.ai-insight__feedback{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border, #e6e8eb);font-size:.875rem}


/* v0.15.0-rc5 — Information architecture & AI surface consolidation */
.content { width:min(100%, 1480px); }
.page-header__actions { align-items:flex-start; }
.action-menu { position:relative; }
.action-menu > summary { list-style:none; }
.action-menu > summary::-webkit-details-marker { display:none; }
.action-menu__popover { position:absolute; right:0; top:44px; z-index:35; display:grid; min-width:190px; padding:6px; border:1px solid var(--border); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-hover); }
.action-menu__item { width:100%; padding:9px 10px; border:0; border-radius:8px; background:transparent; color:var(--text); text-align:left; font-size:13px; }
.action-menu__item:hover { background:var(--surface-2); }

.ai-center { margin-top:28px; padding:20px; border:1px solid var(--border); border-radius:var(--radius-lg); background:linear-gradient(180deg,#fbfcfb,#f6f9f8); }
.ai-center__head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:14px; }
.ai-center__head .eyebrow { display:flex; align-items:center; gap:6px; }
.ai-center__head h2 { margin:5px 0 3px; font-size:19px; }
.ai-center__head p { margin:0; max-width:760px; color:var(--text-2); font-size:12px; line-height:1.55; }
.ai-center__tools { display:grid; gap:9px; }
.ai-center__technical { margin:12px 2px 0; }
.ai-center__technical > div { max-width:760px; color:var(--text-2); font-size:12px; line-height:1.55; }

.ai-tool { overflow:hidden; border:1px solid var(--border); border-radius:14px; background:var(--surface); box-shadow:none; }
.ai-tool > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 16px; cursor:pointer; list-style:none; }
.ai-tool > summary::-webkit-details-marker { display:none; }
.ai-tool > summary::after { content:'⌄'; margin-left:auto; color:var(--text-3); font-size:16px; transition:transform .15s ease; }
.ai-tool[open] > summary::after { transform:rotate(180deg); }
.ai-tool > summary > .badge { order:2; }
.ai-tool__summary { display:flex; align-items:flex-start; gap:10px; min-width:0; }
.ai-tool__icon { width:30px; height:30px; flex:none; display:grid; place-items:center; border-radius:9px; background:var(--accent-2); color:var(--accent); }
.ai-tool__summary strong { display:block; font-size:14px; }
.ai-tool__summary span { display:block; margin-top:2px; color:var(--text-2); font-size:11px; line-height:1.45; }
.ai-tool__body { padding:0 16px 16px; }
.ai-tool .ai-insight, .ai-tool .ai-empty { margin-top:0; }

.ai-insight { border-color:var(--border); background:var(--surface); box-shadow:none; }
.ai-insight .card__head { padding-bottom:8px; }
.ai-insight__summary { margin-bottom:12px; font-size:14px; line-height:1.6; }
.ai-insight__highlights { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:12px 0 0; }
.ai-insight__highlights > div { padding:12px 13px; border-radius:11px; background:var(--surface-2); min-width:0; }
.ai-insight__highlights > div > span { display:block; margin-bottom:5px; color:var(--text-3); font-size:10px; font-weight:760; text-transform:uppercase; letter-spacing:.06em; }
.ai-insight__highlights p { margin:0; color:var(--text-2); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.ai-insight__highlights .ai-insight__list { margin-top:0; padding-left:17px; font-size:12px; }
.ai-insight__details { margin-top:12px; border-top:1px solid var(--border); }
.ai-insight__details > summary, .ai-insight__technical > summary { padding-top:11px; cursor:pointer; color:var(--text-2); font-size:11px; font-weight:700; }
.ai-insight__details-body { padding-top:2px; }
.ai-insight__technical { margin-top:9px; color:var(--text-3); font-size:10px; line-height:1.5; }
.ai-insight__technical > div { padding-top:7px; overflow-wrap:anywhere; }
.ai-insight__actions { margin-top:14px; }
.ai-insight__feedback { margin-top:12px; }
.ai-history-item { margin-top:10px; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
.ai-history-item > summary { padding:11px 13px; }
.ai-history-item .ai-history-list { padding:0 10px 10px; }
.ai-empty { padding:13px 14px; }
.ai-empty p { margin:0 0 10px; }

/* Prevent content added by AI features from breaking card/grid geometry. */
.card, .metric-card, .ai-tool, .ai-insight, .page-header__main { min-width:0; }
.card p, .card li, .ai-tool p, .ai-tool li, .ai-tool strong { overflow-wrap:anywhere; }
.ai-action-planner, .ai-schedule { max-width:100%; }
.ai-action-proposals { grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); }

@media (max-width:820px) {
  .ai-center { padding:15px; border-radius:16px; }
  .ai-center__head { flex-direction:column; }
  .ai-tool > summary { align-items:flex-start; }
  .ai-insight__highlights { grid-template-columns:1fr; }
  .action-menu { width:auto; }
  .action-menu__popover { right:auto; left:0; }
}
@media (max-width:520px) {
  .page-header__actions > .btn, .page-header__actions > .action-menu { flex:1 1 auto; }
  .page-header__actions > .action-menu > summary { width:100%; }
  .ai-tool > summary { padding:12px; gap:9px; }
  .ai-tool__body { padding:0 12px 12px; }
}

/* rc6: progressive disclosure and calmer content hierarchy */
.secondary-zone { margin-top:30px; }
.secondary-zone > .section-title { margin-top:0; }
.secondary-disclosure { margin-top:10px; overflow:hidden; border:1px solid var(--border); border-radius:14px; background:var(--surface); box-shadow:none; }
.secondary-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 17px; cursor:pointer; list-style:none; color:var(--text); font-weight:700; }
.secondary-disclosure > summary::-webkit-details-marker { display:none; }
.secondary-disclosure > summary::after { content:'⌄'; color:var(--text-3); font-size:16px; transition:transform .15s ease; }
.secondary-disclosure[open] > summary::after { transform:rotate(180deg); }
.secondary-disclosure[open] > summary { border-bottom:1px solid var(--border); background:#fafbfa; }
.secondary-disclosure__body { padding:18px; }
.secondary-disclosure__body > .section-title:first-child { margin-top:2px; }
.secondary-disclosure .one-to-one-card + .one-to-one-card { margin-top:12px; }

/* AI is available, but no longer competes with primary page content. */
.ai-center { background:#f8faf9; }
.ai-center__head { margin-bottom:10px; }
.ai-center__technical { opacity:.9; }
.ai-tool__body > .ai-insight { margin-bottom:0; }
.ai-insight__feedback { color:var(--text-3); }

/* Dense operational actions collapse into menus instead of wrapping into button walls. */
.workspace-hero__actions .action-menu { display:inline-block; }
.campaign-section-head .action-menu, .toolbar .action-menu { flex:none; }
.action-menu__popover { max-width:min(280px,calc(100vw - 24px)); }

@media (max-width:820px) {
  .secondary-disclosure__body { padding:14px; }
  .workspace-hero__actions .action-menu { flex:1 1 auto; }
  .workspace-hero__actions .action-menu > summary { width:100%; }
}
@media (max-width:520px) {
  .secondary-disclosure > summary { padding:13px 14px; }
  .secondary-disclosure__body { padding:12px; }
  .secondary-disclosure .table-wrap { margin-left:-12px; margin-right:-12px; border-left:0; border-right:0; border-radius:0; }
}

/* rc7 — visual stabilization after real-browser UX review */

/* Menus: never clip inside cards, never stack over each other unintentionally. */
.action-menu { isolation:isolate; }
.action-menu[open] { z-index:120; }
.action-menu__popover { top:calc(100% + 8px); z-index:121; min-width:220px; box-shadow:0 18px 42px rgba(24,42,36,.16); }
.workspace-hero { overflow:visible; position:relative; z-index:3; }
.page-header { position:relative; z-index:8; }
.page-header__actions { position:relative; }

/* Human-readable attention badges instead of raw technical priority strings. */
.priority-pill { display:inline-flex; align-items:center; gap:7px; width:max-content; max-width:100%; padding:7px 10px; border-radius:999px; font-size:11px; font-weight:750; line-height:1; white-space:nowrap; }
.priority-pill__dot { width:8px; height:8px; flex:none; border-radius:50%; background:currentColor; box-shadow:0 0 0 3px rgba(255,255,255,.75); }
.priority-pill--success { color:#217a5b; background:#edf8f3; }
.priority-pill--warning { color:#9a6306; background:#fff5dd; }
.priority-pill--danger { color:#b4394e; background:#fff0f2; }
.priority-pill--neutral { color:var(--text-2); background:var(--surface-2); }

/* Workspace: the whole-team picture comes first; attention distribution is compact. */
.workspace-team-picture { margin-top:26px; }
.workspace-team-picture > .section-title { margin-top:0; }
.workspace-metric-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.workspace-picture-grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(260px,.7fr); gap:12px; margin-top:12px; align-items:start; }
.workspace-change-card .signal-list { margin-top:0; border-top:0; }
.workspace-priority-summary .card__body { padding-top:2px; }
.priority-summary-list { display:grid; gap:8px; }
.priority-summary-item { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:9px 0; border-bottom:1px solid var(--border); }
.priority-summary-item:last-child { border-bottom:0; }
.priority-summary-item strong { font-size:18px; font-variant-numeric:tabular-nums; }
.workspace-priority-note { margin:12px 0 0; color:var(--text-3); font-size:11px; line-height:1.5; }
.workspace-focus-grid { margin-top:20px; }
.workspace-action-section { margin-top:22px; }

/* AI: no raw evidence dumps, stable action layout, generated result can open in place. */
.ai-insight .card__head h3 { max-width:940px; font-size:18px; line-height:1.35; overflow-wrap:anywhere; }
.ai-insight__summary { max-width:980px; }
.ai-grounding-note { margin-top:14px; padding:10px 12px; border-left:3px solid #c9d9d3; border-radius:0 10px 10px 0; background:#f7faf9; color:var(--text-2); font-size:11px; line-height:1.5; }
.ai-insight__actions { display:grid; gap:12px; align-items:start; }
.ai-primary-actions { display:flex; gap:8px; flex-wrap:wrap; }
.ai-action-planner-launch { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:0; padding:14px 0 0; border-top:1px solid var(--border); }
.ai-action-planner-launch > div { display:grid; gap:3px; min-width:0; }
.ai-action-planner-launch strong { font-size:12px; }
.ai-action-planner-launch span { display:block; color:var(--text-2); font-size:11px; line-height:1.45; }
.ai-action-planner { margin-top:0; border-radius:14px; background:#fafcfb; overflow:hidden; }
.ai-action-planner > summary { display:flex; justify-content:space-between; align-items:center; gap:12px; list-style:none; padding:13px 14px; }
.ai-action-planner > summary::-webkit-details-marker { display:none; }
.ai-action-planner__body { padding:0 14px 14px; }
.ai-action-planner__intro { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:12px 0; border-top:1px solid var(--border); }
.ai-action-planner__intro p { margin:0; max-width:760px; color:var(--text-2); font-size:12px; line-height:1.5; }
.ai-action-proposals { grid-template-columns:1fr; margin:8px 0 14px; }
.ai-action-proposal { padding:14px; border-radius:12px; }
.ai-action-proposal__head { display:flex; justify-content:space-between; gap:12px; align-items:center; color:var(--text-3); font-size:10px; }
.ai-action-proposal__select { margin:0; }
.ai-action-proposal__details { margin-top:10px; }
.ai-action-proposal__details > summary { cursor:pointer; color:var(--text-2); font-size:11px; font-weight:700; }
.ai-action-proposal__meta { margin-top:8px; }
.ai-action-proposal__due { max-width:220px; }
.ai-action-planner__footer { display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding-top:4px; }
.ai-action-planner__footer span { color:var(--text-3); font-size:10px; }

/* Team actions: a compact operational list rather than four large cards. */
.team-actions-section { margin:30px 0; }
.team-action-list { display:grid; grid-template-columns:1fr; gap:8px; }
.team-action { display:grid; grid-template-columns:32px minmax(0,1fr); gap:12px; align-items:start; padding:14px 16px; border:1px solid var(--border); border-radius:13px; background:var(--surface); box-shadow:none; }
.team-action:hover { border-color:var(--border-strong); background:#fcfdfc; }
.team-action .action-check { margin-top:1px; }
.team-action__content { min-width:0; }
.team-action__title { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
.team-action__title strong { font-size:13px; line-height:1.45; }
.team-action__title span { flex:none; color:var(--text-3); font-size:10px; }
.team-action__content > p { margin:5px 0 0; color:var(--text-2); font-size:12px; line-height:1.5; }
.team-action__criteria { margin-top:8px; }
.team-action__criteria > summary { cursor:pointer; color:var(--text-2); font-size:10px; font-weight:700; }
.team-action__criteria p { margin:6px 0 0; padding:9px 10px; border-radius:9px; background:var(--surface-2); font-size:11px; }
.team-action--done { opacity:.7; }
.team-action--done .team-action__title strong { text-decoration:line-through; }
.action-check { display:grid; place-items:center; width:25px; height:25px; padding:0; border:1px solid #b9cbc4; background:#fff; }
.action-check[data-status="DONE"] { background:var(--success); border-color:var(--success); color:white; }

/* Campaign analytics: no overflow and no ultra-narrow metric cards. */
.campaign-overview-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr); gap:16px; align-items:stretch; }
.campaign-overview-grid--single { grid-template-columns:minmax(0,760px); }
.campaign-progress-card, .campaign-priority-card { min-width:0; }
.campaign-progress-card .progress-layout { grid-template-columns:170px minmax(0,1fr); gap:20px; }
.campaign-progress-card .progress-stats { grid-template-columns:repeat(3,minmax(90px,1fr)); }
.campaign-progress-card .progress-stat { min-width:0; }
.campaign-metric-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.campaign-metric-grid .metric-card { min-height:132px; display:flex; flex-direction:column; justify-content:space-between; }
.campaign-metric-grid .metric-card__top { min-height:0; }
.campaign-metric-grid .metric-card__top > span:first-child { max-width:85%; }
.attention-table .attention-col { width:150px; }
.attention-table td.attention-col { vertical-align:middle; }

/* Employee card: one coherent hero instead of cards inside a card. */
.employee-profile-hero { padding:26px 28px; border-color:#d9e4df; background:linear-gradient(145deg,#fbfdfc 0%,#fff 70%); }
.employee-profile-hero__top { padding-bottom:22px; border-bottom:1px solid var(--border); }
.employee-profile-hero__copy h2 { font-size:26px; line-height:1.2; }
.employee-profile-hero__copy .profile-explanation { max-width:900px; font-size:14px; line-height:1.6; }
.employee-metric-ribbon { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin-top:4px; }
.employee-metric-ribbon__item { min-width:0; padding:17px 18px 2px 0; }
.employee-metric-ribbon__item + .employee-metric-ribbon__item { padding-left:18px; border-left:1px solid var(--border); }
.employee-metric-ribbon__item span { display:block; min-height:34px; color:var(--text-2); font-size:11px; line-height:1.35; }
.employee-metric-ribbon__item strong { display:block; margin-top:7px; font-size:24px; font-variant-numeric:tabular-nums; }
.result-indicators-disclosure { margin-top:12px; }
.result-indicators-disclosure > summary > span:first-child, .employee-scale-details > summary > span:first-child { display:grid; gap:2px; }
.result-indicators-disclosure > summary small, .employee-scale-details > summary small { color:var(--text-3); font-size:10px; font-weight:500; }
.scale-score-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.scale-score-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; align-items:start; }
.scale-score-item > div { min-width:0; }
.scale-score-item b { margin-top:0; font-size:19px; font-variant-numeric:tabular-nums; }

/* Latest change card: clear summary first, individual signals second. */
.latest-change-card { margin-top:14px; }
.latest-change-card .card__head { align-items:flex-start; }
.latest-change-overview { display:grid; grid-template-columns:150px 150px minmax(0,1fr); gap:12px; align-items:stretch; }
.change-stat, .change-narrative { padding:14px; border-radius:12px; background:var(--surface-2); }
.change-stat { display:grid; align-content:center; }
.change-stat strong { font-size:28px; line-height:1; }
.change-stat span { margin-top:6px; color:var(--text-3); font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.change-stat--success strong { color:var(--success); }
.change-stat--danger strong { color:var(--danger); }
.change-narrative span { color:var(--text-3); font-size:9px; font-weight:750; text-transform:uppercase; letter-spacing:.05em; }
.change-narrative p { margin:6px 0 0; color:var(--text-2); font-size:12px; line-height:1.5; }
.latest-change-list .signal-list { margin-top:12px; }
.latest-change-list .signal-row { grid-template-columns:minmax(0,1fr) auto; }

/* 1-1 actions: make tasks scannable and keep criteria secondary. */
.one-to-one-actions { padding-top:16px; }
.action-list { gap:8px; }
.action-row { grid-template-columns:30px minmax(0,1fr); gap:10px; align-items:start; padding:11px 0; border-radius:0; border-bottom:1px solid rgba(207,223,216,.78); }
.action-row:last-child { border-bottom:0; }
.action-row:hover { background:transparent; }
.action-row__content { min-width:0; }
.action-row__title { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.action-row__title strong { font-size:12px; line-height:1.45; }
.action-row__content > p { margin:4px 0 0; color:var(--text-2); font-size:11px; line-height:1.5; }
.action-row__meta { display:flex; gap:10px; align-items:flex-start; flex-wrap:wrap; margin-top:6px; color:var(--text-3); font-size:9px; }
.action-row__meta > details > summary { cursor:pointer; color:var(--text-2); font-weight:700; }
.action-row__meta > details p { max-width:520px; margin:5px 0 0; color:var(--text-2); font-size:10px; line-height:1.45; }
.inline-action-form { margin-top:14px; padding-top:12px; border-top:1px dashed var(--border); }

@media (max-width:1100px) {
  .workspace-metric-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .workspace-picture-grid { grid-template-columns:1fr; }
  .campaign-overview-grid { grid-template-columns:1fr; }
  .campaign-progress-card .progress-layout { grid-template-columns:150px minmax(0,1fr); }
  .employee-metric-ribbon { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .employee-metric-ribbon__item:nth-child(4) { padding-left:0; border-left:0; border-top:1px solid var(--border); }
  .employee-metric-ribbon__item:nth-child(5) { border-top:1px solid var(--border); }
}
@media (max-width:820px) {
  .workspace-metric-grid, .campaign-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .campaign-progress-card .progress-layout { grid-template-columns:1fr; }
  .campaign-progress-card .progress-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .employee-metric-ribbon { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .employee-metric-ribbon__item { border-top:1px solid var(--border); }
  .employee-metric-ribbon__item:nth-child(odd) { padding-left:0; border-left:0; }
  .latest-change-overview { grid-template-columns:1fr 1fr; }
  .change-narrative { grid-column:1/-1; }
  .scale-score-grid { grid-template-columns:1fr; }
  .ai-action-planner__intro, .ai-action-planner-launch { align-items:stretch; flex-direction:column; }
  .ai-action-planner-launch .btn { width:100%; }
}
@media (max-width:520px) {
  .workspace-metric-grid, .campaign-metric-grid, .employee-metric-ribbon { grid-template-columns:1fr; }
  .employee-metric-ribbon__item, .employee-metric-ribbon__item + .employee-metric-ribbon__item { padding:13px 0; border-left:0; border-top:1px solid var(--border); }
  .employee-metric-ribbon__item:first-child { border-top:0; }
  .campaign-progress-card .progress-stats { grid-template-columns:1fr; }
  .latest-change-overview { grid-template-columns:1fr; }
  .change-narrative { grid-column:auto; }
  .team-action__title { flex-direction:column; gap:4px; }
}

/* rc8: runtime AI administration + editable materialized actions. */
.ai-master-switch {
  margin:0 0 20px;
  padding:16px 18px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface-2);
}
.ai-master-switch span { display:grid; gap:3px; }
.ai-master-switch small { color:var(--text-3); font-weight:500; line-height:1.4; }
.ai-use-case-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:10px; }
.check-card { display:flex; gap:10px; align-items:flex-start; min-width:0; padding:13px 14px; border:1px solid var(--border); border-radius:12px; background:var(--surface); cursor:pointer; }
.check-card:hover { border-color:var(--border-strong); background:var(--surface-2); }
.check-card input { margin-top:3px; accent-color:var(--accent); }
.check-card span { display:grid; min-width:0; gap:3px; }
.check-card strong { font-size:12px; line-height:1.4; }
.check-card small { overflow-wrap:anywhere; color:var(--text-3); font-size:9px; line-height:1.35; }
.ai-fallback-settings { margin:18px 0; }
.action-editor { width:100%; margin-top:8px; padding-top:2px; }
.action-editor > summary { width:max-content; max-width:100%; cursor:pointer; color:var(--accent); font-size:10px; font-weight:750; list-style:none; }
.action-editor > summary::-webkit-details-marker { display:none; }
.action-editor > summary::before { content:'✎'; margin-right:5px; }
.action-editor[open] > summary { margin-bottom:10px; }
.action-editor form { padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--surface-2); }
.action-editor .field-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
.action-editor textarea { resize:vertical; }
.action-success-preview { overflow:hidden; max-width:520px; text-overflow:ellipsis; white-space:nowrap; }
.team-action__editor { margin-top:10px; }

@media (max-width:820px) {
  .ai-use-case-grid { grid-template-columns:1fr; }
  .action-editor .field-row { grid-template-columns:1fr; }
  .action-success-preview { max-width:100%; white-space:normal; }
}

/* beta2-hotfix3: employee dynamics, inline 1-1 editing and compact attention layout. */
.latest-change-items { display:grid; gap:8px; margin-top:14px; }
.latest-change-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:center; padding:12px 14px; border:1px solid var(--border); border-radius:12px; background:#fff; }
.latest-change-item--danger { border-left:4px solid var(--danger); }
.latest-change-item--success { border-left:4px solid var(--success); }
.latest-change-item__main { display:flex; align-items:center; gap:10px; min-width:0; flex-wrap:wrap; }
.latest-change-item__main strong { min-width:0; overflow-wrap:anywhere; font-size:12px; line-height:1.4; }
.latest-change-direction { padding:4px 8px; border-radius:999px; font-size:9px; font-weight:750; white-space:nowrap; }
.latest-change-direction--danger { color:var(--danger); background:var(--danger-bg); }
.latest-change-direction--success { color:var(--success); background:var(--success-bg); }
.latest-change-item__values { display:grid; grid-template-columns:auto auto auto auto; gap:8px; align-items:center; white-space:nowrap; font-variant-numeric:tabular-nums; color:var(--text-2); }
.latest-change-item__values strong { min-width:52px; text-align:right; color:var(--text-1); }
.latest-change-item--danger .latest-change-item__values strong { color:var(--danger); }
.latest-change-item--success .latest-change-item__values strong { color:var(--success); }

.plan-edit-form--inline { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; min-width:0; }
.one-to-one-inline-toolbar { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:10px; align-items:end; padding:12px 14px; border:1px solid var(--border); border-radius:12px; background:var(--surface-2); }
.one-to-one-inline-toolbar label { display:grid; gap:5px; min-width:180px; color:var(--text-3); font-size:9px; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
.one-to-one-inline-toolbar select,.one-to-one-inline-toolbar input { width:100%; min-height:38px; border:1px solid var(--border); border-radius:9px; background:#fff; padding:8px 10px; color:var(--text-1); font:inherit; text-transform:none; letter-spacing:normal; }
.one-to-one-inline-toolbar .btn { margin-left:auto; }
.one-to-one-notes--editable { display:grid; gap:10px; }
.inline-edit-note { min-width:0; padding:11px 12px; border:1px solid rgba(207,223,216,.85); border-radius:11px; background:rgba(255,255,255,.78); }
.inline-edit-note__head { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:7px; }
.inline-edit-note__head label { color:var(--text-3); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.inline-edit-note textarea { width:100%; min-height:58px; resize:vertical; overflow:auto; border:0; outline:0; padding:0; background:transparent; color:var(--text-1); font:inherit; font-size:11px; line-height:1.5; }
.inline-edit-note textarea.is-expanded { min-height:180px; }
.one-to-one-actions { grid-column:1/-1; min-width:0; overflow:hidden; }
.one-to-one-action-list,.one-to-one-action-list .action-row,.one-to-one-action-list .action-row__content { min-width:0; max-width:100%; }
.one-to-one-action-list .action-row__content,.one-to-one-action-list .action-row__content p,.one-to-one-action-list .action-success-preview { overflow-wrap:anywhere; word-break:break-word; }
.one-to-one-action-list .action-editor { max-width:100%; }
.ai-action-planner-launch--blocked { opacity:.88; }
.ai-action-planner-launch--blocked .btn[disabled] { cursor:not-allowed; opacity:.6; }
.metric-card--empty { opacity:.7; }
.workspace-priority-summary { align-self:start; height:max-content; min-height:0; }
.workspace-priority-summary .card__body { min-height:0; }
[data-team-ai-center] { margin-top:14px; }

@media (max-width:820px) {
  .latest-change-item { grid-template-columns:1fr; gap:8px; }
  .latest-change-item__values { justify-content:start; }
  .plan-edit-form--inline { grid-template-columns:1fr; }
  .one-to-one-inline-toolbar { align-items:stretch; }
  .one-to-one-inline-toolbar label { min-width:0; flex:1 1 180px; }
  .one-to-one-inline-toolbar .btn { margin-left:0; width:100%; }
}
.workspace-picture-grid > .card { align-self:start; height:auto; min-height:0; }

/* beta2-hotfix4: employee portal and 1-1 visual stabilization. */
.workspace-picture-grid .metric-card,
.workspace-picture-grid .summary-metric-grid .metric-card { min-height:156px; display:grid; grid-template-rows:auto 1fr; align-content:start; }
.workspace-picture-grid .metric-card__top { min-height:66px; align-items:flex-start; }
.workspace-picture-grid .metric-card__top > span:first-child { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.workspace-picture-grid .metric-card__value { align-self:end; }

.secondary-disclosure > summary { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; justify-content:initial; }
.secondary-disclosure > summary::after { grid-column:3; }
.secondary-disclosure > summary > .badge { grid-column:2; justify-self:end; }
.secondary-disclosure > summary > span:first-child { min-width:0; }

.sidebar__footer { display:grid; grid-template-columns:1fr; gap:8px; align-items:start; }
.sidebar-logout { width:max-content; min-height:32px; padding:2px 0 !important; border:0 !important; background:transparent !important; border-radius:0; justify-content:flex-start; box-shadow:none !important; }
.sidebar-logout:hover { color:var(--accent); background:transparent !important; }
.sidebar__footer > small { display:block; }

.app-shell--employee .content { padding-top:30px; }
.app-shell--employee .page-header { margin-bottom:20px; }
.app-shell--employee .card { box-shadow:none; }
.app-shell--employee .secondary-zone,
.app-shell--employee .employee-dynamics,
.app-shell--employee .ai-center { margin-top:22px; }
.app-shell--employee .section-title { margin-top:22px; }
.employee-result-hero { gap:20px; padding:24px; }
.employee-result-insights { margin-top:18px; }
.employee-report-actions { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }

.employee-scale-details { margin-top:16px; padding-top:0; border-top:0; }
.employee-scale-details__body { display:grid; gap:18px; padding-top:16px; }
.employee-scale-group { min-width:0; }
.employee-scale-group h3 { margin:0 0 8px; font-size:13px; }
.employee-scale-list { border:1px solid var(--border); border-radius:12px; overflow:hidden; background:#fff; }
.employee-scale-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:center; padding:11px 13px; border-top:1px solid var(--border); }
.employee-scale-row:first-child { border-top:0; }
.employee-scale-row > div { min-width:0; display:grid; gap:2px; }
.employee-scale-row strong { font-size:12px; line-height:1.4; }
.employee-scale-row span { color:var(--text-3); font-size:10px; line-height:1.4; }
.employee-scale-row b { min-width:54px; text-align:right; font-size:17px; font-variant-numeric:tabular-nums; }

.ai-action-planner > summary > span:first-child { min-width:0; display:grid; gap:2px; }
.ai-action-planner > summary strong { font-size:13px; }
.ai-action-planner > summary small { color:var(--text-3); font-size:10px; font-weight:500; line-height:1.4; }
.ai-action-planner > summary .badge { flex:none; }

.plan-edit-form--inline { grid-template-columns:1fr; }
.one-to-one-inline-toolbar { display:grid; grid-template-columns:minmax(160px,.55fr) minmax(220px,.75fr) auto; align-items:end; }
.one-to-one-inline-toolbar .btn { margin:0; align-self:end; }
.one-to-one-zone { min-width:0; }
.one-to-one-notes,
.one-to-one-notes--editable { grid-template-columns:1fr !important; align-items:start; }
.inline-edit-note { align-self:start; }
.inline-edit-note__head .btn { min-height:28px; padding:3px 7px; font-size:10px; }
.inline-edit-note textarea { display:block; min-height:96px; max-height:55vh; resize:vertical; }
.inline-edit-note textarea.is-expanded { min-height:320px; max-height:70vh; }
.one-to-one-actions { margin-top:4px; }
.one-to-one-actions__head { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.one-to-one-action-list .action-row { grid-template-columns:32px minmax(0,1fr); }
.one-to-one-action-list .action-editor { margin-top:8px; }
.inline-action-form { max-width:100%; }

@media (max-width:820px) {
  .workspace-picture-grid .metric-card { min-height:0; }
  .secondary-disclosure > summary { grid-template-columns:minmax(0,1fr) auto auto; }
  .employee-result-hero { padding:18px; gap:16px; }
  .one-to-one-inline-toolbar { grid-template-columns:1fr; }
  .one-to-one-inline-toolbar .btn { width:100%; }
  .employee-scale-row { gap:10px; }
}

/* v0.16.0-beta3-hotfix2 — team longitudinal presentation */
.workspace-team-longitudinal { margin-top:32px; display:grid; gap:16px; }
.workspace-team-longitudinal > .section-title { margin:0 0 2px; }
.workspace-team-longitudinal > .section-title h2 { font-size:24px; letter-spacing:-.025em; }
.workspace-team-longitudinal > .section-title p { max-width:920px; margin-top:7px; font-size:13px; line-height:1.55; }
.team-longitudinal-overview { overflow:hidden; }
.team-longitudinal-overview > .card__body { padding-top:22px; }
.team-trajectory-intro { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; margin-bottom:18px; }
.team-trajectory-intro > div:first-child { min-width:0; }
.team-trajectory-intro strong { display:block; margin-top:5px; font-size:18px; line-height:1.35; }
.team-trajectory-intro p { max-width:780px; margin:7px 0 0; color:var(--text-2); font-size:12px; line-height:1.55; }
.team-trajectory-note { flex:none; padding:7px 10px; border-radius:999px; background:var(--surface-2); color:var(--text-2); font-size:11px; font-weight:700; white-space:nowrap; }
.team-trajectory-table { overflow:auto; border:1px solid var(--border); border-radius:14px; background:var(--surface); }
.team-trajectory-head,
.team-trajectory-row { display:grid; grid-template-columns:minmax(210px,1.35fr) repeat(var(--trajectory-points,3),minmax(112px,.8fr)) minmax(110px,.7fr); min-width:760px; }
.team-trajectory-head { position:sticky; top:0; z-index:1; background:#f7f9fb; color:var(--text-3); font-size:10px; text-transform:uppercase; letter-spacing:.055em; }
.team-trajectory-head > *,
.team-trajectory-row > * { min-width:0; padding:12px 14px; border-right:1px solid var(--border); }
.team-trajectory-head > *:last-child,
.team-trajectory-row > *:last-child { border-right:0; }
.team-trajectory-row { border-top:1px solid var(--border); align-items:stretch; }
.team-trajectory-row > strong { display:flex; align-items:center; color:var(--text); font-size:13px; line-height:1.35; }
.team-trajectory-value,
.team-trajectory-net { display:flex; align-items:baseline; justify-content:space-between; gap:8px; font-variant-numeric:tabular-nums; }
.team-trajectory-value b,
.team-trajectory-net b { font-size:16px; line-height:1; }
.team-trajectory-value small,
.team-trajectory-net small { color:var(--text-3); font-size:10px; white-space:nowrap; }
.team-trajectory-value small[data-tone='success'],
.team-trajectory-net[data-tone='success'] b { color:var(--success); }
.team-trajectory-value small[data-tone='danger'],
.team-trajectory-net[data-tone='danger'] b { color:var(--danger); }
.team-trajectory-value small[data-tone='neutral'],
.team-trajectory-net[data-tone='neutral'] b { color:var(--text-2); }
.team-trajectory-net { flex-direction:column; justify-content:center; align-items:flex-start; gap:4px; background:#fbfcfd; }
.team-latest-interval { margin-top:18px; padding-top:18px; border-top:1px solid var(--border); }
.team-latest-interval__head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:10px; }
.team-latest-interval__head h3 { margin:4px 0 0; font-size:15px; }
.team-latest-interval__head > small { max-width:340px; color:var(--text-3); font-size:10px; line-height:1.4; text-align:right; }
.team-trajectory-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.team-trajectory-summary > div { min-width:0; padding:12px 13px; border:1px solid var(--border); border-radius:12px; background:#fbfcfd; }
.team-trajectory-summary > div[data-tone='success'] { border-color:#cfe9de; background:var(--success-bg); }
.team-trajectory-summary > div[data-tone='danger'] { border-color:#f1cbd3; background:var(--danger-bg); }
.team-trajectory-summary > div[data-tone='warning'] { border-color:#f1dfb7; background:var(--warning-bg); }
.team-trajectory-summary span { display:block; color:var(--text-2); font-size:10px; line-height:1.35; }
.team-trajectory-summary strong { display:block; margin-top:4px; font-size:22px; line-height:1; font-variant-numeric:tabular-nums; }
.team-latest-interval .secondary-disclosure { margin-top:10px; }
.team-longitudinal-overview > .card__body > .secondary-disclosure { margin-top:12px; }
.team-indicator-trajectory { display:grid; gap:18px; }
.team-indicator-trajectory > section + section { padding-top:16px; border-top:1px solid var(--border); }
.team-indicator-trajectory h3 { margin:0 0 10px; font-size:14px; }
.team-indicator-trajectory-table { overflow:auto; border:1px solid var(--border); border-radius:12px; }
.team-indicator-trajectory-head,
.team-indicator-trajectory-row { display:grid; grid-template-columns:minmax(230px,1.45fr) repeat(var(--trajectory-points,3),minmax(100px,.75fr)); min-width:680px; }
.team-indicator-trajectory-head { background:var(--surface-2); color:var(--text-3); font-size:10px; text-transform:uppercase; letter-spacing:.045em; }
.team-indicator-trajectory-head > *,
.team-indicator-trajectory-row > * { padding:9px 11px; border-right:1px solid var(--border); }
.team-indicator-trajectory-head > *:last-child,
.team-indicator-trajectory-row > *:last-child { border-right:0; }
.team-indicator-trajectory-row { border-top:1px solid var(--border); align-items:center; }
.team-indicator-trajectory-row > span { color:var(--text-2); font-size:12px; line-height:1.35; }
.team-indicator-trajectory-row > b { font-size:12px; font-variant-numeric:tabular-nums; }
.team-longitudinal-comparison .card__body { padding-top:2px; }
.team-longitudinal-comparison .sdt-compare-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; gap:12px; align-items:end; }
.team-longitudinal-comparison .field { display:grid; gap:6px; min-width:0; }
.team-longitudinal-comparison .field > span { color:var(--text-2); font-size:11px; font-weight:700; }
.team-longitudinal-comparison [data-team-compare-output]:not(:empty) { margin-top:16px; padding-top:16px; border-top:1px solid var(--border); }
.team-longitudinal-ai { margin-top:0; }

@media (max-width: 820px) {
  .workspace-team-longitudinal > .section-title h2 { font-size:20px; }
  .team-trajectory-intro,
  .team-latest-interval__head { flex-direction:column; align-items:flex-start; }
  .team-latest-interval__head > small { text-align:left; }
  .team-trajectory-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .team-longitudinal-comparison .sdt-compare-controls { grid-template-columns:1fr; }
}

@media (max-width: 520px) {
  .team-longitudinal-overview > .card__body { padding:16px; }
  .team-trajectory-summary { grid-template-columns:1fr 1fr; }
}
