@font-face { font-family: 'Nunito'; src: URL('Nunito-Regular.ttf') format('truetype'); } :root { --main-bg-color: rgb(20, 20, 20); --text-color: rgb(240, 240, 245); --icon-button-size: 2rem; --press-scale: scale(0.92); --light-border-color: rgba(255, 255, 255, 0.08); --button-margin: 0.4rem; --icon-button-height: 3.4rem; --button-height: 2.4rem; --border-width: 0.09rem } html { font-size: max(16px, calc(100vw / 120)); } body { background-color: var(--main-bg-color); display: flex; height: 100dvh; overflow: hidden; } * { font-size: 1rem; scrollbar-width: none; box-sizing: border-box; margin: 0; padding: 0; transition: all 0.2s ease; color: var(--text-color); font-family: "Nunito", sans-serif; -webkit-tap-highlight-color: transparent; } button, input { border-radius: 0.8rem; background-color: rgba(255, 255, 255, 0.05); margin: var(--button-margin); padding: var(--button-margin); height: var(--button-height); display: flex; cursor: pointer; align-items: center; justify-content: flex-start; border: var(--border-width) solid var(--light-border-color); } indicator { content: ""; position: absolute; width: 0; height: 0; left: -0.08rem; border: 0.15rem solid transparent; border-radius: 0.8rem; transform: translateY(calc( ( var(--icon-button-height) + (var(--button-margin) * 2) ) / 2 - 0.25rem)); } indicator.notification { content: ""; position: absolute; width: 0; height: 0.5rem; left: -0.08rem; border: 0.15rem solid var(--text-color); border-radius: 0.8rem; transform: translateY(calc( ( var(--icon-button-height) + (var(--button-margin) * 2) ) / 2 - 0.25rem)); } indicator.hover { content: ""; position: absolute; width: 0; height: 1.2rem; left: -0.08rem; border: 0.15rem solid var(--text-color); border-radius: 0.8rem; transform: translateY(calc( ( var(--icon-button-height) + (var(--button-margin) * 2) ) / 2 - 0.6rem)); } indicator.active { content: ""; position: absolute; width: 0; height: 2rem; left: -0.08rem; border: 0.15rem solid var(--text-color); border-radius: 0.8rem; transform: translateY(calc( ( var(--icon-button-height) + (var(--button-margin) * 2) ) / 2 - 1rem)); } .icon-button { height: var(--icon-button-height); width: var(--icon-button-height); justify-content: center; } .icon-button svg { width: var(--icon-button-size); height: var(--icon-button-size); } button:hover, input:hover { background-color: rgba(255, 255, 255, 0.1); } button:active, input:active { transform: var(--press-scale); } roomcontent { display: flex; flex-direction: column; height: 100dvh; width: calc(100vw - (var(--icon-button-height) + (var(--button-margin) * 2) + var(--border-width)) - 22rem); border-right: var(--border-width) solid var(--light-border-color); } sidebar { display: flex; flex-direction: column; height: 100dvh; width: calc(var(--icon-button-height) + (var(--button-margin) * 2) + var(--border-width)); border-right: var(--border-width) solid var(--light-border-color); } sidebar.second { width: 22rem; } .collapse-text-button { padding-left: calc(var(--button-margin) + 0.2rem); flex-shrink: 0; border: none; background-color: transparent; height: 2rem; font-weight: 600; } .collapse-text-button .chevron { width: 1.25rem; height: 1.25rem; } .collapse-text-button.collapsed .chevron { transform: rotate(-90deg); } hr { border: none; height: 0; background-color: transparent; border-bottom: var(--border-width) solid var(--light-border-color); width: 60%; margin-left: 20%; }