/* calendar wrap */
.bskr-calendar-wrap { --cal-border:#dee2e6; --cal-head:#f8f9fa; --cal-muted:#6c757d; --cal-today:#fff3cd; --cal-daybg:#f8f9fa; --cal-holiday:#dc3545; --cal-sat:#0d6efd; }
.bskr-calendar-wrap .calendar-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; flex-wrap:wrap; }
.bskr-calendar-wrap .calendar-title { font-size:1.25rem; font-weight:700; color:#212529; margin:0; }
.bskr-calendar-wrap .calendar-nav { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.bskr-calendar-wrap .calendar-nav .btn { min-width:38px; }
.bskr-calendar-wrap .calendar-table { table-layout:fixed; margin-bottom:0; border:1px solid var(--cal-border); }
.bskr-calendar-wrap .calendar-table thead th { background:var(--cal-head); text-align:center; font-weight:700; font-size:13px; padding:12px 6px; border:1px solid var(--cal-border); }
.bskr-calendar-wrap .calendar-table .tit-sun { color:var(--cal-holiday); }
.bskr-calendar-wrap .calendar-table .tit-sat { color:var(--cal-sat); }
.bskr-calendar-wrap .calendar-table td { height:140px; vertical-align:top; padding:0; border:1px solid var(--cal-border); background:#fff; }
.bskr-calendar-wrap .calendar-empty { background:#fafafa; }
.bskr-calendar-wrap .calendar-day { height:100%; display:flex; flex-direction:column; }
.bskr-calendar-wrap .calendar-day-head { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 8px 6px; border-bottom:1px solid #f1f3f5; }
.bskr-calendar-wrap .calendar-day.is-today .calendar-day-head { background:var(--cal-today); }
.bskr-calendar-wrap .day-link { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:8px; text-decoration:none; font-weight:700; font-size:13px; background:var(--cal-daybg); color:#495057; }
.bskr-calendar-wrap .day-link.sun { color:var(--cal-holiday); }
.bskr-calendar-wrap .day-link.sat { color:var(--cal-sat); }
.bskr-calendar-wrap .lunar-text { font-size:11px; color:#adb5bd; white-space:nowrap; }
.bskr-calendar-wrap .calendar-day-body { flex:1; padding:8px; overflow:hidden; }
.bskr-calendar-wrap .special-day-link { display:inline-block; padding:3px 8px; border-radius:999px; background:#cfe2ff; border:1px solid #9ec5fe; color:#084298; text-decoration:none; font-size:12px; margin-bottom:6px; }
.bskr-calendar-wrap .event-item { display:block; font-size:12px; line-height:1.45; margin-bottom:5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bskr-calendar-wrap .event-item a { text-decoration:none; }
.bskr-calendar-wrap .event-meta { margin-left:4px; color:#dc3545; }
.bskr-calendar-wrap .eventname1 a { color:#0d6efd; }
.bskr-calendar-wrap .eventname2 a { color:#198754; }
.bskr-calendar-wrap .eventname3 a { color:#6f42c1; }
.bskr-calendar-wrap .eventname4 a { color:#6c757d; }
.bskr-calendar-wrap .eventname5 a { color:#0a58ca; }
.bskr-calendar-wrap .eventname6 a { color:#fd7e14; }
.bskr-calendar-wrap .calendar-help { margin-top:10px; color:#6c757d; font-size:13px; }
.bskr-calendar-wrap .calendar-help i { margin-right:4px; }
#schedule_content_div {
	display:none;
	position:absolute;
	z-index:1080;
	width:320px;
	max-width:calc(100vw - 24px);
	padding:12px 14px;
	background:#fff;
	border:1px solid #dee2e6;
	border-radius:12px;
	box-shadow:0 0.5rem 1rem rgba(0,0,0,.15);
	color:#495057;
	font-size:13px;
	line-height:1.6;
}
#schedule_content_div .tooltip-title { font-weight:700; color:#212529; margin-bottom:6px; }
#schedule_content_div .tooltip-body { max-height:220px; overflow:auto; }

@media (max-width: 991.98px) {
	.bskr-calendar-wrap .calendar-table td { height:100px; }
	.bskr-calendar-wrap .calendar-day-head { padding:6px; }
	.bskr-calendar-wrap .calendar-day-body { padding:6px; }
	.bskr-calendar-wrap .day-link { width:28px; height:28px; font-size:12px; }
	.bskr-calendar-wrap .event-item { font-size:11px; }
}

@media (max-width: 767.98px) {
	.bskr-calendar-wrap .calendar-table td { height:82px; }
	.bskr-calendar-wrap .lunar-text { display:none; }
	.bskr-calendar-wrap .calendar-day-body { padding:4px; }
	.bskr-calendar-wrap .special-day-link { font-size:11px; padding:2px 6px; }
}

#bskr-view{
	--bv-border:#dee2e6;
	--bv-soft:#f8f9fa;
	--bv-text:#212529;
	--bv-muted:#6c757d;
	--bv-primary:#0d6efd;
}

#bskr-view .bskr-view-card{
	background:#fff;
	border:1px solid var(--bv-border);
	border-radius:18px;
	box-shadow:0 0.25rem 1rem rgba(0,0,0,.04);
	overflow:hidden;
}

#bskr-view .bskr-view-header{
	padding:24px 24px 18px;
	border-bottom:1px solid var(--bv-border);
}

#bskr-view .bskr-view-top{
	display:flex;
	align-items:flex-start;
	gap:16px;
}

#bskr-view .bskr-view-avatar{
	width:56px;
	height:56px;
	border-radius:50%;
	overflow:hidden;
	flex:0 0 56px;
	background:#f1f3f5;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	border:1px solid #e9ecef;
}

#bskr-view .bskr-view-avatar img{
	width:100%;
	height:100%;
	object-fit:cover;
}

#bskr-view .bskr-view-avatar i{
	font-size:1.25rem;
	color:#adb5bd;
}

#bskr-view .bskr-view-subject{
	flex:1 1 auto;
	min-width:0;
}

#bskr-view .bskr-view-subject h1{
	margin:0;
	font-size:1.55rem;
	font-weight:700;
	line-height:1.4;
	color:var(--bv-text);
	word-break:keep-all;
}

#bskr-view .bskr-view-subject .cat{
	color:var(--bv-primary);
}

#bskr-view .bskr-view-meta{
	margin-top:12px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	flex-wrap:wrap;
}

#bskr-view .bskr-view-meta-left{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:10px;
	font-size:.92rem;
	color:var(--bv-muted);
}

#bskr-view .bskr-view-meta-left .dot{
	color:#adb5bd;
}

#bskr-view .bskr-view-meta-right{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	align-items:center;
}

#bskr-view .bskr-font-tools{
	display:flex;
	gap:6px;
	align-items:center;
}

#bskr-view .bskr-fontface-box{
	position:relative;
}

