/* TabContainer 
 * 
 * Styling TabContainer means styling the TabList and Its content container  (dijitTitlePane)
 * 
 * Tab List: (including 4 kinds of tab location)
 * 		.dijitTabContainerTop-tabs     - tablist container at top
 * 		.dijitTabContainerBottom-tabs  - tablist container at bottom
 * 		.dijitTabContainerLeft-tabs    - tablist container at left
 * 		.dijitTabContainerRight-tabs   - tablist container at right
 * 
 * Tab Strip Button:
 * 		.dijitTabStripIcon - tab strip button icon
 * 		.dijitTabStripMenuIcon - down arrow icon position
 * 		.dijitTabStripSlideLeftIcon - left arrow icon position
 * 		.dijitTabStripSlideRightIcon - right arrow icon position
 * 
 * 		.tabStripButtonDisabled - styles for disabled tab strip buttons
 * 
 * Tab Button:
 * 		.dijitTabContainerTop-tabs .dijitTabInnerDiv/.dijitTabContent     - styles for top tab button container
 * 		.dijitTabContainerBottom-tabs .dijitTabInnerDiv/.dijitTabContent  - styles for bottom tab button container
 * 		.dijitTabContainerLeft-tabs .dijitTabInnerDiv/.dijitTabContent    - styles for left tab button container
 * 		.dijitTabContainerRight-tabs .dijitTabInnerDiv/.dijitTabContent   - styles for right tab button container
 * 
 * 		.dijitTabContainerTop-tabs .dijitTabChecked .dijitTabInnerDiv/.dijitTabContent    
 * 				- styles for selected status of top tab button
 * 		same to Bottom, Left, Right Tabs
 * 
 * 		.dijitTabHover .dijitTabInnerDiv   - styles when mouse hover on tab buttons
 * 		.dijitTabActive .dijitTabInnerDiv  - styles when mouse down on tab buttons
 * 		.dijitTabChecked .dijitTabInnerDiv  - styles when on buttons of selected tab		
 * 
 * 		.dijitTabCloseButton - the close action buttons lie at the right top of each tab button on closable tabs
 * 		.dijitTabCloseButtonHover - styles when mouse hover on close action button
 * 		.dijitTabCloseButtonActive - styles when mouse down on close action button
 * 
 * Tab Button: (checked status)
 * 
 * Tab Content Container:
 * 		.dijitTabContainerTop-dijitContentPane
 * 		.dijitTabContainerBottom-dijitContentPane
 * 		.dijitTabContainerLeft-dijitContentPane
 * 		.dijitTabContainerRight-dijitContentPane - for background and padding
 * 
 * Nested Tabs:
 * 		.dijitTabContainerNested - Container for nested tabs
 * 		.dijitTabContainerTabListNested - tab list container for nested tabs
 */

@import "../variables";

/*** some common features ***/
.claro .dijitTabPaneWrapper {
	background:@pane-background-color;
}
.claro .dijitTabPaneWrapper,
.claro .dijitTabContainerTop-tabs,
.claro .dijitTabContainerBottom-tabs,
.claro .dijitTabContainerLeft-tabs,
.claro .dijitTabContainerRight-tabs {
	/* todo: add common class name for this div */
	border-color: @border-color;
}
.claro .dijitTabCloseButton {
	background: url("../@{image-layout-tab-close}") no-repeat;
	width: 14px;
	height: 14px;
	margin-left: 5px;
	margin-right:-5px;
}
.claro .dijitTabCloseButtonHover {
	background-position:-14px;
}
.claro .dijitTabCloseButtonActive {
	background-position:-28px;
}
.claro .dijitTabSpacer {
	/* set the spacer invisible.  note that height:0 doesn't work on IE/quirks, it's still 10px. */
	display: none;
}
.claro .dijitTabInnerDiv {
	background-color:@unselected-background-color;
	.transition-property(background-color, border);
 	.transition-duration(.35s);
	color:@unselected-text-color;
}
.claro .dijitTabHover .dijitTabInnerDiv {
	background-color:@hovered-background-color;
 	.transition-duration(.25s);
	color:@hovered-text-color;
}
.claro .dijitTabActive .dijitTabInnerDiv {
	background-color:@pressed-background-color;
	color:@selected-text-color;
	.transition-duration(.1s);
}
.claro .dijitTabChecked .dijitTabInnerDiv {
	background-color:@selected-background-color;
	color:@selected-text-color;
}

