/* =============================================================
   POOL SUPPORT — site.css
   Bootstrap 5 + custom design system
   ============================================================= */

/* -------------------------------------------------------------
   1. DESIGN TOKENS
   ------------------------------------------------------------- */
:root {
	/* Brand Colors */
	--ps-blue-deep: #0a3d6b;
	/* deep water / primary */
	--ps-blue-mid: #1565c0;
	/* medium blue */
	--ps-blue-bright: #2196f3;
	/* bright pool blue */
	--ps-blue-light: #e3f2fd;
	/* pale blue tint */
	--ps-aqua: #00bcd4;
	/* aqua accent */
	--ps-aqua-light: #e0f7fa;
	/* pale aqua tint */
	--ps-white: #ffffff;
	--ps-gray-50: #f8fafc;
	--ps-gray-100: #f1f5f9;
	--ps-gray-200: #e2e8f0;
	--ps-gray-400: #94a3b8;
	--ps-gray-600: #475569;
	--ps-gray-800: #1e293b;
	--ps-text: #1e293b;
	--ps-text-muted: #64748b;

	/* Callout Colors */
	--ps-callout-note-bg: #eff6ff;
	--ps-callout-note-border: #3b82f6;
	--ps-callout-note-icon: #2563eb;
	--ps-callout-tip-bg: #f0fdf4;
	--ps-callout-tip-border: #22c55e;
	--ps-callout-tip-icon: #16a34a;
	--ps-callout-warning-bg: #fffbeb;
	--ps-callout-warning-border: #f59e0b;
	--ps-callout-warning-icon: #d97706;
	--ps-callout-danger-bg: #fff1f2;
	--ps-callout-danger-border: #ef4444;
	--ps-callout-danger-icon: #dc2626;

	/* Typography */
	--ps-font-heading: 'Outfit', sans-serif;
	--ps-font-body: 'Inter', sans-serif;

	/* Layout */
	--ps-header-height: 64px;
	--ps-sidebar-width: 280px;
	--ps-radius: 8px;
	--ps-radius-lg: 12px;

	/* Shadows */
	--ps-shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .06);
	--ps-shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);
	--ps-shadow-lg: 0 10px 15px rgba(0, 0, 0, .08), 0 4px 6px rgba(0, 0, 0, .05);
}

/* -------------------------------------------------------------
   2. BASE / RESET
   ------------------------------------------------------------- */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--ps-font-body);
	font-size: 1rem;
	line-height: 1.7;
	color: var(--ps-text);
	background: var(--ps-white);
	-webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--ps-font-heading);
	font-weight: 600;
	line-height: 1.3;
	color: var(--ps-blue-deep);
}

a {
	color: var(--ps-blue-mid);
	text-decoration: none;
	transition: color .15s ease;
}

a:hover {
	color: var(--ps-blue-bright);
}

img {
	max-width: 100%;
	height: auto;
}

/* -------------------------------------------------------------
   3. BOOTSTRAP OVERRIDES
   ------------------------------------------------------------- */
.btn-primary {
	background-color: var(--ps-blue-mid);
	border-color: var(--ps-blue-mid);
	font-family: var(--ps-font-heading);
	font-weight: 500;
	letter-spacing: .01em;
	border-radius: var(--ps-radius);
}

.btn-primary:hover {
	background-color: var(--ps-blue-deep);
	border-color: var(--ps-blue-deep);
}

.btn-outline-primary {
	color: var(--ps-blue-mid);
	border-color: var(--ps-blue-mid);
	font-family: var(--ps-font-heading);
	font-weight: 500;
	border-radius: var(--ps-radius);
}

.btn-outline-primary:hover {
	background-color: var(--ps-blue-mid);
	border-color: var(--ps-blue-mid);
}

.form-control,
.form-select {
	border-color: var(--ps-gray-200);
	border-radius: var(--ps-radius);
	font-size: .9375rem;
}

