.sujen-theme-switcher,
.admin-theme-switcher{
    position:relative;
    display:inline-flex;
    align-items:center;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
    white-space:nowrap;
    z-index:30;
}
.sujen-theme-trigger{
    appearance:none;
    border:1px solid var(--line,#e4ddd4);
    border-radius:999px;
    background:var(--paper,var(--panel,#fff));
    color:var(--ink,#241d18);
    min-height:38px;
    padding:8px 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    cursor:pointer;
    font:inherit;
    font-size:12px;
    font-weight:800;
    box-shadow:0 2px 8px #0000000a;
    transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.sujen-theme-trigger:hover{background:color-mix(in srgb,var(--ink,#241d18) 5%,var(--paper,var(--panel,#fff)))}
.sujen-theme-trigger:focus-visible{outline:2px solid var(--accent,#c85f24);outline-offset:2px}
.sujen-theme-trigger span{font-size:15px;line-height:1}
.sujen-theme-trigger b{font:inherit;font-weight:800}
.sujen-theme-menu{
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    min-width:152px;
    padding:6px;
    display:none;
    flex-direction:column;
    gap:3px;
    border:1px solid var(--line,#e4ddd4);
    border-radius:14px;
    background:var(--paper,var(--panel,#fff));
    box-shadow:0 14px 34px #00000024;
    z-index:999;
}
.theme-menu-open > .sujen-theme-menu{display:flex}
.sujen-theme-menu [data-sujen-theme-choice]{
    appearance:none;
    width:100%;
    min-height:38px;
    border:0;
    border-radius:10px;
    background:transparent;
    color:var(--ink,#241d18);
    padding:8px 11px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:9px;
    cursor:pointer;
    font:inherit;
    font-size:12px;
    font-weight:750;
    text-align:left;
    box-shadow:none;
    transition:background .14s ease,color .14s ease;
}
.sujen-theme-menu [data-sujen-theme-choice]:hover{background:color-mix(in srgb,var(--accent,#c85f24) 10%,transparent)}
.sujen-theme-menu [data-sujen-theme-choice]:focus-visible{outline:2px solid var(--accent,#c85f24);outline-offset:-1px}
.sujen-theme-menu [data-sujen-theme-choice].active,
.sujen-theme-menu [data-sujen-theme-choice][aria-pressed="true"]{
    background:color-mix(in srgb,var(--accent,#c85f24) 16%,transparent);
    color:var(--accent,#c85f24);
}
.sujen-theme-menu [data-sujen-theme-choice] span{font-size:15px;line-height:1;width:20px;text-align:center}
.sujen-theme-menu [data-sujen-theme-choice] b{font:inherit;font-weight:800;white-space:nowrap}
.auth-theme-row{display:flex;justify-content:flex-end;margin:-10px -10px 14px;position:relative;z-index:20}
.invoice-actions .sujen-theme-switcher{margin-left:auto}
.nav-theme-switcher{margin-inline:2px}
html[data-theme="dark"] .sujen-theme-trigger,
html[data-theme="dark"] .sujen-theme-menu,
html[data-admin-theme="dark"] .sujen-theme-trigger,
html[data-admin-theme="dark"] .sujen-theme-menu{
    background:var(--panel,#201b18);
}
@media(max-width:760px){
    .sujen-theme-trigger{min-height:36px;padding:7px 10px}
    .sujen-theme-trigger b{display:inline}
    .sujen-theme-menu{min-width:145px}
    .customer-nav .sujen-theme-switcher{margin-left:auto}
    .invoice-actions{flex-wrap:wrap}
}

/* v27: pilihan tema aktif harus jelas, tidak memudar, dan mengikuti kontras tema. */
.sujen-theme-trigger,
.sujen-theme-menu [data-sujen-theme-choice],
.sujen-theme-menu [data-sujen-theme-choice] span,
.sujen-theme-menu [data-sujen-theme-choice] b{
    opacity:1 !important;
}

/* LIGHT: teks hitam/gelap penuh. */
html[data-theme="light"] .sujen-theme-trigger,
html[data-theme="light"] .sujen-theme-menu [data-sujen-theme-choice],
html[data-admin-theme="light"] .sujen-theme-trigger,
html[data-admin-theme="light"] .sujen-theme-menu [data-sujen-theme-choice]{
    color:#16110e !important;
}
html[data-theme="light"] .sujen-theme-menu [data-sujen-theme-choice].active,
html[data-theme="light"] .sujen-theme-menu [data-sujen-theme-choice][aria-pressed="true"],
html[data-admin-theme="light"] .sujen-theme-menu [data-sujen-theme-choice].active,
html[data-admin-theme="light"] .sujen-theme-menu [data-sujen-theme-choice][aria-pressed="true"]{
    color:#000 !important;
    background:rgba(0,0,0,.08) !important;
    font-weight:900;
}

/* DARK: teks putih penuh. */
html[data-theme="dark"] .sujen-theme-trigger,
html[data-theme="dark"] .sujen-theme-menu [data-sujen-theme-choice],
html[data-admin-theme="dark"] .sujen-theme-trigger,
html[data-admin-theme="dark"] .sujen-theme-menu [data-sujen-theme-choice]{
    color:#fff !important;
}
html[data-theme="dark"] .sujen-theme-menu [data-sujen-theme-choice].active,
html[data-theme="dark"] .sujen-theme-menu [data-sujen-theme-choice][aria-pressed="true"],
html[data-admin-theme="dark"] .sujen-theme-menu [data-sujen-theme-choice].active,
html[data-admin-theme="dark"] .sujen-theme-menu [data-sujen-theme-choice][aria-pressed="true"]{
    color:#fff !important;
    background:rgba(255,255,255,.12) !important;
    font-weight:900;
}

/* Pastikan pilihan yang disabled secara native tidak dipakai untuk status aktif. */
.sujen-theme-menu [data-sujen-theme-choice].active,
.sujen-theme-menu [data-sujen-theme-choice][aria-pressed="true"]{
    filter:none !important;
    text-shadow:none !important;
}
