/* V24 — NS clinical identity. Loaded last so the approved layout stays intact. */
:root {
    --ns-forest: #243c36;
    --ns-forest-deep: #192e29;
    --ns-sage: #7f8e7c;
    --ns-sage-soft: #eef1eb;
    --ns-terracotta: #c98268;
    --ns-gold: #c6a15b;
    --ns-cream: #faf7f1;
    --ns-paper: #fffdf9;
    --ns-ink: #203732;
    --ns-muted: #6d7771;
    --ns-line: #e4e1d9;
    --primary: #243c36;
    --primary-2: #38544b;
    --secondary: #7f8e7c;
    --accent: #c98268;
    --cream: #faf7f1;
    --ink: #203732;
    --muted: #6d7771;
    --line: #e4e1d9;
}

body { color: var(--ns-ink); background: var(--ns-cream); }
body, button, input, select, textarea { font-family: 'Cairo', Arial, sans-serif; }

/* Public website */
.nutrition-v22 {
    --ns-ink: #243c36;
    --ns-muted: #68746e;
    --ns-gold: #c98268;
    --ns-line: #e4e1d9;
    --ns-soft: #f4f1ea;
    background: var(--ns-paper);
}
#nd-public-header.nd-header {
    background: rgba(255,253,249,.94);
    border-color: rgba(36,60,54,.10);
    box-shadow: 0 10px 38px rgba(36,60,54,.055);
}
#nd-public-header.nd-header .brand-copy b,
#nd-public-header.nd-header .desktop-nav a,
#nd-public-header.nd-header .nav-login { color: var(--ns-forest); }
#nd-public-header.nd-header .brand-copy small { color: var(--ns-terracotta); }
#nd-public-header.nd-header .language-switcher a.active { background: var(--ns-sage-soft); color: var(--ns-forest); }
#nd-public-header.nd-header .nav-book,
.nutrition-v22 .btn-primary,
.nutrition-v22 .v17-btn-primary,
.nutrition-v22 .nd-button-primary {
    background: linear-gradient(135deg, var(--ns-forest), #38544b);
    border-color: var(--ns-forest);
    color: #fff;
    box-shadow: 0 14px 32px rgba(36,60,54,.16);
}
#doctor.nd-hero {
    --nd-forest: #243c36;
    --nd-deep: #192e29;
    --nd-gold: #c98268;
    --nd-gold-light: #c6a15b;
    --nd-text: #314b44;
    --nd-muted: #6d7771;
    --nd-line: #e4e1d9;
}
#doctor.nd-hero.nd-arch-design,
#doctor.nd-hero { background: radial-gradient(circle at 9% 20%, rgba(127,142,124,.18), transparent 38%), linear-gradient(125deg,#faf7f1,#fffdf9 56%,#f2f4ef); }
#doctor.nd-arch-design .nd-eyebrow { color: #9d634f; background: #f7ede8; }
#doctor.nd-arch-design .nd-eyebrow svg { background: var(--ns-terracotta); border-color: #efd8cf; }
#doctor.nd-arch-design .nd-specialty { color: #667862; }
#doctor.nd-arch-design .nd-value-title { color: #a46751; }
#doctor.nd-hero .nd-brand-card { background: radial-gradient(circle at 25% 18%,#425c52,transparent 58%),linear-gradient(145deg,#243c36,#192e29); border-color: var(--ns-gold); }
#doctor.nd-hero .nd-online-badge { background: linear-gradient(100deg,#788a76,#a0aa94,#687b6d); border-color: #b6a476; color: #fff; }
.nutrition-v22 .ns-eyebrow,
.nutrition-v22 .ns-divider,
.nutrition-v22 .ns-section a:not(.btn):hover { color: var(--ns-terracotta); }
.nutrition-v22 .ns-icon { background: var(--ns-sage-soft); color: var(--ns-forest); border-color: #dfe4dc; }
.nutrition-v22 .ns-card,
.nutrition-v22 .ns-service-card,
.nutrition-v22 .ns-panel,
.nutrition-v22 .ns-portal-card { background: rgba(255,253,249,.96); border-color: var(--ns-line); box-shadow: 0 18px 48px rgba(36,60,54,.07); }
.nutrition-v22 .ns-section:nth-of-type(even) { background-color: #f4f3ed; }
.doctor-footer-v9,
.nutrition-v22 .ns-dark,
.mobile-booking-bar-v12 a:first-child { background: var(--ns-forest-deep); }
.chat17-launcher,
.chat17-header,
.chat17-send { background: linear-gradient(135deg,var(--ns-forest),#38544b); }
.chat17-panel { border-color: rgba(36,60,54,.14); box-shadow: 0 26px 70px rgba(25,46,41,.24); }

/* Dashboard and all clinical screens */
.dashboard-body { background: #f3f2ed; color: var(--ns-ink); }
.sidebar {
    background: linear-gradient(180deg,#243c36 0%,#192e29 100%);
    border-inline-end: 1px solid rgba(198,161,91,.16);
    box-shadow: 14px 0 40px rgba(25,46,41,.09);
}
.sidebar nav a { border: 1px solid transparent; }
.sidebar nav a:hover { background: rgba(255,255,255,.075); }
.sidebar nav a.active {
    background: linear-gradient(135deg,rgba(201,130,104,.22),rgba(198,161,91,.12));
    border-color: rgba(222,190,130,.22);
    color: #fff;
}
.dashboard-topbar { background: rgba(255,253,249,.94); border-color: var(--ns-line); backdrop-filter: blur(16px); }
.dashboard-content { max-width: 1600px; }
.panel,
.stats-grid article,
.form-card,
.auth-card,
.profile-strip,
.next-card {
    background: var(--ns-paper);
    border-color: var(--ns-line);
    box-shadow: 0 12px 38px rgba(36,60,54,.055);
}
.stats-grid article { position: relative; overflow: hidden; }
.stats-grid article::after { content: ''; position: absolute; inset-inline-end: 0; inset-block: 0; width: 4px; background: linear-gradient(var(--ns-terracotta),var(--ns-gold)); }
.stats-grid article > span,
.role-badge,
.count-badge { background: var(--ns-sage-soft); color: var(--ns-forest); }
.btn-primary { background: linear-gradient(135deg,var(--ns-forest),#38544b); border-color: transparent; box-shadow: 0 10px 24px rgba(36,60,54,.14); }
.btn-primary:hover { box-shadow: 0 14px 30px rgba(36,60,54,.2); }
input, select, textarea { background: #fffefa; border-color: #dcded7; }
input:focus, select:focus, textarea:focus { border-color: var(--ns-sage); box-shadow: 0 0 0 4px rgba(127,142,124,.14); }
th { color: #6c7771; }
tr:hover td { background: rgba(238,241,235,.5); }
.status.ok { background: #e8efe8; color: #315d4d; }
.status.warn { background: #fbf0dc; color: #8a642e; }
.alert.success { background: #e9f0e9; color: #315d4d; border: 1px solid #ceddce; }
.alert.error { background: #faebe7; color: #954f3e; border: 1px solid #edcec5; }
.dashboard-language-switch a.active,
.topbar-avatar { background: var(--ns-forest); color: #fff; }
.page-head h1,
.panel-head h2 { color: var(--ns-forest); }

@media (max-width: 680px) {
    .dashboard-body { background: #f7f5f0; }
    .sidebar { box-shadow: 0 -10px 34px rgba(25,46,41,.16); }
    .panel, .form-card, .auth-card { border-radius: 18px; }
}

/* High-contrast public CTA/footer — must stay last because the editable section styles
   and legacy V22 rules are loaded in the same public shell. */
body.doctor-public-v17.nutrition-v22 .v17-final-card {
    background: linear-gradient(120deg, #f4f1e8 0%, #fffdf9 72%);
    border: 1px solid #ded9ca;
    color: var(--ns-forest);
}
body.doctor-public-v17.nutrition-v22 .v17-final-card h2 { color: var(--ns-forest-deep) !important; }
body.doctor-public-v17.nutrition-v22 .v17-final-card p { color: #596b64 !important; opacity: 1; }
body.doctor-public-v17.nutrition-v22 .v17-final-card .v17-eyebrow { color: #a46851 !important; }
body.doctor-public-v17.nutrition-v22 .v17-final-card .v17-btn-light {
    background: linear-gradient(135deg, var(--ns-forest), #38544b);
    border-color: transparent;
    color: #fff !important;
}
body.doctor-public-v17.nutrition-v22 .v17-final-actions > a:not(.v17-btn) { color: var(--ns-forest) !important; }
body.doctor-public-v17.nutrition-v22 .site-footer {
    background: linear-gradient(145deg, #192e29, #243c36) !important;
    border-color: rgba(198,161,91,.22);
    color: #fff !important;
}
body.doctor-public-v17.nutrition-v22 .site-footer :is(p,a,b,small,.brand-copy b,.brand-copy small) { color: rgba(255,255,255,.76); }
body.doctor-public-v17.nutrition-v22 .site-footer .brand-copy b,
body.doctor-public-v17.nutrition-v22 .site-footer .footer-links-column > b,
body.doctor-public-v17.nutrition-v22 .site-footer .footer-cta-column h3 { color: #fff !important; }
body.doctor-public-v17.nutrition-v22 .site-footer .brand-copy small,
body.doctor-public-v17.nutrition-v22 .site-footer .footer-cta-column > span { color: #ddb98a !important; }
body.doctor-public-v17.nutrition-v22 .site-footer .footer-links-column > a:hover { color: #fff !important; }
body.doctor-public-v17.nutrition-v22 .site-footer .footer-cta-column {
    background: rgba(255,255,255,.075);
    border-color: rgba(255,255,255,.14);
}
body.doctor-public-v17.nutrition-v22 .site-footer .footer-bottom { border-color: rgba(255,255,255,.16); }
body.doctor-public-v17.nutrition-v22 .site-footer .footer-bottom p { color: rgba(255,255,255,.62) !important; opacity: 1; }
