.elan-announcement-wrap,.elan-history,.elan-dashboard-announcements{box-sizing:border-box;font-family:inherit}.elan-management-header,.elan-dashboard-announcements-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.elan-management-header{margin:0 0 24px}.elan-management-header h2,.elan-history-header h2{margin:0 0 8px;font-size:32px}.elan-management-header p,.elan-history-header p{margin:0;color:#555}.elan-management-card{background:#fff;border-radius:16px;padding:24px;margin:0 0 24px;box-shadow:0 8px 28px rgba(0,0,0,.08)}.elan-filter-form{display:grid;grid-template-columns:1fr 240px auto;gap:12px}.elan-filter-form input,.elan-filter-form select,.elan-editor-form input[type=text],.elan-editor-form input[type=url],.elan-editor-form input[type=datetime-local]{width:100%;min-height:46px;box-sizing:border-box;border:1px solid #ccc;border-radius:8px;padding:10px 14px;background:#fff}.elan-btn{display:inline-block;border:0;border-radius:9px;padding:12px 20px;text-decoration:none;cursor:pointer;font-weight:700;line-height:1.2}.elan-btn-primary{background:#f7c400;color:#111!important}.elan-btn-secondary{background:#111;color:#fff!important}.elan-table-wrap{overflow-x:auto}.elan-table{width:100%;border-collapse:collapse}.elan-table th{background:#111;color:#fff;text-align:left}.elan-table th,.elan-table td{padding:14px 16px;border-bottom:1px solid #ddd;vertical-align:middle}.elan-status{display:inline-block;border-radius:999px;padding:6px 11px;font-size:13px;font-weight:700}.elan-status-published{background:#e8f7df;color:#2d6b12}.elan-status-scheduled{background:#fff3cc;color:#8a6500}.elan-status-unpublished{background:#eee;color:#555}.elan-actions{white-space:nowrap}.elan-actions a,.elan-actions button{margin-right:8px;background:none;border:0;padding:0;cursor:pointer;color:#1d55d9;font-weight:600}.elan-actions .elan-delete{color:#c62828}.elan-inline-form{display:inline}.elan-empty,.elan-empty-history,.elan-no-announcements{text-align:center;color:#666;padding:35px 20px}.elan-form-field{margin:18px 0}.elan-form-field>label{display:block;font-weight:700;margin-bottom:7px}.elan-radio-row{display:flex;gap:25px;flex-wrap:wrap}.elan-radio-row label{font-weight:500}.elan-form-field small{display:block;color:#777;margin-top:6px}.elan-notice{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border-radius:12px;margin:0 0 22px;border:1px solid transparent;box-shadow:0 5px 18px rgba(0,0,0,.05)}.elan-notice-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-weight:800;flex:0 0 28px}.elan-notice-success{background:#edf9e7;color:#245c10;border-color:#cce7bd}.elan-notice-success .elan-notice-icon{background:#4e9b2d;color:#fff}.elan-notice-error{background:#fff0f0;color:#8d1c1c;border-color:#efcaca}.elan-notice-error .elan-notice-icon{background:#c62828;color:#fff}.elan-access-denied{padding:20px;background:#fdeaea;border-radius:10px}.elan-dashboard-announcements{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 7px 25px rgba(0,0,0,.08);border:1px solid #eee}.elan-dashboard-announcements-header{padding:18px 28px;border-bottom:5px solid #f7c400;background:#fff}.elan-dashboard-announcements-title{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.3px}.elan-megaphone{font-size:22px}.elan-view-all{color:#e1ad00;font-weight:700;text-decoration:none}.elan-dashboard-announcements-body{padding:8px 28px}.elan-announcement-card{padding:18px 0;border-bottom:1px solid #ddd}.elan-announcement-card:last-child{border-bottom:0}.elan-announcement-card-title{font-size:20px;font-weight:800;margin-bottom:6px}.elan-announcement-card-content{color:#555;line-height:1.55}.elan-announcement-read-more{display:inline-block;margin-top:8px;color:#111;font-weight:700}.elan-dashboard-announcements-footer{padding:10px 28px 24px}.elan-history-card{background:#fff;border-radius:16px;padding:26px;margin:0 0 22px;box-shadow:0 7px 25px rgba(0,0,0,.07)}.elan-history-card h3,.elan-single-announcement h1{margin-top:0}.elan-history-date{color:#777;font-size:14px;margin-bottom:14px}.elan-history-content{line-height:1.7}.elan-history-content img{max-width:100%;height:auto}@media(max-width:800px){.elan-filter-form{grid-template-columns:1fr}.elan-management-header{align-items:flex-start;flex-direction:column}.elan-dashboard-announcements-header{padding:16px 18px}.elan-dashboard-announcements-body{padding:5px 18px}.elan-announcement-card-title{font-size:18px}}

.elan-dashboard-announcements-classic{border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 8px 28px rgba(0,0,0,.10);border:0}
.elan-dashboard-announcements-classic .elan-dashboard-announcements-header{background:#000;color:#fff;border-bottom:0;padding:22px 28px;min-height:88px}
.elan-dashboard-announcements-classic .elan-dashboard-announcements-title{font-size:24px;letter-spacing:0;font-weight:600}
.elan-dashboard-announcements-classic .elan-megaphone{font-size:30px}
.elan-dashboard-announcements-classic .elan-view-all{color:#f7c400;font-size:16px}
.elan-dashboard-announcements-classic .elan-dashboard-announcements-body{padding:8px 28px 0;background:#fff}
.elan-dashboard-announcements-classic .elan-announcement-card{padding:20px 0;border-bottom:1px solid #d9d9d9}
.elan-dashboard-announcements-classic .elan-announcement-card:last-child{border-bottom:0}
.elan-dashboard-announcements-classic .elan-announcement-card-title{font-size:20px;line-height:1.3;margin:0 0 7px;color:#222}
.elan-dashboard-announcements-classic .elan-announcement-card-content{font-size:16px;line-height:1.55;color:#4f4f4f}
.elan-dashboard-announcements-classic .elan-announcement-read-more{margin-top:9px;color:#111}
.elan-dashboard-announcements-classic .elan-no-announcements{padding:52px 20px;font-size:18px;line-height:1.6}
.elan-dashboard-announcements-classic .elan-dashboard-announcements-footer{padding:16px 28px 26px}
.elan-dashboard-announcements-classic .elan-dashboard-announcements-footer .elan-btn{font-size:16px;padding:13px 24px}
@media(max-width:800px){
  .elan-dashboard-announcements-classic .elan-dashboard-announcements-header{padding:18px 20px}
  .elan-dashboard-announcements-classic .elan-dashboard-announcements-title{font-size:20px}
  .elan-dashboard-announcements-classic .elan-dashboard-announcements-body{padding:4px 20px 0}
  .elan-dashboard-announcements-classic .elan-dashboard-announcements-footer{padding:14px 20px 22px}
}


/* ELAN v1.3.1 — Brand button overrides.
   Keep announcement-management controls consistent with the EL Alumni website
   and prevent Elementor/theme global hover styles (including pink) from leaking in. */
.elan-announcement-wrap .elan-btn,
.elan-announcement-wrap .elan-actions .elan-action-btn,
.elan-announcement-wrap .elan-actions a.elan-action-btn,
.elan-announcement-wrap .elan-actions button.elan-action-btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    min-height: 40px !important;
    padding: 10px 16px !important;
    margin: 0 7px 0 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
    transition: background-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

.elan-announcement-wrap .elan-btn-primary,
.elan-announcement-wrap .elan-actions .elan-action-primary {
    background: #f7c400 !important;
    color: #111111 !important;
    box-shadow: none !important;
}

.elan-announcement-wrap .elan-btn-primary:hover,
.elan-announcement-wrap .elan-btn-primary:focus,
.elan-announcement-wrap .elan-btn-primary:active,
.elan-announcement-wrap .elan-actions .elan-action-primary:hover,
.elan-announcement-wrap .elan-actions .elan-action-primary:focus,
.elan-announcement-wrap .elan-actions .elan-action-primary:active {
    background: #000000 !important;
    color: #ffffff !important;
    box-shadow: none !important;
    outline: none !important;
}

.elan-announcement-wrap .elan-btn-secondary,
.elan-announcement-wrap .elan-actions .elan-action-secondary {
    background: #000000 !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.elan-announcement-wrap .elan-btn-secondary:hover,
.elan-announcement-wrap .elan-btn-secondary:focus,
.elan-announcement-wrap .elan-btn-secondary:active,
.elan-announcement-wrap .elan-actions .elan-action-secondary:hover,
.elan-announcement-wrap .elan-actions .elan-action-secondary:focus,
.elan-announcement-wrap .elan-actions .elan-action-secondary:active {
    background: #f7c400 !important;
    color: #111111 !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Action row: Edit = black, Publish/Unpublish = ELAN yellow, Delete = black.
   All hover states stay within the site's black/yellow brand palette. */
.elan-announcement-wrap .elan-actions .elan-action-edit {
    background: #000000 !important;
    color: #ffffff !important;
}

.elan-announcement-wrap .elan-actions .elan-action-edit:hover,
.elan-announcement-wrap .elan-actions .elan-action-edit:focus,
.elan-announcement-wrap .elan-actions .elan-action-edit:active {
    background: #f7c400 !important;
    color: #111111 !important;
}

.elan-announcement-wrap .elan-actions .elan-action-publish {
    background: #f7c400 !important;
    color: #111111 !important;
}

.elan-announcement-wrap .elan-actions .elan-action-publish:hover,
.elan-announcement-wrap .elan-actions .elan-action-publish:focus,
.elan-announcement-wrap .elan-actions .elan-action-publish:active {
    background: #000000 !important;
    color: #ffffff !important;
}

.elan-announcement-wrap .elan-actions .elan-action-delete {
    background: #000000 !important;
    color: #ffffff !important;
}

.elan-announcement-wrap .elan-actions .elan-action-delete:hover,
.elan-announcement-wrap .elan-actions .elan-action-delete:focus,
.elan-announcement-wrap .elan-actions .elan-action-delete:active {
    background: #f7c400 !important;
    color: #111111 !important;
}

/* Remove the old link/button styling that caused blue/pink controls. */
.elan-announcement-wrap .elan-actions a,
.elan-announcement-wrap .elan-actions button {
    border: 0 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}

/* Keyboard focus remains accessible without introducing theme colors. */
.elan-announcement-wrap .elan-actions a:focus-visible,
.elan-announcement-wrap .elan-actions button:focus-visible,
.elan-announcement-wrap .elan-btn:focus-visible {
    outline: 2px solid #111111 !important;
    outline-offset: 2px !important;
}


/* ELAN v1.3.2 — Dashboard excerpt expand/collapse */
.elan-dashboard-announcements .elan-announcement-card-content {
    font-size: 16px;
    line-height: 1.55;
}

.elan-dashboard-announcements .elan-announcement-excerpt-short,
.elan-dashboard-announcements .elan-announcement-excerpt-full {
    white-space: normal;
}

.elan-dashboard-announcements .elan-announcement-toggle {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 0 3px !important;
    padding: 0 !important;
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    color: #111111 !important;
    font: inherit !important;
    font-weight: 700 !important;
    line-height: inherit !important;
    cursor: pointer !important;
    text-decoration: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
    outline: none !important;
    vertical-align: baseline !important;
}

.elan-dashboard-announcements .elan-announcement-toggle:hover,
.elan-dashboard-announcements .elan-announcement-toggle:focus,
.elan-dashboard-announcements .elan-announcement-toggle:active,
.elan-dashboard-announcements .elan-announcement-toggle:focus-visible {
    background: transparent !important;
    background-image: none !important;
    color: #111111 !important;
    border: 0 !important;
    border-width: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    text-shadow: none !important;
}


/* ELAN v1.3.2 — Front-end WordPress editor.
   Prevent theme/Elementor pink hover styles from leaking into Visual/Code tabs. */
.elan-announcement-wrap .wp-editor-wrap,
.elan-announcement-wrap .wp-editor-container {
    max-width: 100%;
}

.elan-announcement-wrap .wp-editor-wrap .wp-editor-tabs {
    display: flex !important;
    align-items: flex-end !important;
    gap: 4px !important;
}

.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: relative !important;
    top: 1px !important;
    margin: 0 !important;
    padding: 7px 12px !important;
    min-height: 34px !important;
    border: 1px solid #d7d7d7 !important;
    border-bottom: 0 !important;
    border-radius: 6px 6px 0 0 !important;
    background: #f5f5f5 !important;
    color: #222 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-weight: 600 !important;
    cursor: pointer !important;
}

.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor:hover,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor:focus,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor:active {
    background: #f5f5f5 !important;
    color: #222 !important;
    border-color: #d7d7d7 !important;
    box-shadow: none !important;
    outline: none !important;
}

.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor.switch-tmce,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor.switch-html {
    color: #222 !important;
}

.elan-announcement-wrap .wp-editor-wrap.tmce-active .switch-tmce,
.elan-announcement-wrap .wp-editor-wrap.html-active .switch-html,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor[aria-pressed="true"],
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor.active {
    background: #f7c400 !important;
    color: #111 !important;
    border-color: #f7c400 !important;
}

.elan-announcement-wrap .wp-editor-wrap.tmce-active .switch-tmce:hover,
.elan-announcement-wrap .wp-editor-wrap.html-active .switch-html:hover,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor[aria-pressed="true"]:hover,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor.active:hover {
    background: #f7c400 !important;
    color: #111 !important;
}

.elan-announcement-wrap .wp-editor-wrap .wp-editor-container {
    border: 1px solid #d7d7d7 !important;
    border-radius: 0 6px 6px 6px !important;
    overflow: hidden !important;
}

.elan-announcement-wrap .wp-editor-wrap .mce-toolbar-grp,
.elan-announcement-wrap .wp-editor-wrap .quicktags-toolbar {
    background: #f7c400 !important;
}

.elan-announcement-wrap .wp-editor-wrap .mce-btn:hover,
.elan-announcement-wrap .wp-editor-wrap .mce-btn:focus,
.elan-announcement-wrap .wp-editor-wrap .qt-dfw:hover {
    background: #e2b200 !important;
    border-color: #d3a500 !important;
    color: #111 !important;
}

/* Rich content on the historical announcement page */
.elan-history-content p {
    margin: 0 0 16px;
}

.elan-history-content p:last-child {
    margin-bottom: 0;
}

.elan-history-content ul,
.elan-history-content ol {
    margin: 0 0 18px 24px;
    padding-left: 20px;
}

.elan-history-content li {
    margin-bottom: 7px;
}

.elan-history-content a {
    color: #111 !important;
    text-decoration: underline;
    font-weight: 600;
}

.elan-history-content a:hover {
    color: #f0bf17 !important;
}

.elan-history-content blockquote {
    margin: 18px 0;
    padding: 14px 18px;
    border-left: 4px solid #f7c400;
    background: #fafafa;
}

.elan-history-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 18px 0;
}

.elan-history-content th,
.elan-history-content td {
    padding: 10px 12px;
    border: 1px solid #ddd;
    text-align: left;
}

.elan-history-content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 14px 0;
}

@media (max-width: 800px) {
    .elan-history-content {
        font-size: 15px;
        line-height: 1.65;
    }
}


/* ELAN v1.3.3 — Final editor/form fixes
   The WordPress editor is now inside the announcement form, so media/content
   submitted by Visual or Code mode is reliably saved. These rules also fully
   neutralize theme/Elementor pink hover styles around the editor. */

.elan-announcement-wrap .elan-editor-field {
    margin-top: 10px;
}

.elan-announcement-wrap .elan-editor-form .wp-editor-wrap {
    width: 100%;
    margin: 0;
}

.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .wp-media-buttons {
    padding: 0 0 8px;
}

.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .add_media,
.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .media-button {
    background: #f7c400 !important;
    border: 0 !important;
    border-radius: 7px !important;
    color: #111 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-weight: 700 !important;
}

.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .add_media:hover,
.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .add_media:focus,
.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .add_media:active,
.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .media-button:hover,
.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .media-button:focus,
.elan-announcement-wrap .elan-editor-form .wp-editor-wrap .media-button:active {
    background: #000 !important;
    border-color: #000 !important;
    color: #fff !important;
    box-shadow: none !important;
    outline: none !important;
}

.elan-announcement-wrap .elan-form-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 22px;
}

.elan-announcement-wrap .elan-actions {
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
}

.elan-announcement-wrap .elan-actions .elan-inline-form {
    display: inline-flex;
    margin: 0;
}

.elan-announcement-wrap .elan-actions a.elan-action-btn,
.elan-announcement-wrap .elan-actions button.elan-action-btn {
    margin: 0 !important;
}

.elan-announcement-wrap .elan-actions a.elan-action-edit {
    background: #000 !important;
    color: #fff !important;
}

.elan-announcement-wrap .elan-actions a.elan-action-edit:hover,
.elan-announcement-wrap .elan-actions a.elan-action-edit:focus,
.elan-announcement-wrap .elan-actions a.elan-action-edit:active {
    background: #f7c400 !important;
    color: #111 !important;
}

/* Never allow the site's/Elementor's pink accent to override announcement
   controls, editor tabs, or WordPress editor buttons. */
.elan-announcement-wrap .wp-editor-wrap button:hover,
.elan-announcement-wrap .wp-editor-wrap button:focus,
.elan-announcement-wrap .wp-editor-wrap button:active,
.elan-announcement-wrap .wp-editor-wrap a:hover,
.elan-announcement-wrap .wp-editor-wrap a:focus,
.elan-announcement-wrap .wp-editor-wrap a:active {
    text-shadow: none !important;
}

.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor:hover,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor:focus,
.elan-announcement-wrap .wp-editor-wrap .wp-switch-editor:active {
    background: #f5f5f5 !important;
    color: #222 !important;
}

.elan-announcement-wrap .wp-editor-wrap.tmce-active .switch-tmce:hover,
.elan-announcement-wrap .wp-editor-wrap.html-active .switch-html:hover {
    background: #f7c400 !important;
    color: #111 !important;
}

/* Historical announcement formatting */
.elan-history-card {
    overflow: hidden;
}

.elan-history-content {
    overflow-wrap: anywhere;
    word-break: normal;
}

.elan-history-content > p:first-child {
    margin-top: 0;
}

.elan-history-content > p {
    display: block;
    margin: 0 0 16px;
}

.elan-history-content > p:last-child {
    margin-bottom: 0;
}

.elan-history-content br {
    line-height: 1.7;
}

.elan-history-content h1,
.elan-history-content h2,
.elan-history-content h3,
.elan-history-content h4,
.elan-history-content h5,
.elan-history-content h6 {
    margin: 22px 0 12px;
    line-height: 1.3;
}

.elan-history-content strong,
.elan-history-content b {
    font-weight: 700;
}

.elan-history-content em,
.elan-history-content i {
    font-style: italic;
}

.elan-history-content .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.elan-history-content .alignright {
    float: right;
    margin: 0 0 14px 20px;
}

.elan-history-content .alignleft {
    float: left;
    margin: 0 20px 14px 0;
}

@media (max-width: 800px) {
    .elan-announcement-wrap .elan-actions {
        align-items: stretch;
    }

    .elan-announcement-wrap .elan-actions .elan-action-btn {
        min-width: 80px;
    }

    .elan-history-content .alignright,
    .elan-history-content .alignleft {
        float: none;
        margin: 14px 0;
    }
}


/* ELAN v1.3.6 — Dashboard announcement toggle
 * The toggle is intentionally a span, not a button, so Elementor/theme
 * button styles cannot turn it into a large coloured square.
 */
.elan-dashboard-announcements .elan-announcement-toggle {
    display: inline !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: none !important;
    margin: 0 0 0 4px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    outline: none !important;
    color: #111 !important;
    font: inherit !important;
    font-weight: 700 !important;
    line-height: inherit !important;
    text-decoration: none !important;
    vertical-align: baseline !important;
    cursor: pointer !important;
}

.elan-dashboard-announcements .elan-announcement-toggle:hover,
.elan-dashboard-announcements .elan-announcement-toggle:focus,
.elan-dashboard-announcements .elan-announcement-toggle:active,
.elan-dashboard-announcements .elan-announcement-toggle:focus-visible {
    display: inline !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 0 0 4px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    outline: none !important;
    color: #111 !important;
    text-decoration: underline !important;
}

.elan-dashboard-announcements .elan-view-all,
.elan-dashboard-announcements .elan-dashboard-announcements-footer {
    display: none !important;
}
