/*
 * Lifted VERBATIM from two PHP includes that carry their own <style> block:
 *   app/includes/welcome-banner.php:152-175  (.wb-popup*)
 *   app/includes/news-popup.php:128-153      (.np-popup*)
 *
 * These rules are NOT in app/css/app.css, so styles:check does not cover
 * them — they live in the includes, inline, and the member layout links this
 * file after app.css to keep the same cascade order. Edit the PHP and re-lift
 * rather than editing here.
 */

/* ─── welcome-banner.php ─── */
.wb-popup{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;animation:wbPopupIn .25s ease-out both}
.wb-popup--closing{animation:wbPopupOut .2s ease-out forwards}
.wb-popup__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(2px)}
.wb-popup__card{position:relative;z-index:1;max-width:440px;width:100%;max-height:90vh;background:var(--el-paper,#fff);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 18px 50px rgba(0,0,0,.25);animation:wbCardIn .35s cubic-bezier(.34,1.56,.64,1) both}
.wb-popup__close{position:absolute;top:10px;right:10px;z-index:2;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;display:grid;place-items:center;font-size:20px;border:none;cursor:pointer;transition:background .15s}
.wb-popup__close:hover{background:rgba(0,0,0,.65)}
.wb-popup__image{width:100%;height:auto;display:block;max-height:65vh;object-fit:contain;background:#f5f5f5;flex-shrink:0}
.wb-popup__body{padding:16px 18px 6px;overflow-y:auto;flex:1}
.wb-popup__title{font-weight:800;font-size:18px;line-height:1.3;color:var(--el-ink-900,#0B1B1F);margin-bottom:8px}
.wb-popup__summary{font-size:14px;color:var(--el-ink-700,#1F3A42);margin-bottom:12px;line-height:1.5}
.wb-popup__content{font-size:13px;color:var(--el-ink-600,#3B5862);line-height:1.6;word-wrap:break-word}
.wb-popup__content p{margin:0 0 8px}
.wb-popup__content a{color:var(--el-primary-600,#D32F2F);text-decoration:underline}
.wb-popup__content strong{color:var(--el-ink-900,#0B1B1F)}
.wb-popup__gallery{display:flex;gap:8px;overflow-x:auto;padding:8px 14px;background:#FAFCFD;border-top:1px solid var(--el-ink-100,#EEF3F5);flex-shrink:0}
.wb-popup__gallery img{width:120px;height:80px;object-fit:cover;border-radius:8px;flex-shrink:0;border:1px solid var(--el-ink-100,#EEF3F5)}
.wb-popup__actions{padding:12px 16px 16px;background:var(--el-paper,#fff);flex-shrink:0;border-top:1px solid var(--el-ink-100,#EEF3F5)}
.wb-popup__cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;background:linear-gradient(135deg,var(--el-primary-500,#E53935),var(--el-primary-700,#C62828));color:#fff;font-weight:600;font-size:15px;border-radius:10px;text-decoration:none;transition:transform .15s}
.wb-popup__cta:active{transform:scale(.97)}
.wb-popup__cta i{font-size:18px}
@keyframes wbPopupIn{from{opacity:0}to{opacity:1}}
@keyframes wbPopupOut{from{opacity:1}to{opacity:0}}
@keyframes wbCardIn{from{transform:translateY(20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}

/* ─── news-popup.php ─── */
.np-popup{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;padding:16px;animation:npPopupIn .25s ease-out both}
.np-popup--closing{animation:npPopupOut .2s ease-out forwards}
.np-popup__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(2px)}
.np-popup__card{position:relative;z-index:1;max-width:440px;width:100%;max-height:90vh;background:var(--el-paper,#fff);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 18px 50px rgba(0,0,0,.25);animation:npCardIn .35s cubic-bezier(.34,1.56,.64,1) both}
.np-popup__close{position:absolute;top:10px;right:10px;z-index:2;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;display:grid;place-items:center;font-size:20px;border:none;cursor:pointer;transition:background .15s}
.np-popup__close:hover{background:rgba(0,0,0,.65)}
.np-popup__image{width:100%;height:auto;display:block;max-height:65vh;object-fit:contain;background:#f5f5f5;flex-shrink:0}
.np-popup__body{padding:16px 18px 6px;overflow-y:auto;flex:1}
.np-popup__tag{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;background:var(--el-primary-50,#FFEBEE);color:var(--el-primary-700,#C62828);margin-bottom:8px;letter-spacing:.5px;text-transform:uppercase}
.np-popup__title{font-weight:800;font-size:18px;line-height:1.3;color:var(--el-ink-900,#0B1B1F);margin-bottom:8px}
.np-popup__summary{font-size:14px;color:var(--el-ink-700,#1F3A42);margin-bottom:12px;line-height:1.5}
.np-popup__content{font-size:13px;color:var(--el-ink-600,#3B5862);line-height:1.6;word-wrap:break-word}
.np-popup__content p{margin:0 0 8px}
.np-popup__content a{color:var(--el-primary-600,#D32F2F);text-decoration:underline}
.np-popup__content strong{color:var(--el-ink-900,#0B1B1F)}
.np-popup__gallery{display:flex;gap:8px;overflow-x:auto;padding:8px 14px;background:#FAFCFD;border-top:1px solid var(--el-ink-100,#EEF3F5);flex-shrink:0}
.np-popup__gallery img{width:120px;height:80px;object-fit:cover;border-radius:8px;flex-shrink:0;border:1px solid var(--el-ink-100,#EEF3F5)}
.np-popup__actions{padding:12px 16px 16px;background:var(--el-paper,#fff);flex-shrink:0;border-top:1px solid var(--el-ink-100,#EEF3F5)}
.np-popup__cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;background:linear-gradient(135deg,var(--el-primary-500,#E53935),var(--el-primary-700,#C62828));color:#fff;font-weight:600;font-size:15px;border-radius:10px;text-decoration:none;transition:transform .15s}
.np-popup__cta:active{transform:scale(.97)}
.np-popup__cta i{font-size:18px}
@keyframes npPopupIn{from{opacity:0}to{opacity:1}}
@keyframes npPopupOut{from{opacity:1}to{opacity:0}}
@keyframes npCardIn{from{transform:translateY(20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
