.generatorList {
    padding: 0;
}
.generatorList li {
    flex-direction: row;
    display: flex;
    padding: 10px 5px;
    border: 1px solid #f3f3f3;
    margin-bottom: 10px;
}
.generatorList li span {
    flex-basis: 10%;
    width: auto;
}
#hub {
    margin-top: 3rem;
}
#hub h2 {
    margin-bottom: 2rem;
}
a.hubLink {
    text-align: center;
    display: flex;
    min-height: 100%;
    justify-content: center;
    align-items: center;
    background-color: #f3f6f9;
    padding: 3rem 1rem;
    font-weight: bold;
	cursor: pointer;
	text-decoration: none;
}

.stage {
    /*max-width: 500px;*/
    margin: 0 auto;
    padding: 50px 20px;
    box-sizing: border-box;
}
.stage > .ui.container {
    margin-top: 50px;
}
.ui.dropdown, .ui.slider {
    max-width: 640px;
    margin: 0 auto;
}
/*
.stage .ui.input {
    width: 100%;
}
*/
.stage .ui.input .value {
    font-size: 120%;
    font-weight: bold;
}
.stage .ui.container > label {
    display: block;
    margin: 15px 0;
    font-size: 130%;
}
.stage .toggleContainer {
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content: center;
}
.stage .toggleContainer > * {
    flex-basis: auto;
    justify-content: center;
    max-width: 125px;
    margin: 0px 10px;
    min-width: 40px;
    display: block !important;
}
.ui.segments:not(.horizontal)>.stage.segment:last-child {
    padding-bottom: 4rem;
}
.ui.segments>.stage.segment {
    background-color: #f9f9f9;
}
.strong { font-weight: bold; }

