*|*:not(:root):fullscreen {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	min-width: 0 !important;
	max-width: none !important;
	min-height: 0 !important;
	max-height: none !important;
	width: 100% !important;
	height: 100% !important;
	transform: none !important;

	/* intentionally not !important */
	object-fit: contain;
}

iframe:fullscreen {
	border: none !important;
	padding: 0 !important;
}

::backdrop {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

*|*:not(:root):fullscreen::backdrop {
	background: black;
}

@font-face {
	font-family: "ms mincho,ｍｓ 明朝";
	src: url("../fonts/MS-Mincho.ttf") format("truetype");
}

@font-face {
	font-family: "ms gothic,ｍｓ ゴシック";
	src: url("../fonts/MS-Gothic.ttf") format("truetype");
}

@keyframes colorChange {
	50% {
		/* box-shadow: -4px 10px #33eea0; */
		box-shadow: -4px 0 #33eea0,
			/* Left shadow */
			4px 0 #33eea0,
			/* Right shadow */
			0 -4px #33eea0,
			/* Top shadow */
			0 4px #33eea0;
		/* Bottom shadow */
	}

	60% {
		border-color: #003a01 !important;
	}
}

body {
	padding-top: 12px;
	font-family: ms mincho, ｍｓ 明朝;
	background-color: #C7E9D7;
}

.seen {
	font-weight: normal;
}

.unseen {
	font-weight: bold;
}

.editor_container {
	box-shadow: 0 0 0.5cm rgba(0, 0, 0, 0.5);
}

.popover {
	z-index: 1200;
}

#country-list {
	z-index: 150;
	float: left;
	position: absolute;
	width: 240px;
	margin-top: -3px;
	padding: 0;
	list-style: none;
}

#country-list li {
	padding: 10px;
	border-bottom: #bbb9b9 1px solid;
	background: #f0f0f0;
}

#country-list li:hover {
	background: #ece3d2;
	cursor: pointer;
}

#search-box {
	padding: 10px;
	border: #a8d4b1 1px solid;
	border-radius: 4px;
}

.style_editor_default {
	font-family: "MS Mincho", "ＭＳ 明朝" !important;
	font-size: 18px !important;
	font-weight: normal !important;
	color: rgb(51, 51, 51) !important;
}

.container_lg {
	height: 670px;
	background: #dddddf;
}

.container {
	position: relative;
	margin-top: 10px;
}

.word_btn_containers {
	position: fixed;
	display: block;
	z-index: 1;
}

.right_botton_container {
	position: fixed;
	width: 100px;
	transition: all 0.4s ease 0s;
}

.right_botton_container .btn {
	width: 70px;
	margin-bottom: 10px;
	margin-left: 0;
}

.editor_container {
	margin-bottom: 20px;
}

.editor_container .font_normal textarea {
	font-weight: normal;
}

.editor_container .font_bold textarea {
	font-weight: bold;
	color: red;
}

.editor_container textarea {
	min-height: 1000px;
	overflow: auto;
	font-size: 18px;
}

.editor_container textarea {
	border-radius: 0;
}

.left_content_aria {
	/*position: fixed;
    width: 12%;
    border-radius: 15px;
    padding: 10px;
    box-shadow: 5px 5px 5px #888888;*/
	width: 14%;
	min-height: 70px;
	/*500px*/
	background-color: #fff;
}

.list-height {
	height: 341px;
	overflow: auto;
}

.table_of_contantes {
	position: fixed !important;
	right: 2px;
	bottom: 2px;
	height: 480px !important;
	/* overflow: auto; */
	padding: 10px;
	border: 2px solid #ababab;
	border-top-left-radius: 0.5em;
	border-top-right-radius: 0.5em;
	background-color: #fff;
	z-index: 9;
	font-size: 24px !important;
}

.table_of_contantes .table-bordered>tbody>tr>td {
	padding: 5px;
}

#font_color_table .table-bordered>tbody>tr>td {
	padding: 4px;
	border: 2px solid #fff
}

.table_of_contantes p {
	margin: 0;
}

/* .checked {
    background-color: #DDDDDF;
} */

.table_of_contantes .button_aria {
	margin-bottom: 10px;
	padding: 0;
	font-size: 18px;
}

.popup_button {
	height: 40px;
	margin: 0 15px 10px 0;
	padding: 6px;
	min-width: 80px;
	border-radius: 10px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}

/*Table of parter*/

.table_of_partner {
	position: fixed;
	right: 20px;
	bottom: 2px;
	height: 570px !important;
	padding: 10px;
	border: 2px solid #ababab;
	border-top-left-radius: 0.5em;
	border-top-right-radius: 0.5em;
	background-color: #fff;
}

.table_of_partner .table-bordered>tbody>tr>td {
	padding: 5px !important;
}

/*Introducer form style*/

.table_of_introducer {
	position: fixed;
	right: 20px;
	bottom: 2px;
	height: 290px;
	padding: 10px;
	border-top-left-radius: 0.5em;
	border-top-right-radius: 0.5em;
	overflow: auto;
	background: rgb(250, 245, 179);
}

.popover {
	display: none;
	z-index: 1010;
	position: absolute;
	top: 0;
	left: 0;
	padding: 1px;
	max-width: 600px;
	border: 1px solid #ccc;
	border: 1px solid rgba(0, 0, 0, 0.2);
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	text-align: left;
	white-space: normal;
	background-color: #ffffff;
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;
	background-clip: padding-box;
	-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}

/*.tooltip-arrow,*/

.red-tooltip+.tooltip>.tooltip-inner {
	background-color: #f00;
}

/* .btn_keipro {

    height: 30px;
    margin: 0 10px 5px 0;
    padding: 3px;
    min-width: 80px;
    border-radius: 10px;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
} */

.btn_keipro {
	font-size: 22px !important;
	margin: 0 10px 5px 0;
	padding: 3px;
	width: 100px;
	height: 50px;
	border-radius: 10px;
	text-align: center;
	font-weight: bold;
}

.btn_popup {
	height: 40px;
	margin: 0 20px 10px 0;
	padding: 6px;
	min-width: 80px;
	border-radius: 10px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}

.btn_scpecial {
	height: 40px;
	margin: 0 20px 10px 0;
	padding: 6px;
	min-width: 80px;
	border-radius: 10px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}

.btn_table {
	height: 40px;
	margin: 0 20px 10px 0;
	padding: 6px;
	/*min-width: 80px;*/
	min-width: 120px;
	border-radius: 10px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}

