{# ========================================================================
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: '#ffffff',
gray_lighter: '#FAFAFA',
page_background: '#f3f4f9',
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 <th> 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: #c8a2c7;
border-left-color: #69106a;
{% 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: #c8a2c7;
{% 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 {
height: 80px;
}
.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: 80px;
line-height: 80px;
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: 80px;
}
.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 %}