/*******************************************************************************
* elements
*******************************************************************************/

fieldset:first-child {
    margin-top: 0;
}

fieldset {
    margin-top: 60px;
    margin-bottom: 30px;
}

h3 {
    margin-top: 30px;
}

fieldset table {
    font-size: 90%;
    margin-left: 15px;
}
    
td, th {
    padding-top: 3px;
    padding-bottom : 3px;
    padding-left: 5px;
    padding-right: 5px;
    border: none;
    text-align: left;
    vertical-align: top;
}

td > input[type="text"], td > textarea, td > select {
    width: 100%;
}


/*******************************************************************************
* CodeMirror
*******************************************************************************/

.CodeMirror {
    line-height: 1.5em!important;
}


/*******************************************************************************
* #layout
*******************************************************************************/
#layout {
    box-sizing: border-box;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #818181;
    height: 100vh;
    width: 100vw;
    display: flex;
    background-color: #e5e5e5;
    overflow: hidden;
    padding-left: 16px;
    padding-right: 16px;
    position: relative;
}

#layout_list {
    height: calc(100vh - 1px);
    width: 320px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    overflow: auto;
    margin-left: 8px;
    margin-right: 10px;
}

#layout_main {
    height: calc(100vh - 1px);
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    overflow: auto;
    margin-left: 8px;
    margin-right: 8px;
}

#layout_stock {
    height: calc(100vh - 6px);
    width: 400px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    overflow: auto;
    margin-left: 10px;
    margin-right: 8px;
}

#layout_tool_list {
    position: absolute;
    top: 1px;
    left: 1px;
    display: flex;
    flex-direction: column;
    width: 14px;
}

#layout_tool_stock {
    position: absolute;
    top: 1px;
    right: 1px;
    display: flex;
    flex-direction: column;
    width: 14px;
}


/*******************************************************************************
* .pane-button-
*******************************************************************************/

.pane-button-Small {
    height: 14px;
    width: 14px;
    padding: 0;
    margin: 0;
    padding-bottom: 1px;
    box-sizing: border-box;
    border-style: solid;
    border-width: 1px;
    border-color: #818181;
    font-size: 10px;
    line-height: 10px;
    display: flex;
    justify-content: center;
    align-content: center;
    margin-bottom: 1px;
}

.pane-button-Small span {
    line-height: 10px;
}

.pane-button-Small:hover {
    border-color: red;
    cursor: pointer;
}


/*******************************************************************************
* pane-form-
*******************************************************************************/

.pane-form-CommandKey {
    text-align: right;
    margin-right: -5px;
    margin-top: 20px;
    margin-bottom: 10px;
}

.pane-form-CommandText {
    font-size: x-small;
    color: #2e3436;
}

.pane-form-CommandLink {
    border-style: solid;
    border-width: 1px;
    border-color: #818181;
    background-color: #e5e5e5;
    border-radius: 5px;
    padding: 5px;
    display: inline-flex;
    box-sizing: border-box;
}

.pane-form-CommandLink:hover {
    background: linear-gradient(to bottom, rgba(238,238,238,1) 0%,rgba(204,204,204,1) 100%);
}

.pane-form-Key {
    color: #666;
}

.pane-form-Log {
    margin-top: -5px;
    margin-bottom: 15px;
}

.pane-form-MetadataBody {
    position: relative;
    background-color: #fff;
}

.pane-form-SubsetGroup {
    font-size: large;
    color: #2e3436;
}

.pane-form-SubsetTree {
   margin-left: 10px;
   margin-top: 5px;
   margin-bottom: 5px;
   padding: 0;
}

.pane-form-SubsetBranch {
    padding-left: 15px;
    margin-top: 20px;
}

.pane-form-SubsetTree .tree-Node {
    padding-bottom: 20px;
}

.pane-form-SubsetTree details {
    padding-bottom: 10px;
}

.pane-form-Summary {
    background-color: #e5e5e5;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 8px;
    padding-right: 8px;
    border-width: 1px 0 0;
    border-style: solid;
    min-height: 20px;
    font-size: small;
    position: sticky;
    top: 0;
    z-index: 10;
    color: #2e3436;
}

.pane-form-Summary .global-button-Icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 4px;
}

.pane-form-SummaryTitle {
    display: inline-block;
    margin-right: 10px;
    vertical-align: middle;
}

.pane-form-TextArea {
    width: 100%;
    height: 200px;
}

.pane-form-Title {
    white-space: nowrap;
    margin-top: 5px;
    font-weight: normal;
    text-overflow: ellipsis;
    overflow: hidden;
}

.pane-form-Toolbar {
    display: flex;
    padding: 8px;
    padding-bottom: 6px;
    border-top-right-radius: 5px;
    flex-wrap: wrap;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #818181;
    border-left-style: solid;
    border-left-width: 1px;
    border-left-color: #818181;
    border-right-style: solid;
    border-right-width: 1px;
    border-right-color: #818181;
}