.form-control:focus,
.form-select:focus {
	border-color: var(--ps-blue-bright);
	box-shadow: 0 0 0 3px rgba(33, 150, 243, .15);
}

/* -------------------------------------------------------------
   4. HEADER
   ------------------------------------------------------------- */
.site-header {
	position: sticky;
	top: 0;
	z-index: 1030;
	background: var(--ps-blue-deep);
	box-shadow: 0 1px 0 rgba(255, 255, 255, .1), var(--ps-shadow-md);
}

.site-header .navbar {
	min-height: var(--ps-header-height);
	padding-top: 0;
	padding-bottom: 0;
}

.site-header .navbar-brand {
	display: flex;
	align-items: center;
	gap: .625rem;
	padding: 0;
}

.navbar-brand-text {
	font-family: var(--ps-font-heading);
	font-size: 1.35rem;
	font-weight: 700;
	color: var(--ps-white);
	letter-spacing: -.01em;
}

.site-header .nav-link {
	color: rgba(255, 255, 255, .8);
	font-family: var(--ps-font-heading);
	font-size: .9375rem;
	font-weight: 500;
	padding: .5rem .875rem;
	border-radius: var(--ps-radius);
	transition: color .15s, background .15s;
}

.site-header .nav-link:hover,
.site-header .nav-link.active {
	color: var(--ps-white);
	background: rgba(255, 255, 255, .1);
}

.site-header .btn-primary {
	background: var(--ps-aqua);
	border-color: var(--ps-aqua);
	color: var(--ps-blue-deep);
	font-weight: 600;
}

.site-header .btn-primary:hover {
	background: #00acc1;
	border-color: #00acc1;
	color: var(--ps-blue-deep);
}

.site-header .navbar-toggler {
	border-color: rgba(255, 255, 255, .3);
}

.site-header .navbar-toggler-icon {
	filter: invert(1);
}

/* Account Avatar */
.site-header-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--ps-aqua);
	color: var(--ps-blue-deep);
	font-family: var(--ps-font-heading);
	font-size: .75rem;
	font-weight: 700;
}

.site-header .dropdown-menu {
	border: 1px solid var(--ps-gray-200);
	border-radius: var(--ps-radius-lg);
	box-shadow: var(--ps-shadow-lg);
	padding: .5rem;
}

.site-header .dropdown-item {
	border-radius: var(--ps-radius);
	font-size: .9375rem;
	padding: .5rem .75rem;
	color: var(--ps-text);
}

.site-header .dropdown-item:hover {
	background: var(--ps-blue-light);
	color: var(--ps-blue-mid);
}

/* Admin bar — only visible to admins */
.site-admin-bar {
	background: var(--ps-gray-800);
	padding: .25rem 0;
}

.site-admin-bar a {
	color: var(--ps-gray-400);
	font-size: .8125rem;
	font-family: var(--ps-font-heading);
}

.site-admin-bar a:hover {
	color: var(--ps-white);
}

/* -------------------------------------------------------------
   5. FOOTER
   ------------------------------------------------------------- */
.site-footer {
	background: var(--ps-blue-deep);
	color: rgba(255, 255, 255, .7);
	padding: 2rem 1.5rem;
	margin-top: auto;
}

.site-footer-brand {
	font-family: var(--ps-font-heading);
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--ps-white);
}

.site-footer-brand:hover {
	color: var(--ps-aqua);
}

.site-footer-nav a {
	color: rgba(255, 255, 255, .7);
	font-size: .9rem;
}

.site-footer-nav a:hover {
	color: var(--ps-white);
}

.site-footer-nav .list-inline-item+.list-inline-item::before {
	content: '·';
	margin-right: .5rem;
	color: rgba(255, 255, 255, .3);
}

.site-footer-copy {
	font-size: .85rem;
	color: rgba(255, 255, 255, .5);
}

/* -------------------------------------------------------------
   6. MANUAL LAYOUT
   ------------------------------------------------------------- */
.manual-wrapper {
	min-height: calc(100vh - var(--ps-header-height));
	padding: 0;
}

