/*!
  * CSMEditor v1.0
  * Copyright 2024-2025
  * Licensed under CSM
  */

@font-face {
	font-family: "Font-Light";
	src: url("../fonts/Poppins-Regular.eot");
	src: url("../fonts/Poppins-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-Regular.woff") format("woff"), url("../fonts/Poppins-Regular.ttf") format("truetype"), url("../fonts/Poppins-Regular.svg#aller") format("svg");
	font-weight: normal;
	font-style: normal;
}

*,
:after,
:before {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

::selection {
	background-color: #b2d9ff;
}

html {
	scroll-behavior: smooth;
}

csm-editor {
	font-size: 14px;
	background-color: #f3f3f3;
	color: #202020;
	font-family: "Font-Light";
	line-height: 18px;
	
}

/* width */
::-webkit-scrollbar {
	width: 6px;
}

/* Track */
::-webkit-scrollbar-track {
	background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
	background: #888;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
	background: #555;
}

csm-editor a {
	text-decoration: none;
	cursor: pointer;
}

csm-editor p {
	margin-bottom: 1rem;
    font-size: 14px;
}

csm-editor h1,
csm-editor h2,
csm-editor h3,
csm-editor h4,
csm-editor h5,
csm-editor h6 {
	margin-bottom: 1rem;
	font-weight: 400;
}
csm-editor h1 p,
csm-editor h2 p,
csm-editor h3 p,
csm-editor h4 p,
csm-editor h5 p,
csm-editor h6 p{
	font-style: normal;}
	csm-editor h1 {
	font-size: 1.6rem;
}

csm-editor h2 {
	font-size: 1.4rem;
}

csm-editor h3 {
	font-size: 1.3rem;

}

csm-editor h4 {
	font-size: 1.2rem;
	line-height: 1.6;
}
csm-editor h5 {
	line-height: 1.4;
	font-size: 1.1rem;	
}

csm-editor h6 {
	line-height: 1.4;
	font-size: 1.1rem;
}


.csm-editor-toolbar {
    display: flex;
    border-bottom: 1px solid #ddd;
    background-color: #f5f5f5;
	flex-wrap: wrap;
}

.csm-editor-toolbar .toolbar-item,.csm-editor-toolbar .toolbar-item2 {
	border: none;
    background: none;
    padding: 10px 15px;
    cursor: pointer;
    line-height: 1;
    display: flex;
    align-items: center;
	position: relative;
}
.csm-editor-toolbar .toolbar-item:hover::after, .csm-editor-toolbar .toolbar-item2:hover::after,.tab:hover::after,.label-btn:hover::after,.tab-btn:hover::after {
	
	content: attr(data-tooltip);
    position: absolute;
    top: 100%;
    left: 0;
    background: #000000c4;
    padding: 5px 10px;
    border-radius: 2px;
    color: #fff;
    text-transform: capitalize;
	font-size: 12px;
	 z-index: 1;
	 text-wrap:nowrap;
	 line-height: 16px;
}
.csm-editor-toolbar .toolbar-item:hover,.csm-editor-toolbar .toolbar-item2:hover {
    background-color: #eaeaea;
}

.csm-editor-content {
    padding: 10px;
	height: 180px;
	max-height: 450px;
    background: #fff;
    overflow-y: auto;
	line-height: 25px;
}
.csm-editor-container {
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    display: flex;
    flex-direction: column;
    
}
.csm-editor-content:focus-visible{
	outline: none;
    box-shadow: 0 0 3px inset #d7d7d7;
}
.toolbar-group {
    display: flex;
    align-items: center;
	border-right: 0px solid #cfcfcf;
}
.toolbar-group:last-child{
	border-right: 0;
}
.toolbar-group select{
	
border: 1px solid #f5f5f5;
	
/* -webkit-appearance: none;
-moz-appearance: none; */
	
padding: 8px 18px 8px 8px;
}


.toolbar-group select:focus,.toolbar-group select:hover{
outline: none;
box-shadow: 0 0 3px #3F51B5 inset;
}
.csm-editor-content ol,.csm-editor-content ul{
	padding-left: 1rem;
    margin-left: 1rem;
    margin-bottom: 1rem;
}
.csm-editor-content ul li,.csm-editor-content ol li{
	line-height: 22px
}
.csm-editor-content ul{ margin-left: 1.5rem;
    list-style-position: outside;}
	


	.csm-editor-content ol {
	list-style: none;
	padding-left: 0;
	margin-left: 1.5rem;

}
.csm-editor-content ol ol{
	list-style: none;
	padding-left: 0;
	margin-left: 0rem;

}
.csm-editor-content ol li{
	
    position: relative;
	padding-left: 30px;
}
.csm-editor-content ol li:before{
	position: absolute;
    left: 1px;
    top: 1px;
	
}



.csm-editor-content ol[type="Lowercase"] {
	counter-reset: alphabetic; 
}

.csm-editor-content ol[type="Lowercase"] li {
	counter-increment: alphabetic; 
}

.csm-editor-content ol[type="Lowercase"] li::before {
	content: counter(alphabetic, lower-alpha) "."; 
	margin-right: 10px; 
}
.csm-editor-content ol[type="Uppercase"] {
	counter-reset: alphabetic; 
}

.csm-editor-content ol[type="Uppercase"] li {
	counter-increment: alphabetic; 
}

.csm-editor-content ol[type="Uppercase"] li::before {
	content: counter(alphabetic, upper-alpha) "."; 
	margin-right: 10px;
}

/* Style for numeric lists */
.csm-editor-content ol[type="Number"] {
	counter-reset: numeric; 
}

.csm-editor-content ol[type="Number"] li {
	counter-increment: numeric; 
}

.csm-editor-content ol[type="Number"] li::before {
	content: counter(numeric) "."; 
	margin-right: 10px;
}


/* Style for Roman numeral lists */
.csm-editor-content ol[type="Lowercase Roman"] {
	counter-reset: roman; 
}

.csm-editor-content ol[type="Lowercase Roman"] li {
	counter-increment: roman; 
}

.csm-editor-content ol[type="Lowercase Roman"] li::before {
	content: counter(roman, lower-roman) "."; 
	margin-right: 10px;
}
.csm-editor-content ol[type="Uppercase Roman"] {
	counter-reset: roman; 
}

.csm-editor-content ol[type="Uppercase Roman"] li {
	counter-increment: roman; 
}

.csm-editor-content ol[type="Uppercase Roman"] li::before {
	content: counter(roman, upper-roman) "."; 
	margin-right: 10px;
}

.csm-editor-toolbar .toolbar-item.active .rowcollist {
	display: block;
}

csm-editor .rowcollist {
	position: absolute;
	display: none;
	background: #fff;
	padding: 0.5rem;
	border: 1px solid #c5c5c5;
	z-index: 999;
	top: 100%;
	left: 0;
	border-radius: 2px;
}
csm-editor .olullist {
	position: absolute;
	display: none;
	background: #fff;
	padding: 0.5rem;
	border: 1px solid #c5c5c5;
	z-index: 999;
	top: 100%;
	left: 0;
	border-radius: 2px;
	width: 238px;
}
.csm-editor-toolbar .toolbar-item.active .olullist {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}
.csm-editor-toolbar .toolbar-item.active .olullist button{
	border: none;
    background: none;
    padding: 5px 10px;
    cursor: pointer;
    line-height: 1;
    display: flex;
    align-items: center;
    position: relative;
	background-color: #eaeaea;
	
}
.csm-editor-toolbar .toolbar-item.active .olullist button svg{
	height: 61px;
    width: 50px;
}
.csm-editor-toolbar .toolbar-item.active .olullist button:hover{
	    background-color: #eaeaea;
}
.csm-editor-toolbar .toolbar-item.active .olullist button:hover::after {
	content: attr(data-tooltip);
    position: absolute;
    top: 100%;
    left: 0;
    background: #000000c4;
    padding: 5px 10px;
    border-radius: 2px;
    color: #fff;
    text-transform: capitalize;
	font-size: 12px;
	 z-index: 1;
	 text-wrap:nowrap;
	 line-height: 16px;
}
csm-editor .rowcollist .irows {
	display: flex;
	margin: 1px;
}

csm-editor .rowcollist .irows .icols {
	height: 13px;
	width: 13px;
	border: 1px solid #000;
	margin: 1px;
}

csm-editor .rowcollist .irows .icols:hover,
csm-editor .rowcollist .irows .icols.active {
	background-color: #767676;
	border-color: #767676;
}

.grid {
	display: grid;
	grid-template-columns: repeat(10, 16px);
	grid-template-rows: repeat(10, 16px);
	gap: 1px;
	margin: 0px auto;
}

.grid button {
	width: 15px !important;
	height: 15px !important;
	border: 1px solid #cbcbcb !important;
	background: #fff;
}

.grid button.hovered {

	border-color: #81c7ff !important;
}
csm-editor table {
	border-collapse: collapse;
	width: 100%;
	margin:0 auto 0;
}

csm-editor table td,
csm-editor table th {
	border: 1px solid #bfbfbf;
	padding: 5px;
	height: auto;
}


csm-editor table th {

	text-align: left;
   
    background: #ededed;
}
.table-figure{transition: all ease-in-out .2s;position: relative;margin: 15px 0;    clear: both; }
.table-figure:hover{
	outline: 2px solid #ffbd5b;
}
.context-menu {
    display: none;
    position: absolute;
    background: white;
    border: 1px solid #ccc;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    z-index: 1000;
}

.context-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.context-menu li {
    padding: 8px 12px;
    cursor: pointer;
}

.context-menu li:hover {
    background-color: #eee;
}

.table-figure .tblnewline{
    position: absolute;
    top: -14px;
    left: 40px;
    background: #ffbd5b;
    border: 0px solid #000;
    border-radius: 100%;
    height: 25px;
    width: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
	transition: all ease-in-out .2s;
}
.table-figure .tblnewline.insertParagraphAfter{
    left: auto;
    right: 40px;
    top: auto;
    bottom: -12px;
}
.table-figure:hover .tblnewline,.table-figure:focus .tblnewline{
display: flex;
}
csm-editor table tr td.selected {
	background-color: #e8f3ff!important;
}
csm-editor table tr td::selection {
	background-color: transparent;
}
.action-buttons,.img-action-buttons{
	position: absolute;
	background: #ffffff;
	padding: 4px 5px;
	left: 50%;
	min-width: 185px;
	max-width: 330px;
	
	transform: translate(-50%);
	border: 1px solid #d1d1d1;
	border-radius: 3px;
	top: calc(100% + 10px);
	z-index: 9;
}
.action-buttons:after, .action-buttons:before,.img-action-buttons:after,.img-action-buttons:before {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	transform: translate(-50%);
}

.action-buttons:after,.img-action-buttons:after {
	border-color: rgba(136, 183, 213, 0);
	border-bottom-color: #ffffff;
	border-width: 8px;
}
.action-buttons:before,.img-action-buttons:before {
	border-color: rgba(194, 225, 245, 0);
	border-bottom-color: #d1d1d1;
	border-width: 10px;
}

.warpper{
	display:flex;
	flex-direction: column;
	}
  .tab{
	cursor: pointer;
	padding: 7px 10px;
	margin: 0px 2px 0 0;
	display: inline-flex;
	color:#fff;
	position: relative;
	}
	.tab-btn{
		cursor: pointer;
    padding: 7px 10px;
    margin: 0px 2px 0 0;
    display: inline-flex;
    color: #fff;
    position: relative;
    background: #fff;
    outline: none;
    border: 0;

		}
		.tab:hover,.tab-btn:hover{
		background: #dfdfdf;
    color: #000;
		}

  .panel{
	display:none;
	animation: fadein .8s;
	background: #fffffff6;
	width: 100%;
	
	padding: 2px;
	border-top: 1px solid #b7b7b7;
	margin-top: 4px;
	}


	
  @keyframes fadein {
	  from {
		  opacity:0;
	  }
	  to {
		  opacity:1;
	  }
  }
  .panel-title{
	font-size:1.5em;
	font-weight:bold
  }
  .radio{
	display:none;
  }
  #one:checked ~ .panels #one-panel,
  #two:checked ~ .panels #two-panel,
  #three:checked ~ .panels #three-panel{
	display:block
  }
  #one:checked ~ .tabs #one-tab,
  #two:checked ~ .tabs #two-tab,
  #three:checked ~ .tabs #three-tab, 
    #cellAlignLeft:checked ~ .ck-form-btn-group #cellAlignLeft_tab,
  #cellAlignCenter:checked ~ .ck-form-btn-group #cellAlignCenter_tab,
  #cellAlignRight:checked ~ .ck-form-btn-group #cellAlignRight_tab,
  #cellAlignJustify:checked ~ .ck-form-btn-group #cellAlignJustify_tab{
	background: #dfdfdf;
	color:#000;
	
	}
	#cellAlignLeft:checked ~ .ck-form-btn-group #cellAlignLeft_tab svg,
	#cellAlignCenter:checked ~ .ck-form-btn-group #cellAlignCenter_tab svg,
	#cellAlignRight:checked ~ .ck-form-btn-group #cellAlignRight_tab svg,
	#cellAlignJustify:checked ~ .ck-form-btn-group #cellAlignJustify_tab svg{
		fill:#000
	}



	.panels .tableactions{
    display: flex;
    width: 100%;
    margin-bottom: 0px;
    border: 0;
    padding: .4rem 0;
    background: transparent;
    align-items: center;
    color: #8d8d8d;
}
.panels .tableactions svg{
	margin-right: .5rem;
	fill: #8d8d8d;
}
	.panels .tableactions:hover,.panels .tableactions:focus{
    color: #000;
}
.panels .tableactions:hover svg,.panels .tableactions:focus svg{
    fill: #000;
}
.ck-form-group{margin-bottom: .8rem;}
.ck-form-group label{
	font-size: 13px;
}
.ck-input-group{
	display: flex;
	width: 100%;
}
.ck-textbox{
    border: 1px solid #b7b7b7;
    width: 100%;
    padding: 4px 10px;
    outline: none;
    border-radius: 2px;
    font-size: 13px;
    line-height: 17px;
}
.ck-textbox:hover,.ck-textbox:focus{
    border-color: #000;
}

