/**
 * WordPoints styles for points hooks administration screen.
 *
 * @package WordPoints\Points\Administration
 * @since 1.0.0
 *
 * Table of contents:
 * 1. General styles
 * 2. Dragging hooks
 * 3. Points types
 * 4. 2-column layout
 * 5. Hooks left
 *	- 5.1. Available hooks
 *	- 5.2. Inactive hooks
 * 6. Hooks right
 * 7. Accessibility mode
 * 8. Points type chooser
 * 9. Wide screen
 * 10. Delete points dialog
 */

/*
 * 1. General hooks styles.
 */

.hook {
	margin: 0 auto 10px;
	position: relative;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

.hook-top {
	font-size: 13px;
	font-weight: 600;
	background: #f7f7f7;
}

.hook-top a.hook-action,
.hook-top a.hook-action:hover {
	text-decoration: none;
	-webkit-box-shadow: none;
	box-shadow: none; /* :focus styles */
}

.hook-title h3 {
	margin: 0;
	padding: 15px;
	line-height: 1;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.hooks-holder-wrap .hook-inside {
	border-top: none;
	padding: 1px 15px 15px 15px;
	line-height: 16px;
}

.hook-top,
.hook-inside,
#hooks-right .hooks-holder-wrap {
	border: 1px solid #ddd;
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

#hooks-left .hook-in-question .hook-top,
#available-hooks .hook-top:hover,
#hooks-right .hook-top:hover {
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

#hooks-left .hook-in-question .hook-top,
#available-hooks .hook-top:hover,
#hooks-right .hook-top:hover,
#hooks-left .hook-top:hover {
	border-color: #999;
}

.js .hooks-holder-wrap.closed .hook,
.js .hooks-holder-wrap.closed .points-type-description {
	display: none;
}

.hook-top a.hook-action:after {
	right: 0;
	content: '\f140';
	border: none;
	background: none;
	font: normal 20px/1 'dashicons';
	speak: none;
	display: block;
	text-indent: 0;
	text-align: center;
	position: relative;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-decoration: none !important;
	padding: 12px 12px 0;
	color: #aaa;
}

.hook-top:hover a.hook-action:after {
	color: #777;
}

.hook-inside,
.hook-description {
	display: none;
}

/*
 * 2. Hook dragging helpers.
 */

.hook.ui-draggable-dragging {
	min-width: 100%;
}

.hook.ui-sortable-helper {
	opacity: 0.8;
}

.hook-placeholder {
	border: 1px dashed #bbb;
	margin: 0 auto 10px;
	height: 45px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#hooks-right .hook-placeholder {
	margin-top: 0;
}

#hooks-right .closed .hook-placeholder {
	height: 0;
	border: 0;
	margin-top: -10px;
}

/* Dragging hooks over the available hook area show's a "Deactivate" message */
#removing-hook {
	display: none;
	font-weight: normal;
	padding-left: 15px;
	font-size: 12px;
	line-height: 1;
}

.hooks-holder-wrap .ui-draggable,
.hooks-holder-wrap .ui-sortable {
	-ms-touch-action: auto;
	touch-action: auto;
}

/*
 * 3. Points types.
 */

.points-type-name {
	border: none;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.points-type-name-arrow {
	position: absolute;
	right: 0;
}

.js .points-type-name {
	cursor: pointer;
}

.points-type-name h2 {
	margin: 0;
	padding: 8px 10px;
	overflow: hidden;
	white-space: nowrap;
}

.hooks-holder-wrap .description {
	padding: 0 0 15px;
	margin: 0;
	font-style: normal;
	color: #777;
}

#hooks-right .hooks-holder-wrap .description {
	padding-left: 7px;
	padding-right: 7px;
}

.wordpoints-points-slug {
	color: #777;
}


.points-type-name .spinner {
	margin: -5px 5px;
	float: none;
}

.js .points-type-name-arrow:before {
	right: 0;
	color: #aaa;
	content: '\f142';
	border: none;
	background: none;
	font: normal 20px/1 'dashicons';
	speak: none;
	display: block;
	text-indent: 0;
	text-align: center;
	position: relative;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-decoration: none !important;
	padding: 12px 12px 0;
}

.js .points-type-name:hover .points-type-name-arrow:before {
	color: #777;
}

.js .closed .points-type-name-arrow:before {
	content: '\f140';
}

/*
 * 4. 2-column Layout.
 */

div.hook-liquid-left {
	margin: 0;
	width: 38%;
	float: left;
}

div.hook-liquid-right {
	float: right;
	width: 58%;
}

div#hooks-right .points-settings {
	margin: 0 auto;
}

/*
 * 5. Hooks left.
 */

/*
 * 5.1. Available hooks.
 */

div#hooks-left {
	padding-top: 12px;
}

div#hooks-left .closed .points-type-name,
div#hooks-left .inactive-points-type.closed .points-type-name {
	margin-bottom: 10px;
}

