From 06d0dc1c99611dd06c8c8c4a110892a3218eea19 Mon Sep 17 00:00:00 2001 From: nixa <4dmitr@gmail.com> Date: Mon, 16 May 2016 16:30:56 +0300 Subject: [PATCH] styles refactoring as per 1.x theme update --- .../pages/dashboard/calendar/calendar.scss | 100 ++++++------ src/app/pages/dashboard/feed/feed.scss | 109 +++++++------ .../dashboard/popularApp/popularApp.scss | 35 ++-- src/app/pages/dashboard/todo/todo.scss | 50 +----- .../dashboard/trafficChart/trafficChart.scss | 93 +++++------ .../trafficChart/trafficChart.service.ts | 52 +++--- .../components/leafletMaps/leafletMaps.scss | 21 +-- src/app/pages/ui/components/grid/grid.scss | 13 +- .../components/contentTop/contentTop.scss | 6 +- .../theme/components/msgCenter/msgCenter.scss | 27 ++-- src/app/theme/components/pageTop/pageTop.scss | 26 ++- src/app/theme/components/sidebar/sidebar.scss | 31 +++- src/app/theme/sass/_buttons.scss | 89 ++++------- src/app/theme/sass/_form.scss | 151 +++++++----------- src/app/theme/sass/_layout.scss | 62 ++++--- src/app/theme/sass/_table.scss | 145 +++++++++-------- src/app/theme/sass/_typography.scss | 15 +- .../theme/sass/bootstrap-overrides/_card.scss | 86 ++++------ .../theme/sass/bootstrap-overrides/_tabs.scss | 61 ++++--- src/app/theme/sass/conf/_mixins.scss | 31 ++-- src/app/theme/sass/skins/_02_transparent.scss | 87 +++++----- src/app/theme/theme.constants.ts | 5 +- src/assets/img/app/my-app-logo.png | Bin 11709 -> 10104 bytes 23 files changed, 590 insertions(+), 705 deletions(-) diff --git a/src/app/pages/dashboard/calendar/calendar.scss b/src/app/pages/dashboard/calendar/calendar.scss index 5860cff9..105989f6 100644 --- a/src/app/pages/dashboard/calendar/calendar.scss +++ b/src/app/pages/dashboard/calendar/calendar.scss @@ -1,9 +1,8 @@ @import '../../../theme/sass/conf/conf'; -div.blurCalendar { +div.blurCalendar{ font-size: 12px; } - .fc { direction: ltr; text-align: left; @@ -58,7 +57,7 @@ div.blurCalendar { } th, td { - border: 1px solid; + border: 1px solid rgba(255,255,255,0.3); padding: 0; vertical-align: top; } @@ -97,11 +96,11 @@ div.blurCalendar { .fc-unthemed { th, td, hr, thead, tbody, .fc-row, .fc-popover { - border-color: $border; + border-color: rgba($border, 0.3); } .fc-popover { - background-color: #ffffff; + background-color: $default; border: 1px solid; .fc-header { @@ -120,12 +119,12 @@ div.blurCalendar { } .fc-today { - background: rgba(255, 255, 255, 0.15); + background: rgba(255,255,255,0.15); } } .fc-highlight { - background: rgba(255, 255, 255, 0.25); + background: rgba(255,255,255,0.25); opacity: .3; } @@ -333,7 +332,7 @@ div.blurCalendar { .fc-event, .fc-event:hover, .ui-widget .fc-event { - color: #ffffff; + color: $label-text; text-decoration: none; } @@ -666,7 +665,7 @@ a.fc-more { .fc-bg { z-index: 1; - background: #fff; + background: $default; opacity: .25; filter: alpha(opacity=25); } @@ -720,55 +719,48 @@ a.fc-more { } } -.fc-day-grid-container.fc-scroller { - height: auto !important; +.fc-day-grid-container.fc-scroller { + height: auto!important; } -body.badmin-transparent { +.calendar-panel.panel .panel-body{ + padding: 0; +} - .calendar-panel.card .card-body { - padding: 0; - } +.fc-body > tr > .fc-widget-content{ + border: none; +} - .fc-body > tr > .fc-widget-content { - border: none; +.fc-head{ + color: $label-text; + background-color: $primary; + td, th{ + border:none; } - - .fc-head { - color: $default; - background-color: $primary; - td, th { - border: none; - } - div.fc-widget-header { - padding: 5px 0; - } - } - - .fc td { - border-color: rgba(255, 255, 255, 0.1); - } - - .fc-today-button, .fc-month-button, .fc-agendaWeek-button, .fc-agendaDay-button { - display: none; - } - .blurCalendar { - margin-top: 15px; - } - .fc-prev-button, .fc-next-button { - position: absolute; - background: transparent; - box-shadow: none; - border: none; - color: $default; - } - .fc-next-button { - left: 30px; - } - .fc-prev-button { - } - .fc-day-number { - color: $default; - opacity: 0.9; + div.fc-widget-header{ + padding: 5px 0; } } + +.fc-today-button, .fc-month-button, .fc-agendaWeek-button, .fc-agendaDay-button { + display: none; +} +.blurCalendar{ + margin-top: 15px; +} +.fc-prev-button, .fc-next-button{ + position: absolute; + background: transparent; + box-shadow: none; + border: none; + color: $default-text; +} +.fc-next-button { + left: 30px; +} +.fc-prev-button { +} +.fc-day-number{ + color: $default-text; + opacity: 0.9; +} diff --git a/src/app/pages/dashboard/feed/feed.scss b/src/app/pages/dashboard/feed/feed.scss index bb036726..9c62a112 100644 --- a/src/app/pages/dashboard/feed/feed.scss +++ b/src/app/pages/dashboard/feed/feed.scss @@ -1,25 +1,21 @@ @import '../../../theme/sass/conf/conf'; -.feed-panel .card-body { +.feed-panel .panel-body{ padding: 10px 0; } .feed-message { - $text-message-color: $default; + $text-message-color: $default-text; $video-message-color: $danger; $image-message-color: $success; $geo-message-color: $primary; - padding: 10px 0; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12); + padding: 10px 0 ; + border-bottom: 1px solid rgba(0,0,0,0.12); + box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.12); &:first-child { padding-top: 0; } - .hidden { - display: none!important; - } - .message-icon { cursor: pointer; width: 60px; @@ -86,7 +82,7 @@ border-radius: 5px; margin: 0 0 0 80px; padding: 5px 20px; - color: #fff; + color: $default-text; width: 280px; height: 70px; @@ -142,7 +138,7 @@ padding-top: 10px; width: 100%; height: auto; - float: none !important; + float: none!important; } } @@ -162,58 +158,65 @@ } } -.line-clamp { - display: block; - display: -webkit-box; - -webkit-box-orient: vertical; - position: relative; - line-height: 1.2; - overflow: hidden; - text-overflow: ellipsis; - padding: 0 !important; + +.line-clamp +{ + display : block; + display : -webkit-box; + -webkit-box-orient : vertical; + position : relative; + + line-height : 1.2; + overflow : hidden; + text-overflow : ellipsis; + padding : 0 !important; } -@media screen and (-webkit-min-device-pixel-ratio: 0) { - .line-clamp:after { - content: '...'; - text-align: right; - bottom: 0; - right: 0; - width: 25%; - display: block; - position: absolute; - height: calc(1em * 1.2); +@media screen and (-webkit-min-device-pixel-ratio:0) { + .line-clamp:after + { + content : '...'; + text-align : right; + bottom : 0; + right : 0; + width : 25%; + display : block; + position : absolute; + height : calc(1em * 1.2); } } -@supports (-webkit-line-clamp: 1) { - .line-clamp:after { - display: none !important; + +@supports (-webkit-line-clamp: 1) +{ + .line-clamp:after + { + display : none !important; } } - -.line-clamp-1 { - -webkit-line-clamp: 1; - height: calc(1em * 1.2 * 1); +.line-clamp-1 +{ + -webkit-line-clamp : 1; + height : calc(1em * 1.2 * 1); } - -.line-clamp-2 { - -webkit-line-clamp: 2; - height: calc(1em * 1.2 * 2); +.line-clamp-2 +{ + -webkit-line-clamp : 2; + height : calc(1em * 1.2 * 2); } - -.line-clamp-3 { - -webkit-line-clamp: 3; - height: calc(1em * 1.2 * 3); +.line-clamp-3 +{ + -webkit-line-clamp : 3; + height : calc(1em * 1.2 * 3); } - -.line-clamp-4 { - -webkit-line-clamp: 4; - height: calc(1em * 1.2 * 4); +.line-clamp-4 +{ + -webkit-line-clamp : 4; + height : calc(1em * 1.2 * 4); } - -.line-clamp-5 { - -webkit-line-clamp: 5; - height: calc(1em * 1.2 * 5); +.line-clamp-5 +{ + -webkit-line-clamp : 5; + height : calc(1em * 1.2 * 5); } diff --git a/src/app/pages/dashboard/popularApp/popularApp.scss b/src/app/pages/dashboard/popularApp/popularApp.scss index 9c5e2c2e..241870ff 100644 --- a/src/app/pages/dashboard/popularApp/popularApp.scss +++ b/src/app/pages/dashboard/popularApp/popularApp.scss @@ -1,30 +1,36 @@ @import "../../../theme/sass/conf/conf"; -.card.popular-app { - &>.card-body { +.panel.popular-app { + &>.panel-body { padding: 0; } - .popular-app-img { + .popular-app-img-container { position: relative; - background: rgba(0, 0, 0, 0.5); padding: 30px 0; height: 260px; border-top-right-radius: 5px; border-top-left-radius: 5px; - img { - max-width: 60%; - max-height: 70%; + .popular-app-img { + width: 260px; position: absolute; transform: translateY(-50%) translate(-50%); top: 50%; left: 50%; + + .logo-text { + display: inline-block; + margin: 10px; + font-size: 26px; + color: $default-text; + } } } .popular-app-cost { font-size: 20px; padding: 20px 22px; - border-bottom: 1px solid $border; + border-bottom: 1px solid $border-light; + border-top: 1px solid $border-light; } .popular-app-info { padding: 20px 22px; @@ -42,13 +48,6 @@ } } -body.badmin-transparent { - .popular-app-img { - border-top-right-radius: 5px; - border-top-left-radius: 5px; - } - .popular-app-cost { - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12); - } -} \ No newline at end of file +.blur-theme .panel.popular-app .popular-app-img-container { + background: rgba(0, 0, 0, 0.5); +} diff --git a/src/app/pages/dashboard/todo/todo.scss b/src/app/pages/dashboard/todo/todo.scss index 299da290..52b9d2b5 100644 --- a/src/app/pages/dashboard/todo/todo.scss +++ b/src/app/pages/dashboard/todo/todo.scss @@ -1,6 +1,5 @@ @import '../../../theme/sass/conf/conf'; - input.task-todo { margin-bottom: 8px; } @@ -25,11 +24,11 @@ ul.todo-list { right: 12px; font-size: 32px; transition: color 0.2s; - color: $input-border; + color: rgba($input-border, 0.5); visibility: hidden; line-height: 42px; &:hover { - color: $danger-dark; + color: $input-border; } } &:hover { @@ -40,34 +39,13 @@ ul.todo-list { &.checked { .todo-text { - color: #BFBFBF; + color: $default-text; } &:before { background: $input-border !important; } } - @mixin mark($color) { - i.mark { - background: $color; - } - } - &.primary { - @include mark($primary); - } - &.danger { - @include mark($danger); - } - &.success { - @include mark($success); - } - &.info { - @include mark($info); - } - &.warning { - @include mark($warning); - } - i.mark { display: block; position: absolute; @@ -102,9 +80,6 @@ ul.todo-list { } label.todo-checkbox { - padding-left: 0; - margin-bottom: 0; - width: 100%; padding-right: 25px; min-height: 16px; @@ -124,8 +99,8 @@ label.todo-checkbox { display: none; } -body.badmin-transparent { - .todo-panel.card { +.task-todo-container.transparent { + .todo-panel.panel { color: white; opacity: 0.9; } @@ -175,11 +150,6 @@ body.badmin-transparent { -webkit-filter: blur(3px); } } - &.primary, &.danger,&.success, &.info, &.warning { - i.mark { - background-color: transparent; - } - } i.remove-todo { color: white; opacity: 0.4; @@ -190,12 +160,12 @@ body.badmin-transparent { } i.mark { min-width: 40px; - background-color: transparent; + display: none; } label.todo-checkbox > span { &:before { position: absolute; - color: white; + color: $default-text; content: '\f10c'; float: none; margin-right: 6px; @@ -205,11 +175,7 @@ body.badmin-transparent { &.checked { label.todo-checkbox > span { &:before { - margin-right: 0; - position: absolute; - content: ''; - background-size: contain; - background: url($images-root + "app/todo/check-icon.png") no-repeat; + content: '\f00c'; } } } diff --git a/src/app/pages/dashboard/trafficChart/trafficChart.scss b/src/app/pages/dashboard/trafficChart/trafficChart.scss index 42ae5a47..9ec65f4a 100644 --- a/src/app/pages/dashboard/trafficChart/trafficChart.scss +++ b/src/app/pages/dashboard/trafficChart/trafficChart.scss @@ -1,22 +1,34 @@ @import '../../../theme/sass/conf/conf'; -.chart-area { - width: 300px; - height: 300px; -} - .channels-block { width: 100%; position: relative; } +.channels-block.transparent { + .traffic-chart canvas{ + border: 10px solid rgba(0,0,0,0.35); + box-shadow: 0 0 5px 0 rgb(0, 0, 0) inset; + border-radius: 150px; + } + + .chart-bg{ + position: absolute; + width: 180px; + height: 180px; + left: 60px; + top: 60px; + background-color: rgba(0,0,0,0.35); + border-radius: 100px; + } +} + .channels-info { display: inline-block; width: calc(100% - 370px); margin-left: 70px; margin-top: -20px; } - .small-container { .channels-info { display: none; @@ -29,7 +41,7 @@ font-size: 18px; opacity: 0.9; } - .channel-number { + .channel-number{ display: inline-block; float: right; } @@ -44,7 +56,7 @@ .traffic-legend { display: inline-block; - padding: 70px 0 0 0; + padding: 70px 0 0 0px; width: 160px; } @@ -75,10 +87,6 @@ height: 300px; position: relative; float: left; - //canvas{ - // border: 10px solid rgba(0, 0, 0, 0.34902); - // border-radius: 180px; - //} } .traffic-text { @@ -109,79 +117,67 @@ border-radius: 0; width: 100%; margin-bottom: 0; - background-color: rgba(0, 0, 0, 0.25); - .progress-bar { + background-color: $progress-background; + box-shadow: none; + .progress-bar{ height: 4px; - background-color: white; + background-color: $progress-default; + box-shadow: none; } } -.legend-color { +.legend-color{ width: 30px; height: 30px; - box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.25); + box-shadow:0 2px 2px 0 rgba(0, 0, 0, 0.25); position: relative; top: 27px; border-radius: 15px; left: -45px; } -.traffic-chart canvas { - border: 10px solid rgba(0, 0, 0, 0.0); - border-radius: 150px; -} - -.chart-bg { - background-color: rgba(0, 0, 0, 0.35); - position: absolute; - border-radius: 100px; - width: 180px; - height: 180px; - left: 60px; - top: 60px; -} - @media (max-width: $resM) { - div.channels-info { + div.channels-info{ display: block; width: calc(100% - 88px); margin-top: -65px; margin-bottom: 10px; } - .card.medium-card.traffic-panel { + .panel.medium-panel.traffic-panel{ height: auto; } - .traffic-chart { + .traffic-chart{ position: inherit; float: none; margin: 0 auto; } - .chart-bg { + .chart-bg{ left: calc(50% - 90px); } } -@media (max-width: 1465px) and (min-width: 1199px) { - .channels-info { +@media (max-width: 1465px) and (min-width: 1199px){ + .channels-info{ display: none; } - .traffic-chart { + .traffic-chart{ position: inherit; float: none; margin: 0 auto; } - .chart-bg { + .chart-bg{ left: calc(50% - 90px); } } -@media (max-width: 380px) { - .traffic-chart { +@media (max-width: 380px){ + + .traffic-chart{ width: 240px; } - .canvas-holder { + .canvas-holder{ width: 240px; height: 240px; } @@ -190,8 +186,7 @@ top: 30px; } } - -@media (max-width: 320px) { +@media (max-width: 320px){ .chart-bg { left: 50px; top: 50px; @@ -199,11 +194,3 @@ height: 142px; } } - -body.badmin-transparent { - .traffic-chart canvas { - border: 10px solid rgba(0, 0, 0, 0.35); - box-shadow: 0 0 5px 0 rgb(0, 0, 0) inset; - border-radius: 150px; - } -} diff --git a/src/app/pages/dashboard/trafficChart/trafficChart.service.ts b/src/app/pages/dashboard/trafficChart/trafficChart.service.ts index 8472188a..b30e1cf3 100644 --- a/src/app/pages/dashboard/trafficChart/trafficChart.service.ts +++ b/src/app/pages/dashboard/trafficChart/trafficChart.service.ts @@ -7,22 +7,34 @@ export class TrafficChartService { private _palette = layoutColors.bgColorPalette; private _data = [ { - value: 2000, - color: this._palette.white, - highlight: this._palette.whiteDark, - label: 'Ad Campaigns', - percentage: 87, - order: 0, - }, - { - value: 400, + value: 1000, color: this._palette.gossip, highlight: this._palette.gossipDark, - label: 'Other', + label: 'Ad Campaigns', percentage: 17, + order: 0, + },{ + value: 1400, + color: this._palette.white, + highlight: this._palette.whiteDark, + label: 'Other', + percentage: 87, order: 1, - }, - { + }, { + value: 1500, + color: this._palette.blueStone, + highlight: this._palette.blueStoneDark, + label: 'Search engines', + percentage: 22, + order: 4, + }, { + value: 1000, + color: this._palette.surfieGreen, + highlight: this._palette.surfieGreenDark, + label: 'Referral Traffic', + percentage: 70, + order: 3, + }, { value: 1200, color: this._palette.silverTree, highlight: this._palette.silverTreeDark, @@ -30,22 +42,6 @@ export class TrafficChartService { percentage: 38, order: 2, }, - { - value: 1000, - color: this._palette.surfieGreen, - highlight: this._palette.surfieGreenDark, - label: 'Referral Traffic', - percentage: 70, - order: 3, - }, - { - value: 1500, - color: this._palette.blueStone, - highlight: this._palette.blueStoneDark, - label: 'Search engines', - percentage: 22, - order: 4, - } ]; getData() { diff --git a/src/app/pages/maps/components/leafletMaps/leafletMaps.scss b/src/app/pages/maps/components/leafletMaps/leafletMaps.scss index 76cb10f1..adaa6a3a 100644 --- a/src/app/pages/maps/components/leafletMaps/leafletMaps.scss +++ b/src/app/pages/maps/components/leafletMaps/leafletMaps.scss @@ -1,10 +1,5 @@ @import '../../../../theme/sass/conf/conf'; -.leaflet-maps { - width: 100%; - height: calc(100vh - 283px); -} - #leaflet-map { height: calc(100vh - 283px); } @@ -250,7 +245,7 @@ text-align: center; text-decoration: none; opacity: 0.8; - color: #fff; + color: $default-text; font-size: 17px; width: 20px; height: 20px; @@ -280,7 +275,7 @@ .leaflet-bar .leaflet-control-zoom-in, .leaflet-bar .leaflet-control-zoom-out { line-height: 18px; - &:hover { + &:hover{ width: 20px; height: 20px; } @@ -302,7 +297,7 @@ .leaflet-control-layers { box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4); - background: #fff; + background: $default; } .leaflet-control-layers-toggle { @@ -334,7 +329,7 @@ .leaflet-control-layers-expanded { padding: 6px 10px 6px 6px; color: #333; - background: #fff; + background: $default; } .leaflet-control-layers-selector { @@ -356,7 +351,7 @@ /* attribution and scale controls */ .leaflet-container .leaflet-control-attribution { - background: #fff; + background: $default; background: rgba(255, 255, 255, 0.7); margin: 0; } @@ -399,7 +394,7 @@ -moz-box-sizing: content-box; box-sizing: content-box; - background: #fff; + background: $default; background: rgba(255, 255, 255, 0.5); } @@ -440,7 +435,7 @@ .leaflet-popup-content { margin: 13px 19px; line-height: 1.4; - color: $default-text; + color: $dropdown-text; } .leaflet-popup-content p { @@ -520,6 +515,6 @@ /* div icon */ .leaflet-div-icon { - background: #fff; + background: $default; border: 1px solid #666; } diff --git a/src/app/pages/ui/components/grid/grid.scss b/src/app/pages/ui/components/grid/grid.scss index 7de12949..bd7bee5c 100644 --- a/src/app/pages/ui/components/grid/grid.scss +++ b/src/app/pages/ui/components/grid/grid.scss @@ -7,24 +7,15 @@ color: $default-text; text-align: center; font-size: 18px; - background-color: $border-light; + background-color: rgba($default-text, 0.3); padding: 12px 5px; } } .grid-h{ - margin-top: 10px; + margin-top: 40px; margin-bottom: 0; &:first-child{ margin-top: 0; } } - -body.badmin-transparent { - .show-grid div[class^=col-]{ - div { - color: $default; - background-color: rgba(255, 255, 255, 0.3); - } - } -} diff --git a/src/app/theme/components/contentTop/contentTop.scss b/src/app/theme/components/contentTop/contentTop.scss index 7fd45ffb..84a53854 100644 --- a/src/app/theme/components/contentTop/contentTop.scss +++ b/src/app/theme/components/contentTop/contentTop.scss @@ -7,7 +7,7 @@ h1.al-title { font-weight: $font-bold; - color: #ffffff; + color: $default-text; float: left; width: auto; margin: 0; @@ -19,14 +19,14 @@ h1.al-title { .al-breadcrumb { background: none; - color: #ffffff; + color: $default-text; padding: 0; margin: 0; float: right; padding-top: 11px; li { font-size: 18px; - font-weight: $font-light; + font-weight: $font-normal; } } diff --git a/src/app/theme/components/msgCenter/msgCenter.scss b/src/app/theme/components/msgCenter/msgCenter.scss index 692aaaaa..cf5824a2 100644 --- a/src/app/theme/components/msgCenter/msgCenter.scss +++ b/src/app/theme/components/msgCenter/msgCenter.scss @@ -29,7 +29,7 @@ margin-left: 0; } & > a { - color: #ffffff; + color: $sidebar-text; text-decoration: none; font-size: 13px; position: relative; @@ -37,7 +37,7 @@ display: inline-block; min-width: 10px; padding: 2px 4px 2px 4px; - color: #ffffff; + color: $sidebar-text; vertical-align: baseline; white-space: nowrap; text-align: center; @@ -113,20 +113,21 @@ left: auto; right: -47px; top: 26px; - @include scrollbars(.4em, rgba(0, 0, 0, 0.5), #fff); + @include scrollbars(.4em, rgba(0,0,0,0.5), #fff); .header { padding: 10px 12px; - border-bottom: 1px solid $border-light; + border-bottom: 1px solid $default; font-size: 12px; strong { float: left; + color: $dropdown-text; } & > a { float: right; margin-left: 12px; text-decoration: none; &:hover { - color: $default-text; + color: $dropdown-text; } } } @@ -135,11 +136,11 @@ overflow: scroll; overflow-x: hidden; & > a { - border-top: 1px solid $border-light; + border-top: 1px solid $default; padding: 10px 12px; display: block; text-decoration: none; - color: $default-text; + color: $dropdown-text; font-size: 12px; &:first-child { border-top: none; @@ -150,7 +151,7 @@ img { width: 36px; height: 36px; - &.photo-msg-item { + &.photo-msg-item{ border-radius: 18px; } } @@ -193,14 +194,14 @@ } } & > a { - border-top: 1px solid $border-light; + border-top: 1px solid $default; display: block; text-align: center; padding: 10px; font-size: 12px; text-decoration: none; &:hover { - color: $default-text; + color: $dropdown-text; } } @@ -212,10 +213,10 @@ text-align: left; border: none; text-decoration: none; - color: $default-text; + color: $dropdown-text; padding: 4px 16px 4px 20px; &.signout { - border-top: 1px solid $border-light; + border-top: 1px solid $default; } i { margin-right: 10px; @@ -248,7 +249,7 @@ width: 0; height: 0; border: 10px solid transparent; - border-bottom-color: #ffffff; + border-bottom-color: $default; } } } diff --git a/src/app/theme/components/pageTop/pageTop.scss b/src/app/theme/components/pageTop/pageTop.scss index 69bf5c6d..8098b2d3 100644 --- a/src/app/theme/components/pageTop/pageTop.scss +++ b/src/app/theme/components/pageTop/pageTop.scss @@ -2,7 +2,7 @@ @import '../../components/msgCenter/msgCenter'; .page-top { - @include bg-translucent-dark(0.5); + background-color: $sidebar; position: fixed; z-index: 904; box-shadow: 2px 0px 3px rgba(0, 0, 0, 0.5); @@ -12,16 +12,12 @@ padding: 0 32px 0 40px; &.scrolled { - @include bg-translucent-dark(0.85); - } - - .dropdown-toggle::after { - display: none; + background-color: rgba(black, 0.85) } } a.al-logo { - color: #ffffff; + color: $sidebar-text; display: block; font-size: 24px; font-family: $font-family; @@ -29,11 +25,6 @@ a.al-logo { float: left; outline: none !important; line-height: 60px; - text-decoration: none; - - &:hover { - color: $hoverlink; - } span { color: $primary; @@ -67,7 +58,7 @@ a.al-logo { } a.refresh-data { - color: #ffffff; + color: $sidebar-text; font-size: 13px; text-decoration: none; font-weight: $font-normal; @@ -86,7 +77,7 @@ a.collapse-menu-link { display: block; text-decoration: none; line-height: 42px; - color: #fff; + color: $sidebar-text; padding: 0; float: left; margin: 11px 0 0 25px; @@ -119,7 +110,7 @@ a.collapse-menu-link { .search { text-shadow: none; - color: #fff; + color: $sidebar-text; font-size: 13px; line-height: 25px; transition: all 0.5s ease; @@ -164,7 +155,7 @@ a.collapse-menu-link { } @media (max-width: $resXXS) { - .user-profile { + .user-profile{ min-width: 136px; } a.refresh-data { @@ -179,6 +170,7 @@ a.collapse-menu-link { } } -.profile-toggle-link { +.profile-toggle-link{ cursor: pointer; } + diff --git a/src/app/theme/components/sidebar/sidebar.scss b/src/app/theme/components/sidebar/sidebar.scss index 64fb6178..9b0d8ba0 100644 --- a/src/app/theme/components/sidebar/sidebar.scss +++ b/src/app/theme/components/sidebar/sidebar.scss @@ -11,7 +11,7 @@ $angle-right: "\f101"; z-index: 904; display: block; min-height: 100%; - @include bg-translucent-dark(0.5); + background-color: $sidebar; height: 100%; position: fixed; } @@ -40,14 +40,28 @@ $angle-right: "\f101"; &.selected:not(.with-sub-menu) { background-color: $primary; a.al-sidebar-list-link { - color: $default; + color: $sidebar-text; b { - color: $default; + color: $sidebar-text; } } } } +.al-sidebar-list-item, .ba-sidebar-sublist-item { + &.ba-sidebar-item-expanded { + > .al-sidebar-list-link { + b { + transform: rotate(180deg); + } + } + + > .al-sidebar-sublist { + display: block; + } + } +} + a.al-sidebar-list-link { display: block; height: 42px; @@ -55,7 +69,7 @@ a.al-sidebar-list-link { text-shadow: none; font-size: 13px; text-decoration: none; - color: #ffffff; + color: $sidebar-text; line-height: 42px; white-space: nowrap; overflow: hidden; @@ -84,7 +98,8 @@ a.al-sidebar-list-link { top: 12px; padding: 0; text-align: center; - color: #cccccc; + color: $sidebar-text; + transition: transform 0.2s linear; } } @@ -123,7 +138,7 @@ a.al-sidebar-list-link { text-shadow: none; font-size: 13px; text-decoration: none; - color: #ffffff; + color: $sidebar-text; padding-left: 52px; height: auto; line-height: 29px; @@ -135,7 +150,7 @@ a.al-sidebar-list-link { border: none; background-color: $primary; &:hover { - color: $default; + color: $sidebar-text; } } @@ -146,7 +161,7 @@ a.al-sidebar-list-link { @include default-sublist(); } -.sidebar-hover-elem { +.sidebar-hover-elem{ width: 4px; background: $primary; position: absolute; diff --git a/src/app/theme/sass/_buttons.scss b/src/app/theme/sass/_buttons.scss index 495adb41..cf0350d6 100644 --- a/src/app/theme/sass/_buttons.scss +++ b/src/app/theme/sass/_buttons.scss @@ -7,8 +7,6 @@ $hover: 24; .btn { border-radius: 5px; transition: all 0.1s ease; - padding: 0.344rem 1rem; - font-size: 0.9rem; } .btn:hover { @@ -39,46 +37,27 @@ $hover: 24; } } +@mixin openDropdownButton($color, $dark-color) { + @include styleButton($color, $color - $hover); + background-color: $dark-color; + border-color: $dark-color; +} + .open > .btn.dropdown-toggle { &.btn.btn-primary { - @include styleButton($primary, $primary - $hover); - background-color: $primary-dark; - border-color: $primary-dark; - } - &.btn-default { - @include styleButton(transparent, $default); - &:focus, &:active:hover, &.active:hover, &:hover { - background-color: rgba(0, 0, 0, 0.2); - color: $default; - } + @include openDropdownButton($primary, $primary-dark) } &.btn-success { - @include styleButton($success, $success - $hover); + @include openDropdownButton($success, $success-dark) } &.btn-info { - @include styleButton($info, $info - $hover); + @include openDropdownButton($info, $info-dark) } &.btn-warning { - @include styleButton($warning, $warning - $hover); + @include openDropdownButton($warning, $warning-dark) } &.btn-danger { - @include styleButton($danger, $danger - $hover); - } -} - -.dropdown button.btn.btn-default.dropdown-toggle { - color: #fff; -} - -.bootstrap-select { - .dropdown-toggle:focus { - outline: none !important; - } - button.btn-default:focus { - color: $default; - } - .btn { - transition: none; + @include openDropdownButton($danger, $danger-dark) } } @@ -91,10 +70,11 @@ button.btn.btn-primary { button.btn.btn-default { border-width: 1px; - @include buttonColor(transparent, $default); + color: $default-text; + @include buttonColor(transparent, $border); &:active, &:target { background-color: rgba(0, 0, 0, 0.2); - color: $default; + color: $default-text; } } @@ -126,12 +106,13 @@ button.btn.btn-danger { } } + button.btn.btn-inverse { @include buttonColor($help-text, $help-text); - color: $default; + color: $label-text; &:active, &:target, &:hover { background-color: $help-text; - color: $default; + color: $label-text; } } @@ -158,9 +139,6 @@ button.btn.btn-inverse { button.btn.btn-primary { @include buttonGroupColor($primary); } - button.btn.btn-default { - @include buttonGroupColor($default); - } button.btn.btn-danger { @include buttonGroupColor($danger); } @@ -277,22 +255,23 @@ button.progress-button { font-size: 16px; } -.btn-group-xs>.btn, .btn-xs { - padding: 1px 5px; - font-size: 12px; - line-height: 1.5; +.dropdown button.btn.btn-default.dropdown-toggle { + color: $default-text; + border: 1px solid $border; + background-color: transparent; + &:focus, &:active { + background-color: $default; + } } -.btn-group-sm>.btn, .btn-sm { - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -.btn-group-lg>.btn, .btn-lg { - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; +.bootstrap-select { + .dropdown-toggle:focus { + outline: none !important; + } + button.btn-default:focus { + color: $default; + } + .btn { + transition: none; + } } diff --git a/src/app/theme/sass/_form.scss b/src/app/theme/sass/_form.scss index 92573203..0ff4447c 100644 --- a/src/app/theme/sass/_form.scss +++ b/src/app/theme/sass/_form.scss @@ -40,14 +40,16 @@ } .form-control { - border-radius: 0; - background: transparent; + color: $default-text; + @include placeholderStyle($default-text, 0.7); + border: 1px solid $input-border; + border-radius: 5px; + background-color: $input-background; box-shadow: none; - border: none; &:focus { box-shadow: none; border-color: $primary-bg; - background: #ffffff; + background: $input-background; } } @@ -59,10 +61,6 @@ textarea.form-control { height: 96px; } -.modal-form-btn { - text-align: center; -} - .form-inline { .form-group { input { @@ -84,17 +82,6 @@ textarea.form-control { } } -.modal-content { - border-radius: 5px; - border: none; - color: $default-text; - .modal-header { - color: $default; - border-top-left-radius: 5px; - border-top-right-radius: 5px; - } -} - @mixin setSwitchBorder($color) { .bootstrap-switch.bootstrap-switch-on { border-color: $color; @@ -103,9 +90,6 @@ textarea.form-control { .switch-container { display: inline-block; - & { - @include setSwitchBorder($default); - } &.primary { @include setSwitchBorder($primary); } @@ -131,12 +115,12 @@ textarea.form-control { outline: none; } &.bootstrap-switch-off { - border-color: $input-border; + border-color: $border; } &.bootstrap-switch-focused { box-shadow: none; &.bootstrap-switch-off { - border-color: $input-border; + border-color: $border; } } .bootstrap-switch-container { @@ -239,10 +223,10 @@ label.custom-checkbox { font-family: fontAwesome; font-weight: $font-light; font-size: 12px; - color: $default; + color: $default-text; content: "\a0"; background-color: transparent; - border: 1px solid $default; + border: 1px solid $border; border-radius: 0; display: inline-block; text-align: center; @@ -333,7 +317,7 @@ label.custom-input-danger { @mixin validationState($color, $focusColor) { .control-label { - color: $color; + color: $default-text; } .form-control { border: 1px solid $color; @@ -361,46 +345,25 @@ label.custom-input-danger { } .input-group-addon { background-color: $color; - color: #ffffff; + color: $label-text; } } -.form-control-feedback { - position: absolute; - top: 0; - right: 0; - z-index: 2; - display: block; - width: 34px; - height: 34px; - line-height: 34px; - text-align: center; - pointer-events: none; -} - .has-success { @include validationState($success-bg, $success); - position: relative; } .has-warning { @include validationState($warning-bg, $warning); - position: relative; } .has-error { @include validationState($danger-bg, $danger); - position: relative; } -.has-feedback { - .form-control { - padding-right: 42.5px; - } - label ~ .form-control-feedback { - top: 21px; - font-size: 18px; - } +.has-feedback label ~ .form-control-feedback { + top: 21px; + font-size: 18px; } .bootstrap-select { @@ -412,10 +375,10 @@ label.custom-input-danger { } .form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { - background: transparent; + background-color: $input-background; color: $disabled; border-color: $disabled-bg; - @include placeholderStyle($disabled, 1); + @include placeholderStyle($default-text, 0.5); } .form-control-rounded { @@ -435,7 +398,7 @@ label.custom-input-danger { @mixin groupAddon($color) { background: $color; - color: #ffffff; + color: $label-text; border-color: $color; } @@ -463,68 +426,55 @@ label.custom-input-danger { border-radius: 5px; } -.bootstrap-select { - .btn-default { +.bootstrap-select.btn-group { + button.btn.btn-default { background: transparent; - color: $default; - &:focus { - background: #ffffff; + color: $default-text; + &:hover { + background: $default; box-shadow: none; outline: 0 !important; } &:active { - border-color: $default; + background: $default; box-shadow: none; - background: #ffffff; } } &.open { - .btn-default.dropdown-toggle { + > .btn.btn-default.dropdown-toggle { + background: $default; box-shadow: none; - background-color: #ffffff; - border-color: $default; - color: $default; + border-color: $border; } - .dropdown-menu { - border-left: 1px solid $default; - border-right: 1px solid $default; - border-bottom-color: $default; - border-radius: 0 0 5px 5px; + > .btn{ + border-radius: 5px 5px 0 0; } - > .btn.dropdown-toggle { - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - border-color: transparent; - box-shadow: none; - } - .dropdown-menu { + .dropdown-menu.open { + border: 1px solid $border-light; border-top: none; - } - } - &.with-search.open { - .btn-default.btn { - background-color: rgba(0, 0, 0, 0.2); - border-color: 1px solid $default; + border-radius: 0 0 5px 5px; } } &.with-search.open .btn-default + .dropdown-menu { .bs-searchbox .form-control { - background-color: rgba(0, 0, 0, 0.35); + background-color: $default; + border: 1px solid $input-border; } .no-results { - color: $default-text; + color: $dropdown-text; } } .notify { - color: $default-text; + color: $dropdown-text; } } .bootstrap-tagsinput { - background-color: transparent; + color: $default-text; + background-color: $input-background; border: 1px solid $input-border; + border-radius: 5px; box-shadow: none; - color: #555555; max-width: 100%; font-size: 14px; line-height: 26px; @@ -543,12 +493,20 @@ label.custom-input-danger { } } input { + background-color: $input-background; + border: 1px solid $input-border; + border-radius: 5px; + @include placeholderStyle($default-text, 0.8); line-height: 22px; font-size: 11px; min-width: 53px; } } +.progress { + background: $progress-background; +} + .progress-bar-primary { background-color: $primary; } @@ -579,6 +537,19 @@ label.custom-input-danger { border-bottom-right-radius: 5px; } -.sub-little-text { +.with-primary-addon:focus{ + border-color: $primary; +} +.with-warning-addon:focus{ + border-color: $warning; +} +.with-success-addon:focus{ + border-color: $success; +} +.with-danger-addon:focus{ + border-color: $danger; +} + +.sub-little-text{ font-size: 12px; } diff --git a/src/app/theme/sass/_layout.scss b/src/app/theme/sass/_layout.scss index 7c6beec5..c48b0cf9 100644 --- a/src/app/theme/sass/_layout.scss +++ b/src/app/theme/sass/_layout.scss @@ -1,6 +1,6 @@ $left-space: 180px; -@include scrollbars(.5em, #d9d9d9, rgba(0, 0, 0, 0)); +@include scrollbars(.5em, #d9d9d9, rgba(0,0,0,0)); html { position: relative; @@ -14,16 +14,37 @@ html, body { body { font: 14px/16px $font-family; - color: white; - @include main-background(); + color: $default-text; + background-color: $body-bg; + &.blur-theme { + @include main-background(); + } } -@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { - html { +body.mobile{ + background: none; + .body-bg{ + display: block; + position: fixed; + top: 0; + left: 0; + bottom: 0; + right: 0; + background-attachment: inherit; + background-color: $body-bg; + } + &.blur-theme { + @include main-background(); + } +} + +@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) +{ + html{ overflow: hidden; height: 100%; } - body { + body{ overflow: auto; height: 100%; } @@ -34,10 +55,9 @@ a { outline: 0 !important; } -.body-bg { +.body-bg{ display: none; } - .al-header { display: block; height: 49px; @@ -62,7 +82,7 @@ a { display: block; bottom: 0; font-size: 13px; - color: #ffffff; + color: $default-text; transition: padding-left 0.5s ease; } @@ -80,14 +100,14 @@ a { margin-right: 12px; i { margin: 0 4px; - color: $warning; + color: $danger; font-size: 12px; } a { margin-left: 4px; - color: #ffffff; + color: $default-text; &:hover { - color: $warning; + color: $danger; } } } @@ -104,7 +124,7 @@ a { i { cursor: pointer; transition: all 0.1s ease; - color: #ffffff; + color: white; padding: 6px; box-sizing: content-box; font-size: 16px; @@ -193,20 +213,12 @@ a { } .full-invisible { - visibility: hidden !important; + visibility: hidden!important; * { - visibility: hidden !important; + visibility: hidden!important; } } -.text-right { - text-align: right; +.irs-grid-text { + color: $default-text; } - -.text-left { - text-align: left; -} - -.text-center { - text-align: center; -} \ No newline at end of file diff --git a/src/app/theme/sass/_table.scss b/src/app/theme/sass/_table.scss index e8fbbafa..910fc2ad 100644 --- a/src/app/theme/sass/_table.scss +++ b/src/app/theme/sass/_table.scss @@ -3,7 +3,7 @@ & > thead { & > tr { & > th { - border-bottom: 1px solid rgba(255, 255, 255, 0.1); + border-bottom: 1px solid $border-light; white-space: nowrap; &:first-child { text-align: center; @@ -22,7 +22,7 @@ & > td { padding: 0px 8px; line-height: 35px; - border-top: 1px solid rgba(255, 255, 255, 0.1); + border-top: 1px solid $border-light; &:first-child { text-align: center; } @@ -32,12 +32,6 @@ } } } - &.table-bordered { - border-color: rgba(255, 255, 255, 0.2) !important; - th, td { - border-color: rgba(255, 255, 255, 0.2) !important; - } - } } .table-id { @@ -148,7 +142,7 @@ tr.editable-row { } a.email-link { - color: $default; + color: $default-text; &:hover { color: $danger; } @@ -209,65 +203,78 @@ input.search-input { margin-left: 0; } -body.badmin-transparent { - .table { - & > thead { - & > tr { - & > th { - border-bottom: none; - border-top: none; - padding: 8px; - } - } - } - & > tbody { - & > tr.no-top-border { - &:first-child > td { - border-top: none; - } +.table { + & > thead { + & > tr { + & > th { + border-bottom: none; } } } - - .black-muted-bg { - background-color: rgba(0, 0, 0, 0.1); - } - - .table-hover { - tr:hover { - background-color: rgba(0, 0, 0, 0.1); + & > tbody { + & > tr.no-top-border { + &:first-child > td { + border-top: none; + } } } +} - .table-striped > tbody > tr:nth-of-type(odd) { +.black-muted-bg { + background-color: rgba(0, 0, 0, 0.1); +} + +.table-hover { + > tbody > tr:hover { background-color: rgba(0, 0, 0, 0.1); } - .table > tbody > tr.primary > td { - background-color: rgba($primary, 0.7); - border: none; - } - .table > tbody > tr.success > td { - background-color: rgba($success, 0.7); - border: none; - } - .table > tbody > tr.warning > td { - background-color: rgba($warning, 0.7); - border: none; - } - .table > tbody > tr.danger > td { - background-color: rgba($danger, 0.7); - border: none; - } - .table > tbody > tr.info > td { - background-color: rgba($info, 0.7); - border: none; - } +} - .editable-click, a.editable-click { - color: $default; - border-bottom: dashed 1px $default; +.table-bordered, +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td{ + border: 1px solid $border-light; +} + +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: rgba(0, 0, 0, 0.1); +} + +@mixin color-row($color) { + background-color: rgba($color, 0.7); + color: $label-text; + border: none; + a.email-link { + color: $label-text; + &:hover { + color: $danger; + } } } +.table > tbody > tr.primary > td { + @include color-row($primary); +} +.table > tbody > tr.success > td { + @include color-row($success); +} +.table > tbody > tr.warning > td { + @include color-row($warning); +} +.table > tbody > tr.danger > td { + @include color-row($danger); +} +.table > tbody > tr.info > td { + @include color-row($info); +} + +.editable-click, a.editable-click { + color: $default-text; + border-bottom: dashed 1px $border; +} th { font-weight: $font-normal; @@ -284,21 +291,21 @@ th { .table-striped > tbody > tr > td { border: none; } - .pagination > li > a, -.pagination > li > span { - color: $default; - border-color: $default; +.pagination > li > span{ + color: $default-text; + border-color: $border; } + .pagination > li:first-of-type > a, -.pagination > li:first-of-type > span { +.pagination > li:first-of-type > span{ border-top-left-radius: 5px; border-bottom-left-radius: 5px; } .pagination > li:last-of-type > a, -.pagination > li:last-of-type > span { +.pagination > li:last-of-type > span{ border-top-right-radius: 5px; border-bottom-right-radius: 5px; } @@ -310,17 +317,21 @@ th { .pagination > .active > a:focus, .pagination > .active > span:focus { background-color: $primary; - border-color: $default; + border-color: $border; } .pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, -.pagination > li > span:focus { - background-color: rgba(0, 0, 0, .2); - color: $default; +.pagination > li > span:focus{ + background-color: rgba(0,0,0,.2); + color: $default-text; } .editable-buttons .btn-with-icon i { margin-right: 0; } + +.table-responsive { + margin-top: 10px; +} diff --git a/src/app/theme/sass/_typography.scss b/src/app/theme/sass/_typography.scss index 479052f0..92767190 100644 --- a/src/app/theme/sass/_typography.scss +++ b/src/app/theme/sass/_typography.scss @@ -40,6 +40,7 @@ h5 { .typography-document-samples { + p { margin: 0; } @@ -138,11 +139,11 @@ h5 { } .yellow-text p { - color: $warning-bg; + color: $warning; } .red-text p { - color: $danger-bg; + color: $danger; } .links { @@ -214,7 +215,7 @@ h5 { line-height: 14px; position: relative; span { - color: $default; + color: $default-text; display: block; } ol { @@ -263,7 +264,7 @@ h5 { } .columns-section { - background-color: white; + background-color: $default; } p { @@ -349,16 +350,15 @@ a.learn-more { padding: 85px 90px 60px; display: inline-block; margin: 67px auto; - background: #fff; + background: $default; min-width: 432px; overflow: hidden; background: rgba(0, 0, 0, 0.75); - color: #ffffff; h1 { font-weight: $font-bold; width: 100%; - color: #ffffff; + color: $label-text; margin-bottom: 10px; } p { @@ -430,6 +430,7 @@ a.learn-more { } } + @media screen and (min-width: 1620px) { .col-xlg-1 { width: 8.33333333%; diff --git a/src/app/theme/sass/bootstrap-overrides/_card.scss b/src/app/theme/sass/bootstrap-overrides/_card.scss index ab4f716a..8adfdc8d 100644 --- a/src/app/theme/sass/bootstrap-overrides/_card.scss +++ b/src/app/theme/sass/bootstrap-overrides/_card.scss @@ -2,16 +2,14 @@ $card-title-height: 44px; $card-header-font-size: 16px; .card { - border: none; - background-color: $default; + @include scrollbars(.4em, rgba(0, 0, 0, 0.6), rgba(255, 255, 255, 0.7)); color: $default-text; + background-color: $default; + border: none; + border-radius: 5px; position: relative; - //transition: all 0.2s ease; margin-bottom: 24px; - box-shadow: 0 5px 5px rgba(0, 0, 0, 0.25); - /*&:hover { - background: $card-bg-hover; - }*/ + box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.25); &.animated { animation-duration: 0.5s; } @@ -42,46 +40,46 @@ $card-header-font-size: 16px; } } -.card > .card-body { - padding: 15px 22px; - height: 100%; +.card.card-blur { + $blurredBgUrl: $images-root + 'blur-bg-blurred.jpg'; + background: url($blurredBgUrl); + transition: none; + background-attachment: fixed; +} + +.card { + > .card-body { + padding: 15px 22px; + height: 100%; + } + > .card-header { + color: $default-text; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + } + > .card-footer { + color: $default-text; + } } .card-header, .card-footer { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.12); height: $card-title-height; font-size: $card-header-font-size; - $vertical-padding: ($card-title-height - $card-header-font-size) / 2; padding: $vertical-padding 22px; - } .card-title { font-weight: $font-normal; text-transform: uppercase; opacity: 0.9; - font-size: $card-header-font-size; - //text-transform: uppercase; } -.card-white, .card-blur { - background-size: cover; - > .card-header { - background-color: transparent; - border: none; - color: $default-text; - } -} - -.card-blur { - $blurredBgUrl: $images-root + 'blur-bg-blurred.jpg'; - background: url($blurredBgUrl); - transition: none; -} .card-primary { > .card-header { - color: $primary; background-color: $primary-bg; border-color: $primary-bg; } @@ -89,7 +87,6 @@ $card-header-font-size: 16px; .card-success { > .card-header { - color: $success; background-color: $success-bg; border-color: $success-bg; } @@ -97,7 +94,6 @@ $card-header-font-size: 16px; .card-info { > .card-header { - color: $info; background-color: $info-bg; border-color: $info-bg; } @@ -105,7 +101,6 @@ $card-header-font-size: 16px; .card-warning { > .card-header { - color: $warning; background-color: $warning-bg; border-color: $warning-bg; } @@ -113,27 +108,19 @@ $card-header-font-size: 16px; .card-danger { > .card-header { - color: $danger; background-color: $danger-bg; border-color: $danger-bg; } } -.card-primary, .card-success, .card-info, .card-warning, .card-danger { - .card-header { - color: rgba(255, 255, 255, 0.8); - } -} +//.bootstrap-card { +// background-color: $bootstrap-card-bg; +// .card-body{ +// color: $bootstrap-card-text; +// } +//} -.card.bootstrap-card { - .card-body, .card-header { - p, div, span { - color: $default-text; - } - } -} - -.accordion-card.card.bootstrap-card { +.accordion-card.card { &.card-primary, &.card-success, &.card-info, @@ -174,8 +161,3 @@ $card-header-font-size: 16px; .light-text { font-weight: $font-light; } - -/* -.card-group .card { - border-radius: 0; -}*/ diff --git a/src/app/theme/sass/bootstrap-overrides/_tabs.scss b/src/app/theme/sass/bootstrap-overrides/_tabs.scss index 3c249f0b..738a1e60 100644 --- a/src/app/theme/sass/bootstrap-overrides/_tabs.scss +++ b/src/app/theme/sass/bootstrap-overrides/_tabs.scss @@ -86,8 +86,6 @@ border-top-left-radius: 0; border-bottom-right-radius: 5px; > li > a { - margin-left: -1px; - &:hover, &:focus { } } @@ -119,21 +117,21 @@ .tab-content { padding: 15px 15px 5px 15px; background: transparent; - color: $default; + color: $default-text; .tab-pane p { - color: $default; + color: $default-text; } } .nav.nav-tabs { border-top-left-radius: 5px; border-top-right-radius: 5px; - border-bottom: 1px solid rgba(0, 0, 0, .01); - background-color: rgba(0, 0, 0, .2); + border-bottom: 1px solid transparent; + background-color: $primary-light; a { - color: $default; + color: $label-text; &:hover { - color: $default; + color: $label-text; } } & > li > a { @@ -141,22 +139,42 @@ margin-bottom: 0; border-radius: 0; border: none; - color: $default; &:hover { border: none; - color: $default; - background-color: rgba(0, 0, 0, .1); + background-color: $primary-light; } } & > li.active > a { - color: $default; - background-color: rgba(0, 0, 0, .25); + color: $label-text; + background-color: $primary; } > li:first-of-type a { border-top-left-radius: 5px; } .dropdown-menu > li > a { - color: $default-text; + color: $dropdown-text; + &:hover { + color: $dropdown-text; + } + } +} + +.blur-theme { + .nav.nav-tabs { + background-color: rgba(0, 0, 0, 0.2); + a { + color: $default-text; + &:hover { + color: $default-text; + } + } + & > li > a:hover { + background-color: rgba(0, 0, 0, 0.2); + } + & > li.active > a { + color: $default-text; + background-color: rgba(0, 0, 0, 0.25); + } } } @@ -168,26 +186,26 @@ border: none; } -.card-primary, .card-info, .card-success, .card-warning, .card-danger { - .card-header { - border-radius: 4px; +.accordion-panel { + .panel-heading { + border-radius: 3px; } - &.card-open .card-header { + &.panel-open .panel-heading { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } - &:not(.card-open) .card-header { + &:not(.panel-open) .panel-heading { transition-delay: .3s; } - > .card-header + .card-collapse > .card-body { + > .panel-heading + .panel-collapse > .panel-body { border-top: none; } } -.accordion-card .card-header { +.accordion-panel .panel-heading { padding: 0; .accordion-toggle { display: inline-block; @@ -195,4 +213,3 @@ padding: 14px 22px; } } - diff --git a/src/app/theme/sass/conf/_mixins.scss b/src/app/theme/sass/conf/_mixins.scss index f68a68de..560b74ea 100644 --- a/src/app/theme/sass/conf/_mixins.scss +++ b/src/app/theme/sass/conf/_mixins.scss @@ -41,7 +41,6 @@ @mixin bg-nr($relativeUrl) { background: url($images-root + $relativeUrl) no-repeat 0 0; } - @mixin bg($relativeUrl) { background: url($images-root + $relativeUrl); } @@ -94,37 +93,25 @@ @mixin overrideColors($color) { p, - h1, h2, h3, h4, h5, h6, + h1,h2,h3,h4,h5,h6, .pie-chart-item, - .card-header > .dropdown .dropdown-toggle, - .card-title, + .panel-heading>.dropdown .dropdown-toggle, + .panel-title, ol.blur span, ul.blur, .popular-app-cost, .popular-app-info, - .card-title > .small, - .card-title > .small > a, - .card-title > a, - .card-title > small, - .card-title > small > a, + .panel-title>.small, + .panel-title>.small>a, + .panel-title>a, + .panel-title>small, + .panel-title>small>a, .traffic-text span, .form-group label, - .help-block { + .help-block{ color: $color; } .feed-message .message-time, .text-muted { color: darken($color, 20); } } - -@mixin overrideCardBg($color, $borderColor, $dropdownColor) { - .card.card-blur, .card.card-blur:hover { - border: none; - box-shadow: 0 5px 5px rgba(0, 0, 0, 0.25); - background-color: $color; - } - - .progress { - background: $color; - } -} diff --git a/src/app/theme/sass/skins/_02_transparent.scss b/src/app/theme/sass/skins/_02_transparent.scss index f315f9af..c052397f 100644 --- a/src/app/theme/sass/skins/_02_transparent.scss +++ b/src/app/theme/sass/skins/_02_transparent.scss @@ -1,52 +1,39 @@ -body.badmin-transparent { - &.mobile{ - background: none; - .body-bg{ - display: block; - position: fixed; - top: 0; - left: 0; - bottom: 0; - right: 0; - @include main-background(); - background-attachment: inherit; - } - .panel-blur { - background: transparent; - } - } - @include overrideColors(#fff); - @include overrideCardBg(rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.9)); - .default-color { - color: $default-text !important;; - } - .card.card-blur { - background-attachment: fixed; - @include scrollbars(.4em, rgba(0, 0, 0, 0.7), rgba(255, 255, 255, 0.8)); - border-radius: 5px; - color: $default; - .card-header { - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12); - transform: translate3d(0,0,0); - } - .card-body { - transform: translate3d(0,0,0); - } - } - .btn-default { - color: $default; - } - .form-control, .bootstrap-tagsinput input { - @include placeholderStyle($default, 0.7); - background-color: rgba(0, 0, 0, .15); - border-radius: 5px; - color: $default; - } - .form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { - @include placeholderStyle($default, 0.5); - } - .irs-grid-text { - color: $default; +&.mobile{ + background: none; + .body-bg{ + display: block; + position: fixed; + top: 0; + left: 0; + bottom: 0; + right: 0; + @include main-background(); + background-attachment: inherit; } } +.panel.panel-blur { + @include scrollbars(.4em, rgba(0, 0, 0, 0.7), rgba(255, 255, 255, 0.8)); + border-radius: 5px; + color: $default-text; + .panel-heading { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12); + } + .panel-body { + } +} +.btn-default { + color: $default; +} +.form-control, .bootstrap-tagsinput input { + @include placeholderStyle($default-text, 0.7); + border: 1px solid $border; + border-radius: 5px; + color: $default-text; +} +.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { + @include placeholderStyle($default-text, 0.5); +} +.irs-grid-text { + color: $default-text; +} diff --git a/src/app/theme/theme.constants.ts b/src/app/theme/theme.constants.ts index 5895e8df..9b7497ff 100644 --- a/src/app/theme/theme.constants.ts +++ b/src/app/theme/theme.constants.ts @@ -60,7 +60,7 @@ export const bgColorPalette = { surfieGreen: '#0e8174', silverTree: '#6eba8c', gossip: '#b9f2a1', - white: '#ffffff', + white: '#10c4b5', }; export const layoutColors = { @@ -89,7 +89,8 @@ export const layoutColors = { dangerBg: tint(colorScheme.danger, 20), default: '#ffffff', - defaultText: '#ffffff', + defaultText: '#666666', + border: '#dddddd', bgColorPalette: { blueStone: bgColorPalette.blueStone, diff --git a/src/assets/img/app/my-app-logo.png b/src/assets/img/app/my-app-logo.png index 1330932dbcee18924ffb303b571411a9beb35b42..fa9b4151eb44094314eab48ef3a5a9009d213a06 100644 GIT binary patch literal 10104 zcmV-;Cx_UHP)(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRaN{z*hZRCwC#op+oR_5J^!Q+D?%cfcLTad1aHdM~1a2x37+V-yuZvBX{yV@x#V z8>9K!qfuka_Zt(40+Gb8g@`~TfQa-aM>*gQj_bYcwcVZ1?~j?CojtD1?jDHd_wn&@ zm)n`oeCG3-_xtniBMBk+mNpkK5*Q8)1o{JMKrf&t5D%!vCqNzGH9jkVQlJ1h4&(p_ zfh?f;+qf9gw+P6dzzkp(a3L_%0IDmS7dQ;82i5@_4A9ShAT>=pTjwSN7XVip;Egr@ zb|#w!>@`4L32Zd}cJ=@$NoOsPV}Lt=c|ht}Hn$>R1@Mjm@Yw^T&*wWE=HmqB1NQ+_ zz9p=FJMcQN3~2er*p{p_Daq^gev^w42iy-l1oZiq3SEW3AB zw6i{4vi?$Yb7Y2$N%QY+_qQF(-p&Nx1ty;^(c9XC#Bt-(+Wf{3>!-D!W(jxUr1^Je zx3NZ%iTh5SHq_HK^Bv3Hz8QEEi0x|NWLZX%B+9F6IC3JN>=P%+FDav-w4Cy)YO3q% zX>4x6-PnlFr=ch^vC+{)yPPD($C1=Mk+fb(^i4@7Gov3vGWwE~n1B!hP18;Xu#k!|zHfiKA9>0A78NGYq@pvMUbj#3Pb|Ei9 zY;0`AKn^fK>>Canl@*0Qe((u@{%94RZ`N=hnL@6r-2T1Gx$~MU(R>lH+k8Vv%n1v~ zy1K9o_6df$ZFD%|^2yS2e*W4YIhcFmJ7dBbJ|KgqAH0ixy^@H)$g&@p2GrO+AucXX z2eP)dHe^8#ScUGj4@sSHI-UG$+b*8`<6;_{oB6J_D3_C8-*qdqr%a%wr6pW-WgRdF zn?BC?cs(RZs;Q|7^+K!t%)U0of@1#SkGgtUh^95`Jr{_CxG_;k}2{!`kV^UvYQdv3?m(h{y=e36~C zPDn`5fvl>kvO91lu!|6Er%tC6Nl|$8l{eY6=WG7c+WBKg@#2r}L->4z;bn3I6AZ&a zyDc#>QQx{k*caao1w@C#fvl+9^UO!{^R$M$_kj`7IvU&rZkp(qM=*U;#bgb+XP z=onKkuc+uW{&s}HQeAeX(}aWse)-m)`1H#y{Qsu6%g>+6Z|}K-nwpwWrP&sP#b&kj zV~-v^bltoYYlH;+(JqLf8*yJ-@qc`}d8__No`E)?Pby;u47Z!1%sEE?aYHI51@%elxicCUWEXj$9^zV~O|30aV88U>4!-o=M z`17o-vbL7LtX#$Nwd?Tsyhuo03h1zmbQb^D40zu9hhDw(2U;pFZgY=_ zH;lKof`{Yd<5~RKTK?zbe|9;DlZOxE@mp@9e`@cbzt=Z3vS#Zx{`uus>^_{W8>{`2 zoWR^pgynnd?O#g0gb{ z{K-H0YWd3o9UcziyPq%L8(4prsd zU;l!n&{^y+tl0GKtv}#WVPRogQqpm3Wu;{~9|F9quv^(~^^U{=T~zmJx_! zu5r70pbvjjRfX$jU&I49%p<|@EC3ujeu78; z@FoRiWu}rSMF{4^p_%;Q;fJuH0$N)UdQxu-Kx(QElk(#q|G4#m3k{p9Eh+V@gNIqN zYE73}Lx!fO^Y%|4A>Be1>v!$u{uf?iTh;+IpAVr4gwS*Vg#|200!ap0LXu=8SusA_ z=#szt*`)*$XqsUE(HuTnzmfFR-V8|7bBmG^6S-u{WVU1-prWQmXR}zTGxT0mQAuWc zI{ka6gkr*r2aaMy6qw$R{QUgZ2X4b=KyhknD%bt$2~HH3bO|L+$Q;7&A9{e;Xk7ql z@p^fA+22^c_HzS3?Nk8ul?(tP`Gb?Cz;CTtp%DHZ)Z9ML7*(Lns<^?zn z6PvrSk%wM-gc#AYwBdZFss-UQ< z@u`1TR0Y|gSdNjA9j$)1oM#@R$Vjrp@-=I?^S4h^Yv_Hk(b2r}@Iwskmj*&Z($Pmk zgmvF}B_*udvX$7_*icM&lMSrewYA=1cd&$n1QxGe-6aOeekr|p{l`Bd&WH#rtFGpb zXP#x(;cPUap$ScArwE+_WC>&iNmY;(68q9PgJB}LI$tm6N-YW&;i zs;VEaDEj%TF`l9#sS3ynyR)-d^u&{t8lIxKm>Ayt>7%6eN=7rNJHX*XzyBqx*N~8q z5UL&a2kikV3nAv&86+wyip~48$SEp{cw3BeIeGrxd+2WP`l`A*?tbA#j^yPbG(S5P z2ubKE1BzrUy1wwTsvs!_1u3!tu1-yo|8M?(`+MuZTh8;36Fk1cvBCoGedampjquU# z-QxM(gAd?R6@<_b#(y9}UW1&XBEHJXA}T5>6d>mbA>_7zyg&$%YL~5kxM@?Du+&Fx zn8%R5I-mD=z5MW%SIN!KH`u6VVOx^1&`N*>`WM{4_==2d1ux@9fV!rpP+eW$YYWIr>{8>}9Xs&&yb-Zfr_;e>H{E0| z$mhFu@sIWEb#`j7DpR8{D8t;>6d4S*h%B8Rzpz26m~2=vAExD>f6ls{I|CZ}t&4Cf za$w$mHXFkAG@-F(#|~m*VnPA(($+u@6haKMb8=i<9G`C68u7z_mB7OcAHXAC7 zUAt>%sM71uoSdA2Rv<61>-n#3YGVKK;}NZp%jsm{?2FAO`t46XrlO|C!cGBM21BYe zyP?d}MQqe|w;B=*X}GGPfww;V(7cCR=3I``;V|z(gu!AD=H*e_*cd8%y}%0O`F2i< zj*ez?*8Ygu)-}_nnNn(TWhH-Kzg}lWhH&F&YjPV>=V@c5Hd(DCOQwYT!514SuB_Be zl?e%4H)Dp*R5i__^M=M^Hy_9%IyyQOAg5U)1g6?CCqzd_vm^U(#14S#XIyB0U$S}? z9&bxPLNz7HfHbPJ&{M4^@i8$>9Fj@DaJPcWq7}_tL5g8dI z#>LU%@sL+q%C4hFsOu~@X(^ZEG8s!w@r!9oCTm_3`N|FW1XCBt|T!h&tj zKFqAqV+bMMc&Z;r7kV;|Eg<*h=0;@sA3b0IeGO-*yQzr}H*GSWEQ6;SAo_(GNmg`9 zv|KYOA%XkmUd5#oC!-p5W`Z2VWo0a0vznD#zcK-p6@{zMJ&#*vUqYXrJx@8uX{|_pc>3I-2y9-i#hJn6GnlOk=(z$pJ%wjrMhJ zu1S$L+tBRn>}Xljv{9O-shXzIQI}>dJ^%)SSuZm@`{GPO+*0s18;^UDPbdF_FR=oS-AVtgELKKMf(yJ3EtAObiP zmAO;TW!cYv#khe3jfYEXn>ET37;|jVysX{1-5lr2^UpWzwfeb23QdA7uCAoI!Hq1- zbcTu1RZY`I$U=zWc6hPN<>F{zLBw*y^ihGlpH*AG@{0wAOkqfeij1rn`=r$#+pizL zzvq6s#n=n4ot!z8Hy(PJHy`{F;|2}3bxuNTEU(=EAcOm)2JLgLB~aNf)hZI7ZQp91 zKV#f@^PUhIlF$rWzI_Qcue210UvRS5hs#2U{&o&_I-MLXDvSuljFjH=G9sgE-EMXr zIilaQWLUvvot5HO$So48s;c~E;jKhDLo3xYB&{z4Q$s6r7wvTM)U9_QBk8)K=`Ep6 zNp^Q`j%id+>E46>eNuHC1z}0B$4g6aI-Q{aIZzft46+MkK}C5)Y<0}Qf#zcEId&9H z^IA; zRD8*#$q1hYn%_u)>3=l4G1siT;{h(vFWr=FB#YZr0$b~Jvb-!*Ap5F9h@N(CN>LQ5 z+;we7P1tPdy;98YM+@@<&L6pzp5~`YOB<1%amIlhJz$XGfzbgJl4Kah15&8piG8f7 zAP_K}nreoV2xEU0QXq(-vsPAHWA2eQTMtzTVJlKjRaL6o^$`J?+Pz00h^oBIBF(j8 zr+$`dX^EEjnKRXTbnAv@*py{iMi4+F2oPDKuqqIDliD*0Bmy8BpBVns&RUhb&b02> zY{{w+BEfF#YEw%~L;*($u>onbvM!*j`Pq}~|7=6~_jtXyLeFT5s5N^6L0-B9s|2w~ zYiL)krCw2Nbo42|O9a=<>+HI+EQbPQH`#C~cglxlS*F?B5|OYI7Zq(@xwf%B=r>6w z@T9ly2ns68&p1V%EGY(|nUbqsmtL52vd*!wC6G!V>x#1cCQK%4cbytN%_fjGyCMrA z;%)mOHDCBZB7zinug@1O{YjDzW;^!O-N%lcaUgdbI-oN~L&5hus7{eUWr+q)0LYjq z3y>IKO7^8!pU{vbDHI^%WSiClU2;{`h@@7pC7)ggwUzWI$?cxIdiRbq4&*;Kf1zLB zFKrTtHg7$@SWD_bLvvFgk`I3*U)$%k)m3AEw2O_VX~;r|Iy48z?pb+kR}ArFI}utm8@HFI`e^ci;Zgo zNQ=-W*^jV`3LQwFEQF}BbFkOzrAJ(RM0VC9i-?|h@y9o9dncfg)|ytKHL zuoGHO>XtxDOG_v~mdQeh3OffkH8s(@N6&~@>yhGs^H^wkcV9nm*nc{*B@-^M-J4^Qcr)QiT(#!!H)l!Xul zc7aUm-ZLVWvHxVQd9&jO4M9=l;NWc9clXGCHKYp&2C>Fn&s{G(MP6yK zB`!ygK9`M8Nwqk+Td~*C=>zB%ttZKr)l>(wR!Qnm+HI?6B!>)St}KMewGCuSp9u6w zT~FL}Fi-(&_PEKWerD0O+Vv91hL=Q^^}ylm;sPFc<988(=?5`8KhNUWR!|hxNbJ#r zp=DVwkT16}uUR9S5QGVC#<@V6VuXuTigrMB*GSnwy(L z0rH?Mgvb&?c2a=iPr5FN^OzREu^6}>o zAEmR^{E9NZK9Lig(HvqN?&$P^)YjI9q(cfJ4#=9OHEEi5$c`DPs;Y_!{fC4ZwQYC| zB=~5@mw~|ES#xkGiW!-0CkaNDK~{7&sHifELnW`Oj5}X_n!M7^3n1kd6>!^g|3zMD zk(rGpD@NX=(e)h4K%S)BhQQ)f6>d5&P~+gE?VAGk&?-{hAJW;G@H%n85UQ%GLNU)B znm&Dcqu=wf)eia<6%|Y!JUndHDj5&;C%e9)wo#99>D|2tS5KX08mBRXDn#2lnB0oR z`V&|kDkb$b-1&!RIFOgyE{Ivjk8#^`zoxjV!f<9AkqLfQ>NF_Q5O5@=l?l-@m$?(p zB_*M|;mv8_qivfkY&F=w>c98S)@bVBVN_I9ghG*9tdZuM?5ZG60VDeMCv38mW!x=I zEZy|Exwv;<`aKe3<68web)Z`sEY{4N@@Hr{9n>^8ao<}nvi0z(rQ5a~_?kOke2VIZ zdSgFS%!k0wPGyI~NO)B&Szf2I)b4Td+;)MPL&JNU{zYA5gC2AzNr8t%_9q+3o$8W9 z`=sMSrm3kZ6d*TQf!t{K#Ny&&E*Ui;f^Aa2!4+FKm?pb!F|qvYng#lktXXp+Mf-Tl z{#c(t`njSiC=Qio&C4V2yvFKXfue?=ZQsm8uRlklrzxN#n(R~!bW7^F+yOg$SU?Qj4Ov3-`uP1nS0H>oGgj6gFy+s; z^zVm(#966TRgmB|GA)DqW?g0e`@JgJB6t12(vav$kQDS=WfXlA&Ceaci! z3e%}f7h?SE(@%klQ#C1A-xH+{DRE%0RGy#r0~|)A!;#{AUj6KYK(?~!QMo(dtye$%2J(k_-AOjuB0fS z*fR#qKW8R~4ju}X8dnINWt{>fLWn=v9Vjm^kJ-b=)30Z8ctVd^ctJu|WwJ~2`PtI9 zXlQOStv;{Z{2yq9mdn?xgVsG+5q z$KL;64iy|n^J!-Jm_XSV{eE;dEw?+azxV5z%oxyq~Ne);|r%bODMXBvrZVcx2g|>_2%7q4`YK zA5>$&VN?RKJRlv-^WoXo(o|MO2(Rq`y~g|#07Hfh(Sf|lQdz?v3k-bE&S=%u)l3*N zoFkRR6xUUUUJ8X^R3!<@>uOk^wVR0pGU;KkvW%qO%pEtCCXa_BB?V}H%ZasyYJ1nP zmR+$F7(|lVWTlFtaLxGh`OVy$8Qd%2_0K6Q;*sTVkyBEj$J1y=n5bb(^_Oo6B;D_=5f`eX+ehpIpR*hP!x4LlImXt#E*bBfwxX)e{l#lt5s zfAWQ-CiDpUZROrAyt?KC8k-se>{QdtheTFnqZFE@Mvo+QI3HC}cLn| zwD)5v^LfP;SLhTufByW|2l~+8DsYjVQS0jJ=#|i&ZVBDkSCAV%i?sw_0r)f@n-1+` z@A0FI>^Fdf7(GfYJ}QRu29MO!g4IwJnK69_aMP5T{OpqJ znUOh~cuO?=$;wim{CEi~wywwHX$j8EGFY~v%4QKmT_2TfvDAfAX3^i-jbq0`jz4-9 zSnvNwW@e`TTz>rV$8F{kpqIk7m8lgK6~)Y1vv}bBH#kyS5FS+;nW4gX;x(_&q)=5- zm^bx87EHT@?y+suG;e9<>w;Vk6y=duRYrbw8PyH-GragH)Hh*NH`KFi+rRn8_6>Rvl;LSW^BeZ9RYwe#Y8c-;HDCaPll$=c z4fpf!b?ZW{o?HP81k6_q&Ye3~2lAtjK5FkI+r{YtGBPsgp5BLhmc2@|*V8p%`ZR>s zho<>J6S!0db0<(Vtc=2K@zFwqJlfa^y%(YHohJdRcfY zX$4ag2%it((*i|zeSrlX-ER=`zA#Wj^|%{|2G{oC1JkP9YoT5!2- ze|m$VR>*##MhR3M=?p}GpI>?-8FCz1Sy>?m`57kEpcjT*ef8C}wzZzZu?(uT{Q{T$ z`}Z?;>{#YcoWb&48^SWfN4UlD54!MVqH1~Eu@>Ldhz8E`*vp53cuXJ>QArI%6W zuI2N?dm;c+SW@luMbms5LekltU+54*P*7P$L1kG`QKg{L*lnz^pmpi%R^KgS1oY29 zYP@MhGF70CZ|kC=pE(i z8rYtf9X6P{XG1n?@W`@+kR^oX@4{k_4X|a4J+JlGHq{Y}J3F8@m;eR?8Bi@ONvoZJ zI4M1oM`vBf#tj?8d6iO&fkB5rDc4_reP;ue0V;5z-77aVG*DYp!%Y{?VQ*m$W$v2r zJtc;T%fGrqGTx4??_ejG7kge{8nx2Fx$o$b;Zg@uKvyLR*3+}n9_&C>8FvlVp;Su*x8 z*<^!$snS#pg5Cv!<;^^8jBCjt3ZgRW!(y^m$-eQyXcPMl;fYHZuy@yP3JMCsx%-{i ze36b_AY0JimKM^hc~6`;fyd+F$vHRk!n(h+?#SM-!2~~`5-3KUHvvMHjcSaog%zt5 z+zybIy)8h|R+FBE&4vIVz^ox-d34rwY}>LmToB#pZws{bLJ&2CfwO`8fW;x{W`%`( zv0)>R&Ay%5mV;n3%Sp_9I5FrpMfB@Hx zoyJ|~&SCw(*Hc~|cI|`v=;Zy%;ZUT%EkS>A$o-+5R905Ts!vxjd+1Px%ueH_4IhMO zG-wM5v#Ml(@+5-_g}=yAM?+cdgjPxo5j?-L|Kl0oCqs&3)u*eduMa!P=ygJTyS%h~ z`SMUN;sjO!v%;C-xN+l%?$v{5*S*it@$TTj8|sC8z(>GUK*)Bo;^JbQ$lNybO1=DZ=}E&aMVEIw z$wiS~Lsb-RoNysOn>CN4SqC|A;6NlG9t19-)yqCRYNJN!(R|X-e%1rnHzA2Trd-P4=$;%oaD=?P zh~HvcW>8|-IrVCU6F6jmxdsU9rN?=BdF18gF?8rq{^z9e^2$ zy|{ktbY=}2$DZB0`TX$bT`_E_0ph_(29e%<_uYtQv83@Jw?q#g27C_miD)vCL}q3t z6DLh%`^h7Ga$pNP@{ghk?HdD6mSiUN9n9PjQ<>av2s?M|Bs)91tIEU_qC4;pg*$*h z=1ThOU;i4>O#a%e&*5g*umR|i&zW6uhiPePWM*dKOpN2-$M*3>?tZe%3(gpTnMr9( zA25oUgT~NOT~Bs)cDRatM|$~XKt#g9!i5VX-XmKBn!C_B^jzQrU`C|l<>%*`J;RDJi6;rjnA9 zLW=^qmBr*%6;o7KMM-@Xl?`>&HZ{=X^Wbi7GHRtt#JZx0QXIrb#n3Y*o|L%mq{err zfAOAPeYUloz=B1K79GB&)enmoFYb~H$ftAmixw?944ex*Y1icR z9cwMdy`O8W#c6Bm>8`f8Xwf1M@aw<)4YwVJ zdi5UA{7p|rK1&v*8F&Yn42(CP?&7nU`oTw%Q)xA>d(PIxrVK8ez;g z@Zf2{*XRy`mFT85-`U6>RL5k?<`p8T1H?&R(X#G&VT##jWbW}w~}s|-Cc<~Vu^VHR)zXyRMg a{@(zLyMV(JOR4+-00000000PbVXQnQ*UN; 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 T622qR00000NkvXXu0mjfP~)*j