@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; } }