:root{--navy:#112942;--red:#bb2331;--ink:#162b40;--muted:#576777;--line:#dce3e9;--bg:#f3f6f9;--white:#fff;font-family:Arial,"Segoe UI",Tahoma,sans-serif;color:var(--ink);font-size:16px;line-height:1.6;background:var(--bg)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}input,textarea,select{width:100%;min-width:0;padding:.72rem .85rem;border:1px solid #aebcc8;border-radius:6px;background:#fff;color:var(--ink);margin-top:.35rem}input:focus,select:focus,textarea:focus{outline:3px solid #a8c9e5;outline-offset:1px;border-color:#315d82}a:focus-visible,button:focus-visible{outline:3px solid #79afd6;outline-offset:4px}textarea{resize:vertical}label{font-size:.94rem;font-weight:600;display:block}h1,h2,h3,p{margin-top:0}h1{font-size:2.35rem;line-height:1.25;letter-spacing:-.055rem}h2{font-size:1.4rem;line-height:1.4}h3{font-size:1.12rem}p{margin-bottom:1rem}small,.hint{font-size:.875rem}.topline{background:var(--navy);color:white;padding:.45rem 5%;font-size:.875rem;border-bottom:3px solid var(--red)}.header{background:white;padding:1.15rem 5%;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--line)}.brand{display:flex;gap:.85rem;align-items:center;flex-shrink:0}.brand:hover{text-decoration:none}.monogram{background:var(--red);color:#fff;font-size:1.2rem;letter-spacing:-.05rem;font-weight:800;width:3.5rem;height:3.5rem;display:grid;place-items:center;border-radius:7px}.brand strong{display:block;font-size:1.05rem}.brand small{display:block;color:var(--muted)}nav{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;font-size:.94rem;font-weight:600}nav a.active{color:var(--red)}nav form{margin:0}.nav-button{border:0;background:none;color:var(--ink);padding:0}.nav-signup{background:var(--navy);color:#fff;padding:.55rem 1rem;border-radius:6px}.language{border-inline-start:1px solid var(--line);padding-inline-start:1.1rem}.menu-toggle{display:none;background:white;border:1px solid var(--line);padding:.5rem;border-radius:5px}.container{max-width:1240px;margin:auto;padding:2.3rem 2rem 4rem;min-height:65vh}.welcome{display:grid;grid-template-columns:1.6fr 1fr;gap:3rem;padding:2.3rem 0 2.8rem;align-items:start}.welcome h1{margin:.5rem 0 1rem;font-size:3rem}.welcome p{font-size:1.1rem;max-width:620px}.eyebrow{text-transform:uppercase;letter-spacing:.09rem;font-size:.875rem;color:var(--muted);font-weight:700}.actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.7rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--red);border-radius:6px;padding:.72rem 1.15rem;background:var(--red);color:#fff;font-size:1rem;font-weight:700;min-height:46px;text-decoration:none}.button:hover{background:#981a26;text-decoration:none}.button.secondary{background:white;border-color:#b9c5d0;color:var(--ink)}.button.secondary:hover{background:#edf3f7}.welcome-note{background:var(--navy);color:#fff;padding:1.8rem 2rem;border-radius:9px;border-top:4px solid var(--red)}.welcome-note p{font-size:1rem}.welcome-note code{display:block;background:#243e57;padding:.7rem;overflow-wrap:anywhere}.welcome-note .muted{color:#c5d4e1;margin:1.2rem 0 0}.note-number{display:block;font-size:.875rem;letter-spacing:.15rem;color:#c5d4e1;margin-bottom:1.6rem}.section{margin-top:2rem}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.section-heading h2,.section-heading p{margin:0}.publication-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem}.publication{padding:1.5rem;background:white;border:1px solid var(--line);border-radius:8px;border-top:3px solid var(--navy);min-width:0}.publication h3,.publication h2{margin:.8rem 0}.publication p{color:var(--muted);overflow-wrap:anywhere}.text-link{font-weight:700;color:#9d1b28}.empty{background:white;padding:2.5rem 1.5rem;text-align:center;border:1px dashed #bac7d2;border-radius:7px;color:var(--muted);grid-column:1/-1}.privacy-strip{background:#e5edf4;border-inline-start:4px solid var(--navy);padding:1.25rem 1.5rem;margin-top:2rem;display:flex;justify-content:space-between;gap:1rem}.page-heading{margin-bottom:1.8rem}.page-heading p,.muted{color:var(--muted)}.panel{background:white;border:1px solid var(--line);padding:1.7rem;border-radius:8px;min-width:0}.panel.wide{max-width:950px}.panel.narrow{max-width:520px}.panel.narrow .form-grid{grid-template-columns:1fr}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 1.6rem}.full{grid-column:1/-1}.form-grid h3{border-bottom:1px solid var(--line);padding-bottom:.6rem;margin:1rem 0 0;color:var(--navy)}.hint{display:block;color:var(--muted);font-weight:400;margin-top:.4rem}.checkbox{display:flex;align-items:flex-start;gap:.65rem;font-weight:400;flex-wrap:wrap}.checkbox input{width:1.2rem;height:1.2rem;margin-top:.3rem;flex-shrink:0}.form-links{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.75rem;padding-top:1.2rem;margin-top:1.5rem}.form-links a{color:#8f1d29}.notice{padding:1rem 1.3rem;border-radius:6px;margin-bottom:1.5rem;background:#e3f3ec;border:1px solid #91bbaa;color:#174c39}.notice.error{background:#fff0f0;border-color:#e2a6a6;color:#8b1c28}.subnav{display:flex;gap:.3rem;flex-wrap:wrap;margin-bottom:2rem;border-bottom:1px solid var(--line)}.subnav a{padding:.8rem 1rem}.subnav a.selected{border-bottom:3px solid var(--red);font-weight:700;color:#9c1e2b}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:start;font-size:.94rem}th{text-align:start;color:var(--muted);font-size:.875rem;font-weight:700;background:#f4f7fa}th,td{padding:.9rem .85rem;border-bottom:1px solid var(--line);vertical-align:top;min-width:100px}td a:hover{color:var(--red)}.ref{font-weight:700;white-space:nowrap;font-size:.875rem}.badge{display:inline-block;white-space:nowrap;border-radius:4px;padding:.25rem .55rem;font-size:.875rem;background:#e6edf4;color:#264867}.badge.new{background:#fff1da;color:#744609}.badge.processing{background:#e4edf9;color:#244e85}.badge.answered{background:#e1f1e9;color:#20543c}.badge.closed{background:#eceff2;color:#475666}.detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:1.3rem}.prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.response{background:#eef4f8;border-inline-start:4px solid var(--navy);padding:1.3rem;margin-top:1.5rem}.attachment{display:block;border:1px solid var(--line);padding:.8rem;border-radius:5px;overflow-wrap:anywhere}.break{overflow-wrap:anywhere}dl{display:grid;grid-template-columns:1fr 1.4fr;gap:.6rem;font-size:.94rem}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-bottom:1.5rem}.stats>div{background:white;border:1px solid var(--line);padding:1.2rem 1.5rem;border-radius:7px}.stats span{color:var(--muted)}.stats strong{display:block;font-size:2rem;line-height:1.4}.filter{display:flex;align-items:end;gap:.8rem;margin-bottom:1.4rem}.filter label{min-width:200px}.filter .button{margin-bottom:0}.manage-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.manage-row p{margin:.3rem 0 0}.manage-row:last-child{border:0}.pagination{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.5rem}.article{max-width:850px}.article p{margin-bottom:0}footer{background:var(--navy);color:#e0e8ef;padding:2rem 5%;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;font-size:.94rem}footer p{margin:.25rem 0 0;font-size:.875rem}html[dir=rtl]{font-family:Tahoma,Arial,sans-serif;line-height:1.8}html[dir=rtl] h1{letter-spacing:0}html[dir=rtl] .eyebrow{letter-spacing:0} [hidden]{display:none!important}@media(max-width:1100px){.header{flex-wrap:wrap}nav{gap:1rem}.welcome{gap:2rem}.welcome h1{font-size:2.5rem}}@media(max-width:720px){.header{padding:1rem 1.2rem;position:relative}.brand{flex-shrink:1}.brand strong{font-size:.94rem}.brand small{font-size:.75rem}.menu-toggle{display:block}nav{display:none;width:100%;align-items:stretch;flex-direction:column;gap:.5rem}nav.open{display:flex}nav a,nav .nav-button{padding:.6rem}nav .language{border:0;padding-inline-start:.6rem}.container{padding:1.5rem 1.1rem 3rem}.welcome{grid-template-columns:1fr;padding:.5rem 0 1rem;gap:1.5rem}.welcome h1{font-size:2.3rem}.welcome-note{padding:1.3rem}.note-number{margin-bottom:.8rem}.publication-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.panel{padding:1.2rem}.detail-grid{grid-template-columns:1fr}.stats{gap:.5rem}.stats>div{padding:.8rem}.stats strong{font-size:1.6rem}.stats span{font-size:.875rem}.privacy-strip{flex-direction:column}h1{font-size:1.9rem}.filter{flex-wrap:wrap}.filter label{min-width:0;flex:1}.manage-row{align-items:flex-start}footer{align-items:flex-start;flex-direction:column}.actions .button{flex:1} .topline{padding-inline:1.2rem}}@media(prefers-reduced-motion:no-preference){.button{transition:background .15s}}@media(min-width:721px) and (max-width:900px){.publication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.article-image{display:block;width:100%;max-height:560px;object-fit:contain;background:#eef2f5;border-radius:7px;margin-bottom:1.5rem}
.manage-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.manage-actions form{margin:0}.button.danger{background:#8b1c28;border-color:#8b1c28}.button.danger:hover{background:#68131d}

/* Identité visuelle UMT Marrakech */
:root{--navy:#063d76;--blue:#0877c8;--blue-deep:#04589e;--red:#c62032;--ink:#102b46;--muted:#5b6f82;--line:#d7e3ee;--bg:#f4f8fc;--white:#fff}
body{background:linear-gradient(180deg,#eef6fc 0,#f7f9fc 330px,#f4f7fa 100%)}
.topline{display:flex;justify-content:space-between;gap:1rem;background:linear-gradient(90deg,#043f79,#0877c8);border-bottom:0;padding:.48rem 5%;letter-spacing:.01em}
.topline-motto{opacity:.9}
.header{padding:.75rem 5%;border-bottom:1px solid #c8dceb;box-shadow:0 8px 28px rgba(13,66,112,.08);position:relative;z-index:5}
.brand-logo{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 4px 7px rgba(5,72,130,.18))}
.brand strong{font-size:1.12rem;color:#073f76}.brand small{color:#526d85}
nav a{border-radius:7px;padding:.48rem .18rem;transition:color .15s,background .15s}nav a:hover{color:var(--blue-deep);text-decoration:none}nav a.active{color:var(--blue-deep);box-shadow:inset 0 -3px 0 var(--red)}
.nav-signup{background:linear-gradient(135deg,var(--blue-deep),var(--blue));padding:.62rem 1.05rem;box-shadow:0 6px 16px rgba(4,88,158,.18)}
.container{max-width:1280px}
.welcome{grid-template-columns:minmax(0,1.35fr) minmax(360px,.85fr);gap:2.4rem;padding:2.6rem 0 3rem}
.welcome-copy{padding:1.6rem .2rem}.welcome h1{color:#073f76;max-width:680px;font-size:clamp(2.4rem,5vw,4.25rem);line-height:1.08;letter-spacing:-.08rem}.welcome-copy>p{font-size:1.12rem;max-width:680px;color:#405d76}
.eyebrow{color:var(--blue-deep)}
.welcome-note{position:relative;overflow:hidden;display:grid;grid-template-columns:130px 1fr;align-items:center;gap:1.25rem;background:linear-gradient(145deg,#063d76,#0877c8);border:0;border-radius:18px;padding:1.6rem;box-shadow:0 22px 48px rgba(5,77,134,.23)}
.welcome-note::after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.15);border-radius:50%;inset:auto -70px -90px auto}.welcome-logo{width:130px;height:130px;object-fit:contain;filter:drop-shadow(0 8px 15px rgba(0,0,0,.22));position:relative;z-index:1}.welcome-note>div{position:relative;z-index:1}.welcome-note code{background:rgba(1,37,72,.55);border:1px solid rgba(255,255,255,.18);border-radius:7px}.welcome-note .muted{color:#d8ebf8}.note-number{margin-bottom:.7rem;color:#d9efff}
.button{background:linear-gradient(135deg,#b8142a,#d62d40);border-color:#b8142a;border-radius:8px;box-shadow:0 6px 14px rgba(182,20,42,.16)}.button:hover{background:#a81124}.button.secondary{box-shadow:none;color:#073f76;border-color:#b6cede}.button.secondary:hover{background:#edf6fc}
.panel,.publication,.stats>div{border-color:#d5e3ee;box-shadow:0 8px 28px rgba(23,69,108,.065)}.panel{border-radius:11px}.publication{border-radius:11px;border-top:4px solid var(--blue)}.publication:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(23,69,108,.12)}
.subnav{background:#fff;border:1px solid var(--line);border-radius:9px;padding:0 .5rem;box-shadow:0 5px 18px rgba(23,69,108,.05)}.subnav a.selected{color:var(--blue-deep);border-bottom-color:var(--red)}
th{background:#eaf3fa;color:#234b6c}.privacy-strip{background:linear-gradient(90deg,#e2f1fb,#f1f7fb);border-inline-start-color:var(--blue);border-radius:8px}
footer{background:linear-gradient(120deg,#052f59,#064f8f);border-top:4px solid var(--red)}
@media(max-width:900px){.welcome{grid-template-columns:1fr}.welcome-copy{padding-bottom:0}.welcome-note{grid-template-columns:110px 1fr}.welcome-logo{width:110px;height:110px}}
@media(max-width:720px){.topline{padding-inline:1.2rem}.topline-motto{display:none}.header{padding:.7rem 1rem}.brand-logo{width:58px;height:58px}.brand strong{font-size:.9rem}.brand small{font-size:.73rem}.welcome{padding-top:.2rem}.welcome h1{font-size:2.45rem}.welcome-note{grid-template-columns:78px 1fr;padding:1.25rem;gap:.9rem}.welcome-logo{width:78px;height:78px}.container{padding-top:1.2rem}nav a.active{box-shadow:none;background:#eaf4fb}}

/* Navigation et composants affinés */
.header{position:sticky;top:0}.header nav{gap:.35rem}.header nav>a,.nav-button{padding:.62rem .78rem;border-radius:8px}.header nav>a:hover,.nav-button:hover{background:#edf6fc}.header nav>a.active{background:#e8f3fb;box-shadow:inset 0 -3px 0 var(--red)}
.header .nav-signup{color:#fff;padding:.62rem 1rem}.header .nav-signup:hover{color:#fff;background:#04558f}.language{margin-inline-start:.35rem;border-inline-start:1px solid var(--line);border-radius:0!important}
.page-heading{padding-bottom:1rem;border-bottom:1px solid var(--line)}.page-heading h1{color:#073f76;margin-bottom:.35rem}.panel.wide{margin-inline:auto}.panel.narrow{margin-inline:auto}
input,textarea,select{transition:border-color .15s,box-shadow .15s;background:#fbfdff}input:hover,textarea:hover,select:hover{border-color:#7fa5c2}input:focus,textarea:focus,select:focus{box-shadow:0 0 0 4px rgba(8,119,200,.12);outline:0}
.table-wrap{border:1px solid var(--line);border-radius:9px}.table-wrap table{background:#fff}.table-wrap tbody tr:hover{background:#f6faff}.badge{font-weight:700}.notice{box-shadow:0 7px 20px rgba(23,69,108,.08)}
.menu-toggle{align-items:center;gap:.45rem;color:#073f76;font-weight:700;border-color:#b7cddd;background:#f7fbfe}.menu-toggle span{font-size:1.25rem;line-height:1}
@media(max-width:720px){.header{position:sticky;top:0}.menu-toggle{display:inline-flex}.header nav{padding:.65rem;background:#fff;border-top:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 12px 22px rgba(12,62,104,.12)}.header nav>a,.header .nav-button{width:100%;text-align:start;padding:.72rem .8rem}.header nav form{width:100%}.language{margin:0;border:0!important}.stats{grid-template-columns:1fr}.table-wrap{border-radius:7px}.welcome-copy{padding-top:.8rem}}
.calculated-field{display:flex;align-items:center;min-height:46px;margin-top:.35rem;padding:.72rem .85rem;border:1px solid #c8d8e5;border-radius:6px;background:#edf5fb;color:#073f76;font-weight:700}
.news-feed{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;background:#fff;border:1px solid var(--line);border-inline-start:5px solid var(--red);border-radius:10px;padding:.75rem 1rem;box-shadow:0 7px 22px rgba(23,69,108,.07)}.news-feed>strong{color:#073f76;white-space:nowrap}.news-feed-items{display:flex;gap:.65rem;overflow-x:auto;scrollbar-width:thin;padding:.15rem}.news-feed-items a{display:flex;align-items:center;gap:.55rem;white-space:nowrap;background:#edf6fc;border-radius:999px;padding:.42rem .75rem;color:#164d78}.news-feed-items a:hover{background:#dceefb;text-decoration:none}.news-feed-items time{font-size:.78rem;color:var(--muted)}.news-feed-all{font-weight:700;color:#9d1b28;white-space:nowrap}@media(max-width:720px){.news-feed{grid-template-columns:1fr auto}.news-feed-items{grid-column:1/-1;grid-row:2}.news-feed-all{grid-column:2;grid-row:1}}
.admin-toolbar{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1.3rem}.danger-zone{max-width:950px;margin:1rem auto 0;text-align:end}.report{max-width:none}.report-detail td{white-space:pre-wrap;background:#f8fbfd;color:#3c5367}
@media print{.topline,.header,.subnav,footer,.no-print{display:none!important}.container{max-width:none;padding:0}.panel{border:0;box-shadow:none;padding:0}.page-heading{margin-bottom:1rem}body{background:#fff}table{font-size:10pt}th,td{padding:.35rem}.report-detail{page-break-inside:avoid}}
.nav-profile{display:flex;align-items:center;gap:.42rem;white-space:nowrap}.profile-avatar{width:2.6rem;height:2.6rem;border-radius:50%;object-fit:cover;display:inline-grid;place-items:center;background:#dcebf7;color:#074579;font-weight:800;border:2px solid #fff;box-shadow:0 0 0 1px #b9cedf;flex:0 0 auto}.profile-avatar.small{width:1.55rem;height:1.55rem;font-size:.68rem;border-width:1px}.profile-avatar.large{width:5rem;height:5rem;font-size:1.4rem}.profile-avatar.table-avatar{width:2.25rem;height:2.25rem;font-size:.8rem}.profile-photo-field{display:flex;align-items:center;gap:1.2rem;padding:1rem;background:#f3f8fc;border:1px solid var(--line);border-radius:10px}.profile-photo-controls{display:grid;gap:.7rem;flex:1}.profile-photo-field label{flex:1}.remove-photo{color:#8b1c28}.news-feed-items{scroll-behavior:smooth;overscroll-behavior-inline:contain}.news-feed-items:focus-visible{outline:3px solid #79afd6;outline-offset:3px}@media(max-width:720px){.nav-profile{padding:.72rem .8rem!important}.nav-profile .profile-avatar{width:1.45rem;height:1.45rem}.profile-photo-field{align-items:flex-start;flex-direction:column}}

/* Finition de l’interface */
body{min-height:100vh}.container{width:min(100% - 2rem,1280px);padding-inline:0}.page-heading{margin-bottom:1.5rem}.page-heading h1{font-size:clamp(1.9rem,3vw,2.7rem);letter-spacing:-.035em}.panel{padding:clamp(1.15rem,2.4vw,2rem)}.form-grid{gap:1.15rem 1.4rem}.form-grid h3{font-size:1.08rem;background:#f4f8fc;border-radius:8px;padding:.72rem .9rem;border-bottom:0}.calculated-field{border-color:#bad4e7;background:linear-gradient(135deg,#edf7fd,#f8fbfe);box-shadow:inset 3px 0 0 var(--blue)}.publication{transition:transform .18s ease,box-shadow .18s ease}.stats>div{border-top:3px solid var(--blue)}.stats strong{color:#073f76}.manage-row{padding:1.1rem .25rem}.attachment{background:#f7fbfe}.attachment:hover{background:#eaf5fc;text-decoration:none}.button{transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.button:hover{transform:translateY(-1px)}footer{margin-top:2rem}.print-button::before{content:"⎙";font-size:1.15rem}@media(max-width:720px){.container{width:min(100% - 1.25rem,1280px)}.page-heading{margin-bottom:1rem}.panel{border-radius:10px}.form-grid{gap:1rem}.subnav{overflow-x:auto;flex-wrap:nowrap}.subnav a{white-space:nowrap}.button{width:auto}.admin-toolbar .button{width:100%}}
.home-interactive{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:0 0 2.2rem}.message-board{display:grid;gap:1rem}.home-message,.poll-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.35rem 1.5rem;box-shadow:0 8px 28px rgba(23,69,108,.07)}.home-message p{margin:.5rem 0 0;font-size:1.08rem}.home-message.urgent{border-inline-start:5px solid var(--red);background:linear-gradient(135deg,#fff7f8,#fff)}.home-message.proverb{border-inline-start:5px solid var(--blue);background:linear-gradient(135deg,#f2f9fe,#fff)}.poll-card h2{margin:.55rem 0 1rem}.poll-option{display:flex;gap:.6rem;align-items:center;padding:.6rem .7rem;border:1px solid var(--line);border-radius:8px;margin:.55rem 0}.poll-option input{width:auto;margin:0}.poll-results{display:grid;gap:.65rem;margin-top:1rem}.poll-results span{display:block;font-size:.88rem}.poll-results progress{width:100%;height:.7rem;accent-color:var(--blue)}.admin-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.print-report-header,.print-page-footer{display:none}@media(max-width:800px){.home-interactive,.admin-home-grid{grid-template-columns:1fr}}@media print{@page{size:A4;margin:22mm 12mm 20mm}.print-report-header{display:flex;align-items:center;gap:1rem;border-bottom:2px solid #063d76;padding-bottom:.7rem;margin-bottom:1rem}.print-report-header img{width:68px;height:68px;object-fit:contain}.print-report-header div{display:grid}.print-report-header strong{font-size:15pt;color:#063d76}.print-report-header span,.print-report-header time{font-size:9pt}.print-page-footer{display:block;position:fixed;bottom:-14mm;left:0;right:0;text-align:center;font-size:8pt;color:#526d85}.print-page-footer b::after{content:counter(page)}.report thead{display:table-header-group}.report tr{break-inside:avoid}.report{font-size:9pt}}
.home-interactive.messages-only{grid-template-columns:minmax(0,820px);justify-content:center}.messages-only .message-board{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}@media(max-width:720px){.messages-only .message-board{grid-template-columns:1fr}}
@media print{@page{size:A4 portrait;margin:18mm 11mm 18mm}.page-heading{display:none!important}.print-report-header{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:10px;border-bottom:1.5px solid #063d76;padding:0 0 8px;margin:0 0 10px}.print-report-header img{width:44px!important;height:44px!important;max-width:44px!important;object-fit:contain}.print-report-header div{display:grid;line-height:1.35}.print-report-header strong{font-size:13pt;color:#063d76}.print-report-header span{font-size:8.5pt;color:#334e68}.print-report-header time{font-size:8pt;color:#62788b}.report .table-wrap{border:0}.report table{table-layout:fixed;width:100%;border-collapse:collapse;font-size:7.8pt}.report th{background:#e8f1f8!important;color:#123f65!important;font-size:7.5pt;text-transform:uppercase}.report th,.report td{padding:5px 6px;border:1px solid #b9cad8;vertical-align:top;min-width:0;word-break:break-word}.report th:nth-child(1){width:11%}.report th:nth-child(2){width:18%}.report th:nth-child(3){width:22%}.report th:nth-child(4){width:22%}.report th:nth-child(5){width:16%}.report th:nth-child(6){width:11%}.report-detail td{padding:7px 9px!important;background:#f8fafc!important;line-height:1.45}.print-page-footer{bottom:-12mm;border-top:1px solid #c8d5df;padding-top:4px}.report tbody tr:nth-child(4n+1){background:#fbfdff!important}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Partage et finition visuelle v10 */
body{background:radial-gradient(circle at 10% 0,#eaf4fb 0,transparent 28rem),var(--bg)}.header{box-shadow:0 8px 30px rgba(8,48,83,.08)}.publication,.panel,.home-message{box-shadow:0 10px 32px rgba(17,55,88,.07)}.publication{display:flex;flex-direction:column;border-radius:14px;border-top-width:4px}.publication>p{flex:1}.publication-links{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.manage-content{min-width:0;flex:1}.share-box{margin-top:1.15rem;padding-top:.9rem;border-top:1px solid #e2eaf0}.share-label{display:block;margin-bottom:.55rem;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.share-actions{display:flex;gap:.45rem;flex-wrap:wrap}.share-button{appearance:none;display:inline-flex;align-items:center;gap:.35rem;min-height:34px;padding:.35rem .58rem;border:1px solid #d0dce5;border-radius:999px;background:#fff;color:#24445f;font:700 .76rem/1 Arial,sans-serif;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s}.share-button:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(12,54,89,.12);text-decoration:none}.share-button b{display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;color:#fff;font-size:.75rem}.share-button.facebook b{background:#1877f2}.share-button.whatsapp b{background:#20b95a}.share-button.tiktok b{background:#111}.share-button.telegram b{background:#229ed9}.share-feedback{display:block;min-height:1.2em;margin-top:.4rem;color:#23633f}.home-message .share-box{margin-top:1rem}.manage-row .share-box{margin-top:.65rem;padding-top:.55rem}.manage-row .share-label{display:none}.manage-row .share-feedback{margin:0}.article .share-box{margin-top:1.5rem}.article-image{border-radius:12px;box-shadow:0 8px 25px rgba(12,54,89,.12)}
@media(max-width:720px){.share-button span{display:none}.share-button{width:2.35rem;height:2.35rem;padding:0;justify-content:center}.share-button b{width:1.35rem;height:1.35rem}.manage-row{flex-direction:column}.manage-actions{width:100%}.manage-actions .button{flex:1}.publication{padding:1.25rem}}
.home-message{padding:0;overflow:hidden;display:grid;grid-template-columns:1fr;align-items:stretch}.home-message.has-image{grid-template-columns:minmax(120px,34%) 1fr}.home-message-image{width:100%;height:100%;min-height:220px;object-fit:cover}.home-message-content{padding:1.5rem;display:flex;flex-direction:column;justify-content:center}.home-message-content>p{font-size:1.12rem;line-height:1.8}.admin-message-thumb{width:76px;height:76px;object-fit:cover;border-radius:12px;border:1px solid var(--line);flex:0 0 auto}.protected-account{display:inline-block;padding:.35rem .65rem;border-radius:999px;background:#edf2f6;color:var(--muted);font-size:.8rem;font-weight:700}@media(max-width:620px){.home-message.has-image{grid-template-columns:1fr}.home-message-image{height:180px;min-height:0}.home-message-content{padding:1.2rem}}

/* Accueil dynamique v12 */
.news-feed{position:relative;grid-template-columns:auto minmax(0,1fr) auto;overflow:hidden;padding:.72rem 1rem;background:linear-gradient(110deg,#fff 0,#f6fbff 65%,#eef7fd 100%);border-inline-start-width:0;border-top:1px solid #c7dce9;box-shadow:0 10px 30px rgba(13,65,108,.09)}.news-feed::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:linear-gradient(var(--red),#ef5260)}.news-feed-heading{display:flex;align-items:center;gap:.55rem;color:#073f76;white-space:nowrap}.live-dot{width:.62rem;height:.62rem;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px rgba(187,35,49,.12);animation:livePulse 1.8s infinite}.news-feed-window{min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.news-feed-items{direction:ltr;overflow-x:auto;padding:.18rem 1.2rem;scrollbar-width:none}.news-feed-items::-webkit-scrollbar{display:none}.news-feed-items a{position:relative;flex:0 0 auto;border:1px solid #d6e6f1;background:#fff;box-shadow:0 4px 12px rgba(12,65,108,.06);transition:transform .25s,background .25s}.news-feed-items a:hover{transform:translateY(-2px);background:#e8f5fd}.news-feed-items a i{color:var(--red);font-style:normal;font-weight:900}.news-feed-items.is-moving a{box-shadow:0 7px 18px rgba(12,65,108,.12)}@keyframes livePulse{50%{transform:scale(.72);opacity:.65}}
.syndical-alert{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin:1rem 0 0;padding:.9rem 1rem;border:1px solid #e6a5aa;border-radius:12px;background:linear-gradient(105deg,#8e0e1a,#c72434 58%,#a31320);color:#fff;box-shadow:0 12px 30px rgba(142,14,26,.22);overflow:hidden}.syndical-alert::after{content:"";position:absolute;width:160px;height:160px;border:24px solid rgba(255,255,255,.06);border-radius:50%;inset-inline-end:-65px;top:-62px}.alert-image-button,.quote-image-button,.article-cover-button{appearance:none;padding:0;border:0;background:none;cursor:zoom-in}.alert-image-button{position:relative;z-index:1;width:58px;height:58px}.alert-image-button img{width:58px;height:58px;border-radius:10px;object-fit:cover;border:2px solid rgba(255,255,255,.65)}.syndical-alert-copy{position:relative;z-index:1}.syndical-alert-copy strong{display:block;font-size:.88rem;letter-spacing:.025em}.syndical-alert-copy p{margin:.22rem 0 0;font-size:1.03rem;font-weight:700}.syndical-alert .share-box{position:relative;z-index:1;margin:0;padding:0;border:0}.syndical-alert .share-label,.syndical-alert .share-feedback{display:none}.syndical-alert .share-button{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.95)}
.quotes-section{max-width:900px;margin:0 auto 2.5rem;padding:1.35rem;border:1px solid #cfdfeb;border-radius:18px;background:linear-gradient(135deg,#fff,#f2f8fc);box-shadow:0 16px 42px rgba(13,65,108,.1)}.quotes-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.quotes-heading h2{margin:.15rem 0 0;color:#073f76;font-size:1.55rem}.quote-controls{display:flex;align-items:center;gap:.55rem}.quote-controls button{display:grid;place-items:center;width:2.35rem;height:2.35rem;padding:0;border:1px solid #bdd3e3;border-radius:50%;background:#fff;color:#074579;font-size:1.6rem;line-height:1;box-shadow:0 4px 12px rgba(13,65,108,.08)}.quote-controls button:hover{background:#e7f3fb}.quote-counter{min-width:3.5rem;text-align:center;color:var(--muted);font-size:.82rem}.quotes-carousel{position:relative;min-height:180px}.quote-slide{display:none;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:1.3rem;min-height:180px;padding:1.2rem;border-radius:14px;background:#fff;border:1px solid #dce8f0;animation:quoteIn .5s ease}.quote-slide.active{display:grid}.quote-image{width:112px;height:112px;object-fit:cover;border-radius:16px;border:4px solid #e5f1f8;box-shadow:0 7px 20px rgba(10,62,104,.14)}.quote-mark{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background:#e8f4fb;color:#0877c8;font:700 5rem/1 Georgia,serif}.quote-content blockquote{margin:0;color:#173d5c;font:italic 1.22rem/1.75 Georgia,"Times New Roman",serif}.quote-content .share-box{margin-top:.75rem;padding-top:.65rem}@keyframes quoteIn{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.live-dot,.quote-slide{animation:none}}
@media(max-width:720px){.news-feed{grid-template-columns:1fr auto;gap:.55rem}.news-feed-window{grid-column:1/-1;grid-row:2}.news-feed-heading{grid-column:1;grid-row:1}.syndical-alert{grid-template-columns:auto 1fr;padding:.8rem}.syndical-alert .share-box{grid-column:1/-1}.syndical-alert-copy strong{font-size:.78rem}.syndical-alert-copy p{font-size:.95rem}.quotes-section{padding:1rem;border-radius:14px}.quotes-heading h2{font-size:1.25rem}.quote-slide,.quote-slide.active{grid-template-columns:74px minmax(0,1fr);gap:.85rem;padding:.9rem;min-height:155px}.quote-image{width:74px;height:74px;border-radius:12px}.quote-mark{width:65px;height:65px;font-size:3.5rem}.quote-content blockquote{font-size:1rem;line-height:1.6}.quote-controls button{width:2rem;height:2rem}.quote-counter{display:none}}

/* Espace participatif et visionneuse v13 */
.article-nav{justify-content:center}.article-card{padding:0;overflow:hidden}.article-card-cover{display:block;height:185px;overflow:hidden;background:#e8f2f8}.article-card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.article-card-cover:hover img{transform:scale(1.035)}.article-card-body{display:flex;flex:1;flex-direction:column;padding:1.35rem}.article-card-body>p{flex:1}.member-author{display:block;margin-top:.45rem;color:#0877c8;font-size:.78rem;font-weight:700}.format-toolbar{display:flex;gap:.45rem;flex-wrap:wrap;padding:.65rem;border:1px solid #cedde8;border-radius:9px;background:#f2f7fb}.format-toolbar button{min-width:2.5rem;padding:.45rem .7rem;border:1px solid #b9cedd;border-radius:6px;background:#fff;color:#163f61;font-weight:700}.format-toolbar button:hover{background:#e2f1fa}.article-editor textarea{min-height:260px;font-family:Arial,sans-serif}.article-richtext{font-size:1.05rem;line-height:1.85}.article-richtext h2,.article-richtext h3{margin:1.5rem 0 .65rem;color:#073f76}.article-richtext blockquote{margin:1.2rem 0;padding:.9rem 1.1rem;border-inline-start:4px solid var(--blue);background:#edf6fc;color:#294b67}.article-list-item{display:block;padding-inline-start:.7rem}.article-files{margin-top:1.6rem;padding:1.1rem;border-radius:10px;background:#f2f7fb}.article-files h2{font-size:1.05rem}.article-cover-button{display:block;width:100%;margin-bottom:1.5rem}.article-cover-button .article-image{display:block;width:100%;max-height:480px;object-fit:cover}.image-lightbox{width:min(94vw,980px);max-height:92vh;padding:1rem;border:0;border-radius:14px;background:#0b1722;box-shadow:0 25px 80px rgba(0,0,0,.5)}.image-lightbox::backdrop{background:rgba(1,10,18,.82);backdrop-filter:blur(3px)}.image-lightbox img{display:block;max-width:100%;max-height:84vh;margin:auto;object-fit:contain}.lightbox-close{position:absolute;top:.55rem;inset-inline-end:.65rem;z-index:2;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:#fff;color:#102d44;font-size:1.7rem;line-height:1}.quote-image-button{width:112px;height:112px}.quote-image-button .quote-image{display:block}.header nav{font-size:.9rem}
@media(max-width:720px){.article-nav{justify-content:flex-start}.article-card-cover{height:165px}.article-card-body{padding:1.1rem}.format-toolbar{position:sticky;top:78px;z-index:3}.quote-image-button{width:74px;height:74px}.image-lightbox{padding:.65rem}.article-richtext{font-size:1rem}}

/* Bureau syndical, images HD et citations v14 */
.office-menu{position:relative}.office-menu summary{list-style:none;cursor:pointer;padding:.62rem .78rem;border-radius:8px;font-weight:700}.office-menu summary::-webkit-details-marker{display:none}.office-menu summary::after{content:"⌄";margin-inline-start:.35rem;color:var(--red)}.office-menu summary:hover,.office-menu summary.active{background:#e8f3fb;color:#07518e}.office-dropdown{position:absolute;z-index:20;top:calc(100% + .55rem);inset-inline-start:0;display:grid;min-width:220px;padding:.5rem;border:1px solid #cddde8;border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(9,50,84,.18)}.office-dropdown a{padding:.65rem .75rem;border-radius:7px;white-space:nowrap}.office-dropdown a:hover{background:#edf6fc;text-decoration:none}.office-hub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.office-hub-card{display:grid;gap:.45rem;padding:1.5rem;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(12,58,95,.08)}.office-hub-card:hover{transform:translateY(-2px);text-decoration:none}.office-hub-card>span{display:grid;place-items:center;width:3rem;height:3rem;border-radius:12px;background:#e6f3fb;color:#076eb5;font-size:1.45rem}.office-hub-card strong{color:#073f76;font-size:1.05rem}.office-hub-card small{color:var(--muted)}.office-members-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.office-member-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 9px 28px rgba(12,58,95,.07)}.office-member-photo{width:88px;height:88px;border-radius:18px;object-fit:cover;display:grid;place-items:center;background:#e2f0f9;color:#07518e;font-size:1.5rem;font-weight:800;flex:0 0 auto}.office-member-card h2{margin:0;color:#073f76}.office-member-card p{margin:.15rem 0;color:var(--muted)}.office-member-card span{font-size:.8rem;color:#0877c8;font-weight:700}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.gallery-item{height:220px;padding:0;border:0;border-radius:14px;overflow:hidden;background:#dfeaf2;cursor:zoom-in;box-shadow:0 8px 24px rgba(10,55,91,.1)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.gallery-item:hover img{transform:scale(1.04)}.contact-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.contact-card>span{display:grid;place-items:center;width:3.2rem;height:3.2rem;border-radius:50%;background:#e6f3fb;color:#0877c8;font-size:1.5rem}.contact-card a{color:#9d1b28;font-weight:700}.quote-slide{position:relative}.quote-symbol{position:absolute;top:.35rem;inset-inline-end:.75rem;color:rgba(8,119,200,.16);font:700 3rem/1 Georgia,serif}.image-lightbox{width:min(98vw,1400px);max-width:1400px;max-height:96vh;padding:.65rem}.image-lightbox img{max-height:92vh;image-rendering:auto}.alert-image-button,.quote-image-button,.gallery-item{outline-offset:3px}
@media(max-width:1000px){.office-hub{grid-template-columns:repeat(2,minmax(0,1fr))}.office-members-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.office-menu{width:100%}.office-menu summary{padding:.72rem .8rem}.office-dropdown{position:static;margin-top:.35rem;box-shadow:none;border-color:#dce7ef}.office-hub,.office-members-grid,.contact-layout{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item{height:145px}.office-subnav{justify-content:flex-start}.office-member-photo{width:72px;height:72px}.image-lightbox{width:98vw}.image-lightbox img{max-height:90vh}}
.admin-office-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.admin-office-grid>.panel{margin:0}.admin-office-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:1rem}.admin-office-gallery>div{position:relative}.admin-office-gallery img{width:100%;height:120px;object-fit:cover;border-radius:10px}.admin-office-gallery form{position:absolute;inset-inline-end:.35rem;bottom:.35rem}.admin-office-gallery .button{padding:.4rem .55rem;font-size:.78rem}@media(max-width:900px){.admin-office-grid{grid-template-columns:1fr}}@media(max-width:520px){.admin-office-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Administration et Bureau syndical v16 */
.admin-list-panel{padding:0;overflow:hidden;border:1px solid #cddfea;box-shadow:0 14px 38px rgba(7,61,118,.09)}.admin-table-wrap{margin:0;border-radius:0}.data-table{border-collapse:separate;border-spacing:0;min-width:100%}.data-table thead th{position:sticky;top:0;z-index:2;padding:.9rem .8rem;background:linear-gradient(135deg,#073f76,#086eae);color:#fff;border:0;font-size:.78rem;letter-spacing:.035em;text-transform:uppercase}.data-table tbody tr{transition:background .18s,transform .18s}.data-table tbody tr:nth-child(even){background:#f6fafd}.data-table tbody tr:hover{background:#eaf5fb}.data-table td{padding:.85rem .8rem;border-bottom:1px solid #deebf2;vertical-align:middle}.table-primary{font-weight:750;color:#073f76}.table-code{display:inline-flex;padding:.3rem .5rem;border-radius:7px;background:#e9f2f8;color:#07518e;font-family:ui-monospace,Consolas,monospace;font-weight:700}.role-chip,.verification-chip{display:inline-flex;align-items:center;white-space:nowrap;padding:.32rem .58rem;border-radius:999px;font-size:.78rem;font-weight:750}.role-chip{background:#e7f2fb;color:#07518e}.verification-chip.is-verified{background:#e3f6ec;color:#167145}.verification-chip.is-pending{background:#fff1d8;color:#8a5a00}.member-stats{margin-bottom:1rem}.member-stats>div{position:relative;overflow:hidden}.member-stats>div::after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;background:rgba(8,119,200,.08);inset-inline-end:-20px;bottom:-30px}.complaints-table .ref{display:inline-flex;padding:.38rem .58rem;border-radius:7px;background:#073f76;color:#fff;font-weight:800;text-decoration:none}.complaints-table .ref:hover{background:#9d1b28}.filter{border:1px solid #d5e5ef;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(7,61,118,.06)}
.office-members-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.office-member-card{position:relative;display:block;padding:0;overflow:hidden;text-align:center;border:1px solid #d4e4ee;background:linear-gradient(180deg,#eaf5fb 0, #fff 42%);box-shadow:0 15px 40px rgba(7,61,118,.1)}.office-member-card::before{content:"";display:block;height:72px;background:linear-gradient(120deg,#063d76,#0780c7)}.office-member-photo{width:112px;height:112px;margin:-56px auto 0;border-radius:50%;border:5px solid #fff;box-shadow:0 8px 24px rgba(7,61,118,.22)}.office-member-copy{padding:1rem 1.2rem 1.35rem}.office-member-kicker{display:inline-block;margin-bottom:.45rem;color:#9d1b28;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.office-member-card h2{font-size:1.16rem}.office-member-card strong{display:block;color:#0877c8}.office-member-card p{line-height:1.65}.gallery-card{position:relative;margin:0;overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 12px 34px rgba(7,61,118,.12)}.gallery-card .gallery-item{width:100%;border-radius:0;box-shadow:none}.gallery-card figcaption{padding:.75rem 1rem;color:#073f76;font-weight:700}.communique-list{display:grid;gap:1rem}.communique-card{display:grid;grid-template-columns:82px 1fr;gap:1.25rem;padding:1.4rem;border:1px solid #d4e4ee;border-radius:16px;background:#fff;box-shadow:0 12px 34px rgba(7,61,118,.08)}.communique-date{display:grid;place-content:center;align-self:start;min-height:82px;border-radius:14px;background:linear-gradient(145deg,#073f76,#0877c8);color:#fff;text-align:center}.communique-date span{font-size:1.8rem;font-weight:850;line-height:1}.communique-date small{margin-top:.25rem}.communique-card h2{margin:.25rem 0 .7rem;color:#073f76}.contact-hero{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:1rem;padding:1.5rem 2rem;border-radius:18px;background:linear-gradient(135deg,#063d76,#087ac0);color:#fff;box-shadow:0 16px 40px rgba(7,61,118,.2)}.contact-hero .eyebrow,.contact-hero h2,.contact-hero p{color:#fff}.contact-hero h2{margin:.35rem 0}.contact-hero img{filter:drop-shadow(0 8px 15px rgba(0,0,0,.25))}.contact-card{display:flex;align-items:flex-start;gap:1rem;min-height:170px;background:linear-gradient(145deg,#fff,#f4f9fc)}
.office-admin-tabs{display:grid;gap:1.2rem}.office-admin-section{padding:1.3rem;border-top:4px solid #0877c8}.office-admin-section>.section-heading{margin:0 0 1rem}.office-admin-section>.section-heading>div{display:flex;align-items:center;gap:.7rem}.section-icon{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:10px;background:#e5f2fa;color:#07518e;font-size:1.2rem}.count-chip{display:grid;place-items:center;min-width:2rem;height:2rem;padding:0 .5rem;border-radius:999px;background:#073f76;color:#fff;font-weight:800}.admin-create-box{margin-bottom:1rem;border:1px dashed #8fb9d4;border-radius:12px;background:#f5fafc}.admin-create-box>summary{cursor:pointer;padding:.9rem 1rem;color:#07518e;font-weight:800}.admin-create-box>.form-grid{padding:0 1rem 1rem}.office-admin-list{display:grid;gap:.75rem}.office-admin-card{display:flex;align-items:center;gap:1rem;padding:.85rem;border:1px solid #d9e7ef;border-radius:13px;background:#fff}.office-admin-card>img,.admin-avatar-fallback{width:64px;height:64px;flex:0 0 64px;border-radius:12px;object-fit:cover}.admin-avatar-fallback{display:grid;place-items:center;background:#e4f1f9;color:#07518e;font-size:1.3rem;font-weight:800}.office-admin-card small,.admin-gallery-cards small{display:block;color:#647789}.item-controls{display:flex;align-items:center;gap:.45rem;margin-inline-start:auto}.edit-details{position:relative}.edit-details>summary{list-style:none;cursor:pointer}.edit-details>summary::-webkit-details-marker{display:none}.edit-popover{position:fixed;z-index:80;inset:6vh max(3vw,calc((100vw - 980px)/2));max-height:88vh;overflow:auto;padding:1.4rem;border:1px solid #bdd4e3;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(3,35,64,.35)}.edit-details[open]::before{content:"";position:fixed;z-index:70;inset:0;background:rgba(2,27,49,.55)}.admin-gallery-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.admin-gallery-cards>article{display:grid;gap:.65rem;padding:.65rem;border:1px solid #d9e7ef;border-radius:13px;background:#fff}.admin-gallery-cards img{width:100%;height:145px;object-fit:cover;border-radius:9px}.document-icon{display:grid;place-items:center;width:56px;height:64px;flex:0 0 56px;border-radius:9px;background:#fce8e8;color:#a51f2e;font-size:.78rem;font-weight:900}.contact-admin .contact-delete{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0eaf0}
@media(max-width:900px){.office-members-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-gallery-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.office-admin-card{align-items:flex-start;flex-wrap:wrap}.item-controls{width:100%;margin-inline-start:0;justify-content:flex-end}}
@media(max-width:620px){.office-members-grid{grid-template-columns:1fr}.communique-card{grid-template-columns:1fr}.communique-date{width:78px}.contact-hero{padding:1.25rem}.contact-hero img{width:86px;height:86px}.admin-gallery-cards{grid-template-columns:1fr}.edit-popover{inset:2vh 2vw;max-height:96vh}.data-table th,.data-table td{white-space:nowrap}}
@media(min-width:1101px){.header{padding-inline:4%;flex-wrap:nowrap}.header nav{flex-wrap:nowrap;gap:.1rem;font-size:.82rem}.header nav>a,.header .nav-button,.office-menu summary{padding:.55rem .58rem}.brand{min-width:250px}.language{padding-inline-start:.65rem!important;margin-inline-start:.15rem}}

/* Rapport A4 et exports v17 */
.report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:0 0 1rem}.report-summary>span{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border:1px solid #d5e4ee;border-radius:11px;background:#fff;color:#476277}.report-summary strong{color:#073f76;font-size:1.25rem}.report-response{margin-top:.45rem;padding-top:.45rem;border-top:1px dashed #b8cbd9}.print-report-title{margin-inline-start:auto;text-align:end}
@media(max-width:650px){.report-summary{grid-template-columns:1fr}}
@media print{
 @page{size:A4 portrait;margin:32mm 10mm 22mm}
 html,body{width:210mm;background:#fff!important;color:#172b3b;font-family:Arial,sans-serif}
 .print-report-header{position:fixed;top:-25mm;left:0;right:0;display:grid!important;grid-template-columns:18mm 1fr auto;align-items:center;gap:4mm;height:18mm;margin:0;padding:0 0 3mm;border-bottom:1.5pt solid #07518e;background:#fff}
 .print-report-header img{width:16mm!important;height:16mm!important;max-width:16mm!important;object-fit:contain}
 .print-report-header .print-office{display:grid;line-height:1.35}.print-report-header .print-office strong{font-size:11pt;color:#073f76}.print-report-header .print-office span{font-size:7.5pt;color:#526d80}
 .print-report-title{display:grid;gap:1mm;text-align:end}.print-report-title b{font-size:10pt;color:#9d1b28}.print-report-title time{font-size:7.5pt;color:#5f7485}
 .print-page-footer{position:fixed;bottom:-16mm;left:0;right:0;display:flex!important;justify-content:space-between;align-items:center;padding-top:3mm;border-top:1px solid #b8cad6;color:#536b7c;font-size:7.5pt}.print-page-footer b::after{content:counter(page)}
 .report-summary{grid-template-columns:repeat(3,1fr);gap:3mm;margin:0 0 4mm}.report-summary>span{padding:2.5mm 3mm;border:.7pt solid #c5d6e1;border-radius:2mm;font-size:8pt}.report-summary strong{font-size:10pt}
 .report{margin:0!important}.report .table-wrap{overflow:visible}.report table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:7.2pt}.report thead{display:table-header-group}.report tbody{break-inside:auto}.report tr{break-inside:avoid;page-break-inside:avoid}.report th{padding:2mm 1.5mm;background:#07518e!important;color:#fff!important;border:.6pt solid #0a659d;font-size:6.9pt;line-height:1.25}.report td{padding:2mm 1.5mm;border:.6pt solid #bdcdd8;vertical-align:top;line-height:1.35;word-break:break-word}.report-main-row td{background:#f7fafc!important}.report-detail td{padding:2.3mm 3mm!important;background:#fff!important;color:#334e60}.report-response{border-color:#c7d5df}
 .report th:nth-child(1){width:10%}.report th:nth-child(2){width:19%}.report th:nth-child(3){width:23%}.report th:nth-child(4){width:23%}.report th:nth-child(5){width:15%}.report th:nth-child(6){width:10%}
}

/* Correction impression PDF v18 : flux A4 stable, sans page blanche */
@media print{
 @page{size:A4 portrait;margin:12mm 10mm 12mm}
 html,body{width:auto!important;min-height:0!important;margin:0!important;padding:0!important;background:#fff!important}
 main.container{display:block!important;width:auto!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important}
 .print-report-header{position:static!important;inset:auto!important;display:grid!important;grid-template-columns:16mm 1fr auto!important;align-items:center!important;gap:4mm!important;height:auto!important;margin:0 0 7mm!important;padding:0 0 3mm!important;border-bottom:1.5pt solid #07518e!important;break-after:avoid-page!important;page-break-after:avoid!important}
 .print-report-header img{width:14mm!important;height:14mm!important;max-width:14mm!important}
 .print-page-footer{position:static!important;inset:auto!important;display:flex!important;justify-content:space-between!important;align-items:center!important;margin:7mm 0 0!important;padding:3mm 0 0!important;border-top:1px solid #b8cad6!important;break-before:avoid-page!important;page-break-before:avoid!important}
 .report-summary{margin-bottom:5mm!important;break-after:avoid-page!important;page-break-after:avoid!important}
 .report{margin:0!important;padding:0!important;box-shadow:none!important;border:0!important}
 .report table{page-break-inside:auto!important}
 .report thead{display:table-header-group!important}
 .report tbody{display:table-row-group!important}
 .report-main-row,.report-detail{break-inside:avoid!important;page-break-inside:avoid!important}
}

/* Articles participatifs : popularité, J’aime et commentaires v22 */
.article-card{position:relative;overflow:hidden}.article-card.is-popular{border:1px solid #e6b85c;box-shadow:0 18px 42px rgba(136,82,7,.15)}.article-card.is-popular::after{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#d5a23c,#f1cf77,#c88e22)}.popular-ribbon{position:absolute;z-index:3;top:.75rem;inset-inline-end:.75rem;padding:.38rem .68rem;border-radius:999px;background:#fff3cf;color:#8a5700;font-size:.76rem;font-weight:900;box-shadow:0 5px 16px rgba(81,48,0,.18)}.article-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:auto}.article-counts{display:flex;gap:.5rem;align-items:center}.article-counts b{padding:.32rem .55rem;border-radius:999px;background:#edf5fb;color:#07518e;font-size:.78rem}.article-reactions{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1.5rem 0;padding:1rem;border:1px solid #d5e4ef;border-radius:14px;background:linear-gradient(135deg,#f7fbfe,#fff)}.reaction-counts{display:flex;gap:.65rem;flex-wrap:wrap}.reaction-counts strong{padding:.5rem .75rem;border-radius:999px;background:#eaf4fb;color:#064b82}.like-button{display:inline-flex;align-items:center;gap:.45rem;border:1px solid #e5a5ad;border-radius:999px;padding:.65rem 1rem;background:#fff;color:#a71f31;font-weight:900;cursor:pointer}.like-button:hover,.like-button.is-liked{background:#c92039;color:#fff;border-color:#c92039;box-shadow:0 8px 20px rgba(174,26,48,.22)}.like-button span{font-size:1.15rem}.article-comments{max-width:950px;margin:2rem auto}.article-comments .section-heading h2 span{display:inline-grid;place-items:center;min-width:2rem;height:2rem;margin-inline-start:.35rem;border-radius:999px;background:#073f76;color:#fff;font-size:.9rem}.comment-form{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:1rem;margin-bottom:1.1rem}.comment-form .full{grid-column:1/-1}.comment-list{display:grid;gap:.85rem}.comment-card{position:relative;padding:1rem 1.15rem;border:1px solid #d7e4ed;border-inline-start:4px solid #0877c8;border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(26,73,108,.07)}.comment-card[dir="rtl"]{border-inline-start-color:#b78a28}.comment-card header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.55rem;border-bottom:1px solid #e8eff4}.comment-card time{color:#687d8e;font-size:.8rem}.comment-card p{margin:.75rem 0;line-height:1.75;white-space:normal;overflow-wrap:anywhere}.comment-card form{text-align:end}.comment-delete{border:0;background:transparent;color:#a51f2e;font-weight:800;cursor:pointer;padding:.2rem}.comment-delete:hover{text-decoration:underline}@media(max-width:650px){.article-card-footer,.article-reactions,.comment-card header{align-items:flex-start;flex-direction:column}.comment-form{grid-template-columns:1fr}.popular-ribbon{position:static;display:inline-block;margin:.75rem .75rem 0;width:max-content}}

/* Commentaires employés et images v23 */
.article-comments{max-width:1020px}.comment-compose-heading,.employee-comments-heading{display:flex;align-items:center;gap:.8rem;margin-bottom:.85rem}.comment-compose-heading>span{display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:12px;background:#e7f2fa;color:#07518e;font-size:1.35rem}.comment-compose-heading h2,.employee-comments-heading h2{margin:0;color:#073f76}.comment-compose-heading p{margin:.18rem 0 0;color:#64798a;font-size:.88rem}.comment-form{grid-template-columns:minmax(180px,260px) minmax(260px,1fr);align-items:start;padding:1.15rem 1.25rem;margin-bottom:1.8rem}.comment-form label{font-size:.92rem}.comment-form select,.comment-form input[type=file],.comment-form textarea{margin-top:.35rem}.comment-form textarea{min-height:96px}.comment-image-field .hint{display:block;margin-top:.35rem}.comment-submit{width:max-content;min-width:220px}.employee-comments-heading{justify-content:space-between;margin-top:.4rem;padding:.8rem 1rem;border-radius:12px;background:linear-gradient(90deg,#eaf4fb,#f8fbfd)}.employee-comments-heading>div{display:flex;align-items:center;gap:.65rem}.employee-comments-heading b{display:grid;place-items:center;min-width:2.25rem;height:2.25rem;padding:0 .55rem;border-radius:999px;background:#073f76;color:#fff}.comment-card{padding:1rem 1.15rem}.comment-author{display:flex;align-items:center;gap:.65rem}.comment-author>span{display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:50%;background:#dcecf8;color:#07518e;font-weight:900}.comment-image-button{display:block;width:min(100%,520px);margin:.8rem 0 0;padding:0;border:0;border-radius:12px;overflow:hidden;background:#eaf2f7;cursor:zoom-in}.comment-image-button img{display:block;width:100%;max-height:360px;object-fit:cover}.comment-image-button:hover img{transform:scale(1.015)}.comment-image-button img{transition:transform .2s ease}.comment-card form{margin-top:.65rem}@media(max-width:700px){.comment-form{grid-template-columns:1fr;padding:1rem}.comment-form .full{grid-column:auto}.comment-submit{width:100%;min-width:0}.comment-compose-heading{align-items:flex-start}.employee-comments-heading{align-items:center}.comment-image-button{width:100%}}

/* Cartes d’articles compactes v24 */
.publication-grid .article-card-cover{height:142px}
.publication-grid .article-card-body{padding:1rem 1.05rem}
.publication-grid .article-card-body .eyebrow{font-size:.75rem;letter-spacing:.065em}
.publication-grid .article-card-body h3{margin:.55rem 0 .4rem;font-size:1.02rem;line-height:1.4}
.publication-grid .article-card-body>p{display:-webkit-box;margin:0 0 .75rem;font-size:.9rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.publication-grid .member-author{margin-top:.3rem;font-size:.73rem}
.publication-grid .article-card-footer{gap:.5rem}
.publication-grid .article-card-footer .text-link{font-size:.9rem}
.publication-grid .article-counts{gap:.35rem}
.publication-grid .article-counts b{padding:.25rem .45rem;font-size:.72rem}
.publication-grid .article-card .share-box{margin-top:.7rem;padding-top:.65rem}
.publication-grid .article-card .share-label{margin-bottom:.4rem;font-size:.7rem}
.publication-grid .article-card .share-actions{gap:.35rem}
.publication-grid .article-card .share-button{min-height:30px;padding:.28rem .48rem;font-size:.7rem}
.publication-grid .article-card .share-button b{width:1.1rem;height:1.1rem;font-size:.67rem}
.publication-grid .article-card .share-feedback{min-height:.6rem;margin-top:.2rem;font-size:.72rem}
.publication-grid .popular-ribbon{top:.55rem;inset-inline-end:.55rem;padding:.3rem .55rem;font-size:.7rem}
@media(max-width:720px){
 .publication-grid{justify-items:center;gap:1rem}
 .publication-grid .article-card{width:min(100%,390px)}
 .publication-grid .article-card-cover{height:128px}
 .publication-grid .article-card-body{padding:.85rem .9rem .9rem}
 .publication-grid .article-card-body h3{margin:.45rem 0 .3rem;font-size:.98rem}
 .publication-grid .article-card-body>p{-webkit-line-clamp:2;margin-bottom:.6rem}
 .publication-grid .article-card-footer{align-items:center;flex-direction:row}
 .publication-grid .article-card .share-actions{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.15rem}
 .publication-grid .article-card .share-button{flex:0 0 auto}
 .publication-grid .article-card .share-feedback:empty{display:none}
}

/* Identité du employé dans le menu v25 */
.nav-account{display:inline-flex;align-items:center;gap:.48rem;min-width:0;padding:.35rem .58rem!important;border:1px solid #d7e5ef;border-radius:999px!important;background:linear-gradient(135deg,#f7fbfe,#eaf4fb);box-shadow:0 4px 12px rgba(13,65,108,.07)}
.nav-account:hover{border-color:#9fc3dc;background:#e4f2fb!important;text-decoration:none}
.nav-account-avatar{width:1.85rem;height:1.85rem;flex:0 0 1.85rem;border-width:1px;font-size:.72rem;box-shadow:0 0 0 1px #aac8dd}
.nav-account-copy{display:grid;min-width:0;line-height:1.05;text-align:start}
.nav-account-copy small{max-width:8.5rem;overflow:hidden;color:#61788b;font-size:.65rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.nav-account-copy strong{max-width:8.5rem;overflow:hidden;color:#073f76;font-size:.78rem;font-weight:900;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
@media(max-width:720px){
 .header nav .nav-account{width:100%;justify-content:flex-start;padding:.55rem .65rem!important;border-radius:10px!important}
 .nav-account-avatar{width:2.1rem!important;height:2.1rem!important;flex-basis:2.1rem!important}
 .nav-account-copy small,.nav-account-copy strong{max-width:none}
}

/* Badge utilisateur lisible et compact v26 */
.nav-account{gap:.42rem;padding:.3rem .52rem!important;max-width:none}
.nav-account-icon{position:relative;display:grid;place-items:end center;width:1.65rem;height:1.65rem;flex:0 0 1.65rem;overflow:hidden;border:1px solid #9fc2d9;border-radius:50%;background:#e2f1fa;color:#07518e;font-size:.72rem;line-height:1}
.nav-account-icon::before{content:"";position:absolute;top:.28rem;width:.48rem;height:.48rem;border-radius:50%;background:#07518e}
.nav-account-icon::after{content:"";position:absolute;bottom:.2rem;width:.92rem;height:.52rem;border-radius:.6rem .6rem .2rem .2rem;background:#07518e}
.nav-account-copy{gap:.08rem;line-height:1;overflow:visible}
.nav-account-copy small{max-width:none;color:#647b8e;font-size:.58rem;letter-spacing:.035em;line-height:1.05}
.nav-account-copy strong{max-width:10rem;overflow:visible;color:#073f76;font-size:.69rem;line-height:1.08;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1100px) and (min-width:721px){.nav-account-copy strong{max-width:7.5rem;font-size:.65rem}}
@media(max-width:720px){.header nav .nav-account{padding:.48rem .6rem!important}.nav-account-icon{width:1.75rem;height:1.75rem;flex-basis:1.75rem}.nav-account-copy strong{max-width:none;font-size:.72rem;white-space:normal}}


/* Badges de rôles automatiques v28 */
.space-role-line{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin:0 0 1rem}.space-role-line p{margin:0}.permission-count{color:#607789;font-size:.78rem;font-weight:700}.role-chip{gap:.32rem;border:1px solid transparent;box-shadow:0 3px 10px rgba(8,55,92,.06)}.role-employee{background:#e8f7ee;color:#146b3b;border-color:#bde4ca}.role-responsible{background:#e7f2fb;color:#07518e;border-color:#bed9eb}.role-administrator{background:#eeeafd;color:#57389a;border-color:#d4c8f2}.role-super_admin{background:#fff3cf;color:#855500;border-color:#ecd184;box-shadow:0 5px 14px rgba(133,85,0,.12)}.owner-lock{margin-top:.8rem}.admin-list-panel .role-chip{justify-content:center}
@media(max-width:560px){.space-role-line{align-items:flex-start;flex-direction:column}.role-chip{font-size:.74rem}}
.nav-account-icon{place-items:center;background:#f7fbfe;font-size:.86rem}.nav-account-icon::before,.nav-account-icon::after{display:none}.nav-account-copy small{max-width:11rem;font-size:.55rem}.nav-account-copy strong{font-size:.67rem}

/* Liste des employés : toutes les données visibles, sans défilement horizontal v32 */
.members-table{display:block;width:100%;min-width:0;border-collapse:separate}
.members-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.members-table tbody{display:grid;gap:.9rem;padding:1rem;background:#f3f8fc}
.members-table tbody tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 .9rem;padding:.65rem 1rem;border:1px solid #d1e1ed;border-radius:13px;background:#fff!important;box-shadow:0 5px 17px rgba(7,61,118,.05)}
.members-table tbody tr:hover{background:#fbfdff!important;box-shadow:0 9px 24px rgba(7,61,118,.1)}
.members-table td{display:flex;min-width:0;min-height:3.8rem;align-items:flex-start;flex-direction:column;justify-content:center;gap:.2rem;padding:.5rem .35rem;border-bottom:1px solid #e8eff5;white-space:normal!important;overflow-wrap:anywhere}
.members-table td::before{content:attr(data-label);color:#5e7486;font-size:.69rem;font-weight:800;line-height:1.2;text-transform:uppercase;letter-spacing:.035em}
.members-table td bdi{max-width:100%;overflow-wrap:anywhere}
.members-table td:last-child{grid-column:1/-1;min-height:2.9rem;border-bottom:0}
.members-table td:last-child .manage-actions{justify-content:flex-start}
.members-table .role-chip,.members-table .verification-chip{white-space:normal;line-height:1.35}
.members-table .profile-avatar{width:2rem;height:2rem;object-fit:cover}
.members-table .button{min-height:36px;padding:.4rem .7rem;font-size:.82rem}
@media(max-width:900px){.members-table tbody tr{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.members-table tbody{padding:.55rem;gap:.65rem}.members-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 .5rem;padding:.5rem .7rem}.members-table td{min-height:3.6rem}.members-table td[data-label]::before{font-size:.65rem}}
@media(max-width:370px){.members-table tbody tr{grid-template-columns:1fr}.members-table td:last-child{grid-column:auto}}

/* Administration et recherche des employés v33 */
.admin-subnav{display:flex;gap:.38rem;align-items:center;flex-wrap:wrap;padding:.55rem;margin-bottom:1.6rem;border:1px solid #cfdfea;border-radius:14px;background:#fff;box-shadow:0 9px 28px rgba(9,57,98,.07)}
.admin-subnav a{display:inline-flex;align-items:center;min-height:38px;padding:.48rem .75rem;border:1px solid transparent;border-radius:9px;color:#214767;font-size:.83rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s}
.admin-subnav a:hover{background:#edf6fc;border-color:#c7dfef;color:#07518e}
.admin-subnav a.selected{border-color:#b9d9ed;background:#e8f4fb;color:#073f76;box-shadow:inset 0 -2px 0 var(--red)}
.members-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:0 0 1.15rem;padding:1rem 1.2rem;border:1px solid #d1e3ee;border-radius:14px;background:linear-gradient(110deg,#fff,#f5faff);box-shadow:0 8px 23px rgba(7,61,118,.055)}
.members-search{flex:1 1 440px;max-width:750px}.members-search>label{display:block;margin-bottom:.25rem;color:#173f61;font-size:.85rem;font-weight:800}.members-search-controls{display:flex;align-items:center;gap:.55rem}.members-search-controls input{flex:1 1 220px;min-width:120px;min-height:44px;margin:0;padding-inline-start:2.5rem;border-radius:9px}.members-search-icon{position:relative;z-index:1;width:0;margin-inline-start:.8rem;margin-inline-end:-.8rem;color:#34709b;font-size:1.5rem;line-height:1}.members-search-controls .button{flex:0 0 auto;min-height:44px;box-shadow:none}.members-export{min-height:44px;white-space:normal;font-size:.88rem}
.members-results{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap;margin:0 0 .9rem;padding:.55rem .8rem;border:1px solid #c8dfea;border-radius:999px;background:#eaf5fb;color:#255372;font-size:.85rem}.members-results strong{color:#073f76}.members-results span{overflow-wrap:anywhere}
.member-stats>div{min-height:112px;padding:1rem 1.25rem;border:1px solid #c9dfed;border-top:4px solid #0877c8;border-radius:12px;background:linear-gradient(145deg,#fff,#f7fbff)}.member-stats span{font-size:.9rem;font-weight:650}.member-stats strong{font-size:2rem;line-height:1.25}
.members-table tbody{gap:1rem;padding:1.15rem;background:linear-gradient(180deg,#f4f9fd,#edf5fb)}.members-table tbody tr{border-color:#c9ddea;border-radius:16px;box-shadow:0 8px 25px rgba(7,61,118,.07)}.members-table td{padding:.62rem .5rem}.members-table td::before{color:#4b6d87}.members-table td[data-label]:last-child{padding-top:.75rem}.members-table .members-empty-row{display:block;text-align:center}.members-table .members-empty-row td{display:block;text-align:center;padding:1.5rem;border:0}.members-table .members-empty-row td::before{display:none}
@media(max-width:720px){.admin-subnav{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.admin-subnav a{flex:0 0 auto;white-space:nowrap}.members-toolbar{padding:.85rem}.members-export{width:100%}.members-search-controls{flex-wrap:wrap}.members-search-controls input{flex:1 1 calc(100% - 2rem)}.members-search-controls .button{flex:1 1 auto}.member-stats>div{min-height:85px}.members-table tbody{padding:.65rem}}
@media(max-width:420px){.members-search-icon{display:none}.members-search-controls input{padding-inline-start:.85rem}.members-search-controls .button{font-size:.86rem}}

/* Tableau de bord des réclamations v34 */
.complaints-filter{display:flex;align-items:end;flex-wrap:wrap;gap:.75rem;margin-bottom:1.1rem;padding:1.1rem 1.25rem;border:1px solid #cddfea;border-radius:15px;background:linear-gradient(115deg,#fff,#f4faff);box-shadow:0 10px 28px rgba(7,61,118,.07)}
.complaints-filter label{flex:1 1 230px;max-width:340px;color:#194966;font-size:.84rem;font-weight:800}.complaints-filter input,.complaints-filter select{min-height:44px;margin-top:.35rem;border-color:#bfd5e4;border-radius:9px;background:#fff}.complaints-filter .button{min-height:44px;margin-bottom:0;padding:.55rem 1rem}.complaints-filter .button.secondary{border-color:#bed5e5}
.complaints-list-panel{padding:1rem;border:1px solid #cddfea;border-radius:16px;box-shadow:0 13px 36px rgba(7,61,118,.08)}.complaints-list-panel .admin-table-wrap{border:1px solid #d7e7f1;border-radius:12px}.complaints-table thead th{padding:.9rem .75rem;line-height:1.35}.complaints-table td{padding:.8rem .75rem;line-height:1.5}.complaints-table tbody tr:nth-child(even){background:#f5faff}.complaints-table tbody tr:hover{background:#e8f4fc}.complaints-table .table-primary a{color:#0a477d;font-weight:800}.complaints-table .badge{border-radius:999px;padding:.3rem .65rem;font-weight:750}.complaints-results{margin:.1rem 0 .85rem;padding:.55rem .8rem;border-inline-start:4px solid #0877c8;border-radius:8px;background:#eaf5fc;color:#275a7c;font-size:.88rem;overflow-wrap:anywhere}.complaints-results strong{color:#073f76}
.admin-toolbar+.stats>div{min-height:112px;border:1px solid #c9dfed;border-top:4px solid #0877c8;border-radius:12px;background:linear-gradient(145deg,#fff,#f7fbff);box-shadow:0 8px 24px rgba(7,61,118,.045)}.admin-toolbar+.stats strong{color:#073f76}
@media(max-width:720px){.complaints-filter{padding:.85rem}.complaints-filter label{max-width:none}.complaints-filter .button{flex:1 1 auto}.complaints-list-panel{padding:.6rem}.complaints-table{min-width:880px}}

/* Missions du bureau syndical v36 */
.office-mission-layout{display:grid;gap:1.5rem}.office-lead-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:start}.office-lead-section{min-width:0;padding:1rem;border:1px solid #c9ddea;border-top:4px solid #0b6ead;border-radius:16px;background:linear-gradient(160deg,#eaf5fb,#fff 40%);box-shadow:0 14px 35px rgba(7,61,118,.1)}.office-lead-section .office-members-grid{grid-template-columns:1fr}.office-lead-section .office-member-card{box-shadow:0 8px 22px rgba(7,61,118,.08)}.office-lead-section .office-member-card::before{height:58px}.office-lead-section .office-member-portrait{margin-top:-45px}.office-lead-section .office-member-photo{width:90px;height:90px;margin:0 auto;border-width:4px}.office-lead-section .office-member-copy{padding:.8rem 1rem 1rem}
.office-support-sections{display:grid;gap:1rem}.office-mission-section{padding:1.2rem;border:1px solid #d5e5ef;border-inline-start:5px solid #d3a34d;border-radius:15px;background:#fff;box-shadow:0 9px 26px rgba(7,61,118,.055)}.office-mission-heading{display:flex;align-items:center;gap:.7rem;min-width:0;margin-bottom:1rem}.office-mission-heading h2{flex:1;min-width:0;margin:0;color:#073f76;font-size:1.14rem;line-height:1.4;overflow-wrap:anywhere}.office-mission-mark{display:grid;place-items:center;width:2.1rem;height:2.1rem;flex:0 0 2.1rem;border-radius:9px;background:#e5f2fa;color:#0877c8}.office-mission-section .office-mission-mark{background:#fff4df;color:#9b6a16}.office-mission-count{display:grid;place-items:center;min-width:1.9rem;height:1.9rem;padding:0 .45rem;border-radius:999px;background:#e9f3fa;color:#07518e;font-size:.78rem;font-weight:800}.office-mission-section .office-mission-count{background:#fff4df;color:#805510}.office-mission-empty{margin:0;padding:.65rem .85rem;border:1px dashed #d9e5ed;border-radius:9px;background:#f7fafc;color:#687f90;font-size:.86rem}.office-mission-section .office-member-card{display:flex;align-items:center;text-align:start;min-height:116px;background:linear-gradient(110deg,#f7fbfd,#fff)}.office-mission-section .office-member-card::before{display:none}.office-mission-section .office-member-portrait{flex:0 0 auto;margin:0 0 0 .9rem}.office-mission-section .office-member-photo{width:72px;height:72px;margin:0;border:3px solid #e5f1f8;box-shadow:none}.office-mission-section .office-member-copy{padding:.8rem .9rem}.office-mission-section .office-member-copy h3{margin:.1rem 0;color:#073f76;font-size:1rem}.office-mission-section .office-member-kicker{font-size:.68rem}.office-mission-section .office-member-copy p{font-size:.86rem}.office-lead-section .office-member-copy h3{margin:.1rem 0;color:#073f76;font-size:1.08rem}
@media(max-width:1000px){.office-lead-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-mission-section .office-members-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.office-lead-grid,.office-mission-section .office-members-grid{grid-template-columns:1fr}.office-mission-section{padding:.9rem}.office-mission-heading h2{font-size:1rem}.office-mission-section .office-member-photo{width:62px;height:62px}.office-mission-section .office-member-portrait{margin-inline-start:.6rem}}
