/* Support 模块样式 - support.css */
/* 作用范围：support/ 目录下所有页面 */
/* Banner / 面包屑 已提取至 common.css，此处只保留模块专属样式 */


/* ============================================================
   主体区域
   ============================================================ */
.support-main {
	background: #fff;
	padding-top: 40px;
	padding-bottom: 70px;
}

@media (max-width: 767px) {
	.support-main { padding-top: 24px; padding-bottom: 40px; }
}


/* ============================================================
   页面主标题区
   ============================================================ */
.support-page-header {
	margin-bottom: 40px;
}
/* PC: 40px / 500 */
.support-page-title {
	font-size: 40px;
	font-weight: 500;
	color: #000;
	text-align: left;
	line-height: 1.2;
	margin-bottom: 12px;
}
/* PC: 24px / 500 / #000 60% / line-height 30px */
.support-page-sub {
	font-size: 24px;
	font-weight: 500;
	color: rgba(0, 0, 0, 0.6);
	text-align: left;
	line-height: 30px;
	margin: 0;
}

@media (max-width: 767px) {
	.support-page-header { margin-bottom: 24px; }
	.support-page-title  { font-size: 22px; line-height: 1.3; }
	.support-page-sub    { font-size: 14px; line-height: 20px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
	.support-page-title  { font-size: 28px; }
	.support-page-sub    { font-size: 18px; line-height: 26px; }
}


/* ============================================================
   4个功能导航卡片
   PC: border #e8e8e8, background #f9f9f9
   ============================================================ */
.support-nav-cards {
	margin-bottom: 0;
}
.support-nav-row {
	margin-left: -10px;
	margin-right: -10px;
}
.support-nav-row > [class*="col-"] {
	padding-left: 10px;
	padding-right: 10px;
}
.support-nav-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 32px 16px 28px;
	border: 1px solid #e8e8e8;
	background: #f9f9f9;
	text-align: center;
	color: #000;
	transition: border-color 0.3s, background 0.3s;
	height: 100%;
}
.s-card-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 16px;
	flex-shrink: 0;
}
.s-card-icon > img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
/* PC: 24px / 500 / line-height 25px */
.s-card-text {
	font-size: 24px;
	font-weight: 500;
	text-align: center;
	color: #000;
	line-height: 25px;
	transition: color 0.3s;
}
.support-nav-card:hover {
	border-color: var(--my-color);
	background: #fff;
}
.support-nav-card:hover .s-card-text {
	color: var(--my-color);
}