.pane-form-UniqueTextBody {
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: #818181;
    border-left-style: solid;
    border-left-width: 1px;
    border-left-color: #818181;
    border-right-style: solid;
    border-right-width: 1px;
    border-right-color: #818181;
}

.pane-form-Unit.unit-Unit {
    margin-bottom: 10px;
    min-width: 75%;
}


/*******************************************************************************
* pane-list-
*******************************************************************************/

.pane-list-ActiveItem {
    font-weight: bold;
}

.pane-list-Body {
    flex-grow: 1;
    overflow: auto;
    background-color: #fff;
    border-style: solid;
    border-width: 0 1px 1px 1px;
    border-color: #25617a;
    padding-top: 1px;
}

.pane-list-Commands {
    padding-left: 9px;
    padding-right: 9px;
    margin-top: 15px;
    margin-bottom: 15px;
}

.pane-list-ContentLink:hover {
    text-decoration: underline;
}

.pane-list-ContentTitle {
    display: flex;
    align-items: center;
}

.pane-list-ContentTitle > a {
    margin-top: auto;
    margin-bottom: auto;
    margin-right: 5px;
}

.pane-list-ContentTitle > button {
    margin-top: auto;
    margin-bottom: auto;
}

.pane-list-DeployBlock {
    padding-bottom: 20px;
}

.pane-list-DeployBlock_sub {
    margin-left: 10px;
    margin-bottom: 20px;
    padding-left: 8px;
    margin-top: 10px;
}

.pane-list-Entry {
    font-size: small;
    padding-top: 1px;
    padding-bottom: 1px;
}

.pane-list-Entry[open] .pane-list-EntryHeader{
    margin-bottom: 10px;
}

.pane-list-Entry:nth-child(2n+1) {
    background-color: #f9f9f9;
}

.pane-list-EntryBody {
    margin-left: 15px;
    padding-bottom: 5px;
    margin-top: 15px;
}

.pane-list-EntryHeader {
    /*margin: 0;*/
    padding-left: 8px;
    padding-right: 8px;
    margin-top: 15px;
    margin-bottom: 15px;
    font-size: small;
    border-width: 1px;
    border-style: solid;
    border-color: transparent;
}

.pane-list-EntryHeader.pane-list-ToolIncluded {
    display: flex;
}

.pane-list-SummaryTools .pane-list-EntryTitle {
    display: flex;
    flex-direction: column;
}

.pane-list-EntryToolbar {
    margin-bottom: 5px;
    display: flex;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 2px;
    padding-bottom: 2px;
}

.pane-list-Head {
    display: flex;
    flex-grow: 0;
    flex-shrink: 0;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 8px;
    padding-right: 8px;
    min-height: 20px;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #25617a;
    align-items: center;
    background-color: #25617a;
    position: sticky;
    z-index: 10;
    top: 0;
}

.pane-list-HeadTitle {
    text-align: left;
    margin: 0;
    font-size: small;
    padding-right: 5px;
    color: #fff;
}

.pane-list-Key {
    color: #666;
}

.pane-list-SummaryTools .pane-list-Label {
    margin-bottom: 7px;
    line-height: 1.3;
}

.pane-list-Label:empty {
   display: none;
}

.pane-list-Running {
    display: block;
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: center;
    background-color: #f9f9f9;
}

.pane-list-SummaryTools {
    display: inline-flex;
    width: calc(100% - 20px);
}

.pane-list-Unit {
    display: flex;
    flex-direction: column;
    padding-bottom: 15px;
    margin-right: 8px;
}

.pane-list-Unit:first-child {
    margin-top: 5px;
}

.pane-list-Unit.pane-list-Unique {
    flex-grow: 1;
    overflow: auto;
    margin-right: 0;
}


/*******************************************************************************
* .pane-overlay-
*******************************************************************************/

.pane-overlay-CommandKey {
    text-align: right;
    margin-right: -5px;
}

.pane-overlay-CommandLink {
    background-color: #25617a;
    border-color: #25617a;
    text-align: center;
    transition: all .15s ease-in-out;
    font-family: "DejaVu Sans Mono", monospace;
    display: inline-flex;
    padding: 5px 8px;
    border-radius: 5px;
}

.pane-overlay-CommandLink:hover {
    background-color: #38a4d0;
    cursor: pointer;
}

.pane-overlay-CommandText {
    font-size: x-small;
    color: #fff;
}


/*******************************************************************************
* .pane-stock-
*******************************************************************************/

.pane-stock-Body {
    padding-top: 1px;
    background-color: #fff;
}

.pane-stock-Clipboard {
    display: block;
    width: calc(100% - 20px);
    height: 300px;
    margin-top: 5px;
    margin-bottom: 5px;
    margin-left: auto;
    margin-right: auto;
}

.pane-stock-HelpContent {
    max-height: 45vh;
    overflow: auto;
}

