/*
dragon1.css version 2023 7.1.0.0
*/

:root {
	--color-base: #f1f1f1;
	--color-base-content: #424866;
	--color-focus: #015FCC;
	--color-border: #424866;
	--color-muted: #E0E0E0;

	--color-danger: #dc3545;
	--color-caution: #ffc107;
	--color-success: #28a745;
	--color-info: #17a2b8;
	/*--color-success: #5cb85c;*/
	/*--color-success-hover: #449d44;*/
}

svg h1, svg h2, svg h3, svg p, svg label, svg div{margin:0px;font-family: Arial,Verdana}
svg h1, svg h2, svg h3, svg p, svg label, svg div{margin:0px;font-family: Arial,Verdana}
.dragon1-list-item div , .dragon1-shape-cursor div , .dragon1-button-text div{cursor:pointer!important}
foreignObject div {cursor:pointer!important}
svg *{font-family: Verdana, Arial}
svg {fill:#ffffff}


@keyframes relationshipmove {
	from {  stroke-dashoffset: 96;  }
	to   {  stroke-dashoffset: 0;  }
  }


.popupdialog, #diagramdiv {border: 1px solid rgb(221, 221, 221);box-shadow: rgb(192, 192, 192) 1px 1px 12px;}

/*.area rect {fill:#ffffff;stroke-width:1}*/
.dragon1-button rect{fill:#2980b9!important}
.dragon1-header-item rect {fill:transparent!important}

.bg-secondary {fill:#2980b9;stroke-width:0}
.bg-tertiary {fill:#27ae60;stroke-width:0}
.bg-dark {fill:#379392 ;stroke-width:0}
.bg-light {fill:#f8f9fa;stroke-width:0}
.bg-gray {background-color: #ccc!important}
.bg-darkgray {background-color: #999}
.bg-darkyellow_selected {background-color:#f1770f !important}
.bg-darkyellow {background-color:#ed971975 !important}
.bg-purple {background-color:purple}
.bg-brown {background-color:brown}
.bg-blue {background-color:#3f51b5}
.bg-pink {background-color:#ff7e95}

.bg-success{background-color:var(--color-success)}
.bg-danger{background-color:var(--color-danger)}
.bg-warning{background-color:var(--color-caution)}
.bg-info{background-color:var(--color-info)}
.bg-light{background-color:#f8f9fa}
.bg-dark{background-color:#343a40}
.bg-link{background-color:transparent}

#mydivheader label{margin:0px!important;}

.hoverrect {fill-opacity:0!important}
.hoverxxrect:hover{ fill:transparent;   stroke: #8888ff;    stroke-width: 1px;visibility: visible;    shape-rendering: crispEdges;    stroke-dasharray: 3,3;}

.shapehandle:hover {display:block; fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges; }
.hoverrect:hover ~ .shapehandle{display:block; fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }
.hoverrect:hover ~ .shapehandle.selected{ display:block;fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }
.hoverrect:hover ~ .shapehandle:hover{ display:block;fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }

.shapehandle2:hover {display:block; fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges; }
.hoverrect:hover ~ .shapehandle2{display:block; fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }
.hoverrect:hover ~ .shapehandle2.selected{ display:block;fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }
.hoverrect:hover ~ .shapehandle2:hover{ display:block;fill:#ffff88!important; stroke: #8888ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }


.resizeareagroup:hover{ fill:blue!important; stroke: #c1c1ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }
.resizeareagroup.selected{ fill:blue!important; stroke: #c1c1ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }
.resizeareagroup.selected:hover{ fill:blue!important; stroke: #c1c1ff;    stroke-width: 1px; visibility: visible;    shape-rendering: crispEdges;   }

.shapeicon selected .hoverrect{ fill:none;   stroke: #8888FF;    stroke-width: 1px;}
.shapeicon selected { fill:none;   visibility: visible;    shape-rendering: crispEdges;    stroke-dasharray: 3,3;}

.shapeicon hover .hoverrect{ fill:none;   stroke: #FF8888;    stroke-width: 1px;}
.shapeicon hover .hoverrect{ fill:none;   visibility: visible;    shape-rendering: crispEdges;    stroke-dasharray: 3,3;}

/*#geBackgroundPage:hover #barback {opacity:0.7!important; transition: 1s; }
#geBackgroundPage:hover #progressbar {opacity:1!important; transition: 1s;}
#geBackgroundPage:hover #pnlPlayerControlBar {opacity:1!important; transition: 1s;}
#pnlPlayerControlBar button {background: none;border: 0px;outline:0;cursor: pointer;}
*/

.shapetext .textdiv{font-family:inherit}
.shapetext .textdivX{   position : absolute;    left: 50%;    top: 50%;    -webkit-transform: translate(-50%, -50%);    -moz-transform: translate(-50%, -50%);    transform: translate(-50%, -50%);}

/* The switch - the box around the slider */
.myswitch {
  position: relative;
  display: inline-block;
  width: 30px;
  height: 17px;
}

/* Hide default HTML checkbox */
.myswitch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */
.myslider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
}

.myslider:before {
  position: absolute;
  content: "";
  height: 13px;
  width: 13px;
  left: 2px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .myslider {
  background-color: #2196F3;
}

input:focus + .myslider {
  box-shadow: 0 0 1px #2196F3;
}

input:checked + .myslider:before {
  -webkit-transform: translateX(13px);
  -ms-transform: translateX(13px);
  transform: translateX(13px);
}

/* Rounded sliders */
.myslider.round {
  border-radius: 17px;
}

.myslider.round:before {
  border-radius: 50%;
}

/* Button classes */
.d1-button {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  padding: 3px 6px;
  border: 1px solid #aaa;
  border-radius: 4px;
}
.d1-button:hover {
  border-color: #888;
  background-color: #ddd;
}

.d1-button-ok {
  background-color: #5cb85c;
  color: white;
}

.d1-button-ok:hover {
  background-color: #449d44;
}

.d1-button-cancel {
  background-color: #d9534f;
  color: white;
}

.d1-button-cancel:hover {
  background-color: #c9302c;
}

/*information-panel styles */
#myhtml{
	background-color: var(--color-base);
	color: var(--color-base-content);
	position:absolute;
	height:100%;
	overflow-y: auto;
	overflow-x: hidden;
	z-index:1000;
	display:inline-block;
	top:1;

	max-width:300px;
	border:1px solid #ddd;
}

.myheading{

	padding-bottom: 5px;
	margin:0px;
	font-size:13px;
	line-height:1rem;
}

.popupdialog{max-width:100%!important}
#myhtml::-webkit-scrollbar {display: none;}
#leftpanelattributes p label{font-weight:600;width:90px;margin:0px!important;}
#leftpanelattributes p{font-size:13px;line-height:16px!important;margin:0px;margin-bottom:6px}

.detailsbutton:hover{color:white!important;background-color:#1A73E8!important}
.linkbutton:hover{color:white!important;background-color:#1A73E8!important}
.leftpanelbutton button{cursor:pointer;vertical-align:top;border:1px solid #1A73E8;outline:0;width:36px;height:36px;border-radius:50%;background-color:white} .leftpanelbutton button:hover{    background-color: #F1F3F4!important} .leftpanelbutton span{vertical-align:top;font-size:11px;color:#1A73E8}.leftpanelbutton{margin-top:5px;width:50px;display:inline-block;}.leftpanelbuttonbar{height:70px;text-align:center;padding:5px 20px;border-top:1px solid #ddd;} #leftpanel::-webkit-scrollbar {  width: 5px;  height: 8px;  background-color: #f0f0f0;} #leftpanel {overflow-y:auto;overflow-x:hidden} #leftpanel::-webkit-scrollbar-thumb, #leftpanel::-webkit-scrollbar-thumb {background-color:#f0f0f0}	#leftpanel::-webkit-scrollbar-track,
#leftpanel::-webkit-scrollbar-track {background-color:#888}
#leftpanel p {margin-bottom:3px!important;}
#leftpanel label {display:inline-block;width:105px;}





/* Drawer styles */
d1-drawer {
	display: contents;
}

.d1-drawer {
	background-color: var(--color-base);
	border-left: 1px solid var(--color-muted);
	color: var(--color-base-content);
	display: flex;
	flex-direction: column;
	height: calc(100% - 30px); /* 100% - bottom toolbar height */
	outline: 0;
	padding: 8px 0;
	position: absolute;
	right: 0;
	width: 320px;
	z-index: 150;
}

.d1-drawer-title {
	padding: 20px 20px 0;
}

.d1-drawer-title h3 {
	margin: 0;
}

.d1-drawer-toolbar {
	align-items: center;
	border-bottom: 1px solid var(--color-muted);
	display: flex;
	justify-content: flex-start;
	min-height: 36px;
}

.d1-drawer-close {
	background: transparent;
	border: 0;
	border-radius: 4px;
	display: flex;
	margin: 0 8px;
	padding: 8px;
}

.d1-drawer-close:hover {
	outline: 1px solid var(--color-muted) !important; /* Override default styles? */
}

.d1-drawer-content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 8px;
	font-size:13px;
	padding: 20px;
	overflow: auto;
}

.d1-drawer .mydialogcontentitem {
	border: 0 !important;
}

/* Tabs styles */
d1-tabs, d1-tab, d1-tab-panel {
	display: contents;
}

.d1-tabs {
	display: flex;
	flex: 1 1 auto;
}

.d1-tab {
	background: transparent;
	border: 0;
	border-bottom: 2px solid transparent;
	border-top: 2px solid transparent;
	font-size: 14px;
	line-height: 1;
	padding: 9px 16px;
}

.d1-tab:focus-visible {
	outline: 2px auto var(--color-focus) !important; /* Override default styles? */
}

.d1-tab:hover, .d1-tab--active {
	border-bottom: 2px solid var(--color-border);
}

.d1-tab-panel {
	display: none;
}

.d1-tab-panel--active {
	display: flex;
	flex-direction: column;
	gap: 4px;
}





.text-red-600 { color: #dc2626; }
.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.mb-2 { margin-bottom: 0.5rem; }
.font-extrabold { font-weight: 800; }
.font-semibold { font-weight: 600; }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.mb-1 { margin-bottom: 0.25rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-gray-600 { color: #4b5563; }
.pt-6 { padding-top: 1.5rem; }
.border-t { border-top-width: 1px; }

/* TIME PLAYER BAR STYLES */
#player-bar-container {
	/*position: fixed;*/
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 50;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-bottom: 1rem;
}

/* Control Panel */
#control-panel {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 3.5rem;
	padding: 0.5rem;
	border-radius: 0.75rem;
	background-color: rgba(17, 24, 39, 0.8);
	backdrop-filter: blur(8px);
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.2), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}
@media (min-width: 768px) {
	#control-panel { padding: 1rem; }
}

/* Center controls positioning */
.center-controls {
	 display: flex;
	 align-items: center;
	 position: absolute;
	 left: 50%;
	 transform: translateX(-50%);
	 z-index: 20;
	 column-gap: 0.25rem; /* space-x-1 */
}
@media (min-width: 640px) {
	.center-controls {
		column-gap: 0.75rem; /* sm:space-x-3 */
	}
}

/* Date Find Button */
.date-find-button {
	font-size: 0.75rem;
	color: #d1d5db;
	padding: 0.25rem 0.5rem;
	border-radius: 0.5rem;
	background-color: #4b5563;
	transition: background-color 150ms ease-in-out;
}
.date-find-button:hover {
	background-color: #374151;
}

/* Date/Speed Input Style (Compiled from @apply) */
.date-input-style {
	background-color: #4b5563;
	color: #f3f4f6;
	border: 1px solid #4b5563;
	border-radius: 0.5rem;
	font-size: 0.875rem;
	padding: 0.375rem 0.75rem;
	width: 6rem;
	appearance: none;
}
.date-input-style::-webkit-calendar-picker-indicator {
	filter: invert(1);
}
.date-input-style[type="number"] { width: 4rem; text-align: center; }
.date-input-style[type="number"]::-webkit-inner-spin-button,
.date-input-style[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Player Button (Compiled from @apply) */
.player-button {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #d1d5db;
	transition: all 150ms ease-in-out;
	cursor: pointer;
}
.player-button:hover {
	color: #ffffff;
	background-color: rgba(255, 255, 255, 0.05);
}

/* Specific styles for the large Play/Pause buttons */
.main-player-button {
	background-color: rgba(255, 255, 255, 0.1);
}
.main-player-button:hover {
	background-color: rgba(255, 255, 255, 0.2);
}

/* SVG Icon (Compiled from @apply) */
.svg-icon {
	width: 1.5rem;
	height: 1.5rem;
	fill: currentColor;
}
.svg-icon-large {
	width: 1.75rem; /* slightly larger for main buttons */
	height: 1.75rem;
	fill: currentColor;
}

/* Timeline Slider (Compiled from @apply) */
#timeline-slider {
	height: 0.5rem;
	background-color: #9ca3af;
	border-radius: 0.5rem;
	appearance: none;
	cursor: pointer;
	width: 100%;
	margin-bottom: 0.25rem;
}
#timeline-slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	width: 1rem;
	height: 1rem;
	background-color: #dc2626;
	border-radius: 9999px;
	cursor: pointer;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
	transition: all 150ms ease-in-out;
	margin-top: -6px;
}
#timeline-slider::-moz-range-thumb {
	width: 1rem;
	height: 1rem;
	background-color: #dc2626;
	border-radius: 9999px;
	cursor: pointer;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
	transition: all 150ms ease-in-out;
}

/* Time Display */
.time-display {
	font-size: 0.875rem;
	font-weight: 500;
	color: #d1d5db;
	margin-left: 1rem;
	display: none;
}
@media (min-width: 768px) {
	.time-display { display: block; }
}
.time-date {
	font-weight: 700;
	color: #f87171;
}

/* Hidden/Display Utilities */
.hidden { display: none !important; }
.ml-4 { margin-left: 1rem; }
.flex { display: flex; }
.items-center { align-items: center; }
.space-x-2 > * + * { margin-left: 0.5rem; }
.z-10 { z-index: 10; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.font-bold { font-weight: 700; }

.text-gray-300 {
    --tw-text-opacity: 1;
    color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.text-red-400 {
    --tw-text-opacity: 1;
    color: rgb(248 113 113 / var(--tw-text-opacity, 1));
}
.control-panel label{margin-bottom:0px;margin-right:5px}
.w-12 {
    width: 3rem;
}

.h-12 {
    height: 3rem;
}

