/* OmniGenesis standalone fallback stylesheet. */
/* OmniGenesis standalone fallback stylesheet. */

/* source: component-styles/OmniGenesisStandard.scss */
/*! OmniGenesis Standard complete OmniGenesis component set. */

/* source: component-styles/OmniGenesisStandard/main.scss */
/* OmniGenesis Standard preset entry. */

/* source: component-styles/OmniGenesisStandard/__omnigenesis-standard--manifest.scss */
/* OmniGenesis Standard complete set manifest. */
/* This package defines the canonical OmniGenesis presentation contract. */
/* Shared presentation layers must remain application-agnostic. */

/* source: component-styles/OmniGenesisStandard/_preset-inputs.scss */
/* OmniGenesis Standard default component inputs. */

:root {
  --og-alert-radius: 0.7rem;
  --og-badge-radius: var(--og-radius-pill);
  --og-border-width: 1px;
  --og-border-width-strong: 2px;
  --og-button-padding-x: 1rem;
  --og-button-padding-y: 0.72rem;
  --og-button-radius: var(--og-radius-control);
  --og-button-shadow: var(--og-shadow-none);
  --og-card-gap: 1rem;
  --og-card-padding: 1rem;
  --og-card-radius: var(--og-radius-card);
  --og-card-shadow: var(--og-shadow-md);
  --og-content-max-width: 1440px;
  --og-content-shell-max-width: 61.25rem;
  --og-content-reading-max-width: 47.5rem;
  --og-easing-standard: cubic-bezier(.2, .8, .2, 1);
  --og-font-family-body: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  --og-font-family-heading: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  --og-font-family-mono: SFMono-Regular, Consolas, Liberation Mono, monospace;
  --og-font-size-body: 1rem;
  --og-font-size-heading: clamp(2rem, 5vw, 3.5rem);
  --og-font-size-lg: 1.125rem;
  --og-font-size-sm: 0.84rem;
  --og-font-size-xs: 0.69rem;
  --og-font-weight-bold: 850;
  --og-font-weight-medium: 500;
  --og-font-weight-normal: 400;
  --og-font-weight-semibold: 750;
  --og-grid-gap: 1rem;
  --og-grid-min-column: 18.75rem;
  --og-header-shadow: var(--og-shadow-none);
  --og-input-padding-x: 0.88rem;
  --og-input-padding-y: 0.5rem;
  --og-input-height: 2.25rem;
  --og-input-radius: 0.6rem;
  --og-input-shadow: var(--og-shadow-none);
  --og-line-height-body: 1.58;
  --og-line-height-heading: 1.15;
  --og-modal-max-width: 58rem;
  --og-modal-padding: 1.25rem;
  --og-modal-radius: var(--og-radius-lg);
  --og-modal-shadow: var(--og-shadow-modal);
  --og-motion-base: 220ms;
  --og-motion-fast: 120ms;
  --og-motion-slow: 400ms;
  --og-page-padding: 2rem;
  --og-radius-card: 1rem;
  --og-radius-control: 0.65rem;
  --og-radius-lg: 1rem;
  --og-radius-none: 0;
  --og-radius-pill: 999px;
  --og-radius-sm: 0.35rem;
  --og-shadow-lg: 0 1.25rem 3.5rem rgb(0 0 0 / 0.28);
  --og-shadow-md: 0 1.25rem 3.75rem rgb(0 0 0 / 0.18);
  --og-shadow-modal: 0 1.5rem 5rem rgb(0 0 0 / 0.45);
  --og-shadow-none: none;
  --og-shadow-sm: 0 0.15rem 0.5rem rgb(0 0 0 / 0.12);
  --og-shell-footer-height: 3rem;
  --og-shell-header-height: auto;
  --og-shell-sidebar-width: 15rem;
  --og-sidebar-shadow: 1rem 0 2.5rem rgb(0 0 0 / 0.18);
  --og-space-1: 0.25rem;
  --og-space-10: 2.5rem;
  --og-space-12: 3rem;
  --og-space-2: 0.5rem;
  --og-space-3: 0.75rem;
  --og-space-4: 1rem;
  --og-space-5: 1.25rem;
  --og-space-6: 1.5rem;
  --og-space-8: 2rem;
  --og-tab-gap: 0.4rem;
  --og-tab-radius: 0.5rem;
  --og-tab-container-radius: 0.75rem;
  --og-table-cell-padding-x: 1rem;
  --og-table-cell-padding-y: 0.9rem;
}


/* source: component-styles/OmniGenesisStandard/source/__source--manifest.scss */
/* Canonical OmniGenesis source manifest. */

/* source: component-styles/OmniGenesisStandard/source/_foundation.scss */
/* Canonical OmniGenesis presentation rules. */
@property --og-color-background {
	syntax: "<color>";
	inherits: true;
	initial-value: #0d0810;
}
@property --og-color-surface {
	syntax: "<color>";
	inherits: true;
	initial-value: #18101c;
}
@property --og-color-surface-raised {
	syntax: "<color>";
	inherits: true;
	initial-value: #211527;
}
@property --og-color-border {
	syntax: "<color>";
	inherits: true;
	initial-value: #3d2944;
}
@property --og-color-text-primary {
	syntax: "<color>";
	inherits: true;
	initial-value: #fbf7fc;
}
@property --og-color-text-secondary {
	syntax: "<color>";
	inherits: true;
	initial-value: #b9a9be;
}
@property --og-color-accent {
	syntax: "<color>";
	inherits: true;
	initial-value: #e250e2;
}
@property --og-color-accent-hover {
	syntax: "<color>";
	inherits: true;
	initial-value: #f079f0;
}
@property --og-color-accent-contrast {
	syntax: "<color>";
	inherits: true;
	initial-value: #1b071b;
}
@property --og-color-danger {
	syntax: "<color>";
	inherits: true;
	initial-value: #ff9ca8;
}
@property --og-color-warning {
	syntax: "<color>";
	inherits: true;
	initial-value: #ffd087;
}
@property --og-color-success {
	syntax: "<color>";
	inherits: true;
	initial-value: #8ce2bb;
}
@property --og-color-glow {
	syntax: "<color>";
	inherits: true;
	initial-value: #3a143d;
}
:root {
	--og-theme-transition-duration: 0.35s;
	font-family: var(--og-font-family-body);
}

* {
	box-sizing: border-box;
}
html {
	min-width: 320px;
}
body {
	height: 100dvh;
	min-height: 100vh;
	margin: 0;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr);
	overflow: hidden;
	color: var(--og-color-text-primary);
	padding-bottom: var(--og-shell-footer-height);
	transition:
		--og-color-background var(--og-theme-transition-duration) ease-in-out,
		--og-color-surface var(--og-theme-transition-duration) ease-in-out,
		--og-color-surface-raised var(--og-theme-transition-duration) ease-in-out,
		--og-color-border var(--og-theme-transition-duration) ease-in-out,
		--og-color-text-primary var(--og-theme-transition-duration) ease-in-out,
		--og-color-text-secondary var(--og-theme-transition-duration) ease-in-out,
		--og-color-accent var(--og-theme-transition-duration) ease-in-out,
		--og-color-accent-hover var(--og-theme-transition-duration) ease-in-out,
		--og-color-accent-contrast var(--og-theme-transition-duration) ease-in-out,
		--og-color-danger var(--og-theme-transition-duration) ease-in-out,
		--og-color-warning var(--og-theme-transition-duration) ease-in-out,
		--og-color-success var(--og-theme-transition-duration) ease-in-out,
		--og-color-glow var(--og-theme-transition-duration) ease-in-out,
		opacity 0.18s ease,
		background-color 0.35s ease,
		color 0.35s ease;
}

.page-background-gradient {
	background: radial-gradient(circle at 12% -5%, var(--og-color-glow), transparent 34%), var(--og-color-background);
}
body.theme-mode-leaving {
	opacity: 0;
	transition-duration: var(--og-theme-transition-duration);
}
a {
	color: inherit;
}
a[href],
button:not(:disabled),
[role="tab"]:not([aria-disabled="true"]) {
	cursor: pointer;
}
button:disabled,
[role="tab"][aria-disabled="true"] {
	cursor: not-allowed;
}
h1,
h2,
h3,
p {
	margin-top: 0;
}
h1 {
	margin-bottom: 0.55rem;
	font-size: clamp(2rem, 5vw, 3.5rem);
	letter-spacing: -0.015em;
}
h2 {
	margin-bottom: 0.55rem;
	font-size: clamp(1.25rem, 3vw, 1.8rem);
	letter-spacing: -0.005em;
}
h3 {
	margin-bottom: 0.4rem;
}
p {
	line-height: 1.58;
}
code {
	color: var(--og-color-accent-hover);
	overflow-wrap: anywhere;
}
.topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding: 0.15rem clamp(0.6rem, 2.5vw, 2rem);
	border-bottom: 1px solid var(--og-color-border);
	background: color-mix(in srgb, var(--og-color-background) 82%, transparent);
	backdrop-filter: blur(16px);
}
.brand {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	text-decoration: none;
}
.brand strong {
	display: block;
	font-size: clamp(1.35rem, 3vw, 2rem);
}
.brand .eyebrow {
	margin-bottom: 0.25rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.18em;
}
.brand-mark {
	display: block;
	width: 5.3rem;
	height: 5.3rem;
	object-fit: contain;
}
.brand-mark--large {
	width: min(18rem, 72vw);
	height: min(18rem, 72vw);
	margin: 0 auto 0.4rem;
}
.eyebrow,
.kicker {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--og-color-accent-hover);
	font-size: 0.69rem;
	font-weight: 900;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}
.header-actions {
	display: flex;
	align-items: center;
	gap: 0.55rem;
}
.header-actions form {
	display: inline-flex;
	margin: 0;
}
.glyph-button {
	display: inline-grid;
	place-items: center;
	width: 2.5rem;
	height: 2.5rem;
	min-height: 2.5rem;
	padding: 0;
	border: 1px solid var(--og-color-border);
	border-radius: 0.65rem;
	background: linear-gradient(145deg, var(--og-color-surface-raised), var(--og-color-surface));
	color: var(--og-color-text-primary);
	font-size: 1.1rem;
	line-height: 1;
	text-decoration: none;
}
.glyph-button svg {
	width: 1.4rem;
	height: 1.4rem;
	object-fit: contain;
}
.theme-mode-icon {
	grid-area: 1 / 1;
	display: grid;
	place-items: center;
	transition: opacity 140ms ease-in;
}
.theme-mode-icon--current {
	opacity: 1;
}
.theme-mode-icon--next {
	opacity: 0;
}
body.theme-mode-leaving [data-theme-mode-toggle] .theme-mode-icon--current {
	opacity: 0;
}
body.theme-mode-leaving [data-theme-mode-toggle] .theme-mode-icon--next {
	opacity: 1;
	transition-delay: 160ms;
	transition-duration: 180ms;
	transition-timing-function: ease-out;
}
.theme-mode-toggle-changing .theme-mode-icon--current {
	opacity: 0;
}
.theme-mode-toggle-changing .theme-mode-icon--next {
	opacity: 1;
	transition-delay: 160ms;
	transition-duration: 180ms;
	transition-timing-function: ease-out;
}
.app-shell {
	display: grid;
	grid-template-columns: var(--og-shell-sidebar-width) minmax(0, 1fr);
	width: 100%;
	min-height: 0;
	overflow: hidden;
	transition: grid-template-columns 600ms ease-in-out;
}
.drawer-rail {
	position: relative;
	z-index: 50;
	align-self: stretch;
	width: var(--og-shell-sidebar-width);
	height: 100%;
	min-height: 0;
	overflow: visible;
	transform: translateX(0);
	transition: transform 600ms ease-in-out;
	will-change: transform;
}
.sidebar {
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-right: 1px solid var(--og-color-border);
	background: var(--og-color-background);
	box-shadow: 1rem 0 2.5rem rgb(0 0 0 / 18%);
}
.sidebar-toggle {
	position: absolute;
	z-index: 1;
	top: 0.75rem;
	right: 0.75rem;
	margin: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	transition:
		right 600ms ease-in-out,
		color 180ms ease-in-out;
}
.sidebar-toggle:hover {
	background: transparent;
	color: var(--og-color-accent-hover);
}
.sidebar-toggle__icon {
	grid-area: 1 / 1;
	display: none;
	place-items: center;
}
.sidebar-toggle[aria-expanded="true"] .sidebar-toggle__icon--close {
	display: grid;
}
.sidebar-toggle[aria-expanded="false"] .sidebar-toggle__icon--menu {
	display: grid;
}
.sidebar-collapsed .sidebar-toggle {
	right: -3.25rem;
}
.section-nav {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	height: 100%;
	gap: 0;
	padding: 1rem;
	overflow-y: auto;
	opacity: 1;
	transition:
		opacity 300ms ease-in-out,
		transform 600ms ease-in-out;
}
.sidebar-collapsed .app-shell {
	grid-template-columns: 0 minmax(0, 1fr);
}
.sidebar-collapsed .drawer-rail {
	transform: translateX(-100%);
}
.section-nav a {
	flex: 0 0 auto;
	padding: 0.72rem 0.85rem 0.72rem 1.25rem;
	border-radius: 0.6rem;
	color: var(--og-color-text-secondary);
	font-size: 0.88rem;
	font-weight: 750;
	text-decoration: none;
}
.section-nav a:hover,
.section-nav a[aria-current="page"] {
	background: var(--og-color-surface-raised);
	color: var(--og-color-accent-hover);
}
.section-nav-label {
	display: flex;
	flex: 0 0 auto;
	align-self: stretch;
	width: 100%;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--og-color-text-secondary);
	font-size: 0.62rem;
	font-weight: 900;
	letter-spacing: 0.14em;
	line-height: 1.3;
	box-shadow: none;
	cursor: pointer;
	justify-content: flex-start;
	text-align: left;
	text-transform: uppercase;
}

.section-nav-section {
	display: flex;
	flex-direction: column;
}

/*
 * Section spacing belongs to the expandable content. A collapsed category
 * therefore occupies only its compact label row, while an expanded category
 * keeps a clear separation after its final link.
 */
.section-nav-section > .animate-disclosure {
	margin-block-end: 0.7rem;
	transition: margin-block-end var(--og-motion-fast, 160ms) ease;
}

.section-nav-section > .animate-disclosure.is-collapsed {
	margin-block-end: 0;
}

.section-nav-label:hover {
	background: transparent;
	color: var(--og-color-accent-hover);
}

.section-nav-label .disclosure-twirl {
	width: 1rem;
	height: 1rem;
	margin-inline-end: 0.3rem;
	font-size: 1rem;
	line-height: 1;
}

