@import "button";


/**********
 ! Notebook
***********/

@include exports("notebook") {
	.notebook {
		padding: 0;
		border-width: 1px 0 0 0;
		border-style: solid;
		border-color: border_normal($base_color);
		border-radius: 0;
		background-color: $base_color;
		background-image: none;
		background-clip: border-box;
		color: $text_color;

		-GtkNotebook-initial-gap: 0;
		-GtkNotebook-arrow-spacing: 5;
		-GtkNotebook-tab-curvature: 0;
		-GtkNotebook-tab-overlap: 1;
		-GtkNotebook-has-tab-gap: false;

		&.frame { border-width: 1px; }

		&.header {
			border-width: 0;
			background-color: shade($base_color, 0.85);

			&.frame {
				border-color: shade($base_color, 0.75);

				&.top { border-width: 1px 1px 0 1px; }

				&.right { border-width: 1px 1px 1px 0; }

				&.bottom { border-width: 0 1px 1px 1px; }

				&.left { border-width: 1px 0 1px 1px; }
			}
		}

		GtkViewport {
			border-width: 0;
			background-color: $base_color;
			color: $text_color;
		}

		tab {
			padding: $spacing ($spacing * 2);
			border: 1px solid transparent;
			background-color: transparent;
			background-image: none;

			&:active {
				background-color: transparent;
				background-image: none;
			}

			&.top {
				border-bottom-width: 2px;
				border-bottom-right-radius: 0;
				border-bottom-left-radius: 0;

				&:hover { border-bottom-color: alpha($selected_bg_color, 0.3); }

				&:active { border-bottom-color: $selected_bg_color; }
			}

			&.right {
				border-left-width: 2px;
				border-bottom-left-radius: 0;
				border-top-left-radius: 0;

				&:hover { border-left-color: alpha($selected_bg_color, 0.3); }

				&:active { border-left-color: $selected_bg_color; }
			}


			&.bottom {
				border-top-width: 2px;
				border-top-right-radius: 0;
				border-top-left-radius: 0;

				&:hover { border-top-color: alpha($selected_bg_color, 0.3); }

				&:active { border-top-color: $selected_bg_color; }
			}

			&.left {
				border-right-width: 2px;
				border-top-right-radius: 0;
				border-bottom-right-radius: 0;

				&:hover { border-right-color: alpha($selected_bg_color, 0.3); }

				&:active { border-right-color: $selected_bg_color; }
			}

			GtkLabel { color: mix($text_color, $base_color, 0.3); }

			/* close button styling */
			.button { @extend %close_button; }
		}

		.prelight-page {
			&, GtkLabel { color: mix($text_color, $base_color, 0.15); }
		}

		.active-page {
			&, GtkLabel { color: $text_color; }
		}

		.reorderable-page {
			&:hover {
				background-color: shade($base_color, 0.85);
				border-left: 0;
				border-right: 0;
				/* using box shadows instead of borders due to slanted edges */
				box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03),
							inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7);
			}

			&:active {
				background-color: shade($base_color, 0.90);
				border-left: 0;
				border-right: 0;
				box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03),
							inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75);
			}
		}
	}
}