@media (max-width: 767px) {
	.support-nav-row {
		margin-left: -6px;
		margin-right: -6px;
	}
	.support-nav-row > [class*="col-"] {
		padding-left: 6px;
		padding-right: 6px;
		margin-bottom: 12px;
	}
	.support-nav-card { padding: 18px 10px 14px; }
	.s-card-icon { width: 32px; height: 32px; margin-bottom: 10px; }
	.s-card-text { font-size: 12px; line-height: 16px; }
}
@media (min-width: 768px) {
	.support-nav-row { margin-left: -12px; margin-right: -12px; }
	.support-nav-row > [class*="col-"] { padding-left: 12px; padding-right: 12px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
	.s-card-icon { width: 42px; height: 42px; }
	.s-card-text { font-size: 16px; line-height: 22px; }
}


/* ============================================================
   内容分区（Ordering Guide / FAQs / Shipping and Storage）
   ============================================================ */
.support-sections {
	border-top: 1px solid #e0e0e0;
	margin-top: 50px;
}
.support-section {
	border-bottom: 1px solid #e0e0e0;
}
.support-section-inner {
	padding: 44px 0;
	align-items: flex-start;
}

/* 左侧标题列：宽度匹配 40px 大字 */
.support-section-left {
	width: 360px;
	flex-shrink: 0;
	padding-right: 40px;
	padding-top: 4px;
}
/* PC: 40px / 500 / #000 */
.support-section-title {
	font-size: 40px;
	font-weight: 500;
	color: #000;
	text-align: left;
	line-height: 1.25;
	margin: 0;
}

/* 右侧内容列 */
.support-section-right {
	flex: 1;
	min-width: 0;
}

@media (max-width: 767px) {
	.support-section-inner { flex-direction: column; padding: 24px 0; }
	.support-section-left  { width: 100%; padding-right: 0; padding-top: 0; padding-bottom: 12px; }
	.support-section-title { font-size: 20px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
	.support-section-left  { width: 300px; padding-right: 30px; }
	.support-section-title { font-size: 26px; }
	.support-section-inner { padding: 36px 0; }
}
@media (min-width: 1200px) {
	.support-section-inner { padding: 50px 0; }
}


/* ============================================================
   步骤列表（Ordering Guide）
   PC: 24px / 500 / #000
   ============================================================ */
.support-steps {
	list-style: none;
	padding: 0;
	margin: 0;
}
.support-steps > li {
	font-size: 20px;
	font-weight: 500;
	color: #000;
	line-height: 1.6;
	padding: 15px 0;
	border-bottom: 1px solid #efefef;
}
.support-steps > li:first-child { padding-top: 0; }
.support-steps > li:last-child  { border-bottom: none; padding-bottom: 0; }

@media (max-width: 767px) {
	.support-steps > li { font-size: 13px; padding: 10px 0; }
}
@media (min-width: 768px) and (max-width: 1199px) {
	.support-steps > li { font-size: 16px; padding: 12px 0; }
}


/* ============================================================
   FAQ 列表（FAQs / Shipping and Storage）
   ============================================================ */
.support-faq-list {
	list-style: none;
	padding: 0;
	margin: 0;
}
.support-faq-list > li {
	border-bottom: 1px solid #ebebeb;
}
.support-faq-list > li:last-child {
	border-bottom: none;
}
.support-faq-list > li > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 0;
	font-size: 20px;
	font-weight: 500;
	color: #000;
	line-height: 1.5;
	transition: color 0.3s;
}
.support-faq-list > li > a > span {
	flex: 1;
	min-width: 0;
}
.support-faq-list > li > a:hover {
	color: var(--my-color);
	background: #F4F4F4;
}

/* 右箭头 */
.s-arrow {
	display: block;
	flex-shrink: 0;
	width: 8px;
	height: 8px;
	margin-left: 20px;
	border-top: 2px solid #999;
	border-right: 2px solid #999;
	transform: rotate(45deg);
	transition: border-color 0.3s;
}
.support-faq-list > li > a:hover .s-arrow {
	border-color: var(--my-color);
}

@media (max-width: 767px) {
	.support-faq-list > li > a { font-size: 13px; padding: 12px 0; }
	.s-arrow { width: 6px; height: 6px; margin-left: 12px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
	.support-faq-list > li > a { font-size: 16px; padding: 14px 0; }
}


/* ============================================================
   内页双栏布局（FAQs / Ordering Guide / Calendar / Shipping）
   左：侧边导航  右：内容区
   ============================================================ */
.support-inner-main {
	background: #fff;
	padding-top: 40px;
	padding-bottom: 80px;
}
.support-inner-flex {
	align-items: flex-start;
}

/* ----- 左侧导航栏 ----- */
.support-sidebar {
	width: 240px;
	flex-shrink: 0;
}
.support-sidebar-nav {
	list-style: none;
	padding: 0;
	margin: 0;
}
.support-sidebar-nav li > a {
	display: block;
	padding: 16px 20px;
	font-size: 16px;
	font-weight: 500;
	color: #333;
	line-height: 1.35;
	border-bottom: 1px solid #e8e8e8;
	transition: color 0.3s, background 0.3s;
}
.support-sidebar-nav li:last-child > a { border-bottom: none; }
.support-sidebar-nav li > a:hover {
	color: var(--my-color);
	background: #f5f8ff;
}
.support-sidebar-nav li.active > a {
	background: var(--my-color);
	color: #fff;
}
.support-sidebar-nav li.active > a:hover {
	color: #fff;
}

/* ----- 右侧内容区 ----- */
.support-inner-content {
	flex: 1;
	min-width: 0;
	padding-left: 60px;
}

/* FAQ 顶部介绍块 */
.faq-intro {
	margin-bottom: 32px;
	padding-bottom: 28px;
	border-bottom: 1px solid #efefef;
}
.faq-intro-title {
	font-size: 22px;
	font-weight: 500;
	color: #000;
	line-height: 1.4;
	margin-bottom: 14px;
}
.faq-intro-text {
    font-family: "Noto Sans SC";
	font-size: 16px;
	color: #555;
	line-height: 1.8;
	margin: 0;
}

/* FAQ 列表主体（含吉祥物定位容器）*/
.faq-list-wrap {
	position: relative;
}
/* 吉祥物：固定在页面右侧，可点击跳转 */
.faq-mascot {
	position: fixed;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 130px;
	display: flex;
	flex-direction: column;
	align-items: center;
	cursor: pointer;
	text-decoration: none;
	z-index: 100;
}
.faq-mascot > img {
	display: block;
	width: 100%;
}
/* 气泡 */
.faq-mascot-bubble {
	background: #bad3d7;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 14px;
	font-weight: 600;
	color: #283886;
	line-height: 1.5;
	text-align: left;
	/* margin-bottom: 8px; */
    margin-right: 150px;
	position: relative;
	width: 100%;
	box-sizing: border-box;
}
/* 气泡尾巴（朝右下角指向吉祥物头顶）*/
.faq-mascot-bubble::after {
	content: "";
	position: absolute;
	bottom: -10px;
	right: 20px;
	border-width: 10px 0 0 8px;
	border-style: solid;
	border-color: #bad3d7 transparent transparent transparent;
}

/* 单条 FAQ */
.faq-item {
	padding: 26px 0;
	border-bottom: 1px solid #efefef;
}
.faq-item:first-child { padding-top: 0; }
.faq-item:last-child  { border-bottom: none; padding-bottom: 0; }

.faq-question {
	font-size: 20px;
	font-weight: 500;
	color: #000;
	line-height: 1.5;
	margin: 0 0 12px;
}
.faq-question > a {
	color: #000;
	transition: color 0.3s;
}
.faq-question > a:hover { color: var(--my-color); text-decoration: underline;}

.faq-answer {
	font-size: 15px;
	color: #555;
	line-height: 1.85;
}
.faq-answer p { margin: 0; }
.faq-answer p + p { margin-top: 10px; }
/* 第三条起取消右侧预留 */
.faq-item:nth-child(n+3) .faq-answer { padding-right: 0; }

/* ----- FAQ 详情页 ----- */
.faq-detail-title {
	font-size: 30px;
	font-weight: 500;
	color: #000;
	line-height: 1.3;
	margin: 0 0 28px;
	padding-bottom: 20px;
	border-bottom: 1px solid #efefef;
}
/* 详情富文本内容 */
.faq-detail-body {
	font-size: 16px;
	color: #000000;
	line-height: 32px;
}
.faq-detail-body h4 {
	font-size: 18px;
	font-weight: 600;
	color: #000;
	margin: 28px 0 12px;
}
.faq-detail-body p {
	font-size: 16px;
	font-weight: 400;
	font-family: "Noto Sans SC", sans-serif;
	color: #000000;
	text-align: left;
	line-height: 32px;
	margin: 0 0 14px;
}
.faq-detail-body p:last-child { margin-bottom: 0; }
.faq-detail-body img {
	display: block;
	max-width: 100%;
	margin: 20px auto;
}

/* ----- 响应式 ----- */
@media (max-width: 1199px) {
	.faq-detail-title { font-size: 22px; }
}
@media (max-width: 767px) {
	.support-sidebar-nav {
		display: flex;
		flex-wrap: wrap;
	}
	.support-sidebar-nav li {
		width: 50%;
	}
	.support-sidebar-nav li > a {
		height: 100%;
		padding: 12px 14px;
		font-size: 14px;
		border-bottom: 1px solid #e8e8e8;
		border-right: 1px solid #e8e8e8;
	}
	.support-sidebar-nav li:nth-child(2n) > a {
		border-right: none;
	}
	.support-sidebar-nav li:last-child > a {
		border-bottom: 1px solid #e8e8e8;
	}
}

@media (max-width: 767px) {
	.support-inner-main { padding: 24px 0 40px; }
	.support-inner-flex { flex-direction: column; }
	.support-sidebar { width: 100%; margin-bottom: 20px; }
	.support-inner-content { width:100%;padding-left: 0; }
	.faq-intro-title { font-size: 16px; }
	.faq-question { font-size: 15px; }
	.faq-answer { font-size: 13px;}
	.faq-detail-body { font-size: 14px; line-height: 26px; }
	.faq-detail-body p { font-size: 14px; line-height: 26px; }
	.faq-detail-body h4 { font-size: 15px; }
	.faq-mascot {
		/* display: none; */
		width: 64px;
		top: auto;
		bottom: 80px;
		right: 12px;
		transform: none;
	}
	.faq-mascot-bubble {
		display: none;
		padding: 5px 4px;
		font-size: 10px;
		line-height: 1.4;
		margin-right: 0;
	}
}
@media (min-width: 768px) and (max-width: 1199px) {
	.support-inner-main { padding: 32px 0 60px; }
	.support-sidebar { width: 180px; }
	.support-inner-content { padding-left: 40px; }
	.faq-intro-title { font-size: 18px; }
	.faq-question { font-size: 17px; }
	.faq-detail-body { font-size: 15px; line-height: 28px; }
	.faq-detail-body p { font-size: 15px; line-height: 28px; }
}

/* ============================================================
   Ordering Guide 页面
   ============================================================ */

.ordering-steps {
	padding-top: 4px;
}
.ordering-step {
	margin-bottom: 40px;
}
.ordering-step:last-child {
	margin-bottom: 0;
}
.ordering-step-text {
	font-size: 20px;
	font-weight: 400;
	font-family: "Noto Sans SC", sans-serif;
	color: #000000;
	line-height: 32px;
	margin: 0 0 16px;
}
.ordering-step-img {
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid #e8e8e8;
    padding: 50px;
    background: #f2f2f2;
}
.ordering-step-img img {
	display: block;
    margin: 0 auto;
	width: 800px;
}

@media (max-width: 767px) {
	.ordering-step { margin-bottom: 24px; }
	.ordering-step-text { font-size: 14px; line-height: 26px; }
	.ordering-step-img {
		padding: 16px;
	}
}
@media (max-width: 991px) {
	.ordering-step-img img {
		width: 100%;
		max-width: 100%;
	}
	.ordering-step-img {
		padding: 24px;
	}
}
@media (min-width: 768px) and (max-width: 1199px) {
	.ordering-step { margin-bottom: 32px; }
	.ordering-step-text { font-size: 15px; line-height: 28px; }
}

/* ============================================================
   Cell Production Calendar 页面
   ============================================================ */

/* 页面标题区 */
.cal-page-header {
	margin-bottom: 24px;
}
.cal-page-title {
	font-size: 30px;
	font-weight: 500;
	color: #000;
	line-height: 1.3;
	margin: 0 0 8px;
}
.cal-page-desc {
	color: #00000099;
 	font-size: 20px;
	line-height: 1.6;
	margin: 0;
}

/* 日历外层容器 */
.cal-wrap {
	background: #fff;
}

/* ============================================================
   FullCalendar 样式覆盖
   ============================================================ */

/* 整体字体 */
.fc {
}

/* ----- 工具栏 ----- */
.fc .fc-toolbar.fc-header-toolbar {
	margin-bottom: 16px;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}
/* 工具栏标题 */
.fc .fc-toolbar-title {
	font-size: 20px;
	font-weight: 600;
	color: #000;
 	font-family: "Inter";
	margin: 0 6px;
	line-height: 1;
}
/* 工具栏左侧组：prev、title、next 紧凑排列 */
.fc .fc-toolbar-chunk:first-child {
	display: flex;
	align-items: center;
}

/* prev / next 按钮 - 箭头风格，无实心背景 */
.fc .fc-prev-button,
.fc .fc-next-button {
	background: #eaeaea !important;
	border: none !important;
	color: #333 !important;
	box-shadow: none !important;
	padding: 4px;
	line-height: 1;
	outline: none !important;
}
.fc .fc-prev-button:hover,
.fc .fc-next-button:hover {
	color: #fff !important;
	background: var(--my-color) !important;
}
.fc .fc-prev-button:focus,
.fc .fc-next-button:focus {
	box-shadow: none !important;
}

/* Today 按钮 */
.fc .fc-today-button {
	background: #eaeaea !important;
	border: none !important;
	color: #14181f !important;
	font-size: 20px !important;
	font-weight: 500;
	padding: 7px 18px;
	border-radius: 6px;
	box-shadow: none !important;
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	transition: background 0.2s;
}
.fc .fc-today-button:hover:not(:disabled) {
	background: #d8d8d8 !important;
}
.fc .fc-today-button:focus {
	box-shadow: none !important;
}
.fc .fc-today-button:disabled {
	opacity: 0.5;
}
/* Today 按钮图标 - 用 ::before 伪元素，切换月份不会重复 */
.fc .fc-today-button::before {
	content: '';
	display: inline-block;
	width: 22px;
	height: 22px;
	background: url('../images/support/today.svg') no-repeat center / contain;
	flex-shrink: 0;
}

/* ----- 表头（星期列标题）----- */
.fc .fc-col-header-cell {
	text-align: left;
	background: #dce0e5;
	padding: 8px 10px;
	border-color: #dce0e5;
}
.fc .fc-col-header-cell-cushion {
	font-size: 16px;
	font-weight: 500;
	color: #6f7c8e;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 0;
}
.fc .fc-col-header-cell-cushion:hover {
	color: #555;
	text-decoration: none;
}

/* ----- 日历格子 ----- */
.fc .fc-daygrid-day {
	border-color: #e8e8e8;
}
.fc .fc-daygrid-day-frame {
	min-height: 88px;
}
.fc .fc-daygrid-day-frame .fc-daygrid-day-top {
	flex-direction: row;
}
/* 日期数字 */
.fc .fc-daygrid-day-number {
	font-size: 20px;
	font-weight: 500;
	color: #444;
	padding: 6px 8px;
	text-decoration: none;
	line-height: 1;
}
.fc .fc-daygrid-day-number:hover {
	color: var(--my-color);
	text-decoration: none;
}
/* 非本月的灰色日期 */
.fc .fc-day-other .fc-daygrid-day-number {
	color: #ccc;
}

/* 今日高亮 */
.fc .fc-day-today {
	background-color: rgba(40, 56, 134, 0.04) !important;
	border: 3px solid #3348FF !important;
    background: #f0f7ff !important;
}
.fc .fc-day-today .fc-daygrid-day-number {
	/* color: var(--my-color);
	font-weight: 700;
	background: var(--my-color);
	color: #fff;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 6px 8px; */
}

/* ----- 事件标签 ----- */
.fc .fc-event {
	border-radius: 3px;
	border: none;
	font-size: 16px;
	font-weight: 500;

	cursor: pointer;
	padding: 10px 8px;
	line-height: 1.5;
	transition: opacity 0.2s, filter 0.2s;
}
.fc .fc-event:hover {
	opacity: 0.85;
	filter: brightness(0.95);
}
.fc .fc-event-title {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
/* 多日事件左右内边距 */
.fc .fc-daygrid-event {
	margin: 8px 8px !important;
}
/* "+N more" 链接 */
.fc .fc-daygrid-more-link {
	font-size: 11px;
	color: #666;
}
.fc .fc-daygrid-more-link:hover {
	color: var(--my-color);
	text-decoration: none;
}

/* 整体边框 */
.fc .fc-scrollgrid {
	border-color: #e8e8e8;
}
.fc .fc-scrollgrid-section > td {
	border-color: #e8e8e8;
}


/* ============================================================
   事件详情弹窗
   ============================================================ */

/* 弹窗宽度加大 */
.cal-event-modal .modal-dialog {
	max-width: 640px;
}
.cal-event-modal .modal-content {
	border: 1.5px solid #d0d0d0;
	border-radius: 12px;
	overflow: hidden;
	position: relative;
	box-shadow: 0 8px 32px rgba(0,0,0,0.12);
}

/* 右上角 X 关闭按钮 */
.cal-modal-x {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: none;
	border-radius: 5px;
	cursor: pointer;
	z-index: 10;
	padding: 0;
	transition: border-color 0.2s;
}
.cal-modal-x:hover {
	border-color: #888;
}

/* 弹窗主体 */
.cal-modal-body {
	padding: 50px 50px 24px;
	text-align: center;
}

/* 小标题（分类） */
.cal-modal-subtitle {
	font-size: 16px;
	color: #999;
	margin-bottom: 10px;
	line-height: 1.4;
}

/* 大标题 */
.cal-modal-title {
	font-size: 34px;
	font-weight: 700;
	color: #0a0a0a;
	line-height: 1.2;
	margin: 0 0 28px;
}

/* Product Details 按钮 */
.cal-modal-product-btn {
	display: block;
    width: 50%;
    margin: 0 auto;
	background: var(--my-color);
	color: #fff;
	font-size: 19px;
	font-weight: 500;
	padding: 18px 24px;
	border-radius: 10px;
	text-align: center;
	text-decoration: none;
	margin-bottom: 32px;
	transition: background 0.2s;
}
.cal-modal-product-btn:hover {
	background: #1a2565;
	color: #fff;
}

/* 分隔线 */
.cal-modal-divider {
	border: none;
	border-top: 1px solid #00000033;
	margin: 0 0 28px;
}

/* 描述文字 */
.cal-modal-desc {
	font-size: 18px;
	color: #222;
	line-height: 1.8;
	text-align: center;
	margin: 0 0 28px;
}

/* WHEN 区块 */
.cal-modal-when {
	text-align: left;
}
.cal-modal-when-label {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 17px;
	font-weight: 700;
	color: #111;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-bottom: 10px;
}
.cal-modal-when-dot {
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #3b82f6;
	flex-shrink: 0;
}
.cal-modal-when-date {
	font-size: 17px;
	color: #333;
	margin-bottom: 10px;
	padding-left: 23px;
	line-height: 1.5;
}
.cal-modal-add-cal {
	font-size: 17px;
	color: #3b82f6;
	text-decoration: underline;
	padding-left: 23px;
	display: block;
}
.cal-modal-add-cal:hover {
	color: #1d4ed8;
}

/* 底部操作区 — 两个按钮有间距，不用 border-right */
.cal-modal-footer {
	display: flex;
	gap: 12px;
	padding: 0 50px 50px;
	/* border-top: 1px solid #e8e8e8; */
	background: #fff;
}
.cal-modal-copy-btn,
.cal-modal-invite-btn {
	flex: 1;
	background: #f0f0f0;
	border: none;
	padding: 20px 12px;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-transform: capitalize;
	color: #111;
	cursor: pointer;
	border-radius: 4px;
	transition: background 0.2s;
	text-align: center;
}
.cal-modal-copy-btn:hover,
.cal-modal-invite-btn:hover {
	background: #e0e0e0;
}


/* ----- 响应式 ----- */
@media (max-width: 767px) {
	.cal-page-title { font-size: 20px; }
	.cal-page-desc  { font-size: 13px; }
	.fc .fc-toolbar.fc-header-toolbar { flex-direction: row; gap: 6px; }
	.fc .fc-toolbar-title { font-size: 15px; }
	.fc .fc-today-button { font-size: 15px !important; padding: 5px 12px; }
	.fc .fc-today-button::before { width: 17px; height: 17px; }
	.fc .fc-daygrid-day-frame { min-height: 56px; }
	.fc .fc-daygrid-day-number { font-size: 11px; padding: 4px 5px; }
	.fc .fc-col-header-cell-cushion { font-size: 10px; }
	.fc .fc-event { font-size: 10px; padding: 1px 4px; }
	.cal-modal-body { padding: 40px 20px 20px; }
	.cal-modal-subtitle { font-size: 13px; }
	.cal-modal-title { font-size: 22px; margin-bottom: 20px; }
	.cal-modal-product-btn { width: 100%; font-size: 15px; padding: 14px 16px; border-radius: 8px; margin-bottom: 20px; }
	.cal-modal-divider { margin-bottom: 20px; }
	.cal-modal-desc { font-size: 14px; margin-bottom: 20px; }
	.cal-modal-when-label { font-size: 14px; }
	.cal-modal-when-date, .cal-modal-add-cal { font-size: 14px; padding-left: 18px; }
	.cal-modal-footer { padding: 14px 16px; gap: 8px; }
	.cal-modal-copy-btn, .cal-modal-invite-btn { font-size: 14px; padding: 16px 8px; }
}
@media (min-width: 768px) and (max-width: 991px) {
	.cal-modal-product-btn {
		width: 70%;
	}
}
@media (min-width: 768px) and (max-width: 1199px) {
	.cal-page-title { font-size: 22px; }
	.fc .fc-toolbar-title { font-size: 16px; }
	.fc .fc-today-button { font-size: 17px !important; }
	.fc .fc-daygrid-day-frame { min-height: 72px; }
}
