/* BASICS & CONTAINERS */

hr { border: none; color: #ccc; background: #ccc; height: 1px; margin: 0.5em 0; }
.emp { font-weight: bold; background: #f8f8f8; }

.section-caption { border-top: 1px solid #ccc; padding-top: 0.5em; margin-top: 0 }

.section { margin: 0px; padding: 0; }
/*.offer-section { margin: 0 1em; padding: 0 1em; }*/

div.main-section { margin: 0 0 0.5em 2em; }
div.main-section.middle { margin: 0 0 0 2em; }

/* UGLY WIDTH/HEIGHT FIXES */

.fullwidth { width: 100%; }
p.page-description { margin: 1.5em 0; }
div.loginbox { min-height: 14.5em; }
.tos { max-height: 230px; overflow-y: auto;}

/* SELECTION PAGE */

/*div.selection { padding-bottom: 20px; }*/
/*.selection-wrapper{ overflow: auto; }*/


.section-deleter { text-align: right; padding-right: 5px; font-weight: bold; }
.section-deleter span:hover { color: #c31; cursor: pointer; }

.caption-quantity { font-weight: normal; font-size: 72.5%; }
.caption-quantity img { vertical-align: middle; }
.filter-strategy { background: #f8f8f8; border: 1px solid #ddd; margin: 10px 20px 0 10px; padding: 0.5em 0.5em 0.0em 0.5em; }

div.info-section { padding: 10px 0; }
div.info-section span { vertical-align: middle; }
div.info-section img { vertical-align: middle; margin: 0px 0.25em; }

table.treeitem-view { border-collapse: collapse; width: 100% }
table.treeitem-view td { line-height: 130%; cursor: default }
table.treeitem-view tr { border-bottom: 1px solid #eee }
table.treeitem-view tr.rowhr { border-bottom: none; }
table.treeitem-view td.quantity { width: 100px; /*font-size: 90%;*/ text-align: right; }
table.treeitem-view td.i1, table.treeitem-view td.i2, table.treeitem-view td.i3,
    table.treeitem-view td.i4, table.treeitem-view td.i5, table.treeitem-view td.i6, table.treeitem-view td.i7 { width: 75%; }
table.treeitem-view td.i1 { padding-left: 0; }
table.treeitem-view td.i2 { padding-left: 17px; background: url('../img/sub.png') no-repeat 3px 50%; }
table.treeitem-view td.i3 { padding-left: 34px; background: url('../img/sub.png') no-repeat 20px 50%; }
table.treeitem-view td.i4 { padding-left: 51px; background: url('../img/sub.png') no-repeat 37px 50%; }
table.treeitem-view td.i5 { padding-left: 68px; background: url('../img/sub.png') no-repeat 54px 50%; }
table.treeitem-view td.i6 { padding-left: 85px; background: url('../img/sub.png') no-repeat 71px 50%; }
table.treeitem-view td.i7 { padding-left: 102px; background: url('../img/sub.png') no-repeat 88px 50%; }
table.treeitem-view td.delete { text-align: right; padding-left: 0.5em; width: 15px; }
table.treeitem-view td.delete img { vertical-align: middle; }
table.treeitem-view td.delete a { line-height: 150%; }
table .treeitem-refine { font-size: 85%; cursor: pointer; color: #f10; }

.partial { color: #00b; font-style: normal; }
.add-selection .section-caption { margin: 0; padding-bottom: 0.5em; }

span.section-deleter { display: block; float: right; text-align: right; padding-right: 5px; font-weight: bold; }
span.section-deleter:hover { color: #c31; cursor: pointer; }






/* USER PAGE TAB BOX */
div.page { border: 1px solid #f22; border-radius: 4px; border-top-left-radius: 0; }
span.tab { margin-right: 4px; display: inline-block; 
    border: 1px solid #f22; border-bottom: none; padding: 1px 15px; background: #fee;
    cursor: pointer; margin-bottom: -1px; 
    border-top-left-radius: 4px; border-top-right-radius: 4px; }
span.tab:hover { border-bottom: none; background: #fff; border-bottom: 1px solid white; }
span.tab.selected, span.tab.selected:hover { border: 1px solid #f22; background: #fff; border-bottom: 1px solid white; 
    font-weight: bold; }

table.tabtable { width: 100%; border-collapse: collapse;     margin-top: 5px; }
table.tabtable th { background: #fff; font-weight: bold; text-align: left; cursor: default; }
table.tabtable th, table.tabtable td { padding: 6px 8px 6px 8px; }
table.tabtable tr { border: 1px solid #fff; cursor: pointer; }
table.tabtable tr:hover { background: #ccc; }
table.tabtable tr:nth-child(odd) { background: #f0f0f0; }
table.tabtable tr:nth-child(odd):hover { background: #ccc; }
table.tabtable tr:nth-child(even) { background: #e5e5e5; }
table.tabtable tr:nth-child(even):hover { background: #ccc; }
table.tabtable th.number, table.tabtable td.number, table.tabtable td.rename { text-align: right; }
table.tabtable th.actions, table.tabtable td.actions { text-align: center; width: 90px; padding: 0px; }
table.tabtable td img { vertical-align: top; padding: 0 5px; max-height: 100px; }
table.tabtable td.image{ vertical-align: top }
.tabtable.prevent-cursor tr{
	cursor: default;
}
.tabtable.prevent-cursor tr:hover {
	background: transparent;
}
.tabtable.prevent-cursor tr:nth-child(odd):hover { background: #f0f0f0; }
.tabtable.prevent-cursor tr:nth-child(even):hover { background: #e5e5e5; }

.action span { font-family: Verdana, arial, sans-serif; vertical-align: middle; display: none; }
.action img {vertical-align: middle !important;}
.action { padding: 0px;
    padding-top: 3px;
    padding-bottom: 5px;text-decoration: none; color: #333; font-size: 10px; position: relative; }
.action:hover { border-radius: 3px; background: #aaa; }
.action:hover span { display: inline-block; position: absolute; top: -3em; background: #333; color: white; z-index: 10; 
    left: -25px; min-width: 80px; text-align: center; border-radius: 3px; box-shadow: 0 0 5px black; }

/* INFO BOX */

.info-closer { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 11 }
span.info { position: relative; vertical-align: middle; }
span.info img { cursor: pointer; }
span.info span { box-shadow: 0 0 5px #888; position: absolute; left: 15px; top: 15px; font-size: 11px; font-weight: normal; width: 500px; 
    border: 1px solid #888; border-radius: 5px; background: #eee; padding: 0.5em; z-index: 15; }

/* TOGGLES AND EXPANDERZ */

.notoggle { margin-left: 27px; }
.dialog p.filter-strategies, .dialog2 p.filter-strategies { margin-top: -0.5em; }
.dialog p.filter-strategies-caption, .dialog2 p.filter-strategies-caption { margin-top: 1.5em; }
.toggle {
    display: block;
    float: left;
    /*width: 1.6em;*/
   width: 19px;
    height: 1.4em;
    
    white-space: nowrap;
    margin: 0 8px 0 0; 
    background-image: url('../img/plus.png');
    background-repeat: no-repeat;
    background-position: 5px 50%;
    cursor: pointer;
}
.toggle.open { background-image: url('../img/minus.png'); } 

div.toggle-content { margin: 0 0 0 26px; }

/* BUTTONS AND FORM STUFF */
.no-wrap{
    white-space: nowrap;
}
span.checkbox-label {   
    height: 1.5em;
    line-height: 1.5em;
    
    padding-left: 17px;
    /*padding: 0 5px 0 17px;
    margin-right: -5px;*/
    cursor: default;
    background-image: url('../img/checkbox0.png');
    background-repeat: no-repeat;
    background-position: 0 50%;
    white-space: nowrap;
}
/*
.checkbox-label.level0{
    margin-right: -1.6em;
}
.checkbox-label.level1{
    margin-right: -3.2em;
}
.checkbox-label.level2{
    margin-right: -4.8em;
}
.checkbox-label.level3{
    margin-right: -6.4em;
}
.checkbox-label.level4{
    margin-right: -8.0em;
}
.checkbox-label.level5{
    margin-right: -9.6em;
}
*/

span.checkbox-label.checked { background-image: url('../img/checkbox1.png') }
span.checkbox-label.halfchecked { background-image: url('../img/checkbox2.png') }

.button, .button:link, .button:visited, 
input[type=submit], input[type=button] { margin-bottom: 0.25em; cursor: pointer; border-radius: 3px; border: none; display: inline-block; font-weight: bold; text-decoration: none; 
    color: white !important; padding: 0.25em 1.5em; }
.button.main, input[type=submit], input[type=button] { background: #b10; } 
.button.main:hover, input[type=submit]:hover, input[type=button]:hover { background: #b55; } 
.button.main:active, input[type=submit]:active, input[type=button]:active { background: #b10; }
.button.simple, .button.filter.off { background: #888; }
.button.simple:hover, .button.filter.off:hover { background: #aaa; }
.button.simple:active, .button.filter.off:active { background: #777; }
.button.filter.off { box-shadow: 2px 2px 3px -2px #888; }
.button.filter.on {  box-shadow: none; background: #55c055; margin: 1px -1px -1px 1px; }
.button.filter.on:hover { background: #6d6; }
.button.filter.on:active { background: #8e8; }
.button.filter { display: inline-block; width: 40%; text-align: center; }
.button img { vertical-align: text-bottom; }
.button.small { padding: 0.125em 1em !important; font-weight: normal !important; }

.dialog hr, .dialog2 hr { margin: 0 20px 0 10px; }
.dialogbuttons { padding-top: 10px; }
div.filter-body.subtree { border-left: 1px solid #ccc; margin: 0 10px; padding: 10px; }

form.register input, form.register select { margin-bottom: 0.75em; }
.dialog select, .dialog2 select { margin-bottom: 0.25em; }

input[type=text], input[type=password] {
    background: white;
    border: 1px solid #aaa;
    vertical-align: middle;
    border-radius: 2px; box-shadow: inset 0px 5px 5px -5px #999;
    padding: 0.25em;
}
input[type=text].small, select.small { width: 20%; }
span.filter-body { margin-bottom: 0; width: auto; }

optgroup { 
    border-top: 1px solid #aaa;
    height: 5px;
    margin-top: 5px;
}

table.grid { border-collapse: collapse; margin: 0; padding: 0; width: 100% }
table.grid td { margin: 0; padding: 0 1px; }
table.grid tr { margin: 0; padding: 0; }

/*input[type=text].err, input[type=password].err { background: #f86; }*/
form.userdata input[type=text], form.userdata input[type=password] { margin-bottom: 0.5em; }
input[type="checkbox"] { vertical-align: middle }

/*input[type="radio"] { vertical-align: bottom; }*/
input[type="radio"], label { vertical-align: middle }

.important { color: #d10; }
p.important.page-description { color: #d10; border: 1px solid #f88; font-weight: bold; background: #fdd; padding: 0.5em; }

/* DATA - RESULT TABLE -------------------------------------------------------------------------- */

table.datatable { width: 100%; border-collapse: collapse; }
table.datatable th { padding: 5px; background: #f0f0f0; font-weight: bold; text-align: left; }
table.datatable td { padding: 5px; text-align: left; }
table.datatable td, table.datatable th { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
table.datatable td img { vertical-align: top; padding: 0 5px; max-height: 100px; }
table.datatable td.image{ vertical-align: top }

table.result td, table.result th { text-align: right; }
table.result td+td, table.result th+th { text-align: left; }
table.result td+td+td, table.result th+th+th { text-align: right; }
/*table.result { margin-bottom: 1em; }*/

.shopping-overlay{
    width: 400px;
    height: 200px;
    left: 50%;
    top: 20%;
    margin-left: -200px;
}

p.tip {
    background: #ffe;
    border: 1px solid #ddb;
    color: #884;
    display: inline-block;
    padding: 0.2em 0.7em;
    margin-top: 0;
    margin-bottom: 0.5em;
}