/*.emal_header .btn{
  text-align: center;
  font-size: 16px;
  padding: 6px;
  border-radius: none;
  margin: 0px 3px 10px 20px;
  font-weight: bold;
  box-shadow: 0px 2px 0px 0px #398439;
  border: 1px solid #398439;
}*/

/* on mobile browsers, I set a width of 100% */

table.mceLayout,
textarea.tinyMCE {
	width: 100% !important;
}

.emailing {
	margin-top: 0;
	margin-bottom: 20px;
	padding-bottom: 20px;
	background-color: #ffffff;
}

/*
.emailing .btn{
  margin-left: 5px;
}*/

.emailing .email_details {
	border: 2px solid #cdccc8;
}

.email_content {
	height: 250px;
	overflow: auto;
	font-size: 18px;
	font-weight: normal;
	color: #443e3e;
}

.email_details .emal_header {
	padding: 10px;
}

/* Calendar event row adjustments */
.grid-item.event-column {
	position: relative;
	display: flex;
	align-items: center;
}

.grid-item.event-column .event-name {
	width: 100%;
	box-sizing: border-box;
	padding-right: 36px;
	/* space for the delete button */
	margin: 0;
	line-height: 1.4;
	min-height: 34px;
}

.grid-item.event-column button[aria-disabled="true"] {
	opacity: 0.45;
	cursor: default;
	color: #a0a0a0 !important;
}

.grid-item.event-column button {
	background: transparent;
	border: none;
	padding: 2px 6px;
	font-size: 16px;
}

/* Ensure consistent textarea sizing in month view */
.grid-item.event-column textarea.event-name {
	min-height: 72px;
	height: auto;
}

/* Modal schedule inputs: ensure visible on dark themes */
#schedule_modal,
#schedule_modal * {
	color: #111 !important;
}

#schedule_modal input,
#schedule_modal textarea {
	background: #ffffff !important;
	color: #111 !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 4px !important;
}

#schedule_modal_bg {
	cursor: pointer;
}

.email_details .btn {
	border: 0;
	box-shadow: none;
}

.email_details .emal_header {
	border-bottom: 2px solid #cdccc8;
}

.email_details .email_content {
	padding: 10px;
}

/*Email Modal Fullscreen*/

.modal.modal-fullscreen {
	/* Make the parent wrapper of the modal box a full-width block */

	/* Remove borders and effects on the content */

	/**
         * /!\ By using this feature, you force the header and footer to be placed
         * in an absolute position. You must handle by yourself the margin of the
         * content.
         */
}

.modal.modal-fullscreen .modal-dialog,
.modal.modal-fullscreen .modal-content {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.modal.modal-fullscreen .modal-dialog {
	width: 100%;
	margin: 0;
	animation-duration: 0.6s;
}

.modal.modal-fullscreen .modal-content {
	/* change bg color below */

	border: none;
	-moz-border-radius: 0;
	border-radius: 0;
	-webkit-box-shadow: inherit;
	-moz-box-shadow: inherit;
	box-shadow: inherit;
	-o-box-shadow: inherit;
}

.modal.modal-fullscreen.force-fullscreen {}

.modal.modal-fullscreen.force-fullscreen .modal-body {
	padding: 0 !important;
}

.modal.modal-fullscreen.force-fullscreen .modal-header,
.modal.modal-fullscreen.force-fullscreen .modal-footer {
	position: absolute;
	right: 0;
	left: 0;
}

.modal.modal-fullscreen.force-fullscreen .modal-header {
	top: 0;
}

.modal.modal-fullscreen.force-fullscreen .modal-footer {
	bottom: 0;
}

/*Email Modal Full-Screen*/

.email_content_detail p {
	margin: 0;
}

/*Income Table*/

.income-talbe {
	padding-bottom: 20px !important;
	background: #ffffff;
}

.income-talbe th {
	text-align: center !important;
}

.income-talbe td,
.income-talbe th {
	padding: 0 !important;
}

.income-talbe td>input,
.income-talbe th>input {
	width: 100%;
	padding: 2px !important;
	border: 0 !important;
	text-align: right;
}

/* Internet connection failed alert message*/

.internet_connection_alert {
	padding: 5px;
	color: white;
	opacity: 0.8;
	background-color: #d9534f;
	box-shadow: 0 0 8px 2px #000000;
}

.email_list_container {
	position: relative;
	width: 100%;
	height: 100%;
	height: 450px;
	padding: 0;
	overflow: hidden;
	overflow-x: hidden;
}

.email_list_container2 {
	position: absolute;
	top: 0;
	right: -17px;
	bottom: 0;
	left: 0;
	overflow-y: scroll;
}

.word_btn_container {
	position: fixed;
	width: 100%;
	height: 580px;
	overflow: hidden;
	overflow-x: hidden;
}

.word_btn_container2 {
	position: absolute;
	top: 0;
	right: -17px;
	bottom: 0;
	left: 0;
	overflow-y: scroll;
}

.email_content {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0;
	min-height: 400px;
	overflow: hidden;
	overflow-x: hidden;
}

.email_content2 {
	position: absolute;
	top: 0;
	right: -17px;
	bottom: 0;
	left: 0;
	padding: 5px;
	overflow-x: hidden;
	overflow-y: scroll;
}

.home_page_navi {
	position: fixed;
	right: 4px;
	bottom: 4px;
	padding: 4px;
	width: 514px;
	font-size: 20px;
}

#table_of_content_selecton_navi,
#event_create_msg,
#event_update_msg {
	width: 290px;
	z-index: 20;
}

#custom_msg {
	width: 345px;
	z-index: 20;
}

#table_of_content_selecton_navi,
#table_of_content_instruction {
	right: unset;
	left: 4px;
}

.home_page_navi,
.restore_select_document {
	z-index: 9;
}

.notification_aria {
	position: fixed;
	right: 250px;
	bottom: 10px;
	padding: 4px;
	width: 35%;
}

.proless_top_btn {
	margin-bottom: 5px;
	font-size: 22px;
	color: #fff;
	background-color: #ffc000;
}

.proless_top_btn:hover {
	color: #fff;
}

#font_color_aria tr td,
#change_font_family tr td,
#font-size-popup-table tr td {
	cursor: pointer;
}

.jcs_mdl {
	position: absolute;
	right: 10px;
	bottom: 10px;
}

.enable_to_multi_share {
	background-color: yellow;
}

#partnerr_row {
	cursor: pointer;
}

/*---------css by rajib das---------*/

.flex-container {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-content: space-between;
	align-items: flex-start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	-ms-flex-pack: start;
	-webkit-align-content: space-between;
	-ms-flex-line-pack: justify;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
}

