/* LinKnote Community Tools */
.um-groups-single .lnct-community-tab {
	max-width: 820px;
	margin: 0 auto;
	color: #2b363b;
}
.lnct-notice,
.lnct-ownerless-message,
.lnct-topic-closed-message {
	margin: 0 0 16px;
	padding: 11px 13px;
	border-radius: 8px;
	font-size: 14px;
	line-height: 1.6;
}
.lnct-notice-success { background: #edf8f1; color: #217344; }
.lnct-ownerless-message { background: #fff3e8; color: #8a4c16; }
.lnct-topic-closed-message { background: #f3f6f7; color: #607077; }

.lnct-topic-create-form,
.lnct-management-form,
.lnct-role-management,
.lnct-transfer-box,
.lnct-topic-reply-form,
.lnct-topic-single,
.lnct-rules-public,
.lnct-management-summary,
.lnct-transfer-response {
	margin: 0 0 18px;
	padding: 18px;
	border: 1px solid #dfe8ea;
	border-radius: 10px;
	background: #fff;
}
.lnct-topic-create-form h3,
.lnct-topic-list-heading h3,
.lnct-rules-public h2,
.lnct-management-summary h2,
.lnct-management-panel > h2,
.lnct-transfer-response h2,
.lnct-topic-replies h3 { margin: 0 0 12px; }
.lnct-topic-create-form label,
.lnct-topic-reply-form label,
.lnct-management-form label {
	display: block;
	margin: 0 0 12px;
}
.lnct-topic-create-form label > span,
.lnct-topic-reply-form label > span,
.lnct-management-form label > span {
	display: block;
	margin-bottom: 6px;
	font-size: 13px;
	font-weight: 700;
	color: #53646a;
}
.lnct-topic-create-form input,
.lnct-topic-create-form textarea,
.lnct-topic-reply-form textarea,
.lnct-management-form textarea,
.lnct-management-form select,
.lnct-role-form select,
.lnct-transfer-form select {
	box-sizing: border-box;
	width: 100%;
	padding: 10px 11px;
	border: 1px solid #ccd9dd;
	border-radius: 7px;
	background: #fff;
	color: #2b363b;
	font: inherit;
}
.lnct-topic-create-form textarea,
.lnct-topic-reply-form textarea,
.lnct-management-form textarea { resize: vertical; }
.lnct-topic-create-form input:focus,
.lnct-topic-create-form textarea:focus,
.lnct-topic-reply-form textarea:focus,
.lnct-management-form textarea:focus,
.lnct-management-form select:focus,
.lnct-role-form select:focus,
.lnct-transfer-form select:focus { outline: 0; border-color: #31c7ad; box-shadow: 0 0 0 3px rgba(49,199,173,.13); }

.lnct-topic-list-heading { display:flex; justify-content:space-between; align-items:baseline; margin:0 0 8px; }
.lnct-topic-list-heading span { color:#75868c; font-size:13px; }
.lnct-topic-list { margin: 0 0 18px; }
.lnct-topic-card { padding: 15px 16px; border: 1px solid #e1e9eb; border-bottom: 0; background:#fff; }
.lnct-topic-card:first-of-type { border-radius: 10px 10px 0 0; }
.lnct-topic-card:last-child { border-bottom:1px solid #e1e9eb; border-radius:0 0 10px 10px; }
.lnct-topic-card:hover { background:#f8fcfc; }
.lnct-topic-card-main { display:block; color:inherit; text-decoration:none; }
.lnct-topic-card-title { font-size:16px; font-weight:700; line-height:1.45; }
.lnct-topic-card-excerpt { margin-top:6px; color:#607077; font-size:13px; line-height:1.55; }
.lnct-topic-card-meta,
.lnct-topic-author,
.lnct-topic-reply-meta { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin-top:10px; color:#78888d; font-size:12px; }
.lnct-avatar { display:block; border-radius:50%; object-fit:cover; }
.lnct-topic-card-meta .lnct-avatar { width:28px; height:28px; }
.lnct-topic-pin,
.lnct-topic-closed,
.lnct-role-badge { display:inline-flex; align-items:center; min-height:20px; padding:0 6px; border-radius:10px; font-size:11px; font-weight:700; line-height:1; }
.lnct-topic-pin { margin-right:6px; background:#e3f6f1; color:#197b68; }
.lnct-topic-closed { margin-right:6px; background:#eef1f2; color:#65767c; }
.lnct-role-badge { margin-left:5px; background:#eef3f4; color:#5d6e74; }
.lnct-role-badge.is-owner { background:#e8f7f3; color:#177d68; }
.lnct-role-badge.is-coadmin { background:#edf3ff; color:#396baa; }
.lnct-role-badge.is-moderator { background:#fff4e6; color:#a66414; }
.lnct-topic-back { margin: 0 0 10px; }
.lnct-topic-back a { color:#1a8c79; text-decoration:none; }
.lnct-topic-single-header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.lnct-topic-single h2 { margin:0; font-size:22px; line-height:1.45; }
.lnct-topic-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.lnct-inline-form { display:inline; margin:0; }
.lnct-text-button,
.lnct-secondary-button { display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:0 10px; border:1px solid #cbd9dc; border-radius:6px; background:#fff; color:#516168; cursor:pointer; font:inherit; font-size:13px; font-weight:700; text-decoration:none; }
.lnct-text-button:hover,
.lnct-secondary-button:hover { background:#f4f9fa; }
.lnct-text-button.is-danger { border-color:#efc8c8; color:#a74343; }
.lnct-topic-author { margin:14px 0 0; }
.lnct-topic-author .lnct-avatar { width:38px; height:38px; }
.lnct-topic-content { margin-top:16px; font-size:15px; line-height:1.8; overflow-wrap:anywhere; }
.lnct-topic-content > :first-child { margin-top:0; }
.lnct-topic-content > :last-child { margin-bottom:0; }
.lnct-topic-replies { margin: 0 0 16px; }
.lnct-topic-replies > h3 { padding-bottom:9px; border-bottom:1px solid #dfe8ea; font-size:17px; }
.lnct-topic-replies > h3 span { color:#78888d; font-size:13px; }
.lnct-topic-reply { display:flex; gap:10px; padding:13px 0; border-bottom:1px solid #edf2f3; }
.lnct-topic-reply .lnct-avatar { width:32px; height:32px; flex:0 0 auto; }
.lnct-topic-reply-body { min-width:0; }
.lnct-topic-reply-meta { margin:0; }
.lnct-topic-reply-content { margin-top:5px; font-size:14px; line-height:1.65; overflow-wrap:anywhere; }
.lnct-empty-message { color:#77878d; }

.lnct-policy-list { display:grid; grid-template-columns:140px 1fr; margin:14px 0 0; border-top:1px solid #edf2f3; }
.lnct-policy-list dt,
.lnct-policy-list dd { margin:0; padding:11px 0; border-bottom:1px solid #edf2f3; }
.lnct-policy-list dt { color:#607077; font-weight:700; }
.lnct-policy-list dd { font-weight:700; }
.lnct-management-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; }
.lnct-role-person { display:flex; align-items:center; gap:9px; padding:10px; border:1px solid #e1e9eb; border-radius:8px; color:inherit; text-decoration:none; }
.lnct-role-person:hover { background:#f8fcfc; }
.lnct-role-person .lnct-avatar { width:38px; height:38px; }
.lnct-role-person-info { min-width:0; }
.lnct-role-person-info strong,
.lnct-role-person-info small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lnct-role-person-info strong { font-size:13px; }
.lnct-role-person-info small { margin-top:2px; color:#75868c; font-size:11px; }
.lnct-management-panel { margin-top:18px; padding:18px; border:1px solid #cfe4e0; border-radius:10px; background:#fbfffe; }
.lnct-role-management { margin-top:22px; padding-top:18px; border-top:1px solid #dbece9; }
.lnct-role-management p,
.lnct-transfer-box p { color:#64757b; font-size:13px; line-height:1.65; }
.lnct-role-form,
.lnct-transfer-form,
.lnct-transfer-response-form { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.lnct-role-form select,
.lnct-transfer-form select { flex:1 1 220px; width:auto; }
.lnct-coadmin-order { margin:14px 0 0; padding:0; list-style:none; }
.lnct-coadmin-order li { display:flex; align-items:center; flex-wrap:wrap; gap:6px; padding:9px 0; border-bottom:1px solid #e4efed; font-size:13px; }
.lnct-coadmin-order li > span { flex:1 1 180px; }
.lnct-transfer-box { margin-top:20px; padding:15px; border:1px solid #d8e8e5; border-radius:8px; background:#fff; }
.lnct-transfer-box h3 { margin:0 0 7px; font-size:16px; }

@media screen and (max-width:600px) {
	.lnct-topic-create-form,
	.lnct-management-form,
	.lnct-role-management,
	.lnct-transfer-box,
	.lnct-topic-reply-form,
	.lnct-topic-single,
	.lnct-rules-public,
	.lnct-management-summary,
	.lnct-transfer-response { padding:14px; }
	.lnct-topic-single-header { flex-direction:column; }
	.lnct-topic-actions { justify-content:flex-start; }
	.lnct-role-form,
	.lnct-transfer-form,
	.lnct-transfer-response-form { align-items:stretch; flex-direction:column; }
	.lnct-role-form select,
	.lnct-transfer-form select,
	.lnct-role-form button,
	.lnct-transfer-form button,
	.lnct-transfer-response-form button { width:100%; }
	.lnct-policy-list { grid-template-columns:1fr; }
	.lnct-policy-list dt { padding-bottom:3px; border-bottom:0; }
	.lnct-policy-list dd { padding-top:3px; }
}


/* =====================================================
   LinKnote Community Tools 1.1: reports + directory
===================================================== */
.lnct-group-report-bar { display:flex; justify-content:flex-end; max-width:820px; margin:8px auto 0; }
.lnct-report-trigger { display:inline-flex; align-items:center; min-height:28px; padding:0 8px; border:0; background:transparent; color:#7b888d; cursor:pointer; font:inherit; font-size:12px; text-decoration:none; }
.lnct-report-trigger:hover { color:#a74343; text-decoration:underline; }
.lnct-topic-single-header > .lnct-report-trigger { margin-left:auto; }
.lnct-topic-reply .lnct-report-trigger { margin-top:5px; padding-left:0; }
.lnct-topic-reply > img.avatar { display:block !important; flex:0 0 40px !important; align-self:flex-start !important; width:40px !important; height:40px !important; min-width:40px !important; min-height:40px !important; max-width:40px !important; max-height:40px !important; aspect-ratio:1 / 1 !important; object-fit:cover !important; border-radius:50% !important; }
.lnct-topic-reply-body { flex:1 1 auto !important; min-width:0 !important; }
.lnct-report-open { overflow:hidden; }
.lnct-report-modal[hidden] { display:none !important; }
.lnct-report-modal { position:fixed; z-index:999999; inset:0; display:flex; align-items:center; justify-content:center; padding:18px; }
.lnct-report-modal-backdrop { position:absolute; inset:0; background:rgba(20,31,35,.52); }
.lnct-report-modal-dialog { position:relative; z-index:1; box-sizing:border-box; width:min(100%,520px); max-height:calc(100vh - 36px); overflow:auto; padding:22px; border-radius:12px; background:#fff; box-shadow:0 18px 60px rgba(0,0,0,.24); }
.lnct-report-modal-dialog h2 { margin:0 32px 5px 0; font-size:20px; }
.lnct-report-modal-target { margin:0 0 18px; color:#66777d; font-size:14px; }
.lnct-report-modal-close { position:absolute; top:12px; right:12px; width:32px; height:32px; border:0; border-radius:50%; background:#f1f5f6; color:#526268; cursor:pointer; font-size:20px; line-height:1; }
.lnct-report-form label { display:block; margin:0 0 13px; }
.lnct-report-form label > span { display:block; margin-bottom:6px; color:#526268; font-size:13px; font-weight:700; }
.lnct-report-form select,.lnct-report-form textarea { box-sizing:border-box; width:100%; padding:10px 11px; border:1px solid #cddadd; border-radius:7px; color:#2b363b; font:inherit; }
.lnct-report-form textarea { resize:vertical; }
.lnct-report-note { margin:0 0 14px; color:#77878d; font-size:12px; line-height:1.6; }
.um-groups-single .um-activity-dialog .lnct-activity-report-trigger { display:block; box-sizing:border-box; width:100%; padding:8px 10px; color:#a74343 !important; text-align:left; }

.lnct-community-directory { max-width:1040px; margin:0 auto; color:#2b363b; }
.lnct-directory-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin:0 0 20px; }
.lnct-directory-heading h1 { margin:0; font-size:28px; }
.lnct-directory-heading p { margin:7px 0 0; color:#68777d; font-size:14px; line-height:1.6; }
.lnct-directory-create { flex:0 0 auto; text-decoration:none !important; }
.lnct-directory-search { display:grid; grid-template-columns:minmax(180px,1fr) minmax(150px,.5fr) minmax(120px,.4fr) auto; gap:8px; align-items:center; padding:12px; border:1px solid #dfe8ea; border-radius:10px; background:#fff; }
.lnct-directory-search input,.lnct-directory-search select { box-sizing:border-box; min-height:40px; width:100%; margin:0; padding:0 10px; border:1px solid #ccd9dd; border-radius:6px; background:#fff; color:#2b363b; font:inherit; }
.lnct-directory-search .um-button { min-height:40px; margin:0 !important; padding:0 15px; }
.lnct-directory-scopes { display:flex; gap:6px; margin:16px 0 10px; border-bottom:1px solid #dfe8ea; }
.lnct-directory-scopes a { display:inline-flex; min-height:36px; align-items:center; padding:0 12px; border-bottom:2px solid transparent; color:#66777d; font-size:14px; font-weight:700; text-decoration:none; }
.lnct-directory-scopes a.is-active { border-bottom-color:#31c7ad; color:#187d6a; }
.lnct-directory-result-meta { display:flex; gap:10px; margin:0 0 10px; color:#78888d; font-size:13px; }
.lnct-community-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.lnct-community-card { display:flex; flex-direction:column; padding:15px; border:1px solid #dfe8ea; border-radius:10px; background:#fff; }
.lnct-community-card:hover { border-color:#b9d9d4; box-shadow:0 3px 10px rgba(24,75,70,.06); }
.lnct-community-card-main { display:grid; grid-template-columns:60px minmax(0,1fr); gap:11px; color:inherit; text-decoration:none; }
.lnct-community-card-avatar img { display:block; width:60px !important; height:60px !important; border-radius:10px; object-fit:cover; }
.lnct-community-card-copy { min-width:0; }
.lnct-community-card-copy h2 { overflow:hidden; margin:0; color:#2b363b; font-size:17px; line-height:1.45; text-overflow:ellipsis; white-space:nowrap; }
.lnct-community-card-copy p { display:-webkit-box; overflow:hidden; margin:5px 0 0; color:#68777d; font-size:13px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.lnct-community-card-tags { display:flex; flex-wrap:wrap; gap:5px; min-height:23px; margin:12px 0 0; }
.lnct-community-card-tags span { display:inline-flex; align-items:center; min-height:22px; padding:0 7px; border-radius:11px; background:#eef6f5; color:#47736d; font-size:11px; font-weight:700; }
.lnct-community-card-stats { display:flex; flex-wrap:wrap; gap:5px 10px; margin:10px 0 0; color:#78888d; font-size:12px; line-height:1.5; }
.lnct-community-card-foot { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px; padding-top:11px; border-top:1px solid #edf2f3; color:#68777d; font-size:12px; }
.lnct-community-card-join .button,.lnct-community-card-join .um-button { min-height:32px !important; margin:0 !important; padding:0 10px !important; border-radius:6px !important; font-size:12px !important; line-height:32px !important; }
.lnct-directory-pagination { display:flex; justify-content:center; gap:6px; margin:20px 0 0; }
.lnct-directory-pagination a { display:inline-flex; align-items:center; justify-content:center; min-width:32px; height:32px; border:1px solid #d8e4e6; border-radius:6px; color:#53646a; font-size:13px; text-decoration:none; }
.lnct-directory-pagination a.is-current { border-color:#31c7ad; background:#31c7ad; color:#fff; }
@media screen and (max-width:700px) { .lnct-directory-heading { align-items:flex-start; flex-direction:column; } .lnct-directory-search { grid-template-columns:1fr; } .lnct-directory-search .um-button { width:100%; } .lnct-community-grid { grid-template-columns:1fr; } }
