/* @group Tile */

/* Outer border */
.deco-tile-outer-border {
    position: absolute;
    border: solid 2px transparent;
    width: auto;
    height: auto;
    z-index: 40;
    right: 0px;
    left: 0px;
    top: 0px;
    bottom: 0px;
}

/* Inner border */
.deco-tile-inner-border {
    position: absolute;
    border: solid 1px transparent;
    width: auto;
    height: auto;
    z-index: 40;
    right: 4px;
    left: 4px;
    top: 4px;
    bottom: 4px;
}

/* Border on mouse over */
.deco-tile:hover .deco-tile-outer-border {
    border: dashed 2px #3469d0;
}

/* Hide hover border when dragging or resizing*/
.deco-panel-dragging .deco-tile:hover .deco-tile-outer-border {
    border: solid 2px transparent;
}

.deco-panel-resizing .deco-tile:hover .deco-tile-outer-border {
    border: solid 2px transparent;
}

.deco-panel-resizing .deco-selected-tile.deco-tile .deco-tile-outer-border {
    border: solid 2px transparent;
    background-color: transparent;
}

.deco-panel-resizing .deco-selected-tile.deco-tile:hover .deco-tile-outer-border {
    border: solid 2px transparent;
    background-color: transparent;
}

.deco-panel-resizing .deco-selected-tile.deco-tile .deco-tile-control {
    display: none !important;
}

/* Selected tile */
.deco-selected-tile .deco-tile-outer-border {
    border: 2px solid #3469d0;
    background-color: #FFFFE1;
}

.deco-selected-tile.deco-read-only-tile .deco-tile-outer-border {
    border: 2px solid #3469d0;
    background-color: #F0F0EE;
}

.deco-selected-tile.deco-read-only-tile:hover .deco-tile-outer-border {
    border: 2px solid #3469d0;
    background-color: #F0F0EE;
}

/* Selected tile hover */
.deco-selected-tile:hover .deco-tile-outer-border {
    border: 2px solid #3469d0;
    background-color: #FFFFE1;
}

/* Other tiles while dragging */
.deco-panel-dragging .deco-tile .deco-tile-inner-border {
    border: 1px dotted #888;
}

/* Hide inner border of helper while dragging */
.deco-panel-dragging .deco-helper-tile .deco-tile-inner-border {
    border: 1px transparent;
}

.deco-panel-dragging-new {
    cursor: crosshair !important;
}

.deco-panel-dragging-new:hover {
    cursor: crosshair !important;
}

/* Helper border */
.deco-tile.deco-helper-tile {
    border: 2px solid #3469d0;
    z-index: 1000;
    opacity: 0.5;
    position: absolute;
}

.deco-empty-row .deco-tile-outer-border {
    border: dashed 2px #3469d0;
}

.deco-tile {
    position: relative;
    z-index: 100;
}

.deco-tile .deco-tile-content {
    position: relative;
    padding: 1em;
    z-index: 100;
}

.deco-tile-content textarea, .deco-tile-content input {
    width: 100%;
}

.deco-tile-align-left {
    float: left;
    z-index: 200;
}

.deco-tile-align-right {
    float: right;
    z-index: 200;
}

.deco-panel-dragging .deco-tile-align-left {
    z-index: 50;
}

.deco-panel-dragging .deco-tile-align-right {
    z-index: 50;
}

.deco-original-tile {
    opacity: 0.5;
}

/* Empty row */
.deco-empty-row {
    height: 8px;
}

.deco-empty-row .deco-grid-cell {
    height: 8px;
    display: none;
}

.deco-empty-row .deco-grid-cell div {
    position: relative;
    top: -1px;
    height: 8px;
}

/* @end */

/* @group Hover icons */

.deco-tile-control {
    position: absolute;
    width: 16px;
    height: 16px;
    z-index: 500;
    display: none;
}

