
{
	padding:120px 20px;
	color:#fff;
	display:inline-block;
	box-shadow:0 3px 6px -1px rgba(0,0,0,.12),0 10px 36px -4px rgba(77,96,232,.3);
	background:-webkit-linear-gradient(315deg,#F4071A,#8D031B);
	background:linear-gradient(135deg,#F4071A,#8D031B);
	position:fixed;
	opacity:0;
	transition:all .4s cubic-bezier(.215, .61, .355, 1);
	border-radius:2px;
	cursor:pointer;
	text-decoration:none;
	max-width:calc(50% - 20px);
	z-index:2147483647;
}

.toastify.on{opacity:1}
.toast-close{
	background:0 0;
	border:0;
	color:#fff;
	cursor:pointer;
	font-family:inherit;
	font-size:1em;
	opacity:.4;
	padding:0 5px;
}
.toastify-right{right:15px}
.toastify-left{left:15px}
.toastify-top{top:-150px}
.toastify-bottom{bottom:-150px}
.toastify-rounded{border-radius:25px}
.toastify-avatar{
	width:1.5em;
	height:1.5em;
	margin:-7px 5px;
	border-radius:2px;
}
.toastify-center{
	margin-left:auto;
	margin-right:auto;
	left:0;
	right:0;
	max-width:fit-content;
	max-width:-moz-fit-content;
}
@media only screen and (max-width:360px){
	.toastify-left,.toastify-right{
		margin-left:auto;
		margin-right:auto;
		left:0;
		right:0;
		max-width:fit-content;
	}
}

/* PocketGrid */
.block,.block-group,.block-group:after,.block-group:before,.block:after,.block:before{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.block-group:after,.block-group:before{display:table;content:"";line-height:0}
.block-group:after{clear:both}
.block-group{list-style-type:none;padding:0;margin:0}
.block-group>.block-group{clear:none;float:left;margin:0!important}
.block{float:left;width:100%}
.block-group.has-spacing{margin:0 -16px}
.block-group.has-spacing>.block{padding:0 16px}
.b-5{width:5%}.b-10{width:10%}.b-15{width:15%}.b-20{width:20%}.b-25{width:25%}.b-30{width:30%}.b-33{width:33.3333%}.b-35{width:35%}.b-40{width:40%}.b-50{width:50%}.b-60{width:60%}.b-70{width:70%}.b-75{width:75%}.b-80{width:80%}.b-90{width:90%}.b-95{width:95%}
.block.b-50:nth-child(2n+1){clear:left}
.block.b-95:nth-child(2n+1){clear:right, float:right}
.block-group.is-middle>.block{vertical-align:middle}
body{
	background-image:url();
	background-repeat:repeat-x;
	background-color:#fff;
	font-family:Verdana,"Trebuchet MS",Arial,Helvetica,sans-serif;
	font-size:12px;
	letter-spacing:0;
	padding:0;
	margin:0;
	max-width:100%;
}

h1,h2,h3,h4,h5{font-family:Arial,Helvetica,Sans-serif;color:#000}
h1,h2{color:orange;font-weight:400}
h1{font-size:24pt}
h2{font-size:20pt}
h3{font-size:16pt}
h4{font-size:14pt}
h5{font-size:12pt}
h6{font-size:10pt}
img{border:0}
.btn-block{width:100%;display:block;margin:0}
.outer{width:960px;clear:both;margin-left:auto;margin-right:auto}

.header-meta {
	display: flex;
	align-items: center;
	gap: 10px;
}

.header {
    background: #fff;
    position: fixed;
    top: 0;
    width: 90%;
    min-height: 90px;   /* en vez de height fijo */
    z-index: 100;
    border-bottom: 0px solid #ccc;
}

/* Asegura que el contenido comience debajo del header */
.content_area {
	margin-top: 60px; /* igual a la altura del header */
}
body {
	padding-top: 60px; /* igual a la altura del header */
}

.header-meta .iconbar{background:0 0;margin:0}
.header-meta a{
	font-size:10px;
	font-weight:700;
	color:#D2350E;
	display:inline-block;
	margin-left:8px;
	line-height:8px;
}
.header-meta a img{vertical-align:-11%;margin-right:2px;margin-left:2px;height:12px;width:12px}
.header-meta a:hover{color:#006090!important}
.header-meta .normal{margin:8px 0;font-weight:400;font-size:12px;color:#D2350E}

.header-title .title a{
	display:inline-block;
	padding:12px 0;
	font-family:verdana,arial;
	font-size:20px;
	font-weight:700;
	letter-spacing:-1px;
	color:#D2350E;
}

.mid-section{padding-top:20px}
.content_area{margin:32px 0 0 0;padding:0}

.sub_nav{float:left;width:180px;margin-right:25px;margin-top:15px}
.noticebox{background-color:#ffffbf;border:1px solid grey;padding:5px;text-align:center}
.noticebox h1{border-bottom:1px solid grey;font-size:95%}
.small{font-size:90%}

.footer{font-size:12px;padding-top:0px;margin-bottom:0px;clear:both}
.footer #footer{border-top:1px solid #ff6400;margin-top:24px;padding-top:8px}
#footer_links{height:32px}
#footer_links a{
	margin-right:8px;
	display:inline-block;
	height:32px;
	line-height:32px;
	font-size:10px;
	font-weight:700;
}
#footer_links a img{vertical-align:-11%;margin-right:4px}

a{font-style:normal;color:#069;text-decoration:none}
a:hover{font-style:normal;color:#55b10a;text-decoration:none}
a:visited:hover{font-style:normal;color:#15a300;text-decoration:none}
.style1{font-size:18px;font-weight:700;color:#15a300}
.style2{color:#000;font-weight:700}

.ad_box{
	width:142px;
	height:342px;
	padding-top:5px;
	padding-left:19px;
	padding-right:19px;
	background-image:url(../images/side_banner.gif);
	background-repeat:no-repeat;
	text-align:center;
}

.banner{font-size:10px;padding-left:5px;text-align:left}
.content_area ul li{margin:3px 0}
p.breadcrumbs{font-size:90%;font-weight:700;margin:32px 0 0 0}
.highlight{background:#ffa}

p.msgbox{
	background-position:4px 4px;
	background-repeat:no-repeat;
	width:320px;
	color:#000;
	padding:4px 4px 4px 28px!important;
	border-width:1px;
	border-style:solid;
	font-size:8pt;
	max-width:100%;
	box-sizing:border-box;
}

p.msgbox.large{width:100%;max-width:100%}
p.msgbox.error{background-image:url(../images/i_error.png);background-color:#fbe6f2;border-color:#d893a1}
p.msgbox.info{background-image:url(../images/i_info.png);background-color:#e6fbf2;border-color:#93d8a1}
p.msgbox.exclamation{background-image:url(../images/i_exclamation.png);background-color:#fbe6f2;border-color:#d893a1}
p.msgbox.question{background-image:url(../images/i_help.png);background-color:#e6fbf2;border-color:#93d8a1}
p.msgbox.notice{background-image:url(../images/i_info.png);background-color:#ffffd5;border-color:#d9d991}

p.green,span.green{color:#15a300;font-weight:700;font-size:10pt}
dd span,p span{background:#ffa}
p span.red{background:#fbe6f2}

.column dd,.column dt{font-size:12px;line-height:1.5;margin:0}
.column dt{color:#55b10a;margin-bottom:3px}
.column dd{color:#333;font-size:11px;margin:0 0 24px 0}

fieldset{border:1px solid #999;margin:0 0 24px 0;padding:8px}
legend{color:#999;font-size:14px;font-weight:700;padding:0 4px}

.iconbar{
	padding:0;
	margin:16px 0;
	background:#fff;
	color:#000;
	font-weight:700;
	display:flex;
	flex-direction: row; /* por defecto horizontal */
	flex-wrap: wrap;
}

/* CORRECCIÓN PARA TABLETAS: menú vertical no sobre contenido */
@media only screen and (max-width:1024px) {
	.header-meta .iconbar{
		flex-direction: column; /* vertical */
		position: relative;     /* para que no se superponga */
		width: auto;            /* ancho adaptativo */
		margin: 0 0 0 0;
	}
	.content_area{
		margin-top: calc(60px + 100px); /* ajusta el espacio para menú vertical si necesario */
	}
}

.iconbar>a{padding:3px 4px 3px 3px}
.iconbar>.active{background:#008ed3;color:#fff}
.iconbar+.cssform,.iconbar+.iconbar,.iconbar+.messages,.iconbar+h2{margin-top:32px}
.iconbar+h2{margin-top:32px}

/* =========================== */
/* Cuarta parte del CSS original */
/* =========================== */

/* Bookings grid y tablas relacionadas */
.bookings-grid-header{padding:6px;font-weight:700;border:1px solid #999;color:#666;}
.bookings-grid-header.has-week{border-color:transparent}
.bookings-grid-header a{color:inherit}
.bookings-grid-header a:hover{color:inherit;opacity:.8}
.bookings-grid{width:100%;height:100%;border-collapse:separate;overflow:hidden}
.bookings-grid.is-legend{width:auto;height:auto}
.bookings-grid td,.bookings-grid th{font-size:90%;position:relative;display:table-cell;height:100%}
.bookings-grid-header-row .bookings-grid-header-cell{text-align:center;font-weight:400;padding:13px;z-index:10;background:#FFFDAF;border-radius:20px;border: 2px solid red;color:#000}
.bookings-grid-content-row .bookings-grid-header-cell{text-align:right;vertical-align:middle;font-weight:400;z-index:10}
.bookings-grid-content-row .bookings-grid-header-cell{width:100px;padding:15px 5px}
.bookings-grid-header-cell-is-today span,.bookings-grid-header-cell-is-today strong{background:#ffa}
.bookings-grid-slot{text-align:center;vertical-align:middle;position:relative;padding:0}
.bookings-grid-button{font-size:inherit;box-sizing:border-box;display:inline-flex;height:100%;width:100%;padding:6px 3px;justify-content:center;align-items:center;flex-direction:column;border:1px solid #ddd;background:0 0}
.bookings-grid-button[up-content]{cursor:help}
.bookings-grid-button[disabled]{background:0 0;pointer-events:none;opacity:.65}
.bookings-grid-button:hover{outline:2px solid #FFDC00}
.bookings-grid.is-legend td{font-size:90%}
.bookings-grid.is-legend .bookings-grid-button:hover{outline:0}
.bookings-grid-slot.booking-status-available .bookings-grid-button{background:#fff;border-radius:20px;border:1px dotted green ;color:#000}
.bookings-grid-slot.booking-status-booked-recurring .bookings-grid-button{background:#D2350E;border-radius:10px;border:1px solid yellow;color:#fff}
.bookings-grid-slot.booking-status-booked-single .bookings-grid-button{background:#3082bf;border-radius:10px;border:1px solid red; color:#fff}
.bookings-grid-slot.booking-status-unavailable{background-image:url('../images/bookings-unavailable-bg.png')}
.bookings-cancel.is-repeat .submit button{width:100%;margin-bottom:8px}
.booking-choices-cancel{border:2px solid #ff4136}
.booking-choices button{width:100%;margin-bottom:8px}
.bookings-grid-button:hover{z-index:1}
.bookings-grid.has-highlight .booking-status-available .bookings-grid-button:hover:before{background-color:rgba(255,250,170,.5);content:'\00a0';height:10000px;left:0;position:absolute;top:-5000px;width:100%;pointer-events:none;z-index:5}
.bookings-grid.has-highlight .booking-status-available .bookings-grid-button:hover:after{background-color:rgba(255,250,170,.5);content:'\00a0';height:100%;left:-5000px;position:absolute;top:0;width:10000px;pointer-events:none;z-index:5}
.bookings-grid-controls{margin-bottom:16px}
.bookings-filter .room-groups .block{padding-right:20px}
.bookings-filter .room-groups .block:nth-child(4n+1){clear:left}
.filter-button{padding:6px 8px}
.filter-button+.filter-button{margin-left:16px}
.filter-button img{vertical-align:-3px;margin-right:4px}
.filter-button span+span{margin-left:8px}
.popup-menu{padding:8px 0}
.popup-menu-item{background:0 0;margin:0;padding:8px;display:block;color:inherit}
.popup-menu-item:hover{background:#f5f4ea}
table.bookings td{font-size:90%;font-family:tahoma,verdana,sans-serif;padding:3px}
table.bookings td.free{background:#fff;border:1px solid #ccc;color:#000}
table.bookings td.static{background:#e68a73;color:#fff;border:1px solid #e68a73}
table.bookings td.staff{background:#902308;color:#fff;border:1px solid #3082bf}
table.bookings td.holiday{background:#f6f6f6;color:#333;border:1px solid #ccc}
table.bookings td.free a{color:#00f;text-decoration:none;display:block}
table.bookings td.free a:hover{color:red;text-decoration:none}

/* Iconbar en tabletas: evita que invada el contenido */
@media only screen and (max-width:1024px) and (min-width:768px){
    .header-meta .iconbar{
        display: flex;
        flex-direction: row; /* horizontal en tabletas */
        flex-wrap: wrap;
        gap: 4px;
        max-width: 100%;
    }
}

/* Iconbar en móviles: centrado y ajustado */
@media only screen and (max-width:767px){
    .header-meta .iconbar{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 4px;
        max-width: 100%;
    }
}

/* =========================== */
/* Quinta parte del CSS original */
/* =========================== */

/* Session Calendar */
.session-calendar{border-collapse:collapse;border-spacing:0;border:1px solid #ccc}
.session-calendar.mode-nav{width:100%}
.session-calendar.mode-config{margin-bottom:64px;min-width:280px}
.session-calendar tr.header-row th,.session-calendar tr.week-row td{background:#f5f4ea;text-align:center}
.session-calendar tr.header-row th{font-size:14px;font-weight:400;padding:12px 0}
.session-calendar tr.week-row td{color:#666;padding:8px 0;border-bottom:1px solid #ccc}
.session-calendar .date-cell{border-bottom:1px solid #ccc;padding:0;position:relative}
.session-calendar .date-cell.has-holiday:after{content:"";position:absolute;top:6px;right:6px;background:#000;opacity:.2;width:6px;height:6px;border-radius:3px}
.session-calendar .date-cell-content{position:relative;display:block;width:42px;padding:15px 0;text-align:center}
.session-calendar .date-cell-info{position:absolute;top:50%;left:100%;transform:translateY(-50%);padding-left:1px;text-align:left;min-width:280px;pointer-events:none}
.session-calendar .week-label{position:relative;display:inline-block;padding:4px 8px;background:#ccc;margin-left:15px}
.session-calendar .week-label:before{content:"";position:absolute;top:50%;left:-15px;height:2px;background:#ccc;width:15px}
.session-calendar .week-label:after{content:"";position:absolute;top:0;left:-15px;height:100%;background:#ccc}
.session-calendar .next-month,.session-calendar .prev-month{color:#ccc}
.session-calendar .date-btn{border:0;background:0 0;color:inherit}
.session-calendar .date-btn[disabled]{pointer-events:none;text-decoration:line-through}
.session-calendar .date-btn:hover{outline:2px solid #FFDC00;z-index:100;position:relative}
.session-calendar .date-link{color:inherit}
.session-calendar .date-link[disabled]{pointer-events:none;text-decoration:line-through}
.session-calendar .date-link:hover{outline:2px solid #FFDC00;z-index:100;position:relative}
.session-calendar .nav-btn{background:0 0;display:block;cursor:pointer;width:100%;padding:4px 0;text-align:center;vertical-align:middle;border:0}
.session-calendar .nav-btn>img{vertical-align:middle}

/* Dot indicators */
.dot{position:relative;display:inline-block;background:#ccc}
.dot-size-md{width:16px;height:16px;border-radius:8px}
.dot-size-sm{width:10px;height:10px;border-radius:5px}

/* Tabs */
.tab-pane{border:1px solid #ccc;margin-bottom:32px;position:relative}
.tab-pane-list{margin-bottom:-1px}
.tab-pane-list:after{content:"";width:1px;background:#ccc;top:0;bottom:0;left:30%;position:absolute}
.tab-pane-list-item,label.tab-pane-list-item{display:block;width:100%;margin:0;font-weight:400;border-bottom:1px solid #ccc;box-sizing:border-box;float:left}
.tab-pane-list-item input[type=radio]{clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;position:absolute;width:1px}
.tab-pane-list-item input[type=radio]:checked+.tab-pane-list-item-body,.tab-pane-list-item input[type=radio]:focus+.tab-pane-list-item-body{background:#f5f4ea}
.tab-pane-list-item-body{padding:12px}
.tab-pane-detail-item{padding:12px}

/* Boxes and statistics */
.box{background:#f5f4ea;padding:16px}
.stat-item{display:inline-block}
.stat-item+.stat-item{margin-left:48px}
.stat-item dl{margin:0;padding:0}
.stat-item dt{font-size:20px;font-weight:700;margin:0;padding:0;color:#333}
.stat-item dd{font-size:11px;margin:0 0 4px 0;padding:0;color:#333}

/* Dashboard booking list */
.dash-booking-list{margin:0;padding:0;list-style:none}
.dash-booking-list li{margin:0;padding:0}
.dash-booking-list li+li{border-top:1px solid #ccc;margin-top:16px;padding-top:16px}
.dash-booking-title{font-weight:400;display:block;color:#002030;margin:0 0 6px 0}
.dash-booking-subtitle{font-weight:400;display:block;margin:0 0 6px 0}
.dash-booking-notes{font-size:11px;color:#666}
.dash-booking-time{color:#666;font-size:11px}

/* Autocomplete */
.autocomplete__wrapper{position:relative}
.autocomplete__hint,.autocomplete__input{-webkit-appearance:none;border:1px solid grey;border-radius:0;box-sizing:border-box;margin-bottom:0;width:100%}
.autocomplete__input{background-color:transparent;position:relative}
.autocomplete__hint{color:#b1b4b6;position:absolute}
.autocomplete__input--default{padding:3px}
.autocomplete__input--focused{outline-offset:0}
.autocomplete__input--show-all-values{padding:3px 34px 3px 3px;cursor:pointer}
.autocomplete__dropdown-arrow-down{display:inline-block;position:absolute;right:7px;width:22px;height:17px;top:5px;pointer-events:none}
.autocomplete__menu{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}
.autocomplete__menu--visible{display:block}
.autocomplete__menu--hidden{display:none}
.autocomplete__menu--overlay{box-shadow:rgba(0,0,0,.256863) 0 2px 6px;left:0;position:absolute;top:100%;z-index:100}
.autocomplete__menu--inline{position:relative}
.autocomplete__option{border-bottom:solid #b1b4b6;border-width:1px 0;cursor:pointer;display:block;position:relative;margin:0}
ul li.autocomplete__option{margin:0}
.autocomplete__option>*{pointer-events:none}
.autocomplete__option:first-of-type{border-top-width:0}
.autocomplete__option:last-of-type{border-bottom-width:0}
.autocomplete__option--odd{background-color:#fafafa}
.autocomplete__option--focused,.autocomplete__option:hover{background-color:#1d70b8;border-color:#1d70b8;color:#fff;outline:0}
.autocomplete__option--no-results{background-color:#fafafa;color:#646b6f;cursor:not-allowed}
.autocomplete__hint,.autocomplete__input,.autocomplete__option{line-height:1.25}
.autocomplete__hint{padding:3px}
.autocomplete__option{padding:5px 3px}

/* =========================== */
/* Sexta parte del CSS original */
/* =========================== */

/* Huebee Color Picker */
.huebee{position:absolute;z-index:1;transform:translateY(0);transition:opacity .15s,transform .15s}
.huebee.is-hidden{opacity:0;transform:translateY(10px)}
.huebee.is-static-open{position:relative;z-index:auto}
.huebee__container{position:absolute;left:0;top:5px;padding:10px;background:#eee;border-radius:5px;box-shadow:0 5px 10px hsla(0,0%,0%,.3)}
.huebee.is-static-open .huebee__container{position:relative;display:inline-block;left:auto;top:auto;box-shadow:none}
.huebee__canvas{display:block;cursor:pointer}
.huebee__cursor{width:15px;height:15px;position:absolute;left:0;top:0;box-sizing:content-box;border:3px solid #fff;border-radius:5px;pointer-events:none}
.huebee__cursor.is-hidden{opacity:0}
.huebee__close-button{display:block;position:absolute;width:24px;height:24px;top:-9px;right:-9px;border-radius:12px;background:#222}
.huebee__close-button__x{stroke:white;stroke-width:3;stroke-linecap:round}
.huebee__close-button:hover{background:#fff;cursor:pointer}
.huebee__close-button:hover .huebee__close-button__x{stroke:#222}

/* Collapse sections */
.collapse{margin:0 0 8px 0}
.collapse-header{background:#d6dff7;padding:8px;cursor:pointer}
.collapse-body{margin-bottom:32px;margin-left:32px}

/* Popups */
up-popup[size=max]{width:960px}

/* Lists */
ul.plain-list{list-style:none;margin:0 0 32px 0;padding:0}
ul.plain-list>li{margin:0;padding:0}
ul.plain-list>li>a{padding:2px 0;display:inline-block}
ul.room-list{list-style:none;margin:0 0 32px 0;padding:0}
ul.room-list>li{margin:0 0 -1px 0;padding:0}
ul.room-list>li>a{display:block;border:1px solid #ddd;padding:6px;color:inherit}
ul.room-list>li>a>p{margin:0}
ul.room-list>li>a.is-selected{background:#ffa}
ul.room-list>li>a.is-selected .room-name{font-weight:700}

/* Toast notifications */
.toastify{padding:12px 0 12px 24px}
.toastify-success{background:#37b24d}
.toastify-error{background:#f03e3e}
.toastify-info{background:#1c7ed6}
.toast-close{margin-left:12px;padding:12px 12px;margin-top:-12px;margin-bottom:-12px;opacity:.9}

/* Sortable tables */
.sort-table{border:0 Solid ThreeDShadow;background:#fff;color:WindowText}
.sort-table thead{background:ButtonFace}
.sort-table thead td{border:0 solid;border-color:ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;cursor:pointer}
.sort-table thead td:active{border-color:ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow}
.sort-table thead td[_sortType=None]:active{border-color:ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;padding:2px 5px}
.sort-arrow{width:11px;height:11px;background-position:center center;background-repeat:no-repeat;margin:0;border:0}
.sort-arrow.descending{background-image:url(../images/bullet_arrow_down.png)}
.sort-arrow.ascending{background-image:url(../bullet_arrow_up.png)}

/* Datepicker */
.dpDiv{min-width:170px}
.dpTable{width:100%;font-family:Tahoma,Arial,Helvetica,sans-serif;font-size:8pt;text-align:center;color:#000;background-color:#fff;border:1px solid #ccc}
.dpTD{border:1px solid #fff}
.dpDayHighlightTD{background-color:#ccc;border:1px solid #aaa}
.dpTDHover{background-color:#aca998;border:1px solid #888;cursor:pointer;color:red}
.dpDayTD{background-color:#ccc;border:1px solid #aaa;color:#fff}
.dpTitleText{font-size:12px;color:orange;font-weight:700}
.dpDayHighlight{color:4060ff;font-weight:700}
.dpButton{font-family:Verdana,Tahoma,Arial,Helvetica,sans-serif;font-size:10px;color:gray;background:#d8e8ff;font-weight:700;padding:2px;width:100%}
.dpTodayButton{font-family:Verdana,Tahoma,Arial,Helvetica,sans-serif;font-size:10px;color:gray;background:#d8e8ff;font-weight:700}

/* UP Wrapper and progress bars */
up-wrapper{display:inline-block}
up-bounds{position:absolute}
.up-focusable-content:focus,.up-focusable-content:focus-visible{outline:0}
.up-request-loader{display:none}
up-progress-bar{position:fixed;top:0;left:0;z-index:999999999;height:3px;background-color:#007bff}
up-focus-trap{position:fixed;top:0;left:0;width:0;height:0}
up-cover,up-cover-viewport,up-drawer,up-drawer-backdrop,up-drawer-viewport,up-modal,up-modal-backdrop,up-modal-viewport{top:0;left:0;bottom:0;right:0}
up-drawer-box,up-modal-box,up-popup{box-shadow:0 0 10px 1px rgba(0,0,0,.3)}
up-popup{box-shadow:0 0 4px rgba(0,0,0,.3)}
up-cover-box:focus,up-cover-box:focus-visible,up-cover:focus,up-cover:focus-visible,up-drawer-box:focus,up-drawer-box:focus-visible,up-drawer:focus,up-drawer:focus-visible,up-modal-box:focus,up-modal-box:focus-visible,up-modal:focus,up-modal:focus-visible,up-popup:focus,up-popup:focus-visible{outline:0}
up-cover,up-drawer,up-modal{z-index:2000;position:fixed}
up-drawer-backdrop,up-modal-backdrop{position:absolute;background:rgba(0,0,0,.4)}
up-cover-viewport,up-drawer-viewport,up-modal-viewport{position:absolute;overflow-y:scroll;overflow-x:hidden;overscroll-behavior:contain;text-align:center}
up-cover-box,up-drawer-box,up-modal-box,up-popup{display:inline-block;text-align:left;position:relative;box-sizing:border-box;max-width:100%;background-color:#fff;padding:20px;overflow-x:hidden}
up-cover-content,up-drawer-content,up-modal-content,up-popup-content{display:block}
up-popup{z-index:1000}
up-cover-dismiss,up-drawer-dismiss,up-modal-dismiss,up-popup-dismiss{color:#888;position:absolute;top:10px;right:10px;font-size:1.7rem;line-height:.5}
up-modal-viewport{justify-content:center}
up-modal[nesting="0"] up-modal-viewport{padding:25px 15px}
up-modal[nesting="1"] up-modal-viewport{padding:50px 30px}
up-modal[nesting="2"] up-modal-viewport{padding:75px 45px}
up-modal[nesting="3"] up-modal-viewport{padding:100px 60px}
up-modal[nesting="4"] up-modal-viewport{padding:125px 75px}
up-modal[size=small] up-modal-box{width:350px}
up-modal[size=medium] up-modal-box{width:650px}
up-modal[size=large] up-modal-box{width:1000px}
up-modal[size=grow] up-modal-box{width:auto}
up-modal[size=full] up-modal-box{width:100%}
up-drawer-viewport{text-align:left}
up-drawer[position=right] up-drawer-viewport{text-align:right}
up-drawer-box{min-height:100vh}
up-drawer[size=small] up-drawer-box{width:150px}
up-drawer[size=medium] up-drawer-box{width:340px}
up-drawer[size=large] up-drawer-box{width:600px}
up-drawer[size=grow] up-drawer-box{width:auto}
up-drawer[size=full] up-drawer-box{width:100%}
up-cover-box{width:100%;min-height:100vh;padding:0}
up-popup{padding:15px}
up-popup[size=small]{width:180px}
up-popup[size=medium]{width:300px}
up-popup[size=large]{width:550px}
up-popup[size=grow] up-popup{width:auto}
up-popup[size=full] up-popup{width:100%}
[up-clickable],[up-href]{cursor:pointer}

/* Booking attendance */
.booking-cell-attendance.asistencia-u{background-color:#fdd;color:#900}
.booking-cell-attendance.asistencia-e{background-color:#dfd;color:#090}


/* ============================= */
/* ============================= */
/* RESPONSIVE: MÓVILES y TABLETAS VERTICALES */
/* ============================= */
@media only screen and (max-width: 1024px) {

    /* Mostrar botón hamburger */
    .menu-toggle {
        display: block;
        font-size: 1.5rem;        /* tamaño mayor */
        padding: 8px 12px;        /* área clicable cómoda */
        cursor: pointer;
        background: #008ed3;      /* color de fondo */
        color: #fff;              /* color del icono */
        border: none;
        border-radius: 4px;
        position: absolute;       /* flotando sobre el header */
        top: 50%;
        right: 16px;
        transform: translateY(-50%);
        z-index: 1100;            /* sobre otros elementos */
    }

    /* Iconbar oculta por defecto */
    .header-meta .iconbar {
        display: none;             /* oculto al inicio */
        flex-direction: column;    /* vertical */
        position: absolute;
        top: 60px;                 /* debajo del header */
        right: 0;                  /* alineado a la derecha */
        width: 180px;              /* ancho del menú */
        background: #fff;
        z-index: 1050;
        box-shadow: 0 2px 6px rgba(0,0,0,0.2);
        padding: 8px 0;
        border-radius: 4px;
    }

    /* Enlaces dentro del menú */
    .iconbar > a {
        padding: 10px 16px;
        width: 100%;
        box-sizing: border-box;
        text-align: left;
        border-bottom: 1px solid #ddd;
        color: #000;
        text-decoration: none;
    }

    .iconbar > a:hover {
        background: #f5f5f5;
    }

    /* Cuando está abierto */
    .iconbar.open {
        display: flex;
    }

    /* Ajuste del contenido para que no quede tapado */
    .content_area {
        margin-top: 60px; /* header solo */
        padding: 0 8px;
    }

}



/* ============================= */
/* DESKTOP: ocultar botón hamburger */
/* ============================= */
@media only screen and (min-width: 1025px) {
    .menu-toggle {
        display: none !important;
    }
    .header-meta .iconbar {
        display: flex !important; /* iconbar normal horizontal */
        flex-direction: row;
        position: relative;
        width: auto;
        box-shadow: none;
        padding: 0;
    }
}