/* section>.schedule */
section>.schedule{}
section>.schedule>.title{
	font-weight:bold;margin:10px 0px;
}
section>.schedule>.reminder{
	color:var(--brand-highlight-color);margin:10px 0px;
}
section>.schedule>.bookings{}
section>.schedule>.bookings>.booking{
	display:flex;flex-wrap:wrap;padding:10px;overflow:hidden;
	border-bottom:1px solid var(--light-gray-5);cursor:pointer;
}
section>.schedule>.bookings>.booking:nth-child(odd){
	background-color:var(--light-gray-6);
}
section>.schedule>.bookings>.head{
	border-bottom:1px solid var(--light-gray-3);font-weight:bold;
}
section>.schedule>.bookings>.booking>.datetime{
	flex:none;width:180px;
}
section>.schedule>.bookings>.booking>.counterpart{
	flex:none;width:120px;
}
section>.schedule>.bookings>.booking>.status{
	flex:none;width:80px;
}
section>.schedule>.bookings>.booking>.status-0{
	color:#aa0000
}
section>.schedule>.bookings>.booking>.status-10{
	color:#aa0000
}
section>.schedule>.bookings>.booking>.status-20{
	color:#008800
}
section>.schedule>.bookings>.booking>.status-30,
section>.schedule>.bookings>.booking>.status-40,
section>.schedule>.bookings>.booking>.status-50{
	color:#888888
}
section>.schedule>.bookings>.booking>.score{
	flex:none;width:60px;
	display:flex;align-items:center;
}
section>.schedule>.bookings>.booking>.score>svg{
	width:20px;height:20px;margin-left:2px;
}
section>.schedule>.bookings>.booking>.score>svg>path{
	fill:var(--brand-highlight-color);
}
/* section>#field-tags */
#field-tags>.current{
	color:var(--brand-light-color);border-bottom-color:var(--brand-light-color);
}
/* section>.services */
section>.services{
	margin:40px 0px;
	display:grid;grid-template:auto / 45% 45%;gap:50px 40px;
}
section>.services>.service{
	cursor:pointer;
	display:grid;grid-template:30px 30px 40px auto / 100px auto;
	grid-template-areas:
		"picture name"
		"picture variety"
		"picture times"
		"description description";
	column-gap:15px;
	align-items:center;
}
section>.services>.service>img.picture{
	grid-area:picture;
	width:100px;height:100px;object-fit:cover;border-radius:50%;
}
section>.services>.service>.name{
	grid-area:name;
}
section>.services>.service>.variety{
	grid-area:variety;
}
section>.services>.service>.times{
	grid-area:times;font-size:0.9rem;
	background:linear-gradient(to right, var(--light-gray-5), #eeeeee44);
	display:flex;
}
section>.services>.service>.times>.paid{
	color:var(--brand-color);
	background-color:var(--brand-bg-color);
	padding:3px 5px;
}
section>.services>.service>.times>.free{
	color:var(--brand-highlight-color);
	background-color:var(--brand-highlight-bg-color);
	padding:3px 5px;
}
section>.services>.service>.description{
	grid-area:description;align-self:start;
	position:relative;height:120px;overflow:hidden;
	padding:10px;word-break:break-all;
}
section>.services>.service>.description::after{
	content:"";
	position:absolute;left:0px;bottom:0px;width:100%;height:100%;
	background:linear-gradient(to bottom, #ffffff00, #ffffff);
}
@media (max-width:800px){
	section>.services{
		grid-template:auto / 90%;gap:40px 0px;
	}
}
/* section>.consultant-profile */
section>.consultant-profile{
	display:grid;grid-template:30px 30px 30px / 90px auto;
	grid-template-areas:
		"picture name"
		"picture counting"
		"picture feedback-stats";
	column-gap:15px;align-items:center;
	margin-bottom:20px;
}
section>.consultant-profile>img.picture{
	grid-area:picture;
	width:90px;height:90px;object-fit:cover;border-radius:50%;
}
section>.consultant-profile>.name{
	grid-area:name;
}
section>.consultant-profile>.counting{
	grid-area:counting;
}
section>.consultant-profile>.feedback-stats{
	grid-area:feedback-stats;
}
section>.consultant-profile>.feedback-stats>.value:hover{
	text-decoration:underline;cursor:pointer;
}
/* section>.consultant-tags */
section>.consultant-tags>.current{
	color:var(--brand-light-color);border-bottom-color:var(--brand-light-color);
}
/* section>.part>.description */
section>.part>.description{
	margin:30px 20px;word-break:break-all;
}
/* section>.part>.charges */
section>.part>.charges>.charge{
	background-color:var(--light-gray-5);
	padding:8px;padding-bottom:5px;font-size:0.8rem;
}
section>.part>.charges>.paid{
	border-bottom:3px solid var(--brand-color);
}
section>.part>.charges>.free{
	border-bottom:3px solid var(--brand-highlight-color);
}
/* section>.booking-panel */
section>.booking-panel{
	display:flex;flex-wrap:wrap;
}
section>.booking-panel>.calendar{
	width:450px;max-width:100%;
}
section>.booking-panel>.time-list{
	flex:auto;padding:30px;
}
@media (max-width:1000px){
	section>.booking-panel>.time-list{
		width:100%;padding-left:0px;padding-right:0px;
	}
}
/* section>.booking-panel>.time-list */
section>.booking-panel>.time-list>.title{
	font-weight:bold;margin-bottom:10px;
}
section>.booking-panel>.time-list>.list{
	display:flex;margin-bottom:10px;
}
section>.booking-panel>.time-list>.list>.time{
	position:relative;
	padding:6px 10px;padding-bottom:3px;background-color:var(--light-gray-5);
	margin:10px;cursor:pointer;
}
section>.booking-panel>.time-list>.list>.time:hover,
section>.booking-panel>.time-list>.list>.time:active{
	background-color:var(--light-gray-4);
}
section>.booking-panel>.time-list>.list>.booked{
	cursor:default;color:var(--normal-gray);text-decoration:line-through;
}
section>.booking-panel>.time-list>.list>.booked:hover,
section>.booking-panel>.time-list>.list>.booked:active{
	background-color:var(--light-gray-5);
}
section>.booking-panel>.time-list>.list>.guest{
	cursor:default;opacity:0.6;
}
section>.booking-panel>.time-list>.list>.guest:hover,
section>.booking-panel>.time-list>.list>.guest:active{
	background-color:var(--light-gray-5);
}
section>.booking-panel>.time-list>.list>.paid{
	border-bottom:3px solid var(--brand-color);
}
section>.booking-panel>.time-list>.list>.free{
	border-bottom:3px solid var(--brand-highlight-color);
}
/* section>.booking-panel>.calendar */
section>.booking-panel>.calendar>.month{
	display:flex;
	width:100%;margin:10px 0px;
}
section>.booking-panel>.calendar>.month>.previous{
	flex:none;width:100px;text-align:left;cursor:pointer;
}
section>.booking-panel>.calendar>.month>.current{
	flex:auto;text-align:center;font-weight:bold;
}
section>.booking-panel>.calendar>.month>.next{
	flex:none;width:100px;text-align:right;cursor:pointer;
}
section>.booking-panel>.calendar>.dates{
	display:flex;flex-wrap:wrap;
	justify-content:center;
	border-right:1px solid var(--light-gray-3);
	border-bottom:1px solid var(--light-gray-3);
}
section>.booking-panel>.calendar>.dates>.date{
	position:relative;
	box-sizing:border-box;padding:5px;
	flex:auto;width:14%;text-align:left;
	display:flex;flex-direction:column;
	font-size:0.8rem;
	border:1px solid var(--light-gray-3);border-right-width:0px;border-bottom-width:0px;
}
section>.booking-panel>.calendar>.dates>.available{
	cursor:pointer;background-color:var(--light-gray-5);
}
section>.booking-panel>.calendar>.dates>.day{
	height:auto;font-weight:bold;
}
section>.booking-panel>.calendar>.dates>.fade{
	opacity:0.5;
}
section>.booking-panel>.calendar>.dates>.date>.number{
	flex:none;width:100%;height:25px;line-height:25px;
}
section>.booking-panel>.calendar>.dates>.today>.number{
	border-radius:50%;width:25px;height:25px;
	background-color:black;color:var(--light-gray-5);text-align:center;
}
section>.booking-panel>.calendar>.dates>.date>.charges{
	position:absolute;top:0px;left:0px;width:100%;height:100%;
	display:flex;flex-direction:column-reverse;
}
section>.booking-panel>.calendar>.dates>.date>.charges>.paid{
	height:3px;background-color:var(--brand-color);
}
section>.booking-panel>.calendar>.dates>.date>.charges>.free{
	height:3px;background-color:var(--brand-highlight-color);
}
/* section>.feedbacks */
section>.feedbacks{
	padding:10px 0px;
}
section>.feedbacks>.feedback{
	display:grid;grid-template:25px 25px auto auto / 60px auto;
	grid-template-areas:
		"picture name-time"
		"picture field-score"
    "content content";
	padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid var(--light-gray-5);
}
section>.feedbacks>.feedback:last-child{
  border-bottom:none;
}
section>.feedbacks>.feedback>.picture{
	grid-area:picture;align-self:start;border:1px solid var(--light-gray-4);
	width:48px;height:48px;object-fit:cover;border-radius:50%;
}
section>.feedbacks>.feedback>.name-time{
	grid-area:name-time;
}
section>.feedbacks>.feedback>.name-time>.name{
	font-weight:bold;margin-right:10px;
}
section>.feedbacks>.feedback>.name-time>.time{
	color:var(--normal-gray);
}
section>.feedbacks>.feedback>.field-score{
	grid-area:field-score;display:flex;align-items:center;
}
section>.feedbacks>.feedback>.field-score>.field{
	margin-right:10px;
}
section>.feedbacks>.feedback>.field-score>.score>svg{
	padding-right:2px;width:16px;height:16px;vertical-align:text-top;
}
section>.feedbacks>.feedback>.field-score>.score>svg>path{
	fill:var(--brand-highlight-color);
}
section>.feedbacks>.feedback>.content{
	grid-area:content;color:var(--text-light-color);padding-top:10px;
}


/* section>form.service */
section>form.service{
  margin:20px 10px;
}
section>form.service>.field{
	display:block;
}
section>form.service>.field-btn{
  margin-top:30px;
}
section>form.service>.field>.field-name{
	font-weight:bold;
}
section>form.service>.field>.field-content>textarea{
  width:450px;max-width:100%;height:150px;
}
section>form.service>.field>.field-content>select{
  width:auto;
}
section>form.service>.field>.active{
  color:var(--active-color);
}
section>form.service>.field>.inactive{
  color:var(--inactive-color);
}
/* section>form.service .times-panel */
section>form.service .times-panel{
  margin:10px 0px;margin-bottom:25px;
}
section>form.service .times-panel>.day{
  display:flex;flex-wrap:wrap;align-items:center;
  font-size:0.9rem;margin-bottom:5px;
}
section>form.service .paid-times-panel>.day>.head{
  color:white;background-color:var(--brand-color);
  padding:0px 6px;margin-right:5px;
}
section>form.service .paid-times-panel>.day>.hour{
  color:var(--brand-color);background-color:var(--brand-bg-color);
  cursor:pointer;padding:0px 6px;margin-right:5px;
}
section>form.service .paid-times-panel>.day>.hour:hover,
section>form.service .paid-times-panel>.day>.hour:active{
  background-color:var(--brand-hover-bg-color);
}
section>form.service .free-times-panel>.day>.head{
  color:white;background-color:var(--brand-highlight-color);
  padding:0px 6px;margin-right:5px;
}
section>form.service .free-times-panel>.day>.hour{
  color:var(--brand-color);background-color:var(--brand-highlight-bg-color);
  cursor:pointer;padding:0px 6px;margin-right:5px;
}
section>form.service .free-times-panel>.day>.hour:hover,
section>form.service .free-times-panel>.day>.hour:active{
  background-color:var(--brand-highlight-hover-bg-color);
}
section>form.service .times-panel>.day>.hour:hover::after,
section>form.service .times-panel>.day>.hour:active::after{
  content:"x";margin-left:5px;color:black;
}
/* section>#withdrawal-statement */
section>#withdrawal-statement{display:none;}
/* section>.vouchers */
section>.vouchers{}
section>.vouchers>.voucher{
	display:flex;flex-wrap:wrap;padding:10px;overflow:hidden;
	border-bottom:1px solid var(--light-gray-5);
}
section>.vouchers>.voucher:nth-child(odd){
	background-color:var(--light-gray-6);
}
section>.vouchers>.head{
	border-bottom:1px solid var(--light-gray-3);font-weight:bold;
}
section>.vouchers>.voucher>.time{
	flex:none;width:120px;
}
section>.vouchers>.voucher>.status{
	flex:auto;
}
section>.vouchers>.voucher>.status-available{
	color:#008800
}
section>.vouchers>.voucher>.status-unavailable{
	color:#888888
}
/* section>.payments */
section>.payments{}
section>.payments>.payment{
	display:flex;flex-wrap:wrap;padding:10px;overflow:hidden;
	border-bottom:1px solid var(--light-gray-5);
}
section>.payments>.payment:nth-child(odd){
	background-color:var(--light-gray-6);
}
section>.payments>.head{
	border-bottom:1px solid var(--light-gray-3);font-weight:bold;
}
section>.payments>.payment>.key{
	flex:none;width:200px;
}
section>.payments>.payment>.time{
	flex:none;width:120px;
}
section>.payments>.payment>.price{
	flex:none;width:80px;
}
/* .dialog>.main>.booking */
.dialog>.main>.booking{
	line-height:30px;
}
.dialog>.main>.booking>.field{
	display:flex;margin-bottom:10px;
}
.dialog>.main>.booking>.field-separator{
	width:100%;height:1px;background-color:var(--light-gray-4);
	margin:15px 0px;
}
.dialog>.main>.booking>.field>.field-name{
	flex:none;width:120px;font-weight:bold;
}
.dialog>.main>.booking>.field>.field-input{
	display:flex;align-items:center;
	flex:auto;overflow-x:hidden;text-overflow:ellipsis;
	font-size:0.9rem;
}
.dialog>.main>.booking>.field>.field-input>input[type="text"],
.dialog>.main>.booking>.field>.field-input>input[type="email"]{
	box-sizing:border-box;padding:6px 8px;width:95%;
	font-size:0.8rem;font-family:inherit;
}
.dialog>.main>.booking>.field>.field-input>a{
	color:#3399bb
}
.dialog>.main>.booking>.field>.field-input>textarea{
	box-sizing:border-box;width:95%;height:150px;line-height:1.5em;padding:10px;
	font-size:0.8rem;font-family:inherit;
}
.dialog>.main>.booking>.field>.field-input>input[type="range"]{
	width:150px;
}
.dialog>.main>.booking>.field>.field-input>input[type="radio"]{
	margin:0px;width:16px;height:16px;
}
.dialog>.main>.booking>.field>.field-input>label{
	margin-left:5px;margin-right:10px;
}
.dialog>.main>.booking>.field>.field-input>label.agree{
	display:grid;grid-template:auto / auto auto;gap:5px;
}
.dialog>.main>.booking>.field>.field-input>span{
	margin:0px 5px;
}
.dialog>.main>.booking>.field>.field-input>.cover-letter{
	word-break:break-all;
}
.dialog>.main>.booking>.field>.field-input>svg.score{
	padding-right:5px;width:20px;height:20px;
}
.dialog>.main>.booking>.field>.field-input>svg.score>path{
	fill:black;
}
.dialog>.main>.booking>.field>.field-input>svg.score-positive>path{
	fill:var(--brand-highlight-color);
}