@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#203e36;--muted:#78827b;--paper:#f7f8f4;--line:#e3e7df;--orange:#d5794e;--green:#254c40}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:14px 'DM Sans',sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #d5794e;outline-offset:3px}a{color:inherit;text-decoration:none}.sidebar{width:244px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:34px 24px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font:800 24px Manrope,sans-serif;letter-spacing:1px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fff;width:42px;height:45px;border-radius:12px;font-size:40px;line-height:1;letter-spacing:-6px;padding-right:6px}.brand-mark span{color:#f1ae76;font-size:26px;transform:translateY(-8px)}.brand small{display:block;font:600 7px 'DM Sans',sans-serif;letter-spacing:1.5px;margin-top:5px}.space-label{font-size:9px;color:#929b94;letter-spacing:1.5px;margin:57px 12px 15px}nav .nav{width:100%;border:0;background:transparent;text-align:left;padding:14px 12px;margin:3px 0;border-radius:9px;color:#6c7971;font-size:12px;font-weight:600}.nav span{font-size:19px;vertical-align:middle;display:inline-block;width:28px}.nav.active{background:#eaf0e9;color:var(--green)}.side-note{margin-top:auto;padding:24px 15px;background:#f7f5ee;border-radius:14px}.tiny-star{font-size:28px;color:var(--orange)}.side-note h3{font:700 17px/1.5 Manrope;margin:12px 0}.side-note p{font-size:12px;color:var(--muted);line-height:1.7}.notion-link{font-size:11px;margin:24px 10px 0}.sidebar-footer{color:#9da59f;font-size:9px;margin:16px 10px 0}.shell{margin-left:244px}.topbar{height:80px;border-bottom:1px solid var(--line);padding:0 46px;display:flex;align-items:center;justify-content:space-between;background:#ffffff8a}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb span{margin:0 13px;color:#b9bfb8}.breadcrumb strong{color:var(--ink)}.top-right{display:flex;align-items:center;gap:20px}.source{font-size:11px;color:#6a786e;display:flex;align-items:center;gap:7px}.source i{width:6px;height:6px;border-radius:50%;background:#739477}.prototype{background:#fff;border:1px solid var(--line);border-radius:6px;font-size:10px;padding:7px 10px;color:#788278}main{max-width:1470px;margin:auto;padding:39px 46px 0}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:9px;letter-spacing:1.7px;font-weight:700;color:#889387;margin:0 0 10px}h1{font:800 clamp(24px,2.5vw,38px)/1.3 Manrope;margin:0;letter-spacing:-1.4px}h1 span{color:var(--orange)}.page-heading p:not(.eyebrow){font-size:12px;color:var(--muted);margin:12px 0 0}.year-pill{font:600 14px Manrope;border:1px solid #d8ded3;padding:13px 17px;border-radius:9px;white-space:nowrap}.year-pill span{margin-left:30px;color:#a7ad9d}.hero{background:#254b40;border-radius:17px;overflow:hidden;position:relative;min-height:265px;display:flex;justify-content:space-between;color:#fff}.hero-copy{position:relative;z-index:1;padding:31px 35px}.hero-tag{font-size:8px;letter-spacing:2px;color:#c9d9c1}.hero h2{font:600 29px/1.3 Manrope;letter-spacing:-.8px;margin:16px 0 12px}.hero p{font-size:11px;line-height:1.8;color:#c7d4c9}.hero button{border:0;background:#e9efdb;color:#294d3c;padding:11px 15px;border-radius:6px;font-size:10px;font-weight:700;margin-top:8px}.hero button span{margin-left:23px}.hero-art{width:330px;position:relative;overflow:hidden;flex-shrink:0;background:#2d5445}.sun{width:103px;height:103px;border-radius:50%;background:#e7a56f;position:absolute;top:25px;right:90px}.arch{position:absolute;border-radius:120px 120px 0 0;bottom:-80px;width:180px;height:250px;transform:rotate(-27deg)}.arch1{background:#96a683;left:-15px;bottom:-110px}.arch2{background:#d8d6ae;left:92px;bottom:-74px;height:240px}.arch3{background:#cb7854;left:214px;bottom:-68px}.art-label{position:absolute;top:44px;left:27px;font-size:8px;letter-spacing:2px}.art-label b{font:500 55px Manrope;letter-spacing:-3px}.art-star{position:absolute;right:22px;top:22px;font-size:46px;color:#d7ddbc}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0 37px}.stat{padding:17px 20px;background:#fff;border:1px solid var(--line);border-radius:11px;display:flex;gap:16px;align-items:center}.stat-icon{background:#f0f2e9;border-radius:10px;height:38px;width:38px;display:grid;place-items:center;font-size:20px}.stat strong{font:800 25px Manrope}.stat p{font-size:10px;color:var(--muted);margin:3px 0}.stat em{margin-left:auto;font-size:9px;font-style:normal;color:#8d978b}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.section-heading h2{font:700 22px Manrope;letter-spacing:-.6px;margin:0}.section-heading .eyebrow{font-size:8px;margin-bottom:7px}.view-switch{display:flex;padding:4px;background:#eceedf;border-radius:8px;gap:3px}.view-switch button{background:none;border:0;color:#7d877a;font-size:11px;padding:7px 11px;border-radius:5px}.view-switch button.active{background:white;color:var(--ink);box-shadow:0 1px 4px #203e3610}.controls{display:flex;gap:12px;align-items:center}.search{display:flex;gap:10px;align-items:center;background:white;border:1px solid var(--line);border-radius:8px;padding:9px 13px;flex:1}.search span{font-size:21px;line-height:1;color:#8b9488}.search input{border:0;outline:0;width:100%;min-width:0;background:none;font-size:11px;color:var(--ink)}select{background:white;color:#60705f;border:1px solid var(--line);border-radius:8px;padding:12px;font-size:10px}.toggle{font-size:10px;white-space:nowrap;display:flex;gap:6px;align-items:center;color:#7e887b}.toggle input{accent-color:var(--green)}.months{display:flex;gap:5px;border-bottom:1px solid var(--line);padding:18px 0 12px;overflow:auto;scrollbar-width:thin}.months button{border:0;background:none;color:#87907e;font-size:10px;padding:8px 11px;border-radius:6px;white-space:nowrap}.months button.active{background:#254b40;color:white}.result-label{font-size:10px;color:#8a9487;margin:16px 0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.card{display:flex;flex-direction:column;position:relative;min-height:222px;padding:19px;text-align:left;border:1px solid var(--line);background:white;border-radius:12px;color:var(--ink);transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #203e360a}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.badge{display:inline-block;border-radius:5px;background:#eaf0e4;color:#6a8056;font-size:8px;font-weight:700;letter-spacing:.3px;padding:5px 7px}.badge.animation{background:#f7ece1;color:#b67b47}.badge.ouvertures{background:#eeeaf5;color:#8c77a8}.badge.repère{background:#eef0ef;color:#7e8882}.card-arrow{font-size:17px;color:#abb3a7}.card h3{font:700 16px/1.5 Manrope;letter-spacing:-.4px;margin:0 0 8px}.card .date{font-size:11px;color:#73806b;margin:0}.card .desc{font-size:10px;line-height:1.6;color:#91988b;margin:12px 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-bottom{border-top:1px solid #f0f1ec;padding-top:12px;font-size:9px;color:#99a18f;margin-top:auto;display:flex;justify-content:space-between}.uncertain{color:#b18046}.month-title{font:700 14px Manrope;margin:25px 0 10px;display:flex;align-items:center;gap:10px}.month-title span{font:400 10px 'DM Sans';color:var(--muted)}.agenda-row{display:flex;align-items:center;gap:17px;padding:17px;background:white;border:1px solid var(--line);border-radius:10px;margin:8px 0;cursor:pointer;text-align:left;color:var(--ink);width:100%}.date-block{min-width:43px;font:800 23px Manrope;text-align:center;color:#516a50}.date-block small{display:block;font:500 8px 'DM Sans';letter-spacing:1px;text-transform:uppercase}.row-main{flex:1}.row-main h3{font:700 13px Manrope;margin:0 0 5px}.row-main p{font-size:10px;color:var(--muted);margin:0}.annual{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.month-box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;min-height:175px}.month-box h3{margin:0 0 18px;font:700 14px Manrope;display:flex;justify-content:space-between}.month-box h3 span{color:#b5bda8;font-size:11px}.mini-event{width:100%;text-align:left;background:#f3f5ec;border:0;border-left:3px solid #a1b889;border-radius:4px;padding:9px;font-size:10px;color:var(--ink);margin:4px 0;line-height:1.5}.mini-event.animation{background:#fbf0e5;border-color:#e0a16b}.mini-event.ouvertures{background:#f3eff8;border-color:#ad9bc5}.mini-event.repère{background:#f1f2f1;border-color:#b8c1bc}.mini-event small{display:block;font-size:8px;color:#919784}.month-empty{font-size:10px;color:#a1a899}.empty{text-align:center;padding:50px;color:var(--muted);border:1px dashed var(--line);border-radius:12px}.empty button{display:block;margin:18px auto 0;border:0;background:var(--green);color:white;padding:10px 16px;border-radius:6px}footer{display:flex;justify-content:space-between;font-size:9px;color:#9ca592;padding:32px 0 22px;margin-top:24px;border-top:1px solid var(--line)}footer b{color:#c1845c;margin:0 5px}dialog{width:min(560px,calc(100% - 28px));max-height:85dvh;border:1px solid var(--line);padding:36px;border-radius:20px;color:var(--ink);box-shadow:0 25px 90px #10271c33}dialog::backdrop{background:#172e2966;backdrop-filter:blur(3px)}.close{position:absolute;right:16px;top:12px;border:0;background:#f1f3eb;color:var(--ink);border-radius:50%;height:31px;width:31px;font-size:22px}dialog h2{font:800 27px/1.3 Manrope;letter-spacing:-.8px;margin:18px 0}dialog .date{color:#73846c;font-size:13px}.detail-note{background:#f7f7ee;padding:13px;border-radius:7px;color:#8b825a;font-size:11px;line-height:1.7}.notes{font-size:13px;line-height:1.9;white-space:pre-line;color:#61715f;margin:24px 0}.detail-label{font-size:9px;letter-spacing:1.5px;font-weight:700;margin-top:25px}.source-button{display:inline-block;background:var(--green);color:white;padding:12px 17px;border-radius:8px;font-size:11px}.original{font-size:10px;color:#9aa38e;margin-top:18px}.mobile-nav{display:none}@media(min-width:1500px){.hero-art{width:420px}.hero{min-height:290px}.hero-copy{padding:38px 42px}.hero h2{font-size:34px}}@media(max-width:1150px){.sidebar{width:210px;padding:30px 18px}.shell{margin-left:210px}.topbar{padding:0 28px}main{padding:30px 28px 0}.hero-art{width:240px}.hero h2{font-size:25px}.hero-copy{padding:26px}.controls{flex-wrap:wrap}.toggle{margin-left:auto}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.annual{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:15px;gap:10px}.stat em{display:none}.stat-icon{width:32px;height:32px}}
@media(max-width:760px){.sidebar{display:none}.shell{margin:0}.topbar{height:61px;padding:0 20px}.breadcrumb{font-size:11px}.breadcrumb:before{content:'ACISL';color:var(--green);font-weight:800;letter-spacing:1px;margin-right:15px}.top-right{gap:8px}.source{display:none}main{padding:27px 20px 80px}.page-heading{margin-bottom:22px}.eyebrow{font-size:7px;letter-spacing:1.3px}h1{font-size:28px;max-width:280px;letter-spacing:-1px}.page-heading p:not(.eyebrow){font-size:11px;line-height:1.7;max-width:260px}.year-pill{display:none}.hero{min-height:246px;border-radius:14px}.hero-copy{padding:25px 22px;width:100%}.hero h2{font-size:24px;position:relative;z-index:1}.hero p{font-size:10px;max-width:225px}.hero-art{position:absolute;right:-70px;bottom:0;width:180px;height:100%;opacity:.24}.hero-tag{font-size:7px}.hero button{margin-top:10px}.stats{gap:8px;margin:14px 0 30px}.stat{display:block;padding:14px 11px}.stat-icon{display:none}.stat strong{font-size:23px}.stat p{font-size:9px;line-height:1.5}.section-heading h2{font-size:20px}.view-switch{display:none}.controls{gap:10px}.search{flex-basis:100%;padding:12px}.search input{font-size:12px}select{flex:1;font-size:11px;max-width:210px}.toggle{font-size:9px;gap:2px}.months{margin-right:-20px;padding-right:20px;padding-top:13px}.months button{font-size:11px;padding:9px 12px}.cards{grid-template-columns:1fr;gap:12px}.card{min-height:190px;padding:18px}.card-top{margin-bottom:13px}.card h3{font-size:17px}.card .desc{font-size:11px;margin:10px 0 14px}.card .date{font-size:12px}.badge{font-size:9px}.card-bottom{font-size:10px}.annual{grid-template-columns:1fr}.month-box{min-height:120px}.mini-event{font-size:12px}.mini-event small{font-size:10px}footer{display:block;font-size:9px;line-height:2.2}footer span{display:block}.mobile-nav{display:flex;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:5;padding:9px 10px calc(9px + env(safe-area-inset-bottom))}.mobile-nav button{background:transparent;border:0;color:#99a08f;font-size:9px;min-width:80px;padding:3px 15px;border-radius:8px}.mobile-nav button span{display:block;font-size:21px;margin-bottom:3px}.mobile-nav button.active{color:var(--green);background:#eef2e7}.row-main h3{font-size:12px}.agenda-row{gap:11px;padding:14px 12px}.agenda-row>.badge{max-width:72px;font-size:7px}.date-block{font-size:20px;min-width:35px}dialog{padding:27px 23px}dialog h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Read the complete action without leaving the app. */
#detail{width:min(740px,calc(100% - 28px));padding:40px;max-height:90dvh}#detail::backdrop{background:#172e2977}.article-content{font-size:14px;line-height:1.85;color:#536653;margin-top:28px;overflow-wrap:anywhere}.article-content p{margin:0 0 18px}.article-content h3{font:700 18px Manrope;color:var(--ink);margin:27px 0 12px}.article-content ul{padding-left:22px;margin:8px 0 16px}.article-content li{padding-left:4px;margin:5px 0}.article-content a{color:#377356;text-decoration:underline;text-underline-offset:3px}.article-content figure,#detail figure{margin:23px 0}.article-content img,#detail figure img{display:block;width:100%;height:auto;border-radius:12px}.article-content figcaption{font-size:11px;color:#8a9481;text-align:center;margin-top:8px}.article-content blockquote{margin:20px 0;border-left:3px solid #9bb28a;background:#f2f5eb;padding:15px 20px;border-radius:0 8px 8px 0}.article-content summary{cursor:pointer;font-weight:700}.article-content details{padding:15px;background:#f5f6f1;border-radius:9px;margin-bottom:15px}.article-content pre{overflow:auto;background:#f3f5ed;padding:14px;border-radius:8px}.article-content video,.article-content audio{max-width:100%}.table-scroll{overflow:auto}.article-content table{border-collapse:collapse;width:100%;margin:18px 0}.article-content td{border:1px solid var(--line);padding:9px 12px}.read-checkbox{display:flex;gap:12px;margin:10px 0}.article-content hr{border:0;border-top:1px solid var(--line);margin:24px 0}.content-unavailable{color:#947c4f;font-size:12px}.numbered-item{margin:9px 0;padding-left:18px;border-left:2px solid var(--line)}.detail-end{border-top:1px solid var(--line);padding-top:19px;margin-top:30px;font-size:10px;color:#929c87}@media(max-width:760px){#detail{padding:28px 22px;width:calc(100% - 16px);max-height:94dvh;border-radius:16px}.article-content{font-size:14px;line-height:1.8}#detail h2{padding-right:15px}}
/* Ownership and calendar context are distinct from the activity's nature. */
.type-intro h3{font:700 14px Manrope;margin:0 0 5px}.type-intro p{font-size:11px;color:var(--muted);margin:0 0 15px}.type-filters{display:flex;flex-wrap:wrap;gap:8px}.type-filter{border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-size:11px;background:#fff;color:#6c786b;display:flex;align-items:center;gap:7px}.type-filter b{font-size:10px;background:#ffffff90;border-radius:4px;padding:2px 5px;font-weight:500}.type-filter.selected{outline:2px solid currentColor;outline-offset:1px;font-weight:700}.type-badge{display:inline-flex;align-items:center;gap:5px;border-radius:6px;padding:6px 9px;font-size:10px;font-weight:700;line-height:1.3;white-space:nowrap}.type-acisl{color:#286047;background:#e4efe5}.type-mairie{color:#375f9c;background:#e8effb}.type-joint{color:#7851a0;background:#f0e7f7}.type-calendar{color:#94641c;background:#faf0d7}.type-unknown{color:#6d756c;background:#eef0e9}.type-description{font-size:11px;line-height:1.7;color:#7e8978;margin:13px 0 20px}.event-nature{font-size:10px;color:#8b9582;margin:0 0 10px}.card.event-acisl,.agenda-row.event-acisl{border-left:3px solid #5c9c73}.card.event-mairie,.agenda-row.event-mairie{border-left:3px solid #759bd0}.card.event-joint,.agenda-row.event-joint{border-left:3px solid #aa81ca}.card.event-calendar,.agenda-row.event-calendar{border-left:3px solid #d5ad62;background:#fffdf7}.calendar-context{margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.context-heading{display:flex;align-items:center;gap:13px;margin-bottom:18px}.context-heading>span{font-size:25px;color:#b18c49}.context-heading h3{margin:0;font:700 17px Manrope}.context-heading p{font-size:11px;color:#8a907d;margin:6px 0}.calendar-context .card{min-height:180px}.calendar-context .desc{display:none}.detail-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mini-event.event-acisl{background:#edf5ec;border-color:#5c9c73}.mini-event.event-mairie{background:#edf2fc;border-color:#759bd0}.mini-event.event-joint{background:#f5eff9;border-color:#aa81ca}.mini-event.event-calendar{background:#fcf6e7;border-color:#d5ad62}.mini-event.event-unknown{background:#f3f5ef;border-color:#b9c2b0}.mini-event .type-badge{font-size:8px;padding:3px 5px;margin-bottom:5px}.mini-title{display:block}.agenda-row .type-badge{font-size:9px}.toggle:has(input:disabled){opacity:.55}@media(max-width:760px){.type-filters{gap:8px}.type-filter{font-size:10px;padding:10px}.type-intro p{line-height:1.6}.type-badge{font-size:10px}.agenda-row{flex-wrap:wrap}.agenda-row>.type-badge{margin-left:47px;order:3}.agenda-row .row-main{min-width:190px}.type-description{font-size:10px}.calendar-context .card{min-height:165px}.mini-event .type-badge{font-size:9px}}
.event-badges{display:inline-flex;flex-wrap:wrap;gap:5px;align-items:center}.card-top>.event-badges{flex:1}.mini-event .event-badges{display:flex}.agenda-row>.event-badges{max-width:210px}@media(max-width:760px){.agenda-row>.event-badges{margin-left:47px;order:3}.agenda-row .type-badge{margin-left:0}.type-description{max-width:650px}}
/* Karé Saint-Louis — visual refresh. Existing views and interactions retained. */
:root{--ink:#292331;--muted:#8d8791;--paper:#f5f3f5;--line:#ebe6eb;--orange:#cc007a;--green:#ca0078}body{color:var(--ink);background:var(--paper)}.sidebar{width:230px;padding:22px 19px;background:#fff}.brand{display:block;margin:0 -8px}.brand img{display:block;width:100%;height:116px;object-fit:contain}.space-label{margin:30px 14px 16px;font-size:9px;color:#9d969f;letter-spacing:1.2px}.shell{margin-left:230px}.nav.active{background:#fdf0f6!important;color:#bd0071!important;border:1px solid #d761a0!important}.sidebar nav .nav{border:1px solid transparent;border-radius:10px;font-size:12px;padding:12px;margin:5px 0}.nav span{font-size:17px}.side-note{background:linear-gradient(145deg,#fff4f8,#f6effb);padding:21px 16px;border:1px solid #faeaf2;border-radius:12px}.tiny-star{color:#cc007a;font-size:30px}.side-note h3{color:#3f2940;font-size:16px}.side-note p{color:#948393}.sidebar-footer{color:#a99da6}.topbar{height:86px;background:#fff;padding:0 34px;border-bottom:1px solid #f0ecf0}.breadcrumb{font-size:16px;color:#39303b;font-weight:600}.breadcrumb strong{font-size:13px;color:#a398a2}.breadcrumb span{color:#d3cbd1}.top-right .source{font-size:10px;color:#93858f}.source i{background:#c92884}.prototype{background:#fff6fa;color:#b04481;border:1px solid #f2dce8;border-radius:20px;padding:8px 13px}.header-identity{display:flex;gap:15px;align-items:center}.mobile-logo{display:none}main{padding:30px 34px 0;max-width:1510px}.page-heading{margin-bottom:28px}.eyebrow{color:#b08d9f;font-size:8px;letter-spacing:1.6px}h1{font-size:32px;letter-spacing:-1px}.page-heading p:not(.eyebrow){font-size:12px;color:#9b9099}.year-pill{background:#fff;color:#a0447a;border-color:#eadfe6;font-size:12px;padding:11px 16px}.year-pill span{color:#c75a99}.hero{background:linear-gradient(110deg,#fbeaf3 0%,#f3e7f8 65%,#e9f5fc 100%);color:#48283f;min-height:232px;border:1px solid #f0dce9;border-radius:14px}.hero-copy{padding:27px 32px}.hero-tag{color:#b15b91}.hero h2{font-size:27px;color:#4c2947}.hero p{color:#99778c}.hero button{background:#cb0078;color:white;border-radius:8px;padding:12px 17px;box-shadow:0 4px 12px #c8007814}.hero-art{background:transparent;width:290px}.sun{background:#dca5cb;opacity:.65;border-radius:20px;transform:rotate(12deg);width:90px;height:90px;right:70px}.arch{border-radius:16px;transform:rotate(-18deg);width:110px;height:160px}.arch1{background:#26b4dd;bottom:-65px;left:28px}.arch2{background:#7951ad;bottom:-55px;left:133px}.arch3{background:#d61586;bottom:-40px;left:225px}.art-label{color:#94548d;top:47px;left:38px}.art-star{color:#ab74bd}.stats{gap:15px;margin:18px 0 30px}.stat{border:0;box-shadow:0 1px 3px #41244004;border-radius:12px;padding:19px 20px}.stat-icon{background:#fdf0f7;color:#c32d84;border-radius:11px}.stat strong{font-size:26px;color:#3c2939}.stat p{color:#9c8d98}.stat em{color:#b4a6af}.workspace{padding:0}.section-heading{background:#fff;padding:18px 20px;border-radius:12px;margin:0 0 23px}.section-heading h2{font-size:17px;letter-spacing:-.3px}.section-heading .eyebrow{display:none}.view-switch{background:#f8f3f6;padding:4px;border-radius:8px}.view-switch button{font-size:10px;color:#99828e;padding:8px 13px}.view-switch button.active{color:#c50075;background:#fff;box-shadow:0 1px 5px #733b5510}.type-intro h3{font-size:12px;font-weight:600}.type-intro p{font-size:10px;color:#a3959e;margin-bottom:12px}.type-filter{font-size:10px;padding:9px 11px;border-radius:8px;border:1px solid transparent;transition:box-shadow .15s}.type-filter.selected{outline:1px solid currentColor;outline-offset:1px;box-shadow:0 2px 7px #71305d09}.type-filter[data-type="all"]{background:white;color:#6f5c69;border-color:#e9dfe6}.type-acisl{background:#fce7f2;color:#b80a70}.type-mairie{background:#e8f5fc;color:#087caa}.type-joint{background:#f1e9f8;color:#8650ae}.type-calendar{background:#fff2dc;color:#9f7127}.type-unknown{background:#eeebf0;color:#8b7c8a}.type-badge{font-size:9px;padding:5px 8px;font-weight:500}.type-description{color:#a4969f;font-size:10px;margin:12px 0 18px;max-width:850px}.controls{gap:10px}.search{border:0;padding:11px 14px;border-radius:9px;box-shadow:0 1px 3px #45294003}.search input{font-size:11px}.search span{color:#9d8997}select{border:0;color:#8c7b87;padding:13px;border-radius:9px}.toggle{color:#998793;font-size:10px}.toggle input{accent-color:#c90077}.months{border-color:#e8e0e6;padding-top:17px;padding-bottom:12px;gap:6px}.months button{color:#9c8c98;border-radius:7px;font-size:10px}.months button.active{background:#ce087d;color:#fff;box-shadow:0 2px 8px #c6007817}.result-label{color:#ad9ca7;font-size:10px;margin:16px 0}.month-title{font-size:12px;margin:25px 0 13px;color:#574551;font-weight:600}.month-title span{color:#b7a5b0;font-size:9px}.agenda-row{padding:16px;border:0!important;border-radius:13px;margin:11px 0;gap:17px;min-height:90px;background:#fff!important;box-shadow:0 1px 2px #57324403;transition:box-shadow .15s,transform .15s}.agenda-row:hover{box-shadow:0 5px 20px #7033580a;transform:translateY(-1px)}.date-block{background:#fcf0f6;color:#cb167b;border-radius:10px;min-width:49px;padding:8px 4px;font-size:23px;display:flex;flex-direction:column-reverse;gap:3px}.date-block small{font-size:9px;color:#b690a5;letter-spacing:0;text-transform:none}.event-visual{display:grid;place-items:center;width:48px;height:48px;border-radius:10px;flex-shrink:0;font-size:28px;color:#aa78b4;background:linear-gradient(135deg,#f5eaf3,#ece9fa);overflow:hidden}.visual-acisl{background:linear-gradient(135deg,#fbd9ec,#fceff5);color:#cf2a88}.visual-mairie{background:linear-gradient(135deg,#dcf2fc,#e6edfc);color:#2d9cc5}.visual-calendar{background:linear-gradient(135deg,#faf0df,#f9f6e9);color:#c0a169}.row-main h3{font-size:12px;letter-spacing:-.1px;color:#3c2e38;margin-bottom:7px}.row-main p{font-size:10px;color:#ad9ca8}.row-main{min-width:0}.row-category{min-width:115px;font-size:10px;color:#85717f}.row-badges{min-width:145px;max-width:210px}.row-category small,.row-badges>small{display:block;font-size:9px;color:#b5a3b0;margin-bottom:8px}.row-open{width:26px;height:26px;display:grid;place-items:center;background:#fcf0f6;color:#c44b90;border-radius:6px;font-size:15px;flex-shrink:0}.cards{gap:18px}.card{border:0!important;border-radius:14px;padding:21px;min-height:228px;background:white!important;box-shadow:0 2px 7px #77335204}.card:hover{box-shadow:0 8px 22px #7733520c}.card h3{color:#43313e;font-size:16px}.card .date{color:#9a8292;font-size:11px}.card .desc{color:#ad9aa6}.card-bottom{border-color:#f3edf1;color:#ac94a3}.event-nature{color:#b59eae;font-size:9px}.card-arrow{color:#c594b0}.card.event-calendar{border-top:2px solid #e4c487!important}.calendar-context{border-color:#e8e0e6}.context-heading h3{color:#806748;font-size:16px}.context-heading p{color:#b3a28c}.month-box{border:0;border-radius:13px;box-shadow:0 2px 5px #552b4903}.month-box h3{color:#68485f;font-size:13px}.month-box h3 span{color:#d3b6c8}.mini-event.event-acisl{background:#fcf0f7;border-color:#d572a9}.mini-event.event-mairie{background:#edf8fc;border-color:#78beda}.mini-event.event-joint{background:#f5effa;border-color:#a480c5}.mini-event.event-calendar{background:#fcf7ec;border-color:#d7bb7f}.mini-event.event-unknown{background:#f6f3f7;border-color:#ccb9ca}.mini-title{color:#6b5365}.mini-event small{color:#b09aab}footer{border-color:#e9e1e7;color:#b49ba9;font-size:9px}#detail{border:0;box-shadow:0 25px 100px #63354e30}#detail::backdrop{background:#32273366}.close{background:#f9edf4;color:#b64b8b}.article-content{color:#7b6676}.article-content h3{color:#5e3e55}.detail-end{color:#b598a9}.detail-note{background:#fff7e9;color:#a18552}.article-content blockquote{background:#fcf0f7;border-color:#d891b9}.source-button{background:#ce0079}.empty{border-color:#dcc9d6;color:#a38699}.empty button{background:#c90077}.mobile-nav button.active{background:#fdf0f7;color:#c90077}
@media(min-width:1450px){.sidebar{width:250px}.shell{margin-left:250px}.brand img{height:128px}.topbar{padding:0 42px}main{padding:34px 42px 0}.agenda-row{gap:22px}.row-category{min-width:135px}.row-badges{min-width:175px}}
@media(max-width:1100px){.sidebar{width:205px;padding:20px 15px}.shell{margin-left:205px}.brand img{height:104px}.topbar{padding:0 25px}main{padding:28px 25px 0}.row-category{display:none}.row-badges{min-width:110px;max-width:145px}.agenda-row{gap:12px}.event-visual{width:40px;height:40px;font-size:24px}.row-main h3{font-size:11px}.hero-art{width:220px}}
@media(max-width:760px){.shell{margin:0}.topbar{height:74px;padding:0 17px}.header-identity{gap:10px;min-width:0}.mobile-logo{display:block;width:105px;height:62px;object-fit:contain}.breadcrumb{font-size:11px}.breadcrumb:before{display:none}.breadcrumb span{margin:0 6px}.breadcrumb strong{font-size:10px}.prototype{font-size:9px;padding:7px 9px}.top-right{gap:0}main{padding:25px 17px 85px}.page-heading{margin-bottom:23px}h1{font-size:29px;max-width:100%}.eyebrow{font-size:7px}.page-heading p:not(.eyebrow){font-size:11px;max-width:100%}.section-heading{padding:15px 16px;margin-bottom:20px}.section-heading h2{font-size:16px}.type-intro h3{font-size:12px}.type-intro p{font-size:10px}.type-filter{font-size:10px;padding:10px 11px}.type-description{font-size:10px;line-height:1.7}.controls{gap:10px}.search{padding:13px}.search input{font-size:12px}select{font-size:10px;max-width:190px}.toggle{font-size:9px}.months{margin-right:-17px;padding-right:17px}.months button{font-size:10px;padding:9px 10px}.month-title{font-size:12px;margin-top:22px}.agenda-row{position:relative;display:grid;grid-template-columns:45px minmax(0,1fr) 25px;gap:8px 12px;padding:15px 13px;min-height:110px;border-radius:12px}.event-visual{display:none}.date-block{grid-column:1;grid-row:1 / span 2;min-width:0;width:45px;align-self:start;font-size:22px}.row-main{grid-column:2;grid-row:1;min-width:0!important}.row-main h3{font-size:12px;line-height:1.5;margin-bottom:5px}.row-main p{font-size:10px}.row-badges{grid-column:2;grid-row:2;min-width:0;max-width:none}.row-badges>small{display:none}.row-open{grid-column:3;grid-row:1}.row-badges .type-badge{font-size:8px;padding:4px 6px}.row-badges .event-badges{margin:0;max-width:none}.hero-copy{padding:24px 22px}.hero h2{font-size:24px}.hero-art{right:-70px;opacity:.3}.hero p{color:#9a748b}.stats{gap:8px}.stat{padding:15px 11px}.stat strong{font-size:23px}.stat p{font-size:9px}.card{padding:20px;min-height:215px}.card h3{font-size:17px}.card .desc{font-size:11px}.card-bottom{font-size:9px}.mobile-nav{background:#fffffffa;border-color:#eee2ea}.mobile-nav button{color:#af97a5}.mobile-nav button.active{color:#cc007a;background:#fcf0f7}.side-note{display:none}}
/* Keep the programme visible above the fold and secondary text readable. */
.topbar{height:74px}main{padding-top:24px}.page-heading{margin-bottom:20px}.page-heading .eyebrow{margin-bottom:7px}.page-heading p:not(.eyebrow){margin-top:8px;color:#857580}.section-heading{padding:14px 18px;margin-bottom:18px}.type-intro p{margin-bottom:10px;color:#8d7c87}.type-description{margin:9px 0 14px;color:#8d7b87}.row-main h3{font-size:13px}.row-main p{color:#8f7a87}.row-category{color:#7f6978}.row-category small,.row-badges>small{color:#9e8896}.result-label{color:#9b8291}.months{padding-top:13px}.agenda-row{min-height:84px;padding:14px 16px}.card .desc{color:#8b7884}.search input{font-size:12px}@media(max-width:760px){main{padding-top:22px}.type-description{font-size:10px}.agenda-row{padding:15px 13px;min-height:110px}.row-main h3{font-size:12px}.row-main p{font-size:10px}.page-heading{margin-bottom:20px}}

/* Ajustements : fond neutre, filtres compacts, navigation épurée. */
:root{--paper:#fafafa}body,.shell,main{background:var(--paper)}
.type-filters{gap:7px}.type-filter{padding:6px 9px;font-size:10px;gap:5px;border-radius:7px;line-height:1.35}.type-filter b{font-size:9px;padding:1px 4px}.type-filter.selected{outline-offset:0;box-shadow:none}
.sidebar-footer{margin-top:auto;padding-top:24px}
@media(max-width:760px){.type-filter{padding:7px 9px;font-size:10px}.type-filters{gap:8px}}
/* Validation comes from the source field, independently of date uncertainty. */
.status-badge{display:inline-flex;gap:4px;align-items:center;font-size:9px;font-weight:500;line-height:1.5;padding:4px 7px;border-radius:5px;white-space:normal}.status-unset{background:#f1f0f2;color:#887c87}.status-pending{background:#f0ebfa;color:#8560a3}.status-review{background:#fff3db;color:#a97b22}.status-approved{background:#e7f4e9;color:#397d50}.status-postponed{background:#fff0e5;color:#b4763e}.status-cancelled{background:#fbe9ec;color:#ba5062}.row-status{margin-top:5px}.row-status .status-badge{font-size:8px;padding:3px 6px}.card-bottom{gap:9px;align-items:center}.card-bottom>span:last-child{white-space:nowrap}@media(max-width:760px){.status-badge{font-size:9px}.row-badges{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.row-status{margin-top:0}}
.event-visual{position:relative}.event-visual .visual-fallback{display:grid;place-items:center;width:100%;height:100%}.event-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}@media(max-width:760px){.agenda-row:has(.has-photo){grid-template-columns:45px 42px minmax(0,1fr) 25px;gap:8px}.agenda-row .has-photo{display:grid;grid-column:2;grid-row:1 / span 2;width:42px;height:48px;align-self:start}.agenda-row:has(.has-photo) .row-main,.agenda-row:has(.has-photo) .row-badges{grid-column:3}.agenda-row:has(.has-photo) .row-open{grid-column:4}}

/* Interface sobre : trois vues, rendez-vous lisibles et fiches vides identifiables. */
:root{--ink:#252529;--muted:#77777f;--paper:#fff;--line:#e6e6ea}
body,.shell,main{background:#fff;color:var(--ink)}
.sidebar{background:#f6f6f8;border-right:1px solid #ebebee}
.sidebar nav .nav{color:#66666e;font-weight:500}
.sidebar nav .nav.active{background:#fff!important;border-color:#e9e9ee!important;color:#26262b!important;box-shadow:0 1px 3px #00000003}
.sidebar-footer,.space-label{color:#92929b}
.topbar{border-color:#ededf0}.breadcrumb{color:#323238}
.page-heading{margin-bottom:16px}h1{font-size:27px;font-weight:600;color:#26262d}
.page-heading .eyebrow{display:none}.page-heading p:not(.eyebrow){color:#82828a}
.hero{height:116px;min-height:116px;margin-bottom:22px;border-radius:12px;background:linear-gradient(110deg,#fcf3f8,#f5f3fb 70%,#edf8fc);border:1px solid #eee7ef}
.hero-copy{padding:16px 22px;display:flex;flex-direction:column;justify-content:center}
.hero-tag{font-size:8px}.hero h2{font-size:21px;margin:6px 0 3px;font-weight:600}
.hero p{font-size:11px;margin:0}.hero button{position:absolute;left:calc(100% + 25px);top:38px;white-space:nowrap;padding:8px 12px;font-size:10px}
.hero-art{width:190px}.art-label{top:16px;left:24px}.art-label b{font-size:38px}.art-star{font-size:26px;top:12px;right:20px}
.sun{width:55px;height:55px;top:18px;right:35px}.arch{height:110px;width:65px}.arch1{left:15px}.arch2{left:85px}.arch3{left:145px}
.section-heading{padding:0 0 14px;border-radius:0;border-bottom:1px solid var(--line);gap:14px}
.section-heading h2{font-size:18px;font-weight:600}
.view-switch{background:#f4f4f6}.view-switch button{color:#777780}.view-switch button.active{color:#25252c}
.type-intro h3{color:#46464e}.type-intro p,.type-description{color:#898991}
.search,select{border:1px solid var(--line);box-shadow:none}
.months{border-color:var(--line)}.months button{color:#85858e}.months button.active{background:#f0edf5;color:#5f4279;box-shadow:none}
.result-label,.month-title span{color:#929299}.month-title{color:#4c4c54}
.agenda-row{display:flex!important;gap:16px;padding:17px 19px!important;border:1px solid #e4e4e9!important;border-radius:12px;background:#fff!important;min-height:128px;box-shadow:none!important;transform:none!important}
.agenda-row:not(:disabled):hover{border-color:#c9c3d2!important;background:#fdfcfe!important}
.event-copy{flex:1;min-width:0}
.event-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:9px}
.event-copy h3{font:500 15px/1.45 'DM Sans',sans-serif;color:#29292e;margin:0 0 5px}
.event-date{margin:0 0 10px;font-size:11px;color:#81818a}
.event-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.type-badge,.status-badge{border-radius:20px;padding:3px 8px;font-size:10px;line-height:1.5}
.category-label{border:1px solid #e7e7eb;border-radius:20px;padding:3px 8px;color:#777780;font-size:10px}
.row-open{background:transparent;color:#a4a0ab;width:22px;align-self:center}
.event-visual.has-photo{display:grid;width:70px;height:70px;border-radius:9px}
.incomplete-label{font-size:10px;color:#95959d}
.agenda-row.is-empty,.mini-event.is-empty{background:#f7f7f8!important;border-color:#e8e8eb!important;color:#97979f!important;cursor:default;opacity:1;box-shadow:none}
.is-empty .event-copy h3,.is-empty .mini-title{color:#909098}
.is-empty .type-badge,.is-empty .status-badge,.is-empty .category-label{background:#eeeef0!important;color:#9a9aa2!important;border-color:#e6e6e9}
.is-empty .event-date,.is-empty small{color:#a1a1a8}
.month-box{border:1px solid var(--line);box-shadow:none}
.month-box h3,.mini-title{color:#55555e}
.mini-event{border:1px solid #e7e7ed!important;border-radius:8px;padding:10px}
.mini-event .status-badge{margin-bottom:6px}.mini-event .incomplete-label{display:block}
.stat{border:1px solid var(--line);box-shadow:none}.stat strong{color:#303038}.stat em{display:none}
footer{border-color:var(--line);color:#96969e}
.mobile-nav{background:#f7f7f9;border-color:#e7e7eb}
.mobile-nav button{color:#898991}.mobile-nav button.active{color:#3a3444;background:#fff}
@media(max-width:760px){
 main{padding-top:18px}.page-heading h1{font-size:25px}.year-pill{display:none}
 .hero{height:116px;min-height:116px;margin-bottom:18px}.hero-copy{padding:15px 17px}.hero h2{font-size:20px}
 .hero button{display:none}.hero-art{position:absolute;right:-65px;top:0;bottom:0;opacity:.25}
 .section-heading{align-items:flex-start;flex-direction:column;gap:12px}.section-heading h2{font-size:17px}
 .view-switch{width:100%;justify-content:space-between}.view-switch button{flex:1;padding:9px 8px}
 .agenda-row{padding:15px!important;gap:10px;min-height:128px}
 .event-copy h3{font-size:14px}.event-visual.has-photo{width:48px;height:58px;align-self:center}
 .agenda-row:has(.has-photo) .has-photo{width:48px;height:58px}
 .row-open{width:16px}.event-tags{gap:5px}.type-badge,.status-badge{font-size:9px}
 .stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:10px 7px;gap:5px}.stat-icon{display:none}.stat p{font-size:9px}
}

/* Navigation persistante sur téléphone et tablette. */
@media(max-width:1100px){
 .sidebar{display:none}
 .shell{margin-left:0}
 main{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
 .view-switch{display:none}
 .mobile-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;position:fixed;inset:auto 0 0;z-index:20;background:#f6f6f8f5;backdrop-filter:blur(12px);border-top:1px solid #e5e5ea;padding:8px max(12px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px))}
 .mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:50px;padding:6px 8px;border:1px solid transparent;border-radius:9px;background:transparent;color:#777780;font-size:11px;font-weight:500}
 .mobile-nav button span{display:block;font-size:20px;line-height:1.1;margin:0}
 .mobile-nav button.active{background:#fff;color:#433550;border-color:#e6e2ec;box-shadow:0 1px 3px #00000004}
 .mobile-logo{display:block;width:105px;height:62px;object-fit:contain}
}

/* Harmonisation : rythme, lisibilité et interactions. */
body{font-size:14px}
.page-heading p:not(.eyebrow),.type-description,.type-intro p{color:#73737c}
.type-description{line-height:1.6;max-width:760px}
.section-heading{flex-wrap:wrap}
.view-switch{flex-shrink:0}
.search{min-height:44px}
.search input{font-size:14px}
select{min-height:44px;max-width:100%}
.type-filter{min-height:36px;padding:7px 10px}
.type-filter.selected{outline:2px solid currentColor;outline-offset:1px}
.months button{min-height:40px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9578b6;outline-offset:3px}
.agenda-row{margin:10px 0;transition:background .15s,border-color .15s}
.event-copy h3{font-size:16px;font-weight:600}
.event-date{color:#71717b;font-size:12px}
.category-label,.type-badge,.status-badge{font-size:11px}
.month-title{font-size:14px;margin-top:28px}
.month-title span{font-size:11px}
.month-box{min-width:0}.mini-event .event-badges{display:flex;flex-wrap:wrap;margin:4px 0}
.hero button{position:static;align-self:flex-start;margin:6px 0 0;padding:5px 10px}
.hero-copy{padding:12px 22px}.hero h2{margin:3px 0}
.hero p{display:none}
.loading-state{display:flex;gap:12px;align-items:center;padding:36px 20px;border:1px solid #e6e6eb;border-radius:12px;color:#77717f;background:#faf9fc}
.loading-dot{width:10px;height:10px;border-radius:50%;background:#bd2687}
.undated-section{margin-top:28px;padding-top:8px;border-top:1px dashed #dcdce4}
#detail{width:min(700px,calc(100vw - 32px));max-height:85dvh;padding:30px;border-radius:16px}
#detail h2{font-size:24px;line-height:1.35;padding-right:20px}
.article-content{font-size:14px;line-height:1.75;color:#59535e}
.article-content img{max-width:100%;height:auto;border-radius:10px}
.detail-note{line-height:1.6}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:760px){
 .controls{flex-wrap:wrap}.search{flex:1 1 100%}select{flex:1;min-width:0}
 .toggle{white-space:normal;font-size:11px;min-height:44px}
 .type-filter{min-height:40px}.event-copy h3{font-size:15px}
 .type-badge,.status-badge,.category-label{font-size:10px}
 .hero-copy{padding:14px 17px}.hero p{display:block}
 #detail{padding:22px 18px}#detail h2{font-size:21px}
 .stats{gap:7px}.stat strong{font-size:23px}
}

/* La bannière porte désormais le titre principal. */
.hero h1{font:600 21px/1.3 Manrope,sans-serif;letter-spacing:-.8px;color:#4c2947;margin:3px 0}
@media(max-width:760px){.hero h1{font-size:20px}}

/* Séparation claire des groupes mensuels. */
#content .month-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:36px 0 14px;padding:14px 16px;border:1px solid #e5e1e9;border-left:4px solid #b32982;border-radius:9px;background:#f5f3f7;color:#3e3448;font:700 18px/1.35 Manrope,sans-serif;letter-spacing:-.3px}
#content>.month-title:first-child{margin-top:22px}
#content .month-title span{flex-shrink:0;display:inline-block;padding:5px 10px;border:1px solid #e4dce9;border-radius:20px;background:#fff;color:#6e547d;font:600 12px/1.4 'DM Sans',sans-serif;letter-spacing:0}
@media(max-width:760px){#content .month-title{margin-top:30px;padding:12px 13px;font-size:18px}#content .month-title span{font-size:12px;padding:4px 9px}}

/* Bandeaux mensuels roses et compacts. */
#content .month-title{padding:8px 13px;background:#fceaf3;border-color:#f2d5e5;border-left-color:#c82080;color:#793357;font-size:17px}
#content .month-title span{padding:2px 8px;border-color:#efd1e1;color:#963669;background:#fff7fb}
@media(max-width:760px){#content .month-title{padding:8px 11px;font-size:17px}#content .month-title span{padding:2px 8px}}

/* Chaque titre reste attaché à son groupe pendant le défilement. */
.month-group{position:relative;display:flow-root;margin-top:30px;padding-bottom:1px}
#content .month-group>.month-title{position:sticky;top:0;z-index:4;margin:0 0 14px;background:#fceaf3;box-shadow:0 3px 7px #5933450a}
#content>.month-group:first-child{margin-top:22px}
.undated-section{display:flow-root}
#content .undated-section>.month-title{position:sticky;top:0;z-index:4;background:#fceaf3}

/* Flèches d’ouverture dans la couleur de l’identité ACISL. */
.agenda-row .row-open{color:#cc007a}

/* Ensemble : synthèse opérationnelle, distincte du calendrier. */
.dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.dashboard-panel:first-child{grid-column:1/-1}
.dashboard-heading{display:flex;align-items:center;gap:12px;margin:0 0 8px}
.dashboard-heading h3{font:700 18px/1.4 Manrope,sans-serif;margin:0;color:#493649}
.dashboard-heading>span{background:#fceaf3;color:#963669;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600}
.dashboard-description{color:#77717e;font-size:12px;line-height:1.6;margin:0 0 14px}
.dashboard-panel{min-width:0;padding:20px;border:1px solid #e8e3eb;border-radius:14px;background:#fdfcfe}
.dashboard .agenda-row{min-height:110px;padding:14px!important}
.dashboard-more{width:100%;min-height:42px;border:1px solid #ead5e2;border-radius:8px;background:#fff6fb;color:#a72e73;font-size:12px;margin-top:6px}
.dashboard-more:hover{background:#fceaf3}
.dashboard-empty{padding:18px 0;color:#83808a;font-size:13px}
@media(max-width:1000px){.dashboard{grid-template-columns:1fr;gap:20px}.dashboard-panel:first-child{grid-column:auto}}
@media(max-width:760px){.dashboard-panel{padding:14px}.dashboard-heading h3{font-size:16px}.dashboard .event-copy h3{font-size:14px}.dashboard-description{font-size:11px}}

/* Sélecteur de catégorie aligné sur le champ de recherche. */
.controls .search{height:46px}
#category{appearance:none;-webkit-appearance:none;box-sizing:border-box;flex:0 0 205px;width:205px;max-width:100%;min-width:0;height:46px;padding:0 38px 0 14px;border:1px solid #e0dfe6;border-radius:9px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23cc007a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;color:#655c69;font:400 13px 'DM Sans',sans-serif;cursor:pointer;box-shadow:none;transition:border-color .15s,background-color .15s}
#category:hover{border-color:#d4b3c8;background-color:#fffbfd}
#category:focus-visible{outline:2px solid #c84c94;outline-offset:2px;border-color:#c84c94}
#category option{background:#fff;color:#403746}
@media(max-width:760px){#category{flex:1 1 190px;width:auto;max-width:100%;font-size:14px}.controls .search{flex-basis:100%}}

.stat-icon svg{width:22px;height:22px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.stat-icon{flex-shrink:0}

/* Vue annuelle : textes secondaires et statuts plus contrastés. */
.annual .month-box h3{color:#34313c}
.annual .month-box h3 span{color:#79536c}
.annual .mini-title{color:#35313d;font-weight:600}
.annual .mini-event small{color:#675b6b;font-size:11px}
.annual .month-empty{color:#6d6573}
.annual .status-review{color:#78500b;background:#fff3db}
.annual .status-pending{color:#67418a;background:#f0ebfa}
.annual .status-unset,.annual .type-unknown{color:#62566a;background:#eeebf0}
.annual .status-approved{color:#28643c}
.annual .status-postponed{color:#865022}
.annual .status-cancelled{color:#943448}
.annual .type-calendar{color:#805514}
.annual .mini-event.is-empty .mini-title{color:#707078}
.annual .mini-event.is-empty small,.annual .mini-event.is-empty .incomplete-label{color:#74747c}
.annual .mini-event.is-empty .type-badge,.annual .mini-event.is-empty .status-badge{color:#707078!important}

/* Navigation basse nettement séparée du programme. */
@media(max-width:1100px){
 .mobile-nav{background:#fff;backdrop-filter:none;border-top:1px solid #d8ccd6;box-shadow:0 -5px 20px #48304214;gap:8px}
 .mobile-nav button{min-height:54px;color:#574c5d;font-size:12px;font-weight:600;border-radius:10px}
 .mobile-nav button span{font-size:22px}
 .mobile-nav button.active{background:#bd006f;color:#fff;border-color:#bd006f;box-shadow:0 2px 7px #bd006f24}
 .mobile-nav button:not(.active):hover{background:#fceaf3;color:#8e215e}
 .mobile-nav button:focus-visible{outline:3px solid #743e91;outline-offset:2px}
}

.mobile-nav button span{display:grid;place-items:center}
.mobile-nav svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Menu flottant inspiré de la référence. */
@media(max-width:1100px){
 .mobile-nav{inset:auto auto calc(12px + env(safe-area-inset-bottom,0px)) 50%;transform:translateX(-50%);width:calc(100% - 28px);max-width:520px;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:9px 12px;border:1px solid #ece7ee;border-radius:999px;background:#fff;box-shadow:0 6px 28px #49334d24}
 .mobile-nav button{flex:1;flex-direction:row;gap:8px;min-width:0;min-height:46px;padding:8px 10px;border-radius:999px;border:1px solid transparent;color:#706776;font-size:12px;font-weight:600;white-space:nowrap}
 .mobile-nav button span{margin:0;flex-shrink:0}
 .mobile-nav button.active{background:#f8e5f0;border-color:#f4dbe9;color:#a21368;box-shadow:none}
 .mobile-nav button:not(.active):hover{background:#f6f3f7;color:#6e4161}
 .mobile-nav button:focus-visible{outline-offset:1px}
 main{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:380px){.mobile-nav{gap:2px;padding:8px;width:calc(100% - 20px)}.mobile-nav button{gap:5px;padding:8px 6px;font-size:11px}.mobile-nav svg{width:20px;height:20px}}

/* Retour visuel des cartes interactives. */
.agenda-row,.mini-event{transition:background-color .18s,border-color .18s,box-shadow .18s}
.event-copy h3,.mini-title{transition:color .18s}
@media(hover:hover) and (pointer:fine){
 .agenda-row:not(:disabled):hover,.mini-event:not(:disabled):hover{border-color:#e5aacb!important;background:#fffafd!important;box-shadow:0 4px 14px #a5267012!important}
 .agenda-row:not(:disabled):hover .event-copy h3,.mini-event:not(:disabled):hover .mini-title{color:#bd006f}
}
.agenda-row:not(:disabled):focus-visible,.mini-event:not(:disabled):focus-visible{border-color:#e5aacb!important;box-shadow:0 4px 14px #a5267012!important}
.agenda-row:not(:disabled):focus-visible .event-copy h3,.mini-event:not(:disabled):focus-visible .mini-title{color:#bd006f}
[data-program-year]{color:inherit;font:inherit;letter-spacing:inherit}

.status-control{display:flex;align-items:center;gap:12px;margin:0 0 18px}
.status-control label{font-size:12px;font-weight:600;color:#65566a}
#status-filter{appearance:none;-webkit-appearance:none;height:44px;min-width:210px;padding:0 38px 0 13px;border:1px solid #e0dfe6;border-radius:9px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23cc007a' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 13px center;color:#655c69;font-size:13px;cursor:pointer}
#status-filter:focus-visible{outline:2px solid #c84c94;outline-offset:2px}
@media(max-width:760px){#status-filter{flex:1;min-width:0;width:100%;font-size:14px}}

/* Filtres rassemblés dans un panneau unique. */
.filter-panel{padding:16px;margin:0 0 12px;background:#faf9fb;border:1px solid #e9e5ec;border-radius:12px}
.filter-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#655b6b;font-size:12px;font-weight:600}
#clear-filters{border:0;background:transparent;color:#a21368;font-size:11px;padding:6px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.filter-panel .controls{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(170px,1fr) minmax(170px,1fr);gap:12px;align-items:end}
.filter-panel .search{height:44px;width:100%;min-width:0;margin:0;background:#fff;padding:0 12px}
.filter-panel .search input{font-size:13px}
.filter-panel .status-control,.filter-panel .category-control{display:flex;flex-direction:column;align-items:stretch;gap:5px;margin:0;min-width:0;font-size:11px;color:#716778;font-weight:500}
.filter-panel #status-filter,.filter-panel #category{flex:none;width:100%;min-width:0;max-width:none;height:44px;font-size:13px;padding-left:12px}
.filter-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}
.filter-panel .type-filters{display:flex;flex-wrap:wrap;gap:7px;margin:0}
.filter-panel .type-filter{padding:5px 9px;min-height:32px;border-radius:20px;font-size:11px;line-height:1.3;box-shadow:none}
.filter-panel .type-filter.selected{outline:none;border:1px solid currentColor;box-shadow:0 0 0 1px currentColor}
.filter-panel .type-filter b{background:transparent;font-size:10px;padding:0 2px}
.filter-panel .toggle{font-size:11px;color:#716778;min-height:32px;gap:5px;margin:0}
.filter-panel.dashboard-filters .controls{grid-template-columns:minmax(0,270px)}
.filter-panel.dashboard-filters .filter-bottom{display:none}
#type-description[hidden]{display:none}
@media(max-width:900px){
 .filter-panel .controls{grid-template-columns:repeat(2,minmax(0,1fr))}
 .filter-panel .search{grid-column:1/-1}
 .filter-panel.dashboard-filters .controls{grid-template-columns:1fr}
}
@media(max-width:760px){
 .filter-panel{padding:12px}
 .filter-panel .controls{gap:10px}
 .filter-panel #status-filter,.filter-panel #category{font-size:12px;padding-right:30px;background-position:right 9px center}
 .filter-panel .search input{font-size:14px}
 .filter-panel .type-filter{font-size:10px;min-height:36px;padding:6px 8px}
 .filter-bottom{gap:8px;margin-top:12px}
 .filter-panel .toggle{font-size:11px}
}

.filter-panel .type-filter:disabled{background:#efedf0;color:#99939d;border:1px solid #e4e0e6;outline:none;box-shadow:none;cursor:default;opacity:1}
.filter-panel .type-filter:disabled b{color:inherit;background:transparent}

/* Agenda : une carte par mois contenant les événements détaillés. */
#content .month-group{padding:18px;border:1px solid #e1dfe7;border-radius:15px;background:#fff;margin:22px 0}
#content .month-group>.month-title{margin:0 0 15px;padding:12px 4px;border:0;border-bottom:1px solid #eee7ed;border-radius:0;background:#fff;color:#483448;box-shadow:none}
.month-group .agenda-row.event-acisl{background:#fcf1f8!important}
.month-group .agenda-row.event-mairie{background:#edf7fc!important}
.month-group .agenda-row.event-joint{background:#f5effb!important}
.month-group .agenda-row.event-calendar{background:#fcf8ee!important}
.month-group .agenda-row.event-unknown{background:#f6f4f8!important}
.month-group .agenda-row:last-child{margin-bottom:0}
.month-group .agenda-row.is-empty{background:#f7f7f8!important}

/* Année : index compact, sans répéter les cartes de l’agenda. */
.annual-hint{font-size:12px;color:#756a7c;margin:12px 0 16px}
.compact-annual{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.compact-month{border:1px solid #e4dfe8;border-radius:12px;padding:12px;background:#fff;min-width:0}
.compact-month h3{margin:0 0 8px}
.month-link{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;border-radius:6px;background:#faf3f8;color:#62364f;padding:10px;text-align:left;font:600 14px 'DM Sans',sans-serif}
.month-link:hover{background:#f8e5f0;color:#ae0a68}
.month-count{font-size:10px;font-weight:500;white-space:nowrap}
.compact-event{width:100%;display:flex;align-items:center;gap:7px;min-height:36px;padding:7px 5px;border:0;border-radius:6px;background:transparent;color:#49404f;text-align:left;font-size:12px}
.compact-day{width:20px;flex-shrink:0;font-size:11px;font-weight:600;color:#746579;font-variant-numeric:tabular-nums}
.compact-dots{display:flex;gap:3px;flex-shrink:0}
.owner-dot{display:block;width:6px;height:6px;border-radius:50%;background:#9a91a0}
.dot-acisl{background:#cc007a}.dot-mairie{background:#1683b3}.dot-calendar{background:#ba9148}
.compact-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.compact-landmark{font-size:11px;color:#817565}
.compact-event:not(:disabled):hover,.compact-event:focus-visible{background:#fcf0f7;color:#b3006b}
.compact-event.is-empty{color:#8d8793;background:#f7f6f8;cursor:default}
.compact-empty{font-size:11px;color:#8b828f;margin:16px 8px}
@media(max-width:1000px){.compact-annual{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.compact-annual{grid-template-columns:1fr}.compact-event{min-height:40px}.compact-month{padding:10px}#content .month-group{padding:12px}.month-link{min-height:44px}}

/* Menu de partage des fiches, à côté de la fermeture. */
#detail .share-control{position:absolute;top:12px;right:55px;z-index:3}
#share-toggle{display:grid;place-items:center;width:31px;height:31px;padding:0;border:0;border-radius:50%;background:#fcf0f7;color:#b3006b;font-size:24px;font-weight:700;line-height:1}
#share-toggle:hover,#share-toggle[aria-expanded="true"]{background:#f7ddec}
#share-options{position:absolute;right:0;top:39px;width:230px;max-width:calc(100vw - 90px);padding:6px;border:1px solid #e6dce4;border-radius:12px;background:#fff;box-shadow:0 8px 28px #4d244321}
#share-options[hidden]{display:none}
#share-options button,#share-options a{display:block;width:100%;padding:12px;border:0;border-radius:7px;background:white;color:#483448;text-align:left;font-size:13px;cursor:pointer}
#share-options button:hover,#share-options a:hover{background:#fcf0f7;color:#b3006b}
#share-feedback{margin:0 10px;font-size:12px;color:#814264}
#share-feedback:not(:empty){margin:8px 10px}
#share-link-fallback{width:100%;padding:8px;border:1px solid #d8c5d2;border-radius:6px}
#detail .detail-badges{padding-right:90px;min-height:40px}

#team-notes{margin-top:32px;padding-top:24px;border-top:1px solid #eadde6;scroll-margin-top:16px;color:#493c4b}
#team-notes>p,.notes-empty{font-size:13px;color:#706373;line-height:1.5}
.team-note{padding:16px;margin:12px 0;border:1px solid #eadfe7;border-radius:12px;background:#fffafd}
.team-note header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.team-note header span{background:#f7e6f0;border-radius:20px;padding:3px 9px;font-size:11px;color:#8b3768}
.team-note time{font-size:11px;color:#796d7b}.team-note p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:14px}
.note-reply{border-left:3px solid #c90077;padding:10px 14px;background:#f9edf5;border-radius:5px}
#note-form{display:grid;gap:9px;margin-top:20px;padding:18px;border-radius:12px;background:#f8f5f8}
#note-form label{font-size:13px;font-weight:600}#note-form input,#note-form textarea{width:100%;padding:12px;border:1px solid #dcd3de;border-radius:8px;background:#fff;color:#403344;font:inherit}#note-form textarea{resize:vertical}
#note-form button{justify-self:start;padding:12px 18px;border:0;border-radius:8px;background:#c90077;color:white;font-weight:600}#note-form button:disabled{opacity:.6;cursor:wait}#note-feedback{margin:0;font-size:13px}

/* Notes équipe : lecture compacte sans tronquer les messages. */
#notes-list .team-note{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:10px 12px;margin:8px 0;border-radius:9px}
#notes-list .team-note header{display:contents}
#notes-list .team-note header strong{grid-column:1;grid-row:1;font-size:12px;overflow-wrap:anywhere}
#notes-list .team-note header span{grid-column:2;grid-row:1 / span 2;align-self:start;font-size:10px;padding:2px 7px;white-space:nowrap}
#notes-list .team-note time{grid-column:1;grid-row:2;font-size:10px;line-height:1.3}
#notes-list .team-note>p{grid-column:1 / -1;margin:3px 0 0;font-size:13px;line-height:1.45}
#notes-list .note-reply{grid-column:1 / -1;padding:8px 10px;margin-top:3px}
#notes-list .note-reply p{margin:4px 0 0;font-size:13px;line-height:1.45}
@media(min-width:540px){
 #notes-list .team-note{grid-template-columns:auto minmax(0,1fr) auto}
 #notes-list .team-note time{grid-column:2;grid-row:1;align-self:center}
 #notes-list .team-note header span{grid-column:3;grid-row:1}
}

#note-form[hidden],#show-note-form[hidden]{display:none}
#show-note-form{margin-top:8px;padding:6px 9px;border:1px solid transparent;border-radius:6px;background:#fbe7f2;color:#93466f;font-size:12px;font-weight:500;line-height:1.4;transition:background-color .15s,color .15s}
#show-note-form:hover,#show-note-form:focus-visible{background:#b3006b;color:#fff}

/* Fiche structurée : commandes fixes, lecture et informations séparées. */
#detail{width:min(960px,calc(100vw - 40px));padding:0;max-height:90dvh;border-radius:18px;background:#fff;scroll-padding-top:64px}
.detail-toolbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;height:58px;padding:0 22px;background:#fff;border-bottom:1px solid #eee6ed}
.detail-toolbar>span{font-size:12px;font-weight:600;color:#766775;padding-right:90px}
#detail .detail-toolbar .share-control{top:13px;right:59px}
#detail .detail-toolbar .close{top:13px;right:20px}
#detail-body{padding:24px}
#detail .detail-heading .detail-badges{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:0;min-height:0}
#detail .detail-heading h2{font-size:25px;line-height:1.3;margin:14px 0 22px;padding:0;color:#302b35;letter-spacing:-.6px}
.detail-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:start}
.detail-facts{background:#faf7fa;border:1px solid #eee5ec;border-radius:12px;padding:16px}
.detail-facts h3{font-size:12px;margin:0 0 16px;color:#604758}
.detail-facts dl{margin:0}.detail-facts dl>div+div{margin-top:16px}
.detail-facts dt{font-size:11px;color:#7b6877;margin-bottom:5px}.detail-facts dd{font-size:13px;line-height:1.5;font-weight:500;color:#433643;margin:0;overflow-wrap:anywhere}
.detail-facts .detail-note{margin:16px 0 0;padding:10px;font-size:12px;line-height:1.5;border-radius:8px;background:#fff3da;color:#815d22}
.detail-main{min-width:0}.detail-main .article-content{margin:0;line-height:1.65;color:#514754}
#detail .detail-main>figure{margin:0 0 18px}#detail .detail-main>figure img{max-height:300px;object-fit:contain;background:#faf7fa}
.article-content .detail-section{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid #eee7ed}
.article-content .detail-section:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}
.article-content .detail-section h3{font-size:16px;margin:0 0 10px;color:#4b3447}
.article-content .detail-section p{margin:0 0 10px}.article-content .detail-section p:last-child{margin-bottom:0}
.article-content details.detail-source{padding:12px 14px;margin:12px 0;background:#f8f6f9;border:1px solid #e9e1ea;border-radius:9px}
.detail-source summary{font-size:13px;color:#625365}.detail-source[open] summary{margin-bottom:12px}
#detail #team-notes{margin:0 24px 24px;padding-top:22px;border-top:1px solid #e9dfe7;scroll-margin-top:70px}
#detail #team-notes h2{font-size:19px;margin:0 0 8px;padding:0;letter-spacing:-.3px}
#detail #team-notes>p{margin:0 0 14px;font-size:12px}
#note-form{scroll-margin-top:70px}
@media(max-width:700px){
 #detail{width:calc(100vw - 16px);max-height:96dvh;border-radius:14px}
 #detail-body{padding:20px 18px}.detail-toolbar{padding-left:18px}
 .detail-layout{grid-template-columns:1fr;gap:20px}
 .detail-facts{padding:14px}.detail-facts h3{margin-bottom:12px}
 .detail-facts dl{display:flex;gap:14px 24px;flex-wrap:wrap}.detail-facts dl>div+div{margin:0}
 #detail .detail-heading h2{font-size:22px;margin-bottom:18px}
 #detail #team-notes{margin:0 18px 20px}
}

#detail-loading{display:flex;align-items:center;gap:9px;margin:16px 24px 0;color:#93466f;font-size:12px}
#detail-loading[hidden]{display:none}
.detail-spinner{width:17px;height:17px;flex-shrink:0;border:2px solid #f2d9e8;border-top-color:#c90077;border-radius:50%;animation:detail-spin .8s linear infinite}
@keyframes detail-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.detail-spinner{animation:none}}

.logout-form{margin:0 0 0 auto;flex-shrink:0}
.logout-button{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #ecd9e5;border-radius:8px;background:#fcf0f7;color:#95436e;font-size:12px;white-space:nowrap}
.logout-button svg{width:18px;height:18px}.logout-button:hover{background:#b3006b;color:#fff;border-color:#b3006b}
@media(max-width:540px){.topbar{gap:8px}.logout-button{font-size:11px;padding:8px}.header-identity{min-width:0}.topbar .breadcrumb{font-size:12px}}

/* Saisie mobile/tablette au-dessus de la fiche, sans déplacer la lecture. */
#note-dialog{position:fixed;inset:auto;width:min(540px,calc(100vw - 24px));max-height:calc(var(--note-viewport-height,100dvh) - 24px);top:calc(var(--note-viewport-top,0px) + 12px);left:50%;transform:translateX(-50%);margin:0;padding:0;border:1px solid #eadde6;border-radius:16px;background:#fff;color:#433643;box-shadow:0 20px 80px #38233340;overflow:auto;overscroll-behavior:contain;scroll-padding:80px 0 20px}
#note-dialog::backdrop{background:#30233466;backdrop-filter:blur(2px)}
.note-dialog-header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px 18px;border-bottom:1px solid #eee5ec;background:#fff}
#note-dialog h2{margin:0;font-size:19px;letter-spacing:-.3px;line-height:1.3}
#note-action-title{font-size:12px;line-height:1.4;color:#796678;margin:5px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#close-note-dialog{flex-shrink:0;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:#fcf0f7;color:#b3006b;font-size:24px}
#note-dialog #note-form{margin:0;padding:18px;background:#fff;border-radius:0;gap:10px}
#note-dialog #note-form input,#note-dialog #note-form textarea{font-size:16px;scroll-margin:90px 0 20px}
#note-dialog #note-form input{min-height:44px}
#note-dialog #note-form textarea{min-height:110px;max-height:32dvh}
#note-dialog #note-form button[type=submit]{width:100%;min-height:44px;justify-self:stretch;margin-top:4px}
#note-dialog #note-feedback{line-height:1.5}

.app-spinner{display:inline-block;width:24px;height:24px;flex:0 0 24px;border:3px solid #f2d9e8;border-top-color:#c90077;border-radius:50%;animation:detail-spin .8s linear infinite}
.loading-state{min-height:120px;justify-content:center;color:#6d5365}
@media(prefers-reduced-motion:reduce){.app-spinner{animation:none}}

#note-feedback.note-success,#team-notes>#note-success{display:flex;align-items:center;gap:9px;padding:10px 12px;margin:10px 0;border:1px solid #bbdfc8;border-radius:8px;background:#edf8f0;color:#23663d;font-size:13px;font-weight:600;line-height:1.5}
.note-success::before{content:"✓";display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:#23663d;color:#fff;font-size:13px}
#team-notes>#note-success[hidden]{display:none}
