﻿/* ═══════════════════════════════════════════════════════════
   함께(Together) 페이지 전용 스타일
   ═══════════════════════════════════════════════════════════ */

.together-page {
	background: #f7f7f7;
	font-family: -apple-system, "Pretendard", "Apple SD Gothic Neo", "Malgun Gothic", "Segoe UI", sans-serif;
	color: #222;
	-webkit-font-smoothing: antialiased;
	padding: 24px 0;
	min-height: calc(100vh - 200px);
}

	.together-page * {
		box-sizing: border-box;
	}

	/* ── 레이아웃 ─────────────────────────────────────── */
	.together-page .nt-layout {
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 24px;
		display: grid;
		grid-template-columns: 180px 1fr 280px;
		gap: 32px;
		align-items: start;
	}

	/* ════════ 좌측 사이드 ════════ */
	.together-page .nt-side-left {
		position: sticky;
		top: 80px;
	}

	.together-page .side-title {
		font-size: 14px;
		font-weight: 700;
		color: #222;
		padding: 0 12px 12px;
	}

	.together-page .nt-side-link {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 10px 12px;
		font-size: 14px;
		color: #4b5563;
		font-weight: 500;
		border-radius: 8px;
		text-decoration: none;
		transition: all .15s;
		margin-bottom: 2px;
		position: relative;
	}

		.together-page .nt-side-link:hover {
			background: #f5f5f5;
			color: #222;
		}

		.together-page .nt-side-link.active {
			color: #e4002b;
			font-weight: 700;
			background: #fdf3f4;
		}

		/* 메뉴 아이콘 (SVG) */
		.together-page .nt-side-link .icon {
			width: 18px;
			height: 18px;
			flex-shrink: 0;
			color: #9ca3af;
			display: inline-flex;
			align-items: center;
			justify-content: center;
		}

			.together-page .nt-side-link .icon svg {
				width: 100%;
				height: 100%;
				stroke: currentColor;
				fill: none;
				stroke-width: 1.8;
			}

		.together-page .nt-side-link.active .icon {
			color: #e4002b;
		}

		.together-page .nt-side-link:hover .icon {
			color: #4b5563;
		}

		/* 알림 뱃지 */
		.together-page .nt-side-link .noti-badge {
			margin-left: auto;
			background: #e4002b;
			color: #fff;
			font-size: 11px;
			font-weight: 700;
			min-width: 18px;
			height: 18px;
			padding: 0 5px;
			border-radius: 9px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
		}

	/* 글쓰기 버튼 */
	.together-page .btn-write {
		margin-top: 16px;
		width: 100%;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		background: #e4002b;
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		padding: 12px 0;
		border-radius: 8px;
		text-decoration: none;
		transition: background .15s;
		border: none;
		cursor: pointer;
	}

		.together-page .btn-write:hover {
			background: #c50025;
			color: #fff;
		}

	/* ════════ 메인 영역 ════════ */
	.together-page .nt-main {
		min-width: 0;
		background: #fff;
		border-radius: 12px;
		overflow: hidden;
		padding: 20px;
	}

	/* 웰컴 카드 */
	.together-page .welcome-card {
		margin: 20px 24px 16px;
		background: linear-gradient(to right, #fdf3f4, #fff7ed);
		border: 1px solid #fee2e2;
		border-radius: 12px;
		padding: 20px;
		position: relative;
	}

		.together-page .welcome-card .close-btn {
			position: absolute;
			top: 12px;
			right: 12px;
			border: none;
			background: transparent;
			font-size: 18px;
			color: #9ca3af;
			cursor: pointer;
			line-height: 1;
		}

		.together-page .welcome-card h3 {
			font-size: 15px;
			font-weight: 900;
			color: #222;
			margin: 0 0 12px;
		}

		.together-page .welcome-card .item {
			display: flex;
			align-items: flex-start;
			gap: 8px;
			font-size: 13px;
			color: #6b7280;
			line-height: 1.6;
			margin-top: 8px;
		}

			.together-page .welcome-card .item .num {
				color: #e4002b;
				font-weight: 700;
				flex-shrink: 0;
				margin-top: 1px;
			}

		.together-page .welcome-card .actions {
			display: flex;
			gap: 8px;
			margin-top: 16px;
		}

			.together-page .welcome-card .actions a {
				font-size: 12px;
				font-weight: 700;
				padding: 6px 16px;
				border-radius: 9999px;
				text-decoration: none;
			}

			.together-page .welcome-card .actions .primary {
				background: #e4002b;
				color: #fff;
			}

				.together-page .welcome-card .actions .primary:hover {
					background: #c50025;
				}

			.together-page .welcome-card .actions .secondary {
				border: 1px solid #d1d5db;
				color: #6b7280;
			}

	/* 인사말 (시안: bg-gradient-to-r from-red-50/50 to-orange-50/30) */
	.together-page .greeting-box {
		padding: 12px 24px;
		background: linear-gradient(to right, rgba(254, 226, 226, 0.5), rgba(255, 237, 213, 0.3));
		border-bottom: 1px solid #f3f4f6;
	}

		.together-page .greeting-box p {
			font-size: 13px;
			color: #6b7280;
			margin: 0;
		}

		.together-page .greeting-box .nick {
			font-weight: 700;
			color: #374151;
		}

	/* 탭 */
	.together-page .feed-tabs {
		display: flex;
		align-items: center;
		border-bottom: 1px solid #e5e7eb;
		padding: 0 24px;
	}

		.together-page .feed-tabs a {
			padding: 14px 16px;
			font-size: 14px;
			color: #9ca3af;
			font-weight: 500;
			text-decoration: none;
			border-bottom: 2px solid transparent;
			transition: all .15s;
		}

			.together-page .feed-tabs a.active {
				color: #111827;
				font-weight: 700;
				border-bottom-color: #e4002b;
			}

			.together-page .feed-tabs a:hover {
				color: #4b5563;
			}

	/* ── 피드 카드 ────────────────────────────────────── */
	.together-page .feed-list {
		padding: 0 24px;
	}

	.together-page .feed-card {
		padding: 20px 0;
		border-bottom: 1px solid #f3f4f6;
	}

		.together-page .feed-card:last-child {
			border-bottom: none;
		}

		.together-page .feed-card a.feed-link {
			display: block;
			text-decoration: none;
			color: inherit;
			transition: opacity .15s;
		}

			.together-page .feed-card a.feed-link:hover {
				opacity: 0.85;
			}

		.together-page .feed-card .card-row {
			display: flex;
			gap: 20px;
			align-items: flex-start;
		}

		.together-page .feed-card .card-body {
			flex: 1;
			min-width: 0;
		}

		.together-page .feed-card .card-thumb {
			width: 160px;
			height: 108px;
			border-radius: 8px;
			background-size: cover;
			background-position: center;
			flex-shrink: 0;
			background-color: #eaeaea;
		}

	/* 뱃지 */
	.together-page .badge-cate {
		display: inline-block;
		font-size: 11px;
		font-weight: 700;
		padding: 2px 6px;
		border-radius: 4px;
		margin-right: 4px;
	}

		.together-page .badge-cate.free {
			background: #f3f4f6;
			color: #6b7280;
		}

		.together-page .badge-cate.book {
			background: #fffbeb;
			color: #d97706;
		}

	.together-page .badge-state {
		display: inline-block;
		font-size: 10px;
		font-weight: 700;
		padding: 2px 6px;
		border-radius: 4px;
		margin-right: 4px;
	}

		.together-page .badge-state.aipick {
			background: #fef3c7;
			color: #b45309;
		}

		.together-page .badge-state.hot {
			background: #fee2e2;
			color: #b91c1c;
		}

	.together-page .feed-title {
		font-size: 15px;
		font-weight: 600;
		color: #374151;
		line-height: 1.45;
		margin: 8px 0 0 0;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.together-page .feed-excerpt {
		font-size: 12.5px;
		color: #9ca3af;
		line-height: 1.55;
		margin: 6px 0 0 0;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.together-page .feed-author {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-top: 14px;
	}

		.together-page .feed-author .avatar {
			width: 20px;
			height: 20px;
			border-radius: 50%;
			color: #fff;
			font-weight: 700;
			font-size: 9px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			flex-shrink: 0;
		}

		.together-page .feed-author .nick {
			font-size: 12px;
			font-weight: 600;
			color: #6b7280;
		}

		.together-page .feed-author .grade-badge {
			font-size: 10px;
			font-weight: 700;
			padding: 1px 8px;
			border-radius: 3px;
		}

			.together-page .feed-author .grade-badge.p {
				background: #f3e8ff;
				color: #7e22ce;
			}

			.together-page .feed-author .grade-badge.g {
				background: #dbeafe;
				color: #1d4ed8;
			}

		.together-page .feed-author .time {
			font-size: 11.5px;
			color: #9ca3af;
		}

	.together-page .feed-meta {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-top: 6px;
		font-size: 11.5px;
		color: #9ca3af;
	}

	/* 아바타 색상 */
	.together-page .avatar-bg-1 {
		background: #fb7185;
	}

	.together-page .avatar-bg-2 {
		background: #f59e0b;
	}

	.together-page .avatar-bg-3 {
		background: #10b981;
	}

	.together-page .avatar-bg-4 {
		background: #38bdf8;
	}

	.together-page .avatar-bg-5 {
		background: #a855f7;
	}

	.together-page .avatar-bg-6 {
		background: #f472b6;
	}

	.together-page .avatar-bg-7 {
		background: #14b8a6;
	}

	.together-page .avatar-bg-8 {
		background: #6366f1;
	}

	/* 빈 상태 / 더보기 */
	.together-page .empty-state {
		text-align: center;
		padding: 64px 0;
	}

		.together-page .empty-state p {
			font-size: 14px;
			color: #9ca3af;
			margin: 0;
		}

		.together-page .empty-state a {
			display: inline-block;
			margin-top: 12px;
			font-size: 13px;
			font-weight: 700;
			color: #e4002b;
			text-decoration: none;
		}

	.together-page .more-btn-wrap {
		text-align: center;
		padding: 24px 0;
		border-top: 1px solid #e5e7eb;
	}

		.together-page .more-btn-wrap a,
		.together-page .more-btn-wrap button {
			background: none;
			border: none;
			font-size: 14px;
			color: #6b7280;
			text-decoration: none;
			cursor: pointer;
		}

			.together-page .more-btn-wrap a:hover,
			.together-page .more-btn-wrap button:hover {
				color: #e4002b;
			}

	/* ════════ 우측 사이드 ════════ */
	.together-page .nt-side-right {
		position: sticky;
		top: 80px;
		display: flex;
		flex-direction: column;
		gap: 16px;
	}

	.together-page .nt-side-card {
		background: #fff;
		border-radius: 12px;
		padding: 20px;
	}

		.together-page .nt-side-card h3 {
			font-size: 14px;
			font-weight: 900;
			color: #222;
			margin: 0 0 14px 0;
			display: flex;
			align-items: center;
			justify-content: space-between;
		}

			.together-page .nt-side-card h3 a,
			.together-page .nt-side-card h3 .extra-label {
				font-size: 11px;
				font-weight: 500;
				color: #9ca3af;
				text-decoration: none;
			}

				.together-page .nt-side-card h3 a:hover {
					color: #e4002b;
				}

	/* ── 점수 카드 (빨간 단색) ── */
	.together-page .score-card {
		background: #e4002b;
		border-radius: 12px;
		padding: 20px;
		color: #fff;
		position: relative;
		overflow: hidden;
	}
		/* 카드 안 글자 기본은 약간 투명한 흰색 */
		.together-page .score-card,
		.together-page .score-card * {
			color: rgba(255, 255, 255, 0.85) !important;
		}

			.together-page .score-card .top-row {
				display: flex;
				align-items: center;
				justify-content: space-between;
				margin-bottom: 8px;
			}

			.together-page .score-card .top-label {
				font-size: 13px;
				font-weight: 600;
				color: rgba(255,255,255,0.9) !important;
			}

			.together-page .score-card .rank-pill {
				background: rgba(255,255,255,0.2);
				font-size: 11px;
				font-weight: 700;
				padding: 3px 10px;
				border-radius: 9999px;
				color: #fff !important;
			}

			.together-page .score-card .grade-tag {
				display: inline-block;
				background: rgba(255,255,255,0.18);
				font-size: 11px;
				font-weight: 700;
				padding: 2px 8px;
				border-radius: 4px;
				margin-bottom: 10px;
				color: #fff !important;
			}

			/* ★ 메인 점수만 완전 진한 흰색 */
			.together-page .score-card .score-main {
				font-size: 14px;
				margin-top: 4px;
				color: #fff !important;
			}

				.together-page .score-card .score-main .num {
					font-size: 36px;
					font-weight: 900;
					line-height: 1;
					color: #fff !important;
				}

				.together-page .score-card .score-main .unit {
					font-size: 16px;
					font-weight: 700;
					margin-left: 2px;
					color: #fff !important;
				}

			/* 보조 텍스트는 더 투명하게 */
			.together-page .score-card .score-sub {
				font-size: 12px;
				margin-top: 6px;
				color: rgba(255,255,255,0.75) !important;
			}

			.together-page .score-card .desc {
				font-size: 11px;
				line-height: 1.5;
				margin-top: 12px;
				padding-top: 12px;
				border-top: 1px solid rgba(255,255,255,0.2);
				color: rgba(255,255,255,0.7) !important;
			}

			.together-page .score-card .ttr-info-btn {
				margin-top: 10px;
				background: rgba(255,255,255,0.18);
				border: none;
				font-size: 11px;
				font-weight: 700;
				padding: 6px 12px;
				border-radius: 9999px;
				cursor: pointer;
				color: rgba(255,255,255,0.95) !important;
			}

				.together-page .score-card .ttr-info-btn:hover {
					background: rgba(255,255,255,0.28);
				}

	/* TTR 박스 */
	.together-page .ttr-box {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

		.together-page .ttr-box .label {
			font-size: 13px;
			color: #4b5563;
			font-weight: 500;
		}

		.together-page .ttr-box .value {
			font-size: 18px;
			font-weight: 900;
			color: #222;
		}

			.together-page .ttr-box .value .unit {
				font-size: 11px;
				font-weight: 500;
				color: #9ca3af;
				margin-left: 2px;
			}

		.together-page .ttr-box.claim .value {
			color: #e4002b;
			font-size: 22px;
		}

			.together-page .ttr-box.claim .value .unit {
				color: #e4002b;
			}

		.together-page .ttr-box .note {
			font-size: 11px;
			color: #f59e0b;
			font-weight: 600;
		}

	.together-page .claim-btn {
		width: 100%;
		margin-top: 12px;
		background: #e4002b;
		color: #fff;
		border: none;
		padding: 11px 0;
		font-size: 14px;
		font-weight: 700;
		border-radius: 8px;
		cursor: pointer;
	}

		.together-page .claim-btn:hover {
			background: #c50025;
		}

	/* ══════════════════════════════════════════════════════
   TOP 랭킹 - 5컬럼 그리드 정렬
   순위(고정) | 아바타(고정) | 닉네임(가변) | 등급(고정) | 점수(고정)
   ══════════════════════════════════════════════════════ */
	.together-page .rank-row {
		display: grid;
		grid-template-columns: 18px 26px 1fr auto auto;
		align-items: center;
		column-gap: 8px;
		padding: 7px 0;
	}

		.together-page .rank-row .rank-num {
			text-align: center;
			font-size: 13px;
			font-weight: 700;
			color: #6b7280;
		}

		.together-page .rank-row .avatar {
			width: 26px;
			height: 26px;
			border-radius: 50%;
			color: #fff;
			font-size: 11px;
			font-weight: 700;
			display: inline-flex;
			align-items: center;
			justify-content: center;
		}

		.together-page .rank-row .nick {
			font-size: 13px;
			font-weight: 600;
			color: #1f2937;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
			min-width: 0;
		}

		.together-page .rank-row .grade-mini {
			font-size: 9px;
			font-weight: 700;
			padding: 1px 5px;
			border-radius: 3px;
			line-height: 1.5;
			width: 18px; /* 고정 폭으로 정렬 안정화 */
			text-align: center;
			box-sizing: border-box;
		}

			.together-page .rank-row .grade-mini.p {
				background: #f3e8ff;
				color: #7e22ce;
			}

			.together-page .rank-row .grade-mini.g {
				background: #dbeafe;
				color: #1d4ed8;
			}

			.together-page .rank-row .grade-mini.empty {
				visibility: hidden;
			}
		/* 등급 없을 때도 자리 차지 */
		.together-page .rank-row .point {
			font-size: 13px;
			font-weight: 700;
			color: #1f2937;
			text-align: right;
			min-width: 56px;
			font-variant-numeric: tabular-nums;
		}

	/* 처음이신가요 (FAQ 토글) */
	.together-page .faq-list {
		display: flex;
		flex-direction: column;
		gap: 4px;
	}

	.together-page .faq-item {
		border-radius: 8px;
	}

		/* 기본 details 마커 제거 */
		.together-page .faq-item summary {
			list-style: none;
		}

			.together-page .faq-item summary::-webkit-details-marker {
				display: none;
			}

	/* 질문 (요약 부분) */
	.together-page .faq-q {
		display: flex;
		align-items: center;
		justify-content: space-between;
		cursor: pointer;
		font-size: 12.5px;
		font-weight: 500;
		color: #4b5563;
		padding: 8px 10px;
		border-radius: 8px;
		transition: all .15s;
		user-select: none;
	}

		.together-page .faq-q:hover {
			background: #f9fafb;
			color: #111827;
		}

		.together-page .faq-q .faq-arrow {
			width: 14px;
			height: 14px;
			color: #9ca3af;
			flex-shrink: 0;
			margin-left: 8px;
			transition: transform .2s ease;
		}

	/* 열림 상태 */
	.together-page .faq-item[open] .faq-q {
		color: #111827;
		font-weight: 700;
	}

	.together-page .faq-item[open] .faq-arrow {
		transform: rotate(180deg);
		color: #4b5563;
	}

	/* 답변 영역 */
	.together-page .faq-a {
		padding: 4px 10px 10px;
	}

		.together-page .faq-a p {
			font-size: 12px;
			color: #6b7280;
			line-height: 1.65;
			margin: 0 0 6px 0;
		}

			.together-page .faq-a p:last-child {
				margin-bottom: 0;
			}

		/* "자세히 보기" 인라인 버튼 */
		.together-page .faq-a .faq-link {
			background: none;
			border: none;
			color: #e4002b;
			font-weight: 700;
			font-size: 12px;
			cursor: pointer;
			padding: 0;
			text-decoration: none;
		}

			.together-page .faq-a .faq-link:hover {
				text-decoration: underline;
			}

		/* AI 픽 인라인 태그 */
		.together-page .faq-a .aipick-tag {
			display: inline-block;
			background: #fef3c7;
			color: #b45309;
			font-size: 11px;
			font-weight: 700;
			padding: 1px 6px;
			border-radius: 4px;
		}

	/* 공지사항 */
	.together-page .notice-list {
		list-style: none;
		margin: 0;
		padding: 0;
	}

		.together-page .notice-list li {
			margin-bottom: 8px;
		}

			.together-page .notice-list li:last-child {
				margin-bottom: 0;
			}

		.together-page .notice-list a {
			display: flex;
			justify-content: space-between;
			gap: 8px;
			text-decoration: none;
			color: #374151;
			transition: color .15s;
		}

			.together-page .notice-list a:hover {
				color: #e4002b;
			}

		.together-page .notice-list .title {
			font-size: 12px;
			flex: 1;
			overflow: hidden;
			white-space: nowrap;
			text-overflow: ellipsis;
		}

		.together-page .notice-list .date {
			font-size: 11px;
			color: #9ca3af;
			flex-shrink: 0;
		}

	/* ═══════════════════════════════════════════════════════════
   인용 카드 — 메인 피드 / 답글 페이지 / 상세 페이지 공통
   순서: 작성자 → 타이틀 → 발췌
   - 메인 피드: 타이틀/발췌 1줄 (.quote-card)
   - 답글 페이지: 타이틀/발췌 2줄 (.quote-card-link 추가)
   ═══════════════════════════════════════════════════════════ */
	.together-page .quote-card {
		margin: 12px 0;
		border: 1px solid #e5e7eb;
		border-radius: 12px;
		padding: 12px 16px;
		background: #f9fafb;
		transition: background .15s;
	}

		.together-page .quote-card:hover {
			background: #f9fafb;
		}

	/* 답글 페이지에서 카드 자체가 링크 */
	.together-page a.quote-card,
	.together-page .quote-card-link {
		display: block;
		text-decoration: none;
		color: inherit;
		cursor: pointer;
		background-color: #F9FAFB;
	}

	/* 1. 작성자 (상단) */
	.together-page .quote-card .quote-author {
		display: flex;
		align-items: center;
		gap: 6px;
	}

		.together-page .quote-card .quote-author .avatar {
			width: 18px;
			height: 18px;
			border-radius: 50%;
			color: #fff;
			font-weight: 700;
			font-size: 9px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			flex-shrink: 0;
		}

		.together-page .quote-card .quote-author .nick {
			font-size: 12px;
			font-weight: 700;
			color: #4b5563;
		}

		.together-page .quote-card .quote-author .grade-badge {
			font-size: 10px;
			font-weight: 700;
			padding: 1px 5px;
			border-radius: 3px;
		}

			.together-page .quote-card .quote-author .grade-badge.p {
				background: #f3e8ff;
				color: #7e22ce;
			}

			.together-page .quote-card .quote-author .grade-badge.g {
				background: #dbeafe;
				color: #1d4ed8;
			}

		.together-page .quote-card .quote-author .time {
			font-size: 11.5px;
			color: #9ca3af;
		}

	/* 2. 타이틀 (기본 1줄) */
	.together-page .quote-card .quote-title {
		font-size: 14px;
		font-weight: 700;
		color: #1f2937;
		line-height: 1.45;
		margin: 6px 0 6px 0;
		display: -webkit-box;
		-webkit-line-clamp: 1;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	/* 3. 본문 발췌 (기본 1줄) */
	.together-page .quote-card .quote-excerpt {
		font-size: 12.5px;
		color: #9ca3af;
		line-height: 1.55;
		margin: 0;
		display: -webkit-box;
		-webkit-line-clamp: 1;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	/* 답글 페이지(.quote-card-link)에서는 2줄까지 */
	.together-page .quote-card-link .quote-title {
		font-size: 16px; /* 14 → 16 */
		color: #111827;
		-webkit-line-clamp: 2;
	}

	.together-page .quote-card-link .quote-excerpt {
		font-size: 13px; /* 12.5 → 13 */
		color: #6b7280; /* 살짝 진하게 */
		-webkit-line-clamp: 2;
	}



/* ── 반응형 ──────────────────────────────────────── */
@media (max-width: 1080px) {
	.together-page .nt-layout {
		grid-template-columns: 180px 1fr;
		gap: 24px;
	}

	.together-page .nt-side-right {
		display: none;
	}
}

@media (max-width: 820px) {
	.together-page .nt-layout {
		grid-template-columns: 1fr;
		padding: 0 16px;
	}

	.together-page .nt-side-left {
		display: none;
	}
}


/* ═══════════════════════════════════════════════════════════
   모달 (레이어 팝업)
   ═══════════════════════════════════════════════════════════ */
.nt-modal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.5);
	z-index: 9998;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 20px;
	animation: ntFadeIn .15s ease-out;
}

	.nt-modal-overlay.active {
		display: flex;
	}

.nt-modal {
	background: #fff;
	border-radius: 20px;
	width: 100%;
	max-width: 480px;
	max-height: 88vh;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 20px 60px rgba(0,0,0,0.25);
	animation: ntSlideUp .2s ease-out;
}

	.nt-modal .modal-header {
		padding: 18px 24px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		border-bottom: 1px solid #f3f4f6;
		flex-shrink: 0;
	}

	.nt-modal .modal-title {
		font-size: 16px;
		font-weight: 800;
		color: #222;
		margin: 0;
	}

	.nt-modal .modal-close {
		background: transparent;
		border: none;
		font-size: 22px;
		color: #9ca3af;
		cursor: pointer;
		line-height: 1;
		padding: 0;
		width: 28px;
		height: 28px;
		border-radius: 50%;
		transition: background .15s;
	}

		.nt-modal .modal-close:hover {
			background: #f3f4f6;
			color: #222;
		}

	.nt-modal .modal-body {
		padding: 20px 24px;
		overflow-y: auto;
		color: #374151;
		font-size: 13.5px;
		line-height: 1.65;
		flex: 1;
	}

		.nt-modal .modal-body p {
			margin: 0 0 12px;
		}

			.nt-modal .modal-body p:last-child {
				margin-bottom: 0;
			}

			.nt-modal .modal-body p.note {
				font-size: 12px;
				color: #9ca3af;
				margin: 0 0 12px;
			}

		.nt-modal .modal-body h4 {
			font-size: 14px;
			font-weight: 800;
			color: #222;
			margin: 24px 0 12px;
		}

	/* 빨간 강조 박스 (계산식) */
	.nt-modal .formula-box {
		background: #fdf3f4;
		border: 1px solid #fee2e2;
		border-radius: 10px;
		padding: 14px 16px;
		text-align: center;
		color: #e4002b;
		font-size: 13px;
		font-weight: 700;
		margin: 12px 0 16px;
		line-height: 1.6;
	}

	/* 등급 카드 */
	.nt-modal .grade-card {
		display: flex;
		align-items: center;
		gap: 14px;
		padding: 12px 14px;
		border-radius: 10px;
		margin-bottom: 8px;
	}

		.nt-modal .grade-card.normal {
			background: #f9fafb;
		}

		.nt-modal .grade-card.premium {
			background: #faf5ff;
		}

		.nt-modal .grade-card.governance {
			background: #eff6ff;
		}

		.nt-modal .grade-card .grade-pill {
			flex-shrink: 0;
			width: 60px;
			text-align: center;
			font-size: 12px;
			font-weight: 700;
			padding: 5px 0;
			border-radius: 6px;
		}

		.nt-modal .grade-card.normal .grade-pill {
			background: #d1d5db;
			color: #4b5563;
		}

		.nt-modal .grade-card.premium .grade-pill {
			background: #a855f7;
			color: #fff;
		}

		.nt-modal .grade-card.governance .grade-pill {
			background: #2563eb;
			color: #fff;
		}

		.nt-modal .grade-card .grade-info .multiplier {
			font-size: 13px;
			font-weight: 800;
			color: #222;
			margin-bottom: 2px;
		}

		.nt-modal .grade-card .grade-info .desc {
			font-size: 12px;
			color: #6b7280;
		}

	/* 획득 방법 표 */
	.nt-modal .point-table {
		width: 100%;
		border-collapse: collapse;
		border: 1px solid #f3f4f6;
		border-radius: 8px;
		overflow: hidden;
	}

		.nt-modal .point-table th,
		.nt-modal .point-table td {
			text-align: left;
			padding: 10px 12px;
			font-size: 12.5px;
			border-bottom: 1px solid #f3f4f6;
			vertical-align: middle;
		}

		.nt-modal .point-table thead th {
			background: #f9fafb;
			color: #6b7280;
			font-weight: 600;
		}

		.nt-modal .point-table tbody tr:last-child td {
			border-bottom: none;
		}

		.nt-modal .point-table .activity {
			color: #374151;
			line-height: 1.4;
		}

			.nt-modal .point-table .activity.sub {
				color: #6b7280;
				padding-left: 18px;
			}

		.nt-modal .point-table .point {
			color: #e4002b;
			font-weight: 700;
			width: 70px;
			white-space: nowrap;
		}

			.nt-modal .point-table .point.plus {
				color: #f59e0b;
			}

			.nt-modal .point-table .point.minus {
				color: #3b82f6;
			}

		.nt-modal .point-table .limit {
			color: #6b7280;
			width: 110px;
			font-size: 12px;
		}

	/* 가중치 획득 섹션 */
	.nt-modal .weight-section {
		margin-top: 14px;
	}

		.nt-modal .weight-section .weight-title {
			font-size: 13px;
			font-weight: 700;
			color: #222;
			margin-bottom: 8px;
		}

		.nt-modal .weight-section .weight-item {
			background: #f9fafb;
			border-radius: 8px;
			padding: 10px 14px;
			font-size: 12.5px;
			color: #4b5563;
			margin-bottom: 6px;
			line-height: 1.5;
		}

			.nt-modal .weight-section .weight-item strong {
				color: #e4002b;
				font-weight: 700;
			}

	/* 푸터 - 검은색 풀 너비 확인 버튼 */
	.nt-modal .modal-footer {
		padding: 12px 16px 16px;
		flex-shrink: 0;
	}

		.nt-modal .modal-footer .btn-confirm {
			width: 100%;
			background: #1f2937;
			color: #fff;
			border: none;
			padding: 14px;
			font-size: 14px;
			font-weight: 700;
			border-radius: 12px;
			cursor: pointer;
		}

			.nt-modal .modal-footer .btn-confirm:hover {
				background: #111827;
			}

@keyframes ntFadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes ntSlideUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

body.nt-modal-open {
	overflow: hidden;
}

/* ═══════════════════════════════════════════════════════════
   공유하기 모달
   ═══════════════════════════════════════════════════════════ */
.share-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

.share-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 18px 12px;
	background: #fff;
	border: 1px solid #f3f4f6;
	border-radius: 12px;
	cursor: pointer;
	transition: all .15s;
}

	.share-item:hover {
		border-color: #e5e7eb;
		background: #f9fafb;
		transform: translateY(-2px);
	}

	.share-item span {
		font-size: 13px;
		font-weight: 600;
		color: #374151;
	}

.share-icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

	.share-icon svg {
		width: 24px;
		height: 24px;
	}

	.share-icon.kakao {
		background: #fee500;
		color: #3a1d1d;
	}

	.share-icon.facebook {
		background: #1877f2;
		color: #fff;
	}

	.share-icon.twitter {
		background: #000;
		color: #fff;
	}

	.share-icon.link {
		background: #6b7280;
		color: #fff;
	}


.together-page .ttr-history-link {
	display: inline-flex;
	align-items: center;
	background: #FFFBEB;
	color: #D97706;
	border: 1px solid #fde68a;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 9999px;
	cursor: pointer;
	transition: all .15s;
	line-height: 1.4;
	white-space: nowrap;
}

	.together-page .ttr-history-link:hover {
		background: #fde68a;
		color: #92400e;
		border-color: #fcd34d;
	}


/* ── 청구 내역 리스트 (모달 안) ── */
.charge-history-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-height: 360px;
	overflow-y: auto;
}

.charge-history-item {
	display: grid;
	grid-template-columns: 1fr auto 60px;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	background: #f9fafb;
	border-radius: 8px;
	font-size: 12.5px;
}

	.charge-history-item .ch-date {
		color: #6b7280;
		font-size: 12px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.charge-history-item .ch-amount {
		color: #e4002b;
		font-weight: 800;
		white-space: nowrap;
		text-align: right;
	}

	.charge-history-item .ch-status {
		font-size: 11px;
		font-weight: 700;
		padding: 3px 8px;
		border-radius: 9999px;
		text-align: center;
		white-space: nowrap;
	}

		.charge-history-item .ch-status.pending {
			background: #fef3c7;
			color: #b45309;
		}

		.charge-history-item .ch-status.complete {
			background: #d1fae5;
			color: #047857;
		}

.charge-history-empty {
	text-align: center;
	padding: 40px 0;
	color: #9ca3af;
	font-size: 13px;
}


/* ═══════════════════════════════════════════════════════════
   글쓰기 페이지
   ═══════════════════════════════════════════════════════════ */

/* nt-main이 글쓰기에서 우측 사이드와 같이 있을 때 */
.together-page .write-main {
	min-width: 0;
	max-width: 100%;
	/*background: transparent;*/
	border-radius: 0;
	overflow: visible;
	padding: 8px 24px 24px; /* 상 8 / 좌우 24 / 하 24 */
}

/* 모바일에서는 패딩 줄이기 (nt-layout 자체가 좁아짐) */
@media (max-width: 820px) {
	.together-page .write-main {
		padding: 0 4px;
	}
}

.together-page .back-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: #6b7280;
	text-decoration: none;
	transition: color .15s;
}

	.together-page .back-link:hover {
		color: #e4002b;
	}

	.together-page .back-link svg {
		width: 16px;
		height: 16px;
	}

.together-page .write-title {
	font-size: 22px;
	font-weight: 900;
	color: #111827;
	margin: 14px 0 20px 0;
	padding: 0;
}

/* ── 게시판 토글 ── */
.together-page .board-toggle-wrap {
	margin-bottom: 18px;
}

.together-page .toggle-label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: #6b7280;
	margin: 0 0 8px 0;
}

.together-page .board-toggle {
	display: inline-flex;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 4px;
	gap: 4px;
}

	.together-page .board-toggle .board-btn {
		padding: 8px 20px;
		border: none;
		background: transparent;
		font-size: 13px;
		font-weight: 500;
		color: #6b7280;
		border-radius: 8px;
		cursor: pointer;
		transition: all .15s;
	}

		.together-page .board-toggle .board-btn:hover {
			background: #f9fafb;
		}

		.together-page .board-toggle .board-btn.active {
			background: #e4002b;
			color: #fff;
			font-weight: 700;
		}

			.together-page .board-toggle .board-btn.active.book {
				background: #c7973a;
			}

.together-page .board-hint {
	font-size: 12px;
	color: #9ca3af;
	margin: 8px 0 0 0;
}

/* ── 뉴스북 작성 규칙 ── */
.together-page .newsbook-rules {
	background: #fffbeb;
	border: 1px solid #fde68a;
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 18px;
}

	.together-page .newsbook-rules .rules-title {
		font-size: 13px;
		font-weight: 700;
		color: #92400e;
		margin-bottom: 8px;
	}

	.together-page .newsbook-rules .rule-item {
		display: flex;
		align-items: center;
		gap: 8px;
		font-size: 12px;
		color: #b45309;
		margin-bottom: 6px;
	}

		.together-page .newsbook-rules .rule-item:last-child {
			margin-bottom: 0;
		}

		.together-page .newsbook-rules .rule-item .num {
			width: 16px;
			height: 16px;
			border-radius: 50%;
			background: #fde68a;
			color: #b45309;
			font-size: 10px;
			font-weight: 700;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			flex-shrink: 0;
		}

/* ── ★ 에디터 카드 (흰 박스) ★ ── */
.together-page .write-card {
	background: #ffffff;
	border-radius: 16px;
	padding: 16px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.02);
}

