/* Shared two-theme system. The root intentionally starts dark; shared shells set the administrator policy before first paint. */
/* Depth pass: bg / bg-alt / bg-card / bg-sunken now sit at clearly different steps so panels, sections and
   cards read as layers instead of one flat tint repeated everywhere. Shadows are also stronger and are
   reinstated lower in this file, since earlier "none" resets otherwise erase them completely. */
/* ── Palette v2 (2026-09) ─────────────────────────────────────────────
   Dark  = deep ink-navy with blue undertone (was greyish plum), layered surfaces.
   Light = cool porcelain with navy ink text (was flat greige).
   --primary      = interactive TEXT / icon colour (links, active labels)
   --fill         = solid fill for buttons, active pills, badges (always white text)
   --fill-grad    = gradient version of --fill
   Every text/background pair here is >= 4.5:1. */
:root,
html[data-theme="dark"] {
  color-scheme: dark;
  --font-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --primary:#6ea8ff;--primary-2:#8fb9ff;--primary-dark:#a8c8ff;--primary-light:#13244a;--primary-glow:rgba(79,140,255,.26);--on-primary:#ffffff;
  --fill:#2563eb;--fill-hover:#1d4ed8;--fill-grad:linear-gradient(135deg,#2f6bf2 0%,#1d4ed8 100%);--fill-soft:#13244a;
  --accent:#34d8c8;--accent-soft:rgba(52,216,200,.12);--gold:#f4b860;--violet:#8b7bff;
  --bg:#060a14;--bg-card:#0f172b;--bg-alt:#0a1020;--bg-sunken:#03060d;--bg-hover:#16213a;--bg-section:#0a1020;--footer-bg:#03060d;--hero-bg:#070c1a;--hero-bg-solid:#070c1a;--strip-bg:#0a1020;--cta-bg:#0f172b;--page-hero-bg:#0a1020;
  --text:#eef2ff;--text-2:#b3beda;--muted:#8a97b8;--hero-text:#eef2ff;--hero-text-muted:#b3beda;--page-hero-text:#eef2ff;
  --border:#1f2b45;--border-light:#172036;--success:#4ade80;--warning:#fbbf24;--danger:#fb7185;
  --shadow:0 2px 14px rgba(1,4,14,.45);--shadow-md:0 14px 34px rgba(1,4,14,.55);--shadow-lg:0 30px 70px rgba(1,4,14,.65);--shadow-primary:0 12px 32px rgba(37,99,235,.38);
  --hero-glow:radial-gradient(60% 70% at 85% 0%,rgba(59,111,246,.30),transparent 60%),radial-gradient(45% 55% at 5% 100%,rgba(139,123,255,.16),transparent 60%);
}

html[data-theme="light"] {
  color-scheme: light;
  --primary:#1d4ed8;--primary-2:#3b82f6;--primary-dark:#1e3a8a;--primary-light:#e7eeff;--primary-glow:rgba(37,99,235,.16);--on-primary:#ffffff;
  --fill:#2563eb;--fill-hover:#1d4ed8;--fill-grad:linear-gradient(135deg,#2f6bf2 0%,#1d4ed8 100%);--fill-soft:#e7eeff;
  --accent:#0b7a6f;--accent-soft:rgba(11,122,111,.10);--gold:#94580a;--violet:#5b47e0;
  --bg:#f6f8fc;--bg-card:#ffffff;--bg-alt:#eef2fa;--bg-sunken:#e7ecf6;--bg-hover:#f1f4fb;--bg-section:#eef2fa;--footer-bg:#eef2fa;--hero-bg:#f6f8fc;--hero-bg-solid:#f6f8fc;--strip-bg:#eef2fa;--cta-bg:#ffffff;--page-hero-bg:#eef2fa;
  --text:#0b1530;--text-2:#3a4766;--muted:#5b6785;--hero-text:#0b1530;--hero-text-muted:#3a4766;--page-hero-text:#0b1530;
  --border:#dce3f0;--border-light:#e8edf6;--success:#15803d;--warning:#92400e;--danger:#be123c;
  --shadow:0 1px 3px rgba(11,21,48,.06),0 1px 2px rgba(11,21,48,.04);--shadow-md:0 12px 30px rgba(11,21,48,.08);--shadow-lg:0 24px 60px rgba(11,21,48,.12);--shadow-primary:0 10px 26px rgba(37,99,235,.22);
  --hero-glow:radial-gradient(60% 70% at 85% 0%,rgba(59,130,246,.14),transparent 60%),radial-gradient(45% 55% at 5% 100%,rgba(91,71,224,.08),transparent 60%);
}


/* Aliases for legacy token names used in page-level <style> blocks (previously undefined,
   so they silently fell back to white/grey and broke dark mode). */
:root,html[data-theme]{--card:var(--bg-card);--surface:var(--bg-card);--surface-2:var(--bg-alt);--theme-bg:var(--bg);--theme-card:var(--bg-card);--theme-surface:var(--bg-alt);--theme-text:var(--text);--theme-muted:var(--muted);--theme-border:var(--border)}
html[data-theme] body{background:var(--bg);color:var(--text);transition:background-color .32s ease,color .28s ease}
html[data-theme] .app-header,html[data-theme] .mobile-nav{background:color-mix(in srgb,var(--bg-card) 94%,transparent);border-color:var(--border-light)}
html[data-theme="dark"] .app-header{box-shadow:0 10px 26px rgba(0,0,0,.2)}
html[data-theme] .app-header.scrolled{border-bottom-color:var(--border);box-shadow:var(--shadow-md)}
html[data-theme] .mobile-menu-toggle,html[data-theme] .header-icon-btn,html[data-theme] .scroll-top{background:var(--bg-card);color:var(--text);border-color:var(--border)}
html[data-theme] .header-icon-btn:hover,html[data-theme] .mobile-menu-toggle:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}
html[data-theme] #themeBtn{display:inline-flex!important;align-items:center;justify-content:center}
html[data-theme] .theme-toggle-btn{width:42px;height:42px;padding:0;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;transition:all .25s ease}
html[data-theme] .theme-toggle-btn:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}
html[data-theme] .site-logo-dark{display:none!important}html[data-theme="dark"] .has-dark-logo .site-logo-light{display:none!important}html[data-theme="dark"] .has-dark-logo .site-logo-dark{display:block!important}
html[data-theme] .site-footer,html[data-theme] .footer-bottom,html[data-theme] .bottom-tabbar{background:var(--footer-bg);border-color:var(--border-light);color:var(--text)}
html[data-theme] .site-footer a,html[data-theme] .bottom-tabbar a{color:var(--text-2)}html[data-theme] .site-footer a:hover,html[data-theme] .bottom-tabbar a.active{color:var(--primary)}
html[data-theme] .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px}html[data-theme] .footer-theme-control{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--text-2);font:inherit;font-size:12px;cursor:pointer;padding:4px 0}html[data-theme] .footer-theme-control:hover{color:var(--primary)}
html[data-theme] .card,html[data-theme] .service-card,html[data-theme] .product-card,html[data-theme] .portfolio-card,html[data-theme] .blog-card,html[data-theme] .testimonial-card,html[data-theme] .dashboard-card,html[data-theme] .auth-card,html[data-theme] .funnel-card{background:var(--bg-card);border-color:var(--border)}
html[data-theme] input,html[data-theme] textarea,html[data-theme] select{background:var(--bg-card);color:var(--text);border-color:var(--border)}
html[data-theme] input::placeholder,html[data-theme] textarea::placeholder{color:var(--muted)}
html[data-theme] .btn-outline{background:var(--bg-card);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] .page-hero,html[data-theme="dark"] .section-alt,html[data-theme="dark"] .auth-shell,html[data-theme="dark"] .dashboard-shell{background:var(--bg-alt)}
html[data-theme="dark"] .site-footer .nl-wrap input{background:var(--bg-card);color:var(--text)}
html[data-theme="dark"] .hdr-badge{border-color:var(--bg-card)}

