html {
    height: 100%
}

#body-wrapper .container {
    padding: 2rem 0 2rem
}

.header-fixed #body-wrapper {
    padding-top: 4rem
}

section.section {
    position: relative;
    padding-right: 1rem;
    padding-left: 1rem
}


html {
    font-size: 16px
}

.logo img{
    display: inherit;
    height: 48px;
}

@media screen and (min-width: 480px) {
    html {
        font-size:calc(16px + 4 * ((100vw - 480px)/ 800));
    }
    .logo img{
        display: inherit;
        height: 64px;
    }
}

@media screen and (min-width: 960px) {
    .logo img{
        display: inherit;
        height: 150px;
    }
}


@media screen and (min-width: 1280px) {
    html {
        font-size:20px;
    }
}

h1,h2,h3,h4,h5,h6 {
    font-family: -apple-system,system-ui,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',sans-serif;
    margin-top: 2rem;
    color: #3a414e
}

.h1,h1 {
    font-size: 2rem
}

.h2,h2 {
    font-size: 1.5rem
}

.h6,h6 {
    font-weight: 400
}


a:focus {
    outline: 0!important;
    box-shadow: none!important
}

img {
    max-width: 100%
}

.table table {
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse
}

pre code,pre.xdebug-var-dump {
    line-height: 1.5;
    display: block;
    overflow-x: auto;
    padding: 1rem!important;
    color: inherit;
    border-radius: 2px;
    background: #fafafa
}

pre[class*=language-] code {
    overflow-x: initial;
    padding: 0!important;
    border-radius: inherit
}

pre code:not(.hljs):not([class*=language-]) {
    background: #f8f8f8
}

i.fa.fa-heart-o.pulse,i.fa.fa-heart.pulse {
    color: #920
}

b,strong {
    font-weight: 700
}

.heavy {
    font-weight: 700
}

.light {
    font-weight: 200
}

.text-light {
    color: rgba(255,255,255,.8)
}

.text-light h1,.text-light h2,.text-light h3,.text-light h4,.text-light h5,.text-light h6 {
    color: rgba(255,255,255,.9)
}

#error {
    position: relative;
    margin-top: 5rem;
    text-align: center
}

#error .icon {
    font-size: 50px
}

#messages {
    margin-bottom: 1rem;
    box-sizing: border-box;
    z-index: 2;
}

#messages .icon {
    font-size: 1rem
}

ol,ul {
    margin-left: 1.6rem
}

ol ol,ol ul,ul ol,ul ul {
    margin-left: 1.6rem
}

ul {
    list-style: disc outside
}

ol {
    list-style: decimal outside
}

.notices {
    margin: 1.5rem 0
}

.notices p {
    margin: 1rem 0
}


#header,#header .logo img,#header .logo svg,#header .navbar-section,.default-animation,.modular-features .feature-icon,.modular-features.small .feature-icon i {
    transition: all .5s ease
}


#header {
    font-size: .7rem;
    font-weight: 700;
    width: 100%;
    /* height: 4rem; */
    color: #454d5d;
    border-bottom: 1px solid rgba(172,179,194,.2);
    background: #fff;

}

#header a {
    color: #454d5d
}


.header-dark #header:not(.scrolled) {
    color: #fff;
    background: #222
}

.header-dark #header:not(.scrolled) a {
    color: rgba(255,255,255,.7)!important
}


.header-dark.header-transparent #header:not(.scrolled) {
    background: rgba(0,0,0,.05)
}

.header-transparent #header:not(.scrolled) {
    background: rgba(255,255,255,.05)
}


#header .logo img,#header .logo svg {
    display: inherit;

}

.header-fixed #header {
    position: fixed;
    z-index: 2;
    top: 0
}


/*! Spectre.css v0.5.8 | MIT License | github.com/picturepan2/spectre */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,aside,footer,header,nav,section {
    display: block
}

article,aside,footer,header,nav,section {
    display: block
}