.section-nav-section__items {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}
.main > p,
.section-heading p,
.lede,
.panel > p,
.empty-state p {
	color: var(--og-color-text-secondary);
}
.section-heading,
.panel-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.5rem;
	margin-bottom: 1rem;
}
.section-heading h1 {
	font-size: clamp(1.75rem, 3vw, 2.65rem);
}
.panel-heading {
	align-items: center;
	margin-bottom: 1rem;
}
.section-heading > .button {
	flex: 0 0 auto;
	align-self: flex-end;
}
.section-heading > :first-child > :last-child {
	margin-bottom: 0;
}
.panel-heading h2,
.panel-heading p {
	margin-bottom: 0;
}
.panel,
.empty-state,
.auth-card,
.table-wrap {
	border: 1px solid var(--og-color-border);
	border-radius: 1rem;
	background: linear-gradient(
		145deg,
		var(--og-color-glow),
		color-mix(in srgb, var(--og-color-glow) 88%, var(--og-color-surface-raised))
	);
	box-shadow: 0 20px 60px rgb(0 0 0 / 18%);
}
.panel {
	margin-bottom: 1.2rem;
	padding: clamp(0.5rem, 1vw, 2rem);
}
.detail-grid {
	display: grid;
	/* Stacked on mobile by default */
	grid-template-columns: 1fr;
	gap: 1rem;
	margin-bottom: 1.2rem;
}
.card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
	gap: 1rem;
	margin-bottom: 1.2rem;
}
.card-grid > .panel {
	margin-bottom: 0;
}
label .permanent-path-field {
	display: flex;
	width: 100%;
	align-items: stretch;
	margin-top: 0.42rem;
}
.permanent-path-field > span {
	padding: 0.7rem 0.8rem;
	border: 1px solid var(--og-color-border);
	border-right: 0;
	border-radius: 0.45rem 0 0 0.45rem;
	background: var(--og-color-surface-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.permanent-path-field input {
	min-width: 0;
	border-radius: 0 0.45rem 0.45rem 0;
}
.result-modal label .copy-field {
	display: grid;
	width: 100%;
	margin-top: 0.42rem;
}

/* og: sidebar-header-layout:start */
/*
 * The toggle remains a sibling of .sidebar in the shared application markup.
 * These rules create a visual header row inside the open sidebar and position
 * that existing toggle within the row.
 */
.drawer-rail .sidebar {
	position: relative;
	padding-top: 2.25rem;
}

.drawer-rail .sidebar::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 2.25rem;
	pointer-events: none;
	border-bottom: 1px solid var(--og-color-border);
}

.drawer-rail .sidebar-toggle {
	top: 0.25rem;
	right: 0.375rem;
	width: 1.75rem;
	height: 1.75rem;
	min-width: 1.75rem;
	min-height: 1.75rem;
	margin: 0;
	padding: 0.25rem;
	border-radius: 0.375rem;
}

.drawer-rail .sidebar-toggle svg {
	width: 1rem;
	height: 1rem;
}

.drawer-rail .section-nav {
	padding: 0.5rem 0.75rem 0.75rem;
}

.sidebar-collapsed .drawer-rail .sidebar-toggle {
	right: -2.375rem;
}
/* og: sidebar-header-layout:end */


/* source: component-styles/OmniGenesisStandard/source/_components.scss */
/* 60/40 split on tablets and desktops */
@media (min-width: 600px) {
	/* .card-grid, */
	.detail-grid {
		grid-template-columns: 6fr 4fr;
	}
}
.metrics {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 1.5rem;
}
.metrics--dashboard {
	margin-bottom: 1.2rem;
}
.metrics div {
	padding: 1rem 0.6rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.8rem;
	background: var(--og-color-surface);
	text-align: center;
}
.metrics strong,
.metrics span {
	display: block;
}
.metrics strong {
	font-size: 1.45rem;
}
.metrics span {
	margin-top: 0.2rem;
	color: var(--og-color-text-secondary);
	font-size: 0.68rem;
	text-transform: uppercase;
}
.button,
button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: 0.72rem 1rem;
	border: 1px solid var(--og-color-accent);
	border-radius: 0.65rem;
	background: var(--og-color-accent);
	color: var(--og-color-accent-contrast);
	font: inherit;
	font-weight: 850;
	text-decoration: none;
	cursor: pointer;
}
.button:not([aria-disabled="true"]):hover,
button:not(:disabled):hover {
	border-color: color-mix(
		in srgb,
		var(--og-color-accent) 82%,
		var(--og-color-surface)
	);
	background: color-mix(
		in srgb,
		var(--og-color-accent) 82%,
		var(--og-color-surface)
	);
}
.button.secondary,
button.secondary {
	border-color: var(--og-color-border);
	background: transparent;
	color: var(--og-color-text-primary);
}
.button.secondary:hover,
button.secondary:not(:disabled):hover {
	border-color: var(--og-color-accent);
	background: color-mix(in srgb, var(--og-color-accent) 16%, var(--og-color-surface));
	color: var(--og-color-text-primary);
}
.glyph-button:hover {
	border-color: var(--og-color-accent);
	background: color-mix(in srgb, var(--og-color-accent) 16%, var(--og-color-surface));
	color: var(--og-color-accent-hover);
}
button.danger {
	border-color: color-mix(in srgb, var(--og-color-danger) 55%, var(--og-color-border));
	background: color-mix(in srgb, var(--og-color-danger) 22%, var(--og-color-surface));
	color: var(--og-color-danger);
}
.icon-label {
	gap: 0.5rem;
}
.icon-label svg {
	width: 1.25rem;
	height: 1.25rem;
}
.actions {
	display: flex;
	justify-content: end;
	gap: 0.75rem;
}
.button-group,
.key-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
}
.button-group form {
	display: inline-flex;
	margin: 0;
}
.key-row {
	justify-content: space-between;
	padding: 0.8rem 0;
	border-top: 1px solid var(--og-color-border);
}
.key-row:first-of-type {
	border-top: 0;
}
.actions--split {
	justify-content: space-between;
}
form {
	display: grid;
	gap: 1rem;
}
.form-grid {
	grid-template-columns: 1fr 1fr;
}
.form-grid .full {
	grid-column: 1 / -1;
}
label {
	display: block;
	color: var(--og-color-text-primary);
	font-size: 0.86rem;
	font-weight: 750;
}
label > span,
label span {
	color: var(--og-color-text-secondary);
	font-size: 0.75rem;
	font-weight: 500;
}
.required-glyph {
	display: inline;
	margin-left: 0.12rem;
	color: var(--og-color-accent-hover);
	font-size: 0.31rem;
	line-height: 1;
	vertical-align: super;
}
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
label > input:not([type="checkbox"]):not([type="radio"]),
label > textarea,
label > select {
	display: block;
	margin-top: 0.42rem;
}
label:not(.checkbox)
	> span:not(.required-glyph):not(.sr-only) {
	display: block;
	margin-top: 0.18rem;
}
input,
textarea,
select {
	width: 100%;
	padding: 0.78rem 0.88rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.6rem;
	background: var(--og-color-background);
	color: var(--og-color-text-primary);
	font: inherit;
}
input[type="date"][data-empty="true"]::-webkit-datetime-edit,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit,
input[type="time"][data-empty="true"]::-webkit-datetime-edit,
input[type="month"][data-empty="true"]::-webkit-datetime-edit,
input[type="date"][data-empty="true"]::-webkit-datetime-edit-fields-wrapper,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit-fields-wrapper,
input[type="time"][data-empty="true"]::-webkit-datetime-edit-fields-wrapper,
input[type="month"][data-empty="true"]::-webkit-datetime-edit-fields-wrapper,
input[type="date"][data-empty="true"]::-webkit-datetime-edit-year-field,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit-year-field,
input[type="date"][data-empty="true"]::-webkit-datetime-edit-month-field,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit-month-field,
input[type="date"][data-empty="true"]::-webkit-datetime-edit-day-field,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit-day-field,
input[type="time"][data-empty="true"]::-webkit-datetime-edit-hour-field,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit-hour-field,
input[type="time"][data-empty="true"]::-webkit-datetime-edit-minute-field,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit-minute-field,
input[type="time"][data-empty="true"]::-webkit-datetime-edit-ampm-field,
input[type="datetime-local"][data-empty="true"]::-webkit-datetime-edit-ampm-field {
	color: var(--og-color-text-secondary) !important;
}
input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(
		[type="file"]
	) {
	padding: 0.5rem 0.88rem;
}
select {
	padding: 0.5rem 2rem 0.5rem 0.88rem;
}
textarea {
	padding: 0.78rem 0.88rem;
	resize: vertical;
}
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
button:focus-visible,
a:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--og-color-accent) 55%, transparent);
	outline-offset: 2px;
}
fieldset {
	margin: 0;
	padding: 1rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.7rem;
}
legend {
	padding: 0 0.4rem;
	color: var(--og-color-text-secondary);
	font-size: 0.78rem;
	font-weight: 800;
	text-transform: uppercase;
}
.checkbox-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.75rem;
}
.checkbox-grid label {
	display: flex;
	align-items: center;
}
.checkbox-grid input {
	width: auto;
}
.alert {
	margin: 1rem auto;
	padding: 0.9rem 1rem;
	border: 1px solid color-mix(in srgb, var(--og-color-danger) 55%, var(--og-color-border));
	border-radius: 0.7rem;
	background: color-mix(in srgb, var(--og-color-danger) 12%, var(--og-color-surface));
	color: var(--og-color-danger);
}
.alert--success {
	border-color: color-mix(in srgb, var(--og-color-success) 55%, var(--og-color-border));
	background: color-mix(in srgb, var(--og-color-success) 10%, var(--og-color-surface));
	color: var(--og-color-success);
}

.alert--warning {
	border-color: color-mix(in srgb, var(--og-color-warning) 55%, var(--og-color-border));
	background: color-mix(in srgb, var(--og-color-warning) 10%, var(--og-color-surface));
	color: var(--og-color-warning);
}
.one-time-secret {
	border-color: color-mix(in srgb, var(--og-color-warning) 55%, var(--og-color-border));
}
.copy-field {
	display: grid;
	grid-template-columns: 1fr auto;
	/* gap: 0.6rem; */
}
.copy-field input {
	border-radius: 0.6rem 0 0 0.6rem;
}
.copy-field input:focus {
	outline: none;
	box-shadow: inset 0 0 0 3px var(--og-color-background);
}
.copy-field button {
	width: 12rem;
	height: 2rem;
	min-height: 2rem;
	border-radius: 0 0.6rem 0.6rem 0;
}
.copy-field--result input {
	min-width: 0;
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
.result-modal
	label:not(.checkbox)
	> span.copy-field.copy-field--result:not(.required-glyph):not(.sr-only) {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	width: 100%;
	margin-top: 0.42rem;
}
.result-modal
	label:not(.checkbox)
	> span.copy-field.copy-field--result:not(.required-glyph):not(.sr-only)
	> input {
	width: auto;
	min-width: 0;
	flex: 1 1 0;
}
.result-modal
	label:not(.checkbox)
	> span.copy-field.copy-field--result:not(.required-glyph):not(.sr-only)
	> button {
	flex: 0 0 12rem;
}
.one-time-warning {
	margin: 0.85rem 0 1.25rem;
	color: var(--og-color-warning);
	font-size: 0.8rem;
}
.table-wrap {
	overflow-x: auto;
	background: var(--og-color-surface);
}
.table-wrap--flush {
	margin: 0;
	border-width: 1px;
	border-radius: 0.75rem;
	box-shadow: none;
}
table {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
}
th,
td {
	padding: 0.9rem 1rem;
	border-bottom: 1px solid var(--og-color-border);
	text-align: left;
	vertical-align: top;
	font-size: 0.84rem;
}
th {
	color: var(--og-color-text-secondary);
	font-size: 0.69rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
tr:last-child td {
	border-bottom: 0;
}
.table-subtle {
	display: block;
	margin-top: 0.25rem;
	color: var(--og-color-text-secondary);
	font-size: 0.72rem;
}

.truncate {
	display: block;
	max-width: 28rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.break-all {
	overflow-wrap: anywhere;
}
.status {
	display: inline-flex;
	padding: 0.32rem 0.55rem;
	border: 1px solid var(--og-color-border);
	border-radius: 999px;
	color: var(--og-color-text-secondary);
	font-size: 0.66rem;
	font-weight: 900;
	text-transform: uppercase;
}
.status--active,
.status--likely_human {
	border-color: color-mix(in srgb, var(--og-color-success) 45%, var(--og-color-border));
	color: var(--og-color-success);
}
.status--disabled,
.status--suspected_scanner {
	border-color: color-mix(in srgb, var(--og-color-danger) 45%, var(--og-color-border));
	color: var(--og-color-danger);
}
.status--degraded {
	border-color: color-mix(in srgb, var(--og-color-warning) 45%, var(--og-color-border));
	color: var(--og-color-warning);
}
.status--test {
	margin-left: 0.3rem;
	border-color: color-mix(in srgb, var(--og-color-warning) 45%, var(--og-color-border));
	color: var(--og-color-warning);
}
dl {
	display: grid;
	gap: 0.8rem;
}
dt {
	margin-bottom: 0.18rem;
	color: var(--og-color-text-secondary);
	font-size: 0.7rem;
	font-weight: 800;
	text-transform: uppercase;
}
dd {
	margin: 0;
	overflow-wrap: anywhere;
}
.empty-state {
	padding: 3rem 1rem;
	text-align: center;
	margin-bottom: 2rem;
}


/* source: component-styles/OmniGenesisStandard/source/_authentication.scss */
.auth-page {
	display: grid;
	grid-template-rows: 1fr auto;
	place-items: center;
	padding: 1rem 0 0;
	overflow-y: auto;
}
.auth-card {
	width: min(440px, calc(100% - 2rem));
	padding: clamp(1rem, 2vw, 2.7rem);
	transform: translateY(-12%);
}
@media (max-height: 1199px) {
	.auth-card {
		transform: translateY(0);
	}
}
.auth-card--login {
	width: min(480px, calc(100% - 2rem));
	text-align: center;
}
.auth-card--login form {
	width: 100%;
	min-width: 0;
	text-align: left;
}
.auth-card--login label,
.auth-card--login input {
	width: 100%;
	min-width: 0;
}
.auth-card--login button[type="submit"] {
	width: 100%;
}
@media (max-height: 799px) and (min-width: 681px) {
	.auth-card--login {
		width: min(960px, calc(100% - 2rem));
		display: grid;
		grid-template-columns: minmax(13rem, 0.9fr) minmax(17rem, 1.1fr);
		align-items: center;
		gap: clamp(1.5rem, 4vw, 4rem);
		text-align: left;
	}
	.auth-card--login .auth-brand {
		text-align: center;
	}
	.auth-card--login .auth-login-content {
		display: grid;
		align-content: center;
	}
}
.auth-card--mfa {
	width: min(480px, calc(100% - 2rem));
	transform: none;
}
.mfa-enrollment {
	display: grid;
	gap: 1rem;
	padding: 1rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.8rem;
	background: var(--og-color-background);
}
.mfa-enrollment h2,
.mfa-enrollment ol {
	margin-bottom: 0;
}
.mfa-enrollment ol {
	padding-left: 1.25rem;
	color: var(--og-color-text-secondary);
	text-align: left;
}
.mfa-qr {
	margin: 0;
	text-align: center;
}
.mfa-qr img {
	display: block;
	width: min(256px, 100%);
	min-width: 256px;
	height: auto;
	aspect-ratio: 1 / 1;
	margin: 0 auto 0.75rem;
	padding: 0.75rem;
	border-radius: 0.75rem;
	background: #fff;
	image-rendering: pixelated;
}
.mfa-qr figcaption {
	color: var(--og-color-text-secondary);
	font-size: 0.88rem;
}
.mfa-secret {
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	letter-spacing: 0.08em;
}
.mfa-provisioning-uri {
	display: block;
	margin-top: 0.65rem;
	padding: 0.75rem;
	overflow-wrap: anywhere;
	border-radius: 0.5rem;
	background: var(--og-color-surface);
	text-align: left;
}
.mfa-confirmation span {
	flex: 1;
	text-align: left;
}

/* og: ajax-auth-flow:start */
.auth-login-content {
	min-width: 0;
}

.auth-swap-frame {
	position: relative;
	height: var(--og-auth-swap-height, auto);
	min-height: var(--og-auth-swap-height, 0);
	overflow: visible;
	opacity: 1;
	transform: translateY(0);
	transition:
		opacity 300ms cubic-bezier(0.16, 1, 0.3, 1),
		transform 300ms cubic-bezier(0.16, 1, 0.3, 1);
}

.auth-swap-frame.auth-swap--leaving {
	opacity: 0;
	transform: translateY(-0.4rem);
}

.auth-swap-frame.auth-swap--entering {
	opacity: 0;
	transform: translateY(0.4rem);
}

.auth-message-slot {
	display: grid;
	min-height: 5rem;
	align-items: start;
}

.auth-message-slot > * {
	grid-area: 1 / 1;
	margin-bottom: 0;
}

.auth-swap-panel {
	display: grid;
	align-content: start;
	min-height: 0;
}

.auth-swap-panel form {
	display: grid;
	width: 100%;
	min-width: 0;
	gap: 1rem;
}

.auth-swap-panel form > button[type="submit"],
.auth-swap-panel form > .button {
	width: 100%;
	justify-content: center;
}

.auth-swap-panel[data-auth-panel="mfa"] {
	max-height: calc(var(--og-auth-swap-height, 28rem) - 5rem);
	margin-inline: -0.5rem;
	padding-inline: 0.5rem;
	overflow-y: auto;
}

.auth-swap-panel[data-auth-panel="mfa"] .mfa-enrollment {
	margin-bottom: 1rem;
}

@media (prefers-reduced-motion: reduce) {
	.auth-swap-frame {
		transition: none;
	}
}
/* og: ajax-auth-flow:end */


/* source: component-styles/OmniGenesisStandard/source/_footer.scss */
.footer {
	position: fixed;
	z-index: 55;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 1rem;
	border-top: 1px solid var(--og-color-border);
	background: color-mix(in srgb, var(--og-color-background) 82%, transparent);
	backdrop-filter: blur(16px);
	text-align: center;
}
.footer p {
	margin: 0;
	color: var(--og-color-text-secondary);
	font-size: 0.75rem;
}


/* source: component-styles/OmniGenesisStandard/source/_dialogs-help.scss */
.help-content {
	line-height: 1.65;
}
.help-modal {
	width: min(720px, calc(100% - 2rem));
	max-height: min(82vh, 780px);
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 1rem;
	background: var(--og-color-surface);
	color: var(--og-color-text-primary);
	box-shadow: 0 24px 80px rgb(0 0 0 / 45%);
}
.help-modal::backdrop {
	background: rgb(5 2 7 / 72%);
	backdrop-filter: blur(4px);
}
.result-modal,
.settings-modal,
.entrypoint-edit-modal{
	width: min(920px, calc(100% - 2rem));
	max-height: min(88vh, 900px);
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 1rem;
	background: var(--og-color-surface);
	color: var(--og-color-text-primary);
	box-shadow: 0 24px 80px rgb(0 0 0 / 45%);
}
.result-modal {
	width: min(912px, calc(100% - 2rem));
	border-color: color-mix(in srgb, var(--og-color-success) 55%, var(--og-color-border));
}
.result-modal .copy-field {
	width: 100%;
	grid-template-columns: minmax(0, 1fr) auto;
}
.result-modal .copy-field button {
	white-space: nowrap;
}
.result-modal::backdrop,
.settings-modal::backdrop,
.entrypoint-edit-modal::backdrop{
	background: rgb(5 2 7 / 72%);
	backdrop-filter: blur(4px);
}
dialog[open]:is(
	.modal-shell,
	.modal,
	.help-modal,
	.result-modal,
	.settings-modal,
	.entrypoint-edit-modal,
	.media-action-modal,
	.media-details-modal
) {
	display: flex;
	flex-direction: column;
	--og-modal-viewport-gap: clamp(1rem, 4vh, 3rem);
	margin: var(--og-modal-viewport-gap) auto auto;
	max-height: calc(
		100dvh - var(--og-modal-viewport-gap) - var(--og-modal-viewport-gap)
	);
	animation: modal-enter 400ms ease-out both;
}
@keyframes modal-enter {
	from {
		opacity: 0;
		transform: translateY(0.75rem) scale(0.75);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}
dialog[open]:is(
	.modal-shell,
	.modal,
	.help-modal,
	.result-modal,
	.settings-modal,
	.entrypoint-edit-modal,
	.media-action-modal,
	.media-details-modal
)::backdrop {
	animation: modal-backdrop-enter 600ms ease-out both;
}
@keyframes modal-backdrop-enter {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
dialog[open].modal-closing:is(
	.modal-shell,
	.modal,
	.help-modal,
	.result-modal,
	.settings-modal,
	.entrypoint-edit-modal,
	.media-action-modal,
	.media-details-modal
) {
	animation: modal-exit 400ms ease-out both;
}
@keyframes modal-exit {
	from {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
	to {
		opacity: 0;
		transform: translateY(0.75rem) scale(0.75);
	}
}
dialog[open].modal-closing:is(
	.modal-shell,
	.modal,
	.help-modal,
	.result-modal,
	.settings-modal,
	.entrypoint-edit-modal,
	.media-action-modal,
	.media-details-modal
)::backdrop {
	animation: modal-backdrop-exit 600ms ease-out both;
}
@keyframes modal-backdrop-exit {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}
.modal-header {
	z-index: 2;
	flex: 0 0 auto;
	padding: clamp(1.2rem, 4vw, 2rem);
	border-bottom: 1px solid var(--og-color-border);
	background: color-mix(in srgb, var(--og-color-background) 82%, transparent);
	backdrop-filter: blur(16px);
}
.modal-body {
	flex: 1 1 auto;
	min-height: 0;
	padding: clamp(1.2rem, 4vw, 2rem);
	overflow-y: auto;
	overscroll-behavior: contain;
}
.modal-body > :first-child {
	margin-top: 0;
}
.modal-body > :last-child {
	margin-bottom: 0;
}
.modal-footer {
	z-index: 2;
	display: flex;
	flex: 0 0 auto;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.75rem;
	padding: 1rem clamp(1.2rem, 4vw, 2rem);
	border-top: 1px solid var(--og-color-border);
	background: color-mix(in srgb, var(--og-color-background) 82%, transparent);
	backdrop-filter: blur(16px);
}
.modal-footer--split {
	justify-content: space-between;
}
.modal-footer--controls form {
	display: inline-flex;
	margin: 0;
}
.modal-footer__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.75rem;
	margin-left: auto;
}
.modal-footer--controls .modal-footer__close {
	margin-left: 0;
}
.modal-footer__close {
	margin-left: auto;
}
.help-modal .modal-footer {
	justify-content: flex-start;
}
.help-modal .modal-footer__close {
	margin-left: 0;
}
.settings-modal {
	width: min(1280px, calc(100% - 2rem));
}
.entrypoint-edit-modal {
	width: min(760px, calc(100% - 2rem));
}
.help-modal__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
}
.help-modal__header h2 {
	margin-bottom: 0;
}
.help-modal .modal-body > p,
.help-notes {
	color: var(--og-color-text-secondary);
}
.help-code-sample {
	margin: 0.85rem 0 0;
	padding: 1rem;
	overflow: auto;
	border: 1px solid var(--og-color-border);
	border-radius: 0.7rem;
	background: var(--og-color-surface-raised);
	color: var(--og-color-text-primary);
	font-family: var(
		--og-font-family-mono,
		ui-monospace,
		SFMono-Regular,
		Menlo,
		monospace
	);
	font-size: 0.78rem;
	line-height: 1.55;
	text-align: left;
	white-space: pre;
}
.help-fields {
	gap: 0;
	margin: 0.75rem 0 1.5rem;
}
.help-fields > div {
	padding: 0.85rem 0;
	border-top: 1px solid var(--og-color-border);
}
.help-fields > div:last-child {
	border-bottom: 1px solid var(--og-color-border);
}
.help-fields dt {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	color: var(--og-color-text-primary);
	font-size: 0.8rem;
	text-transform: none;
}
.help-fields dd {
	color: var(--og-color-text-secondary);
	line-height: 1.5;
}
.field-requirement {
	display: inline-flex;
	padding: 0.16rem 0.4rem;
	border: 1px solid var(--og-color-border);
	border-radius: 999px;
	color: var(--og-color-text-secondary);
	font-size: 0.6rem;
	font-weight: 850;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.field-requirement--required {
	border-color: color-mix(in srgb, var(--og-color-accent) 48%, var(--og-color-border));
	color: var(--og-color-accent-hover);
}
.help-notes {
	padding-left: 1.2rem;
	line-height: 1.55;
}
.help-notes li + li {
	margin-top: 0.45rem;
}
.help-notes a {
	margin: 0 0.22rem;
	color: var(--og-color-accent-hover);
	font-weight: 750;
}


/* source: component-styles/OmniGenesisStandard/source/_documentation.scss */
.documentation-layout {
	display: grid;
	grid-template-columns: minmax(13rem, 17rem) minmax(0, 1fr);
	gap: clamp(1rem, 3vw, 2rem);
	align-items: start;
}
.documentation-sidebar {
	position: sticky;
	top: 0;
	margin-bottom: 0;
	padding: 1rem;
}
.documentation-topic-nav {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	margin-top: 0.75rem;
}
.documentation-topic-nav a {
	padding: 0.65rem 0.75rem;
	border-radius: 0.6rem;
	color: var(--og-color-text-secondary);
	font-size: 0.86rem;
	font-weight: 750;
	text-decoration: none;
}
.documentation-topic-nav a:hover,
.documentation-topic-nav a[aria-selected="true"] {
	background: var(--og-color-surface-raised);
	color: var(--og-color-accent-hover);
}
.documentation-main {
	min-width: 0;
}
.documentation-search-panel {
	display: grid;
	grid-template-columns: minmax(12rem, 0.8fr) minmax(14rem, 1.2fr);
	gap: 1rem;
	align-items: end;
}
.documentation-search-panel label span {
	display: block;
	margin-top: 0.3rem;
	color: var(--og-color-text-secondary);
	font-size: 0.8rem;
	font-weight: 500;
}
.documentation-search-results {
	margin-bottom: 1.2rem;
}
.documentation-result-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
	gap: 0.8rem;
}
.documentation-result-card {
	display: flex;
	min-height: 9rem;
	flex-direction: column;
	gap: 0.6rem;
	justify-content: space-between;
	padding: 1rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.85rem;
	background: linear-gradient(
		145deg,
		var(--og-color-glow),
		color-mix(in srgb, var(--og-color-glow) 88%, var(--og-color-surface-raised))
	);
	color: var(--og-color-text-primary);
	text-decoration: none;
}
.documentation-result-card:hover {
	border-color: color-mix(in srgb, var(--og-color-accent) 55%, var(--og-color-border));
	transform: translateY(-1px);
}
.documentation-result-card > span:last-child {
	color: var(--og-color-accent-hover);
	font-size: 0.8rem;
	font-weight: 800;
}
.documentation-topic {
	padding: clamp(1rem, 3vw, 2rem);
}
.documentation-topic-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.2rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--og-color-border);
}
.documentation-topic-header h2 {
	margin-bottom: 0;
}
.documentation-topic > p,
.documentation-topic .help-notes {
	color: var(--og-color-text-secondary);
}


/* source: component-styles/OmniGenesisStandard/source/_settings-operations.scss */
.checkbox {
	display: flex;
	align-items: center;
	gap: 0.6rem;
}
.checkbox input {
	width: auto;
}
.checkbox span {
	flex: 0 0 100%;
}
.transport-note {
	margin-top: 1rem;
	color: var(--og-color-text-secondary);
}
.preview-note {
	margin: 1.25rem 0;
	color: var(--og-color-text-secondary);
	font-size: 0.82rem;
}
[hidden] {
	display: none !important;
}
.logs-toolbar {
	display: grid;
	gap: 0.8rem;
	margin-bottom: 1rem;
}
.logs-toolbar p {
	max-width: 38rem;
	margin: 0;
}
.logs-toolbar form {
	display: inline-flex;
}
.logs-actions {
	flex-wrap: nowrap;
	justify-content: flex-start;
	overflow-x: auto;
}
.glyph-button--danger {
	border-color: color-mix(in srgb, var(--og-color-danger) 55%, var(--og-color-border));
	background: #5d202d;
	color: #fff;
}

.glyph-button--warning {
	border-color: color-mix(in srgb, var(--og-color-warning) 55%, var(--og-color-border));
	background: color-mix(in srgb, var(--og-color-warning) 16%, var(--og-color-surface));
	color: var(--og-color-warning);
}
.release-details {
	grid-template-columns: 1fr 1fr;
	margin: 1.25rem 0;
}
.upgrade-panel > form {
	margin-top: 1.5rem;
}
.update-status {
	display: grid;
	gap: 0.35rem;
	margin: 1.25rem 0;
	padding: 1rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.7rem;
	background: var(--og-color-background);
}
.update-status strong {
	color: var(--og-color-accent-hover);
	text-transform: uppercase;
}
.update-status span {
	color: var(--og-color-text-secondary);
	font-size: 0.82rem;
}
.update-status--failed strong {
	color: var(--og-color-danger);
}
.update-status--installing strong,
.update-status--queued strong {
	color: var(--og-color-warning);
}



/* source: component-styles/OmniGenesisStandard/source/_responsive.scss */
@media (max-width: 900px) {
	:root {
		--og-shell-sidebar-width: min(19rem, 85vw);
	}
	.app-shell,
	.sidebar-collapsed .app-shell {
		position: relative;
		grid-template-columns: minmax(0, 1fr);
	}
	.drawer-rail {
		position: absolute;
		inset: 0 auto 0 0;
	}
	.main {
		grid-area: 1 / 1;
		padding-top: clamp(3.75rem, 8vw, 4.5rem);
	}
	.documentation-layout {
		grid-template-columns: 1fr;
	}
	.documentation-sidebar {
		position: static;
	}
	.documentation-topic-nav {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
	}
}
@media (max-width: 680px) {
	body.auth-page {
		min-height: 100dvh;
		padding-bottom: 0;
	}
	.auth-page {
		display: block;
		padding: 0;
	}
	.auth-card,
	.auth-card--login,
	.auth-card--mfa {
		width: 100%;
		min-height: 100dvh;
		margin: 0;
		padding: clamp(1.25rem, 6vw, 2rem) clamp(1rem, 6vw, 2rem)
			calc(var(--og-shell-footer-height) + 1.25rem);
		border: 0;
		border-radius: 0;
		box-shadow: none;
		transform: none;
	}
	.section-heading,
	.panel-heading {
		align-items: flex-start;
		flex-direction: column;
	}
	.page-heading__rail {
		width: 100%;
	}
	.topbar {
		gap: 0.5rem;
		padding: 0.7rem 0.5rem;
	}
	.topbar .brand {
		gap: 0.45rem;
		min-width: 0;
	}
	.topbar .brand-mark {
		width: 3rem;
		height: 3rem;
	}
	.topbar .brand .eyebrow {
		display: none;
	}
	.topbar .brand strong {
		font-size: 1.1rem;
	}
	.header-actions {
		width: auto;
		margin-left: auto;
		gap: 0.25rem;
		justify-content: flex-end;
	}
	.header-actions .glyph-button {
		width: 2.35rem;
		height: 2.35rem;
		min-height: 2.35rem;
	}
	.main {
		padding-right: 0.75rem;
		padding-bottom: 1.5rem;
		padding-left: 0.75rem;
	}
	.panel {
		padding: 1rem;
	}
	.section-heading > .button,
	.panel-heading > .button {
		align-self: stretch;
		justify-content: center;
	}
	.form-grid,
	.checkbox-grid {
		grid-template-columns: 1fr;
	}
	.documentation-search-panel {
		grid-template-columns: 1fr;
	}
	.documentation-topic-header {
		align-items: flex-start;
		flex-direction: column;
	}
	.form-grid .full {
		grid-column: auto;
	}
	.metrics {
		grid-template-columns: repeat(2, 1fr);
	}
	.copy-field {
		grid-template-columns: 1fr;
	}
	.actions--split {
		flex-direction: column-reverse;
	}
	.modal-shell {
		width: calc(100% - 1rem);
		max-height: calc(100dvh - 1rem);
	}
	.modal-footer,
	.modal-footer--controls {
		align-items: stretch;
		flex-direction: column;
	}
	.modal-footer__actions,
	.modal-footer__actions > div {
		width: 100%;
		justify-content: stretch;
	}
	.modal-footer__actions button,
	.modal-footer__actions .button,
	.modal-footer__close {
		flex: 1 1 auto;
		justify-content: center;
	}
}
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
	}
}


