/* Flexigrid semiflat */
.flexigrid { font: normal 12px Arial, Helvetica, sans-serif; position: relative; overflow: hidden; color: #433; }
.flexigrid.hideBody { height: 35px !important; border-bottom: 1px solid #ccc; }
.ie6fullwidthbug { border-right: 0 solid #ccc; padding-right: 2px; }
.flexigrid div.nDiv {
    background: #eee url("imgs/fgrid/line.gif") repeat-y -1px top; border: 1px solid #ccc; border-top: 0;
    overflow: auto; left: 0; position: absolute; z-index: 999; float: left;
}
.flexigrid div.nDiv table { margin: 2px; }
.flexigrid div.hDivBox { float: left; padding-right: 40px; }
.flexigrid div.bDiv table {}
.flexigrid div.bDiv table a { font-weight: bold; }
.flexigrid div.bDiv table.autoht { border-bottom: 0; margin-bottom: 0; }
.flexigrid div.nDiv td { padding: 2px 3px; border: 1px solid #eee; cursor: default; }
.flexigrid div.nDiv tr:hover td,.flexigrid div.nDiv tr.ndcolover td {
    background: #acdefb url("imgs/fgrid/hl.png") repeat-x top; border: 1px solid #a8d8eb;
}
.flexigrid div.nDiv td.ndcol1 { border-right: 1px solid #ccc; }
.flexigrid div.nDiv td.ndcol2 { border-left: 1px solid #fff; padding-right: 10px; }
.flexigrid div.nDiv tr:hover td.ndcol1,.flexigrid div.nDiv tr.ndcolover td.ndcol1 { border-right: 1px solid #d2e3ec; }
.flexigrid div.nDiv tr:hover td.ndcol2,.flexigrid div.nDiv tr.ndcolover td.ndcol2 { border-left: 1px solid #eef8ff; }
.flexigrid div.nBtn {
    position: absolute; height: 24px; width: 14px; z-index: 900; top: 0; left: 0; margin-top: 1px;
    background: #fafafa url("imgs/fgrid/fhbg.gif") repeat-x bottom; border: 0 solid #ccc;
    border-left: 1px solid #ccc; cursor: pointer; display: none;
}
.flexigrid div.nBtn div {
    height: 24px; width: 12px; border-left: 1px solid #fff; float: left;
    background: url("imgs/fgrid/ddn.png") no-repeat center;
}
.flexigrid div.nBtn.srtd { background: url("imgs/fgrid/wbg.gif") repeat-x 0 -1px; }
.flexigrid div.mDiv {
    position: relative; display: block; background-color: #E6E6E6; border: 1px solid #ccc; border-bottom: none;
    font: bold 120%/22px arial,sans-serif; color: #605858; overflow: hidden; white-space: nowrap;
}
.flexigrid div.mDiv div { padding: 6px 8px; white-space: nowrap; }
.flexigrid div.mDiv div.ptogtitle {
    position: absolute; top: 6px; right: 6px; padding: 0; height: 20px; width: 20px; overflow: hidden;
    border: 1px solid #ccc; cursor: pointer;
}
.flexigrid div.mDiv div.ptogtitle:hover { background-color: #EEE; }
.flexigrid div.mDiv div.ptogtitle span {
    display: block; border-left: 1px solid #eee; border-top: 1px solid #fff; border-bottom: 1px solid #ddd;
    width: 18px; height: 18px; background: url("imgs/fgrid/sprites.png?06") -1px -188px no-repeat;
}
.flexigrid div.mDiv div.ptogtitle.vsble span { background: url("imgs/fgrid/sprites.png?06") -1px -211px no-repeat; }
.flexigrid div.tDiv /*toolbar*/ {
    background: #fafafa url("imgs/fgrid/bg.gif") repeat-x top; position: relative; border: 1px solid #ccc;
    border-bottom: 0; overflow: hidden;
}
.flexigrid div.tDiv2 { float: left; clear: both; padding: 1px; }
/*toolbar*/
.flexigrid div.sDiv {
    display: none; border: 1px solid #ccc; border-top: none; background: #fafafa url("imgs/fgrid/bg.gif") 0 0 repeat-x;
}
.flexigrid div.sDiv2 { padding: 5px; }
.flexigrid div.sDiv2 input[type="button"] {
    -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 3px 10px; height: 27px;
    border: 1px outset #FFF;
}
.flexigrid div.sDiv2 input[type="button"]:active { border: 1px inset #FFF; }
.flexigrid div.btnseparator {
    float: left; height: 30px; border-left: 1px solid #ccc; border-right: 1px solid #fff; margin: 2px 1px;
}
.flexigrid div.fbutton {
    float: left; display: block; cursor: pointer; margin: 2px; border: 1px solid transparent;
}
.flexigrid div.fbutton div { padding: 3px 5px; border: 1px solid transparent; }
.flexigrid div.fbutton span { display: block; padding: 4px 4px 2px; }
.flexigrid div.fbutton:hover, .flexigrid div.fbutton.fbOver { border-color: #ccc; }
.flexigrid div.fbutton:hover div, .flexigrid div.fbutton.fbOver div {
    border-color: #FFF; border-right-color: #EEE; border-bottom-color: #EEE;
}
.flexigrid div.fbutton span { background: url("imgs/fgrid/sprites.png?06") no-repeat; }
.flexigrid div.fbutton .bdel { background-position: -32px -2px; }
.flexigrid div.fbutton .badd { background-position: -32px -25px; }
.flexigrid div.fbutton .bedt { background-position: -32px -48px; }
.flexigrid div.fbutton .bact { background-position: -32px -72px; }
.flexigrid div.fbutton .bdes { background-position: -32px -96px; }
.flexigrid div.fbutton .bfld { background-position: -32px -122px; }
.flexigrid div.fbutton .bnot { background-position: -32px -146px; }
.flexigrid div.fbutton .binf { background-position: -32px -170px; }
.flexigrid div.fbutton .bpdf { background-position: -32px -196px; }
.flexigrid div.fbutton .bxls { background-position: -32px -221px; }
.flexigrid div.fbutton .bcam { background-position: -32px -246px; }
.flexigrid div.fbutton .bmail { background-position: -32px -269px; }
.flexigrid div.fbutton .bcopy { background-position: -32px -292px; }
.flexigrid div.fbutton .bver { background-position: -32px -317px; }
.flexigrid div.fbutton .bsearch { background-position: -32px -317px; }
.flexigrid div.fbutton .bmasign { background-position: -32px -341px; }
.flexigrid div.fbutton .bpaste { background-position: -32px -366px; }
.flexigrid div.fbutton .bbar { background-position: -32px -390px; }
.flexigrid div.fbutton .bqrc { background-position: -32px -427px; }
.flexigrid div.fbutton .bcut { background-position: -32px -441px; }
.flexigrid div.fbutton .bimp { background-position: -32px -466px; }
.flexigrid div.fbutton .bprn { background-position: -32px -489px; }
/* end toolbar*/
.flexigrid div.hDiv {
    background-color: #f2f2f2; position: relative; border: 1px solid #ccc; border-bottom: 0; overflow: hidden;
}
.flexigrid div.hDiv table { border-right: 1px solid #fff; }
.flexigrid div.cDrag { float: left; position: absolute; z-index: 2; overflow: visible; }
.flexigrid div.cDrag div {
    float: left; background: none; display: block; position: absolute; height: 24px; width: 5px; cursor: col-resize;
}
.flexigrid div.cDrag div:hover,.flexigrid div.cDrag div.dragging {
    background: url("imgs/fgrid/line.gif") repeat-y 2px center;
}
.flexigrid div.iDiv {
    border: 1px solid #316ac5; position: absolute; overflow: visible; background: none;
}
.flexigrid div.iDiv input,.flexigrid div.iDiv select,.flexigrid div.iDiv textarea {
    font-family: Arial, Helvetica, sans-serif; font-size: 11px;
}
.flexigrid div.iDiv input.tb {
    border: 0; padding: 0; width: 100%; height: 100%; padding: 0; background: none;
}
.flexigrid div.bDiv {
    border: 1px solid #ccc; border-top: 0; background: #fff; overflow: auto; position: relative; min-height: 200px;
}
.flexigrid div.bDiv table { border-bottom: 1px solid #ccc; }
.flexigrid div.hGrip {
    position: absolute; top: 0; right: 0; height: 5px; width: 5px; margin-right: 1px;
    background: url("imgs/fgrid/line.gif") repeat-x center; cursor: col-resize;
}

.flexigrid div.hGrip:hover,.flexigrid div.hGrip.hgOver { border-right: 1px solid #999; margin-right: 0; }
.flexigrid div.vGrip {
    height: 5px; overflow: hidden; position: relative; background: #fafafa url("imgs/fgrid/wbg.gif") repeat-x 0 -1px;
    border: 1px solid #ccc; border-top: 0; text-align: center; cursor: row-resize;
}
.flexigrid div.vGrip span {
    display: block; margin: 1px auto; width: 20px; height: 1px; overflow: hidden; border-top: 1px solid #aaa;
    border-bottom: 1px solid #aaa; background: none;
}
/* common cell properties*/
.flexigrid div.hDiv th, .flexigrid div.bDiv td {
    text-align: left; border-right: 1px solid #ddd; border-left: 1px solid #fff; overflow: hidden;
    vertical-align: top !important; padding-left: 0; padding-right: 0;
}
.flexigrid div.hDiv th div, .flexigrid div.bDiv td div, div.colCopy div {
    padding: 5px; border-left: 0 solid #fff;
}
.flexigrid div.hDiv th,div.colCopy {
    font-weight: normal; height: 24px; cursor: default; white-space: nowrap; overflow: hidden;
}
div.colCopy {
    font-family: Arial, Helvetica, sans-serif; font-size: 11px; border: 1px solid #ccc;
    background: #fafafa url("imgs/fgrid/fhbg.gif") repeat-x bottom; border-bottom: 0; overflow: hidden;
}
.flexigrid div.hDiv th.sorted {
    background-color: #DDD; border-bottom: 0 solid #ccc;
}
.flexigrid div.hDiv th.thOver {}
.flexigrid div.hDiv th.thOver div,.flexigrid div.hDiv th.sorted.thOver div {
    border-bottom: 1px solid orange; padding-bottom: 4px;
}
.flexigrid div.hDiv th.sorted div { border-bottom: 0 solid #ccc; padding-bottom: 5px; }
.flexigrid div.hDiv th.thMove { background: #fff; color: #fff; }
.flexigrid div.hDiv th.sorted.thMove div { border-bottom: 1px solid #fff; padding-bottom: 4px }
.flexigrid div.hDiv th.thMove div { background: #fff !important; }
.flexigrid div.hDiv th div.sdesc { background: url("imgs/fgrid/sort-ord.png") no-repeat center -33px; }
.flexigrid div.hDiv th div.sasc { background: url("imgs/fgrid/sort-ord.png") no-repeat center top; }
.flexigrid div.bDiv td { border-bottom: 1px solid #fff; vertical-align: top; white-space: nowrap; }
.flexigrid div.hDiv th div {}
.flexigrid span.cdropleft, .flexigrid span.cdropright { background: url("imgs/fgrid/sprites.png?06") no-repeat; }
.flexigrid span.cdropleft {
    display: block; background-position: -6px -51px; width: 24px; height: 24px; position: relative; top: -24px;
    margin-bottom: -24px; z-index: 3;
}
.flexigrid div.hDiv span.cdropright {
    display: block; background-position: 7px -25px; width: 24px; height: 24px; float: right; position: relative;
    top: -24px; margin-bottom: -24px;
}
.flexigrid div.bDiv td div { border-top: 0 solid #fff; padding-bottom: 4px; }
.flexigrid tr td.sorted { background: #f3f3f3; border-right: 1px solid #ddd; border-bottom: 1px solid #f3f3f3; }
.flexigrid tr td.sorted div {}
.flexigrid tr.erow td { background-color: #f7f7f7; border-bottom: 1px solid #f7f7f7; }
.flexigrid tr.erow td.sorted { background-color: #e3e3e3; border-bottom: 1px solid #e3e3e3; }
.flexigrid tr.erow td.sorted div {}
.flexigrid div.bDiv tr:hover td,.flexigrid div.bDiv tr:hover td.sorted,
.flexigrid div.bDiv tr.trOver td.sorted,.flexigrid div.bDiv tr.trOver td {
    background: #FFC; border-left: 1px solid #eef8ff; border-bottom: 1px dotted #a8d8eb; /* #d9ebf5 */
}
.flexigrid div.bDiv tr.trSelected:hover td,.flexigrid div.bDiv tr.trSelected:hover td.sorted,
.flexigrid div.bDiv tr.trOver.trSelected td.sorted,.flexigrid div.bDiv tr.trOver.trSelected td,
.flexigrid tr.trSelected td.sorted,.flexigrid tr.trSelected td {
    background: #acdefb url("imgs/fgrid/hl.png") repeat-x top !important; border-right: 1px solid #d2e3ec;
    border-left: 1px solid #eef8ff; border-bottom: 1px solid #a8d8eb;
}
/* novstripe adjustments */
.flexigrid.novstripe .bDiv table { border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; }
.flexigrid.novstripe div.bDiv td { border-right-color: #fff; }
.flexigrid.novstripe div.bDiv tr.erow td.sorted { border-right-color: #e3e3e3; }
.flexigrid.novstripe div.bDiv tr td.sorted { border-right-color: #f3f3f3; }
.flexigrid.novstripe div.bDiv tr.erow td { border-right-color: #f7f7f7; border-left-color: #f7f7f7; }
.flexigrid.novstripe div.bDiv tr.trSelected:hover td,.flexigrid.novstripe div.bDiv tr.trSelected:hover td.sorted,
.flexigrid.novstripe div.bDiv tr.trOver.trSelected td.sorted,.flexigrid.novstripe div.bDiv tr.trOver.trSelected td,
.flexigrid.novstripe tr.trSelected td.sorted,.flexigrid.novstripe tr.trSelected td {
    border-right: 1px solid #0066FF; border-left: 1px solid #0066FF;
}
.flexigrid.novstripe div.bDiv tr.trOver td,.flexigrid.novstripe div.bDiv tr:hover td {
    border-left-color: #d9ebf5; border-right-color: #d9ebf5;
}
/* end novstripe */
.flexigrid div.pDiv {
    background: #fafafa url("imgs/fgrid/bg.gif") repeat-x top; border: 1px solid #ccc;
    border-top: none; overflow: hidden;
}
.flexigrid div.pDiv div.pDiv2 { float: left; }
div.pGroup { float: left; background: none; margin: 3px 5px; }
.flexigrid input[type="text"], .flexigrid select {
    -webkit-appearance: none; -moz-appearance: none; appearance: none; margin-top: 1px; padding: 6px;
    font: normal 8pt arial,sans-serif; border: 1px solid #AAA; border-radius: 4px; background-color: #FFF;
}
.flexigrid select {
    padding: 5px 16px 5px 6px !important;
    background: #FFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='12' width='10'%3E%3Cpolygon style='fill:%23888' points='0,0 10,0 5,12'%3E%3C/polygon%3E%3C/svg%3E")
        right 5px bottom 6px/6px 7px no-repeat !important;
}

.flexigrid div.pDiv .pPageStat,.flexigrid div.pDiv .pcontrol { font-size: 90%; line-height: 28px; }
.flexigrid .pButton {
    float: left; width: 26px; height: 26px; border: 0; cursor: pointer; overflow: hidden; border: 1px solid transparent;
    background: url("imgs/fgrid/sprites.png?06") no-repeat;
}
.flexigrid .pButton:hover, .flexigrid .pButton.pBtnOver { border: 1px solid #ccc; cursor: pointer; }
.flexigrid .pButton span { width: 26px; height: 26px; display: block; }
.flexigrid .pButton:hover span, .flexigrid .pButton.pBtnOver span {
    border-top: 1px solid #fff; border-left: 1px solid #fff;
}
.flexigrid .pFirst { background-position: 2px 3px; }
.flexigrid .pNext { background-position: 2px -23px; }
.flexigrid .pPrev { background-position: 2px -49px; }
.flexigrid .pLast { background-position: 2px -75px; }
.flexigrid .pReload { background-position: 2px -129px; }
.flexigrid .pSearch { background-position: 2px -156px; }
.flexigrid .pReload.loading { background: url("imgs/fgrid/load.gif") no-repeat center; }
/* ie adjustments */
.flexigrid.ie div.hDiv th div,.flexigrid.ie  div.bDiv td  div,div.colCopy.ie div { overflow: hidden; }
.flexigrid .lnkblk { display: block; }
/* Fin Flexigrid */

/* ---- Tree view ---- */
#sel-pag {
    border: 1px inset #CCC; background-color: #FFF; margin: 10px 10px 2px; overflow: hidden;
}

#tree { height: 420px; overflow: auto; margin-right: 2px; }

#treecontrol {
    margin: 0; padding: 2px 4px; border-bottom: 1px solid #CCC; display: none; background-color: #EEE;
}
#treecontrol a { color: #444; font-size: 8pt; text-decoration: none; }
#treecontrol a:hover { text-decoration: underline; }

.treeview { font-size: 90%; }
.treeview, .treeview ul { padding: 0; margin: 0; list-style: none; }
.treeview ul { margin-top: 0; }
.treeview .hitarea {
    background: url("imgs/tree/treeview-default.gif") -64px -26px no-repeat;
    height: 16px; width: 16px; margin-left: -18px; float: left; cursor: pointer;
}
.treeview li { margin: 0; padding: 0 0 0 18px; line-height: 18px; cursor: pointer; white-space: nowrap; }
.treeview a.selected { background-color: #eee; }

.treeview .hover {}
.treeview li { background: url("imgs/tree/treeview-default-line.gif") 0 0 no-repeat; }
.treeview li.collapsable, .treeview li.expandable { background-position: 0 -19px; }

.treeview .expandable-hitarea { background-position: -80px -4px; }

.treeview li.last { background-position: 0 -2984px }
.treeview li.lastCollapsable,
.treeview li.lastExpandable { background-image: url("imgs/tree/treeview-default.gif"); }
.treeview li.lastCollapsable { background-position: 0 -113px }
.treeview li.lastExpandable { background-position: -32px -69px }

.treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }

.treeview-red li { background-image: url("imgs/tree/treeview-red-line.gif"); }
.treeview-red .hitarea, .treeview-red li.lastCollapsable,
.treeview-red li.lastExpandable { background-image: url("imgs/tree/treeview-red.gif"); }

.treeview-black li { background-image: url("imgs/tree/treeview-black-line.gif"); }
.treeview-black .hitarea, .treeview-black li.lastCollapsable,
.treeview-black li.lastExpandable { background-image: url("imgs/tree/treeview-black.gif"); }

.treeview-gray li { background-image: url("imgs/tree/treeview-gray-line.gif"); }
.treeview-gray .hitarea, .treeview-gray li.lastCollapsable,
.treeview-gray li.lastExpandable { background-image: url("imgs/tree/treeview-gray.gif"); }

.treeview-famfamfam li { background-image: url("imgs/tree/treeview-famfamfam-line.gif"); }
.treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable,
.treeview-famfamfam li.lastExpandable { background-image: url("imgs/tree/treeview-famfamfam.gif"); }

.treeview .placeholder {
    background: url("imgs/tree/ajax-loader.gif") 0 0 no-repeat;
    height: 16px; width: 16px; display: block;
}

.filetree li { padding: 3px 0 2px 16px; }
.filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; }
.filetree span.folder { background: url("imgs/tree/folder.gif") 0 0 no-repeat; }
.filetree li.expandable span.folder { background: url("imgs/tree/folder-closed.gif") 0 0 no-repeat; }
.filetree span.file { background: url("imgs/tree/file.gif") 0 0 no-repeat; }
/* -- Fin Tree view -- */

/* Validity */
/*
 * Style used by the label output mode.
 * Applied to the error labels that get positioned after an input.
 */
label.error {
    color:#fff; margin-left:2px;
    background: url('../imgs/arrow.gif') left center no-repeat;
    padding: 2px 2px 2px 18px;
    -moz-border-radius:4px;
    -webkit-border-radius: 4px;
}

/*
 * Styles used by the modal output mode.
 * '.validity-modal-msg' is applied to the modal boxes
 * and '.validity-modal-msg:hover' is applied to suggest
 * to the user that the boxes are clickable.
 */
.validity-modal-msg {
    position:absolute; z-index:2;
    background-color:#999; border:solid 1px #000;
    padding: 4px; cursor:pointer;
}
.validity-modal-msg:hover { background-color:#aaa; }

/*
 * Styles used by the summary output mode.
 * '.validity-summary' is a container on the page that should contain a UL
 * which is the actual summary. The container can hold
 * an extra bit of text (or anything really) that explains what the summary is.
 * '.validity-erroneous' is applied to every input that fails.
 */
.validity-summary { display:none; font-weight: bold; color: #E00; }
.validity-summary-output ul { }
.validity-erroneous { border: 1px solid #E00 !important; }

.validity-tooltip {
    position: absolute; z-index: 1050; cursor: pointer;
    padding: 3px 5px; width: 8em; font-size: 80%; color: #369;
    background-color: #E2ECF5; border: 1px solid #369;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.5);
}

.validity-tooltip:hover { color: #258; }

.validity-tooltip .validity-tooltip-outer,
.validity-tooltip .validity-tooltip-inner { position: absolute; display: none; }

.validity-tooltip .validity-tooltip-outer {
    display: block; height: 17px; width: 10px; top: 0; left: -9px;
    background: url("imgs/arrowtt.gif") no-repeat;
}
/* Fin Validity */

/* cssCharts v0.3.0 */
.chart *,.chart{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0}
.chart{width:auto;display:block;position:relative;font-family:sans-serif;font-size:14px;margin: 10px 10px 10px 45px}
.chart.bar{height:120px}
.bar-chart{
	display:table;table-layout:fixed;width:auto;height:100%;margin:0 auto;z-index:20;position:absolute;left:0;bottom:0
}
.bar-chart ul{margin-left:24px;float:left;display:block;height:100%;padding:20px 7px 0;overflow:hidden}
.bar-chart li{position:relative;display:table-cell;vertical-align:bottom;height:100px}
.bar-chart span{
	margin:0 6px;display:block;background:#f17f49;width:34px;position:relative;-webkit-animation:drawBar .3s ease-in-out;
	-moz-animation:drawBar .3s ease-in-out;animation:drawBar .3s ease-in-out;-webkit-transition:all 100ms ease-in-out;
	-moz-transition:all 100ms ease-in-out;transition:all 100ms ease-in-out;
}
.bar-chart li:hover span{box-shadow:0 0 0 4px #4CA;cursor:pointer}
/* .bar-chart li:nth-child(2n+1):hover span{box-shadow:0 0 0 4px #4CA} */
.bar-chart li:nth-child(2n+1) span{background-color:#bd380f}
.bar-chart ul:last-of-type li:last-child span{margin-right:0}
.bar-chart ul:first-of-type li:first-child span{margin-left:0}
.bar-chart ul:last-of-type{margin-right:0}
.bar-chart ul:first-of-type{margin-left:0}
.bar-chart.left-bar ul:last-of-type{margin-right:0}
.bar-chart.left-bar ul{margin-right:34px;float:left;margin-left:0}
.bar-chart span:before{
	position:absolute;bottom:100%;margin-bottom:2px;display:block;text-align:center;content:attr(title);
	word-wrap:break-word;font-size:12px;width:auto;left:50%;-webkit-transform:translateX(-50%);
	-moz-transform:translateX(-50%);transform:translateX(-50%);font: bold 8pt arial;color:#444;
}
.bar-chart li span:before{
	-webkit-transition:all 100ms ease-in-out;-moz-transition:all 100ms ease-in-out;transition:all 100ms ease-in-out;
}
@-webkit-keyframes drawBar{0{height:0}}
@-moz-keyframes drawBar{0{height:0}}
@keyframes drawBar{0{height:0}}
.chart.donut{width:200px;height:200px}
.donut-chart{width:100%;height:100%;position:relative;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}
.donut-chart.fill{background:#f17f49}
.donut-chart:after{
	content:"";position:absolute;width:86%;height:86%;background:#FFF;left:50%;top:50%;z-index:400;margin:0 auto;
	pointer-events:none;-webkit-border-radius:100%;-moz-border-radius:100%;border-radius:100%;
	-webkit-transform:translateX(-50%) translateY(-50%);-moz-transform:translateX(-50%) translateY(-50%);
	transform:translateX(-50%) translateY(-50%);
}
.donut-chart h2{
	text-align:center;position:absolute;line-height:140%;width:100%;margin-top:-30px;top:50%;z-index:500;
	pointer-events:none;font-size:26px;font-weight:400;color:#000;
}
.donut-chart h2 span{display:block;width:100%;font-size:14px;color:#8e8f8f;margin-top:-10px}
.donut-chart .spinner{
	z-index:200;border-right:0;-webkit-border-radius:100% 0 0 100% / 50% 0 0 50%;
	-moz-border-radius:100% 0 0 100% / 50% 0 0 50%;border-radius:100% 0 0 100% / 50% 0 0 50%;
	-webkit-transform:rotate(0);-moz-transform:rotate(0);transform:rotate(0);
	-webkit-animation:rotateDonut .3s ease-in-out;-moz-animation:rotateDonut .3s ease-in-out;
	animation:rotateDonut .3s ease-in-out;-webkit-transition:all 160ms ease-in-out;
	-moz-transition:all 160ms ease-in-out;transition:all 160ms ease-in-out;
}
.spinner ~ .pie{pointer-events:none}
.donut-chart.fill .pie,.pie-chart .pie{
	-webkit-box-shadow:0 0 0 4px #bd380f;-moz-box-shadow:0 0 0 4px #bd380f;box-shadow:0 0 0 4px #bd380f;
}
@-webkit-keyframes rotateDonut{0{transform:rotate(0)}}
@-moz-keyframes rotateDonut{0{transform:rotate(0)}}
@keyframes rotateDonut{0{transform:rotate(0)}}
.donut-chart .spinner.temp{display:none}
.donut-chart .pie{
	width:50%;height:100%;position:absolute;background:#bd380f;-webkit-transform-origin:100% 50%;
	-moz-transform-origin:100% 50%;transform-origin:100% 50%;
}
.donut-chart .mask{background:#f8f8f8;z-index:400;margin-left:-1px}
.pie-chart:after{display:none}
.chart.donut .pie-chart h2,.chart.donut .pie-chart h2 span{color:#FFF}
.chart.pie svg{width:100%;height:100%}
.chart.pie{width:200px;height:200px}
.chart.pie svg text{text-anchor:middle;fill:white;stroke-width:0;transform:translate(120,-80)}
.chart.pie svg path:hover{stroke-width:10px}
.charts-tip{
	display:block;position:absolute;font-size:16px;color:#FFF;background:rgba(0,0,0,0.8);pointer-events:none;
	font-family:sans-serif;padding:6px 12px;z-index:100;width:auto;-webkit-border-radius:4px;-moz-border-radius:4px;
	border-radius:4px;
}
.chart.pie .pie-legend{position:absolute;top:50%;right:0;margin-right:-30px;transform:translateX(100%) translateY(-50%)}
.chart.pie .pie-legend li{display:block;margin-bottom:14px;clear:both}
.chart.pie .pie-legend li i{
	top:1px;position:relative;display:block;float:left;width:14px;height:14px;background:#DDD;margin-right:10px;
	box-shadow:inset 0 0 0 1px rgba(0,0,0,0.2);
}
.chart.pie .pie-legend li p{clear:both;display:inline}
.chart.line{width:auto;height:auto;margin:0 auto;position:relative}
.chart .line-chart{
	min-width:100px;min-height:100px;width:100%;height:100%;margin:0 auto;display:block;position:relative;z-index:20;
}
.line-chart:after{
	content:"";display:block;position:absolute;left:0;bottom:0;height:1px;width:100%;background:#eee;padding-right:10px;
}
.chart .grid{width:100%;height:100%;position:absolute;left:0;bottom:0}
.chart hr{position:absolute;left:0;bottom:0;width:100%;height:1px;outline:0;border:0;background:#eee}
.chart hr:before{
	position:absolute;right:100%;top:0;margin-right:1px;color:rgba(0,0,0,0.4);font-size:7pt;content:attr(data-y);
	text-align:right;-webkit-transform:translateX(-50%) translateY(-50%);-moz-transform:translateX(-50%) translateY(-50%);
	transform:translateX(-50%) translateY(-50%);
}
.line-chart li{display:block;height:1px;float:left;position:relative;position:absolute}
.line-chart li a:hover:before,.line-chart li a:hover:after{display:block;z-index:10}
.line-chart li a:before{
	content:attr(data-y);cursor:pointer;display:none;position:absolute;font-size:14px;color:#FFF;bottom:100%;left:50%;
	margin-bottom:-4px;text-align:center;width:40px;background:rgba(0,0,0,0.8);padding:8px;z-index:40;
	-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);transform:translateX(-50%);
	-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;
}
.line-chart li a:after{
	z-index:50;content:"";width:0;height:0;display:none;position:absolute;bottom:100%;left:50%;
	margin-bottom:-16px;border:6px solid rgba(0,0,0,0);border-top:6px solid rgba(0,0,0,0.8);
	-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);transform:translateX(-50%);
}
.line-chart li a{
	display:block;position:absolute;cursor:pointer;width:40px;height:40px;left:0;top:0;z-index:30;
	-webkit-transform:translateX(-50%) translateY(-50%);-moz-transform:translateX(-50%) translateY(-50%);
	transform:translateX(-50%) translateY(-50%);
}
.line-chart li span{display:block;height:1px;background:#f17f49;float:left;position:absolute}
.line-chart.no-points li span{display:none}
.line-chart li span:before{
	content:"";position:absolute;left:-4px;bottom:-4px;width:6px;height:6px;display:block;-webkt-border-radius:50%;
	-moz-border-radius:50%;border-radius:50%;
}
.line-chart li:hover span:before{
	-webkit-transform:scale(1.3);-moz-transform:scale(1.3);transform:scale(1.3);-webkit-transition:all 200ms ease-in-out;
	-moz-transition:all 200ms ease-in-out;transition:all 200ms ease-in-out;
}
.line-chart li span:before,
.line-chart li span:after{
	background:#f17f49;border:2px solid #bd380f;-webkit-box-shadow:0 0 0 4px #FFF;-moz-box-shadow:0 0 0 4px #FFF;
	box-shadow:0 0 0 4px #FFF;
}
.chart.line svg,
.chart.line>div{
	height:100%;width:100%;position:absolute;bottom:0;left:0;opacity:1;-webkit-animation:drawLine .3s ease-in-out;
	-moz-animation:drawLine .3s ease-in-out;animation:drawLine .3s ease-in-out;
}
.chart.line svg path{fill:rgba(241,127,73,0.0);stroke:#f17f49;stroke-width:2px}
.chart.line.dotted svg path{stroke-dasharray:3}
.chart.line .fill svg path{fill:rgba(241,127,73,0.1);stroke:none;stroke-width:0}
@-webkit-keyframes drawLine{0{opacity:0}}
@-moz-keyframes drawLine{0{opacity:0}}
@keyframes drawLine{0{opacity:0}}
@-webkit-keyframes drawChart{0{width:0}}
@-moz-keyframes drawChart{0{width:0}}
@keyframes drawChart{0{width:0}}
/* Fin cssCharts v0.3.0 */
/* strength.js */
.strength_meter {
	height: 23px; width: 244px; background: silver; display: inline-block; margin: 4px 0 2px 3px;
	vertical-align: middle; border-radius: 4px; box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
	overflow: hidden; color: #FFF;
}
.strength_meter div {
	height: 23px; text-align: center; font-weight: bold; line-height: 23px;
}
.strength {
	padding: 3px; border: 1px solid #AAA; color: #444; font: normal 1em Arial, sans-serif !important;
	background: #FFF url("imgs/input_shadow.png") no-repeat; box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
	margin: 0 0 7px; width: calc(70% - 167px); box-sizing: border-box;
}
.strength:focus { border-color: #06C; color: #222; }
.button_strength {
	display: inline-block; width: 32px; height: 32px; background: url("imgs/ojo.png") no-repeat;
	vertical-align: middle; margin-left: 10px;
}
.hide_button_strength { background-position: -32px 0; }
.veryweak{ background-color: #E00; }
.weak { background-color: #E60; }
.medium { background-color: #DD0; color: #000; }
.strong { background-color: #0A0; }
.verystrong { background-color: #0E6; color: #800; }
/* Fin strength.js */

/* OpenLayers */
.ol-box { box-sizing: border-box; border-radius: 2px; border: 2px solid #00f; }
.ol-mouse-position { top: 8px; right: 8px; position: absolute; }
.ol-scale-line { background: rgba(0, 60, 136, .3); border-radius: 4px; bottom: 8px; left: 8px; padding: 2px; position: absolute; }
.ol-scale-line-inner {
	border: 1px solid #eee; border-top: none; color: #eee; font-size: 10px;
	text-align: center; margin: 1px; will-change: contents, width;
}
.ol-overlay-container { will-change: left, right, top, bottom; }
.ol-unsupported { display: none; }
.ol-unselectable, .ol-viewport {
	-webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none;
	-ms-user-select: none; user-select: none; -webkit-tap-highlight-color: transparent;
}
.ol-selectable {
	-webkit-touch-callout: default; -webkit-user-select: auto; -moz-user-select: auto;
	-ms-user-select: auto; user-select: auto;
}
.ol-grabbing { cursor: -webkit-grabbing; cursor: -moz-grabbing; cursor: grabbing; }
.ol-grab { cursor: move; cursor: -webkit-grab; cursor: -moz-grab; cursor: grab; }
.ol-control { position: absolute; background-color: rgba(255, 255, 255, .4); border-radius: 4px; padding: 2px; }
.ol-control:hover { background-color: rgba(255, 255, 255, .6); }
.ol-zoom { top: .5em; left: .5em; }
.ol-rotate { top: .5em; right: .5em; transition: opacity .25s linear, visibility 0s linear; }
.ol-rotate.ol-hidden { opacity: 0; visibility: hidden; transition: opacity .25s linear, visibility 0s linear .25s; }
.ol-zoom-extent { top: 4.643em; left: .5em; }
.ol-full-screen { right: .5em; top: .5em; }
@media print { .ol-control { display: none; } }
.ol-control button {
	display: block; margin: 1px; padding: 0; color: #fff; font-size: 1.14em; font-weight: 700; text-decoration: none;
	text-align: center; height: 1.375em; width: 1.375em; line-height: .4em; background-color: rgba(0, 60, 136, .5);
	border: none; border-radius: 2px;
}
.ol-control button::-moz-focus-inner { border: none; padding: 0; }
.ol-zoom-extent button { line-height: 1.4em; }
.ol-compass { display: block; font-weight: 400; font-size: 1.2em; will-change: transform; }
.ol-touch .ol-control button { font-size: 1.5em; }
.ol-touch .ol-zoom-extent { top: 5.5em; }
.ol-control button:focus, .ol-control button:hover { text-decoration: none; background-color: rgba(0, 60, 136, .7); }
.ol-zoom .ol-zoom-in { border-radius: 2px 2px 0 0; }
.ol-zoom .ol-zoom-out { border-radius: 0 0 2px 2px; }
.ol-attribution { text-align: right; bottom: .5em; right: .5em; max-width: calc(100% - 1.3em); }
.ol-attribution ul {
	margin: 0; padding: 0 .5em; font-size: .7rem; line-height: 1.375em; color: #000; text-shadow: 0 0 2px #fff;
}
.ol-attribution li { display: inline; list-style: none; line-height: inherit; }
.ol-attribution li:not(:last-child): after { content: " "; }
.ol-attribution img { max-height: 2em; max-width: inherit; vertical-align: middle; }
.ol-attribution button, .ol-attribution ul { display: inline-block; }
.ol-attribution.ol-collapsed ul { display: none; }
.ol-attribution.ol-logo-only ul { display: block; }
.ol-attribution:not(.ol-collapsed) { background: rgba(255, 255, 255, .8); }
.ol-attribution.ol-uncollapsible { bottom: 0; right: 0; border-radius: 4px 0 0; height: 1.1em; line-height: 1em; }
.ol-attribution.ol-logo-only { background: 0 0; bottom: .4em; height: 1.1em; line-height: 1em; }
.ol-attribution.ol-uncollapsible img { margin-top: -.2em; max-height: 1.6em; }
.ol-attribution.ol-logo-only button, .ol-attribution.ol-uncollapsible button { display: none; }
.ol-zoomslider { top: 4.5em; left: .5em; height: 200px; }
.ol-zoomslider button { position: relative; height: 10px; }
.ol-touch .ol-zoomslider { top: 5.5em; }
.ol-overviewmap { left: .5em; bottom: .5em; }
.ol-overviewmap.ol-uncollapsible { bottom: 0; left: 0; border-radius: 0 4px 0 0; }
.ol-overviewmap .ol-overviewmap-map, .ol-overviewmap button { display: inline-block; }
.ol-overviewmap .ol-overviewmap-map { border: 1px solid #7b98bc; height: 150px; margin: 2px; width: 150px; }
.ol-overviewmap:not(.ol-collapsed) button { bottom: 1px; left: 2px; position: absolute; }
.ol-overviewmap.ol-collapsed .ol-overviewmap-map, .ol-overviewmap.ol-uncollapsible button { display: none; }
.ol-overviewmap:not(.ol-collapsed) { background: rgba(255, 255, 255, .8); }
.ol-overviewmap-box { border: 2px dotted rgba(0, 60, 136, .7); }
.ol-overviewmap .ol-overviewmap-box:hover { cursor: move; }
/* Fin OpenLayers */

/* Grids autoeditables */
.filt-aedit { float: left; }
.filt-aedit input {
    padding: 5px; border: 1px solid #CCC; color: #444; box-sizing: border-box; background-color: #FFF;
    box-shadow: 1px 1px 1px rgba(0,0,0,0.2); font: normal 1em Arial, sans-serif; margin: 3px 0;
    border-radius: 4px;
}
.filt-aedit input:focus { border-color: #48C; box-shadow: 0 0 2px #08F; }
.autoeditable { width: 100%; border-collapse: collapse; border: 1px solid #CCC; }
.autoeditable thead { background-color: #EEE; }
.autoeditable th,
.autoeditable td { border: 1px dotted #CCC; padding: 2px 5px; }
.autoeditable tbody tr { border-bottom: 1px solid #CCC; }
.autoeditable tbody tr:nth-child(odd) { background-color: #F4F4F4; }
.autoeditable tbody tr:hover { background-color: #FFC; }
.autoeditable tbody tr.sel { background-color: #CEF; }
.autoeditable td.editable:focus {
    border: 1px solid #0AF; box-shadow: 0 0 2px 0 #08E inset; outline: none; color: #000; font-weight: bold;
}
.autoeditable tbody tr.sel a[href="#sel"] { color: #C00; }
.autoeditable tbody tr.sel a[href="#sel"] i::before { content: "\E85B"; }
.autoeditable .accs { width: 80px; text-align: center; font-size: 150%; }
.autoeditable .accs a { color: #444; }
.autoeditable .accs a:hover { color: #090 !important; }
.autoeditable .accs i { margin: 0 5px; }

/* CSS theme for simplePagination.js */
.pagination { display: block; overflow: hidden; margin: 4px 0; float: right; }
.pagination ul { list-style: none; padding: 0; margin: 0; }
.pagination li { list-style: none; padding: 0; margin: 2px; display: inline-block; }
span.ellipse.clickable { cursor: pointer; }
span.ellipse input { width: 4em; }
.light-theme span { cursor: pointer; }
.light-theme a, .light-theme span {
    color: #666; font-size: 14px; line-height: 24px; font-weight: normal; text-align: center; text-decoration: none;
    border: 1px solid #BBB; min-width: 14px; padding: 3px 7px; border-radius: 3px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.2); background: #efefef; /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #efefef 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#efefef)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #ffffff 0%,#efefef 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #ffffff 0%,#efefef 100%); /* Opera11.10+ */
    background: -ms-linear-gradient(top, #ffffff 0%,#efefef 100%); /* IE10+ */
    background: linear-gradient(top, #ffffff 0%,#efefef 100%); /* W3C */
}
.light-theme span input { padding: 4px 0 4px 4px; border: 1px solid #CCC; font-weight: bold; }
.light-theme a:hover, .light-theme li:not(.disabled):not(.active) span:hover { text-decoration: none; background: #FCFCFC; }
.light-theme .current {
    background: #666; color: #FFF; border-color: #444; cursor: default;
    box-shadow: 0 1px 0 rgba(255,255,255,1), 0 0 2px rgba(0, 0, 0, 0.3) inset;
}
.light-theme .ellipse {
    background: none; border: none; border-radius: 0; box-shadow: none; font-weight: bold; cursor: default;
}
