/* main layout */
html {
	height: 100%;
}

* {
	margin: 0;
	padding: 0;
}

img {
	border: 0;
}

body {
	margin: 0;
	padding: 0;
	height: 100%;
	position: relative;
	font-size: 0.75rem;
	line-height: 1.25rem;
	overflow-x: hidden;
}

/* Deep blue gradient base */
body::before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -3;
	background: linear-gradient(180deg, 
		#0a1628 0%,
		#152238 20%,
		#1a2f4a 40%,
		#1e3a5f 60%,
		#152238 80%,
		#0a1628 100%
	);
}

/* Flowing aurora lights */
body::after {
	content: '';
	position: fixed;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	z-index: -2;
	opacity: 0.6;
	background: 
		radial-gradient(ellipse 1200px 400px at 30% 40%, rgba(30, 65, 175, 0.4) 0%, transparent 50%),
		radial-gradient(ellipse 1000px 350px at 70% 30%, rgba(0, 150, 255, 0.35) 0%, transparent 50%),
		radial-gradient(ellipse 800px 300px at 20% 70%, rgba(100, 180, 255, 0.3) 0%, transparent 50%),
		radial-gradient(ellipse 900px 250px at 80% 60%, rgba(30, 65, 175, 0.25) 0%, transparent 50%);
	animation: auroraFlow 30s ease-in-out infinite;
}

/* Particle wave effects */
#wrap::before {
	content: '';
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50%;
	z-index: -1;
	opacity: 0.3;
	background: 
		radial-gradient(circle 3px at 10% 80%, rgba(100, 180, 255, 0.8) 0%, transparent 3px),
		radial-gradient(circle 2px at 15% 75%, rgba(100, 180, 255, 0.6) 0%, transparent 2px),
		radial-gradient(circle 3px at 20% 78%, rgba(100, 180, 255, 0.7) 0%, transparent 3px),
		radial-gradient(circle 2px at 25% 82%, rgba(100, 180, 255, 0.5) 0%, transparent 2px),
		radial-gradient(circle 3px at 30% 77%, rgba(100, 180, 255, 0.8) 0%, transparent 3px),
		radial-gradient(circle 2px at 35% 81%, rgba(100, 180, 255, 0.6) 0%, transparent 2px),
		radial-gradient(circle 3px at 40% 79%, rgba(100, 180, 255, 0.7) 0%, transparent 3px),
		radial-gradient(circle 2px at 45% 76%, rgba(100, 180, 255, 0.5) 0%, transparent 2px),
		radial-gradient(circle 3px at 50% 80%, rgba(100, 180, 255, 0.8) 0%, transparent 3px),
		radial-gradient(circle 2px at 55% 78%, rgba(100, 180, 255, 0.6) 0%, transparent 2px),
		radial-gradient(circle 3px at 60% 82%, rgba(100, 180, 255, 0.7) 0%, transparent 3px),
		radial-gradient(circle 2px at 65% 77%, rgba(100, 180, 255, 0.5) 0%, transparent 2px),
		radial-gradient(circle 3px at 70% 81%, rgba(100, 180, 255, 0.8) 0%, transparent 3px),
		radial-gradient(circle 2px at 75% 79%, rgba(100, 180, 255, 0.6) 0%, transparent 2px),
		radial-gradient(circle 3px at 80% 76%, rgba(100, 180, 255, 0.7) 0%, transparent 3px),
		radial-gradient(circle 2px at 85% 80%, rgba(100, 180, 255, 0.5) 0%, transparent 2px),
		radial-gradient(circle 3px at 90% 78%, rgba(100, 180, 255, 0.8) 0%, transparent 3px);
	background-size: 100% 100%;
	animation: particleWave 8s ease-in-out infinite;
}

@keyframes auroraFlow {
	0%, 100% {
		transform: translate(0, 0) rotate(0deg);
		opacity: 0.6;
	}
	25% {
		transform: translate(-5%, 3%) rotate(1deg);
		opacity: 0.7;
	}
	50% {
		transform: translate(3%, -2%) rotate(-1deg);
		opacity: 0.5;
	}
	75% {
		transform: translate(-2%, 4%) rotate(0.5deg);
		opacity: 0.65;
	}
}

@keyframes particleWave {
	0%, 100% {
		transform: translateY(0) scaleY(1);
	}
	50% {
		transform: translateY(-20px) scaleY(1.1);
	}
}

