:root {
    --ink: #16344f;
    --muted: #607181;
    --line: #dce3e9;
    --canvas: #f3f6f8;
    --panel: #fff;
    --brand: #16344f;
    --brand-dark: #0d2538;
    --brand-soft: #e8eef3;
    --gold: #b8a254;
    --gold-dark: #6f622f;
    --gold-soft: #f4f0df;
    --warning: #8a7225;
    --border: var(--line);
    --green: var(--gold-dark);
    --shadow: 0 18px 48px rgba(22, 52, 79, .1);
}

body {
    background: radial-gradient(circle at 100% 0, rgba(22, 52, 79, .1), transparent 30rem), var(--canvas);
}

.brand-mark {
    width: auto;
    height: auto;
    min-width: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.brand-mark img {
    display: block;
    width: 38px;
    height: auto;
}

.panel {
    border-color: rgba(220, 227, 233, .96);
}

.eyebrow {
    color: var(--gold-dark);
}

.field input:focus,
.stacked-form input:focus,
.search-box:focus-within,
.dashboard-search:focus-within {
    box-shadow: 0 0 0 3px rgba(22, 52, 79, .14);
}

.button:focus-visible,
.course-item input:focus-visible + .course-check {
    outline-color: rgba(22, 52, 79, .3);
}

.notice-success {
    color: var(--gold-dark);
    background: var(--gold-soft);
    border-color: #ded3a7;
}

.status-icon.ok,
.result-success .result-symbol,
.format-example code,
.user-count-badge,
.assigned-badge {
    background: var(--gold-soft);
    color: var(--gold-dark);
}

.status-ok,
.user-result-row.is-success > span,
.assignment-add-count {
    color: var(--gold-dark) !important;
}

.step-label span {
    background: var(--gold-soft);
    color: var(--gold-dark);
}

.course-item:hover,
.assignment-cohort-item:hover,
.user-cohort-item:hover:not(.is-unavailable),
.user-review-row:hover:not(.has-error),
.user-result-row:hover:not(.is-error) {
    background: var(--gold-soft);
}

.assignment-result-summary div {
    background: var(--brand-soft);
}

.login-intro {
    background: linear-gradient(145deg, #0d2538, #16344f);
}

.login-intro .eyebrow,
.feature-list li::before {
    color: var(--gold);
    opacity: 1;
}

.login-intro p {
    color: #dbe4eb;
}

.password-input button {
    background: var(--brand-soft);
}

.user-step b {
    background: var(--brand-soft);
}

.dashboard-metric-icon {
    background: var(--gold-soft);
    color: var(--gold-dark);
}

.dashboard-chart-area {
    fill: rgba(184, 162, 84, .3);
}

.dashboard-chart-line {
    stroke: var(--gold);
}

.dashboard-chart-point {
    stroke: var(--gold);
}

.dashboard-chart-legend span {
    background: rgba(184, 162, 84, .55);
}

.dashboard-export {
    background: var(--gold-soft);
    color: var(--brand-dark);
}

.dashboard-export:hover {
    background: var(--gold);
    color: var(--brand-dark);
}

.dashboard-table tbody tr:hover {
    background: var(--gold-soft);
}

.dashboard-progress progress {
    width: 100%;
    height: 12px;
    appearance: none;
    -webkit-appearance: none;
    overflow: hidden;
    border: 0;
    border-radius: 999px;
    background: #e1e5e8;
    accent-color: var(--gold);
}

.dashboard-progress progress::-webkit-progress-bar {
    background: #e1e5e8;
    border-radius: 999px;
}

.dashboard-progress progress::-webkit-progress-value {
    background: var(--gold);
    border-radius: 999px;
}

.dashboard-progress progress::-moz-progress-bar {
    background: var(--gold);
    border-radius: 999px;
}

.dashboard-status.is-active {
    background: var(--gold-soft);
    color: var(--gold-dark);
}