#doc_content_maindiv {
	/* max-width:920px; */
	min-width: 100px;
}

/* --- Meeting Mode (会議モード) dual-panel layout --- */
.dual-doc-wrapper {
	display: flex;
	width: 100%;
	gap: 16px;
	height: calc(100dvh - 20px);
	overflow: hidden;
}

.dual-doc-wrapper .main-doc-panel {
	flex: 1;
	min-width: 0;
	overflow-y: auto;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.dual-doc-wrapper .main-doc-panel::-webkit-scrollbar {
	display: none;
}

.dual-doc-wrapper .kaigi-panel {
	width: 50%;
	max-width: 50%;
	min-width: 0;
	border-right: 2px solid #ccc;
	overflow-y: auto;
	background: #f0f4ff;
}

.kaigi-panel-header {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	padding: 6px 0;
	background: #e8f4e8;
	border-bottom: 1px solid #ccc;
}

.kaigi-panel .kaigi-editor {
	max-width: 100%;
	background: #f0f4ff;
}

/* When meeting mode is active, constrain main editor too */
.dual-doc-wrapper.meeting-mode-on .main-doc-panel .fixed-editor {
	max-width: 100%;
}

/* Hide meeting mode button on mobile */
@media (max-width: 1023px) {
	#toggle_meeting_mode {
		display: none !important;
	}
	.kaigi-panel {
		display: none !important;
	}
}
/* --- End Meeting Mode --- */

.fixed-editor {
	max-width: 680px;
	/* padding: 36px; */
	background: white;
	border-radius: 12px;
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: center;
}

.fixed-editor #mceu_0 {
	max-width: 831px !important;
	width: 100% !important;
	margin: 0 !important;
}

.disable_button {
	pointer-events: none;
	background: #9a9b9a;
	border: 1px solid #666;
}

.checked_row_restore {
	background-color: yellow !important;
}

.recent_restore {
	border: 3px solid yellow !important;
	background-color: yellow;
}

.open_file {
	background-color: green !important;
	color: white !important;
}

.delete_confirm_alirt,
.cannot_delete_file_msg,
.restore_confirm_alirt,
.restore_select_document,
.select_document {
	position: fixed;
	width: 480px;
	right: 4px;
	bottom: 4px;
	padding: 4px;
}

.word_function_aria {
	position: fixed;
	width: 380px;
	right: 10px;
	bottom: 10px;
	padding: 4px;
	z-index: 9;
}

.font_family_aria {
	position: fixed;
	right: 5px;
	bottom: 5px;
	padding: 4px;
	background-color: #ffffff;
	border-radius: 2px;
}

/* Style Apply modal (#format_setting) is draggable from anywhere on it */
#format_setting {
	box-sizing: border-box; /* its JS max-height must include padding and border */
	cursor: move;
	touch-action: none;
	user-select: none;
	-webkit-user-select: none;
}

/* While its content overflows, touch swipes scroll it instead of dragging */
#format_setting.format-setting-scrollable {
	touch-action: pan-y;
}

#format_setting button,
#format_setting td {
	cursor: pointer;
}

#format_setting.format-setting-dragging,
#format_setting.format-setting-dragging * {
	cursor: grabbing;
}

.font_size_aria {
	position: fixed;
	right: 5px;
	bottom: 5px;
	padding: 4px;
	background-color: #ffffff;
}

.font_color_aria {
	position: fixed;
	right: 0px;
	bottom: 0px;
	padding: 4px;
	background-color: white;
	z-index: 3;
}

.font_color_aria table td {
	width: 60px;
	height: 60px;
	border: 5px solid #fff;
}