#bskr-view .bskr-fontface-list{
	position:absolute;
	right:0;
	top:100%;
	margin-top:6px;
	min-width:140px;
	background:#fff;
	border:1px solid var(--bv-border);
	border-radius:12px;
	box-shadow:0 0.5rem 1rem rgba(0,0,0,.12);
	z-index:20;
	display:none;
	overflow:hidden;
}

#bskr-view .bskr-fontface-list ul{
	list-style:none;
	margin:0;
	padding:0;
}

#bskr-view .bskr-fontface-list li{
	padding:10px 12px;
	cursor:pointer;
	font-size:.9rem;
}

#bskr-view .bskr-fontface-list li:hover{
	background:#f8f9fa;
}

#bskr-view .bskr-action-links{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	padding:0;
	margin:0;
	list-style:none;
}

#bskr-view .bskr-action-links a{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:7px 10px;
	border:1px solid var(--bv-border);
	border-radius:10px;
	text-decoration:none;
	color:#495057;
	background:#fff;
	font-size:.875rem;
}

#bskr-view .bskr-action-links a:hover{
	background:#f8f9fa;
}

#bskr-view .bskr-view-content{
	padding:28px 24px;
	color:var(--bv-text);
	line-height:1.8;
	word-break:break-word;
}

#bskr-view .bskr-hidden-box{
	padding:16px 18px;
	margin-bottom:18px;
	border:1px solid #f5c2c7;
	background:#fff5f5;
	color:#842029;
	border-radius:14px;
}

#bskr-view .bskr-scorebox{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:28px;
	padding-top:20px;
	border-top:1px solid var(--bv-border);
}

#bskr-view .bskr-tagbox,
#bskr-view .bskr-attachbox,
#bskr-view .bskr-snsbox{
	margin-top:24px;
	padding-top:18px;
	border-top:1px solid var(--bv-border);
}

#bskr-view .bskr-tagbox h6,
#bskr-view .bskr-attachbox h6,
#bskr-view .bskr-snsbox h6{
	margin:0 0 12px;
	font-size:.95rem;
	font-weight:700;
}

#bskr-view .bskr-tag-items{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}

#bskr-view .bskr-tag-items a{
	display:inline-flex;
	align-items:center;
	padding:6px 10px;
	border-radius:999px;
	background:#f1f3f5;
	color:#495057;
	text-decoration:none;
	font-size:.875rem;
}

#bskr-view .bskr-tag-items a:hover{
	background:#e9ecef;
}

#bskr-view .bskr-attachbox ul{
	list-style:none;
	padding:0;
	margin:0;
}

#bskr-view .bskr-attachbox li{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:8px;
	padding:8px 0;
	border-top:1px dashed #e9ecef;
}

#bskr-view .bskr-attachbox li:first-child{
	border-top:0;
	padding-top:0;
}

#bskr-view .bskr-attachbox a{
	text-decoration:none;
}

#bskr-view .bskr-sns-icons{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}

#bskr-view .bskr-sns-icons button{
	border:1px solid var(--bv-border);
	background:#fff;
	border-radius:10px;
	padding:8px 12px;
	display:inline-flex;
	align-items:center;
	gap:8px;
}

#bskr-view .bskr-bottom{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:12px;
	flex-wrap:wrap;
	margin-top:18px;
}

#bskr-view .bskr-bottom-actions{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}

