/* base structure definition */
.smacra-structure-tree {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.smacra-structure-tree .clickable {
	cursor: pointer;
}
.smacra-structure-tree .clickable:hover {
	text-decoration: underline;
	color: var(--theme-color-link);
}
.smacra-structure-tree .with-image {
	box-shadow: 0 0 2px 2px var(--structure-element-with-image);
}
.smacra-structure-tree .badge {
	background: var(--theme-color-background-darker2);
	border-radius: 58px;
	margin: 3px;
	color: var(--text-color-on-light);
	line-height: 1.1;
}

.smacra-structure-tree .building-head {
	margin: 3px;
	width: calc(100% - 6px)
}
.smacra-structure-tree .building-head.highlighted {
	filter: invert();
}
.smacra-structure-tree .building-select {
	font-size: 14px;
	padding-left: 5px;
}

.smacra-structure-tree .floors {}
.smacra-structure-tree .floors .floor {
	margin: 3px;
	border-radius: 5px;
	background-color: var(--structure-element-floor-secondary);
}
.smacra-structure-tree .floors .floor .floor-head {
	padding: 2px 5px;
	border-radius: 5px;
	background-color: var(--structure-element-floor);
}
.smacra-structure-tree .floors .floor .floor-head.highlighted {
	filter: invert();
}
.smacra-structure-tree .floors .floor.addition {
	background-color: unset;
}

.smacra-structure-tree .exterior_views {}
.smacra-structure-tree .exterior_views .exterior_view {
	margin: 3px;
	border-radius: 5px;
	background-color: var(--structure-element-floor);
}
.smacra-structure-tree .exterior_views .exterior_view .exterior-view-head {
	padding: 2px 5px;
	border-radius: 5px;
	background-color: var(--structure-element-exterior);
}
.smacra-structure-tree .exterior_views .exterior_view .exterior-view-head.highlighted {
	filter: invert();
}
.smacra-structure-tree .exterior_views .exterior_view.addition {
	background-color: unset;
}

.smacra-structure-tree .rooms {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.smacra-structure-tree .rooms .room {
	border-radius: 5px;
	background-color: var(--structure-element-room-secondary);
	margin: 3px;
	width: calc(33.33333% - 6px);
}
.smacra-structure-tree .rooms .room .room-head {
	padding: 2px 5px;
	border-radius: 5px;
	background-color: var(--structure-element-room);
}
.smacra-structure-tree .rooms .room .room-head.highlighted {
	filter: invert();
}

.smacra-structure-tree .exterior_view .areas {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.smacra-structure-tree .exterior_view .areas .area {
	margin: 3px;
	min-width: calc(10% - 6px);
	width: fit-content;
	position: relative;
}

.smacra-structure-tree .room .sub-room-structures {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.smacra-structure-tree .room .sub-room-structures .sub-room-structure {
	margin: 3px;
	min-width: calc(25% - 8px);
	width: fit-content;
	position: relative;
}

.smacra-structure-tree .area {
	border-radius: 5px;
	background-color: var(--structure-element-area-secondary);
}
.smacra-structure-tree .area img {
	padding: 2px;
	width: 35px;
	height: 35px;
}
.smacra-structure-tree .area .area-head {
	font-size: 12px;
	width: 100%;
	margin: 3px;
	border-radius: 5px;
	background-color: var(--structure-element-area);
	display: flex;
	flex-direction: column;
	align-items: center;
	cursor: pointer;
}
.smacra-structure-tree .area .area-head.highlighted {
	filter: invert();
}
.smacra-structure-tree .area .area-head:hover {
	background-color: var(--structure-element-area-secondary);
}

.smacra-structure-tree .building-part {
	border-radius: 5px;
	background-color: var(--structure-element-building-part-secondary);
}
.smacra-structure-tree .building-part .building-part-head {
	font-size: 12px;
	width: 100%;
	margin: 3px;
	border-radius: 5px;
	background-color: var(--structure-element-building-part);
	display: flex;
	flex-direction: column;
	align-items: center;
	cursor: pointer;
}
.smacra-structure-tree .building-part .building-part-head-icon {
	font-size: 2.5ch;
}
.smacra-structure-tree .building-part .building-part-head.highlighted {
	filter: invert();
}
.smacra-structure-tree .building-part .building-part-head:hover {
	background-color: var(--structure-element-building-part-secondary);
}

.smacra-structure-tree .sub-room-structure .Installation-indicator,
.smacra-structure-tree .exterior_view .Installation-indicator {
	position: absolute;
	bottom: 0;
	background-color: var(--structure-element-part-primary);
	color: var(--text-color-on-dark);
	width: 100%;
	text-align: center;
	font-size: 9px;
	line-height: 10px;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	cursor: help;
}

.smacra-structure-tree .sub-room-structure.addition {
	display: flex;
	align-items: center;
	cursor: pointer;
	justify-content: center;
}
.smacra-structure-tree .sub-room-structure.addition:hover {
	background-color: var(--structure-element-area-secondary);
}

/* mini definition */
.smacra-structure-tree .rooms.mini {
	padding-left: 5px;
}
.smacra-structure-tree .rooms.mini .room {
	width: calc(100% - 6px);
}
.smacra-structure-tree .room .areas.mini {
	padding-left: 5px;
}
.smacra-structure-tree .room .areas.mini .area {
	margin: 2px;
	min-width: calc(12.5% - 4px);
	width: fit-content;
}
.smacra-structure-tree .exterior_view .areas.mini {
	padding-left: 5px;
}
.smacra-structure-tree .exterior_view .areas.mini .area {
	margin: 2px;
	min-width: calc((100% / 6) - 4px);
	width: fit-content;
}
.smacra-structure-tree .mini .area img {
	display: none;
}
.smacra-structure-tree .mini .area .Installation-indicator {
	line-height: 0.95;
}
.smacra-structure-tree .mini .building-part .building-part-head-icon {
	display: none;
}