/* Flowing wavy lines layer 1 */
#wrap::after {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	pointer-events: none;
	background-image: 
		repeating-linear-gradient(
			0deg,
			transparent,
			transparent 100px,
			rgba(30, 65, 175, 0.1) 100px,
			rgba(30, 65, 175, 0.1) 101px
		);
	animation: wave1 20s linear infinite;
	transform-origin: center;
}

/* Flowing wavy lines layer 2 */
html::before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	pointer-events: none;
	background-image: 
		repeating-linear-gradient(
			90deg,
			transparent,
			transparent 150px,
			rgba(0, 150, 255, 0.08) 150px,
			rgba(0, 150, 255, 0.08) 151px
		);
	animation: wave2 25s linear infinite reverse;
}

/* Flowing wavy lines layer 3 - diagonal */
html::after {
	content: '';
	position: fixed;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	z-index: -1;
	pointer-events: none;
	background-image: 
		repeating-linear-gradient(
			45deg,
			transparent,
			transparent 200px,
			rgba(100, 180, 255, 0.06) 200px,
			rgba(100, 180, 255, 0.06) 201px
		);
	animation: wave3 30s linear infinite;
}

@keyframes wave1 {
	0% {
		transform: translateY(0) scaleY(1);
	}
	50% {
		transform: translateY(-30px) scaleY(1.02);
	}
	100% {
		transform: translateY(0) scaleY(1);
	}
}

@keyframes wave2 {
	0% {
		transform: translateX(0) scaleX(1);
	}
	50% {
		transform: translateX(-40px) scaleX(1.02);
	}
	100% {
		transform: translateX(0) scaleX(1);
	}
}

@keyframes wave3 {
	0% {
		transform: translate(0, 0) rotate(0deg);
	}
	100% {
		transform: translate(-50px, -50px) rotate(0.5deg);
	}
}

body,.ui-widget,.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button {
	font-family: Arial, sans-serif;
}

/* font styles */	
h1 {
	margin: 0 0 1.875rem;
	border-bottom: thin solid #f0f0f0;
	padding: 0.625rem 0 0.625rem;
	color: #003d79;
/*	color: #0285ae;*/
	font-weight: normal;
	font-family: Arial, sans-serif;
	font-size: 1.5625rem;
	line-height: 1.25;
}
  
h2 {
	margin: 0 0 0.625rem;
	padding: 0;
	color: #003d79;
/*	color: #08b1cc;*/
	font-family: Arial, Helvetica, sans-serif;
	font-weight: normal;
	font-size: 1.125rem;
	line-height: 1.25;
}

h3 {
	padding: 0;
	color: #003d79;
	font-weight: normal;
	font-size: 1rem;
	line-height: 1.8125;
}

  h4 { font-size:14px; line-height:25px;  margin:0; padding:0;  color:#08b1cc; font-weight:normal;  }
  h5 { font-size:18px; line-height:40px;  margin:0; padding:0;  color:#08b1cc; font-weight:normal;  }
  h6 { font-size:18px; line-height:40px;  margin:0; padding:0;  color:#08b1cc; font-weight:normal;  }
  p  { font-size:13px; color:#777; line-height:22px; margin:0px; padding:0px; padding-top:5px; padding-bottom:10px;}
  ul { padding:0px; margin:0px;  }
  ol { padding-left:25px; margin-left:25px;list-style:lower-roman; }
  li { font-size:12px; color:#777; margin-left:10;  }
	
/* link styles */	
/*a:link		{ color:#0285ae;	text-decoration: none; }*/
a:link		{ color: #003d79;	text-decoration: none; }
a:visited 	{ color: #003d79;	text-decoration: none; }
a:hover 		{ color: #003d79;	text-decoration: underline; }
a:active	{ color: #003d79;	text-decoration: underline; }
  a:focus 		{outline-style: none;}

#wrap {
	margin: 0 auto;
	max-width: 1080px;
}

#header {
	display: block;
	position: relative;
	height: 4.75rem;
	background: linear-gradient(to right, #ffffff, #3004ea);
}

#header:hover {
	text-decoration: none;
}

#header img {
	height: 9rem;
	position: absolute;
	top: 60%;
	transform: translate(0,-50%);
}

#header :first-child {
	left: 0rem;
	height: 9rem;
}

#header a:nth-child(2) img {
	margin: 0 auto;
	height: 7rem;
}

#header :last-child {
	right: 1rem;
	height: 9rem;
}

#header aside.dev {
	padding-top: 1.875rem;
	color: #f00;
	font-weight: bold;
	font-size: 2rem;
	line-height: 1;
	text-align: center;
}

/* main nav styles  */ 
#nav {
	position: relative;
	box-sizing: border-box;
	border-top: medium solid #1E41AF;
	padding: 0 1rem;
	width: 100%;
	background: linear-gradient(180deg, #f6a03e 0%, #f6921e 50%, #e67e0a 100%);
	box-shadow: 
		0 2px 4px rgba(0, 0, 0, 0.15),
		inset 0 1px 0 rgba(255, 255, 255, 0.2),
		inset 0 -1px 0 rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

#nav #menu {
	margin: 0;
	padding: 0;
	height: 3rem;
}

#nav #menu li {
	display: inline-block;
	margin: 0;
	padding: 0;
}

#nav #menu li a,a.control {
	display: block;
	margin: 0.875rem 0.375rem;
	border-radius: 0.26rem;
	padding: 0 0.53rem;
	height: 1.25rem;
	background: linear-gradient(180deg, #e0e0e0 0%, #cacaca 50%, #b0b0b0 100%);
	color: #003d79;
	line-height: 1.25rem;
	box-shadow: 
		0 1px 3px rgba(0, 0, 0, 0.15),
		inset 0 1px 0 rgba(255, 255, 255, 0.4),
		inset 0 -1px 0 rgba(0, 0, 0, 0.1);
	border: 1px solid rgba(0, 0, 0, 0.15);
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
	transition: all 0.15s ease;
}

#nav #menu li a:hover,.control:hover {
	background: linear-gradient(180deg, #0d5aa7 0%, #003d79 50%, #002a54 100%);
	color: #fff;
	text-decoration: none;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
	box-shadow: 
		0 1px 3px rgba(0, 0, 0, 0.25),
		inset 0 1px 0 rgba(255, 255, 255, 0.1),
		inset 0 -1px 0 rgba(0, 0, 0, 0.2);
}

#nav #menu li.orders a span {
	color: #f00;
	font-weight: bold;
}

