/* ============================================================
   REGISTRATIE Theme Modes R1
   Dark = current Graphite & Gold product theme.
   Light = warm Ivory & Lightning Gold theme inspired by the
           supplied gold lightning symbol.

   FUTURE VIEW CONTRACT
   New views should prefer the --reg-ui-* semantic variables below
   instead of hard-coded colors. This keeps every future module
   automatically compatible with both themes.
   ============================================================ */

:root,
html[data-reg-theme="dark"] {
    color-scheme: light;
    --reg-ui-accent: #c9951f;
    --reg-ui-accent-strong: #a36f10;
    --reg-ui-accent-soft: #f4e2ae;
    --reg-ui-accent-pale: #fff7df;
    --reg-ui-page: #f5f3ed;
    --reg-ui-surface: #fffdf8;
    --reg-ui-surface-2: #faf7ef;
    --reg-ui-text: #20232a;
    --reg-ui-text-soft: #626874;
    --reg-ui-border: #e6dfcf;
    --reg-ui-sidebar-text: #f8f4e9;
    --reg-ui-sidebar-soft: #aeb4bd;
    --reg-ui-shadow: 0 16px 42px rgba(18,20,27,.10);
}

html[data-reg-theme="light"] {
    color-scheme: light;

    /* Lightning-gold palette */
    --reg-ui-accent: #cba124;
    --reg-ui-accent-strong: #a86b05;
    --reg-ui-accent-deep: #754403;
    --reg-ui-accent-soft: #efd370;
    --reg-ui-accent-pale: #fff5cc;
    --reg-ui-gold-highlight: #f4dc78;
    --reg-ui-gold-metal: #d5a62d;
    --reg-ui-gold-shadow: #8a5304;

    --reg-ui-page: #fbf8ef;
    --reg-ui-surface: #ffffff;
    --reg-ui-surface-2: #fffaf0;
    --reg-ui-surface-3: #f8f1df;
    --reg-ui-text: #24231f;
    --reg-ui-text-strong: #171713;
    --reg-ui-text-soft: #6e6859;
    --reg-ui-border: #eadcba;
    --reg-ui-border-strong: #dcc48a;
    --reg-ui-sidebar-text: #27241d;
    --reg-ui-sidebar-soft: #786f5c;
    --reg-ui-shadow: 0 16px 42px rgba(93,69,15,.10);

    /* Existing product variables mapped to the light palette. */
    --reg-brand-950: #fffdf7;
    --reg-brand-900: #fffaf0;
    --reg-brand-850: #f9f2df;
    --reg-brand-800: #f2e6c5;
    --reg-brand-700: #8b5905;
    --reg-brand-600: #a96f08;
    --reg-brand-500: #cba124;
    --reg-brand-400: #ddb94b;
    --reg-brand-300: #efd879;
    --reg-brand-200: #f6e8b8;
    --reg-brand-100: #fff4cf;
    --reg-brand-50: #fffaf0;
    --reg-ink-950: #191914;
    --reg-ink-900: #24231f;
    --reg-ink-700: #4f4b41;
    --reg-ink-600: #686255;
    --reg-ink-500: #7d7666;
    --reg-ink-300: #cfc5ad;
    --reg-ink-200: #e1d8c5;
    --reg-ink-100: #f0eadc;
    --reg-bg: var(--reg-ui-page);
    --reg-card: var(--reg-ui-surface);
    --reg-shadow-sm: 0 10px 28px rgba(93,69,15,.07);
    --reg-shadow-md: 0 18px 52px rgba(93,69,15,.10);
    --reg-shadow-lg: 0 34px 82px rgba(93,69,15,.14);
}

/* ------------------------------------------------------------
   Theme switch control
   ------------------------------------------------------------ */
.reg-theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid rgba(201,149,31,.34);
    border-radius: 14px;
    background: rgba(255,255,255,.76);
    color: #5d4616;
    box-shadow: 0 7px 22px rgba(72,50,8,.07);
    font: inherit;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}

.reg-theme-toggle:hover {
    transform: translateY(-1px);
    border-color: rgba(201,149,31,.58);
    box-shadow: 0 11px 25px rgba(72,50,8,.10);
}