div#hooks-left .points-type-name h2 {
	padding: 10px 0;
	margin: 0 10px 0 0;
}

div#hooks-left .points-type-name .points-type-name-arrow:before {
	right: 0;
	top: 4px;
	padding: 4px 6px 4px 4px;
}

div#hooks-left .hook-holder {
	background: transparent;
	border: none;
}

#available-hooks .hook-action {
	display: none;
}

#available-hooks .hook {
	margin: 0;
}

#available-hooks .hook:nth-child(odd) {
	clear: both;
}

#available-hooks .hook .hook-description {
	display: block;
	padding: 10px 15px;
	font-size: 12px;
}

#available-hooks #hook-list {
	position: relative;
}

.wordpoints-no-hooks {
	margin: 30px 0 0 20px;
}

/*
 * 5.2. Inactive hooks.
 */

#hooks-left .inactive-points-type {
	clear: both;
	width: 100%;
	background: transparent;
	padding: 0;
	margin: 0 0 20px 0;
	border: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

#hooks-left .inactive-points-type.first {
	margin-top: 40px;
}

/* Not sure what this is for... */
div#hooks-left .inactive-points-type .hook.expanded {
	left: auto;
}

.hook-title-action {
	float: right;
	position: relative;
}

div#hooks-left .inactive-points-type .hooks-sortables {
	min-height: 42px;
	padding: 0;
	background: transparent;
	margin: 0;
	position: relative;
}

/*
 * 6. Hooks right.
 */

div#hooks-right:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

div#hooks-right .points-types-column-1,
div#hooks-right .points-types-column-2 {
	max-width: 450px;
}

div#hooks-right .hooks-holder-wrap {
	margin: 10px 0 0 0;
	background: #fff
}

div#hooks-right .points-type-description {
	min-height: 20px;
	margin-top: -5px;
}

div#hooks-right .points-type-name h2 {
	padding: 15px 12px;
}

div#hooks-right .points-type-name .points-type-name-arrow:before {
	right: 0;
	top: 4px;
}

div#hooks-right .hook-top {
	padding: 0;
}

div#hooks-right .hooks-sortables {
	padding: 8px;
	margin-bottom: 9px;
	position: relative;
	min-height: 123px;
}

div#hooks-right .closed .hooks-sortables {
	min-height: 0;
	margin-bottom: 0;
}

.js .hook .hook-top {
	cursor: move;
}

.js .closed .hooks-sortables,
.js .closed .hook-holder {
	display: none;
}

#hooks-right .points-type-name {
	border-bottom: 1px solid #e1e1e1;
}

.js .hook.points-settings .hook-top {
	cursor: pointer;
}

.wordpoints-points-add-new .hook-control-close {
	display: none;
}

/* Dragging a hook over a points type */
#hooks-right .hooks-holder-wrap.hook-hover {
	border-color: #777;
	-webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.3);
	box-shadow: 0 1px 2px rgba(0,0,0,0.3);
}

#hooks-right .hooks-holder-wrap.new-points-type.hook-hover {
	border: 1px solid #ddd;
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.deleting .hook-title,
.deleting .hook-top a.hook-action:after {
	color: #aaa;
}

#hooks-right .hook-inside hr {
	margin: 20px 10px 10px;
	border-top: 1px #ddd dotted;
}

#hooks-right .in-hook-title {
	color: #888;
}

/*
 * 7. Accessibility Mode.
 */

.wordpoints_hooks_access #hooks-left .hook .hook-top {
	cursor: auto;
}

.wordpoints_hooks_access .hooks-holder-wrap.closed .points-type-description,
.wordpoints_hooks_access .hooks-holder-wrap.closed .hook,
.wordpoints_hooks_access .hooks-holder-wrap.closed .hooks-sortables,
.wordpoints_hooks_access #wpwrap .hook-control-edit,
.wordpoints_hooks_access .points-settings .hook-inside {
	display: block;
}

.wordpoints_hooks_access #hooks-left .hook .hook-top:hover,
.wordpoints_hooks_access #hooks-right .hook .hook-top:hover {
	border-color: #ddd;
}

.wordpoints_hooks_access .points-settings .hook-top {
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important /* Override border change on hover */;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important /* Override border change on hover */;
	cursor: default !important; /* Override cursor: pointer; styles */
}

.wordpoints_hooks_access .new-points-type .hook-control-actions {
	height: 35px;
}

.wordpoints-points-add-new.hooks-sortables {
	padding: 0 16px !important /* Override slimmer padding */;
}

#available-hooks .hook-control-edit .edit,
#hooks-left .inactive-points-type .hook-control-edit .add,
#hooks-right .hook-control-edit .add {
	display: none;
}

.hook-control-edit {
	display: block;
	color: #666;
	background: #eee;
	padding: 0 15px;
	line-height: 43px;
	border-left: 1px solid #ddd;
}