#nav #menu li.floater {
	margin: 0.875rem 0;
	padding: 0 0.375rem;
	height: 1.25rem;
	float: right;
	color: #fff;
	line-height: 1.25rem;
}

#nav figure {
	position: absolute;
	top: 3.5rem;
	right: 1rem;
	max-width: 200px;
	max-height: 2.5rem;
}

#nav figure img {
	max-height: 2.5rem;
	max-width: 100%;
	height: auto;
	width: auto;
	object-fit: contain;
}

a.control {
	display: inline-block;
	margin: 0 0.125rem 0.125rem;
}

table a.control:link {
	text-decoration: none;
}

#nav #menu li a.plain {
	padding: 0 0.75rem;
	background: linear-gradient(180deg, #2a2a2a 0%, #1a1a1a 50%, #0a0a0a 100%);
	color: #ffffff;
	font-size: 0.625rem;
	text-decoration: none;
	box-shadow: 
		0 1px 3px rgba(0, 0, 0, 0.3),
		inset 0 1px 0 rgba(255, 255, 255, 0.15),
		inset 0 -1px 0 rgba(0, 0, 0, 0.3);
	border: 1px solid rgba(0, 0, 0, 0.3);
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
	transition: all 0.15s ease;
}

#nav #menu li a.plain:hover {
	background: linear-gradient(180deg, #404040 0%, #303030 50%, #202020 100%);
	color: #ffffff;
	text-decoration: none;
	box-shadow: 
		0 1px 4px rgba(0, 0, 0, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.2),
		inset 0 -1px 0 rgba(0, 0, 0, 0.3);
}

/* Admin button - distinct black/white style */
#nav #menu li.admin-btn a {
	padding: 0 0.75rem;
	background: linear-gradient(180deg, #1a1a1a 0%, #000000 50%, #1a1a1a 100%);
	color: #ffffff;
	font-weight: 600;
	letter-spacing: 0.5px;
	border: 1px solid #333;
	border-radius: 0.25rem;
	box-shadow: 
		0 2px 4px rgba(0, 0, 0, 0.3),
		inset 0 1px 0 rgba(255, 255, 255, 0.1);
	transition: all 0.2s ease;
}

#nav #menu li.admin-btn a:hover {
	background: linear-gradient(180deg, #333333 0%, #1a1a1a 50%, #333333 100%);
	color: #ffffff;
	border-color: #555;
	box-shadow: 
		0 3px 8px rgba(0, 0, 0, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.15);
	transform: translateY(-1px);
}

a.main {
	padding: 0.25rem 0.5rem;
	font-weight: bold;
	font-size: 1rem;
}
 
main {
	box-sizing: border-box;
	padding: 1rem;
	width: 100%;
	background: #fff;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
	border-radius: 0.25rem;
}