.deco-drag-handle {
    background-image: url(../images/window.png);
    background-position: center -30px;
    background-repeat: no-repeat;
    background-color: #3469d0;
    top: 0px;
    height: 9px;
    width: auto;
    left: 0px;
    right: 0px;
    cursor: move;
}

.implicit .deco-selected-tile .deco-drag-handle {
    z-index: 1;
}

.implicit .deco-drag-handle {
    background-image: none;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: transparent;
    top: 0px;
    bottom: 0px;
    height: auto;
    width: auto;
    left: 0px;
    right: 0px;
    cursor: move;
}

.deco-close-icon {
    right: 0px;
    left: auto;
    top: 0px;
    width: 30px;
    height: 30px;
    background-image: url(../images/window.png);
    background-position: -12px 0px;
    cursor: pointer;
    z-index: 501;
}

.deco-info-icon {
    right: 2px;
    top: auto;
    bottom: 2px;
    background-image: url(../images/window.png);
    background-position: -12px -56px;
    cursor: pointer;
}

.deco-field-label {
    top: 0px;
    left: -150px;
    width: 150px;
    color: white;
    height: 24px;
    text-align: right;
}

.deco-field-label-left {
    float: right;
    width: 6px;
    height: 24px;
    background-image: url(../images/toolbar.png);
    background-position: 0px -84px;
}

.deco-field-label-content {
    height: 24px;
    font-size: 80%;
    font-weight: bold;
    line-height: 24px;
    background-image: url(../images/toolbar.png);
    background-position: 0px -108px;
    float: right;
    position: relative;
    padding-left: 8px;
    padding-right: 8px;
}

.deco-info-icon:hover {
    background-position: -28px -56px;
}

.deco-tile:hover .deco-tile-control {
    display: block;
}

.deco-selected-tile .deco-tile-control {
    display: block !important;
}

.implicit .deco-tile:hover .deco-info-icon {
    display: none;
}

.implicit .deco-tile:hover .deco-close-icon {
    display: none;
}

.implicit .deco-tile:hover .deco-field-label {
    display: none;
}

/* Show move icon while hovering over a tile */
.deco-tile:hover .deco-drag-handle {
    display: block;
}

/* Hide icons while dragging or resizing*/
.deco-panel-dragging .deco-tile:hover .deco-tile-control {
    display: none;
}

.deco-panel-resizing .deco-tile:hover .deco-tile-control {
    display: none;
}

/* Show move icon on helper */
.deco-helper-tile .deco-drag-handle {
    display: block !important;
}

/* @end */

/* @group Resize */

.deco-panel-dragging .deco-resize-handle {
    display: none;
}

.deco-panel-resizing .deco-resize-handle-one:hover {
    display: none;
}

.deco-panel-resizing .deco-resize-handle-two:hover {
    display: none;
}

.deco-panel-resizing {
    cursor: ew-resize;
}

.deco-row-resizing .deco-tile {
    opacity: 0.5;
}

.deco-resize-handle {
    position: absolute;
    height: auto;
    top: 0px;
    bottom: 0px;
    width: 12px;
    left: -6px;
    z-index: 500;
    cursor: ew-resize;
}

.deco-resize-handle:hover {
    background-image: url(../images/window.png);
}

.deco-resize-handle-left:hover {
    background-position: -42px 0px;
}

.deco-resize-handle-center:hover {
    background-position: -45px 0px;
}

.deco-resize-handle-right:hover {
    background-position: -48px 0px;
}

.deco-resize-handle.deco-resize-handle-helper {
    background-image: url(../images/window.png);
    background-position: 0px 0px;
}

.deco-resize-placeholder {
    position: absolute;
    height: 100%;
}

.deco-resize-placeholder-inner-border {
    position: absolute;
    border: dotted 1px #888;
    width: auto;
    height: auto;
    z-index: 40;
    right: 4px;
    left: 4px;
    top: 4px;
    bottom: 4px;
}