/* source: component-styles/OmniGenesisStandard/source/_auth-brand-cutout.scss */
/* The card shell remains transparent; this masked layer leaves a real window to the page gradient. */
.auth-card--brand-cutout {
	--og-brand-cutout-gap: 1rem;
	--og-brand-cutout-inset: var(--og-brand-cutout-gap);
	--og-brand-mark-size: min(18rem, 72vw);
	--og-brand-cutout-width: calc(100% - (var(--og-brand-cutout-inset) * 2));
	--og-brand-cutout-height: calc(var(--og-brand-mark-size) + var(--og-brand-cutout-gap));
	--og-brand-cutout-radius: 1rem;
	position: relative;
	isolation: isolate;
	padding-top: calc(var(--og-brand-cutout-inset) + var(--og-brand-cutout-gap));
	background: transparent;
}
.auth-card--brand-cutout::before {
	content: "";
	position: absolute;
	z-index: 0;
	inset: 0;
	pointer-events: none;
	border-radius: inherit;
	background: var(--og-color-surface);
	-webkit-mask:
		linear-gradient(#000 0 0) 0 0 / 100% 100% no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 304' preserveAspectRatio='none'%3E%3Crect width='320' height='304' rx='16' fill='%23000'/%3E%3C/svg%3E")
			50% var(--og-brand-cutout-inset) / var(--og-brand-cutout-width) var(--og-brand-cutout-height) no-repeat;
	-webkit-mask-composite: xor;
	mask:
		linear-gradient(#000 0 0) 0 0 / 100% 100% no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 304' preserveAspectRatio='none'%3E%3Crect width='320' height='304' rx='16' fill='%23000'/%3E%3C/svg%3E")
			50% var(--og-brand-cutout-inset) / var(--og-brand-cutout-width) var(--og-brand-cutout-height) no-repeat;
	mask-composite: exclude;
}
.auth-card--brand-cutout::after {
	content: "";
	position: absolute;
	z-index: 2;
	top: var(--og-brand-cutout-inset);
	left: 50%;
	width: var(--og-brand-cutout-width);
	height: var(--og-brand-cutout-height);
	pointer-events: none;
	border: 1px solid var(--og-color-border);
	border-radius: var(--og-brand-cutout-radius);
	transform: translateX(-50%);
}
.auth-card--brand-cutout > * {
	position: relative;
	z-index: 1;
}
.auth-card--brand-cutout .brand-mark--large {
	width: var(--og-brand-mark-size);
	height: var(--og-brand-mark-size);
	margin: 0 auto;
}
.auth-card--brand-cutout .brand-mark--large + .eyebrow {
	margin-top: var(--og-brand-cutout-gap);
}
@media (max-height: 799px) and (min-width: 681px) {
	.auth-card--login.auth-card--brand-cutout {
		display: block;
		width: min(480px, calc(100% - 2rem));
	}
}

/* og: login-brand-entrance */
.auth-card--login.auth-card--brand-cutout .brand-mark--large {
	transform-origin: center;
	animation: og-auth-brand-mark-enter 2s cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes og-auth-brand-mark-enter {
	from {
		opacity: 0;
		transform: translateY(1.5rem) scale(0);
	}

	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.auth-card--login.auth-card--brand-cutout .brand-mark--large {
		animation: none;
	}
}
/* og: login-brand-entrance */


/* source: component-styles/OmniGenesisStandard/layout/__layout--manifest.scss */
/* OmniGenesis Standard structural layout manifest. */

/* source: component-styles/OmniGenesisStandard/layout/_page-layouts.scss */
/*
 * Canonical OmniGenesis main-content layout contract.
 *
 * Page manifests select these structural presets through the shared resolver.
 * Component appearance remains in library/ and color remains in color-schemes/.
 */

.main {
  width: 100%;
  height: 100%;
  min-width: 0;
  margin: 0;
  padding: clamp(1rem, 2vw, 2rem);
  overflow-y: auto;
}

.main > * {
  max-width: var(--og-content-max-width);
  margin-right: auto;
  margin-left: auto;
}

/* Compatibility for consumers that have not yet adopted page manifests. */
.main--narrow {
  width: 100%;
  max-width: none;
  margin: 0;
}

.main--narrow > * {
  max-width: 55rem;
}

/* Normal is the base preset and retains the established 1440px token. */
.page-layout,
.page-layout--normal {
  --og-page-content-width: var(--og-content-max-width);
}

.page-layout--wide {
  --og-page-content-width: 100%;
}

.page-layout--slim {
  --og-page-content-width: clamp(20rem, 72vw, 55rem);
}

.page-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  column-gap: var(--og-grid-gap);
  padding-inline: max(
    clamp(1rem, 2vw, 2rem),
    calc((100% - var(--og-page-content-width)) / 2)
  );
}

.page-layout > * {
  width: 100%;
  max-width: none;
  margin-right: 0;
  margin-left: 0;
}

.page-layout--sections-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.page-layout--sections-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.page-layout--sections-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.page-layout--sections-2 > *,
.page-layout--sections-3 > *,
.page-layout--sections-4 > * {
  grid-column: 1 / -1;
}

.page-layout__section--full {
  grid-column: 1 / -1;
}

.page-layout__section--column {
  grid-column: span 1;
}

.layout-grid,
.grid {
  display: grid;
  gap: var(--og-grid-gap);
}

.grid--auto {
  grid-template-columns: repeat(
    auto-fit,
    minmax(min(100%, var(--og-grid-min-column)), 1fr)
  );
}

.layout-grid--max-1,
.grid--cols-1 {
  grid-template-columns: minmax(0, 1fr);
}

.layout-grid--max-2,
.grid--cols-2 {
  grid-template-columns: repeat(
    auto-fit,
    minmax(
      min(
        100%,
        max(
          var(--og-grid-min-column),
          calc((100% - var(--og-grid-gap)) / 2)
        )
      ),
      1fr
    )
  );
}

.layout-grid--max-3,
.grid--cols-3 {
  grid-template-columns: repeat(
    auto-fit,
    minmax(
      min(
        100%,
        max(
          var(--og-grid-min-column),
          calc((100% - var(--og-grid-gap) - var(--og-grid-gap)) / 3)
        )
      ),
      1fr
    )
  );
}

.layout-grid--max-4,
.grid--cols-4 {
  grid-template-columns: repeat(
    auto-fit,
    minmax(
      min(
        100%,
        max(
          var(--og-grid-min-column),
          calc(
            (
                100% - var(--og-grid-gap) - var(--og-grid-gap) -
                  var(--og-grid-gap)
              ) /
              4
          )
        )
      ),
      1fr
    )
  );
}

.layout-grid--max-5,
.grid--cols-5 {
  grid-template-columns: repeat(
    auto-fit,
    minmax(
      min(
        100%,
        max(
          var(--og-grid-min-column),
          calc(
            (
                100% - var(--og-grid-gap) - var(--og-grid-gap) -
                  var(--og-grid-gap) - var(--og-grid-gap)
              ) /
              5
          )
        )
      ),
      1fr
    )
  );
}

.layout-grid--max-6,
.grid--cols-6 {
  grid-template-columns: repeat(
    auto-fit,
    minmax(
      min(
        100%,
        max(
          var(--og-grid-min-column),
          calc(
            (
                100% - var(--og-grid-gap) - var(--og-grid-gap) -
                  var(--og-grid-gap) - var(--og-grid-gap) -
                  var(--og-grid-gap)
              ) /
              6
          )
        )
      ),
      1fr
    )
  );
}

.layout-grid--split-4-8 {
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
}

.layout-grid--split-8-4 {
  grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
}

.layout-grid--split-3-9 {
  grid-template-columns: minmax(0, 3fr) minmax(0, 9fr);
}

.layout-grid--split-9-3 {
  grid-template-columns: minmax(0, 9fr) minmax(0, 3fr);
}

.layout-grid--split-5-7 {
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
}

.layout-grid--split-7-5 {
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
}

.layout-grid--split-3-6-3 {
  grid-template-columns: minmax(0, 3fr) minmax(0, 6fr) minmax(0, 3fr);
}

.layout-grid--split-2-8-2 {
  grid-template-columns: minmax(0, 2fr) minmax(0, 8fr) minmax(0, 2fr);
}

.layout-grid--split-3-3-6 {
  grid-template-columns: minmax(0, 3fr) minmax(0, 3fr) minmax(0, 6fr);
}

.layout-grid--split-6-3-3 {
  grid-template-columns: minmax(0, 6fr) minmax(0, 3fr) minmax(0, 3fr);
}

.tabs--horizontal {
  flex-direction: row;
}

.tabs--vertical {
  width: min(18rem, 100%);
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
}

.tabs--vertical > * {
  width: 100%;
  min-width: 0;
  justify-content: flex-start;
  text-align: left;
}

.tab-layout--vertical,
.page-layout:has(> .tabs--vertical),
.modal-body:has(> .tabs--vertical),
.theme-editor-panel:has(> .tabs--vertical) {
  display: grid;
  grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr);
  align-items: start;
  gap: var(--og-space-6);
}

.tab-layout--vertical > *,
.page-layout:has(> .tabs--vertical) > *,
.modal-body:has(> .tabs--vertical) > *,
.theme-editor-panel:has(> .tabs--vertical) > * {
  grid-column: 1 / -1;
}

.tab-layout--vertical > .tabs--vertical,
.page-layout > .tabs--vertical,
.modal-body > .tabs--vertical,
.theme-editor-panel > .tabs--vertical {
  grid-column: 1;
}

.tab-layout--vertical > .tabs--vertical ~ *,
.page-layout > .tabs--vertical ~ *,
.modal-body > .tabs--vertical ~ *,
.theme-editor-panel > .tabs--vertical ~ * {
  grid-column: 2;
}

@media (max-width: 64rem) {
  .page-layout--sections-2,
  .page-layout--sections-3,
  .page-layout--sections-4 {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 48rem) {
  .layout-grid--max-2,
  .layout-grid--max-3,
  .layout-grid--max-4,
  .layout-grid--max-5,
  .layout-grid--max-6,
  .grid--cols-2,
  .grid--cols-3,
  .grid--cols-4,
  .grid--cols-5,
  .grid--cols-6,
  .layout-grid--split-4-8,
  .layout-grid--split-8-4,
  .layout-grid--split-3-9,
  .layout-grid--split-9-3,
  .layout-grid--split-5-7,
  .layout-grid--split-7-5,
  .layout-grid--split-3-6-3,
  .layout-grid--split-2-8-2,
  .layout-grid--split-3-3-6,
  .layout-grid--split-6-3-3 {
    grid-template-columns: minmax(0, 1fr);
  }

  .tab-layout--vertical,
  .page-layout:has(> .tabs--vertical),
  .modal-body:has(> .tabs--vertical),
  .theme-editor-panel:has(> .tabs--vertical) {
    grid-template-columns: minmax(0, 1fr);
  }

  .tab-layout--vertical > *,
  .tab-layout--vertical > .tabs--vertical,
  .tab-layout--vertical > .tabs--vertical ~ *,
  .page-layout:has(> .tabs--vertical) > *,
  .modal-body:has(> .tabs--vertical) > *,
  .theme-editor-panel:has(> .tabs--vertical) > * {
    grid-column: 1;
  }

  .tabs--vertical {
    width: 100%;
    flex-direction: row;
    align-items: center;
    overflow-x: auto;
  }

  .tabs--vertical > * {
    width: auto;
    min-width: max-content;
    justify-content: center;
    text-align: center;
  }
}


/* source: component-styles/OmniGenesisStandard/library/__library--manifest.scss */
/* Standard component library extensions. */

/* source: component-styles/OmniGenesisStandard/library/_preset-bindings.scss */
/* Editable OmniGenesis preset bindings. */
:root {
  --og-theme-transition-duration: 0.35s;
}

body {
  font-family: var(--og-font-family-body);
}
h1,
h2,
h3 {
  font-family: var(--og-font-family-heading);
}
code,
pre,
kbd,
samp {
  font-family: var(--og-font-family-mono);
}
.drawer-rail {
  width: var(--og-shell-sidebar-width);
}
.sidebar {
  box-shadow: var(--og-sidebar-shadow);
}
.topbar {
  box-shadow: var(--og-header-shadow);
}
.button,
button {
  padding: var(--og-button-padding-y) var(--og-button-padding-x);
  border-radius: var(--og-button-radius);
  box-shadow: var(--og-button-shadow);
}
.glyph-button,
.sidebar-toggle {
  padding: 0;
  border-radius: 0.65rem;
  box-shadow: none;
}
input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),
select {
  box-sizing: border-box;
  height: var(--og-input-height);
  min-height: var(--og-input-height);
  border-radius: var(--og-input-radius);
  box-shadow: var(--og-input-shadow);
}
input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]) {
  padding: var(--og-input-padding-y) var(--og-input-padding-x);
}
th,
td {
  padding: var(--og-table-cell-padding-y) var(--og-table-cell-padding-x);
}
.panel,
.empty-state,
.auth-card,
.table-wrap,
.card {
  border-radius: var(--og-card-radius);
  box-shadow: var(--og-card-shadow);
}
.modal-shell,
.result-modal,
.settings-modal,
.entrypoint-edit-modal,
.media-action-modal,
.media-details-modal{
  border-radius: var(--og-modal-radius);
  box-shadow: var(--og-modal-shadow);
}
.tabs {
  gap: var(--og-tab-gap);
}
.tabs > * {
  border-radius: var(--og-tab-radius);
}
.alert {
  border-radius: var(--og-alert-radius);
}
.status,
.badge {
  border-radius: var(--og-badge-radius);
}


