/* Modo oscuro (v0.44): lo elige cada persona (Claro · Oscuro · Sistema). Solo actúa con <html class="dark">. */
html.dark,html.dark.theme-dubx{color-scheme:dark;
  --bg:#0F1115; --card:#171A21; --ink:#E6E8EE; --ink2:#BAC0CC; --muted:#9AA1AE; --line:#2A2F3A; --line2:#232833;
  --todo-bg:#232833; --todo:#C9CED8; --ok-bg:#12301F; --ok:#7EE2A8; --warn-bg:#33270F; --warn:#F5C26B; --rev-bg:#1B2447; --rev:#A9B8F5;
  --err-bg:#3A1717; --err:#F4A3A3; --late:#F87171; --link:#8AB4FF; --graphite:#E6E8EE;
  --accent-soft:color-mix(in srgb,var(--accent) 20%,#171A21)}
html.dark body{background:var(--bg);color:var(--ink)}
html.dark a:hover{color:#B5CEFF}
html.dark.side-light{--side:#13161C; --side-ink:#C9CED8; --side-muted:#8A91A0; --side-on:#1C2740}
html.dark.side-light .side{border-right-color:#232833}
html.dark.side-light .side .brand,html.dark.side-light .brand,html.dark.side-light .space summary{color:#E6E8EE}
html.dark.side-light .nav-group a.on,html.dark.side-light .space-projects a.on,html.dark.side-light .nav-proj.on > a{color:#8AB4FF}
html.dark.side-light .nav-dubx .nav-group a.on{background:#1C2740;color:#8AB4FF}
html.dark.side-light .nav-dubx .nav-group a.on svg{color:#8AB4FF}
html.dark .dubx-word,html.dark.side-light .dubx-word{color:#E6E8EE}
html.dark.side-light .dubx-word b{color:#6C9BFF}
html.dark .nav-dubx img.dubx-mark{background:#fff;border-radius:7px;padding:3px}
html.dark.theme-dubx .top{box-shadow:inset 0 -2px 0 var(--accent)}
html.dark .flash{filter:brightness(.9)}
html.dark img{color-scheme:normal}
html.dark ::placeholder{color:#6B7280}
html.dark .chips .chip.chip-view{background:var(--accent);color:#fff}
/* selector de apariencia en el menú de la empresa */
.ap-row{display:flex;flex-direction:column;gap:6px;padding:8px 8px 10px;border-bottom:1px solid var(--line2);margin-bottom:4px}
.ap-row > span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ap-seg{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:9px;overflow:hidden}
.ap-seg button{border:0;background:transparent;color:var(--ink2);font:inherit;font-size:13px;padding:7px 4px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px}
.ap-seg button + button{border-left:1px solid var(--line)}
.ap-seg button[aria-pressed="true"]{background:var(--accent);color:#fff}
/* app.css */
html.dark a:hover{color:#7D94E8}
html.dark .top{background:#18191E}
html.dark .avatar{background:#1C2131}
html.dark .chip{background:#18191E}
html.dark .proj-card{background:#18191E}
html.dark table.tasks th{background:#1C1C1F}
html.dark .btn{border:1px solid #3E4046;background:#18191E}
html.dark .btn:hover{background:#1D1D21}
html.dark .btn.danger{border-color:#552D2D}
html.dark input,html.dark select,html.dark textarea{border:1px solid #3E4046;background:#18191E}
html.dark .login-card{background:#18191E}
html.dark .cf-cell:focus{background:#18191E;border-color:#3E4046}
html.dark .seg button{background:#18191E}
html.dark .seg button:hover,html.dark .seg a:hover{background:#1D1D21}
html.dark .sheet{background:#18191E}
html.dark table.grid th{background:#1C1C1F}
html.dark table.grid td{background:#18191E}
html.dark table.grid th:first-child{background:#1C1C1F}
html.dark table.grid tr:hover td{background:#1B1B1F}
html.dark .cell:hover{background:#1D1F22}
html.dark .cell:focus{background:#18191E}
html.dark td.c-title .open-task{background:#18191E}
html.dark .add-row-tr td{background:#18191E}
html.dark .danger-zone{border-color:#552D2D}
html.dark table.grid th.c-sel,html.dark table.grid th.c-title{background:#1C1C1F}
html.dark .t-edit{background:#18191E}
html.dark .t-edit:hover{border-color:#343B50}
html.dark .ind-i.ok{color:#82E7A8}
html.dark .tag-chip{background:color-mix(in srgb, var(--tc) 16%, #18191E);color:color-mix(in srgb, var(--tc) 80%, #EDEDED);border:1px solid color-mix(in srgb, var(--tc) 35%, #2B2E36)}
html.dark .peek{background:#18191E}
html.dark .pc-box{border:1.5px solid #42464C}
html.dark .bb-pop{background:#18191E}
html.dark .bb-opt:hover,html.dark .bb-opt:focus-visible{background:#1E2023}
html.dark .ftab{color:color-mix(in srgb, var(--tc) 75%, #EDEDED);background:color-mix(in srgb, var(--tc) 18%, #18191E);border:1px solid color-mix(in srgb, var(--tc) 35%, #2B2E36)}
html.dark .ftab:hover{color:color-mix(in srgb, var(--tc) 85%, #EDEDED)}
html.dark .ftab .count{background:color-mix(in srgb, var(--tc) 22%, #18191E);color:color-mix(in srgb, var(--tc) 80%, #EDEDED);border:1px solid color-mix(in srgb, var(--tc) 30%, #2B2E36)}
html.dark kbd{background:#18191E}
html.dark .fav-btn:hover{color:#FAC94A}
html.dark .fav-btn.on{color:#FAC94A}
html.dark .chip-lock{background:#312713;border-color:#63512C;color:#FCCA7B}
html.dark .sheet-origin{background:#111A2E;border-color:#233153;color:#7F91DC}
html.dark .vis-ic{background:#18191E}
html.dark .lists-pop{background:#18191E}
html.dark .ph-icons{background:#18191E}
html.dark .ph-drop{border:2px dashed #3E4046}
html.dark .pmenu{background:#18191E}
html.dark .pm-check{border:1.5px solid #41444B}
html.dark .pm-sw{border:2px solid #2B2E36}
html.dark .ws-menu{background:#18191E}
html.dark .ws-plus{border:1.5px dashed #41444B}
html.dark .seg{background:#18191E}
html.dark .proj-head.has-poster{background:#18191E}
html.dark .main.has-bg-img{background-color:#1E2023}
html.dark .pa-seg.on{background:#18191E}
html.dark .sheet-head{background:#18191E}
html.dark .shell.side-custom .nav-group a:hover,html.dark .shell.side-custom .side .brand:hover,html.dark .shell.side-custom .side .brand[aria-expanded="true"],html.dark .shell.side-custom .space summary:hover{background:color-mix(in srgb,var(--side) 82%,#18191E)}
html.dark .shell.side-custom .nav-group a.on,html.dark .shell.side-custom .nav-proj.on > a,html.dark .shell.side-custom .space-projects a.on{background:color-mix(in srgb,var(--side) 72%,#18191E)}
html.dark .shell.side-custom .nav-more:hover{background:color-mix(in srgb,var(--side) 70%,#18191E)}
html.dark .shell.side-custom .space-projects a:hover{background:color-mix(in srgb,var(--side) 82%,#18191E)}
html.dark .order-chip{background:color-mix(in srgb, var(--oc) 14%, #18191E);color:color-mix(in srgb, var(--oc) 85%, #EDEDED);border:1px solid color-mix(in srgb, var(--oc) 40%, #2B2E36)}
html.dark .order-chip:hover{background:color-mix(in srgb, var(--oc) 24%, #18191E)}
html.dark .ord-meta .chip.late{border-color:#552D2D}
html.dark .ord-note{background:#1D1D21}
html.dark .ord-accept{background:#1C1C1F}
html.dark .ord-accept select,html.dark .ord-accept input{border:1px solid #3E4046;background:#18191E}
html.dark .ord-desc{background:#1D1D21}
html.dark .ord-bill-grid input,html.dark .ord-bill-grid select{border:1px solid #3E4046}
html.dark .ord-thread li{background:#11152C}
html.dark .ord-note-form textarea{border:1px solid #3E4046}
html.dark .ord-filters select{border:1px solid #3E4046;background:#18191E}
html.dark .ord-bill-table .ob:hover,html.dark .ord-bill-table .ob:focus{border-color:#3E4046;background:#18191E}
html.dark .ord-inv-bar input{border:1px solid #3E4046}
html.dark .ord-tariff-row input[name=name]{border:1px solid #3E4046}
html.dark .ord-tariff-row input[name=price]{border:1px solid #3E4046}
html.dark .ord-tariff-row select{border:1px solid #3E4046}
html.dark .tl-who select{border:1px solid #3E4046;background:#18191E}
html.dark .gt-head{background:#1C1C1F}
html.dark .gl-head{background:#1C1C1F}
html.dark .gr:hover .gl-cell{background:#1A1C23}
html.dark .gr-g{background:#1C1C1F}
html.dark .gr-g .gl-cell{background:#1C1C1F}
html.dark .g-st.done{background:#22C55E url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='#18191E' stroke-width='4'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/9px no-repeat}
html.dark .g-due.ok{color:#70E89C}
html.dark .g-bar{background:color-mix(in srgb, var(--c) 45%, #18191E);border:1px solid color-mix(in srgb, var(--c) 70%, #2B2E36)}
html.dark .g-bar.done{background:color-mix(in srgb, #22C55E 35%, #18191E)}
html.dark .cal-head{background:#1C1C1F}
html.dark .cd.we{background:#1A1A1F}
html.dark .cd.out{background:#1A1D21}
html.dark .ce{background:color-mix(in srgb, var(--lc) 20%, #18191E)}
html.dark .ce:hover{background:color-mix(in srgb, var(--lc) 32%, #18191E)}
html.dark .tl-panel{background:#18191E}
html.dark .tl-add input,html.dark .tl-add select{border:1px solid #3E4046}
html.dark .rp-date{border:1px solid #3E4046}
html.dark .rp-filters select{border:1px solid #3E4046;background:#18191E}
html.dark .rp-search input{border:1px solid #3E4046}
html.dark .rp-gchip.off{background:#18191E;border-color:#3E4046}
html.dark .rp-banner{background:#2E2111;border:1px solid #654623}
html.dark .rp-head{background:#1C1C1F}
html.dark .rp-corner{background:#1C1C1F}
html.dark .rp-lines .rl{background:#202225}
html.dark .rp-lines .rl-f{background:#1D1F22}
html.dark .rp-lines .rl-d{background:#2A2C30}
html.dark .rg{background:#1D1F23}
html.dark .rg .rr-l{background:#1D1F23}
html.dark .rr:hover .rr-l{background:#1A1C23}
html.dark .rb.prov{background:repeating-linear-gradient(135deg, var(--bc) 0 10px, color-mix(in srgb, var(--bc) 55%, #18191E) 10px 20px)}
html.dark .rp-tip{background:#18191E}
html.dark .r-chip.prov{background:repeating-linear-gradient(135deg,#94A3B8 0 6px,#2B3137 6px 12px);color:#E3E3E3}
html.dark .rp-modal{background:#18191E}
html.dark .rpd-dup input{border:1px solid #3E4046}
html.dark .rpe input,html.dark .rpe select,html.dark .rpe textarea{border:1px solid #3E4046}
html.dark .rpe-task{background:#1C1C1F}
html.dark .rpe-r{background:#18191E}
html.dark .rpe-r:hover{background:#11182E}
html.dark .rpe-warn{color:#F3A162;background:#2F2912;border:1px solid #706127}
html.dark .rp-pop{background:#18191E}
html.dark .rp-set select{border:1px solid #3E4046}
html.dark .rp-sr:hover{background:#1D1F23}
html.dark .rc-ghead input,html.dark .rc-ghead select,html.dark .rc-row input,html.dark .rc-row select{border:1px solid #3E4046}
html.dark .rc-row.new{background:#1C1C1F}
html.dark .csv-drop{border:2px dashed #40444A;background:#1C1C1F}
html.dark .csv-drop:hover,html.dark .csv-drop.over{background:#2E2111}
html.dark .csv-drop.has{background:#152A1B}
html.dark .csv-up textarea{border:1px solid #3E4046}
html.dark .csv-target select,html.dark .csv-target input{border:1px solid #3E4046}
html.dark .csv-preview .csv-h td{background:#1C1C1F}
html.dark .rv-head{background:#1C1C1F}
html.dark .rv-corner{background:#1C1C1F}
html.dark .vc{background-image:linear-gradient(to bottom, #242629 1px, transparent 1px),linear-gradient(to bottom, #1E2023 1px, transparent 1px)}
html.dark .vc.we{background-color:#1B1B1F}
html.dark .vc.today{background-color:#2A1D10}
html.dark .vb.prov{background:repeating-linear-gradient(135deg, var(--bc) 0 10px, color-mix(in srgb, var(--bc) 55%, #18191E) 10px 20px)}
html.dark .mg-title{background:#1C1C1F}
html.dark .mg-dows{background:#1C1C1F}
html.dark .mc.we{background:#1A1A1F}
html.dark .mc.out{background:#1B1D22}
html.dark .mchip{background:color-mix(in srgb, var(--bc) 22%, #18191E)}
html.dark .mchip.prov{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--bc) 22%, #18191E) 0 6px, #18191E 6px 12px)}
html.dark .mc-more{background:#1F2126}
html.dark .mc-more:hover{background:#25272C}
html.dark .ag-row{background:#18191E}
html.dark .ag-row:hover{background:#1A1D21}
html.dark .rp-arrow:hover{background:#1F2126}
html.dark .rp-tile:hover{background:#1D2024}
html.dark .rp-tile.on{background:#301E12;border-color:#63402A;color:#EB9173}
html.dark .rp-ndays.on{background:#301E12}
html.dark .rp-ndays.on select{color:#EB9173}
html.dark .rp-zoom button:hover{background:#1D2024}
html.dark .rp-filterbar{background:#1B1D22;border:1px dashed #3C4046}
html.dark .rp-filterbar select{border:1px solid #3E4046;background:#18191E}
html.dark .rp-filterbar .rp-search input{background:#18191E}
html.dark .rp-fsep{background:#2C2E32}
html.dark .rp-respick{background:#18191E}
html.dark .rc-frow textarea{border:1px solid #3E4046}
html.dark .rp-viewset .rp-tile{background:#18191E}
html.dark .trash-tools input[type=search]{border:1px solid #3E4046}
html.dark .trash-ic{background:#1F2024}
html.dark .trash-ic.k-task{background:#11182E}
html.dark .trash-ic.k-list{background:#122D2E;color:#77D5EE}
html.dark .trash-ic.k-project{background:#301E12;color:#F1885C}
html.dark .trash-ic.k-space{background:#15112C}
html.dark kbd{background:#18191E;border:1px solid #3E4046}
html.dark .rr-ic{background:color-mix(in srgb, var(--rc) 15%, #18191E);color:color-mix(in srgb, var(--rc) 85%, #EDEDED);border:1px solid color-mix(in srgb, var(--rc) 30%, #2B2E36)}
html.dark .icpick summary{border:1px solid #3E4046;background:#18191E}
html.dark .icgrid{background:#18191E}
html.dark .icgrid span:hover{background:#1D2024}
html.dark .icgrid input:checked + span{background:#301E12;color:#EB9173}
html.dark .rr.rsr{background:color-mix(in srgb, var(--rc) 4%, #18191E)}
html.dark .sb{background:color-mix(in srgb, var(--bc) 18%, #18191E);border:1.5px solid color-mix(in srgb, var(--bc) 70%, #2B2E36);color:color-mix(in srgb, var(--bc) 80%, #EDEDED)}
html.dark .sb.conflict,html.dark .vsb.conflict{background:#321414;color:#E46666}
html.dark .vs{background:color-mix(in srgb, var(--rc) 6%, #18191E)}
html.dark .vsb{background:color-mix(in srgb, var(--rc) 22%, #18191E);border:1.5px solid color-mix(in srgb, var(--rc) 70%, #2B2E36);color:color-mix(in srgb, var(--rc) 80%, #EDEDED)}
html.dark .rooms-page .rp-today{background:linear-gradient(#2C1D11,#362214);border-color:#6C462E;color:#EB9173}
html.dark .rooms-page .rp-today:hover{background:linear-gradient(#322013,#3E2718);color:#EA9D83}
html.dark .mail-app{background:#18191E}
html.dark .ml-side{background:#1B1D22}
html.dark .ml-box select{background:#18191E}
html.dark .ml-f:hover{background:#212226}
html.dark .ml-f.drop{background:#18191E}
html.dark .ml-search{background:#18191E}
html.dark .ml-it:hover{background:#1B1D22}
html.dark .ml-linked{color:#82E7A8}
html.dark .ml-read{background:#18191E}
html.dark .ml-bar{background:#18191E}
html.dark .ml-tasks{background:#1D2A21;color:#9CE5B9}
html.dark .ml-tasks a{color:#9CE5B9}
html.dark .tf-ext{background:#202225}
html.dark .mail-box-add input{border:1px solid #3E4046}
html.dark .mc-task{background:#1D2A21;color:#9CE5B9}
html.dark .mt input:not([type=checkbox]):not([type=radio]),html.dark .mt select{border:1px solid #3E4046;background:#18191E}
html.dark .mt-res label:hover{background:#1B1D22}
html.dark .te-body{background:#1B1D22}
html.dark .tf-drop label{border:1.5px dashed #404349}
html.dark .shell.side-custom .side-toggle:hover{background:color-mix(in srgb,var(--side) 80%,#18191E)}
html.dark .rp-ac{background:#18191E}
html.dark .ct-app{background:#18191E}
html.dark .ct-search{background:#18191E}
html.dark .ct-table th{background:#1C1C1F}
html.dark .ct-table td{background:#18191E}
html.dark .ct-table tr:hover td{background:#1C1C1F}
html.dark textarea.ct-input{background:#18191E}
html.dark .ct-cols li{background:#18191E}
html.dark .dub-kpis > div{background:#18191E}
html.dark .dub-fluzo{background:#18191E}
html.dark .dub-table th{background:#1C1C1F}
html.dark .dub-table tr:hover td{background:#1A1A1F}
html.dark .dub-table tfoot td{background:#1C1C1F}
html.dark .dub-role{background:#19152B;color:#A279E2}
html.dark .dub-role b{background:#18191E}
html.dark .dub-un td{background:#2F2912}
html.dark .dub-un .dub-actor{background:#18191E}
html.dark .dub-src{background:#1C1C1F}
html.dark .dub-drop label{border:2px dashed #404349}
html.dark .dub-pop{background:#18191E}
html.dark .ct-bulk{background:#2E2111;border-bottom:1px solid #654623}
html.dark .ct-table tr.ct-on td{background:#2E2111}
html.dark .dub-fluzo-box{background:#18191E}
html.dark .dub-drop2{border:2px dashed #404349}
html.dark .dub-drop2:hover,html.dark .dub-drop2.over{background:#15112C;color:#9769E0}
html.dark .dub-drop2.has-file{background:#15112C}
html.dark .dub-drop2.has-file .dz-file{color:#9769E0}
html.dark .colpick{background:#18191E}
html.dark .colpick label:hover{background:#1E1F22}
html.dark .desc-wrap.has-desc:not(.editing) .desc-preview{background:#1A1A1F}
html.dark .sl-link input{background:#1B1D22}
html.dark .btn.danger-text{color:#E46666}
html.dark .dub-kpis > div.ok{border-color:#316E47;background:#152A1B}
html.dark .dub-kpis > div.ok b{color:#82E7A8}
html.dark .dub-pbar{background:#25272A}
html.dark .dub-take.rec{background:#152A1B}
html.dark .dub-take.rec > b{color:#82E7A8}
html.dark .dub-take i.rec{color:#82E7A8}
html.dark .dub-kpis > div.skip{border-color:#662525;background:#2A1313}
html.dark .dub-skipn{color:#E46666}
html.dark .dub-skipbar{background:#2F2912;border:1px solid #706127}
html.dark .dub-skipbtn{color:#EEA376}
html.dark tr.dub-nn td{background:#181E23}
html.dark .dub-nnchip{color:#9FABBD;background:#21262C}
html.dark .dub-take.skip{background:#2A1313}
html.dark .dub-take i.skip{color:#E46666}
html.dark .bk-status.bad{background:#2A1313}
html.dark .bk-warn{color:#E46666}
html.dark .bk-ok{color:#82E7A8}
html.dark .bk-bad{color:#E46666}
html.dark .bk-tag{background:#11182E;color:#7C77D4}
html.dark .bk-help pre{background:#1B1D22}
html.dark .dub-gobtn{background:#18191E;color:#B9C5DF;border:1px solid #3B3F45}
html.dark .dub-gobtn:hover{color:#B9C5DF}
html.dark .dst{background:#18191E;color:#B9C5DF}
html.dark .rpe-st [data-st="cancelada"].on{background:#321414;color:#E46666}
html.dark .sheet-grip:hover,html.dark .sheet-grip:focus-visible{background:#1F2126}
html.dark .dbj-nums .warn{color:#F3A162}
html.dark .dbj-nums .skip{color:#E46666}
html.dark .dbj-st span{background:#1E2023}
html.dark .dbj-acts{background:#1A1D20}
html.dark .dub-switch select{background:#18191E}
html.dark .rpd-acts .btn.rpd-prov{background:repeating-linear-gradient(135deg,#21262C 0 10px,#181E23 10px 20px);color:#A7B5C9}
html.dark .r-chip.conf{background:#173321;color:#92E5B1;border:1px solid #316E47}
html.dark .r-chip.cancel{background:#321414;color:#E46666;border:1px solid #662525}
html.dark .rp-tile.rp-pin.on{background:#3D3618;color:#EEA376}
html.dark th.ico-done .th-label{color:#70E89C}
html.dark td.c-cnt.ico-done span:not(.zero){color:#70E89C}
html.dark .ses-chip{background:#18191E}
html.dark .ses-chip.conf{background:#152A25}
html.dark .ses-chip.conf svg{color:#85ECE4}
html.dark .ses-chip.prov{background:#111D2D}
html.dark td.c-rec .rec.fin{color:#82E7A8}
html.dark .ses-pop{background:#18191E}
html.dark .ses-pop a.sp-row:hover,html.dark .ses-pop a.sp-row:focus-visible{background:#1A1D24}
html.dark .ses-pop .sp-st.provisional{background:#111D2D}
html.dark .ses-pop .sp-st.confirmada{background:#152A25;color:#85ECE4}
html.dark table.grid th.c-title .th-sort{background:#18191E}
html.dark .magic-btn,html.dark .dub-gobtn.magic{color:#EFDAB3}
html.dark .magic-btn:hover,html.dark .dub-gobtn.magic:hover{color:#EFDAB3}
html.dark .mg-card{background:#18191E}
html.dark .mg-grid input,html.dark .mg-grid select{background:#18191E}
html.dark .mg-table th{background:#1C1C1F}
html.dark .mg-name small{color:#F3A162}
html.dark .mg-prev{background:#13102A;border:1px solid #271B52}
html.dark .mg-bad{color:#E46666}
html.dark .mg-gears svg path{fill:#AF8FEA}
html.dark .mg-gears .mg-hole{fill:#C0BAE5}
html.dark .mg-g2 path{fill:#A279E2}
html.dark .mg-g3 path{fill:#B781E2}
html.dark .dub-splitchip{background:#19142F}
html.dark .sp-badge{background:linear-gradient(135deg,#1C1637,#A78BFA)}
html.dark .sp-chip{background:#18191E}
html.dark .sp-chip button:hover{color:#E46666}
html.dark .sp-empty{background:#181E23}
html.dark .sp-matrix th{background:#1C1C1F}
html.dark .sp-matrix tr.none td{background:#2F2912}
html.dark .sp-mk.ok{background:#173321;color:#82E7A8}
html.dark .sp-mk.no{background:#321414;color:#E46666}
html.dark .sp-cb span{border:2px solid #3A424C;background:#18191E}
html.dark .sp-warn{color:#F3A162}
html.dark .bk-fb-card{background:#18191E}
html.dark .bk-fb-list button:hover{background:#1A1D24}
html.dark.focus body{background:#1A1D24}
html.dark .ac-pop{background:#18191E}
html.dark .ac-pop button:hover,html.dark .ac-pop button.on{background:#111D2D}
html.dark .sv{background:#18191E}
html.dark .sv-head{background:linear-gradient(135deg,#15112C,#122D2E)}
html.dark .sv-space{background:#18191E}
html.dark .sv-space.off{background:#181E23}
html.dark .sv-sw{background:#2B3137}
html.dark .sv-knob{background:#18191E;color:#8F9CAD}
html.dark .sv-sw.on .sv-knob{color:#70E89C}
html.dark .sv-p{border-bottom:1px dashed #32363C}
html.dark .sv-foot{background:#1C1C1F}
html.dark .tc{background:#18191E}
html.dark .tc-head{background:linear-gradient(135deg,#2E2111,#15112C)}
html.dark .tc-side{background:#1C1C1F}
html.dark .tc-f:hover,html.dark .tc-tag:hover{background:#1A2026}
html.dark .tc-f.on,html.dark .tc-tag.on{background:#19142F;color:#9769E0}
html.dark .tc-new{border:1.5px dashed #2F2261;background:#18191E}
html.dark .tc-new:hover{background:#15112C}
html.dark .tc-card{background:#18191E}
html.dark .tc-card:hover{border-color:#2F2261}
html.dark .tc-detail{background:#150F29}
html.dark .tc-l{background:#18191E}
html.dark .tc-sts span{background:#18191E}
html.dark .tc-fs span{background:#1A2026;color:#A7B5C9}
html.dark .tc-kindsel button{background:#18191E}
html.dark .tc-kindsel button.on{background:#15112C;color:#9769E0}
html.dark .tc-el{background:#1A1A1F}
html.dark .tc-addl{border:1.5px dashed #2F2261;background:#18191E}
html.dark .tc-foot{background:#1C1C1F}
html.dark .tc-mode{background:#15112C}
html.dark .np-card{background:#18191E}
html.dark .np-card.on{background:#15112C}
html.dark .np-tplpick{border:1px dashed #2F2261;background:#160F28}
html.dark .fd{background:#18191E}
html.dark .fd-ib{background:#1A2026}
html.dark .fd-ib:hover{background:#21262C}
html.dark .fd-tabs button span{background:#1A2026}
html.dark .fd-search:focus-within{border-color:#3A296E}
html.dark .fd-ti{background:color-mix(in srgb,var(--c) 12%,#18191E)}
html.dark .fd-ti.own{background:#1A2026}
html.dark .fd-row{background:#18191E}
html.dark .fd-row:hover{background:#181E23}
html.dark .fd-sw{background:#2B3137}
html.dark .fd-sw i{background:#18191E}
html.dark .fd-addbig{border:1.5px dashed #2F2261;background:#18191E}
html.dark .fd-addbig:hover{background:#15112C}
html.dark .fd-type{background:#18191E}
html.dark .fd-type:hover{background:#181E23}
html.dark .fd-exr:hover{background:#181E23}
html.dark .fd-hero{background:color-mix(in srgb,var(--c) 8%,#18191E)}
html.dark .fd-hero .fd-ti{background:#18191E}
html.dark .fd-f input:focus{border-color:#3A296E}
html.dark .fd-seg{background:#1A2026}
html.dark .fd-seg button.on{background:#18191E}
html.dark .fd-th{color:#9FABBD;background:#181E23}
html.dark .fd-ico{background:#18191E;color:#A7B5C9}
html.dark .fd-ico:hover{background:#1A2026}
html.dark .fd-where label.on{background:#15112C}
html.dark .fd-note{background:#2F2912}
html.dark .fd-foot{background:#1C1C1F}
html.dark .fd-chip{background:#18191E}
html.dark .fd-chip:hover{border-color:#3A296E}
html.dark .toolbar-help{background:#18191E}
html.dark .fs-pill button{background:#18191E;color:#B9C5DF}
html.dark .dub-tool.t-magic{color:#EFDAB3}
html.dark .dub-tool.t-magic:hover{color:#EFDAB3}
html.dark .dbj-acts{background:linear-gradient(180deg,#0F0F29,#15112C)}
html.dark .dbj-row+.dbj-row{border-top:1px dashed #30284D}
html.dark .auto-done{background:linear-gradient(135deg,#152C21,#1A3828);border:1px solid #2C6249}
html.dark .auto-done-tx b{color:#8DF5D8}
html.dark .auto-done-tx span{color:#7FF7D5}
html.dark .adb{background:#18191E;color:#8DF5D8}
html.dark .adb:hover{background:#152A1B;color:#8DF5D8}
html.dark .adb.undo{border-color:#662525;color:#E46666}
html.dark .adb.undo:hover{background:#2A1313;color:#E46666}
html.dark .mg-done{background:linear-gradient(135deg,#152C21,#1A3828);border:1px solid #2C6249}
html.dark .mg-done>div{color:#7FF7D5}
html.dark .mg-done b{color:#8DF5D8}
html.dark .mg-badge.undo{background:linear-gradient(135deg,#4A1E1E,#DC2626)}
html.dark .mg-keep{background:#152C21;border:1px solid #2C6249;color:#8DF5D8}
html.dark .gdlg{background:#18191E}
html.dark .gdlg-tx{color:var(--ink,#B9C5DF)}
html.dark .gdlg-in{border:1px solid var(--line,#373A3F)}
html.dark .g-sess.prov{background:repeating-linear-gradient(135deg,var(--c) 0 5px,color-mix(in srgb,var(--c) 55%,#18191E) 5px 10px)}
html.dark .g-lbl .g-clear{border:1px solid #662525;background:#18191E;color:#E46666}
html.dark .g-clear:hover{background:#2A1313}
html.dark .cal-lchip{background:#18191E}
html.dark .cal-lchip[aria-pressed="false"]{background:#1E2023}
html.dark .rp-respick .rp-rcount{background:#1F2126}
html.dark .rpk2-all{background:#18191E}
html.dark .rpk2-all:hover{background:#1E2023}
html.dark .rpk2-g{background:#1A1D21}
html.dark .rpk2-sw{background:#2F3134}
html.dark .rpk2-sw::after{background:#18191E}
html.dark .rpk2-gh.part .rpk2-sw{background:color-mix(in srgb,var(--gc) 45%,#2F3134)}
html.dark .rpk2-r{border:1.5px solid #373B40;background:#18191E}
html.dark .rpk2-ic{background:#1E2024}
html.dark .rpk2-r.on{background:color-mix(in srgb,var(--rc) 10%,#18191E)}
html.dark .tl-tip-st{background:#1E2023}
html.dark .plm{background:var(--bg,#1E1F22)}
html.dark .vs-h{border-bottom:1px solid var(--line2,#32363C)}
html.dark .vs-sec{border-bottom:1px solid var(--line2,#32363C)}
html.dark .vs-opt:hover{background:#1D1F22}
html.dark .vs-dot{border:2px solid #40444A}
html.dark .vs-tog:hover{background:#1D1F22}
html.dark .vs-tog i{background:#2F3134}
html.dark .vs-tog i::after{background:#18191E}
html.dark .uv-btn.on{color:var(--brand,#F1885C)}
html.dark .uv-pop{background:#18191E}
html.dark .uv-seg{background:#1E2023}
html.dark .uv-seg button.on{background:#18191E;color:var(--brand,#F1885C)}
html.dark .uv-row:hover{background:#1D1F22}
html.dark .uv-item:hover{background:#1D1F22}
html.dark .uv-back:hover{background:#1D1F22}
html.dark .ph-ic.uv-btn.on{color:var(--brand,#F1885C)}
html.dark .btn.qa-hoja,html.dark .dub-tool.qa-hoja,html.dark .dub-goto a.qa-hoja{background:#2F1D12 !important;color:#F19063 !important;border-color:#5B3A27 !important}
html.dark .btn.qa-tab,html.dark .dub-tool.qa-tab,html.dark .dub-goto a.qa-tab{background:#11162E !important;border-color:#202956 !important}
html.dark .btn.qa-enl,html.dark .dub-tool.qa-enl,html.dark .dub-goto a.qa-enl{background:#1C2A23 !important;color:#85ECE4 !important;border-color:#365447 !important}
html.dark .btn.qa-hoja:hover,html.dark .dub-tool.qa-hoja:hover,html.dark .dub-goto a.qa-hoja:hover{background:#372215 !important;color:#EB9173 !important}
html.dark .btn.qa-tab:hover,html.dark .dub-tool.qa-tab:hover,html.dark .dub-goto a.qa-tab:hover{background:#131933 !important;color:#7C77D4 !important}
html.dark .btn.qa-enl:hover,html.dark .dub-tool.qa-enl:hover,html.dark .dub-goto a.qa-enl:hover{background:#21322A !important;color:#94E9E3 !important}
html.dark .btn.qa-wa,html.dark .dub-goto a.qa-wa,html.dark .adb.wa{background:#1B2B21 !important;color:#7AEBAE !important;border-color:#335541 !important}
html.dark .btn.qa-wa:hover,html.dark .dub-goto a.qa-wa:hover,html.dark .adb.wa:hover{background:#203528 !important;color:#89F0B8 !important}
html.dark .iv-table th{background:#1C1C1F}
html.dark .iv-table td{border-bottom:1px solid var(--line2,#32363C)}
html.dark .iv-ses span.c{color:#82E7A8}
html.dark .iv-n{background:#1E2023;color:#AFB7C3}
html.dark .iv-s{background:#3D3618;color:#EEA376}
html.dark .iv-y{background:#173321;color:#82E7A8}
html.dark .iv-x{background:#321414;color:#E46666}
html.dark .iv-c{background:#152335}
html.dark .iv-z{background:#1E2023}
html.dark.theme-dubx a:hover{color:#77A8E7}
html.dark.side-light .side .brand:hover,html.dark.side-light .side .brand[aria-expanded="true"]{background:#212327}
html.dark.side-light .nav-group a:hover,html.dark.side-light .space summary:hover,html.dark.side-light .space-projects a:hover,html.dark.side-light .nav-proj a:hover{background:#212327}
html.dark.side-light .space-projects{border-left-color:#383C43}
html.dark.side-light .nav-more:hover{background:#26282B}
html.dark.side-light .soon em,html.dark.side-light .nav-arch{border-color:#3C4046}
html.dark.side-light .side-toggle:hover{background:#23262A}
html.dark.side-light #side-fly{background:#18191E}
html.dark.side-light #side-fly .nav-proj a:hover{background:#1E2024}
@media (min-width:901px){html.dark.side-light.side-mini .nav-label{background:#272A2E}html.dark.side-light.side-mini .space.fly-on summary{background:#24272B}}
html.dark.side-light .nav-dubx{background:#18191E;border-color:#373C44}
html.dark.side-light .nav-dubx .nav-group a.on{background:#151E2F}
html.dark.side-light .nav-spaces.after-dubx{border-top-color:#3C4047}
html.dark:not(.side-light) .nav-dubx img.dubx-mark{background:#18191E}
/* chat.css */
html.dark .ch-btn{background:#18191E}
html.dark .ch-btn:hover{border-color:#41444B}
html.dark .ch-dot{border:2px solid #2B2E36}
html.dark .ch-chips button{background:#18191E}
html.dark .ch-item:hover{background:#1D1F22}
html.dark .ch-conv,html.dark .ch-new{background:#18191E}
html.dark .ch-body{background:#18191E}
html.dark .ch-unread-line::before,html.dark .ch-unread-line::after{background:#473023}
html.dark .ch-older{background:#18191E}
html.dark .ch-msg:hover{background:#1C1C1F}
html.dark .mention{background:#171D2E;color:#7F91DC}
html.dark .mention.me{background:#3D271B;color:#F49A77}
html.dark .task-ref{background:#18191E}
html.dark .ch-msg-acts{background:#18191E}
html.dark .ch-composer{background:#18191E}
html.dark .ch-comp-box{border:1px solid #3E4046;background:#18191E}
html.dark .ch-ac{background:#18191E}
html.dark .ch-field input{border:1px solid #3E4046}
html.dark .ch-pop{background:#18191E}
html.dark .ch-pop select{border:1px solid #3E4046}
html.dark .chw-panel{background:#18191E;border:1px solid #3E4046}
html.dark .chw-toast{background:#18191E}
html.dark .chat-page{background:#18191E}
html.dark .chp-side{background:#1C1C1F}
html.dark .chp-side .ch-item:hover{background:#202124}
html.dark .chp-side .ch-search{background:#18191E}
html.dark .chp-notif{border:1px dashed #41444B;background:#18191E}
html.dark .ch-sound{background:#18191E}
html.dark .cp-x:hover{background:#18191E}
html.dark .ch-rec{border:1px solid #603F2C}
html.dark .ch-msg-text .cm-doc{background:#18191E}
html.dark .chp-tabs{background:#212226}
html.dark .chp-tabs button[aria-selected="true"]{background:#18191E}
html.dark .ch-scope-chip{background:#171D2E;color:#7F91DC}
html.dark .ch-scope-chip button{color:#7F91DC}
html.dark .cr-file{background:#18191E}
html.dark .chw-shrink,html.dark .chw-grow{background:#18191E}

html.dark .mg-grid .mg-pausa input{background:#26282F;color:#8B9099;border-color:#2F323A}

/* v0.84.3 · Los recuadros dubXpro y dubXvideo del menú lateral llevan siempre su seña de identidad
   (claro, gris clarito y el azul de la X), sea cual sea el modo (oscuro, claro) o el color del menú. */
.side .nav-dubx{background:linear-gradient(180deg,#FFFFFF 0%,#F4F6F9 100%)!important;border:1px solid #DCE1E8!important;box-shadow:0 1px 2px rgba(21,23,28,.06),0 4px 14px rgba(21,23,28,.06)!important}
.side .nav-dubx .dubx-head,.side .nav-dubx .mod-head{border-bottom-color:#E6E9EE!important}
.side .nav-dubx .dubx-word{color:#2A3241!important}
.side .nav-dubx .dubx-word b{color:#2E6AED!important;background:linear-gradient(135deg,#5B9BFF 0%,#1F5FE0 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.side .nav-dubx .mod-chev{color:#8A93A3!important}
.side .nav-dubx .mod-head:hover .mod-chev{color:#2A3241!important}
.side .nav-dubx .nav-group a{color:#3B4352!important;background:transparent!important;box-shadow:none!important}
.side .nav-dubx .nav-group a svg{color:#5B6474!important}
.side .nav-dubx .nav-group a:hover{background:#EEF2F7!important;color:#1C2230!important}
.side .nav-dubx .nav-group a.on{background:#E6EEFD!important;color:#2E6AED!important;font-weight:600}
.side .nav-dubx .nav-group a.on svg{color:#2E6AED!important}
.side .nav-dubx img.dubx-mark{background:transparent!important;padding:0!important}
/* v0.132 · fondo de proyecto (degradado claro elegido en el proyecto): en modo oscuro, el fondo oscuro de siempre (las imágenes se quedan) */
html.dark .main.has-bg:not(.has-bg-img){background-image:none!important;background-color:var(--bg)!important}
html.dark .main.has-bg.has-bg-img::before{background:rgba(15,17,21,.55)}
/* v0.132 · modo oscuro de verdad en las tarjetas de módulos del menú (dubXpro, dubXvideo, dubXtitle, dubXbox) y en el chat flotante */
html.dark .side .nav-dubx{background:linear-gradient(180deg,#1E232C 0%,#191D25 100%)!important;border-color:#2F3542!important;box-shadow:0 1px 2px rgba(0,0,0,.3)!important}
html.dark .side .nav-dubx .dubx-head,html.dark .side .nav-dubx .mod-head{border-bottom-color:#2F3542!important}
html.dark .side .nav-dubx .dubx-word{color:#E6E8EE!important}
html.dark .side .nav-dubx .mod-head:hover .mod-chev{color:#E6E8EE!important}
html.dark .side .nav-dubx .nav-group a{color:#C9CED8!important}
html.dark .side .nav-dubx .nav-group a svg{color:#9AA1AE!important}
html.dark .side .nav-dubx .nav-group a:hover{background:#262C37!important;color:#fff!important}
html.dark .side .nav-dubx .nav-group a.on{background:#1C2740!important;color:#8AB4FF!important}
html.dark .side .nav-dubx .nav-group a.on svg{color:#8AB4FF!important}
html.dark .chw-pill{background:#262C37;color:#E6E8EE;box-shadow:0 10px 28px rgba(0,0,0,.45)}
html.dark .top .tb-fs-top.on{background:#E6E8EE;color:#15171C}
/* v0.132.4 · lo que en claro es «fondo grafito y letra blanca» usaba var(--ink), que en oscuro es casi blanco: letra blanca
   sobre blanco. En oscuro, lo elegido va en azul con letra blanca y los avisos en gris oscuro */
html.dark .seg a.on,html.dark .seg a.on:hover,html.dark .seg button.on,html.dark .mt-seg button.on,html.dark .ch-chips button[aria-selected="true"],
html.dark .tb-fs-top.on,html.dark .dub-views .tb-fs.on,html.dark .dub-kpis-r .tb-fs.on,html.dark .rp-ndays.on{background:#2E6AED;border-color:#2E6AED;color:#fff}
html.dark .sheet-zoom .tb-fs.on{background:#2E6AED!important;color:#fff!important}
html.dark .mini-toast,html.dark .ch-newpill,html.dark .ses-more{background:#2A303B;color:#F1F4FA}
html.dark .apx-presets [data-slot].on{background:#2E6AED;border-color:#2E6AED;color:#fff}
html.dark .rp-modal.rd{--rd-pg:#1b1e24;--rd-soft:#22262d;--rd-soft2:#272b33;--rd-line:#333943;--rd-ink:#eef0f3;--rd-ink2:#c3c8d1;--rd-mut:#9aa1ad;--rd-azs:#1b2c47;--rd-az:#4c93ff;--rd-oks:#12321f;--rd-ok:#4ade80;--rd-ambs:#3a2a12;--rd-amb:#fbbf24;--rd-ambl:#6b4e1c;--rd-reds:#3a1616;--rd-red:#f87171;box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.06)}
html.dark .dub-pane.est{--e-pg:#1b1e24;--e-soft:#22262d;--e-soft2:#272b33;--e-line:#333943;--e-line2:#2a2f37;--e-ink:#eef0f3;--e-ink2:#c3c8d1;--e-mut:#9aa1ad;--e-az:#4c93ff;--e-azs:#1b2c47}
html.dark .rp-modal.rd{--rd-yel:#facc15;--rd-yels:#3a3112}