figcaption,figure,main {
    display: block
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active,a:hover {
    outline-width: 0
}

address {
    font-style: normal
}

b,strong {
    font-weight: inherit
}

b,strong {
    font-weight: bolder
}

code,kbd,pre,samp {
    font-family: 'SF Mono','Segoe UI Mono','Roboto Mono',Menlo,Courier,monospace;
    font-size: 1em
}

small {
    font-size: 80%;
    font-weight: 400
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

button,input,optgroup,select,textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    margin: 0
}

button,input {
    overflow: visible
}

button,select {
    text-transform: none
}

[type=reset],[type=submit],button,html [type=button] {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner {
    padding: 0;
    border-style: none
}

fieldset {
    margin: 0;
    padding: 0;
    border: 0
}

mprogress {
    display: inline-block;
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    outline-offset: -2px;
    -webkit-appearance: textfield
}

[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

details,menu {
    display: block
}

[hidden] {
    display: none
}

body {
    font-family: -apple-system,system-ui,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',sans-serif;
    font-size: .8rem;
    overflow-x: hidden;
    color: #50596c;
    background: #fff;
    text-rendering: optimizeLegibility
}


blockquote {
    margin-left: 0;
    padding: .4rem .8rem;
    border-left: .1rem solid #e7e9ed
}

blockquote p:last-child {
    margin-bottom: 0
}

ol,ul {
    margin: .8rem 0 .8rem .8rem;
    padding: 0
}

ol ol,ol ul,ul ol,ul ul {
    margin: .8rem 0 .8rem .8rem
}

ol li,ul li {
    margin-top: .4rem
}

ul {
    list-style: disc inside
}

ul ul {
    list-style-type: circle
}

ol {
    list-style: decimal inside
}

ol ol {
    list-style-type: lower-alpha
}

dl dt {
    font-weight: 700
}

dl dd {
    margin: .4rem 0 .8rem 0
}

.table {
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
    text-align: left
}

.table.table-striped tbody tr:nth-of-type(odd) {
    background: #f8f9fa
}

.table tbody tr.active,.table.table-striped tbody tr.active {
    background: #f0f1f4
}

.table.table-hover tbody tr:hover {
    background: #f0f1f4
}

.table.table-scroll {
    display: block;
    overflow-x: auto;
    padding-bottom: .75rem;
    white-space: nowrap
}

.table td,.table th {
    padding: .6rem .4rem;
    border-bottom: .05rem solid #e7e9ed
}

.table th {
    border-bottom-width: .1rem
}

.btn,.button {
    font-size: .8rem;
    line-height: 1.2rem;
    display: inline-block;
    height: 1.8rem;
    padding: .25rem .4rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: background .2s,border .2s,box-shadow .2s,color .2s;
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
    text-decoration: none;
    color: #3085ee;
    border: .05rem solid #3085ee;
    border-radius: .1rem;
    outline: 0;
    background: #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.btn:focus,.button:focus {
    box-shadow: 0 0 0 .1rem rgba(48,133,238,.2)
}

.btn:focus,.btn:hover,.button:focus,.button:hover {
    text-decoration: none;
    border-color: #227ded;
    background: #e1edfd
}

.active.button,.btn.active,.btn:active,.button:active {
    text-decoration: none;
    color: #fff;
    border-color: #1370e3;
    background: #227ded
}

.active.loading.button::after,.btn.active.loading::after,.btn:active.loading::after,.button:active.loading::after {
    border-bottom-color: #fff;
    border-left-color: #fff
}

.btn.disabled,.btn:disabled,.btn[disabled],.button:disabled,.button[disabled],.disabled.button {
    cursor: default;
    pointer-events: none;
    opacity: .5
}

.btn-primary.button,.btn.btn-primary {
    color: #fff;
    border-color: #227ded;
    background: #3085ee
}

.btn-primary.button:focus,.btn-primary.button:hover,.btn.btn-primary:focus,.btn.btn-primary:hover {
    color: #fff;
    border-color: #1370e3;
    background: #1877ec
}

.btn-primary.active.button,.btn-primary.button:active,.btn.btn-primary.active,.btn.btn-primary:active {
    color: #fff;
    border-color: #126bd9;
    background: #1372e7
}

.btn-primary.loading.button::after,.btn.btn-primary.loading::after {
    border-bottom-color: #fff;
    border-left-color: #fff
}

.btn-success.button,.btn.btn-success {
    color: #fff;
    border-color: #2faa3f;
    background: #32b643
}

.btn-success.button:focus,.btn.btn-success:focus {
    box-shadow: 0 0 0 .1rem rgba(50,182,67,.2)
}

.btn-success.button:focus,.btn-success.button:hover,.btn.btn-success:focus,.btn.btn-success:hover {
    color: #fff;
    border-color: #2da23c;
    background: #30ae40
}

.btn-success.active.button,.btn-success.button:active,.btn.btn-success.active,.btn.btn-success:active {
    color: #fff;
    border-color: #278e34;
    background: #2a9a39
}

.btn-success.loading.button::after,.btn.btn-success.loading::after {
    border-bottom-color: #fff;
    border-left-color: #fff
}

.btn-error.button,.btn.btn-error {
    color: #fff;
    border-color: #d95000;
    background: #e85600
}

.btn-error.button:focus,.btn.btn-error:focus {
    box-shadow: 0 0 0 .1rem rgba(232,86,0,.2)
}

.btn-error.button:focus,.btn-error.button:hover,.btn.btn-error:focus,.btn.btn-error:hover {
    color: #fff;
    border-color: #cf4d00;
    background: #de5200
}

.btn-error.active.button,.btn-error.button:active,.btn.btn-error.active,.btn.btn-error:active {
    color: #fff;
    border-color: #b54300;
    background: #c44900
}

.btn-error.loading.button::after,.btn.btn-error.loading::after {
    border-bottom-color: #fff;
    border-left-color: #fff
}

.btn-link.button,.btn.btn-link {
    color: #3085ee;
    border-color: transparent;
    background: 0 0
}

.btn-link.active.button,.btn-link.button:active,.btn-link.button:focus,.btn-link.button:hover,.btn.btn-link.active,.btn.btn-link:active,.btn.btn-link:focus,.btn.btn-link:hover {
    color: #126bd9
}

.btn-sm.button,.btn.btn-sm {
    font-size: .7rem;
    height: 1.4rem;
    padding: .05rem .3rem
}

.btn-lg.button,.btn.btn-lg {
    font-size: .9rem;
    height: 2rem;
    padding: .35rem .6rem
}

.btn-block.button,.btn.btn-block {
    display: block;
    width: 100%
}

.btn-action.button,.btn.btn-action {
    width: 1.8rem;
    padding-right: 0;
    padding-left: 0
}

.btn-action.btn-sm.button,.btn.btn-action.btn-sm {
    width: 1.4rem
}

.btn-action.btn-lg.button,.btn.btn-action.btn-lg {
    width: 2rem
}

.btn-clear.button,.btn.btn-clear {
    line-height: .8rem;
    width: 1rem;
    height: 1rem;
    margin-right: -2px;
    margin-left: .2rem;
    padding: .1rem;
    text-decoration: none;
    opacity: 1;
    color: currentColor;
    border: 0;
    background: 0 0
}

.btn-clear.button:focus,.btn-clear.button:hover,.btn.btn-clear:focus,.btn.btn-clear:hover {
    opacity: .95;
    background: rgba(248,249,250,.5)
}

.btn-clear.button::before,.btn.btn-clear::before {
    content: '\2715'
}

.btn-group {
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.btn-group .btn,.btn-group .button {
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.btn-group .btn:first-child:not(:last-child),.btn-group .button:first-child:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.btn-group .btn:not(:first-child):not(:last-child),.btn-group .button:not(:first-child):not(:last-child) {
    margin-left: -.05rem;
    border-radius: 0
}

.btn-group .btn:last-child:not(:first-child),.btn-group .button:last-child:not(:first-child) {
    margin-left: -.05rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.btn-group .active.button,.btn-group .btn.active,.btn-group .btn:active,.btn-group .btn:focus,.btn-group .btn:hover,.btn-group .button:active,.btn-group .button:focus,.btn-group .button:hover {
    z-index: 1
}

.btn-group.btn-group-block {
    display: -ms-flexbox;
    display: flex
}

.btn-group.btn-group-block .btn,.btn-group.btn-group-block .button {
    -ms-flex: 1 0 0;
    flex: 1 0 0
}

.form-group:not(:last-child) {
    margin-bottom: .4rem
}

fieldset {
    margin-bottom: .8rem
}

legend {
    font-size: .9rem;
    font-weight: 500;
    margin-bottom: .8rem
}

.form-label {
    line-height: 1.2rem;
    display: block;
    padding: .3rem 0
}

.form-label.label-sm {
    font-size: .7rem;
    padding: .1rem 0
}

.form-label.label-lg {
    font-size: .9rem;
    padding: .4rem 0
}

.form-control,.search-input,[data-grav-field=array] input,[data-grav-field=array] textarea {
    font-size: .8rem;
    line-height: 1.2rem;
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    height: 1.8rem;
    padding: .25rem .4rem;
    transition: background .2s,border .2s,box-shadow .2s,color .2s;
    color: #50596c;
    border: .05rem solid #caced7;
    border-radius: .1rem;
    outline: 0;
    background: #fff;
    background-image: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.has-success .form-control-hint,.is-success+.form-control-hint {
    color: #32b643
}

.has-error .form-control-hint,.is-error+.form-control-hint {
    color: #e85600
}

.form-checkbox,.form-radio,.form-switch {
    line-height: 1.2rem;
    position: relative;
    display: block;
    min-height: 1.4rem;
    margin: .2rem 0;
    padding: .1rem .4rem .1rem 1.2rem
}

.form-checkbox input,.form-radio input,.form-switch input {
    position: absolute;
    overflow: hidden;
    clip: rect(0,0,0,0);
    width: 1px;
    height: 1px;
    margin: -1px
}

.form-checkbox input:focus+.form-icon,.form-radio input:focus+.form-icon,.form-switch input:focus+.form-icon {
    border-color: #3085ee;
    box-shadow: 0 0 0 .1rem rgba(48,133,238,.2)
}

.form-checkbox input:checked+.form-icon,.form-radio input:checked+.form-icon,.form-switch input:checked+.form-icon {
    border-color: #3085ee;
    background: #3085ee
}

.form-checkbox .form-icon,.form-radio .form-icon,.form-switch .form-icon {
    position: absolute;
    display: inline-block;
    cursor: pointer;
    transition: background .2s,border .2s,box-shadow .2s,color .2s;
    border: .05rem solid #caced7
}

.form-checkbox.input-sm,.form-radio.input-sm,.form-switch.input-sm {
    font-size: .7rem;
    margin: 0
}

.form-checkbox.input-lg,.form-radio.input-lg,.form-switch.input-lg {
    font-size: .9rem;
    margin: .3rem 0
}

.form-checkbox .form-icon,.form-radio .form-icon {
    top: .3rem;
    left: 0;
    width: .8rem;
    height: .8rem;
    background: #fff
}

.form-checkbox input:active+.form-icon,.form-radio input:active+.form-icon {
    background: #f0f1f4
}

.form-checkbox .form-icon {
    border-radius: .1rem
}

.form-checkbox input:checked+.form-icon::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 9px;
    margin-top: -6px;
    margin-left: -3px;
    content: '';
    transform: rotate(45deg);
    border: .1rem solid #fff;
    border-top-width: 0;
    border-left-width: 0;
    background-clip: padding-box
}

.form-checkbox input:indeterminate+.form-icon {
    border-color: #3085ee;
    background: #3085ee
}

.form-checkbox input:indeterminate+.form-icon::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 2px;
    margin-top: -1px;
    margin-left: -5px;
    content: '';
    background: #fff
}

.form-radio .form-icon {
    border-radius: 50%
}


.form-control:not(:placeholder-shown):invalid,.search-input:not(:placeholder-shown):invalid,[data-grav-field=array] input:not(:placeholder-shown):invalid,[data-grav-field=array] textarea:not(:placeholder-shown):invalid {
    border-color: #e85600
}


form {
	max-width: auto;
}

input[type="submit"]{
	display:inline-block;
	width:auto;
}

.errorlist {
	padding:0;
	margin:0;
}
.errorlist li{
	color:red;
	list-style:none;
}

.alert{
	padding:0.5rem;	
}

.alert-success{
	background-color: #dfd
}
.alert-error{
	background-color:#ba2121;
	color:#fff;
}
#flex-objects ul li .entry-details .trainingstermin { font-weight: bold; font-size: 120%; }
.shiftitem {
  display: grid;
  grid-template-columns: 1fr;        
  grid-column-gap: 1rem;             
  border-color: green;
  border-width: 1px;
  border-style: dotted;
  .selected {
	background-color: lightblue;
  }

  .ownbyname {
	background-color: lightblue;
  }
  .helferok.ersatzok {
	background-color: lightgreen;
  }
}


.shiftitem3  {
  display: grid;
  grid-template-columns: 1fr;        
  grid-column-gap: 1rem;             
  border-color: green;
  border-width: 1px;
  border-style: dotted;
  .selected {
    background-color: lightblue;
  }
  
  .ownbyname {
    background-color: lightblue;
  }
  .helferok.ersatzok {
    background-color: lightgreen;
  }
}
  

.selected {
	background-color: lightblue;
  }
  .ownbyname {
	background-color: lightblue;
  }
  .ersatzok {
	background-color: lightgreen;
  }

@media (min-width: 576px) {
  .shiftitem {
	grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .shift {
    grid-template-columns: 16ch 16ch 1fr;
    .helferlist {
      display: grid;
      flex-direction: row;
      .helfer {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr ;
      }        
    }
  }
  .shiftitem3 {
    grid-column-gap: 1px;             
    grid-template-columns: 1fr 1fr 1fr;
    }

  .twocolumns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 1rem;             
  }
  .threecolumns {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 1rem;             
  }
}

.bold {
	font-weight: bold;
}

@media print {
  h1, h2, h3, h4, ul, li, p, .btn, .form-tabs, .tabs-nav, .tab__content, .form-label, .mprogress, #header {
    display: none;
  }
  .shiftitem {
    break-inside: avoid;
    grid-column-gap: 1px;
    height: 2.5rem;
    grid-template-columns: 1fr 1fr 1fr;
    border-color: green;
    border-width: 1px;
    border-style: dotted;
  }
  .fieldset {
    margin-bottom: .2rem;
  }
  .header-fixed {
    padding-top: 0rem;
  } 
    
}
.ok, .is-success {
	background-color: lightgreen;
	background: lightgreen;
	color: lightgreen;
}

.is-warning {
	background-color: yellow;
	background: yellow;
	color: yellow;
}

.is-danger {
	background-color: rgb(140, 9, 9);
	background: rgb(140, 9, 9);
	color: rgb(140, 9, 9);
}

.is-info {
	background-color: rgb(9, 37, 140);
	background: rgb(9, 37, 140);
	color: rgb(9, 37, 140);
}



.vertretung {
	color: grey;
}

.form-check-label , .form-radio, .form-switch {
    line-height: 1.2rem;
    position: relative;
    display: block;
    min-height: 1.4rem;
    margin: .2rem 0;
    padding: .1rem .4rem .1rem 1.2rem;
}

.shiftitem {
  display: grid;
  grid-template-columns: 1fr;        
  grid-column-gap: 1rem;             
  border-color: green;
  border-width: 1px;
  border-style: dotted;
  .selected {
	background-color: lightblue;
  }

  .ownbyname {
	background-color: lightblue;
  }
  .ok {
	background-color: lightgreen;
  }
}

.shift {
  display: grid;
  grid-template-columns: 1fr;        
  grid-column-gap: 1rem;             
  border-color: green;
  border-width: 1px;
  border-style: dotted;
  .selected {
	background-color: lightblue;
  }

  .ownbyname {
	background-color: lightblue;
  }
  .ok {
	background-color: lightgreen;
  }
}


.shiftitem3  {
  display: grid;
  grid-template-columns: 1fr;        
  grid-column-gap: 1rem;             
  border-color: green;
  border-width: 1px;
  border-style: dotted;
  .selected {
    background-color: lightblue;
  }
  
  .ownbyname {
    background-color: lightblue;
  }
  .ok {
    background-color: lightgreen;
  }
}
  

.selected {
	background-color: lightblue;
  }
  .ownbyname {
	background-color: lightblue;
  }
  .ok {
	background-color: lightgreen;
  }

@media (min-width: 576px) {
  .shiftitem {
	grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .shift {
    grid-template-columns: 16ch 16ch 1fr;
    .helferlist {
      display: grid;
      flex-direction: row;
      .helfer {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr ;
      }        
    }
  }
  .shiftitem3 {
    grid-column-gap: 1px;             
    grid-template-columns: 1fr 1fr 1fr;
    }

  .twocolumns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 1rem;             
  }
  .threecolumns {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 1rem;             
  }
}

.bold {
	font-weight: bold;
}

@media print {
  h1, h2, h3, h4, ul, li, p, .btn, .form-tabs, .tabs-nav, .tab__content, .form-label, .progress, #header {
    display: none;
  }
  .shiftitem {
    break-inside: avoid;
    grid-column-gap: 1px;
    height: 2.5rem;
    grid-template-columns: 1fr 1fr 1fr;
    border-color: green;
    border-width: 1px;
    border-style: dotted;
  }
  .fieldset {
    margin-bottom: .2rem;
  }
  .header-fixed {
    padding-top: 0rem;
  } 
    
}
.ok {
	background-color: lightgreen;
}

.vertretung {
	color: grey;
}