/* ── 폼 row ── */
.together-page .form-row {
	margin-bottom: 20px;
}

	.together-page .form-row:last-of-type {
		margin-bottom: 0;
	}

.together-page .form-label {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: #374151;
	margin: 0 0 8px 0;
}

	.together-page .form-label .optional {
		font-size: 11px;
		font-weight: 500;
		color: #9ca3af;
		margin-left: 6px;
	}

/* 인풋 */
.together-page .form-input {
	width: 100%;
	padding: 12px 16px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	font-size: 15px;
	color: #1f2937;
	outline: none;
	transition: border-color .15s;
	box-sizing: border-box;
	background: #fff;
}

	.together-page .form-input:focus {
		border-color: #e4002b;
	}

	.together-page .form-input::placeholder {
		color: #d1d5db;
	}

.together-page .title-input {
	font-size: 17px;
	font-weight: 500;
}

/* 글자수 */
.together-page .title-count-wrap,
.together-page .body-status-wrap {
	text-align: right;
	margin-top: 6px;
	font-size: 11px;
}

.together-page .body-status-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.together-page .count {
	font-size: 11px;
	color: #9ca3af;
}

	.together-page .count.ok {
		color: #10b981;
		font-weight: 700;
	}

	.together-page .count.short {
		color: #e4002b;
	}

