/* V3.0 : 4 apparences internes, sans modification de l'état fonctionnel ou des permissions. */
:root[data-theme="clair"]{
 --v3-bg:#f1f4ee;--v3-panel:#fffefa;--v3-soft:#f6f7f0;--v3-text:#213527;--v3-muted:#536957;
 --v3-border:#d8e2d0;--v3-primary:#2c7645;--v3-primaryText:#fff;--v3-sidebar:#163c25;--v3-sidebarEnd:#214d30;--v3-nav:#4a915b;
}
:root[data-theme="neo"]{
 color-scheme:dark;--v3-bg:#071127;--v3-panel:#122344;--v3-soft:#192e54;--v3-text:#f6f9ff;--v3-muted:#afc2e2;
 --v3-border:#39598c;--v3-primary:#2969cf;--v3-primaryText:#fff;--v3-sidebar:#090f29;--v3-sidebarEnd:#141d4a;--v3-nav:#6253db;
}
:root[data-theme="foret"]{
 color-scheme:dark;--v3-bg:#091b11;--v3-panel:#112c1e;--v3-soft:#1b3829;--v3-text:#edf7e7;--v3-muted:#bdd3bf;
 --v3-border:#42674c;--v3-primary:#94ca72;--v3-primaryText:#0d2716;--v3-sidebar:#07150d;--v3-sidebarEnd:#113d27;--v3-nav:#4b8c54;
}
:root[data-theme="noel"]{
 color-scheme:dark;--v3-bg:#180f16;--v3-panel:#281b26;--v3-soft:#372630;--v3-text:#fff6f0;--v3-muted:#e1c6c6;
 --v3-border:#714652;--v3-primary:#bb3048;--v3-primaryText:#fff;--v3-sidebar:#1a1019;--v3-sidebarEnd:#461925;--v3-nav:#a62a48;
}
:root[data-theme] body{background:var(--v3-bg);color:var(--v3-text)}
:root[data-theme] .sidebar{background:linear-gradient(180deg,var(--v3-sidebar),var(--v3-sidebarEnd));color:#f8f9ff}
:root[data-theme] .nav-btn.active{background:var(--v3-primary);color:var(--v3-primaryText);box-shadow:0 4px 16px #0003}
:root[data-theme] .brand-mark{background:var(--v3-primary);color:var(--v3-primaryText)}
:root[data-theme] .card,:root[data-theme] .ticket,:root[data-theme] .timeline-card,:root[data-theme] .modal,:root[data-theme] .login-card{background:var(--v3-panel);border-color:var(--v3-border);color:var(--v3-text)}
:root[data-theme] .metric-icon,:root[data-theme] .ticket-code,:root[data-theme] .chip{background:var(--v3-soft);color:var(--v3-text)}
:root[data-theme] .btn{background:var(--v3-primary);color:var(--v3-primaryText)}
:root[data-theme] .btn.secondary,:root[data-theme] .btn.slate,:root[data-theme] .table-action,:root[data-theme] .ghost{background:var(--v3-soft);color:var(--v3-text);border-color:var(--v3-border)}
:root[data-theme] .field,:root[data-theme] input:not([type="checkbox"]),:root[data-theme] textarea,:root[data-theme] select{background:var(--v3-soft);color:var(--v3-text);border-color:var(--v3-border)}
:root[data-theme] select option{background:var(--v3-panel);color:var(--v3-text)}
:root[data-theme] .table th,:root[data-theme] .material-row,:root[data-theme] .notice,:root[data-theme] .v27-validation,:root[data-theme] .login{background:var(--v3-soft);color:var(--v3-text)}
:root[data-theme] .table td,:root[data-theme] .table th,:root[data-theme] .list-item{border-color:var(--v3-border)}
:root[data-theme] .heading,:root[data-theme] .card-title,:root[data-theme] .ticket-name,:root[data-theme] .metric-value,:root[data-theme] .modal-title{color:var(--v3-text)}
:root[data-theme] .soft,:root[data-theme] .hint,:root[data-theme] .subheading,:root[data-theme] .eyebrow,:root[data-theme] .label,:root[data-theme] .metric-label,:root[data-theme] .ticket-desc,:root[data-theme] .mini-line,:root[data-theme] .fleet-entries,:root[data-theme] .smallmuted,:root[data-theme] .table th{color:var(--v3-muted)}
:root[data-theme] .role-pill{background:var(--v3-soft);color:var(--v3-text)}
:root[data-theme] .ticket.urgent{background:#552833;color:#ffeff1;border-color:#eb8c93}
:root[data-theme="clair"] .ticket.urgent{background:#fff0f0;color:#5a2529;border-color:#e99c9c}
:root[data-theme] .ticket.urgent .ticket-code{background:#f7d8df;color:#8b2038}
:root[data-theme] .v25-ranking,:root[data-theme] .v25-ranking-body,:root[data-theme] .fleet-banner{background:var(--v3-panel);border-color:var(--v3-border);color:var(--v3-text)}
:root[data-theme] .modal-wrap{background:#070b15bc}
:root[data-theme] .login{background:var(--v3-bg)}
:root[data-theme] .login-card .brand-title{color:var(--v3-text)}
:root[data-theme="neo"] .card{box-shadow:0 4px 22px #0005,0 0 0 1px #6758b82e}
:root[data-theme="noel"] .sidebar{border-right:2px solid #9e7157}
:root[data-theme="noel"] .brand-title::after{content:" ❄";color:#e2c4aa;font-size:12px}
:root[data-theme="foret"] .brand-title::after{content:" ✦";color:#aedc9d;font-size:12px}
.v30-theme-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.v30-theme-tile{border:2px solid var(--v3-border);border-radius:14px;display:flex;align-items:center;flex-direction:column;gap:9px;padding:12px;cursor:pointer;background:var(--v3-soft);color:var(--v3-text);font-size:13px}
.v30-theme-tile.selected{border-color:var(--v3-primary)}
.v30-theme-tile input{align-self:flex-end;accent-color:var(--v3-primary)}
.v30-theme-preview{display:block;height:65px;width:100%;border-radius:9px;background:#e7f2dd;border:1px solid #ffffff3a}
.v30-preview-clair{background:linear-gradient(135deg,#225638 20%,#eff4e5 20% 65%,#fff9f0 65%)}
.v30-preview-neo{background:linear-gradient(140deg,#09244d 20%,#3842a4 45%,#a13eb3 74%,#49a3ef 100%)}
.v30-preview-foret{background:linear-gradient(140deg,#091a0f 20%,#28523a 65%,#81c671 100%)}
.v30-preview-noel{background:linear-gradient(140deg,#180d18 20%,#72253b 60%,#c68d4e 100%)}
.v30-settings-line{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.v30-settings-line .field{max-width:240px}.v30-settings-line .label{width:100%;margin-bottom:-2px}
.v30-reply textarea{white-space:pre-wrap;resize:vertical;line-height:1.6}
@media(max-width:750px){.v30-theme-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.v30-settings-line .field{max-width:none}}