.manual-sidebar-left {
	position: sticky;
	top: var(--ps-header-height);
	height: calc(100vh - var(--ps-header-height));
	overflow-y: auto;
	background: var(--ps-gray-50);
	border-right: 1px solid var(--ps-gray-200);
	padding: 1.5rem 1rem;

	/* Thin scrollbar */
	scrollbar-width: thin;
	scrollbar-color: var(--ps-gray-200) transparent;
}

.manual-sidebar-left::-webkit-scrollbar {
	width: 4px;
}

.manual-sidebar-left::-webkit-scrollbar-track {
	background: transparent;
}

.manual-sidebar-left::-webkit-scrollbar-thumb {
	background: var(--ps-gray-200);
	border-radius: 2px;
}

.manual-content {
	padding: 2.5rem 3rem;
	min-width: 0;
	/* prevent flex blowout */
}

.manual-sidebar-right {
	position: sticky;
	top: var(--ps-header-height);
	height: calc(100vh - var(--ps-header-height));
	overflow-y: auto;
	padding: 2.5rem 1rem 2.5rem 0;
	border-left: 1px solid var(--ps-gray-200);

	scrollbar-width: thin;
	scrollbar-color: var(--ps-gray-200) transparent;
}

/* -------------------------------------------------------------
   7. SIDEBAR NAV
   ------------------------------------------------------------- */
.manual-search .input-group {
	border-radius: var(--ps-radius);
	overflow: hidden;
}

.manual-search .form-control {
	font-size: .875rem;
	border-right: 0;
}

.manual-search .btn {
	border-color: var(--ps-gray-200);
	color: var(--ps-gray-600);
	background: var(--ps-white);
}

.manual-search .btn:hover {
	background: var(--ps-blue-light);
	color: var(--ps-blue-mid);
}

.manual-tags .form-select {
	font-size: .875rem;
}

/* Accordion nav */
.manual-nav .accordion-item {
	border: none;
	border-radius: 0 !important;
	background: transparent;
}

.manual-nav .accordion-button {
	background: transparent;
	color: var(--ps-gray-800);
	font-family: var(--ps-font-heading);
	font-size: .875rem;
	font-weight: 600;
	padding: .5rem .625rem;
	border-radius: var(--ps-radius) !important;
	box-shadow: none !important;
	display: flex;
	align-items: center;
	gap: .5rem;
}

.manual-nav .accordion-button:not(.collapsed) {
	color: var(--ps-blue-mid);
	background: var(--ps-blue-light);
}

.manual-nav .accordion-button:hover {
	background: var(--ps-gray-200);
	color: var(--ps-blue-mid);
}

.manual-nav .accordion-button::after {
	order: 3;
	flex-shrink: 0;
	width: 14px;
	height: 14px;
	background-size: 14px;
	margin-left: .25rem;
}

.manual-nav .accordion-button .badge {
	font-size: .7rem;
	font-weight: 400;
	background: transparent !important;
	color: var(--ps-gray-400);
	padding: 0;
	margin-left: auto;
	flex-shrink: 0;
	order: 2;
}

.manual-nav .accordion-button:not(.collapsed) .badge {
	color: var(--ps-blue-mid);
}

.manual-nav .accordion-collapse {
	border: none;
}

.manual-nav .accordion-body {
	padding: .25rem 0 .5rem 0;
}

.manual-nav-entries {
	margin: 0;
	padding: 0;
}

.manual-nav-entries li {
	margin: 0;
}

.manual-nav-entries a {
	display: block;
	padding: .3125rem .625rem .3125rem 1.25rem;
	font-size: .8438rem;
	color: var(--ps-gray-600);
	border-radius: var(--ps-radius);
	line-height: 1.4;
	transition: background .1s, color .1s;
	border-left: 2px solid transparent;
}

.manual-nav-entries a:hover {
	color: var(--ps-blue-mid);
	background: var(--ps-blue-light);
	border-left-color: var(--ps-blue-bright);
}

