/* =========================================================
   DARK MODE — scoped to [data-theme="dark"]
   Palette: near-black green bg, dark-green surfaces, light text
   ========================================================= */

[data-theme="dark"]{
    --cream:#0f1412;
    --mint:#1a2a22;
    --line:#2b3b34;
    --upline:#2b3b34;
    --upmuted:#94a79e;
    --upforest:#0e3a29;
    --upforest-deep:#0b2c1f;
    --bg:#0f1412;
    --surface:#16201c;
    --surface-2:#1c2a24;
    --border:#2b3b34;
    --text:#e6eee9;
    --body:#c3d2cb;
    --muted:#8fa29a;
    --accent:#3fbf70;
    --accent-dim:#58c481;
}

/* ---------- Base ---------- */
[data-theme="dark"] html{background:var(--bg)}
[data-theme="dark"] body{
    background:var(--bg) !important;
    color:var(--body);
}
/* The shared <main> card was still white in dark mode */
[data-theme="dark"] main{
    background:var(--surface) !important;
    box-shadow:0 14px 40px rgba(0,0,0,.35);
}
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4{
    color:var(--text) !important;
}
[data-theme="dark"] p,
[data-theme="dark"] li,
[data-theme="dark"] span,
[data-theme="dark"] strong,
[data-theme="dark"] small,
[data-theme="dark"] b{
    color:var(--body);
}
[data-theme="dark"] .eyebrow{color:var(--accent-dim) !important}
[data-theme="dark"] a{color:var(--body)}