#bskr-view .bskr-comment-toggle{
	margin-top:20px;
	padding:14px 18px;
	border:1px solid var(--bv-border);
	border-radius:14px;
	background:#fff;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:14px;
}

#bskr-view .bskr-comment-toggle a{
	text-decoration:none;
	font-weight:600;
}

#bskr-view .bskr-comment-frame{
	margin-top:12px;
}

#bskr-view .bskr-view-content img{
	max-width:100%;
	height:auto;
}

@media (max-width: 767.98px){
	#bskr-view .bskr-view-header,
	#bskr-view .bskr-view-content{
		padding:18px 16px;
	}
	#bskr-view .bskr-view-top{
		gap:12px;
	}
	#bskr-view .bskr-view-avatar{
		width:46px;
		height:46px;
		flex-basis:46px;
	}
	#bskr-view .bskr-view-subject h1{
		font-size:1.2rem;
	}
}
/* --------------------------------------------------
   Bootstrap 5 write form skin
-------------------------------------------------- */
#bskr-write,
#bbswrite {
	--bw-border:#dee2e6;
	--bw-muted:#6c757d;
	--bw-bg:#ffffff;
	--bw-soft:#f8f9fa;
	--bw-label:#495057;
}

#bskr-write .bskr-write-card,
#bbswrite .bskr-write-card {
	background:var(--bw-bg);
	border:1px solid var(--bw-border);
	border-radius:16px;
	padding:24px;
	box-shadow:0 0.25rem 0.75rem rgba(0,0,0,.04);
}

#bskr-write .bskr-write-title,
#bbswrite .bskr-write-title {
	margin:0 0 20px;
	font-size:1.25rem;
	font-weight:700;
	color:#212529;
}

#bskr-write .bskr-form-section,
#bbswrite .bskr-form-section {
	margin-bottom:18px;
}

#bskr-write .bskr-form-label,
#bbswrite .bskr-form-label {
	display:block;
	margin-bottom:8px;
	font-size:.95rem;
	font-weight:600;
	color:var(--bw-label);
}

#bskr-write .bskr-inline-help,
#bbswrite .bskr-inline-help {
	font-size:.875rem;
	color:var(--bw-muted);
	margin-top:6px;
}

#bskr-write .bskr-guide,
#bbswrite .bskr-guide {
	margin-top:8px;
	padding:10px 12px;
	background:#fff8e1;
	border:1px solid #ffe69c;
	border-radius:10px;
	font-size:.875rem;
	color:#7a5d00;
}

#bskr-write .bskr-admin-note,
#bbswrite .bskr-admin-note {
	margin:20px 0;
	padding:18px;
	border:1px solid #e9ecef;
	background:#f8f9fa;
	border-radius:12px;
	color:#495057;
}

#bskr-write .bskr-editbox,
#bbswrite .bskr-editbox {
	border:1px solid var(--bw-border);
	border-radius:14px;
	overflow:hidden;
	background:#fff;
	margin-bottom:18px;
}

#bskr-write .bskr-toolbox,
#bbswrite .bskr-toolbox {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	padding:12px;
	background:var(--bw-soft);
	border-bottom:1px solid var(--bw-border);
}

#bskr-write .bskr-toolbox a,
#bbswrite .bskr-toolbox a {
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:7px 11px;
	border:1px solid #d0d7de;
	border-radius:10px;
	background:#fff;
	color:#495057;
	text-decoration:none;
	font-size:.875rem;
}

#bskr-write .bskr-toolbox a:hover,
#bbswrite .bskr-toolbox a:hover {
	background:#f1f3f5;
	color:#212529;
}

#bskr-write .bskr-radio-group,
#bbswrite .bskr-radio-group {
	display:flex;
	flex-wrap:wrap;
	gap:16px;
}

#bskr-write .bskr-bottom-actions,
#bbswrite .bskr-bottom-actions {
	display:flex;
	justify-content:flex-end;
	gap:10px;
	padding-top:8px;
}

#bskr-write .bskr-help-toggle,
#bbswrite .bskr-help-toggle {
	margin-left:8px;
	color:#0d6efd;
	cursor:pointer;
}

#bskr-write .bskr-help-box,
#bbswrite .bskr-help-box {
	display:none;
	margin-top:10px;
	padding:10px 12px;
	border:1px solid #cfe2ff;
	background:#f0f7ff;
	border-radius:10px;
	font-size:.875rem;
	color:#084298;
}

#bskr-write .bskr-sns-box,
#bbswrite .bskr-sns-box {
	padding:12px 14px;
	border:1px dashed #ced4da;
	background:#f8f9fa;
	border-radius:12px;
}

#bskr-write .bskr-row-gap,
#bbswrite .bskr-row-gap {
	row-gap:16px;
}

@media (max-width: 767.98px) {
	#bskr-write .bskr-write-card,
	#bbswrite .bskr-write-card {
		padding:16px;
	}
	#bskr-write .bskr-bottom-actions,
	#bbswrite .bskr-bottom-actions {
		flex-direction:column;
	}
	#bskr-write .bskr-bottom-actions .btn,
	#bbswrite .bskr-bottom-actions .btn {
		width:100%;
	}
}