.together-page .count-min {
	font-size: 11px;
	color: #d1d5db;
}

.together-page .body-status {
	font-size: 11px;
	color: #e4002b;
}

/* 썸네일 드롭존 */
.together-page .thumb-dropzone {
	position: relative;
	border: 2px dashed #e5e7eb;
	border-radius: 12px;
	padding: 28px 24px;
	text-align: center;
	cursor: pointer;
	transition: border-color .15s;
	background: #fff;
}

	.together-page .thumb-dropzone:hover {
		border-color: #e4002b;
	}

	.together-page .thumb-dropzone svg {
		color: #d1d5db;
		margin: 0 auto 8px;
		display: block;
	}

	.together-page .thumb-dropzone .dropzone-text {
		font-size: 13px;
		color: #9ca3af;
		margin: 0;
	}

	.together-page .thumb-dropzone .dropzone-sub {
		font-size: 11px;
		color: #d1d5db;
		margin: 4px 0 0 0;
	}

.together-page .thumb-preview {
	position: relative;
	margin-top: 12px;
}

	.together-page .thumb-preview img {
		max-width: 100%;
		max-height: 240px;
		border-radius: 8px;
		display: block;
		margin: 0 auto;
	}

	.together-page .thumb-preview .thumb-remove {
		position: absolute;
		top: 6px;
		right: 6px;
		width: 28px;
		height: 28px;
		border: none;
		border-radius: 50%;
		background: rgba(0,0,0,0.6);
		color: #fff;
		font-size: 16px;
		cursor: pointer;
		line-height: 1;
	}

/* 발행 버튼 영역 */
.together-page .write-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #f3f4f6;
}

.together-page .daily-limit {
	font-size: 11px;
	color: #d1d5db;
}

	.together-page .daily-limit b {
		color: #6b7280;
	}

.together-page .publish-btn {
	background: #e4002b;
	color: #fff;
	border: none;
	padding: 10px 24px;
	font-size: 14px;
	font-weight: 700;
	border-radius: 8px;
	cursor: pointer;
	transition: background .15s;
	margin-left: auto;
}

	.together-page .publish-btn:hover {
		background: #c50025;
	}

/* Toast UI Editor 스코프 */
.together-page #editorWrap .toastui-editor-defaultUI {
	border: 1px solid #e5e7eb;
	border-radius: 4px;
}

.together-page #editorWrap .toastui-editor-toolbar {
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
}

.together-page .badge-cate.article {
	background: #fef3c7;
	color: #b45309;
}


/* ═══════════════════════════════════════════════════════════
   답글 작성 페이지 전용
   ═══════════════════════════════════════════════════════════ */

/* 원글 카드 */
.together-page .reply-source-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 16px 20px;
	margin-bottom: 14px;
}

.together-page .reply-source-tags {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}

.together-page .reply-source-label {
	font-size: 11px;
	font-weight: 700;
	color: #6b7280;
}

.together-page .reply-source-title {
	font-size: 15px;
	font-weight: 700;
	color: #1f2937;
	line-height: 1.5;
	margin: 0 0 10px 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.together-page .reply-source-author {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}

	.together-page .reply-source-author .avatar {
		width: 22px;
		height: 22px;
		border-radius: 50%;
		color: #fff;
		font-weight: 700;
		font-size: 10px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.together-page .reply-source-author .nick {
		font-size: 13px;
		font-weight: 700;
		color: #4b5563;
	}

	.together-page .reply-source-author .grade-badge {
		font-size: 10px;
		font-weight: 700;
		padding: 1px 5px;
		border-radius: 3px;
	}

		.together-page .reply-source-author .grade-badge.p {
			background: #f3e8ff;
			color: #7e22ce;
		}

		.together-page .reply-source-author .grade-badge.g {
			background: #dbeafe;
			color: #1d4ed8;
		}

.together-page .reply-source-link {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	color: #e4002b;
	text-decoration: none;
	margin-top: 4px;
}

	.together-page .reply-source-link:hover {
		text-decoration: underline;
	}

/* ═══════════════════════════════════════════════════════════
   답글 작성 페이지 — 안내 박스만 (원글 카드는 .quote-card 공통 사용)
   ═══════════════════════════════════════════════════════════ */

/* 답글 안내 박스 */
.together-page .reply-notice {
	display: flex;
	align-items: center;
	gap: 8px;
	background: #fdf3f4;
	border: 1px solid #fee2e2;
	border-radius: 10px;
	padding: 10px 14px;
	margin: 0 0 18px 0;
	font-size: 12.5px;
	color: #6b7280;
}

.together-page .reply-notice-icon {
	color: #e4002b;
	font-size: 14px;
	font-weight: 700;
	flex-shrink: 0;
}

.together-page .reply-notice b {
	color: #e4002b;
	font-weight: 700;
}

/* ═══════════════════════════════════════════════════════════
   OG 카드 (본문 에디터 위에 표시)
   ═══════════════════════════════════════════════════════════ */
.together-page .editor-wrap-outer {
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	overflow: hidden;
	background: #fff;
}

.together-page .og-card-attached {
	background: #fafbfc;
	border-bottom: 1px solid #e5e7eb;
	padding: 14px 16px;
	position: relative;
}

.together-page .og-card-top {
	display: flex;
	gap: 14px;
	cursor: pointer;
	align-items: flex-start;
}

	.together-page .og-card-top img {
		width: 110px;
		height: 80px;
		object-fit: cover;
		flex-shrink: 0;
		border-radius: 6px;
		background: #e5e7eb;
	}

.together-page .og-card-body {
	flex: 1;
	min-width: 0;
	padding-right: 32px;
}

.together-page .og-card-source {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 11px;
	color: #6b7280;
	font-weight: 500;
	margin-bottom: 4px;
}

.together-page .og-card-title {
	font-size: 14px;
	font-weight: 700;
	color: #111827;
	line-height: 1.4;
	margin-bottom: 4px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.together-page .og-card-desc {
	font-size: 12.5px;
	color: #6b7280;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.together-page .og-card-link {
	display: block;
	text-align: right;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #e5e7eb;
	font-size: 12.5px;
	font-weight: 700;
	color: #e4002b;
	text-decoration: none;
}

	.together-page .og-card-link:hover {
		text-decoration: underline;
	}

.together-page .og-card-remove {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 50%;
	background: rgba(0,0,0,0.4);
	color: #fff;
	font-size: 14px;
	cursor: pointer;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}

	.together-page .og-card-remove:hover {
		background: rgba(0,0,0,0.7);
	}

/* Toast UI Editor 외곽 스타일 제거 (editor-wrap-outer에서 처리) */
.together-page .editor-wrap-outer #editorWrap .toastui-editor-defaultUI {
	border: none;
	border-radius: 0;
}

/* ═══════════════════════════════════════════════════════════
   상세 페이지 (BoardDetail.aspx)
   ═══════════════════════════════════════════════════════════ */

/* 메인 영역 — 우측 사이드 있어도 본문 700px 유지 */
.together-page .detail-main {
	background: transparent;
	border-radius: 0;
	overflow: visible;
	padding: 8px 0 24px 0;
}

/* 돌아가기 링크 */
.together-page .detail-back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: #6b7280;
	text-decoration: none;
	margin-bottom: 16px;
	transition: color .15s;
}

	.together-page .detail-back:hover {
		color: #e4002b;
	}

	.together-page .detail-back svg {
		width: 16px;
		height: 16px;
	}

/* 카드 자체가 a 태그 — hover 시 강조 */
.together-page .detail-quote-source {
	display: block;
	background: #f9fafb;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 16px;
	text-decoration: none;
	color: inherit;
	cursor: pointer; /* ★ 추가 */
	transition: all .15s;
}

	.together-page .detail-quote-source:hover {
		border-color: #d1d5db;
		background: #f3f4f6; /* ★ 더 진한 배경 */
	}

.together-page .detail-quote-source-label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 700;
	color: #9ca3af;
	margin-bottom: 8px;
}

	.together-page .detail-quote-source-label svg {
		width: 16px;
		height: 16px;
	}

.together-page .detail-quote-source-row {
	display: flex;
	gap: 16px;
	align-items: flex-start;
}

.together-page .detail-quote-source-body {
	flex: 1;
	min-width: 0;
}

.together-page .detail-quote-source-badge {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	background: #f3f4f6;
	color: #6b7280;
	padding: 2px 6px;
	border-radius: 4px;
}

