

body {
  margin: 0;
  font-family:Abel, system-ui;
}





.dialog-ui{
	
	--border: 1px;
	--cut: 16px;
	--border-color: #176a82;
	background:rgba(2,30,44,0.6);
	background1:rgba(80,200,250,0.20);
	position:relative;
	color: #dde8ed;
	padding:2em;
	box-sizing:border-box;
	
	min-height:70px;
	min-width:250px;
  
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	align-items:center;
	padding:12px 0 2em 0;
	gap:10px;
	
	clip-path: polygon(
		100% calc(100% - var(--cut) - (var(--border)*0.5)),
		100% calc(var(--cut) + (var(--border)*0.5)),
		calc(100% - var(--cut) - (var(--border)*0.5)) 0%,
		calc(var(--cut) + (var(--border)*0.5)) 0%,
		0% calc(var(--cut) + (var(--border)*0.5)),
		0% calc(100% - var(--cut) - (var(--border)/2)),
		calc(var(--cut) + (var(--border)*0.5)) 100%,
		calc(100% - var(--cut) - (var(--border)*0.5)) 100%,
		100% calc(100% - var(--cut) - (var(--border)*0.5))
	);
	
	/*transition:height 0.3s ease;*/
  
}




.dialog-ui::before {
	display:block;
	position:absolute;
	pointer-events:none;
	top:0;left:0;
	content:"";
	height: 100%;
	width: 100%;
	background-color: var(--border-color);


	clip-path: polygon(
		calc(100% - var(--cut) - var(--border)) calc(100% - var(--border)),
		calc(var(--cut) + var(--border)) calc(100% - var(--border)),
		var(--border) calc(100% - var(--cut) - var(--border)),
		var(--border) calc(var(--cut) + var(--border)),
		calc(var(--cut) + var(--border))  var(--border),
		calc(100% - var(--cut) - var(--border)) var(--border),
		calc(100% - var(--border)) calc(var(--cut) + var(--border)),
		calc(100% - var(--border)) calc(100% - var(--cut) - var(--border)),
		100% calc(100% - var(--cut) - (var(--border)*0.5)),
		100% calc(var(--cut) + (var(--border)*0.5)),
		calc(100% - var(--cut) - (var(--border)*0.5)) 0%,
		calc(var(--cut) + (var(--border)*0.5)) 0%,
		0% calc(var(--cut) + (var(--border)*0.5)),
		0% calc(100% - var(--cut) - (var(--border)/2)),
		calc(var(--cut) + (var(--border)*0.5)) 100%,
		calc(100% - var(--cut) - (var(--border)*0.5)) 100%,
		100% calc(100% - var(--cut) - (var(--border)*0.5)),
		calc(100% - var(--border)) calc(100% - var(--cut) - var(--border))
	);
	
	/*filter: drop-shadow(2px 2px 20px rgba(255,0,0,0.8));*/
}


.resize {
  width:16px; height:16px; /* match .dialog-ui --cut */
  position:absolute;bottom:0px;right:0px;cursor: se-resize;
  z-index:2147483647;
}


.shadow{display:inline-block;background:transparent; filter: drop-shadow(0px 0px 14px rgba(0, 0, 0, 0.8));}


