/* Main site palette follows the light mint-and-cream website guide. */
:root {
  --ink: #202b31;
  --muted: #5d6b71;
  --panel: #fff;
  --canvas: #f3f7f6;
  --line: #dce4e2;
  --amber: #dc9d37;
  --amber-dark: #a15b05;
  --blue: #126d69;
  --shadow: 0 12px 32px rgba(30, 70, 67, .07);
}

html, body { color: var(--ink); }
a { color: #09677b; }
input, select, textarea { border-color: #cfddda; color: var(--ink); }
input:focus, select:focus, textarea:focus {
  border-color: #4a9b91;
  box-shadow: 0 0 0 3px rgba(56, 139, 128, .14);
}
:is(button, a, input, select, textarea):focus-visible {
  outline: 3px solid #438f87;
  outline-offset: 2px;
}

/* Shared controls retain color for meaning, with one warm primary action. */
.btn { background: #e9f1ef; color: #285c59; }
.btn.primary { background: #dc9d37; color: #242a29; }
.btn.dark { background: #126d69; color: #fff; }
.btn.ghost { background: #fff; border-color: #d8e4e0; color: #285c59; }
.btn.danger { background: #fff0ed; color: #af443b; }
.icon-btn { border-color: #d8e4e0; color: #285c59; }
.icon-btn:hover, .help-top-link:hover { background: #edf6f3; }
.badge.amber { background: #fff2db; color: #955909; }
.badge.blue { background: #e5f4f1; color: #126d69; }
.badge.gray { background: #edf2f0; color: #5b6c6b; }
.toast { background: #286f69; }
.toast.error { background: #a9433b; }
.modal-shell { background: rgba(25, 48, 47, .45); }
.modal { box-shadow: 0 30px 80px rgba(28, 61, 57, .2); }
.avatar { background: #e8ad48; color: #27322f; }
.brand-mark {
  background: #fffaf1;
  border-color: #dc9d37;
  border-radius: 8px;
  color: #a15b05;
}
.eyebrow { color: #7d6b4d; }
.eyebrow.dark { color: #826125; }
.login-help-link { color: #09677b; }

/* Login is bright like the guide hero, not a dark splash screen. */
.login-view { background: #f3f7f6; }
.login-aside {
  color: #243139;
  background:
    radial-gradient(circle at 78% 33%, rgba(181, 216, 205, .44), transparent 33%),
    linear-gradient(126deg, #e3f2ed 0%, #f0f6ef 59%, #faf7e9 100%);
}
.login-aside:after {
  background: linear-gradient(115deg, transparent 62%, rgba(220, 157, 55, .16) 62.2%, transparent 62.7%);
}
.login-lead { color: #4f6867; }
.steel-lines { background: repeating-linear-gradient(90deg, #d49737 0 42px, transparent 42px 52px); }
.login-card { border-top-color: #dc9d37; }

/* White side navigation echoes the guide's white contents card. */
.sidebar {
  background: #fff;
  color: #25353a;
  border-right: 1px solid #dce7e3;
  box-shadow: 6px 0 24px rgba(30, 70, 67, .035);
}
.side-brand, .side-user { border-color: #dce7e3; }
.side-brand small, .side-user small { color: #697d7d; }
.side-user button { color: #53706e; }
.nav-item { color: #405b60; }
.nav-item:hover { background: #f0f7f4; color: #185f5e; }
.nav-item.active, .nav-item.active:hover {
  background: #e7f4ef;
  color: #145f5d;
  box-shadow: inset 4px 0 #d6942a;
}
.topbar { border-bottom-color: #dce7e3; }
.hero {
  color: #243139;
  background: linear-gradient(118deg, #e4f3ef 0%, #f1f7f0 63%, #faf7ec 100%);
  border: 1px solid #d4e8dd;
  box-shadow: 0 10px 26px rgba(36, 84, 72, .055);
}
.hero:after { border-color: rgba(92, 153, 132, .11); }
.hero p { color: #496769; }
.stat-card, .card, .question-card, .side-panel, .table-wrap { border-color: #dce7e3; }
.stat-card { border-top: 3px solid #c5e4d9; }
.stat-card strong { color: #215e5b; }
.action-card .big-icon { background: #e8f5f0; color: #126d69; }
.data-table th { background: #f1f7f4; color: #496b68; }
.data-table th, .data-table td { border-bottom-color: #e5edea; }
.option:hover { border-color: #8fbaab; }
.option.selected { background: #fff9ed; }
.option.selected .option-letter, .q-dot.current { color: #26302e; }
.analysis-box { background: #f6f9f6; }
.progress-bar { background: #e5eeea; }
.progress-bar span { background: #d99a33; }
.q-dot.done { background: #e9f5ef; border-color: #abd3c0; }
.tab.active { color: #126d69; }
.bottom-nav .nav-item.active { color: #126d69; }

/* Public survey uses the same soft hero and white header as the guide. */
.public-survey-body { background: #f3f7f6; }
.survey-public-header {
  background: #fff;
  color: #25353a;
  border-bottom: 1px solid #dce7e3;
}
.survey-public-brand small { color: #697d7d; }
.survey-header-actions > a { color: #09677b; }
.survey-public-hero {
  color: #243139;
  background: linear-gradient(125deg, #e4f3ef 0%, #f2f8f1 65%, #faf7eb 100%);
  border: 1px solid #d4e8dd;
  box-shadow: 0 10px 26px rgba(36, 84, 72, .055);
}
.survey-public-hero:after { border-color: rgba(92, 153, 132, .11); }
.survey-public-hero > p { color: #496769; }
.survey-deadline { border-color: #c6ddd3; color: #376560; }
.survey-progress, .survey-form-panel { border-color: #dce7e3; }
.survey-step-head > span, .survey-question-title > span {
  background: #e5f4f1;
  color: #126d69;
}
.survey-choice:hover { border-color: #8fbaab; background: #f4faf7; }
.survey-choice:has(input:checked) { border-color: #cf922e; background: #fff9ed; }
.choice-index, .choice-check { background: #eaf3ef; }
.survey-section-builder { background: #f5f9f7; }
.survey-stat-row > i { background: #e5eeea; }
.survey-stat-row > i > span { background: #46978c; }
.org-node { background: #f1f8f5; }

@media (max-width: 760px) {
  .login-view { background: #f3f7f6; }
  .sidebar { box-shadow: 20px 0 50px rgba(30, 70, 67, .17); }
  .bottom-nav .nav-item { color: #617875; }
  .bottom-nav .nav-item.active { color: #126d69; }
}