.ck-colorpicker{
	width: 30px;
	border: 1px solid #b7b7b7;
	border-radius: 2px;
}
.ck-colorpicker:hover,.ck-colorpicker:focus{
	
border-color: #000;
}
.ck-form-btn-group{
    border: 1px solid #b7b7b7;
    border-radius: 3px;
    display: flex;
	width: fit-content;
}
.ck-input-group .ck-textbox{
    border-radius: 2px 0 0 2px;
}
.ck-input-group .ck-colorpicker{
    margin-left: -1px;
    border-radius: 0px 2px 2px 0;
}
.label-btn{
	cursor: pointer;
	padding: 7px 10px;
	margin: 0px 0px 0 0;
	display: inline-flex;
	color:#fff;
	position: relative;
	}
.label-btn svg{
    fill: #8d8d8d;
}
.label-btn:hover,.label-btn:focus{
    background: #dedede;
}
.label-btn:hover svg,.label-btn:focus svg{
	fill: #000;
}
.pt-1{padding-top: 10px;}

.formbtns{
	cursor: pointer;
	padding: 5px 10px;
	margin: 0px 3px 0 0;
	display: inline-flex;
	
	position: relative;
	outline: none;
	border: 1px solid #c1c1c1;
	border-radius: 2px;
	}
.formbtns:hover,.formbtns:focus{background: #dedede;outline: none;}

.formbtns.formbtns-primary{border: 1px solid #027fe3;background: #027fe3;color: #fff;}
.formbtns.formbtns-primary:hover,.formbtns.formbtns-primary:focus{background: #0073cf;}

.csm-model {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, .6);
	display: none; 
	justify-content: center;
	align-items: flex-start;
	padding-top: 5%;
}

.csm-model .ccontainer {
	width: 700px;
	background: #fff;
	border-radius: 5px;
	border: 0px solid #2a94ff;

}

.csm-model .mheader {
	display: flex;
	padding: .4rem 1rem;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #cdcdcd;
}

.csm-model .mheader svg {
	height: 20px;
	margin-right: 10px;
}

.csm-model .mheader h4 {
	margin-bottom: 0;
	display: flex;
	align-items: center;
}

.csm-model .mheader a:hover {
	color: #000;
}

.csm-model .mbody {
	padding: 1rem;
	overflow-y: auto;
}

.csm-model .mfooter {

	padding: .4rem 1rem;

	border-top: 1px solid #cdcdcd;
}

.csm-model.c-lg .ccontainer {
	width: 960px;
}

.csm-model.c-sm .ccontainer {
	width: 450px;
}
.linkDiv{
	border: 1px solid #dddddd;
    padding: 10px;
    border-radius: 3px;
    box-shadow: 2px 2px 4px 0px #dddddd;
	width: 240px;
	background-color: #fff;
	position: absolute;
	z-index:99;
}
.linkurldiv{
	display: flex;
	margin-bottom: 10px;
	flex-wrap: wrap;
}
.linkurldiv span{color: #000;margin-right: 5px;}
.errorlabel{
	color: #f00;
	font-size: 13px;
}
.successlabel{
	color: #4caf50;
	font-size: 13px;
}
.file-browse-div{

display: flex;

flex-wrap: wrap;

border: 1px solid #dfdfdf;

border-radius: 4px;
margin-bottom: 5px;
}
.file-browse-left{

flex: 0 0 70%;

width: 70%;

padding-right: 0rem;
}
.file-browse-right{

flex: 0 0 30%;

width: 30%;

padding: 1rem;
}
.cbrowse {
	position: relative;
	margin-bottom: .5rem;
	border: 1px dashed #d1d1d1;
	background: #f7f7f7;
	border-radius: 4px;
	text-align: center;
}

.cbrowse label {

padding: 2rem;

text-transform: uppercase;

color: #818181;

display: block;
}

.cbrowse label svg {
	margin-bottom: .5rem;
	height: 3rem;
	width: 3rem;
}

.cbrowse input {

	display: none;
}

.scrolldiv {
	height: 380px;
	overflow: hidden;
	overflow-y: auto;
	border-right: 1px solid #e5e5e5;
	padding-right: 6px;
}
.browswimagediv {
	background: #ffffff;
	text-align: center;
	border-radius: 4px;
	overflow: hidden;
	height: 125px;
	border: 1px solid #e5e5e5;
	margin-bottom: 10px;
	position: relative;
	display: flex;
    align-items: center;
    justify-content: center;
}

.browswimagediv:hover,
.browswimagediv.active {
	background-color: #ebebeb;
	box-shadow: 0 0 4px inset #c1c1c1;
}
.browswimagediv .filetype{position: absolute;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, .6);
    padding: 4px;
    font-size: 12px;
    color: #fff;
    z-index: 1;}
.browswimagediv img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: all ease-in-out .2s;
}
.browswimagediv:hover img
{
	scale: 1.1;

}
.browswimagediv.active:after{
	content: '\2713';
    position: absolute;
    right: 0;
    bottom: 0;
    background: #4CAF50;
    padding: 2px 6px;
    color: #fff;
}
.browswimagediv svg{
	height: 55px;
}
.file-list{
    display: flex;
    flex-wrap: wrap;
    padding: 10px 0;
}
.file-item{
    flex: 0 0 20%;
    padding: 0 10px;
	max-width: 20%;
}

.d-flex{display: flex;}
.justify-content-between{justify-content: space-between;}
.m-0{margin: 0px!important;}
.text-center{text-align: center!important;}
.previewImage {
	width: 100%;
	border: 0px solid #dedede;
	padding: 0px;
	border-radius: 4px;
	overflow: hidden;
	background: #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.previewImage img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.previewImage a {
	position: absolute;
	right: 5px;
	top: 6px;
}
.previewImage a.filepreview {
	
    left: 0;
    padding: 10px;
    top: 49px;
    background: #ebebeb;
    right: 0;
	text-align: center;
}

.previewImage a svg{
	fill: #f00;
}
.noData{
	padding: 4rem 2rem;
    text-align: center;
    width: 100%;
    font-size: 1.5rem;
    color: #c1c1c1;
    text-transform: uppercase;
}

.csm-img-figure {
	position: relative;
	margin-bottom: 1rem;
	max-width: 100%;
	display: inline-block;
	resize: none;
	
	min-width: 100px;
	min-height: 100px;
	transition: all ease-in-out .2s;
}

.csm-img-figure.img-selected {
	border: 1px solid #dedede;
	resize: both;
}

.csm-img-figure img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;

}