.deco-resize-leftmost {
    margin-left: 0%;
}

.deco-resize-third {
    margin-left: 33.33%;
}

.deco-resize-two-thirds {
    margin-left: 66.67%;
}

.deco-resize-quarter {
    margin-left: 25%;
}

.deco-resize-half {
    margin-left: 50%;
}

.deco-resize-three-quarters {
    margin-left: 75%;
}

/* @end */

/* @group Dividers */

.deco-divider {
    position: absolute;
    z-index: 600;
    display: none;
    border: 2px dashed #3469d0;
}

.deco-divider-top {
    width: auto;
    height: 8px;
    top: -6px;
    left: 0px;
    right: 0px;
}

.deco-divider-bottom {
    width: auto;
    height: 8px;
    left: 0px;
    right: 0px;
    top: auto;
    bottom: -6px;
}

.deco-divider-right {
    width: 8px;
    height: auto;
    left: auto;
    right: -6px;
    top: 0px;
    bottom: 0px;
}

.deco-divider-left {
    width: 8px;
    height: auto;
    left: -6px;
    top: 0;
    bottom: 0px;
}

.deco-selected-divider {
    display: block !important;
}

.deco-selected-tile .deco-divider-add:hover {
    background-image: url(../images/window.png);
    background-repeat: no-repeat;
    background-color: #3469d0;
    cursor: pointer;
}

.deco-selected-tile .deco-divider-add {
    display: block;
}

.deco-divider-add {
    position: absolute;
    z-index: 499;
    display: none;
}

.deco-divider-add-top {
    width: auto;
    height: 7px;
    top: -5px;
    left: 0px;
    right: 0px;
    background-position: center -40px;
}

.deco-divider-add-bottom {
    width: auto;
    height: 7px;
    left: 0px;
    right: 0px;
    top: auto;
    bottom: -2px;
    background-position: center -49px;
}

/* @end */

/* @group Notifications */

.deco-notifications {
    display: block;
    top: 10px;
    right: 10px;
    position: fixed;
    _position: absolute;
    _top: expression(eval((document.body.scrollTop)?document.body.scrollTop:document.documentElement.scrollTop));
    z-index: 1100;
}

.deco-notification {
    width: 300px;
    position: absolute;
    right: 0px;
}

.deco-notification-header {
    background-image: url(../images/notify.png);
    background-position: 0px 0px;
    width: 300px;
    height: 10px;
}

.deco-notification:hover .deco-notification-header {
    background-image: url(../images/notify.png);
    background-position: 0px -10px;
}

.deco-notification-footer {
    background-image: url(../images/notify.png);
    background-position: -300px 0px;
    width: 300px;
    height: 10px;
}

.deco-notification:hover .deco-notification-footer {
    background-image: url(../images/notify.png);
    background-position: -300px -10px;
}

.deco-notification-content {
    background-image: url(../images/notify.png);
    background-position: -600px 0px;
    width: 300px;
    position: relative;
}

.deco-notification:hover .deco-notification-content {
    background-image: url(../images/notify.png);
    background-position: -900px 0px;
}

.deco-notification-close {
    position: absolute;
    top: -6px;
    left: auto;
    right: 3px;
    width: 30px;
    height: 30px;
    background-image: url(../images/window.png);
    background-position: -12px 0px;
    cursor: pointer;
    z-index: 1101;
    display: none;
}

.deco-notification:hover .deco-notification-close {
    display: block;
}

.deco-notification-type {
    width: 32px;
    height: 32px;
    position: absolute;
    left: 10px;
    top: 0px;
    background-position: left top;
    background-repeat: no-repeat;
}

.deco-notification-type-error {
    background-image: url(../images/notify.png);
    background-position: -1200px 0px;
}

.deco-notification-type-warning {
    background-image: url(../images/notify.png);
    background-position: -1232px 0px;
}

.deco-notification-type-info {
    background-image: url(../images/notify.png);
    background-position: -1264px 0px;
}

