.asp-board{max-width:1100px;margin:24px auto;padding:16px;color:#251f2d}.asp-board-heading{background:#fff;border-radius:22px;padding:30px;margin-bottom:22px;border:1px solid #f2dae0}.asp-board-heading>span{font-size:12px;font-weight:800;letter-spacing:.12em;color:#cd1226}.asp-board-heading h1{font-size:clamp(27px,4vw,42px);margin:8px 0}.asp-board-filters,.asp-board-editor form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding:18px;background:#fff;border-radius:16px;margin-bottom:22px}.asp-board label{display:grid;gap:6px;font-weight:700;flex:1 1 230px}.asp-board input,.asp-board select,.asp-board textarea{padding:12px;border-radius:10px;border:1px solid #d7cbd5;max-width:100%;width:100%;font:inherit;box-sizing:border-box}.asp-board button,.asp-board-button{display:inline-block;padding:12px 18px;background:#db101b;color:white!important;border:0;border-radius:10px;text-decoration:none;font-weight:800;cursor:pointer}.asp-board-list{display:grid;gap:17px}.asp-board-item{background:#fff;border:1px solid #f1d9df;padding:24px;border-radius:18px;box-shadow:0 8px 20px #00000008}.asp-board-item time{color:#bc2132;font-weight:800}.asp-board-item h2{margin:9px 0 16px;color:inherit;font-size:clamp(20px,3vw,29px)}.asp-board-image{max-height:390px;max-width:100%;height:auto;object-fit:contain;border-radius:12px;margin-bottom:15px}.asp-board-description{line-height:1.7;overflow-wrap:anywhere}.asp-board-editor{background:#fff;padding:20px;border-radius:16px;margin-bottom:20px}.asp-board-editor summary{cursor:pointer;font-weight:800}.asp-board-editor textarea{min-height:170px}.asp-board-edit{margin-left:14px}.asp-board-status{margin-left:10px;opacity:.7}.asp-board-pagination{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.asp-board-pagination a{padding:9px 12px;background:#fff;border-radius:8px;color:#981326!important}.asp-board-pagination a[aria-current]{background:#d21c32;color:white!important}.asp-root[data-asp-theme=dark] .asp-board,.asp-root.asp-dark .asp-board,.asp-root[data-theme=dark] .asp-board{color:#f9f5ff}.asp-root[data-asp-theme=dark] .asp-board-heading,.asp-root[data-asp-theme=dark] .asp-board-filters,.asp-root[data-asp-theme=dark] .asp-board-item,.asp-root[data-asp-theme=dark] .asp-board-editor,.asp-root.asp-dark .asp-board-heading,.asp-root.asp-dark .asp-board-filters,.asp-root.asp-dark .asp-board-item,.asp-root.asp-dark .asp-board-editor{background:#21182e;color:#fff;border-color:#583479}.asp-root[data-asp-theme=dark] .asp-board-button,.asp-root.asp-dark .asp-board-button{background:#7d35e8}@media(prefers-color-scheme:dark){.asp-root .asp-board-heading,.asp-root .asp-board-filters,.asp-root .asp-board-item,.asp-root .asp-board-editor{color:inherit}}
@media(max-width:600px){.asp-board{padding:8px}.asp-board-heading,.asp-board-item{padding:18px}.asp-board-filters{display:grid}.asp-board label{min-width:0}}
/* Explicitly match the application's real dark-theme attribute. */
.asp-dashboard-view[data-theme="dark"] .asp-board{color:#fff}
.asp-dashboard-view[data-theme="dark"] .asp-board-heading,.asp-dashboard-view[data-theme="dark"] .asp-board-filters,.asp-dashboard-view[data-theme="dark"] .asp-board-item,.asp-dashboard-view[data-theme="dark"] .asp-board-editor{background:#1b1525;color:#fff;border:1px solid #513274}
.asp-dashboard-view[data-theme="dark"] .asp-board input,.asp-dashboard-view[data-theme="dark"] .asp-board select,.asp-dashboard-view[data-theme="dark"] .asp-board textarea{background:#2b2139;color:#fff;border-color:#664484}
.asp-dashboard-view[data-theme="dark"] .asp-board-heading>span,.asp-dashboard-view[data-theme="dark"] .asp-board-item time{color:#b58bff}
.asp-dashboard-view[data-theme="dark"] .asp-board button,.asp-dashboard-view[data-theme="dark"] .asp-board-button{background:#7837d2;color:#fff}

/* 3.59 bulletin month/year selects */
.asp-board-filters select{min-width:145px;min-height:43px;padding:10px 12px;border-radius:10px;border:1px solid #d8cfe5;background:#fff;color:#23142f;font:inherit}
.asp-board-editor input[type="datetime-local"]{display:block;max-width:100%;min-height:43px;padding:9px 12px;border-radius:10px;border:1px solid #d8cfe5;background:#fff;color:#23142f;font:inherit}
.asp-root.asp-dark .asp-board-filters select,.asp-root.asp-dark .asp-board-editor input[type="datetime-local"],[data-theme="dark"] .asp-board-filters select,[data-theme="dark"] .asp-board-editor input[type="datetime-local"]{background:#241a33;border-color:#685083;color:#fff}

/* v3.63: Unified dark-mode contrast for permanent announcements.
   The dashboard (not .asp-root) owns the active theme attribute. */
.asp-dashboard-view[data-theme="dark"] .asp-board {color:#f8f5ff!important;color-scheme:dark;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(.asp-board-heading,.asp-board-filters,.asp-board-editor,.asp-board-item) {background:#191321!important;color:#f8f5ff!important;border:1px solid #584074!important;box-shadow:none;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(.asp-board-heading,.asp-board-filters,.asp-board-editor,.asp-board-item) :is(h1,h2,h3,p,label,summary,span,small,strong,legend) {color:#f8f5ff;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(.asp-board-heading>span,.asp-board-item time) {color:#d1b7ff!important;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {background:#2b203a!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid #755a96!important;color-scheme:dark;opacity:1;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(input,textarea)::placeholder {color:#cec0de!important;-webkit-text-fill-color:#cec0de!important;opacity:1;}
.asp-dashboard-view[data-theme="dark"] .asp-board input[type="file"] {min-width:0;overflow:hidden;}
.asp-dashboard-view[data-theme="dark"] .asp-board input[type="file"]::file-selector-button {background:#48315f;color:#fff;border:1px solid #9875ba;border-radius:7px;padding:9px;margin-right:10px;cursor:pointer;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(button,.asp-board-button,.asp-board-pagination a[aria-current]) {background:#7433c4!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#9364de!important;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(.asp-board-filters a,.asp-board-edit,.asp-board-pagination a:not([aria-current])) {color:#e2cdff!important;-webkit-text-fill-color:#e2cdff!important;}
.asp-dashboard-view[data-theme="dark"] .asp-board .asp-board-pagination a:not([aria-current]) {background:#30213e!important;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(input,select,textarea,button,a,summary):focus-visible {outline:3px solid #c6a0ff;outline-offset:2px;}
.asp-dashboard-view[data-theme="dark"] .asp-board :is(input[type="checkbox"],input[type="radio"]) {accent-color:#a76df4;}

/* v3.64: style the INNER bulletin form, not only its details wrapper. */
.asp-dashboard-view[data-theme=dark] .asp-board .asp-board-editor form,
.asp-dashboard-view[data-theme=dark] .asp-board .asp-board-filters {background:#21192c!important;color:#f8f4ff!important;border:1px solid #503c68!important;box-shadow:none!important;}
.asp-dashboard-view[data-theme=dark] .asp-board .asp-board-editor form :is(label,small,span,p) {color:#f8f4ff!important;}
.asp-dashboard-view[data-theme=dark] .asp-board input[type=checkbox] {width:18px!important;height:18px!important;min-width:18px!important;padding:0!important;accent-color:#934ff6!important;}

/* v3.65 – Friendly content management forms */
.asp-announcement-form .asp-popup-media[hidden]{display:none!important}
.asp-announcement-form .asp-popup-media{display:grid;gap:12px;padding:18px;border:1px solid #5d4578;border-radius:14px;background:#20182d}
.asp-announcement-form .asp-popup-media label{display:grid;gap:8px}
.asp-announcement-form .asp-announcement-help{margin:0 0 8px;opacity:.85}
.asp-current-image{display:grid;gap:8px;justify-items:start}
.asp-current-image img{display:block;max-width:220px;max-height:160px;width:auto;height:auto;object-fit:contain;border-radius:10px}
.asp-current-image .asp-remove-image{display:flex!important;align-items:center;gap:10px;font-weight:500}
.asp-current-image .asp-remove-image input{width:18px!important;height:18px!important;min-width:18px!important;margin:0!important;padding:0!important}
.asp-board .asp-board-edit-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px!important;align-items:start!important;padding:24px!important}
.asp-board .asp-board-edit-form>label,.asp-board .asp-board-edit-form>.asp-board-image-field{min-width:0;width:100%;flex:none}
.asp-board .asp-board-edit-form .asp-board-details-field{grid-column:1/-1}
.asp-board .asp-board-edit-form textarea{min-height:145px!important;resize:vertical}
.asp-board .asp-board-edit-form .asp-board-image-field{display:grid;gap:10px}
.asp-board .asp-board-edit-form .asp-board-image-field label{min-width:0}
.asp-board .asp-board-edit-form .asp-board-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px}
.asp-board .asp-board-edit-form .asp-board-actions button{width:auto!important;min-width:200px}
.asp-board .asp-board-edit-form input[type=file]{font-size:14px!important}
.asp-board .asp-board-edit-form :is(input,select,textarea){min-width:0}
.asp-dashboard-view[data-theme=dark] .asp-board .asp-board-edit-form{background:#21192c!important;border:1px solid #523d6e!important}
.asp-dashboard-view[data-theme=dark] .asp-board .asp-board-edit-form :is(label,small,span){color:#f9f5ff!important}
@media(max-width:720px){.asp-board .asp-board-edit-form{grid-template-columns:minmax(0,1fr);padding:16px!important}.asp-board .asp-board-edit-form .asp-board-actions button{width:100%!important}}