.ui.segment#contact {
    max-width: 900px;
    margin: 5rem auto;
}
.ui.segment#contact form {
    margin: 0;
}
#generator_contact_form .ui.form .field {
    margin-bottom: 10px;
}
.result {
    font-size: 120%;
}
.resultVariable {
    font-weight: bold;
}
.button.restart {
    margin-top: 2rem;
}
.ui.form .button {
    white-space: nowrap;
}
.ui.segments.generatorWrapper {
    border: none;
    margin-bottom: 2rem;
}
.generatorWrapper > .ui.attached.header {
    background-color: #bbb;
    border: none;
    color: #999;
    position: relative;
    z-index: 9;
    cursor: default;
}
.generatorWrapper > .ui.attached.header.active {
    background-color: #27c224;
    color: #fff;
    cursor: pointer;
}
.generatorWrapper > .ui.attached.header:active,
.generatorWrapper > .ui.attached.header:focus {
    outline: none;
}
.generatorWrapper > .ui.attached.header,
.generatorWrapper > .ui.attached.header>.ui.grid>.row {
    padding-top: 0;
    padding-bottom: 0;
}
.generatorWrapper > .ui.attached.header>.ui.grid>.row>.column {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.generatorWrapper > .header i.icon {
    font-size: 200%;
    margin: 0 !important;
}
.generatorWrapper > .header .column.title {
    font-size: 150%;
    line-height: 1.35;
}
.generatorWrapper > .header .resultArea p {
    display: none;
    font-size: 150%;
    color: yellow;
}
.generatorWrapper > .header .activation {
    background-color: #bbb;
    color: #999;
}
.generatorWrapper > .header .activation.selected {
    background-color: #bbb;
    color: #27c224;
}
.generatorWrapper > .header .expansion .icon {
    display: none;
}
.generatorWrapper > .header.active .expansion .edit.icon,
.generatorWrapper > .header.active .resultArea p {
        display: inline;
}
.generatorWrapper > .header.revealed .expansion .edit.icon {
    display: none;
}
.generatorWrapper > .header.revealed .expansion .icon.close {
    display: inline;
}
/* EDIT PAGE */

.stage li.elementObject {
    list-style: none;
    padding: 1rem;
    border: 1px solid #f3f3f3;
    flex-basis: 100%;
    margin: 1rem auto;
}
.row.elementHeader {
    margin-bottom: 1rem;
    text-align: left;
}
.ui.grid.elementContent>.row {
    position: inherit;
}
.options.ui.grid,
.rules.ui.grid,
.conditions.ui.grid {
    margin: 2rem 0;
}
.options.ui.grid>.row,
.rules.ui.grid>.row {
    padding: 0.5rem 1rem 0.5rem 5rem;
    border-bottom: 1px dashed #fff;
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: rgb(255, 255, 255);
}
.conditions.ui.grid>.row {
    padding: 0.5rem 1rem 0.5rem 1rem;
    border-bottom: 1px dashed #fff;
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: rgb(255, 255, 255);
}
.options.ui.grid>.row:last-child,
.rules.ui.grid>.row:last-child,
.conditions.ui.grid>.row:last-child {
    border-bottom: none;
}
.rules.ui.grid>.row {
    padding: 0.5rem 1rem 0.5rem 2rem;
    border: none;
}
.rules.ui.grid>.row>.ui.segment.column {
    padding: 0.5em;
}
.ui.label + .segment {
    margin: 0;
}
.closed .conditions.ui.grid {
    margin: 0;
}
.closed .conditions.ui.grid>.row {
    border: none;
}
.conditions.ui.grid>.row.closed {
    padding: 0 1rem 0 5rem;
}
.conditions.ui.grid>.row.closed input[type="text"],
.conditions.ui.grid>.row.closed .dropdown {
    background-color: transparent;
    border: none;
    /*padding: 0;*/
}
/*
.conditions.ui.grid>.row.closed .dropdown .icon {
    display: none;
}
*/
.conditions.ui.grid>.row.closed .dragHandle::after {
    display: none;
}
.conditionOptions .text,
.operationOptions .text {
    text-align: center;
    padding: 0 1rem;
}
.ui.dropdown.conditionOptions>.text>i.icon, 
.ui.dropdown.operationOptions>.text>i.icon {
    margin: 0;
}
.ui.form.mini .fields {
    margin: 0 -.5em 0;
}
.ui.input>input[type="radio"] {
    margin: 13px 0 12px;
}
.ui.label.basic { border: none !important; }

.ui.dropdown .menu>.item.hidden { display: none; }

.calculations .calculation > .sixteen.wide.column {
    padding-left: 2rem;
}
.calculations.ui.grid {
    margin-bottom: 0.5rem;
}

/*
.options.ui.grid>.row:before {
    display: block;
    position: absolute;
    content: '<i class="arrows alternate vertical icon"></i>';
    left: 2rem;
    top: 50%;
    line-height: 1;
    transform: translateY(-50%);
}
*/
.dragHandle, .sortControls {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 3rem;
    height: 100%;
    cursor: grab;
    background-color: #a1a1a1;
    z-index: 10;
}
.dragHandle .icon {
    position: absolute;
    left: 1.5rem;
    top: 50%;
    transform: translateY(-50%) scale(1.5);
    z-index: 11;
    color: #f3f3f3;
}
.dragHandle::after {
    content: '';
    display: block;
    position: absolute;
    background-color: #a1a1a1;
    border-radius: 5px;
    width: 2.8rem;
    height: 2.8rem;
    right: 0;
    top: 50%;
    transform: translateY(-50%) translateX(50%) rotateZ(45deg);
    z-index: 10;
}
.dragHandle:hover, .dragHandle:hover::after {
    background-color: #909090;
}
.dragHandle:hover .icon {
    color: #fff;
}
.sortControls {
    width: 2rem;
}
.sortControls.ui.grid {
    cursor: pointer;
    background-color: transparent;
    margin: 0;
}
.sortControls.ui.grid>.row ,
.sortControls.ui.grid>.row>.column {
    padding: 0;
    margin-bottom: 0;
}
.sortControls .icon {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
}
.rule:first-child .sortControls .row:first-child,
.rule:last-child .sortControls .row:last-child {
    display: none;
}
.calculation:first-child .sortControls .row:first-child,
.calculation:last-child .sortControls .row:last-child {
    display: none;
}
.sortControls .column.up {
    border-bottom: 1px dotted #eece;
}


.stage.ui.grid>.row {
    position: inherit;
}
.stage .ui.grid>.row.ui-sortable-handle {
    position: relative;
    background-color: #f3f3f3;
    margin: 5px 0;
}
.ui-sortable-placeholder {
    margin: 5px 0;
    flex-basis: 100%;
    list-style: none;
    height: 25px;
    outline: none;
}
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    border: 1px dashed #e3e1f9;
    background: #f8faff;
    color: #4558c4;
}

.ui.mini.form select.ui.dropdown {
    height: 30px;
}




/*
 * Hack to fix weird jquery ui draggable 'containment' issue when page is not scrolled to top
 * See http://bugs.jqueryui.com/ticket/9315
 */
 @media screen and (-webkit-min-device-pixel-ratio:0) { /* chrome */
    html{
            position: relative;
    }
}
@-moz-document url-prefix() { /* firefox */
    body{
            position: relative;
            overflow: auto;
    }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { /* ie10+ */
    body{
            position: relative;
            overflow: auto;
    }
}