.manual-nav-entries a.active {
	color: var(--ps-blue-mid);
	background: var(--ps-blue-light);
	border-left-color: var(--ps-blue-mid);
	font-weight: 500;
}

/* -------------------------------------------------------------
   8. ON THIS PAGE (right sidebar)
   ------------------------------------------------------------- */
.manual-onthispage-title {
	font-family: var(--ps-font-heading);
	font-size: .75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--ps-gray-400);
	margin-bottom: .75rem;
}

.manual-index-card-description {
	font-size: .9rem;
	color: var(--ps-text-muted);
	margin-bottom: 0;
	line-height: 1.5;
}

.manual-onthispage ul {
	padding: 0;
	margin: 0;
}

.manual-onthispage li {
	list-style: none;
}

.manual-onthispage a {
	display: block;
	font-size: .8125rem;
	color: var(--ps-gray-600);
	padding: .25rem 0 .25rem .75rem;
	border-left: 2px solid var(--ps-gray-200);
	line-height: 1.4;
	transition: color .15s, border-color .15s;
}

.manual-onthispage a:hover,
.manual-onthispage a.active {
	color: var(--ps-blue-mid);
	border-left-color: var(--ps-blue-mid);
}

/* -------------------------------------------------------------
   9. ENTRY CONTENT
   ------------------------------------------------------------- */
.manual-entry-title {
	font-size: 2rem;
	font-weight: 700;
	color: var(--ps-blue-deep);
	margin-bottom: 1.5rem;
	padding-bottom: 1rem;
	border-bottom: 2px solid var(--ps-gray-200);
}

.manual-teaser {
	background: var(--ps-aqua-light);
	border-left: 4px solid var(--ps-aqua);
	border-radius: 0 var(--ps-radius) var(--ps-radius) 0;
	padding: 1rem 1.25rem;
	margin-bottom: 1.5rem;
	font-size: .9375rem;
}

.manual-gate {
	text-align: center;
	padding: 3rem 2rem;
	background: var(--ps-gray-50);
	border: 1px solid var(--ps-gray-200);
	border-radius: var(--ps-radius-lg);
	margin-top: 1.5rem;
}

.manual-gate h4 {
	color: var(--ps-blue-deep);
}

/* Matrix blocks */
.manual-block {
	margin-bottom: 2.5rem;
}

.manual-block-heading {
	font-size: 1.375rem;
	font-weight: 600;
	color: var(--ps-blue-deep);
	margin-bottom: 1rem;
	padding-bottom: .5rem;
	border-bottom: 1px solid var(--ps-gray-200);
}

/* -------------------------------------------------------------
   10. NESTED BLOCKS
   ------------------------------------------------------------- */

/* Callouts */
.manual-callout {
	display: flex;
	gap: .875rem;
	padding: 1rem 1.25rem;
	border-radius: var(--ps-radius);
	border-left: 4px solid;
	margin: 1.5rem 0;
}

.manual-callout-icon {
	font-size: 1.1rem;
	flex-shrink: 0;
	padding-top: .1rem;
}

.manual-callout-body {
	font-size: .9375rem;
	flex: 1;
}

.manual-callout-body p:last-child {
	margin-bottom: 0;
}

.manual-callout--note {
	background: var(--ps-callout-note-bg);
	border-color: var(--ps-callout-note-border);
}

.manual-callout--note .manual-callout-icon {
	color: var(--ps-callout-note-icon);
}

.manual-callout--tip {
	background: var(--ps-callout-tip-bg);
	border-color: var(--ps-callout-tip-border);
}

.manual-callout--tip .manual-callout-icon {
	color: var(--ps-callout-tip-icon);
}

.manual-callout--warning {
	background: var(--ps-callout-warning-bg);
	border-color: var(--ps-callout-warning-border);
}

.manual-callout--warning .manual-callout-icon {
	color: var(--ps-callout-warning-icon);
}

