/* Annonce d'accueil : mêmes surfaces, or chaud et arrondis que le portail. */
.announcement-dialog { position:fixed;inset:0;width:min(610px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:0;overflow:auto;border:1px solid #dfbd71;border-radius:22px;color:#f7f3e9;background:radial-gradient(ellipse at 0 0,#b28a3029,transparent 55%),linear-gradient(135deg,#263540,#12212d 78%);box-shadow:0 28px 100px #000a,inset 0 1px #ffedba42,0 0 0 4px #e9c76b0b; }
.announcement-dialog::backdrop { background:#07101bba;backdrop-filter:blur(7px); }
.announcement-close { position:absolute;z-index:2;top:14px;right:14px;border-color:#dfd6b959;background:#111c29df;color:#fff3d7;border-radius:50%;width:42px;height:42px;min-width:42px;min-height:42px;box-shadow:0 3px 14px #0005; }
.announcement-close .icon { width:20px;height:20px; }
.announcement-art { position:relative;overflow:hidden;border-radius:21px 21px 0 0;background:#14222e; }
.announcement-art::after { content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#172632b3,transparent 45%); }
.announcement-art img { width:100%;height:245px;object-fit:cover; }
.announcement-content { padding:30px 32px 26px; }
.announcement-art[hidden]+.announcement-content { padding-top:52px; }
.announcement-eyebrow { display:flex;align-items:center;gap:8px;color:#e8c778;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.12em; }
.announcement-eyebrow .icon { width:17px;height:17px; }
.announcement-content h2 { margin:12px 0 16px;font-size:34px;line-height:1.14;text-wrap:balance;overflow-wrap:anywhere;color:#fff5df; }
.announcement-content p { font-size:14px;line-height:1.85;color:#cdd7df;white-space:pre-line;overflow-wrap:anywhere; }
.announcement-content .announcement-cta { margin-top:23px;min-width:180px;max-width:100%;overflow-wrap:anywhere; }
.announcement-optout { display:flex;align-items:center;gap:10px;margin-top:23px;padding-top:17px;border-top:1px solid #a8bac524;color:#b2c3d0;font-size:11px;cursor:pointer; }
.announcement-optout input { width:17px;height:17px;flex-shrink:0;margin:0;accent-color:#ffcd36; }
.announcement-admin-heading { display:flex;align-items:center;justify-content:space-between;gap:25px;margin:18px 0 28px; }
.announcement-admin-heading h3 { font-size:23px;margin-bottom:9px; }
.announcement-admin-heading p { font-size:13px;line-height:1.7; }
.announcement-admin-heading>.admin-toggle-field { min-width:190px; }
.announcement-editor-grid { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:27px; }
.announcement-editor-copy { display:grid;align-content:start;gap:19px;min-width:0; }
.announcement-field-pair { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start; }
.announcement-image-editor { min-width:0;padding:19px;border-radius:16px;border:1px solid #b9a2674d;background:linear-gradient(145deg,#36404755,#13232d); }
.announcement-image-editor>.eyebrow { font-size:10px;color:#f1d594; }
.announcement-image-preview { display:grid;place-items:center;min-height:170px;aspect-ratio:16/9;overflow:hidden;border-radius:11px;border:1px solid #7e939b44;background:radial-gradient(ellipse at center,#59635d4d,transparent 80%),#172632;margin:14px 0 17px; }
.announcement-image-preview>img { width:100%;height:100%;object-fit:cover; }
.announcement-image-preview>span { display:flex;flex-direction:column;align-items:center;gap:13px;padding:18px;text-align:center;color:#bac9d3;font-size:12px; }
.announcement-image-preview>span .icon { color:#e8c778;width:30px;height:30px; }
.announcement-admin-hint { display:block;color:#aebfcc;font-size:11px;line-height:1.8;margin-top:10px; }
.announcement-image-editor input[type=file] { width:100%;max-width:100%;font-size:11px; }
.announcement-image-editor>.text-button { font-size:11px;margin-top:12px; }
.announcement-upload-status { font-size:11px;line-height:1.7;margin-top:12px; }
.announcement-publication { margin-top:28px;padding-top:23px;border-top:1px solid #adbdc52b; }
.announcement-publication h4 { display:flex;gap:9px;align-items:center;font-size:17px;margin-bottom:20px; }
.announcement-publication h4 .icon { color:#e8c778;width:20px;height:20px; }
.announcement-publication>.announcement-field-pair { margin-top:18px; }
.announcement-dialog[open] { animation:announcement-arrive .24s ease-out both; }
@keyframes announcement-arrive { from { opacity:0;transform:translateY(10px) scale(.98); } to { opacity:1;transform:none; } }
@media(prefers-reduced-motion:reduce) { .announcement-dialog[open] { animation:none; } }
body[data-motion=off] .announcement-dialog[open] { animation:none; }
@media(max-width:1000px) { .announcement-editor-grid { grid-template-columns:1fr; }.announcement-image-preview { max-height:280px; }.announcement-admin-heading { align-items:flex-start;flex-direction:column; }.announcement-admin-heading>.admin-toggle-field { width:100%; } }
@media(max-width:600px) {
 .announcement-dialog { width:calc(100% - 24px);max-height:calc(100dvh - 28px);border-radius:18px; }
 .announcement-art img { height:190px; }
 .announcement-content { padding:24px 23px; }.announcement-content h2 { font-size:29px; }.announcement-content p { font-size:13px; }
 .announcement-content .announcement-cta { width:100%; }
 .announcement-field-pair { grid-template-columns:1fr;gap:17px; }
 .announcement-image-editor { padding:15px; }
}
