:root {
	/* auto font-size */
	--text-scale-ratio: 1.25;
    --text-xs: calc((var(--text-md) / var(--text-scale-ratio)) / var(--text-scale-ratio));
    --text-sm: calc(var(--text-md) / var(--text-scale-ratio));
    --text-md: clamp(1.125rem, 0.765vw + 0.847rem, 1.5rem);
    --text-lg: calc(var(--text-md) * var(--text-scale-ratio));
    --text-xl: calc(var(--text-lg) * var(--text-scale-ratio));
    --text-xxl: calc(var(--text-xl) * var(--text-scale-ratio));
    --text-xxxl: calc(var(--text-xxl) * var(--text-scale-ratio));
    /* --text-xxxxl: calc(var(--text-xxxl) * var(--text-scale-ratio));    */
	
	/* auto spaces */
	/* --space-unit: 1rem; */
	/* --space-xxxxs: calc(0.1875 * var(--space-unit)); */
    /* --space-xxxs: calc(0.375 * var(--space-unit)); */
    /* --space-xxxl: calc(13.25 * var(--space-unit));  */
    /* --space-xxxxl: calc(21.5 * var(--space-unit));  */
	
	/* element radius, shadow and simple animation */
	--radius: 8px; /* 8 px */
	--radius-sm: calc(var(--radius, 0.25em)/2);
    --radius-md: var(--radius, 0.25em);
    --radius-lg: calc(var(--radius, 0.25em)*2);
    --shadow-xs: 0 0.1px 0.3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.12);
    --shadow-sm: 0 0.3px 0.4px rgba(0, 0, 0, 0.025), 0 0.9px 1.5px rgba(0, 0, 0, 0.05), 0 3.5px 6px rgba(0, 0, 0, 0.1);
    --shadow-md: 0 0.9px 1.5px rgba(0, 0, 0, 0.03), 0 3.1px 5.5px rgba(0, 0, 0, 0.08), 0 14px 25px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 1.2px 1.9px -1px rgba(0, 0, 0, 0.014), 0 3.3px 5.3px -1px rgba(0, 0, 0, 0.038), 0 8.5px 12.7px -1px rgba(0, 0, 0, 0.085), 0 30px 42px -1px rgba(0, 0, 0, 0.15);
    --shadow-xl: 0 1.5px 2.1px -6px rgba(0, 0, 0, 0.012), 0 3.6px 5.2px -6px rgba(0, 0, 0, 0.035), 0 7.3px 10.6px -6px rgba(0, 0, 0, 0.07), 0 16.2px 21.9px -6px rgba(0, 0, 0, 0.117), 0 46px 60px -6px rgba(0, 0, 0, 0.2);
    /* --ease-in-out: cubic-bezier(0.645, 0.045, 0.355, 1);
    --ease-in: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    --ease-out: cubic-bezier(0.215, 0.61, 0.355, 1);
    --ease-out-back: cubic-bezier(0.34, 1.56, 0.64, 1);	*/
	
	/* icon sizes */
    /*--icon-xxxs: 8px;
    --icon-xxs: 12px; */
    --icon-xs: 16px;
    --icon-sm: 24px;
    --icon-md: 32px;
    --icon-lg: 48px;
    --icon-xl: 64px;
    /* --icon-xxl: 96px;
    --icon-xxxl: 128px;	*/
	
}

.be_table, .plant_list {
    border-collapse: collapse;
    line-height: 1em;
}

.be_table td:first-child,
.be_table th:first-child {
  padding-left: 15px;
}

.be_table td:last-child,
.be_table th:last-child {
  padding-right: 15px;
}

.plant_list tr:nth-child(odd) {
  background-color: #EBF6FF;
}

.plant_list td {
    height: 25px;
    padding-left: 15px;
}

.be_table td {
    height: 40px;
    padding-left: 15px;
}

.be_table thead {
    background-color: white;
    line-height: 1.1em;
    height: 49px;
    border-top: 1px solid #c7c7c7;
    border-bottom: 1px solid #c7c7c7;
}

.be_table tbody tr:nth-child(odd) {
  background-color: #EBF6FF;
}

.be_table tbody tr:nth-child(even) {
  background-color: var(--bricks-color-tdmijq);
}

/* icon spacing */
.tabulate {
    margin: 0 10px;
    color: #444444;
}
/* table related classes */
.center {
    text-align: center;
}
.right {
    padding-right: 15px;
    text-align: right;
}

.td20 th {
    width: 20%;
}

/* font related */
.ptsn {
    font-family: "PT Sans Narrow";
}

.pts {
    font-family: "PT Sans";
}

.milestone {
    font-size: 12px;
}

[data-tooltip] {
    position: relative;
    cursor: pointer;
}
[data-tooltip]::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 125%; /* adjust position */
    left: 50%;
    transform: translateX(-50%);
    background: #14529a;
    color: #fff;
    padding: 6px 10px;
    border-radius: 4px;
    white-space: nowrap;
    font-size: 14px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s;
    z-index: 100;
}
[data-tooltip]:hover::after {
    opacity: 1;
}