/*
 * Noazmoon calm identity
 * Approved dusty pomegranate, soft plum, warm ivory and true gold identity.
 * Loaded last so every workspace shares one visual language without changing
 * application markup or interaction behavior.
 */
:root {
    color-scheme: light;
    --navy-950: #49354b;
    --navy-900: #49354b;
    --navy-800: #49354b;
    --blue-700: #893c54;
    --blue-600: #a34c65;
    --blue-100: #f1e3e7;
    --blue-50: #f1e3e7;
    --cyan-500: #d9b24c;
    --green-700: #2e6653;
    --green-100: #e2f0e9;
    --amber-700: #73531e;
    --amber-100: #fff1d7;
    --red-700: #a12237;
    --red-100: #fde2e4;
    --slate-950: #312331;
    --slate-700: #312331;
    --slate-600: #71636d;
    --slate-500: #71636d;
    --slate-300: #c9b7c0;
    --slate-200: #e5dce0;
    --slate-100: #f1e3e7;
    --surface: #fffdfa;
    --canvas: #faf7f4;
    --focus: #86631b;
    --institution-accent: #a34c65;
    --institution-soft: #f1e3e7;
    --institution-line: #e5dce0;
    --shadow: 0 14px 38px rgba(63, 36, 69, .09);
}

html,
body,
body.institution-ui {
    background: #faf7f4;
    color: #312331;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    background:
        radial-gradient(circle at 8% 4%, rgba(217, 178, 76, .11), transparent 28rem),
        radial-gradient(circle at 96% 88%, rgba(163, 76, 101, .07), transparent 34rem);
}

