/* Picture bricks fill the announcement block; full details open on selection. */
.academy-intro{grid-template-columns:1fr}
.academy-intro .intro-feature{padding:0;min-height:0;background:#bb9fc1;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.academy-intro .intro-feature::before,.academy-intro .intro-feature::after{display:none}
.academy-intro .intro-feature>.academy-news{width:100%;height:100%;min-height:0;background:transparent;padding:0;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;color:#332d37}
#academy-announcements{min-width:0;height:100%}
#academy-announcements>p{padding:24px}
.announcement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(240px,1fr);gap:4px;min-height:100%}
.announcement-slide{min-width:0;position:relative;overflow:hidden;background:#f1eaf4}
.announcement-slide:last-child:nth-child(odd){grid-column:1/-1}
.announcement-cover{position:relative;display:block;width:100%;height:100%;min-height:280px;box-sizing:border-box;padding:0;margin:0;border:0;border-radius:0;background:#f1eaf4;color:#704578;cursor:zoom-in;overflow:hidden}
.announcement-poster img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.announcement-poster:focus-visible{outline:3px solid #704578;outline-offset:-4px;z-index:1}
.announcement-placeholder{display:none;position:absolute;inset:0;align-items:center;justify-content:center;background:linear-gradient(140deg,#f6eff8,#e8dbed)}
.announcement-placeholder svg{width:64px;height:76px}
.announcement-no-image .announcement-placeholder{display:flex}
.announcement-no-image img{display:none}
.announcement-controls,.announcement-actions,.announcement-options{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.announcement-actions,.announcement-options{margin-top:16px}
.announcement-controls{flex:none;flex-wrap:nowrap}
.announcement-controls button,.announcements-editor button{min-height:44px;padding:8px 14px;border:1px solid #d9c9df;border-radius:10px;background:#fff;color:#704578;cursor:pointer;font:inherit}
.announcement-controls button{min-width:44px;padding:8px}
.announcement-controls button:disabled{opacity:.35;cursor:default}
.announcement-controls span{font-size:12px;white-space:nowrap;color:#635369}
.announcement-lightbox{width:min(95vw,1000px);max-height:95dvh;padding:14px;border:1px solid #d9c9df;border-radius:14px}
.announcement-lightbox::backdrop{background:#211527bb}
.announcement-lightbox img{display:block;width:100%;height:auto;max-height:82dvh;object-fit:contain}
.announcement-lightbox button{display:block;min-height:44px;margin-left:auto}
.announcements-editor{width:100%;min-width:0}
.announcements-editor form{display:grid;gap:16px;padding:16px;border:1px solid #e2d8e7;border-radius:14px}
.announcements-editor label{display:grid;gap:6px;font-weight:600;min-width:0}
.announcements-editor input:not([type=checkbox]),.announcements-editor textarea{width:100%;max-width:100%;box-sizing:border-box;padding:12px;font:inherit;border:1px solid #d9c9df;border-radius:10px;background:#fff}
.announcements-editor input[type=checkbox]{width:20px;height:20px}
.announcement-options label:first-child{display:flex;align-items:center}
.announcement-options label:last-child{max-width:140px}
.announcement-preview{width:100%;max-height:320px;object-fit:contain}
.announcement-notice{white-space:pre-wrap;color:#704578}
.announcement-table-scroll{overflow:auto;max-width:100%}
.announcements-editor table{border-collapse:collapse;min-width:530px;width:100%}
.announcements-editor th,.announcements-editor td{padding:12px;text-align:left;border-bottom:1px solid #e2d8e7}
.announcements-editor th:first-child{overflow-wrap:anywhere;max-width:280px}
.announcements-editor button:disabled{opacity:.5;cursor:default}
@media(min-width:1001px){.academy-intro{grid-template-columns:minmax(270px,.8fr) minmax(0,1.2fr)}}
@media(max-width:1000px){.academy-mobile-layout .academy-intro .intro-feature{padding:0}}
@media(max-width:600px){.announcement-grid{grid-auto-rows:minmax(240px,1fr)}.announcement-cover{min-height:260px}}


.announcement-message a,.announcement-attachment a{color:#704578;text-decoration:underline;text-underline-offset:3px}
.announcement-attachment{margin:10px 0 0;text-align:left;overflow-wrap:anywhere}
.announcement-help{margin:0;color:#635369;font-size:.9rem;overflow-wrap:anywhere}
.announcement-file{margin:0;overflow-wrap:anywhere;display:flex;align-items:center;flex-wrap:wrap;gap:10px}

.announcement-lightbox{width:min(95vw,1100px);box-sizing:border-box;padding:0;overflow:auto;background:#fff;color:#332d37}
.announcement-modal-header{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 20px;background:#fff;border-bottom:1px solid #e2d8e7}
.announcement-modal-header h2{margin:5px 0;font:400 26px/1.25 Georgia,serif;overflow-wrap:anywhere}
.announcement-modal-header button{flex:none;padding:9px 16px;border:1px solid #d9c9df;border-radius:9px;background:#fff;color:#704578;font:600 14px Arial,sans-serif;cursor:pointer}
.announcement-modal-content{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:24px;padding:20px}
.announcement-lightbox .announcement-modal-content img{max-width:100%;width:auto;height:auto;max-height:calc(95dvh - 110px);justify-self:center;object-fit:contain;background:#f5eef7}
.announcement-modal-copy{min-width:0;font:16px/1.6 Arial,sans-serif;overflow-wrap:anywhere}
.announcement-modal-copy .announcement-message{white-space:pre-line}
.announcement-modal-copy a{color:#704578;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.announcement-modal-content{grid-template-columns:minmax(0,1fr);padding:14px;gap:18px}.announcement-modal-header{padding:12px 14px}.announcement-modal-header h2{font-size:22px}}

.announcement-modal-content.announcement-modal-text{grid-template-columns:minmax(0,1fr)}