.reg-theme-bolt,
.reg-theme-menu-bolt {
    display: inline-block;
    width: 14px;
    height: 22px;
    flex: 0 0 14px;
    background: linear-gradient(145deg,#f6dc6e 0%,#d3a126 42%,#a66305 76%,#6f3e02 100%);
    clip-path: polygon(50% 0, 100% 0, 66% 40%, 95% 40%, 28% 100%, 44% 56%, 12% 56%);
    filter: drop-shadow(1px 2px 1px rgba(70,39,0,.26));
}

.reg-theme-menu-bolt { width: 11px; height: 17px; flex-basis: 11px; }

html[data-reg-theme="dark"] .reg-theme-toggle {
    background: rgba(27,31,40,.90);
    border-color: rgba(224,183,72,.32);
    color: #f0d57c;
    box-shadow: 0 8px 22px rgba(0,0,0,.12);
}

.reg-auth-topbar {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.reg-theme-toggle-auth { margin-left: auto; }

/* ------------------------------------------------------------
   Light theme shell
   ------------------------------------------------------------ */
html[data-reg-theme="light"] body,
html[data-reg-theme="light"] .reg-app-body,
html[data-reg-theme="light"] .reg-auth-body {
    background: var(--reg-ui-page) !important;
    color: var(--reg-ui-text) !important;
}

html[data-reg-theme="light"] .reg-app-main {
    background:
        radial-gradient(circle at 84% 4%, rgba(225,190,88,.13), transparent 24%),
        linear-gradient(180deg,#fffdf8 0%,#f8f4e8 100%) !important;
}

html[data-reg-theme="light"] .reg-content { color: var(--reg-ui-text); }

html[data-reg-theme="light"] .reg-topbar,
html[data-reg-theme="light"] .reg-auth-topbar {
    background: rgba(255,255,255,.94) !important;
    border-bottom-color: #eadcb8 !important;
    box-shadow: 0 8px 28px rgba(98,72,16,.055) !important;
    backdrop-filter: blur(16px);
}

html[data-reg-theme="light"] .reg-page-identity strong,
html[data-reg-theme="light"] .reg-user-copy strong,
html[data-reg-theme="light"] .reg-brand-copy strong {
    color: #24221c !important;
}

html[data-reg-theme="light"] .reg-page-identity span,
html[data-reg-theme="light"] .reg-user-copy small,
html[data-reg-theme="light"] .reg-brand-copy small {
    color: #756b57 !important;
}

/* ------------------------------------------------------------
   Light sidebar: ivory + metallic gold, not plain Bootstrap white.
   ------------------------------------------------------------ */
html[data-reg-theme="light"] .reg-sidebar {
    background:
        radial-gradient(circle at 8% -4%, rgba(237,205,105,.28), transparent 28%),
        radial-gradient(circle at 110% 92%, rgba(203,161,36,.12), transparent 36%),
        linear-gradient(165deg,#fffdf7 0%,#faf3df 58%,#f1e1b8 145%) !important;
    border-right: 1px solid #e2cc96 !important;
    box-shadow: 14px 0 38px rgba(95,69,15,.10) !important;
}

html[data-reg-theme="light"] .reg-sidebar::after {
    border-color: rgba(172,112,7,.13) !important;
    box-shadow: 0 0 0 42px rgba(203,161,36,.035),0 0 0 86px rgba(203,161,36,.018) !important;
}

html[data-reg-theme="light"] .reg-sidebar-brand {
    border-bottom-color: rgba(161,107,11,.13) !important;
}

html[data-reg-theme="light"] .reg-brand-mark,
html[data-reg-theme="light"] .reg-user-avatar {
    color: #1d1b15 !important;
    background: linear-gradient(145deg,#f7df79 0%,#d2a126 50%,#9b6206 100%) !important;
    border-color: rgba(130,79,0,.22) !important;
    box-shadow: 0 9px 24px rgba(91,57,4,.18), inset 0 0 0 1px rgba(255,244,187,.82) !important;
}

html[data-reg-theme="light"] .reg-sidebar-collapse,
html[data-reg-theme="light"] .reg-mobile-menu {
    color: #6b4b0b !important;
    background: #fff8e4 !important;
    border-color: #ead59d !important;
}

html[data-reg-theme="light"] .reg-nav-group-title { color: #8a7549 !important; }
html[data-reg-theme="light"] .reg-nav-item { color: #3a372f !important; }
html[data-reg-theme="light"] .reg-nav-icon { color: #80601c !important; }

html[data-reg-theme="light"] .reg-nav-item:hover {
    color: #171610 !important;
    background: rgba(209,165,44,.11) !important;
}

html[data-reg-theme="light"] .reg-nav-item.is-active {
    color: #1d1b15 !important;
    background: linear-gradient(90deg,rgba(222,185,78,.30),rgba(255,249,229,.76)) !important;
    box-shadow: inset 4px 0 0 #c18b14, 0 8px 22px rgba(112,77,12,.055) !important;
}

html[data-reg-theme="light"] .reg-nav-scope {
    color: #75500b !important;
    background: #fff6d7 !important;
    border-color: #d8b75d !important;
}

html[data-reg-theme="light"] .reg-nav-scope-off {
    color: #8b7851 !important;
    background: #f3eee2 !important;
    border-color: #d9d0bd !important;
}

html[data-reg-theme="light"] .reg-sidebar-status {
    background: linear-gradient(135deg,#fff6d9,#f6e5b4) !important;
    border-color: #d8b85f !important;
    color: #39301d !important;
    box-shadow: 0 10px 24px rgba(109,77,12,.08) !important;
}

html[data-reg-theme="light"] .reg-sidebar-status-copy strong { color: #302919 !important; }
html[data-reg-theme="light"] .reg-sidebar-status-copy small { color: #76684a !important; }

/* ------------------------------------------------------------
   Hero areas: lightning-gold is the primary light-theme identity.
   ------------------------------------------------------------ */
html[data-reg-theme="light"] .reg-dashboard-hero,
html[data-reg-theme="light"] .reg-mod-hero,
html[data-reg-theme="light"] .reg-auth-showcase,
html[data-reg-theme="light"] .emp-hero {
    color: #1d1b14 !important;
    background:
        radial-gradient(circle at 88% 12%, rgba(255,247,194,.48), transparent 31%),
        linear-gradient(128deg,#f8e483 0%,#deb442 46%,#bd8213 76%,#8d5604 112%) !important;
    border: 1px solid rgba(133,84,3,.18) !important;
    box-shadow: 0 22px 58px rgba(120,79,7,.16) !important;
}

html[data-reg-theme="light"] .reg-dashboard-hero::after,
html[data-reg-theme="light"] .reg-mod-hero::after,
html[data-reg-theme="light"] .emp-hero::after {
    border-color: rgba(68,42,0,.13) !important;
    box-shadow: 0 0 0 38px rgba(255,255,255,.08),0 0 0 76px rgba(255,255,255,.04) !important;
}

html[data-reg-theme="light"] .reg-dashboard-hero h1,
html[data-reg-theme="light"] .reg-dashboard-hero p,
html[data-reg-theme="light"] .reg-mod-hero h1,
html[data-reg-theme="light"] .reg-mod-hero p,
html[data-reg-theme="light"] .reg-auth-showcase h1,
html[data-reg-theme="light"] .reg-auth-showcase p,
html[data-reg-theme="light"] .emp-hero h1,
html[data-reg-theme="light"] .emp-hero p {
    color: #1d1b14 !important;
}

html[data-reg-theme="light"] .reg-eyebrow-light,
html[data-reg-theme="light"] .reg-mod-hero .reg-mod-kicker,
html[data-reg-theme="light"] .emp-kicker {
    color: #5e3b03 !important;
}

html[data-reg-theme="light"] .emp-kicker::before { background: rgba(78,47,0,.72) !important; }

html[data-reg-theme="light"] .reg-hero-monogram {
    color: #d0a126 !important;
    background: #1c2029 !important;
    border-color: rgba(81,48,0,.42) !important;
    box-shadow: 0 14px 34px rgba(70,43,0,.16) !important;
}

html[data-reg-theme="light"] .reg-hero-meta > span,
html[data-reg-theme="light"] .reg-mod-badge,
html[data-reg-theme="light"] .emp-hero-meta span {
    color: #312612 !important;
    background: rgba(255,251,229,.52) !important;
    border-color: rgba(89,54,0,.17) !important;
}

html[data-reg-theme="light"] .emp-btn-light {
    color: #4c3507 !important;
    background: #fffdf5 !important;
    border-color: #ead596 !important;
}

/* ------------------------------------------------------------
   Cards, panels, data surfaces
   ------------------------------------------------------------ */
html[data-reg-theme="light"] .reg-metric-card,
html[data-reg-theme="light"] .reg-panel,
html[data-reg-theme="light"] .reg-mod-stat,
html[data-reg-theme="light"] .reg-mod-link-card,
html[data-reg-theme="light"] .reg-mod-table-card,
html[data-reg-theme="light"] .reg-mod-permission-card,
html[data-reg-theme="light"] .reg-mod-filter-card,
html[data-reg-theme="light"] .reg-mod-info-grid > div,
html[data-reg-theme="light"] .emp-card,
html[data-reg-theme="light"] .emp-stat,
html[data-reg-theme="light"] .emp-assignment,
html[data-reg-theme="light"] .emp-info,
html[data-reg-theme="light"] .emp-page-link,
html[data-reg-theme="light"] .reg-context-form {
    background: var(--reg-ui-surface) !important;
    color: var(--reg-ui-text) !important;
    border-color: var(--reg-ui-border) !important;
    box-shadow: var(--reg-ui-shadow) !important;
}

html[data-reg-theme="light"] .reg-metric-icon,
html[data-reg-theme="light"] .reg-quick-icon,
html[data-reg-theme="light"] .reg-mod-link-no,
html[data-reg-theme="light"] .emp-avatar,
html[data-reg-theme="light"] .emp-empty-mark {
    color: #76500a !important;
    background: #fff5d1 !important;
    border-color: #e5c871 !important;
}

html[data-reg-theme="light"] .reg-eyebrow,
html[data-reg-theme="light"] .reg-mod-kicker,
html[data-reg-theme="light"] .reg-metric-arrow,
html[data-reg-theme="light"] .reg-quick-chevron,
html[data-reg-theme="light"] .emp-kicker {
    color: #a36a05 !important;
}

html[data-reg-theme="light"] .reg-quick-action,
html[data-reg-theme="light"] .emp-account-card,
html[data-reg-theme="light"] .emp-check,
html[data-reg-theme="light"] .reg-mod-action-check {
    background: #fffdf7 !important;
    border-color: #eadfbe !important;
    color: #3a3428 !important;
}

html[data-reg-theme="light"] .reg-quick-action:hover,
html[data-reg-theme="light"] .reg-mod-link-card:hover,
html[data-reg-theme="light"] .emp-page-link:hover {
    border-color: #d8b558 !important;
    box-shadow: 0 14px 30px rgba(103,72,12,.10) !important;
}

html[data-reg-theme="light"] .reg-system-list > div,
html[data-reg-theme="light"] .emp-table-head,
html[data-reg-theme="light"] .emp-pagination,
html[data-reg-theme="light"] .reg-mod-section-head {
    border-color: #ece1c6 !important;
}

html[data-reg-theme="light"] .reg-system-list span,
html[data-reg-theme="light"] .reg-system-foot,
html[data-reg-theme="light"] .emp-muted,
html[data-reg-theme="light"] .emp-table-head p,
html[data-reg-theme="light"] .emp-person small,
html[data-reg-theme="light"] .emp-company small,
html[data-reg-theme="light"] .emp-section-head small,
html[data-reg-theme="light"] .reg-mod-page-head p,
html[data-reg-theme="light"] .reg-mod-info-panel p {
    color: #766f60 !important;
}

/* ------------------------------------------------------------
   Employees R1 gold normalization for BOTH themes.
   Employees was created before the gold theme and still contains
   legacy red literals; replace them at the theme layer instead of
   editing each view.
   ------------------------------------------------------------ */
html[data-reg-theme] .emp-stat::before { background: var(--reg-ui-accent) !important; }
html[data-reg-theme] .emp-control:focus { border-color: var(--reg-ui-accent) !important; box-shadow: 0 0 0 3px rgba(203,161,36,.13) !important; }
html[data-reg-theme] .emp-btn-primary { color:#1b1913 !important; background: linear-gradient(135deg,#efcf68,#c9951f 60%,#9a6207) !important; border-color:#b77e0f !important; }
html[data-reg-theme] .emp-btn-soft { color:#75500b !important; background:#fff6d9 !important; border-color:#e8d39b !important; }
html[data-reg-theme] .emp-btn-danger { color:#8a4f04 !important; background:#fff3cf !important; border-color:#e6c676 !important; }
html[data-reg-theme] .emp-count-badge { color:#77520b !important; background:#fff5d3 !important; border-color:#e7cc84 !important; }
html[data-reg-theme] .emp-page-link.is-current { background:#c9951f !important; border-color:#c9951f !important; color:#191713 !important; }
html[data-reg-theme] .emp-detail-avatar { background: linear-gradient(145deg,#edcf69,#c8951d 58%,#8d5604) !important; color:#1e1b14 !important; box-shadow:0 12px 28px rgba(118,79,8,.18) !important; }
html[data-reg-theme] .emp-tag,
html[data-reg-theme] .emp-context-chip { color:#76500b !important; background:#fff5d1 !important; }
html[data-reg-theme] .emp-note { border-left-color:#c9951f !important; background:#fff9e9 !important; color:#6e6043 !important; }
html[data-reg-theme] .emp-check input { accent-color:#c9951f !important; }

/* ------------------------------------------------------------
   Modular R1 gold normalization for BOTH themes.
   ------------------------------------------------------------ */
html[data-reg-theme] .reg-mod-link-card:hover { color:#79530b !important; border-color:#ddc47f !important; }
html[data-reg-theme] .reg-mod-link-card > span:last-child { color:#a66e08 !important; }
html[data-reg-theme] .reg-mod-info-panel { background:#fff8e5 !important; border-color:#ead194 !important; border-left-color:#c9951f !important; color:#4b402a !important; }
html[data-reg-theme] .reg-mod-state.is-off { background:#f4eee1 !important; color:#766a53 !important; }
html[data-reg-theme] .reg-mod-action-check input { accent-color:#c9951f !important; }
html[data-reg-theme] .reg-mod-action-chip.is-allowed { background:#fff5d4 !important; border-color:#e6ca7e !important; color:#74500a !important; }
html[data-reg-theme] .reg-mod-scope-pill { background:#b57c0d !important; color:#fff9e7 !important; }

/* ------------------------------------------------------------
   Forms, dropdowns, auth and standard Bootstrap surfaces
   ------------------------------------------------------------ */
html[data-reg-theme="light"] .form-control,
html[data-reg-theme="light"] .form-select,
html[data-reg-theme="light"] .emp-control,
html[data-reg-theme="light"] .reg-context-select {
    color: #2a2821 !important;
    background-color: #fffdf8 !important;
    border-color: #ddcfaa !important;
}

html[data-reg-theme="light"] .form-control:focus,
html[data-reg-theme="light"] .form-select:focus,
html[data-reg-theme="light"] .emp-control:focus {
    border-color: #c39421 !important;
    box-shadow: 0 0 0 4px rgba(203,161,36,.14) !important;
}

html[data-reg-theme="light"] .reg-user-menu,
html[data-reg-theme="light"] .dropdown-menu {
    background: #fffdf7 !important;
    border-color: #eadbb4 !important;
    box-shadow: 0 22px 55px rgba(86,61,11,.14) !important;
}

html[data-reg-theme="light"] .reg-user-menu .dropdown-item,
html[data-reg-theme="light"] .dropdown-item { color:#302d25 !important; }
html[data-reg-theme="light"] .reg-user-menu .dropdown-item:hover,
html[data-reg-theme="light"] .dropdown-item:hover { background:#fff3cb !important; color:#5e3e05 !important; }

html[data-reg-theme="light"] .reg-auth-shell {
    background:
        radial-gradient(circle at 13% 32%, rgba(233,201,96,.18), transparent 31%),
        linear-gradient(180deg,#fffdf8 0%,#f8f1df 100%) !important;
}

html[data-reg-theme="light"] .reg-auth-card {
    background:#fff !important;
    border-color:#eadcb6 !important;
    box-shadow:0 34px 88px rgba(84,58,8,.15) !important;
}

html[data-reg-theme="light"] .reg-auth-form-panel { background:#fff !important; }
html[data-reg-theme="light"] .reg-auth-heading h2 { color:#211f19 !important; }
html[data-reg-theme="light"] .reg-auth-heading p { color:#756e60 !important; }
html[data-reg-theme="light"] .reg-auth-feature { border-top-color: rgba(63,38,0,.15) !important; }
html[data-reg-theme="light"] .reg-auth-feature > span { color:#4f3506 !important; background:rgba(255,250,224,.70) !important; }
html[data-reg-theme="light"] .reg-auth-feature strong { color:#221d12 !important; }
html[data-reg-theme="light"] .reg-auth-feature small { color:#5e4f31 !important; }

/* ------------------------------------------------------------
   Footer
   ------------------------------------------------------------ */
html[data-reg-theme="light"] .reg-footer,
html[data-reg-theme="light"] .reg-auth-footer {
    color:#756d5d !important;
    background:rgba(255,253,247,.74) !important;
    border-top-color:#eadfbe !important;
}

/* ------------------------------------------------------------
   Responsive theme switch
   ------------------------------------------------------------ */
@media (max-width: 1199.98px) {
    .reg-theme-toggle-label { display:none; }
    .reg-theme-toggle { width:44px; padding:8px; }
}

@media (max-width: 767.98px) {
    .reg-theme-toggle { min-height:42px; width:42px; border-radius:12px; }
    .reg-theme-bolt { width:12px; height:19px; }
}

@media (prefers-reduced-motion: reduce) {
    .reg-theme-toggle,
    html[data-reg-theme="light"] .reg-nav-item,
    html[data-reg-theme="light"] .reg-quick-action,
    html[data-reg-theme="light"] .reg-mod-link-card { transition:none !important; }
}