::selection { background: #f2cbd2; color: #35152d; }
input[type="checkbox"], input[type="radio"], progress { accent-color: #a34c65; }

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
    outline-color: #86631b !important;
}

/* Navigation and global chrome */
.sidebar,
body.institution-ui .sidebar {
    background: #49354b;
    color: #faf7f4;
    border-color: #49354b;
}

.sidebar .brand-row,
.sidebar .sidebar-foot,
.sidebar #nav-more { border-color: rgba(255, 244, 238, .14); }
.sidebar .brand-row strong { color: #fffaf5; }
.sidebar .brand-row span,
.sidebar .nav-group-label,
.sidebar .data-badge { color: #c9b7c0; }
.sidebar .brand-mark.small,
body.institution-ui .sidebar .brand-mark.small {
    color: #3b1f3f;
    background: #f4c86a;
    border-color: #f4c86a;
}
.sidebar .nav-item,
body.institution-ui .sidebar .nav-item { color: #f1e3e7; }
.sidebar .nav-item span,
body.institution-ui .sidebar .nav-item span { color: #c9b7c0; }
.sidebar .nav-item:hover,
body.institution-ui .sidebar .nav-item:hover {
    color: #fff;
    background: rgba(255, 248, 241, .1);
}
.sidebar .nav-item.active,
.sidebar .nav-item.active:hover,
body.institution-ui .sidebar .nav-item.active,
body.institution-ui .sidebar .nav-item.active:hover {
    color: #312331;
    background: #f1e3e7;
}
.sidebar .nav-item.active span,
body.institution-ui .sidebar .nav-item.active span { color: #a34c65; }
.sidebar .nav-item b,
.sidebar .nav-item.active b { background: rgba(217, 178, 76, .2); color: inherit; }
.sidebar .btn-ghost,
body.institution-ui .sidebar-foot #logout { color: #f2e5ee; border-color: rgba(255,255,255,.16); }

.topbar,
body.institution-ui .topbar {
    background: rgba(255, 253, 250, .94);
    border-color: #e5dce0;
    box-shadow: 0 5px 20px rgba(71, 31, 58, .05);
    backdrop-filter: blur(12px);
}
.topbar .user-chip,
body.institution-ui .topbar .user-chip { background: #f1e3e7; border-color: #e5dce0; }
.topbar .user-chip > span { background: #f1e3e7; color: #312331; }
.institution-wordmark { color: #893c54; }
.institution-wordmark .brand-mark { color: #ad2e50; border-color: #ad2e50; background: #fffdfa; }
.institution-bell { color: #893c54; background: #f1e3e7; }
.institution-bell b { background: #a34c65; }
.icon-btn { color: #893c54; border-color: #e5dce0; background: #fffdfa; }

/* Surfaces, fields and controls */
.workspace { background: transparent; }
.panel,
.metric-card,
.portal-track-bar,
.selection-context,
.program-card,
.assessment-card,
.decision-card,
.policy-block-card,
.portal-dialog,
.modal-card,
.sheet-card {
    background: #fffdfa;
    border-color: #e5dce0;
    box-shadow: 0 10px 30px rgba(67, 32, 61, .055);
}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
select,
textarea,
.picker-trigger {
    color: #312331;
    background: #fffdfa;
    border-color: #c9b7c0;
}
input::placeholder,
textarea::placeholder { color: #71636d; }

.btn-primary,
#catalog-actionbar .btn,
.entry-button,
button.button,
a.button {
    color: #fff !important;
    background: #a34c65 !important;
    border-color: #a34c65 !important;
    box-shadow: 0 8px 18px rgba(163, 76, 101, .18);
}
.btn-primary:hover,
#catalog-actionbar .btn:hover,
.entry-button:hover,
button.button:hover,
a.button:hover { background: #893c54 !important; border-color: #893c54 !important; }
.btn-secondary,
#catalog-actionbar [data-portal-action="compare-show"],
#catalog-actionbar [data-portal-action="select-page"] {
    color: #893c54 !important;
    background: #faf7f4 !important;
    border-color: #c9b7c0 !important;
    box-shadow: none;
}
.btn-secondary:hover { background: #f1e3e7 !important; border-color: #c9b7c0 !important; }
.btn-ghost,
.auth-back,
.entry-footer a { color: #893c54; border-color: #e5dce0; }
.eyebrow,
.entry-eyebrow { color: #893c54; }
.muted,
.fine-print,
.field-help { color: #71636d; }

/* Dashboard and journey */
.welcome-panel {
    background: linear-gradient(125deg, #f1e3e7, #f1e3e7);
    border-color: #e5dce0;
}
.welcome-panel h2 { color: #312331; }
.welcome-panel p { color: #71636d; }
.welcome-panel .eyebrow { color: #893c54; }
.metric-card.accent,
.metric-accent {
    color: #fff9f3;
    background: linear-gradient(145deg, #49354b, #49354b);
}
.metric-card.accent > span,
.metric-card.accent > small,
.metric-accent > span,
.metric-accent small { color: #e5dce0; }
.steps li > span { background: #f1e3e7; color: #893c54; }
.journey button { color: #71636d; }
.journey button b { border-color: #c9b7c0; }
.journey button[aria-current="step"] {
    color: #893c54;
    background: #f1e3e7;
    border-color: #e5dce0;
}
.journey button[aria-current="step"] b { color: #fff; background: #a34c65; border-color: #a34c65; }
.journey .done b { color: #312331; background: #f1e3e7; border-color: #f1e3e7; }

/* Catalog, tables, filters and dialogs */
#filter-form {
    background: #f1e3e7 !important;
    border-color: #c9b7c0 !important;
    box-shadow: 0 8px 24px rgba(139, 65, 49, .06) !important;
}
#filter-form .picker-label,
#filter-form .selection-filter-grid > label { color: #71636d; }
#ux-advanced,
.ux-local-tools { background: #f1e3e7; }
.portal-filter-preview,
.policy-simple-guide {
    color: #312331;
    background: #f1e3e7;
    border-color: #a34c65;
}
.portal-table-wrap,
.manual-table-wrap { border-color: #e5dce0; background: #fffdfa; }
.portal-table th,
#program-results .portal-table th,
.manual-table th {
    color: #312331;
    background: #f1e3e7;
    border-color: #a34c65;
}
.portal-table td,
.manual-table td { border-color: #e5dce0; color: #312331; }
.portal-table tbody tr:hover,
.manual-table tbody tr:hover { background: #faf7f4; }
.manual-table tbody tr.marked { background: #f1e3e7; }
.manual-bulk,
.manual-table-wrap.is-expanded::before { background: #f1e3e7; border-color: #c9b7c0; color: #71314e; }
.manual-table tbody tr.drag-over { box-shadow: inset 0 3px #a34c65; }
.manual-table .icon-action { color: #893c54; border-color: #e5dce0; }
.portal-dialog { color: #312331; box-shadow: 0 24px 90px rgba(45, 25, 50, .32); }
.portal-dialog::backdrop { background: rgba(45, 25, 50, .64); }
.portal-dialog-head { border-color: #e5dce0; }
.picker-trigger::after { color: #71636d; }
.picker-trigger.has-value {
    color: #893c54 !important;
    background: #faf7f4 !important;
    border-color: #c9b7c0 !important;
}
.picker-popup,
dialog.filter-dialog {
    color: #312331;
    background: #fffdfa;
    border-color: #e5dce0;
    box-shadow: 0 22px 80px rgba(45, 25, 50, .28);
}
dialog.filter-dialog::backdrop { background: rgba(45, 25, 50, .58); }
.filter-dialog-close { color: #752c4d; background: #f1e3e7; }
#filter-form .filter-dialog .picker-option,
.major-categories button,
.field-dialog-choice {
    color: #312331 !important;
    background: #faf7f4;
    border-color: #e5dce0;
}
#filter-form .filter-dialog .picker-option:hover,
#filter-form .filter-dialog .picker-option:focus-within,
.major-categories button:hover,
.field-dialog-choice:hover { background: #f1e3e7; border-color: #c9b7c0; }
#filter-form .filter-dialog .picker-option:focus-within { outline-color: #86631b; }
.major-categories button[aria-pressed="true"],
.field-dialog-choice[aria-pressed="true"] {
    color: #fff !important;
    background: #a34c65;
    border-color: #a34c65;
}
#filter-form .filter-dialog .picker-footer { background: #fffdfa; border-color: #e5dce0; }
.picker-clear { color: #893c54; }
.picker-popup small { color: #71636d; }

/* Selected results keep the established no-checkbox interaction, with a new color. */
#program-results tr:has([data-portal-select]:checked),
#program-results .program-card:has(.select-program:checked),
.picker-option:has(input:checked) {
    color: #fff !important;
    background: #a34c65 !important;
    border-color: #a34c65 !important;
}
#program-results tr:has([data-portal-select]:focus-visible),
#program-results .program-card:has(.select-program:focus-visible) { outline-color: #d9b24c; }

/* Status colors retain meaning but belong to the warmer palette. */
.alert-info,
.info-note { color: #312331; background: #f1e3e7; border-color: #e5dce0; }
.alert-success,
.success-note { color: #61500e; background: #f7f0cf; border-color: #dfcf87; }
.alert-warning,
.warning-note,
.draft-recovery { color: #714500; background: #fff0cd; border-color: #dda94f; }
.alert-danger,
.error-note,
.auth-error { color: #8b2638; background: #fde7e8; border-color: #e7aab3; }
.chance-dot::before { outline: 2px solid rgba(255,255,255,.8); outline-offset: 1px; }

/* Authentication */
.auth-shell { background: #49354b; }
.auth-panel { background: #faf7f4; }
.auth-panel h1 { color: #312331; }
.brand-mark { color: #3c213d; background: #f4c86a; }
.auth-context {
    background:
        radial-gradient(circle at 8% 10%, rgba(217, 178, 76, .22), transparent 34%),
        radial-gradient(circle at 94% 88%, rgba(163, 76, 101, .32), transparent 42%),
        linear-gradient(145deg, #49354b, #5b294d);
}
.auth-context p,
.auth-route small,
.auth-footer { color: #e5dce0; }
.auth-kicker { color: #d9b24c; border-color: rgba(244, 213, 140, .38); }
.auth-route div { color: #faf7f4; border-color: rgba(255,255,255,.13); }
.auth-route b { color: #312331; background: #d9b24c; }
.auth-note { background: #f1e3e7; }
.login-area-tag { color: #893c54; background: #f1e3e7; }
.student-password-note { color: #704900; background: #ffedc7; }
.access-reader { border-color: #c9b7c0; }

/* Public entry page */
.entry-page {
    color: #312331;
    background:
        radial-gradient(circle at 10% 5%, rgba(217, 178, 76, .22), transparent 34rem),
        radial-gradient(circle at 92% 82%, rgba(163, 76, 101, .1), transparent 32rem),
        #faf7f4;
}
.entry-mark { color: #fff8f1; background: #3b1f3f; }
.entry-brand div > span,
.entry-intro > p:last-child,
.entry-card > p:not(.entry-eyebrow),
.entry-card small,
.entry-note,
.entry-footer { color: #71636d; }
.entry-card { background: rgba(255,253,250,.9); border-color: #e5dce0; box-shadow: 0 16px 42px rgba(67, 32, 61, .08); }
.entry-card:nth-child(2) { border-top: 4px solid #a34c65; }
.entry-card:first-child { border-top: 4px solid #a34c65; }
.entry-icon { color: #312331; background: #f1e3e7; }
.counselor .entry-button { background: #49354b !important; border-color: #49354b !important; }
.counselor .entry-button:hover { background: #49354b !important; border-color: #49354b !important; }
.entry-footer { border-color: #e5dce0; }

/* Setup and maintenance pages */
body:has(#setup) { color: #312331; background: #faf7f4; }
#setup .mark { color: #3b1f3f; background: #f4c86a; }
#setup .card { background: #fffdfa; border-color: #e5dce0; box-shadow: 0 12px 34px rgba(63,36,69,.07); }
#setup input { border-color: #c9b7c0; background: #fffdfa; }
#setup .checks li { background: #f1e3e7; }
#setup .checks li.failed { color: #8b2638; background: #fde7e8; }
#setup .ok { color: #67550f; }
#setup details { border-color: #e5dce0; }

@media (max-width: 650px) {
    #program-results .portal-table tr,
    .manual-table tr { background: #fffdfa; border-color: #c9b7c0; }
    #program-results .portal-table tr:has([data-portal-select]:checked) { background: #a34c65 !important; }
}

@media print {
    body::before { display: none; }
    .panel, .metric-card, .portal-table-wrap { box-shadow: none; }
}

/* Approved calm rose/gold identity. Final compatibility aliases for all workspaces. */
:root {
    --brand-accent: #a34c65;
    --brand-plum: #49354b;
    --brand-soft: #f1e3e7;
    --brand-gold: #d9b24c;
    --brand-canvas: #faf7f4;
    --brand-surface: #fffdfa;
    --brand-text: #312331;
    --brand-muted: #71636d;
    --brand-line: #e5dce0;
    --navy-950: #312331;
    --navy-900: #49354b;
    --navy-800: #49354b;
    --blue-700: #893c54;
    --blue-600: #a34c65;
    --blue-100: #f1e3e7;
    --blue-50: #f1e3e7;
    --cyan-500: #d9b24c;
    --green-700: #2e6653;
    --green-100: #e2f0e9;
    --amber-700: #73531e;
    --amber-100: #fff1d7;
    --slate-950: #312331;
    --slate-700: #312331;
    --slate-600: #71636d;
    --slate-500: #71636d;
    --slate-300: #c9b7c0;
    --slate-200: #e5dce0;
    --slate-100: #f1e3e7;
    --surface: #fffdfa;
    --canvas: #faf7f4;
    --focus: #86631b;
    --institution-accent: #a34c65;
    --institution-soft: #f1e3e7;
    --institution-line: #e5dce0;
    --shadow: 0 12px 32px rgb(73 53 75 / 7%);
    --paper: #faf7f4;
    --ink: #312331;
    --muted: #71636d;
    --accent: #a34c65;
    --line: #e5dce0;
    --gold: #d9b24c;
    --white: #fffdfa;
    --ui-brand: #a34c65;
    --ui-ink: #312331;
    --ui-muted: #71636d;
    --ui-surface: #fffdfa;
    --ui-canvas: #faf7f4;
    --ui-line: #e5dce0;
}

html,
body,
body.institution-ui,
body.landing-page,
body.sample-report {
    background: #faf7f4;
    color: #312331;
}

body::before {
    background:
        radial-gradient(circle at 8% 4%, rgb(217 178 76 / 18%), transparent 30rem),
        radial-gradient(circle at 96% 88%, rgb(163 76 101 / 5%), transparent 36rem);
}

::selection { background: #c9b7c0; color: #312331; }
input[type="checkbox"], input[type="radio"], progress { accent-color: #a34c65; }

.noazmoon-logo {
    object-fit: contain;
    filter: drop-shadow(0 7px 16px rgb(31 70 67 / 10%));
}
.sidebar .sidebar-logo,
.auth-panel .auth-logo,
.entry-brand .noazmoon-logo,
.brand .noazmoon-logo {
    padding: 0;
    border: 0;
    border-radius: 16px;
    background: transparent;
}

.sidebar,
body.institution-ui .sidebar {
    background: #49354b;
    color: #fffdfa;
    border-color: #49354b;
}
.sidebar .brand-row,
.sidebar .sidebar-foot,
.sidebar #nav-more { border-color: rgb(231 244 239 / 13%); }
.sidebar .brand-row strong { color: #fffdfa; }
.sidebar .brand-row span,
.sidebar .nav-group-label,
.sidebar .data-badge { color: #c9b7c0; }
.sidebar .brand-mark.small,
body.institution-ui .sidebar .brand-mark.small {
    color: #173638;
    background: #b8dbcf;
    border-color: #b8dbcf;
}
.sidebar .nav-item,
body.institution-ui .sidebar .nav-item { color: #f1e3e7; }
.sidebar .nav-item span,
body.institution-ui .sidebar .nav-item span { color: #c9b7c0; }
.sidebar .nav-item:hover,
body.institution-ui .sidebar .nav-item:hover { color: #fff; background: rgb(238 248 244 / 9%); }
.sidebar .nav-item.active,
.sidebar .nav-item.active:hover,
body.institution-ui .sidebar .nav-item.active,
body.institution-ui .sidebar .nav-item.active:hover {
    color: #49354b;
    background: #f1e3e7;
}
.sidebar .nav-item.active span,
body.institution-ui .sidebar .nav-item.active span { color: #a34c65; }
.sidebar .nav-item b,
.sidebar .nav-item.active b { background: rgb(217 178 76 / 18%); }

.topbar,
body.institution-ui .topbar,
.site-header {
    background: rgb(251 253 252 / 95%);
    border-color: #e5dce0;
    box-shadow: 0 4px 18px rgb(73 53 75 / 4%);
}
.topbar .user-chip,
body.institution-ui .topbar .user-chip { background: #f1e3e7; border-color: #e5dce0; }
.topbar .user-chip > span { background: #f1e3e7; color: #a34c65; }
.institution-wordmark,
.institution-bell,
.icon-btn { color: #a34c65; }
.institution-wordmark .brand-mark { color: #1f6964; border-color: #1f6964; background: #fbfdfc; }
.institution-bell { background: #f1e3e7; }
.institution-bell b { background: #a34c65; }
.icon-btn { border-color: #e5dce0; background: #fffdfa; }

.panel,
.metric-card,
.portal-track-bar,
.selection-context,
.program-card,
.assessment-card,
.decision-card,
.policy-block-card,
.portal-dialog,
.modal-card,
.sheet-card,
.entry-card,
.workspace-preview,
.feature-card,
.audience-card,
.track-card,
.faq-list details,
.sample-report article {
    background: #fffdfa;
    border-color: #e5dce0;
    box-shadow: 0 10px 28px rgb(73 53 75 / 5%);
}

input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
select,
textarea,
.picker-trigger {
    color: #312331;
    background: #fffdfa;
    border-color: #c9b7c0;
}
input::placeholder,
textarea::placeholder { color: #71636d; }

.btn-primary,
#catalog-actionbar .btn,
.entry-button,
button.button,
a.button,
.landing-page .button-primary,
.landing-page .header-login > a {
    color: #fffdfa !important;
    background: #a34c65 !important;
    border-color: #a34c65 !important;
    box-shadow: none;
}
.btn-primary:hover,
#catalog-actionbar .btn:hover,
.entry-button:hover,
button.button:hover,
a.button:hover,
.landing-page .button-primary:hover,
.landing-page .header-login > a:hover {
    background: #893c54 !important;
    border-color: #893c54 !important;
}
.btn-secondary,
#catalog-actionbar [data-portal-action="compare-show"],
#catalog-actionbar [data-portal-action="select-page"] {
    color: #893c54 !important;
    background: #faf7f4 !important;
    border-color: #c9b7c0 !important;
}
.btn-secondary:hover { background: #f1e3e7 !important; border-color: #c9b7c0 !important; }
.btn-ghost,
.auth-back,
.entry-footer a,
.landing-page a { color: #a34c65; }
.eyebrow,
.entry-eyebrow { color: #893c54; }
.muted,
.fine-print,
.field-help { color: #71636d; }

.welcome-panel,
.landing-page .insight-section,
.landing-page .start-section {
    background: #f1e3e7;
    border-color: #e5dce0;
}
.welcome-panel h2 { color: #312331; }
.welcome-panel p { color: #71636d; }
.metric-card.accent,
.metric-accent,
.workbench-capacity {
    color: #fffdfa;
    background: #49354b;
    border-color: #49354b;
}
.metric-card.accent > span,
.metric-card.accent > small,
.metric-accent > span,
.metric-accent small { color: #e5dce0; }
.steps li > span { background: #f1e3e7; color: #893c54; }
.journey button { color: #71636d; }
.journey button b { border-color: #c9b7c0; }
.journey button[aria-current="step"] { color: #a34c65; background: #f1e3e7; border-color: #c9b7c0; }
.journey button[aria-current="step"] b { color: #fff; background: #a34c65; border-color: #a34c65; }
.journey .done b { color: #49354b; background: #f1e3e7; border-color: #f1e3e7; }

#filter-form {
    background: #f1e3e7 !important;
    border-color: #c9b7c0 !important;
    box-shadow: none !important;
}
#ux-advanced,
.ux-local-tools { background: #f1e3e7; }
.portal-filter-preview,
.policy-simple-guide { color: #893c54; background: #f1e3e7; border-color: #a34c65; }
.portal-table-wrap,
.manual-table-wrap { border-color: #e5dce0; background: #fffdfa; }
.portal-table th,
#program-results .portal-table th,
.manual-table th { color: #312331; background: #f1e3e7; border-color: #c9b7c0; }
.portal-table td,
.manual-table td { border-color: #e5dce0; color: #312331; }
.portal-table tbody tr:hover,
.manual-table tbody tr:hover { background: #faf7f4; }
.manual-table tbody tr.marked { background: #f1e3e7; }
.manual-bulk,
.manual-table-wrap.is-expanded::before { background: #f1e3e7; border-color: #c9b7c0; color: #893c54; }
.manual-table tbody tr.drag-over { box-shadow: inset 0 3px #a34c65; }
.portal-dialog { color: #312331; box-shadow: 0 22px 70px rgb(49 35 49 / 24%); }
.portal-dialog::backdrop,
dialog.filter-dialog::backdrop { background: rgb(49 35 49 / 55%); }
.picker-trigger.has-value { color: #a34c65 !important; background: #f1e3e7 !important; border-color: #c9b7c0 !important; }
.picker-popup,
dialog.filter-dialog { color: #312331; background: #fffdfa; border-color: #e5dce0; box-shadow: 0 18px 60px rgb(49 35 49 / 20%); }
.filter-dialog-close { color: #893c54; background: #f1e3e7; }
#filter-form .filter-dialog .picker-option,
.major-categories button,
.field-dialog-choice { color: #312331 !important; background: #fffdfa; border-color: #e5dce0; }
#filter-form .filter-dialog .picker-option:hover,
#filter-form .filter-dialog .picker-option:focus-within,
.major-categories button:hover,
.field-dialog-choice:hover { background: #f1e3e7; border-color: #c9b7c0; }
.major-categories button[aria-pressed="true"],
.field-dialog-choice[aria-pressed="true"],
#program-results tr:has([data-portal-select]:checked),
#program-results .program-card:has(.select-program:checked),
.picker-option:has(input:checked) { color: #fff !important; background: #a34c65 !important; border-color: #a34c65 !important; }

.alert-info,
.info-note { color: #893c54; background: #f1e3e7; border-color: #c9b7c0; }
.alert-success,
.success-note { color: #2e6653; background: #e2f0e9; border-color: #b9d7c8; }
.alert-warning,
.warning-note,
.draft-recovery { color: #73531e; background: #fff1d7; border-color: #d8ba7f; }

.auth-shell { background: #312331; }
.auth-panel { background: #fffdfa; }
.auth-panel h1 { color: #312331; }
.brand-mark { color: #173638; background: #b8dbcf; box-shadow: none; }
.auth-context {
    background:
        radial-gradient(circle at 10% 12%, rgb(217 178 76 / 20%), transparent 36%),
        linear-gradient(145deg, #312331, #49354b);
}
.auth-context p,
.auth-route small,
.auth-footer { color: #e5dce0; }
.auth-kicker { color: #c9b7c0; border-color: rgb(201 229 220 / 35%); }
.auth-route div { color: #fffdfa; border-color: rgb(255 255 255 / 12%); }
.auth-route b { color: #312331; background: #c9b7c0; }
.auth-note { background: #f1e3e7; }
.login-area-tag { color: #893c54; background: #f1e3e7; }
.access-reader { border-color: #c9b7c0; }

.entry-page {
    color: #312331;
    background:
        radial-gradient(circle at 10% 5%, rgb(217 178 76 / 18%), transparent 34rem),
        radial-gradient(circle at 92% 82%, rgb(163 76 101 / 5%), transparent 34rem),
        #faf7f4;
}
.entry-mark { color: #f7faf8; background: #1c4445; }
.entry-brand div > span,
.entry-intro > p:last-child,
.entry-card > p:not(.entry-eyebrow),
.entry-card small,
.entry-note,
.entry-footer { color: #71636d; }
.entry-card { background: rgb(251 253 252 / 94%); border-color: #e5dce0; box-shadow: 0 12px 32px rgb(73 53 75 / 6%); }
.entry-card:nth-child(2),
.entry-card:first-child { border-top-color: #a34c65; }
.entry-icon { color: #893c54; background: #f1e3e7; }
.counselor .entry-button { background: #49354b !important; border-color: #49354b !important; }
.counselor .entry-button:hover { background: #312331 !important; border-color: #312331 !important; }
.entry-footer { border-color: #e5dce0; }

.landing-page .preview-sidebar { background: #49354b; color: #f1e3e7; }
.landing-page .preview-active { background: rgb(255 255 255 / 10%); border-color: rgb(255 255 255 / 10%); }
.landing-page .visual-orbit { border-color: #e5dce0; background: radial-gradient(ellipse, #f1e3e7 0, transparent 68%); }
.landing-page .visual-orbit::after { border-color: #e5dce0; }
.landing-page .mini-mark { background: #1f6964; }
.landing-page .preview-label,
.landing-page .preview-switch { color: #71636d; background: #f1e3e7; border-color: #e5dce0; }
.landing-page .preview-switch button.active { color: #a34c65; background: #fffdfa; }
.landing-page .sample-metrics > div:first-child { background: #f1e3e7; border-color: #e5dce0; }
.landing-page .avatar,
.landing-page .rose,
.landing-page .lilac,
.landing-page .sand { color: #893c54; background: #f1e3e7; }
.landing-page .status,
.landing-page .amber,
.landing-page .violet,
.landing-page .sage { color: #893c54; background: #f1e3e7; }
.landing-page .insight-note { border-color: #a34c65; }
.landing-page .compass-ring { border-color: #c9b7c0; }
.landing-page .compass-core,
.landing-page .orbit-label,
.landing-page .floating-note { background: #fffdfa; border-color: #e5dce0; box-shadow: 0 7px 20px rgb(73 53 75 / 5%); }
.landing-page .orbit-dot { background: #d9b24c; box-shadow: 0 0 0 6px rgb(217 178 76 / 10%); }

body:has(#setup) { color: #312331; background: #faf7f4; }
#setup .mark { color: #173638; background: #b8dbcf; }
#setup .card { background: #fffdfa; border-color: #e5dce0; box-shadow: 0 10px 28px rgb(73 53 75 / 6%); }
#setup input { border-color: #c9b7c0; background: #fffdfa; }
#setup .checks li { background: #f1e3e7; }
#setup .ok { color: #49354b; }
#setup details { border-color: #e5dce0; }

/* Gold is an accent on quiet surfaces; dark ink keeps gold labels readable. */
.landing-page .headline-accent::after { border-color: var(--brand-gold); }
.landing-page .workspace-preview { border-top: 3px solid var(--brand-gold); }
.entry-card:nth-child(2) { border-top-color: var(--brand-gold); }
.journey button[aria-current="step"],
.case-workspace-tabs [aria-current="page"] { box-shadow: inset 0 -3px var(--brand-gold); }
.sidebar .nav-item.active { box-shadow: inset -3px 0 var(--brand-gold); }
.sg-cover { border-top-color: var(--brand-gold); }
.sample-report article { border-top: 3px solid var(--brand-gold); }
.ui-confirm { background: var(--brand-surface); border-color: var(--brand-line); }

/* Selection uses a quiet tint across large table/card surfaces. */
#program-results tr:has([data-portal-select]:checked),
#program-results .program-card:has(.select-program:checked),
.picker-option:has(input:checked) {
    color: var(--brand-text) !important;
    background: var(--brand-soft) !important;
    border-color: #c9b7c0 !important;
}
#program-results tr:has([data-portal-select]:checked) td { color: var(--brand-text); }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

@media print {
    html, body, body.sample-report { background: #fff; color: #312331; }
    .noazmoon-logo { filter: none; }
}
