{# ======================================================================== EasyAdmin Default Theme | (c) 2015 Javier Eguiluz | MIT License ======================================================================== #} {% set color_schemes = { 'dark': { info: '#39A0ED', warning: '#F0AD4E', danger: '#D42124', success: '#006B2E', text: '#222222', text_muted: '#737373', link: '#205081', black: '#111111', white: '#FFFFFF', gray_darker: '#252525', gray_dark: '#444', gray: '#AAA', gray_light: '#CCC', gray_lighter: '#F5F5F5', page_background: '#F5F5F5', table_header: '#EEE', table_border: '#CCC', table_row_border: '#DDD', }, 'light': { info: '#39A0ED', warning: '#F0AD4E', danger: '#D42124', success: '#006B2E', text: '#444444', text_muted: '#737373', link: '#205081', black: '#333333', white: '#FFFFFF', gray_darker: '#444', gray_dark: '#AAA', gray: '#CCC', gray_light: '#F5F5F5', gray_lighter: '#FAFAFA', page_background: '#FFFFFF', table_header: '#FAFAFA', table_border: '#FFFFFF', table_row_border: '#E5E5E5', } } %} {% set colors = color_schemes[color_scheme] %} {% autoescape false %} {# ------------------------------------------------------------------------- RESET STYLES ------------------------------------------------------------------------- #} {# make the Symfony Web Toolbar look nice by neutralizing the aliasing applied globally by the AdminLTE template styles #} .sf-toolbarreset { -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: auto; } {# ------------------------------------------------------------------------- BASIC STYLES ------------------------------------------------------------------------- #} body { font-family: Helvetica, "Helvetica Neue", Arial, sans-serif; -webkit-font-smoothing: antialiased; } h1, h2, h3, h4, h5, h6 { font-family: Helvetica, "Helvetica Neue", Arial, sans-serif; } {# Links ------------------------------------------------------------------------- #} a { color: {{ colors.link }}; } a:hover { opacity: 0.9; } a:active { outline: 0; } #main a:active { position: relative; top: 1px; } a.text-primary, a.text-primary:focus { color: {{ colors.link }}; } a.text-danger, a.text-danger:focus { color: {{ colors.danger }}; } a.text-primary:hover, a.text-danger:hover { opacity: 0.9; } {# Lists ------------------------------------------------------------------------- #} ul, ol { margin: 1em 0 1em 1em; padding: 0; } li { margin-bottom: 1em; } ul.inline { list-style: none; margin: 0; } ul.inline li { margin: 0; } {# Flash messages ------------------------------------------------------------------------- #} div.flash { padding: .5em; } div.flash-success { background: {{ colors.success }}; color: {{ colors.white }}; } div.flash-error { background: {{ colors.danger }}; color: {{ colors.white }}; } div.flash-error strong { padding-right: .5em; } {# Labels ------------------------------------------------------------------------- #} {# this prevents overriding default styles for labels (label-info, label-primary, etc.) #} .label:not([class*=label-]) { background: {{ colors.gray_darker }}; } .label { color: {{ colors.white }}; display: inline-block; font-size: 11px; padding: 4px; text-transform: uppercase; } .label-success { {# !important is required to override AdminLTE styles #} background: {{ colors.success }} !important; } .label-danger { {# !important is required to override AdminLTE styles #} background: {{ colors.danger }} !important; } .label-empty { background: transparent; border: 2px dotted; border-radius: 4px; color: {{ colors.gray_light }}; padding: 4px 8px; } {# this makes boolean labels to be of the same width for most languages #} .boolean .label, .toggle .label { min-width: 33px; } {# Switches / toggles ------------------------------------------------------------------------- #} {# needed to neutralize the default .toggle styles applied by Bootstrap Toggle which collide with the .toggle class applied to too #} .toggle { position: initial; } .toggle:not(th) { position: relative; } .toggle.btn-xs { width: 44px; } .toggle-group .btn, .toggle-group .btn:hover { border-radius: 3px; font-size: 10px; font-weight: bold; text-transform: uppercase; } .toggle-group .btn { padding: 4px 6px; } .toggle-group .btn:hover { border: 0; } .toggle-group .btn + .btn { margin-left: 0; } .toggle-group .toggle-on, .toggle-group .toggle-on.btn-xs, .toggle-group .toggle-on:hover, .toggle-group .toggle-on:active, .toggle-group .toggle-on:active:hover { padding: 4px 5px 4px 0; border: 0; } .toggle-group .toggle-off, .toggle-group .toggle-off.btn-xs, .toggle-group .toggle-off:hover, .toggle-group .toggle-off:active, .toggle-group .toggle-off:active:hover { padding: 4px 0 4px 5px; border: 0; } .toggle-group .toggle-handle, .toggle-group .toggle-handle:hover, .toggle-group .toggle-handle:active, .toggle-group .toggle-handle:active:hover { background: {{ colors.gray_lighter }}; border: 0; border-radius: 2px; height: 19px; margin-top: 2px; padding: 5px; } .toggle .btn-success .toggle-handle { box-shadow: -2px 0 1px rgba(0, 0, 0, .2); } .toggle .btn-danger .toggle-handle { box-shadow: 2px 0 1px rgba(0, 0, 0, .2); } {# Badges ------------------------------------------------------------------------- #} span.badge { background-color: {{ brand_color }}; } {# Buttons ------------------------------------------------------------------------- #} .btn:focus { outline: none; } .btn + .btn { margin-left: 5px; } button.btn:active { position: relative; top: 1px; } .btn, .btn:hover, .btn:active, .btn:focus, .btn:active:hover { {% if 'dark' == color_scheme %} background: {{ colors.gray_light }}; {% elseif 'light' == color_scheme %} background: {{ colors.gray }}; {% endif %} border: 1px solid transparent; border-radius: 4px; box-shadow: none; color: {{ colors.text }}; display: inline-block; line-height: 1.42857143; opacity: 1; outline: none; padding: 6px 12px; text-align: center; } .btn-xs, .btn-xs:hover, .btn-xs:active, .btn-xs:focus, .btn-xs:active:hover { padding: 1px 5px; } .btn-default, .btn-default:hover, .btn-default:active, .btn-default:focus, .btn-default:active:hover { border-color: transparent; } .btn-primary, .btn-primary:hover, .btn-primary:active, .btn-primary:focus, .btn-primary:active:hover { background-color: {{ brand_color }}; border-color: transparent; color: {{ colors.white }}; } .btn-info, .btn-info:hover, .btn-info:active, .btn-info:focus, .btn-info:active:hover { background-color: {{ colors.info }}; border-color: transparent; color: {{ colors.white }}; } .btn-warning, .btn-warning:hover, .btn-warning:active, .btn-warning:focus, .btn-warning:active:hover { background-color: {{ colors.warning }}; border-color: transparent; color: {{ colors.white }}; } .btn-danger, .btn-danger:hover, .btn-danger:active, .btn-danger:focus, .btn-danger:active:hover { background-color: {{ colors.danger }}; border-color: transparent; color: {{ colors.white }}; } .btn-success, .btn-success:hover, .btn-success:active, .btn-success:focus, .btn-success:active:hover { background-color: {{ colors.success }}; border-color: transparent; color: {{ colors.white }}; } {# .bnt-secondary is for 'buttons' displayed as text links #} .btn-secondary, .btn-secondary:hover, .btn-secondary:active, .btn-secondary:focus, .btn-secondary:active:hover { background: transparent; color: {{ brand_color }}; text-decoration: underline; } .btn-secondary:hover { text-decoration: none; } .btn-primary, .btn-warning, .btn-danger, .btn-success, .btn-info { font-weight: bold; } .btn i { font-size: 16px; margin-right: 2px; } .btn-flat, .btn-flat:hover, .btn-flat:active, .btn-flat:focus, .btn-flat:active:hover { border-radius: 0; } {# Forms ------------------------------------------------------------------------- #} .form-inline .form-control { margin-bottom: 5px; } .form-control, .form-inline .form-control { border: 1px solid {{ colors.gray }}; border-radius: 0; {% if 'dark' == color_scheme %} box-shadow: 0 0 3px rgba(0, 0, 0, .15); {% endif %} color: {{ colors.text }}; -webkit-transition: none; transition: none; } .form-control:focus { {% if 'dark' == color_scheme %} border-color: {{ colors.gray_dark }}; box-shadow: 0 0 3px rgba(0, 0, 0, .15); {% elseif 'light' == color_scheme %} border-color: {{ colors.gray_darker }}; {% endif %} } .has-error .error-block { color: {{ colors.danger }}; font-weight: bold; padding-top: 5px; } .has-error .error-block .label-danger { margin-right: 3px; } .has-error .error-block ul { margin: .5em 0 .5em 1.5em; } .has-error .error-block ul li { margin-bottom: .5em; } .help-block, .has-error .help-block { color: {{ colors.text_muted }}; font-size: 13px; } .nullable-control { padding-top: 5px; } .form-actions.stuck { bottom: 0; position: fixed; {% if 'dark' == color_scheme %} background-color: {{ colors.gray_lighter }}; box-shadow: 0 -1px 4px {{ colors.gray_light }}; {% elseif 'light' == color_scheme %} background-color: {{ colors.gray_light }}; box-shadow: 0 -1px 4px {{ colors.gray }}; {% endif %} height: 52px; padding-top: 10px; {% if kernel_debug|default(false) %} height: 85px; padding-bottom: 45px; {% endif %} z-index: 9999; } .field-group .box-header a i { font-size: 21px; } .field-group .box-header a[aria-expanded=true] .fa-plus-square-o { display: none; } .field-group .box-header a[aria-expanded=false] .fa-minus-square-o { display: none; } {# Field: collection ------------------------------------------------------------------------- #} .field-collection .collection-empty { margin: .5em 0; } {# Field: special Form Fields (dividers, groups, sections) ------------------------------------------------------------------------- #} .field-divider hr { margin-top: 15px; margin-bottom: 26px; border: 0; border-top: 1px solid; {% if 'dark' == color_scheme %} border-top-color: #DDD; {% elseif 'light' == color_scheme %} border-top-color: {{ colors.gray_lighter }}; {% endif %} } .field-group .field-divider hr { {% if 'dark' == color_scheme %} border-top-color: #DDD; {% elseif 'light' == color_scheme %} border-top-color: #EEE; {% endif %} } .field-section { margin: 16px 0 15px; } .field-section h2 { {% if 'dark' == color_scheme %} border-bottom: 1px solid {{ colors.gray_light }}; color: {{ colors.gray_dark }}; {% elseif 'light' == color_scheme %} border-bottom: 1px solid #EEE; color: {{ colors.gray_darker }}; {% endif %} font-size: 16px; padding-bottom: 6px; } .field-section h2 i { {% if 'dark' == color_scheme %} color: #555; {% elseif 'light' == color_scheme %} color: #777; {% endif %} margin-right: 2px; } .field-section p.help-block { margin: 8px 0 0; } .field-group .box { {% if 'dark' == color_scheme %} border: 1px solid #DDD; {% elseif 'light' == color_scheme %} border: 1px solid #EEE; {% endif %} box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); } .field-group .box-header i { {% if 'dark' == color_scheme %} color: #555; {% elseif 'light' == color_scheme %} color: #777; {% endif %} margin-right: 2px; } .field-group .box-header.with-border { {% if 'dark' == color_scheme %} background: #F0F0F0; border-bottom-color: #DDD; {% elseif 'light' == color_scheme %} background: {{ colors.gray_light }}; border-bottom-color: #EEE; color: {{ colors.gray_darker }}; {% endif %} padding: 11px 10px 9px; } {% if 'light' == color_scheme %} .field-group .box-header .box-title { color: #777; } {% endif %} .field-group .box-body { padding: 15px 15px 5px; } .field-group .box-body > .help-block { margin-top: 0; } {# Select2 widget ------------------------------------------------------------------------- #} {# these styles must be applied after loading the default select2 styles #} .select2-container { width: 100% !important; } .select2-container--bootstrap .select2-selection { border: 1px solid {{ colors.gray }}; border-radius: 0; box-shadow: 0 0 3px rgba(0, 0, 0, .15); color: {{ colors.text }}; -webkit-transition: none; transition: none; } .select2-container--bootstrap .select2-selection .select2-search--inline { margin: 0; } .select2-container--bootstrap .select2-selection--single .select2-selection__rendered { color: {{ colors.text }}; padding-top: 4px; } .select2-container--bootstrap .select2-results__option { margin-bottom: 0; } .select2-container--bootstrap .select2-results__option[aria-selected=true] { background-color: {{ colors.gray_light }}; font-weight: bold; } .select2-container--bootstrap .select2-results__option--highlighted[aria-selected] { background-color: {{ brand_color }}; } .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice { color: {{ colors.text }}; } .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove { color: {{ colors.danger }}; font-weight: bold; position: relative; top: -1px; } .select2-container--bootstrap .select2-search--dropdown .select2-search__field { border: 1px solid {{ colors.gray_dark }}; border-radius: 0; margin: 5px 10px; padding: 6px; width: 96%; } .select2-search--inline .select2-search__field:focus { outline: 0; border: 0; } {# VichUploaderBundle files and images ------------------------------------------------------------------------- #} .easyadmin-vich-image img { border: 3px solid {{ colors.white }}; box-shadow: 0 0 3px {{ colors.gray }}; max-height: 300px; max-width: 400px; } .easyadmin-vich-image input[type="file"], .easyadmin-vich-file input[type="file"] { padding-top: 7px; } .easyadmin-vich-file a { display: inline-block; padding-top: 7px; } {# the checkbox to delete the image/file #} .easyadmin-vich-file .field-checkbox { margin-bottom: 0; } .easyadmin-vich-file .field-checkbox .col-sm-2, .easyadmin-vich-image .field-checkbox .col-sm-2 { display: none; } {# Thumbnails and image lightbox ------------------------------------------------------------------------- #} .easyadmin-thumbnail img { border: 3px solid {{ colors.white }}; box-shadow: 0 0 3px {{ colors.gray }}; max-height: 100px; max-width: 100%; } .easyadmin-thumbnail img:hover { cursor: zoom-in; } .featherlight .easyadmin-lightbox:hover { cursor: zoom-out; } .easyadmin-lightbox { display: none; } .featherlight .easyadmin-lightbox { display: block; } .easyadmin-lightbox img { width: 100%; max-width: 100%; } {# Modal windows ------------------------------------------------------------------------- #} .modal-dialog .modal-content { border-radius: 0; } .modal-dialog .modal-content .modal-body h4 { font-size: 21px; margin: .5em 0; } .modal-dialog .modal-footer { background: {{ colors.gray_lighter }}; border-top: 1px solid {{ colors.gray_light }}; margin-top: 1.5em; } {# Utils ------------------------------------------------------------------------- #} .newrow, .new-row { clear: both; display: block; } {# ------------------------------------------------------------------------- LAYOUT ------------------------------------------------------------------------- #} {# Wrapper ------------------------------------------------------------------------- #} .content-wrapper { background: {{ colors.page_background }}; } .fixed .content-wrapper { padding-top: 50px; } {# Header ------------------------------------------------------------------------- #} .main-header { background: {{ brand_color }}; position: relative; } .main-header .logo { color: {{ colors.white }}; font-family: Helvetica, "Helvetica Neue", Arial, sans-serif; {# needed to override AdminLTE styles #} font-size: 18px; font-weight: bold; height: 45px; line-height: 45px; padding: 0; } .main-header .logo-long .logo-lg { font-size: 16px; } .main-header .logo-lg { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .main-header #header-logo { } .main-header img { margin-top: -2px; max-height: 36px; } .main-header li { margin-bottom: 0; } .main-header > .navbar { background-color: {{ brand_color }}; color: rgba(255, 255, 255, 0.9); margin-left: 0; min-height: 40px; } .main-header .navbar .sidebar-toggle { color: rgba(255, 255, 255, 0.8); display: inline-block; font-size: 16px; height: 35px; left: 0; line-height: 35px; padding: 0 15px; position: absolute; text-align: center; top: 45px; } .sidebar-mini.sidebar-collapse .sidebar-toggle { color: {{ colors.white }}; } .navbar-custom-menu, .navbar-custom-menu ul.navbar-nav, .navbar-custom-menu ul.navbar-nav .user-menu { float: none; } .navbar-custom-menu { background: rgba(255, 255, 255, 0.1); color: rgba(255, 255, 255, 0.8); font-size: 13px; font-weight: bold; height: 35px; line-height: 35px; padding: 0 15px; text-align: right; width: 100%; } .main-header .navbar .user-menu .btn { background: rgba(255, 255, 255, 0.05); border-color: transparent; color: #fff; } .main-header .navbar .user-menu .btn:active { top: 0; } .main-header .navbar .user-menu .btn.dropdown-toggle { padding: 6px 8px; } .main-header .navbar .user-menu .btn-group:hover .btn { background: rgba(255, 255, 255, 0.1); } .main-header .navbar .user-menu .btn-group { height: 35px; } .main-header .navbar .user-menu .btn-group .btn { border-radius: 0; } .main-header .navbar .user-menu .dropdown-menu { background: #fff; box-shadow: 1px 1px 3px #ccc; border-radius: 2px; position: absolute; left: auto; right: 0; } .main-header .navbar .user-menu .dropdown-menu i { margin: 0; } .main-header .navbar .user-menu .dropdown-menu a { color: #777; } {# Main body ------------------------------------------------------------------------- #} #content #main { padding-bottom: 3em; } .content { padding-top: 10px; } .content-header { padding: 12px 15px 0 15px; } .content-header h1 { margin: 0; font-size: 24px; } {# Sidebar ------------------------------------------------------------------------- #} .main-sidebar, .wrapper { {% if 'dark' == color_scheme %} background-color: #333; {% elseif 'light' == color_scheme %} background-color: {{ colors.gray_light }}; {% endif %} } .main-sidebar { padding-top: 80px; } .sidebar-menu li.header { {% if 'dark' == color_scheme %} color: #777; {% elseif 'light' == color_scheme %} color: {{ colors.gray_dark }}; {% endif %} font-size: 12px; font-weight: bold; text-transform: uppercase; } .treeview-menu > li.header { {% if 'dark' == color_scheme %} background: #404040; {% elseif 'light' == color_scheme %} background-color: {{ colors.gray_lighter }}; {% endif %} padding-left: 28px; } .sidebar-menu li a, .sidebar-menu li a span, .sidebar-menu li.header, .sidebar-mini.sidebar-collapse .sidebar-menu .treeview-menu a { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .sidebar-mini.sidebar-collapse .sidebar-menu li a { overflow: visible; } .sidebar-menu > li > a, .sidebar-menu .treeview-menu > li > a { {% if 'dark' == color_scheme %} background: #333; color: #CCC; {% elseif 'light' == color_scheme %} color: {{ colors.gray_darker }}; {% endif %} border-left: 3px solid transparent; display: block; font-weight: bold; opacity: 1; } .sidebar-menu .treeview-menu > li > a { {% if 'dark' == color_scheme %} background: #404040; {% elseif 'light' == color_scheme %} background-color: {{ colors.gray_lighter }}; {% endif %} font-size: 13px; padding: 8px 5px 8px 25px; } .sidebar-menu > li:hover > a, .sidebar-menu .treeview-menu > li:hover > a, .sidebar-menu > li.active > a, .sidebar-menu .treeview-menu > li.active > a, .sidebar-collapse .sidebar-menu > li.active.submenu-active > a, .sidebar-collapse .sidebar-menu > li:hover .treeview-menu > li.active > a { {% if 'dark' == color_scheme %} color: {{ colors.white }}; background: #4D4D4D; border-left-color: #BBB; {% elseif 'light' == color_scheme %} background: #DCDCDC; border-left-color: #808080; {% endif %} } .sidebar-menu > li > a > .fa { width: 22px; } .sidebar-menu .treeview-menu { padding: 0; } {# when the sidebar is collapsed #} .sidebar-collapse .sidebar-menu > li > a { padding: 12px 5px 12px 12px; } .sidebar-collapse .sidebar-menu > li .treeview-menu > li > a { padding-left: 12px; } .sidebar-collapse .sidebar-menu > li > a > i.fa { font-size: 18px; } .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu { padding: 0; } .sidebar-collapse .sidebar-menu > li:hover > a, .sidebar-collapse .sidebar-menu .treeview-menu > li:hover > a, .sidebar-menu > li.active.submenu-active > a, .sidebar-collapse .sidebar-menu > li.active.submenu-active:hover > a { border-left-color: transparent; {% if 'dark' == color_scheme %} background: #333; {% elseif 'light' == color_scheme %} background: {{ colors.gray_light }}; {% endif %} } {# when collapsed, menu dividers are displayed as a straight line #} .sidebar-mini.sidebar-collapse .sidebar-menu li.header { {% if 'dark' == color_scheme %} border-bottom: 1px solid #777; {% elseif 'light' == color_scheme %} border-bottom: 1px solid #BBB; {% endif %} display: block !important; font-size: 0; height: 1px; margin: 0; padding: 0; } {# ------------------------------------------------------------------------- COMMON ADMIN PAGES ------------------------------------------------------------------------- #} body.easyadmin h1.title { margin-bottom: 10px; } .help-entity { {% if 'dark' == color_scheme %} color: {{ colors.gray_dark }}; {% elseif 'light' == color_scheme %} border: 1px solid #EEE; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05); color: {{ colors.text_muted }}; {% endif %} margin: 10px 0 5px; } {# ------------------------------------------------------------------------- LIST PAGE ------------------------------------------------------------------------- #} body.list .global-actions { display: table; width: 100%; } body.list .global-actions .button-action { display: table-cell; padding-left: 10px; vertical-align: middle; width: 120px; } body.list .global-actions .button-action a { float: right; } body.list .global-actions .form-action { display: table-cell; width: 100%; } body.list .global-actions .form-action .input-group { width: 100%; } body.list .global-actions .form-control { box-shadow: none; } body.list .global-actions .input-group-btn > button.btn:not(:last-child) { border-bottom-right-radius: 3px; border-top-right-radius: 3px; } body.list .global-actions .input-group-btn a.btn { border-radius: 3px; margin-left: 10px; } {# Responsive tables ------------------------------------------------------------------------- #} body.list .table-responsive, body.list table { background: transparent; border: 0; } body.list table thead { display: none; } body.list .table tbody { background: transparent; border: 0; } body.list table tbody tr { background: {{ colors.white }}; {% if 'dark' == color_scheme %} border: 1px solid {{ colors.gray_light }}; {% elseif 'light' == color_scheme %} border: 1px solid {{ colors.gray }}; {% endif %} display: block; margin-bottom: 1em; } body.list table tbody td { border-bottom: 1px solid {{ colors.table_row_border }}; border-top: 0; display: block; vertical-align: middle; } body.list table tbody td:last-child { border-bottom: 0; } table td:before { content: attr(data-label); float: left; font-weight: bold; } table td:after { clear: both; content: ""; display: block; } /* needed because the responsive tables require contents aligned to the right */ body.list table td, body.list table .text-center, body.list table .text-left, body.list table .text-right { text-align: right; } body.list table tbody td.image .easyadmin-thumbnail img { border-width: 2px; max-height: 50px; max-width: 150px; } body.list table tbody td.association .badge { font-size: 13px; } body.list table tbody td.actions a { font-weight: bold; margin-left: 10px; } {# Search results ------------------------------------------------------------------------- #} body.list .table tbody span.highlight { background: #FF9; border-radius: 2px; padding: 1px; } body.list .table tbody .no-results span.highlight, body.list .table tbody .actions span.highlight { background: 0; border-radius: 0; } {# Pagination ------------------------------------------------------------------------- #} body.list .pagination { float: right; margin: 0; } body.list .pagination > .disabled > span { background: transparent; border: 1px solid transparent; {% if 'dark' == color_scheme %} color: {{ colors.text_muted }}; {% elseif 'light' == color_scheme %} color: {{ colors.gray }}; {% endif %} } body.list .pagination > li > a { background: {{ colors.white }}; border-color: {{ colors.gray_light }}; border-radius: 0; color: {{ colors.text }}; } body.list .pagination > li > a:hover { background: {{ brand_color }}; color: {{ colors.white }}; } .pagination > li > a, .pagination > li > span { padding: 6px 8px; } body.list .pagination > li i { padding: 0 3px; } {# this hack is needed to avoid the last pagination page from showing wrong borders for the second pagination element (we need to put this element above the third element) #} body.list .pagination.last-page li:nth-child(2) { position: relative; z-index: 1; } {# ------------------------------------------------------------------------- FORM PAGE ------------------------------------------------------------------------- #} form label.control-label.required:after { content: "\00a0*"; color: {{ colors.danger }}; font-size: 16px; } {# ------------------------------------------------------------------------- NEW PAGE ------------------------------------------------------------------------- #} body.new textarea { min-height: 250px; } body.new .field-collection-action { margin: -15px 0 10px; } body.new .field-collection-item-action { margin: 5px 0 0; } body.new #form-actions-row button, body.new #form-actions-row a.btn { margin-bottom: 10px; } body.new .form-horizontal #form-actions-row { padding-left: 15px; padding-right: 15px; } {# ------------------------------------------------------------------------- EDIT PAGE ------------------------------------------------------------------------- #} body.edit textarea { min-height: 250px; } body.edit .field-collection-action { margin: -15px 0 10px; } body.edit .field-collection-item-action { margin: 5px 0 0; } body.edit #form-actions-row button, body.edit #form-actions-row a.btn { margin-bottom: 10px; } body.edit .form-horizontal #form-actions-row { padding-left: 15px; padding-right: 15px; } {# ------------------------------------------------------------------------- SHOW PAGE ------------------------------------------------------------------------- #} body.show .form-control { {% if 'dark' == color_scheme %} background: {{ colors.white }}; {% elseif 'light' == color_scheme %} background: {{ colors.gray_lighter }}; {% endif %} border: 0; border-radius: 0; box-shadow: none; height: auto; } body.show .form-control.text { min-height: 34px; max-height: 250px; overflow-y: auto; } {# ------------------------------------------------------------------------- ERROR PAGES ------------------------------------------------------------------------- #} body.error .content-wrapper { align-items: center; display: flex; } body.error .error-description { background: {{ colors.white }}; border: 1px solid {{ colors.gray_lighter }}; box-shadow: 0 0 3px {{ colors.gray_light }}; max-width: 96%; padding: 0; } body.error .error-description h1 { background: {{ colors.danger }}; color: {{ colors.white }}; font-size: 18px; font-weight: bold; margin: 0; padding: 10px; text-transform: uppercase; } body.error .error-message { font-size: 16px; padding: 45px 30px; text-align: center; } {# ========================================================================= RESPONSIVE ========================================================================= #} {# ------------------------------------------------------------------------- VERTICAL TABLETS and LANDSCAPE SMARTPHONES ------------------------------------------------------------------------- #} @media (min-width: 768px) { ul, ol { margin-left: 2em; } .main-header > .navbar { min-height: 50px; } .sidebar-mini.sidebar-collapse .main-header .navbar { margin-left: 0; } .main-header #header-logo { float: left; } .main-header .logo { font-size: 21px; height: 50px; line-height: 50px; text-align: left; transition: padding-left .3s linear; } .sidebar-mini.sidebar-collapse .main-header .logo { padding-left: 15px; width: auto; {# neutralizes AdminLTE styles #} transition: padding-left .3s linear; } .main-header .navbar .sidebar-toggle { height: 50px; line-height: 50px; position: static; padding: 0 12px 0 18px; } .sidebar-mini.sidebar-collapse .sidebar-toggle { background: rgba(0, 0, 0, 0.15); font-size: 18px; padding-left: 12px; width: 50px; } .navbar-custom-menu, .navbar-custom-menu ul.navbar-nav, .navbar-custom-menu ul.navbar-nav .user-menu { float: right; } .navbar-custom-menu { background: inherit; height: 50px; line-height: 50px; width: auto; } .navbar-custom-menu .user-menu i { padding-right: 4px; } .main-header .navbar .user-menu .btn { background: rgba(255, 255, 255, 0.1); } .main-header .navbar .user-menu .btn-group:hover .btn { background: rgba(255, 255, 255, 0.2); } .main-sidebar { padding-top: 50px; } .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > span { padding-left: 5px; } {# these table styles are needed to override the "responsive tables" styles #} body.list table { background: {{ colors.white }}; border: 1px solid {{ colors.table_border }}; } body.list table thead { display: table-header-group; } body.list table thead th { background: {{ colors.table_header }}; padding: 0; } body.list table thead th i { color: {{ colors.gray }}; padding: 0 3px; } body.list table thead th a, body.list table thead th span { color: {{ colors.text }}; display: block; padding: 10px 6px; white-space: nowrap; } body.list table thead th a:hover { background: {{ colors.gray_light }}; text-decoration: none; } body.list table thead th.sorted, body.list table thead th.sorted a { {% if 'dark' == color_scheme %} background: {{ brand_color }}; color: {{ colors.white }}; {% endif %} } body.list table thead th.sorted a:hover i, body.list table thead th.sorted i { {% if 'dark' == color_scheme %} color: {{ colors.white }}; {% elseif 'light' == color_scheme %} color: {{ brand_color }}; {% endif %} } body.list th.boolean, body.list td.boolean, body.list th.toggle, body.list td.toggle, body.list td.image { text-align: center; } body.list .table thead tr th { border-bottom: 2px solid {{ colors.gray_light }}; } body.list .table thead tr th.sorted { border-bottom: 2px outset {{ brand_color }}; } {# these styles are needed to fix some visual glitches when the sort field is the first column #} body.list .table thead tr th:first-child.sorted { {% if 'dark' == color_scheme %} border-left: 1px solid {{ brand_color }}; border-top: 1px solid {{ brand_color }}; {% endif %} } body.list .table tbody { border-bottom: 2px double {{ colors.gray_light }}; } body.list table tbody tr { border: 0; display: table-row; margin-bottom: 0; } body.list table tbody td { border-bottom: 0; border-top: 1px solid {{ colors.table_row_border }}; display: table-cell; } body.list table tbody td:last-child { white-space: nowrap; width: 1%; } table td:before { content: none; float: none; } body.list table tbody td.sorted { background: {{ colors.gray_lighter }}; border-color: {{ colors.table_row_border }}; } body.list .table tbody tr:hover td { background: {{ colors.gray_lighter }}; } body.list table tbody td.actions a { margin-left: 0; margin-right: 10px; } body.list table td { text-align: left; } body.list table .text-center { text-align: center; } body.list table .text-left { text-align: left; } body.list table .text-right { text-align: right; } .field-date select + select, .field-time select + select, .field-datetime select + select { margin-left: 2px; } body.error .error-description { max-width: 550px; } .pagination > li > a, .pagination > li > span { padding: 6px 12px; } .form-inline .form-control { margin-bottom: 0; } body.new .form-horizontal #form-actions-row { margin-left: 16.66666667%; } body.edit .form-horizontal #form-actions-row { margin-left: 16.66666667%; } {# Field: checkbox ------------------------------------------------------------------------- #} .form-vertical .field-checkbox label { padding-top: 23px; } .form-vertical .field-group .field-checkbox label { padding-top: 0; } } {% endautoescape %}