#main-content {
	margin-top: 1rem;
}

#learnmore {
	text-align: center;
}

#footer {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: relative;
	border-radius: 0 0 0.25rem 0.25rem;
	padding: 0.5rem 0;
	width: 100%;
	height: 2.25rem;
	background: rgba(0, 0, 0, 0.85);
	backdrop-filter: blur(10px);
}

#footer p {
	padding: 0;
	width: 100%;
	color: #fff;
	font-size: 0.625rem;
	text-align: center;
}

#footer p:first-of-type {
	font-size: 0.75rem;
}

#footer a {
	color: #fff;
	text-decoration: underline;
}

#footer div:first-of-type {
	position: absolute;
	top: 1rem;
	left: 2rem;
}

#footer div:first-of-type img {
	height: 1.5rem;
}

#footer div:last-of-type {
	position: absolute;
	top: 1rem;
	right: 2rem;
}

#footer div:last-of-type span {
	display: block;
	box-sizing: border-box;
	top: 0;
	width: 100%;
	color: #fff;
	text-align: center;
}

#footer div:last-of-type img {
	height: 1.5rem;
}

table,table th,table td {
	border: thin solid #e3f1fe;
	border-collapse: collapse;
}

table {
	margin: 0.625rem 0;
}

.data {
	width: 100%;
}

th {
	padding: 0.625rem 0.25rem;
}

tr:nth-child(2n),table.dataTable tbody tr:nth-child(2n) {
	background: #f4f9fe;
}

td {
	padding: .3em .5em;
	vertical-align: top;
	color: #678197;
}

table.dataTable tbody tr:hover,tbody tr:hover {
	background: #fafafa;
}

#f tbody tr:hover {
	background: transparent;
}

table a:link {
	text-decoration: underline;
}

table.dataTable {
	border-collapse: collapse;
}

table.dataTable,table.dataTable thead td {
	border: thin solid #e3f1fe;
}

table.dataTable thead th {
	border: none;
	border-bottom: none;
}

table.dataTable thead th {
	padding: 0.25rem 1rem;
}

table.dataTable tbody td {
	padding: 0.25rem;
}

table.dataTable thead {
	background: linear-gradient(180deg, #2E51BF 0%, #1E41AF 50%, #0E319F 100%);
	color: #f0f0f0;
	box-shadow: 
		0 2px 4px rgba(0, 0, 0, 0.2),
		inset 0 1px 0 rgba(255, 255, 255, 0.15),
		inset 0 -1px 0 rgba(0, 0, 0, 0.15);
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	border-bottom: 2px solid rgba(0, 0, 0, 0.2);
}

a.attention:link,a.attention:visited {
	color: #f00;
	font-weight: bold;
}

#properties_wrapper #realtor {
	margin-right: 1em;
}

#properties_wrapper #lookup {
	margin-right: 0.5em;
}

.data button {
	padding: 0 0.125rem;
	min-width: 1.25rem;
	font-size: 0.75rem;
	text-align: center;
}

.data button.locked {
	background: #000;
	font-size: 1rem;
}

#publication {
	width: 20rem;
}

[readonly] {
	border: thin solid #bcbcbc;
	background: #e5e5e5;
}

#date[readonly] {
	pointer-events: none;
}

#content section,
#step-2 section {
	position: relative;
	margin: 0.5em 0;
	border: thin solid #ddd;
	background: #f7f7f7;
}

.office #content section[data-active="no"],
.personnel #content section[data-active="no"],
.property #step-2 section[data-active="no"] {
	display: none;
}

.office #content section[data-active="no"].reveal,
.personnel #content section[data-active="no"].reveal,
.property #step-2 section[data-active="no"].reveal {
	display: block;
}

#content section > summary,
#step-2 section > summary {
	display: block;
	padding: 0.5em;
	background: #eee;
	cursor: pointer;
}

#content section summary > .overview > div,
#content section .details .primary > div,
#step-2 section summary > .overview > div,
#step-2 section .details .primary > div
 {
	display: inline-block;
	box-sizing: border-box;
	padding-right: 1em;
	width: 23.5%;
	vertical-align: top;
}

.office #content section summary > .overview > div,
.office #content section .details .primary > div,
.personnel #content section summary > .overview > div,
.personnel #content section .details .primary > div,
.property #step-2 section summary > .overview > div,
.property #step-2 section .details .primary > div {
	padding-right: 2%;
	width: 60%;
}

#content section summary > .overview > div:first-child,
#content section .details .primary > div:first-child,
#step-2 section summary > .overview > div:first-child,
#step-2 section .details .primary > div:first-child {
	margin-right: 2%;
	width: 4%;
}