/* ---------- Topbar ---------- */
[data-theme="dark"] .topbar{
    background:var(--surface) !important;
    border-color:var(--border);
    box-shadow:0 8px 26px rgba(0,0,0,.4);
}
[data-theme="dark"] .topbar nav a{
    color:var(--text);
    background:#1c2a24;
}
[data-theme="dark"] .topbar nav a:hover{color:var(--accent-dim);background:#22342c}
[data-theme="dark"] .topbar nav .login-pill.outline{
    border-color:var(--accent-dim);
    color:var(--accent-dim);
    background:transparent;
}
[data-theme="dark"] .topbar nav .login-pill.outline:hover{background:#1c2a24}
[data-theme="dark"] .topbar nav .login-pill.filled{
    background:var(--upred);
    border-color:var(--upred);
    color:#fff;
}
[data-theme="dark"] .topbar nav .login-pill.filled:hover{
    background:var(--upred-dark);
    border-color:var(--upred-dark);
}
[data-theme="dark"] .nav-actions .login{
    border-color:var(--accent-dim);
    color:var(--accent-dim);
}
[data-theme="dark"] .nav-actions .login:hover{background:#1c2a24}
[data-theme="dark"] .brand{color:var(--text) !important}

/* Theme toggle button */
[data-theme="dark"] .theme-toggle{
    border-color:var(--border);
    color:var(--accent-dim);
    background:transparent;
}

[data-theme="dark"] .tutor-burger{
    border-color:var(--border);
    color:var(--accent-dim);
    background:transparent;
}
[data-theme="dark"] .tutor-burger:hover{background:#1c2a24}
[data-theme="dark"] .tutor-dropdown{
    background:var(--surface);
    border-color:var(--border);
    box-shadow:0 16px 34px rgba(0,0,0,.5);
}
[data-theme="dark"] .tutor-dropdown a{color:var(--text)}
[data-theme="dark"] .tutor-dropdown a:hover,
[data-theme="dark"] .tutor-dropdown a.active{background:#1c2a24;color:var(--accent-dim)}

/* ---------- Buttons ---------- */
[data-theme="dark"] .btn{
    background:var(--upgreen);
    border-color:var(--upgreen);
    color:#fff;
    box-shadow:0 6px 18px rgba(0,0,0,.35);
}
[data-theme="dark"] .btn:hover{background:var(--upgreen-dark);border-color:var(--upgreen-dark)}
[data-theme="dark"] .btn-quiet,
[data-theme="dark"] .outline-btn{
    background:transparent;
    color:var(--accent-dim);
    border-color:var(--border);
}
[data-theme="dark"] .btn-quiet:hover,
[data-theme="dark"] .outline-btn:hover{background:#1c2a24;border-color:var(--accent-dim)}
[data-theme="dark"] .hero-buttons .btn{background:#fff;color:var(--upgreen-dark);border:none;box-shadow:none}
[data-theme="dark"] .hero-buttons .btn-quiet{background:transparent;color:#fff;border-color:#7fa98f}

/* ---------- Hero (keeps its green gradient) ---------- */
[data-theme="dark"] .hero-search{background:var(--surface)}
[data-theme="dark"] .hero-search input{color:var(--text)}
[data-theme="dark"] .hero-search input::placeholder{color:var(--muted)}
[data-theme="dark"] .hero-lede{color:#cfe0d6 !important}

/* ---------- Inputs ---------- */
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea{
    background:var(--surface-2);
    border-color:var(--border);
    color:var(--text);
}
[data-theme="dark"] input:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus{
    border-color:var(--upgreen);
    box-shadow:0 0 0 3px rgba(63,191,112,.15);
}
[data-theme="dark"] input::placeholder{color:var(--muted)}
[data-theme="dark"] label{color:var(--muted)}
[data-theme="dark"] .helptext{color:var(--muted)}
[data-theme="dark"] .errorlist{color:#e07f72}

/* ---------- Cards / surfaces ---------- */
[data-theme="dark"] .logo-strip{background:var(--bg);border-bottom-color:var(--border)}
[data-theme="dark"] .logo-strip p{color:var(--muted)}
[data-theme="dark"] .logo-strip div a{color:var(--muted)}
[data-theme="dark"] .flow-grid article,
[data-theme="dark"] .subject-cards a,
[data-theme="dark"] .how-card.tutor,
[data-theme="dark"] .role-grid>a,
[data-theme="dark"] .form-card,
[data-theme="dark"] .card-block,
[data-theme="dark"] .legal-card,
[data-theme="dark"] .profile-card,
[data-theme="dark"] .full-child-card,
[data-theme="dark"] .empty-card,
[data-theme="dark"] .report-card,
[data-theme="dark"] .recommend-card,
[data-theme="dark"] .metric-grid>div,
[data-theme="dark"] .progress-card,
[data-theme="dark"] .billing-card,
[data-theme="dark"] .invoice,
[data-theme="dark"] .dashboard-child-card,
[data-theme="dark"] .workspace-card,
[data-theme="dark"] .dash-grid>section,
[data-theme="dark"] .quick-action-list,
[data-theme="dark"] .tutor-stats>div,
[data-theme="dark"] .find-filter-card,
[data-theme="dark"] .directory-tutor-card,
[data-theme="dark"] .job-card{
    background:var(--surface) !important;
    border-color:var(--border) !important;
    box-shadow:0 8px 22px rgba(0,0,0,.3);
}
[data-theme="dark"] .subject-cards a:nth-child(2){background:#241a16 !important}
[data-theme="dark"] .subject-cards a:nth-child(3){background:#242016 !important}
[data-theme="dark"] .how-card.tutor h3{color:var(--text)}
[data-theme="dark"] .how-card.tutor p{color:var(--muted)}
[data-theme="dark"] .how-card.tutor a{color:var(--accent-dim)}
[data-theme="dark"] .subject-no,
[data-theme="dark"] .subject-cards p,
[data-theme="dark"] .flow-grid p,
[data-theme="dark"] .flow-grid article>span{color:var(--muted)}
[data-theme="dark"] .flow-icon.mint{background:#1c3a2c}
[data-theme="dark"] .flow-icon.peach{background:#3a2418}
[data-theme="dark"] .flow-icon.yellow{background:#3a3210}
[data-theme="dark"] .text-arrow{color:var(--accent-dim)}

[data-theme="dark"] .testimonial-market{background:#141d18}
[data-theme="dark"] .testimonial-market blockquote{color:var(--text)}
[data-theme="dark"] .testimonial-market p{color:var(--muted)}
[data-theme="dark"] .cta-market{background:var(--bg)}

/* ---------- Join page ---------- */
[data-theme="dark"] body:has(.join-page),
[data-theme="dark"] body:has(.join-page) main,
[data-theme="dark"] body:has(.join-page) .join-page,
[data-theme="dark"] body:has(.join-page) .join-page>section,
[data-theme="dark"] body:has(.join-page) .join-page .join-aside{
    background:var(--bg) !important;
}
[data-theme="dark"] body:has(.join-page){background:var(--bg) !important}
[data-theme="dark"] .join-page p{color:var(--muted)}
[data-theme="dark"] .join-page .role-grid>a{
    background:#1c2a24 !important;
    border-color:#2a3a33 !important;
}
[data-theme="dark"] .join-page .role-grid>a:hover{background:#22342c !important;border-color:var(--accent-dim) !important}
[data-theme="dark"] .join-page .role-grid h3{color:var(--text)}
[data-theme="dark"] .join-page .role-grid p{color:var(--muted)}
[data-theme="dark"] .join-page .role-grid b{color:var(--accent-dim)}
[data-theme="dark"] .join-page .role-icon{background:#22342c !important;color:var(--accent-dim) !important}
[data-theme="dark"] .join-page .aside-stat{border-top-color:var(--border) !important}
[data-theme="dark"] .join-page .aside-stat span{color:var(--muted)}
[data-theme="dark"] .join-aside h3{color:var(--text)}

/* ---------- Auth pages ---------- */
[data-theme="dark"] .form-card h2{color:var(--text)}
[data-theme="dark"] .form-card>p{color:var(--muted)}
[data-theme="dark"] .form-foot{color:var(--muted)}
[data-theme="dark"] .form-foot a{color:var(--accent-dim)}
[data-theme="dark"] .form-card a{color:var(--accent-dim)}
[data-theme="dark"] .checkbox-row label{
    background:var(--surface-2);
    border-color:var(--border);
    color:var(--body);
}
[data-theme="dark"] .checkbox-row label:hover{border-color:var(--accent-dim)}
[data-theme="dark"] .checkbox-row label:has(input:checked){
    background:#14301f;
    border-color:var(--upgreen);
    color:var(--accent-dim);
}

/* ---------- Dashboards ---------- */
[data-theme="dark"] .family-page,
[data-theme="dark"] .tutor-workspace,
[data-theme="dark"] .find-tutor-shell{
    background:var(--bg) !important;
    box-shadow:0 14px 40px rgba(0,0,0,.4);
}
[data-theme="dark"] .family-content,
[data-theme="dark"] .workspace-inner,
[data-theme="dark"] .family-page .workspace-inner,
[data-theme="dark"] .tutor-workspace .workspace-inner{
    background:var(--bg) !important;
}
[data-theme="dark"] .tutor-topbar{
    background:var(--surface) !important;
    border-bottom-color:var(--border) !important;
}
[data-theme="dark"] .tutor-topbar nav a{color:var(--body)}
[data-theme="dark"] .tutor-topbar nav a.active,
[data-theme="dark"] .tutor-topbar nav a:hover{color:var(--accent-dim)}
[data-theme="dark"] .tutor-brand{color:var(--text) !important}
[data-theme="dark"] .tutor-logout{background:var(--upgreen) !important;color:#fff !important}
[data-theme="dark"] .workspace-card{
    background:var(--surface) !important;
    border-color:var(--border) !important;
}
[data-theme="dark"] .workspace-card h2{color:var(--text) !important}
[data-theme="dark"] .workspace-card p{color:var(--muted) !important}
[data-theme="dark"] .family-sidebar{
    background:var(--surface);
    border-right-color:var(--border);
}
[data-theme="dark"] .family-sidebar .side-brand{color:var(--text)}
[data-theme="dark"] .family-sidebar>a:not(.side-brand){color:var(--body)}
[data-theme="dark"] .family-sidebar>a:not(.side-brand):hover{background:#1c2a24;color:var(--text)}
[data-theme="dark"] .family-sidebar>a.active{background:var(--upgreen);color:#fff}
[data-theme="dark"] .side-label{color:var(--muted)}
[data-theme="dark"] .nav-user{border-top-color:var(--border)}
[data-theme="dark"] .nav-user strong{color:var(--text)}
[data-theme="dark"] .nav-user small{color:var(--muted)}

[data-theme="dark"] .tutor-topbar,
[data-theme="dark"] .find-tutor-topbar{
    background:var(--surface);
    border-bottom-color:var(--border);
}
[data-theme="dark"] .tutor-topbar nav a{color:var(--body)}
[data-theme="dark"] .tutor-topbar nav a.active,
[data-theme="dark"] .tutor-topbar nav a:hover{color:var(--accent-dim)}
[data-theme="dark"] .tutor-nav-actions>a{color:var(--body)}

[data-theme="dark"] .card-heading h2,
[data-theme="dark"] .workspace-card h2,
[data-theme="dark"] .dashboard-child-top h3,
[data-theme="dark"] .compact-card h2{color:var(--text)}
[data-theme="dark"] .card-heading a{color:var(--accent-dim)}
[data-theme="dark"] .dashboard-child-card p,
[data-theme="dark"] .workspace-card p{color:var(--muted)}
[data-theme="dark"] .child-summary span,
[data-theme="dark"] .child-details-grid span,
[data-theme="dark"] .profile-list dt{color:var(--muted)}
[data-theme="dark"] .child-summary strong,
[data-theme="dark"] .child-details-grid strong{color:var(--body)}
[data-theme="dark"] .icon-arrow{color:var(--accent-dim)}
[data-theme="dark"] .large-child-avatar,
[data-theme="dark"] .session-avatar,
[data-theme="dark"] .job-row-icon{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .quick-action-list a>span{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .quick-action-list a:hover{background:#1c2a24}
[data-theme="dark"] .quick-action-list strong{color:var(--text)}
[data-theme="dark"] .quick-action-list small{color:var(--muted)}

[data-theme="dark"] .next-session{
    background:#1e281f;
    border-color:var(--border);
}
[data-theme="dark"] .next-session h3{color:var(--text)}
[data-theme="dark"] .next-session p{color:var(--muted)}
[data-theme="dark"] .next-session .label{color:var(--muted)}
[data-theme="dark"] .calendar-date{background:var(--surface-2)}

[data-theme="dark"] .rate-prompt{
    background:#241d12;
    border-color:#4a3d1c;
}
[data-theme="dark"] .rate-prompt p{color:var(--body)}

[data-theme="dark"] .empty-state{
    color:var(--muted);
    border-color:var(--border);
}
[data-theme="dark"] .empty-card p{color:var(--muted)}
[data-theme="dark"] .empty-inner h3{color:var(--text)}
[data-theme="dark"] .empty-inner p{color:var(--muted)}

/* Earnings / stats */
[data-theme="dark"] .earnings-big{color:var(--accent-dim)}
[data-theme="dark"] .muted-label{color:var(--muted)}
[data-theme="dark"] .earnings-grid>div{background:var(--surface-2)}
[data-theme="dark"] .earnings-grid strong{color:var(--text)}
[data-theme="dark"] .earnings-grid span{color:var(--muted)}
[data-theme="dark"] .tips-list{color:var(--muted)}
[data-theme="dark"] .student-mini strong{color:var(--text)}
[data-theme="dark"] .student-mini small{color:var(--muted)}
[data-theme="dark"] .tutor-welcome>div>p:last-child,
[data-theme="dark"] .workspace-heading>div>p:last-child{color:var(--muted)}
[data-theme="dark"] .profile-alert{background:#241d12;border-color:#4a3d1c}
[data-theme="dark"] .profile-alert p{color:var(--muted)}

/* Job feed */
[data-theme="dark"] .job-card h2{color:var(--text)}
[data-theme="dark"] .job-card>p{color:var(--muted)}
[data-theme="dark"] .job-level{color:var(--muted)}
[data-theme="dark"] .job-row h3{color:var(--text)}
[data-theme="dark"] .job-row p{color:var(--muted)}
[data-theme="dark"] .job-row small{color:var(--muted)}
[data-theme="dark"] .job-row-top b{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .verification-chip{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .notice-box{background:#14301f;border-color:#2c5240}
[data-theme="dark"] .notice-box p{color:var(--muted)}
[data-theme="dark"] .job-detail-grid>div{background:var(--surface-2)}
[data-theme="dark"] .job-detail-grid span{color:var(--muted)}
[data-theme="dark"] .job-detail-grid strong{color:var(--text)}

/* Search page */
[data-theme="dark"] .find-tutor-shell{background:#0b2c1f !important}
[data-theme="dark"] .find-content{background:var(--bg)}
[data-theme="dark"] .find-hero-card{background:var(--surface);color:var(--text)}
[data-theme="dark"] .find-hero-card>span{color:var(--muted)}
[data-theme="dark"] .find-step{border-bottom-color:var(--border)}
[data-theme="dark"] .find-step strong{color:var(--text)}
[data-theme="dark"] .find-step small{color:var(--muted)}
[data-theme="dark"] .find-filter-card label{color:var(--muted)}
[data-theme="dark"] .find-filter-card input,
[data-theme="dark"] .find-filter-card select{
    background:var(--surface-2);
    border-color:var(--border);
    color:var(--text);
}
[data-theme="dark"] .results-heading p:last-child{color:var(--muted)}
[data-theme="dark"] .directory-tutor-card h3{color:var(--text)}
[data-theme="dark"] .directory-tutor-card .directory-tutor-head p{color:var(--muted)}
[data-theme="dark"] .directory-rating span{color:#e2c36a}
[data-theme="dark"] .directory-rating small{color:var(--muted)}
[data-theme="dark"] .directory-bio{color:var(--muted)}
[data-theme="dark"] .directory-tags span{background:var(--surface-2);color:var(--body)}
[data-theme="dark"] .directory-meta{color:var(--muted)}
[data-theme="dark"] .directory-bottom{border-top-color:var(--border)}
[data-theme="dark"] .directory-bottom strong{color:var(--text)}
[data-theme="dark"] .directory-bottom small{color:var(--muted)}
[data-theme="dark"] .match-score{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .match-reasons span{background:#14301f;color:var(--accent-dim);border-color:#2c5240}
[data-theme="dark"] .rating-line b{color:var(--text)}
[data-theme="dark"] .rating-line{color:var(--muted)}
[data-theme="dark"] .badge-verified{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .badge-top-rated{background:#14301f;color:#8fdb6f}
[data-theme="dark"] .badge-new{background:#332a10;color:#e2c36a}
[data-theme="dark"] .tag-pill{background:var(--surface-2);color:var(--body)}
[data-theme="dark"] .tag-verified{color:var(--accent-dim)}

/* Status pills */
[data-theme="dark"] .status-confirmed{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .status-requested{background:#332a10;color:#e2c36a}
[data-theme="dark"] .status-completed{background:#12242e;color:#7fc0d9}
[data-theme="dark"] .status-cancelled{background:#331713;color:#e08a7c}
[data-theme="dark"] .status-pill{color:var(--body)}

/* Alerts */
[data-theme="dark"] .alert{background:#1c2a24;border-left-color:var(--upgreen);color:var(--body)}
[data-theme="dark"] .alert-error{background:#2a1815;border-left-color:#c0392b;color:#e8a49a}
[data-theme="dark"] .alert-success{background:#14301f;border-left-color:var(--upgreen);color:var(--body)}
[data-theme="dark"] .alert-info{background:#14242e;border-left-color:#5591a3;color:#a8cfe0}

/* Billing */
[data-theme="dark"] .payment-notice{background:#241d12;border-color:#4a3d1c}
[data-theme="dark"] .payment-notice strong{color:var(--text)}
[data-theme="dark"] .payment-notice p{color:var(--muted)}
[data-theme="dark"] .invoice div{border-top-color:var(--border);color:var(--body)}
[data-theme="dark"] .invoice i{background:#14301f;color:var(--accent-dim)}
[data-theme="dark"] .bank-card{background:#123b35}
[data-theme="dark"] .pay-method-btn{background:var(--surface) !important}
[data-theme="dark"] .pay-method-btn h3{color:var(--text) !important}
[data-theme="dark"] .pay-method-btn p{color:var(--muted) !important}
[data-theme="dark"] .telebirr-phone-card{background:var(--surface-2) !important;border-color:var(--border) !important}
[data-theme="dark"] .telebirr-steps-card{background:#14301f !important;border-color:#2c5240 !important}
[data-theme="dark"] .telebirr-steps-card li{color:var(--body)}
[data-theme="dark"] .commission-info-box{background:var(--surface) !important;border-color:var(--border) !important}
[data-theme="dark"] .commission-info-box p{color:var(--body) !important}
[data-theme="dark"] .commission-info-box strong{color:var(--text) !important}

/* Messaging */
[data-theme="dark"] .messages-page{
    background:var(--surface);
    border-color:var(--border);
    box-shadow:0 14px 40px rgba(0,0,0,.35);
}
[data-theme="dark"] .messages-topbar{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .messages-topbar .back-link{color:var(--accent-dim);border-color:var(--accent-dim)}
[data-theme="dark"] .messages-topbar .back-link:hover{background:#1c2a24}
[data-theme="dark"] .messages-topbar .tutor-logout{background:var(--upgreen)}
[data-theme="dark"] .messages-shell .conversations{border-color:var(--border)}
[data-theme="dark"] .chat{background:var(--surface)}
[data-theme="dark"] .chat-body{background:var(--surface)}
[data-theme="dark"] .incoming{background:#1c2a24}
[data-theme="dark"] .outgoing{background:#17351f}
[data-theme="dark"] .composer{border-color:var(--border)}
[data-theme="dark"] .conversations{border-right-color:var(--border)}
[data-theme="dark"] .conversation p{color:var(--muted)}
[data-theme="dark"] .conversation strong{color:var(--text)}
[data-theme="dark"] .conversation-row.active .conversation{background:#1c2a24}
[data-theme="dark"] .unread-badge{background:var(--upgreen)}
[data-theme="dark"] .archive-btn{color:var(--muted)}
[data-theme="dark"] .archive-btn:hover{background:#3a2421;color:#e07f72}
[data-theme="dark"] .conversation small{color:var(--muted)}
[data-theme="dark"] .chat header{border-bottom-color:var(--border)}
[data-theme="dark"] .chat header strong{color:var(--text)}
[data-theme="dark"] .chat header p{color:var(--muted)}
[data-theme="dark"] .chat-body{background:var(--bg)}
[data-theme="dark"] .date{color:var(--muted)}
[data-theme="dark"] .bubble small{color:var(--muted)}
[data-theme="dark"] .incoming{background:var(--surface-2);color:var(--body)}
[data-theme="dark"] .outgoing{background:#14301f;color:var(--body)}
[data-theme="dark"] .composer{border-top-color:var(--border)}

/* Student portal */
[data-theme="dark"] .progress-bar-track{background:#1c2a24}
[data-theme="dark"] .confidence-row b{color:var(--text)}
[data-theme="dark"] .confidence-row{color:var(--muted)}
[data-theme="dark"] .portal-tabs a{background:var(--surface);border-color:var(--border);color:var(--body)}
[data-theme="dark"] .portal-tabs a.active{background:var(--text);color:var(--bg);border-color:var(--text)}
[data-theme="dark"] .report-card header span{color:var(--muted)}
[data-theme="dark"] .session-line{border-bottom-color:var(--border)}
[data-theme="dark"] .session-line strong{color:var(--text)}
[data-theme="dark"] .session-line p{color:var(--muted)}

/* How-it-works / info pages */
[data-theme="dark"] .info-hero{background:#14201a}
[data-theme="dark"] .info-hero p:last-child{color:var(--muted)}
[data-theme="dark"] .split-guide li span{color:var(--muted)}
[data-theme="dark"] .guide-art.family-art{background:#2e7d4f}
[data-theme="dark"] .guide-art.tutor-art{background:#14301f}
[data-theme="dark"] .guide-art span{color:var(--text)}
[data-theme="dark"] .guide-art p{color:var(--muted)}

/* Misc */
[data-theme="dark"] .progress-line{background:#1c2a24}
[data-theme="dark"] .session-card{background:var(--surface)}
[data-theme="dark"] .session-main h2{color:var(--text)}
[data-theme="dark"] .session-main p{color:var(--muted)}
[data-theme="dark"] .session-main small{color:var(--muted)}
[data-theme="dark"] .request-row{border-top-color:var(--border)}
[data-theme="dark"] .request-main h3{color:var(--text)}
[data-theme="dark"] .request-main p{color:var(--muted)}
[data-theme="dark"] .message-snippet{border-bottom-color:var(--border)}
[data-theme="dark"] .message-snippet h3{color:var(--text)}
[data-theme="dark"] .message-snippet p{color:var(--muted)}
[data-theme="dark"] .child-card>span{color:var(--accent-dim)}
[data-theme="dark"] .schedule-row{border-top-color:var(--border)}
[data-theme="dark"] .schedule-row h3{color:var(--text)}
[data-theme="dark"] .schedule-row p{color:var(--muted)}
[data-theme="dark"] .back-link{color:var(--accent-dim)}
[data-theme="dark"] .stars{color:#f0b429}
[data-theme="dark"] .stars .empty{color:#3a4a42}

/* Footer stays dark green; just tune text */
[data-theme="dark"] .footer{background:var(--upforest-deep)}
[data-theme="dark"] .copyright{background:#081f16}

/* Home page redesign dark mode */
[data-theme="dark"] .proof-strip{background:var(--surface);border-bottom-color:var(--border)}
[data-theme="dark"] .proof-item{border-right-color:var(--border)}
[data-theme="dark"] .proof-icon{background:var(--surface-2)}
[data-theme="dark"] .proof-item strong{color:var(--text)}
[data-theme="dark"] .proof-item p{color:var(--muted)}
[data-theme="dark"] .step-card{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .step-card:hover{box-shadow:0 12px 30px rgba(0,0,0,.3)}
[data-theme="dark"] .step-num{background:var(--upgreen)}
[data-theme="dark"] .step-card h3{color:var(--text)}
[data-theme="dark"] .step-card p{color:var(--muted)}

/* =========================================================
   COMPREHENSIVE DARK MODE — all pages
   ========================================================= */

/* --- How it works page --- */
[data-theme="dark"] .info-hero{background:#14201a !important}
[data-theme="dark"] .info-hero h1{color:var(--text) !important}
[data-theme="dark"] .info-hero p{color:var(--muted)}
[data-theme="dark"] .split-guide h2{color:var(--text) !important}
[data-theme="dark"] .split-guide li strong{color:var(--text)}
[data-theme="dark"] .split-guide li span{color:var(--muted)}
[data-theme="dark"] .split-guide ol{color:var(--body)}
[data-theme="dark"] .guide-art{background:#1c3a2c !important}
[data-theme="dark"] .guide-art.family-art{background:#1c3a2c !important}
[data-theme="dark"] .guide-art.tutor-art{background:#14301f !important}
[data-theme="dark"] .guide-art span{color:var(--text) !important}
[data-theme="dark"] .guide-art p{color:var(--muted)}
[data-theme="dark"] .how-card.parent{background:linear-gradient(140deg,#0e3a29,#0b2c1f) !important}
[data-theme="dark"] .how-card.parent h3{color:#fff}
[data-theme="dark"] .how-card.parent p{color:#b8d2c7}
[data-theme="dark"] .how-card.parent a{color:#ffd36b}
[data-theme="dark"] .how-card.tutor{background:var(--surface) !important;border-color:var(--border) !important}

/* --- Hero pills (subject quick-filters) --- */
[data-theme="dark"] .hero-pill{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15);color:var(--body)}
[data-theme="dark"] .hero-pill:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.3)}
[data-theme="dark"] .hero-pill-label{background:rgba(255,255,255,.1) !important;border-color:rgba(255,255,255,.15);color:var(--body) !important}

/* --- Matching quiz / results --- */
[data-theme="dark"] .quiz-results{color:var(--body)}
[data-theme="dark"] .quiz-results-head h1{color:var(--text) !important}
[data-theme="dark"] .quiz-results-head p{color:var(--muted)}
[data-theme="dark"] .quiz-results-head strong{color:var(--text)}
[data-theme="dark"] .empty-card{background:var(--surface) !important;border-color:var(--border) !important}
[data-theme="dark"] .empty-card h2{color:var(--text)}
[data-theme="dark"] .empty-card p{color:var(--muted)}

/* --- Student portal --- */
[data-theme="dark"] .portal-tabs a{background:var(--surface);border-color:var(--border);color:var(--body)}
[data-theme="dark"] .portal-tabs a.active{background:var(--text);color:var(--bg);border-color:var(--text)}
[data-theme="dark"] .report-card{background:var(--surface) !important;border-color:var(--border) !important}
[data-theme="dark"] .report-card header strong{color:var(--text)}
[data-theme="dark"] .report-card header span{color:var(--muted)}
[data-theme="dark"] .report-card p{color:var(--muted)}
[data-theme="dark"] .report-card .topics .tag-pill{background:var(--surface-2);color:var(--body)}
[data-theme="dark"] .confidence-row b{color:var(--text)}
[data-theme="dark"] .confidence-row span{color:var(--muted)}
[data-theme="dark"] .progress-bar-track{background:#1c2a24}
[data-theme="dark"] .bank-card{background:#123b35 !important;color:#fff}
[data-theme="dark"] .bank-card h3{color:#fff}
[data-theme="dark"] .bank-card .fine{color:#b3ccc3}
[data-theme="dark"] .bank-card ol{color:#c2d8d0}
[data-theme="dark"] .bank-details span,.bank-details strong,.bank-details small{color:#b3ccc3}

/* --- Session review (parent) --- */
[data-theme="dark"] .family-page .family-content .workspace-card{background:var(--surface) !important;border-color:var(--border) !important}
[data-theme="dark"] .family-page .family-content h1{color:var(--text) !important}
[data-theme="dark"] .family-page .family-content h2{color:var(--text) !important}
[data-theme="dark"] .family-page .family-content h3{color:var(--text) !important}
[data-theme="dark"] .family-page .family-content p{color:var(--muted)}
[data-theme="dark"] .family-page .family-content .back-link{color:var(--accent-dim)}

/* --- Notifications --- */
[data-theme="dark"] .notification-item{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .notification-item h3{color:var(--text)}
[data-theme="dark"] .notification-item p{color:var(--muted)}

/* --- Profile edit --- */
[data-theme="dark"] .profile-hero{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .profile-hero h2{color:var(--text)}
[data-theme="dark"] .profile-hero p{color:var(--muted)}
[data-theme="dark"] .profile-card{background:var(--surface) !important;border-color:var(--border) !important}
[data-theme="dark"] .profile-list div{border-bottom-color:var(--border)}
[data-theme="dark"] .profile-list dd{color:var(--body)}
[data-theme="dark"] .profile-list dt{color:var(--muted)}

/* --- Legal page --- */
[data-theme="dark"] .legal-card{background:var(--surface) !important;border-color:var(--border) !important}
[data-theme="dark"] .legal-card h2{color:var(--text)}
[data-theme="dark"] .legal-card p{color:var(--muted)}

/* --- Tutor apply --- */
[data-theme="dark"] .tutor-apply-card{background:var(--surface);border-color:var(--border)}

/* --- Find a tutor topbar --- */
[data-theme="dark"] .find-tutor-topbar{background:var(--surface) !important;border-bottom-color:var(--border) !important}
[data-theme="dark"] .find-tutor-topbar nav a{color:var(--body)}
[data-theme="dark"] .find-tutor-topbar nav a.active,.find-tutor-topbar nav a:hover{color:var(--accent-dim)}
[data-theme="dark"] .find-actions{color:var(--body)}
[data-theme="dark"] .find-action-btn{background:var(--upgreen) !important;color:#fff !important}
[data-theme="dark"] .find-brand{color:var(--text)}

/* --- Find hero --- */
[data-theme="dark"] .find-hero{background:var(--bg)}
[data-theme="dark"] .find-hero h1{color:var(--text) !important}
[data-theme="dark"] .find-hero h1 em{color:var(--accent-dim) !important}
[data-theme="dark"] .find-hero>div>p{color:var(--muted)}
[data-theme="dark"] .find-hero-card{background:var(--surface) !important;color:var(--text) !important;border-color:var(--border) !important}
[data-theme="dark"] .find-hero-card>span{color:var(--muted)}
[data-theme="dark"] .find-step{border-bottom-color:var(--border)}
[data-theme="dark"] .find-step strong{color:var(--text)}
[data-theme="dark"] .find-step small{color:var(--muted)}
[data-theme="dark"] .find-step>b{background:var(--surface-2);color:var(--accent-dim)}

/* --- Find content --- */
[data-theme="dark"] .find-content{background:var(--bg)}
[data-theme="dark"] .find-filter-card{background:var(--surface) !important;border-color:var(--border) !important}
[data-theme="dark"] .find-filter-card h2{color:var(--text)}
[data-theme="dark"] .find-filter-card label{color:var(--muted)}
[data-theme="dark"] .find-filter-card input,.find-filter-card select{background:var(--surface-2);border-color:var(--border);color:var(--text)}
[data-theme="dark"] .find-filter-card .filter-top a{color:var(--accent-dim)}
[data-theme="dark"] .results-heading h2{color:var(--text) !important}
[data-theme="dark"] .results-heading p{color:var(--muted)}

/* --- Footer text in dark mode --- */
[data-theme="dark"] .footer strong{color:#fff}
[data-theme="dark"] .footer a{color:#b8d2c7}
[data-theme="dark"] .footer a:hover{color:#fff}
[data-theme="dark"] .footer p{color:#a7c1b8}
[data-theme="dark"] .copyright{color:#9ab8ad}
[data-theme="dark"] .copyright a{color:var(--upred)}

/* --- Dark mode body for workspace pages --- */
[data-theme="dark"] body:has(.family-page){background:var(--bg) !important}
[data-theme="dark"] body:has(.tutor-workspace){background:var(--bg) !important}
[data-theme="dark"] body:has(.find-tutor-shell){background:var(--bg) !important}

/* Clean hero dark mode */
[data-theme="dark"] .hero-clean{background:var(--bg) !important}
[data-theme="dark"] .hero-heading{color:var(--text) !important}
[data-theme="dark"] .rotating-word{color:var(--accent-dim)}
[data-theme="dark"] .hero-search-clean{background:var(--surface);border-color:var(--border);box-shadow:0 8px 30px rgba(0,0,0,.3)}
[data-theme="dark"] .search-field input{color:var(--text)}
[data-theme="dark"] .search-field input::placeholder{color:var(--muted)}
[data-theme="dark"] .search-divider{background:var(--border)}
[data-theme="dark"] .subject-pill{background:var(--surface);border-color:var(--border);color:var(--body)}
[data-theme="dark"] .subject-pill:hover{background:var(--surface-2);border-color:var(--accent-dim);color:var(--accent-dim)}
[data-theme="dark"] .trust-badge{color:var(--muted)}
[data-theme="dark"] .featured-section{background:var(--bg)}

/* Botanical hero dark mode */
[data-theme="dark"] .hero-botanical{background:linear-gradient(160deg,#1a3a1a 0%,#0f2a0f 60%,#0a1f0a 100%) !important}
[data-theme="dark"] .hero-botanical h1{color:var(--text) !important}
[data-theme="dark"] .hero-botanical h1 em{color:var(--accent-dim) !important}
[data-theme="dark"] .hero-botanical .hero-sub{color:var(--body)}
[data-theme="dark"] .hero-search-botanical{background:var(--surface);box-shadow:0 12px 35px rgba(0,0,0,.4)}
[data-theme="dark"] .hero-search-botanical input{color:var(--text)}
[data-theme="dark"] .hero-search-botanical input::placeholder{color:var(--muted)}
[data-theme="dark"] .hero-social-proof p{color:var(--body)}
[data-theme="dark"] .hero-avatar{border-color:var(--surface)}
[data-theme="dark"] .trust-strip{background:var(--surface);border-bottom-color:var(--border)}
[data-theme="dark"] .trust-item{color:var(--muted)}

/* Hero CTA dark mode */
[data-theme="dark"] .btn-hero-cta{background:var(--upgreen)!important;color:#fff!important;border-color:var(--upgreen)}
[data-theme="dark"] .btn-hero-cta:hover{background:var(--upgreen-dark)!important}
[data-theme="dark"] .btn-hero-cta-secondary{color:var(--text)!important;border-color:var(--border)}
[data-theme="dark"] .btn-hero-cta-secondary:hover{border-color:var(--accent-dim);background:rgba(255,255,255,.05)!important}

/* =========================================================
   NEW DESIGN SYSTEM — dark mode additions
   ========================================================= */

/* Surface card in dark mode */
[data-theme="dark"] .surface-card {
    background: var(--surface) !important;
    border-color: var(--border) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.3);
}
[data-theme="dark"] .surface-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 36px rgba(0,0,0,.45);
}

/* Stat cards in dark mode */
[data-theme="dark"] .stat-card {
    background: var(--surface) !important;
    border-color: var(--border) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.3);
}
[data-theme="dark"] .stat-card strong {
    color: var(--text) !important;
}

/* Hero surface in dark mode — slightly darker green */
[data-theme="dark"] .hero-surface {
    background: linear-gradient(150deg, #0a3d20 0%, #0d4a28 55%, #145c32 100%) !important;
}

/* Warm surface in dark mode */
[data-theme="dark"] .warm-surface {
    background: linear-gradient(120deg, #0f1412, #141e18) !important;
}

/* Eyebrow in dark mode */
[data-theme="dark"] .eyebrow {
    color: var(--accent-dim) !important;
}

/* Step cards in dark mode */
[data-theme="dark"] .step-card {
    background: var(--surface) !important;
    border-color: var(--border) !important;
}
[data-theme="dark"] .step-card h3 {
    color: var(--text) !important;
}
[data-theme="dark"] .step-card p {
    color: var(--muted) !important;
}
[data-theme="dark"] .step-number {
    background: var(--accent-dim) !important;
    color: var(--surface) !important;
}

/* Trust strip in dark mode */
[data-theme="dark"] .trust-strip {
    background: var(--surface) !important;
    border-color: var(--border) !important;
}
[data-theme="dark"] .trust-strip-item span {
    color: var(--text) !important;
}
[data-theme="dark"] .trust-strip-icon.green { background: #14301f; }
[data-theme="dark"] .trust-strip-icon.orange { background: #3a1c14; }
[data-theme="dark"] .trust-strip-icon.blue { background: #141c30; }
[data-theme="dark"] .trust-strip-icon.red { background: #301414; }

/* FAQ in dark mode */
[data-theme="dark"] .faq-item {
    border-bottom-color: var(--border) !important;
}
[data-theme="dark"] .faq-item summary {
    color: var(--text) !important;
}

/* Testimonial cards in dark mode */
[data-theme="dark"] .testimonial-card {
    background: var(--surface) !important;
    border-color: var(--border) !important;
}
[data-theme="dark"] .testimonial-card blockquote {
    color: var(--text) !important;
}
[data-theme="dark"] .testimonial-card footer {
    border-top-color: var(--border) !important;
}

/* Get started cards in dark mode */
[data-theme="dark"] .get-started-card {
    background: var(--surface) !important;
    border-color: var(--border) !important;
}
[data-theme="dark"] .get-started-card h3 {
    color: var(--text) !important;
}
[data-theme="dark"] .get-started-card p {
    color: var(--muted) !important;
}
[data-theme="dark"] .get-started-card .card-icon.green { background: #14301f; }
[data-theme="dark"] .get-started-card .card-icon.red { background: #301414; }

/* Button pills in dark mode */
[data-theme="dark"] .btn-pill {
    box-shadow: 0 4px 14px rgba(0,0,0,.4);
}
[data-theme="dark"] .btn-pill-outline {
    background: transparent;
    border-color: var(--border);
    color: var(--accent-dim);
}
[data-theme="dark"] .btn-pill-outline:hover {
    background: #1c2a24;
    border-color: var(--accent-dim);
}

/* Next session in dark mode */
[data-theme="dark"] .next-session {
    background: var(--surface) !important;
    border-color: var(--border) !important;
}

/* Auth divider in dark mode */
[data-theme="dark"] .auth-divider {
    color: var(--muted) !important;
}
[data-theme="dark"] .auth-divider::before,
[data-theme="dark"] .auth-divider::after {
    background: var(--border) !important;
}

/* Section headings in dark mode */
[data-theme="dark"] .section-heading-clean h2 {
    color: var(--text) !important;
}
[data-theme="dark"] .section-heading-clean p {
    color: var(--muted) !important;
}

/* Page heading in dark mode */
[data-theme="dark"] .page-heading-row h1 {
    color: var(--text) !important;
}
[data-theme="dark"] .page-heading-row > div > p:last-child {
    color: var(--muted) !important;
}
