/** * This file defines most styles of the CMS: Colors, fonts, backgrounds, * alignments, dimensions. * * Use SCSS variable definitions in screen.css to avoid repeating styles * like background colours or padding dimensions. See themes/_default.scss * to get started. * * To avoid this file getting too large and complicated, it is encouraged to * create new SCSS files for larger components like the CMS menu or tree * (see _tree.scss and _menu.scss). */ @import "compass"; @import "compass/css3"; @import "compass/utilities"; /** ---------------------------------------------------- * Core Styles. * ---------------------------------------------------- */ html,body { width: 100%; height: 100%; /* Removes RHS whitespace on iPad */ overflow-x: hidden; } body.cms { overflow: hidden; } .cms { a { color: $color-text-blue-link; text-decoration: none; &:hover, &:focus { text-decoration: underline; } } body .ui-widget { font-family: $font-family; font-size: $font-base-size; } strong { font-weight: bold; } } /** -------------------------------------------- * Helpers * -------------------------------------------- */ .hide { display: none; } .cms-helper-hide-actions { .Actions { @extend .hide; } } /** -------------------------------------------- * Panels Styles * -------------------------------------------- */ .cms-container { height: 100%; /*background: $tab-panel-texture-background;*/ background: $tab-panel-texture-color; } .cms-preview, .cms-menu, .cms-content, .cms-content-header, .cms-content-tools, .cms-content-fields, .cms-edit-form, .cms-preview, .cms-preview iframe, .cms-preview-controls { @include inline-block; } .cms-content-header { padding-left: $grid-x * 2; z-index: 60; min-height: 40px; background: { image: url(../images/textures/cms_content_header.png); repeat: repeat; position: left bottom; color: $color-darker-bg; } a { color: $color-text-blue-link; } .backlink { span.btn-icon-back { height:16px; } } h2 { font-size: $font-base-size + 2; font-weight: bold; margin: 0; margin-bottom: $grid-x; * { vertical-align: middle; } } .cms-content-header-info { float:left; padding-top: 6px; & * { display: inline-block; // align back button and breadcrumbs } .section-icon { opacity: 0.2; margin-right: 4px; background-repeat: no-repeat; } } // Reset to default styles .ss-ui-button { line-height: $grid-x*3; .ui-button-text { line-height: 1.4; } } } .cms-edit-form.CMSMain { padding: 0; } // Hide threeColumnCompressor column. .cms-container { .column-hidden { display: none; } } /** -------------------------------------------- * Tabs * -------------------------------------------- */ .ui-tabs { padding: 0; background: none; .ui-tabs { position: static; } .ui-tabs-panel { padding: $grid-x*3; background: transparent; // default it's white border: 0; // suppress default borders &.cms-edit-form { padding: 0; } &.cms-panel-padded { padding: $grid-y*2 $grid-x*2; } } .ui-widget-header { border: 0; background: none; } .ui-tabs-nav { float: right; margin: $grid-x*2 0 -1px 0; padding: 0 $grid-x*1.5 0 0; border-bottom: none; ~ .ui-tabs-panel { border-top:1px solid $color-button-generic-border; clear: both; } li { top: 0; float: left; border-bottom: 0 !important; a { @include inline-block; float: none; font-weight: bold; color: $color-text; line-height: $grid-y * 4; padding: 0 $grid-x*2 0; } &:last-child { // correctly right-align last tab margin-right: 0; } &.ui-tabs-active { margin-bottom: 0; } } .ui-state-default { border:1px solid $color-button-generic-border; background: darken($color-widget-bg, 10%); a { color: lighten($color-text, 10%); text-shadow: lighten($color-tab, 5%) 0 1px 0; } } .ui-state-active { padding-bottom: 1px; border: 1px solid $color-button-generic-border; background-color: darken($tab-panel-texture-color, 2%); a { color: $color-text; } } &.ui-state-active { border-color: $color-medium-separator; } li.cms-tabset-icon { text-indent:-9999em; a { display: block; padding-left: 40px; // icon width padding-right: 0; } &.list a {background: sprite($sprites64, tab-list) no-repeat;} &.tree a {background: sprite($sprites64, tab-tree) no-repeat;} &.gallery a {background: sprite($sprites64, tab-gallery) no-repeat;} &.edit a {background: sprite($sprites64, tab-edit) no-repeat;} &.search a {background: sprite($sprites64, tab-search) no-repeat;} &.list.ui-state-active a {background: sprite($sprites64, tab-list-hover) no-repeat;} &.tree.ui-state-active a {background: sprite($sprites64, tab-tree-hover) no-repeat;} &.gallery.ui-state-active a {background: sprite($sprites64, tab-gallery-hover) no-repeat;} &.edit.ui-state-active a {background: sprite($sprites64, tab-edit-hover) no-repeat;} &.search.ui-state-active a {background: sprite($sprites64, tab-search-hover) no-repeat;} } } .cms-panel-padded { .ui-tabs-panel { padding: 0; // Avoid double padding with parent .ui-tabs-panel { padding: $grid-x 0 0 0; } } .Actions { padding: 0; // Avoid double padding with parent } } &.ss-tabset-tabshidden .ui-tabs-panel { border-top: none; } } /** * Primary styles which sit on top of screen, with different tab colors. * TODO Only use one "primary" selector and fix HTMLEditorField TabSet addExtraClass() */ .ui-tabs.cms-tabset-primary .ui-tabs-nav, .ui-tabs .ui-tabs-nav.cms-tabset-nav-primary, .ui-tabs .cms-content-header-tabs .ui-tabs-nav { margin-top: 0; border-left: 1px solid darken($color-tab, 15%); float: none; // parent container is already right floated li { margin-right: 0; // tabs are directly adjacent margin-top: 0; a { margin: 0; // overlap divider line below line-height: 40px - 1px; } } .ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr, .ui-corner-tl { border-radius:0; } .ui-state-default { @include box-shadow($color-shadow-light 0 0 2px); background-color: $color-base; @include background-image( linear-gradient(lighten($color-base, 12%), $color-base) ); border-top:none; border: { right-color: darken($color-base, 15%); left-color: lighten($color-base, 10%); } } .ui-state-active { @include box-shadow(none); background:darken($tab-panel-texture-color,2%); border-top: none; border: { right-color: darken($color-tab, 15%); // same color as divider between header and body, needed for IE left-color: $tab-panel-texture-color; } z-index:2; a { border-bottom: none; } } } .cms-content-header-tabs { float: right; } /** ------------------------------------------------------- * Loading Interface * ------------------------------------------------------- */ .cms-content-loading-overlay { position: absolute; // z-index doesn't apply properly without that top: 0; left: 0; width: 100%; height: 100%; z-index: 9998; // Further styling by .ui-widget-overlay-light which is usually applied at the same time } .cms-content-loading-spinner { position: absolute; // z-index doesn't apply properly without that top: 0; left: 0; width: 100%; height: 100%; z-index: 9999; background: url(../images/spinner.gif) no-repeat 50% 50%; } /** ----------------------------------------------- * Loading Screen * ------------------------------------------------ */ .ss-loading-screen { width: 100%; height: 100%; overflow: hidden; position: absolute; z-index: 100000; // TODO Convert to compass gradient include background: #fff; background: -moz-radial-gradient(50% 50% 180deg, circle cover, #FFFFFF, #EFEFEF, #C7C7C7 100%); background: -webkit-gradient(radial, 50% 50%, 350, 50% 50%, 0, from(#E3E3E3), to(white)); .loading-logo { width: 100%; height: 100%; overflow: hidden; position: absolute; background: transparent url(../images/silverstripe_logo.png) no-repeat 50% 50%; } p { width: 100%; text-align: center; position: absolute; bottom: 80px; z-index: 100001; span.notice { width: 300px; font-size: 14px; padding: 10px 20px; color: #dc7f00; border: none; background: none; @include border-radius(5px); display: inline-block; zoom: 1; *display: inline; } } .loading-animation { display: none; position: absolute; left: 50%; margin-left: -21.5px; // Half of spinner size top: 80%; } } /** -------------------------------------------- * Actions * -------------------------------------------- */ .cms-content-actions, .cms-preview-controls { margin: 0; padding: $grid-y*1.5 $grid-y*1.5; z-index: 999; border-top: 1px solid lighten($color-separator, 4%); @include box-shadow( 1px 0 0 $tab-panel-texture-color, $box-shadow-shine 0 1px 0px inset, $color-shadow-light 0 0 1px); height: 28px; background-color: $tab-panel-texture-color; } /** -------------------------------------------- * Messages * -------------------------------------------- */ .message { // White display: block; clear: both; margin: 0 0 $grid-y; padding: $grid-y + $grid-x/4 $grid-x + $grid-x/2; font-weight: normal; border: 1px #ccc solid; background: #fff; // for browsers that don't understand rgba background: rgba(#fff,0.5); text-shadow: none; @include border-radius(3px 3px 3px 3px); &.notice { background-color: lighten($color-notice,22%); // Blue border-color: $color-notice; } &.warning { // Yellow background-color: lighten($color-warning,47%); border-color: $color-warning; } &.error, &.bad, &.required, &.validation { // Red background-color: lighten($color-error,24%); border-color: $color-error; } &.good { // Green background-color: lighten($color-good,40%); border-color: $color-good; } p { margin: 0; } } .cms-edit-form { .message { margin: $grid-x*2; // TODO Remove double padding when adjacent to a padded tabs panel } .ui-tabs-panel { .message { margin: $grid-x*2 0; // gets padding from tab panel } } } .notice-item { border: 0; @include border-radius(3px); font-family: inherit; font-size: inherit; padding: 8px 10px 8px 10px; } .notice-item-close { color: #333333; background: url(../images/filter-icons.png) no-repeat 0 -20px; width: 1px; height: 1px; overflow: hidden; padding: 0px 0 20px 15px; } /** -------------------------------------------- * Page icons * -------------------------------------------- */ .page-icon, a .jstree-pageicon { display: block; width: 16px; height: 16px; background: transparent url(../images/sitetree_ss_pageclass_icons_default.png) no-repeat; } .page-icon { &.class-HomePage { background-position: 0 -48px; } &.class-RedirectorPage { background-position: 0 -16px; } &.class-VirtualPage { background-position: 0 -32px; } &.class-ErrorPage { background-position: 0 -112px; } } /** -------------------------------------------- * "Add page" dialog * -------------------------------------------- */ .cms-page-add-form-dialog { display: none; } .cms-add-form { .step-label { opacity:0.9; .flyout { height:17px; //centres number within the grey arrow padding-top:5px; } .title { padding-top:5px; //aligns label with point of arrow font-weight:bold; //to match pagetype label @include text-shadow(1px 1px 0 $color-text-shadow); } } ul.SelectionGroup { padding-left:28px; overflow: visible; @include legacy-pie-clearfix; } .parent-mode { padding: $grid-x; overflow: auto; } } #PageType { ul { padding-left: 20px; li { float: none; width: 100%; padding: 9px 0 9px 15px; overflow: hidden; border-bottom-width: 2px; border-bottom: 2px groove lighten($color-shadow-light, 95%); -webkit-border-image: url(../images/textures/bg_fieldset_elements_border.png) 2 stretch stretch; border-image: url(../images/textures/bg_fieldset_elements_border.png) 2 stretch stretch; &:last-child { border-bottom: none; } &:hover, &.selected { background-color: $color-highlight-opacity; } &.disabled { color: $color-text-disabled; @include opacity(0.5); &:hover { background: none; } } input { margin: inherit; } label { padding-left: 0; padding-bottom: 0; } input, label, .page-icon, .title { float: left; line-height: 1.3em; } .page-icon { margin: 0 4px; } .title { width: 120px; font-weight: bold; padding-right: 10px; } .description { font-style: italic; // Undo some generic styles from tooltips display: inline; clear: none; margin: 0; } } } } /** -------------------------------------------- * Content toolbar * -------------------------------------------- */ .cms-content-toolbar { min-height: 29px; display: block; margin: 0 0 $grid-y*1.5 0; padding-bottom: 0; @include doubleborder(bottom, $color-light-separator, $box-shadow-shine); @include legacy-pie-clearfix(); .cms-tree-view-modes { float:right; padding-top:$grid-y - 3; * { display: inline-block; label { color:$color-text-blue-link; } } } /* smaller treedropdown */ .chzn-container-single .chzn-single { height: 26px; line-height: 26px; padding-left:25px; color: darken($color-dark-grey, 15%); @include background-image( linear-gradient($color-button-generic, darken($color-button-generic, 10%)) ); font: { size:13px; weight:bold; } text-shadow:darken($color-text-shadow, 10%) 0 -1px 1px; box-shadow:none; &:hover { @include box-shadow(0 0 5px darken($color-button-generic, 20%)); @include background-image( linear-gradient(lighten($color-button-generic, 2%), darken($color-button-generic, 8%)) ); } &:active { @include box-shadow(inset 0 1px 3px darken($color-button-generic, 60%)); } span { padding-top:1px; } div { border-left:none; width:100%; } div b { background: url(../images/sprites-32x32/menu-arrow-deselected-down.png) no-repeat 9px 11px; float:right; width:24px; } } .ss-ui-button { margin-bottom: $grid-y; } } /* -------------------------------------------------------- * Content Tools is the sidebar on the left of the main content * panel */ .cms-content-tools { background: $tab-panel-texture-color; width: $grid-x * 36; overflow-y: auto; overflow-x: hidden; z-index: 70; border-right: 1px solid $color-separator; @include box-shadow($box-shadow-shine -1px 0 0 inset, 0 0 1px $color-shadow-light); float: left; position: relative; &.filter{ padding:0 !important; } .cms-panel-header { clear: both; margin: 10px 0 $grid-y - 1; padding-bottom: 2px; line-height: $grid-y * 3; @include doubleborder(bottom, $color-light-separator, $box-shadow-shine); } .cms-panel-content { width: $grid-x * 34; padding: $grid-x*1.1 $grid-x 0; // smaller left/right padding to use space efficiently overflow: auto; height:100%; .Actions .ss-ui-action-constructive { margin-right:5px; //accounts for the scrollbar in the filter - keeps the actions on one line instead of wrapping onto two. } } .cms-content-header { background-color: darken($color-widget-bg, 40%); @include background-image( linear-gradient(darken($color-widget-bg, 20%), darken($color-widget-bg, 40%)) ); h2 { text-shadow: darken($color-widget-bg, 50%) -1px -1px 0; width: $grid-x * 22 /* 24 - (padding on each side + margin) */; color: lighten($color-widget-bg, 60%); @include hide-text-overflow(); } } h3,h4,h5 { font-weight: bold; line-height: $grid-y * 2; } h3 { font-size: $font-base-size + 1; } h4 { font-size: $font-base-size; margin:5px 0; } .ui-widget-content { background: none; } .field { /* * Fields are more compressed in the sidebar compared to the * main content editing window so the below alters the internal * spacing of the fields so we can move that spacing to between * the form fields rather than padding */ label { float: none; width: auto; font-size: 11px; padding: 0 $grid-x 4px 0; } .middleColumn { margin: 0; } input.text, select, textarea { padding: 5px; font-size: 11px; } &.checkbox { padding: 0 0 8px; input { margin: 2px 0; } } .description { margin-left: 0; } } .fieldgroup { .fieldgroup-field { padding: 0; .field { margin: 0; padding: 0; } } } table { margin: 8px -4px; thead { th { color: $color-text-dark; font-weight: bold; line-height: 16px; font-size: 11px; padding: 4px; } } tr { &.active { background-color: $color-menu-button; color: $color-text-light; td.first-column { @include border-radius(6px 0 0 6px); } td.last-column { @include border-radius(0 6px 6px 0); } } } td { padding: 4px; line-height: 16px; vertical-align: top; } } td { border-bottom: 1px solid darken($color-widget-bg, 10%); padding: $grid-y - 1 2px; font-size: 11px; } } /** ------------------------------------------------------------------ * CMS notice, used for filter messages, but generic enough to use elsewhere * ----------------------------------------------------------------- */ .cms-notice { display: block; margin: 0 0 8px; padding: 10px 12px; font-weight: normal; border: 1px $color-light-separator solid; background: #fff; // for browsers that don't understand rgba background: rgba(#fff,0.5); text-shadow: none; @include border-radius(3px); } /** * CMS Batch actions */ .cms-content-batchactions { float: left; position: relative; display: block; .view-mode-batchactions-wrapper { height: 18px; float: left; padding: 4px 6px; border: 1px solid #aaa; margin-bottom: 8px; margin-right:-1px; background-color: #D9D9D9; @include background-image(linear-gradient(top, #fff, #D9D9D9)); border-top-left-radius: 4px; border-bottom-left-radius: 4px; input { vertical-align: middle; } label { vertical-align: middle; display: none; } fieldset, .Actions { display: inline-block; } #view-mode-batchactions { margin-top: 2px; } } &.inactive .view-mode-batchactions-wrapper { border-radius: 4px; label { display: inline; } } form > * { display: block; float: left; } form.cms-batch-actions { float: left; } &.inactive form { display: none; } .chzn-container-single { display: block; .chzn-single { border-radius: 0; @include background-image(linear-gradient(top, #fff, #D9D9D9)); span { padding-top: 0; } } } .cms-batch-actions { .dropdown { margin: 0; .chzn-single { padding-left: 8px; /* use default size without icon */ } } .Actions .ss-ui-button { padding-top: 4px; padding-bottom: 4px; height: 28px; margin-left: -1px; border-top-left-radius: 0; border-bottom-left-radius: 0; &.ui-state-disabled { opacity: 1; color: #ccc; } } } } #Form_BatchActionsForm select { width: 200px; } /** -------------------------------------------- * Preview * -------------------------------------------- */ .cms-switch-view { a { padding-right: 1em; } } /** -------------------------------------------- * Member Profile * -------------------------------------------- */ form.member-profile-form { padding: 0 $grid-x*2 0 0; #Root_Permissions { clear:both; border-top: 1px solid darken($color-tab, 20%); } #Root_Main { clear:both; border-top: 1px solid darken($color-tab, 20%); .cms-help-toggle { text-indent: -9999em; display: inline-block; width: 20px; background:url(../images/question.png) no-repeat 0px 0px; } } #FavouritePageID { margin-top:$grid-y; } #CsvFile .middleColumn { background: none !important; } .advanced h4 { margin-bottom: .5em; } .Actions { text-align: left; border: 0; } input.customFormat { width: $grid-x * 10; border: 1px solid #ccc !important; padding: 3px; display: inline-block; margin-left: 1em; } .formattingHelpToggle { display: block; font-size: 11px; } .formattingHelpText { margin: 5px 0 0 -5px; color: #333; padding: 5px 10px; background: #fff; border: 1px solid #ccc; } .formattingHelpText ul { padding: 0; } .formattingHelpText li { font-size: 11px; color: #333; margin-bottom: 2px; padding-bottom: 0; float: none; width: auto; } #Groups .middleColumn { margin-left: 0; width: 100%; .TreeDropdownField { width: 90%; max-width: 90%; } } // Same rules in .SecurityAdmin #Permissions { .optionset { li { float: none; width: auto; } } } } .memberdatetimeoptionset { .description { font-style: normal; } .toggle { font-size: $font-base-size - 1; } } .cms { .cms-content { border-right: 1px solid #BBB; @include border-radius(0); background: $tab-panel-texture-color; width: 800px; z-index: 40; } .cms-content-fields { // always show a y scroll bar as popups like TreeDropdowns // can trigger longer pages and the extra scroll bar doesn't fire our sizing bar overflow-y: auto; overflow-x: auto; background: darken($tab-panel-texture-color, 2%); width:100%; #Root_Main { .confirmedpassword { border-bottom:none; box-shadow:none; } .customFormat { max-width:80px; } .cms-help-toggle { text-indent: -9999em; display: inline-block; width: 20px; background:url(../images/question.png) no-repeat 0px 0px; } } #Root_Permissions{ ul.optionset li { float:none; } } } form.member-profile-form { #Root .ui-tabs-nav { display: none; } #Root_Main, #Root_Permissions { border: none; } } } /** -------------------------------------------- * "Settings" Form * -------------------------------------------- */ #CanViewType, #CanEditType, #CanCreateTopLevelType { .optionset li { // All options on their own line float: none; width: auto; white-space: nowrap; } } #ViewerGroups, #EditorGroups, #CreateTopLevelGroups { select { // Fix for chosen.js width detection on hidden elements. // TODO Remove once .field styling in _form.scss is refactored to allow flexible field widths width: $grid-x * 64; } } /** -------------------------------------------- * Panels * -------------------------------------------- */ .cms-panel { overflow: hidden; .cms-panel-toggle { @include box-shadow(0 0 1px $box-shadow-shine); &.south { border-top: 1px solid darken($color-base, 6%); @include box-shadow(lighten($color-base, 4%) 0 1px 0px inset); position: absolute; bottom: 0; width:100%; } a { display: block; text-align: right; padding: $grid-y/2 0; width: 100%; text-decoration: none; span { display: inline-block; margin: 0 5px; color: #555d60; font-size: 16px; } &.toggle-expand { width: 40px; // will set the collapsed width display: none; } } } &.cms-content-tools .cms-panel-toggle { &.south { border-top: 1px solid darken($tab-panel-texture-color,10%); @include box-shadow($box-shadow-shine 0 1px 0px inset); } } &.collapsed { cursor: pointer; .cms-panel-header *, .cms-panel-content, .cms-panel-toggle a.toggle-collapse{ display:none; } .cms-panel-toggle a.toggle-expand { display: block; } } .cms-panel-header { width: 100%; } &#cms-content-tools-CMSPageEditController { .cms-panel-content-collapsed { width: 40px; display: none; // Avoids FOUC h2, h3 { border-bottom: 0; margin-left: $grid-y; @include transform-origin(bottom, right); @include rotate(270deg); } .cms-panel-header { width: 600px; position:relative; top:24px; right:577px; text-align:right; } } } .cms-panel-content-collapsed { width: 40px; display: none; // Avoids FOUC h2, h3 { border-bottom: 0; margin-left: $grid-y; @include transform-origin(bottom, right); @include rotate(270deg); } .cms-panel-header { width: 600px; position:relative; right:577px; text-align:right; border-bottom:none; box-shadow:none; } } .child-flyout-indicator { width:0; height:0; border-right:3px dashed $color-text-dark; border-top:3px solid transparent; border-left:3px solid transparent; border-bottom:3px dashed $color-text-dark; position: absolute; right: 1px; margin-top: -8px; display: none; /* To be shown by javascript, see LeftAndMain.Panel.js */ } .collapsed-flyout { display: block !important; left: 41px; margin-top: -40px; position: fixed; width: 191px; li a span { display: block !important; } } } .cms { .cms-panel-padded { padding: $grid-y*2 $grid-x*2; margin:0; } } /** ------------------------------------------------------------------ * Dialog * * Contained in a jQuery UI dialog ('.ui-dialog'), with either inline * markup (for the "insert" dialogs), or an iframe (for member profile). * ----------------------------------------------------------------- */ // overlay for switching between CMS panes .cms .ui-widget-overlay-light { background: #aaaaaa url(../../thirdparty/jquery-ui-themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: 0.3; } // Adjusting the color of the background overlay to be darker for pop-up dialogs (created by jQuery-UI) .cms .ui-widget-overlay { background-color: #000; background-image: none; } .cms .ui-dialog{ .ss-ui-dialog.ui-dialog-content { padding-top: 0px; //removes padding so that tabs are flush with header } } // Elements with this class can either frame inline markup or an iframe, // most styles should be applied to .cms-dialog instead (which declares the content in the frame) .ui-dialog { background: url("../images/textures/bg_cms_main_content.png") repeat left top #F0F3F4; background-clip: content-box; border: 1px solid #666 !important; @include border-radius($grid-y); overflow: visible; padding: 0; @include box-shadow(0px 0px 30px 10px rgba(0,0,0,.3)); // Titlebar for pop-up dialog. .ui-dialog-titlebar.ui-widget-header { font-size: $font-base-size+2; padding: 0; border:none; background: { color:transparent; image:url(../images/textures/cms_content_header.png); repeat:repeat; } @include box-shadow($color-shadow-dark 0 0 ($grid-x / 2) inset); .ui-dialog-title { position:absolute; } } .ui-dialog-content { @include border-radius($grid-y); overflow: auto; // TODO Replace with proper $.layout grid &.loading { background-image: url(../images/spinner.gif); background-position: 50% 50%; background-repeat: no-repeat; } } .cms-dialog-content { background: url("../images/textures/bg_cms_main_content.png") repeat left top #F0F3F4; padding-bottom: $grid-y; padding-top:0px; .Actions { overflow: auto; margin: $grid-y 0; padding-bottom: $grid-y; float: right; } .ui-tabs{ position:static; // Shift navigation upwards to be horizontally centered with dialog title. // Can't use floats since this title is in a different DOM parent sibling // Note: Does NOT apply to member profile form (unnecessary, since it doesn't have a dialog title) .ui-tabs-nav { position:absolute; top:0; // Tabs nav is included in scollbar. By absolutely positioning it off the edge, // we avoid tabs shifting position when scrollbar toggles right: 40px; } // Don't show top border, since these styles already have a title bar .ui-tabs-panel { border: 0; } } .clear { clear: both; } } &.loading { background-image: url(../images/spinner.gif); background-position: 50% 50%; background-repeat: no-repeat; } } body.cms-dialog { overflow: auto; background: url("../images/textures/bg_cms_main_content.png") repeat left top #F0F3F4; position:relative; } /** -------------------------------------------- * "Insert X" forms * -------------------------------------------- */ .htmleditorfield-dialog{ &.ui-dialog-content{ padding:0; position:relative; } .htmleditorfield-from-web { .CompositeField{ @include clearfix; } #RemoteURL{ border:none; @include box-shadow-none; width:55%; max-width:512px; float:left; position: relative; label { position: absolute; left: 8px; top: 13px; font-weight: normal; color: #888; } .middleColumn { margin-left: 0; } input.remoteurl { padding-left: 40px; max-width: 350px; } } button.add-url{ margin-top:20px; @include clearfix; border:none; background:none; opacity:0.8; cursor: hand; .btn-icon-addMedia{ width:20px; height:20px; } .ui-button-text{ margin-left:10px; padding-top:10px; } &:hover, &:active{ border:none; @include box-shadow-none; opacity:1; } &.ui-state-disabled { &, &:hover, &:active { opacity: 0.35; filter: Alpha(Opacity=35); } } } .loading button.add-url .ui-icon { background-image: url(../images/throbber.gif); background-position: 50% 50%; background-repeat: no-repeat; } } .cms-content-header{ padding:0; width:100%; height: 40px; h3{ padding: 3px 8px; margin: 10px; } } .ss-insert-media, .Actions, .ss-insert-link{ padding:$grid-y $grid-x*2 ; .ui-tabs-panel { padding: 0; } } .details{ .file-url{ display:block; width:300px; @include hide-text-overflow; } .cms-file-info{ .field{ border:none; @include box-shadow(0 0 0 rgba(0, 0, 0, 0)); } } .field{ border-bottom: 1px solid $color-shadow-light; @include box-shadow(0 1px 0 lighten($color-shadow-light, 95%)); &.last{ border-bottom:none; @include box-shadow(0 0 0 rgba(0, 0, 0, 0)); margin-bottom:0; } } } .CompositeField{ .text{ select{ margin: 5px 0 0 0; } } } } .htmleditorfield-linkform { .step2 { margin-bottom: $grid-x*2; } .ss-uploadfield { .middleColumn { width: auto; } } } .htmleditorfield-mediaform { .ss-gridfield { .gridfield-button-delete { // TODO Remove from PHP instead of hiding display: none; // delete action shouldn't be allowed here } table.ss-gridfield-table { tbody td:first-child { padding: 0; text-align: center; img { max-height: 30px; // same thumbnail size as uploadfield rows } } tr td { padding: $grid-x/2; // more compressed space } } } .htmleditorfield-from-web, .htmleditorfield-from-cms { .ss-uploadfield { .middleColumn { width:auto; background:none; border:none; margin-top:13px; } } } .htmleditorfield-from-cms { .ss-uploadfield { h4 { float: left; // headline and dropdown on same line margin-top: $grid-y/2; // bring to same baseline as dropdown margin-bottom: 0; } .middleColumn { margin-top: $grid-y*2; // same as left-floated h4 margin-left: $grid-x*23; // make room for headline min-width: 0; // fit within available space clear: none; // headline and dropdown on same line } .field.treedropdown { border-bottom: 0; // don't show border, dropdown and gridfield visually belong together padding: 0; } } } .ss-assetuploadfield .ss-uploadfield-editandorganize { .ss-uploadfield-files { .ss-uploadfield-item-info { background-color: grayscale(#5db4df); @include background-image(linear-gradient(top, grayscale(#5db4df) 0%, grayscale(#5db1dd) 8%, grayscale(#439bcb) 50%, grayscale(#3f99cd) 54%, grayscale(#207db6) 96%, grayscale(#1e7cba) 100%)); } } } } /** -------------------------------------------- * Search forms (used in AssetAdmin, ModelAdmin, etc) * -------------------------------------------- */ .cms-search-form { margin-bottom: $grid-y*2; .filter &{ margin-bottom:0; } .Actions { padding: 0; } } /** -------------------------------------------- * Step labels * -------------------------------------------- */ .step-label { & > * { display: inline-block; vertical-align: top; } .flyout { height: 26px - 2*4px; // minus padding font-size: $font-base-size+2; font-weight: bold; @include border-top-left-radius(3px); @include border-bottom-left-radius(3px); background-color: #667980; // hardcoding colour since its tied to the sprite padding: 4px 3px 4px 6px; text-align: center; text-shadow: none; color: #fff; } .arrow { height: 26px; width: 10px; background: sprite($sprites32, numeric-label) no-repeat; margin-right: 4px; } .title { height: 26px - 2*4px; // minus padding padding: 4px; } } /** -------------------------------------------- * Item Edit Form * -------------------------------------------- */ .cms-file-info { overflow: auto; // Emulate .field bottom border styling without applying .field class, // as it messes up the nested .field element styling (blocklevel labels) border-bottom: 1px solid $color-shadow-light; @include box-shadow(0 1px 0 lighten($color-shadow-light, 95%)); margin-bottom: $grid-x; // Preview might not always be available .cms-file-info-preview { float: left; width: $grid-x * 22; // Same as ".field label" margin-right: $grid-x; img { max-width: $grid-x * 22; // Same as ".field label" max-height: $grid-x * 16; // Fitting typical info displayed (~5 rows) } } .cms-file-info-data { float: left; width: 55%; .field { // Unsetting styles from .field, make it more compact visually margin: 0; padding-bottom: $grid-x; border: none; box-shadow: none; label.left { width: $grid-x*12; } .middleColumn { margin-left: $grid-x*13; } label, span { padding: 0; } } } } form.small { .cms-file-info-preview { width: $grid-x*14; img { max-width: $grid-x*14; } } .cms-file-info-data { // Ensure it fits beside the image preview, increased size for long url max-width: 550px; // Reduced label widths to fit everything in smaller space .field { padding-bottom: 0; label { width: $grid-x*14; } .middleColumn { margin-left: $grid-x*15; } } } } /** -------------------------------------------- * Users Members Admin * -------------------------------------------- */ .members_grid { span button#action_gridfield_relationfind { display:none; //hides find button - redundant functionality } p button#action_export { span.btn-icon-download-csv { height:17px; //exact height of icon } } } /** * Import forms */ body.SecurityAdmin { background-color: darken($tab-panel-texture-color,2%); //adds background to import members/groups iframe } form.import-form { ul { list-style: disc; li { margin-left: 20px; } } p { margin-bottom: 5px; } label.left { width: 250px; } } /** -------------------------------------------- * Page Edit Controller * -------------------------------------------- */ /*.cms-container { .CMSPageEditController, .CMSPageSettingsController, .CMSPageHistoryController { // Fix pixel gap between nav tree and main page header margin-left: -1px; // Removed to close gap far right of right tabs? } }*/ /** -------------------------------------------- * Page Settings Controller * -------------------------------------------- */ .cms-container .CMSMain.CMSPageSettingsController { .tab#Root_Settings { .optionset li { white-space:nowrap; label { padding-left:2px; } } .fieldgroup .fieldgroup-field { width:$grid-x*27; padding-left:0; } } } /** -------------------------------------------- * Buttons for FileUpload * -------------------------------------------- */ .ss-uploadfield-item-edit-all .ui-button-text{ padding-right:0; } .toggle-details-icon { background: sprite($sprites32, menu-arrow-down) no-repeat; .ss-uploadfield-item-edit-all &{ background: sprite($sprites32, menu-arrow-deselected-down) no-repeat; display:inline-block; width:8px; height:8px; padding-left:5px; } &.opened { background: sprite($sprites32, menu-arrow-up) no-repeat; .ss-uploadfield-item-edit-all &{ background: sprite($sprites32, menu-arrow-deselected-up) no-repeat; } } } /** -------------------------------------------- * Hide preview toggle link by default. May be shown in IE7 stylesheet and forced to show with js if needed * -------------------------------------------- */ .cms .Actions > .cms-preview-toggle-link, .cms .cms-navigator > .cms-preview-toggle-link{ display:none; }