@use 'rose/variables/sizing'; @use 'rose/variables/media'; @use 'rose/utilities/type'; @import 'rose'; @import 'notify'; .rose-layout-centered { > .rose-layout-page { width: sizing.rems(l) * 18; } @media (max-width: media.width(small)) { display: block; > .rose-layout-page { width: auto; } } } /** * This section enables scrolling within the sidebar columns separately, * rather than the whole viewport. This ensures the sidebar and application * header remain visible when scrolling. */ .rose-layout-global { max-height: 100vh; .rose-layout-global-body { max-height: 100vh; overflow: auto; main { flex-grow: 1; overflow: auto; } } .rose-layout-sidebar-sidebar, .rose-layout-sidebar-body { overflow-y: scroll; } &.layout-scroll { .rose-layout-global-body { overflow-y: auto; main { overflow: unset; } } .rose-layout-sidebar-sidebar, .rose-layout-sidebar-body { overflow-y: unset; } } } .rose-nav-sidebar { margin-top: sizing.rems(xxl); + .rose-nav-sidebar { margin-top: 0; } .rose-icon { margin-right: sizing.rems(xs); } } .rose-form { &:not(.full-width) { width: 66%; } .rose-form-input { width: 100%; .rose-form-input-field { width: 100%; } } .rose-dropdown { $icon-width: sizing.rems(m) + sizing.rems(s); $indent: $icon-width + sizing.rems(xs); .rose-form-radio-label { display: flex; .rose-icon { padding-right: sizing.rems(xxs); } } .indent-label-1 { .rose-form-radio-label { padding-left: $indent; } } .indent-label-2 { .rose-form-radio-label { padding-left: $indent + $icon-width; } } .is-project { .rose-icon { visibility: hidden; } } } fieldset { margin-bottom: sizing.rems(m); legend { @extend .rose-form-label; } } } .rose-table { p { margin-bottom: 0; } .rose-form-checkbox { margin-bottom: 0; .rose-form-checkbox-label-text { color: var(--stark); text-decoration: underline; } } } .rose-header { -webkit-app-region: drag; min-height: sizing.rems(l) * 2; position: relative; -webkit-user-select: none; .rose-header-brand, .rose-header-nav, .rose-header-utilities .rose-dropdown, .rose-header-utilities button { -webkit-app-region: no-drag; } &.header-cushion { padding-left: sizing.rems(l) * 3; } .button-window-minimize, .button-window-fullscreen, .button-window-close { background: transparent; border: transparent; color: var(--white); margin: sizing.rems(xs); } .logotype { display: none; } .rose-dropdown { .rose-icon { transform: scale(0.7); } } &.loading { &::after { animation: gradient 1s linear infinite; background: repeating-linear-gradient( to right, var(--subtle), var(--subtle), var(--info), var(--subtle), var(--subtle) ); background-position: -100% 0; background-size: 200% auto; content: ' '; height: 3px; left: 0; position: absolute; right: 0; top: 100%; @keyframes gradient { 0% { background-position: -100% 0; } 100% { background-position: -200% 0; } } } } } .copyable { white-space: nowrap; .copyable-button { margin: 0; padding: 0 sizing.rems(xxs); top: -2px; } mark { animation: fadeBackground 0.75s linear; background-color: transparent; color: inherit; @keyframes fadeBackground { 0% { background-color: var(--action-subtler-1); } 100% { background-color: transparent; } } } } .doc-link { .large { svg { transform: scale(0.8); } } } [class*='session-status-'] { color: var(--ui-gray-subtler-2); } .session-status-active { color: var(--success); } .nowrap { white-space: nowrap; } .branded-card { border: 1px solid var(--ui-border-subtler-1); border-radius: sizing.rems(xxxs); margin: 0 auto; margin-top: sizing.rems(l) * 1.25; padding: (sizing.rems(l) * 4) (sizing.rems(l) * 3) (sizing.rems(l) * 2) (sizing.rems(l) * 3); position: relative; width: sizing.rems(l) * 16; &::before { background-color: var(--black); background-image: url('/brand-background.svg'); background-position: right; background-repeat: no-repeat; border-top-left-radius: sizing.rems(xxxs); border-top-right-radius: sizing.rems(xxxs); content: ' '; height: sizing.rems(l) * 3.25; left: 0; position: absolute; right: 0; top: 0; } &::after { background-image: url('/logo-app-full.svg'); background-position: (sizing.rems(l) * 2.5) 50%; background-repeat: no-repeat; background-size: sizing.rems(l) * 8; content: ' '; height: sizing.rems(l) * 3.25; left: 0; position: absolute; right: 0; top: 0; } .branded-card-title { margin-bottom: 0; } .branded-card-description { margin-bottom: sizing.rems(l); } .rose-form-actions { .rose-button-primary { display: block; margin: 0; width: 100%; .rose-button-wrapper { display: inline; } } } } @media (max-width: media.width(medium)) { .branded-card { max-width: 100%; width: auto; } } .change-origin { @include type.type(s); color: var(--ui-border-starker-1); margin: sizing.rems(l) 0 0 0; text-align: center; } // Dialog Detail // These styles are a Work In Progress. Expect changes (lots of them) .dialog-detail { .rose-notification { border-left: 0; border-right: 0; border-top: 0; box-shadow: none; margin-bottom: 0; } .rose-dialog-body { > :first-child { margin-top: 0; padding-top: 0; } } .rose-dialog-footer { align-items: center; div:nth-child(1) { display: flex; justify-content: flex-start; width: 50%; } div:nth-child(2) { display: flex; justify-content: flex-end; width: 50%; } } } // Card component (app/componetns/card) .card { border: sizing.rems(xxxxs) solid var(--ui-gray-subtler-3); display: flex; flex-direction: column; margin-bottom: sizing.rems(m); .card-header { align-items: center; border-bottom: sizing.rems(xxxxs) solid var(--ui-gray-subtler-3); display: flex; justify-content: flex-start; padding: sizing.rems(s) sizing.rems(m); h2 { @include type.type(s, normal); color: var(--ui-gray-starker-1); margin: 0; padding: sizing.rems(xxs) + sizing.rems(xxxs) 0; } .rose-icon { margin-right: sizing.rems(xxxs); } } .card-body { padding: sizing.rems(s); } .card-footer { border-top: sizing.rems(xxxxs) solid var(--ui-gray-subtler-3); padding: sizing.rems(s); } }