.manual-callout--danger {
	background: var(--ps-callout-danger-bg);
	border-color: var(--ps-callout-danger-border);
}

.manual-callout--danger .manual-callout-icon {
	color: var(--ps-callout-danger-icon);
}

/* Images */
.manual-image {
	margin: 1.5rem 0;
}

.manual-image img {
	border-radius: var(--ps-radius);
	display: block;
}

.manual-image--border img {
	border: 1px solid var(--ps-gray-200);
	padding: 4px;
}

.manual-image--left {
	float: left;
	margin-right: 1.5rem;
	max-width: 50%;
}

.manual-image--right {
	float: right;
	margin-left: 1.5rem;
	max-width: 50%;
}

.manual-image--center {
	text-align: center;
}

.manual-image--center img {
	margin: 0 auto;
}

figcaption {
	font-size: .8125rem;
	color: var(--ps-text-muted);
	margin-top: .5rem;
}

.manual-image-credit {
	display: block;
	font-style: italic;
}

/* Gallery */
.manual-gallery {
	margin: 1.5rem 0;
}

.manual-gallery-description {
	font-size: .9375rem;
	color: var(--ps-text-muted);
	margin-bottom: .75rem;
}

.manual-gallery-item img {
	border-radius: var(--ps-radius);
	object-fit: cover;
	width: 100%;
	aspect-ratio: 1;
	cursor: pointer;
	transition: opacity .15s, transform .15s;
}

.manual-gallery-item img:hover {
	opacity: .85;
	transform: scale(1.02);
}

/* Video */
.manual-video {
	margin: 1.5rem 0;
}

.manual-video-title {
	font-family: var(--ps-font-heading);
	font-weight: 600;
	margin-bottom: .375rem;
}

.manual-video-description {
	font-size: .9375rem;
	color: var(--ps-text-muted);
	margin-bottom: .75rem;
}

.manual-video-embed {
	border-radius: var(--ps-radius-lg);
	overflow: hidden;
	box-shadow: var(--ps-shadow-md);
}

/* Files */
.manual-files {
	margin: 1.5rem 0;
}

.manual-files-title {
	font-family: var(--ps-font-heading);
	font-weight: 600;
	font-size: .9375rem;
	margin-bottom: .5rem;
}

.manual-files-list a {
	display: inline-flex;
	align-items: center;
	gap: .375rem;
	font-size: .9375rem;
	padding: .25rem 0;
	color: var(--ps-blue-mid);
}

.manual-files-list a:hover {
	color: var(--ps-blue-deep);
}

/* Buttons */
.manual-button-wrap {
	margin: 1.25rem 0;
}

.manual-button-wrap--center {
	text-align: center;
}

.manual-button-wrap--right {
	text-align: right;
}

.btn-accent {
  background-color: var(--ps-aqua);
  border-color: var(--ps-aqua);
  color: var(--ps-blue-deep);
  font-family: var(--ps-font-heading);
  font-weight: 600;
  border-radius: var(--ps-radius);
}
.btn-accent:hover {
  background-color: #00acc1;
  border-color: #00acc1;
  color: var(--ps-blue-deep);
}




/* See Also */
.manual-see-also {
	background: var(--ps-gray-50);
	border: 1px solid var(--ps-gray-200);
	border-radius: var(--ps-radius-lg);
	padding: 1.25rem 1.5rem;
}

.manual-see-also h5 {
	font-size: .875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--ps-gray-400);
	margin-bottom: .75rem;
}

.manual-see-also ul {
	margin: 0;
	padding-left: 1.25rem;
}

.manual-see-also li {
	margin-bottom: .25rem;
}

.manual-see-also a {
	font-size: .9375rem;
}

/* Prev / Next */
.manual-prevnext {
	border-top: 1px solid var(--ps-gray-200);
}

.manual-prevnext-link {
	display: flex;
	flex-direction: column;
	color: var(--ps-text);
	padding: .75rem;
	border-radius: var(--ps-radius);
	transition: background .15s;
}