.word_image_selection_message {
	position: fixed;
	width: 340px;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.word_image_past_message {
	position: fixed;
	width: 350px;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.word_image_past_confirmation {
	position: fixed;
	width: 350px;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.word_image_zooming {
	position: fixed;
	width: 450px;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.screen_image_zooming {
	position: fixed;
	width: 450px;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.word_image_upload_completed {
	position: fixed;
	width: 350px;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.ajax_loading_aria {
	position: fixed;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.blanck_document_message {
	position: fixed;
	right: 10px;
	bottom: 5px;
	padding: 4px;
}

.font_cut_copy_aria {
	position: fixed;
	width: 435px;
	right: 10px;
	bottom: 5px;
	padding: 4px;
	z-index: 9;
}

.word_canvase_aria {
	position: fixed;
	right: 5px;
	/*bottom: 5px; */
	top: 20px;
	padding: 4px;
	z-index: 9;
}

.word_canvase_aria1 {
	position: fixed;
	right: 5px;
	bottom: 5px;
	padding: 4px;
	z-index: 9;
}

.word_canvas {
	width: 946px;
	overflow: scroll;
	height: 740px;
}

.top_header {
	top: 0px;
	width: 100%;
	position: fixed;
	z-index: 1600;
}

.left_content_aria {
	margin-top: 44px;
	padding-top: 21px;
}

.content_maindiv,
.content_calender {
	margin-top: 15px;
}

@media only screen and (min-width: 568px) {
	#doc_content_maindiv {
		margin-top: 0;
	}
}

.mobile_width {
	margin-top: 4px;
}

.animation-navi {
	animation: colorChange 0.5s infinite;
}

/* Full-screen overlay */
.global-overlay {
	position: fixed;
	/* Stays fixed on the screen */
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: #00000046;
	z-index: 1;
}

#invalid_event_Day_Navi {
	max-width: 385px;
}

#calender_content,
#shopping_list_content {
	background-color: white;
}

.content_calender {
	display: none;
	padding-top: 15px;
	padding-bottom: 15px;
	font-weight: 700;
	max-width: 375px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Container for the input */
.input-container {
	display: flex;
	justify-content: space-between;
	/* Center horizontally */
	gap: 2px;
	font-size: 20px;
	/* font-weight: 700; */
	background-color: #f2f2f2;
	align-items: center;
	/* Center vertically */
	border: 1px solid #ddd;
	/* Optional: Add a border for visual reference */
}

#calender_date,
.btn-menu,
.calender_prev,
.calender_next,
.share_schedule,
.schedule_voice_input {
	/* position: absolute; */
	/* left: 50%; */
	/* transform: translateX(-50%); */
	white-space: nowrap;
	/* Prevents text from wrapping */
	/* border: 2px solid #888; */
	background-color: #fde047;
	/* width: 200px; */
	padding: 12px;
	font-size: 28px;
	border-radius: 4px;
	cursor: pointer;
	font-weight: bold;
}

#sched_modal_voice_btn,
.schedule_voice_input {
	background-color: #5cb85c;
	color: #fff !important;
}

.btn-menu {
	padding-left: 20px;
	padding-right: 20px;
	color: #fff;
	background-color: #d9534f;
	border-radius: 4px;
}

.calender_prev,
.calender_next {
	background-color: #ccc;
	border-radius: 4px;
}

.calender_prev:hover,
.calender_next:hover {
	background-color: #88f;
}

.share_schedule,
.schedule_voice_input {
	border-radius: 4px;
}

#calender_date:hover,
.share_schedule:hover {
	background-color: #fad418;
}

#event_type_select,
#event_type_select:focus-visible {
	padding: 8px 10px;
	font-size: 20px;
	border-radius: 4px;
	background-color: #fde047;
	border: 1px solid #000;
	cursor: pointer;
	outline: none;
	font-weight: bold;
	text-align: center;
}

.visibilty-hidden {
	visibility: hidden !important;
}

/* Grid container for the 3-column layout */
.events-header-container,
.events-list-container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px !important;
}

.grid-child-container {
	display: grid;
	/* grid-template-columns: 43px 68px 1fr; */
	color: #000000 !important;
	/* margin-top: 10px; */
}

/* .grid-container {
	overflow-x: auto;
} */

/* .grid-child-container:has(> :nth-child(2):last-child) {
    grid-template-columns: 68px 1fr;
} */

/* Styling for grid headers */
.grid-header {
	font-weight: bold;
	font-size: 22px;
	background-color: #bbf7d0;
	padding: 2px 0;
	border: 2px solid #166534;
	text-align: center;
}

.selected-months,
.selected-days {
	font-weight: bold;
	font-size: 22px;
	background-color: #bbf7d0;
	padding: 2px 0;
	border: 2px solid #166534;
	border-bottom: none;
	text-align: center;
}

.grid-item {
	min-height: 72px;
	/* Set a minimum height for all grid items */
	border: 2px solid #166534;
	border-top: none;
}

.youbi-column {
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
}

.youbi-text {
	font-size: 18px;
}

.event-time,
.event-day {
	border-right: none;
	text-align: center;
}

.event-day,
.event-time {
	width: 100% !important;
	height: 100% !important;
	overflow-x: auto;
	padding-right: 4px;
	padding-left: 4px;
}

.event-name {
	width: 100% !important;
	min-height: 72px !important;
	overflow-x: auto;
	padding-right: 4px;
	padding-left: 4px;
}

/* Add shadow to #calender_date_selectiion_navi */
#calender_date_selectiion_navi,
#calender_date_selection {
	background: #dcfce7;
	padding: 15px;
	border-radius: 10px;
	box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
	/* Shadow effect */
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 20;
}

#calender_instruction_navi {
	width: 600px;
	max-width: 100%;
}

.calender-label {
	margin-left: unset;
	font-size: 20px;
}

.flatpickr-current-month,
.flatpickr-weekday,
.flatpickr-monthDropdown-month,
.flatpickr-monthDropdown-months,
.numInput,
.cur-year,
.flatpickr-monthSelect-theme-light,
.flatpickr-day {
	color: #000 !important;
	font-weight: bold !important;
}

.prevMonthDay,
.nextMonthDay {
	color: #3939394d !important;
}

.flatpickr-monthSelect-theme-light {
	width: 235px !important;
}

.flatpickr-monthSelect-months {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	margin: 10px;
	cursor: pointer;
}

.flatpickr-monthSelect-month.today {
	border-color: #959ea9;
}

.flatpickr-monthSelect-month {
	background: none;
	border: 1px solid transparent;
	border-radius: 150px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
	height: 39px;
	width: 39px;
	line-height: 39px;
	margin: 0;
	display: inline-block;
	position: relative;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}

.flatpickr-monthSelect-month:hover {
	cursor: pointer;
	outline: 0;
	background: #e6e6e6;
	border-color: #e6e6e6;
}

.flatpickr-monthSelect-month.selected {
	background: #569ff7;
	-webkit-box-shadow: none;
	box-shadow: none;
	border-color: #569ff7;
}

/* .flatpickr-calendar {
    font-size: 18px !important;
    font-weight: bold;
    width: 322px;
}

.flatpickr-calendar.open, .flatpickr-calendar.inline {
    height: 320px;
}

.flatpickr-months {
    margin-bottom: 10px;
}
.flatpickr-innerContainer {
    display: flex;
    justify-content: center;
    align-items: center;
} */

.shared-schedules-container,
.shared-from-schedules-container {
	max-width: 938px;
	padding: 15px;
	background-color: white;
	border-top-left-radius: 0.5em;
	border-top-right-radius: 0.5em;
	z-index: 10;
}

/* Grid container with table styling */
.shared-schedules-grid,
.shared-from-schedules-grid,
.shared-schedules-grid-2,
.shared-from-schedules-grid-2,
.shared-schedules-grid-1,
.shared-from-schedules-grid-1 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	border: 2px solid #166534;
	/* green-800 */
}

/* Common input class */
.shared-schedules-input,
.shared-schedules-div {
	/* width: 100%; */
	padding: 2px 8px;
	font-size: 20px;
	font-weight: bold;
	border: none;
	border-right: 2px solid #166534;
	border-bottom: 2px solid #166534;
	outline: none;
	position: relative;
	box-sizing: border-box;
	width: 300px;
	max-width: 100%;
}

