/* VIC community module. Removed along with the module; nothing else uses these classes. */
.cm-bell{position:relative;display:inline-flex;color:#C9D6E2;width:24px;height:24px}
.cm-bell:hover{color:#fff}
.cm-count{position:absolute;top:-6px;right:-8px;background:var(--amber);color:var(--navy);border-radius:999px;font-size:.68rem;font-weight:800;padding:1px 5px}
.cm-count[hidden]{display:none}
.cm-tabs{display:flex;flex-wrap:wrap;gap:6px 18px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:26px}
.cm-tabs a{font-weight:500;text-decoration:none;color:var(--soft)}
.cm-tabs a:hover{color:var(--navy);text-decoration:underline}
.cm-tabs a[hidden]{display:none}
.cm-h1{font-size:2.2rem}
.cm-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.cm-filter input,.cm-filter select{flex:1 1 180px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;background:#fff}
.cm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.cm-card{padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.cm-card p{margin:0 0 6px;font-size:.95rem}
.cm-card .btn{margin-top:auto}
.cm-card-link{display:flex;align-items:center;gap:12px;text-decoration:none}
.cm-card-link h3{margin:0;font-size:1.1rem}
.cm-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:.85rem;overflow:hidden;flex:none;vertical-align:middle}
.cm-avatar img{width:100%;height:100%;object-fit:cover}
.cm-avatar.lg{width:56px;height:56px;font-size:1.1rem}
.cm-avatar.xl{width:112px;height:112px;font-size:2.2rem}
.cm-profile{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:20px}
.cm-profile h1{font-size:2.2rem;margin:0}
.cm-pre{white-space:pre-wrap;overflow-wrap:anywhere}
.cm-compose{margin-bottom:24px;display:block}
.cm-compose label{font-weight:600;display:block;margin-bottom:8px}
.cm-compose textarea,.cm-reply textarea,.cm-reply input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;margin-bottom:10px;background:#fff}
.cm-feed{display:grid;gap:16px}
.cm-post{padding:20px}
.cm-post header a{text-decoration:none;color:var(--navy)}
.cm-post header .cm-avatar{margin-right:8px}
.cm-post footer{display:flex;flex-wrap:wrap;gap:14px;font-size:.92rem}
.cm-post blockquote{border-left:3px solid var(--line);margin:10px 0;padding-left:12px}
.cm-comments{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}
.cm-comment{margin-bottom:12px}
.cm-comment p{margin:2px 0 0}
.cm-thread{display:flex;align-items:center;gap:14px;padding:14px 18px;text-decoration:none;color:var(--ink)}
.cm-thread div{flex:1;min-width:0}
.cm-thread p{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cm-chat{display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow-y:auto;padding:14px;background:#fff;border-radius:var(--r);margin-bottom:14px}
.cm-bubble{max-width:78%;background:var(--sand);border-radius:14px;padding:10px 14px;align-self:flex-start}
.cm-bubble.mine{background:#E6F1FA;align-self:flex-end}
.cm-bubble p{margin:0}
.cm-note{display:flex;justify-content:space-between;gap:14px;padding:14px 18px;text-decoration:none;color:var(--ink)}
.cm-note.unread{border-left:4px solid var(--amber)}

.cm-menu{position:relative;display:inline-flex;align-items:center}
.cm-menu>.login{display:inline-flex;align-items:center;gap:3px}
.cm-menu>.login svg{width:14px;height:14px}
.cm-menu-list{list-style:none;margin:0;padding:8px;position:absolute;top:100%;right:-12px;min-width:210px;background:#fff;border-radius:14px;box-shadow:var(--shadow-lift);border:1px solid var(--line);display:none;z-index:60}
.cm-menu-list::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.cm-menu:hover .cm-menu-list,.cm-menu:focus-within .cm-menu-list{display:block}
.cm-menu-list a{display:block;padding:9px 12px;border-radius:10px;color:var(--navy);font-weight:600;font-size:.92rem;text-decoration:none;white-space:nowrap}
.cm-menu-list a:hover,.cm-menu-list a[aria-current=page]{background:var(--cream);color:var(--green-ink)}
@media (max-width:1020px){.cm-menu{display:none}}