.office #content section summary > .overview > div:first-child,
.office #content section .details .primary > div:first-child,
.personnel #content section summary > .overview > div:first-child,
.personnel #content section .details .primary > div:first-child,
.property #step-2 section summary > .overview > div:first-child,
.property #step-2 section .details .primary > div:first-child {
	width: 20%;
}

.office #content section summary > .overview > div:last-of-type,
.office #content section .details .primary > div:last-child,
.personnel #content section summary > .overview > div:last-of-type,
.personnel #content section .details .primary > div:last-child,
.property #step-2 section summary > .overview > div:last-of-type,
.property #step-2 section .details .primary > div:last-child {
	width: 18%;
}

#content section summary .tags,
#step-2 section summary .tags {
	margin-top: 0.5em;
	font-size: 0.625rem;
	line-height: 1.6;
}

#content section summary .tags:empty,
#step-2 section summary .tags:empty {
	margin-top: 0;
}

#content section summary .tags label,
#step-2 section summary .tags label {
	display: inline-block;
	margin-left: 6%;
	width: 6%;
}

#content section summary div > span,
#step-2 section summary div > span {
	position: absolute;
	top: 0.5em;
	right: 1em;
	transform: rotate(0deg);
	transition: transform 0.5s;
}

#content section summary div > span.open,
#step-2 section summary div > span.open {
	transform: rotate(180deg);
}

#content section .details,
#step-2 section .details {
	display: none;
	border-top: thin solid #e6e6e6;
	padding: 0.5em;
}

#content section.fill .details,
#step-2 section.fill .details {
	border: none;
}

#content section.fill .details,
#step-2 section.fill .details {
	display: block;
}

#content section .details .primary select.inactive,
#step-2 section .details .primary select.inactive,
#content section .details .primary .price-range.inactive,
#step-2 section .details .primary .price-range.inactive,
#content section .details .primary .sort-order.inactive,
#step-2 section .details .primary .sort-order.inactive {
	display: none;
}

#content section .details .primary,#content section .details .auxiliary,
#step-2 section .details .primary,#step-2 section .details .auxiliary {
	margin-bottom: 1em;
}

#content section .details .primary .parameter > .select2 {
	max-width: 100%;
}

.office #content section .details .primary label,
.personnel #content section .details .primary label,
.property #step-2 section .details .primary label {
	padding-right: 0.5rem;
}

#content section .details .auxiliary label,
#step-2 section .details .auxiliary label {
	width: 10%;
}

#content section .details .auxiliary .effect,
#step-2 section .details .auxiliary .effect {
	margin-bottom: 0.25em;
}

#content section .details .auxiliary .effect label,
#step-2 section .details .auxiliary .effect label {
	width: 15%;
}

#content section .details .auxiliary .effect input[type="checkbox"],
#step-2 section .details .auxiliary .effect input[type="checkbox"] {
	margin-left: 1em;
	vertical-align: -0.125em;
}

#content section .details input,
#step-2 section .details input {
	max-width: 100%;
}

#content section .details input[type="submit"],#content button,
#step-2 section .details input[type="submit"],#step-2 button {
	padding: 0.125rem 0.5rem;
	font-size: 0.75rem;
}

#content section .details form input + input,
#step-2 section .details form input + input {
	float: right;
}

.office #content section .details form input + input,
.personnel #content section .details form input + input,
.property #step-2 section .details form input + input {
	float: none;
}

.select2 {
	min-width: 18em;
}

input#refresh {
	margin-top: 1em;
}

#flags td,#flags input[type="checkbox"] {
	vertical-align: middle;
}

.hidden {
	display: none;
}

#flags .add {
	margin-bottom: 1rem;
}

.sections th {
	padding: 0.375rem 0.25rem;
}

.sections th:nth-child(2),.sections td:nth-child(2) {
	width: 4rem;
}

.grid > div {
	display: inline-block;
	box-sizing: border-box;
	padding: 0.25rem;
	border-top: thin solid #000;
	text-align: center;
	box-shadow: 0.0625rem 0 0 0 #000,
		0 0.0625rem 0 0 #000,
		0.0625rem 0.0625rem 0 0 #000,
		0.0625rem 0 0 0 #000 inset;
}

.grid.four > div {
	width: 25%;
}

.grid.five > div {
	width: 20%;
}

.products.grid div,.templates.grid div {
	background: #fff;
}

.products.grid > a,.templates.grid > a {
	display: block;
}

.products.grid img,.templates.grid img {
	display: block;
	width: 100%;
}