.manual-prevnext-link:hover {
	background: var(--ps-blue-light);
	color: var(--ps-blue-mid);
}

.manual-prevnext-label {
	font-size: .75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--ps-gray-400);
	margin-bottom: .2rem;
}

.manual-prevnext-title {
	font-family: var(--ps-font-heading);
	font-size: .9375rem;
	font-weight: 500;
}

/* -------------------------------------------------------------
   11. INDEX PAGE - POOL MANUAL
   ------------------------------------------------------------- */
.manual-index-header {
	border-bottom: 2px solid var(--ps-gray-200);
	padding-bottom: 1.5rem;
}

.manual-index-title {
	font-size: 2rem;
	font-weight: 700;
}

.manual-index-intro {
	color: var(--ps-text-muted);
}

.manual-index-card {
	border: 1px solid var(--ps-gray-200);
	border-radius: var(--ps-radius-lg);
	box-shadow: var(--ps-shadow-sm);
	transition: box-shadow .2s, transform .2s;
}

.manual-index-card:hover {
	box-shadow: var(--ps-shadow-lg);
	transform: translateY(-2px);
}

.manual-index-card-title {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: .875rem;
}

.manual-index-card-title a {
	color: var(--ps-blue-deep);
}

.manual-index-card-title a:hover {
	color: var(--ps-blue-mid);
}

.manual-index-card-entries {
	margin: 0;
	padding: 0;
}

.manual-index-card-entries li {
	border-bottom: 1px solid var(--ps-gray-100);
	padding: .3rem 0;
}

.manual-index-card-entries li:last-child {
	border-bottom: none;
}

.manual-index-entry-link {
	font-size: .875rem;
	color: var(--ps-gray-600);
}

.manual-index-entry-link:hover {
	color: var(--ps-blue-mid);
}

.manual-index-card .card-footer {
	background: var(--ps-gray-50);
	border-top: 1px solid var(--ps-gray-100);
	border-radius: 0 0 var(--ps-radius-lg) var(--ps-radius-lg);
}

.manual-index-card-more {
	font-size: .875rem;
	font-weight: 500;
	color: var(--ps-blue-mid);
}

.manual-index-card-more:hover {
	color: var(--ps-blue-deep);
}

.manual-index-cta {
	background: linear-gradient(135deg, var(--ps-blue-deep) 0%, var(--ps-blue-mid) 100%);
	border-radius: var(--ps-radius-lg);
	color: var(--ps-white);
}

.manual-index-cta h3 {
	color: var(--ps-white);
}

.manual-index-cta p {
	color: rgba(255, 255, 255, .8);
}

.manual-index-cta .btn {
	background: var(--ps-aqua);
	border-color: var(--ps-aqua);
	color: var(--ps-blue-deep);
	font-weight: 700;
}

/* -------------------------------------------------------------
   12. CATEGORY / TAG PAGES
   ------------------------------------------------------------- */
.manual-category-header {
	margin-bottom: 2rem;
	padding-bottom: 1rem;
	border-bottom: 2px solid var(--ps-gray-200);
}

.manual-category-title {
	font-size: 1.75rem;
	font-weight: 700;
}

.manual-category-count {
	font-size: .9rem;
	color: var(--ps-text-muted);
	margin-top: .25rem;
}

.manual-entry-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.manual-entry-list-item {
	border-bottom: 1px solid var(--ps-gray-100);
	padding: 1rem 0;
}

.manual-entry-list-item:last-child {
	border-bottom: none;
}

.manual-entry-list-title {
	font-family: var(--ps-font-heading);
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: .25rem;
}

.manual-entry-list-title a {
	color: var(--ps-blue-deep);
}

.manual-entry-list-title a:hover {
	color: var(--ps-blue-mid);
}

.manual-entry-list-excerpt {
	font-size: .9rem;
	color: var(--ps-text-muted);
	margin: 0;
}

