/* LPT Aurora — camada incremental sobre o frontend legado. */
:root{
  --surface-page:var(--bg);
  --surface-sidebar:var(--navy);
  --surface-card:var(--paper);
  --surface-card-hover:var(--paper);
  --surface-elevated:var(--paper);
  --surface-input:var(--paper);
  --surface-modal:var(--paper);
  --surface-table:var(--paper);
  --surface-hover:var(--bg);
  --surface-selected:#e8f1ff;
  --text-primary:var(--ink);
  --text-secondary:var(--muted);
  --text-muted:var(--muted);
  --text-disabled:#8c96a5;
  --text-on-accent:#fff;
  --border-soft:var(--line);
  --border-strong:#b9c5d5;
  --accent:var(--blue);
  --accent-hover:#2458c4;
  --success:var(--green);
  --warning:var(--amber);
  --danger:var(--red);
  --maintenance:#e58a18;
  --info:var(--blue);
  --shadow-card:0 8px 24px rgba(12,25,45,.08);
  --shadow-modal:0 28px 80px rgba(3,10,22,.34);
  --radius-sm:8px;
  --radius-md:11px;
  --radius-card:15px;
}

/* Ajustes de contraste pontuais nos temas legados, sem mudar suas paletas. */
:root:not([data-theme-variant="gray"]):not([data-theme-family="modern"]) .login-brand small,
:root:not([data-theme-variant="gray"]):not([data-theme-family="modern"]) .login-card footer{color:#52637a}
:root[data-theme-variant="gray"] .login-brand small,
:root[data-theme-variant="gray"] .eyebrow,
:root[data-theme-variant="gray"] .intro,
:root[data-theme-variant="gray"] .login-card footer{color:#4f5965}

:root[data-theme-family="modern"]{
  color-scheme:dark;
  --surface-page:#07111f;
  --surface-sidebar:#0a1627;
  --surface-card:#0f1d30;
  --surface-card-hover:#14263c;
  --surface-elevated:#13243a;
  --surface-input:#091728;
  --surface-modal:#101f33;
  --surface-table:#0c192a;
  --surface-hover:#152941;
  --surface-selected:#12375c;
  --text-primary:#edf5ff;
  --text-secondary:#b8c7d9;
  --text-muted:#8fa1b8;
  --text-disabled:#68798e;
  --text-on-accent:#04111f;
  --border-soft:#22364d;
  --border-strong:#395773;
  --accent:#55adff;
  --accent-hover:#7bc1ff;
  --success:#38d69f;
  --warning:#f3c252;
  --danger:#ff6b7f;
  --maintenance:#f59a3d;
  --info:#45c6e7;
  --shadow-card:0 12px 30px rgba(0,7,18,.24);
  --shadow-modal:0 30px 90px rgba(0,5,14,.62);
  --ambient-glow:rgba(36,110,170,.19);
  --header-surface:rgba(7,17,31,.93);
  --sidebar-top:#0b192b;
  --ring-track:#233850;
  --radius-sm:9px;
  --radius-md:12px;
  --radius-card:16px;
  --navy:var(--surface-sidebar);
  --ink:var(--text-primary);
  --muted:var(--text-muted);
  --line:var(--border-soft);
  --paper:var(--surface-card);
  --bg:var(--surface-page);
  --green:var(--success);
  --red:var(--danger);
  --blue:var(--accent);
  --amber:var(--warning);
  --workspace-card:var(--surface-card);
  --workspace-card-soft:var(--surface-elevated);
  --workspace-line:var(--border-soft);
  --workspace-muted:var(--text-muted);
  --workspace-blue:var(--accent);
  --workspace-green:var(--success);
  --workspace-red:var(--danger);
  --workspace-amber:var(--warning);
  --lpt-border:var(--border-soft);
  --lpt-surface:var(--surface-elevated);
  --lpt-text:var(--text-primary);
  --lpt-muted:var(--text-muted);
  --lpt-blue:var(--accent);
}

/* Paletas modernas: mesma hierarquia visual, com identidade cromática própria. */
:root[data-theme-family="modern"][data-theme-variant="emerald"]{
  --surface-page:#071412;
  --surface-sidebar:#091a17;
  --surface-card:#0e211d;
  --surface-card-hover:#142d27;
  --surface-elevated:#132a25;
  --surface-input:#081a17;
  --surface-modal:#10251f;
  --surface-table:#0b1c19;
  --surface-hover:#163129;
  --surface-selected:#123e34;
  --border-soft:#23443c;
  --border-strong:#39695d;
  --accent:#48d7ad;
  --accent-hover:#75e6c4;
  --info:#46cbd0;
  --ambient-glow:rgba(40,157,125,.18);
  --header-surface:rgba(7,20,18,.94);
  --sidebar-top:#0b211c;
  --ring-track:#25433c;
}
:root[data-theme-family="modern"][data-theme-variant="violet"]{
  --surface-page:#100d1d;
  --surface-sidebar:#151126;
  --surface-card:#1a1630;
  --surface-card-hover:#241e40;
  --surface-elevated:#211b3a;
  --surface-input:#130f27;
  --surface-modal:#1d1735;
  --surface-table:#171229;
  --surface-hover:#292146;
  --surface-selected:#382b65;
  --border-soft:#3b315d;
  --border-strong:#625187;
  --accent:#b39aff;
  --accent-hover:#cabaff;
  --info:#71c7ef;
  --ambient-glow:rgba(132,94,220,.22);
  --header-surface:rgba(16,13,29,.94);
  --sidebar-top:#1a1430;
  --ring-track:#3b3158;
}
:root[data-theme-family="modern"][data-theme-variant="amber"]{
  --surface-page:#17110a;
  --surface-sidebar:#1c150d;
  --surface-card:#241b11;
  --surface-card-hover:#302317;
  --surface-elevated:#2b2015;
  --surface-input:#1c140c;
  --surface-modal:#281d12;
  --surface-table:#20170e;
  --surface-hover:#352619;
  --surface-selected:#493118;
  --border-soft:#4a3724;
  --border-strong:#73553a;
  --accent:#f3b85a;
  --accent-hover:#ffd082;
  --info:#66cbd8;
  --ambient-glow:rgba(211,137,47,.19);
  --header-surface:rgba(23,17,10,.94);
  --sidebar-top:#24190e;
  --ring-track:#4a3826;
}

/* Inspirado nas superfícies grafite e no azul luminoso do Breeze Dark. */
:root[data-theme-family="modern"][data-theme-variant="kubuntu"]{
  --surface-page:#171c29;
  --surface-sidebar:#1a2031;
  --surface-card:#20283a;
  --surface-card-hover:#293448;
  --surface-elevated:#263147;
  --surface-input:#171e2d;
  --surface-modal:#222c40;
  --surface-table:#1b2435;
  --surface-hover:#2d3b53;
  --surface-selected:#244668;
  --text-primary:#f1f6ff;
  --text-secondary:#c3d2e5;
  --text-muted:#a5b6cc;
  --text-disabled:#7f90a8;
  --border-soft:#374761;
  --border-strong:#5a7496;
  --accent:#66c4ff;
  --accent-hover:#91d6ff;
  --info:#80cbff;
  --ambient-glow:rgba(69,135,210,.24);
  --header-surface:rgba(26,32,49,.95);
  --sidebar-top:#202c44;
  --ring-track:#3d506d;
}

/* Inspirado no contraste frio do Kali Dark, sem reutilizar seus ativos. */
:root[data-theme-family="modern"][data-theme-variant="kali"]{
  --surface-page:#0b101a;
  --surface-sidebar:#0d1521;
  --surface-card:#142031;
  --surface-card-hover:#1a2b40;
  --surface-elevated:#19283b;
  --surface-input:#0e1a29;
  --surface-modal:#172437;
  --surface-table:#101c2c;
  --surface-hover:#1c3149;
  --surface-selected:#124259;
  --text-primary:#eef9ff;
  --text-secondary:#bed3e1;
  --text-muted:#9bb4c7;
  --text-disabled:#718da1;
  --border-soft:#294055;
  --border-strong:#426985;
  --accent:#55d9e9;
  --accent-hover:#86ecf4;
  --info:#67c9f7;
  --ambient-glow:rgba(24,151,185,.19);
  --header-surface:rgba(11,20,32,.96);
  --sidebar-top:#122338;
  --ring-track:#2a465a;
}

:root[data-theme-family="modern"] body{
  background:var(--surface-page);
  color:var(--text-primary);
}
:root[data-theme-family="modern"] body:has(#app:not(.hidden)){
  background:var(--surface-page);
}
:root[data-theme-family="modern"] .content{
  min-height:100vh;
  max-width:none;
  background:radial-gradient(circle at 76% -12%,var(--ambient-glow),transparent 32%),var(--surface-page);
  color:var(--text-primary);
}
:root[data-theme-family="modern"] .content>header{
  background:var(--header-surface);
  border-color:var(--border-soft);
  box-shadow:0 8px 26px rgba(0,7,18,.14);
}
:root[data-theme-family="modern"] .content>header h1,
:root[data-theme-family="modern"] h1,
:root[data-theme-family="modern"] h2,
:root[data-theme-family="modern"] h3,
:root[data-theme-family="modern"] h4{color:var(--text-primary)}
:root[data-theme-family="modern"] p,
:root[data-theme-family="modern"] small,
:root[data-theme-family="modern"] time{color:var(--text-muted)}
:root[data-theme-family="modern"] a{color:var(--accent)}
:root[data-theme-family="modern"] a:hover{color:var(--accent-hover)}

/* Sidebar */
:root[data-theme-family="modern"] .sidebar{
  background:linear-gradient(180deg,var(--sidebar-top),var(--surface-sidebar));
  color:var(--text-secondary);
  border-right:1px solid var(--border-soft);
  box-shadow:8px 0 30px rgba(0,7,18,.16);
}
:root[data-theme-family="modern"] .sidebar>.brand-button{
  background:var(--surface-elevated)!important;
  border-color:var(--border-soft)!important;
  box-shadow:0 9px 22px rgba(0,7,18,.24);
}
:root[data-theme-family="modern"] .sidebar>.brand-button:hover{background:var(--surface-card-hover)!important;border-color:var(--border-strong)!important}
:root[data-theme-family="modern"] .sidebar nav p{color:#6f849d}
:root[data-theme-family="modern"] .sidebar nav button{color:#9fb0c4}
:root[data-theme-family="modern"] .sidebar nav button b{color:inherit}
:root[data-theme-family="modern"] .sidebar nav button small{color:#748ba6}
:root[data-theme-family="modern"] .sidebar nav button:hover{background:var(--surface-hover);color:var(--text-primary)}
:root[data-theme-family="modern"] .sidebar nav .nav-active{
  background:var(--surface-selected);
  color:var(--text-primary);
  box-shadow:inset 3px 0 var(--accent);
}
:root[data-theme-family="modern"] .sidebar nav .nav-active small{color:var(--text-secondary)}
:root[data-theme-family="modern"] .section-navigation{border-left-color:var(--border-soft)}
:root[data-theme-family="modern"] .section-navigation button.active,
:root[data-theme-family="modern"] .section-navigation button:hover{background:var(--surface-hover);color:var(--accent)}
:root[data-theme-family="modern"] .collector{background:var(--surface-elevated);border-color:var(--border-soft)}
:root[data-theme-family="modern"] .collector strong,
:root[data-theme-family="modern"] .user strong{color:var(--text-primary)}
:root[data-theme-family="modern"] .collector small,
:root[data-theme-family="modern"] .user small{color:var(--text-muted)}
:root[data-theme-family="modern"] .user>span{background:#173c61;color:#dff2ff}

/* Seletor e controles */
:root[data-theme-family="modern"] .theme-picker{background:var(--surface-modal);border-color:var(--border-strong);color:var(--text-muted);box-shadow:0 7px 20px rgba(0,7,18,.2)}
:root[data-theme-family="modern"] .theme-picker select{background:var(--surface-selected);color:var(--text-primary)}
:root[data-theme-family="modern"] input,
:root[data-theme-family="modern"] select,
:root[data-theme-family="modern"] textarea{
  background:var(--surface-input);
  border-color:var(--border-strong);
  color:var(--text-primary);
  color-scheme:dark;
}
:root[data-theme-family="modern"] option{background:var(--surface-modal);color:var(--text-primary)}
:root[data-theme-family="modern"] input::placeholder,
:root[data-theme-family="modern"] textarea::placeholder{color:#71849a;opacity:1}
:root[data-theme-family="modern"] input:focus,
:root[data-theme-family="modern"] select:focus,
:root[data-theme-family="modern"] textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--surface-selected);outline:0}
:root[data-theme-family="modern"] :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
:root[data-theme-family="modern"] input:disabled,
:root[data-theme-family="modern"] select:disabled,
:root[data-theme-family="modern"] textarea:disabled,
:root[data-theme-family="modern"] button:disabled{color:var(--text-disabled);opacity:.72;cursor:not-allowed}
:root[data-theme-family="modern"] input[readonly],
:root[data-theme-family="modern"] textarea[readonly]{background:var(--surface-table);color:var(--text-secondary)}
:root[data-theme-family="modern"] input[type="checkbox"],
:root[data-theme-family="modern"] input[type="radio"]{accent-color:var(--accent)}
:root[data-theme-family="modern"] label,
:root[data-theme-family="modern"] legend{color:var(--text-secondary)}
:root[data-theme-family="modern"] fieldset{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .primary{background:var(--accent);color:var(--text-on-accent);box-shadow:0 6px 18px rgba(0,7,18,.24)}
:root[data-theme-family="modern"] .primary:hover{background:var(--accent-hover)}
:root[data-theme-family="modern"] .secondary,
:root[data-theme-family="modern"] .modal-actions button{background:var(--surface-elevated);border-color:var(--border-strong);color:var(--text-secondary)}
:root[data-theme-family="modern"] .secondary:hover,
:root[data-theme-family="modern"] .modal-actions button:hover{background:var(--surface-card-hover);color:var(--text-primary)}
:root[data-theme-family="modern"] .danger{color:#ff98a7;border-color:rgba(255,107,127,.45);background:rgba(255,107,127,.09)}

/* Superfícies, cards e tabelas */
:root[data-theme-family="modern"] .panel,
:root[data-theme-family="modern"] .loading,
:root[data-theme-family="modern"] .metrics article,
:root[data-theme-family="modern"] .executive-panel,
:root[data-theme-family="modern"] .executive-metrics article,
:root[data-theme-family="modern"] .admin-summary article,
:root[data-theme-family="modern"] .home-chart-card{
  background:var(--surface-card);
  border-color:var(--border-soft);
  color:var(--text-primary);
  border-radius:var(--radius-card);
  box-shadow:var(--shadow-card);
}
:root[data-theme-family="modern"] .panel:hover,
:root[data-theme-family="modern"] .home-chart-card:hover{border-color:#315373}
:root[data-theme-family="modern"] .panel-title button{color:var(--accent)}
:root[data-theme-family="modern"] .metric-icon.blue,
:root[data-theme-family="modern"] .server-icon,
:root[data-theme-family="modern"] .node-icon{background:rgba(85,173,255,.13);color:#8bcaff}
:root[data-theme-family="modern"] .metric-icon.green{background:rgba(56,214,159,.13);color:#71e6b9}
:root[data-theme-family="modern"] .metric-icon.amber{background:rgba(243,194,82,.13);color:#ffd27a}
:root[data-theme-family="modern"] .metric-icon.red{background:rgba(255,107,127,.13);color:#ff9aaa}
:root[data-theme-family="modern"] table{background:var(--surface-table);color:var(--text-secondary)}
:root[data-theme-family="modern"] th{background:#0c1b2d;color:#8fa6bf;border-color:var(--border-soft)}
:root[data-theme-family="modern"] td,
:root[data-theme-family="modern"] td strong{color:var(--text-secondary);border-color:var(--border-soft)}
:root[data-theme-family="modern"] td strong{color:var(--text-primary)}
:root[data-theme-family="modern"] tbody tr:hover td{background:var(--surface-hover);color:var(--text-primary)}
:root[data-theme-family="modern"] .status.ok{background:rgba(56,214,159,.13);color:#71e6b9}
:root[data-theme-family="modern"] .status.failed{background:rgba(255,107,127,.13);color:#ff9aaa}
:root[data-theme-family="modern"] .status.running{background:rgba(85,173,255,.13);color:#8bcaff}
:root[data-theme-family="modern"] .badge-red{background:rgba(255,107,127,.14);color:#ff92a3}
:root[data-theme-family="modern"] .alert{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .alert p,
:root[data-theme-family="modern"] .alert small{color:var(--text-muted)}
:root[data-theme-family="modern"] .alert-targets{color:var(--text-secondary)!important}
:root[data-theme-family="modern"] .alert-context span{background:var(--surface-selected);border:1px solid var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .alert-open-log{color:var(--accent)}
:root[data-theme-family="modern"] .clickable-alert:hover,
:root[data-theme-family="modern"] .clickable-alert:focus{background:var(--surface-hover);outline-color:var(--border-strong)}
:root[data-theme-family="modern"] .ring:after{background:var(--surface-elevated)}
:root[data-theme-family="modern"] .ring span,
:root[data-theme-family="modern"] .ring b,
:root[data-theme-family="modern"] .ring small{color:var(--text-primary)}

/* Login e modais */
:root[data-theme-family="modern"] .login-screen{background:radial-gradient(circle at 22% 18%,rgba(28,100,160,.28),transparent 36%),linear-gradient(145deg,#06101d,#091729 62%,#0d2136)}
:root[data-theme-family="modern"] .login-card{background:var(--surface-modal);color:var(--text-primary);border:1px solid var(--border-soft);box-shadow:var(--shadow-modal)}
:root[data-theme-family="modern"] .login-card h1,
:root[data-theme-family="modern"] .login-brand strong{color:var(--text-primary)}
:root[data-theme-family="modern"] .intro,
:root[data-theme-family="modern"] .login-card footer,
:root[data-theme-family="modern"] .two-factor-heading span{color:var(--text-muted)}
:root[data-theme-family="modern"] .modal-backdrop{background:rgba(2,8,17,.78);backdrop-filter:blur(4px)}
:root[data-theme-family="modern"] .modal{max-height:calc(100vh - 32px);overflow:auto;background:var(--surface-modal);color:var(--text-primary);border:1px solid var(--border-soft);box-shadow:var(--shadow-modal)}
:root[data-theme-family="modern"] .modal-head{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .modal-head h2,
:root[data-theme-family="modern"] .modal h3,
:root[data-theme-family="modern"] .modal h4{color:var(--text-primary)}
:root[data-theme-family="modern"] .modal-head span,
:root[data-theme-family="modern"] .modal small{color:var(--text-muted)}
:root[data-theme-family="modern"] .modal-head>button,
:root[data-theme-family="modern"] .close-detail{background:#17283d;color:#b8c9dc;border-color:var(--border-soft)}
:root[data-theme-family="modern"] .modal-actions{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .form-error,
:root[data-theme-family="modern"] .modal-error{color:#ff91a1}

/* 2FA, recursos, usuários e relatórios ainda usam paletas locais no legado. */
:root[data-theme-family="modern"] .two-factor-heading b{color:var(--text-primary)}
:root[data-theme-family="modern"] .two-factor-status,
:root[data-theme-family="modern"] .two-factor-secret,
:root[data-theme-family="modern"] .recovery-codes code,
:root[data-theme-family="modern"] .two-factor-danger{background:var(--surface-elevated);border-color:var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .two-factor-setup ol,
:root[data-theme-family="modern"] .two-factor-status small{color:var(--text-muted)}
:root[data-theme-family="modern"] .two-factor-setup img{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .two-factor-badge,
:root[data-theme-family="modern"] .security-tag{background:rgba(56,214,159,.13);color:#71e6b9}
:root[data-theme-family="modern"] .two-factor-badge.off,
:root[data-theme-family="modern"] .security-tag.off{background:rgba(255,107,127,.13);color:#ff9aaa}

:root[data-theme-family="modern"] .resources-modal,
:root[data-theme-family="modern"] .resource-browser,
:root[data-theme-family="modern"] .resource-tree,
:root[data-theme-family="modern"] .resource-detail{background:var(--surface-modal);color:var(--text-secondary)}
:root[data-theme-family="modern"] .resources-modal>.modal-head,
:root[data-theme-family="modern"] .resources-toolbar,
:root[data-theme-family="modern"] .resource-detail-head{background:var(--surface-elevated);border-color:var(--border-soft)}
:root[data-theme-family="modern"] .resources-modal>.modal-head h2,
:root[data-theme-family="modern"] .resource-detail-head h3{color:var(--text-primary)}
:root[data-theme-family="modern"] .resources-modal>.modal-head span,
:root[data-theme-family="modern"] .resource-detail-head p{color:var(--text-muted)}
:root[data-theme-family="modern"] .resource-tree{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .resource-group>button,
:root[data-theme-family="modern"] .resource-node>button,
:root[data-theme-family="modern"] .resource-vm{color:var(--text-secondary)}
:root[data-theme-family="modern"] .resource-group>button:hover,
:root[data-theme-family="modern"] .resource-node>button:hover,
:root[data-theme-family="modern"] .resource-vm:hover{background:var(--surface-hover);color:var(--text-primary)}
:root[data-theme-family="modern"] .resource-node>button.selected,
:root[data-theme-family="modern"] .resource-vm.selected{background:var(--surface-selected);color:var(--text-primary)}
:root[data-theme-family="modern"] .resource-metrics,
:root[data-theme-family="modern"] .resource-facts{background:var(--surface-card);border-color:var(--border-soft)}
:root[data-theme-family="modern"] .resource-metric,
:root[data-theme-family="modern"] .resource-facts div{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .resource-metric small,
:root[data-theme-family="modern"] .resource-facts span{color:var(--text-muted)}
:root[data-theme-family="modern"] .resource-meter{background:#172a41;border-color:var(--border-strong);box-shadow:none}

:root[data-theme-family="modern"] .backup-filters,
:root[data-theme-family="modern"] .detail-summary>div,
:root[data-theme-family="modern"] .users-toolbar,
:root[data-theme-family="modern"] .user-create-card,
:root[data-theme-family="modern"] .user-row,
:root[data-theme-family="modern"] .access-filters,
:root[data-theme-family="modern"] .access-summary article,
:root[data-theme-family="modern"] .rustdesk-permissions,
:root[data-theme-family="modern"] .telegram-demand-settings,
:root[data-theme-family="modern"] .telegram-link-status,
:root[data-theme-family="modern"] .telegram-help,
:root[data-theme-family="modern"] .telegram-link-code{background:var(--surface-elevated);border-color:var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .user-row.inactive{background:#0b1828;opacity:.76}
:root[data-theme-family="modern"] .user-row button,
:root[data-theme-family="modern"] .missing-actions button,
:root[data-theme-family="modern"] .excluded-list button,
:root[data-theme-family="modern"] .glpi-pagination button{background:var(--surface-input);border-color:var(--border-strong);color:var(--text-secondary)}
:root[data-theme-family="modern"] .user-row .user-avatar,
:root[data-theme-family="modern"] .user-row>span{background:var(--surface-selected);color:#a8d6ff}
:root[data-theme-family="modern"] .users-toolbar small,
:root[data-theme-family="modern"] .user-row small,
:root[data-theme-family="modern"] .telegram-help,
:root[data-theme-family="modern"] .telegram-help p,
:root[data-theme-family="modern"] .telegram-link-status span,
:root[data-theme-family="modern"] .telegram-link-code span,
:root[data-theme-family="modern"] .telegram-link-code small{color:var(--text-muted)}
:root[data-theme-family="modern"] .rustdesk-permissions legend,
:root[data-theme-family="modern"] .telegram-demand-settings legend,
:root[data-theme-family="modern"] .telegram-help b{color:var(--text-primary)}

:root[data-theme-family="modern"] .report-filters,
:root[data-theme-family="modern"] .report-summary article,
:root[data-theme-family="modern"] .report-client-card,
:root[data-theme-family="modern"] .report-empty,
:root[data-theme-family="modern"] .report-missing-list article,
:root[data-theme-family="modern"] .version-report-filter{background:var(--surface-elevated);border-color:var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .report-summary strong,
:root[data-theme-family="modern"] .report-client-card header strong,
:root[data-theme-family="modern"] .report-client-stats b,
:root[data-theme-family="modern"] .report-missing-list strong{color:var(--text-primary)}
:root[data-theme-family="modern"] .report-filters label,
:root[data-theme-family="modern"] .report-period-label,
:root[data-theme-family="modern"] .report-summary small,
:root[data-theme-family="modern"] .report-client-card header span,
:root[data-theme-family="modern"] .report-client-card>p,
:root[data-theme-family="modern"] .report-client-stats span,
:root[data-theme-family="modern"] .report-detail-section>div:first-child span,
:root[data-theme-family="modern"] .report-missing-section>div:first-child span,
:root[data-theme-family="modern"] .report-missing-list small{color:var(--text-muted)}
:root[data-theme-family="modern"] .report-table,
:root[data-theme-family="modern"] .access-table{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .report-table thead,
:root[data-theme-family="modern"] .access-table thead{background:#0c1b2d}
:root[data-theme-family="modern"] .export-button{background:var(--surface-input)}

/* Início e Proxmox */
:root[data-theme-family="modern"] .executive-welcome{background:linear-gradient(110deg,#11243a,#0e1c30 72%,#13283f);border-color:#29415b;box-shadow:var(--shadow-card)}
:root[data-theme-family="modern"] .executive-welcome h2,
:root[data-theme-family="modern"] .executive-date strong,
:root[data-theme-family="modern"] .executive-metrics strong{color:var(--text-primary)}
:root[data-theme-family="modern"] .executive-date{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .workspace-card{background:linear-gradient(145deg,#12243a,#0d1a2c);border-color:var(--border-soft);color:var(--text-primary);box-shadow:var(--shadow-card)}
:root[data-theme-family="modern"] .workspace-card:hover{background:linear-gradient(145deg,#162a43,#102039);border-color:#3c6387}
:root[data-theme-family="modern"] .workspace-card h2,
:root[data-theme-family="modern"] .workspace-stats strong,
:root[data-theme-family="modern"] .quick-links>button,
:root[data-theme-family="modern"] .admin-actions>button{color:var(--text-primary)}
:root[data-theme-family="modern"] .workspace-card>p,
:root[data-theme-family="modern"] .workspace-stats span,
:root[data-theme-family="modern"] .quick-links small,
:root[data-theme-family="modern"] .admin-actions small{color:var(--text-muted)}
:root[data-theme-family="modern"] .workspace-tabs{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .workspace-tabs button{color:var(--text-muted)}
:root[data-theme-family="modern"] .workspace-tabs button:hover{color:var(--text-primary)}
:root[data-theme-family="modern"] .workspace-tabs button.active{color:var(--text-primary);border-color:var(--accent)}
:root[data-theme-family="modern"] .home-health-track,
:root[data-theme-family="modern"] .home-demand-track{stroke:#213751}
:root[data-theme-family="modern"] .home-health-num,
:root[data-theme-family="modern"] .home-demand-total{fill:var(--text-primary)}
:root[data-theme-family="modern"] .home-health-label,
:root[data-theme-family="modern"] .home-demand-caption{fill:var(--text-muted)}
:root[data-theme-family="modern"] .home-health-row,
:root[data-theme-family="modern"] .quick-links>button,
:root[data-theme-family="modern"] .admin-actions>button{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .home-health-row b,
:root[data-theme-family="modern"] .home-health-row em,
:root[data-theme-family="modern"] .home-mini-bar strong,
:root[data-theme-family="modern"] .home-demand-legend em,
:root[data-theme-family="modern"] .home-team-row b{color:var(--text-primary)}
:root[data-theme-family="modern"] .home-health-row span,
:root[data-theme-family="modern"] .home-mini-bar>span,
:root[data-theme-family="modern"] .home-demand-legend button,
:root[data-theme-family="modern"] .home-team-row small,
:root[data-theme-family="modern"] .home-team-hours{color:var(--text-secondary)}
:root[data-theme-family="modern"] .home-mini-track,
:root[data-theme-family="modern"] .home-team-track{background:#20364f}
:root[data-theme-family="modern"] #proxmox-workspace .health-insight-card,
:root[data-theme-family="modern"] #proxmox-workspace .health-breakdown,
:root[data-theme-family="modern"] #proxmox-workspace .health-environment-summary{background:var(--surface-elevated);border-color:var(--border-soft)}
:root[data-theme-family="modern"] #proxmox-workspace .health-insight-title h3,
:root[data-theme-family="modern"] #proxmox-workspace .health-composition-label b,
:root[data-theme-family="modern"] #proxmox-workspace .health-attention-row strong,
:root[data-theme-family="modern"] #proxmox-workspace .health-storage-row span,
:root[data-theme-family="modern"] #proxmox-workspace .coverage-stats b,
:root[data-theme-family="modern"] #proxmox-workspace .health-environment-summary strong{color:var(--text-primary)}
:root[data-theme-family="modern"] #proxmox-workspace .health-composition-label,
:root[data-theme-family="modern"] #proxmox-workspace .health-attention-row small,
:root[data-theme-family="modern"] #proxmox-workspace .health-storage-row small,
:root[data-theme-family="modern"] #proxmox-workspace .coverage-main span,
:root[data-theme-family="modern"] #proxmox-workspace .coverage-stats span,
:root[data-theme-family="modern"] #proxmox-workspace .health-environment-summary span{color:var(--text-muted)}
:root[data-theme-family="modern"] #proxmox-workspace .health-composition-row>i,
:root[data-theme-family="modern"] #proxmox-workspace .health-storage-row>i,
:root[data-theme-family="modern"] #proxmox-workspace .coverage-bar{background:#233850}
:root[data-theme-family="modern"] .env-grid article{background:var(--surface-elevated);border-color:var(--border-soft);box-shadow:var(--shadow-card)}
:root[data-theme-family="modern"] .env-grid h3{color:var(--text-primary)}
:root[data-theme-family="modern"] .env-grid p,
:root[data-theme-family="modern"] .env-grid small,
:root[data-theme-family="modern"] .env-grid time{color:var(--text-muted)}
:root[data-theme-family="modern"] .environment-actions button{background:#13263d;border-color:#34516f;color:var(--text-secondary)}
:root[data-theme-family="modern"] .maintenance-banner{background:rgba(245,154,61,.12);border-color:rgba(245,154,61,.48);color:#ffd4a5}
:root[data-theme-family="modern"] .maintenance-banner strong,
:root[data-theme-family="modern"] .maintenance-banner span{color:#ffd4a5}
:root[data-theme-family="modern"] .maintenance-banner small{color:#dba875}

/* Módulos operacionais */
:root[data-theme-family="modern"] .links-toolbar h2,
:root[data-theme-family="modern"] .link-card-head h3,
:root[data-theme-family="modern"] .link-detail-head h3,
:root[data-theme-family="modern"] .link-client-group>header h3,
:root[data-theme-family="modern"] .link-quality-summary b{color:var(--text-primary)}
:root[data-theme-family="modern"] .links-summary article,
:root[data-theme-family="modern"] .link-card,
:root[data-theme-family="modern"] .link-detail-panel,
:root[data-theme-family="modern"] .link-charts article,
:root[data-theme-family="modern"] .link-incidents,
:root[data-theme-family="modern"] .link-quality-summary article,
:root[data-theme-family="modern"] .link-speed-actions{background:var(--surface-card);border-color:var(--border-soft);box-shadow:var(--shadow-card)}
:root[data-theme-family="modern"] .link-card-metrics span,
:root[data-theme-family="modern"] .link-mini-line{background:var(--surface-elevated);border-color:var(--border-soft)}
:root[data-theme-family="modern"] .link-card-metrics b,
:root[data-theme-family="modern"] .links-summary strong,
:root[data-theme-family="modern"] .link-speed-actions b{color:var(--text-primary)}
:root[data-theme-family="modern"] .links-toolbar span,
:root[data-theme-family="modern"] .link-card-head p,
:root[data-theme-family="modern"] .link-card-foot,
:root[data-theme-family="modern"] .link-detail-subtitle{color:var(--text-muted)}
:root[data-theme-family="modern"] .link-grid-line{stroke:#27415d}
:root[data-theme-family="modern"] .link-axis-text{fill:#8da1b9}
:root[data-theme-family="modern"] .link-tooltip,
:root[data-theme-family="modern"] .home-dashboard-tooltip{background:#071525;color:var(--text-primary);border-color:#365b7e;box-shadow:var(--shadow-modal)}
:root[data-theme-family="modern"] .firewalls-workspace{--fw-card:var(--surface-card);--fw-soft:var(--surface-elevated);--fw-text:var(--text-primary)}
:root[data-theme-family="modern"] .firewall-toolbar,
:root[data-theme-family="modern"] .firewall-summary article,
:root[data-theme-family="modern"] .firewall-card,
:root[data-theme-family="modern"] .firewall-history{box-shadow:var(--shadow-card)}

/* RustDesk, GLPI e plantões */
:root[data-theme-family="modern"] .rd-metrics article,
:root[data-theme-family="modern"] .rd-panel,
:root[data-theme-family="modern"] .rustdesk-card,
:root[data-theme-family="modern"] .oncall-toolbar,
:root[data-theme-family="modern"] .oncall-summary article,
:root[data-theme-family="modern"] .oncall-board-head,
:root[data-theme-family="modern"] .oncall-grid,
:root[data-theme-family="modern"] .oncall-card,
:root[data-theme-family="modern"] .oncall-report-toolbar,
:root[data-theme-family="modern"] .oncall-report-kpis article,
:root[data-theme-family="modern"] .oncall-report-grid>article{background:var(--surface-card);border-color:var(--border-soft);color:var(--text-secondary);box-shadow:var(--shadow-card)}
:root[data-theme-family="modern"] .rd-table th,
:root[data-theme-family="modern"] .oncall-report-table th{background:#0c1b2d;color:#91a7bf}
:root[data-theme-family="modern"] .rd-table td,
:root[data-theme-family="modern"] .oncall-report-table td{color:var(--text-secondary);border-color:var(--border-soft)}
:root[data-theme-family="modern"] .rd-muted,
:root[data-theme-family="modern"] .rd-toolbar p,
:root[data-theme-family="modern"] .rd-note,
:root[data-theme-family="modern"] .oncall-toolbar span,
:root[data-theme-family="modern"] .oncall-person small,
:root[data-theme-family="modern"] .oncall-notes{color:var(--text-muted)}
:root[data-theme-family="modern"] .oncall-state,
:root[data-theme-family="modern"] .oncall-actions button,
:root[data-theme-family="modern"] .oncall-board-head button{background:var(--surface-elevated);border-color:var(--border-strong);color:var(--text-secondary)}
:root[data-theme-family="modern"] .glpi-shell,
:root[data-theme-family="modern"] .glpi-card,
:root[data-theme-family="modern"] .glpi-panel,
:root[data-theme-family="modern"] .glpi-report-builder,
:root[data-theme-family="modern"] .glpi-asset-fields span,
:root[data-theme-family="modern"] .glpi-asset-technical>section,
:root[data-theme-family="modern"] .glpi-asset-technical>p{background:var(--surface-card);border-color:var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .glpi-network-list article,
:root[data-theme-family="modern"] .glpi-component-list span{background:var(--surface-elevated);color:var(--text-secondary)}
:root[data-theme-family="modern"] .glpi-report-builder header h3,
:root[data-theme-family="modern"] .glpi-asset-technical h3,
:root[data-theme-family="modern"] .glpi-network-list b{color:var(--text-primary)}
:root[data-theme-family="modern"] .glpi-report-builder header span,
:root[data-theme-family="modern"] .glpi-report-columns label{color:var(--text-secondary)}

/* Demandas: alguns seletores legados usam !important; estes overrides são deliberadamente restritos. */
:root[data-theme-family="modern"] .demand-shell,
:root[data-theme-family="modern"] .demand-insights article,
:root[data-theme-family="modern"] .demand-metrics article,
:root[data-theme-family="modern"] .dm-team-dashboard,
:root[data-theme-family="modern"] .dm-team-grid article,
:root[data-theme-family="modern"] .demand-kanban-col,
:root[data-theme-family="modern"] .demand-kanban-card,
:root[data-theme-family="modern"] .dm-calendar-shell,
:root[data-theme-family="modern"] .dm-calendar-cell,
:root[data-theme-family="modern"] .dm-week-day,
:root[data-theme-family="modern"] .dm-report-controls,
:root[data-theme-family="modern"] .dm-report-kpis article,
:root[data-theme-family="modern"] .dm-report-grid article,
:root[data-theme-family="modern"] .dm-report-detail,
:root[data-theme-family="modern"] .dm-completed-summary article,
:root[data-theme-family="modern"] .dm-active-summary{background:var(--surface-card)!important;border-color:var(--border-soft)!important;color:var(--text-secondary)!important;box-shadow:var(--shadow-card)}
:root[data-theme-family="modern"] .demand-table th,
:root[data-theme-family="modern"] .kanban-toolbar,
:root[data-theme-family="modern"] .demand-kanban-col header,
:root[data-theme-family="modern"] .dm-calendar-toolbar,
:root[data-theme-family="modern"] .dm-calendar-weekdays,
:root[data-theme-family="modern"] .dm-week-day>header{background:#0c1b2d!important;border-color:var(--border-soft)!important;color:var(--text-secondary)!important}
:root[data-theme-family="modern"] .demand-table td,
:root[data-theme-family="modern"] .demand-table td strong,
:root[data-theme-family="modern"] .kanban-toolbar strong,
:root[data-theme-family="modern"] .demand-kanban-col h3,
:root[data-theme-family="modern"] .demand-kanban-card b,
:root[data-theme-family="modern"] .demand-title,
:root[data-theme-family="modern"] .dm-team-grid header b,
:root[data-theme-family="modern"] .dm-member-stats b,
:root[data-theme-family="modern"] .dm-report-head h2,
:root[data-theme-family="modern"] .dm-report-kpis strong,
:root[data-theme-family="modern"] .dm-report-grid h3{color:var(--text-primary)!important}
:root[data-theme-family="modern"] .demand-sub,
:root[data-theme-family="modern"] .demand-insights small,
:root[data-theme-family="modern"] .demand-kanban-card small,
:root[data-theme-family="modern"] .dm-team-grid header small,
:root[data-theme-family="modern"] .dm-team-grid footer,
:root[data-theme-family="modern"] .dm-report-controls>span,
:root[data-theme-family="modern"] .dm-report-kpis span,
:root[data-theme-family="modern"] .dm-report-empty{color:var(--text-muted)!important}
:root[data-theme-family="modern"] .demand-filters input,
:root[data-theme-family="modern"] .demand-filters select,
:root[data-theme-family="modern"] .dm-report-controls select,
:root[data-theme-family="modern"] .dm-report-controls input{background:var(--surface-input)!important;border-color:var(--border-strong)!important;color:var(--text-primary)!important;color-scheme:dark}
:root[data-theme-family="modern"] .demand-table tr:hover td,
:root[data-theme-family="modern"] .demand-table-modern tbody tr:hover,
:root[data-theme-family="modern"] .demand-table tbody tr[data-demand-id]:hover{background:var(--surface-hover)!important}
:root[data-theme-family="modern"] .dm-member-stats span,
:root[data-theme-family="modern"] .dm-ops-kpis span,
:root[data-theme-family="modern"] .dm-client-hours span,
:root[data-theme-family="modern"] .dm-active-summary span{background:var(--surface-elevated)!important;border-color:var(--border-soft)!important;color:var(--text-secondary)!important}
:root[data-theme-family="modern"] .dm-donut:after{background:var(--surface-card)}
:root[data-theme-family="modern"] .dm-donut-track{stroke:#253c55}
:root[data-theme-family="modern"] .dm-donut-total,
:root[data-theme-family="modern"] .dm-donut-label{fill:var(--text-primary)}
:root[data-theme-family="modern"] .dm-line-chart line{stroke:#29415a}
:root[data-theme-family="modern"] .dm-line-chart text{fill:var(--text-muted)}
:root[data-theme-family="modern"] .demand-tooltip{background:#071525;color:var(--text-primary);border-color:#365b7e}

/* Administração e Cliente 360 */
:root[data-theme-family="modern"] .management-card,
:root[data-theme-family="modern"] .client-360-toolbar,
:root[data-theme-family="modern"] .client-360-row,
:root[data-theme-family="modern"] .client-360-summary article,
:root[data-theme-family="modern"] .client-overview-grid article,
:root[data-theme-family="modern"] .client-360-cards article,
:root[data-theme-family="modern"] .client-history article,
:root[data-theme-family="modern"] .proposal-form,
:root[data-theme-family="modern"] .proposal-row,
:root[data-theme-family="modern"] .idea-card{background:var(--surface-elevated);border-color:var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .management-row,
:root[data-theme-family="modern"] .client-360-tr{background:var(--surface-card);border-color:var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .client-360-tr.head{background:#0c1b2d;color:#8fa6bf}
:root[data-theme-family="modern"] .client-360-name strong,
:root[data-theme-family="modern"] .client-360-summary b,
:root[data-theme-family="modern"] .client-overview-grid strong,
:root[data-theme-family="modern"] .client-360-cards b,
:root[data-theme-family="modern"] .client-history b{color:var(--text-primary)}
:root[data-theme-family="modern"] .client-mini-metrics span,
:root[data-theme-family="modern"] .idea-status{background:#142941;border-color:var(--border-soft);color:var(--text-secondary)}
:root[data-theme-family="modern"] .client-360-empty{background:#0b192a;border-color:var(--border-strong);color:var(--text-muted)}
:root[data-theme-family="modern"] .client-360-tabs{border-color:var(--border-soft)}
:root[data-theme-family="modern"] .client-360-tabs button{color:var(--text-muted)}
:root[data-theme-family="modern"] .client-360-tabs button.active{color:var(--accent);border-color:var(--accent)}

/* Topologia: apenas superfícies; imagens personalizadas permanecem intactas. */
:root[data-theme-family="modern"] .topology-canvas{background-color:#091727;background-image:radial-gradient(#29405a 1px,transparent 1px);border-color:#36536f}
:root[data-theme-family="modern"] .topology-node{background:#11243a;border-color:#31506f;color:var(--text-primary);box-shadow:0 9px 24px rgba(0,5,14,.34)}
:root[data-theme-family="modern"] .topology-node small,
:root[data-theme-family="modern"] .canvas-help{color:var(--text-muted)}
:root[data-theme-family="modern"] .topology-node.selected{outline-color:var(--maintenance)}

/* Feedback e rolagem */
:root[data-theme-family="modern"] .toast{background:#16304b;color:var(--text-primary);border:1px solid #365b7e;box-shadow:var(--shadow-modal)}
:root[data-theme-family="modern"] .toast.error{background:#461b28;color:#ffdce1;border-color:#8f3548}
:root[data-theme-family="modern"] *{scrollbar-color:#365673 transparent}
:root[data-theme-family="modern"] *::-webkit-scrollbar{width:11px;height:11px}
:root[data-theme-family="modern"] *::-webkit-scrollbar-track{background:transparent}
:root[data-theme-family="modern"] *::-webkit-scrollbar-thumb{background:#365673;border:3px solid transparent;border-radius:999px;background-clip:padding-box}
:root[data-theme-family="modern"] *::-webkit-scrollbar-thumb:hover{background:#4a7399;background-clip:padding-box}

@media(max-width:760px){
  :root[data-theme-family="modern"] .content{background:var(--surface-page)}
  :root[data-theme-family="modern"] .theme-picker select{max-width:132px}
}
@media(prefers-reduced-motion:no-preference){
  :root[data-theme-family="modern"] .sidebar nav button,
  :root[data-theme-family="modern"] .panel,
  :root[data-theme-family="modern"] .workspace-card,
  :root[data-theme-family="modern"] button,
  :root[data-theme-family="modern"] input,
  :root[data-theme-family="modern"] select,
  :root[data-theme-family="modern"] textarea{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}
}
@media(prefers-reduced-motion:reduce){
  :root[data-theme-family="modern"] *,
  :root[data-theme-family="modern"] *::before,
  :root[data-theme-family="modern"] *::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
