/* Swiss TrottiPass — administration v3 (octobre 2026)
   Mêmes écrans, mêmes fonctions : seulement un style plus clair et moins de blocs. */
:root{--ad-red:#E30613;--ad-navy:#14263f;--ad-text:#33415a;--ad-muted:#5b6780;--ad-bg:#FAFAF8;--ad-line:#e6e4df;--ad-tint:#fff1f2}
html body:has(#admin-root:not([hidden])){background:var(--ad-bg)!important}
/* pas de décor saisonnier dans l'administration */
html body:has(#admin-root:not([hidden])) .tp-note,html body:has(#admin-root:not([hidden])) .tp-snow,html body:has(#admin-root:not([hidden])) .tp-hero-snow{display:none!important}
html body #admin-root *{text-shadow:none!important}

/* barre latérale */
html body #admin-root .admin-sidebar{background:#fff!important;border-right:1px solid var(--ad-line)!important;box-shadow:none!important}
html body #admin-root .admin-wordmark>span{display:inline-block;width:28px;height:34px;font-size:0!important;color:transparent!important;background:url(/public/logo-shield.svg) center/contain no-repeat}
html body #admin-root .admin-tabs button{border-radius:12px!important;color:var(--ad-navy)!important;font-weight:600!important;border:0!important;box-shadow:none!important}
html body #admin-root .admin-tabs button:hover{background:#f4f2ee!important}
html body #admin-root .admin-tabs button.active{background:var(--ad-tint)!important;color:var(--ad-red)!important}
html body #admin-root .admin-tabs b{background:var(--ad-red)!important;border-radius:999px!important;font-size:12px!important}
html body #admin-root .admin-tabs b:empty{display:none!important}

/* en-tête */
html body #admin-root .admin-topbar{border-bottom:1px solid var(--ad-line)!important}
html body #admin-root #admin-current-title{font-weight:800!important;letter-spacing:-.02em!important;color:var(--ad-navy)!important}
html body #admin-root .admin-secondary{border-radius:12px!important;border:1px solid var(--ad-line)!important;background:#fff!important;box-shadow:none!important}

/* chiffres clés : une ligne, sans cartes */
html body #admin-root .admin-metric-grid{gap:0!important;border-top:1px solid var(--ad-line);border-bottom:1px solid var(--ad-line)}
html body #admin-root .admin-metric-grid>article{background:none!important;border:0!important;border-left:1px solid var(--ad-line)!important;border-radius:0!important;box-shadow:none!important;padding:22px 24px!important;color:var(--ad-navy)!important}
html body #admin-root .admin-metric-grid>article:first-child{border-left:0!important;padding-left:0!important}
html body #admin-root .admin-metric-grid>article strong{font-weight:800!important;letter-spacing:-.02em;color:var(--ad-navy)!important}
html body #admin-root .admin-metric-grid>article.admin-metric-accent strong{color:var(--ad-red)!important}
html body #admin-root .admin-metric-grid>article.admin-metric-accent span,html body #admin-root .admin-metric-grid>article.admin-metric-accent small{color:var(--ad-muted)!important}
html body #admin-root .admin-metric-grid>article span{color:var(--ad-navy)!important;font-weight:600}
html body #admin-root .admin-metric-grid>article small{color:var(--ad-muted)!important}

/* panneaux : fondus dans la page */
html body #admin-root .admin-surface,html body #admin-root .admin-panel>article,html body #admin-root .admin-overview-grid>*{background:none!important;border:0!important;border-top:1px solid var(--ad-line)!important;border-radius:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important}
html body #admin-root .admin-community-grid>*,html body #admin-root .admin-state-grid>*{background:none!important;border:0!important;border-left:1px solid var(--ad-line)!important;border-radius:0!important;box-shadow:none!important}

/* tableaux */
html body #admin-root table{border-collapse:collapse!important}
html body #admin-root th{background:none!important;color:var(--ad-muted)!important;font-weight:600!important;border-bottom:1px solid var(--ad-line)!important}
html body #admin-root td{border-bottom:1px solid var(--ad-line)!important}
html body #admin-root tr:hover td{background:#f6f4f0!important}

/* champs et boutons */
html body #admin-root input:not([type=checkbox]):not([type=radio]),html body #admin-root select,html body #admin-root textarea{border-radius:12px!important;border:1px solid #d9d6cf!important;background:#fff!important}
html body #admin-root button[type=submit]:not(.outline){background:var(--ad-red)!important;border-radius:12px!important}
html body #admin-root .admin-chart-bar{border-radius:8px 8px 3px 3px!important;background:#b9cbe6!important}
html body #admin-root .admin-chart-column:last-child .admin-chart-bar{background:var(--ad-red)!important}
html body #admin-root .admin-overview-columns{gap:clamp(28px,4vw,64px)!important}
html body #admin-root #member-statistics{gap:0!important;border-top:1px solid var(--ad-line);border-bottom:1px solid var(--ad-line)}
html body #admin-root #member-statistics>div{background:none!important;border:0!important;border-left:1px solid var(--ad-line)!important;border-radius:0!important;box-shadow:none!important}
html body #admin-root #member-statistics>div:first-child{border-left:0!important;padding-left:0!important}

/* ===== v4 : menu à 4 entrées + boîte « À traiter » ===== */
html body #admin-root .admin-sidebar.ad4>.admin-nav-label,html body #admin-root .admin-sidebar.ad4>nav.admin-tabs{display:none!important}
html body #admin-root .ad4-nav{display:flex;flex-direction:column;gap:4px;margin:8px 0 18px}
html body #admin-root .ad4-nav button{display:flex!important;align-items:center;justify-content:flex-start!important;gap:12px;width:100%;min-height:48px!important;padding:0 14px!important;border:0!important;border-radius:12px!important;background:none!important;color:var(--ad-navy)!important;font-size:15px!important;font-weight:600!important;text-align:left;box-shadow:none!important;cursor:pointer}
html body #admin-root .ad4-nav button:hover{background:#f4f2ee!important}
html body #admin-root .ad4-nav button.on{background:var(--ad-tint)!important;color:var(--ad-red)!important}
html body #admin-root .ad4-i{width:22px;text-align:center}
html body #admin-root .ad4-count{margin-left:auto;font-style:normal;background:var(--ad-red);color:#fff;font-size:12px;font-weight:700;border-radius:99px;padding:2px 9px}
html body #admin-root .ad4-count[hidden]{display:none}
html body #admin-root .ad4-more{border-top:1px solid var(--ad-line);padding:14px 6px 6px;display:flex;flex-wrap:wrap;gap:4px 12px}
html body #admin-root .ad4-more-l{flex-basis:100%;margin:0 0 4px!important;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ad-muted)}
html body #admin-root .ad4-more-b{min-height:30px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;color:var(--ad-muted)!important;font-size:13.5px!important;font-weight:500!important;cursor:pointer}
html body #admin-root .ad4-more-b:hover{color:var(--ad-red)!important;text-decoration:underline}

html body #admin-root .ad4-panel[hidden]{display:none!important}
html body #admin-root .ad4-panel{position:relative}
.ad4-kpis{position:absolute;right:0;top:-104px;display:flex;gap:36px;font-size:14px;color:var(--ad-muted)}
.ad4-kpis b{display:block;font-size:26px;font-weight:800;color:var(--ad-navy);line-height:1.1}
.ad4-kpis .red b{color:var(--ad-red)}
html body:has(#ad4-panel:not([hidden])) #admin-refresh-all{display:none!important}
.ad4-grid{display:grid;grid-template-columns:minmax(320px,440px) minmax(0,1fr);margin-top:18px;min-height:640px}
.ad4-list{border-right:1px solid var(--ad-line);padding-right:20px}
.ad4-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.ad4-chips button{min-height:34px!important;padding:0 12px!important;border:1px solid var(--ad-line)!important;border-radius:99px!important;background:#fff!important;color:var(--ad-navy)!important;font-size:13px!important;font-weight:600!important;white-space:nowrap;box-shadow:none!important;cursor:pointer}
.ad4-chips button.on{background:var(--ad-navy)!important;border-color:var(--ad-navy)!important;color:#fff!important}
.ad4-it{display:flex!important;align-items:flex-start;gap:14px;width:100%;min-height:0!important;padding:14px 12px!important;margin:0 0 2px!important;border:0!important;border-radius:14px!important;background:none!important;box-shadow:none!important;text-align:left;cursor:pointer;color:var(--ad-navy)!important}
.ad4-it:hover{background:#fff!important}
.ad4-it.on{background:#fff!important;box-shadow:0 0 0 2px var(--ad-navy)!important}
.ad4-ic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:18px}
.ad4-ic.f{background:#fff4e5}.ad4-ic.v{background:#fdeaea}.ad4-ic.m{background:#eaf2ff}.ad4-ic.a{background:#fff8d6}.ad4-ic.d{background:#efeaf9;color:#5a3fc0;font-weight:700}
.ad4-tx{display:flex;flex-direction:column;gap:3px;min-width:0}
.ad4-tx b{font-size:15px}
.ad4-tx span{font-size:13px;color:var(--ad-muted);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ad4-it time{margin-left:auto;font-size:12px;color:var(--ad-muted);white-space:nowrap}
.ad4-empty{color:var(--ad-muted);padding:18px 4px;margin:0!important}
.ad4-empty.big{font-size:17px;padding:60px 0;text-align:center}
.ad4-flash{margin:0 0 12px!important;padding:12px 14px;border-left:3px solid #1c8a42;background:#fff;color:var(--ad-navy);font-weight:600;font-size:14px}
.ad4-det{padding-left:36px;min-width:0}
.ad4-kick{margin:0 0 6px!important;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ad-red)}
.ad4-h{margin:0!important;font-size:28px!important;font-weight:800!important;color:var(--ad-navy)!important;letter-spacing:-.01em}
.ad4-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0;border-top:1px solid var(--ad-line);border-bottom:1px solid var(--ad-line)}
.ad4-meta div{padding:12px 16px;border-left:1px solid var(--ad-line);font-size:13px;color:var(--ad-muted);min-width:0}
.ad4-meta div:first-child{border-left:0;padding-left:0}
.ad4-meta b{display:block;margin-top:2px;font-size:16px;color:var(--ad-navy);overflow-wrap:anywhere}
.ad4-doc{background:#fff;border:1px solid var(--ad-line);border-radius:16px;min-height:300px;max-height:520px;overflow:auto;display:grid;place-items:center;box-shadow:0 18px 40px -28px rgba(20,38,63,.35)}
.ad4-doc img{display:block;max-width:100%;height:auto}
.ad4-pdf{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px;text-align:center;color:var(--ad-navy)}
.ad4-pdf-ic{width:64px;height:80px;border-radius:10px;background:#fdeaea;color:var(--ad-red);display:grid;place-items:center;font-weight:800}
.ad4-files{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.ad4-file{min-height:38px!important;padding:0 14px!important;border:1px solid var(--ad-line)!important;border-radius:99px!important;background:#fff!important;color:var(--ad-navy)!important;font-size:13.5px!important;font-weight:600!important;box-shadow:none!important;cursor:pointer}
.ad4-file.on{border-color:var(--ad-navy)!important}
.ad4-check{display:flex;flex-wrap:wrap;gap:8px 24px;margin:6px 0 16px;font-size:14px;color:var(--ad-navy)}
.ad4-check input{accent-color:#1c8a42;width:16px;height:16px;vertical-align:-3px}
.ad4-p{color:var(--ad-text);margin:0 0 6px!important}
.ad4-quote{margin:16px 0!important;padding:16px 20px;border-left:3px solid var(--ad-red);background:#fff;border-radius:0 12px 12px 0;font-size:16px;line-height:1.55;color:var(--ad-navy);white-space:pre-wrap}
.ad4-note{width:100%;margin:4px 0 12px}
.ad4-dec{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ad4-ok,.ad4-no{display:inline-flex!important;align-items:center;min-height:50px!important;padding:0 22px!important;border-radius:12px!important;font-size:16px!important;font-weight:600!important;cursor:pointer;text-decoration:none!important}
.ad4-ok{border:0!important;background:#1c8a42!important;color:#fff!important;box-shadow:0 8px 20px -10px rgba(28,138,66,.7)!important}
.ad4-ok:hover{background:#167536!important}
.ad4-no{border:1px solid var(--ad-line)!important;background:#fff!important;color:var(--ad-navy)!important;box-shadow:none!important}
.ad4-ok:disabled,.ad4-no:disabled{opacity:.55}
.ad4-info{flex-basis:100%;color:var(--ad-muted);font-size:13px}
.ad4-msg{margin:10px 0 0!important;color:#a3101f;font-weight:600;font-size:14px}
.ad4-msg:empty{display:none}
@media(max-width:1100px){.ad4-kpis{position:static;margin:4px 0 8px}}
@media(max-width:900px){.ad4-grid{grid-template-columns:1fr}.ad4-list{border-right:0;padding-right:0}.ad4-det{padding:24px 0 0;border-top:1px solid var(--ad-line);margin-top:12px}.ad4-meta{grid-template-columns:1fr}.ad4-meta div{border-left:0;padding-left:0;border-top:1px solid var(--ad-line)}}

.ad4-back{min-height:36px!important;margin:0 0 10px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;color:var(--ad-red)!important;font-weight:600!important;font-size:14px!important}