.thumbnail img {
	max-width: 12rem;
	max-height: 9rem;
	object-fit: contain;
}

#attributes label {
	width: 12rem;
}

.crm,#agent,#step-1 #office,#process #price,#inspection,#heading,#process #description {
	border: thin #6b8 solid;
}

.key {
	margin-top: 1em;
	font-size: 0.75em;
}

.key div {
	display: inline-block;
	box-sizing: border-box;
	border: thin #6d8 solid;
	width: 0.5rem;
	height: 0.5rem;
}

#attributes select {
	width: 15rem;
}

#main-content td.property-search-action a { color: #999; background: #f4f9fe; }

.middle {
	display: block;
	margin: 2rem auto;
	width: 20rem;
}

#please {
	margin: 0 auto;
	border: 0;
	width: 300px;
	font-family: Arial, sans-serif;
	font-weight: bold;
	text-align: center;
	letter-spacing: -1px;
}

p#logmessage {
	margin-top: 0.3125rem;
	font-family: Arial, sans-serif;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 0.0625rem;
}

#logform {
	border: none;
	padding: 0.625rem;
}

#logform tr:nth-child(2n) {
	background: inherit;
}

table#logform td {
	border: none;
	padding: 0.625rem;
}

form #logform tr:last-child td:first-of-type {
	text-align: center;
}

#logform tr:last-child input {
	vertical-align: sub;
}

#logform input[type="text"] {
	width: 12.5rem;
}

#logform tr:last-child label {
	margin-left: 0rem;
	font-weight: normal;
}

#f + p {
	text-align: center;
}

#footer div.splash span,#footer .splash img {
	width: 7.75rem;
}

.labels { text-align: right; font-weight: bold; font-size: 14px; color: #666; }
.inputs input { padding: 7px 10px; width: 200px; }
p input { padding: 5px 20px; margin: 10px 0; }

.centre {
	text-align: center;
}

.right {
	text-align: right;
}

input[type="text"] {
	width: 18em;
}

#properties,#magazines,#fillers,.full {
	width: 100%;
}

#properties td {
	vertical-align: middle;
}

#properties td:first-child {
	width: 2.5rem;
}

#magazines button {
	padding: 0 0.125rem;
	font-size: 0.75rem;
	line-height: 1.2;
}

#supplementary {
	line-height: 1.8;
}

#supplementary > div > :first-child {
	display: inline-block;
	width: 8em;
}

#supplementary div + div {
	margin-top: 0.5em;
}

#supplementary div > * + * {
	margin-left: 0.5em;
}

#supplementary input {
	height: 1.8em;
	width: 8em;
}

#supplementary button {
	padding: 0 0.5em;
}

#orderDetails span {
	color: red;
}

.darken {
	display: table;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
}

.window {
	display: table-cell;
	vertical-align: middle;
}

.message {
	margin: 0 auto;
	padding: 1rem;
	border: thin solid #000;
	width: 30rem;
	background: #fff;
}

.message > label,.link .choice > label {
	display: inline-block;
	margin-right: 1rem;
	width: 3rem;
	vertical-align: top;
}

.message input[type="email"],.message input[type="text"] {
	display: inline-block;
	margin: 0 10rem 1rem 0;
	width: 15rem;
	vertical-align: top;
}

.message a {
	display: inline-block;
	margin-bottom: 1rem;
	vertical-align: top;
}

.link .choice > label,.link .choice > div {
	display: inline-block;
	margin-bottom: 1rem;
	vertical-align: top;
}

.link .choice > div + div {
	margin-left: 0rem;
}

.link input[type="radio"] {
	vertical-align: text-top;
}

.message textarea {
	box-sizing: border-box;
	margin-bottom: 1rem;
	padding: 0.475em;
	width: 100%;
	height: 8.375rem;
	font-family: Arial;
}

.message .ebook {
	display: none;
}

.message input[type="button"] {
	padding: 0 0.5em;
}

.message input.send {
	float: right;
}

.notice {
	color: #f00;
	font-family: Arial, Helvetica, sans-serif;
	font-size: small;
}

form > table:not(#pricing) td:first-of-type {
	color: #000;
	font-weight: bold;
	text-align: right;
}

#pricing input {
	width: 5em;
	text-align: right;
}

form td input {
	color: #000;
}

textarea {
	width: 20em;
	height: 6em;
	font-family: Arial, sans-serif;
}

.ui-tabs .ui-tabs-panel {
	padding: 1rem 0.625rem;
}

.entry form {
	color: #000;
}