/* -------------------------------------------------------------
   13. SEARCH PAGE
   ------------------------------------------------------------- */
.manual-search-header {
	margin-bottom: 2rem;
}

.manual-search-form .input-group {
	max-width: 600px;
}

.manual-search-results-count {
	font-size: .9rem;
	color: var(--ps-text-muted);
	margin-top: 1.5rem;
	margin-bottom: 1rem;
}

.manual-search-highlight {
	background: #fff3cd;
	padding: 0 2px;
	border-radius: 2px;
}



/* -------------------------------------------------------------
   14. HOME PAGE
   ------------------------------------------------------------- */
.home-content {
	max-width: 860px;
	margin: 0 auto;
	padding: 3rem 2rem;
}

.home-content p {
	font-size: 1.0625rem;
	line-height: 1.8;
	margin-bottom: 1.25rem;
	color: var(--ps-text);
}

.home-content ul {
	padding-left: 1.5rem;
	margin-bottom: 1.25rem;
}

.home-content ul li {
	font-size: 1.0625rem;
	line-height: 1.8;
	margin-bottom: .375rem;
	color: var(--ps-text);
}


/* -------------------------------------------------------------
   15. BACK TO TOP
   ------------------------------------------------------------- */
.manual-back-top {
	text-align: center;
	padding: 2rem 0 1rem;
	margin-top: 2rem;
	border-top: 1px solid var(--ps-gray-200);
}

.manual-back-top-link {
	font-family: var(--ps-font-heading);
	font-size: .875rem;
	font-weight: 500;
	color: var(--ps-gray-400);
	transition: color .15s;
	padding-left: .75rem;
	border-left: none;
	display: inline-flex;
	align-items: center;
	gap: .375rem;
}

.manual-back-top-link:hover {
	color: var(--ps-blue-mid);
	border-left-color: var(--ps-blue-mid);
}


/* -------------------------------------------------------------
   16. AUTH PAGES (login, reset password, etc.)
   ------------------------------------------------------------- */
.auth-card {
	margin: 4rem auto;
	border: 1px solid var(--ps-gray-200);
	border-radius: var(--ps-radius-lg);
	box-shadow: var(--ps-shadow-sm);
	overflow: hidden;
}

.auth-card-header {
	background: var(--ps-white);
	padding: 2rem 2rem 0;
	text-align: center;
}

.auth-card-title {
	color: var(--ps-blue-deep);
	font-size: 1.5rem;
	margin-bottom: .25rem;
}

.auth-card-subtitle {
	color: var(--ps-text-muted);
	font-size: .9rem;
	margin: 0;
}

.auth-card-body {
	padding: 2rem;
	background: var(--ps-white);
}

.auth-card-footer {
	padding: 1rem 2rem;
	background: var(--ps-gray-50);
	border-top: 1px solid var(--ps-gray-200);
	text-align: center;
	font-size: .9rem;
}

.auth-card-footer a {
	color: var(--ps-blue-mid);
}

.auth-card-footer a:hover {
	color: var(--ps-blue-deep);
}

.auth-password-toggle {
	border-left: 0;
}



/* -------------------------------------------------------------
   17. RESPONSIVE
   ------------------------------------------------------------- */
@media (max-width: 991.98px) {
	.manual-sidebar-left {
		position: static;
		height: auto;
		border-right: none;
		border-bottom: 1px solid var(--ps-gray-200);
	}

	.manual-sidebar-right {
		position: static;
		height: auto;
		border-left: none;
		border-top: 1px solid var(--ps-gray-200);
		padding: 1.5rem;
	}

	.manual-content {
		padding: 1.5rem;
	}

	.manual-image--left,
	.manual-image--right {
		float: none;
		max-width: 100%;
		margin: 1.5rem 0;
	}
}

@media (max-width: 767.98px) {
	.manual-entry-title {
		font-size: 1.5rem;
	}

	.manual-index-title {
		font-size: 1.5rem;
	}

	.manual-content {
		padding: 1rem;
	}
}