UNPKG

@telekom/scale-components

Version:

Scale is the digital design system for Telekom products and experiences.

164 lines (145 loc) 4.7 kB
/** * @license * Scale https://github.com/telekom/scale * * Copyright (c) 2021 Egor Kirpichev and contributors, Deutsche Telekom AG * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ :host { --_max-width-container: none; --_spacing-x-container: var(--telekom-spacing-composition-space-06); --_nav-items-bottom-margin: var(--telekom-spacing-composition-space-08); --_nav-items-spacing: var(--telekom-spacing-composition-space-05); --_logo-top-margin: var(--telekom-spacing-composition-space-12); --_logo-bottom-margin: var(--telekom-spacing-composition-space-12); --_font-color: var(--telekom-color-text-and-icon-white-standard); --_font-size: var(--telekom-typography-font-size-caption); --focus-outline: var(--telekom-line-weight-highlight) solid var(--telekom-color-functional-focus-standard); --_display-logo: flex; --_navigation-container-padding: 0 0 0 0; } footer { width: 100%; background-color: var(--background-footer); display: flex; justify-content: center; flex-direction: column; padding-bottom: var(--_nav-items-bottom-margin); align-items: center; } [part~='base'] { height: 100%; max-width: var(--_max-width-container); padding-left: var(--_spacing-x-container); padding-right: var(--_spacing-x-container); position: relative; display: flex; flex: 1; flex-direction: column; width: -moz-available; width: -webkit-fill-available; width: fill-available; } [part~='logo'] { display: var(--_display-logo); justify-content: center; height: 100%; width: 100%; margin-top: var(--_logo-top-margin); margin-bottom: var(--_logo-bottom-margin); } [part~='body'] { display: flex; flex-direction: column; width: 100%; padding: var(--_navigation-container-padding); margin: 0; bottom: 0; } [part~='notice'] { color: var(--_font-color); display: flex; flex: 1 0 auto; margin-bottom: var(--telekom-spacing-composition-space-07); font-size: var(--_font-size); line-height: 140%; margin-right: var(--telekom-spacing-composition-space-07); } /* todo: should i use spacing token for logo size? */ [part~='app-logo'] { --logo-size: var(--telekom-spacing-composition-space-11); } /* Leave this just in case? */ .scale-icon { height: 16px; width: 16px; margin-right: 9px; } @media screen and (min-width: 640px) { :host { --_logo-top-margin: var(--telekom-spacing-composition-space-10); --_logo-bottom-margin: var(--telekom-spacing-composition-space-14); --_nav-items-spacing: var(--telekom-spacing-composition-space-06); } [part~='body'] { flex-direction: column; } [part~='navigation'] ul { list-style: none; display: flex; flex-direction: row; align-items: center; } [part~='notice'] { margin-bottom: var(--telekom-spacing-composition-space-04); } } @media screen and (min-width: 1040px) { :host { --_logo-top-margin: var(--telekom-spacing-composition-space-14); --_logo-bottom-margin: var(--telekom-spacing-composition-space-18); --_nav-items-spacing: var(--telekom-spacing-composition-space-08); --_slim-padding: var(--telekom-spacing-composition-space-08); --_font-size: var(--telekom-typography-font-size-body); --_spacing-x-container: var(--telekom-spacing-composition-space-08); } [part~='body'] { flex-direction: row; } /* todo: should i use spacing token for logo size? */ :host [part~='app-logo'] { --logo-size: var(--telekom-spacing-composition-space-13); } :host [part~='notice'] { margin-bottom: 0; } } @media screen and (min-width: 1296px) { :host { --_logo-top-margin: var(--telekom-spacing-composition-space-16); --_logo-bottom-margin: var(--telekom-spacing-composition-space-19); --_nav-items-bottom-margin: var(--telekom-spacing-composition-space-10); --_nav-items-spacing: var(--telekom-spacing-composition-space-14); --_slim-padding: var(--telekom-spacing-composition-space-10); } /* todo: should i use spacing token for logo size? */ :host [part~='app-logo'] { --logo-size: var(--telekom-spacing-composition-space-14); } } @media screen and (min-width: 1680px) { :host { --_max-width-container: var(--scl-grid-max-width, 1504px); --_logo-top-margin: var(--telekom-spacing-composition-space-18); /* too bad spacing tokens don't go beyond 5 rem */ --_logo-bottom-margin: 96px; } /* todo: should i use spacing token for logo size? */ :host [part~='app-logo'] { --logo-size: var(--telekom-spacing-composition-space-16); } }