body {
	background-color: #f0f8f8;
	font-family: sans-serif;
	height: 100%;
}

*{ box-sizing: border-box; }

#main {
	max-width: 1200px;
	margin: auto;
	height: 100vh;
	max-height: 100vh; 
	display: flex;
	flex-direction: column;
}


/* Modal */
#modal {
    background-color: rgb(0,0,0,0.5);
    width: 100vw;
    height: 100vh;
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    
}

#modal > div {
    background-color: white;
    border-radius: 8px;
    width: 700px;
    height: 400px;
    margin: 20vh auto 0 auto;
    padding: 20px;
}

#modal-content { height: 320px; }

#modal hr { 
    border-style: solid;
    border-color: #b0b0b0;
    border-width: 1px 0 0 0;
    margin-bottom: 16px;
}

#modal #ok-button, #modal #cancel-button { float: right; }


/* Info box */
#info {
	background-color: #F0F0F0;
	border-color: #C0C0C0;
	border-width: 1px;
	border-style: dashed;
	padding: 1em;
	width: 100%;
	margin-bottom : 1em;
}

.hide {
	display: none;
}

#info .warn {
	font-weight: bold;
	color: red;
}


/* Document area */

#document {
	background-color: white;
	width: 100%;
	flex: 1;
	overflow: scroll;
}

#document table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 0.8em;
    width: auto;
}

#document tr:nth-child(even) {
	background-color: #f8f8f8;
}

#document td, #document th {
	border-width: 1px;
	border-style: solid;
	margin: 0;
	border-color: #e8e8e8;
	white-space: nowrap;
	padding: 4px 8px;
}

#document tr.warn,
#document td.warn {
	background-color: #FFD0D0;
}

#document td.warn {
	border-color: #FF8080;
	border-width: 2px;
	border-style: solid;
}


/* File management area */

#file-manager{
	width : 100%;
	height: 300px;
	border-width: 1px 0 0 0;
	border-color: #b0b0b0;
	border-style: solid;
	background-color: white;
	box-sizing: border-box;
}


.drag-target {
	text-align: center;
	color: #404848;
	float: left;
	width: 300px;
	height: 300px;
	background-color: #c0d0d0;
	border-width: 0 1px 0 0;
	border-color: #b0b0b0;
	border-style: solid;
	box-sizing: border-box;
}

.drag-target:hover {
	background-color: #a0b0b0;
	border-color: #90a0a0;
}

.drag-target span:first-child {
	line-height: 200px;
	display: block;
	font-size: 1.8em;
	height: 150px;
}


.drag-target span:last-child {
	display: block;
	font-size: .8em;
	vertical-align: top;
	height: 100px;
}



.file-list {
	float: left;
	box-sizing: border-box;
	height: 100%;
	font-size: 0.9em;
}

.file-list:after {
	clear: both;
}

.file-list table {
    border-collapse: collapse;
    border-spacing: 0;
}

.file-list thead tr {
	background-color: #e8e8e8;
	border-width: 0 1px 1px 0;
	border-color: #b0b0b0;
	border-style: solid;
}

.file-list thead tr:last-child {
    border-width: 0;
}

.file-list tr th {
    border-width: 0 1px 0 0;
    border-style: solid;
	border-color: #c0c0c0;    
}

.file-list tr th, .file-list tr td {
	padding: 2px 6px 2px 6px;
}

.file-list tr th.document {
	width: 200px;
}

.file-list tr th.file {
	width: 300px;
}

.file-list tr th.date {
	width: 100px;
}

.file-list tbody {
	background-color: none;
}

.file-list tr.edited { font-style: italic; }

.file-list tr.warn { font-weight: bold; color: darkred; background-color: #FFE0E0; }

.file-list tr td {
	border-width: 0;
	border: none;
	margin: 0;
}

.file-list tr:focus {
	_outline: none;
}

.file-list tbody tr:nth-child(2n+0) {
	background-color: #f8f8f8;
}

.file-list tbody tr.selected {
	background-color: #A0A0C0;
}

#actions { padding: 32px 0 32px 0; }
#actions button {
	display: block;
	background-color: #d0d0d0;
	border-color: #b0b0b0;
	border-width: 1px;
	padding: 3px 8px 3px 8px;
	border-radius: 5px;
	min-width: 180px;
	margin: 0 auto 12px auto;
	font-size: 0.8em;
}