/* The new agency landing page follows the global mode rather than forcing a dark hero in white mode. */
html[data-theme="light"] .agency-home .agency-hero{background:radial-gradient(circle at 88% 10%,rgba(169,153,210,.1),transparent 30%),#fff;color:var(--text)}
html[data-theme="light"] .agency-home .agency-hero h1,html[data-theme="light"] .agency-home .agency-hero .agency-eyebrow,html[data-theme="light"] .agency-home .agency-hero .agency-lede{color:var(--text)}
html[data-theme="light"] .agency-home .agency-product-window{background:#f6f5f7;border-color:#e8e7ea;box-shadow:0 18px 44px rgba(30,28,38,.1)}
html[data-theme="light"] .agency-home .agency-window-top,html[data-theme="light"] .agency-home .agency-lane,html[data-theme="light"] .agency-home .agency-float-card{background:#fff;border-color:#e8e7ea;color:var(--text)}
html[data-theme="light"] .agency-home .agency-window-metrics>div{background:#fff;border-color:#e8e7ea;color:var(--text)}
html[data-theme="light"] .agency-home .agency-window-metrics span,html[data-theme="light"] .agency-home .agency-lane-copy,html[data-theme="light"] .agency-home .agency-float-card small{color:var(--muted)}

/* Administration shared shell */
html[data-theme="dark"] .admin-wrap,html[data-theme="dark"] .admin-main,html[data-theme="dark"] .admin-content{background:var(--bg)}
html[data-theme="dark"] .admin-sidebar,html[data-theme="dark"] .admin-topbar,html[data-theme="dark"] .admin-stat-card,html[data-theme="dark"] .acard,html[data-theme="dark"] .bell-dropdown,html[data-theme="dark"] .dropdown-menu{background:var(--bg-card);border-color:var(--border)}
html[data-theme="dark"] .topbar-menu-btn,html[data-theme="dark"] .topbar-icon-btn,html[data-theme="dark"] .form-control,html[data-theme="dark"] .form-select,html[data-theme="dark"] .form-textarea,html[data-theme="dark"] .admin-search input{background:var(--bg-card);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] .admin-sidebar a,html[data-theme="dark"] .topbar-title,html[data-theme="dark"] .admin-page-header h1,html[data-theme="dark"] .acard h1,html[data-theme="dark"] .acard h2,html[data-theme="dark"] .acard h3,html[data-theme="dark"] .atable td{color:var(--text)}
html[data-theme="dark"] .admin-quick-card,html[data-theme="dark"] .atable th,html[data-theme="dark"] .atable tr:hover td{background:var(--bg-alt)}
html[data-theme="dark"] .sidebar-nav a:hover{background:var(--bg-alt)}
html[data-theme="dark"] .admin-content table th,html[data-theme="dark"] .admin-content table td{border-color:var(--border)}

/* Older public and workspace modules include direct white surfaces; normalise their shared primitives. */
html[data-theme="dark"] .bg-white,html[data-theme="dark"] .table-wrap,html[data-theme="dark"] .table-responsive,html[data-theme="dark"] .table-card,html[data-theme="dark"] .content-card,html[data-theme="dark"] .info-card,html[data-theme="dark"] .project-card,html[data-theme="dark"] .payment-card,html[data-theme="dark"] .career-card,html[data-theme="dark"] .result-card,html[data-theme="dark"] .bot-card,html[data-theme="dark"] .autobot-card,html[data-theme="dark"] .transcriber-card,html[data-theme="dark"] .modal-content,html[data-theme="dark"] .dropdown-menu,html[data-theme="dark"] .tab-pane,html[data-theme="dark"] .accordion-item{background:var(--bg-card);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] table,html[data-theme="dark"] table td,html[data-theme="dark"] table th{color:var(--text);border-color:var(--border)}
html[data-theme="dark"] table thead th,html[data-theme="dark"] .table thead th{background:var(--bg-alt)}
html[data-theme="dark"] .btn-white{background:var(--bg-card);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] .form-control,html[data-theme="dark"] .form-input,html[data-theme="dark"] .form-select,html[data-theme="dark"] .form-textarea,html[data-theme="dark"] .autobot-input{background:var(--bg-card);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] .alert-info{background:#2a2838;color:#ddd5f3;border-color:#443f58}
html[data-theme="dark"] .alert-success{background:#1e372b;color:#b8f0c1;border-color:#305840}
html[data-theme="dark"] .alert-warning{background:#3b3322;color:#f0d99c;border-color:#65522b}
html[data-theme="dark"] .alert-danger{background:#3d252b;color:#ffc0c5;border-color:#6a3943}

/* Strict selected-theme integrity: legacy module styles cannot introduce an opposing bright, blue, white, or dark section. */
html[data-theme] .app-header,html[data-theme] .mobile-nav,html[data-theme] .nav-disclosure__menu,html[data-theme] .page-hero,html[data-theme] .section-alt,html[data-theme] .cta-block,html[data-theme] .stats-bar-dark,html[data-theme] .bento-ai,html[data-theme] .auth-hero,html[data-theme] .checkout-success-hero{background:var(--bg-card)!important;border-color:var(--border)!important;color:var(--text)!important}
html[data-theme] .page-hero *,html[data-theme] .section-alt *,html[data-theme] .cta-block *,html[data-theme] .stats-bar-dark *,html[data-theme] .bento-ai *,html[data-theme] .auth-hero *,html[data-theme] .checkout-success-hero *{border-color:var(--border);color:inherit}
html[data-theme] .btn-primary,html[data-theme] .btn-accent{background:var(--fill)!important;color:var(--on-primary)!important;box-shadow:none!important}
html[data-theme] .btn-primary:hover,html[data-theme] .btn-accent:hover{background:var(--primary-dark)!important;color:var(--on-primary)!important}
html[data-theme] .btn-white,html[data-theme] .btn-white-outline,html[data-theme] .btn-outline,html[data-theme] .btn-outline-dark,html[data-theme] .btn-ghost{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:none!important}
html[data-theme] .btn-white:hover,html[data-theme] .btn-white-outline:hover,html[data-theme] .btn-outline:hover,html[data-theme] .btn-outline-dark:hover,html[data-theme] .btn-ghost:hover{background:var(--bg-alt)!important;color:var(--text)!important;border-color:var(--border)!important}
html[data-theme] .site-footer,html[data-theme] .footer-bottom,html[data-theme] .footer-bottom *,html[data-theme] .footer-bottom p,html[data-theme] .footer-bottom a{background:var(--footer-bg)!important;color:var(--text-2)!important;border-color:var(--border)!important}
html[data-theme] .site-footer h1,html[data-theme] .site-footer h2,html[data-theme] .site-footer h3,html[data-theme] .site-footer h4,html[data-theme] .site-footer strong,html[data-theme] .footer-bottom strong{color:var(--text)!important}
html[data-theme] .site-footer a:hover,html[data-theme] .footer-bottom a:hover{color:var(--primary)!important}
html[data-theme] .alert,html[data-theme] .alert-success,html[data-theme] .alert-danger,html[data-theme] .alert-warning,html[data-theme] .alert-info,html[data-theme] .ft-status,html[data-theme] .badge-success,html[data-theme] .chip-green,html[data-theme] .guide-box-success,html[data-theme] .checkout-secure-badge{background:var(--bg-alt)!important;color:var(--text-2)!important;border-color:var(--border)!important}
html[data-theme] .alert *,html[data-theme] .ft-status *,html[data-theme] .badge-success *,html[data-theme] .chip-green *,html[data-theme] .guide-box-success *,html[data-theme] .checkout-secure-badge *{color:inherit!important}
html[data-theme] .header-logo .logo-icon,html[data-theme] .stat-card-icon,html[data-theme] .dashboard-quick-icon,html[data-theme] .agency-icon{background:var(--bg-alt)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:none!important}
html[data-theme="light"] .app-header,html[data-theme="light"] .mobile-nav,html[data-theme="light"] .nav-disclosure__menu,html[data-theme="light"] .page-hero,html[data-theme="light"] .section-alt,html[data-theme="light"] .cta-block,html[data-theme="light"] .stats-bar-dark,html[data-theme="light"] .bento-ai,html[data-theme="light"] .auth-hero,html[data-theme="light"] .checkout-success-hero{background:#fff!important;color:var(--text)!important}
html[data-theme="light"] .app-header *,html[data-theme="light"] .mobile-nav *,html[data-theme="light"] .nav-disclosure__menu *,html[data-theme="light"] .page-hero *,html[data-theme="light"] .section-alt *,html[data-theme="light"] .cta-block *,html[data-theme="light"] .stats-bar-dark *,html[data-theme="light"] .bento-ai *,html[data-theme="light"] .auth-hero *,html[data-theme="light"] .checkout-success-hero *{color:var(--text)!important}
html[data-theme="light"] .app-header i,html[data-theme="light"] .mobile-nav i,html[data-theme="light"] .nav-disclosure__menu i,html[data-theme="light"] .page-hero i,html[data-theme="light"] .section-alt i,html[data-theme="light"] .cta-block i,html[data-theme="light"] .stats-bar-dark i,html[data-theme="light"] .bento-ai i,html[data-theme="light"] .auth-hero i,html[data-theme="light"] .checkout-success-hero i{color:var(--text-2)!important}
html[data-theme="light"] .btn-primary,html[data-theme="light"] .btn-primary *,html[data-theme="light"] .btn-accent,html[data-theme="light"] .btn-accent *{color:#fff!important}
html[data-theme] .admin-wrap,html[data-theme] .admin-main,html[data-theme] .admin-content,html[data-theme] .admin-sidebar,html[data-theme] .admin-topbar,html[data-theme] .admin-stat-card,html[data-theme] .acard,html[data-theme] .admin-quick-card,html[data-theme] .bell-dropdown,html[data-theme] .admin-dropdown,html[data-theme] .admin-modal,html[data-theme] .admin-search input{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:none!important}
html[data-theme] .admin-sidebar a,html[data-theme] .admin-sidebar summary,html[data-theme] .admin-topbar *,html[data-theme] .admin-content h1,html[data-theme] .admin-content h2,html[data-theme] .admin-content h3,html[data-theme] .admin-content h4,html[data-theme] .admin-content p,html[data-theme] .admin-content td,html[data-theme] .admin-content th{color:var(--text)!important}
html[data-theme] .sidebar-section-label,html[data-theme] .sidebar-footer,html[data-theme] .admin-content small,html[data-theme] .admin-content .muted,html[data-theme] .admin-content .help-text{color:var(--text-2)!important}
html[data-theme] .sidebar-nav a:hover,html[data-theme] .sidebar-nav a.active,html[data-theme] .admin-quick-card:hover,html[data-theme] .atable tr:hover td{background:var(--bg-alt)!important;color:var(--text)!important;box-shadow:none!important}
html[data-theme] .sidebar-nav a.active i,html[data-theme] .sidebar-nav a.active span{color:var(--text)!important}
html[data-theme] .sidebar-brand-icon,html[data-theme] .admin-icon-tile,html[data-theme] .admin-stat-icon,html[data-theme] .sidebar-badge{background:var(--bg-alt)!important;color:var(--text)!important;border:1px solid var(--border)!important;box-shadow:none!important}
html[data-theme] .admin-sidebar input,html[data-theme] .admin-topbar input,html[data-theme] .admin-content input,html[data-theme] .admin-content select,html[data-theme] .admin-content textarea{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important}
html[data-theme="light"] .admin-wrap,html[data-theme="light"] .admin-main,html[data-theme="light"] .admin-content,html[data-theme="light"] .admin-sidebar,html[data-theme="light"] .admin-topbar,html[data-theme="light"] .admin-stat-card,html[data-theme="light"] .acard,html[data-theme="light"] .admin-quick-card,html[data-theme="light"] .bell-dropdown,html[data-theme="light"] .admin-dropdown,html[data-theme="light"] .admin-modal{background:#fff!important;color:var(--text)!important}
html[data-theme] .post-content pre,html[data-theme] .post-content code,html[data-theme] pre,html[data-theme] code{background:var(--bg-alt)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:none!important}
html[data-theme] .post-content pre code{background:transparent!important;color:inherit!important}

/* Complete selected-theme coverage for direct legacy form, academy, contact, service, and workspace surfaces. */
html[data-theme="dark"] .dashboard-quick-card,html[data-theme="dark"] .saved-video-card,html[data-theme="dark"] .saved-video-row,html[data-theme="dark"] .dashboard-progress-block,html[data-theme="dark"] .contact-card,html[data-theme="dark"] .contact-form-card,html[data-theme="dark"] .contact-form-wrap,html[data-theme="dark"] .contact-info-card,html[data-theme="dark"] .service-detail-card,html[data-theme="dark"] .service-pricing-card,html[data-theme="dark"] .academy-card,html[data-theme="dark"] .academy-course-card,html[data-theme="dark"] .course-card,html[data-theme="dark"] .lesson-card,html[data-theme="dark"] .curriculum-card,html[data-theme="dark"] [style*="background:#fff"],html[data-theme="dark"] [style*="background: #fff"],html[data-theme="dark"] [style*="background:#ffffff"],html[data-theme="dark"] [style*="background: #ffffff"]{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:none!important}
html[data-theme="dark"] .dashboard-avatar{border-color:var(--bg-card)!important;background:var(--fill-grad)!important}
html[data-theme="dark"] .dashboard-quick-icon,html[data-theme="dark"] .stat-icon,html[data-theme="dark"] .dashboard-quick-card:hover .dashboard-quick-icon{background:var(--primary-light)!important;color:var(--primary)!important;border-color:var(--border)!important}
html[data-theme="dark"] .contact-card *,html[data-theme="dark"] .contact-form-card *,html[data-theme="dark"] .contact-form-wrap *,html[data-theme="dark"] .contact-info-card *,html[data-theme="dark"] .service-detail-card *,html[data-theme="dark"] .service-pricing-card *,html[data-theme="dark"] .academy-card *,html[data-theme="dark"] .academy-course-card *,html[data-theme="dark"] .course-card *,html[data-theme="dark"] .lesson-card *,html[data-theme="dark"] .curriculum-card *{border-color:var(--border)}
html[data-theme="dark"] input,html[data-theme="dark"] textarea,html[data-theme="dark"] select,html[data-theme="dark"] option{background-color:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:none!important}

/* Light mode keeps its warm canvas while using controlled accent color for agency-grade visual hierarchy and affordance. */
html[data-theme="light"] .page-hero,html[data-theme="light"] .auth-hero,html[data-theme="light"] .cta-block,html[data-theme="light"] .stats-bar-dark,html[data-theme="light"] .bento-ai,html[data-theme="light"] .checkout-success-hero{background:linear-gradient(135deg,#edf4ff 0%,#fcfcfb 62%,#f4f8eb 100%)!important;color:var(--text)!important}
html[data-theme="light"] .page-hero *,html[data-theme="light"] .auth-hero *,html[data-theme="light"] .cta-block *,html[data-theme="light"] .stats-bar-dark *,html[data-theme="light"] .bento-ai *,html[data-theme="light"] .checkout-success-hero *{color:inherit}
html[data-theme="light"] .page-content a:not(.btn),html[data-theme="light"] .section-title a,html[data-theme="light"] .dashboard-quick-card:hover .dashboard-quick-label,html[data-theme="light"] .order-row:hover .order-id,html[data-theme="light"] .saved-video-row:hover .saved-video-title{color:var(--primary)!important}
html[data-theme="light"] .page-content a:not(.btn) i,html[data-theme="light"] .section-title a i{color:var(--primary)!important}
html[data-theme="light"] .dashboard-quick-icon,html[data-theme="light"] .stat-icon,html[data-theme="light"] .stat-card-icon,html[data-theme="light"] .agency-icon{background:var(--primary-light)!important;color:var(--primary)!important;border-color:rgba(107,86,143,.14)!important}
html[data-theme="light"] .dashboard-quick-card:hover .dashboard-quick-icon{background:var(--fill)!important;color:var(--on-primary)!important;border-color:var(--primary)!important}
html[data-theme="light"] .dashboard-avatar{background:var(--fill-grad)!important;border-color:var(--bg-card)!important}
html[data-theme="light"] .btn-outline:hover,html[data-theme="light"] .btn-ghost:hover,html[data-theme="light"] .header-icon-btn:hover,html[data-theme="light"] .theme-toggle-btn:hover{background:var(--primary-light)!important;color:var(--primary)!important;border-color:rgba(14,83,190,.25)!important}

/* Customer workspace: a calm operational surface with visible hierarchy rather than a wall of generic cards. */
html[data-theme] .dashboard-page-hero{padding-bottom:30px!important}
html[data-theme] .dashboard-workspace-nav{display:flex;gap:6px;align-items:center;margin-top:-20px;margin-bottom:10px;padding:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);overflow-x:auto;scrollbar-width:none;position:relative;z-index:2}
html[data-theme] .dashboard-workspace-nav::-webkit-scrollbar{display:none}
html[data-theme] .dashboard-workspace-nav a{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:10px 13px;border-radius:10px;color:var(--text-2);font-size:13px;font-weight:700;text-decoration:none;transition:background .18s ease,color .18s ease}
html[data-theme] .dashboard-workspace-nav a:hover,html[data-theme] .dashboard-workspace-nav a.active{background:var(--primary-light);color:var(--primary)}
html[data-theme] .dashboard-workspace-nav a i{color:inherit}
html[data-theme] .dashboard-overview-section{padding-top:28px!important}
html[data-theme] .dashboard-overview-section .stat-card{background:var(--bg-card)!important;border:1px solid var(--border)!important;border-radius:16px!important;padding:19px!important;box-shadow:none!important;position:relative;overflow:hidden}
html[data-theme] .dashboard-overview-section .stat-card:before{content:"";display:block;width:30px;height:3px;border-radius:99px;background:var(--fill);margin-bottom:14px}
html[data-theme] .dashboard-overview-section .stat-card:nth-child(2):before{background:var(--accent)}html[data-theme] .dashboard-overview-section .stat-card:nth-child(3):before{background:var(--gold)}html[data-theme] .dashboard-overview-section .stat-card:nth-child(4):before{background:var(--success)}
html[data-theme] .dashboard-overview-section .stat-icon{display:none!important}
html[data-theme] .dashboard-overview-section .stat-num{font-family:var(--font-display)!important;font-size:27px!important;font-weight:700!important;color:var(--text)!important;letter-spacing:-.02em}
html[data-theme] .dashboard-overview-section .stat-lbl{font-size:12px!important;color:var(--text-2)!important;text-transform:uppercase;letter-spacing:.065em;font-weight:700!important;margin-top:6px}
html[data-theme] .dashboard-tools-section{background:var(--bg-alt)!important;border-block:1px solid var(--border-light)}
html[data-theme] .dashboard-tools-section .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px}
html[data-theme] .dashboard-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
html[data-theme] .dashboard-quick-card{min-height:104px!important;align-items:flex-start!important;justify-content:flex-start!important;text-align:left!important;flex-direction:row!important;gap:13px;padding:16px!important;background:var(--bg-card)!important;border:1px solid var(--border)!important;border-radius:14px!important;box-shadow:none!important}
html[data-theme] .dashboard-quick-card:hover{transform:translateY(-2px)!important;border-color:var(--primary)!important;box-shadow:var(--shadow-md)!important}
html[data-theme] .dashboard-quick-icon{width:40px!important;height:40px!important;border-radius:11px!important;font-size:16px!important;margin:0!important;flex:0 0 auto}
html[data-theme] .dashboard-quick-label{font-size:14px!important;margin:1px 0 4px!important;line-height:1.25!important}
html[data-theme] .dashboard-quick-sub{font-size:12px!important;line-height:1.4!important}
html[data-theme] .dashboard-quick-card>div:not(.dashboard-quick-icon){min-width:0}
html[data-theme] .dashboard-records-section .card{border:1px solid var(--border)!important;border-radius:16px!important;overflow:hidden;box-shadow:none!important}
html[data-theme] .dashboard-staff-banner{background:var(--bg-alt)!important;color:var(--text)!important;padding:14px 0;border-block:1px solid var(--border)}
html[data-theme] .dashboard-staff-banner .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
html[data-theme] .dashboard-staff-banner .container>div:first-child>div:first-child{background:var(--bg-card)!important;color:var(--primary)!important;border:1px solid var(--border)!important}
html[data-theme] .dashboard-staff-banner .container>div:first-child>div:last-child>div:first-child{color:var(--text)!important}html[data-theme] .dashboard-staff-banner .container>div:first-child>div:last-child>div:last-child{color:var(--text-2)!important;opacity:1!important}
html[data-theme] .dashboard-staff-banner-action{background:var(--fill)!important;color:var(--on-primary)!important;font-weight:700!important;white-space:nowrap}

/* Administrator shell: deliberately spaced accordion navigation, a quieter chrome, and compact responsive operations. */
html[data-theme] .admin-sidebar{width:284px!important;padding:18px 12px 12px!important;background:var(--bg)!important;border-right-color:var(--border)!important;gap:0}
html[data-theme] .sidebar-brand{margin:0 6px 14px!important;padding:10px!important;font-size:16px!important;border-radius:12px;background:var(--bg-card)!important;border:1px solid var(--border)!important;letter-spacing:-.01em!important}
html[data-theme] .sidebar-brand img{height:32px!important;max-width:172px!important}.sidebar-nav-scroll{flex:1;min-height:0;overflow-y:auto;padding:2px 2px 12px;scrollbar-width:thin}
html[data-theme] .sidebar-section{margin:0 0 6px!important;border:1px solid transparent;border-radius:12px;background:transparent!important}
html[data-theme] details.sidebar-section[open]{background:var(--bg-card)!important;border-color:var(--border)!important}
html[data-theme] .sidebar-section-label{min-height:38px;margin:0!important;padding:0 10px!important;color:var(--muted)!important;font-size:10px!important;letter-spacing:.09em!important}
html[data-theme] details.sidebar-section[open]>.sidebar-section-label{color:var(--primary)!important}
html[data-theme] .sidebar-nav{gap:2px!important;padding:0 5px 6px!important}
html[data-theme] .sidebar-nav a{min-height:38px;padding:9px 10px!important;border-radius:9px!important;font-size:12px!important;font-weight:600!important;gap:10px!important;color:var(--text-2)!important}
html[data-theme] .sidebar-nav a i{width:17px!important;font-size:13px!important;color:var(--muted)!important}
html[data-theme] .sidebar-nav a:hover{background:var(--primary-light)!important;color:var(--primary)!important}
html[data-theme] .sidebar-nav a:hover i,html[data-theme] .sidebar-nav a.active i{color:inherit!important}
html[data-theme] .sidebar-nav a.active{background:var(--primary-light)!important;color:var(--primary)!important;box-shadow:inset 3px 0 0 var(--primary)!important}
html[data-theme] .sidebar-badge{background:var(--fill)!important;color:var(--on-primary)!important;border:0!important;font-size:9px!important;padding:2px 6px!important}
html[data-theme] .sidebar-nav-utility{margin:8px 4px 0!important;padding:8px 0 0!important;border-top-color:var(--border)!important}
html[data-theme] .sidebar-footer{display:none!important}
html[data-theme] .admin-main{margin-left:284px!important;background:var(--bg)!important}
html[data-theme] .admin-topbar{height:66px!important;padding:0 28px!important;background:color-mix(in srgb,var(--bg-card) 92%,transparent)!important;border-bottom-color:var(--border)!important;backdrop-filter:blur(14px)}
html[data-theme] .topbar-title{font-family:var(--font-display)!important;font-size:19px!important;font-weight:700!important;letter-spacing:-.01em!important}
html[data-theme] .topbar-icon-btn{width:36px!important;height:36px!important;border-radius:10px!important;background:var(--bg-card)!important;color:var(--text-2)!important;border-color:var(--border)!important}
html[data-theme] .admin-content{max-width:1540px!important;padding:30px 32px 40px!important}
html[data-theme] .admin-page-header{margin-bottom:20px!important}.admin-dashboard-hero{margin-bottom:20px!important;border-radius:18px!important;overflow:hidden!important;background:var(--bg-card)!important;border:1px solid var(--border)!important;box-shadow:none!important}
html[data-theme] .admin-dashboard-avatar{width:58px;height:58px;border-radius:16px;background:var(--primary-light);color:var(--primary);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:21px;font-weight:700;flex:0 0 auto}
html[data-theme] .admin-dashboard-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);font-weight:800;margin-bottom:5px}.admin-dashboard-hero h2{font-size:23px!important;margin:0!important;color:var(--text)!important}.admin-dashboard-hero p{margin:6px 0 0!important;color:var(--text-2)!important;font-size:13px!important}.admin-dashboard-hero-action{margin-left:auto!important}
html[data-theme] .admin-stats{gap:12px!important;margin-bottom:20px!important}.admin-stat-card{border-radius:15px!important;padding:17px!important;border-color:var(--border)!important;background:var(--bg-card)!important;box-shadow:none!important}.admin-stat-card:hover{transform:translateY(-2px)!important;box-shadow:var(--shadow)!important}.admin-stat-icon{width:38px!important;height:38px!important;border-radius:10px!important;margin-bottom:12px!important}.admin-stat-num{font-family:var(--font-display)!important;font-size:23px!important}.admin-stat-lbl{font-size:11px!important;text-transform:uppercase;letter-spacing:.06em!important}
html[data-theme="light"] .admin-stat-icon.blue,html[data-theme="light"] .admin-quick-card:nth-child(1) i,html[data-theme="light"] .admin-quick-card:nth-child(4) i{background:#eaf1fe!important;color:#0e53be!important}html[data-theme="light"] .admin-stat-icon.green,html[data-theme="light"] .admin-quick-card:nth-child(2) i,html[data-theme="light"] .admin-quick-card:nth-child(5) i{background:#edf5e4!important;color:#62833c!important}html[data-theme="light"] .admin-stat-icon.orange,html[data-theme="light"] .admin-stat-icon.amber,html[data-theme="light"] .admin-quick-card:nth-child(3) i,html[data-theme="light"] .admin-quick-card:nth-child(6) i{background:#fbf1e5!important;color:#a76f36!important}
@media(min-width:1150px){html[data-theme] .dashboard-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:991px){html[data-theme] .admin-sidebar{width:min(86vw,320px)!important;transform:translateX(-105%)}html[data-theme] .admin-sidebar.open{transform:translateX(0)}html[data-theme] .admin-main{margin-left:0!important}html[data-theme] .topbar-menu-btn{display:inline-flex!important;background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important}html[data-theme] .admin-content{padding:22px 18px 34px!important}}
@media(max-width:639px){html[data-theme] .dashboard-workspace-nav{margin-top:-14px;padding:6px;border-radius:13px}html[data-theme] .dashboard-workspace-nav a{padding:9px 11px;font-size:12px}html[data-theme] .dashboard-quick-grid{grid-template-columns:1fr!important}html[data-theme] .dashboard-tools-section .section-head{align-items:flex-start;flex-direction:column}html[data-theme] .admin-topbar{height:60px!important;padding:0 14px!important}html[data-theme] .topbar-title{font-size:16px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html[data-theme] .topbar-actions{gap:5px!important}html[data-theme] .topbar-actions>a[title="View site"]{display:none!important}html[data-theme] .admin-content{padding:18px 14px 30px!important}html[data-theme] .admin-dashboard-hero .acard-body{padding:19px!important;gap:14px!important}.admin-dashboard-hero-action{width:100%;margin-left:0!important;justify-content:center}.admin-dashboard-avatar{width:50px;height:50px}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.admin-stat-card{padding:14px!important}}

/* Typography: Inter for headings and UI, IBM Plex Mono for labels and metadata (see 'Type system' at the end). */
html[data-theme] body,html[data-theme] button,html[data-theme] input,html[data-theme] select,html[data-theme] textarea{font-family:var(--font)!important}
html[data-theme] h1,html[data-theme] h2,html[data-theme] h3,html[data-theme] h4,html[data-theme] h5,html[data-theme] h6,html[data-theme] .ft-page-head__title,html[data-theme] .page-hero h1{font-family:var(--font-display)!important;font-weight:600!important;letter-spacing:-.022em!important;font-feature-settings:"cv11","ss01"}
html[data-theme] h1{font-size:clamp(34px,4.6vw,56px)!important;line-height:1.08!important;letter-spacing:-.036em!important}
html[data-theme] h2:not(:is([class*="card"],article,li,aside,.panel,.modal,[class*="tile"]) h2){font-size:clamp(26px,3vw,38px)!important;line-height:1.15!important;letter-spacing:-.03em!important}
html[data-theme] h3{font-size:clamp(18px,1.6vw,22px)!important;line-height:1.35!important;letter-spacing:-.018em!important}
html[data-theme] h4{font-size:17px!important;line-height:1.4!important}html[data-theme] h5{font-size:15px!important;line-height:1.45!important}html[data-theme] h6{font-size:12px!important;line-height:1.45!important}
html[data-theme] p{font-size:15px!important;line-height:1.72!important}html[data-theme] small{font-size:12.5px!important}
html[data-theme] .btn,html[data-theme] .nav-link,html[data-theme] .desktop-nav a,html[data-theme] .nav-disclosure > summary{font-family:var(--font)!important;font-weight:500!important;letter-spacing:-.005em!important}
html[data-theme] .btn{font-weight:600!important}

/* Keep every header control inside narrow viewports while retaining the theme, cart, and account entry points. */
@media(max-width:1023px){
  .app-header{max-width:100%;overflow:visible}.header-inner{min-width:0;padding-inline:16px}.header-logo{min-width:0}.header-actions{min-width:0;gap:6px}
  #desktopSignIn,#desktopCTA,.pwa-install-btn,.header-actions [aria-label="Workspace"],.header-actions [aria-label="Invoices"]{display:none!important}
}
@media(max-width:767px){
  .app-header{height:64px}.header-inner{padding-inline:14px;gap:8px}.header-logo{gap:7px;font-size:15px;overflow:hidden;white-space:nowrap}.header-logo img{height:30px;max-width:112px}.header-logo .logo-icon{width:30px;height:30px;font-size:12px}
  .header-actions{gap:4px;flex:0 0 auto}.header-actions>*{flex:0 0 auto}.theme-toggle-btn,.header-icon-btn{width:36px!important;height:36px!important}.header-icon-btn{font-size:14px}.header-icon-btn>span[style]{width:27px!important;height:27px!important;font-size:11px!important}
}
@media(max-width:390px){
  .header-inner{padding-inline:10px;gap:5px}.header-logo img{max-width:88px}.header-logo{font-size:14px}.header-logo .logo-icon{width:28px;height:28px}.theme-toggle-btn,.header-icon-btn{width:34px!important;height:34px!important}
}

@media(prefers-reduced-motion:reduce){html[data-theme] body,html[data-theme] *{transition:none!important}}

/* Public correction layer: preserve the warm light canvas, prevent white dark panels, and make key actions visibly intentional. */
html[data-theme="light"] .agency-home,html[data-theme="light"] .agency-proof,html[data-theme="light"] .agency-logo-section,html[data-theme="light"] .agency-process-section,html[data-theme="light"] .agency-route-section{background:var(--bg)!important}
html[data-theme="dark"] .agency-logo-section,html[data-theme="dark"] .agency-process-section,html[data-theme="dark"] .agency-route-section,html[data-theme="dark"] .agency-testimonial-section{background:var(--bg)!important;border-color:var(--border)!important}
html[data-theme="dark"] .agency-proof,html[data-theme="dark"] .agency-capability-card,html[data-theme="dark"] .agency-process-grid li,html[data-theme="dark"] .agency-route-options a,html[data-theme="dark"] .agency-testimonial,html[data-theme="dark"] .agency-logo{background:var(--bg-card)!important;border-color:var(--border)!important}
html[data-theme="dark"] .agency-proof *,html[data-theme="dark"] .agency-capability-card *,html[data-theme="dark"] .agency-process-grid li *,html[data-theme="dark"] .agency-route-options a *,html[data-theme="dark"] .agency-testimonial *{color:inherit!important}
html[data-theme="dark"] .agency-capability-card h3,html[data-theme="dark"] .agency-process-grid h3,html[data-theme="dark"] .agency-route-options strong,html[data-theme="dark"] .agency-testimonial strong{color:var(--text)!important}
html[data-theme="dark"] .agency-capability-card p,html[data-theme="dark"] .agency-process-grid p,html[data-theme="dark"] .agency-route-options small,html[data-theme="dark"] .agency-testimonial p{color:var(--text-2)!important}
html[data-theme] .cart-browse-services{display:inline-flex!important;width:auto!important;min-height:38px!important;padding:9px 14px!important;font-size:13px!important;border-radius:9px!important}
html[data-theme="dark"] .empty-state,html[data-theme="dark"] .cart-summary,html[data-theme="dark"] .contact-form-card,html[data-theme="dark"] .why-card,html[data-theme="dark"] .staff-card,html[data-theme="dark"] .attendance-card,html[data-theme="dark"] .leave-card{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important}
html[data-theme="dark"] .empty-state *,html[data-theme="dark"] .cart-summary *,html[data-theme="dark"] .contact-form-card *,html[data-theme="dark"] .why-card *,html[data-theme="dark"] .staff-card *,html[data-theme="dark"] .attendance-card *,html[data-theme="dark"] .leave-card *{border-color:var(--border)}
html[data-theme="dark"] .dashboard-staff-banner a,html[data-theme="dark"] .attendance-card .btn,html[data-theme="dark"] .leave-card .btn{background:var(--fill)!important;color:var(--on-primary)!important;border-color:var(--primary)!important}
html[data-theme] .dashboard-stat-action{display:inline-flex;align-items:center;gap:6px;margin-top:7px;padding:6px 9px;border:1px solid var(--primary);border-radius:8px;background:var(--fill);color:var(--on-primary)!important;font-size:11px!important;font-weight:800!important;line-height:1;text-decoration:none}
html[data-theme] .dashboard-stat-action i{color:inherit!important;font-size:10px}
html[data-theme] .dashboard-stat-action:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:var(--on-primary)!important}

/* Final selected-theme coverage for guided questions, workforce controls, and lightweight AI workspaces. */
html[data-theme="dark"] .stat-card,html[data-theme="dark"] .lp-option,html[data-theme="dark"] .lp-interest-chip,html[data-theme="dark"] .lp-situation>div,html[data-theme="dark"] .lp-modal-card,html[data-theme="dark"] .lp-confirm-card,html[data-theme="dark"] .lp-result-hero,html[data-theme="dark"] .cb-choice,html[data-theme="dark"] .cb-pkg-card,html[data-theme="dark"] .tr-info-card,html[data-theme="dark"] .tr-format-pills span,html[data-theme="dark"] .tr-file-icon{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:none!important}
html[data-theme="dark"] .lp-option:hover,html[data-theme="dark"] .lp-option.selected,html[data-theme="dark"] .lp-interest-chip:hover,html[data-theme="dark"] .lp-interest-chip.selected,html[data-theme="dark"] .lp-situation:hover>div,html[data-theme="dark"] .lp-situation input:checked+div,html[data-theme="dark"] .cb-choice.selected{background:var(--primary-light)!important;border-color:var(--primary)!important;color:var(--text)!important}
html[data-theme="dark"] .stat-card:nth-child(even){background:var(--bg-alt)!important}
html[data-theme="dark"] .tr-dropzone,html[data-theme="dark"] .tr-mode-toggle,html[data-theme="dark"] .tr-transcript-box,html[data-theme="dark"] .tr-file-row{background:var(--bg-alt)!important;border-color:var(--border)!important;color:var(--text)!important}

/* Academy course rows: every flexible child is permitted to shrink before a mobile viewport can overflow. */
.academy-course-shell,.academy-curriculum-row,.academy-curriculum-row>div{min-width:0;max-width:100%}
.academy-row-title{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:640px){.academy-course-page .section-inner{width:calc(100% - 32px)!important;max-width:none!important}.academy-curriculum-row{gap:10px!important;padding:13px 12px!important;align-items:flex-start!important}.academy-curriculum-row>i:last-child{margin-top:9px;flex:0 0 auto}.academy-curriculum-row .badge{display:inline-flex;max-width:100%;margin:5px 0 0!important}.academy-assessment-row{align-items:flex-start!important}.academy-assessment-row>div:first-child{flex:1 1 auto!important}.academy-course-page .btn-lg{max-width:100%;white-space:normal;line-height:1.35}.academy-course-page [style*="justify-content:space-between"]{min-width:0}.academy-course-page [style*="justify-content:space-between"]>div{min-width:0}}

/* Color audit fix: keep Contact page section headings readable in dark mode. */
html[data-theme="dark"] .contact-two-col h2,
html[data-theme="dark"] .contact-two-col h3,
html[data-theme="dark"] .contact-two-col .eyebrow {
  color: var(--text) !important;
}

/* Dashboard UI refinement: compact welcome hero, clearer actions, and responsive quick access. */
html[data-theme] .dashboard-page-hero{padding-top:46px!important;padding-bottom:34px!important;background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-alt) 100%)!important;border-bottom:1px solid var(--border)}
html[data-theme] .dashboard-welcome{position:relative;display:flex;align-items:center;gap:18px;padding:28px 30px;border:1px solid var(--border);border-radius:22px;background:linear-gradient(120deg,rgba(14,83,190,.11),rgba(127,185,75,.08));box-shadow:var(--shadow);overflow:hidden}
html[data-theme] .dashboard-welcome:after{content:"";position:absolute;width:220px;height:220px;right:-90px;top:-120px;border:1px solid rgba(14,83,190,.18);border-radius:50%;box-shadow:0 0 0 22px rgba(14,83,190,.035),0 0 0 44px rgba(14,83,190,.025);pointer-events:none}
html[data-theme] .dashboard-welcome-text{position:relative;z-index:1}
html[data-theme] .dashboard-welcome-text h1{font-size:clamp(28px,4vw,48px)!important;line-height:1.05!important;letter-spacing:-.035em!important}
html[data-theme] .dashboard-welcome-text p{margin-top:8px!important;color:var(--text-2)!important}
html[data-theme] .dashboard-profile-btn{position:relative;z-index:1;margin-left:auto;white-space:nowrap}
html[data-theme] .dashboard-avatar{width:64px!important;height:64px!important;flex:0 0 64px!important;border:4px solid var(--bg-card)!important;box-shadow:0 8px 20px rgba(14,83,190,.22)!important;font-size:24px!important}
html[data-theme] .dashboard-workspace-nav{margin-top:-18px!important;padding:7px!important;border-radius:14px!important}
html[data-theme] .dashboard-workspace-nav a{min-height:40px;justify-content:center}
html[data-theme] .dashboard-overview-section .dashboard-stats-grid{gap:14px!important}
html[data-theme] .dashboard-overview-section .stat-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
html[data-theme] .dashboard-overview-section .stat-card:hover{transform:translateY(-3px);border-color:var(--primary)!important;box-shadow:var(--shadow-md)!important}
html[data-theme] .dashboard-tools-section .section-head h2{font-size:28px!important;letter-spacing:-.025em}
html[data-theme] .dashboard-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
html[data-theme] .dashboard-quick-card{min-height:112px!important}
html[data-theme] .dashboard-quick-card:focus-visible,html[data-theme] .dashboard-workspace-nav a:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:2px}
html[data-theme] .dashboard-records-section .section-title{margin-bottom:12px}
html[data-theme] .dashboard-records-section .order-row{transition:background .18s ease,padding .18s ease}
html[data-theme] .dashboard-records-section .order-row:hover{background:var(--bg-alt)}
html[data-theme="dark"] .dashboard-page-hero{background:linear-gradient(135deg,#151a29 0%,#111827 100%)!important}
html[data-theme="dark"] .dashboard-welcome{background:linear-gradient(120deg,rgba(54,134,247,.16),rgba(127,185,75,.08));border-color:#30394b}
html[data-theme="dark"] .dashboard-welcome:after{border-color:rgba(120,171,255,.2)}
html[data-theme="dark"] .dashboard-overview-section .stat-card:before{opacity:.9}
@media(max-width:900px){html[data-theme] .dashboard-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){html[data-theme] .dashboard-page-hero{padding-top:24px!important;padding-bottom:26px!important}html[data-theme] .dashboard-welcome{align-items:flex-start;flex-wrap:wrap;padding:22px 18px;border-radius:18px}html[data-theme] .dashboard-avatar{width:52px!important;height:52px!important;flex-basis:52px!important;font-size:20px!important}html[data-theme] .dashboard-welcome-text{flex:1;min-width:190px}html[data-theme] .dashboard-welcome-text h1{font-size:30px!important}html[data-theme] .dashboard-profile-btn{width:100%;margin-left:0}html[data-theme] .dashboard-workspace-nav{margin-top:-14px!important;border-radius:12px!important}html[data-theme] .dashboard-workspace-nav a{flex:0 0 auto;padding-inline:11px!important}html[data-theme] .dashboard-tools-section .section-head{align-items:flex-start!important;display:grid!important;gap:5px!important}html[data-theme] .dashboard-tools-section .section-head h2{font-size:24px!important}}

/* Mobile dashboard redesign and internal left navigation drawer. */
html[data-theme] .dashboard-internal-nav-wrap{position:relative;z-index:5;background:var(--bg);border-bottom:1px solid var(--border)}
html[data-theme] .dashboard-internal-nav-bar{display:flex;align-items:center;gap:12px;min-height:62px}
html[data-theme] .dashboard-menu-trigger,html[data-theme] .dashboard-top-action{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:11px;background:var(--bg-card);color:var(--text);padding:10px 13px;font:700 12px var(--font);cursor:pointer;text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}
html[data-theme] .dashboard-menu-trigger:hover,html[data-theme] .dashboard-top-action:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}
html[data-theme] .dashboard-menu-trigger i,html[data-theme] .dashboard-top-action i{color:var(--primary)}
html[data-theme] .dashboard-context-label{display:flex;align-items:center;gap:7px;color:var(--text-2);font-size:12px;font-weight:700}
html[data-theme] .dashboard-context-label i{color:var(--primary)}
html[data-theme] .dashboard-top-action{margin-left:auto}
html[data-theme] .dashboard-menu-backdrop{position:fixed;inset:0;z-index:80;background:rgba(5,10,20,.58);backdrop-filter:blur(3px)}
html[data-theme] .dashboard-side-menu{position:fixed;left:0;top:0;bottom:0;z-index:90;width:min(340px,88vw);padding:22px 16px;background:var(--bg-card);border-right:1px solid var(--border);box-shadow:18px 0 45px rgba(0,0,0,.18);transform:translateX(-105%);transition:transform .24s ease;overflow:auto}
html[data-theme] .dashboard-side-menu.is-open{transform:translateX(0)}
html[data-theme] .dashboard-side-menu-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:4px 4px 20px;border-bottom:1px solid var(--border)}
html[data-theme] .dashboard-side-menu-head strong{display:block;margin-top:5px;color:var(--text);font:700 22px var(--font-display)}
html[data-theme] .dashboard-side-menu-head button{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--border);border-radius:10px;background:var(--bg-alt);color:var(--text);cursor:pointer}
html[data-theme] .dashboard-side-menu nav{display:grid;gap:7px;padding-top:16px}
html[data-theme] .dashboard-side-menu nav a{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid transparent;border-radius:12px;color:var(--text-2);text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease}
html[data-theme] .dashboard-side-menu nav a:hover,html[data-theme] .dashboard-side-menu nav a.is-current{background:var(--primary-light);border-color:color-mix(in srgb,var(--primary) 25%,transparent);color:var(--primary)}
html[data-theme] .dashboard-side-menu nav a>i{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--bg-alt);color:var(--primary)}
html[data-theme] .dashboard-side-menu nav a span{display:grid;gap:2px}.dashboard-side-menu nav a b{font-size:13px}.dashboard-side-menu nav a small{color:var(--text-2);font-size:10px}.dashboard-side-menu nav a:hover small,.dashboard-side-menu nav a.is-current small{color:var(--text-2)}
html[data-theme] body.dashboard-menu-open{overflow:hidden}
@media(max-width:640px){html[data-theme] .dashboard-internal-nav-bar{min-height:56px;padding-inline:16px}.dashboard-menu-trigger span{font-size:11px}.dashboard-context-label{font-size:11px}.dashboard-context-label span{display:none}.dashboard-top-action span{display:none}.dashboard-top-action{padding-inline:11px!important}.dashboard-side-menu{width:min(320px,88vw);padding:18px 14px}.dashboard-page-hero{padding-top:18px!important}.dashboard-welcome{display:grid!important;grid-template-columns:auto 1fr;gap:13px!important;padding:20px 16px!important}.dashboard-welcome .dashboard-profile-btn{grid-column:1/-1}.dashboard-welcome-text{min-width:0!important}.dashboard-welcome-text h1{font-size:28px!important;overflow-wrap:anywhere}.dashboard-welcome-text p{font-size:11px!important;overflow-wrap:anywhere}.dashboard-workspace-nav{margin-inline:16px!important}.dashboard-overview-section,.dashboard-tools-section{overflow:hidden}.dashboard-overview-section .dashboard-stats-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}.dashboard-overview-section .stat-card{padding:14px!important;min-width:0}.dashboard-overview-section .stat-num{font-size:22px!important;overflow-wrap:anywhere}.dashboard-overview-section .stat-lbl{font-size:10px!important}.dashboard-quick-grid{grid-template-columns:1fr!important;gap:10px!important}.dashboard-quick-card{min-height:84px!important;padding:13px!important}.dashboard-quick-icon{width:36px!important;height:36px!important;font-size:14px!important}.dashboard-two-col{grid-template-columns:1fr!important;gap:16px!important}.dashboard-staff-banner .container{padding-inline:16px}.dashboard-staff-banner .container>div:first-child{min-width:0}.dashboard-staff-banner .container>div:first-child>div:last-child{min-width:0}.dashboard-staff-banner .container>div:first-child>div:last-child>div{overflow-wrap:anywhere}.dashboard-records-section .card{border-radius:14px!important}.dashboard-records-section .order-row{padding-inline:13px!important}}
@media(min-width:641px){html[data-theme] .dashboard-side-menu{width:320px}}

/* Complete dashboard shell redesign. */
html[data-theme] .dashboard-app-shell{display:flex;max-width:1440px;margin:0 auto;min-height:720px;background:var(--bg)}
html[data-theme] .dashboard-sidebar{width:238px;flex:0 0 238px;min-height:720px;padding:24px 14px 16px;background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;align-self:flex-start;z-index:20}
html[data-theme] .dashboard-sidebar-brand{display:flex;align-items:center;gap:10px;padding:2px 10px 25px;border-bottom:1px solid var(--border)}
html[data-theme] .dashboard-brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--fill-grad);color:#fff;font-weight:800;font-size:17px;box-shadow:0 7px 16px rgba(14,83,190,.22)}
html[data-theme] .dashboard-sidebar-brand strong{display:block;color:var(--text);font-size:14px}.dashboard-sidebar-brand small{display:block;color:var(--text-2);font-size:10px;margin-top:2px}.dashboard-sidebar-close{display:none}
html[data-theme] .dashboard-sidebar-nav{display:grid;gap:4px;padding-top:20px}.dashboard-nav-label{padding:0 11px 7px;color:var(--text-2);font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.dashboard-nav-label-spaced{margin-top:17px}
html[data-theme] .dashboard-sidebar-nav a{display:flex;align-items:center;gap:11px;padding:11px;border-radius:10px;color:var(--text-2);font-size:12px;font-weight:700;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}.dashboard-sidebar-nav a i{width:18px;text-align:center;color:var(--text-2)}.dashboard-sidebar-nav a:hover{background:var(--bg-alt);color:var(--primary);transform:translateX(2px)}.dashboard-sidebar-nav a:hover i,html[data-theme] .dashboard-sidebar-nav a.is-active,html[data-theme] .dashboard-sidebar-nav a.is-active i{color:var(--primary)}html[data-theme] .dashboard-sidebar-nav a.is-active{background:var(--primary-light);box-shadow:inset 3px 0 var(--primary)}
html[data-theme] .dashboard-sidebar-footer{display:flex;align-items:center;gap:8px;margin-top:auto;padding:14px 9px 0;border-top:1px solid var(--border)}.dashboard-sidebar-user{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.dashboard-sidebar-user>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--primary-light);color:var(--primary);font-size:12px;font-weight:800}.dashboard-sidebar-user strong,.dashboard-sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-sidebar-user strong{color:var(--text);font-size:11px}.dashboard-sidebar-user small{color:var(--text-2);font-size:9px;margin-top:2px}.dashboard-sidebar-footer>a{color:var(--text-2);font-size:11px}.dashboard-main-content{flex:1;min-width:0}
html[data-theme] .dashboard-topbar{height:70px;display:flex;align-items:center;padding:0 34px;border-bottom:1px solid var(--border);background:var(--bg-card)}.dashboard-mobile-menu{display:none}.dashboard-breadcrumb{display:flex;align-items:center;gap:9px;color:var(--text-2);font-size:12px}.dashboard-breadcrumb i{font-size:9px;color:var(--muted)}.dashboard-breadcrumb strong{color:var(--text)}.dashboard-topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.dashboard-theme-btn,.dashboard-top-icon,.dashboard-top-profile{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--bg);color:var(--text-2);text-decoration:none;border-radius:10px;min-width:36px;height:36px;font-size:12px}.dashboard-theme-btn{cursor:pointer}.dashboard-top-icon{position:relative}.dashboard-top-icon span{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--fill);color:#fff;font-size:8px}.dashboard-top-profile{gap:7px;padding:0 9px}.dashboard-top-profile span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--fill);color:#fff;font-size:10px;font-weight:800}.dashboard-top-profile b{font-size:11px;color:var(--text)}
html[data-theme] .dashboard-command-hero{display:flex;justify-content:space-between;gap:24px;margin:28px 34px 0;padding:34px 38px;border-radius:24px;background:var(--fill-grad);color:#fff;overflow:hidden;position:relative;box-shadow:0 16px 34px rgba(14,83,190,.17)}.dashboard-command-hero:after{content:"";position:absolute;width:330px;height:330px;right:-115px;top:-175px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.04),0 0 0 58px rgba(255,255,255,.03)}.dashboard-command-copy,.dashboard-command-card{position:relative;z-index:1}.dashboard-overline{display:block;color:var(--text-2);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.dashboard-command-hero .dashboard-overline{color:rgba(255,255,255,.75)}.dashboard-command-copy h1{margin:7px 0 10px;color:#fff!important;font:700 clamp(30px,4vw,48px)/1.04 var(--font-display);letter-spacing:-.04em}.dashboard-command-copy h1 em{color:#d7ebff;font-style:normal}.dashboard-command-copy p{max-width:470px;margin:0;color:rgba(255,255,255,.78);font-size:13px;line-height:1.6}.dashboard-hero-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}.dashboard-primary-action,.dashboard-secondary-action{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:10px;text-decoration:none;font-size:11px;font-weight:800}.dashboard-primary-action{background:#fff;color:var(--primary)}.dashboard-secondary-action{border:1px solid rgba(255,255,255,.33);color:#fff}.dashboard-command-card{width:180px;align-self:center;padding:17px;border:1px solid rgba(255,255,255,.22);border-radius:16px;background:rgba(0,0,0,.13);backdrop-filter:blur(4px)}.dashboard-card-kicker{display:block;color:rgba(255,255,255,.68);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.dashboard-command-date{display:flex;align-items:center;gap:10px;margin:13px 0 15px}.dashboard-command-date>strong{font:700 42px/1 var(--font-display);color:#fff}.dashboard-command-date span{display:grid;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase}.dashboard-command-date small{margin-top:3px;color:rgba(255,255,255,.65);font-size:9px}.dashboard-command-status{display:flex;align-items:center;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.18);color:#bff2c4;font-size:11px}.dashboard-command-status span{display:grid;color:#fff;font-weight:700}.dashboard-command-status small{margin-top:3px;color:rgba(255,255,255,.62);font-size:9px;font-weight:500}
html[data-theme] .dashboard-section-block{padding:30px 34px 0}.dashboard-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:17px}.dashboard-section-heading h2{margin:4px 0 0;color:var(--text);font:700 24px/1.1 var(--font-display);letter-spacing:-.025em}.dashboard-text-link,.dashboard-panel-heading a{color:var(--primary);font-size:11px;font-weight:800;text-decoration:none}.dashboard-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dashboard-metric-card{min-width:0;padding:17px;border:1px solid var(--border);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease}.dashboard-metric-card:hover{transform:translateY(-3px);border-color:var(--primary)}.dashboard-metric-top{display:flex;justify-content:space-between;gap:10px;color:var(--text-2);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.dashboard-metric-top i{color:var(--metric-color,var(--primary));font-size:14px}.dashboard-metric-card>strong{display:block;margin:15px 0 5px;color:var(--text);font:700 25px/1 var(--font-display);overflow-wrap:anywhere}.dashboard-metric-card>small{display:block;color:var(--text-2);font-size:10px}.metric-blue{--metric-color:#3385e8}.metric-green{--metric-color:#28a66a}.metric-gold{--metric-color:#d28d1b}.metric-purple{--metric-color:#8d70d7}.metric-indigo{--metric-color:#6366f1}.metric-cyan{--metric-color:#0891b2}.metric-orange{--metric-color:#ea8a2d}.metric-rose{--metric-color:#db5578}
html[data-theme] .dashboard-launch-block{margin-top:30px;background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.dashboard-launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-launch-card{display:flex;align-items:center;gap:12px;min-width:0;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--bg-card);color:var(--text);text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.dashboard-launch-card:hover{transform:translateY(-3px);border-color:var(--primary);box-shadow:var(--shadow-md)}.dashboard-launch-card>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:var(--bg-alt);color:var(--primary)}.dashboard-launch-card>div{display:grid;gap:4px;min-width:0;flex:1}.dashboard-launch-card strong{font-size:12px}.dashboard-launch-card small{color:var(--text-2);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-launch-card>i{color:var(--text-2);font-size:10px}.launch-blue>span{color:#3283df}.launch-purple>span{color:#8b63d3}.launch-green>span{color:#2a9b65}.launch-orange>span{color:#d97724}.launch-gold>span{color:#c48a1c}.launch-slate>span{color:#64748b}
html[data-theme] .dashboard-two-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dashboard-panel{min-width:0;border:1px solid var(--border);border-radius:16px;background:var(--bg-card);overflow:hidden;box-shadow:var(--shadow)}.dashboard-panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:17px 18px 12px;border-bottom:1px solid var(--border)}.dashboard-panel-heading h3{margin:3px 0 0;color:var(--text);font:700 18px var(--font-display)}.dashboard-panel-heading .dashboard-overline{font-size:9px}.dashboard-list-row,.dashboard-learning-row{display:flex;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid var(--border-light);color:var(--text);text-decoration:none}.dashboard-list-row:last-child,.dashboard-learning-row:last-child{border-bottom:0}.dashboard-list-row:hover,.dashboard-learning-row:hover{background:var(--bg-alt)}.dashboard-list-row>div:first-child,.dashboard-learning-row>span:nth-child(2){min-width:0;flex:1}.dashboard-list-row strong,.dashboard-learning-row strong{display:block;color:var(--text);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-list-row small,.dashboard-learning-row small{display:block;margin-top:4px;color:var(--text-2);font-size:10px}.dashboard-list-row-end{text-align:right}.dashboard-list-row-end strong{font-size:12px}.dashboard-status-pill{display:inline-flex;align-items:center;margin-top:5px;padding:4px 7px;border-radius:99px;font-size:9px;font-weight:800}.dashboard-status-pill.info{background:rgba(59,130,246,.12);color:#4d96ed}.dashboard-status-pill.warning{background:rgba(217,143,31,.13);color:#d28d1b}.dashboard-status-pill.success{background:rgba(38,166,101,.13);color:#2a9b65}.dashboard-status-pill.danger{background:rgba(220,60,70,.13);color:#e4646c}.dashboard-empty{text-align:center;padding:30px 18px;color:var(--text-2)}.dashboard-empty i{display:block;margin-bottom:10px;color:var(--primary);font-size:24px}.dashboard-empty strong{display:block;color:var(--text);font-size:13px}.dashboard-empty small{display:block;margin-top:5px;font-size:10px}.dashboard-small-action{display:inline-flex;margin-top:13px;padding:8px 11px;border-radius:8px;background:var(--fill);color:#fff;font-size:10px;font-weight:800;text-decoration:none}.dashboard-learning-thumb{display:block;flex:0 0 58px;width:58px;height:40px;border-radius:8px;overflow:hidden;background:var(--bg-alt)}.dashboard-learning-thumb img{width:100%;height:100%;object-fit:cover}.dashboard-learning-row>i{color:var(--primary);font-size:11px}.dashboard-career-empty{text-align:center;padding:28px 20px}.dashboard-career-empty>span{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 10px;border-radius:15px;background:var(--primary-light);color:var(--primary);font-size:24px}.dashboard-career-empty strong{display:block;color:var(--text);font-size:15px}.dashboard-career-empty p{margin:6px 0 16px;color:var(--text-2);font-size:11px}.dashboard-progress-summary{display:flex;align-items:center;gap:20px;margin-bottom:16px;padding:14px 16px;border:1px solid var(--border);border-radius:13px;background:var(--bg-card)}.dashboard-progress-summary>div:first-child{display:flex;align-items:baseline;gap:7px;white-space:nowrap}.dashboard-progress-summary strong{color:var(--primary);font:700 24px var(--font-display)}.dashboard-progress-summary span{color:var(--text-2);font-size:10px}.dashboard-progress-track{height:8px;flex:1;border-radius:99px;background:var(--bg-alt);overflow:hidden}.dashboard-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--fill-grad)}
html[data-theme] .dashboard-admin-strip{background:var(--bg-alt);border-bottom:1px solid var(--border);color:var(--text-2);font-size:11px}.dashboard-admin-strip .container{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px}.dashboard-admin-link{color:var(--primary);font-weight:800;text-decoration:none}.dashboard-sprint-banner{background:linear-gradient(90deg,#4d2c8f,#6e45bd);color:#fff}.dashboard-sprint-banner .container,.dashboard-staff-banner .container{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px}.dashboard-banner-copy{display:flex;align-items:center;gap:10px;min-width:0}.dashboard-banner-copy>div{min-width:0}.dashboard-banner-copy strong,.dashboard-banner-copy small{display:block}.dashboard-banner-copy strong{font-size:12px}.dashboard-banner-copy small{margin-top:3px;font-size:10px;opacity:.8;overflow-wrap:anywhere}.dashboard-banner-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.16)}.dashboard-banner-action{display:inline-flex;gap:7px;align-items:center;white-space:nowrap;color:#fff;font-size:10px;font-weight:800;text-decoration:none}
@media(max-width:900px){html[data-theme] .dashboard-sidebar{width:220px;flex-basis:220px}.dashboard-launch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){html[data-theme] .dashboard-app-shell{display:block}.dashboard-sidebar{position:fixed!important;inset:0 auto 0 0;width:min(312px,88vw)!important;min-height:100vh!important;transform:translateX(-105%);transition:transform .24s ease;box-shadow:20px 0 48px rgba(0,0,0,.22)}.dashboard-sidebar.is-open{transform:translateX(0)}.dashboard-sidebar-close{display:grid;place-items:center;margin-left:auto;width:32px;height:32px;border:1px solid var(--border);border-radius:9px;background:var(--bg-alt);color:var(--text);cursor:pointer}.dashboard-sidebar-backdrop{position:fixed;inset:0;z-index:19;background:rgba(4,8,18,.58);backdrop-filter:blur(3px)}html[data-theme] body.dashboard-drawer-open{overflow:hidden}.dashboard-mobile-menu{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:9px;background:var(--bg);color:var(--text);padding:8px 10px;font:700 11px var(--font);cursor:pointer}.dashboard-topbar{height:58px;padding:0 16px}.dashboard-breadcrumb{display:none}.dashboard-topbar-actions{gap:6px}.dashboard-top-profile b{display:none}.dashboard-top-profile{padding:0 6px}.dashboard-command-hero{margin:16px!important;padding:24px 20px!important;border-radius:18px!important;display:block!important}.dashboard-command-copy h1{font-size:35px!important}.dashboard-command-copy p{font-size:12px}.dashboard-command-card{width:auto!important;margin-top:20px;display:flex;align-items:center;gap:14px;padding:13px!important}.dashboard-card-kicker{display:none}.dashboard-command-date{margin:0!important}.dashboard-command-status{padding:0 0 0 14px;border-top:0;border-left:1px solid rgba(255,255,255,.2);margin-left:auto}.dashboard-section-block{padding:24px 16px 0!important}.dashboard-section-heading{align-items:flex-start!important}.dashboard-section-heading h2{font-size:22px!important}.dashboard-text-link{font-size:10px}.dashboard-metric-grid{grid-template-columns:1fr 1fr!important;gap:9px!important}.dashboard-metric-card{padding:13px!important;border-radius:13px!important}.dashboard-metric-card>strong{font-size:21px!important;margin:12px 0 5px}.dashboard-metric-card>small{font-size:9px}.dashboard-metric-top{font-size:9px}.dashboard-launch-block{margin-top:24px}.dashboard-launch-grid{grid-template-columns:1fr!important;gap:9px!important}.dashboard-launch-card{padding:13px!important}.dashboard-two-panel-grid{grid-template-columns:1fr!important;gap:12px!important}.dashboard-panel-heading{padding:15px}.dashboard-list-row,.dashboard-learning-row{padding:12px 15px}.dashboard-staff-banner .container,.dashboard-sprint-banner .container{align-items:flex-start;flex-direction:column;padding-inline:16px}.dashboard-banner-action{margin-left:42px}.dashboard-progress-summary{display:block}.dashboard-progress-summary>div:first-child{margin-bottom:10px}.saved-videos-grid{grid-template-columns:1fr!important}}

/* User dashboard: one navigation system only. The internal workspace sidebar/topbar replaces the public site header on this page. */
html[data-theme] body.workspace-page .app-header{display:block!important}
html[data-theme] body.workspace-page{padding-top:0!important}
html[data-theme] body.workspace-page #mobileMenuToggle{display:none!important}
html[data-theme] body.workspace-page .workspace-menu-toggle{display:none!important}

/* Dashboard top menu branding: blue logo in light theme, white logo treatment in dark theme. */
html[data-theme] .dashboard-top-logo{display:inline-flex;align-items:center;flex:0 0 auto;width:150px;height:42px;padding:4px 10px;border:1px solid var(--border);border-radius:11px;background:var(--bg-card);overflow:hidden}
html[data-theme] .dashboard-top-logo img{display:block;width:auto;max-width:130px;height:32px;object-fit:contain;object-position:left center}
html[data-theme] .dashboard-top-logo .dashboard-logo-dark{display:none}
html[data-theme="dark"] .dashboard-top-logo .dashboard-logo-light{display:none}
html[data-theme="dark"] .dashboard-top-logo .dashboard-logo-dark{display:block;filter:none;opacity:.96}
@media(max-width:700px){html[data-theme] .dashboard-top-logo{width:130px;height:38px;padding-inline:8px}html[data-theme] .dashboard-top-logo img{max-width:112px;height:28px}html[data-theme] .dashboard-mobile-menu{order:-1}html[data-theme] .dashboard-top-logo{order:-2}}

/* Long admin drawer: keep branding/footer fixed while the navigation list scrolls. */
html[data-theme] .dashboard-sidebar{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;overflow:hidden}
html[data-theme] .dashboard-sidebar-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;padding-bottom:18px}
html[data-theme] .dashboard-sidebar-nav::-webkit-scrollbar{width:6px}
html[data-theme] .dashboard-sidebar-nav::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}
html[data-theme] .dashboard-sidebar-footer{flex:0 0 auto;background:var(--bg-card);position:relative;z-index:1}
@media(max-width:700px){html[data-theme] .dashboard-sidebar{height:100dvh;max-height:100dvh;overflow:hidden}html[data-theme] .dashboard-sidebar-nav{padding-bottom:28px;touch-action:pan-y}}

/* Mobile drawer final-link clearance: keep the last admin destinations above sticky bottom controls. */
@media(max-width:700px){
  html[data-theme] .dashboard-sidebar-nav{padding-bottom:calc(150px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(150px + env(safe-area-inset-bottom));}
  html[data-theme] .dashboard-sidebar-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom));}
}

/* Admin drawer account actions and extra mobile clearance. */
html[data-theme] .dashboard-sidebar-footer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}
html[data-theme] .dashboard-sidebar-logout{grid-column:1/-1;display:flex;align-items:center;gap:9px;padding:10px 11px;border-radius:10px;color:var(--danger)!important;background:transparent;font-size:12px;font-weight:800;text-decoration:none}
html[data-theme] .dashboard-sidebar-logout:hover{background:color-mix(in srgb,var(--danger) 12%,transparent)}
html[data-theme] .dashboard-sidebar-logout i{width:18px;text-align:center}
@media(max-width:700px){html[data-theme] .dashboard-sidebar-nav{padding-bottom:calc(210px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(210px + env(safe-area-inset-bottom))!important}}

/* Keep admin account controls and Logout visible while the long nav scrolls. */
html[data-theme] .dashboard-sidebar-footer{position:sticky!important;bottom:0;flex:0 0 auto!important;min-height:88px;padding:14px 9px calc(14px + env(safe-area-inset-bottom))!important;background:var(--bg-card)!important;border-top:1px solid var(--border)!important;box-shadow:0 -12px 24px color-mix(in srgb,var(--bg-card) 80%,transparent);z-index:30}
html[data-theme] .dashboard-sidebar-logout{display:flex!important;visibility:visible!important;opacity:1!important;min-height:34px}
@media(max-width:700px){html[data-theme] .dashboard-sidebar-footer{position:sticky!important;bottom:0!important;min-height:104px;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important}html[data-theme] .dashboard-sidebar-nav{padding-bottom:calc(250px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(250px + env(safe-area-inset-bottom))!important}}

/* Definitive mobile drawer layout: fixed account panel, bounded scrolling navigation. */
@media(max-width:700px){
  html[data-theme] .dashboard-sidebar{display:flex!important;flex-direction:column!important;height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;padding-bottom:0!important}
  html[data-theme] .dashboard-sidebar-nav{flex:0 0 auto!important;height:calc(100dvh - 218px)!important;max-height:calc(100dvh - 218px)!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:48px!important;scroll-padding-bottom:48px!important}
  html[data-theme] .dashboard-sidebar-footer{position:absolute!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;min-height:112px!important;margin:0!important;padding:13px 14px calc(14px + env(safe-area-inset-bottom))!important;background:var(--bg-card)!important;border-top:1px solid var(--border)!important;box-shadow:0 -14px 28px rgba(0,0,0,.22)!important;z-index:50!important}
  html[data-theme] .dashboard-sidebar-logout{min-height:36px!important;display:flex!important;visibility:visible!important;opacity:1!important}
}

/* When the admin drawer is open, the site-wide mobile tab bar must not cover its account actions. */
@media(max-width:700px){
  html[data-theme] body.dashboard-drawer-open .bottom-tabbar{visibility:hidden!important;opacity:0!important;pointer-events:none!important;z-index:1!important}
  html[data-theme] body.dashboard-drawer-open .dashboard-sidebar{z-index:1200!important}
  html[data-theme] body.dashboard-drawer-open .dashboard-sidebar-backdrop{z-index:1100!important}
}

/* Definitive open-admin-drawer override: remove the global mobile tabbar from the stacking and layout model. */
@media(max-width:880px) and (pointer:coarse){
  html[data-theme] body.dashboard-drawer-open #bottomTabbar,
  html[data-theme] body.dashboard-drawer-open .bottom-tabbar{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;position:absolute!important;inset:auto!important;width:0!important;height:0!important;overflow:hidden!important}
  html[data-theme] body.dashboard-drawer-open .dashboard-sidebar{z-index:2147483000!important}
  html[data-theme] body.dashboard-drawer-open .dashboard-sidebar-backdrop{z-index:2147482000!important}
}

/* Workspace pages use the normal site header as the sole top navigation. */
html[data-theme] body.workspace-page .dashboard-admin-strip{display:none!important}

/* Keep the approved authenticated workspace hero flush beneath the normal site header. */
html[data-theme] body.workspace-page .dashboard-command-hero{margin-top:0!important}
@media(max-width:700px){html[data-theme] body.workspace-page .dashboard-command-hero{margin-top:0!important}}

/* Authenticated workspace uses the normal header menu control for its sidebar drawer. */
@media(max-width:700px){
  html[data-theme] body.workspace-page .workspace-header-menu{display:inline-flex!important;align-items:center;justify-content:center;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;border-radius:10px!important;flex:0 0 auto!important}
  html[data-theme] body.workspace-page .workspace-header-menu span{display:block!important;width:16px!important;height:2px!important;margin:2px 0!important;border-radius:2px;background:currentColor!important}
}
@media(max-width:390px){html[data-theme] body.workspace-page .workspace-header-menu{width:36px!important;height:36px!important;min-width:36px!important}}

/* Authenticated dashboard switch links and intentional hero-card separation. */
html[data-theme] body.workspace-page .workspace-switch-link{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text-2);font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .18s ease,color .18s ease,border-color .18s ease}
html[data-theme] body.workspace-page .workspace-switch-link:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}
html[data-theme] body.workspace-page .dashboard-command-hero{margin-top:16px!important}
@media(max-width:700px){html[data-theme] body.workspace-page .workspace-switch-link{display:none!important}html[data-theme] body.workspace-page .dashboard-command-hero{margin-top:12px!important}}

/* Restore the original menu treatment inside the role-aware drawer. */
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar{width:min(330px,88vw)!important;padding:22px 16px 0!important;background:var(--bg-card)!important;border-right:1px solid var(--border)!important;box-shadow:18px 0 42px rgba(0,0,0,.28)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-brand{display:flex!important;align-items:center!important;justify-content:center!important;min-height:58px!important;margin:0 0 18px!important;padding:10px 8px!important;border-bottom:1px solid var(--border)!important;background:transparent!important;text-align:center!important;position:relative!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-brand>div{text-align:center!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-brand .dashboard-sidebar-close{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav{padding:0 2px 42px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav>a{min-height:44px!important;padding:11px 13px!important;border-radius:10px!important;font-size:13px!important;gap:12px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav>a i{width:19px!important;font-size:14px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav>a.is-active{background:var(--primary-light)!important;color:var(--primary)!important;box-shadow:inset 3px 0 0 var(--primary)!important}
  html[data-theme] body.workspace-page .dashboard-nav-label{padding-inline:13px!important;font-size:10px!important;letter-spacing:.1em!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-footer{padding:14px 4px calc(16px + env(safe-area-inset-bottom))!important}
}

/* ================================================================
   Friday Technologies Header v2 — independent from the legacy header.
   ================================================================ */
.ft-header-v2{position:relative!important;z-index:100!important;width:100%!important;background:color-mix(in srgb,var(--bg-card) 96%,transparent)!important;border-bottom:1px solid var(--border)!important;box-shadow:0 8px 24px rgba(0,0,0,.10)!important;backdrop-filter:blur(18px)!important}
.ft-header-v2 .ft-header-inner{width:min(1240px,calc(100% - 40px))!important;min-height:72px!important;margin:0 auto!important;padding:10px 0!important;display:flex!important;align-items:center!important;gap:24px!important}
.ft-header-v2 .ft-brand{display:inline-flex!important;align-items:center!important;flex:0 0 auto!important;width:auto!important;height:42px!important;text-decoration:none!important}
.ft-header-v2 .ft-brand img{display:block!important;width:auto!important;height:38px!important;max-width:150px!important;object-fit:contain!important}
.ft-header-v2 .ft-brand .site-logo-fallback{color:var(--text)!important}
.ft-header-v2 .ft-primary-nav{display:flex!important;align-items:center!important;gap:4px!important;flex:1 1 auto!important;min-width:0!important}
.ft-header-v2 .ft-primary-nav>a,.ft-header-v2 .ft-primary-nav>details>summary{display:inline-flex!important;align-items:center!important;gap:6px!important;height:38px!important;padding:0 11px!important;border-radius:9px!important;color:var(--text-2)!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important;cursor:pointer!important;transition:background .18s ease,color .18s ease!important}
.ft-header-v2 .ft-primary-nav>a:hover,.ft-header-v2 .ft-primary-nav>a.active,.ft-header-v2 .ft-primary-nav>details[open]>summary,.ft-header-v2 .ft-primary-nav>details.is-active>summary{background:var(--primary-light)!important;color:var(--primary)!important}
.ft-header-v2 .ft-primary-nav>details{position:relative!important}
.ft-header-v2 .ft-primary-nav>details>summary{list-style:none!important}
.ft-header-v2 .ft-primary-nav>details>summary::-webkit-details-marker{display:none!important}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu{position:absolute!important;top:44px!important;left:0!important;z-index:1000!important;min-width:300px!important;padding:8px!important;border:1px solid var(--border)!important;border-radius:13px!important;background:var(--bg-card)!important;box-shadow:0 18px 44px rgba(0,0,0,.18)!important}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu a{display:flex!important;align-items:center!important;gap:10px!important;padding:10px 11px!important;border-radius:8px!important;color:var(--text-2)!important;font-size:12px!important;text-decoration:none!important}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu a:hover{background:var(--primary-light)!important;color:var(--primary)!important}
.ft-header-v2 .ft-header-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex:0 0 auto!important;min-width:0!important}
.ft-header-v2 .ft-header-actions>.btn,.ft-header-v2 .ft-header-actions>.header-icon-btn,.ft-header-v2 .ft-header-actions>.theme-toggle-btn,.ft-header-v2 .ft-header-actions>.workspace-switch-link{margin:0!important}
.ft-header-v2 .ft-header-actions>.btn{min-height:38px!important;border-radius:10px!important;padding:0 13px!important;font-size:11px!important;white-space:nowrap!important}
.ft-header-v2 .ft-header-actions>.header-icon-btn,.ft-header-v2 .ft-header-actions>.theme-toggle-btn{width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;border-radius:10px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.ft-header-v2 .workspace-switch-link{min-height:38px!important;padding:0 11px!important;border:1px solid var(--border)!important;border-radius:10px!important;background:var(--bg-card)!important;color:var(--text-2)!important;font-size:11px!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important}
.ft-header-v2 .workspace-switch-link:hover{background:var(--primary-light)!important;color:var(--primary)!important;border-color:var(--primary)!important}
.ft-header-v2 .ft-menu-button{display:none!important;border:1px solid var(--border)!important;background:var(--bg-card)!important;color:var(--text)!important;cursor:pointer!important}
.ft-header-v2 .ft-mobile-nav{display:none!important}
@media(max-width:1050px){.ft-header-v2 .ft-header-inner{width:min(100% - 28px,900px)!important;gap:12px!important}.ft-header-v2 .ft-primary-nav>a,.ft-header-v2 .ft-primary-nav>details>summary{padding-inline:8px!important}.ft-header-v2 .workspace-switch-link span{display:none!important}}
@media(max-width:700px){
  .ft-header-v2{box-shadow:0 5px 18px rgba(0,0,0,.12)!important}
  .ft-header-v2 .ft-header-inner{width:100%!important;min-height:62px!important;padding:8px 14px!important;gap:10px!important}
  .ft-header-v2 .ft-brand{height:38px!important;max-width:132px!important}
  .ft-header-v2 .ft-brand img{height:32px!important;max-width:132px!important}
  .ft-header-v2 .ft-primary-nav{display:none!important}
  .ft-header-v2 .ft-header-actions{margin-left:auto!important;gap:6px!important;overflow:hidden!important}
  .ft-header-v2 .ft-header-actions>.pwa-install-btn,.ft-header-v2 .ft-header-actions>a[aria-label="Workspace"],.ft-header-v2 .ft-header-actions>.workspace-switch-link,.ft-header-v2 .ft-header-actions>#desktopCTA{display:none!important}
  .ft-header-v2 .ft-header-actions>.header-icon-btn[aria-label="Invoices"]{display:none!important}
  .ft-header-v2 .ft-header-actions>.header-icon-btn[aria-label="Account"]{display:inline-flex!important}
  .ft-header-v2 .ft-header-actions>.header-icon-btn[aria-label="Cart"],.ft-header-v2 .ft-header-actions>.theme-toggle-btn{display:inline-flex!important}
  .ft-header-v2 .ft-menu-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 40px!important;width:40px!important;height:40px!important;padding:0!important;border-radius:10px!important;position:relative!important}
  .ft-header-v2 .ft-menu-button span{display:block!important;width:17px!important;height:2px!important;margin:2px 0!important;border-radius:2px!important;background:currentColor!important}
  .ft-header-v2 .ft-mobile-nav{position:absolute!important;top:100%!important;left:12px!important;right:12px!important;display:none!important;flex-direction:column!important;gap:4px!important;padding:14px!important;border:1px solid var(--border)!important;border-radius:16px!important;background:var(--bg-card)!important;box-shadow:0 20px 48px rgba(0,0,0,.22)!important}
  .ft-header-v2 .ft-mobile-nav.open{display:flex!important}
  .ft-header-v2 .ft-mobile-nav a{display:flex!important;align-items:center!important;min-height:42px!important;padding:0 12px!important;border-radius:9px!important;color:var(--text)!important;font-size:13px!important;font-weight:700!important;text-decoration:none!important}
  .ft-header-v2 .ft-mobile-nav a:hover,.ft-header-v2 .ft-mobile-nav a.active{background:var(--primary-light)!important;color:var(--primary)!important}
  .ft-header-v2 .ft-mobile-nav .mobile-nav-label{padding:10px 12px 4px!important;color:var(--muted)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.1em!important;text-transform:uppercase!important}
  .ft-header-v2 .ft-mobile-nav .mobile-nav-close{align-self:flex-end!important;width:34px!important;height:34px!important;margin-bottom:4px!important;border:1px solid var(--border)!important;border-radius:9px!important;background:var(--bg-alt)!important;color:var(--text)!important}
  .ft-header-v2 .ft-mobile-nav .mobile-cta{justify-content:center!important;color:#fff!important;background:var(--fill)!important}
}

/* Mobile menu and workspace drawer v2: deliberate touch-first treatment. */
@media(max-width:700px){
  .ft-header-v2 .ft-menu-button{position:relative!important;width:44px!important;height:44px!important;min-width:44px!important;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border))!important;border-radius:13px!important;background:var(--fill)!important;color:#fff!important;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 28%,transparent)!important;transition:transform .2s ease,background .2s ease,box-shadow .2s ease!important}
  .ft-header-v2 .ft-menu-button:hover{background:var(--primary-dark)!important;transform:translateY(-1px)!important}
  .ft-header-v2 .ft-menu-button:active{transform:scale(.95)!important}
  .ft-header-v2 .ft-menu-button span{position:absolute!important;left:13px!important;width:18px!important;height:2px!important;margin:0!important;border-radius:99px!important;background:#fff!important;transition:transform .22s ease,top .22s ease,opacity .18s ease!important}
  .ft-header-v2 .ft-menu-button span:nth-child(1){top:14px!important}.ft-header-v2 .ft-menu-button span:nth-child(2){top:20px!important}.ft-header-v2 .ft-menu-button span:nth-child(3){top:26px!important}
  .ft-header-v2 .ft-menu-button.is-open,.ft-header-v2 .ft-menu-button.open{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important;box-shadow:0 6px 14px rgba(0,0,0,.12)!important}
  .ft-header-v2 .ft-menu-button.is-open span,.ft-header-v2 .ft-menu-button.open span{background:currentColor!important}
  .ft-header-v2 .ft-menu-button.is-open span:nth-child(1),.ft-header-v2 .ft-menu-button.open span:nth-child(1){top:20px!important;transform:rotate(45deg)!important}
  .ft-header-v2 .ft-menu-button.is-open span:nth-child(2),.ft-header-v2 .ft-menu-button.open span:nth-child(2){opacity:0!important;transform:scaleX(0)!important}
  .ft-header-v2 .ft-menu-button.is-open span:nth-child(3),.ft-header-v2 .ft-menu-button.open span:nth-child(3){top:20px!important;transform:rotate(-45deg)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar{inset:10px auto 10px 10px!important;width:min(360px,calc(100vw - 20px))!important;height:calc(100dvh - 20px)!important;max-height:calc(100dvh - 20px)!important;border:1px solid var(--border)!important;border-radius:22px!important;padding:0!important;overflow:hidden!important;transform:translateX(calc(-100% - 20px))!important;box-shadow:24px 18px 60px rgba(0,0,0,.32)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar.is-open{transform:translateX(0)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-brand{justify-content:flex-start!important;min-height:74px!important;margin:0!important;padding:15px 54px 15px 18px!important;border-bottom:1px solid var(--border)!important;background:linear-gradient(135deg,var(--primary-light),var(--bg-card))!important;text-align:left!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-brand>div{text-align:left!important}
  html[data-theme] body.workspace-page .dashboard-brand-mark{width:38px!important;height:38px!important;border-radius:12px!important;background:var(--fill)!important;color:#fff!important;box-shadow:0 6px 14px color-mix(in srgb,var(--primary) 25%,transparent)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-close{right:14px!important;top:15px!important;transform:none!important;width:36px!important;height:36px!important;border-radius:11px!important;background:var(--bg-card)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav{height:auto!important;max-height:none!important;flex:1 1 auto!important;padding:14px 12px 18px!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  html[data-theme] body.workspace-page .dashboard-nav-label{padding:11px 12px 5px!important;color:var(--muted)!important;font-size:10px!important;letter-spacing:.12em!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav>a{min-height:46px!important;padding:12px 13px!important;border-radius:11px!important;font-size:13px!important;font-weight:700!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav>a i{width:20px!important;font-size:14px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-footer{min-height:92px!important;padding:12px 14px calc(12px + env(safe-area-inset-bottom))!important;border-top:1px solid var(--border)!important;box-shadow:0 -10px 22px color-mix(in srgb,var(--bg-card) 80%,transparent)!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-logout{min-height:40px!important;border-radius:11px!important;padding:10px 12px!important;font-size:13px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-backdrop{background:rgba(5,8,18,.62)!important;backdrop-filter:blur(4px)!important}
}

/* Shared collapsible drawer menu: the site-wide menu used by both workspace roles. */
.dashboard-sidebar-nav .drawer-section{margin:0 0 6px;border:0}
.dashboard-sidebar-nav .drawer-section>summary{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:10px 12px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;list-style:none}
.dashboard-sidebar-nav .drawer-section>summary::-webkit-details-marker{display:none}
.dashboard-sidebar-nav .drawer-section>summary i{font-size:10px;transition:transform .2s ease}
.dashboard-sidebar-nav .drawer-section[open]>summary i{transform:rotate(180deg)}
.dashboard-sidebar-nav .drawer-section>a{display:flex;align-items:center;gap:11px;min-height:43px;margin:2px 0;padding:10px 13px;border-radius:10px;color:var(--text-2);font-size:12px;font-weight:700;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}
.dashboard-sidebar-nav .drawer-section>a:hover{background:var(--primary-light);color:var(--primary);transform:translateX(2px)}
.dashboard-sidebar-nav .drawer-section>a.is-active{background:var(--primary-light);color:var(--primary);box-shadow:inset 3px 0 0 var(--primary)}
.dashboard-sidebar-nav .drawer-section>a i{width:19px;text-align:center;color:var(--primary);font-size:13px}
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar-nav{padding:12px 12px 24px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav .drawer-section>summary{min-height:42px;padding:11px 12px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav .drawer-section>a{min-height:46px!important;margin:3px 0!important;padding:12px 13px!important;font-size:13px!important}
}

/* Final mobile drawer scroll model: header, independently scrolling nav, fixed footer. */
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar{display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;align-content:stretch!important;height:calc(100dvh - 20px)!important;max-height:calc(100dvh - 20px)!important;overflow:hidden!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-brand{grid-row:1!important;flex:none!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav{grid-row:2!important;display:block!important;height:auto!important;min-height:0!important;max-height:none!important;flex:none!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;scrollbar-width:thin!important;padding:12px 12px 28px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-footer{grid-row:3!important;position:static!important;left:auto!important;right:auto!important;bottom:auto!important;width:auto!important;min-height:0!important;flex:none!important;display:block!important;visibility:visible!important;opacity:1!important;padding:12px 14px calc(12px + env(safe-area-inset-bottom))!important;background:var(--bg-card)!important;border-top:1px solid var(--border)!important;box-shadow:0 -12px 24px color-mix(in srgb,var(--bg-card) 82%,transparent)!important;z-index:5!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-user{margin-bottom:7px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-logout{min-height:42px!important;display:flex!important;visibility:visible!important;opacity:1!important}
}

/* Keep the final drawer section clear of the mobile navigation/overlay area. */
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar-nav{padding-bottom:180px!important;scroll-padding-bottom:180px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav .drawer-section:last-child{margin-bottom:32px!important}
  html[data-theme] body.dashboard-drawer-open #bottomTabbar,html[data-theme] body.dashboard-drawer-open .bottom-tabbar{display:none!important;visibility:hidden!important;pointer-events:none!important}
}

/* Final footer visibility guard for the shared mobile drawer. */
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar{grid-template-rows:74px minmax(0,1fr) 124px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-footer{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;gap:7px!important;min-height:124px!important;height:124px!important;max-height:124px!important;overflow:visible!important;visibility:visible!important;opacity:1!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-user{display:flex!important;align-items:center!important;gap:10px!important;min-height:40px!important;margin:0!important;visibility:visible!important;opacity:1!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-user>span{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 34px!important;width:34px!important;height:34px!important;border-radius:10px!important;background:var(--fill)!important;color:#fff!important;font-weight:900!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-user>div{display:flex!important;min-width:0!important;flex-direction:column!important;visibility:visible!important;opacity:1!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-user strong{display:block!important;color:var(--text)!important;font-size:12px!important;line-height:1.2!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-user small{display:block!important;color:var(--muted)!important;font-size:10px!important;line-height:1.35!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-logout{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:40px!important;margin:0!important;padding:10px 12px!important;border:1px solid color-mix(in srgb,var(--danger) 28%,var(--border))!important;border-radius:10px!important;color:var(--danger)!important;background:color-mix(in srgb,var(--danger) 7%,transparent)!important;font-size:13px!important;font-weight:900!important;visibility:visible!important;opacity:1!important}
}

/* Mobile account controls: explicit switch action plus guaranteed Logout. */
.dashboard-sidebar-account-actions{display:flex;align-items:center;gap:8px}
.dashboard-account-switch{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:10px;background:var(--primary-light);color:var(--primary);font-size:12px;font-weight:900;text-decoration:none}
.dashboard-account-switch:hover{background:var(--fill);color:#fff}
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar-footer{grid-template-rows:auto auto!important;display:flex!important;flex-direction:column!important;height:auto!important;min-height:144px!important;max-height:none!important;gap:8px!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-account-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;width:100%!important}
  html[data-theme] body.workspace-page .dashboard-account-switch,html[data-theme] body.workspace-page .dashboard-sidebar-logout{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:42px!important;margin:0!important;padding:10px 8px!important;white-space:nowrap!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-logout{border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border))!important}
}

/* Workspace hero controls: visible outside and inside the blue card. */
.dashboard-hero-account-bar{display:flex;align-items:center;gap:10px;min-height:42px;margin:0 0 12px;padding:0 2px}
.dashboard-hero-account-label{margin-right:auto;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.dashboard-hero-account-label i{margin-right:6px;color:var(--primary)}
.dashboard-hero-switch{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:9px 14px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:10px;background:var(--primary-light);color:var(--primary);font-size:12px;font-weight:900;text-decoration:none}
.dashboard-hero-switch:hover{background:var(--fill);color:#fff}
.dashboard-hero-logout-top{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);border-radius:10px;background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);font-size:14px;text-decoration:none}
.dashboard-hero-logout-top:hover{background:var(--danger);color:#fff}
.dashboard-command-card{position:relative}
.dashboard-hero-card-logout{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.35);border-radius:9px;background:rgba(0,0,0,.16);color:#fff;font-size:12px;text-decoration:none;box-shadow:0 5px 14px rgba(0,0,0,.18)}
.dashboard-hero-card-logout:hover{background:#fff;color:#1d5fd1}
@media(max-width:700px){
  .dashboard-hero-account-bar{gap:7px;min-height:40px;margin:0 0 10px;padding:0}
  .dashboard-hero-account-label{font-size:9px;letter-spacing:.05em}
  .dashboard-hero-switch{min-height:36px;padding:8px 10px;font-size:11px}
  .dashboard-hero-logout-top{width:36px;height:36px}
  .dashboard-hero-card-logout{top:10px;right:10px;width:30px;height:30px}
}

/* Requested mobile drawer reduction: 30% narrower than the previous 360px width. */
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar{width:min(252px,calc(100vw - 20px))!important}
}

/* Account workspace controls: padded action rail above the hero card. */
.dashboard-hero-account-bar{box-sizing:border-box!important;padding:14px 18px 0!important;margin:0 0 12px!important;min-height:54px!important}
.dashboard-hero-card-logout{display:none!important}
@media(max-width:700px){
  .dashboard-hero-account-bar{padding:12px 12px 0!important;margin-bottom:10px!important;min-height:50px!important}
}

/* Additional horizontal inset for the workspace account action row. */
.dashboard-hero-account-bar{padding-left:32px!important;padding-right:32px!important}
@media(max-width:700px){.dashboard-hero-account-bar{padding-left:24px!important;padding-right:24px!important}}

/* Final sidebar footer collision fix: stack identity, account switch, and Logout. */
html[data-theme] body.workspace-page .dashboard-sidebar-footer{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;gap:9px!important;min-height:174px!important;padding:14px 12px calc(14px + env(safe-area-inset-bottom))!important;overflow:visible!important}
html[data-theme] body.workspace-page .dashboard-sidebar-account-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;width:100%!important}
html[data-theme] body.workspace-page .dashboard-account-switch,html[data-theme] body.workspace-page .dashboard-sidebar-logout{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:38px!important;box-sizing:border-box!important;margin:0!important;padding:9px 8px!important;white-space:normal!important;line-height:1.15!important}
html[data-theme] body.workspace-page .dashboard-sidebar-nav{padding-bottom:210px!important;scroll-padding-bottom:210px!important}
@media(max-width:700px){
  html[data-theme] body.workspace-page .dashboard-sidebar-footer{grid-row:3!important;min-height:174px!important;height:auto!important;max-height:none!important;padding:14px 14px calc(14px + env(safe-area-inset-bottom))!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-account-actions{grid-template-columns:1fr!important;display:grid!important}
  html[data-theme] body.workspace-page .dashboard-sidebar-nav{padding-bottom:210px!important;scroll-padding-bottom:210px!important}
}

/* Light-mode workspace corrections. The main header owns the only site logo. */
.dashboard-sidebar-brand{padding-left:18px!important;padding-right:14px!important}
html[data-theme="light"] .dashboard-command-hero .dashboard-secondary-action,html[data-theme="light"] body.light .dashboard-command-hero .dashboard-secondary-action{color:#fff!important;border-color:rgba(255,255,255,.58)!important;background:rgba(255,255,255,.08)!important;text-shadow:0 1px 2px rgba(0,0,0,.18)!important}
html[data-theme="light"] .dashboard-command-hero .dashboard-secondary-action i,html[data-theme="light"] body.light .dashboard-command-hero .dashboard-secondary-action i{color:#fff!important}
html[data-theme="light"] .dashboard-command-hero .dashboard-secondary-action:hover,html[data-theme="light"] body.light .dashboard-command-hero .dashboard-secondary-action:hover{color:#164b9c!important;background:#fff!important;border-color:#fff!important;text-shadow:none!important}
html[data-theme="light"] .dashboard-command-hero .dashboard-secondary-action:hover i,html[data-theme="light"] body.light .dashboard-command-hero .dashboard-secondary-action:hover i{color:#164b9c!important}

/* Final light-mode header corrections. */
.ft-header-v2 .ft-brand .site-logo-dark{display:none!important}
html[data-theme="light"] .ft-header-v2 .ft-brand .site-logo-light{display:block!important}
html[data-theme="light"] .ft-header-v2 .ft-brand .site-logo-dark{display:none!important}
html[data-theme="dark"] .ft-header-v2 .ft-brand .site-logo-light{display:none!important}
html[data-theme="dark"] .ft-header-v2 .ft-brand .site-logo-dark{display:block!important}
.dashboard-command-hero .dashboard-secondary-action{display:inline-flex!important;visibility:visible!important;opacity:1!important;font-size:11px!important;line-height:1.2!important;color:#fff!important;border:1px solid rgba(255,255,255,.58)!important;background:rgba(255,255,255,.08)!important;text-indent:0!important;white-space:nowrap!important}
.dashboard-command-hero .dashboard-secondary-action i{display:inline-block!important;visibility:visible!important;color:#fff!important}

/* ==========================================================================
   POLISH & DEPTH PASS
   Everything above this line intentionally flattens legacy modules onto two
   surface colors with box-shadow:none. That normalisation is worth keeping
   (it stopped stray white/dark panels), but on its own it reads as bare,
   because every panel, sidebar and card ends up the same texture with no
   sense of layering. This section sits last in the cascade (theme.css loads
   after app.css/foundation.css/animations.css on every page via
   includes/header.php) so it can safely re-introduce elevation, contrast and
   a few sleeker interaction details without touching the reset above.
   ========================================================================== */

/* Give clickable cards a slight lift + shadow instead of a flat block.
   Uses the new, stronger --shadow tokens defined at the top of this file. */
html[data-theme] .card,html[data-theme] .service-card,html[data-theme] .product-card,html[data-theme] .portfolio-card,
html[data-theme] .blog-card,html[data-theme] .testimonial-card,html[data-theme] .dashboard-card,html[data-theme] .auth-card,
html[data-theme] .funnel-card,html[data-theme] .content-card,html[data-theme] .info-card,html[data-theme] .project-card,
html[data-theme] .payment-card,html[data-theme] .career-card,html[data-theme] .result-card,html[data-theme] .bot-card,
html[data-theme] .autobot-card,html[data-theme] .transcriber-card,html[data-theme] .academy-card,html[data-theme] .academy-course-card,
html[data-theme] .course-card,html[data-theme] .lesson-card,html[data-theme] .curriculum-card,html[data-theme] .contact-card,
html[data-theme] .contact-form-card,html[data-theme] .service-detail-card,html[data-theme] .service-pricing-card,
html[data-theme] .why-card,html[data-theme] .staff-card,html[data-theme] .attendance-card,html[data-theme] .leave-card,
html[data-theme] .stat-card,html[data-theme] .table-card{
  box-shadow:var(--shadow)!important;
  transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;
}
html[data-theme] a.card:hover,html[data-theme] .service-card:hover,html[data-theme] .product-card:hover,html[data-theme] .portfolio-card:hover,
html[data-theme] .blog-card:hover,html[data-theme] .bot-card:hover,html[data-theme] .autobot-card:hover,
html[data-theme] .academy-card:hover,html[data-theme] .academy-course-card:hover,html[data-theme] .course-card:hover,
html[data-theme] .career-card:hover{
  transform:translateY(-3px)!important;box-shadow:var(--shadow-md)!important;border-color:var(--primary)!important;
}

/* Dashboard / admin surfaces: reinstate soft elevation on the primitives that were reset to box-shadow:none. */
html[data-theme] .dashboard-overview-section .stat-card,html[data-theme] .dashboard-quick-card,
html[data-theme] .dashboard-records-section .card,html[data-theme] .admin-dashboard-hero,
html[data-theme] .admin-stat-card,html[data-theme] .acard,html[data-theme] .admin-quick-card{
  box-shadow:var(--shadow)!important;
}
html[data-theme] .dashboard-quick-card:hover,html[data-theme] .admin-quick-card:hover{
  box-shadow:var(--shadow-md)!important;
}

/* Modals, dropdowns and popovers need to visibly float above the page, not just change color. */
html[data-theme] .modal-content,html[data-theme] .dropdown-menu,html[data-theme] .bell-dropdown,
html[data-theme] .admin-dropdown,html[data-theme] .admin-modal,html[data-theme] .tab-pane,
html[data-theme] .accordion-item{
  box-shadow:var(--shadow-lg)!important;
}

/* Admin shell: a hairline shadow along the sidebar edge and a slightly sunken content well
   so the three admin regions (sidebar / topbar / content) read as distinct layers. */
html[data-theme] .admin-sidebar{box-shadow:1px 0 0 var(--border),8px 0 24px -12px rgba(0,0,0,.24)!important}
html[data-theme] .admin-topbar{box-shadow:0 1px 0 var(--border),0 8px 20px -14px rgba(0,0,0,.2)!important}
html[data-theme] .admin-main,html[data-theme] .admin-content{background:var(--bg-sunken)!important}
html[data-theme] details.sidebar-section[open]{box-shadow:var(--shadow)!important}

/* Section rhythm: alternating sections get a real step in tone (bg-alt) plus a soft edge fade
   instead of a hard color line, so "sessions" of the page feel separated rather than pasted together. */
html[data-theme] .section-alt,html[data-theme] .dashboard-tools-section{
  background:var(--bg-alt)!important;
  box-shadow:inset 0 1px 0 var(--border-light),inset 0 -1px 0 var(--border-light);
}
html[data-theme] .site-footer{box-shadow:inset 0 1px 0 var(--border-light)}

/* Hero / CTA surfaces: a quiet gradient + glow reads as considered design; a single flat tint reads as unfinished. */
html[data-theme="dark"] .page-hero,html[data-theme="dark"] .auth-hero,html[data-theme="dark"] .cta-block,
html[data-theme="dark"] .stats-bar-dark,html[data-theme="dark"] .bento-ai,html[data-theme="dark"] .checkout-success-hero{
  background:
    radial-gradient(circle at 85% 8%,var(--primary-glow),transparent 40%),
    radial-gradient(circle at 8% 92%,rgba(139,123,255,.08),transparent 35%),
    linear-gradient(135deg,var(--bg-alt) 0%,var(--bg-card) 100%)!important;
}
html[data-theme="light"] .page-hero,html[data-theme="light"] .auth-hero,html[data-theme="light"] .cta-block,
html[data-theme="light"] .stats-bar-dark,html[data-theme="light"] .bento-ai,html[data-theme="light"] .checkout-success-hero{
  background:
    radial-gradient(circle at 85% 8%,var(--primary-glow),transparent 40%),
    radial-gradient(circle at 8% 92%,rgba(118,146,74,.06),transparent 35%),
    linear-gradient(135deg,#eef4ff 0%,var(--bg) 55%,#f5f8ec 100%)!important;
}

/* Buttons: a subtle gradient + real shadow on the primary action instead of a flat fill,
   and a visible (not just color-shifted) lift on hover across the board. */
html[data-theme] .btn-primary,html[data-theme] .btn-accent{
  background:var(--fill-grad)!important;
  box-shadow:var(--shadow-primary)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
html[data-theme] .btn-primary:hover,html[data-theme] .btn-accent:hover{
  transform:translateY(-2px)!important;box-shadow:var(--shadow-md),var(--shadow-primary)!important;
}
html[data-theme] .btn-primary:active,html[data-theme] .btn-accent:active{transform:translateY(0)!important}
html[data-theme] .btn-outline,html[data-theme] .btn-ghost,html[data-theme] .btn-white,html[data-theme] .btn-white-outline{
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
html[data-theme] .btn-outline:hover,html[data-theme] .btn-ghost:hover{
  transform:translateY(-1px)!important;box-shadow:var(--shadow)!important;
}

/* Visible focus rings everywhere (accessibility + it looks unfinished without one). */
html[data-theme] a:focus-visible,html[data-theme] button:focus-visible,html[data-theme] .btn:focus-visible,
html[data-theme] input:focus-visible,html[data-theme] select:focus-visible,html[data-theme] textarea:focus-visible{
  outline:2px solid var(--primary)!important;outline-offset:2px!important;
}
html[data-theme] input:focus,html[data-theme] select:focus,html[data-theme] textarea:focus{
  border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--primary-glow)!important;
}

/* Tables: a faint zebra + a slightly firmer header row reads sleeker than uniform rows on a bare grid. */
html[data-theme] table tbody tr:nth-child(even) td,html[data-theme] .atable tbody tr:nth-child(even) td{
  background:var(--bg-alt);
}
html[data-theme] table thead th,html[data-theme] .atable th{
  color:var(--text-2)!important;font-size:11px;text-transform:uppercase;letter-spacing:.05em;
}

/* Alerts/badges: a left accent bar gives them a designed feel instead of a single-tint pill. */
html[data-theme] .alert,html[data-theme] .ft-status{
  border-left-width:3px!important;border-left-style:solid!important;
}
html[data-theme] .alert-success,html[data-theme] .badge-success,html[data-theme] .chip-green{border-left-color:var(--success)!important}
html[data-theme] .alert-warning{border-left-color:var(--warning)!important}
html[data-theme] .alert-danger{border-left-color:var(--danger)!important}
html[data-theme] .alert-info{border-left-color:var(--primary)!important}

/* Sidebar active state: pair the existing inset bar with a touch of real depth. */
html[data-theme] .sidebar-nav a.active{box-shadow:inset 3px 0 0 var(--primary),var(--shadow)!important}

/* Scrollbar + selection colour, so the chrome itself feels finished rather than left at browser defaults. */
html[data-theme] ::selection{background:var(--primary-glow);color:var(--text)}
html[data-theme] .sidebar-nav-scroll,html[data-theme] .dashboard-workspace-nav{scrollbar-color:var(--border) transparent}
html[data-theme] ::-webkit-scrollbar{width:10px;height:10px}
html[data-theme] ::-webkit-scrollbar-track{background:transparent}
html[data-theme] ::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px;border:2px solid var(--bg)}
html[data-theme] ::-webkit-scrollbar-thumb:hover{background:var(--muted)}

/* ── UI fix pass (2026-09) ────────────────────────────────────────────
   Component-level contrast fixes found by the automated audit. Tokens only,
   so both themes stay in sync. */
.agency-button-label{color:inherit!important}
.agency-avatar{background:var(--fill)!important;color:#fff!important}
/* Text sitting on the blue workspace banner: keep it near-white */
.dashboard-command-hero .dashboard-overline,.dashboard-command-copy p,.dashboard-command-card .dashboard-card-kicker,.dashboard-command-card small,.dashboard-command-hero small,.dashboard-command-hero em{color:rgba(255,255,255,.92)!important;opacity:1!important}
.dashboard-primary-action{background:#fff!important;color:#1d4ed8!important}
.dashboard-command-hero .dashboard-secondary-action,html[data-theme] .dashboard-command-hero .dashboard-secondary-action{background:rgba(255,255,255,.14)!important;color:#fff!important;border:1px solid rgba(255,255,255,.45)!important}
.dashboard-small-action{background:var(--fill)!important;color:#fff!important;border-color:var(--fill)!important}
/* Selected pills / tabs / filters: solid fill + white text */
.action-pill.active,.filter-btn.active,.tr-mode-btn.active,.pill.active,.chip.active{background:var(--fill)!important;color:#fff!important;border-color:var(--fill)!important}
.product-badge{background:var(--fill)!important;color:#fff!important}
.about-stat .lbl,.about-stat .num{color:#fff!important;opacity:1!important}
/* Workspace banner: deeper brand gradient so white text is always >= 4.5:1 */
.dashboard-command-hero{background:radial-gradient(70% 90% at 90% 0%,rgba(139,123,255,.35),transparent 60%),linear-gradient(135deg,#1d4ed8 0%,#1e3a8a 100%)!important}
html[data-theme][data-theme] body .dashboard-command-hero a.dashboard-secondary-action{background:rgba(255,255,255,.14)!important;color:#fff!important;border:1px solid rgba(255,255,255,.45)!important}
html[data-theme][data-theme] body a.dashboard-small-action,html[data-theme][data-theme] body .action-pill.active{background:var(--fill)!important;color:#fff!important;border-color:var(--fill)!important}
.btn-danger{background:#be123c!important;color:#fff!important}
html[data-theme] .agency-home .agency-initials{background:var(--fill)!important;color:#fff!important}
/* Header: one sign-in control per breakpoint (icon on mobile, button on desktop) */
@media(min-width:1024px){#mobileSignIn{display:none!important}}
/* Hero: the "Your expert team" badge sat on top of the last task row; drop it below the window edge */
.agency-float-card-b{bottom:-34px!important;left:-22px!important}
@media(max-width:900px){.agency-hero-visual{padding-bottom:62px!important}.agency-float-card-b{bottom:0!important;left:12px!important;animation:none!important}}
/* Homepage closing CTA: the page's main conversion gets the primary button, at a proper size */
.agency-button-lg{padding:16px 26px!important;font-size:15px!important;border-radius:12px!important}
/* Testimonials: centre the row when there are fewer than three */
.agency-testimonial-grid{display:flex!important;flex-wrap:wrap;justify-content:center}
.agency-testimonial-grid>.agency-testimonial{flex:1 1 300px;max-width:390px}
/* Client logos: transparent marks are recoloured to fit the theme; solid app icons stay in colour as tiles */
.agency-work-visual img.is-tile{filter:none!important;max-height:64px!important;max-width:64px!important;border-radius:14px;box-shadow:var(--shadow-md)}
.agency-logo img{max-height:38px!important;max-width:130px!important;opacity:.85!important}
html[data-theme="dark"] .agency-logo:not(.is-tile) img{filter:brightness(0) invert(1)!important;opacity:.8!important}
.agency-logo.is-tile img{filter:none!important;border-radius:9px;opacity:.95!important}
.agency-logo:hover img{opacity:1!important}
/* Portfolio case-study titles were inheriting the global 28px h3 and wrapping to 3 lines */
html[data-theme] .portfolio-item h3{font-size:clamp(18px,1.5vw,21px)!important;line-height:1.3!important}
.empty-state>.empty-icon,.empty-state>i{color:var(--primary)!important;opacity:.85}
/* Inside the workspace shell the sidebar is the navigation; hide per-page duplicate menus */
.ft-account-main .dash-nav{display:none!important}
.ft-account-main .page-content{min-height:0}
/* Footer: legal links in the bottom bar; two link columns side by side on phones */
.footer-legal{display:flex;gap:16px;order:2}.footer-legal a{font-size:12px;color:var(--text-2)}.footer-legal a:hover{color:var(--primary)}
@media(max-width:767px){
  .site-footer-inner{display:grid!important;grid-template-columns:1fr 1fr!important;gap:28px 20px!important}
  .site-footer-inner>div:first-child,.site-footer-inner>div:last-child{grid-column:1/-1}
  .footer-bottom{flex-wrap:wrap;justify-content:center!important;text-align:center}
}

/* Icons inside filled buttons follow the button text colour */
html[data-theme][data-theme] .page-content a.agency-button.agency-button-primary i,html[data-theme][data-theme] .page-content a.btn.btn-primary i,.btn-primary i{color:inherit!important}

/* ── Tech hero (2026-09) ───────────────────────────────────────────────
   One hero look everywhere: the Shop/Our Work background (soft glows over a
   diagonal gradient) + the animated particle network from ui-enhance.js.  */
html[data-theme="light"]{--tech-hero-bg:radial-gradient(circle at 85% 8%,rgba(37,99,235,.16),transparent 40%),radial-gradient(circle at 8% 92%,rgba(118,146,74,.06),transparent 35%),linear-gradient(135deg,#eef4ff 0%,#f6f8fc 55%,#f5f8ec 100%);--tech-dot:37,99,235;--tech-dot-a:.34;--tech-line-a:.16}
:root,html[data-theme="dark"]{--tech-hero-bg:radial-gradient(circle at 85% 8%,rgba(79,140,255,.26),transparent 40%),radial-gradient(circle at 8% 92%,rgba(139,123,255,.08),transparent 35%),linear-gradient(135deg,#0a1020 0%,#0f172b 100%);--tech-dot:110,168,255;--tech-dot-a:.42;--tech-line-a:.20}
html[data-theme][data-theme] .agency-hero,
html[data-theme][data-theme] .services-hero,
html[data-theme][data-theme] .academy-landing-hero,
html[data-theme][data-theme] .industry-hero,
html[data-theme][data-theme] .trust-hero,
html[data-theme][data-theme] .proposal-review-hero,
html[data-theme][data-theme] .verify-page{background:var(--tech-hero-bg)!important;color:var(--text)!important;position:relative;overflow:hidden}
.tech-hero>*:not(.hero-particles),.agency-hero>*:not(.hero-particles),.services-hero>*:not(.hero-particles),.academy-landing-hero>*:not(.hero-particles),.academy-course-hero>*:not(.hero-particles),.industry-hero>*:not(.hero-particles),.trust-hero>*:not(.hero-particles),.proposal-review-hero>*:not(.hero-particles),.verify-page>*:not(.hero-particles){position:relative;z-index:1}
/* The home hero had its own grid texture; the network replaces it */
html[data-theme][data-theme] .agency-hero:before,html[data-theme][data-theme] .agency-hero:after{display:none!important}
/* Academy landing hero now uses the tech hero background in both themes */
html[data-theme] .academy-landing-hero .academy-hero-glow{display:none!important}
html[data-theme] .academy-landing-hero .academy-kicker{color:var(--accent)!important}
html[data-theme] .academy-landing-hero .academy-hero-copy h1{color:var(--text)!important}
html[data-theme] .academy-landing-hero .academy-hero-copy h1 span{color:var(--primary)!important}
html[data-theme] .academy-landing-hero .academy-hero-lead{color:var(--text-2)!important}
html[data-theme][data-theme] .academy-landing-hero .academy-text-link{color:var(--primary)!important}
html[data-theme] .academy-landing-hero .academy-proof-row div{border-left-color:var(--border)!important}
html[data-theme] .academy-landing-hero .academy-proof-row strong{color:var(--text)!important}
html[data-theme] .academy-landing-hero .academy-proof-row span{color:var(--muted)!important}
html[data-theme] .academy-landing-hero .academy-art-orbit{border-color:var(--border)!important}
html[data-theme] .academy-landing-hero .academy-art-card{background:color-mix(in srgb,var(--bg-card) 88%,transparent)!important;border-color:var(--border)!important;color:var(--text)!important;box-shadow:var(--shadow-lg)!important}
html[data-theme] .academy-landing-hero .academy-art-card strong{color:var(--text)!important}
html[data-theme] .academy-landing-hero .academy-art-main small{color:var(--muted)!important}
html[data-theme] .academy-landing-hero .academy-art-main small b,html[data-theme] .academy-landing-hero .academy-art-float i{color:var(--accent)!important}

/* ── Type system & structure (2026-09) ─────────────────────────────────
   Clean, mature arrangement: one sans (Inter) for everything readable,
   IBM Plex Mono for labels/metadata, hairlines instead of shadows,
   modest radii, and framed gutters on wide screens.                   */
html[data-theme]{--radius:12px;--radius-sm:8px;--radius-xs:6px;--hatch:rgba(11,21,48,.055)}
html[data-theme="dark"]{--hatch:rgba(255,255,255,.04)}
html[data-theme] body{font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

/* Labels, eyebrows, tags and table heads: monospace, calm, neutral */
html[data-theme] :is(.eyebrow,.agency-eyebrow,.agency-kicker,.services-eyebrow,.trust-eyebrow,.industry-eyebrow,.academy-kicker,.loader-kicker,.section-label,.academy-section-label,.ft-page-head__eyebrow,.page-eyebrow,.dashboard-overline,.dashboard-card-kicker,.dashboard-hero-account-label,.service-route-badge,.product-cat,.cat,.tr-info-card-title,.dashboard-metric-top,.agency-card-top span,.agency-work-visual>span,.badge,.tag,.chip,th,[style*="text-transform:uppercase"],[style*="text-transform: uppercase"]){font-family:var(--font-mono)!important;font-weight:500!important;letter-spacing:.07em!important}
html[data-theme] :is(.eyebrow,.agency-eyebrow,.agency-kicker,.services-eyebrow,.trust-eyebrow,.industry-eyebrow,.academy-kicker,.section-label,.ft-page-head__eyebrow,.page-eyebrow){font-size:12px!important;color:var(--text-2)!important}
html[data-theme] :is(.eyebrow,.agency-eyebrow,.services-eyebrow,.trust-eyebrow,.industry-eyebrow,.section-label,.ft-page-head__eyebrow,.page-eyebrow)::before,
html[data-theme] :is(.eyebrow,.agency-eyebrow,.services-eyebrow,.trust-eyebrow,.industry-eyebrow,.section-label,.ft-page-head__eyebrow,.page-eyebrow)::after{display:none!important}
/* keep the workspace banner labels white on blue */
html[data-theme] .dashboard-command-hero :is(.dashboard-overline,.dashboard-card-kicker){color:rgba(255,255,255,.92)!important}

/* Reading text */
html[data-theme] :is(.lead,.agency-hero p,.page-hero p,.services-hero p,.industry-hero p,.trust-hero p,.academy-hero-lead){font-size:17px!important;line-height:1.7!important;color:var(--text-2)!important}

/* Cards: hairline + modest radius, no floating shadows */
html[data-theme] :is(.card,.service-card,.product-card,.portfolio-card,.portfolio-item,.blog-card,.testimonial-card,.why-card,.industry-card,.career-card,.review-card,.process-step,.stat-card,.panel,.sec-card,.agency-capability-card,.agency-work-card,.agency-process-grid li,.agency-testimonial,.agency-route-options a,.dashboard-quick-card,.dashboard-panel,.dashboard-metric-card,.quick-link,.cart-summary,.empty-state,.funnel-card,.auth-card){border-radius:12px!important;box-shadow:none!important;border:1px solid var(--border)!important}
html[data-theme] :is(.card,.service-card,.product-card,.portfolio-card,.portfolio-item,.blog-card,.why-card,.industry-card,.agency-capability-card,.agency-work-card,.agency-route-options a,.dashboard-quick-card,.quick-link):hover{transform:none!important;box-shadow:none!important;border-color:color-mix(in srgb,var(--primary) 45%,var(--border))!important}
html[data-theme] .tilt-card{transform:none!important}

/* Buttons: solid, 8px, no glow */
html[data-theme] :is(.btn,.agency-button){border-radius:8px!important}
html[data-theme] :is(.btn-primary,.agency-button-primary){background:var(--fill)!important;box-shadow:none!important;color:#fff!important}
html[data-theme] :is(.btn-primary,.agency-button-primary):hover{background:var(--fill-hover)!important;transform:none!important}
html[data-theme] :is(.btn-outline,.agency-button-light){box-shadow:none!important}

/* Navigation: quiet text links, colour marks the active page */
html[data-theme] .ft-primary-nav .nav-link,html[data-theme] .ft-primary-nav .nav-disclosure>summary{font-size:14.5px!important;color:var(--text-2)!important;background:none!important}
html[data-theme] .ft-primary-nav .nav-link:hover,html[data-theme] .ft-primary-nav .nav-disclosure>summary:hover{color:var(--text)!important}
html[data-theme] .ft-primary-nav .nav-link.active,html[data-theme] .ft-primary-nav .nav-disclosure.is-active>summary{color:var(--primary)!important;background:none!important;font-weight:600!important}
html[data-theme] .ft-header-v2{box-shadow:none!important;border-bottom:1px solid var(--border-light)!important}

/* Section rhythm: hairline between stacked sections */
html[data-theme] main > :is(section.section,section.agency-section,section.agency-final-cta,.agency-section)+:is(section.section,section.agency-section,section.agency-final-cta,.agency-section){border-top:1px solid var(--border-light)}

/* (Framed gutter lines removed — they drew over full-bleed sections.) */
html[data-theme] .agency-logo-section p{font-family:var(--font-mono)!important;font-size:12px!important;font-weight:500!important;letter-spacing:.08em!important;color:var(--muted)!important}
/* Calm cards: no coloured accent strips */
html[data-theme] .agency-capability-card::before{display:none!important}
/* Small captions under figures read as metadata: mono */
html[data-theme] .agency-proof :is(span,small):not(.agency-initials){font-family:var(--font-mono)!important;font-size:11.5px!important;letter-spacing:.04em!important}
/* Portfolio title bands: a soft inner shade keeps white titles >= 4.5:1 on every project colour */
html[data-theme] .portfolio-item > div:has(> h3){box-shadow:inset 0 0 0 999px rgba(3,7,18,.28)!important}

/* ── Selected work: a signature colour per project (both themes) ── */
html[data-theme][data-theme] .agency-work-card .agency-work-visual{
  --wv:#1d4ed8;--wv2:#0b1f5c;
  background:
    radial-gradient(120% 90% at 100% 0%,rgba(255,255,255,.22),transparent 55%),
    radial-gradient(rgba(255,255,255,.16) 1px,transparent 1.2px) 0 0/14px 14px,
    linear-gradient(135deg,var(--wv) 0%,var(--wv2) 100%)!important;
  border-bottom:1px solid rgba(255,255,255,.08)}
html[data-theme][data-theme] .agency-work-violet .agency-work-visual{--wv:#7c3aed;--wv2:#2e1065}
html[data-theme][data-theme] .agency-work-amber  .agency-work-visual{--wv:#d97706;--wv2:#7c2d12}
html[data-theme][data-theme] .agency-work-blue   .agency-work-visual{--wv:#2563eb;--wv2:#0b1f5c}
html[data-theme][data-theme] .agency-work-green  .agency-work-visual{--wv:#059669;--wv2:#064e3b}
html[data-theme][data-theme] .agency-work-orange .agency-work-visual{--wv:#ea580c;--wv2:#7c2d12}
/* soft light bloom behind the logo */
html[data-theme][data-theme] .agency-work-visual::before{display:block!important;content:"";position:absolute;inset:auto;left:50%;top:50%;width:180px;height:180px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 65%)}
/* transparent marks become white on colour; app-icon tiles keep their own colours */
html[data-theme][data-theme] .agency-work-visual img:not(.is-tile){filter:brightness(0) invert(1)!important;opacity:.96}
html[data-theme][data-theme] .agency-work-visual img.is-tile{box-shadow:0 10px 30px rgba(0,0,0,.35)!important}
/* type label stays white on colour */
html[data-theme][data-theme] .agency-home .agency-work-visual>span{background:rgba(3,7,18,.42)!important;border:1px solid rgba(255,255,255,.18);color:#fff!important;backdrop-filter:blur(4px)}
/* hover: colour deepens slightly */
html[data-theme][data-theme] .agency-work-card:hover .agency-work-visual{filter:saturate(1.12) brightness(1.04)}
html[data-theme][data-theme] .agency-home .agency-work-card .agency-work-visual img.is-tile:not(#_){filter:none!important;opacity:1}
html[data-theme][data-theme] .agency-home .agency-work-card .agency-work-visual>span:not(#_){color:#fff!important;opacity:1!important}

/* Theme toggle: only the icon for the current mode shows (Font Awesome's display rule otherwise overrides [hidden]). */
[data-theme-icon][hidden]{display:none!important}

/* ── Fixes (2026-10) ── */
/* Screen-reader-only text: the theme toggle's label had no rule, so "Switch to … theme" showed in the header. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* overflow-x:hidden on both html and body (app.css) turns <body> into a scroll container, which
   silently breaks position:sticky (e.g. the Project Pricing summary). clip gives the same
   "no sideways scroll" without that side effect. */
@supports (overflow-x: clip){html,body{overflow-x:clip!important}}

/* ── Header polish (round 27): smaller desktop logo, Resources menu opens on hover ───────────── */
@media (min-width:701px){
  .ft-header-v2 .ft-brand{height:38px!important}
  .ft-header-v2 .ft-brand img{height:31px!important;max-width:128px!important}
}
.ft-header-v2 .ft-primary-nav>details>summary i{font-size:10px!important;transition:transform .18s ease!important}
.ft-header-v2 .ft-primary-nav>details[open]>summary i{transform:rotate(180deg)!important}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu{top:calc(100% + 10px)!important;min-width:356px!important;display:grid!important;grid-template-columns:1fr 1fr!important;grid-auto-rows:1fr!important;gap:2px!important;padding:8px!important;animation:ftMenuIn .16s ease-out both}
/* invisible bridge so the pointer can travel from "Resources" into the menu without it closing */
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu a{white-space:nowrap!important;min-height:40px!important;font-weight:700!important;transition:background .12s,color .12s!important}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu a i{width:16px!important;text-align:center!important;color:var(--primary)!important;opacity:.85}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu a:hover i,.ft-header-v2 .ft-primary-nav .nav-disclosure__menu a:focus-visible i{opacity:1}
.ft-header-v2 .ft-primary-nav .nav-disclosure__menu a:focus-visible{outline:2px solid var(--primary)!important;outline-offset:-2px!important;background:var(--primary-light)!important;color:var(--primary)!important}
@keyframes ftMenuIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ft-header-v2 .ft-primary-nav .nav-disclosure__menu{animation:none}}
html[data-theme] .ft-primary-nav .nav-disclosure[open]>summary{color:var(--primary)!important;background:var(--primary-light)!important}
