.id-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.id-field label{display:block;color:var(--id-muted);font-size:.78rem;font-weight:800;margin-bottom:6px}.id-field input,.id-field select,.id-field textarea{width:100%;padding:11px 12px;border-radius:9px;border:1px solid var(--id-line);background:#081525;color:var(--id-text)}.id-field textarea{min-height:90px;resize:vertical}.id-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:10px 14px;background:var(--id-accent);color:#101820;font-weight:900;cursor:pointer;text-decoration:none}.id-button.secondary{background:#223957;color:#fff}.id-button.danger{background:#6f2730;color:#fff}.score{font-size:1.7rem;font-weight:950}.signal-positive{border-left:5px solid var(--id-positive)}.signal-negative{border-left:5px solid var(--id-negative)}.signal-neutral{border-left:5px solid var(--id-warning)}.lights{display:flex;gap:5px}.light{width:11px;height:11px;border-radius:50%;background:#526277}.light.green{background:var(--id-positive);box-shadow:var(--id-glow-positive)}.light.red{background:var(--id-negative);box-shadow:var(--id-glow-negative)}.responsive-table{overflow:auto}.login-wrap{max-width:460px;margin:6vh auto}.notice{padding:12px 14px;border:1px solid var(--id-line);border-radius:10px;background:#13243a;margin-bottom:14px}.notice.error{border-color:#873840;color:#ffd0d4}.notice.success{border-color:#26734f;color:#bff7d7}.tiny{font-size:.75rem;color:var(--id-muted)}.nowrap{white-space:nowrap}@media(max-width:850px){.id-form-grid{grid-template-columns:1fr}.id-table{min-width:920px}}
.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.inline-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.inline-filter select{min-width:180px;padding:10px;border-radius:9px;border:1px solid var(--id-line);background:#081525;color:var(--id-text)}.account-card{max-width:650px}.checkbox-field{display:flex;align-items:end}.checkbox-field input{width:auto;margin-right:8px}.notice a{color:inherit;font-weight:900}.id-table a{color:var(--id-accent)}
.nav-logout{display:inline;margin:0}.nav-logout button{appearance:none;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:8px 10px}.nav-logout button:hover{text-decoration:underline}.data-meta{font-size:.78rem;opacity:.8;line-height:1.35}.id-button.compact{padding:6px 9px;font-size:.82rem}
.signal-legend{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.signal-legend span{font-size:.75rem;color:var(--id-muted);border:1px solid var(--id-line);border-radius:999px;padding:5px 9px;background:#0d1c2f}.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(135px,1fr));gap:6px;min-width:300px}.signal-chip{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:7px;border:1px solid var(--id-line);border-radius:8px;padding:6px 8px;background:#0a1728;font-size:.72rem;white-space:nowrap}.signal-chip strong{font-size:.75rem}.signal-chip.green{border-color:rgba(43,202,126,.4)}.signal-chip.red{border-color:rgba(255,91,101,.4)}.signal-chip.neutral{opacity:.72}.light.neutral{background:#526277;box-shadow:none}.dashboard-table{min-width:1500px}@media(max-width:850px){.signal-grid{grid-template-columns:1fr;min-width:190px}}
.analysis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.quality{display:inline-block;padding:3px 8px;border-radius:999px;font-weight:800}.quality.good{background:rgba(39,199,126,.16);color:#65e6a9}.quality.incomplete{background:rgba(255,91,101,.16);color:#ff8189}.quality.stale{background:rgba(255,176,32,.16);color:#ffc45f}@media(max-width:900px){.analysis-grid{grid-template-columns:1fr}}

/* Indicateur visuel global des actualisations et collectes */
.work-indicator[hidden]{display:none!important}.work-indicator{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px;background:rgba(2,9,18,.78);backdrop-filter:blur(4px)}.work-panel{width:min(560px,100%);border:1px solid var(--id-line);border-radius:16px;background:#0b192b;color:var(--id-text);padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.45);display:grid;grid-template-columns:52px 1fr;gap:14px 16px}.work-spinner{width:48px;height:48px;border:5px solid #263b55;border-top-color:var(--id-accent);border-radius:50%;animation:work-spin .8s linear infinite;grid-row:1 / span 2}.work-copy{display:flex;flex-direction:column;gap:4px}.work-copy strong{font-size:1.15rem}.work-copy span,.work-note,.work-meta{color:var(--id-muted);font-size:.86rem}.work-progress{grid-column:1 / -1;height:10px;overflow:hidden;border-radius:999px;background:#1b2c43}.work-progress span{display:block;width:38%;height:100%;border-radius:inherit;background:var(--id-accent);animation:work-slide 1.25s ease-in-out infinite}.work-meta{grid-column:1 / -1;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.work-note{grid-column:1 / -1;border-top:1px solid var(--id-line);padding-top:12px}.is-working{cursor:progress}.is-working .id-button,.is-working button{pointer-events:none}@keyframes work-spin{to{transform:rotate(360deg)}}@keyframes work-slide{0%{transform:translateX(-110%)}50%{transform:translateX(120%)}100%{transform:translateX(290%)}}@media(max-width:560px){.work-panel{grid-template-columns:42px 1fr;padding:18px}.work-spinner{width:38px;height:38px}.work-meta{display:grid;gap:4px}}

/* Version 1.5 : pondérations et niveaux techniques */
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.weight-row{display:grid;grid-template-columns:1fr 90px;gap:12px;align-items:center;margin:10px 0}.weight-row input{width:100%;padding:9px;border:1px solid var(--id-line);border-radius:8px;background:#081525;color:var(--id-text)}.weight-detail{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--id-line);padding-top:10px;color:var(--id-muted);font-size:.82rem}.detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}.level-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.level-list div{border:1px solid var(--id-line);border-radius:9px;padding:10px;background:#0a1728}.level-list dt{font-size:.75rem;color:var(--id-muted)}.level-list dd{margin:4px 0 0;font-weight:900}.technical-mini{display:grid;gap:3px;font-size:.75rem;min-width:145px}.technical-mini span{display:flex;justify-content:space-between;gap:8px}.technical-mini strong{white-space:nowrap}@media(max-width:900px){.profile-grid,.detail-grid{grid-template-columns:1fr}.level-list{grid-template-columns:1fr}}

.news-block{padding:14px 0;border-bottom:1px solid var(--id-border,#d8dee8)}.news-block:last-child{border-bottom:0}.news-block ul{margin:8px 0 0;padding-left:20px}.news-block li{margin:7px 0}.id-input{width:100%;max-width:560px;padding:10px 12px;border:1px solid var(--id-border,#cbd5e1);border-radius:8px;background:var(--id-surface,#fff);color:inherit}

/* Correctif cache et formulaire d'automatisation */
.nav-refresh{display:inline-flex;align-items:center;padding:8px 10px;border:1px solid var(--id-line);border-radius:8px;color:var(--id-accent)!important;text-decoration:none;font-weight:800}.nav-refresh:hover{background:#13243a;text-decoration:none}.settings-stack{display:grid;gap:18px;max-width:680px}.settings-check{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--id-line);border-radius:10px;background:#0a1728}.settings-check input{margin-top:4px}.settings-check span{display:grid;gap:3px}.settings-check small,.field-help{display:block;color:var(--id-muted);font-size:.82rem;line-height:1.45}.settings-field{margin:0}.settings-field input,.settings-field select{max-width:560px;background:#081525!important;color:var(--id-text)!important;border:1px solid var(--id-line)!important}.settings-field select{appearance:auto;min-height:44px}.settings-field option{background:#081525;color:var(--id-text)}

/* v1.6.2 : navigation compacte et menus par rôle */
.nav-compact{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.nav-menu{position:relative}.nav-menu>summary{list-style:none;cursor:pointer;padding:8px 10px;border-radius:8px;color:inherit;font-weight:800}.nav-menu>summary::-webkit-details-marker{display:none}.nav-menu>summary::after{content:" ▾";font-size:.72em;color:var(--id-muted)}.nav-menu[open]>summary,.nav-menu>summary:hover{background:#13243a}.nav-menu-panel{position:absolute;z-index:120;top:calc(100% + 7px);right:0;min-width:220px;display:grid;gap:3px;padding:8px;border:1px solid var(--id-line);border-radius:11px;background:#0b192b;box-shadow:0 16px 40px rgba(0,0,0,.35)}.nav-menu-panel a,.nav-menu-panel .nav-logout button{display:block;width:100%;box-sizing:border-box;text-align:left;padding:9px 10px;border-radius:7px;text-decoration:none}.nav-menu-panel a:hover,.nav-menu-panel .nav-logout button:hover{background:#13243a;text-decoration:none}.nav-user-menu{margin-left:auto}.nav-refresh{border:0!important}.nav-logout{display:block}.nav-logout button{color:var(--id-text)}@media(max-width:900px){.nav-compact{width:100%;margin-top:10px}.nav-user-menu{margin-left:0}.nav-menu-panel{position:fixed;left:12px;right:12px;top:auto;min-width:0}}
.diagnostic-ok{color:#65e6a9;font-weight:900}.diagnostic-warn{color:#ffc45f;font-weight:900}.diagnostic-fail{color:#ff8189;font-weight:900}

/* v1.6.3 : voyants verticaux et tableau sans barre horizontale sur grand écran */
.signal-grid{grid-template-columns:1fr!important;min-width:170px!important}.dashboard-table{min-width:0!important;width:100%;table-layout:fixed}.dashboard-table th,.dashboard-table td{white-space:normal;overflow-wrap:anywhere;vertical-align:top}.dashboard-table th:nth-child(1){width:8%}.dashboard-table th:nth-child(2){width:6%}.dashboard-table th:nth-child(3){width:10%}.dashboard-table th:nth-child(4){width:7%}.dashboard-table th:nth-child(5){width:13%}.dashboard-table th:nth-child(6){width:19%}.dashboard-table th:nth-child(7),.dashboard-table th:nth-child(8),.dashboard-table th:nth-child(9){width:7%}.dashboard-table th:nth-child(10){width:8%}.dashboard-table th:nth-child(11){width:8%}.plus-nocte-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.plus-nocte-grid span{border:1px solid var(--id-line);border-radius:8px;padding:9px;background:#0a1728;text-align:center;font-size:.82rem}@media(max-width:1100px){.dashboard-table{table-layout:auto;min-width:1050px!important}.plus-nocte-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v2 : page Trading systematique */
.algo-rule-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.algo-rule-grid>div,.algo-next-grid>div{border:1px solid var(--id-line);border-radius:10px;padding:12px;background:#0a1728;display:grid;gap:4px}.algo-rule-grid strong{font-size:1.55rem}.algo-rule-grid span{font-weight:900}.algo-rule-grid small,.algo-next-grid small{color:var(--id-muted);line-height:1.35}.algo-thresholds{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.algo-thresholds span{border:1px solid var(--id-line);border-radius:999px;padding:6px 10px;background:#0d1c2f;font-size:.78rem}.algo-next-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.algo-table{min-width:1450px}.algo-table td{vertical-align:top}@media(max-width:1100px){.algo-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.algo-next-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.algo-rule-grid,.algo-next-grid{grid-template-columns:1fr}}


/* v10.1 — TOS Systematic observed data */
.tos-systematic-card{border-color:rgba(93,173,226,.34)}
.tos-filter-grid{display:grid;grid-template-columns:120px minmax(160px,1fr) 130px 190px 130px auto;gap:10px;align-items:end}
.tos-filter-grid label{display:grid;gap:5px;color:var(--id-muted);font-size:.78rem;font-weight:800}
.tos-filter-grid input,.tos-filter-grid select{width:100%;box-sizing:border-box;padding:9px 10px;border-radius:8px;border:1px solid var(--id-line);background:#081525;color:var(--id-text)}
.tos-filter-action{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.tos-kpis .id-kpi small{display:block;color:var(--id-muted);font-size:.72rem;margin-top:3px}
.tos-outcomes{display:flex;gap:8px;flex-wrap:wrap}
.tos-outcomes span{border:1px solid var(--id-line);border-radius:999px;padding:6px 10px;background:#0a1728;font-size:.78rem}
.tos-stat-table{min-width:900px}
@media(max-width:1100px){.tos-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.tos-filter-grid{grid-template-columns:1fr}.tos-filter-action{align-items:stretch}.tos-filter-action .id-button{flex:1}}
