/*
Theme Name: Aussie Bird Count
Theme URI: https://aussiebirdcount.org.au/
Author: Planticle
Author URI: https://planticle.com.au/
Description: Custom theme for Aussie Bird Count, based on Frost by WP Engine (https://frostwp.com/)
Tags: block-patterns, block-styles, custom-colors, custom-logo, custom-menu, editor-style, full-site-editing, one-column, template-editing, threaded-comments, translation-ready, wide-blocks
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.0.10
License: GNU General Public License v3
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: aussiebirdcount
*/


/* Defaults
---------------------------------------- */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

a,
button,
input:focus,
input[type="button"],
input[type="submit"],
textarea:focus,
.wp-element-button {
	transition: all 0.2s ease-in-out;
}

a,
a:focus,
a:hover,
a:not(.wp-element-button) {
	text-decoration-thickness: 1px;
}

b,
strong,
th {
	font-weight: var(--wp--custom--font-weight--medium);
}

mark {
	background: linear-gradient(90deg, var(--wp--preset--color--primary) 0%, var(--wp--preset--color--primary) 100%);
	background-position: 0 85%;
	background-repeat: repeat-x;
	background-size: 100% 15%;
}

/* -- Forms -- */

input,
select,
textarea {
	background-color: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--black);
	border-radius: 0;
	color: var(--wp--preset--color--black);
	font-family: var(--wp--preset--font-family--primary);
	font-size: var(--wp--preset--font-size--medium);
	font-weight: var(--wp--custom--font-weight--light);
	line-height: var(--wp--custom--line-height--body);
	padding: 10px 20px;
	width: 100%;
}

input:focus,
textarea:focus {
	background-color: var(--wp--preset--color--neutral);
	outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

input[type="button"],
input[type="email"],
input[type="search"],
input[type="submit"],
input[type="text"],
textarea {
	-webkit-appearance: none;
}

::placeholder {
	color: var(--wp--preset--color--black);
	font-size: var(--wp--preset--font-size--small);
	opacity: 0.5;
}

/* Blocks
---------------------------------------- */

/* -- Code -- */

*:not(.wp-block-code) > code {
	background-color: var(--wp--preset--color--neutral);
	font-size: var(--wp--preset--font-size--small);
	padding: 5px 8px;
}

/* -- Navigation -- */

.wp-block-navigation__responsive-container.is-menu-open {
	padding: var(--wp--custom--spacing--gap);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: var(--wp--custom--spacing--gap);
}

.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-container-open {
	border: 1px solid currentColor;
	padding: 2px;
}

.has-background .wp-block-navigation__responsive-container-open:focus,
.has-background .wp-block-navigation__responsive-container-open:hover {
	color: var(--wp--preset--color--white);
}

/* -- Navigation Submenu -- */

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
	background-color: var(--wp--preset--color--black);
	border: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	padding: 10px;
}

.wp-block-navigation :where(.wp-block-navigation__submenu-container) a {
	padding: 2px 10px;
}

/* Utility
---------------------------------------- */

/* -- Box Shadow -- */

.is-style-shadow-light {
	box-shadow: var(--wp--preset--shadow--light);
}

.is-style-shadow-solid {
	box-shadow: var(--wp--preset--shadow--solid);
}

/* Media Queries
---------------------------------------- */

@media only screen and (max-width: 600px) {

	/* -- Utility -- */

	.is-style-hidden-mobile {
		display: none !important;
	}

}

@media only screen and (max-width: 782px) {

	/* -- Columns -- */

	.is-style-columns-reverse {
		flex-direction: column-reverse;
	}

}

/* -- Section Gradient -- */

.is-style-section-gradient {
	background: linear-gradient(to top, rgba(0,0,0,0.02), rgba(0,0,0,0)) bottom / 100% 20px no-repeat;
}

/* -- Helper to force a flex child to have a fixed dimension -- */

.flex-fixed {
	flex-grow: 0;
	flex-shrink: 0;
}

/* -- Make header sticky -- */

header.site-header {
	position: sticky;
	top: calc(0px + var(--wp-admin--admin-bar--height, 0px));
	z-index: 1000;
}

/* -- Add shadow to sticky header when scrolling (limited browser support) -- */

@keyframes header-shadow {
	from {
		box-shadow: none;
	}
	to {
		box-shadow: 0 0 20px rgba(0,0,0,0.1);
	}
}

header.site-header {
	animation: header-shadow step-start;
	animation-timeline: scroll();
	animation-range: 10px;
}

/* Helpers for rotating elements */

.rotate-10deg { transform: rotate(10deg); }
.rotate-20deg { transform: rotate(20deg); }
.rotate-30deg { transform: rotate(30deg); }
.rotate-40deg { transform: rotate(40deg); }
.rotate-50deg { transform: rotate(50deg); }
.rotate-60deg { transform: rotate(60deg); }
.rotate-70deg { transform: rotate(70deg); }
.rotate-80deg { transform: rotate(80deg); }
.rotate-90deg { transform: rotate(90deg); }
.rotate-100deg { transform: rotate(100deg); }
.rotate-110deg { transform: rotate(110deg); }
.rotate-120deg { transform: rotate(120deg); }
.rotate-130deg { transform: rotate(130deg); }
.rotate-140deg { transform: rotate(140deg); }
.rotate-150deg { transform: rotate(150deg); }
.rotate-160deg { transform: rotate(160deg); }
.rotate-170deg { transform: rotate(170deg); }
.rotate-180deg { transform: rotate(180deg); }
.rotate-190deg { transform: rotate(190deg); }
.rotate-200deg { transform: rotate(200deg); }
.rotate-210deg { transform: rotate(210deg); }
.rotate-220deg { transform: rotate(220deg); }
.rotate-230deg { transform: rotate(230deg); }
.rotate-240deg { transform: rotate(240deg); }
.rotate-250deg { transform: rotate(250deg); }
.rotate-260deg { transform: rotate(260deg); }
.rotate-270deg { transform: rotate(270deg); }
.rotate-280deg { transform: rotate(280deg); }
.rotate-290deg { transform: rotate(290deg); }
.rotate-300deg { transform: rotate(300deg); }
.rotate-310deg { transform: rotate(310deg); }
.rotate-320deg { transform: rotate(320deg); }
.rotate-330deg { transform: rotate(330deg); }
.rotate-340deg { transform: rotate(340deg); }
.rotate-350deg { transform: rotate(350deg); }