.claro .dijitTabContent {
	border: 1px solid @border-color;
}
.claro .dijitTabHover .dijitTabContent {
	border-color: @hovered-border-color;
}
.claro .dijitTabActive .dijitTabContent {
	border-color: @pressed-border-color;
}
.claro .dijitTabChecked .dijitTabContent {
	color:@selected-text-color;			// todo: redundant with .claro .dijitTabChecked .dijitTabInnerDiv above?
	border-color: @border-color;			// don't use @selected-border-color because need to match border of TabContainer
}

.claro .tabStripButton .dijitTabInnerDiv {
	background-color: transparent;
}
.claro .tabStripButton .dijitTabContent {
	border: none;
}
/*** end common ***/


/*************** top tab ***************/
.claro .dijitTabContainerTop-tabs .dijitTab {
	top: 1px;	/* used for overlap */
	margin-right: 1px;
	padding-top: 3px;
}
.dj_ie7 .claro .dijitTabContainerTop-tabs .dijitTab {
	top: 3px;
}
/* for top tab padding. change height when status changes */
.claro .dijitTabContainerTop-tabs .dijitTabContent {
	padding:3px 6px;
	border-bottom-width: 0;
	background-image:url("../@{image-layout-tab-top}");
	background-position:0 0;
	background-repeat:repeat-x;
	min-width: 60px;
	text-align: center;
}
.claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabContent {
	padding-bottom: 4px;
	padding-top: 6px;
}

/* normal status */
.claro .dijitTabContainerTop-tabs .dijitTabInnerDiv {
	background-image:url("../@{image-layout-tab-top}");
	background-position:0 -248px;
	background-position:bottom;
	background-repeat:repeat-x;
	.box-shadow(0 -1px 1px rgba(0, 0, 0, 0.04));
}

/* checked status */
.claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabInnerDiv {
	background-image:none;
	.box-shadow(0 -1px 2px rgba(0, 0, 0, 0.05));
}
.claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabContent {
	background-position:0 -102px;
	background-repeat:repeat-x;
}
/** end top tab **/


/*************** bottom tab ***************/
.claro .dijitTabContainerBottom-tabs .dijitTab {
	top: -1px;	/* used for overlap */
	margin-right: 1px;
}
/* calculate the position and size */
.claro .dijitTabContainerBottom-tabs .dijitTabContent {
	padding:3px 6px;
	border-top-width: 0;
	background-image: url("../@{image-layout-tab-bottom}");
	background-position:0 -249px;
	background-repeat: repeat-x;
	background-position:bottom;
	min-width: 60px;
	text-align: center;
}
.claro .dijitTabContainerBottom-tabs .dijitTab {
	padding-bottom: 3px;
}
/* normal status */
.claro .dijitTabContainerBottom-tabs .dijitTabInnerDiv {
	background-image: url("../@{image-layout-tab-bottom}");
	background-position: top;
	background-repeat: repeat-x;
	.box-shadow(0 1px 1px rgba(0, 0, 0, 0.04));
	
}

/* checked status */
.claro .dijitTabContainerBottom-tabs .dijitTabChecked .dijitTabContent {
	padding-bottom: 7px;
	padding-top: 4px;
	background-position:0 -119px;
}
.claro .dijitTabContainerBottom-tabs .dijitTabChecked {
	padding-bottom: 0;
}
.claro .dijitTabContainerBottom-tabs .dijitTabChecked .dijitTabInnerDiv {
	background-image:none;
	.box-shadow(0 1px 2px rgba(0, 0, 0, 0.05));
}
/** end bottom tab **/