.pane-stock-MementoTree {
    margin-top: 5px;
    margin-bottom: 15px;
    margin-left: 10px;
    margin-right: 5px;
    padding: 0;
}

.pane-stock-SubsetTree {
   margin-left: 10px;
   margin-top: 5px;
   margin-bottom: 5px;
   padding: 0;
}

.pane-stock-Tools {
    position: absolute;
    right: 2px;
    top: 2px;
}

.pane-stock-Unit {
    position: relative;
    border-style: solid;
    border-color: #818181;
    border-width: 1px;
    background-color: #d0d0d0;
    margin-right: 8px;
    margin-bottom: 15px;
}

.pane-stock-Unit:first-child {
    margin-top: 5px;
}

.pane-stock-Unit > summary {
    margin-right: 120px;
    min-height: 8px;
    font-size: small;
    color: #2e3436;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 8px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}


/*******************************************************************************
* .pane-subsettree-
*******************************************************************************/

.pane-subsettree-Component {
    font-size: small;
    padding-top: 2px;
}

.pane-subsettree-ComponentTitle {
    color: #2e3436;
    font-size: small;
    margin-top: 10px;
    font-style: italic;
}

.pane-subsettree-ComponentBranch {
    margin-left: 10px;
    margin-top: 5px;
    padding: 0;
}

.pane-subsettree-ComponentBranch.tree-Top:before {
    height: 3px;
}

.pane-subsettree-Group {
    font-size: medium;
    color: #2e3436;
    padding-top: 1px;
}

.pane-subsettree-GroupBranch {
    margin-top: 10px;
    padding: 0;
}

.pane-subsettree-Pattern {
    font-size: small;
}

.pane-subsettree-PatternBranch {
    margin-top: 10px;
    margin-left:0;
    padding: 0;
}

.pane-subsettree-PatternBranch .tree-Node {
   padding-bottom: 2px; 
}

.pane-subsettree-Subset {
    font-size: small;
    padding-top: 2px;
}


/*******************************************************************************
* #layout_main
*******************************************************************************/

#layout_main .pane-HiddenInMain {
    display: none;
}

/*#layout_main {
    flex-grow: 1;
    overflow: auto;
    display: flex;
    flex-direction: column;
}*/

#layout_main .pane-form-Container {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    height: 100%;
}

#layout_main .pane-form-Head {
    flex-grow: 0;
    flex-shrink: 0;
    padding-top: 15px;
}

#layout_main .pane-form-UniqueTextBody {
    flex-grow: 1;
    position: relative;
    margin-bottom: 15px;
}

#layout_main .pane-form-MetadataBody {
    flex-grow: 1;
    position: relative;
    overflow: auto;
    margin-bottom: 15px;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: #818181;
    border-left-style: solid;
    border-left-width: 1px;
    border-left-color: #818181;
    border-right-style: solid;
    border-right-width: 1px;
    border-right-color: #818181;
    padding-left: 18px;
    padding-right: 18px;
    padding-bottom: 10px;
}

#layout_main .pane-form-UniqueTextBody .CodeMirror {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

#layout_main .pane-form-Title {
    font-size: medium;
    padding: 10px;
    margin: 0;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #818181;
    border-left-style: solid;
    border-left-width: 1px;
    border-left-color: #818181;
    border-right-style: solid;
    border-right-width: 1px;
    border-right-color: #818181;
    background-color: #fff;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    position: relative;
    top: 1px;
    display: inline-block;
    vertical-align: bottom;
    max-width: calc(100% - 100px);
}


/*******************************************************************************
* #layout_stock
*******************************************************************************/

#layout_stock .pane-HiddenInStock {
    display: none;
}

#layout_stock .pane-stock-KeyContent legend,
#layout_stock .pane-stock-KeyContent td,
#layout_stock .pane-stock-KeyContent h3,
#layout_stock .pane-stock-KeyContent p,
#layout_stock .pane-stock-KeyContent summary {
    font-size: x-small;
}

#layout_stock h3 {
    margin-top: 5px;
}

#layout_stock fieldset {
    margin-top: 20px;
    margin-bottom: 20px;
}

#layout_stock fieldset:first-child {
    margin-top: 0;
}

#layout_stock fieldset table {
    margin-left: 0;
}

#layout_stock .pane-form-CommandKey {
    display: none;
}

#layout_stock .pane-form-Container {
    margin-top: 20px;
}

#layout_stock .pane-form-Container:first-child {
    margin-top: 0;
}

#layout_stock .pane-form-MetadataBody {
    max-height: 45vh;
    overflow: auto;
    padding: 0;
}

#layout_stock .pane-form-Title {
    font-size: small;
    margin-top: 8px;
}

#layout_stock .pane-form-UniqueTextBody {
    height: 38vh;
    overflow: auto;
    position: relative;
    border: none;
}

#layout_stock .pane-form-UniqueTextBody .CodeMirror {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border: none;
}