.shared-schedules-div {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

/* Focus styling */
.shared-schedules-input:focus {
	box-shadow: 0 0 0 2px #3b82f6;
	/* blue-500 */
	z-index: 10;
}


/* Remove right border for last column */
.shared-schedules-grid .shared-schedules-input:nth-child(3n),
.shared-from-schedules-grid .shared-schedules-div:nth-child(3n) {
	border-right: none;
}

.shared-schedules-grid .shared-schedules-input:nth-last-of-type(-n+3),
.shared-from-schedules-grid .shared-schedules-div:nth-last-of-type(-n+3) {
	border-bottom: none;
}

/* For 2 column grid */
.shared-schedules-grid-2,
.shared-from-schedules-grid-2 {
	grid-template-columns: repeat(2, 1fr);
}

.shared-from-schedules-grid-2 .shared-schedules-div:nth-child(2n),
.shared-schedules-grid-2 .shared-schedules-input:nth-child(2n) {
	border-right: none;
}

.shared-from-schedules-grid-2 .shared-schedules-div:nth-last-of-type(-n+2),
.shared-schedules-grid-2 .shared-schedules-input:nth-last-of-type(-n+2) {
	border-bottom: none;
}


/* For 1 column grid */
.shared-schedules-grid-1,
.shared-from-schedules-grid-1 {
	grid-template-columns: repeat(1, 1fr);
}

.shared-from-schedules-grid-1 .shared-schedules-div:nth-child(1n),
.shared-schedules-grid-1 .shared-schedules-input:nth-child(1n) {
	border-right: none;
}

.shared-from-schedules-grid-1 .shared-schedules-div:nth-last-of-type(-n+1),
.shared-schedules-grid-1 .shared-schedules-input:nth-last-of-type(-n+1) {
	border-bottom: none;
}


.shared-schedules-grid,
.shared-schedules-grid-2,
.shared-schedules-grid-1 {
	position: relative;
}

.suggested-users {
	position: absolute;
	margin-bottom: 4px;
	background: white;
	border: 1px solid #ccc;
	font-weight: bold;
	color: #000;
	font-size: 15px;
	width: 100%;
	z-index: 999;
	border-radius: 4px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.suggested-users li {
	padding: 6px 10px;
	border: 1px solid #ccc;
	cursor: pointer;
}

.suggested-users li:nth-child(odd) {
	background-color: #f0fdf4;
}

.suggested-users li:nth-child(even) {
	background-color: #fefce8;
}

.suggested-users li:hover {
	background-color: #dcfce7;
}


@media screen and (min-height: 916px) {
	.table_of_contantes {
		height: 444px !important;
	}

	.list-height {
		height: 370px;
	}
}

@media only screen and (min-width: 1024px) {
	.fixed-editor {
		max-width: 985px !important;
		margin-left: 0 !important;
	}

	.mobile_width {
		margin-top: 15px;
	}

	.calender-label {
		/* margin-left: 10%; */
	}
}

@media only screen and (min-width: 1800px) {
	.calender-label {
		/* margin-left: 20%; */
	}
}

@media only screen and (max-width: 768px) {
	.mce-close {
		display: unset !important;
	}

	.input-container {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 4px;
		flex-wrap: wrap;
		/* height: 90px; */
		margin-bottom: 4px;
		padding: 4px !important;
		margin-top: 5px;
		/* gap: 0; */
	}

	.input-container>.input-container--child-1 {
		flex-wrap: wrap;
		justify-content: center;
	}

	/* .input-container > .input-container--child-1 {
		order: 1;
	}

	.input-container > .input-container--child-2 {
		order: 3;
	}

	.input-container > .input-container--child-3 {
		order: 2;
	} */

	.calender-label {
		width: 100%;
		/* Ensure it takes the full line */
		text-align: center;
		font-size: 16px;
	}

	/* .calender_prev,
	.calender_next,
	#calender_date,
	#event_type_select {
		display: inline-block;
		margin-top: 5px;
	} */

	#event_type_select {
		margin-left: 10px;
		/* Adjust spacing between elements */
	}

	/* #calender_date {
		text-align: center;
		position: unset;
		left: unset;
		transform: unset;
		white-space: unset;
		padding: 5px 40px;
	} */

	#calender_date {
		padding-left: 30px;
		padding-right: 30px;
	}

	/* .day-column {
		min-width: 43px;
		padding: 2px;
	}
	.hour-column {
		padding: 2px;
		min-width: 68px;
	}
	.event-column {
		padding: 2px;
		min-width: 245px;
	} */
	.event-time,
	.event-day {
		padding: 0px 0px !important;
		font-size: 20px;
	}

	.hour-column,
	.day-column,
	.youbi-column {
		min-width: unset !important;
	}

	.youbi-column {
		text-align: center;
		padding: 2px 4px;
	}

	.youbi-text {
		font-size: 18px;
	}

	.shared_from_user_phone {
		white-space: nowrap;
		overflow-x: auto;
	}

	/* .shared-schedules-container {
    max-height: 80vh;
    overflow-y: auto;
    position: relative;
    z-index: 10;
  } */

}

#customSelectBtn,
#customSelectDropdown {
	font-size: 20px;
}

#customAlarmSelectBox {
	width: 190px;
}