.entry form > div {
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	margin: 0.25%;
	padding: 0.375rem 0.5rem;
	width: 32.75%;
	min-height: 2rem;
	vertical-align: middle;
	background: #f6f6f6;
}

label {
	display: inline-block;
	font-weight: bold;
}

.entry label {
	padding-right: 0.5rem;
	width: 7rem;
	line-height: 1;
}

.entry label.annotation {
	display: inline;
	width: auto;
	text-align: left;
}

.entry input {
	padding: 0.0625rem;
}

.entry input[type="text"] {
	width: 8.875rem;
}

.entry input[type="number"] {
	width: 8.875rem;
}

.entry input[type="radio"] {
	vertical-align: text-top;
}

.entry p {
	padding: 0;
}

.entry p input {
	margin-bottom: 0;
}

.entry select {
	max-width: 8.875rem;
}

.adjust {
	vertical-align: 0.6em;
}

#priceprepared {
	width: 9rem;
	height: 2.4em;
}

form input + span {
	display: inline-block;
	margin-left: 2rem;
}

form input[type="submit"],input#copy[type="submit"] {
	padding: 0.3125rem 1.25rem;
	font-size: 1.125rem;
}

.ui-widget form,.copy  {
	font-size: 0.75rem;
}

#step-2 .display,#step-2 .articles,#content .display,#content .articles {
	display: inline-block;
	margin-bottom: 0.5rem;
	color: #003d79;
	cursor: pointer;
}

.gallery {
	margin-bottom: 0.5rem;
}

.gallery > div {
	display: inline-block;
	margin: 0.5rem 0.5%;
	width: 19%;
	vertical-align: top;
}

.gallery figure {
	margin: 0 auto 0.5rem;
	width: 10rem;
	height: 4.75rem;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.gallery figure + div label {
	display: inline-block;
}

.gallery label {
	width: 4rem;
}

.gallery .field {
	margin-bottom: 0.5rem;
}

.gallery .field > div {
	display: inline-block;
	font-size: 0.625rem;
	line-height: 1;
	word-break: break-all;
}

.gallery input {
	width: 2em;
	text-align: right;
}

.graphic.agent input,.graphic.agent select {
	width: 8em;
	text-align: left;
}

.gallery + label,.copy label,#step-4 label {
	margin-right: 0.5rem;
}

.gallery + label {
	width: 8em;
}

.gallery + label span {
	display: block;
	font-weight: normal;
	font-size: 0.5rem;
	line-height: 1.2;
}

.gallery + label + input {
	vertical-align: top;
}

.graphic button {
	display: block;
	margin: 0.5rem auto 0;
	padding: 0.125rem 0.5rem;
}

.graphic[data-active="no"] {
	display: none;
}

.graphic.reveal[data-active="no"] {
	display: inline-block;
}

#images,#copy  {
	margin-top: 1rem;
}

.copy h3 {
	margin: 1rem 0 0.5rem;
}

.description + div {
	margin-left: 7.5rem;
}

.description + div div {
	display: inline-block;
	margin-right: 2rem;
}

.description + div button {
	padding: 0.125rem;
}

#order {
	margin-top: 0.5rem;
}

#process form + h3 {
	margin-top: 2rem;
}

.copy label,#step-4 label {
	display: inline-block;
	width: 7rem;
	vertical-align: top;
	font-weight: bold;
	text-align: right;
}

.copy label span {
	display: block;
	font-weight: normal;
	font-size: 0.5rem;
	line-height: 1.2;
}

/* Responsive Copy tab - updated 2026-01-07 */
#copy-tab,
#copy-tab .copy {
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}

#copy-tab .copy > div {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

.copy .heading {
	width: calc(90% - 8rem);
	max-width: 25em;
	box-sizing: border-box;
}

.copy .description {
	width: 37rem;
	height: 18.25em;
}

.copy .description.alt {
	height: 8.5em;
}

.featurecopy {
	width: calc(90% - 8rem);
	max-width: 60em;
	box-sizing: border-box;
	height: 7.2em;
}

.copy .point {
	width: 100%;
	max-width: 20em;
	box-sizing: border-box;
	height: 2.4em;
	overflow: auto;
}

#step-2 .editor,#content .editor {
	display: inline-block;
	border: thin solid #707070;
	border-radius: 0;
	width: 100%;
	max-width: 60em;
	box-sizing: border-box;
	height: 7.2em;
	color: #000;
	line-height: 1.2;
}

#step-2 .editor:focus {
	height: auto;
	min-height: 7.2em;
}

#step-2 .ck-focused {
	height: auto;
}