.csm-img-figure.left {
	float: left;
	margin-right: 1rem;

}

.csm-img-figure.right {
	float: right;
	margin-left: 1rem;
}


.csm-img-figure.center {
	float: none;
	margin: 0 auto;
	display: block;
}

/* .resizer,
.img-selected:after {
	content: '';
	width: 12px;
	height: 12px;
	background: white;
	position: absolute;
	right: 0px;
	bottom: 0px;
	cursor: se-resize;
	border: 1px solid #000;
} */

.csm-img-figure:hover{
	outline: 2px solid #ffbd5b;
}
.csm-img-figure .csm-img-newline{
    position: absolute;
    top: -14px;
    left: 40px;
    background: #ffbd5b;
    border: 0px solid #000;
    border-radius: 100%;
    height: 25px;
    width: 25px;
    display: none;
    align-items: center;
    justify-content: center;
	transition: all ease-in-out .2s;
}
.csm-img-figure .csm-img-newline.insertParagraphAfter{
    left: auto;
    right: 40px;
    top: auto;
    bottom: -12px;
}
.csm-img-figure:hover .csm-img-newline,.csm-img-figure:focus .csm-img-newline,.csm-img-figure.img-selected  .csm-img-newline{
display: flex;
}
.csm-img-caption,.csm-tbl-caption{
	text-align: center;
    position: absolute;
    bottom: 0;
    background: rgb(255 255 255 / 60%);
    min-height: 26px;
    left: 0;
    right: 0;
    outline: none;
}
.csm-tbl-caption{
	position: relative;
	bottom: auto;
	background: #dbdbdb;
}
.csm-img-caption:empty:not(:focus)::before,.csm-tbl-caption:empty:not(:focus)::before {
    content: attr(data-attr);
    color: #ffffff;
    font-weight: 400;
}
.img-selected .resize-handle {
    content: '';
	width: 12px;
	height: 12px;
	background: white;
	position: absolute;
	right: 0px;
	bottom: 0px;
	cursor: se-resize;
	border: 1px solid #000;
	display: block;
}
.d-none{display: none!important;}