/*************** left tab ***************/
.claro .dijitTabContainerLeft-tabs .dijitTab {
	border-right-width: 0;
	left: 1px;	/* used for overlap */
	margin-bottom: 1px;
}
/* normal status */
.claro .dijitTabContainerLeft-tabs .dijitTabInnerDiv {
	background-image: url("../@{image-layout-tab-left}");
	background-position: -347px -340px;
	background-repeat: repeat-y;
}
.claro .dijitTabContainerLeft-tabs .dijitTabContent {
	padding:3px 8px 4px 4px;
	background-image: url("../@{image-layout-tab-left}");
	background-repeat: repeat-y;
	background-position:0 0;
}
/* checked status */
.claro .dijitTabContainerLeft-tabs .dijitTabChecked .dijitTabContent {
	padding-right: 9px;
	border-right: none;
	background-image: none;
}
.claro .dijitTabContainerLeft-tabs .dijitTabChecked .dijitTabInnerDiv {
	background-position:0 -179px;
	background-repeat:repeat-y;
	.box-shadow(-1px 0 2px rgba(0, 0, 0, .05));
}
/** end left tab **/

/*************** right tab ***************/
.claro .dijitTabContainerRight-tabs .dijitTab {
	border-left-width: 0;
	left: -1px;	/* used for overlap */
	margin-bottom: 1px;
}
/* normal status */
.claro .dijitTabContainerRight-tabs .dijitTabInnerDiv {
	background-image: url("../@{image-layout-tab-right}");
	background-repeat: repeat-y;
	background-position: -1px -347px;
}
.claro .dijitTabContainerRight-tabs .dijitTabContent {
	padding:3px 8px 4px 4px;
	background-image: url("../@{image-layout-tab-right}");
	background-position:right top;
	background-repeat: repeat-y;
}
/* checked status */
.claro .dijitTabContainerRight-tabs .dijitTabChecked .dijitTabContent {
	padding-left: 5px;
	border-left: none;
	background-image: none;
}
.claro .dijitTabContainerRight-tabs .dijitTabChecked .dijitTabInnerDiv {
	background-position:-348px -179px;
	.box-shadow(1px 0 2px rgba(0, 0, 0, 0.07));
}
/** end right tab **/

/** round corner **/
.claro .dijitTabContainerTop-tabs .dijitTabInnerDiv,
.claro .dijitTabContainerTop-tabs .dijitTabContent {
	.border-radius(2px 2px 0 0);
}
.claro .dijitTabContainerBottom-tabs .dijitTabInnerDiv,
.claro .dijitTabContainerBottom-tabs .dijitTabContent{
	.border-radius(0 0 2px 2px);
}
.claro .dijitTabContainerLeft-tabs .dijitTabInnerDiv,
.claro .dijitTabContainerLeft-tabs .dijitTabContent{
	.border-radius(2px 0 0 2px);
}

.claro .dijitTabContainerRight-tabs .dijitTabInnerDiv,
.claro .dijitTabContainerRight-tabs .dijitTabContent{
	.border-radius(0 2px 2px 0);
}

/************ left/right scroll buttons + menu button ************/
.claro .tabStripButton {
	background-color:@button-background-color;
	border: 1px solid @border-color;
}
.claro .dijitTabListContainer-top .tabStripButton {
	padding: 4px 3px;
	margin-top:7px;
	background-image: url("../@{image-layout-tab-top}");
	background-position:0 0;
}
.claro .dijitTabListContainer-bottom .tabStripButton {
	padding:5px 3px;
	margin-bottom:4px;
	background-image: url("../@{image-layout-tab-top}");
	background-position:0 -248px;
	background-position:bottom;
}
.claro .tabStripButtonHover {
	background-color:@hovered-background-color;
}
.claro .tabStripButtonActive {
	background-color:@pressed-background-color;
}
.claro .dijitTabStripIcon {
	height:15px;
	width:15px;
	margin: 0 auto;
	background:url("../@{image-form-button-arrows}") no-repeat -75px 50%;
	background-color: transparent;
}
.claro .dijitTabStripSlideRightIcon{
	background-position: -24px 50%;
}
.claro .dijitTabStripMenuIcon {
	background-position: -51px 50%;
}