/*@media only screen and (max-width: 768px) {*/
@media only screen and (max-width: 567px) {

	/* html, body {
        height: 100vh;
        overflow: hidden;
      } */
	.suggested-users {
		position: absolute;
		/* position suggestions over grid */
		z-index: 10;
		background: #fff;
		max-height: 250px;
		overflow-y: auto;
	}

	.left_content_aria {
		display: none;
	}

	.font_size_aria {
		position: fixed;

		width: 98%;
		bottom: 0px;
		padding: 4px;
		background-color: #ffffff;
	}

	.home_page_navi {
		position: fixed;
		right: 0px;
		bottom: 0px;
		padding: 4px;
		width: 100%;
		/*font-size: 13px;*/
		z-index: 9;
	}

	#table_of_content_selecton_navi,
	#event_create_msg,
	#event_update_msg,
	#custom_msg {
		text-align: center;
	}

	#table_of_content_selecton_navi,
	#table_of_content_instruction,
	#event_create_msg,
	#event_update_msg,
	#custom_msg,
	#invalid_event_time_Navi,
	#invalid_event_Day_Navi {
		width: 100%;
		right: 0;
		left: 0;
	}

	.mobile_width {
		/* margin-top: 5px; */
		padding-left: 8px;
		padding-right: 8px;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 54px;
		transform: translateZ(0);
		z-index: 1000;
		/* Ensure it stays above other elements */
	}

	.word_btn_containers {
		width: 96% !important;
		margin-top: -5px !important;
		padding-top: 5px !important;
	}

	.videoSharingScreen {
		position: fixed;
		right: 0px;
		bottom: 0px;
		padding: 4px;
		width: 100%;
		/*font-size: 13px;*/
	}

	.font_color_aria {
		position: fixed;
		right: 0px;
		bottom: 0px;
		padding: 4px;
		width: 100%;
		background-color: white;
		z-index: 3;
	}

	.font_family_aria {
		position: fixed;
		width: 98%;
		bottom: 0px;
		padding: 4px;
		background-color: #ffffff;
		border-radius: 2px;
	}

	.delete_confirm_alirt,
	.cannot_delete_file_msg {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.restore_confirm_alirt {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	#table_of_contantes {
		position: fixed !important;
		bottom: 0px;
		padding: 10px;
		border: 2px solid #ababab;
		border-top-left-radius: 0.5em;
		border-top-right-radius: 0.5em;
		background-color: #fff;
		z-index: 9;
		height: 590px !important;
		padding: 4px;
		font-size: 22px !important;
		overflow: auto;
	}

	.list-height {
		height: 470px;
	}

	#table_of_trash_files {
		font-size: 15px !important;
		height: 464px !important;
		bottom: 0px;
		padding: 4px;
	}

	.shared-schedules-container,
	.shared-from-schedules-container {
		width: 340px;
		padding: 15px;
		background-color: white;
		border-top-left-radius: 0.5em;
		border-top-right-radius: 0.5em;
		z-index: 10;
	}

	.shared-schedules-input,
	.shared-schedules-div {
		width: 100%;
	}

	.restore_select_document {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.select_document {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.word_function_aria {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
		z-index: 9;
	}

	.word_image_selection_message {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.word_image_past_message {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.word_image_past_confirmation {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.word_image_zooming {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.screen_image_zooming {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.word_image_upload_completed {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.ajax_loading_aria {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.blanck_document_message {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
	}

	.font_cut_copy_aria {
		position: fixed;
		width: 100%;
		right: 0px;
		bottom: 0px;
		padding: 4px;
		z-index: 9;
	}

	.word_canvase_aria {
		position: fixed;
		right: 0;
		bottom: 0;
		padding: 4px;
		height: 80%;
		overflow: scroll;
		z-index: 9;
	}

	.word_canvase_aria1 {
		position: fixed;
		right: 0;
		bottom: 0;
		padding: 4px;
		height: 80%;
		overflow: scroll;
		z-index: 9;
	}

	.word_canvas {
		width: 750px;
		overflow: scroll;
		height: 500px;
	}

	.word_canvas_container {
		width: 100%;
		overflow: scroll;
	}

	/*.top_header{
        width: 50%;
        position: fixed;
        z-index: 500;
    }*/

	.word_btn_containers {
		/*width: 346px;*/
		width: 100%;
		height: 55px;
		position: fixed;
		width: 100%;
		margin: 0 auto;
		overflow-x: scroll;
		z-index: 1;
	}

	.flex-container {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		height: 42px;
		-ms-flex-direction: row;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		justify-content: flex-start;
		-ms-flex-line-pack: justify;
		align-content: space-between;
		-ms-flex-align: start;
		-webkit-box-align: start;
		align-items: flex-start;
	}

	.content_maindiv,
	.content_calender {
		margin-top: 62px;
	}

	.btn_keipro {
		text-align: center;
		font-size: 24px !important;
		padding: 3px;
		color: #fff !important;
		border-radius: 10px;
		margin: 0px 5px 10px 0px;
		height: 50px;
		font-weight: normal;
	}

	#doc_content_maindiv {
		padding: 0;
	}

	#calender_content {
		padding: 2px;
	}

	/* .grid-child-container {
        grid-template-columns: 43px 68px 1fr;
    } */

	/* .grid-child-container:has(> :nth-child(2):last-child) {
        grid-template-columns: 68px 1fr;
    } */

	.mobile-w-100 {
		width: 100% !important;
	}

	.input-container--child-2 {
		font-size: 16px;
	}
}

@media only screen and (max-width: 450px) {
	.mobile-xs-w-100 {
		width: 100% !important;
	}
}

@media (min-width: 568px) and (max-width: 768px) {
	.content_maindiv {
		margin-right: 95px;
	}

	.content_calender {
		margin-right: 120px;
	}

	.table_of_contantes {
		/* max-height: 330px; */
		overflow: auto;
	}

	#doc_content_maindiv {
		padding-left: 8px;
		padding-right: 8px;
	}

	#calender_content {
		padding: 8px;
	}
}

@media (min-width: 568px) {
	.word_btn_containers {
		right: 0;
		max-height: 95vh;
		overflow: auto;
	}
}

/*.table-condensed>thead>tr>th, .table-condensed>tbody>tr>th, .table-condensed>tfoot>tr>th, .table-condensed>thead>tr>td, .table-condensed>tbody>tr>td, .table-condensed>tfoot>tr>td {*/
/*padding: 1px;*/
/*}*/

#my-custom-scrollbar {
	height: 130px;
	overflow: auto !important;
	/*overflow-x: hidden;*/
	margin-bottom: 15px;
	margin-top: 10px;
	border: 1px solid #c1c1c1 !important;
}

.table-wrapper-scroll-y {
	position: relative;
	min-width: 26%;
}

.table-bordered.shape_table {
	min-width: 70% !important;
	/*border-top: 1px solid #c1c1c1 !important;*/
	/*border-bottom: 1px solid #c1c1c1 !important;*/
	/*border-left: 1px solid #c1c1c1 !important;*/
	border: 0 !important;
}

.table-bordered.shape_table>tbody td,
thead th {
	/*height: 30px !important;*/
	text-align: center !important;
}

.table-bordered.shape_table>tbody td,
thead th {
	width: 3% !important;
	border: 0 !important;
	cursor: pointer;
}

.table-bordered.shape_table td:hover {
	background-color: #d3d3d3;
}

#user_modal thead th:nth-child(1),
#user_modal tbody td:nth-child(1) {
	width: 25px !important;
}

#user_modal thead th:nth-child(2),
#user_modal tbody td:nth-child(2) {
	width: 200px !important;
}

#user_modal thead th:nth-child(3),
#user_modal tbody td:nth-child(3) {
	width: 150px !important;
}

@media print {
	/*html, body {*/
	/*display: none;*/
	/*visibility: hidden;*/
	/*width: 100%;*/
	/*}*/
}

.highlight {
	border: 2px #6fb5f1 solid;
	box-shadow: 0 0 10px 2px #6fb5f1;
	transition: border 150ms linear, box-shadow 150ms linear;
}

#flow_chart_main_button em {
	vertical-align: middle;
	margin: 0 2px;
	display: inline-block;
	width: 20px;
	height: 20px;
	/*62**50*/
	background-image: url(../img/shapes/project_diagram.png);
}

#flow_chart_main_button em.project_diagram_img {
	background-position: -120px -120px;
}

#show_shape_section em {
	vertical-align: middle;
	margin: 0 2px;
	display: inline-block;
	width: 30px;
	height: 27px;
	/*62**50*/
	background-image: url(../img/shapes/shapes_icon.png);
}

#show_shape_section em.project_diagram_img {
	background-position: -90px -108px;
}

#flow_chart_canvas1 em {
	vertical-align: middle;
	margin: 0 2px;
	display: inline-block;
	width: 20px;
	height: 20px;
	/*62**50*/
	background-image: url(../img/shapes/project_diagram.png);
}

#flow_chart_canvas1 em.project_diagram_img {
	background-position: -120px -120px;
}

