:host{
    contain:style size
}
.panel{
	position:fixed;
	top:0;
	left:0;
	transform:translate(10px,50px);
	z-index:99991;
	width:140px;
	min-width:140px;
	max-width:400px;
	padding-block-end:110px;
	height:600px;
	max-height:92vh;
	transition:.3s ease-in;
	transition-property:transform,opacity,visibility;
	contain:layout size style
}
.tb_float_small .panel_category{
	column-gap:2px
}
.drag_handle{
    touch-action:none;
    cursor:move
}
.panel_top{
	background:var(--tb_ui_bg_dark);
	padding-block-start:18px;
	border-start-start-radius:8px;
	border-start-end-radius:8px;
	border-end-start-radius:0;
	border-end-end-radius:0
}
.panel_top .dropdown_label{
    color:#fff
}
.panel_top li:before,
.panel_top li:after{
	content:"";
	width:8px;
	height:8px;
	position:absolute;
	bottom:-1px;
	background-color:var(--tb_ui_bg_dark)
}
.panel_top .current{
	background-color:var(--tb_ui_bg);
    border-top-left-radius:3px;
    border-top-right-radius:3px;
	border-start-start-radius:3px;
	border-start-end-radius:3px;
	color:var(--tb_ui_color);
	padding-inline:11px
}
.panel_top li:hover{
    transform:translateY(-1px);
    transition:transform .3s
}
.panel_top .current:hover{
    transform:none;
    transition:none
}
.panel_top .current:before{
	left:-8px;
	border-bottom-right-radius:4px;
	box-shadow:4px 4px 0 2px var(--tb_ui_bg);
}
.panel_top .current:after{
	right:-8px;
	border-bottom-left-radius:4px;
	box-shadow:-4px 4px 0 2px var(--tb_ui_bg);
}
.tb_panel_docked{
	width:var(--tb_docked_w)!important;
	transform:none!important;
	height:100%!important;
	top:var(--tb_toolbar_h);
	padding-block-end:130px;
	border-radius:0;
	max-height:100%;
	z-index:9988
}
.tb_panel_right_dock{
	right:0;
	left:auto
}
.tb_panel_docked .panel_top{
	border-radius:0;
	padding-block-start:12px;
	z-index:11
}
.tb_drag_start,
.tb_editor_start_select #tb_toolbar{
	pointer-events:none
}
.tb_dock_minimized{
	transform:translateX(-100%)!important;
	opacity:0;
	visibility:hidden
}
.tb_panel_right_dock.tb_dock_minimized{
	transform:translateX(100%)!important
}
.panel_close,
.minimize{
    background:0;
	color:#fff;
	font-size:11px;
	position:absolute;
	top:5px;
    inset-inline-end:30px;
	height:14px;
	width:14px;
	z-index:1
}
.panel_close{
    inset-inline-end:10px
}
.minimize:before,
.minimize:after{
    content:"";
    display:block;
    position:absolute
}
.minimize:before{
    border-block-start:1px solid;
    width:12px;
    top:7px;
	inset-inline-end:0
}
.is_minimized .tb_resizable,
.tb_panel_docked .minimize,
.tb_panel_docked .panel_close,
.tb_panel_docked .tb_resizable,
#main_panel.tb_load_layout_active,
.tb_panel_closed:not(.tb_panel_docked),
#main_panel.tb_preview_only,
.tb_panel_dropdown_openend:not(.tb_panel_docked),
#main_panel.tb_preview_only+.docked_min,
.tb_drag_start:not(.tb_panel_docked){
    display:none
}