.deco-notification-text {
    width: 240px;
    position: relative;
    margin-left: 60px;
}

.deco-notification-title {
    color: #FFF;
    font-weight: bold;
    margin-bottom: 6px;
}

.deco-notification-message {
    color: #FFF;
}


/* @end */

/* @group Toolbar */

.deco-toolbar .deco-toolbar-content {
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 8px;
    padding-right: 8px;
    z-index: 800;
    position: relative;
}

.deco-toolbar .deco-toolbar-border {
    z-index: 700;
    opacity: 0.8;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    width: auto;
    height: auto;
    position: absolute;
}

.deco-toolbar-border-left {
    position: absolute;
    width: 8px;
    height: 28px;
    left: 0px;
    background-image: url(../images/toolbar.png);
    background-position: 0px 0px;
}

.deco-toolbar-border-content {
    position: absolute;
    width: auto;
    height: 28px;
    left: 8px;
    right: 8px;
    background-image: url(../images/toolbar.png);
    background-position: 0px -56px;
}

.deco-toolbar-border-right {
    position: absolute;
    width: 8px;
    height: 28px;
    left: auto;
    right: 0px;
    background-image: url(../images/toolbar.png);
    background-position: 0px -28px;
}

.deco-inline-toolbar {
    position: relative;
}

.deco-external-toolbar {
    display: block;
    top: 0px;
    position: fixed;
    _position: absolute;
    _top: expression(eval((document.body.scrollTop)?document.body.scrollTop:document.documentElement.scrollTop));
    z-index: 501;
}

.deco-toolbar-group {
    margin-right: 12px;
}

.deco-button {
    width: 24px;
    height: 24px;
    cursor: pointer;
    border: 0px;
    background-repeat: no-repeat;
    background-color: transparent;
    background-image: url(../images/icons.png);
}

.deco-button-save {
    background-position: -96px 0px;
}

.deco-button-cancel {
    background-position: -120px 0px;
}

.deco-button-bold {
    background-position: 0px 0px;
}

.deco-button-italic {
    background-position: -24px 0px;
}

.deco-button-undo {
    background-position: -48px 0px;
}

.deco-button-redo {
    background-position: -72px 0px;
}

.deco-button-ol {
    background-position: -168px 0px;
}

.deco-button-ul {
    background-position: -144px 0px;
}

.deco-button-tile-align-block {
    background-position: -240px 0px;
}

.deco-button-tile-align-left {
    background-position: -192px 0px;
}

.deco-button-tile-align-right {
    background-position: -216px 0px;
}

.deco-toolbar-group-insert {
    float: right;
}

.deco-toolbar-group-style {
    float: right;
}

/* @end */

/* @group Grid */

/* Grid classes, these can also be nested */
.deco-grid-row {
  float: left;
  width: 100%;
  display: block;
  position: relative;
}
.deco-grid-cell {
  position: relative;
  float: left;
  left: 100%;
}

/* Widths, these are abstracted out so that pixel-based layouts or other
   similar approaches can be retrofitted without changing the markup,
   or if you want to apply rules like the Golden Ratio to your layouts */
.deco-width-full {
    width: 100%;
}
.deco-width-half {
    width: 50%;
}
.deco-width-quarter {
    width: 25%;
}
.deco-width-three-quarters {
    width: 75%;
}
.deco-width-third {
    width: 33.33%;
}
.deco-width-two-thirds {
    width: 66.67%;
}

/* Positioning classes, these are subtracting from a rightmost position */
.deco-position-leftmost {
    margin-left: -100%;
}
.deco-position-third {
    margin-left: -66.67%;
}
.deco-position-two-thirds {
    margin-left: -33.33%;
}
.deco-position-quarter {
    margin-left: -75%;
}
.deco-position-half {
    margin-left: -50%;
}
.deco-position-three-quarters {
    margin-left: -25%;
}

/* @end */