.dialog-ui label{color:#3293b7;font-size:1.1em}
.dialog-ui input[type="text"], .dialog-ui input[type="password"]{
	background:rgba(2,10,14,0.6);outline:none;border:1px solid rgba(4,47,63,0.6);padding:8px;color:#d2f1f9;font-size:1.1em;
	font-family:Abel;font-weight:normal;width:100%;box-sizing:border-box;transition:all 0.15s ease;
}

.dialog-ui input[type="text"]:focus, .dialog-ui input[type="password"]:focus{
	background:#021119;border-color:rgba(26,192,207,0.5);
	box-shadow: 0 0 4px 0px rgba(26,192,207, 0.5);
}

.dialog-row{width:100%}
.dialog-ui-header{font-size:1.2em;cursor: grab;}

.dialog-ui-header:active {cursor: grabbing;}

.dialog-maximize{width:100%;height:100%;}


button.dialog-btn{
  color:#c8f2fd;
  padding:10px 30px;
  border:none;
  
  background:linear-gradient(to bottom, rgba(3,51,64,0.6) 0%,rgba(2,102,120,0.6) 100%);

  --border: 1px;
  --cut: 9px;
  --border-color: #176a82;
  
  position:relative;
  color: #dde8ed;
  
  box-sizing:border-box;
  clip-path: polygon(
    0% var(--cut),
    var(--cut) 0%,
    100% 0,
    100% calc(100% - var(--cut)),
    calc(100% - var(--cut)) 100%,
    0% 100%
  );
  transition:all 0.15s ease;
  cursor:pointer;
}

button.dialog-btn:hover{
  translate: 0px 2px;
  text-shadow: 0 0 8px #ade2ee;
  
}

button.dialog-btn::before {
  display:block;
  position:absolute;
  pointer-events:none;
  top:0;left:0;
  content:"";
  height: 100%;
  width: 100%;
  background-color: var(--border-color);
  background:linear-gradient(to bottom, #0f849c 0%,#8cd6e9 100%); 
  clip-path: polygon(
    calc(100% - var(--cut) - var(--border)) calc(100% - var(--border)),
    
    var(--border) calc(100% - var(--border)),
    /*var(--border) calc(100% - var(--cut) - var(--border)),*/
    
    var(--border) calc(var(--cut) + var(--border)),
    calc(var(--cut) + var(--border))  var(--border),
    calc(100% - var(--border)) var(--border),
    /*calc(100% - var(--border)) calc(var(--cut) + var(--border)),*/
    calc(100% - var(--border)) calc(100% - var(--cut) - var(--border)),
    100% calc(100% - var(--cut) - (var(--border)*0.5)),
    
    100% 0,
    /*11*/
    
    calc(var(--cut) + (var(--border)*0.5)) 0%,
    0% calc(var(--cut) + (var(--border)*0.5)),
    
    0% 100%,
    /*calc(var(--cut) + (var(--border)*0.5)) 100%,*/
    
    calc(100% - var(--cut) - (var(--border)*0.5)) 100%,
    100% calc(100% - var(--cut) - (var(--border)*0.5)),
    calc(100% - var(--border)) calc(100% - var(--cut) - var(--border))
  );
  filter: drop-shadow(2px 2px 20px rgba(255,0,0,0.8));
}


button.dialog-btn:active{transform: scale(0.9);}

button.dialog-btn:disabled{
  background:linear-gradient(to bottom, rgba(255,255,255,0.2) 0%,rgba(255,255,255,0.4) 100%); 
}
button.dialog-btn:disabled::before{background:#FFFFFF;}

button.dialog-btn:disabled:hover{
  translate: 0px 2px;
  text-shadow: none;
}



.dialog-controls{color:#356f7e;font-size:20px;position:absolute;z-index:6;
	top:6px;right:calc(var(--cut) + 2px); display:flex;justify-content:flex-end;gap:2px;
}

.dialog-controls button{
	color:#c8f2fd;
	padding:0px 6px;
	border:none;

	background:linear-gradient(to bottom, rgba(3,51,64,0.6) 0%,rgba(2,102,120,0.6) 100%); 

	--border: 1px;
	--border-color: #176a82;

	position:relative;
	color: #dde8ed;

	box-sizing:border-box;
	transition:all 0.15s ease;
	cursor:pointer;
	border:1px solid #244658;
}

.dialog-controls1 button::before {
	display:block;
	position:absolute;
	pointer-events:none;
	top:0;left:0;
	content:"";
	height: 100%;
	width: 100%;
	background-color: var(--border-color);
	background:linear-gradient(to bottom, #0f849c 0%,#8cd6e9 100%); 
	clip-path: polygon(0% 0%, 0% 100%, var(--border) 100%,var(--border) var(--border), calc(100% - var(--border)) var(--border), calc(100% - var(--border)) calc(100% - var(--border)), var(--border) calc(100% - var(--border)), var(--border) 100%, 100% 100%, 100% 0%);
}


.dialog-controls button:hover{
	translate: 0px 1px;
	text-shadow: 0 0 8px #ade2ee;
}

.dialog-controls button:active{transform: scale(0.9);}


.dialog-grabber{
  --cut: 12px;
  --space:10px;  /* space between ends parts */
  --height:24px;
  position:relative;
  background:rgba(2,30,44,0.9);
  color: #dde8ed;
  cursor:move;
  user-select:none;
  width:calc(100% - 40px);
  height:var(--height);
  min-height:var(--height);
  font-size:1.1em;
  display:flex;align-items:center;justify-content:center;
  clip-path: polygon(
    0 0,
    var(--cut) var(--height),
    calc(var(--cut) * 2) var(--height),
    var(--cut) 0,
    
    calc(var(--cut) + var(--space)) 0,
    calc(var(--cut)*2 + var(--space)) var(--height),
    calc(var(--cut)*3 + var(--space)) var(--height),
    calc(var(--cut)*2 + var(--space)) 0,
    
    calc(var(--cut)*2 + var(--space)*2) 0,            /* 9 */
    calc(var(--cut)*3 + var(--space)*2) var(--height),   /* 10 */
    calc(100% - (var(--cut)*3 + var(--space)*2)) var(--height),
    calc(100% - (var(--cut)*2 + var(--space)*2)) 0,
    
    calc(100% - (var(--cut)*2 + var(--space))) 0,   /* 13 */
    calc(100% - (var(--cut)*3 + var(--space))) var(--height),
    calc(100% - (var(--cut)*2 + var(--space))) var(--height),
    calc(100% - (var(--cut) + var(--space))) 0,
    
    calc(100% - var(--cut)) 0,   /* 17 */
    calc(100% - (var(--cut) * 2)) var(--height),
    calc(100% - var(--cut)) var(--height),
    100% 0
    
  );
 
}

/* shrink header more if controls present */
.dialog-ui:has(.dialog-controls) .dialog-grabber{width:calc(100% - 160px);}


.dialog-grabber::before {
  display:block;
  position:absolute;
  pointer-events:none;
  top:0;left:0;
  content:"";
  height:1px;
  width: 100%;
  border:0;
  margin: 0 0;
  background: linear-gradient(to right, transparent, #a9d9e0, transparent);
}



table{border-collapse:collapse;width:100%;}
table tbody tr:nth-child(odd){background:rgba(169,217,224,0.1)}
td, th{padding:3px 5px}
table td:first-child, th:first-child{padding-left:10px;}
td:nth-child(3), th:nth-child(3), {text-align:right}




input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #1a556c;
  background: rgba(10,42,51,0.7);
  cursor: pointer;
  position: relative;
  transition:all 0.4s ease;
}



input[type="radio"]:checked::after {
  content: "";
  position: absolute;
  inset: 0px;
  background: #1a556c;
  transform: scale(0.8);
  border-radius: 50%;
}


h1 {
  position: relative;
  background-image:linear-gradient(to bottom, #d5f8fb, #a3d8f1);
  background-clip: text;
  color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  
}

h1::before { /* drop shadow */
  content: attr(data-text);
  position: absolute;
  inset: 0;
  z-index: -1;
  text-shadow: 0 0 7px rgba(40,183,204, 0.7);
 
}

hr {
  width: 90%;
  height:2px;
  min-height:2px;
  border:0;
  margin: 0 0;
  margin-bottom:10px;
  background: linear-gradient(to right, transparent, #a9d9e0, transparent);
}


.matchSize{max-width: 100%; height: auto}



.draggable {
    position: absolute;
    cursor1: grab;
}

.draggable:active {
    cursor1: grabbing;
}




/* Target any scrollable element */
.scrollable {
  overflow: auto;
}

/* Whole scrollbar */
.scrollable::-webkit-scrollbar {
  width: 8px;              /* vertical */
  height: 8px;             /* horizontal */
}

/* Track (background) */
.scrollable::-webkit-scrollbar-track {
  background: #041119;
  background:transparent;
}

/* Thumb (draggable part) */
.scrollable::-webkit-scrollbar-thumb {
  background: #497d82;
  border-radius: 3px;
  box-shadow:0 0 7px 1px black;
}

/* Thumb hover */
.scrollable::-webkit-scrollbar-thumb:hover {
  background: #46959c;
}