/* source: component-styles/OmniGenesisStandard/library/_standard-elements.scss */
/* Standardized OmniGenesis element classes.
   Application templates use these names in addition to any domain hook. */

.type-display {
  font-family: var(--og-font-family-heading);
  font-size: var(--og-font-size-heading);
  line-height: var(--og-line-height-heading);
}
.type-heading {
  font-family: var(--og-font-family-heading);
  font-weight: var(--og-font-weight-bold);
}
.type-body {
  font-size: var(--og-font-size-body);
  line-height: var(--og-line-height-body);
}
.type-caption,
.text-muted {
  color: var(--og-color-text-secondary);
  font-size: var(--og-font-size-sm);
}
.link {
  color: var(--og-color-accent-hover);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}
.link--muted {
  color: var(--og-color-text-secondary);
}
.link--action {
  font-weight: var(--og-font-weight-semibold);
}
.button--primary {
  border-color: var(--og-color-accent);
  background: var(--og-color-accent);
  color: var(--og-color-accent-contrast);
}
.button--secondary {
  border-color: var(--og-color-border);
  background: transparent;
  color: var(--og-color-text-primary);
}
.button--danger {
  border-color: color-mix(in srgb, var(--og-color-danger) 55%, var(--og-color-border));
  background: color-mix(in srgb, var(--og-color-danger) 22%, var(--og-color-surface));
  color: var(--og-color-danger);
}
.button--block {
  width: 100%;
}

.button--small {
  min-height: 2.125rem;
  padding: .4rem .65rem;
  font-size: var(--og-font-size-sm);
  line-height: 1.1;
}

.button--toolbar {
  min-height: var(--og-input-height);
  height: var(--og-input-height);
  padding: 0.3rem 0.75rem;
  font-size: var(--og-font-size-sm);
  line-height: 1;
  white-space: nowrap;
}

.button--icon {
  display: inline-grid;
  width: 2.5rem;
  height: 2.5rem;
  min-height: 2.5rem;
  padding: 0;
  place-items: center;
}

.button-group--joined {
  flex-wrap: nowrap;
  gap: 0;
}

.button-group--joined > :where(button, .button) {
  border-radius: 0;
}

.button-group--joined > :where(button, .button) + :where(button, .button) {
  margin-inline-start: calc(var(--og-border-width) * -1);
}

.button-group--joined > :where(button, .button):first-child {
  border-start-start-radius: var(--og-button-radius);
  border-end-start-radius: var(--og-button-radius);
}

.button-group--joined > :where(button, .button):last-child {
  border-start-end-radius: var(--og-button-radius);
  border-end-end-radius: var(--og-button-radius);
}

.button-group--joined > :where(button, .button):focus,
.button-group--joined > :where(button, .button):focus-visible {
  position: relative;
  z-index: 1;
}
.form {
  display: grid;
  gap: var(--og-space-4);
}
.form--grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.form-field {
  display: grid;
  gap: var(--og-space-2);
}
.form-field--full {
  grid-column: 1 / -1;
}

.filter-grid {
  display: grid;
  align-items: end;
  gap: 0.65rem;
  margin-bottom: var(--og-space-6);
  overflow-x: auto;
}

.filter-grid label {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: 0.35rem;
}

.filter-grid__clear {
  height: var(--og-input-height);
  min-height: var(--og-input-height);
  padding: 0.2rem var(--og-space-3);
  white-space: nowrap;
}

.filter-grid--cols-7 {
  grid-template-columns:
    minmax(9rem, 0.9fr)
    minmax(7rem, 0.65fr)
    minmax(8rem, 0.7fr)
    minmax(8rem, 0.7fr)
    minmax(11rem, 1.15fr)
    minmax(11rem, 1.2fr)
    auto;
}

.filter-grid--cols-5 {
  grid-template-columns:
    minmax(9rem, 0.9fr)
    minmax(7rem, 0.65fr)
    minmax(11rem, 1.15fr)
    minmax(11rem, 1.2fr)
    auto;
}
.form-control {
  width: 100%;
  border: var(--og-border-width) solid var(--og-color-border);
  background: var(--og-color-surface-raised);
  color: var(--og-color-text-primary);
}
.card {
  padding: var(--og-card-padding);
  border: var(--og-border-width) solid var(--og-color-border);
  background: linear-gradient(145deg, var(--og-color-glow), color-mix(in srgb, var(--og-color-glow) 88%, var(--og-color-surface-raised)));
}
.card--flat {
  box-shadow: none;
}

.panel--stack {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.panel--stack dd {
  overflow-wrap: anywhere;
}

.actions--bottom {
  margin-top: auto;
  padding-top: var(--og-space-4);
}

.actions--bottom > .button {
  min-width: 7rem;
}
.actions--section {
  margin-top: var(--og-space-4);
}

.card-grid,
.grid {
  gap: var(--og-grid-gap);
}
.table-container {
  overflow-x: auto;
  border: var(--og-border-width) solid var(--og-color-border);
  background: var(--og-color-surface);
}
.table {
  width: 100%;
  border-collapse: collapse;
}
.table--flat {
  border: 0;
  box-shadow: none;
}
.table--hierarchical {
  table-layout: fixed;
}
.table__header-row {
  color: var(--og-color-text-secondary);
}
.table__group-row,
.table__item-row {
  transition: background-color var(--og-motion-fast) ease;
}
.table__group-row:hover,
.table__item-row:hover {
  background: color-mix(in srgb, var(--og-color-accent) 9%, transparent);
}
.table__children-row > td {
  padding: 0;
  border: 0;
}
.table__children {
  min-width: 100%;
}
.table--nested {
  width: 100%;
  min-width: 0;
  margin: 0;
  border: 0;
}

.table__selection-column {
  display: none;
  width: 2.4rem;
  padding-right: 0;
  padding-left: 0.8rem;
  text-align: center;
}

.is-selection-mode .table__selection-column {
  display: table-cell;
}

.table__selection-column input {
  width: 1rem;
  height: 1rem;
  accent-color: var(--og-color-danger);
}

.table__group-row--emphasis > td {
  background: color-mix(
    in srgb,
    var(--og-color-surface-raised) 72%,
    var(--og-color-surface)
  );
  border-top: var(--og-border-width) solid var(--og-color-border);
  transition: background var(--og-motion-fast) ease;
}

.table__group-row--emphasis:hover > td,
.table__group-row--emphasis:focus-visible > td,
.table__group-row--emphasis:focus-within > td {
  background: color-mix(
    in srgb,
    var(--og-color-accent) 14%,
    var(--og-color-surface)
  );
}

.table__children-row--muted > td {
  background: color-mix(
    in srgb,
    var(--og-color-surface-raised) 42%,
    var(--og-color-surface)
  );
}

.table__children-mask {
  padding-bottom: var(--og-space-8);
}

.table--framed {
  width: 100%;
  border: var(--og-border-width) solid var(--og-color-border);
  border-radius: 0.55rem;
  background: var(--og-color-surface);
}

.table--framed th,
.table--framed td {
  background: transparent;
}

.table--framed tr:last-child td {
  border-bottom: 0;
}

.table__item-row--interactive {
  cursor: pointer;
}

.table__item-row--interactive > td {
  transition: background var(--og-motion-fast) ease;
}

.table__item-row--interactive:hover > td,
.table__item-row--interactive:focus-visible > td,
.table__item-row--interactive:focus-within > td {
  background: color-mix(
    in srgb,
    var(--og-color-accent) 12%,
    var(--og-color-surface)
  );
}

.table__expand-toggle {
  display: inline-grid;
  width: 2rem;
  height: 2rem;
  min-height: 2rem;
  padding: 0;
  place-items: center;
}
.table__sort-button {
  display: inline-flex;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
}
.drawer {
  background: var(--og-color-background);
  color: var(--og-color-text-primary);
}
.menu {
  display: flex;
  flex-direction: column;
}
.modal {
  width: min(var(--og-modal-max-width), calc(100% - 2rem));
  padding: 0;
  border: var(--og-border-width) solid var(--og-color-border);
  background: var(--og-color-surface);
  color: var(--og-color-text-primary);
}

.modal--narrow {
  width: min(
    var(--og-content-reading-max-width),
    calc(100% - (var(--og-space-4) * 2))
  );
}

.modal-shell::backdrop {
  background: rgb(5 2 7 / 72%);
  backdrop-filter: blur(4px);
}

dialog[open].modal-shell > form:only-child {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
}
.toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--og-space-3);
}
.toolbar--actions {
  justify-content: flex-end;
}
.header-actions.toolbar {
  flex-wrap: nowrap;
  gap: 0.55rem;
}
.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--og-tab-gap);
  width: 100%;
  padding: 0.35rem;
  border: var(--og-border-width) solid var(--og-color-border);
  border-radius: var(--og-tab-container-radius);
  background: var(--og-color-surface);
}

.tabs > * {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: max-content;
}

.tabs > :where(a, button, label),
.tabs__control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  padding: 0.65rem 0.8rem;
  border: 0;
  border-radius: var(--og-tab-radius);
  background: transparent;
  color: var(--og-color-text-secondary);
  font-size: 0.85rem;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
}

.tabs > :where(a, button, label) svg,
.tabs__control svg {
  width: 1.4rem;
  height: 1.4rem;
}

.tabs > :where(a, button, label).active,
.tabs__control.active {
  background: var(--og-color-surface-raised);
  color: var(--og-color-accent-hover);
}

.tabs--fixed-controls > :where(a, button, label) {
  flex: 0 0 5.75rem;
  width: 5.75rem;
  min-width: 5.75rem;
}

.animate-disclosure {
  display: grid;
  grid-template-rows: 1fr;
  opacity: 1;
  transition:
    grid-template-rows var(--og-motion-medium, 240ms) ease,
    opacity var(--og-motion-fast, 160ms) ease;
}

.animate-disclosure > * {
  min-height: 0;
  overflow: hidden;
}

.animate-disclosure.is-collapsed {
  grid-template-rows: 0fr;
  opacity: 0;
}

.disclosure-twirl {
  display: inline-grid;
  transition: transform var(--og-motion-fast, 160ms) ease;
  place-items: center;
  transform: rotate(90deg);
  transform-origin: center;
}

[aria-expanded="false"] > .disclosure-twirl {
  transform: rotate(0deg);
}

.tabs > a:hover,
.tabs > button:not(:disabled):hover,
.tabs > label:hover,
.tabs__control:not(:disabled):hover {
  background: color-mix(
    in srgb,
    var(--og-color-accent) 14%,
    var(--og-color-surface-raised)
  );
  color: var(--og-color-accent-hover);
}

.tabs__item {
  position: relative;
  min-width: 0;
}

.tabs__control {
  width: 100%;
  min-width: 0;
}

.tabs__action {
  position: absolute;
  top: 0.4rem;
  right: 0.4rem;
  bottom: 0.4rem;
  z-index: 1;
  min-height: 0;
  margin: 0;
  padding: 0.2rem 0.45rem;
  border: var(--og-border-width) solid var(--og-color-border);
  border-radius: 0.35rem;
  background: var(--og-color-surface);
  font-size: 0.72rem;
  line-height: 1;
}

.tabs__action[hidden] {
  display: none;
}

.tabs--equal {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
}

.tabs--equal > * {
  min-width: 0;
}

.tabs--auto {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
}

.tabs--auto > * {
  min-width: 0;
}

.tabs--cols-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tabs--cols-2 > * {
  min-width: 0;
}

.tabs--section {
  margin: var(--og-space-6) 0;
}

.tabs--choice {
  position: relative;
}

.tabs--choice legend {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.tabs--choice label {
  cursor: pointer;
}

.tabs--choice input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.tabs--choice label > span {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.tabs--choice input:focus-visible + span {
  outline: 2px solid var(--og-color-accent-hover);
  outline-offset: 4px;
}

.tabs--fill > * {
  flex: 1 1 auto;
}

.tabs--scroll {
  flex-wrap: nowrap;
  overflow-x: auto;
}

.tabs--scroll > * {
  flex: 0 0 auto;
}
/*
 * Shared onboarding and multi-step workflow presentation.
 */
.wizard-intro {
  margin-bottom: var(--og-space-8);
  text-align: center;
}

.wizard-intro > p {
  max-width: var(--og-content-reading-max-width);
  margin-right: auto;
  margin-left: auto;
  color: var(--og-color-text-secondary);
}

.value-pair {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: var(--og-space-4);
  margin-top: var(--og-space-6);
  padding: var(--og-space-4);
  border: var(--og-border-width) solid var(--og-color-border);
  border-radius: var(--og-card-radius);
  background: var(--og-color-surface);
  text-align: left;
}

.value-pair > div {
  min-width: 0;
}

.value-pair span {
  display: block;
  color: var(--og-color-text-secondary);
  font-size: var(--og-font-size-xs);
  font-weight: 800;
  text-transform: uppercase;
}

.value-pair strong {
  display: block;
  margin-top: 0.3rem;
  overflow-wrap: anywhere;
}

.stepper {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
  gap: var(--og-space-2);
  margin: 0 0 var(--og-space-6);
  padding: 0;
  list-style: none;
}

.stepper li {
  display: flex;
  align-items: center;
  gap: var(--og-space-2);
  padding: 0.7rem;
  border: var(--og-border-width) solid var(--og-color-border);
  border-radius: 0.7rem;
  color: var(--og-color-text-secondary);
  font-size: 0.75rem;
  font-weight: 800;
}

.stepper li > span {
  display: inline-grid;
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 50%;
  background: var(--og-color-surface-raised);
  place-items: center;
}

.stepper li[aria-current="step"] {
  border-color: var(--og-color-accent);
  color: var(--og-color-accent-hover);
}

.stepper li[aria-current="step"] > span {
  background: var(--og-color-accent);
  color: var(--og-color-accent-contrast);
}

.wizard-panel {
  max-width: var(--og-content-reading-max-width);
  margin-right: auto;
  margin-left: auto;
}

.wizard-panel > p {
  color: var(--og-color-text-secondary);
}

.instruction-list {
  margin: var(--og-space-4) 0;
  padding-left: 1.4rem;
  color: var(--og-color-text-secondary);
}

.instruction-list li + li {
  margin-top: 0.55rem;
}

.summary-callout {
  margin-bottom: var(--og-space-4);
  padding: 0.8rem var(--og-space-4);
  border: var(--og-border-width) solid var(--og-color-border);
  border-radius: 0.7rem;
  background: var(--og-color-surface);
}

.review-grid {
  margin-bottom: var(--og-space-6);
}

/*
 * Metric and supporting-content variants.
 */
/*
 * Compact inline statistics.
 */
.stat-grid--compact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px;
  max-width: 9rem;
  margin-top: 0.38rem;
}

.stat {
  min-width: 0;
  padding: 2px;
  border: var(--og-border-width) solid var(--og-color-border);
  border-radius: 0.25rem;
  background: color-mix(
    in srgb,
    var(--og-color-surface) 78%,
    var(--og-color-surface-raised)
  );
  color: var(--og-color-text-secondary);
  line-height: 1.05;
}

.stat strong,
.stat span {
  display: block;
}

.stat strong {
  color: var(--og-color-text-primary);
  font-size: 0.68rem;
}

.stat span {
  font-size: 0.5rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.stat--success {
  border-color: color-mix(
    in srgb,
    var(--og-color-success) 62%,
    var(--og-color-border)
  );
}

.stat--success strong {
  color: var(--og-color-success);
}

.stat--warning {
  border-color: color-mix(
    in srgb,
    var(--og-color-warning) 62%,
    var(--og-color-border)
  );
}

.stat--warning strong {
  color: var(--og-color-warning);
}

.metrics--cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--og-space-4);
}