/*disabled styles for tab strip buttons*/
.claro .dijitTabListContainer-top .tabStripButtonDisabled,
.claro .dijitTabListContainer-bottom .tabStripButtonDisabled {
	background-color:@tab-disabled-background-color;
	border:1px solid @border-color;	/* to match border of TabContainer itself */
}
.claro .tabStripButtonDisabled .dijitTabStripSlideLeftIcon {
	background-position:-175px 50%;
}
.claro .tabStripButtonDisabled .dijitTabStripSlideRightIcon {
	background-position: -124px 50%;
}
.claro .tabStripButtonDisabled .dijitTabStripMenuIcon {
	background-position: -151px 50%;
} 
/* Nested Tabs */
.claro .dijitTabContainerNested .dijitTabListWrapper {
	height: auto;
}
.claro .dijitTabContainerNested .dijitTabContainerTop-tabs {
	border-bottom:solid 1px @border-color;
	padding:1px 2px 4px;
	margin-top:-2px;
}
.claro .dijitTabContainerTabListNested .dijitTabContent {
	background:rgba(255, 255, 255, 0) none repeat scroll 0 0;
	border: none;
	padding: 4px;
	border-color: rgba(118,157,192,0);
	.transition-property(background-color, border-color);
 	.transition-duration(.3s);
	.border-radius(2px);
}
.claro .dijitTabContainerTabListNested .dijitTab .dijitTabInnerDiv {
	/* 4 element selector to override box-shadow setting from above rule:
	 *		.claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabInnerDiv { ... }
	 */
	background: none;
	border: none;
	top: 0;/* to override top: 1px/-1px for normal tabs */
	.box-shadow(none);
}
.claro .dijitTabContainerTabListNested .dijitTabHover .dijitTabContent {
	background-color: @nestedtab-hovered-background-color;
	border:solid 1px @nestedtab-hovered-border-color;
	padding: 3px;
	.transition-duration(.2s);
}
.claro .dijitTabContainerTabListNested .dijitTabHover .tabLabel {
	text-decoration: none;
}
.claro .dijitTabContainerTabListNested .dijitTabActive .dijitTabContent {
	border:solid 1px @nestedtab-selected-border-color;
	padding: 3px;
	background: @nestedtab-selected-background-color url("../@{image-layout-tab-nested}") repeat-x;
	.transition-duration(.1s);
}
.claro .dijitTabContainerTabListNested .dijitTabChecked .dijitTabContent {
	padding: 3px;
	border:solid 1px @selected-border-color;
	background-position: 0 105px;
	background-color:@selected-background-color;
}
.claro .dijitTabContainerTabListNested .dijitTabChecked .tabLabel {
	text-decoration: none;
	background-image:none;
}
.claro .dijitTabPaneWrapperNested {
	border: none;/* prevent double border */
}


.dj_ie6 .claro .dijitTabContent,
.dj_ie6 .claro .dijitTabInnerDiv,
.dj_ie6 .dijitTabListContainer-top .tabStripButton,
.dj_ie6 .dijitTabListContainer-bottom .tabStripButton{
	background-image: none;
}

// Workaround IE9 bug when document mode is IE7 standards; focus outline doesn't show.
// Unfortunately a:focus rules doesn't work either.
// This hack may be unnecessary after the TabButton CSS is simplified by consolidating nested divs.
// Unfortunately, this rule makes the tab labels jump a bit when they get focus.  Should reduce
// padding simultaneously if that's a big issue.   But it only affects IE in compatibility / quirks mode.
.claro .dijitTabFocused .dijitTabContent > * {
    *border: dotted 1px gray;
}
