flex-template-web/src/components/TopbarDesktop/TopbarDesktop.css
Janne Koivistoinen 09251a5ed2 comment fixes
2017-07-19 15:07:46 +03:00

243 lines
4 KiB
CSS

@import '../../marketplace.css';
:root {
/* Compose text label items on top of this */
/* This stretches inline element (link) to take available vertical space (big hover area),
* and align baselines
*/
--topbarDesktopLabelStyles: {
display: inline-block;
margin: 24px 0;
text-decoration: inherit;
@media (--desktopViewport) {
margin: 24px 0;
}
}
--linkHoverState: {
border-bottom: 0px solid;
transition: var(--transitionStyleButton);
&:hover {
border-bottom: 4px solid var(--marketplaceColor);
text-decoration: none;
}
}
}
/* Desktop */
.root {
/* Size */
width: 100%;
height: var(--topbarHeightDesktop);
/* Layout for child components */
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: flex-start;
padding: 0 12px 0 0;
/* fill */
background-color: var(--matterColorLight);
/* shadows */
box-shadow: var(--boxShadowLight);
@media (min-width: 1024px) {
padding: 0 24px 0 0;
}
}
/* logo */
.logoLink {
@apply --linkHoverState;
flex-shrink: 0;
padding: 21px 24px 21px 24px;
height: 100%;
@media (min-width: 1024px) {
padding: 21px 36px 21px 36px;
}
}
.logo {
width: 155px;
height: 27px;
}
/* Search */
.searchLink {
flex-grow: 1;
height: 100%;
margin-right: 24px;
border-left-style: solid;
border-left-width: 1px;
border-left-color: var(--matterColorNegative);
@media (min-width: 1024px) {
padding-left: 0;
}
}
.search {
@apply --marketplaceH4FontStyles;
@apply --topbarDesktopLabelStyles;
color: var(--matterColor);
}
.topbarSearchWithLeftPadding {
padding-left: 24px;
height: var(--topbarHeightDesktop);
@media (min-width: 1024px) {
padding-left: 34px;
}
}
/* Create listing (CTA for providers) */
.createListingLink {
@apply --linkHoverState;
@apply --marketplaceH4FontStyles;
flex-shrink: 0;
height: 100%;
padding: 0 12px 0 12px;
color: var(--marketplaceColor);
margin-top: 0;
margin-bottom: 0;
&:hover {
color: var(--marketplaceColorDark);
}
@media (--desktopViewport) {
margin-top: 0;
margin-bottom: 0;
}
}
.createListing {
@apply --topbarDesktopLabelStyles;
}
/* Inbox */
.inboxLink {
@apply --linkHoverState;
@apply --marketplaceH4FontStyles;
height: 100%;
padding: 0 12px 0 12px;
margin-top: 0;
margin-bottom: 0;
color: var(--matterColor);
&:hover {
color: var(--matterColorDark);
}
@media (--desktopViewport) {
margin-top: 0;
margin-bottom: 0;
}
}
.inbox {
@apply --topbarDesktopLabelStyles;
position: relative;
}
.notificationDot {
/* Dimensions */
width: 7px;
height: 7px;
border-radius: 50%;
/* Position */
position: absolute;
top: 3px;
right: -9px;
/* Style: red dot */
background-color: var(--failColor);
}
/* Profile menu */
.profileMenuLabel {
@apply --linkHoverState;
flex-shrink: 0;
display: flex;
align-items: center;
height: 100%;
margin: 0;
padding: 0 12px 0 12px;
&:active {
border-bottom: 0;
}
}
.avatar {
margin: 16px 0;
width: 41px;
height: 41px;
}
.profileMenuContent {
min-width: 276px;
}
/* Authentication */
.signupLink {
@apply --linkHoverState;
flex-shrink: 0;
height: 100%;
padding: 0 12px 0 12px;
color: var(--matterColor);
&:hover {
color: var(--matterColorDark);
}
}
.loginLink {
@apply --linkHoverState;
flex-shrink: 0;
height: 100%;
padding: 0 12px 0 12px;
color: var(--matterColor);
&:hover {
color: var(--matterColorDark);
}
}
.signup,
.login {
@apply --marketplaceH4FontStyles;
@apply --topbarDesktopLabelStyles;
}
.logoutButton {
@apply --marketplaceH4FontStyles;
width: 100%;
min-width: 276px;
margin: 0;
padding: 20px 24px;
color: var(--matterColor);
text-align: left;
white-space: nowrap;
transition: var(--transitionStyleButton);
&:hover {
color: var(--matterColorDark);
text-decoration: none;
border-left: 6px solid var(--marketplaceColor);
}
@media (--desktopViewport) {
margin: 0;
}
}