@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700&family=Roboto:wght@400;500;700&display=swap'); *{ box-sizing: border-box; padding: 0; margin: 0; font-family: 'Roboto', sans-serif; } :root{ scroll-behavior: smooth; } body{ --accent-color: #303F9F; --text-color: 17, 17, 17; --foreground-color: 255, 255, 255; background: rgba(var(--foreground-color), 1); color: rgba(var(--text-color), 1); font-size: 16px; } body[data-theme="dark"]{ --accent-color: #4a5cd3; --foreground-color: 20, 20, 20; --text-color: 238, 238, 238; } h1, h2, h3, h4, h5{ font-family: 'Poppins', sans-serif; text-transform: capitalize; } h1{ font-size: 3rem; } h2{ font-size: 2rem; } h3{ font-size: 1.5rem; } h4{ font-size: 1rem; } h5{ font-size: 0.8rem; } p{ margin: 1.5rem 0; line-height: 1.7; color: rgba(var(--text-color), 0.8); } .hide{ opacity: 0; pointer-events: none; } .hide-completely{ display: none !important; } .no-transformations{ transform: none !important; } .icon{ height: 1.2rem; width: 1.2rem; fill: none; stroke: rgba(var(--text-color), 0.8); stroke-width: 6; overflow: visible; stroke-linecap: round; stroke-linejoin: round; } #navbar{ display: flex; flex-direction: column; align-items: center; position: fixed; left: 0; bottom: 0; top: 0; box-shadow: 0.2rem 0 0.5rem rgba(0, 0, 0, 0.1); z-index: 3; padding: 1rem 0; background: rgba(var(--foreground-color), 1); border-right: solid 1px rgba(var(--text-color), 0.16); transform: translateX(-100%); transition: transform 0.3s; .navbar-item{ display: flex; position: relative; text-align: center; cursor: pointer; padding: 0.6rem 1.5rem; padding-right: 3rem; border-radius: 0.4em; color: rgba(var(--text-color), 0.8); font-size: 0.9em; text-transform: uppercase; width: 100%; -webkit-tap-highlight-color: transparent; .icon{ margin-right: 1rem; } h4{ text-transform: capitalize; font-weight: 600; } } .active{ color: var(--accent-color); .icon{ stroke: var(--accent-color); } } } #logo{ display: grid; align-items: center; width: 100%; grid-template-columns: auto 1fr; gap: 0.6rem 0.6rem; margin-right: 1rem; padding: 0.6rem 2rem; margin-bottom: 1rem; h4{ text-transform: capitalize; font-size: 1.2rem; font-weight: 600; } h5{ font-family: 'Roboto', sans-serif; font-weight: 400; } #main_logo{ height: 1.4rem; width: 1.4rem; fill: rgba(var(--text-color), 1); stroke: none; } } .toggle{ margin-top: auto; position: relative; cursor: pointer; padding: 0; input[type='checkbox']{ display: none; } .switch{ overflow: hidden; display: inline-flex; flex-direction: column; justify-items: center; padding: 0.2rem; min-height: 1.6rem; max-height: 1.6rem; border-radius: 0.5rem; position: relative; margin: 0; margin-right: 1rem; } .circle{ border-radius: 0.5rem; transition: transform 0.3s; &:first-of-type{ margin-bottom: 0.4rem; } fill: rgba(var(--text-color), 0.8); overflow: visible; stroke-linecap: round; stroke-linejoin: round; height: 1.2rem; width: 1.2rem; line{ stroke: rgba(var(--text-color), 0.8); stroke-width: 6; } } input:checked ~ .switch .circle{ transform: translateY(-1.7rem); } } .page{ padding: 2rem 1.5rem; max-height: 100%; overflow-y: auto; } .options-tab{ display: flex; margin-top: 1rem; margin-bottom: 1rem; flex-wrap: wrap; .option{ display: inline-flex; flex-direction: column; border-radius: 0.4rem; padding: 1.5rem; margin-right: 1rem; margin-bottom: 1rem; width: 9rem; border: solid 1px rgba(var(--text-color), 0.2); text-transform: capitalize; cursor: pointer; -webkit-tap-highlight-color: transparent; .icon{ background: rgba(var(--text-color), 0.1); height: 2.8rem; width: 2.8rem; padding: 0.8rem; border-radius: 2rem; margin-bottom: 1rem; stroke: rgba(var(--text-color), 0.4); } h4{ font-weight: 400; font-size: 0.9rem; } } } #home_page{ h1{ font-weight: 600; } p{ margin-bottom: 3rem; } h2{ margin-bottom: 1rem; } } @media screen and (max-width: 640px){ #main_header{ position: sticky; top: 0; padding: 1.5rem; .icon{ stroke-width: 12; height: 3rem; width: 3rem; background: rgba(var(--foreground-color), 1); border-radius: 2rem; padding: 1rem; box-shadow: 0 0.1rem 0.2rem rgba(0, 0, 0, 0.16), 0 0.4rem 0.8rem rgba(0, 0, 0, 0.16); } } } @media only screen and (min-width: 640px){ main{ display: grid; grid-template-columns: auto 1fr; gap: 2rem; height: 100vh; overflow-y: auto; } p{ max-width: 40rem; } #navbar{ position: relative; transform: none; height: 100%; } #main_header{ display: none; } } @media (hover: hover){ .navbar-item:hover{ background: rgba(var(--text-color), 0.1); } }