/* Moderated communication system */
.comm-card{background:#fff;border:1px solid #dfe8f6;border-radius:24px;padding:20px;box-shadow:0 14px 34px rgba(29,58,122,.075)}
.comm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:15px}.comm-head h3{margin:3px 0;color:#10234f}.comm-head p{margin:0;color:#6d7f9f;font-size:12px;line-height:1.75}.comm-head>span{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,#eef5ff,#f1ecff);display:grid;place-items:center;font-size:22px}
.comm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.comm-form .full{grid-column:1/-1}.comm-form label{display:grid;gap:6px;font-size:12px;font-weight:900;color:#38506f}.comm-form input,.comm-form select,.comm-form textarea{width:100%;border:1px solid #d1dfef;border-radius:13px;padding:11px 12px;background:#fbfdff;font:inherit;color:#10234f}.comm-form textarea{resize:vertical;min-height:96px}.comm-form input:focus,.comm-form select:focus,.comm-form textarea:focus{outline:0;border-color:#69aef8;box-shadow:0 0 0 4px rgba(36,135,245,.09)}
.comm-note{display:flex;gap:9px;align-items:flex-start;padding:11px 13px;border-radius:14px;background:#f3f7ff;color:#345781;font-size:11px;line-height:1.7}.comm-note i{margin-top:3px}
.comm-status{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}.comm-status.pending{background:#fff7ed;color:#c2410c}.comm-status.approved{background:#ecfdf5;color:#047857}.comm-status.rejected{background:#fff1f2;color:#be123c}.comm-status.changes_requested{background:#eef2ff;color:#4338ca}
.comm-list{display:grid;gap:10px}.comm-item{border:1px solid #e1e9f5;border-radius:17px;padding:14px;background:#fff}.comm-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.comm-item-top strong{display:block;color:#10234f}.comm-item-top small{display:block;color:#6d7f9f;margin-top:4px;font-size:10px}.comm-item p{color:#405474;font-size:12px;line-height:1.8;margin:10px 0}.comm-item .comm-review-note{background:#f8fafc;border-right:3px solid #7c3aed;padding:9px 11px;border-radius:10px;color:#4c1d95;font-size:11px}
.comm-thread{border:1px solid #dfe8f6;border-radius:18px;background:#fff;padding:15px;position:relative}.comm-thread.pinned{border-color:#f4c86b;background:linear-gradient(145deg,#fffefa,#fff)}.comm-thread-pin{position:absolute;top:12px;left:12px;color:#d97706}.comm-thread-author{display:flex;align-items:center;gap:9px}.comm-thread-avatar{width:38px;height:38px;border-radius:13px;background:linear-gradient(145deg,#eaf4ff,#eee9ff);display:grid;place-items:center;font-weight:900;color:#3454a4}.comm-thread-author strong,.comm-thread-author small{display:block}.comm-thread-author small{color:#7a8da9;font-size:10px}.comm-thread-body{font-size:13px;color:#334b6f;line-height:1.9;margin:11px 0 0}.comm-thread-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.comm-thread-meta span{background:#f6f8fc;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800;color:#62738e}
.comm-replies{display:grid;gap:9px;margin-top:12px;padding-top:11px;border-top:1px solid #edf2f7}.comm-reply{padding:11px 12px;border-radius:13px;background:#f8fbff;border:1px solid #e2ebf7}.comm-reply strong{display:block;color:#1e3a8a;font-size:11px}.comm-reply p{margin:4px 0 0;font-size:11px;color:#465d7d;line-height:1.7}
.comm-empty{padding:25px 18px;text-align:center;border:1px dashed #cbd9eb;border-radius:17px;background:#f8fafc;color:#687b99}.comm-empty span{font-size:32px;display:block;margin-bottom:6px}
.comm-admin-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px}.comm-admin-filters{display:grid;gap:8px;align-content:start;position:sticky;top:90px}.comm-admin-filters button{border:1px solid #dfe8f5;background:#fff;border-radius:13px;padding:10px 12px;text-align:right;font:inherit;font-size:11px;font-weight:900;color:#3f5575;display:flex;align-items:center;justify-content:space-between}.comm-admin-filters button.active{background:#10234f;color:#fff;border-color:#10234f}.comm-admin-filters span{min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#eef3fa;display:grid;place-items:center;font-size:9px}.comm-admin-filters button.active span{background:rgba(255,255,255,.16);color:#fff}
.comm-review-card{border:1px solid #dfe8f5;border-radius:20px;padding:17px;background:#fff;box-shadow:0 10px 26px rgba(26,58,122,.055)}.comm-review-head{display:flex;justify-content:space-between;gap:12px}.comm-review-head strong{display:block;font-size:14px;color:#10234f}.comm-review-head small{display:block;color:#7183a0;margin-top:3px;font-size:10px}.comm-review-content{margin:12px 0;padding:12px;border-radius:13px;background:#f8fafc;color:#3e5474;font-size:12px;line-height:1.8}.comm-review-context{display:flex;gap:6px;flex-wrap:wrap}.comm-review-context span{background:#eef4fb;border-radius:999px;padding:5px 8px;font-size:9px;color:#536b88;font-weight:800}.comm-review-actions{display:grid;grid-template-columns:1fr auto auto auto;gap:8px;align-items:center;margin-top:12px}.comm-review-actions input{width:100%;border:1px solid #d1dfef;border-radius:11px;padding:9px 10px;font:inherit;font-size:11px}.comm-review-actions button{border:0;border-radius:11px;padding:9px 11px;font:inherit;font-size:10px;font-weight:900;cursor:pointer}.comm-review-actions .approve{background:#059669;color:#fff}.comm-review-actions .changes{background:#4f46e5;color:#fff}.comm-review-actions .reject{background:#e11d48;color:#fff}
.comm-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.comm-admin-stats article{border:1px solid #dfe8f5;border-radius:17px;padding:13px;background:#fff}.comm-admin-stats strong{display:block;font-size:20px;color:#10234f}.comm-admin-stats small{color:#70829f;font-size:10px}
.comm-teacher-question-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.comm-teacher-question-actions button{border:0;border-radius:11px;padding:8px 10px;font:inherit;font-size:10px;font-weight:900;cursor:pointer}.comm-reply-btn{background:#2563eb;color:#fff}.comm-pin-btn{background:#fff7ed;color:#c2410c}
.comm-teacher-reply-form{margin-top:10px;padding:12px;border-radius:14px;background:#f8fafc;display:grid;gap:8px}.comm-teacher-reply-form textarea{border:1px solid #d3e0ef;border-radius:11px;padding:10px;font:inherit;min-height:74px}.comm-teacher-reply-form button{justify-self:start}
.comm-pending-dot{width:8px;height:8px;border-radius:50%;background:#f59e0b;display:inline-block}
@media(max-width:900px){.comm-admin-layout{grid-template-columns:1fr}.comm-admin-filters{position:static;grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.comm-form{grid-template-columns:1fr}.comm-form .full{grid-column:auto}.comm-admin-stats{grid-template-columns:repeat(2,1fr)}.comm-review-actions{grid-template-columns:1fr 1fr}.comm-review-actions input{grid-column:1/-1}.comm-admin-filters{grid-template-columns:1fr 1fr}.comm-card{padding:16px}}
@media(max-width:420px){.comm-admin-stats{grid-template-columns:1fr 1fr}.comm-review-actions{grid-template-columns:1fr}.comm-review-actions input{grid-column:auto}.comm-admin-filters{grid-template-columns:1fr}}
