/* Bela Module Notice — Frontend styles */
.bela-notice-list { display: flex; flex-direction: column; gap: 12px; }
.bela-notice-card { background: var(--bela-surface, #fff); border: 1px solid var(--bela-border, #e5e5e5); border-radius: 12px; padding: 20px; transition: box-shadow .2s; }
.bela-notice-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.08); }
.bela-notice-card__header { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 8px; }
.bela-notice-card__title { font-size: 17px; font-weight: 600; line-height: 1.3; }
.bela-notice-card__title a { color: var(--bela-text, #1a1814); text-decoration: none; }
.bela-notice-card__title a:hover { color: var(--bela-primary, #1B3A4B); text-decoration: underline; }
.bela-notice-card__meta { display: flex; flex-wrap: wrap; gap: 12px; font-size: 13px; color: var(--bela-text-secondary, #6B6560); }
.bela-notice-card__ref { font-family: var(--bela-font-mono, monospace); }
.bela-badge { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 700; }
.bela-badge--urgent { background: #B83A3A; color: #fff; }
.bela-badge--new { background: #2D5F3E; color: #fff; }
.bela-badge--ending { background: #C4973B; color: #fff; }
.bela-badge--archived { background: #8BA4B0; color: #fff; }
.bela-notice-meta { display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; font-size: 14px; margin: 20px 0; padding: 16px; background: var(--bela-bg-alt, #F0ECE3); border-radius: 8px; }
.bela-notice-meta dt { font-weight: 600; color: var(--bela-primary, #1B3A4B); }
.bela-notice-meta dd { margin: 0; }
.bela-notice-attachments { margin-top: 24px; }
.bela-notice-attachments ul { list-style: none; padding: 0; }
.bela-notice-attachment { display: flex; align-items: center; gap: 10px; padding: 10px 14px; margin-bottom: 6px; background: var(--bela-bg-alt, #F0ECE3); border-radius: 8px; text-decoration: none; color: var(--bela-text, #1a1814); transition: background .15s; }
.bela-notice-attachment:hover { background: var(--bela-border, #e5e5e5); }
.bela-notice-attachment__icon { font-size: 20px; }
.bela-notice-attachment__name { flex: 1; font-weight: 500; }
.bela-notice-attachment__size { font-size: 12px; color: var(--bela-text-muted, #8BA4B0); }
.bela-notice-archive-link { margin-top: 24px; text-align: center; }
.bela-notice-archive-link a { color: var(--bela-secondary, #2D5F3E); font-weight: 600; }
@media (max-width: 768px) { .bela-notice-card__meta { flex-direction: column; gap: 4px; } }