.metrics--prominent > div {
  box-sizing: border-box;
  width: 100%;
  min-height: 0;
  padding: 1.2rem var(--og-space-4);
  aspect-ratio: 1;
  display: grid;
  place-content: center;
}

.metrics--prominent strong {
  font-size: 2.5rem;
}

.metrics--prominent span {
  font-size: 1rem;
}

.supporting-text {
  margin: -0.35rem 0 var(--og-space-4);
  color: var(--og-color-text-secondary);
  font-size: 0.75rem;
  line-height: 1.4;
}

/*
 * Read-only values and stacked table-cell content.
 */
.field-value {
  display: grid;
  gap: 0.4rem;
}

.field-value__label {
  color: var(--og-color-text-primary);
  font-weight: 700;
}

.field-value__text {
  margin: 0;
  color: var(--og-color-text-primary);
  line-height: 1.5;
}

.field-value__text--mono {
  font-family: var(--og-font-family-mono);
}

.table-cell--middle {
  vertical-align: middle;
}

.cell-stack {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  justify-content: center;
  gap: 0.28rem;
}

.cell-stack > * {
  display: block;
}

.cell-stack__secondary {
  color: var(--og-color-text-secondary);
  font-family: var(--og-font-family-mono);
  font-size: 0.72rem;
}

.detail-grid--center {
  margin-top: 0;
  text-align: center;
}

.definition-list--left {
  text-align: left;
}

.definition-list--cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: var(--og-space-6);
}

.status--section {
  margin-bottom: var(--og-space-4);
}