.together-page .detail-quote-source-title {
	font-size: 16px;
	font-weight: 700;
	color: #111827;
	line-height: 1.45;
	margin: 8px 0 8px 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.together-page .detail-quote-source-excerpt {
	font-size: 13px;
	color: #6b7280;
	line-height: 1.55;
	margin: 0 0 12px 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.together-page .detail-quote-source-author {
	display: flex;
	align-items: center;
	gap: 6px;
}

	.together-page .detail-quote-source-author .avatar {
		width: 20px;
		height: 20px;
		border-radius: 50%;
		color: #fff;
		font-weight: 700;
		font-size: 9px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.together-page .detail-quote-source-author .nick {
		font-size: 12px;
		font-weight: 700;
		color: #4b5563;
	}

	.together-page .detail-quote-source-author .grade-badge {
		font-size: 10px;
		font-weight: 700;
		padding: 1px 5px;
		border-radius: 3px;
	}

		.together-page .detail-quote-source-author .grade-badge.p {
			background: #f3e8ff;
			color: #7e22ce;
		}

		.together-page .detail-quote-source-author .grade-badge.g {
			background: #dbeafe;
			color: #1d4ed8;
		}

	.together-page .detail-quote-source-author .time {
		font-size: 11px;
		color: #9ca3af;
	}

.together-page .detail-quote-source-link {
	font-size: 12px;
	color: #e4002b;
	font-weight: 700;
	flex-shrink: 0;
	align-self: center;
}

/* 본문 카드 */
.together-page .detail-card {
	background: #fff;
	border: 1px solid #f3f4f6;
	border-radius: 16px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.02);
	overflow: hidden;
}

/* 작성자 영역 */
.together-page .detail-author {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

	.together-page .detail-author .avatar {
		width: 44px;
		height: 44px;
		border-radius: 50%;
		color: #fff;
		font-weight: 700;
		font-size: 16px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

.together-page .detail-author-info {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}

	.together-page .detail-author-info .nick {
		font-size: 15px;
		font-weight: 700;
		color: #111827;
		text-decoration: none;
	}

		.together-page .detail-author-info .nick:hover {
			color: #e4002b;
		}

	.together-page .detail-author-info .grade-badge {
		font-size: 11px;
		font-weight: 700;
		padding: 2px 6px;
		border-radius: 4px;
	}

		.together-page .detail-author-info .grade-badge.p {
			background: #f3e8ff;
			color: #7e22ce;
		}

		.together-page .detail-author-info .grade-badge.g {
			background: #dbeafe;
			color: #1d4ed8;
		}

	.together-page .detail-author-info .time {
		font-size: 13px;
		color: #9ca3af;
	}

/* 본문 영역 */
.together-page .detail-card-inner {
	padding: 24px 24px 20px 24px;
}

.together-page .detail-title {
	font-size: 20px;
	font-weight: 900;
	color: #222;
	line-height: 1.4;
	margin: 0 0 14px 0;
}

.together-page .detail-content {
	font-size: 15px;
	line-height: 1.8;
	color: #1f2937;
	margin: 0 0 20px 0;
	word-break: break-word;
}

	.together-page .detail-content p {
		margin: 0 0 14px 0;
	}

		.together-page .detail-content p:last-child {
			margin-bottom: 0;
		}

	.together-page .detail-content img {
		max-width: 100%;
		height: auto;
		border-radius: 8px;
		margin: 8px 0;
	}

/* 답글 작성 유도 박스 */
.together-page .detail-reply-prompt {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: #fdf3f4;
	border: 1px solid #fee2e2;
	border-radius: 12px;
	padding: 12px 16px;
	margin: 0 0 20px 0;
}

.together-page .detail-reply-prompt-text {
	font-size: 13px;
	color: #4b5563;
}

	.together-page .detail-reply-prompt-text b {
		color: #e4002b;
		font-weight: 700;
	}

.together-page .detail-reply-prompt-btn {
	display: inline-block;
	background: #e4002b;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 7px 14px;
	border-radius: 9999px;
	text-decoration: none;
	flex-shrink: 0;
	transition: background .15s;
}

	.together-page .detail-reply-prompt-btn:hover {
		background: #c50025;
		color: #fff;
	}

/* 좋아요/싫어요 */
.together-page .detail-reactions {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 20px 0 0 0;
}

	.together-page .detail-reactions .reaction-btn {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 10px 20px;
		border: 1px solid #e5e7eb;
		border-radius: 9999px;
		background: #fff;
		color: #4b5563;
		font-size: 14px;
		font-weight: 500;
		cursor: pointer;
		transition: all .15s;
	}

		.together-page .detail-reactions .reaction-btn:hover {
			color: #e4002b;
			border-color: #e4002b;
			background: rgba(228,0,43,0.04);
		}

		.together-page .detail-reactions .reaction-btn.dislike:hover {
			color: #3b82f6;
			border-color: #3b82f6;
			background: rgba(59,130,246,0.04);
		}

		.together-page .detail-reactions .reaction-btn .count {
			font-weight: 700;
		}

		.together-page .detail-reactions .reaction-btn svg {
			width: 18px;
			height: 18px;
		}

/* 액션 바 (답글/댓글/공유) */
.together-page .detail-actions {
	display: flex;
	align-items: center;
	gap: 20px;
	margin: 16px 0 0 0;
	padding-top: 16px;
	border-top: 1px solid #f3f4f6;
	font-size: 13px;
	color: #9ca3af;
}

	.together-page .detail-actions a,
	.together-page .detail-actions button {
		background: none;
		border: none;
		cursor: pointer;
		color: inherit;
		font-size: inherit;
		padding: 0;
		text-decoration: none;
		transition: color .15s;
	}

	.together-page .detail-actions .action-reply {
		display: inline-flex;
		align-items: center;
		gap: 4px;
		color: #e4002b;
		font-weight: 700;
	}

		.together-page .detail-actions .action-reply:hover {
			text-decoration: underline;
		}

		.together-page .detail-actions .action-reply svg {
			width: 16px;
			height: 16px;
		}

	.together-page .detail-actions .action-share {
		margin-left: auto;
		cursor: pointer;
	}

		.together-page .detail-actions .action-share:hover {
			color: #4b5563;
		}

	.together-page .detail-actions .action-comment:hover {
		color: #10b981;
	}

/* 인용 답글 모아보기 배너 */
.together-page .detail-replies-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 24px 20px 24px;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 12px 16px;
	text-decoration: none;
	transition: all .15s;
}

	.together-page .detail-replies-banner:hover {
		border-color: rgba(228,0,43,0.3);
		background: rgba(228,0,43,0.04);
	}

.together-page .detail-replies-banner-left {
	display: flex;
	align-items: center;
	gap: 10px;
}

.together-page .detail-replies-banner-icon {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #fef3f3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

	.together-page .detail-replies-banner-icon svg {
		width: 16px;
		height: 16px;
		color: #e4002b;
	}

.together-page .detail-replies-banner-title {
	font-size: 13px;
	font-weight: 700;
	color: #1f2937;
	margin: 0 0 2px 0;
}

	.together-page .detail-replies-banner-title b {
		color: #e4002b;
	}

.together-page .detail-replies-banner-sub {
	font-size: 11px;
	color: #9ca3af;
	margin: 0;
}

.together-page .detail-replies-banner-arrow {
	width: 16px;
	height: 16px;
	color: #9ca3af;
	flex-shrink: 0;
}

/* AI 재판단 안내 */
.together-page .detail-ai-notice {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 24px 20px 24px;
	background: #f9fafb;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 10px 16px;
}

	.together-page .detail-ai-notice svg {
		width: 16px;
		height: 16px;
		color: #9ca3af;
		flex-shrink: 0;
	}

	.together-page .detail-ai-notice p {
		font-size: 12px;
		color: #6b7280;
		margin: 0;
	}

	.together-page .detail-ai-notice b {
		color: #4b5563;
		font-weight: 700;
	}

/* 본인 글 — 수정/삭제 영역 */
.together-page .detail-owner-actions {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	margin-top: 16px;
}

.together-page .detail-owner-btn {
	padding: 7px 14px;
	border-radius: 9999px;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	border: 1px solid;
	background: #fff;
	text-decoration: none;
	transition: all .15s;
}

	.together-page .detail-owner-btn.edit {
		color: #6b7280;
		border-color: #e5e7eb;
	}

		.together-page .detail-owner-btn.edit:hover {
			color: #1f2937;
			border-color: #d1d5db;
		}

	.together-page .detail-owner-btn.del {
		color: #ef4444;
		border-color: #fecaca;
	}

		.together-page .detail-owner-btn.del:hover {
			background: #fef2f2;
		}

/* 댓글 영역 */
.together-page .detail-comments {
	border-top: 1px solid #f3f4f6;
}

.together-page .detail-comments-header {
	padding: 12px 24px;
	background: rgba(249,250,251,0.5);
	font-size: 13px;
	font-weight: 700;
	color: #6b7280;
}

	.together-page .detail-comments-header .count {
		color: #1f2937;
	}

/* 개별 댓글 */
.together-page .comment-item {
	padding: 12px 16px;
	border-bottom: 1px solid #fafafa;
}

	.together-page .comment-item:last-child {
		border-bottom: none;
	}

.together-page .comment-row {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.together-page .comment-avatar {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: #fff;
	font-weight: 700;
	font-size: 11px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.together-page .comment-body {
	flex: 1;
	min-width: 0;
}

.together-page .comment-header {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 4px;
}

	.together-page .comment-header .nick {
		font-size: 13px;
		font-weight: 700;
		color: #1f2937;
	}

	.together-page .comment-header .grade-badge {
		font-size: 10px;
		font-weight: 700;
		padding: 1px 5px;
		border-radius: 3px;
	}

		.together-page .comment-header .grade-badge.p {
			background: #f3e8ff;
			color: #7e22ce;
		}

		.together-page .comment-header .grade-badge.g {
			background: #dbeafe;
			color: #1d4ed8;
		}

	.together-page .comment-header .time {
		font-size: 12px;
		color: #9ca3af;
	}

.together-page .comment-text {
	font-size: 14px;
	color: #374151;
	margin: 0 0 8px 0;
	line-height: 1.5;
	word-break: break-word;
}

.together-page .comment-actions {
	display: flex;
	align-items: center;
	gap: 16px;
	font-size: 12px;
	color: #9ca3af;
}

	.together-page .comment-actions button {
		background: none;
		border: none;
		cursor: pointer;
		color: inherit;
		font-size: inherit;
		padding: 0;
		transition: color .15s;
	}

	.together-page .comment-actions .like:hover {
		color: #ef4444;
	}

	.together-page .comment-actions .dislike:hover {
		color: #3b82f6;
	}

	.together-page .comment-actions .reply-toggle:hover {
		color: #4b5563;
	}

	.together-page .comment-actions .edit-link,
	.together-page .comment-actions .del-link {
		margin-left: auto;
		text-decoration: underline;
		cursor: pointer;
	}

	.together-page .comment-actions .edit-link {
		margin-left: auto;
	}

	.together-page .comment-actions .del-link {
		margin-left: 4px;
	}

		.together-page .comment-actions .edit-link:hover,
		.together-page .comment-actions .del-link:hover {
			color: #4b5563;
		}

/* 대댓글 영역 */
.together-page .reply-list,
.together-page .reply-form {
	margin-top: 12px;
	padding-left: 12px;
	border-left: 2px solid #f3f4f6;
}

.together-page .reply-form {
	border-left-color: rgba(228,0,43,0.2);
}

.together-page .reply-row {
	display: flex;
	gap: 8px;
	align-items: flex-start;
}

	.together-page .reply-row + .reply-row {
		margin-top: 12px;
	}

.together-page .reply-avatar {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	color: #fff;
	font-weight: 700;
	font-size: 9px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.together-page .reply-body {
	flex: 1;
	min-width: 0;
}

.together-page .reply-input-wrap {
	flex: 1;
}

.together-page .reply-input {
	width: 100%;
	background: #f3f4f6;
	border: 1px solid transparent;
	border-radius: 10px;
	padding: 8px 12px;
	font-size: 13px;
	color: #1f2937;
	outline: none;
	box-sizing: border-box;
	transition: all .15s;
}

	.together-page .reply-input:focus {
		background: #fff;
		border-color: rgba(228,0,43,0.3);
	}

.together-page .reply-input-actions {
	display: flex;
	justify-content: flex-end;
	gap: 6px;
	margin-top: 6px;
}

.together-page .reply-input-btn {
	height: auto;
	padding: 7px 16px; /* 5px 12px → 7px 16px */
	border-radius: 9999px;
	font-size: 13px; /* 11px → 13px */
	font-weight: 700;
	border: none;
	cursor: pointer;
	transition: background .15s;
}

	.together-page .reply-input-btn.cancel {
		background: #f3f4f6;
		color: #6b7280;
	}

		.together-page .reply-input-btn.cancel:hover {
			background: #e5e7eb;
		}

	.together-page .reply-input-btn.submit {
		background: #e4002b;
		color: #fff;
	}

		.together-page .reply-input-btn.submit:hover {
			background: #c50025;
		}

/* 댓글 작성 박스 (하단) */
.together-page .comment-form {
	padding: 16px 24px;
}

.together-page .comment-form-row {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.together-page .comment-form-input {
	flex: 1;
	width: 100%;
	background: #f3f4f6;
	border: 1px solid transparent;
	border-radius: 12px;
	padding: 10px 16px;
	font-size: 14px;
	color: #1f2937;
	outline: none;
	box-sizing: border-box;
	resize: none;
	transition: all .15s;
	font-family: inherit;
}

	.together-page .comment-form-input:focus {
		background: #fff;
		border-color: rgba(228,0,43,0.3);
	}

.together-page .comment-form-actions {
	display: flex;
	justify-content: flex-end;
	margin-top: 8px;
}

.together-page .comment-form-btn {
	background: #e4002b;
	color: #fff;
	border: none;
	padding: 7px 16px;
	border-radius: 9999px;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	transition: background .15s;
}

	.together-page .comment-form-btn:hover {
		background: #c50025;
	}

/* 모바일 */
@media (max-width: 820px) {
	.together-page .detail-card-inner {
		padding: 18px 16px 16px 16px;
	}

	.together-page .detail-replies-banner,
	.together-page .detail-ai-notice {
		margin: 0 16px 16px 16px;
	}

	.together-page .comment-item,
	.together-page .comment-form,
	.together-page .detail-comments-header {
		padding-left: 16px;
		padding-right: 16px;
	}

	.together-page .detail-title {
		font-size: 19px;
	}

	.together-page .detail-content {
		font-size: 14px;
	}
}

/* 대댓글 — 들여쓰기 + 좌측 라인 */
.together-page .comment-item.comment-reply {
	margin-left: 40px;
	padding-left: 16px;
	border-left: 2px solid #f3f4f6;
	background: #fafafa;
}

	.together-page .comment-item.comment-reply .comment-avatar {
		width: 28px;
		height: 28px;
		font-size: 10px;
	}

	.together-page .comment-item.comment-reply .comment-text {
		font-size: 13px;
	}

/* 대댓글 (Level 2) */
.together-page .comment-item.comment-reply {
	margin-left: 40px;
	padding-left: 16px;
	border-left: 2px solid #f3f4f6;
	background: #fafafa;
}

	.together-page .comment-item.comment-reply .comment-avatar {
		width: 28px;
		height: 28px;
		font-size: 10px;
	}

	.together-page .comment-item.comment-reply .comment-text {
		font-size: 13px;
	}

/* 대대댓글 (Level 3+) */
.together-page .comment-item.comment-reply-deep {
	margin-left: 76px; /* 대댓글보다 더 들여쓰기 */
	border-left-color: rgba(228,0,43,0.2); /* 살짝 빨간 라인 */
	background: #fafafa;
}

	.together-page .comment-item.comment-reply-deep .comment-avatar {
		width: 24px;
		height: 24px;
		font-size: 9px;
	}

/* ═══════════════════════════════════════════════════════════
   리스트 페이지 (NewtorangList / NewsbookList)
   ═══════════════════════════════════════════════════════════ */

/* 정렬 탭 — feed-tabs와 동일하게 보이게 active 클래스 사용 */
.together-page .feed-tabs a.active {
	color: #111827;
	font-weight: 700;
	border-bottom-color: #e4002b;
}

/* FAB 글쓰기 버튼 (모바일) */
.together-page .fab-write {
	display: none;
	position: fixed;
	bottom: 24px;
	right: 24px;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #e4002b;
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	box-shadow: 0 4px 12px rgba(228, 0, 43, 0.35);
	z-index: 40;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: transform 0.2s, box-shadow 0.2s;
}

	.together-page .fab-write:hover {
		transform: scale(1.1);
		box-shadow: 0 6px 20px rgba(228, 0, 43, 0.45);
		color: #fff;
	}

@media (max-width: 820px) {
	.together-page .fab-write {
		display: flex;
	}
}

/* ═══════════════════════════════════════════════════════════
   프로필 페이지 (시안 그대로)
   ═══════════════════════════════════════════════════════════ */
.together-page .profile-main {
	background: transparent;
	padding: 0;
}

/* ── 헤더 카드 ── */
.together-page .profile-header-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 32px;
	margin-bottom: 16px;
}

.together-page .profile-header-row {
	display: flex;
	align-items: flex-start;
	gap: 16px;
}

.together-page .profile-avatar {
	width: 88px;
	height: 88px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	font-weight: 900;
	color: #fff;
	flex-shrink: 0;
	background: linear-gradient(135deg, #e4002b, #ff6b35);
}

.together-page .profile-info {
	flex: 1;
	min-width: 0;
}

.together-page .profile-name-row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 4px;
}

.together-page .profile-name {
	font-size: 22px;
	font-weight: 900;
	color: #222;
	margin: 0;
}
/* 등급 P 사각형 (파란) */
.together-page .grade-p-square {
	display: inline-block;
	font-size: 10px;
	font-weight: 900;
	padding: 2px 6px;
	border-radius: 4px;
	background: #2563eb;
	color: #fff;
	line-height: 1;
}

.together-page .grade-g-square {
	display: inline-block;
	font-size: 10px;
	font-weight: 900;
	padding: 2px 6px;
	border-radius: 4px;
	background: #0891b2;
	color: #fff;
	line-height: 1;
}
/* 프리미엄 / 거버넌스 그라데이션 알약 */
.together-page .grade-name-pill {
	display: inline-block;
	font-size: 10px;
	font-weight: 700;
	padding: 6px 8px;
	border-radius: 4px;
	color: #fff;
	line-height: 1;
}

.together-page .grade-premium {
	background: linear-gradient(135deg, #7c3aed, #5b21b6);
}

.together-page .grade-governance {
	background: linear-gradient(135deg, #0ea5e9, #0369a1);
}

.together-page .profile-join {
	font-size: 13px;
	color: #6b7280;
	margin-bottom: 8px;
}

.together-page .profile-intro {
	font-size: 14px;
	color: #444;
	line-height: 1.55;
	margin: 0 0 12px 0;
}

.together-page .profile-follow-counts {
	display: flex;
	gap: 20px;
	font-size: 14px;
}

.together-page .follow-count {
	color: #6b7280;
}

	.together-page .follow-count b {
		color: #222;
		margin-left: 4px;
	}

/* 액션 버튼 */
.together-page .profile-actions {
	flex-shrink: 0;
}

	.together-page .profile-actions .my-actions {
		display: flex;
		flex-direction: row;
		gap: 6px;
		align-items: center;
		flex-wrap: nowrap;
	}

.together-page .profile-btn {
	display: inline-block;
	padding: 7px 12px;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	border: 1px solid transparent;
	transition: all .15s;
	white-space: nowrap;
}

.together-page .profile-btn-edit {
	background: #fff;
	color: #222;
	border-color: #d1d5db;
	font-size: 13px;
}

	.together-page .profile-btn-edit:hover {
		background: #f9fafb;
	}

.together-page .profile-btn-sub {
	background: #fff;
	color: #6b7280;
	border-color: #e5e7eb;
	font-size: 11px;
	font-weight: 500;
	padding: 7px 10px;
}

	.together-page .profile-btn-sub:hover {
		background: #f9fafb;
		color: #222;
	}

.together-page .profile-btn-follow {
	background: #e4002b;
	color: #fff;
	padding: 8px 20px;
}

	.together-page .profile-btn-follow:hover {
		background: #c50025;
	}

	.together-page .profile-btn-follow.following {
		background: #fff;
		color: #6b7280;
		border-color: #d1d5db;
	}

		.together-page .profile-btn-follow.following:hover {
			background: #fef2f2;
			color: #e4002b;
			border-color: #fecaca;
		}

/* ── 점수 대시보드 ── */
.together-page .score-dashboard-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 24px;
	margin-bottom: 16px;
}

.together-page .score-main-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 16px;
	margin-bottom: 16px;
}

.together-page .score-card {
	border-radius: 12px;
	padding: 20px;
	text-align: center;
}

.together-page .score-card-main {
	background: linear-gradient(135deg, #fef2f2, #fff7ed);
	border: 1px solid #fee2e2;
}

.together-page .score-card-sub {
	background: #f9fafb;
	border: 1px solid #f3f4f6;
}

.together-page .score-label {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #4b5563 !important;
	margin-bottom: 6px !important;
}

.together-page .score-value-main {
	font-size: 32px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	color: #dc2626 !important;
}

.together-page .score-value-sub {
	font-size: 28px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	color: #111827 !important;
}

.together-page .score-unit {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #6b7280 !important;
	margin-top: 6px !important;
}

.together-page .ai-confirm-pill-wrap {
	text-align: center;
	margin-bottom: 20px;
}

.together-page .ai-confirm-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px !important;
	color: #6b7280 !important;
	background: #f9fafb;
	border: 1px solid #f3f4f6;
	border-radius: 999px;
	padding: 6px 14px;
}

	.together-page .ai-confirm-pill .ai-icon {
		width: 14px;
		height: 14px;
	}

.together-page .score-sub-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 12px;
}

.together-page .stat-card {
	text-align: center;
	padding: 12px 8px;
	border-radius: 8px;
	border: 1px solid #f3f4f6;
}

.together-page .stat-label {
	font-size: 11px !important;
	color: #6b7280 !important;
	margin-bottom: 4px !important;
}

.together-page .stat-value {
	font-size: 18px !important;
	font-weight: 900 !important;
	color: #111827 !important;
}

/* ── 탭 + 리스트 ── */
.together-page .profile-tabs-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	overflow: hidden;
}

.together-page .profile-tabs {
	display: flex;
	border-bottom: 1px solid #e5e7eb;
}

.together-page .profile-tab {
	flex: 1;
	padding: 14px 0;
	text-align: center;
	font-size: 14px;
	font-weight: 500;
	color: #6b7280;
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: all .15s;
	cursor: pointer;
}

	.together-page .profile-tab:hover {
		color: #374151;
	}

	.together-page .profile-tab.active {
		color: #e4002b;
		font-weight: 700;
		border-bottom-color: #e4002b;
	}

/* 리스트 아이템 */
.together-page .profile-list-item {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	padding: 20px 24px;
	border-bottom: 1px solid #f3f4f6;
	text-decoration: none;
	color: inherit;
	transition: background .15s;
}

	.together-page .profile-list-item:hover {
		background: #fafafa;
	}

	.together-page .profile-list-item:last-child {
		border-bottom: none;
	}

.together-page .profile-list-content {
	flex: 1;
	min-width: 0;
}

.together-page .profile-list-title {
	font-size: 15px;
	font-weight: 700;
	color: #222;
	line-height: 1.45;
	margin: 0 0 8px 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.together-page .profile-list-item:hover .profile-list-title {
	color: #e4002b;
}

.together-page .profile-list-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	font-size: 12px;
	color: #9ca3af;
}

	.together-page .profile-list-meta .dot {
		color: #d1d5db;
	}

.together-page .profile-list-score {
	flex-shrink: 0;
	text-align: right;
}

.together-page .post-score {
	font-size: 22px;
	font-weight: 900;
	color: #e4002b;
	line-height: 1;
}

.together-page .post-score-label {
	font-size: 11px;
	color: #9ca3af;
	margin-top: 4px;
}

/* 답글 */
.together-page .profile-reply-context {
	font-size: 12px;
	color: #9ca3af;
	margin-bottom: 4px;
}

	.together-page .profile-reply-context .dim {
		color: #d1d5db;
	}

.together-page .profile-reply-text {
	font-size: 14px;
	color: #222;
	line-height: 1.55;
	margin: 0 0 6px 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* TTR 내역 */
.together-page .ttr-list-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px 24px;
	border-bottom: 1px solid #f3f4f6;
}

	.together-page .ttr-list-item:last-child {
		border-bottom: none;
	}

.together-page .ttr-reason {
	font-size: 14px;
	font-weight: 700;
	color: #222;
}

.together-page .ttr-time {
	font-size: 12px;
	color: #9ca3af;
	margin-top: 4px;
}

.together-page .ttr-amount {
	font-size: 18px;
	font-weight: 900;
	color: #16a34a;
}

/* 빈 상태 + 페이징 */
.together-page .profile-empty {
	text-align: center;
	padding: 60px 20px;
	color: #9ca3af;
	font-size: 14px;
}

.together-page .profile-paging {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 4px;
	padding: 20px 0;
	border-top: 1px solid #f3f4f6;
}

	.together-page .profile-paging a,
	.together-page .profile-paging span {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 32px;
		height: 32px;
		padding: 0 8px;
		font-size: 13px;
		color: #6b7280;
		text-decoration: none;
		border-radius: 6px;
		transition: all .15s;
	}

		.together-page .profile-paging a:hover {
			background: #f3f4f6;
			color: #222;
		}

	.together-page .profile-paging .current {
		background: #e4002b;
		color: #fff;
		font-weight: 700;
	}

/* 모바일 */
@media (max-width: 820px) {
	.together-page .profile-header-card {
		padding: 20px;
	}

	.together-page .profile-header-row {
		flex-wrap: wrap;
	}

	.together-page .profile-actions {
		width: 100%;
		margin-top: 12px;
	}

		.together-page .profile-actions .my-actions {
			flex-wrap: wrap;
		}

	.together-page .score-sub-grid {
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}

	.together-page .score-main-grid {
		grid-template-columns: 1fr;
	}
}

/* ═══════════════════════════════════════════════════════════
   프로필 편집 페이지
   ═══════════════════════════════════════════════════════════ */
.together-page .profile-edit-main {
	background: transparent;
	padding: 0;
}

/* 돌아가기 + 타이틀 */
.together-page .profile-edit-back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: #6b7280;
	text-decoration: none;
	margin-bottom: 12px;
}

	.together-page .profile-edit-back:hover {
		color: #e4002b;
	}

	.together-page .profile-edit-back svg {
		width: 16px;
		height: 16px;
	}

.together-page .profile-edit-title {
	font-size: 22px;
	font-weight: 900;
	color: #222;
	margin: 0 0 16px 0;
}

/* 편집 카드 */
.together-page .profile-edit-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	overflow: hidden;
}

.together-page .form-section {
	padding: 20px 24px;
	border-bottom: 1px solid #f3f4f6;
}

	.together-page .form-section:last-child {
		border-bottom: none;
	}

.together-page .form-label {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: #374151;
	margin-bottom: 10px;
}

.together-page .form-input {
	width: 100%;
	padding: 9px 14px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	font-size: 14px;
	color: #222;
	outline: none;
	transition: border-color .15s;
	box-sizing: border-box;
}

	.together-page .form-input:focus {
		border-color: #e4002b;
	}

.together-page .form-help {
	font-size: 11px;
	color: #9ca3af;
	margin: 6px 0 0 0;
}

/* 프로필 이미지 */
.together-page .profile-img-row {
	display: flex;
	align-items: center;
	gap: 16px;
}

.together-page .profile-img-preview {
	width: 88px;
	height: 88px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	font-weight: 900;
	color: #fff;
	flex-shrink: 0;
	background: linear-gradient(135deg, #e4002b, #ff6b35);
}

.together-page .profile-img-actions {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.together-page .img-change-btn {
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	background: #e4002b;
	border: none;
	border-radius: 8px;
	padding: 6px 14px;
	cursor: pointer;
	transition: background .15s;
}

	.together-page .img-change-btn:hover {
		background: #c50025;
	}

.together-page .img-default-btn {
	font-size: 12px;
	color: #6b7280;
	background: transparent;
	border: none;
	padding: 4px 0;
	cursor: pointer;
	text-align: left;
}

	.together-page .img-default-btn:hover {
		color: #222;
	}

/* 닉네임 */
.together-page .nick-row {
	display: flex;
	gap: 8px;
	align-items: center;
}

.together-page .nick-input {
	flex: 1;
}

.together-page .nick-change-btn {
	flex-shrink: 0;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	background: #e4002b;
	border: none;
	border-radius: 8px;
	padding: 9px 16px;
	cursor: pointer;
	text-decoration: none;
	white-space: nowrap;
	transition: background .15s;
}

	.together-page .nick-change-btn:hover {
		background: #c50025;
		color: #fff;
	}

/* 자기소개 */
.together-page .intro-textarea {
	resize: none;
	min-height: 70px;
}

.together-page .intro-status {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 6px;
}

.together-page .intro-count {
	font-size: 11px;
	color: #9ca3af;
}

/* 알림 설정 */
.together-page .noti-list {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.together-page .noti-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.together-page .noti-info {
	flex: 1;
}

.together-page .noti-name {
	font-size: 13px;
	color: #374151;
	margin: 0;
}

.together-page .noti-desc {
	font-size: 11px;
	color: #9ca3af;
	margin: 2px 0 0 0;
}

/* 토글 스위치 */
.together-page .noti-toggle {
	position: relative;
	display: inline-block;
	width: 44px;
	height: 24px;
	flex-shrink: 0;
	cursor: pointer;
}

	.together-page .noti-toggle input {
		opacity: 0;
		width: 0;
		height: 0;
		position: absolute;
	}

.together-page .noti-slider {
	position: absolute;
	inset: 0;
	background: #d1d5db;
	border-radius: 999px;
	transition: background .2s;
}

	.together-page .noti-slider::before {
		content: '';
		position: absolute;
		width: 20px;
		height: 20px;
		left: 2px;
		top: 2px;
		background: #fff;
		border-radius: 50%;
		transition: transform .2s;
	}

	.together-page .noti-slider.on {
		background: #e4002b !important;
	}

		.together-page .noti-slider.on::before {
			transform: translateX(20px);
		}

/* 저장/취소 푸터 */
.together-page .profile-edit-footer {
	display: flex;
	gap: 8px;
	margin-top: 16px;
}

.together-page .cancel-btn,
.together-page .save-btn {
	flex: 1;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	border-radius: 8px;
	padding: 13px 0;
	text-decoration: none;
	cursor: pointer;
	transition: all .15s;
	border: none;
}

.together-page .cancel-btn {
	background: #fff;
	color: #6b7280;
	border: 1px solid #d1d5db;
}

	.together-page .cancel-btn:hover {
		background: #f9fafb;
		color: #222;
	}

.together-page .save-btn {
	background: #e4002b;
	color: #fff;
}

	.together-page .save-btn:hover {
		background: #c50025;
		color: #fff;
	}

/* ═══════════════════════════════════════════════════════════
   팔로우 관리 페이지
   ═══════════════════════════════════════════════════════════ */
.together-page .follows-main {
	background: transparent;
	padding: 0;
}

.together-page .follows-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	overflow: hidden;
}

/* 탭 */
.together-page .follows-tabs {
	display: flex;
	border-bottom: 1px solid #e5e7eb;
}

.together-page .follows-tab {
	flex: 1;
	padding: 14px 0;
	text-align: center;
	font-size: 14px;
	font-weight: 500;
	color: #6b7280;
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: all .15s;
	cursor: pointer;
}

	.together-page .follows-tab:hover {
		color: #374151;
	}

	.together-page .follows-tab.active {
		color: #e4002b;
		font-weight: 700;
		border-bottom-color: #e4002b;
	}

	.together-page .follows-tab .count {
		color: #9ca3af;
		margin-left: 4px;
		font-size: 13px;
	}

/* 검색 */
.together-page .follows-search-row {
	padding: 12px 24px;
	border-bottom: 1px solid #f3f4f6;
}

.together-page .follows-search {
	position: relative;
	display: flex;
	align-items: center;
}

	.together-page .follows-search .search-icon {
		position: absolute;
		left: 12px;
		top: 50%;
		transform: translateY(-50%);
		width: 16px;
		height: 16px;
		color: #9ca3af;
	}

	.together-page .follows-search .search-input {
		flex: 1;
		background: #f9fafb;
		border: 1px solid transparent;
		border-radius: 8px;
		padding: 9px 14px 9px 36px;
		font-size: 13px;
		outline: none;
	}

		.together-page .follows-search .search-input:focus {
			background: #fff;
			border-color: #e4002b;
		}

	.together-page .follows-search .search-btn {
		margin-left: 8px;
		background: #fff;
		color: #6b7280;
		border: 1px solid #d1d5db;
		border-radius: 8px;
		padding: 8px 14px;
		font-size: 13px;
		font-weight: 700;
		text-decoration: none;
		cursor: pointer;
	}

		.together-page .follows-search .search-btn:hover {
			background: #f9fafb;
			color: #222;
		}

/* 리스트 */
.together-page .follows-list {
}

.together-page .follows-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 24px;
	border-bottom: 1px solid #f3f4f6;
	transition: background .15s;
}

	.together-page .follows-item:hover {
		background: #fafafa;
	}

	.together-page .follows-item:last-child {
		border-bottom: none;
	}

.together-page .follows-avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	flex-shrink: 0;
	text-decoration: none;
}

.together-page .follows-info {
	flex: 1;
	min-width: 0;
	text-decoration: none;
	color: inherit;
}

.together-page .follows-name-row {
	display: flex;
	align-items: center;
	gap: 6px;
}

.together-page .follows-name {
	font-size: 14px;
	font-weight: 700;
	color: #111827;
}

.together-page .grade-mini-p {
	display: inline-block;
	font-size: 10px;
	font-weight: 700;
	padding: 1px 5px;
	border-radius: 3px;
	background: #f3e8ff;
	color: #7c3aed;
	line-height: 1;
}

.together-page .grade-mini-g {
	display: inline-block;
	font-size: 10px;
	font-weight: 700;
	padding: 1px 5px;
	border-radius: 3px;
	background: #dbeafe;
	color: #1d4ed8;
	line-height: 1;
}

.together-page .follows-intro {
	font-size: 12px;
	color: #6b7280;
	line-height: 1.4;
	margin: 2px 0 0 0;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* 팔로우 버튼 */
.together-page .follows-btn {
	flex-shrink: 0;
	border-radius: 999px;
	padding: 7px 14px;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	transition: all .15s;
	border: 1px solid transparent;
}

	.together-page .follows-btn.following {
		background: #fff;
		color: #6b7280;
		border-color: #d1d5db;
	}

		.together-page .follows-btn.following:hover {
			background: #fef2f2;
			color: #e4002b;
			border-color: #fecaca;
		}

	.together-page .follows-btn.mutual {
		background: #e4002b;
		color: #fff;
		border-color: #e4002b;
	}

		.together-page .follows-btn.mutual:hover {
			background: #c50025;
			border-color: #c50025;
		}

.together-page .follows-btn-self {
	display: none;
}

/* 빈 상태 */
.together-page .follows-empty {
	text-align: center;
	padding: 60px 20px;
	color: #9ca3af;
	font-size: 14px;
}

/* ═══════════════════════════════════════════════════════════
   문의하기 페이지
   ═══════════════════════════════════════════════════════════ */
.together-page .inquiry-main {
	background: transparent;
	padding: 0;
}

.together-page .inquiry-card,
.together-page .inquiry-history-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	overflow: hidden;
}

.together-page .inquiry-card {
	margin-bottom: 16px;
}

.together-page .inquiry-header {
	padding: 20px 24px;
	border-bottom: 1px solid #f3f4f6;
}

.together-page .inquiry-title {
	font-size: 20px;
	font-weight: 900;
	color: #111827;
	margin: 0;
}

.together-page .inquiry-subtitle {
	font-size: 13px;
	color: #6b7280;
	margin: 6px 0 0 0;
}

.together-page .inquiry-body {
	padding: 20px 24px;
}

/* 카테고리 */
.together-page .category-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.together-page .category-btn {
	font-size: 12px;
	font-weight: 500;
	padding: 7px 14px;
	border-radius: 999px;
	border: 1px solid #e5e7eb;
	background: #fff;
	color: #6b7280;
	cursor: pointer;
	transition: all .15s;
}

	.together-page .category-btn:hover {
		border-color: #9ca3af;
		color: #222;
	}

	.together-page .category-btn.active {
		border-color: #e4002b;
		background: #fef2f2;
		color: #e4002b;
		font-weight: 700;
	}

/* 첨부 영역 */
.together-page .file-dropzone {
	border: 1px dashed #d1d5db;
	border-radius: 8px;
	padding: 24px;
	text-align: center;
	cursor: pointer;
	transition: all .15s;
}

	.together-page .file-dropzone:hover {
		border-color: #9ca3af;
		background: #fafafa;
	}

	.together-page .file-dropzone.attached {
		border-color: #16a34a;
		background: #f0fdf4;
	}

.together-page .dropzone-text {
	font-size: 13px;
	color: #6b7280;
	margin: 0;
}

.together-page .file-dropzone.attached .dropzone-text {
	color: #16a34a;
	font-weight: 700;
}

.together-page .dropzone-sub {
	font-size: 11px;
	color: #d1d5db;
	margin: 4px 0 0 0;
}

.together-page .inquiry-textarea {
	resize: vertical;
	min-height: 160px;
	line-height: 1.55;
}

.together-page .optional {
	font-size: 11px;
	font-weight: 500;
	color: #9ca3af;
	margin-left: 4px;
}

/* 등록 버튼 */
.together-page .inquiry-submit-btn {
	display: block;
	width: 100%;
	background: #e4002b;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	padding: 13px 0;
	text-align: center;
	border-radius: 8px;
	text-decoration: none;
	transition: background .15s;
	border: none;
	cursor: pointer;
	margin-top: 8px;
}

	.together-page .inquiry-submit-btn:hover {
		background: #c50025;
		color: #fff;
	}

/* 문의 내역 */
.together-page .history-header {
	padding: 14px 24px;
	border-bottom: 1px solid #f3f4f6;
}

.together-page .history-title {
	font-size: 15px;
	font-weight: 700;
	color: #111827;
	margin: 0;
}

.together-page .history-item {
	padding: 14px 24px;
	border-bottom: 1px solid #f3f4f6;
	transition: background .15s;
}

	.together-page .history-item:hover {
		background: #fafafa;
	}

	.together-page .history-item:last-child {
		border-bottom: none;
	}

.together-page .history-row {
	display: flex;
	align-items: center;
	gap: 8px;
}

.together-page .history-badge {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	padding: 2px 8px;
	border-radius: 4px;
	color: #fff;
	line-height: 1.4;
	flex-shrink: 0;
}

	.together-page .history-badge.complete {
		background: #10b981;
	}

	.together-page .history-badge.pending {
		background: #9ca3af;
	}

.together-page .history-item-title {
	font-size: 14px;
	font-weight: 700;
	color: #111827;
}

.together-page .history-meta {
	font-size: 12px;
	color: #9ca3af;
	margin-top: 4px;
}

.together-page .history-empty {
	text-align: center;
	padding: 60px 20px;
	color: #9ca3af;
	font-size: 14px;
}

/* ═══════════════════════════════════════════════════════════
   문의 내역 토글
   ═══════════════════════════════════════════════════════════ */
.together-page .history-info {
	cursor: pointer;
	user-select: none;
	transition: background .15s;
}

/* 토글 아이콘 */
.together-page .history-toggle-icon {
	margin-left: auto;
	width: 14px;
	height: 14px;
	color: #9ca3af;
	transition: transform .2s;
	flex-shrink: 0;
}

.together-page .history-item.expanded .history-toggle-icon {
	transform: rotate(180deg);
}

.together-page .history-row {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* 펼침 영역 (기본 숨김) */
.together-page .history-detail {
	max-height: 0;
	overflow: hidden;
	transition: max-height .25s ease-out;
	background: #fafafa;
}

.together-page .history-item.expanded .history-detail {
	max-height: 1200px;
	transition: max-height .35s ease-in;
}

.together-page .detail-section {
	padding: 14px 24px;
	border-top: 1px solid #f3f4f6;
}

	.together-page .detail-section.detail-reply {
		background: #fef9f0;
		border-top: 1px solid #fef3c7;
	}

.together-page .detail-label {
	font-size: 11px;
	font-weight: 700;
	color: #9ca3af;
	margin-bottom: 6px;
}

.together-page .detail-reply .detail-label {
	color: #d97706;
}

.together-page .detail-text {
	font-size: 13px;
	color: #374151;
	line-height: 1.6;
	white-space: pre-wrap;
	word-wrap: break-word;
}

.together-page .detail-file {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 8px;
	padding: 6px 10px;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	font-size: 12px;
	color: #2563eb;
	text-decoration: none;
	transition: all .15s;
}

	.together-page .detail-file:hover {
		background: #eff6ff;
		border-color: #93c5fd;
		color: #1d4ed8;
	}

/* 아바타 - 프로필 이미지가 인라인 background-image로 설정될 때 */
.together-page .avatar[style*="background-image"] {
	background-color: #f3f4f6;
	color: transparent;
	text-indent: -9999px;
	overflow: hidden;
}

/* ═══════════════════════════════════════════════
   랭킹 페이지 (Rank.aspx)
═══════════════════════════════════════════════ */

/* 헤더 */
.together-page .rank-header {
	margin-bottom: 20px;
	padding: 16px;
	border-bottom: 2px solid #222;
}

	.together-page .rank-header h1 {
		font-size: 24px;
		font-weight: 900;
		color: #222;
		margin: 0;
	}

	.together-page .rank-header p {
		font-size: 14px;
		color: #6b7280;
		margin: 8px 0 0 0;
		line-height: 1.5;
	}

/* 탭 */
.together-page .rank-tabs {
	margin-bottom: 20px;
}

/* TOP3 포디움 */
.together-page .rank-podium-wrap {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	margin-bottom: 20px;
}

.together-page .rank-podium-header {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 24px;
	border-bottom: 1px solid #f3f4f6;
}

.together-page .rank-podium-bar {
	width: 6px;
	height: 20px;
	background: #e4002b;
	border-radius: 2px;
}

.together-page .rank-podium-header h2 {
	font-size: 15px;
	font-weight: 900;
	color: #222;
	margin: 0;
}

.together-page .rank-podium-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 16px;
	padding: 24px 20px 32px;
	align-items: end;
}

/* 공통 카드 */
.together-page .rank-podium-card {
	border-radius: 14px;
	padding: 20px 12px 18px;
	text-align: center;
	background: #f9fafb;
	border: 1px solid transparent;
}

	.together-page .rank-podium-card.second {
		order: 1;
	}

	.together-page .rank-podium-card.first {
		order: 2;
		background: #fff7e6;
		border: 2px solid #f5d77f;
		transform: translateY(-12px);
		box-shadow: 0 8px 20px rgba(245, 215, 127, 0.35);
	}

	.together-page .rank-podium-card.third {
		order: 3;
	}

/* 메달 */
.together-page .rank-medal {
	font-size: 32px;
	margin-bottom: 10px;
	line-height: 1;
}

.together-page .rank-podium-card.first .rank-medal {
	font-size: 44px;
	margin-bottom: 14px;
}

/* 아바타 */
.together-page .rank-podium-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	color: #fff;
	font-weight: 700;
	font-size: 20px;
	margin: 0 auto 10px;
	background-color: #f3f4f6;
}

	.together-page .rank-podium-avatar.large {
		width: 76px;
		height: 76px;
		font-size: 26px;
		border: 3px solid #fff;
		box-shadow: 0 4px 10px rgba(0,0,0,0.08);
	}

/* 닉네임 */
.together-page .rank-podium-nick {
	font-size: 14px;
	font-weight: 900;
	color: #222;
	margin-bottom: 4px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.together-page .rank-podium-card.first .rank-podium-nick {
	font-size: 17px;
}

/* 등급 */
.together-page .rank-podium-grade {
	font-size: 11px;
	color: #9ca3af;
	margin-bottom: 8px;
}

.together-page .rank-podium-card.first .rank-podium-grade {
	color: #b8860b;
	font-weight: 700;
}

/* 점수 */
.together-page .rank-podium-point {
	font-size: 15px;
	font-weight: 900;
	color: #e4002b;
}

.together-page .rank-podium-card.first .rank-podium-point {
	font-size: 18px;
}

/* ═══════════════════════════════════════════════
   4위~ 리스트 (★ .rank-list-wrap 안으로 스코프 한정 - 사이드와 충돌 방지)
═══════════════════════════════════════════════ */
.together-page .rank-list-wrap {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
}

	.together-page .rank-list-wrap .rank-list-header {
		padding: 16px 24px;
		border-bottom: 1px solid #f3f4f6;
		font-size: 13px;
		color: #6b7280;
	}

	.together-page .rank-list-wrap .rank-row {
		display: flex;
		align-items: center;
		padding: 16px 24px;
		border-bottom: 1px solid #f9fafb;
		transition: background 0.15s;
	}

		.together-page .rank-list-wrap .rank-row:hover {
			background: #f9fafb;
		}

		.together-page .rank-list-wrap .rank-row:last-child {
			border-bottom: none;
		}

	.together-page .rank-list-wrap .rank-num {
		width: 32px;
		text-align: center;
		font-size: 14px;
		font-weight: 900;
		color: #9ca3af;
	}

	.together-page .rank-list-wrap .rank-list-avatar {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		color: #fff;
		font-weight: 700;
		font-size: 14px;
		margin: 0 12px;
		background-color: #f3f4f6;
		flex-shrink: 0;
	}

	.together-page .rank-list-wrap .rank-info {
		flex: 1;
		display: flex;
		align-items: center;
		gap: 8px;
		min-width: 0;
	}

	.together-page .rank-list-wrap .rank-nick {
		font-size: 14px;
		font-weight: 700;
		color: #222;
		text-decoration: none;
		transition: color 0.15s;
	}

		.together-page .rank-list-wrap .rank-nick:hover {
			color: #e4002b;
		}

	.together-page .rank-list-wrap .rank-grade-pill {
		font-size: 10px;
		padding: 2px 8px;
		border-radius: 999px;
		font-weight: 700;
		flex-shrink: 0;
	}

		.together-page .rank-list-wrap .rank-grade-pill.normal {
			background: #f3f3f3;
			color: #666;
		}

		.together-page .rank-list-wrap .rank-grade-pill.premium {
			background: #fdf3f4;
			color: #e4002b;
		}

		.together-page .rank-list-wrap .rank-grade-pill.governance {
			background: #faf5e6;
			color: #c7973a;
		}

	.together-page .rank-list-wrap .rank-point {
		font-size: 14px;
		font-weight: 900;
		color: #e4002b;
		margin-right: 16px;
	}

	.together-page .rank-list-wrap .rank-change {
		width: 40px;
		text-align: right;
		font-size: 12px;
		font-weight: 700;
	}

		.together-page .rank-list-wrap .rank-change .rc.up {
			color: #10b981;
		}

		.together-page .rank-list-wrap .rank-change .rc.down {
			color: #f87171;
		}

		.together-page .rank-list-wrap .rank-change .rc.same {
			color: #d1d5db;
		}

	.together-page .rank-list-wrap .rank-empty {
		padding: 60px 24px;
		text-align: center;
		color: #9ca3af;
	}

/* 모바일 */
@media (max-width: 820px) {
	.together-page .rank-podium-grid {
		gap: 8px;
		padding: 16px 12px 24px;
	}

	.together-page .rank-podium-card {
		padding: 14px 6px 12px;
	}

		.together-page .rank-podium-card.first {
			transform: translateY(-8px);
		}

	.together-page .rank-podium-avatar {
		width: 48px;
		height: 48px;
		font-size: 16px;
	}

		.together-page .rank-podium-avatar.large {
			width: 60px;
			height: 60px;
			font-size: 20px;
		}

	.together-page .rank-list-wrap .rank-row {
		padding: 14px 16px;
	}

	.together-page .rank-list-wrap .rank-num {
		width: 24px;
	}

	.together-page .rank-list-wrap .rank-list-avatar {
		width: 36px;
		height: 36px;
		margin: 0 10px;
	}

	.together-page .rank-list-wrap .rank-grade-pill {
		display: none;
	}
}

/* ═══════════════════════════════════════════════════════════
   알림 페이지 (Notification.aspx) — 스타일 개선 버전
   ★ 기존 "/* ═════ 알림 페이지 ═════ */ 
═══════════════════════════════════════════════════════════ */
/* ── nt-main 위에 .noti-main이 올라타는 구조 ── */
.together-page .nt-main.noti-main {
	background: #fff;
	border-radius: 16px;
	padding: 32px 36px;
	overflow: visible;
}

/* 페이지 타이틀 */
.together-page .noti-title {
	font-size: 22px;
	font-weight: 900;
	color: #111827;
	margin: 0 0 18px 0;
	letter-spacing: -0.3px;
}

/* 안내 박스 */
.together-page .noti-info-box {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #f9fafb;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 12px 18px;
	margin-bottom: 22px;
}

	.together-page .noti-info-box svg {
		width: 16px;
		height: 16px;
		color: #9ca3af;
		flex-shrink: 0;
	}

	.together-page .noti-info-box p {
		font-size: 12.5px;
		color: #6b7280;
		margin: 0;
		line-height: 1.55;
	}

	.together-page .noti-info-box b {
		color: #374151;
		font-weight: 700;
	}

/* 탭 */
.together-page .noti-tabs {
	margin-bottom: 0;
	padding: 0;
	border-bottom: 1px solid #f3f4f6;
}

	.together-page .noti-tabs a {
		padding: 14px 18px;
	}

/* 알림 리스트 */
.together-page .noti-list {
	display: flex;
	flex-direction: column;
	margin-top: 4px;
}

/* ── 알림 카드 ── */
.together-page .noti-item {
	display: flex;
	gap: 16px;
	padding: 22px 12px 22px 24px; /* ★ 좌측 padding 늘림 (안 읽음 점 자리) */
	border-bottom: 1px solid #f0f0f0;
	text-decoration: none;
	color: inherit;
	transition: background 0.15s;
	position: relative;
}

	.together-page .noti-item:hover {
		background: #fafafa;
	}

	.together-page .noti-item:last-child {
		border-bottom: none;
	}

	/* ★ 안 읽음 표시 (좌측 빨간 점) */
	.together-page .noti-item.unread::before {
		content: '';
		position: absolute;
		left: 8px;
		top: 50%;
		transform: translateY(-50%);
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: #e4002b;
	}

/* ── 아바타 ── */
.together-page .noti-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	flex-shrink: 0;
}

	.together-page .noti-avatar svg {
		width: 20px;
		height: 20px;
		color: #fff;
	}

	/* 시스템 아이콘 색상 */
	.together-page .noti-avatar.settle-icon {
		background: #e4002b;
	}

	.together-page .noti-avatar.aipick-icon {
		background: linear-gradient(135deg, #c7973a, #d4a94e);
	}

	.together-page .noti-avatar.permission-icon {
		background: linear-gradient(135deg, #22c55e, #16a34a);
	}

	.together-page .noti-avatar.notice-icon {
		background: linear-gradient(135deg, #64748b, #475569);
	}

	.together-page .noti-avatar.like-icon {
		background: #ef4444;
	}

	/* 사용자 아바타 색상 */
	.together-page .noti-avatar.avatar-bg-1 {
		background: #fb7185;
	}

	.together-page .noti-avatar.avatar-bg-2 {
		background: #f59e0b;
	}

	.together-page .noti-avatar.avatar-bg-3 {
		background: #10b981;
	}

	.together-page .noti-avatar.avatar-bg-4 {
		background: #38bdf8;
	}

	.together-page .noti-avatar.avatar-bg-5 {
		background: #a855f7;
	}

	.together-page .noti-avatar.avatar-bg-6 {
		background: #f472b6;
	}

	.together-page .noti-avatar.avatar-bg-7 {
		background: #14b8a6;
	}

	.together-page .noti-avatar.avatar-bg-8 {
		background: #6366f1;
	}

	/* 프로필 이미지 배경 */
	.together-page .noti-avatar[style*="background-image"] {
		background-color: #f3f4f6;
		color: transparent;
		text-indent: -9999px;
		overflow: hidden;
	}

/* ── 본문 ── */
.together-page .noti-body {
	flex: 1;
	min-width: 0;
}

	/* ★ 본문 텍스트 — 기본은 옅은 회색 (조사/문장 부분) */
	.together-page .noti-body .noti-main {
		font-size: 14px;
		color: #6b7280; /* ★ 회색 (조사/일반 텍스트) */
		line-height: 1.55;
		font-weight: 400; /* ★ 기본은 일반 굵기 */
	}

		/* 기본 strong — 너무 굵지 않게 (이미 별도 .noti-nick / .noti-action 클래스 있음) */
		.together-page .noti-body .noti-main strong {
			font-weight: 700;
		}

		/* ★ 닉네임 — 진한 색 굵게 */
		.together-page .noti-body .noti-main .noti-nick {
			color: #111827;
			font-weight: 700;
		}

		/* ★ 액션 키워드 (댓글/답글/대댓글/좋아요/팔로우) — 빨간색 굵게 */
		.together-page .noti-body .noti-main .noti-action {
			color: #e4002b;
			font-weight: 700;
		}

	.together-page .noti-body .noti-sub {
		font-size: 13px;
		color: #6b7280;
		line-height: 1.55;
		margin-top: 6px;
	}

	/* ★ 인용 박스 — 흰 배경 + 테두리 (참고 이미지 스타일) */
	.together-page .noti-body .noti-quote {
		font-size: 13px;
		color: #6b7280;
		background: #fff;
		border: 1px solid #e5e7eb;
		padding: 10px 14px;
		margin-top: 10px;
		border-radius: 8px;
		line-height: 1.55;
		word-break: break-word;
		display: -webkit-box;
		-webkit-line-clamp: 2; /* 인용은 2줄까지만 */
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.together-page .noti-body .noti-time {
		font-size: 12px;
		color: #9ca3af;
		margin-top: 10px;
	}

	/* 하이라이트 박스 (정산 AI픽 / 공지 권한부여) */
	.together-page .noti-body .noti-highlight {
		border-radius: 12px;
		padding: 16px 18px;
		margin-bottom: 4px;
	}

		.together-page .noti-body .noti-highlight.permission {
			background: #f0fdf4;
			border: 1px solid #bbf7d0;
		}

			.together-page .noti-body .noti-highlight.permission .noti-main {
				color: #15803d;
			}

			.together-page .noti-body .noti-highlight.permission .noti-sub {
				color: #166534;
			}

		.together-page .noti-body .noti-highlight.aipick {
			background: #fffbeb;
			border: 1px solid #fde68a;
		}

			.together-page .noti-body .noti-highlight.aipick .noti-main {
				color: #92400e;
			}

			.together-page .noti-body .noti-highlight.aipick .noti-sub {
				color: #92400e;
			}

/* 빈 상태 */
.together-page .noti-empty {
	text-align: center;
	padding: 60px 20px;
	color: #9ca3af;
	font-size: 14px;
}

/* 모바일 */
@media (max-width: 820px) {
	.together-page .nt-main.noti-main {
		padding: 22px 18px;
	}

	.together-page .noti-item {
		padding: 18px 10px 18px 20px;
		gap: 12px;
	}

		.together-page .noti-item.unread::before {
			left: 6px;
		}

	.together-page .noti-avatar {
		width: 36px;
		height: 36px;
	}

		.together-page .noti-avatar svg {
			width: 18px;
			height: 18px;
		}
}

/* ═══════════════════════════════════════════════
   프로필 지갑 카드
═══════════════════════════════════════════════ */
.together-page .wallet-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 24px;
	margin-bottom: 16px;
}

.together-page .wallet-card-header {
	margin-bottom: 16px;
}

.together-page .wallet-card-title {
	font-size: 16px;
	font-weight: 900;
	color: #111827;
	margin: 0 0 6px 0;
}

.together-page .wallet-card-desc {
	font-size: 13px;
	color: #6b7280;
	margin: 0;
	line-height: 1.5;
}

.together-page .wallet-input-row {
	display: flex;
	gap: 8px;
	align-items: stretch;
}

	.together-page .wallet-input-row .wallet-input {
		flex: 1;
		padding: 11px 14px;
		border: 1px solid #e5e7eb;
		border-radius: 8px;
		font-size: 14px;
		color: #222;
		outline: none;
		font-family: 'Consolas', monospace;
	}

		.together-page .wallet-input-row .wallet-input:focus {
			border-color: #e4002b;
		}

.together-page .wallet-change-btn {
	background: #e4002b;
	color: #fff;
	border: none;
	border-radius: 8px;
	padding: 0 18px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	white-space: nowrap;
	transition: background .15s;
}

	.together-page .wallet-change-btn:hover {
		background: #c50025;
	}

/* 경고 박스 */
.together-page .wallet-notice {
	margin-top: 14px;
	padding: 14px 18px;
	background: #fffbeb;
	border: 1px solid #fde68a;
	border-radius: 10px;
}

.together-page .wallet-notice-title {
	color: #b45309;
	font-weight: 700;
	margin: 0 0 8px 0;
	font-size: 13px;
}

.together-page .wallet-notice ul {
	list-style: disc;
	padding-left: 20px;
	margin: 0;
}

	.together-page .wallet-notice ul li {
		color: #92400e;
		font-size: 12.5px;
		line-height: 1.7;
	}

		.together-page .wallet-notice ul li strong {
			font-weight: 800;
			color: #b91c1c;
		}

/* 지갑 변경 모달 */
.wallet-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
}

.wallet-modal-dim {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.6);
}

.wallet-modal-box {
	position: relative;
	width: 460px;
	max-width: 92%;
	padding: 28px 28px 24px;
	background: #2a2a2e;
	color: #e8e8ea;
	border-radius: 12px;
	box-shadow: 0 10px 40px rgba(0,0,0,0.5);
}

.wm-title {
	font-size: 20px;
	font-weight: 700;
	margin: 0 0 10px;
	color: #fff;
}

.wm-desc {
	font-size: 14px;
	line-height: 1.6;
	color: #c8c8cc;
	margin: 0 0 20px;
}

	.wm-desc strong {
		color: #fff;
	}

.wm-addr-box {
	background: #1f1f22;
	border-radius: 8px;
	padding: 16px;
	margin-bottom: 18px;
}

.wm-addr-label {
	font-size: 12px;
	color: #9a9aa0;
	margin-bottom: 6px;
}

.wm-addr-full {
	font-family: 'Consolas', monospace;
	font-size: 14px;
	color: #fff;
	word-break: break-all;
	padding-bottom: 14px;
	border-bottom: 1px solid #3a3a40;
	margin-bottom: 14px;
}

.wm-addr-split {
	display: flex;
	gap: 124px;
}

.wm-addr-part {
	font-family: 'Consolas', monospace;
	font-size: 16px;
	font-weight: 700;
	color: #6db3f2;
}

.wm-agree {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 14px;
	background: #3a2a2c;
	border: 1px solid #6b3a3e;
	border-radius: 8px;
	cursor: pointer;
	margin-bottom: 18px;
}

	.wm-agree input[type=checkbox] {
		margin-top: 2px;
		flex-shrink: 0;
	}

	.wm-agree span {
		font-size: 13px;
		line-height: 1.6;
		color: #e8d8da;
	}

	.wm-agree strong {
		color: #ff8a8e;
	}

.wm-btns {
	display: flex;
	gap: 10px;
}

.wm-btn {
	flex: 1;
	padding: 14px 0;
	text-align: center;
	border-radius: 8px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	border: none;
	text-decoration: none;
	display: inline-block;
}

.wm-btn-cancel {
	background: transparent;
	border: 1px solid #5a5a60;
	color: #e8e8ea;
}

	.wm-btn-cancel:hover {
		background: #3a3a40;
	}

.wm-btn-confirm {
	background: #c9c9cf;
	color: #1a1a1c;
	pointer-events: none;
	opacity: 0.5;
}

	.wm-btn-confirm.active {
		background: #f0f0f3;
		pointer-events: auto;
		opacity: 1;
	}

		.wm-btn-confirm.active:hover {
			background: #fff;
		}

.wm-hint {
	text-align: center;
	font-size: 12px;
	color: #8a8a90;
	margin: 14px 0 0;
}

/* ═══════════════════════════════════════════════════════════
   ★ together-mobile.css 맨 아래에 추가
   안내(Guide.aspx) 모바일 전용 스타일 — 시안: guide.html
   ═══════════════════════════════════════════════════════════ */

/* 본문 컨테이너 */
.mob-guide-main {
	padding: 16px 16px 40px;
}

/* ── 인트로 ── */
.mob-guide-intro {
	margin-bottom: 14px;
}

	.mob-guide-intro h1 {
		font-size: 20px;
		font-weight: 900;
		color: #222;
		margin: 0;
		letter-spacing: -0.3px;
		line-height: 1.3;
	}

	.mob-guide-intro p {
		font-size: 12px;
		color: #6b7280;
		margin: 4px 0 0 0;
	}

/* ═════════════════════════════════════════════════
   FAQ 5문항 collapsible
   ═════════════════════════════════════════════════ */
.mob-guide-faq {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	margin-bottom: 14px;
	overflow: hidden;
}

.mob-guide-faq-item {
	border-bottom: 1px solid #f3f4f6;
}

	.mob-guide-faq-item:last-child {
		border-bottom: none;
	}

	.mob-guide-faq-item summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 14px 16px;
		cursor: pointer;
		list-style: none;
		font-size: 14px;
		font-weight: 700;
		color: #222;
	}

		.mob-guide-faq-item summary::-webkit-details-marker {
			display: none;
		}

		.mob-guide-faq-item summary .arrow {
			width: 16px;
			height: 16px;
			color: #9ca3af;
			transition: transform .2s;
			flex-shrink: 0;
		}

	.mob-guide-faq-item[open] summary .arrow {
		transform: rotate(180deg);
	}

	.mob-guide-faq-item > p,
	.mob-guide-faq-item .answer-block {
		font-size: 13px;
		color: #4b5563;
		line-height: 1.65;
		padding: 0 16px 14px 16px;
		margin: 0;
	}

		.mob-guide-faq-item .answer-block p {
			margin: 0 0 6px 0;
		}

			.mob-guide-faq-item .answer-block p:last-child {
				margin-bottom: 0;
			}

		.mob-guide-faq-item .answer-block b,
		.mob-guide-faq-item > p b {
			color: #222;
			font-weight: 700;
		}

		.mob-guide-faq-item .answer-block .link,
		body.together-mobile .mob-guide-faq-item .answer-block a.link {
			color: var(--nt-red) !important;
			font-weight: 700;
			text-decoration: none !important;
		}

	.mob-guide-faq-item .aipick-tag {
		display: inline-block;
		font-size: 11px;
		font-weight: 700;
		color: #b45309;
		background: #fef3c7;
		padding: 1px 6px;
		border-radius: 4px;
	}

/* ═════════════════════════════════════════════════
   TTR 리워드 카드
   ═════════════════════════════════════════════════ */
.mob-guide-ttr-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 18px 16px;
	margin-bottom: 14px;
	scroll-margin-top: 70px; /* ★ #ttr-detail 앵커 이동 시 헤더 가림 방지 */
}

	.mob-guide-ttr-card h2 {
		font-size: 16px;
		font-weight: 900;
		color: #222;
		margin: 0 0 12px 0;
	}

	.mob-guide-ttr-card h3 {
		font-size: 14px;
		font-weight: 800;
		color: #222;
		margin: 0 0 10px 0;
	}

	.mob-guide-ttr-card h4 {
		font-size: 12.5px;
		font-weight: 700;
		color: #374151;
		margin: 0 0 6px 0;
	}

	.mob-guide-ttr-card .ttr-intro {
		font-size: 13px;
		font-weight: 700;
		color: #222;
		margin: 0 0 10px 0;
	}

	.mob-guide-ttr-card .ttr-points {
		font-size: 12.5px;
		color: #4b5563;
		line-height: 1.6;
		padding-left: 18px;
		margin: 0 0 12px 0;
	}

		.mob-guide-ttr-card .ttr-points li {
			margin-bottom: 4px;
		}

		.mob-guide-ttr-card .ttr-points .hl {
			color: var(--nt-red);
			font-weight: 700;
		}

	.mob-guide-ttr-card .ttr-exchanges {
		display: flex;
		gap: 6px;
		margin-top: 4px;
	}

	.mob-guide-ttr-card .exchange-pill {
		font-size: 11px;
		font-weight: 700;
		color: #374151;
		background: #f3f4f6;
		padding: 5px 10px;
		border-radius: 4px;
	}

/* 구분선 */
.mob-guide-divider {
	border: none;
	border-top: 1px solid #f3f4f6;
	margin: 16px 0;
}

/* 랭킹 산정 공식 박스 */
.mob-guide-ttr-card .formula-box {
	text-align: center;
	background: #fdf3f4;
	border: 1px solid #fee2e2;
	color: var(--nt-red);
	font-size: 12px;
	font-weight: 700;
	padding: 10px 12px;
	border-radius: 10px;
	line-height: 1.5;
	margin-bottom: 12px;
}

/* 등급 카드 리스트 */
.mob-guide-ttr-card .grade-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.mob-guide-ttr-card .grade-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px;
	border-radius: 10px;
	border: 1px solid #f3f4f6;
	background: #fafafa;
}

	.mob-guide-ttr-card .grade-row.premium {
		background: rgba(243, 232, 255, 0.3);
		border-color: #e9d5ff;
	}

	.mob-guide-ttr-card .grade-row.governance {
		background: rgba(219, 234, 254, 0.3);
		border-color: #bfdbfe;
	}