/* START panel dock minimize icon */
.docked_min{
    position:fixed;
    top:50%;
    left:0;
    transform:translateY(-50%);
    background:#f1f1f1;
    padding:18px 7px;
    z-index:100010;
    margin-top:var(--tb_toolbar_h);
    border-top-right-radius:3px;
    border-bottom-right-radius:3px;
    contain:strict;
	touch-action:none
}
.docked_min:after,
.docked_min:before{
	right:4px;
	content:" ";
	height:0;
	width:0;
	position:absolute;
	border: 5px solid transparent;
	border-right-color: #7d7d7d;
	margin-top:-5px
}
.tb_panel_docked+.docked_min{
	display:block
}
.tb_panel_right_dock+.docked_min{
	left:auto;
	right:0;
	border-radius: 8px 0 0 8px;
}
.tb_dock_minimized+.docked_min,
.docked_min:hover{
	box-shadow:1px 0 12px rgba(0,0,0,.1),0 0 1px rgba(0,0,0,.3)
}
.docked_min:hover{
	background:#fff
}
.tb_dock_minimized+.docked_min:before,
.tb_dock_minimized+.docked_min:after,
.tb_panel_right_dock+.docked_min:before,
.tb_panel_right_dock+.docked_min:after{
	border-left-color:#7d7d7d;
	border-right-color:transparent;
	left:4px
}
.tb_dock_minimized.tb_panel_right_dock+.docked_min:before,
.tb_dock_minimized.tb_panel_right_dock+.docked_min:after{
	border-left-color:transparent;
	border-right-color:#7d7d7d;
	left:auto
}
.docked_min:hover:before,
.docked_min:hover:after{
	animation:minimize_ltr 1s infinite linear
}
.tb_dock_minimized+.docked_min:hover:before,
.tb_dock_minimized+.docked_min:hover:after{
	animation:minimize_rtl 1s infinite linear
}
/* tb_dock_minimized arrow left/right animation */
@keyframes minimize_ltr{
	0%{transform:translateX(0)}
	50%{transform:translateX(-4px)}
	100%{transform:translateX(0)}
}
@keyframes minimize_rtl{
	0%{transform:translateX(0)}
	50%{transform:translateX(4px)}
	100%{transform:translateX(0)}
}

/*Minimize*/
.is_minimized{
    padding:0;
    max-height:0
}
.is_minimized .panel_top{
    border-radius:8px;
    box-shadow:0 0 1px 0 rgba(0,0,0,.6),0 3px 10px rgba(0,0,0,.2)
}
.is_minimized .minimize:after{
    border-left:1px solid;
    height:12px;
    top:2px;
	inset-inline-end:5px
}
.is_minimized .panel_top li:before,
.is_minimized .panel_top li:after{
    transform:scaleY(0)
}
.is_minimized .panel_container{
    visibility:hidden;
    height:0;
    opacity:0
}
.is_minimized .nav_tab{
    opacity:.3;
    pointer-events:none
}

.tb_float_xsmall .panel_category{
    row-gap:2px;
    grid-auto-rows:auto
}
.tb_float_xsmall .tb_module{
    flex-direction:row;
    justify-content:start;
    padding:5px;
    gap:7px;
}
.tb_float_xsmall .tb_module .tf_fa{
    font-size:14px;
    padding:0;
    box-sizing:border-box;
    transition:opacity .5s ease,transform .5s ease
}
.tb_float_xsmall .module_name{
    flex-grow: 1;
    width:75%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    text-align:initial
}
.tb_float_xsmall .tb_favorite{
    font-size:14px;
	top:0
}
.tb_float_xsmall .tb_module:hover>.tf_fa{
    transform:scale(.5);
    opacity:0
}
.tb_float_xsmall .panel_modules_wrap a{
    width:22px;
    height:22px;
    line-height:22px
}
.tb_float_xsmall{
	padding:0 0 90px
}
.tb_float_xsmall .panel_top{
	padding-block-start:12px;
	z-index:11
}
.tb_float_xsmall .panel_top .dropdown_label{
    margin-inline-start:8px
}
.tb_float_xsmall .nav_tab li:before,
.tb_float_xsmall .nav_tab li:after{
	display:none
}
.tb_float_xsmall .panel_search_form{
    margin-inline:8px
}