@import 'constants'; #CONTAINER{ display: block; position: absolute; top: $header-height; left: $menu-width; height: calc( 100% - #{$header-height} ); width: calc( 100% - #{$menu-width} ); background-color: $bg-color; overflow: hidden; overflow-y: auto; z-index: 100; } /* [1] List style ---------------------------------*/ #CONTAINER > div.list{ display: flex; // flex properties flex-direction: column; justify-content: flex-start; & > *:first-child{ margin-top: 1em; } & > *:last-child{ margin-bottom: 3em; } /* (1) List element */ & > section{ display: block; margin: .3em 1em; padding: .8em 1em; border-radius: 5px / 5px; background-color: #fff; } /* (2) List title */ & > h1{ display: inline-block; margin: 0 1.2em; margin-top: .8em; font-size: inherit; color: darken($secondary-color, 5%); } /* (3) List separator */ & > hr{ display: block; position: relative; margin: 1em 1.5em; border: 0; border-bottom: 2px solid darken($bg-color, 5%); } } /* [2] Card style -> instant-search ---------------------------------*/ #CONTAINER > input.card.instant-search{ display: block; position: absolute; top: .5em; left: .5em; // 100% - filtr - padding - border width: calc( 100% - 20em - 1em - 6*1em ); height: calc( 3em - 2*.5em - 2*1px); margin: 0; padding: .5em 1em; border-radius: 3px / 3px; background-color: #fff; box-shadow: 0 2px 2px darken(#fff, 10%); } /* [3] Card style -> container ---------------------------------*/ #CONTAINER > div.card.container{ display: flex; position: absolute; top: 3em; left: 0; width: calc( 100% - 20em ); min-height: calc( 100% - 3em ); // flex properties flex-direction: row; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; z-index: 101; overflow: hidden; /* (1) Card container */ & > section{ // flex-grow: 1; flex-basis: 15em; flex-shrink: 1; flex-grow: 1; display: flex; position: relative; margin: 1em .5em; padding: 1.5em; border-radius: 3px / 3px; // border: 1px solid darken(#fff, 10%); box-shadow: 0 1px 1px darken(#fff, 20%); box-shadow: 0 1px 1px darken(#fff, 20%); &.invalid{ box-shadow: 0; border: 1px solid $form-invalid-color; } &.valid{ box-shadow: 0; border: 1px solid $form-valid-color; } background-color: #fff; color: $primary-color; // flex flex-direction: column; justify-content: flex-start; flex-wrap: nowrap; &[data-create]{ border: 1px solid $form-valid-color; } // hidden mode &.search-hidden, &.filter-hidden{ display: none; } /* (2) REMOVE+EDIT+ADMIN button */ & > div.remove[data-remove], & > div.edit[data-edit], & > div.admin[data-admin]{ display: inline-block; position: absolute; top: 1.3em; left: calc( 100% - 2em ); width: 1em; height: 1em; background: url('/asset/svg/remove.svg@bbbbbb') center center no-repeat; background-size: auto 100%; cursor: pointer; &:hover{ background-image: url('/asset/svg/remove.svg@#{$rd-form-invalid-color}'); } } /* (2.1) EDIT button */ & > div.edit[data-edit]{ left: calc( 100% - 2em - 1.3em ); background-image: url('/asset/svg/td.svg@bbbbbb'); background-size: 80% auto; &:hover{ background-image: url('/asset/svg/td.svg@#{$rd-form-search-color}'); } } /* (2.2) ADMIN switch */ & > div.admin[data-admin]{ left: calc( 100% - 2em - 1.3em - 1.3em ); background-image: url('/asset/svg/admin.svg@bbbbbb'); background-size: 85% auto; &:hover{ background-image: url('/asset/svg/admin.svg@bbbbbb'); } &[data-active='1']{ background-image: url('/asset/svg/admin.svg@f4bd18'); } } /* (4) Card generic title */ & > span.category, & > select.category{ display: block; position: relative; width: calc( 100% - 5em ); margin-bottom: .5em; font-size: .7em; color: darken($secondary-color, 10%); text-transform: uppercase; letter-spacing: .05em; } /* (4-edit) Card generic title (select) */ & > select.category{ width: calc( 100% + 1em ); margin: 0; padding: 0; margin-left: -.4em; // emulate no