/* misc, prep */
body { padding: 2em; }
* { font-family: 'trebuchet ms'; font-size: 1em; color: #444; box-sizing: border-box; }
h1 { font-size: 2em; margin-top: 0; }
h4 { font-size: 1.35em; }
input, button, select { padding: .5em; }
input[type=text], select { border: solid 1px #bbb; }
select[multiple] option { padding: .2.2em 0; }
button, .but { cursor: pointer; background: #8ba; border-radius: 6px; border: none; padding: .7em .75em; color: white; text-decoration: none; }
*:not(#lightboxdialog) > button { margin-left: .65em; }
button:hover, .but:hover { background: #9cb; }
label { cursor: pointer; }
.cf::after { content: ''; display: block; clear: both; }
.top-close-btn { display: none !important; }
a { color: #d70; cursor: pointer; }

/* top controls */
#controls { float: right; margin-top: -4em; }
#ins-col, #trim { display: none; }

/* paste area */
#paste-area { background: #eee; padding: 2em; border: solid 1px #d5d5d5; outline: none; margin-top: 1.8em; color: #888; }
#paste-area p { margin: 0; }

/* bottom controls */
#new-row { margin-top: 1em; float: right; display: none; }

/* table */
table { width: 100%; }
th, td { background: #dcfedc; padding: .5em; }
td:last-child, th:last-child { border: none; background: none; width: 50px; }
th { background: #9f9f9f; text-align: left; white-space: nowrap; padding-top: .7em; border-color: #fff; }
th:not(:nth-last-child(2)) { border-right: solid 1px white; }
th:last-child { border: none; }
th:last-child > * { display: none; }
th > * { display: inline-block; }
th span { color: #fff; }
th.unassigned span { color: pink; }
th img { vertical-align: middle; margin-left: .35em; width: 20px; cursor: pointer; position: relative; top: -2px; }
.unassigned .schema { display: none; }
td { border-right: solid 1px #aaa; border-bottom: solid 1px #aaa; }
td:first-child { border-left: solid 1px #aaa; }
td:nth-last-child(2) { border-right: solid 1px #aaa; }
td:empty::before { content: '\00a0'; }
td:last-child { position: relative; }
td:last-child::before { content: '\00d7'; color: #f39595; font-weight: bold; font-size: 1.5em; position: absolute; left: .8em; top: .2em; background: #777; border-radius: 50%; line-height: 1.2em; width: 26px; text-align: center; cursor: pointer; }

/* assign (LB) */
#as-attr { margin: 1.3em 0 2em 0; }

/* map DD values (LB) */
.map-dd-vals-lb select { width: calc(50% - 1em); }
.map-dd-vals-lb input { float: right; }

/* generator (LB) */
#generator { display: none; width: 480px; height: 520px; }
#generator h5 { margin: 2em 0 0 0; }
#generator input[type=text], #generator select { float: right; margin-top: -.6em; width: 50%; }
#generator label:not(:first-of-type) { margin-left: 1em; }
#generator footer { position: absolute; width: calc(100% - (2.2em * 2)); bottom: 2.2em; }
#generator footer button { margin: 0; }
#generator footer button:last-of-type { float: right; }