#flow_chart_canvas2 em {
	vertical-align: middle;
	margin: 0 2px;
	display: inline-block;
	width: 20px;
	height: 20px;
	/*62**50*/
	background-image: url(../img/shapes/project_diagram.png);
}

#flow_chart_canvas2 em.project_diagram_img {
	background-position: -120px -120px;
}

#newShapeCreate em {
	vertical-align: middle;
	margin: 0 2px;
	display: inline-block;
	width: 20px;
	height: 23px;
	/*62**50*/
	background-image: url(../img/shapes/new_file_icon.png);
}

#newShapeCreate em.new_file_icon_img {
	background-position: -99px -116px;
}

/*****************************/
#items {
	list-style: none;
	margin: 0px;
	margin-top: 2px;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 3px;
	font-size: 17px;
	color: #333333;
}

hr {
	width: 85%;
	background-color: #e4e4e4;
	border-color: #e4e4e4;
	color: #e4e4e4;
}

#cntnr {
	display: none;
	position: fixed;
	border: 1px solid #b2b2b2;
	width: 162px;
	background: #f9f9f9;
	box-shadow: 3px 3px 2px #e9e9e9;
	border-radius: 4px;
}

li {
	padding: 3px;
	padding-left: 10px;
}

#items :hover {
	color: white;
	background: #284570;
	border-radius: 2px;
}

.custom-tinymce-border {
	/* max-width: 813px !important; */
}

.custom-tinymce-border,
.tox-edit-focus,
.tox .tox-edit-area::before {
	border: none !important;
	outline: none !important;
	border-radius: unset !important;
}

.tox.tox-edit-focus .tox-edit-area::before {
	opacity: 0 !important;
}

/* Upload/drop errors are shown as TinyMCE notifications. The skin's 14px is
   hard to read, so make those messages 20px (including RichText <p> text). */
.tox .tox-notification .tox-notification__body,
.tox .tox-notification .tox-notification__body p {
	font-size: 20px !important;
	line-height: 1.5;
}

.bg-gray-100 {
	background-color: #f3f4f6;
}

#voice_typing.active,
#voice_translation.active,
.ai-provider-button {
    grid-column: 1 / -1;
    white-space: nowrap;
    font-size: clamp(16px, 5vw, 24px) !important;
}
.ai-provider-button:focus-visible {
    outline: 3px solid #075ea8 !important;
    outline-offset: 2px;
}
#ai_chat.active, #ai_chat_gemini.active, #webspeech.active, #assemblyai.active, #deepgram.active {
	background-color: red !important;
	outline: 0px;
}

#ai_chat_floating_toggle {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 120;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #198754;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.28);
	cursor: pointer;
}

#ai_chat_floating_toggle.active {
	background: #dc2626;
}

#ai_chat_floating_toggle:hover {
	filter: brightness(0.94);
}

#ai_chat_floating_toggle:focus-visible {
	outline: 3px solid #2563eb;
	outline-offset: 3px;
}

#ai_chat_floating_toggle.hide {
	display: none;
}

@media only screen and (max-height: 400px) and (orientation: landscape) {

	#table_of_contantes,
	#table_of_trash_files {
		max-height: 100vh !important;
		height: 464px !important;
		width: 80% !important;
		margin-bottom: 0;
		bottom: 0;
		top: 0;
		left: 0;
		right: unset;
		padding-top: 4px;
	}

	.suggested-users {
		position: absolute;
		/* position suggestions over grid */
		z-index: 10;
		background: #fff;
		max-height: 160px;
		overflow-y: auto;
	}

	.list-height {
		height: 368px;
	}

	#table_of_content_selecton_navi,
	#custom_msg,
	#table_of_content_instruction {
		right: 4px;
		left: unset;
	}
}

.no-arrow {
	-webkit-appearance: none;
	/* Safari and Chrome */
	-moz-appearance: none;
	/* Firefox */
	appearance: none;
	/* Standard syntax */
	background: transparent;
	/* Remove background */
	padding-right: 10px;
	/* Add padding to prevent text overlap */
}

/* Optional: Add a custom background or icon */
.no-arrow {
	background-image: none;
	/* Remove any default background image */
}

[type="text"]:focus,
input:where(:not([type])):focus,
[type="email"]:focus,
[type="url"]:focus,
[type="password"]:focus,
[type="number"]:focus,
[type="date"]:focus,
[type="datetime-local"]:focus,
[type="month"]:focus,
[type="search"]:focus,
/* [type="tel"]:focus, */
[type="time"]:focus,
[type="week"]:focus,
[type="radio"]:focus,
[multiple]:focus,
textarea:focus {
	outline: 2px solid transparent;
	outline-offset: 2px;
	--tw-ring-inset: var(--tw-empty);
	--tw-ring-offset-width: 0px;
	--tw-ring-offset-color: #fff;
	--tw-ring-color: #367121 !important;
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), #367121 !important;
	border-color: #367121 !important;
	background-color: #86efac;
}

.btn-color-black,
.btn-color-black:hover {
	color: #000 !important;
}

.bg-custom-warning {
	background-color: #f9ebd6 !important;
	background-image: none !important;
}

.bg-custom-green {
	background-color: #b9f8cf !important;
	background-image: none !important;
}

.bg-custom-blue {
	background-color: #dbeafe !important;
	background-image: none !important;
}

.bg-custom-rose {
	background-color: #ffe4e6 !important;
	background-image: none !important;
}

.bg-custom-cyan {
	background-color: #cefafe !important;
	background-image: none !important;
}

.bg-custom-amber {
	background-color: #d0fae5;
}

.checked {
	background-color: yellow;
	color: #333;
}

.selected-color {
	border: 3px solid yellow !important;
}

#font_width {
	color: #fff !important;
	white-space: nowrap;
	/* Reserve five Japanese characters for either label, including padding/border. */
	width: calc(5em + 10px);
	min-width: calc(5em + 10px);
	flex-shrink: 0;
}

#font_width.active {
	background: yellow !important;
	color: #333 !important;
}

#font_underline.active {
	background: yellow !important;
	color: #333 !important;
}


td.content_title {
	-webkit-user-select: none;
	/* Safari */
	-moz-user-select: none;
	/* Firefox */
	-ms-user-select: none;
	/* IE10+/Edge */
	user-select: none;
	/* Standard */
}

.content_calender {
	padding: 10px;
}

/* TinyMCE selection and interaction fixes: ensure text can be selected
   and editor sits above translucent overlays that might block pointer events. */
.mce-content-body,
.mce-content-body * {
	-webkit-user-select: text !important;
	-moz-user-select: text !important;
	-ms-user-select: text !important;
	user-select: text !important;
	pointer-events: auto !important;
}