.mob-guide-ttr-card .grade-pill {
	flex-shrink: 0;
	width: 60px;
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 0;
	border-radius: 4px;
	color: #4b5563;
	background: #e5e7eb;
}

.mob-guide-ttr-card .grade-row.premium .grade-pill {
	background: linear-gradient(135deg, #7c3aed, #5b21b6);
	color: #fff;
}

.mob-guide-ttr-card .grade-row.governance .grade-pill {
	background: linear-gradient(135deg, #3a6fd4, #2851a3);
	color: #fff;
}

.mob-guide-ttr-card .grade-info {
	flex: 1;
	min-width: 0;
}

.mob-guide-ttr-card .grade-row.normal .grade-info .mul {
	font-size: 13px;
	font-weight: 700;
	color: #222;
}

.mob-guide-ttr-card .grade-row.premium .grade-info .mul,
.mob-guide-ttr-card .grade-row.governance .grade-info .mul {
	font-size: 13px;
	font-weight: 700;
	color: var(--nt-red);
}

.mob-guide-ttr-card .grade-info .sub {
	font-size: 10.5px;
	color: #6b7280;
	margin-top: 2px;
}

/* 포인트 표 */
.point-table-wrap {
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	overflow: hidden;
}

.mob-guide-ttr-card .point-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 11.5px;
}

	.mob-guide-ttr-card .point-table thead th {
		background: #f9fafb;
		color: #6b7280;
		font-weight: 600;
		padding: 8px;
		text-align: left;
		border-bottom: 1px solid #e5e7eb;
	}

	.mob-guide-ttr-card .point-table tbody td {
		padding: 8px;
		color: #4b5563;
		border-bottom: 1px solid #f3f4f6;
	}

	.mob-guide-ttr-card .point-table tbody tr:last-child td {
		border-bottom: none;
	}

	.mob-guide-ttr-card .point-table .ta-center {
		text-align: center;
	}

	.mob-guide-ttr-card .point-table td.point {
		color: var(--nt-red);
		font-weight: 700;
	}

	.mob-guide-ttr-card .point-table td.point-aipick {
		color: #b45309;
		font-weight: 700;
	}

	.mob-guide-ttr-card .point-table td.point-minus {
		color: #2563eb;
		font-weight: 700;
	}

	.mob-guide-ttr-card .point-table td.limit {
		color: #9ca3af;
	}

/* 가중치 섹션 */
.mob-guide-ttr-card .weight-note {
	font-size: 10.5px;
	color: #9ca3af;
	margin: 0 0 10px 0;
}

.mob-guide-ttr-card .weight-section {
	margin-bottom: 12px;
}

	.mob-guide-ttr-card .weight-section:last-child {
		margin-bottom: 0;
	}

	.mob-guide-ttr-card .weight-section .weight-item,
	.mob-guide-ttr-card .weight-section ul.weight-item {
		font-size: 12px;
		color: #4b5563;
		background: #fafafa;
		border-radius: 6px;
		padding: 10px;
		margin: 0;
		line-height: 1.55;
	}

	.mob-guide-ttr-card .weight-section ul.weight-item {
		padding-left: 26px;
	}

		.mob-guide-ttr-card .weight-section ul.weight-item li {
			margin-bottom: 4px;
		}

			.mob-guide-ttr-card .weight-section ul.weight-item li:last-child {
				margin-bottom: 0;
			}

	.mob-guide-ttr-card .weight-section .weight-item b {
		color: var(--nt-red);
		font-weight: 700;
	}

/* ═════════════════════════════════════════════════
   CTA 버튼들
   ═════════════════════════════════════════════════ */
.mob-guide-cta {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 4px;
}

	.mob-guide-cta .cta-primary,
	body.together-mobile a.cta-primary {
		display: block;
		text-align: center;
		background: var(--nt-red);
		color: #fff !important;
		font-size: 14px;
		font-weight: 700;
		padding: 13px 0;
		border-radius: 12px;
		text-decoration: none !important;
	}

		.mob-guide-cta .cta-primary:active {
			background: #c50025;
		}

	.mob-guide-cta .cta-secondary,
	body.together-mobile a.cta-secondary {
		display: block;
		text-align: center;
		color: #6b7280 !important;
		font-size: 13px;
		font-weight: 500;
		padding: 9px 0;
		text-decoration: none !important;
	}

		.mob-guide-cta .cta-secondary:active {
			color: var(--nt-red) !important;
		}

/* ═══════════════════════════════════════════════════════════
   ★ together-page.css 맨 아래에 추가
   인용 답글 모아보기(Replies) PC 전용 — 시안: replies.html (데스크톱)
   ═══════════════════════════════════════════════════════════ */

.together-page .replies-main {
	min-width: 0;
}

/* 원글로 돌아가기 */
.together-page .replies-back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: #6b7280;
	text-decoration: none;
	margin-bottom: 16px;
	transition: color .15s;
}

	.together-page .replies-back:hover {
		color: var(--nt-red, #e4002b);
	}

	.together-page .replies-back svg {
		width: 16px;
		height: 16px;
	}

/* ── 원글 요약 카드 ── */
.together-page .replies-source {
	background: #f9fafb;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 20px;
}

	.together-page .replies-source .source-label {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-bottom: 8px;
	}

		.together-page .replies-source .source-label svg {
			width: 16px;
			height: 16px;
			color: #9ca3af;
		}

		.together-page .replies-source .source-label span {
			font-size: 12px;
			font-weight: 700;
			color: #9ca3af;
		}

	.together-page .replies-source .source-row {
		display: flex;
		align-items: flex-start;
		gap: 12px;
	}

	.together-page .replies-source .source-avatar {
		width: 36px;
		height: 36px;
		border-radius: 50%;
		color: #fff;
		font-weight: 700;
		font-size: 13px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.together-page .replies-source .source-body {
		flex: 1;
		min-width: 0;
	}

	.together-page .replies-source .source-author-line {
		display: flex;
		align-items: center;
		gap: 6px;
	}

		.together-page .replies-source .source-author-line .nick {
			font-size: 14px;
			font-weight: 700;
			color: #111;
		}

		.together-page .replies-source .source-author-line .time {
			font-size: 12px;
			color: #9ca3af;
		}

	.together-page .replies-source .source-text {
		font-size: 14px;
		color: #4b5563;
		line-height: 1.5;
		margin: 4px 0 0 0;
	}

/* ── 인용 답글 리스트 카드 ── */
.together-page .replies-list-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	overflow: hidden;
}

.together-page .replies-list-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 24px;
	border-bottom: 1px solid #f3f4f6;
}

	.together-page .replies-list-header h2 {
		font-size: 16px;
		font-weight: 900;
		color: #222;
		margin: 0;
	}

		.together-page .replies-list-header h2 .cnt {
			color: var(--nt-red, #e4002b);
		}

	.together-page .replies-list-header .sort-btns {
		display: flex;
		gap: 8px;
	}

	.together-page .replies-list-header .sort-btn {
		font-size: 12px;
		font-weight: 500;
		color: #9ca3af;
		padding: 4px 12px;
		border-radius: 999px;
		text-decoration: none;
		transition: background .15s;
	}

		.together-page .replies-list-header .sort-btn:hover {
			background: #f9fafb;
		}

		.together-page .replies-list-header .sort-btn.active {
			font-weight: 700;
			color: var(--nt-red, #e4002b);
			background: #fdf3f4;
		}

/* 답글 아이템 */
.together-page .reply-item {
	display: block;
	padding: 20px 24px;
	border-bottom: 1px solid #f3f4f6;
	text-decoration: none;
	color: inherit;
	transition: background .15s;
}

	.together-page .reply-item:last-of-type {
		border-bottom: none;
	}

	.together-page .reply-item:hover {
		background: rgba(249, 250, 251, 0.5);
	}

	.together-page .reply-item .reply-badge {
		display: inline-block;
		font-size: 12px;
		font-weight: 700;
		padding: 2px 6px;
		border-radius: 4px;
	}

		.together-page .reply-item .reply-badge.free {
			background: #f3f4f6;
			color: #6b7280;
		}

		.together-page .reply-item .reply-badge.book {
			background: #fffbeb;
			color: #d97706;
		}

	.together-page .reply-item .reply-title {
		font-size: 16px;
		font-weight: 700;
		color: #222;
		line-height: 1.45;
		margin: 8px 0 0 0;
	}

	.together-page .reply-item .reply-excerpt {
		font-size: 13px;
		color: #9ca3af;
		line-height: 1.5;
		margin: 4px 0 0 0;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.together-page .reply-item .reply-author {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-top: 12px;
	}

	.together-page .reply-item .reply-avatar {
		width: 20px;
		height: 20px;
		border-radius: 50%;
		color: #fff;
		font-weight: 700;
		font-size: 9px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.together-page .reply-item .reply-author .nick {
		font-size: 13px;
		font-weight: 700;
		color: #4b5563;
	}

	.together-page .reply-item .reply-author .time {
		font-size: 12px;
		color: #9ca3af;
	}

	.together-page .reply-item .reply-meta {
		display: flex;
		align-items: center;
		gap: 16px;
		margin-top: 6px;
		font-size: 12px;
		color: #9ca3af;
	}

	/* 등급 뱃지 (PC) */
	.together-page .reply-item .grade-badge,
	.together-page .replies-source .grade-badge {
		font-size: 11px;
		font-weight: 700;
		padding: 1px 5px;
		border-radius: 3px;
	}

		.together-page .reply-item .grade-badge.p,
		.together-page .replies-source .grade-badge.p {
			background: #f3e8ff;
			color: #7e22ce;
		}

		.together-page .reply-item .grade-badge.g,
		.together-page .replies-source .grade-badge.g {
			background: #dbeafe;
			color: #1d4ed8;
		}

/* 빈 상태 */
.together-page .replies-empty {
	text-align: center;
	padding: 50px 20px;
	font-size: 14px;
	color: #9ca3af;
}

/* 더보기 */
.together-page .replies-more-wrap {
	text-align: center;
	padding: 20px;
}

.together-page .replies-more {
	font-size: 13px;
	color: #6b7280;
	background: none;
	border: none;
	cursor: pointer;
	text-decoration: none;
	transition: color .15s;
}

	.together-page .replies-more:hover {
		color: var(--nt-red, #e4002b);
	}


/* ═══════════════════════════════════════════════════════════
   ★ together-page.css 맨 아래에 추가
   공지사항(Notice) PC 전용 — 목록 + 상세
   ═══════════════════════════════════════════════════════════ */

.together-page .notice-main,
.together-page .notice-detail-main {
	min-width: 0;
}

/* ── 목록 헤더 ── */
.together-page .notice-header {
	margin-bottom: 20px;
}

.together-page .notice-page-title {
	font-size: 26px;
	font-weight: 800;
	color: #111;
	margin: 0 0 6px 0;
}

.together-page .notice-page-sub {
	font-size: 14px;
	color: #9ca3af;
	margin: 0;
}



.together-page .notice-item {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 20px;
	border-bottom: 1px solid #f3f4f6;
	text-decoration: none;
	color: inherit;
	transition: background .15s;
}

	.together-page .notice-item:last-child {
		border-bottom: none;
	}

	.together-page .notice-item:hover {
		background: #fafbfc;
	}

.together-page .notice-item-body {
	flex: 1;
	min-width: 0;
}

.together-page .notice-item-title {
	font-size: 15px;
	font-weight: 500;
	color: #374151;
	margin: 0;
	line-height: 1.5;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	transition: color .15s;
}

.together-page .notice-item:hover .notice-item-title {
	color: var(--nt-red, #e4002b);
}

.together-page .notice-item-right {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0;
}

.together-page .notice-item-date {
	font-size: 13px;
	color: #9ca3af;
}

.together-page .notice-item-arrow {
	width: 16px;
	height: 16px;
	color: #d1d5db;
}

.together-page .notice-empty {
	text-align: center;
	padding: 60px 20px;
	font-size: 14px;
	color: #9ca3af;
}

/* ── 페이징 ── */
.together-page .notice-paging {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin-top: 24px;
}

	.together-page .notice-paging a {
		min-width: 34px;
		height: 34px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-size: 14px;
		color: #6b7280;
		border-radius: 8px;
		text-decoration: none;
		transition: background .15s;
	}

		.together-page .notice-paging a:hover {
			background: #f3f4f6;
		}

	.together-page .notice-paging .current {
		min-width: 34px;
		height: 34px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-size: 14px;
		font-weight: 700;
		color: #fff;
		background: var(--nt-red, #e4002b);
		border-radius: 8px;
	}

/* ── 상세 ── */
.together-page .notice-detail-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	padding: 32px;
}

.together-page .notice-detail-badge {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	color: var(--nt-red, #e4002b);
	background: #fdeef0;
	padding: 4px 12px;
	border-radius: 6px;
	margin-bottom: 16px;
}

.together-page .notice-detail-title {
	font-size: 24px;
	font-weight: 800;
	color: #111;
	line-height: 1.4;
	margin: 0 0 14px 0;
}

.together-page .notice-detail-meta {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: #9ca3af;
	padding-bottom: 20px;
	margin-bottom: 24px;
	border-bottom: 1px solid #eef0f2;
}

	.together-page .notice-detail-meta .dot {
		color: #d1d5db;
	}

.together-page .notice-detail-content {
	font-size: 15px;
	color: #374151;
	line-height: 1.8;
	word-break: break-word;
}

	.together-page .notice-detail-content img {
		max-width: 100%;
		height: auto;
		border-radius: 8px;
		margin: 16px 0;
	}

	.together-page .notice-detail-content p {
		margin: 0 0 14px 0;
	}

	.together-page .notice-detail-content ul,
	.together-page .notice-detail-content ol {
		padding-left: 22px;
		margin: 0 0 14px 0;
	}

	.together-page .notice-detail-content li {
		margin-bottom: 8px;
	}

/* 목록으로 버튼 */
.together-page .notice-detail-listbtn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 24px;
	padding: 11px 24px;
	background: #fff;
	border: 1px solid #d1d5db;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 600;
	color: #4b5563;
	text-decoration: none;
	transition: background .15s;
}

	.together-page .notice-detail-listbtn:hover {
		background: #f9fafb;
	}

	.together-page .notice-detail-listbtn svg {
		width: 18px;
		height: 18px;
	}

/* ═══════════════════════════════════════════════════════════
   ★ together-page.css 맨 아래에 추가 (기존 가중치 블록 교체)
   프로필 - 현재 나의 가중치 섹션 (PC)
   한 박스 / 라벨 우측 + 값 오른쪽끝 정렬 / 얇고 작은 폰트
   ═══════════════════════════════════════════════════════════ */

.together-page .weight-section {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 12px;
	padding: 16px 20px;
	border: 1px solid #f3f4f6;
	border-radius: 8px;
	background: #fff;
}

/* 좌측: 현재 가중치 % */
.together-page .weight-left {
	flex-shrink: 0;
}

.together-page .weight-label {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 12px;
	font-weight: 400;
	color: #9ca3af;
	margin-bottom: 6px;
}

.together-page .weight-info {
	font-size: 11px;
	color: #c4c8ce;
	cursor: help;
}

.together-page .weight-value {
	font-size: 24px;
	font-weight: 700;
	color: #374151;
	line-height: 1;
}

.together-page .weight-unit {
	font-size: 13px;
	font-weight: 500;
	color: #9ca3af;
	margin-left: 2px;
}

/* 우측: 라벨(우측) + 값(오른쪽 끝) */
.together-page .weight-right {
	flex: 1;
	max-width: 280px;
}

.together-page .weight-row {
	display: flex;
	align-items: center;
	justify-content: space-between; /* ★ 라벨을 오른쪽으로 밀착 */
	font-size: 12px;
	font-weight: 400;
	color: #9ca3af;
	line-height: 2;
}

.together-page .weight-row-label {
	color: #9ca3af;
}

/* ★ 값만 맨 오른쪽으로 — 고정폭으로 정렬 맞춤 */
.together-page .weight-row-value {
	color: #6b7280;
	font-weight: 400;
	width: 60px;
	text-align: center;
	flex-shrink: 0;
}

/* ═══════════════════════════════════════════════════════════
   ★ together-page.css 맨 아래에 추가
   게시판 상단 검색바 (NewtorangList / NewsbookList 등)
   ═══════════════════════════════════════════════════════════ */

.together-page .feed-tabs-with-search {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

	.together-page .feed-tabs-with-search .feed-tabs-left {
		display: flex;
		align-items: center;
		gap: 0;
	}

/* 검색박스 (input + 버튼) */
.together-page .feed-tabs-search {
	display: flex;
	align-items: stretch;
	background: #f7f8fa;
	border: 1px solid #eceef1;
	border-radius: 8px;
	overflow: hidden;
	height: 34px;
	min-width: 280px;
	transition: border-color .15s, background .15s;
}

	.together-page .feed-tabs-search:focus-within {
		background: #fff;
		border-color: #e53e3e;
	}

.together-page .feed-search-input {
	flex: 1;
	border: none;
	background: transparent;
	outline: none;
	font-size: 13px;
	color: #333;
	min-width: 0;
	padding: 0 12px;
}

	.together-page .feed-search-input::placeholder {
		color: #b6bcc4;
	}

/* 돋보기 버튼 */
.together-page .feed-search-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	border: none;
	border-left: 1px solid #eceef1;
	background: transparent;
	color: #6b7280;
	cursor: pointer;
	transition: background .12s, color .12s;
}

	.together-page .feed-search-btn:hover {
		background: #f3f4f6;
		color: #e53e3e;
	}

/* ══════════ 팬클럽 목록 ══════════ */
.together-page .fc-head {
	margin-bottom: 20px;
}

	.together-page .fc-head h1 {
		font-size: 22px;
		font-weight: 900;
		color: #222;
	}

	.together-page .fc-head p {
		font-size: 13px;
		color: #9ca3af;
		margin-top: 4px;
	}

.together-page .fc-list {
	background: #fff;
	border-radius: 8px;
	padding: 16px 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.together-page .fc-creator-card {
	display: flex;
	align-items: flex-start; /* 시안 items-start */
	gap: 16px;
	padding: 20px; /* 시안 p-5 */
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	text-decoration: none;
	transition: border-color .15s, box-shadow .15s;
}

	.together-page .fc-creator-card:hover {
		border-color: #d1d5db;
		box-shadow: 0 1px 6px rgba(0,0,0,.05);
	}

.together-page .fc-avatar {
	width: 56px;
	height: 56px; /* 시안 w-14 */
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	flex-shrink: 0;
	background-size: cover;
	background-position: center;
	overflow: hidden;
}

.together-page .fc-creator-name .nick {
	font-size: 16px;
	font-weight: 700;
	color: #222;
}

.together-page .fc-creator-stat {
	font-size: 12px;
	color: #9ca3af;
	margin-top: 10px;
}

.together-page .fc-follow-btn {
	flex-shrink: 0;
	font-size: 13px;
	font-weight: 700;
	padding: 8px 16px;
	border-radius: 999px;
	cursor: pointer;
	background: #e4002b;
	color: #fff;
	border: 1px solid transparent;
	transition: background .15s;
}
.together-page .fc-creator-info {
	flex: 1 1 auto;
	min-width: 0;
}

.together-page .fc-creator-name {
	display: flex;
	align-items: center;
	gap: 6px;
}

.together-page .fc-star {
	display: inline-flex;
	align-items: center;
	font-size: 11px;
	font-weight: 700;
	padding: 2px 6px;
	border-radius: 4px;
	background: #fef9c3; /* yellow-100 */
	color: #a16207; /* yellow-700 */
	line-height: 1;
}

.together-page .fc-creator-desc {
	font-size: 13px;
	color: #9ca3af;
	margin-top: 2px;
}

.together-page .fc-follow-btn.following {
	background: #fff;
	color: #4b5563;
	border-color: #ddd;
}

	.together-page .fc-follow-btn.following:hover {
		background: #f7f7f7;
	}


/* ══════════ 팬클럽 상세 ══════════ */
.together-page .fc-d-main {
	background: transparent;
	padding: 0;
}

/* 커버 + 헤더 */
.together-page .fc-d-header {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	margin-bottom: 16px;
	overflow: hidden;
}

.together-page .fc-d-cover {
	height: 140px;
	background: linear-gradient(135deg, #1e3a5f, #2563eb, #3b82f6);
}

.together-page .fc-d-body {
	padding: 0 24px 24px;
}

.together-page .fc-d-avatar-wrap {
	margin: -40px 0 16px;
	position: relative;
	z-index: 1;
}

.together-page .fc-d-avatar {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	font-weight: 700;
	color: #fff;
	border: 4px solid #fff;
	box-shadow: 0 2px 6px rgba(0,0,0,.1);
	background-size: cover;
	background-position: center;
}

.together-page .fc-d-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 12px;
}

.together-page .fc-d-name {
	display: flex;
	align-items: center;
	gap: 6px;
}

	.together-page .fc-d-name h1 {
		font-size: 22px;
		font-weight: 900;
		color: #222;
		margin: 0;
	}

.together-page .fc-d-actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

.together-page .fc-d-follow-btn {
	font-size: 13px;
	font-weight: 700;
	background: #e4002b;
	color: #fff;
	border: 1px solid transparent;
	padding: 8px 20px;
	border-radius: 999px;
	cursor: pointer;
	transition: background .15s;
}

	.together-page .fc-d-follow-btn:hover {
		background: #c50025;
	}

	.together-page .fc-d-follow-btn.following {
		background: #fff;
		color: #6b7280;
		border-color: #d1d5db;
	}

.together-page .fc-d-profile-btn {
	font-size: 13px;
	font-weight: 700;
	color: #6b7280;
	border: 1px solid #d1d5db;
	padding: 8px 16px;
	border-radius: 999px;
	text-decoration: none;
	transition: background .15s;
}

	.together-page .fc-d-profile-btn:hover {
		background: #f9fafb;
	}

.together-page .fc-d-bio {
	font-size: 14px;
	color: #4b5563;
	line-height: 1.6;
	margin: 0 0 12px;
}

.together-page .fc-d-stats {
	display: flex;
	gap: 20px;
	font-size: 13px;
	color: #6b7280;
}

	.together-page .fc-d-stats b {
		color: #222;
		margin-left: 2px;
	}

/* 탭 카드 */
.together-page .fc-d-tabs-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	overflow: hidden;
}

.together-page .fc-d-tabs {
	display: flex;
	border-bottom: 1px solid #e5e7eb;
}

.together-page .fc-d-tab {
	flex: 1;
	padding: 14px 0;
	text-align: center;
	font-size: 14px;
	font-weight: 500;
	color: #6b7280;
	background: none;
	border: none;
	border-bottom: 2px solid transparent;
	cursor: pointer;
	transition: all .15s;
}

	.together-page .fc-d-tab:hover {
		color: #374151;
	}

	.together-page .fc-d-tab.active {
		color: #e4002b;
		font-weight: 700;
		border-bottom-color: #e4002b;
	}

.together-page .fc-d-pane .feed-card:last-child {
	border-bottom: none;
}

/* 응원 게시판 - 작성폼 */
.together-page .fc-cheer-write {
	padding: 16px 24px;
	border-bottom: 1px solid #f3f4f6;
	background: rgba(249,250,251,.5);
}

.together-page .fc-cheer-write-row {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.together-page .fc-cheer-write-body {
	flex: 1;
	min-width: 0;
}

.together-page .fc-cheer-textarea {
	width: 100%;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 10px 14px;
	font-size: 14px;
	color: #1f2937;
	outline: none;
	resize: none;
	font-family: inherit;
	transition: all .15s;
}

	.together-page .fc-cheer-textarea:focus {
		border-color: rgba(228,0,43,.3);
	}

.together-page .fc-cheer-write-actions {
	display: flex;
	justify-content: flex-end;
	margin-top: 8px;
}

.together-page .fc-cheer-submit {
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	background: #e4002b;
	border: none;
	padding: 7px 16px;
	border-radius: 999px;
	cursor: pointer;
	transition: background .15s;
}

	.together-page .fc-cheer-submit:hover {
		background: #c50025;
	}

/* 응원 게시판 - 목록 */
.together-page .fc-cheer-item {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	padding: 16px 24px;
	border-bottom: 1px solid #f3f4f6;
}

	.together-page .fc-cheer-item:last-child {
		border-bottom: none;
	}

.together-page .fc-cheer-avatar {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 700;
	font-size: 11px;
	flex-shrink: 0;
	background-size: cover;
	background-position: center;
}

.together-page .fc-cheer-item-body {
	flex: 1;
	min-width: 0;
}

.together-page .fc-cheer-item-head {
	display: flex;
	align-items: center;
	gap: 6px;
}

	.together-page .fc-cheer-item-head .nick {
		font-size: 13px;
		font-weight: 700;
		color: #1f2937;
	}

	.together-page .fc-cheer-item-head .time {
		font-size: 12px;
		color: #9ca3af;
	}

.together-page .fc-cheer-text {
	font-size: 14px;
	color: #374151;
	line-height: 1.55;
	margin: 6px 0 0;
	word-break: break-word;
}

.together-page .fc-cheer-del {
	margin-left: auto;
	background: none;
	border: none;
	font-size: 12px;
	color: #c4c8ce;
	cursor: pointer;
	padding: 0;
	transition: color .15s;
}

	.together-page .fc-cheer-del:hover {
		color: #e4002b;
	}

/* 응원글 등급 배지 — 게시판(feed-author)과 동일 */
.together-page .fc-cheer-item-head .grade-badge {
	font-size: 10px;
	font-weight: 700;
	padding: 1px 8px;
	border-radius: 3px;
}

	.together-page .fc-cheer-item-head .grade-badge.p {
		background: #f3e8ff;
		color: #7e22ce;
	}

	.together-page .fc-cheer-item-head .grade-badge.g {
		background: #dbeafe;
		color: #1d4ed8;
	}

/* 좋아요 버튼 */
.together-page .fc-cheer-actions {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 8px;
}

.together-page .fc-cheer-like {
	background: none;
	border: none;
	font-size: 12px;
	color: #9ca3af;
	cursor: pointer;
	padding: 0;
	transition: color .15s;
}

	.together-page .fc-cheer-like:hover {
		color: #ef4444;
	}

	.together-page .fc-cheer-like.liked {
		color: #ef4444;
		font-weight: 700;
	}

	.together-page .fc-cheer-like .cnt {
		font-weight: 700;
	}