#step-2 .editor,#content .editor {
	box-sizing: border-box;
	width: 100%;
	height: auto;
	min-height: 4.8em;
	background: #fff;
}

#step-2 .editor p,#content .editor p {
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

#step-2 .editor ul,#content .editor ul {
	padding-left: 1em;
}

#step-2 .editor table td {
	color: initial;
	font-weight: initial;
	text-align: initial;
}

#step-2 .editor table td:first-child {
	text-align: left;
}

#step-2 .editor table img {
	width: 60.375mm;
	height: 47.125mm;
	object-fit: cover;
}

#step-2 form .editor table:not(#pricing) td:first-of-type,
#content form .editor table:not(#pricing) td:first-of-type {
	font-weight: initial;
	text-align: initial;
}

#step-2 .attachment {
	margin-right: 1em;
}

#step-2 .pages {
	margin-left: 1em;
	width: 2em;
}

.toggle.new {
	display: none;
}

.item label {
	width: 9rem;
	vertical-align: top;
}

.item input[type="text"],.item input[type="number"],.item textarea {
	width: 20em;
}

.item textarea {
	height: 3.4em;
}

.item #quantity + span {
	margin-left: 1em;
	font-size: 0.5rem;
}

#orders_wrapper {
	margin-top: 0.5rem;
}

#orders button {
	padding: 0 0.5rem;
	line-height: 1rem;
}

#process #orders button + button,#magazines button + button {
	margin-left: 1em;
}

.status span {
	display: inline-block;
}

.status > *,#orders td:last-child button {
	margin: 0 0.25em;
}

#orders .email {
	font-size: 1.25rem;
	vertical-align: bottom;
}

#product {
	display: block;
	margin-top: 1rem;
	border: thin solid #000;
	max-width: 50%;
	max-height: 50%;
}

#item #name {
	width: 25em;
}

#item #notes {
	width: 25em;
	height: 3.5em;
}

.list {
	display: table;
	border-collapse: collapse;
}

.list div {
	display: table-row;
}

.list div:hover {
	background: #fafafa;
}

.list :nth-child(2n) {
	background: #f4f9fe;
}

.list div div {
	display: table-cell;
	border: thin solid #e3f1fe;
	padding: 0 0.25rem;
}
/* ==========================================================================
   TABBED NAVIGATION - Primary/Secondary Tab Pattern
   Reusable across all pages with jQuery UI tabs
   Browser support: All modern browsers + IE11
   ========================================================================== */

/* Flexbox container for tab navigation */
.ui-tabs .ui-tabs-nav {
    display: -webkit-box;      /* iOS 6-, Safari 3.1-6 */
    display: -webkit-flex;     /* Safari 6.1+ */
    display: -ms-flexbox;      /* IE 10 */
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

/* Secondary tabs - pushed to the right */
.ui-tabs .ui-tabs-nav li.tab-secondary:first-of-type,
.ui-tabs .ui-tabs-nav li.tab-secondary.tab-first {
    margin-left: auto;
}

/* Secondary tab styling - slightly different visual treatment */
.ui-tabs .ui-tabs-nav li.tab-secondary {
    opacity: 0.85;
}

.ui-tabs .ui-tabs-nav li.tab-secondary a {
    font-size: 0.9em;
    padding: 0.4em 0.8em;
}

.ui-tabs .ui-tabs-nav li.tab-secondary:hover {
    opacity: 1;
}

/* Spacer element (alternative approach) */
.ui-tabs .ui-tabs-nav li.tab-spacer {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    visibility: hidden;
    pointer-events: none;
    background: transparent !important;
    border: none !important;
}

/* Tab group divider (optional visual separator) */
.ui-tabs .ui-tabs-nav li.tab-divider {
    margin-left: auto;
    padding-left: 1em;
    border-left: 1px solid rgba(0,0,0,0.1);
}

/* Icon support for tabs */
.ui-tabs .ui-tabs-nav li a .tab-icon {
    margin-right: 0.4em;
    font-size: 0.9em;
}

/* Override jQuery UI clearfix with higher specificity */
.ui-tabs .ui-tabs-nav.ui-helper-clearfix {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

/* Direct selector for first secondary tab to push right */
.ui-tabs-nav li.tab-secondary {
    margin-left: auto !important;
}
.ui-tabs-nav li.tab-secondary ~ li.tab-secondary {
    margin-left: 0 !important;
}

/* Disabled tab styling */
.tab-disabled {
	opacity: 0.5;
	pointer-events: none;
	cursor: not-allowed;
}
.tab-disabled a {
	color: #999 !important;
	cursor: not-allowed;
}

