.resource-heading,.resource-actions,.resource-dialog-top {display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.resource-heading h2 {margin:.3rem 0}
.resource-blog .btn,.resource-dialog .btn {cursor:pointer;font:inherit;font-size:.85rem;border:1px solid var(--line);background:#fff4fa;color:var(--primary-strong);padding:.7rem 1rem;border-radius:12px;text-decoration:none}
.resource-blog .btn-primary,.resource-dialog .btn-primary {background:var(--primary-strong);color:white}
.resource-blog button:disabled,.resource-dialog button:disabled {opacity:.6;cursor:wait}
.resource-filters {display:grid;grid-template-columns:2fr 1fr auto;gap:1rem;align-items:end;margin:1.5rem 0}
.resource-filters label,.resource-form label,.resource-comment-form label {display:grid;gap:.4rem;font-size:.85rem;font-weight:600}
.resource-blog input:not([type=checkbox]),.resource-blog select,.resource-dialog input:not([type=checkbox]),.resource-dialog select,.resource-dialog textarea {width:100%;min-width:0;padding:.8rem;border:1px solid #cba6bd;border-radius:12px;background:#fff;color:var(--text);font:inherit}
.resource-blog :focus-visible,.resource-dialog :focus-visible {outline:3px solid #2496bd;outline-offset:3px}
.resource-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.resource-card {overflow:hidden;border:1px solid var(--line);border-radius:20px;background:white;display:flex;flex-direction:column;box-shadow:0 8px 24px #4d21430a}
.resource-cover {display:block;position:relative;background:linear-gradient(135deg,#e9f8fd,#fff3f8);height:255px;padding:20px;text-align:center;border-bottom:1px solid var(--line)}
.resource-cover img {height:100%;width:100%;object-fit:contain;filter:drop-shadow(0 3px 5px #33223526)}
.resource-cover .resource-preview-fallback {height:100%;display:grid;place-content:center;gap:.5rem;color:var(--muted)}
.resource-preview-fallback strong {font-size:2rem;color:var(--primary-strong)}
.resource-card-content {display:flex;flex-direction:column;flex:1;padding:1.3rem;gap:.65rem}
.resource-category {align-self:start;display:inline-block;border-radius:20px;padding:.2rem .7rem;font-size:.72rem;background:#e7f7fb;color:#21617a;font-weight:700}
.resource-card:nth-child(3n+2) .resource-category {background:#fff1f7;color:#a83269}
.resource-card:nth-child(3n) .resource-category {background:#f3f7e8;color:#4b682e}
.resource-card h3 {font-size:1.16rem;line-height:1.4;margin:0;overflow-wrap:anywhere}
.resource-byline {font-size:.78rem;color:var(--muted);margin:0}
.resource-excerpt {font-size:.86rem;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.resource-card .resource-actions {margin-top:auto;padding-top:.7rem;gap:.5rem;justify-content:start}
.resource-card .resource-actions .btn {font-size:.76rem;padding:.6rem .8rem}
.resource-privacy {font-size:.8rem;color:var(--muted);background:#fff8ed;border-radius:12px;padding:1rem;margin-top:1.5rem}
.resource-team {background:#eaf7fc;padding:1rem;border-radius:14px;margin-bottom:1rem}
.resource-team p {margin:0 0 .7rem;font-size:.85rem}
.resource-team label {font-size:.8rem}
.resource-dialog {width:min(850px,calc(100% - 2rem));max-height:90dvh;overflow-y:auto;border:1px solid var(--line);border-radius:22px;padding:1.7rem;color:var(--text);background:#fffcfe;box-shadow:var(--shadow-soft)}
.resource-dialog::backdrop {background:#251e35a6;backdrop-filter:blur(3px)}
.resource-dialog h2 {font-family:Bitter,serif;font-size:1.7rem;line-height:1.3;overflow-wrap:anywhere}
.resource-description,.resource-comment p {white-space:pre-wrap;overflow-wrap:anywhere}
.resource-preview-frame {width:100%;height:480px;border:1px solid var(--line);border-radius:14px;margin:1rem 0}
.resource-form,.resource-comment-form {display:grid;gap:1rem;margin-top:1rem}
.resource-form-row {display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.resource-form .resource-check {display:flex;align-items:start;gap:.6rem;font-weight:400}
.resource-comment {border:1px solid var(--line);background:white;border-radius:14px;padding:1rem;margin:1rem 0;font-size:.9rem}
.resource-comment small {display:block;color:var(--muted)}
.resource-comment .resource-actions {justify-content:start}
.resource-dialog [role=status],#resource-status {font-size:.85rem;color:var(--muted)}
.resource-blog [hidden],.resource-dialog [hidden] {display:none!important}
#resource-more {display:block;margin:1.5rem auto}
@media(max-width:1000px) {.resource-grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px) {.resource-grid,.resource-filters,.resource-form-row {grid-template-columns:1fr}.resource-cover {height:280px}.resource-dialog {padding:1rem}.resource-dialog h2 {font-size:1.3rem}.resource-preview-frame {height:360px}}
