/* Kandungan kaya (hasil editor pengumuman) — dipaparkan dalam suapan, halaman hadapan dan pratonton. Hanya tag putih wujud. */
.cb-rich > * + * { margin-top: .6rem; }
.cb-rich p { margin: 0; }
.cb-rich strong { font-weight: 700; }
.cb-rich em { font-style: italic; }
.cb-rich u { text-decoration: underline; text-underline-offset: 2px; }
.cb-rich s { text-decoration: line-through; }
.cb-rich h3 { font-size: 1.05rem; font-weight: 700; margin-top: 1rem; }
.cb-rich ul { list-style: disc; padding-left: 1.4rem; }
.cb-rich ol { list-style: decimal; padding-left: 1.4rem; }
.cb-rich li { margin: .15rem 0; }
.cb-rich blockquote { border-left: 3px solid rgb(var(--c-gold-400, 200 160 60)); padding: .15rem 0 .15rem .85rem; color: rgb(var(--c-gray-600, 75 85 99)); font-style: italic; }
.cb-rich a { color: rgb(var(--c-blue-700, 29 78 216)); text-decoration: underline; text-underline-offset: 2px; word-break: break-word; }
.cb-rich a:hover { color: rgb(var(--c-blue-800, 30 64 175)); }

/* Editor */
.pl-editor { border: 1px solid rgb(var(--c-gray-300, 209 213 219)); border-radius: .75rem; background: rgb(var(--c-surface, 255 255 255)); }
.pl-editor:focus-within { border-color: rgb(var(--c-blue-500, 59 130 246)); box-shadow: 0 0 0 2px rgb(var(--c-blue-500, 59 130 246) / .25); }
.pl-editor-bar { display: flex; flex-wrap: wrap; gap: .25rem; padding: .4rem; border-bottom: 1px solid rgb(var(--c-gray-200, 229 231 235)); background: rgb(var(--c-gray-50, 249 250 251)); border-radius: .75rem .75rem 0 0; position: relative; }
.pl-editor-bar button { min-width: 36px; min-height: 36px; padding: 0 .55rem; border-radius: .5rem; font-size: .875rem; color: rgb(var(--c-gray-800, 31 41 55)); background: transparent; border: 1px solid transparent; cursor: pointer; }
.pl-editor-bar button:hover { background: rgb(var(--c-gray-200, 229 231 235)); }
.pl-editor-bar button[aria-pressed="true"] { background: rgb(var(--c-blue-100, 219 234 254)); border-color: rgb(var(--c-blue-300, 147 197 253)); }
.pl-editor-sep { width: 1px; background: rgb(var(--c-gray-300, 209 213 219)); margin: .25rem .15rem; }
.pl-editor-area { min-height: 11rem; max-height: 28rem; overflow-y: auto; padding: .75rem .9rem; outline: none; font-size: .9375rem; line-height: 1.6; }
.pl-editor-area:empty::before { content: attr(data-placeholder); color: rgb(var(--c-gray-500, 107 114 128)); pointer-events: none; }
.pl-emoji-pop { position: absolute; z-index: 30; top: 100%; left: .4rem; margin-top: .25rem; width: min(20rem, calc(100vw - 2rem)); max-height: 14rem; overflow-y: auto; padding: .5rem; border-radius: .75rem; background: rgb(var(--c-surface, 255 255 255)); border: 1px solid rgb(var(--c-gray-200, 229 231 235)); box-shadow: 0 10px 24px rgba(0,0,0,.18); }
.pl-emoji-pop[hidden] { display: none; }
.pl-emoji-pop .eg { display: grid; grid-template-columns: repeat(8, 1fr); gap: 2px; }
.pl-emoji-pop button { min-width: 0; font-size: 1.25rem; min-height: 36px; padding: 0; }

/* Lightbox imej */
.pl-lb { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; background: rgba(8, 12, 10, .92); }
.pl-lb[hidden] { display: none; }
.pl-lb-stage { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 3.5rem 3.5rem 4rem; }
.pl-lb-img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: .5rem; box-shadow: 0 20px 60px rgba(0,0,0,.5); transition: opacity .15s; }
.pl-lb-spin { position: absolute; width: 2.25rem; height: 2.25rem; border: 3px solid rgba(255,255,255,.3); border-top-color: #fff; border-radius: 9999px; animation: pl-lb-spin .8s linear infinite; }
.pl-lb-spin[hidden] { display: none; }
@keyframes pl-lb-spin { to { transform: rotate(360deg); } }
.pl-lb-btn { position: absolute; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 9999px; border: 0; background: rgba(255,255,255,.14); color: #fff; font-size: 1.75rem; line-height: 1; cursor: pointer; }
.pl-lb-btn:hover { background: rgba(255,255,255,.28); }
.pl-lb-btn:focus-visible { outline: 2px solid #fff !important; outline-offset: 2px; }
.pl-lb-btn[hidden] { display: none; }
.pl-lb-close { top: .75rem; right: .75rem; font-size: 2rem; }
.pl-lb-prev { left: .75rem; top: 50%; transform: translateY(-50%); }
.pl-lb-next { right: .75rem; top: 50%; transform: translateY(-50%); }
.pl-lb-bar { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 1.25rem; color: #fff; font-size: .875rem; background: linear-gradient(transparent, rgba(0,0,0,.55)); }
.pl-lb-cap { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pl-lb-cnt { white-space: nowrap; opacity: .85; }
html.pl-lb-open { overflow: hidden; }
@media (max-width: 640px) { .pl-lb-stage { padding: 3.5rem .5rem 3.5rem; } .pl-lb-prev { left: .25rem; } .pl-lb-next { right: .25rem; } }