@media (max-width: 680px) {
  .definition-list--cols-2 {
    grid-template-columns: minmax(0, 1fr);
  }

  .tabs--stack-mobile {
    grid-template-columns: minmax(0, 1fr);
  }

  .value-pair {
    grid-template-columns: minmax(0, 1fr);
    text-align: center;
  }

  .value-pair > span {
    transform: rotate(90deg);
  }

  .stepper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/*
 * Centered standalone content shell.
 */
.content-shell {
  box-sizing: border-box;
  width: min(
    var(--og-content-shell-max-width),
    calc(100% - (var(--og-space-4) * 2))
  );
  margin: 0 auto;
  padding: clamp(var(--og-space-8), 6vw, 5rem) 0;
}

.app-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.app-sidebar {
  min-width: 0;
}
.app-main {
  min-width: 0;
}
.app-footer {
  text-align: center;
}
.help-modal.modal {
  width: min(720px, calc(100% - 2rem));
}
.result-modal.modal {
  width: min(912px, calc(100% - 2rem));
}
.settings-modal.modal {
  width: min(1280px, calc(100% - 2rem));
}
.entrypoint-edit-modal.modal{
  width: min(760px, calc(100% - 2rem));
}

/* Hierarchical tree-table extensions. */
.table--tree {
	--og-table-tree-row-inset: 0rem;
  --og-table-tree-indent: 1.35rem;
}

.table--tree .table__group-row,
.table--tree .table__item-row {
  position: relative;
}

.table--tree .table__group-row.is-drag-armed,
.table--tree .table__item-row.is-drag-armed {
  cursor: grab;
}

.table--tree .table__group-row.is-dragging,
.table--tree .table__item-row.is-dragging {
  opacity: 0.45;
}

.table--tree .table__group-row.is-drop-before,
.table--tree .table__item-row.is-drop-before {
  box-shadow: inset 0 2px 0 var(--og-color-accent);
}

.table--tree .table__group-row.is-drop-after,
.table--tree .table__item-row.is-drop-after {
  box-shadow: inset 0 -2px 0 var(--og-color-accent);
}

.table--tree .table__group-row.is-drop-inside {
  background: color-mix(in srgb, var(--og-color-accent) 12%, transparent);
}

.table__drag-preview {
  position: fixed;
  z-index: 1000;
  pointer-events: none;
  opacity: 0.9;
}

.table--tree [data-og-table-depth="1"] > :first-child {
  padding-inline-start: calc(var(--og-table-tree-row-inset) + (var(--og-table-tree-indent) * 1));
}

.table--tree [data-og-table-depth="2"] > :first-child {
  padding-inline-start: calc(var(--og-table-tree-row-inset) + (var(--og-table-tree-indent) * 2));
}

.table--tree [data-og-table-depth="3"] > :first-child {
  padding-inline-start: calc(var(--og-table-tree-row-inset) + (var(--og-table-tree-indent) * 3));
}

.table--tree [data-og-table-depth="4"] > :first-child {
  padding-inline-start: calc(var(--og-table-tree-row-inset) + (var(--og-table-tree-indent) * 4));
}

.table--tree [data-og-table-depth="5"] > :first-child {
  padding-inline-start: calc(var(--og-table-tree-row-inset) + (var(--og-table-tree-indent) * 5));
}

.table--tree [data-og-table-depth="6"] > :first-child {
  padding-inline-start: calc(var(--og-table-tree-row-inset) + (var(--og-table-tree-indent) * 6));
}

/* Joined field and action controls. */
.control-group {
  --og-control-group-action-width: 7.2rem;

  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
}

.control-group > :where(input, select, textarea, .form-control) {
  flex: 1 1 auto;
  min-width: 0;
}

.control-group > :where(button, .button, .glyph-button) {
  flex: 0 0 var(--og-control-group-action-width);
  width: var(--og-control-group-action-width);
  height: var(--og-input-height);
  min-width: 0;
  min-height: var(--og-input-height);
  justify-content: center;
  white-space: nowrap;
}

.control-group > * + * {
  margin-inline-start: calc(var(--og-border-width) * -1);
}

.control-group > :first-child {
  border-start-end-radius: 0;
  border-end-end-radius: 0;
}

.control-group > :not(:first-child):not(:last-child) {
  border-radius: 0;
}

.control-group > :last-child {
  border-start-start-radius: 0;
  border-end-start-radius: 0;
}

.control-group > input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.control-group > select {
  border-start-end-radius: 0;
  border-end-end-radius: 0;
}

.control-group > button,
.control-group > .button,
.control-group > .glyph-button {
  border-start-start-radius: 0;
  border-end-start-radius: 0;
}

.control-group > :focus,
.control-group > :focus-visible,
.control-group > :focus-within {
  position: relative;
  z-index: 1;
}

/* Public presentation page and shell. */
.presentation-page {
  min-height: 100vh;
  min-height: 100dvh;
  margin: 0;
  color: var(--og-color-text-primary);
}


.presentation-shell {
  box-sizing: border-box;
  width: min(
    var(--og-content-max-width),
    calc(100% - (var(--og-space-4) * 2))
  );
  margin: 0 auto;
  padding: var(--og-space-8) 0 var(--og-space-10);
}


.presentation-shell > header {
  display: grid;
  gap: var(--og-space-2);
  margin-bottom: var(--og-space-5);
}


.presentation-shell > header > * {
  margin: 0;
}


.presentation-shell > header h1 {
  font-family: var(--og-font-family-heading);
  font-size: clamp(1.35rem, 3vw, 2.2rem);
  font-weight: var(--og-font-weight-bold);
  line-height: var(--og-line-height-heading);
}


.presentation-shell > .media-player {
  border-radius: var(--og-card-radius);
  box-shadow: var(--og-shadow-lg);
}


@media (max-width: 680px) {
  .form--grid {
    grid-template-columns: 1fr;
  }
  .form-field--full {
    grid-column: auto;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_media-library.scss */
/* Shared OmniGenesis media-library feature pattern. */
.visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
.media-heading__actions {
	justify-content: flex-end;
}
.media-library-status {
	margin-bottom: 1rem;
}
.media-library-toolbar {
	align-items: end;
}
.thumbnail-size-control {
	min-width: min(100%, 10rem);
	text-align: right;
	margin: 0;
	padding: 0;
	border: 0;
}
.thumbnail-size-control legend {
	margin-bottom: 0.45rem;
	color: var(--og-color-text-secondary);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.segmented-control,
.segmented-thumbnail-size-control {
	display: inline-flex;
	align-items: end;
	gap: 0.25rem;
	padding: 0.25rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--og-color-background) 72%, transparent);
}
.segmented-control button {
	display: grid;
	align-items: center;
	justify-items: center;
	width: 5.5rem;
	height: 2.25rem;
	min-height: 1.5rem;
	padding: 0.4rem 0.8rem;
	border-color: transparent;
	background: transparent;
	color: var(--og-color-text-secondary);
	border-radius: 0.25rem;
}
.segmented-thumbnail-size-control button {
	display: grid;
	align-items: center;
	justify-items: center;
	width: 3.25rem;
	height: 2.25rem;
	min-height: 1.5rem;
	padding: 0.2rem 0.4rem;
	border-color: transparent;
	background: transparent;
	color: var(--og-color-text-secondary);
	border-radius: 0.25rem;
}
.thumbnail-size-swatch {
	display: block;
	border: 2px solid currentColor;
	border-radius: 0.2rem;
	background: color-mix(in srgb, var(--og-color-accent) 24%, transparent);
}
.thumbnail-size-swatch--small {
	width: 1.35rem;
	height: 0.8rem;
}
.thumbnail-size-swatch--medium {
	width: 2rem;
	height: 1.15rem;
}
.thumbnail-size-swatch--large {
	width: 2.7rem;
	height: 1.55rem;
}
.segmented-control button[aria-pressed="true"],
.segmented-thumbnail-size-control button[aria-pressed="true"],
.segmented-control button[aria-selected="true"],
.segmented-thumbnail-size-control button[aria-selected="true"],
.segmented-control button.active,
.segmented-thumbnail-size-control button.active {
	border-color: var(--og-color-border);
	background: var(--og-color-accent);
	color: var(--og-color-accent-contrast);
}
.media-library-table {
	--og-table-tree-row-inset: 1rem;
	--og-table-tree-indent: 1.5rem;
	table-layout: fixed;
}
.media-col-name {
	width: 48%;
}
.media-col-type {
	width: 9%;
}
.media-col-count {
	width: 10%;
}
.media-col-updated {
	width: 19%;
}
.media-col-actions {
	width: 14%;
}
.media-actions-heading,
.media-library-table td:last-child {
	text-align: right;
}
.media-group-row,
.media-item-row {
	cursor: grab;
}
.media-group-row:active,
.media-item-row:active {
	cursor: grabbing;
}
.media-group-row.is-drag-armed,
.media-item-row.is-drag-armed {
	cursor: grabbing;
}
.media-group-row,
.media-item-row,
.tracking-item-row {
	transition:
		background-color 160ms ease,
		box-shadow 160ms ease,
		opacity 160ms ease;
}
.media-group-row:hover,
.media-item-row:hover,
.tracking-item-row:hover {
	background: color-mix(in srgb, var(--og-color-accent) 9%, transparent);
}
.media-group-row.is-dragging,
.media-item-row.is-dragging {
	background: color-mix(in srgb, var(--og-color-accent) 22%, var(--og-color-surface));
	opacity: 0.78;
}
.media-drag-preview {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: -10000px;
	margin: 0;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-collapse: separate;
	border-radius: 0.7rem;
	background: var(--og-color-surface);
	opacity: 0.4;
	pointer-events: none;
}
.media-drag-preview tr,
.media-drag-preview td {
	background: var(--og-color-surface);
}
.media-group-row.is-drop-before,
.media-item-row.is-drop-before {
	box-shadow: inset 0 3px 0 var(--og-color-accent);
}
.media-group-row.is-drop-after,
.media-item-row.is-drop-after {
	box-shadow: inset 0 -3px 0 var(--og-color-accent);
}
.media-group-row.is-drop-inside,
.media-item-row.is-drop-inside {
	background: color-mix(in srgb, var(--og-color-accent) 16%, var(--og-color-surface));
	box-shadow: inset 0 0 0 3px var(--og-color-accent);
}
.media-library-panel.is-file-drag-over .media-library-table-wrap {
	outline: 3px dashed var(--og-color-accent);
	outline-offset: -3px;
}
.media-group-row.is-upload-drop-target {
	background: color-mix(in srgb, var(--og-color-accent) 22%, var(--og-color-surface));
	box-shadow: inset 0 0 0 3px var(--og-color-accent);
}
.media-expand-toggle {
	display: inline-grid;
	width: 2.25rem;
	height: 2.25rem;
	min-height: 0;
	margin-right: 0.4rem;
	padding: 0;
	place-items: center;
	border-color: transparent;
	background: transparent;
	color: var(--og-color-text-secondary);
}
.media-expand-toggle span {
	display: block;
	font-size: 1.4rem;
	line-height: 1;
	transition: transform 240ms ease;
}
.media-expand-toggle[aria-expanded="true"] span {
	transform: rotate(90deg);
}
.media-folder-name,
.media-item-link,
.media-item-summary {
	display: inline-flex;
	min-width: 0;
	align-items: center;
}
.media-folder-name {
	vertical-align: middle;
}
.media-folder-name > span:last-child:not(.media-folder-icon),
.media-item-summary {
	flex-direction: column;
	align-items: flex-start;
}
.media-folder-icon {
	display: block;
	flex: 0 0 auto;
	width: 1.65rem;
	height: 1.65rem;
	margin-right: 0.65rem;
	color: var(--og-color-accent);
}
.media-type-badge {
	min-width: 4.5rem;
	justify-content: center;
}
.media-item-link {
	gap: 0.8rem;
	color: inherit;
	text-decoration: none;
}
.media-item-link:hover strong {
	color: var(--og-color-accent);
}
.media-thumbnail {
	display: grid;
	flex: 0 0 auto;
	width: 6rem;
	aspect-ratio: 16 / 9;
	place-items: center;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 0.55rem;
	background: color-mix(in srgb, var(--og-color-background) 78%, transparent);
	color: var(--og-color-text-secondary);
	transition: width 220ms ease;
}
.media-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
[data-thumbnail-size="small"] .media-thumbnail {
	width: 6rem;
}
[data-thumbnail-size="medium"] .media-thumbnail {
	width: 8rem;
}
[data-thumbnail-size="large"] .media-thumbnail {
	width: 10rem;
}
.media-metadata-line {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 0.7rem;
	margin-top: 0.3rem;
	color: var(--og-color-text-secondary);
	font-size: 0.78rem;
}
.media-group-children > td {
	padding: 0;
	border: 0;
}
.media-children-shell {
	height: 0;
	overflow: hidden;
	opacity: 0;
	clip-path: inset(0 0 100% 0);
	transform: translateY(-0.45rem);
	transition:
		height 260ms ease,
		opacity 220ms ease,
		clip-path 260ms ease,
		transform 260ms ease;
}
.media-children-shell.is-expanded {
	opacity: 1;
	clip-path: inset(0);
	transform: translateY(0);
}
.media-library-table--nested {
	width: 100%;
	margin: 0;
	border: 0;
}
.media-library-table--nested tr {
	border-bottom: 1px solid var(--og-color-border);
}
.media-library-table--nested tr:last-child {
	border-bottom: 0;
}
.media-library-table--nested td {
	border-bottom: 0;
}
.media-library-more-row > td {
	padding: 0.7rem 1rem;
	text-align: center !important;
}
.media-library-load-more {
	min-width: 10rem;
}
.media-empty-folder {
	padding: 1rem 2rem !important;
	color: var(--og-color-text-secondary);
	font-style: italic;
}
.row-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.45rem;
}
.row-actions .button,
.row-actions button {
	min-height: 2.15rem;
	padding: 0.4rem 0.65rem;
	font-size: 0.78rem;
}
.danger-text {
	color: var(--og-color-danger) !important;
}
.media-row-action.glyph-button {
	display: inline-grid;
	width: 2.25rem;
	height: 2.25rem;
	min-height: 2.25rem;
	padding: 0;
	place-items: center;
	font-size: 1rem;
	text-decoration: none;
}
.media-upload-button.is-drag-over {
	border-style: dashed;
	border-color: var(--og-color-accent);
	background: transparent;
	color: var(--og-color-accent);
}
.media-action-modal {
	width: min(760px, calc(100% - 2rem));
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 1rem;
	background: var(--og-color-surface);
	color: var(--og-color-text-primary);
	box-shadow: 0 24px 80px rgb(0 0 0 / 45%);
}
.media-action-modal::backdrop,
.media-details-modal::backdrop {
	background: rgb(5 2 7 / 72%);
	backdrop-filter: blur(4px);
}
.media-upload-modal {
	width: min(900px, calc(100% - 2rem));
}
.media-folder-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.45rem;
}
.media-folder-breadcrumbs a {
	min-height: 2rem;
	padding: 0.35rem 0.7rem;
	font-size: 0.78rem;
	text-decoration: none;
}
.media-folder-breadcrumbs a + a::before {
	margin-right: 0.55rem;
	color: var(--og-color-text-secondary);
	content: "›";
}
.media-upload-single {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}
.media-upload-single > .full {
	grid-column: 1 / -1;
}
.media-upload-progress {
	grid-column: 1 / -1;
	height: 2px;
	margin: 0.2rem 0;
	padding: 0 2px;
	overflow: hidden;
	box-sizing: content-box;
	border-radius: 999px;
	background: color-mix(in srgb, var(--og-color-border) 76%, transparent);
}
.media-upload-progress__value {
	display: block;
	width: 0;
	height: 2px;
	border-radius: inherit;
	background: var(--og-color-accent);
	transition: width 140ms ease;
}
.media-upload-progress.is-processing .media-upload-progress__value {
	background: linear-gradient(90deg, var(--og-color-accent), var(--og-color-text-primary), var(--og-color-accent));
	background-size: 200% 100%;
	animation: media-upload-progress-processing 1.1s linear infinite;
}
@keyframes media-upload-progress-processing {
	to {
		background-position: -200% 0;
	}
}
.media-batch-upload {
	display: grid;
	grid-column: 1 / -1;
	gap: 0.8rem;
}
.media-batch-upload[hidden],
.media-upload-single[hidden] {
	display: none;
}
.media-batch-upload__heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}
.media-batch-upload__heading h3,
.media-batch-upload__heading p {
	margin: 0;
}
.media-batch-upload__heading p {
	color: var(--og-color-text-secondary);
	font-size: 0.78rem;
}
.media-batch-upload__queue {
	display: grid;
	gap: 0.75rem;
}
.media-batch-card {
	position: relative;
	display: grid;
	grid-template-columns: 8rem minmax(0, 1fr);
	gap: 1rem;
	padding: 0.85rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.8rem;
	background: color-mix(in srgb, var(--og-color-background) 68%, transparent);
	transition:
		background-color 160ms ease,
		border-color 160ms ease;
}
.media-batch-card__thumbnail {
	display: grid;
	align-content: start;
	gap: 0.45rem;
	margin: 0;
}
.media-batch-card__thumbnail-frame {
	display: grid;
	width: 100%;
	aspect-ratio: 16 / 9;
	place-items: center;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 0.55rem;
	background: #000;
	color: var(--og-color-text-secondary);
}
.media-batch-card__thumbnail-frame img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.media-batch-card__thumbnail figcaption {
	overflow-wrap: anywhere;
	color: var(--og-color-text-secondary);
	font-size: 0.7rem;
	line-height: 1.3;
}
.media-batch-card__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}
.media-batch-card__fields > .full {
	grid-column: 1 / -1;
}
.media-batch-card__fields textarea {
	min-height: 4.5rem;
}
.media-batch-card__fields .media-group-tree-field {
	max-height: 10rem;
	overflow-y: auto;
}
.media-batch-card__remove {
	position: absolute;
	top: 0.55rem;
	right: 0.55rem;
	width: 1.9rem;
	height: 1.9rem;
	min-height: 1.9rem;
	padding: 0;
}
.media-batch-card__compact {
	display: none;
	min-width: 0;
	align-self: center;
	gap: 0.45rem;
}
.media-batch-card__compact-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.75rem;
}
.media-batch-card__compact-heading strong {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.media-batch-card__status {
	flex: 0 0 auto;
	max-width: 48%;
	overflow: hidden;
	color: var(--og-color-text-secondary);
	font-size: 0.72rem;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.media-batch-card__progress {
	height: 3px;
	overflow: hidden;
	border-radius: 999px;
	background: color-mix(in srgb, var(--og-color-border) 76%, transparent);
}
.media-batch-card__progress-value {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: var(--og-color-accent);
	transition: width 140ms ease;
}
.media-batch-card.is-processing .media-batch-card__progress-value {
	background: linear-gradient(90deg, var(--og-color-accent), var(--og-color-text-primary), var(--og-color-accent));
	background-size: 200% 100%;
	animation: media-upload-progress-processing 1.1s linear infinite;
}
.media-batch-card.is-complete {
	border-color: color-mix(in srgb, var(--og-color-success) 55%, var(--og-color-border));
}
.media-batch-card.is-complete .media-batch-card__progress-value {
	background: var(--og-color-success);
}
.media-batch-card.is-failed {
	border-color: color-mix(in srgb, var(--og-color-danger) 65%, var(--og-color-border));
}
.media-batch-card.is-failed .media-batch-card__progress-value {
	background: var(--og-color-danger);
}
.media-upload-form.is-batch .media-upload-progress {
	position: sticky;
	z-index: 3;
	top: 0;
}
.media-upload-form.is-batch-started .media-batch-upload__heading button,
.media-upload-form.is-batch-started .media-batch-card__fields,
.media-upload-form.is-batch-started .media-batch-card__remove,
.media-upload-form.is-batch-started .media-batch-card__thumbnail figcaption,
.media-batch-card.has-started .media-batch-card__fields,
.media-batch-card.has-started .media-batch-card__remove,
.media-batch-card.has-started .media-batch-card__thumbnail figcaption {
	display: none;
}
.media-upload-form.is-batch-started .media-batch-card,
.media-batch-card.has-started {
	grid-template-columns: 5rem minmax(0, 1fr);
	padding: 0.65rem;
}
.media-upload-form.is-batch-started .media-batch-card__compact,
.media-batch-card.has-started .media-batch-card__compact {
	display: grid;
}
.media-file-drop-zone {
	display: grid;
	min-height: 9rem;
	place-items: center;
	gap: 0.75rem;
	padding: 1.5rem;
	border: 4px dashed var(--og-color-border);
	border-radius: 0.85rem;
	box-sizing: border-box;
	background: color-mix(in srgb, var(--og-color-background) 68%, transparent);
	color: var(--og-color-text-secondary);
	font-weight: 750;
	text-align: center;
	cursor: pointer;
	transition:
		border-color 160ms ease,
		background-color 160ms ease,
		color 160ms ease;
}
.media-file-drop-zone:hover,
.media-file-drop-zone.is-drag-over {
	border-color: var(--og-color-accent);
	background: color-mix(in srgb, var(--og-color-accent) 10%, transparent);
	color: var(--og-color-text-primary);
}
.media-file-drop-zone__preview {
	display: grid;
	width: min(30rem, 100%);
	place-items: center;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 0.65rem;
	background: #000;
}
.media-file-drop-zone__preview[hidden] {
	display: none;
}
.media-file-drop-zone__preview img {
	display: block;
	width: 100%;
	max-height: 17rem;
	object-fit: contain;
}
.media-file-drop-zone__label {
	display: block;
	max-width: 100%;
	overflow-wrap: anywhere;
}
@media (max-width: 680px) {
	.media-upload-single,
	.media-batch-card,
	.media-batch-card__fields {
		grid-template-columns: 1fr;
	}
	.media-batch-card__thumbnail {
		width: min(10rem, 100%);
	}
	.media-upload-form.is-batch-started .media-batch-card,
	.media-batch-card.has-started {
		grid-template-columns: 4.5rem minmax(0, 1fr);
	}
}
.media-details-modal {
	width: min(1120px, calc(100% - 2rem));
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 1rem;
	background: var(--og-color-surface);
	color: var(--og-color-text-primary);
	box-shadow: 0 24px 80px rgb(0 0 0 / 45%);
}

.media-thumbnail-tab {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}
.thumbnail-generator-body {
	display: grid;
	gap: 1.5rem;
}
.thumbnail-generator-body > .media-player {
	margin-block-end: 0.5rem;
}
.thumbnail-generator-actions {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 1.25rem;
}
.thumbnail-generator-actions .supporting-text {
	margin: 0;
}
.media-thumbnail-tab__actions {
	display: flex;
	justify-content: flex-end;
	gap: 0.75rem;
}
.thumbnail-candidate-list {
	--og-thumbnail-candidate-height: 8.5rem;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: stretch;
	position: relative;
	gap: 0.75rem;
	overflow: hidden;
	padding: 0.5rem;
	border: 1px solid var(--og-color-border);
	border-radius: 0.85rem;
	background: var(--og-color-surface-raised);
}
.thumbnail-candidate {
	min-width: 0;
	height: var(--og-thumbnail-candidate-height);
	padding: 0.2rem;
	border: 2px solid transparent;
	border-radius: 0.65rem;
	background: var(--og-color-surface);
	cursor: pointer;
}
.thumbnail-candidate:is(:hover, :focus-visible) {
	border-color: var(--og-color-accent);
	outline: none;
}
.thumbnail-candidate.is-selected {
	border-color: var(--og-color-accent);
	box-shadow: 0 0 0 0.18rem rgb(123 201 255 / 65%), 0 0 1.1rem rgb(123 201 255 / 65%);
	outline: none;
}
.thumbnail-candidate--placeholder {
	border: 1px dashed var(--og-color-border);
	background: color-mix(in srgb, var(--og-color-surface) 72%, transparent);
	cursor: default;
}
.thumbnail-candidate img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 0.4rem;
	object-fit: cover;
}
.thumbnail-candidate--arriving img {
	opacity: 0;
}
.thumbnail-candidate--departing {
	position: absolute;
	z-index: 2;
	margin: 0;
	pointer-events: none;
}
.thumbnail-capture-flight {
	position: fixed;
	z-index: 10001;
	top: 0;
	left: 0;
	display: block;
	border: 2px solid var(--og-color-accent);
	border-radius: 0.65rem;
	object-fit: cover;
	box-shadow: 0 0 0 0.18rem rgb(123 201 255 / 65%), 0 0 1.1rem rgb(123 201 255 / 65%);
	pointer-events: none;
	will-change: transform;
}
@media (max-width: 42rem) {
	.thumbnail-generator-actions {
		align-items: flex-start;
		flex-direction: column;
	}
	.media-thumbnail-tab__actions {
		justify-content: flex-start;
	}
}
.media-details-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
}
.media-details-header h2,
.media-details-header p {
	margin-bottom: 0;
}
.media-details-body {
	display: block;
}
.media-details-body > * + * {
	margin-top: 1.25rem;
}
.media-player {
	position: relative;
	width: 100%;
	min-width: 0;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border: 1px solid var(--og-color-border);
	border-radius: 0.85rem;
	background: #000;
}
.media-player__frame,
.media-player__video {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	border: 0;
	background: #000;
}
.media-player__video {
	object-fit: contain;
}
[data-media-view] {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem;
	min-width: 0;
}
.media-details-body > *,
[data-media-view] > * {
	min-width: 0;
}
.media-title-block h3 {
	margin-bottom: 0.35rem;
	font-size: clamp(1.35rem, 2.5vw, 2rem);
}
.media-detail-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
}
.media-detail-grid > .panel {
	margin-bottom: 0;
}
.media-detail-side-column {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 1rem;
}
.media-detail-side-column > .panel {
	margin-bottom: 0;
}
.detail-panel--relations {
	flex: 1 1 auto;
}
.media-downloads-card {
	flex: 0 0 auto;
}
.media-download-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
	gap: 0.65rem;
}
.media-download-button {
	min-width: 0;
	min-height: 2.15rem;
	padding: 0.4rem 0.55rem;
	font-size: 0.74rem;
	line-height: 1.25;
	text-align: center;
}
.media-detail-grid dl,
.media-detail-grid dl > div {
	display: grid;
	gap: 0.25rem;
}
.media-detail-grid dl {
	gap: 0.9rem;
}
.media-detail-grid dt {
	color: var(--og-color-text-secondary);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.media-detail-grid dd {
	margin: 0;
}
.media-tracking-table {
	min-width: 680px;
}
.media-tracking-table th:first-child {
	width: 44%;
}
.media-tracking-row > td {
	padding-bottom: 0.55rem;
	border-bottom: 0;
}
.media-tracking-url-row > td {
	padding-top: 0;
}
.media-tracking-url {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 0.75rem;
}
.media-tracking-url__label {
	color: var(--og-color-text-secondary);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.media-tracking-url__copy.copy-field {
	min-width: 0;
	grid-template-columns: minmax(0, 1fr) auto;
}
.media-tracking-url__copy.copy-field button {
	width: auto;
	min-width: 5.25rem;
	padding-right: 0.9rem;
	padding-left: 0.9rem;
}
.media-checkbox-list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	gap: 0.55rem;
	max-height: 14rem;
	padding: 1rem;
	overflow: auto;
	border: 1px solid var(--og-color-border);
	border-radius: 0.75rem;
}
.media-checkbox-list legend {
	padding: 0 0.4rem;
	font-weight: 700;
}
.media-checkbox-list .checkbox {
	margin: 0;
}
.media-group-tree-field {
	display: block;
}
.media-group-tree,
.media-group-tree ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.media-group-tree__node + .media-group-tree__node {
	margin-top: 0.25rem;
}
.media-group-tree__row {
	display: flex;
	min-height: 2rem;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.35rem;
	border-radius: 0.4rem;
}
.media-group-tree__row:hover {
	background: color-mix(in srgb, var(--og-color-accent) 9%, transparent);
}
.media-group-tree__toggle,
.media-group-tree__spacer {
	display: inline-grid;
	flex: 0 0 1.75rem;
	width: 1.75rem;
	height: 1.75rem;
	min-height: 0;
	padding: 0;
	place-items: center;
}
.media-group-tree__toggle {
	border-color: transparent;
	background: transparent;
	color: var(--og-color-text-secondary);
}
.media-group-tree__toggle span {
	transition: transform 160ms ease;
}
.media-group-tree__toggle[aria-expanded="true"] span {
	transform: rotate(90deg);
}
.media-group-tree__row .checkbox {
	display: inline-flex;
	min-width: 0;
	align-items: center;
	gap: 0.45rem;
}
.media-group-tree__row .media-folder-icon {
	margin: 0;
	width: 1.25rem;
	height: 1.25rem;
}
.media-group-tree__children {
	margin-left: 1.35rem;
	padding-left: 0.45rem;
	border-left: 1px solid var(--og-color-border);
}

.tracking-items-table {
	min-width: 860px;
}
.tracking-item-toggle {
	display: flex;
	width: 100%;
	min-height: 0;
	align-items: center;
	gap: 0.65rem;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	text-align: left;
}
.tracking-item-toggle > span:first-child {
	transition: transform 160ms ease;
}
.tracking-item-toggle[aria-expanded="true"] > span:first-child {
	transform: rotate(90deg);
}
.tracking-item-toggle > span:last-child {
	display: grid;
	gap: 0.2rem;
}
.tracking-item-toggle small {
	color: var(--og-color-text-secondary);
}
.tracking-item-links > td {
	padding: 0;
	border-bottom: 1px solid var(--og-color-border);
}
.tracking-item-links__panel {
	padding: 1.15rem;
	background: color-mix(in srgb, var(--og-color-background) 42%, transparent);
}
.tracking-item-links__panel .table-wrap {
	margin-top: 0.75rem;
}

@media (max-width: 900px) {
	.media-heading,
	.media-library-toolbar,
	.media-details-header {
		align-items: stretch;
		flex-direction: column;
	}
	.media-heading__actions {
		justify-content: flex-start;
	}
	.media-library-table {
		min-width: 760px;
	}
	.media-detail-grid {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.media-expand-toggle span,
	.media-children-shell,
	.media-thumbnail {
		transition: none;
	}
}


/* source: component-styles/OmniGenesisStandard/library/_management-patterns.scss */
/* Shared management, catalog, and editor presentation patterns. */
.application-card-grid,
.theme-pair-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
}
.application-card,
.theme-mode-card {
	color: inherit;
	text-decoration: none;
}
.application-card__identity {
	display: flex;
	flex-direction: column;
	align-items: start;
	gap: 0.35rem;
	margin-bottom: 1rem;
	text-align: left;
}
.application-card__icon {
	display: grid;
	min-height: 5rem;
	place-items: center;
	margin-bottom: 0.75rem;
}
.application-card__icon img {
	max-width: 100%;
	height: auto;
	display: block;
	object-fit: contain;
}
.application-card__identity span,
.theme-mode-card span {
	display: block;
	color: var(--og-color-text-secondary);
}
.application-card__details {
	display: grid;
	grid-template-columns: 3fr 2fr;
	gap: var(--og-grid-gap);
	margin: 0;
}
.application-card__details:first-child {
	padding: 1rem;
	margin-bottom: 2rem;
	border-radius: 0.85rem;
	background:
		linear-gradient(
			145deg,
			color-mix(in srgb, var(--og-color-glow) 60%, transparent),
			color-mix(
				in srgb,
				color-mix(in srgb, var(--og-color-glow) 88%, var(--og-color-surface-raised))
					60%,
				transparent
			)
		),
		var(--og-color-background);
}
.application-card__details:first-child
	> .application-card__detail-column:last-child {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.application-card__details:nth-of-type(2)
	> .application-card__detail-column:first-child {
	padding-left: 1rem;
}
.application-card__detail-column {
	min-width: 0;
}
.application-card__detail-column dt {
	color: var(--og-color-text-secondary);
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.application-card__detail-column dd {
	margin: 0.15rem 0 0.85rem;
	overflow-wrap: anywhere;
}
.theme-pair-card__modes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--og-grid-gap);
}
.theme-mode-card {
	display: grid;
	gap: 0.35rem;
	padding: var(--og-card-padding);
	border: var(--og-border-width) solid var(--og-color-border);
	border-radius: var(--og-card-radius);
	background: var(--og-color-surface-raised);
}
.theme-editor {
	display: grid;
	gap: var(--og-space-4);
}
.theme-editor-panel,
.component-editor-panel {
	display: grid;
	gap: var(--og-space-4);
}
.color-control-grid,
.shadow-presets {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	gap: var(--og-grid-gap);
}
.shadow-preset {
	display: grid;
	gap: var(--og-space-3);
}
.showcase-tabs,
.catalog-tabs {
	margin-bottom: 1rem;
}
.showcase-panel[hidden],
.catalog-panel[hidden] {
	display: none;
}
.class-catalog {
	display: grid;
	gap: var(--og-grid-gap);
}
.class-catalog__item {
	display: grid;
	grid-template-columns: minmax(12rem, 0.35fr) minmax(0, 1fr);
	gap: var(--og-grid-gap);
}
.class-catalog__item code {
	align-self: start;
}
@media (max-width: 680px) {
	.theme-pair-card__modes,
	.class-catalog__item {
		grid-template-columns: 1fr;
	}
}


/* source: component-styles/OmniGenesisStandard/library/_data-workspaces.scss */
/* Shared data, workflow, and utility composition. Applications provide content only. */
[hidden] {
	display: none !important;
}

.workspace-root,
.provider-results {
	display: grid;
	min-width: 0;
	gap: var(--og-grid-gap, 1rem);
}

.quick-actions,
.widget-controls,
.data-toolbar,
.pagination,
.filter-bar,
.provider-result {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--og-space-3, 0.75rem);
}

.quick-actions,
.dashboard-quick-actions {
	margin-bottom: var(--og-space-4, 1rem);
}

.quick-actions {
	justify-content: flex-start;
	width: fit-content;
	max-width: 100%;
	overflow-x: auto;
}