#hooks-right .hook-control-edit:before {
	content: '\f111';
	display: inline-block;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font: normal 16px/1 'dashicons';
	vertical-align: middle;
	position: relative;
	top: -1px;
	padding-right: 4px;
}

#hooks-left .hook-control-edit:hover,
#hooks-right .hook-control-edit:hover {
	color: #fff;
	background: #444;
	border-left: 0;
	outline: 1px solid #444;
}

.hooks-holder-wrap .points-type-name,
.hooks-holder-wrap .points-type-description {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.edithook {
	margin: 0 auto;
}

.edithook .hook-inside {
	display: block;
	padding: 0 15px;
	background: #fff;
}

.edithook .hook-control-actions {
	margin-top: 20px;
}

.hook-control-noform,
#access-off,
.wordpoints_hooks_access .hook-action,
.wordpoints_hooks_access .points-type-name-arrow,
.wordpoints_hooks_access #access-on,
.wordpoints_hooks_access .hook-holder .description,
.wordpoints_hooks_access .in-hook-title,
.wordpoints_hooks_access .points-settings .hook-control-close,
.no-js .hook-holder .description {
	display: none;
}

.wordpoints_hooks_access .hook-holder,
.wordpoints_hooks_access #hook-list {
	padding-top: 10px;
}

.wordpoints_hooks_access #access-off {
	display: inline;
}

.wordpoints_hooks_access .points-type-name,
.wordpoints_hooks_access .hook .hook-top,
.wordpoints_hooks_access .points-settings .hook-top {
	cursor: default;
}

.points-settings .hook-control-actions {
	height: 25px;
}

/*
 * 8. Points type chooser.
 */

.hook-liquid-left #hooks-left.chooser #available-hooks .hook,
.hook-liquid-left #hooks-left.chooser .inactive-points-type {
	-webkit-transition: opacity 0.1s linear;
	transition: opacity 0.1s linear;
}

.hook-liquid-left #hooks-left.chooser #available-hooks .hook,
.hook-liquid-left #hooks-left.chooser .inactive-points-type {
	/* -webkit-filter: blur(1px); */
	opacity: 0.2;
	pointer-events: none;
}

.hook-liquid-left #hooks-left.chooser #available-hooks .hook-in-question {
	/* -webkit-filter: none; */
	opacity: 1;
	pointer-events: auto;
}

.hooks-chooser ul.hooks-chooser-points-types {
	margin: 0;
	list-style-type: none;
	max-height: 300px;
	overflow: auto;
}

.hooks-chooser {
	display: none;
}

.hooks-chooser ul {
	border: 1px solid #ccc;
}

.hooks-chooser li {
	padding: 10px 15px 10px 35px;
	border-bottom: 1px solid #ccc;
	margin: 0;
	cursor: pointer;
	outline: none;
	position: relative;
	-webkit-transition: background 0.2s ease-in-out;
	transition: background 0.2s ease-in-out;
}

.hooks-chooser li:not(.hooks-chooser-selected) {
	background-color: #fff;
}

.hooks-chooser li:not(.hooks-chooser-selected):hover,
.hooks-chooser li:not(.hooks-chooser-selected):focus {
	background: rgba(255,255,255,0.7);
}

.hooks-chooser li:focus:before {
	content: '\f147';
	display: block;
	-webkit-font-smoothing: antialiased;
	font: normal 26px/1 'dashicons';
	color: #999;
	position: absolute;
	top: 7px;
	left: 5px;
}

.hooks-chooser li:last-child {
	border: none;
}

.hooks-chooser li.hooks-chooser-selected {
	color: #fff;
}

.hooks-chooser li.hooks-chooser-selected:before,
.hooks-chooser li.hooks-chooser-selected:focus:before {
	content: '\f147';
	display: block;
	-webkit-font-smoothing: antialiased;
	font: normal 26px/1 'dashicons';
	color: #fff;
	position: absolute;
	top: 7px;
	left: 5px;
}

.hooks-chooser .hooks-chooser-actions {
	padding: 10px 0 12px 0;
	text-align: center;
}

.hooks-chooser button {
	margin-right: 5px;
}

#available-hooks .hook .hook-top {
	cursor: pointer;
}

/*
 * 9. Wide screen display.
 */

@media only screen and (min-width: 1250px) {
	#hooks-left #available-hooks .hook {
		width: 49%;
		float: left;
	}

	#hooks-left #available-hooks .hook:nth-child(even) {
		float: right;
	}

	div#hooks-right .hooks-holder-wrap {
		width: 46%;
		float: left;
		margin-right: 2%;
	}

	div#hooks-right .hooks-holder-wrap:only-child {
		float: none;
		width: 100%;
		margin: 0;
	}
}

/*
 * 10. Delete points dialog.
 */

.wordpoints-delete-type-dialog .ui-dialog-content {
    padding: 0 10px;
}

.wordpoints-delete-type-dialog .button-primary {
    float: right;
}

.wordpoints-delete-type-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    float: none;
    width: 100%;
    padding: 0 5px;
}
