	/* 서브메뉴 */


	/* 토트는 핑계고 내용 */

	.talk-write-wrap {
		margin-top: 25px;
	}

	.talk-title {
		margin: 0 0 24px;
		font-size: 26px;
		font-weight: 700;
		color: #000;
	}

	/* 스와이프 가능한 영역 */
	.talk-vote-wrap{
		/*touch-action: pan-y;
		transition: transform .22s ease, opacity .22s ease;*/
	}

	/* 드래그 중 살짝 따라오는 느낌 */
	.swipe-dragging {
		transition: none !important;
	}

	/* 페이지 전환 애니메이션 */
	.swipe-fade-out {
		opacity: .25;
		transform: translateX(-12px);
	}

	.swipe-fade-in {
		opacity: 1;
		transform: translateX(0);
	}

	/* 첫 방문 힌트 */
	.swipe-hint {
		display:none;
		margin:12px auto 0;
		text-align:center;
		font-size:13px;
		color:#777;
	}

	@media (max-width:767px) {
		.swipe-hint {
			display:block;
		}
	}

	/* ===============================
	   TALK VOTE WRAP
	=============================== */

	.talk-vote-head {
		position:relative;
		display:flex;
		align-items:center;
		justify-content:space-between;
		margin-bottom:35px;
		z-index:2;
	}

	.talk-vote-title {
		margin:0;
		color:#608d44;
		font-family:'Paperlogy-6SemiBold';
		font-size:40px;
	}

	.talk-vote-head > .talk-vote-more {
		display:inline-block;
		position:absolute;
		right:0;
		padding:10px 20px;
		border:1px solid #4e4e4e;
		border-radius:50px;
		text-align:center;
		color:#4e4e4e;
		font-size:15px;
		font-family:'Paperlogy-5Medium';
		overflow:hidden;
		z-index:1;
		transition:color .3s;
	}

	.talk-vote-head > .talk-vote-more:after {
		content:'';
		display:inline-block;
		width:11px;
		height:11px;
		margin-left:10px;
		background:url('/user/images/main/ico_more.png') right center no-repeat;
	}

	.talk-vote-head > .talk-vote-more:before {
		content:'';
		position:absolute;
		top:0;
		left:0;
		width:0;
		height:100%;
		background:#608d44;
		z-index:-1;
		transition:width .3s ease;
	}

	.talk-vote-head > .talk-vote-more:hover:before {
		width:100%;
		border:1px solid #608d44;
	}

	.talk-vote-head > .talk-vote-more:hover {
		border:1px solid #608d44;
		color:#fff;
	}

	.talk-vote-head > .talk-vote-more:hover:after {
		background:url('/user/images/main/ico_more_ov.png') right center no-repeat;
	}

	/* 리스트 */

	.talk-vote-wrap {
		width:100%;
        display:grid;
        grid-template-columns:repeat(4,1fr);
        gap:22px;
	}

	@media (max-width:1199px){
        .talk-vote-wrap{
            grid-template-columns:repeat(3,1fr);
            gap:20px;
        }
    }

    @media (max-width:991px){
        .talk-vote-wrap{
            grid-template-columns:repeat(2,1fr);
        }
    }

	@media (max-width:767px) {
        .talk-vote-wrap{
            grid-template-columns:repeat(1,1fr);
        }
    }

	.talk-vote-card {
		display:block;
		background:#fff;
		border-radius:20px;
		overflow:hidden;
		text-decoration:none;
		color:inherit;
		box-shadow:0 2px 10px rgba(0,0,0,0.05);
	}

	.talk-vote-thumb {
		width:100%;
		aspect-ratio:16 / 9;
		overflow:hidden;
		background:#f4f8fb;
	}

	.talk-vote-thumb img {
		width:100%;
		/*height:100%;*/
		object-fit:cover;
		display:block;
		transition:transform .2s ease;
	}

	.talk-vote-card:hover .talk-vote-thumb img {
		transform:scale(1.08);
	}

	.talk-vote-card-top {
		display:flex;
		flex-wrap:wrap;
		padding:20px 20px 0;
	}

	.talk-vote-card-top span {
		padding:0 5px;
		min-width:3.75rem;
		height:30px;
		display:inline-flex;
		justify-content:center;
		align-items:center;
		text-align:center;
		font-size:14px;
		font-weight:500;
		border:1px solid #252525;
	}

	/* 투표예정 */
	.talk-vote-state-before {
		background:#009688;
		border-color:#e85b9c;
		color:#fff;
	}

	/* 투표기간 */
	.talk-vote-state-label {
		background:#e85b9c;
		border-color:#e85b9c;
		color:#fff;
	}

	/* 투표마감 */
	.talk-vote-state-end {
		background:#8d8d8d;
		border-color:#8d8d8d;
		color:#fff;
	}

	.talk-vote-card-bottom {
		padding:10px 20px 20px;
		color:#333;
		min-height:90px;
	}

	.talk-vote-card-title {
		font-size:16px;
		font-weight:500;
		margin-bottom:6px;
		line-height:1.4;
		word-break:keep-all;
	}

	.talk-vote-info p {
		margin:0;
		font-size:14px;
		line-height:1.6;
		color:#666;
	}

	/* pager */

	.talk-vote-pager {
		position:relative;
		z-index:5;
		display:flex;
		justify-content:center;
		align-items:center;
		gap:8px;
		margin-top:20px;
	}

	.talk-vote-page-btn {
		width:34px;
		height:34px;
		border-radius:50%;
		border:1px solid #ddd;
		background:#fff;
		color:#333;
		font-size:14px;
		font-weight:600;
		cursor:pointer;
	}

	.talk-vote-page-btn.active {
		background:#7ac943;
		border-color:#7ac943;
		color:#fff;
	}

	.talk-vote-page-dot {
		display:inline-flex;
		align-items:center;
		justify-content:center;
		height:34px;
		padding:0 4px;
		color:#aaa;
		font-size:13px;
	}

	/* swipe */

	.talk-vote-swipe-dragging {
		transition:none !important;
	}

	.talk-vote-swipe-fade-out {
		opacity:.25;
		transform:translateX(-12px);
	}

	.talk-vote-swipe-fade-in {
		opacity:1;
		transform:translateX(0);
	}

	.talk-vote-swipe-hint {
		display:none;
		margin:12px auto 0;
		text-align:center;
		font-size:13px;
		color:#777;
	}

	@media (max-width:767px) {

		.talk-vote-head {
			display:block;
			margin-bottom:22px;
			padding-bottom:48px;
		}

		.talk-vote-title {
			font-size:30px;
			line-height:1.35;
			margin-bottom:10px;
		}

		.talk-vote-swipe-hint {
			display:block;
		}

	}

	/* 상세페이지 */

	.talk-view-wrap{
		margin-top:20px;
		/*border:1px solid #dddddd;*/
		background:#fff;
	}

	.talk-view-info-box{
		padding:22px 28px 40px;
		background: #fff;
		border-radius: 20px;
		padding: 20px 22px;
		box-shadow: 0 6px 20px rgba(0, 0, 0, .05);
		border: 1px solid #edf2fa;
	}

	.talk-view-info-top{
		display:flex;
		justify-content:space-between;
		align-items:flex-start;
		gap:20px;
		margin-bottom:30px;
	}

	.talk-view-info-title{
		font-size:18px;
		font-weight:700;
		color:#222;
		line-height:1.4;
		letter-spacing:-0.5px;
	}

	.talk-view-right{
		text-align:right;
	}

	.talk-view-state{
		display:inline-block;
		padding:6px 12px;
		border-radius:30px;
		font-size:12px;
		font-weight:600;
		color:#fff;
		margin-bottom:10px;
	}

	.talk-view-state-before{
		background:#5bc0de;
	}

	.talk-view-state-ing{
		background:#e83e8c;
	}

	.talk-view-state-end{
		background:#999;
	}

	.talk-view-meta{
		font-size:13px;
		color:#777;
		line-height:1.8;
	}

	.talk-view-meta span{
		display:inline-block;
		margin-left:10px;
		position:relative;
	}

	.talk-view-meta span:before{
		content:"|";
		position:absolute;
		left:-8px;
		top:0;
		color:#d2d2d2;
		font-size:11px;
	}

	.talk-view-meta span:first-child:before{
		display:none;
	}

	.talk-view-content{
		font-size:15px;
		line-height:2;
		color:#333;
		letter-spacing:-0.2px;
	}

	/* 본문 이미지 */
	.talk-view-content img{
		display:block;
		width:auto !important;
		max-width:min(1128px, 100%) !important;
		height:auto !important;
		margin:0 auto;
	}

	/* 첨부파일 아이콘은 제외 */
	.talk-view-content .list-group img{
		display:inline !important;
		width:auto !important;
		max-width:none !important;
		height:auto !important;
		margin:0 !important;
		vertical-align:middle;
	}

	.talk-view-content strong{
		/*font-weight:700;
		color:#111;*/
	}

	@media (max-width:768px){

		.talk-view-info-box{
			padding:18px 18px 28px;
		}

		.talk-view-info-top{
			display:block;
			margin-bottom:22px;
		}

		.talk-view-info-title{
			font-size:22px;
		}

		.talk-view-right{
			text-align:left;
			margin-top:12px;
		}

		.talk-view-meta span{
			margin-left:0;
			margin-right:10px;
		}

		.talk-view-meta span:before{
			display:none;
		}

		.talk-view-content{
			font-size:15px;
			line-height:1.9;
		}
	}

	/* 목록 버튼 */

	.btn-detail-list{
		display:inline-flex;
		align-items:center;
		justify-content:center;
		gap:8px;

		min-width:180px;
		height:54px;
		padding:0 34px;

		border-radius:60px;

		background:linear-gradient(135deg,#58cdf5 0%, #32bbed 45%, #1fa8da 100%);
		color:#fff !important;

		font-size:17px;
		font-weight:700;
		text-decoration:none !important;

		box-shadow:0 10px 24px rgba(50,187,237,.24);

		transition:all .2s ease;
	}

	.btn-detail-list:hover{
		transform:translateY(-2px);

		background:linear-gradient(135deg,#69d5f8 0%, #43c4f3 45%, #27afe0 100%);

		box-shadow:0 14px 30px rgba(50,187,237,.34);

		color:#fff !important;
	}

	.btn-detail-list .glyphicon{
		font-size:15px;
	}

	/* 모바일 */
	@media screen and (max-width:768px){

		.btn-detail-list{
			width:100%;
			height:50px;
			font-size:16px;
		}
	}

	/* 필터 */
	.talk-pg-filter{width:100%;display:flex; flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin:35px 0 25px;}
	.talk-pg-type-tabs{flex:0 0 auto;display:flex;align-items:center;gap:8px;margin-bottom:0;}
	.talk-pg-filter-row{flex:1;width:100%;display:flex;justify-content:flex-end;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;}
	.talk-pg-filter-row::-webkit-scrollbar{display:none;}
	.talk-pg-tabs{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:8px;min-width:max-content;}
	.talk-pg-tabs a,.talk-pg-tabs button,.talk-pg-tabs .talk-pg-tab{flex-shrink:0;white-space:nowrap;}

	/* 탭 버튼 */
	.talk-pg-tab{flex-shrink:0;white-space:nowrap;border:0;background:#f3f3f3;color:#333;font-size:16px;font-weight:500;padding:10px 18px;border-radius:22px;cursor:pointer;}
	.talk-pg-tab.active{background:#7ac943;color:#fff;}
	.talk-pg-type-tab{padding:6px 14px;border-radius:20px;border:1px solid #ddd;background:#fff;font-size:13px;cursor:pointer;white-space:nowrap;}
	.talk-pg-type-tab.active{background:#7ac943;color:#fff;border-color:#7ac943;}


	@media (max-width:768px){
		.talk-pg-filter{display:block;margin:25px 0 18px;}
		.talk-pg-type-tabs{width:100%;gap:6px;margin-bottom:12px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;}
		.talk-pg-type-tabs::-webkit-scrollbar{display:none;}
		.talk-pg-filter-row{margin:0 -15px;padding:0 15px 6px;justify-content:flex-start;cursor:grab;}
		.talk-pg-tabs{justify-content:flex-start;gap:6px;padding-right:15px;}
		.talk-pg-tabs a,.pg-tabs button,.pg-tabs .pg-tab{font-size:13px;white-space:nowrap;}
		.talk-pg-tab{font-size:14px;padding:8px 12px;border:1px solid #ddd;background:#fff;}
		.talk-pg-tab.active{border-color:#7ac943;background:#7ac943;color:#fff;}
	}

	@media (max-width:480px){
		.talk-pg-list{grid-template-columns:1fr;}
		.talk-pg-tabs{gap:5px;}
		.talk-pg-tabs a,.talk-pg-tabs button,.talk-pg-tabs .talk-pg-tab{font-size:12px;}
	}

	.talk-pg-filter-row{
		flex:1;
	}

	.talk-pg-filter-row2{
		flex:0 0 100%;       /* 한 줄 모두 차지 */
		width:100%;
		margin-top:-5px;
		display:flex;
		justify-content:flex-end;   /* 오른쪽 정렬 */
	}

	.talk-pg-filter-row2::-webkit-scrollbar{
		display:none;
	}

	.talk-pg-filter-row2 .talk-pg-tabs{
		display:flex;
		flex-wrap:nowrap;
		justify-content:flex-end;
		gap:8px;
		min-width:max-content;
	}

	@media (max-width:768px){
		.talk-pg-filter-row2{
			margin:0 -15px 18px;
			padding:0 15px 6px;
			justify-content:flex-start;
			cursor:grab;
		}

		.talk-pg-filter-row2 .talk-pg-tabs{
			justify-content:flex-start;
			gap:6px;
			padding-right:15px;
		}
	}

	@media (max-width:480px){
		.talk-pg-filter-row2 .talk-pg-tabs{
			gap:5px;
		}

		.talk-pg-filter-row2 .talk-pg-tabs a,
		.talk-pg-filter-row2 .talk-pg-tabs button,
		.talk-pg-filter-row2 .talk-pg-tabs .talk-pg-tab{
			font-size:12px;
		}
	}

	/* 검색 영역 */
	.talk-pg-search{
		width:100%;
		margin:-8px 0 24px;
		display:flex;
		justify-content:flex-end;
		box-sizing:border-box;
	}

	.talk-pg-search-box{
		width:100%;
		max-width:420px;
		height:48px;
		display:flex;
		align-items:center;
		gap:8px;
		padding:0 8px 0 16px;
		border:1px solid #e1e1e1;
		border-radius:999px;
		background:#fff;
		box-shadow:0 6px 18px rgba(0,0,0,.05);
		box-sizing:border-box;
		overflow:hidden;
	}

	.talk-pg-search-icon{
		flex:0 0 auto;
		color:#8abf5a;
		font-size:15px;
	}

	.talk-pg-search-input{
		flex:1 1 auto;
		min-width:0;
		height:44px;
		border:0;
		outline:0;
		background:transparent;
		font-size:15px;
		color:#333;
	}

	.talk-pg-search-input::placeholder{
		color:#aaa;
	}

	.talk-pg-search-btn{
		flex:0 0 auto;
		min-width:72px;
		height:36px;
		border:0;
		border-radius:999px;
		background:#6ac43f;
		color:#fff;
		font-size:14px;
		font-weight:700;
		cursor:pointer;
		transition:all .2s ease;
	}

	.talk-pg-search-btn:hover{
		background:#59b732;
		transform:translateY(-1px);
	}

	/* 모바일 */
	@media (max-width:767px){

		.talk-pg-search{
			margin:4px 0 18px;
			justify-content:flex-start;
		}

		.talk-pg-search-box{
			max-width:none;
			width:100%;
			gap:6px;
			padding:0 6px 0 12px;
		}

		.talk-pg-search-input{
			font-size:14px;
		}

		.talk-pg-search-btn{
			min-width:58px;
			height:34px;
			font-size:13px;
			padding:0 12px;
		}

	}

	.talk-vote-card-top{
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:10px;
		margin-bottom:10px;
	}

	.talk-category-badge{
		display:inline-flex;
		align-items:center;
		justify-content:center;

		padding:6px 12px;
		border-radius:30px;

		background:#8cc63f;
		color:#fff;

		font-size:12px;
		font-weight:400;
		line-height:1.2;

		white-space:nowrap;
	}

	.talk-guide-box {
		display: flex;
		gap: 16px;
		align-items: flex-start;
		margin: 0 0 26px;
		padding: 22px 24px;
		border-radius: 20px;
		background: linear-gradient(135deg, #f7fbf6 0%, #eef8ec 55%, #f9fcff 100%);
		border: 1px solid #e3efe1;
		box-shadow: 0 12px 30px rgba(0, 0, 0, .055);
		word-break: keep-all;
	}

	.talk-guide-icon {
		flex: 0 0 42px;
		width: 42px;
		height: 42px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		background: #63c132;
		color: #fff;
		font-size: 17px;
		box-shadow: 0 8px 18px rgba(99, 193, 50, .25);
	}

	.talk-guide-content {
		flex: 1;
		min-width: 0;
	}

	.talk-guide-content strong {
		display: block;
		margin-bottom: 8px;
		color: #1f2d1f;
		font-size: 20px;
		font-weight: 800;
		line-height: 1.35;
	}

	.talk-guide-content p {
		margin: 0;
		color: #4b5b4a;
		font-size: 16px;
		/*line-height: 1.75;*/
	}

	@media (max-width: 767px) {
		.talk-guide-box {
			gap: 12px;
			padding: 18px 16px;
			border-radius: 18px;
		}

		.talk-guide-icon {
			flex-basis: 38px;
			width: 38px;
			height: 38px;
			font-size: 15px;
		}

		.talk-guide-content strong {
			font-size: 18px;
		}

		.talk-guide-content p {
			font-size: 15px;
		}
	}

	.talk-guide-bottom{
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:24px;
		margin-top:18px;
		padding-top:18px;
		border-top:1px dashed #dbe6d7;
	}

	.talk-guide-note{
		flex:1;
		min-width:0;
	}

	.talk-guide-desc{
		margin:0 0 14px;
		font-size:14px;
		color:#6b7280;
		line-height:1.7;
	}

	.talk-guide-request{
		margin:0;
		color:#374151;
		font-size:15px;
		line-height:1.75;
	}

	.talk-guide-request strong{
		color:#ef5350;
		font-weight:800;
	}

	.youth-top-action{
		flex:0 0 auto;
	}

	.youth-post-request-btn{
		height:52px;
		padding:0 26px;
		display:inline-flex;
		align-items:center;
		justify-content:center;
		gap:8px;
		border-radius:999px;
		background:linear-gradient(135deg,#ff6b6b 0%,#ef5350 100%);
		color:#fff;
		font-size:16px;
		font-weight:800;
		text-decoration:none;
		box-shadow:0 12px 24px rgba(239,83,80,.24);
		transition:all .18s ease;
		white-space:nowrap;
	}

	.youth-post-request-btn:hover{
		color:#fff;
		text-decoration:none;
		transform:translateY(-2px);
		box-shadow:0 16px 28px rgba(239,83,80,.32);
	}

	@media (max-width:767px){

		.talk-guide-bottom{
			flex-direction:column;
			align-items:stretch;
			gap:18px;
		}

		.youth-top-action{
			width:100%;
		}

		.youth-post-request-btn{
			/*width:100%;*/
			margin-top:10px !important;
		}

	}

	.youth-top-action-bottom{
		margin-top:22px;
		display:flex;
		justify-content:center;
	}

	.youth-top-action-bottom .youth-post-request-btn{
		min-width:240px;
	}

	@media (max-width:767px){

		.youth-top-action-bottom{
			margin-top:18px;
		}

		.youth-top-action-bottom .youth-post-request-btn{
			width:100%;
			min-width:0;
		}

		.talk-guide-content p{
			line-height:1.3 !important;
		}


	}

	.youth-post-request-btn-inline{
		display:inline-flex;
		vertical-align:middle;
		margin:0 4px;
		height:42px;
		padding:0 18px;
		font-size:14px;
	}

	.talk-guide-note{
		display:flex;
		align-items:flex-start;
		justify-content:space-between;
		gap:28px;
	}

	.talk-guide-desc{
		flex:1;
		margin:0;
		font-size:14px;
		color:#6b7280;
		line-height:1.75;
	}

	.talk-guide-request{
		flex:0 0 auto;
		margin:0;
		text-align:right;
		color:#374151;
		font-size:15px;
		line-height:1.75;
	}

	.youth-post-request-btn-inline{
		display:inline-flex;
		align-items:center;
		justify-content:center;
		vertical-align:middle;
		margin:0 4px;
		height:42px;
		padding:0 18px;
		border-radius:999px;
		background:linear-gradient(135deg,#ff6b6b 0%,#ef5350 100%);
		color:#fff;
		font-size:14px;
		font-weight:800;
		text-decoration:none;
		box-shadow:0 10px 20px rgba(239,83,80,.22);
		transition:all .18s ease;
	}

	.youth-post-request-btn-inline:hover{
		color:#fff;
		text-decoration:none;
		transform:translateY(-1px);
		box-shadow:0 14px 24px rgba(239,83,80,.28);
	}

	@media (max-width:767px){

		.talk-guide-note{
			flex-direction:column;
			align-items:flex-start;
			gap:18px;
		}

		.talk-guide-request{
			width:100%;
			text-align:left;
		}

	}

	@media(max-width:768px){
		.talk-pg-filter{width:100%;overflow:hidden;}
		.talk-pg-filter-row{width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;}
		.talk-pg-tabs{display:flex;flex-wrap:nowrap;width:max-content;min-width:100%;gap:8px;}
		.talk-pg-tab{flex:0 0 auto;white-space:nowrap;}
	}

	.talk-thumb-content-preview{
        font-size:13px; /* thumb-title보다 작게 */
        line-height:1.5;
        color:#666;
        margin-bottom:10px;

        display:-webkit-box;
        -webkit-line-clamp:3;   /* 3줄 제한 */
        -webkit-box-orient:vertical;
        overflow:hidden;

        word-break:break-word;
    }

	.pdf-view-box{
        width:100%;
        margin:20px 0;
        border:1px solid #ddd;
        border-radius:12px;
        overflow:hidden;
        background:#fff;
    }

    .pdf-view-frame{
        width:100%;
        height:760px;
        border:0;
        display:block;
    }

    .pdf-view-btn-wrap{
        display:none;
        padding:12px;
        text-align:center;
        background:#f8f8f8;
    }

    .pdf-view-btn{
        display:inline-block;
        padding:10px 18px;
        border-radius:30px;
        background:#4270b7;
        color:#fff;
        font-size:14px;
        font-weight:700;
        text-decoration:none;
    }

    .pdf-view-btn:hover,
    .pdf-view-btn:focus{
        color:#fff;
        text-decoration:none;
    }

    @media (max-width:768px){
        .pdf-view-frame{
            height:520px;
        }

        .pdf-view-btn-wrap{
            display:block;
        }
    }

    @media (max-width:480px){
        .pdf-view-frame{
            height:430px;
        }
    }

    .pdf-view-title{
        display:flex;
        align-items:center;
        gap:10px;
        padding:10px 18px;
        background:#f8fbff;
        border:1px solid #dbe7f5;
        border-bottom:none;
        border-radius:12px 12px 0 0;
        font-size:14px;
        font-weight:700;
        color:#2c3e50;
        line-height:1.4;
        box-shadow:0 2px 8px rgba(0,0,0,.04);
    }

    .pdf-view-title .glyphicon{
        color:#d9534f;
        font-size:18px;
    }

    .pdf-view-frame{
        width:100%;
        height:760px;
        display:block;
        border:1px solid #dbe7f5;
        border-radius:0 0 12px 12px;
        background:#fff;
    }

    @media (max-width:768px){
        .pdf-view-title{
            padding:12px 14px;
            font-size:14px;
        }

        .pdf-view-frame{
            height:520px;
        }
    }

	/* 목록 하단 액션 버튼 영역 */
	.list-bottom-action{
		margin-top:25px;
		text-align:right;
	}

	/* 등록 버튼 */
	.mypage-action-btn{
		display:inline-flex;
		align-items:center;
		gap:8px;

		padding:12px 22px;

		border:0;
		border-radius:6px;

		background:#7ac943;
		color:#fff;

		font-size:15px;
		font-weight:700;
		line-height:1;

		cursor:pointer;

		box-shadow:0 4px 12px rgba(122,201,67,.25);
		transition:all .2s ease;
	}

	.mypage-action-btn .glyphicon{
		font-size:13px;
	}

	/* Hover */
	.mypage-action-btn:hover{
		background:#69b83a;
		color:#fff;

		transform:translateY(-1px);
		box-shadow:0 6px 16px rgba(122,201,67,.35);
	}

	/* Focus */
	.mypage-action-btn:focus,
	.mypage-action-btn:active{
		color:#fff;
		outline:none;
	}

	/* 모바일 */
	@media (max-width:768px){

		.list-bottom-action{
			margin-top:20px;
			text-align:center;
		}

		.mypage-action-btn{
			width:100%;
			justify-content:center;

			padding:14px 16px;

			font-size:14px;
		}

	}

	.apply-submit-box {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 10px;
		margin-top: 26px;
		padding-top: 22px;
		border-top: 1px solid #edf0ed;
	}

	.apply-submit-box .btn {
		min-width: 120px;
		height: 42px;
		padding: 0 20px;
		border-radius: 50px;
		font-weight: 800;
		border: 0;
	}

	.apply-submit-box .btn-primary {
		background: linear-gradient(135deg, #63c132 0%, #54b84d 100%);
		box-shadow: 0 10px 24px rgba(99, 193, 50, .25);
	}

	.apply-submit-box .btn-warning {
		background: #f0ad4e;
		box-shadow: 0 10px 24px rgba(240, 173, 78, .2);
	}

	.apply-submit-box .btn-info {
		background: #fff;
		color: #444;
		border: 1px solid #d8dee4;
		box-shadow: 0 6px 16px rgba(0, 0, 0, .06);
	}

	.apply-submit-box .btn:hover {
		transform: translateY(-1px);
	}

	/* =========================================================
	   루틴챌린지 목표 달성률
	   ========================================================= */

	.talk-achievement-wrap {
		margin-top: 14px;
		padding-top: 13px;
		border-top: 1px solid #edf0f2;
	}

	.talk-achievement-item + .talk-achievement-item {
		margin-top: 13px;
	}

	.talk-achievement-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		margin-bottom: 7px;
	}

	.talk-achievement-title {
		position: relative;
		padding-left: 11px;
		color: #444;
		font-size: 13px;
		font-weight: 700;
		line-height: 1.4;
	}

	.talk-achievement-title::before {
		position: absolute;
		top: 50%;
		left: 0;
		width: 5px;
		height: 5px;
		border-radius: 50%;
		content: "";
		transform: translateY(-50%);
	}

	.talk-achievement-value {
		flex-shrink: 0;
		color: #777;
		font-size: 12px;
		font-style: normal;
		line-height: 1.4;
	}

	.talk-achievement-value strong {
		font-size: 13px;
		font-weight: 800;
	}

	.talk-achievement-value em {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 38px;
		height: 22px;
		margin-left: 5px;
		padding: 0 7px;
		border-radius: 999px;
		font-size: 11px;
		font-style: normal;
		font-weight: 800;
	}

	.talk-achievement-progress {
		position: relative;
		overflow: hidden;
		width: 100%;
		height: 9px;
		border-radius: 999px;
		background-color: #edf1f3;
	}

	.talk-achievement-progress-bar {
		display: block;
		min-width: 0;
		height: 100%;
		border-radius: inherit;
		transition: width 0.7s ease;
	}


	/* 전체 달성률 */

	.talk-achievement-total .talk-achievement-title::before {
		background-color: #32a372;
	}

	.talk-achievement-total .talk-achievement-value strong {
		color: #23875e;
	}

	.talk-achievement-total .talk-achievement-value em {
		background-color: #daf5e9;
		color: #21865d;
	}

	.talk-achievement-total .talk-achievement-progress-bar {
		background: linear-gradient(
			90deg,
			#28a56f 0%,
			#4fbb83 70%,
			#79c99b 100%
		);
	}


	/* 나의 달성률 */

	.talk-achievement-person .talk-achievement-title::before {
		background-color: #5278dc;
	}

	.talk-achievement-person .talk-achievement-value strong {
		color: #4268cb;
	}

	.talk-achievement-person .talk-achievement-value em {
		background-color: #e3eaff;
		color: #4268cb;
	}

	.talk-achievement-person .talk-achievement-progress-bar {
		background: linear-gradient(
			90deg,
			#4e72d6 0%,
			#6e91e9 70%,
			#8aa6ef 100%
		);
	}


	/* 모바일 */

	@media (max-width: 480px) {
		.talk-achievement-wrap {
			margin-top: 12px;
			padding-top: 11px;
		}

		.talk-achievement-head {
			gap: 5px;
		}

		.talk-achievement-title {
			font-size: 12px;
		}

		.talk-achievement-value {
			font-size: 11px;
		}

		.talk-achievement-value strong {
			font-size: 12px;
		}

		.talk-achievement-value em {
			min-width: 34px;
			height: 20px;
			margin-left: 3px;
			padding: 0 6px;
			font-size: 10px;
		}
	}

	/* =========================================================
	   상세화면 목표 달성률
	   ========================================================= */

	.talk-view-achievement {
		display: flex;
		gap: 18px;
		width: 100%;
		margin-bottom: 16px;
		padding: 18px 22px;
		border: 1px solid #e7ece9;
		border-radius: 14px;
		background-color: #fff;
		box-shadow: 0 5px 18px rgba(35, 70, 54, 0.07);
		box-sizing: border-box;
	}

	.talk-view-achievement-item {
		flex: 1;
		min-width: 0;
	}

	.talk-view-achievement-item + .talk-view-achievement-item {
		padding-left: 18px;
		border-left: 1px solid #e9eeeb;
	}

	.talk-view-achievement.is-single .talk-view-achievement-item {
		width: 100%;
	}

	.talk-view-achievement-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 15px;
		margin-bottom: 10px;
	}

	.talk-view-achievement-title {
		display: flex;
		align-items: center;
		gap: 9px;
		min-width: 0;
	}

	.talk-view-achievement-title strong {
		color: #333;
		font-size: 15px;
		font-weight: 700;
		white-space: nowrap;
	}

	.achievement-icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 38px;
		height: 25px;
		padding: 0 8px;
		border-radius: 999px;
		font-size: 10px;
		font-weight: 800;
		box-sizing: border-box;
	}

	.talk-view-achievement-count {
		flex-shrink: 0;
		color: #777;
		font-size: 13px;
	}

	.talk-view-achievement-count > strong {
		font-size: 16px;
		font-weight: 800;
	}

	.talk-view-achievement-count > span {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 43px;
		height: 25px;
		margin-left: 7px;
		padding: 0 8px;
		border-radius: 999px;
		font-size: 11px;
		font-weight: 800;
		box-sizing: border-box;
	}

	.talk-view-progress {
		position: relative;
		overflow: hidden;
		width: 100%;
		height: 10px;
		border-radius: 999px;
		background-color: #edf1ef;
	}

	.talk-view-progress-bar {
		display: block;
		height: 100%;
		border-radius: inherit;
		transition: width 0.7s ease;
	}


	/* 전체 달성 */

	.achievement-total .achievement-icon {
		background-color: #daf5e9;
		color: #25885f;
	}

	.achievement-total .talk-view-achievement-count > strong {
		color: #268b62;
	}

	.achievement-total .talk-view-achievement-count > span {
		background-color: #daf5e9;
		color: #25885f;
	}

	.achievement-total .talk-view-progress-bar {
		background: linear-gradient(
			90deg,
			#29a56f 0%,
			#4fba83 70%,
			#7dcc9f 100%
		);
	}


	/* 나의 달성 */

	.achievement-person .achievement-icon {
		background-color: #e3eaff;
		color: #486ed0;
	}

	.achievement-person .talk-view-achievement-count > strong {
		color: #486ed0;
	}

	.achievement-person .talk-view-achievement-count > span {
		background-color: #e3eaff;
		color: #486ed0;
	}

	.achievement-person .talk-view-progress-bar {
		background: linear-gradient(
			90deg,
			#4c70d4 0%,
			#6c8fe6 70%,
			#91aaf0 100%
		);
	}


	/* 모바일 */

	@media (max-width: 767px) {
		.talk-view-achievement {
			display: block;
			margin-bottom: 12px;
			padding: 15px 16px;
			border-radius: 11px;
		}

		.talk-view-achievement-item + .talk-view-achievement-item {
			margin-top: 15px;
			padding-top: 15px;
			padding-left: 0;
			border-top: 1px solid #e9eeeb;
			border-left: 0;
		}

		.talk-view-achievement-head {
			gap: 8px;
			margin-bottom: 8px;
		}

		.talk-view-achievement-title {
			gap: 6px;
		}

		.talk-view-achievement-title strong {
			font-size: 13px;
		}

		.achievement-icon {
			min-width: 34px;
			height: 22px;
			padding: 0 6px;
			font-size: 9px;
		}

		.talk-view-achievement-count {
			font-size: 11px;
		}

		.talk-view-achievement-count > strong {
			font-size: 14px;
		}

		.talk-view-achievement-count > span {
			min-width: 37px;
			height: 22px;
			margin-left: 4px;
			padding: 0 6px;
			font-size: 10px;
		}

		.talk-view-progress {
			height: 8px;
		}
	}

	/* =========================================================
	   루틴챌린지 작성글 영역
	   ========================================================= */

	.routine-post-area {
		width: 100%;
		margin-top: 20px;
	}

	.routine-post-toolbar {
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
		gap: 20px;
		margin-bottom: 14px;
		padding-bottom: 13px;
		border-bottom: 1px solid #e7ebee;
	}

	.routine-post-toolbar-title {
		min-width: 0;
	}

	.routine-post-toolbar-title strong {
		display: block;
		color: #222;
		font-size: 18px;
		font-weight: 800;
		line-height: 1.4;
	}

	.routine-post-toolbar-title span {
		display: block;
		margin-top: 3px;
		color: #888;
		font-size: 13px;
		line-height: 1.5;
	}


	/* 필터 버튼 영역 */

	.routine-post-filter {
		display: inline-flex;
		flex-shrink: 0;
		align-items: center;
		padding: 4px;
		border: 1px solid #dfe5e2;
		border-radius: 10px;
		background-color: #f5f8f6;
	}

	.routine-filter-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		height: 36px;
		padding: 0 15px;
		border: 0;
		border-radius: 7px;
		outline: none;
		background-color: transparent;
		color: #68716d;
		font-family: inherit;
		font-size: 13px;
		font-weight: 600;
		line-height: 1;
		white-space: nowrap;
		cursor: pointer;
		transition:
			color 0.2s ease,
			background-color 0.2s ease,
			box-shadow 0.2s ease;
	}

	.routine-filter-button:hover {
		background-color: #e9f1ed;
		color: #27865f;
	}

	.routine-filter-button:focus {
		box-shadow: 0 0 0 3px rgba(45, 163, 111, 0.15);
	}


	/* 현재 선택된 버튼 */

	.routine-filter-button.active {
		background-color: #2fa36f;
		color: #fff;
		font-weight: 700;
		box-shadow: 0 3px 9px rgba(47, 163, 111, 0.22);
	}

	.routine-filter-button.active:hover {
		background-color: #278e60;
		color: #fff;
	}

	.routine-filter-button .glyphicon {
		top: 0;
		font-size: 12px;
	}


	/* 작성글 목록 */

	.routine-post-list {
		position: relative;
		width: 100%;
		min-height: 80px;
	}


	/* 모바일 */

	@media (max-width: 767px) {
		.routine-post-area {
			margin-top: 15px;
		}

		.routine-post-toolbar {
			display: block;
			margin-bottom: 12px;
			padding-bottom: 12px;
		}

		.routine-post-toolbar-title strong {
			font-size: 16px;
		}

		.routine-post-toolbar-title span {
			font-size: 12px;
		}

		.routine-post-filter {
			display: flex;
			width: 100%;
			margin-top: 11px;
			box-sizing: border-box;
		}

		.routine-filter-button {
			flex: 1;
			min-width: 0;
			height: 38px;
			padding: 0 8px;
			font-size: 12px;
		}
	}

	/* 버튼 글 개수 */

	.routine-filter-count {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 22px;
		height: 20px;
		padding: 0 6px;
		border-radius: 999px;
		background-color: #dde7e2;
		color: #64716b;
		font-size: 11px;
		font-weight: 800;
		line-height: 1;
		box-sizing: border-box;
		transition:
			color 0.2s ease,
			background-color 0.2s ease;
	}


	/* 마우스 오버 시 개수 */

	.routine-filter-button:hover .routine-filter-count {
		background-color: #d4e9de;
		color: #27865f;
	}


	/* 선택된 버튼의 개수 */

	.routine-filter-button.active .routine-filter-count {
		background-color: rgba(255, 255, 255, 0.23);
		color: #fff;
	}

	.routine-filter-button.active:hover .routine-filter-count {
		background-color: rgba(255, 255, 255, 0.28);
		color: #fff;
	}


	/* 모바일 */

	@media (max-width: 767px) {
		.routine-filter-button {
			gap: 5px;
		}

		.routine-filter-text {
			overflow: hidden;
			text-overflow: ellipsis;
			white-space: nowrap;
		}

		.routine-filter-count {
			flex-shrink: 0;
			min-width: 20px;
			height: 19px;
			padding: 0 5px;
			font-size: 10px;
		}
	}