.page-heading {
	align-items: flex-end;
}

.page-heading__rail {
	display: grid;
	flex: 0 1 auto;
	justify-items: end;
	gap: var(--og-space-2, 0.5rem);
}

.page-heading__rail > .actions,
.page-heading__quick-actions {
	justify-content: flex-end;
	margin: 0;
}

.page-heading__quick-actions {
	width: auto;
}

.panel--section-heading {
	margin-bottom: var(--og-space-2, 0.5rem);
	padding: 0.75rem 1rem;
}

.panel--section-heading .panel-heading {
	align-items: center;
	margin: 0;
}

.panel--section-heading .kicker {
	margin-bottom: 0.2rem;
}

.panel--section-heading h2 {
	margin: 0;
	font-size: clamp(1.2rem, 2vw, 1.55rem);
}

.panel--section-heading :where(button, .button) {
	min-height: var(--og-input-height);
	padding: 0.35rem 0.75rem;
	font-size: var(--og-font-size-sm);
}

.panel--toolbar {
	padding: 0.75rem;
}

.panel--toolbar > :last-child {
	margin-bottom: 0;
}

.filter-bar label {
	display: grid;
	min-width: 10rem;
	align-self: stretch;
	align-content: end;
	gap: 0.3rem;
}

.filter-bar .search-field {
	flex: 1 1 16rem;
}

.panel--toolbar .filter-bar {
	align-items: end;
	gap: var(--og-space-2, 0.5rem);
}

.panel--toolbar .data-toolbar {
	width: 100%;
	min-height: calc(var(--og-input-height) + 0.7rem);
	margin-top: var(--og-space-2, 0.5rem);
	padding: 0.35rem;
	flex-wrap: nowrap;
	border: var(--og-border-width) solid var(--og-color-border);
	border-radius: var(--og-tab-container-radius);
	background: var(--og-color-surface);
}

.data-toolbar__view-slot {
	display: flex;
	min-width: 0;
	flex: 1 1 auto;
}

.data-toolbar .view-switcher {
	width: auto;
	padding: 0;
	flex-wrap: nowrap;
	border: 0;
	background: transparent;
}

.data-toolbar > .button-group {
	flex: 0 0 auto;
	margin-inline-start: auto;
}

.workspace-root > .workspace-tabs {
	margin-bottom: 0;
}

.workspace-root > .workspace-tabs + [data-detail-content] {
	margin-top: calc(var(--og-space-2, 0.5rem) * -1);
}

.table tr[data-record-id] {
	cursor: pointer;
	transition: background-color var(--og-transition-fast, 120ms) ease;
}

.table tr[data-record-id]:hover,
.table tr[data-record-id]:focus-visible {
	background: color-mix(in srgb, var(--og-color-accent) 9%, transparent);
	outline: none;
}

.table th[data-sort-field] {
	position: relative;
	padding-right: 1.75rem;
	cursor: pointer;
	user-select: none;
}

.table th[data-sort-field]::after {
	position: absolute;
	right: 0.65rem;
	content: "↕";
	color: var(--og-color-text-secondary);
	font-size: 0.8em;
}

.table th[aria-sort="ascending"]::after {
	content: "↑";
	color: var(--og-color-accent);
}

.table th[aria-sort="descending"]::after {
	content: "↓";
	color: var(--og-color-accent);
}

.table .subtask-label {
	padding-left: 2rem;
}

.table .row-actions {
	white-space: nowrap;
}

.table .row-actions > :where(button, .button) {
	opacity: 0;
	transition: opacity var(--og-transition-fast, 120ms) ease;
}

.table tr:hover .row-actions > :where(button, .button),
.table tr:focus-within .row-actions > :where(button, .button) {
	opacity: 1;
}

.menu-editor {
	display: grid;
	gap: var(--og-space-3, 0.75rem);
}

.menu-editor__section,
.menu-editor__item {
	display: grid;
	gap: var(--og-space-3, 0.75rem);
	padding: var(--og-space-3, 0.75rem);
	border: var(--og-border-width) solid var(--og-color-border);
	border-radius: var(--og-card-radius, 0.65rem);
	background: color-mix(in srgb, var(--og-color-surface-raised) 78%, transparent);
}

.menu-editor__section[draggable="true"],
.menu-editor__item[draggable="true"] {
	cursor: grab;
}

.menu-editor__section.is-dragging,
.menu-editor__item.is-dragging {
	opacity: 0.5;
}

.menu-editor__section-header,
.menu-editor__item {
	grid-template-columns: minmax(10rem, 1fr) minmax(12rem, 2fr) auto;
	align-items: end;
}

.menu-editor__section-header > label,
.menu-editor__item > label {
	display: grid;
	gap: 0.3rem;
}

.menu-editor__items {
	display: grid;
	gap: var(--og-space-2, 0.5rem);
	padding-inline-start: var(--og-space-4, 1rem);
}

.menu-editor__item {
	background: var(--og-color-surface);
}

.menu-editor__controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--og-space-2, 0.5rem);
}

.status-chip[data-state="done"],
.status-chip[data-state="completed"] {
	color: var(--og-color-success);
}

.status-chip[data-state="blocked"],
.priority-chip[data-state="urgent"] {
	color: var(--og-color-danger);
}

.status-chip[data-state="overdue"],
.priority-chip[data-state="high"] {
	color: var(--og-color-warning);
}

.workspace-tabs {
	margin-bottom: var(--og-space-4, 1rem);
	overflow-x: auto;
}

.workspace-tabs button {
	white-space: nowrap;
}

.workflow-section {
	min-width: 0;
	margin: 0;
	padding: var(--og-space-4, 1rem);
	border: 1px solid var(--og-color-border);
	border-radius: var(--og-card-radius, 0.5rem);
}

.workflow-section > legend {
	padding: 0 var(--og-space-2, 0.5rem);
	font-weight: 700;
}

.workflow-editor-tabs {
	margin-bottom: var(--og-space-4, 1rem);
}

.workflow-editor-sections {
	display: block;
}

.workflow-editor-sections > .workflow-section {
	width: 100%;
}

.workflow-collection {
	display: grid;
	grid-column: 1 / -1;
	gap: var(--og-space-3, 0.75rem);
	padding: var(--og-space-3, 0.75rem);
	border: 1px solid var(--og-color-border);
	border-radius: var(--og-card-radius, 0.5rem);
	background: color-mix(in srgb, var(--og-color-surface-raised) 72%, transparent);
}

.workflow-collection__items {
	display: grid;
	gap: var(--og-space-3, 0.75rem);
}

.workflow-builder-card {
	margin: 0;
	padding: var(--og-space-3, 0.75rem);
}

.workflow-builder-card .panel-heading {
	align-items: flex-start;
}

.template-library-heading .panel-heading {
	align-items: flex-start;
}

.template-library-heading .button-group {
	justify-content: flex-end;
}

.template-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
}

.template-card {
	display: flex;
	flex-direction: column;
	gap: var(--og-space-3, 0.75rem);
}

.template-card > .button-group {
	margin-top: auto;
}

.template-wizard.modal {
	width: min(920px, calc(100% - 2rem));
}

.template-wizard .modal-body {
	display: grid;
	gap: var(--og-space-4, 1rem);
}

.template-wizard [data-template-wizard-error] {
	margin: 0 var(--og-space-6, 1.5rem) var(--og-space-4, 1rem);
}

.onboarding-packet,
.onboarding-steps {
	display: grid;
	gap: var(--og-space-3, 0.75rem);
}

.onboarding-steps {
	margin: 0;
	padding: 0;
	list-style: none;
}

.onboarding-steps > li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--og-space-4, 1rem);
	padding: var(--og-space-3, 0.75rem);
	border: 1px solid var(--og-color-border);
	border-radius: var(--og-card-radius, 0.5rem);
}

.onboarding-steps > li > span:first-child {
	display: grid;
	gap: var(--og-space-1, 0.25rem);
}

.workflow-checkbox > span,
.workflow-combo__options label,
.workflow-phone__control {
	display: flex;
	align-items: center;
	gap: var(--og-space-2, 0.5rem);
}

.workflow-checkbox input,
.workflow-combo__options input {
	width: auto;
}

.workflow-combo__options {
	display: grid;
	max-height: 12rem;
	gap: var(--og-space-2, 0.5rem);
	overflow: auto;
	padding: var(--og-space-2, 0.5rem) 0;
}

.workflow-filter-select {
	display: grid;
	min-width: 0;
	gap: var(--og-space-2, 0.5rem);
}

.workflow-phone__control select {
	flex: 0 1 16rem;
}

.workflow-phone__control input[type="tel"] {
	flex: 1 1 14rem;
}

.workflow-phone__control .iti {
	flex: 1 1 20rem;
	width: 100%;
}

.contact-thumbnail {
	display: inline-block;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	object-fit: cover;
	background: var(--og-color-surface-raised);
}

.integration-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--og-space-3, 0.75rem);
}

.integration-row > span:first-child {
	display: grid;
	gap: 0.2rem;
}

.integration-row small {
	color: var(--og-color-text-secondary);
}

.editor-json {
	min-height: 8rem;
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.import-preview-table {
	max-height: 22rem;
	overflow: auto;
}

.conflict-row {
	color: var(--og-color-warning);
}

.invalid-row {
	color: var(--og-color-danger);
}

.toast-region {
	position: fixed;
	z-index: 1000;
	right: 1rem;
	bottom: 1rem;
	display: grid;
	max-width: min(28rem, calc(100vw - 2rem));
	gap: 0.5rem;
}

.toast {
	padding: 0.8rem 1rem;
	border: 1px solid var(--og-color-border);
	border-left: 0.25rem solid var(--og-color-accent);
	border-radius: var(--og-card-radius, 0.5rem);
	background: var(--og-color-surface);
	box-shadow: var(--og-shadow-elevated);
}

@media (max-width: 48rem) {
	.page-heading,
	.page-heading__rail {
		align-items: stretch;
		justify-items: stretch;
	}

	.page-heading__rail > .actions,
	.page-heading__quick-actions {
		justify-content: flex-start;
	}

	.panel--toolbar .data-toolbar {
		flex-wrap: wrap;
	}

	.menu-editor__section-header,
	.menu-editor__item {
		grid-template-columns: 1fr;
	}

	.table .row-actions > :where(button, .button) {
		opacity: 1;
	}
}

@media print {
	.app-header,
	.drawer-rail,
	.quick-actions,
	.app-footer,
	.toast-region {
		display: none !important;
	}

	.app-shell,
	.main {
		display: block;
		margin: 0;
		padding: 0;
	}

	.panel,
	.table-wrap {
		box-shadow: none;
		break-inside: avoid;
	}
}


/* source: component-styles/OmniGenesisStandard/library/_project-workspace.scss */
/* Reusable project imagery and task workspace composition. */
.project-banner,
.media-banner {
  display: block;
  width: 100%;
  height: 20rem;
  margin: 0 0 var(--og-space-5, 1.5rem);
  border-radius: var(--og-card-radius, .5rem);
  object-fit: cover;
  object-position: center;
}

.task-modal {
  width: min(76rem, calc(100vw - 2rem));
}

.task-workspace {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
  gap: var(--og-grid-gap, 1rem);
}

.task-workspace__main,
.task-workspace__meta {
  display: grid;
  align-content: start;
  gap: var(--og-grid-gap, 1rem);
}

.task-workspace__meta dl,
.task-workspace__meta dl > div {
  display: grid;
  gap: var(--og-space-1, .25rem);
}

.task-workspace__meta dl > div {
  padding: var(--og-space-2, .5rem) 0;
  border-bottom: 1px solid var(--og-color-border);
}

.task-section > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--og-space-3, .75rem);
}

.discussion-thread {
  display: grid;
  gap: var(--og-space-3, .75rem);
}

@media (max-width: 48rem) {
  .project-banner,
  .media-banner {
    height: 14rem;
  }

  .task-workspace {
    grid-template-columns: 1fr;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_dashboard-builder.scss */
/* Twelve-column dashboard builder; shared behavior supplies placement values. */
.dashboard-grid {
  --og-dashboard-row-size: 5rem;
  position: relative;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: var(--og-dashboard-row-size);
  grid-auto-flow: row;
  gap: var(--og-grid-gap, 1rem);
  min-height: calc(var(--og-dashboard-row-size) * 3);
  margin-bottom: var(--og-space-5, 1.5rem);
}

.dashboard-widget {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: auto;
  transition: border-color var(--og-transition-fast, 120ms) ease,
    box-shadow var(--og-transition-fast, 120ms) ease,
    opacity var(--og-transition-fast, 120ms) ease;
}

.dashboard-grid[data-dashboard-editing="true"] .dashboard-widget {
  cursor: grab;
  border-color: color-mix(in srgb, var(--og-color-accent) 45%, var(--og-color-border));
  touch-action: none;
  user-select: none;
}

.dashboard-grid[data-dashboard-editing="true"] .dashboard-widget:active {
  cursor: grabbing;
}

.dashboard-widget.dragging {
  z-index: 4;
  opacity: .68;
  transform: rotate(1deg) scale(1.01);
  box-shadow: var(--og-shadow-elevated);
}

.dashboard-widget.resizing {
  z-index: 5;
  user-select: none;
}

.dashboard-resize-handle {
  position: absolute;
  z-index: 3;
  right: .35rem;
  bottom: .35rem;
  width: 1.15rem;
  height: 1.15rem;
  padding: 0;
  border: 0;
  border-right: 2px solid var(--og-color-accent);
  border-bottom: 2px solid var(--og-color-accent);
  border-radius: 0;
  background: transparent;
  cursor: nwse-resize;
}

.dashboard-resize-handle::before {
  position: absolute;
  right: .25rem;
  bottom: .25rem;
  width: .4rem;
  height: .4rem;
  border-right: 1px solid var(--og-color-accent);
  border-bottom: 1px solid var(--og-color-accent);
  content: "";
}

.layout-drop-slot,
.dashboard-drop-placeholder {
  position: absolute;
  z-index: 2;
  border: 2px solid color-mix(in srgb, var(--og-color-accent) 88%, white);
  border-radius: var(--og-card-radius, .5rem);
  background: color-mix(in srgb, var(--og-color-accent) 8%, transparent);
  box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--og-color-accent) 18%, transparent),
    0 0 1.5rem color-mix(in srgb, var(--og-color-accent) 62%, transparent);
  pointer-events: none;
  animation: dashboard-drop-pulse 900ms ease-in-out infinite alternate;
}

.layout-drop-slot[hidden],
.dashboard-drop-placeholder[hidden] {
  display: none;
}

@keyframes dashboard-drop-pulse {
  to {
    background: color-mix(in srgb, var(--og-color-accent) 17%, transparent);
    box-shadow: 0 0 0 .28rem color-mix(in srgb, var(--og-color-accent) 26%, transparent),
      0 0 2rem color-mix(in srgb, var(--og-color-accent) 78%, transparent);
  }
}

@media (max-width: 64rem) {
  .dashboard-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .dashboard-widget {
    grid-column: span 6 !important;
  }
}

@media (max-width: 40rem) {
  .dashboard-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }

  .dashboard-widget {
    grid-column: 1 !important;
    grid-row: auto !important;
    min-height: 12rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dashboard-drop-placeholder {
    animation: none;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_reorder-board.scss */
/* Page-agnostic grouped reordering; behavior is supplied by shared. */
.reorder-board {
  display: grid;
  gap: var(--og-space-6, 2rem);
}

.reorder-group {
  position: relative;
  min-height: 6rem;
  border: 1px solid transparent;
  border-radius: var(--og-card-radius, .75rem);
  transition: border-color var(--og-transition-fast, 120ms) ease,
    box-shadow var(--og-transition-fast, 120ms) ease;
}

.reorder-group[data-drop-active="true"] {
  border-color: color-mix(in srgb, var(--og-color-accent) 72%, var(--og-color-border));
  box-shadow: 0 0 1.5rem color-mix(in srgb, var(--og-color-accent) 22%, transparent);
}

.reorder-item[draggable="true"] {
  cursor: grab;
  transition: opacity var(--og-transition-fast, 120ms) ease,
    transform var(--og-transition-fast, 120ms) ease;
}

.reorder-item[draggable="true"]:active {
  cursor: grabbing;
}

.reorder-item.dragging {
  opacity: .45;
  transform: scale(.985);
}

.reorder-placeholder {
  width: min(100%, var(--og-reorder-slot-width, 100%));
  min-height: var(--og-reorder-slot-height, 6rem);
  border: 2px solid color-mix(in srgb, var(--og-color-accent) 88%, white);
  border-radius: var(--og-card-radius, .75rem);
  background: color-mix(in srgb, var(--og-color-accent) 8%, transparent);
  box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--og-color-accent) 18%, transparent),
    0 0 1.5rem color-mix(in srgb, var(--og-color-accent) 62%, transparent);
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .reorder-item,
  .reorder-group {
    transition: none;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_content-editor.scss */
/* Shared rich-text editor presentation; editing behavior lives in shared. */
.rich-text-editor {
  overflow: hidden;
  border: 1px solid var(--og-color-border);
  border-radius: var(--og-card-radius, .75rem);
  background: var(--og-color-surface);
}

.rich-text-editor__toolbar {
  position: sticky;
  z-index: 2;
  top: 0;
  gap: var(--og-space-2, .5rem);
  padding: var(--og-space-2, .5rem);
  border-bottom: 1px solid var(--og-color-border);
  background: color-mix(in srgb, var(--og-color-surface-raised) 92%, transparent);
  backdrop-filter: blur(12px);
}

.rich-text-editor__group {
  gap: .15rem;
}

.rich-text-editor__button,
.rich-text-editor__code {
  width: 2.25rem;
  height: 2.25rem;
  min-height: 2.25rem;
  border-radius: .45rem;
  font-size: .9rem;
}

.rich-text-editor__code {
  width: 3rem;
  margin-left: auto;
  font-family: var(--og-font-family-mono, ui-monospace, monospace);
  font-size: .72rem;
}

.rich-text-editor__code[aria-pressed="true"] {
  border-color: var(--og-color-accent);
  color: var(--og-color-accent-hover);
  box-shadow: 0 0 1rem color-mix(in srgb, var(--og-color-accent) 28%, transparent);
}

.rich-text-editor__select {
  margin: 0;
}

.rich-text-editor__select select {
  width: auto;
  min-width: 7.5rem;
  margin: 0;
  padding: .55rem 2rem .55rem .65rem;
}

.rich-text-editor__surface,
.rich-text-editor__source {
  width: 100%;
  min-height: 12rem;
  margin: 0;
  padding: var(--og-space-4, 1rem);
  border: 0;
  border-radius: 0;
  background: var(--og-color-surface);
  color: var(--og-color-text-primary);
  line-height: 1.6;
  outline: 0;
}

.rich-text-editor__surface:focus,
.rich-text-editor__source:focus {
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--og-color-accent) 72%, transparent);
}