.mce-container,
.mce-toolbar,
.mce-tinymce {
	z-index: 2000 !important;
}

.content_calender .input-container button,
#calender_date,
.content_calender .input-container select {
	border-radius: 10px !important;
}

#calender_content.dragging,
#calender_content.dragging * {
	cursor: grabbing !important;
}

@media only screen and (min-width: 767px) {
	#calender_content {
		width: calc(100% - 110px) !important;
		margin-right: 10px;
	}
}

.content_calender .input-container {
	padding: 0px 9px;
	margin-bottom: 5px !important;
}

@media only screen and (max-width: 400px) {
	.input-container {
		padding: 2px !important;
	}

	.content_calender .input-container {
		padding: 0px 2px;
		margin-bottom: 2px !important;
	}

	.content_calender .input-container,
	.content_calender .input-container--child-1 {
		gap: 4px !important;
	}

	.content_calender .input-container button,
	.content_calender .input-container select {
		padding: 5px !important;
		margin: 0 !important;
	}

	#calender_date {
		padding: 6px 3px !important;
		/* margin: 0px 4px !important; */
	}

	#calender_prev,
	#calender_next {
		padding: 6px 8px !important;
		/* margin: 0px 4px !important; */
	}

	#back_button.btn-menu {
		padding: 6px 12px !important;
		/* margin: 0px 4px !important; */
	}

}

@media (min-width: 401px) and (max-width: 768px) {

	#calender_date, .btn-menu, .calender_prev, .calender_next, .share_schedule, .schedule_voice_input {
		padding: 9px !important;
	}
	#calender_date {
		padding-left: 10px;
        padding-right: 10px;
	}

}

/* Calendar always renders as mobile (375px) regardless of viewport */
.content_calender .input-container {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	flex-wrap: wrap;
	margin-bottom: 4px;
	padding: 4px !important;
	margin-top: 5px;
}

.content_calender .input-container>.input-container--child-1 {
	flex-wrap: wrap;
	justify-content: center;
}

.content_calender .calender-label {
	width: 100%;
	text-align: center;
	font-size: 16px;
}

.content_calender #event_type_select {
	margin-left: 10px;
}

.content_calender #calender_date {
	padding-left: 30px;
	padding-right: 30px;
}

.content_calender .event-time,
.content_calender .event-day {
	padding: 0px 0px !important;
	font-size: 20px;
}

.content_calender .hour-column,
.content_calender .day-column,
.content_calender .youbi-column {
	min-width: unset !important;
}

.content_calender .youbi-column {
	text-align: center;
	padding: 2px 4px;
}

.content_calender .youbi-text {
	font-size: 18px;
}

.content_calender .shared_from_user_phone {
	white-space: nowrap;
	overflow-x: auto;
}

.content_calender .input-container--child-2 {
	font-size: 16px;
}

/* Remove number input arrows */
input[type="number"] {
	-moz-appearance: textfield;
	/* Firefox */
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	/* Chrome, Safari, Edge */
	margin: 0;
}

/* schedule-modal */
.schedule-modal-full {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: white;
	z-index: 9999;
	overflow: hidden;
	display: flex;
	padding: 20px;
}

.schedule-modal-content {
	width: 100%;
	height: 100%;
	position: relative;
}

.schedule-title {
	font-size: 28px;
	font-weight: bold;
}

.schedule-center-box {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	overflow: visible !important;
	background: #cccccc;
}

.schedule-input {
	width: 250px !important;
	padding: 10px;
}

.schedule-btn-row {
	display: flex;
	gap: 15px;
}

.error-box {
	color: red;
	font-size: 18px;
	min-height: 21px;
	align-self: center;
}

@media only screen and (min-width: 1799px) {

	.year-btn,
	.month-btn {
		padding: 10px 5px;
		min-width: 60px;
	}
}

.contact-select-table-wrapper {
	width: 100%;
	border: 1px solid #ccc;
}

.contact-select-table-body::-webkit-scrollbar {
	display: none;
}

.contact-select-table-body {
	max-height: 322px;
	overflow-y: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.containt-size-20 {
	font-size: 20px;
}

.invisible * {
	background-color: transparent;
}

/* Tablets and up: keep the pad at its printed width (190mm text + 8px padding
   + 1px border each side, see tinymce.css) and let #main_doc_panel scroll
   sideways instead of re-wrapping the lines. Phones keep the fluid pad.
   max-width wraps the white panel around the pad: 30px white each side. */
@media only screen and (min-width: 640px) {
	#fixed-editor {
		min-width: calc(var(--pad-content-width, 190mm) + 34px);
		max-width: calc(var(--pad-content-width, 190mm) + 98px) !important;
	}
}

@media only screen and (max-width: 1024px) {
	.fixed-editor {
		max-width: 100% !important;
	}

	.caught-word,
	.replacement-word{
		white-space: normal !important;
	}
}

@media (min-width: 480px) {
	.ai-button-modal{
		width: 340px;
	}
	.parther-add-button-modal{
		width: 455px;
	}
}

.popover {
    font-size: 18px;
}

#pad_orientation_toggle {
    white-space: nowrap;
    min-width: 44px;
    min-height: 44px;
    font-size: 28px;
    margin-bottom: 5px;
}
#pad_orientation_toggle:focus-visible {
    outline: 3px solid #125ac2;
    outline-offset: 2px;
}
#fixed-editor[data-pad-orientation="landscape"] {
    min-width: calc(var(--pad-content-width) + 34px);
    max-width: calc(var(--pad-content-width) + 98px) !important;
}
/* Keep full-size paper inside a screen-sized viewport. The scrollbar stays
   at the viewport bottom, even when the document has many pages. */
.dual-doc-wrapper .main-doc-panel[data-pad-orientation="landscape"] {
    overflow-x: auto;
    scrollbar-width: auto;
    -ms-overflow-style: auto;
    touch-action: pan-x pan-y;
}
.dual-doc-wrapper .main-doc-panel[data-pad-orientation="landscape"]::-webkit-scrollbar {
    display: block;
    width: 0;
    height: 16px;
}
.dual-doc-wrapper .main-doc-panel[data-pad-orientation="landscape"]::-webkit-scrollbar-thumb {
    background: #777;
    border: 3px solid #eee;
    border-radius: 8px;
}
.dual-doc-wrapper .main-doc-panel[data-pad-orientation="landscape"]::-webkit-scrollbar-track {
    background: #eee;
}
.dual-doc-wrapper .main-doc-panel:focus-visible {
    outline: 2px solid #125ac2;
    outline-offset: -2px;
}