.rich-text-editor__source {
  resize: vertical;
  font-family: var(--og-font-family-mono, ui-monospace, monospace);
  font-size: .82rem;
  tab-size: 2;
  white-space: pre;
}

.rich-text-editor__surface .table-container,
.rich-text-content .table-container {
  margin: var(--og-space-4, 1rem) 0;
}

.rich-text-content > :last-child,
.rich-text-editor__surface > :last-child {
  margin-bottom: 0;
}

@media (max-width: 48rem) {
  .rich-text-editor__toolbar {
    position: static;
  }

  .rich-text-editor__code {
    margin-left: 0;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_presentation-homepage.scss */
/* Public presentation homepage and its matching management preview. */
.presentation-page {
  height: auto;
  display: block;
  overflow: auto;
  padding-bottom: 0;
}

.presentation-homepage-header {
  display: grid;
  justify-items: center;
  gap: var(--og-space-2, .5rem);
  max-width: var(--og-content-reading-max-width, 52rem);
  margin: 0 auto var(--og-space-8, 3rem);
  text-align: center;
}

.presentation-homepage-header > * {
  margin: 0;
}

.presentation-homepage-header .rich-text-content {
  width: 100%;
  margin-top: var(--og-space-3, .75rem);
  color: var(--og-color-text-secondary);
}

.presentation-homepage-section + .presentation-homepage-section {
  margin-top: var(--og-space-9, 4rem);
}

.presentation-homepage-section__heading {
  margin-bottom: var(--og-space-4, 1rem);
}

.presentation-homepage-featured {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--og-grid-gap, 1rem);
}

.presentation-media-card {
  min-width: 0;
  margin: 0;
}

.presentation-media-card .media-player,
.presentation-media-list__visual {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  margin-bottom: var(--og-space-3, .75rem);
  border-radius: var(--og-card-radius, .75rem);
  background: var(--og-color-surface-raised);
}

.presentation-media-card .media-player a,
.presentation-media-list__visual a {
  display: block;
  width: 100%;
  height: 100%;
}

.presentation-media-card img,
.presentation-media-list__visual img,
.presentation-media-list__visual video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.presentation-media-card h3,
.presentation-media-list h3 {
  margin-bottom: var(--og-space-2, .5rem);
}

.presentation-media-card h3 a,
.presentation-media-list h3 a {
  text-decoration: none;
}

.presentation-homepage-list {
  display: grid;
  gap: var(--og-grid-gap, 1rem);
}

.presentation-media-list {
  display: grid;
  grid-template-columns: minmax(16rem, 40%) minmax(0, 1fr);
  align-items: start;
  gap: var(--og-space-5, 1.5rem);
  margin: 0;
}

.presentation-media-list__visual {
  max-height: 18rem;
  margin: 0;
}

.presentation-media-list__content {
  display: grid;
  align-content: start;
  gap: var(--og-space-2, .5rem);
}

.presentation-media-list__content > * {
  margin: 0;
}

.presentation-media-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--og-space-2, .5rem);
  color: var(--og-color-text-secondary);
  font-size: .78rem;
}

.presentation-homepage-editor[hidden],
.presentation-homepage-preview[hidden] {
  display: none;
}

.presentation-homepage-editor .reorder-group {
  padding: var(--og-space-3, .75rem);
}

@media (max-width: 48rem) {
  .presentation-homepage-featured,
  .presentation-media-list {
    grid-template-columns: 1fr;
  }

  .presentation-media-list__visual {
    max-height: none;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_kanban.scss */
/* Compact, sortable Kanban board. */
.kanban-board {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  align-items: start;
  gap: var(--og-grid-gap, 1rem);
  overflow-x: auto;
}

.kanban-column {
  min-width: 0;
  padding: var(--og-space-3, .75rem);
  border: 1px solid var(--og-color-border);
  border-radius: var(--og-card-radius, .5rem);
  background: color-mix(in srgb, var(--og-color-surface-raised) 72%, transparent);
  transition: border-color var(--og-transition-fast, 120ms) ease,
    background var(--og-transition-fast, 120ms) ease;
}

.kanban-column[data-drop-active="true"] {
  border-color: var(--og-color-accent);
  background: color-mix(in srgb, var(--og-color-accent) 8%, var(--og-color-surface-raised));
}

.kanban-list {
  display: grid;
  min-height: 4rem;
  align-content: start;
  gap: var(--og-space-2, .5rem);
}

.kanban-card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-areas:
    "thumb title actions"
    "thumb meta actions";
  align-items: center;
  gap: .25rem .55rem;
  min-height: 3.5rem;
  padding: .55rem .65rem;
  border: 1px solid var(--og-color-border);
  border-radius: calc(var(--og-card-radius, .5rem) * .8);
  background: var(--og-color-surface);
  box-shadow: var(--og-shadow-subtle);
  cursor: grab;
  transition: border-color var(--og-transition-fast, 120ms) ease,
    box-shadow var(--og-transition-fast, 120ms) ease,
    transform var(--og-transition-fast, 120ms) ease,
    opacity var(--og-transition-fast, 120ms) ease;
}

.kanban-card:hover,
.kanban-card:focus-within {
  border-color: color-mix(in srgb, var(--og-color-accent) 55%, var(--og-color-border));
  box-shadow: var(--og-shadow-elevated);
}

.kanban-card h3 {
  grid-area: title;
  margin: 0;
  overflow: hidden;
  font-size: .92rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.kanban-card__thumbnail {
  grid-area: thumb;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: .4rem;
  object-fit: cover;
  background: var(--og-color-surface-raised);
}

.kanban-card__meta {
  grid-area: meta;
  display: flex;
  min-width: 0;
  align-items: center;
  gap: .35rem;
  overflow: hidden;
  color: var(--og-color-text-secondary);
  font-size: .78rem;
  white-space: nowrap;
}

.kanban-card__actions {
  grid-area: actions;
  display: flex;
  opacity: 0;
  transform: translateX(.25rem);
  transition: opacity var(--og-transition-fast, 120ms) ease,
    transform var(--og-transition-fast, 120ms) ease;
}

.kanban-card:hover .kanban-card__actions,
.kanban-card:focus-within .kanban-card__actions {
  opacity: 1;
  transform: translateX(0);
}

.kanban-card__actions button {
  min-width: 2rem;
  min-height: 2rem;
  padding: .25rem;
}

.kanban-card.dragging {
  z-index: 4;
  opacity: .62;
  transform: rotate(2deg) scale(1.015);
  cursor: grabbing;
}

.kanban-card--settled {
  animation: kanban-settle 220ms cubic-bezier(.2, .8, .2, 1);
}

.kanban-placeholder {
  min-height: 3.5rem;
  border: 2px dashed var(--og-color-accent);
  border-radius: calc(var(--og-card-radius, .5rem) * .8);
  background: color-mix(in srgb, var(--og-color-accent) 8%, transparent);
}

@keyframes kanban-settle {
  from { transform: scale(.97); }
  to { transform: scale(1); }
}

@media (max-width: 48rem) {
  .kanban-board {
    grid-template-columns: repeat(4, minmax(16rem, 82vw));
  }

  .kanban-card__actions {
    opacity: 1;
    transform: none;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_calendar.scss */
/* Semantic month calendar; applications supply events and relationships. */
.calendar {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--og-color-border);
  border-radius: var(--og-card-radius, .5rem);
  background: var(--og-color-surface);
}

.calendar-toolbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--og-space-2, .5rem);
  padding: var(--og-space-4, 1rem);
  border-bottom: 1px solid var(--og-color-border);
}

.calendar-toolbar h2 {
  margin: 0;
  text-align: center;
}

.calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.calendar-weekday {
  padding: var(--og-space-2, .5rem);
  border-right: 1px solid var(--og-color-border);
  border-bottom: 1px solid var(--og-color-border);
  color: var(--og-color-text-secondary);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-align: center;
  text-transform: uppercase;
}

.calendar-day {
  min-height: 8.5rem;
  padding: var(--og-space-2, .5rem);
  border-right: 1px solid var(--og-color-border);
  border-bottom: 1px solid var(--og-color-border);
  background: var(--og-color-surface);
}

.calendar-day:nth-child(7n),
.calendar-weekday:nth-child(7n) {
  border-right: 0;
}

.calendar-day--outside {
  background: color-mix(in srgb, var(--og-color-surface-raised) 65%, transparent);
  color: var(--og-color-text-secondary);
}

.calendar-day--today {
  box-shadow: inset 0 0 0 2px var(--og-color-accent);
}

.calendar-day time {
  display: block;
  margin-bottom: var(--og-space-2, .5rem);
  font-weight: 700;
}

.calendar-events {
  display: grid;
  gap: .25rem;
}

.calendar-event {
  display: block;
  width: 100%;
  min-height: auto;
  padding: .3rem .4rem;
  overflow: hidden;
  border: 0;
  border-left: 3px solid var(--og-color-accent);
  border-radius: .25rem;
  background: color-mix(in srgb, var(--og-color-accent) 12%, var(--og-color-surface-raised));
  color: var(--og-color-text-primary);
  font-size: .78rem;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 48rem) {
  .calendar {
    overflow-x: auto;
  }

  .calendar-toolbar,
  .calendar-grid {
    min-width: 44rem;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_gantt.scss */
/* Interactive project timeline with bars, milestones, and dependency paths. */
.gantt-shell {
  min-width: 0;
  overflow-x: auto;
}

.gantt {
  position: relative;
  display: grid;
  grid-template-columns: minmax(14rem, 18rem) minmax(48rem, 1fr);
  min-width: 64rem;
  margin-top: var(--og-space-4, 1rem);
  border: 1px solid var(--og-color-border);
  border-radius: var(--og-card-radius, .5rem);
  background: var(--og-color-surface);
}

.gantt-axis-heading {
  z-index: 2;
  padding: var(--og-space-3, .75rem);
  border-right: 1px solid var(--og-color-border);
  border-bottom: 1px solid var(--og-color-border);
  background: var(--og-color-surface-raised);
  font-weight: 700;
}

.gantt-axis,
.gantt-track {
  display: grid;
  grid-template-columns: repeat(var(--og-gantt-days), minmax(1.75rem, 1fr));
}

.gantt-axis {
  border-bottom: 1px solid var(--og-color-border);
  background: var(--og-color-surface-raised);
}

.gantt-axis-day {
  display: grid;
  place-items: center;
  min-width: 0;
  padding: .35rem .1rem;
  border-right: 1px solid color-mix(in srgb, var(--og-color-border) 65%, transparent);
  color: var(--og-color-text-secondary);
  font-size: .72rem;
}

.gantt-axis-day--week {
  border-left: 1px solid var(--og-color-border);
  color: var(--og-color-text-primary);
}

.gantt-rows {
  display: grid;
  grid-column: 1 / -1;
}

.gantt-row {
  display: grid;
  grid-template-columns: minmax(14rem, 18rem) minmax(48rem, 1fr);
  min-height: 3.5rem;
  border-bottom: 1px solid var(--og-color-border);
}

.gantt-row:last-child {
  border-bottom: 0;
}

.gantt-row.dragging {
  opacity: .55;
}

.gantt-row-heading {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-content: center;
  gap: .1rem .45rem;
  padding: .45rem .65rem;
  border-right: 1px solid var(--og-color-border);
}

.gantt-row-heading strong,
.gantt-row-heading small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gantt-row-heading small {
  grid-column: 2;
  color: var(--og-color-text-secondary);
}

.gantt-row-grip {
  grid-row: 1 / span 2;
  align-self: center;
  min-width: 1.6rem;
  min-height: 2rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--og-color-text-secondary);
  cursor: grab;
}

.gantt-track {
  position: relative;
  align-items: center;
  background-image: repeating-linear-gradient(to right,
    transparent 0,
    transparent calc((100% / var(--og-gantt-days)) - 1px),
    color-mix(in srgb, var(--og-color-border) 55%, transparent) calc((100% / var(--og-gantt-days)) - 1px),
    color-mix(in srgb, var(--og-color-border) 55%, transparent) calc(100% / var(--og-gantt-days)));
}

.gantt-bar {
  position: relative;
  z-index: 2;
  display: grid;
  grid-column: var(--og-gantt-start) / span var(--og-gantt-span);
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  min-width: 1.25rem;
  height: 1.8rem;
  overflow: visible;
  border: 1px solid color-mix(in srgb, var(--og-color-accent) 70%, var(--og-color-border));
  border-radius: 999px;
  background: color-mix(in srgb, var(--og-color-accent) 22%, var(--og-color-surface));
  color: var(--og-color-text-primary);
  transform: translateX(calc(var(--og-gantt-preview-offset, 0) * 100% / var(--og-gantt-span)));
  cursor: grab;
  touch-action: none;
}

.gantt-bar--editing {
  z-index: 5;
  opacity: .78;
  cursor: grabbing;
}

.gantt-bar > span {
  overflow: hidden;
  padding: 0 .35rem;
  font-size: .75rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gantt-resize {
  width: .65rem;
  min-width: .65rem;
  height: 1.35rem;
  min-height: 0;
  padding: 0;
  border: 0;
  background: color-mix(in srgb, currentColor 32%, transparent);
  cursor: ew-resize;
  touch-action: none;
}

.gantt-resize--start {
  border-radius: 999px 0 0 999px;
}

.gantt-resize--end {
  border-radius: 0 999px 999px 0;
}

.gantt-dependency-port {
  width: .65rem;
  min-width: .65rem;
  height: .65rem;
  min-height: 0;
  padding: 0;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: var(--og-color-accent);
  cursor: crosshair;
}

.gantt-milestone {
  z-index: 2;
  grid-column: var(--og-gantt-start);
  justify-self: center;
  width: 1.25rem;
  min-width: 1.25rem;
  height: 1.25rem;
  min-height: 1.25rem;
  padding: 0;
  border: 2px solid var(--og-color-accent);
  border-radius: .15rem;
  background: var(--og-color-surface);
  transform: rotate(45deg);
  cursor: grab;
}

.gantt-dependencies {
  position: absolute;
  z-index: 3;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.gantt-dependencies path {
  fill: none;
  stroke: var(--og-color-accent);
  stroke-width: 1.5;
  vector-effect: non-scaling-stroke;
}

@media (prefers-reduced-motion: reduce) {
  .gantt-bar {
    transition: none;
  }
}


/* source: component-styles/OmniGenesisStandard/library/_appearance-picker.scss */
/* Shared first-use and settings appearance chooser. */
fieldset.appearance-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .75rem;
  margin: 0;
  padding: 0;
  border: 0;
}

.appearance-choice-grid legend {
  margin-bottom: 1rem;
  color: var(--og-color-text-secondary);
  font-size: .85rem;
}

.appearance-choice {
  display: grid;
  min-height: 6rem;
  grid-template-columns: auto 5rem minmax(0, 1fr);
  align-content: center;
  align-items: center;
  gap: .2rem .55rem;
  padding: .9rem;
  border: 1px solid var(--og-color-border);
  border-radius: .75rem;
  background: var(--og-color-surface);
  cursor: pointer;
}

.appearance-choice input {
  width: auto;
  grid-row: span 2;
}

.appearance-choice > strong,
.appearance-choice > span:not(.appearance-choice__preview) {
  grid-column: 3;
}

.appearance-choice__preview {
  position: relative;
  grid-column: 2;
  grid-row: 1 / span 2;
  width: 5rem;
  height: 3.5rem;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--og-color-text-primary) 22%, transparent);
  border-radius: .55rem;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 8%);
}

.appearance-choice__sample {
  position: absolute;
  inset: 0;
  display: block;
}

.appearance-choice__preview--paired .appearance-choice__sample:first-child {
  z-index: 1;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}

.appearance-choice:has(input:checked) {
  outline: 2px solid var(--og-color-accent);
  outline-offset: 1px;
}

.appearance-choice__sample:first-child {
  background: color-mix(in srgb, var(--og-color-accent) 35%, var(--og-color-surface));
}

.appearance-choice__sample:last-child {
  background: color-mix(in srgb, var(--og-color-accent) 12%, var(--og-color-surface-raised));
}

@media (max-width: 48rem) {
  fieldset.appearance-choice-grid {
    grid-template-columns: 1fr;
  }
}


/* source: fallback/_fallback.scss */
/*
 * OmniGenesis standalone fallback overrides.
 *
 * Base presentation is the current OmniGenesis Standard component preset.
 * Colors are a static snapshot of Graphite (dark) and Chalk (light).
 * Fallback deliberately removes rounded corners and motion.
 */

/* Graphite */
:root,
[data-theme-mode="dark"],
[data-prism-mode="dark"] {
  --og-color-accent: #b9e6cc;
  --og-color-accent-contrast: #0c1610;
  --og-color-accent-hover: #b9e6cc;
  --og-color-background: #101112;
  --og-color-border: #454a50;
  --og-color-border-strong: #b2b6ba;
  --og-color-danger: #ffc0c0;
  --og-color-focus: #b9e6cc;
  --og-color-glow: #303438;
  --og-color-info: #b9e6cc;
  --og-color-overlay: #000000;
  --og-color-success: #8ce2bb;
  --og-color-surface: #1b1d20;
  --og-color-surface-muted: #272a2e;
  --og-color-surface-raised: #272a2e;
  --og-color-text-inverse: #0c1610;
  --og-color-text-primary: #f1f2f3;
  --og-color-text-secondary: #b2b6ba;
  --og-color-warning: #f4d99b;
  --og-focus-ring: 3px solid #b9e6cc;
  color-scheme: dark;
}

/* Chalk */
[data-theme-mode="light"],
[data-prism-mode="light"] {
  --og-color-accent: #386b53;
  --og-color-accent-contrast: #ffffff;
  --og-color-accent-hover: #386b53;
  --og-color-background: #f8f7f2;
  --og-color-border: #d7d3c8;
  --og-color-border-strong: #68645b;
  --og-color-danger: #a83b3b;
  --og-color-focus: #386b53;
  --og-color-glow: #e7e2d4;
  --og-color-info: #386b53;
  --og-color-overlay: #000000;
  --og-color-success: #1d6b4e;
  --og-color-surface: #ffffff;
  --og-color-surface-muted: #eeece5;
  --og-color-surface-raised: #eeece5;
  --og-color-text-inverse: #ffffff;
  --og-color-text-primary: #25231e;
  --og-color-text-secondary: #68645b;
  --og-color-warning: #815d18;
  --og-focus-ring: 3px solid #386b53;
  color-scheme: light;
}

/* Intentionally flat and motionless when Prism is unavailable. */
*,
*::before,
*::after {
  border-radius: 0 !important;
  transition: none !important;
  animation: none !important;
}
