/* Containers - page-level wrapperi */
.ot-container-s { width: 100%; max-width: 768px; margin: 0 auto; padding: 0 calc(var(--ot-spacing-m) * 2); }
.ot-container-m { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 calc(var(--ot-spacing-m) * 2); }
.ot-container-l { width: 100%; max-width: 1440px; margin: 0 auto; padding: 0 calc(var(--ot-spacing-m) * 2); }
.ot-container-full { width: 100%; padding: 0 calc(var(--ot-spacing-m) * 2); }

@media screen and (max-width: 900px)
{
    .ot-container-s,
    .ot-container-m,
    .ot-container-l,
    .ot-container-full
    {
        padding: 0 var(--ot-spacing-m);
    }
}

/* Grid - responsive auto layouts */
.ot-grid-auto-s { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: var(--ot-spacing-s); }
.ot-grid-auto-m { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: var(--ot-spacing-m); }
.ot-grid-auto-l { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--ot-spacing-m); }

/* Scrollbar - opt-in tanke skrol regije */
.ot-scrollbar { overflow: auto; scrollbar-width: thin; scrollbar-color: var(--ot-bg-4) transparent; }
.ot-scrollbar::-webkit-scrollbar { width: 8px; height: 8px; }
.ot-scrollbar::-webkit-scrollbar-track { background: transparent; }
.ot-scrollbar::-webkit-scrollbar-thumb { background: var(--ot-bg-4); border-radius: 4px; }
.ot-scrollbar::-webkit-scrollbar-thumb:hover { background: var(--ot-bg-4-hover); }

/* Truncate - single line ellipsis */
.ot-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }

/* Line clamp - multi-line ellipsis */
.ot-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ot-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ot-clamp-4 { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }

/* Flex */

.ot-flex-vertical { display: flex; flex-direction: column; gap: var(--ot-spacing-l); }
.ot-flex-horizontal { display: flex; gap: var(--ot-spacing-l); }
.ot-flex-between { display: flex; align-items: center; justify-content: space-between; gap: var(--ot-spacing-m); }
.ot-flex-center { display: flex; align-items: center; justify-content: center; gap: var(--ot-spacing-m); }
.ot-flex-start { display: flex; align-items: center; gap: var(--ot-spacing-m); }
.ot-flex-end { display: flex; align-items: center; justify-content: flex-end; gap: var(--ot-spacing-m); }
.ot-flex-wrap { display: flex; flex-wrap: wrap; gap: var(--ot-spacing-m); }
.ot-flex-1 { flex: 1; min-width: 0; }

/* Gap overrides */

.ot-gap-0 { gap: 0; }
.ot-gap-x { gap: var(--ot-spacing-x); }
.ot-gap-s { gap: var(--ot-spacing-s); }
.ot-gap-m { gap: var(--ot-spacing-m); }
.ot-gap-l { gap: var(--ot-spacing-l); }
.ot-p-0 { padding: 0; }
.ot-p-x { padding: var(--ot-spacing-x); }
.ot-p-s { padding: var(--ot-spacing-s); }
.ot-p-m { padding: var(--ot-spacing-m); }
.ot-p-l { padding: var(--ot-spacing-l); }

.ot-px-0 { padding-left: 0; padding-right: 0; }
.ot-px-x { padding-left: var(--ot-spacing-x); padding-right: var(--ot-spacing-x); }
.ot-px-s { padding-left: var(--ot-spacing-s); padding-right: var(--ot-spacing-s); }
.ot-px-m { padding-left: var(--ot-spacing-m); padding-right: var(--ot-spacing-m); }
.ot-px-l { padding-left: var(--ot-spacing-l); padding-right: var(--ot-spacing-l); }

.ot-py-0 { padding-top: 0; padding-bottom: 0; }
.ot-py-x { padding-top: var(--ot-spacing-x); padding-bottom: var(--ot-spacing-x); }
.ot-py-s { padding-top: var(--ot-spacing-s); padding-bottom: var(--ot-spacing-s); }
.ot-py-m { padding-top: var(--ot-spacing-m); padding-bottom: var(--ot-spacing-m); }
.ot-py-l { padding-top: var(--ot-spacing-l); padding-bottom: var(--ot-spacing-l); }

.ot-pt-0 { padding-top: 0; }
.ot-pt-x { padding-top: var(--ot-spacing-x); }
.ot-pt-s { padding-top: var(--ot-spacing-s); }
.ot-pt-m { padding-top: var(--ot-spacing-m); }
.ot-pt-l { padding-top: var(--ot-spacing-l); }

.ot-pr-0 { padding-right: 0; }
.ot-pr-x { padding-right: var(--ot-spacing-x); }
.ot-pr-s { padding-right: var(--ot-spacing-s); }
.ot-pr-m { padding-right: var(--ot-spacing-m); }
.ot-pr-l { padding-right: var(--ot-spacing-l); }

.ot-pb-0 { padding-bottom: 0; }
.ot-pb-x { padding-bottom: var(--ot-spacing-x); }
.ot-pb-s { padding-bottom: var(--ot-spacing-s); }
.ot-pb-m { padding-bottom: var(--ot-spacing-m); }
.ot-pb-l { padding-bottom: var(--ot-spacing-l); }

.ot-pl-0 { padding-left: 0; }
.ot-pl-x { padding-left: var(--ot-spacing-x); }
.ot-pl-s { padding-left: var(--ot-spacing-s); }
.ot-pl-m { padding-left: var(--ot-spacing-m); }
.ot-pl-l { padding-left: var(--ot-spacing-l); }

.ot-m-0 { margin: 0; }
.ot-m-auto { margin: auto; }
.ot-m-x { margin: var(--ot-spacing-x); }
.ot-m-s { margin: var(--ot-spacing-s); }
.ot-m-m { margin: var(--ot-spacing-m); }
.ot-m-l { margin: var(--ot-spacing-l); }

.ot-mx-0 { margin-left: 0; margin-right: 0; }
.ot-mx-auto { margin-left: auto; margin-right: auto; }
.ot-mx-x { margin-left: var(--ot-spacing-x); margin-right: var(--ot-spacing-x); }
.ot-mx-s { margin-left: var(--ot-spacing-s); margin-right: var(--ot-spacing-s); }
.ot-mx-m { margin-left: var(--ot-spacing-m); margin-right: var(--ot-spacing-m); }
.ot-mx-l { margin-left: var(--ot-spacing-l); margin-right: var(--ot-spacing-l); }

.ot-my-0 { margin-top: 0; margin-bottom: 0; }
.ot-my-auto { margin-top: auto; margin-bottom: auto; }
.ot-my-x { margin-top: var(--ot-spacing-x); margin-bottom: var(--ot-spacing-x); }
.ot-my-s { margin-top: var(--ot-spacing-s); margin-bottom: var(--ot-spacing-s); }
.ot-my-m { margin-top: var(--ot-spacing-m); margin-bottom: var(--ot-spacing-m); }
.ot-my-l { margin-top: var(--ot-spacing-l); margin-bottom: var(--ot-spacing-l); }

.ot-mt-0 { margin-top: 0; }
.ot-mt-auto { margin-top: auto; }
.ot-mt-x { margin-top: var(--ot-spacing-x); }
.ot-mt-s { margin-top: var(--ot-spacing-s); }
.ot-mt-m { margin-top: var(--ot-spacing-m); }
.ot-mt-l { margin-top: var(--ot-spacing-l); }

.ot-mr-0 { margin-right: 0; }
.ot-mr-auto { margin-right: auto; }
.ot-mr-x { margin-right: var(--ot-spacing-x); }
.ot-mr-s { margin-right: var(--ot-spacing-s); }
.ot-mr-m { margin-right: var(--ot-spacing-m); }
.ot-mr-l { margin-right: var(--ot-spacing-l); }

.ot-mb-0 { margin-bottom: 0; }
.ot-mb-auto { margin-bottom: auto; }
.ot-mb-x { margin-bottom: var(--ot-spacing-x); }
.ot-mb-s { margin-bottom: var(--ot-spacing-s); }
.ot-mb-m { margin-bottom: var(--ot-spacing-m); }
.ot-mb-l { margin-bottom: var(--ot-spacing-l); }

.ot-ml-0 { margin-left: 0; }
.ot-ml-auto { margin-left: auto; }
.ot-ml-x { margin-left: var(--ot-spacing-x); }
.ot-ml-s { margin-left: var(--ot-spacing-s); }
.ot-ml-m { margin-left: var(--ot-spacing-m); }
.ot-ml-l { margin-left: var(--ot-spacing-l); }

.ot-gap-0 { gap: 0; }
.ot-gap-x { gap: var(--ot-spacing-x); }
.ot-gap-s { gap: var(--ot-spacing-s); }
.ot-gap-m { gap: var(--ot-spacing-m); }
.ot-gap-l { gap: var(--ot-spacing-l); }
*,
*::before,
*::after
{
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html
{
	height: 100%;
	scroll-behavior: smooth;
	font-size: 100%;
	tab-size: 4;
}

body
{
	min-height: 100vh;
	font-family: var(--ot-font-primary), system-ui, sans-serif;
	font-size: var(--ot-size-m);
	line-height: 1.5;
	color: var(--ot-text-1);
	background: var(--ot-bg-1);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

:focus-visible
{
	outline: 2px solid var(--ot-brand);
	outline-offset: 2px;
}

:focus:not(:focus-visible)
{
	outline: none;
}

h1, h2, h3, h4, h5, h6
{
	font-family: var(--ot-font-secondary), Georgia, serif;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
}

h1 { font-size: 3rem; }
h2 { font-size: 2.25rem; }
h3 { font-size: 1.5rem; }
h4 { font-size: 1.25rem; }
h5 { font-size: 1.125rem; }
h6 { font-size: 1rem; }

p
{
	line-height: 1.6;
	color: var(--ot-text-2);
}

@media screen and (max-width: 768px)
{
	html { font-size: 95%; }
	h1 { line-height: 1.05; }
	p { line-height: 1.5; }
}

@media screen and (max-width: 480px)
{
	html { font-size: 90%; }
	h1 { line-height: 1.05; }
	p { line-height: 1.4; }
}

small
{
	font-size: 0.875em;
}

a
{
	color: inherit;
	text-decoration: none;
	transition: color 0.2s ease;
}

img,
picture,
video,
canvas,
svg
{
	display: block;
	max-width: 100%;
	height: auto;
}

button,
input,
optgroup,
select,
textarea
{
	font: inherit;
	color: inherit;
	line-height: inherit;
}

button
{
	cursor: pointer;
	background: none;
	border: none;
}

ul, ol
{
	list-style: none;
}

table
{
	border-collapse: collapse;
	width: 100%;
}

i
{
	font-family: 'Material Symbols Rounded';
	font-weight: normal;
	font-style: normal;
	font-size: 20px;
	line-height: 1;
	letter-spacing: normal;
	text-transform: none;
	display: inline-block;
	white-space: nowrap;
	word-wrap: normal;
	direction: ltr;
	color: inherit;
	-webkit-font-feature-settings: 'liga';
	-webkit-font-smoothing: antialiased;
	font-variation-settings: 'opsz' 24, 'wght' 300, 'FILL' 0, 'GRAD' 0;
}

*
{
	scrollbar-width: thin;
	scrollbar-color: var(--ot-bg-3) transparent;
}

::-webkit-scrollbar
{
	width: 6px;
	height: 6px;
}

::-webkit-scrollbar-track
{
	background: transparent;
}

::-webkit-scrollbar-thumb
{
	background: var(--ot-bg-3);
	border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover
{
	background: var(--ot-bg-4);
}

@media print
{
	body { background: #fff; color: #000; }
	a { color: #000; text-decoration: underline; }
	@page { margin: 2cm; }
}

hr 
{
	border: 1px solid var(--ot-bg-1-border);
}

hr.bg-2
{
	border: 1px solid var(--ot-bg-2-border);
}

hr.bg-3
{
	border: 1px solid var(--ot-bg-3-border);
}

hr.bg-4
{
	border: 1px solid var(--ot-bg-4-border);
}
:root
{
    --ot-spacing-x: 4px;
    --ot-spacing-s: 8px;
    --ot-spacing-m: 16px;
    --ot-spacing-l: 32px;

    --ot-radius-s: 4px;
    --ot-radius-m: 8px;
    --ot-radius-l: 12px;

    --ot-height-x: 18px;
    --ot-height-s: 28px;
    --ot-height-m: 34px;
    --ot-height-l: 44px;

    --ot-size-s: 11px;
    --ot-size-m: 13px;
    --ot-size-l: 22px;

    --ot-font-primary: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --ot-font-secondary: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    --ot-bg-1: rgba(30, 30, 30, 1);
    --ot-bg-1-border: rgba(46, 46, 46, 1);
    --ot-bg-1-opacity: rgba(30, 30, 30, 0.85);
    --ot-bg-1-hover: rgba(35, 35, 35, 1);

    --ot-bg-2: rgba(37, 37, 37, 1);
    --ot-bg-2-border: rgba(53, 53, 53, 1);
    --ot-bg-2-opacity: rgba(37, 37, 37, 0.85);
    --ot-bg-2-hover: rgba(42, 42, 42, 1);

    --ot-bg-3: rgba(44, 44, 44, 1);
    --ot-bg-3-border: rgba(60, 60, 60, 1);
    --ot-bg-3-opacity: rgba(44, 44, 44, 0.85);
    --ot-bg-3-hover: rgba(49, 49, 49, 1);

    --ot-bg-4: rgba(50, 50, 50, 1);
    --ot-bg-4-border: rgba(66, 66, 66, 1);
    --ot-bg-4-opacity: rgba(50, 50, 50, 0.85);
    --ot-bg-4-hover: rgba(55, 55, 55, 1);

    --ot-text-1: rgb(242, 242, 242);
    --ot-text-2: rgb(166, 166, 166);
    --ot-text-3: rgb(130, 130, 130);

    --ot-brand: rgba(226, 112, 85, 1);
    --ot-brand-border: rgba(236, 142, 120, 1);
    --ot-brand-opacity: rgba(226, 112, 85, 0.12);
    --ot-brand-hover: rgba(206, 92, 65, 1);

    --ot-blue: rgba(56, 189, 248, 1);
    --ot-blue-border: rgba(125, 211, 252, 1);
    --ot-blue-opacity: rgba(56, 189, 248, 0.12);
    --ot-blue-hover: rgba(14, 165, 233, 1);

    --ot-red: rgba(244, 63, 94, 1);
    --ot-red-border: rgba(251, 113, 133, 1);
    --ot-red-opacity: rgba(244, 63, 94, 0.12);
    --ot-red-hover: rgba(225, 29, 72, 1);

    --ot-orange: rgba(251, 146, 60, 1);
    --ot-orange-border: rgba(253, 186, 116, 1);
    --ot-orange-opacity: rgba(251, 146, 60, 0.12);
    --ot-orange-hover: rgba(249, 115, 22, 1);

    --ot-green: rgba(52, 211, 153, 1);
    --ot-green-border: rgba(110, 231, 183, 1);
    --ot-green-opacity: rgba(52, 211, 153, 0.12);
    --ot-green-hover: rgba(16, 185, 129, 1);

    --ot-transition-fast: 120ms cubic-bezier(0.4, 0, 0.2, 1);
    --ot-transition: 180ms cubic-bezier(0.4, 0, 0.2, 1);
    --ot-transition-slow: 280ms cubic-bezier(0.4, 0, 0.2, 1);

    --ot-shadow-s: 0 1px 2px rgba(0, 0, 0, 0.2);
    --ot-shadow-m: 0 4px 12px rgba(0, 0, 0, 0.25);
    --ot-shadow-l: 0 12px 32px rgba(0, 0, 0, 0.35);

    --ot-blur: blur(12px) saturate(180%);
}

@media screen and (max-width: 900px)
{
    :root
    {
        --ot-spacing-l: 16px;
    }
}
/* ===== TYPE SYSTEM — global reusable cell styles ===== */

/* Group — recursive layout wrapper */

.ot-type-group
{
	display: flex;
	min-width: 0;
}

.ot-type-group.layout-row
{
	flex-direction: row;
	align-items: center;
}

.ot-type-group.layout-column
{
	flex-direction: column;
	align-items: flex-start;
}

.ot-type-group.gap-none { gap: 0; }
.ot-type-group.gap-small { gap: 4px; }
.ot-type-group.gap-medium { gap: var(--ot-spacing-s); }
.ot-type-group.gap-large { gap: var(--ot-spacing-m); }

/* Text */

.ot-type-text
{
	color: var(--ot-text-1);
	font-weight: 600;
}

/* Description */

.ot-type-description
{
	color: var(--ot-text-2);
	font-weight: 400;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Number */

.ot-type-number
{
	font-variant-numeric: tabular-nums;
	font-weight: 600;
	color: var(--ot-text-1);
}

/* Date / Timeago */

.ot-type-date
{
	color: var(--ot-text-2);
	font-variant-numeric: tabular-nums;
}

/* Boolean */

.ot-type-boolean
{
	font-size: 18px;
}

.ot-type-boolean.yes { color: var(--ot-green); }
.ot-type-boolean.no { color: var(--ot-red); opacity: 0.5; }

/* Icon */

.ot-type-icon
{
	font-size: 18px;
	color: var(--ot-text-2);
}

/* Image */

.ot-type-image
{
	height: 32px;
	padding: 4px;
	border-radius: var(--ot-radius-s);
	border: 1px solid var(--ot-bg-2-border);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 100%;
	max-width: 64px;
}

.ot-type-image.empty
{
	background-image: none;
}

/* Avatar */

.ot-type-avatar
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--ot-bg-2);
	color: var(--ot-text-3);
}

.ot-type-avatar > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ot-type-avatar.ot-type-avatar-fallback > i
{
	font-size: 18px;
}

/* Media */

.ot-type-media
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	min-width: 0;
}

.ot-type-media > .ot-type-media-thumb
{
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	border-radius: var(--ot-radius-s);
	background-size: cover;
	background-position: center;
	background-color: var(--ot-bg-2);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--ot-text-3);
}

.ot-type-media > .ot-type-media-thumb.empty > i
{
	font-size: 18px;
}

.ot-type-media > .ot-type-media-info
{
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: 1px;
}

.ot-type-media > .ot-type-media-info > .ot-type-media-title
{
	font-weight: 600;
	color: var(--ot-text-1);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ot-type-media > .ot-type-media-info > .ot-type-media-subtitle
{
	font-size: 11px;
	color: var(--ot-text-3);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Badge */

.ot-type-badge
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 3px 8px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	font-size: 11px;
	font-weight: 600;
	color: var(--ot-text-2);
}

.ot-type-badge > i
{
	font-size: 13px;
}

.ot-type-badge.color-brand { background: var(--ot-brand-opacity); border-color: var(--ot-brand-border); color: var(--ot-brand); }
.ot-type-badge.color-blue { background: var(--ot-blue-opacity); border-color: var(--ot-blue-border); color: var(--ot-blue); }
.ot-type-badge.color-green { background: var(--ot-green-opacity); border-color: var(--ot-green-border); color: var(--ot-green); }
.ot-type-badge.color-red { background: var(--ot-red-opacity); border-color: var(--ot-red-border); color: var(--ot-red); }
.ot-type-badge.color-orange { background: var(--ot-orange-opacity); border-color: var(--ot-orange-border); color: var(--ot-orange); }

/* Chip */

.ot-type-chip
{
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	font-size: 11px;
	font-weight: 600;
	color: var(--ot-text-2);
}

/* Tag */

.ot-type-tag
{
	display: inline-flex;
	align-items: center;
	padding: 2px 7px;
	background: var(--ot-bg-3);
	border-radius: var(--ot-radius-s);
	font-size: 10px;
	font-weight: 600;
	color: var(--ot-text-2);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ot-type-tags
{
	display: flex;
	flex-wrap: wrap;
	gap: 3px;
}

/* Status */

.ot-type-status
{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 3px 10px;
	background: var(--ot-bg-2);
	border-radius: 100px;
	font-size: 11px;
	font-weight: 600;
	color: var(--ot-text-2);
}

.ot-type-status > .ot-type-status-dot
{
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--ot-text-3);
}

.ot-type-status.color-green { color: var(--ot-green); background: var(--ot-green-opacity); }
.ot-type-status.color-green > .ot-type-status-dot { background: var(--ot-green); box-shadow: 0 0 0 3px var(--ot-green-opacity); }
.ot-type-status.color-red { color: var(--ot-red); background: var(--ot-red-opacity); }
.ot-type-status.color-red > .ot-type-status-dot { background: var(--ot-red); box-shadow: 0 0 0 3px var(--ot-red-opacity); }
.ot-type-status.color-orange { color: var(--ot-orange); background: var(--ot-orange-opacity); }
.ot-type-status.color-orange > .ot-type-status-dot { background: var(--ot-orange); box-shadow: 0 0 0 3px var(--ot-orange-opacity); }
.ot-type-status.color-blue { color: var(--ot-blue); background: var(--ot-blue-opacity); }
.ot-type-status.color-blue > .ot-type-status-dot { background: var(--ot-blue); }
.ot-type-status.color-brand { color: var(--ot-brand); background: var(--ot-brand-opacity); }
.ot-type-status.color-brand > .ot-type-status-dot { background: var(--ot-brand); }

/* Metric */

.ot-type-metric
{
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	font-variant-numeric: tabular-nums;
}

.ot-type-metric > .ot-type-metric-value
{
	font-weight: 700;
	color: var(--ot-text-1);
}

.ot-type-metric > .ot-type-metric-delta
{
	font-size: 11px;
	font-weight: 700;
	padding: 1px 5px;
	border-radius: var(--ot-radius-s);
}

.ot-type-metric > .ot-type-metric-delta.up { color: var(--ot-green); background: var(--ot-green-opacity); }
.ot-type-metric > .ot-type-metric-delta.down { color: var(--ot-red); background: var(--ot-red-opacity); }

/* Progress */

.ot-type-progress
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.ot-type-progress > .ot-type-progress-track
{
	flex: 1;
	height: 6px;
	background: var(--ot-bg-3);
	border-radius: 100px;
	overflow: hidden;
	min-width: 60px;
}

.ot-type-progress > .ot-type-progress-track > .ot-type-progress-bar
{
	height: 100%;
	border-radius: 100px;
	transition: width 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

.ot-type-progress > .ot-type-progress-track > .ot-type-progress-bar.color-brand { background: var(--ot-brand); }
.ot-type-progress > .ot-type-progress-track > .ot-type-progress-bar.color-blue { background: var(--ot-blue); }
.ot-type-progress > .ot-type-progress-track > .ot-type-progress-bar.color-green { background: var(--ot-green); }
.ot-type-progress > .ot-type-progress-track > .ot-type-progress-bar.color-red { background: var(--ot-red); }
.ot-type-progress > .ot-type-progress-track > .ot-type-progress-bar.color-orange { background: var(--ot-orange); }

.ot-type-progress > .ot-type-progress-label
{
	font-size: 11px;
	font-weight: 700;
	color: var(--ot-text-2);
	font-variant-numeric: tabular-nums;
	min-width: 32px;
	text-align: right;
}

/* Count */

.ot-type-count
{
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
}

.ot-type-count > .ot-type-count-value
{
	font-weight: 700;
	color: var(--ot-text-1);
	font-variant-numeric: tabular-nums;
}

.ot-type-count > .ot-type-count-label
{
	color: var(--ot-text-3);
	font-weight: 400;
}

/* Color */

.ot-type-color
{
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.ot-type-color > .ot-type-color-swatch
{
	width: 18px;
	height: 18px;
	border-radius: var(--ot-radius-s);
	border: 1px solid var(--ot-bg-2-border);
	flex-shrink: 0;
}

.ot-type-color > .ot-type-color-value
{
	font-size: 11px;
	font-weight: 600;
	color: var(--ot-text-2);
	text-transform: uppercase;
}

/* Link */

.ot-type-link
{
	color: var(--ot-brand);
	text-decoration: none;
	font-weight: 500;
}

.ot-type-link:hover
{
	text-decoration: underline;
}
/* ===== CARDS INFO ===== */

.e-7e93ff6e
{
	display: contents;
}

/* Box */

.e-7e93ff6e > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	width: 100%;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-l);
}

.e-7e93ff6e > .box.bg-1,
.e-7e93ff6e > .box.bg-2,
.e-7e93ff6e > .box.bg-3,
.e-7e93ff6e > .box.bg-4,
.e-7e93ff6e > .box.border
{
	padding: var(--ot-spacing-m);
}

/* ===== HEADER ===== */

.e-7e93ff6e > .box > .header
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
}

/* Header icon */

.e-7e93ff6e > .box > .header > .icon
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	flex-shrink: 0;
}

.e-7e93ff6e > .box > .header > .icon > i
{
	font-size: 22px;
}

/* Header text */

.e-7e93ff6e > .box > .header > .text
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.e-7e93ff6e > .box > .header > .text > .title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
	line-height: 1.2;
}

.e-7e93ff6e > .box > .header > .text > .description
{
	margin: 0;
	font-size: 12px;
	color: var(--ot-text-2);
	line-height: 1.4;
	font-family: var(--ot-font-primary);
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
}

/* Header badge */

.e-7e93ff6e > .box > .header > .badge
{
	display: inline-flex;
	align-items: center;
	padding: var(--ot-spacing-x) 10px;
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	border-radius: 100px;
	font-size: 10.5px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-family: var(--ot-font-primary);
	flex-shrink: 0;
}

/* ===== STATUS ===== */

.e-7e93ff6e > .box > .status
{
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: var(--ot-spacing-s);
	padding: 6px 12px;
	border-radius: 100px;
	font-size: 12px;
	font-weight: 600;
	font-family: var(--ot-font-primary);
}

.e-7e93ff6e > .box > .status > .dot
{
	width: 8px;
	height: 8px;
	border-radius: 50%;
	flex-shrink: 0;
	position: relative;
}

.e-7e93ff6e > .box > .status > .dot::before
{
	content: '';
	position: absolute;
	inset: -3px;
	border-radius: 50%;
	opacity: 0.3;
	animation: e-7e93ff6e-pulse 2.4s ease-in-out infinite;
}

@keyframes e-7e93ff6e-pulse
{
	0%, 100% { transform: scale(1); opacity: 0.3; }
	50% { transform: scale(1.4); opacity: 0.1; }
}

.e-7e93ff6e > .box > .status.color-brand { background: var(--ot-brand-opacity); color: var(--ot-brand); }
.e-7e93ff6e > .box > .status.color-brand > .dot { background: var(--ot-brand); }
.e-7e93ff6e > .box > .status.color-brand > .dot::before { background: var(--ot-brand); }

.e-7e93ff6e > .box > .status.color-blue { background: var(--ot-blue-opacity); color: var(--ot-blue); }
.e-7e93ff6e > .box > .status.color-blue > .dot { background: var(--ot-blue); }
.e-7e93ff6e > .box > .status.color-blue > .dot::before { background: var(--ot-blue); }

.e-7e93ff6e > .box > .status.color-red { background: var(--ot-red-opacity); color: var(--ot-red); }
.e-7e93ff6e > .box > .status.color-red > .dot { background: var(--ot-red); }
.e-7e93ff6e > .box > .status.color-red > .dot::before { background: var(--ot-red); }

.e-7e93ff6e > .box > .status.color-orange { background: var(--ot-orange-opacity); color: var(--ot-orange); }
.e-7e93ff6e > .box > .status.color-orange > .dot { background: var(--ot-orange); }
.e-7e93ff6e > .box > .status.color-orange > .dot::before { background: var(--ot-orange); }

.e-7e93ff6e > .box > .status.color-green { background: var(--ot-green-opacity); color: var(--ot-green); }
.e-7e93ff6e > .box > .status.color-green > .dot { background: var(--ot-green); }
.e-7e93ff6e > .box > .status.color-green > .dot::before { background: var(--ot-green); }

/* ===== STATS ===== */

.e-7e93ff6e > .box > .stats
{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-m) 0;
	border-top: 1px solid var(--ot-bg-2-border);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-7e93ff6e > .box > .stats > .stat
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.e-7e93ff6e > .box > .stats > .stat > .stat-icon
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	font-size: 18px;
	flex-shrink: 0;
}

.e-7e93ff6e > .box > .stats > .stat > .stat-text
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.e-7e93ff6e > .box > .stats > .stat > .stat-text > .value
{
	font-family: var(--ot-font-secondary);
	font-size: 20px;
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1;
	font-variation-settings: 'opsz' 144;
}

.e-7e93ff6e > .box > .stats > .stat > .stat-text > .label
{
	font-size: 10.5px;
	font-weight: 600;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-family: var(--ot-font-primary);
}

.e-7e93ff6e > .box > .stats > .stat.color-brand > .stat-icon { background: var(--ot-brand-opacity); color: var(--ot-brand); }
.e-7e93ff6e > .box > .stats > .stat.color-blue > .stat-icon { background: var(--ot-blue-opacity); color: var(--ot-blue); }
.e-7e93ff6e > .box > .stats > .stat.color-red > .stat-icon { background: var(--ot-red-opacity); color: var(--ot-red); }
.e-7e93ff6e > .box > .stats > .stat.color-orange > .stat-icon { background: var(--ot-orange-opacity); color: var(--ot-orange); }
.e-7e93ff6e > .box > .stats > .stat.color-green > .stat-icon { background: var(--ot-green-opacity); color: var(--ot-green); }

/* ===== ROWS ===== */

.e-7e93ff6e > .box > .rows
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
}

.e-7e93ff6e > .box > .rows > .row
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ot-spacing-m);
	padding: 6px 0;
	font-size: var(--ot-size-m);
	font-family: var(--ot-font-primary);
}

.e-7e93ff6e > .box > .rows > .row > .row-label
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	color: var(--ot-text-2);
}

.e-7e93ff6e > .box > .rows > .row > .row-label > i
{
	font-size: 16px;
	color: var(--ot-text-3);
}

.e-7e93ff6e > .box > .rows > .row > .row-value
{
	font-weight: 600;
	color: var(--ot-text-1);
	text-align: right;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.e-7e93ff6e > .box > .rows > .row.color-brand > .row-value { color: var(--ot-brand); }
.e-7e93ff6e > .box > .rows > .row.color-blue > .row-value { color: var(--ot-blue); }
.e-7e93ff6e > .box > .rows > .row.color-red > .row-value { color: var(--ot-red); }
.e-7e93ff6e > .box > .rows > .row.color-orange > .row-value { color: var(--ot-orange); }
.e-7e93ff6e > .box > .rows > .row.color-green > .row-value { color: var(--ot-green); }

/* ===== TAGS ===== */

.e-7e93ff6e > .box > .tags
{
	display: flex;
	flex-wrap: wrap;
	gap: var(--ot-spacing-x);
}

.e-7e93ff6e > .box > .tags > .tag
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: var(--ot-spacing-x) 10px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.e-7e93ff6e > .box > .tags > .tag > i
{
	font-size: 13px;
}

.e-7e93ff6e > .box > .tags > .tag.color-brand { background: var(--ot-brand-opacity); border-color: var(--ot-brand-opacity); color: var(--ot-brand); }
.e-7e93ff6e > .box > .tags > .tag.color-blue { background: var(--ot-blue-opacity); border-color: var(--ot-blue-opacity); color: var(--ot-blue); }
.e-7e93ff6e > .box > .tags > .tag.color-red { background: var(--ot-red-opacity); border-color: var(--ot-red-opacity); color: var(--ot-red); }
.e-7e93ff6e > .box > .tags > .tag.color-orange { background: var(--ot-orange-opacity); border-color: var(--ot-orange-opacity); color: var(--ot-orange); }
.e-7e93ff6e > .box > .tags > .tag.color-green { background: var(--ot-green-opacity); border-color: var(--ot-green-opacity); color: var(--ot-green); }

/* ===== NOTICE ===== */

.e-7e93ff6e > .box > .notice
{
	display: flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	border-radius: var(--ot-radius-m);
	font-size: 12.5px;
	line-height: 1.5;
	font-family: var(--ot-font-primary);
}

.e-7e93ff6e > .box > .notice > i
{
	font-size: 18px;
	flex-shrink: 0;
	margin-top: 1px;
}

.e-7e93ff6e > .box > .notice.color-brand { background: var(--ot-brand-opacity); color: var(--ot-brand); }
.e-7e93ff6e > .box > .notice.color-blue { background: var(--ot-blue-opacity); color: var(--ot-blue); }
.e-7e93ff6e > .box > .notice.color-red { background: var(--ot-red-opacity); color: var(--ot-red); }
.e-7e93ff6e > .box > .notice.color-orange { background: var(--ot-orange-opacity); color: var(--ot-orange); }
.e-7e93ff6e > .box > .notice.color-green { background: var(--ot-green-opacity); color: var(--ot-green); }

/* ===== BODY ===== */

.e-7e93ff6e > .box > .body
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* ===== ACTIONS ===== */

.e-7e93ff6e > .box > .actions
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

.e-7e93ff6e > .box > .actions:empty
{
	display: none;
}

/* ===== BACKGROUND ===== */

.e-7e93ff6e > .box.bg-1 { background: var(--ot-bg-1); }
.e-7e93ff6e > .box.bg-1 > .stats { border-color: var(--ot-bg-1-border); }
.e-7e93ff6e > .box.bg-1 > .tags > .tag { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }

.e-7e93ff6e > .box.bg-2 { background: var(--ot-bg-2); }
.e-7e93ff6e > .box.bg-2 > .stats { border-color: var(--ot-bg-2-border); }
.e-7e93ff6e > .box.bg-2 > .tags > .tag { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }

.e-7e93ff6e > .box.bg-3 { background: var(--ot-bg-3); }
.e-7e93ff6e > .box.bg-3 > .stats { border-color: var(--ot-bg-3-border); }
.e-7e93ff6e > .box.bg-3 > .tags > .tag { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }

.e-7e93ff6e > .box.bg-4 { background: var(--ot-bg-4); }
.e-7e93ff6e > .box.bg-4 > .stats { border-color: var(--ot-bg-4-border); }
.e-7e93ff6e > .box.bg-4 > .tags > .tag { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }

/* ===== BORDER ===== */

.e-7e93ff6e > .box.border { border-color: var(--ot-bg-2-border); }
.e-7e93ff6e > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-7e93ff6e > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-7e93ff6e > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-7e93ff6e > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-7e93ff6e > .box.size-s
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-7e93ff6e > .box.size-s > .header > .icon { width: 32px; height: 32px; }
.e-7e93ff6e > .box.size-s > .header > .icon > i { font-size: 18px; }
.e-7e93ff6e > .box.size-s > .header > .text > .title { font-size: 14px; }
.e-7e93ff6e > .box.size-s > .rows > .row { font-size: 12px; padding: 4px 0; }

.e-7e93ff6e > .box.size-l
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-l);
}

.e-7e93ff6e > .box.size-l > .header > .icon { width: 48px; height: 48px; }
.e-7e93ff6e > .box.size-l > .header > .icon > i { font-size: 26px; }
.e-7e93ff6e > .box.size-l > .header > .text > .title { font-size: 20px; }
.e-7e93ff6e > .box.size-l > .rows > .row { font-size: 14px; padding: 8px 0; }
.e-7e93ff6e > .box.size-l > .stats > .stat > .stat-icon { width: 40px; height: 40px; font-size: 22px; }
.e-7e93ff6e > .box.size-l > .stats > .stat > .stat-text > .value { font-size: 24px; }
/* ===== CARDS ITEM ===== */

.e-7e9415d3
{
	display: contents;
}

/* Box */

.e-7e9415d3 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	border-radius: var(--ot-radius-l);
	border: 1px solid transparent;
	background: transparent;
	color: inherit;
	text-decoration: none;
	overflow: hidden;
	transition: background var(--ot-transition), border-color var(--ot-transition), transform var(--ot-transition), box-shadow var(--ot-transition);
}

/* Orientation */

.e-7e9415d3 > .box.horizontal
{
	flex-direction: row;
	align-items: center;
}

/* Clickable */

.e-7e9415d3 > .box.clickable
{
	cursor: pointer;
}

/* Disabled */

.e-7e9415d3 > .box.disabled
{
	opacity: 0.5;
	cursor: not-allowed;
	pointer-events: none;
}

/* Active */

.e-7e9415d3 > .box.active
{
	border-color: var(--ot-brand);
	box-shadow: 0 0 0 3px var(--ot-brand-opacity);
}

/* ===== COVER ===== */

.e-7e9415d3 > .box > .cover
{
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: var(--ot-bg-2);
	overflow: hidden;
	flex-shrink: 0;
}

.e-7e9415d3 > .box.horizontal > .cover
{
	width: 200px;
	aspect-ratio: auto;
	height: 100%;
	align-self: stretch;
}

.e-7e9415d3 > .box > .cover > img
{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--ot-transition-slow);
}

.e-7e9415d3 > .box.clickable:hover > .cover > img
{
	transform: scale(1.03);
}

.e-7e9415d3 > .box > .cover > .cover-empty
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: var(--ot-text-3);
}

.e-7e9415d3 > .box > .cover > .cover-empty > i
{
	font-size: 48px;
	opacity: 0.5;
}

.e-7e9415d3 > .box > .cover > .badge
{
	position: absolute;
	top: var(--ot-spacing-s);
	right: var(--ot-spacing-s);
}

/* ===== BODY ===== */

.e-7e9415d3 > .box > .body
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
}

.e-7e9415d3 > .box.align-center > .body
{
	align-items: center;
	text-align: center;
}

/* ===== HEAD ===== */

.e-7e9415d3 > .box > .body > .head
{
	display: flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	width: 100%;
}

.e-7e9415d3 > .box.align-center > .body > .head
{
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-s);
}

/* Icon wrap */

.e-7e9415d3 > .box > .body > .head > .icon-wrap
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
}

.e-7e9415d3 > .box > .body > .head > .icon-wrap > i
{
	font-size: 20px;
}

/* Icon wrap — colors */

.e-7e9415d3 > .box > .body > .head > .icon-wrap.brand  { background: var(--ot-brand-opacity);  border-color: var(--ot-brand-border);  color: var(--ot-brand); }
.e-7e9415d3 > .box > .body > .head > .icon-wrap.blue   { background: var(--ot-blue-opacity);   border-color: var(--ot-blue-border);   color: var(--ot-blue); }
.e-7e9415d3 > .box > .body > .head > .icon-wrap.red    { background: var(--ot-red-opacity);    border-color: var(--ot-red-border);    color: var(--ot-red); }
.e-7e9415d3 > .box > .body > .head > .icon-wrap.orange { background: var(--ot-orange-opacity); border-color: var(--ot-orange-border); color: var(--ot-orange); }
.e-7e9415d3 > .box > .body > .head > .icon-wrap.green  { background: var(--ot-green-opacity);  border-color: var(--ot-green-border);  color: var(--ot-green); }

/* Icon wrap — backgrounds */

.e-7e9415d3 > .box > .body > .head > .icon-wrap.bg-1 { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-7e9415d3 > .box > .body > .head > .icon-wrap.bg-2 { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-7e9415d3 > .box > .body > .head > .icon-wrap.bg-3 { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-7e9415d3 > .box > .body > .head > .icon-wrap.bg-4 { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

/* Head text */

.e-7e9415d3 > .box > .body > .head > .head-text
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: 2px;
}

.e-7e9415d3 > .box > .body > .head > .head-text > .eyebrow
{
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.e-7e9415d3 > .box > .body > .head > .head-text > .title
{
	font-size: 15px;
	font-weight: 600;
	color: var(--ot-text-1);
	margin: 0;
	line-height: 1.3;
}

.e-7e9415d3 > .box > .body > .head > .head-text > .description
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
	margin: 0;
	line-height: 1.5;
}

/* ===== BADGE ===== */

.e-7e9415d3 > .box > .body > .head > .badge,
.e-7e9415d3 > .box > .cover > .badge
{
	display: inline-flex;
	align-items: center;
	padding: 3px 8px;
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	flex-shrink: 0;
	background: var(--ot-bg-2);
	color: var(--ot-text-2);
	border: 1px solid var(--ot-bg-2-border);
}

.e-7e9415d3 .badge.brand  { background: var(--ot-brand-opacity);  color: var(--ot-brand);  border-color: var(--ot-brand-border); }
.e-7e9415d3 .badge.blue   { background: var(--ot-blue-opacity);   color: var(--ot-blue);   border-color: var(--ot-blue-border); }
.e-7e9415d3 .badge.red    { background: var(--ot-red-opacity);    color: var(--ot-red);    border-color: var(--ot-red-border); }
.e-7e9415d3 .badge.orange { background: var(--ot-orange-opacity); color: var(--ot-orange);  border-color: var(--ot-orange-border); }
.e-7e9415d3 .badge.green  { background: var(--ot-green-opacity);  color: var(--ot-green);  border-color: var(--ot-green-border); }
.e-7e9415d3 .badge.neutral { background: var(--ot-bg-2); color: var(--ot-text-2); border-color: var(--ot-bg-2-border); }

/* ===== STATS ===== */

.e-7e9415d3 > .box > .body > .stats
{
	display: flex;
	align-items: baseline;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

.e-7e9415d3 > .box > .body > .stats > .value
{
	font-family: var(--ot-font-secondary);
	font-size: 28px;
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1;
	letter-spacing: -0.02em;
	font-variation-settings: 'opsz' 144;
}

.e-7e9415d3 > .box > .body > .stats > .delta
{
	display: inline-flex;
	align-items: center;
	gap: 2px;
	padding: 2px 6px;
	border-radius: var(--ot-radius-s);
	font-size: var(--ot-size-s);
	font-weight: 700;
}

.e-7e9415d3 > .box > .body > .stats > .delta > i
{
	font-size: 13px;
}

.e-7e9415d3 > .box > .body > .stats > .delta.delta-up      { background: var(--ot-green-opacity); color: var(--ot-green); }
.e-7e9415d3 > .box > .body > .stats > .delta.delta-down    { background: var(--ot-red-opacity);   color: var(--ot-red); }
.e-7e9415d3 > .box > .body > .stats > .delta.delta-neutral { background: var(--ot-bg-2);          color: var(--ot-text-2); }

/* ===== META ===== */

.e-7e9415d3 > .box > .body > .meta
{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.e-7e9415d3 > .box > .body > .meta > .meta-item
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-7e9415d3 > .box > .body > .meta > .meta-item > i
{
	font-size: 15px;
}

/* ===== TAGS ===== */

.e-7e9415d3 > .box > .body > .tags
{
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

.e-7e9415d3 > .box > .body > .tags > .tag
{
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
}

/* ===== FOOTER ===== */

.e-7e9415d3 > .box > .body > .footer
{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-top: auto;
	padding-top: var(--ot-spacing-s);
}

.e-7e9415d3 > .box.align-center > .body > .footer
{
	justify-content: center;
}

/* ===== CHEVRON ===== */

.e-7e9415d3 > .box > .chevron
{
	flex-shrink: 0;
	font-size: 20px;
	color: var(--ot-text-3);
	padding: 0 var(--ot-spacing-m);
	transition: transform var(--ot-transition), color var(--ot-transition);
}

.e-7e9415d3 > .box.horizontal.clickable:hover > .chevron
{
	transform: translateX(2px);
	color: var(--ot-text-1);
}

/* ===== BACKGROUND ===== */

.e-7e9415d3 > .box.bg-1 { background: var(--ot-bg-1); }
.e-7e9415d3 > .box.bg-2 { background: var(--ot-bg-2); }
.e-7e9415d3 > .box.bg-3 { background: var(--ot-bg-3); }
.e-7e9415d3 > .box.bg-4 { background: var(--ot-bg-4); }

/* Border */

.e-7e9415d3 > .box.border              { border-color: var(--ot-bg-2-border); }
.e-7e9415d3 > .box.bg-1.border         { border-color: var(--ot-bg-1-border); }
.e-7e9415d3 > .box.bg-2.border         { border-color: var(--ot-bg-2-border); }
.e-7e9415d3 > .box.bg-3.border         { border-color: var(--ot-bg-3-border); }
.e-7e9415d3 > .box.bg-4.border         { border-color: var(--ot-bg-4-border); }

/* Hover */

.e-7e9415d3 > .box.hover.clickable:hover
{
	transform: translateY(-1px);
	border-color: var(--ot-bg-3-border);
	box-shadow: var(--ot-shadow-s);
}

.e-7e9415d3 > .box.clickable:not(.hover):hover
{
	border-color: var(--ot-bg-3-border);
}

.e-7e9415d3 > .box.bg-1.clickable:not(.hover):hover { background: var(--ot-bg-1-hover); }
.e-7e9415d3 > .box.bg-2.clickable:not(.hover):hover { background: var(--ot-bg-2-hover); }
.e-7e9415d3 > .box.bg-3.clickable:not(.hover):hover { background: var(--ot-bg-3-hover); }
.e-7e9415d3 > .box.bg-4.clickable:not(.hover):hover { background: var(--ot-bg-4-hover); }

/* Glass */

.e-7e9415d3 > .box.glass
{
	background: var(--ot-bg-1-opacity);
	border-color: var(--ot-bg-2-border);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
}

/* Gradient */

.e-7e9415d3 > .box.gradient
{
	background: var(--ot-bg-1);
	border: 1px solid transparent;
	background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
	background-image: linear-gradient(var(--ot-bg-1), var(--ot-bg-1)), linear-gradient(135deg, var(--ot-brand), var(--ot-blue));
}

/* ===== SIZE ===== */

.e-7e9415d3 > .box.size-s > .body
{
	padding: var(--ot-spacing-s);
	gap: var(--ot-spacing-x);
}

.e-7e9415d3 > .box.size-s > .body > .head > .icon-wrap
{
	width: 32px;
	height: 32px;
}

.e-7e9415d3 > .box.size-s > .body > .head > .icon-wrap > i
{
	font-size: 16px;
}

.e-7e9415d3 > .box.size-s > .body > .head > .head-text > .title
{
	font-size: var(--ot-size-m);
}

.e-7e9415d3 > .box.size-s > .body > .stats > .value
{
	font-size: 22px;
}

.e-7e9415d3 > .box.size-m > .body
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-7e9415d3 > .box.size-l > .body
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-m);
}

.e-7e9415d3 > .box.size-l > .body > .head > .icon-wrap
{
	width: 48px;
	height: 48px;
	border-radius: var(--ot-radius-l);
}

.e-7e9415d3 > .box.size-l > .body > .head > .icon-wrap > i
{
	font-size: 24px;
}

.e-7e9415d3 > .box.size-l > .body > .head > .head-text > .title
{
	font-size: 16px;
}

.e-7e9415d3 > .box.size-l > .body > .stats > .value
{
	font-size: 36px;
}

/* ===== LOADING ===== */

.e-7e9415d3 > .box.loading
{
	pointer-events: none;
}

.e-7e9415d3 > .box.loading > .body > .head > .icon-wrap,
.e-7e9415d3 > .box.loading > .body > .head > .head-text > .title,
.e-7e9415d3 > .box.loading > .body > .head > .head-text > .description,
.e-7e9415d3 > .box.loading > .body > .stats > .value,
.e-7e9415d3 > .box.loading > .cover > img
{
	background: linear-gradient(90deg, var(--ot-bg-2) 0%, var(--ot-bg-3) 50%, var(--ot-bg-2) 100%);
	background-size: 200% 100%;
	animation: e-7e9415d3-shimmer 1.4s infinite linear;
	color: transparent;
	border-color: transparent;
}

@keyframes e-7e9415d3-shimmer
{
	from { background-position: 200% 0; }
	to { background-position: -200% 0; }
}

/* ===== RESPONSIVE ===== */

@media (max-width: 600px)
{
	.e-7e9415d3 > .box.horizontal
	{
		flex-direction: column;
		align-items: stretch;
	}

	.e-7e9415d3 > .box.horizontal > .cover
	{
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
	}

	.e-7e9415d3 > .box.horizontal > .chevron
	{
		display: none;
	}
}
/* ===== CARDS PRICING ===== */

.e-7e10f2fa
{
	display: contents;
}

/* Box */

.e-7e10f2fa > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-l);
	background: var(--ot-bg-1);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-l);
	overflow: hidden;
	transition: transform var(--ot-transition-slow), box-shadow var(--ot-transition-slow), border-color var(--ot-transition);
}

.e-7e10f2fa > .box:hover
{
	transform: translateY(-2px);
	box-shadow: var(--ot-shadow-m);
}

/* ===== RIBBON ===== */

.e-7e10f2fa > .box > .ribbon
{
	position: absolute;
	top: 0;
	right: 0;
	display: inline-flex;
	align-items: center;
	padding: 6px 14px;
	background: var(--ot-brand);
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-family: var(--ot-font-primary);
	border-radius: 0 var(--ot-radius-l) 0 var(--ot-radius-m);
}

/* ===== HEADER ===== */

.e-7e10f2fa > .box > .header
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* Top (icon + badge) */

.e-7e10f2fa > .box > .header > .top
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ot-spacing-s);
}

/* Icon */

.e-7e10f2fa > .box > .header > .top > .icon
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	flex-shrink: 0;
}

.e-7e10f2fa > .box > .header > .top > .icon > i
{
	font-size: 24px;
}

/* Badge */

.e-7e10f2fa > .box > .header > .top > .badge
{
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	border-radius: 100px;
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	font-size: var(--ot-size-s);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-family: var(--ot-font-primary);
	flex-shrink: 0;
}

/* Name */

.e-7e10f2fa > .box > .header > .name
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-size: var(--ot-size-l);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
	line-height: 1.2;
}

/* Description */

.e-7e10f2fa > .box > .header > .desc
{
	margin: 0;
	font-size: var(--ot-size-m);
	line-height: 1.55;
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
}

/* Price */

.e-7e10f2fa > .box > .header > .price
{
	display: flex;
	align-items: flex-start;
	gap: 4px;
	margin-top: var(--ot-spacing-s);
	font-family: var(--ot-font-secondary);
	font-variation-settings: 'opsz' 144;
	color: var(--ot-text-1);
	line-height: 1;
}

.e-7e10f2fa > .box > .header > .price > .currency
{
	font-size: 18px;
	font-weight: 500;
	margin-top: 6px;
	color: var(--ot-text-2);
}

.e-7e10f2fa > .box > .header > .price > .amount
{
	font-size: 52px;
	font-weight: 500;
	letter-spacing: -0.03em;
}

.e-7e10f2fa > .box > .header > .price > .period
{
	font-size: 14px;
	font-weight: 500;
	color: var(--ot-text-2);
	margin-top: auto;
	margin-bottom: 8px;
	font-family: var(--ot-font-primary);
	font-variation-settings: normal;
}

/* Original price */

.e-7e10f2fa > .box > .header > .original
{
	display: inline-flex;
	align-items: center;
	font-family: var(--ot-font-primary);
	font-size: 12.5px;
	color: var(--ot-text-3);
}

.e-7e10f2fa > .box > .header > .original > .strike
{
	text-decoration: line-through;
}

/* Yearly */

.e-7e10f2fa > .box > .header > .yearly
{
	font-size: 12px;
	color: var(--ot-text-3);
	font-family: var(--ot-font-primary);
}

/* ===== FEATURES ===== */

.e-7e10f2fa > .box > .features
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	flex: 1;
	padding-top: var(--ot-spacing-l);
	border-top: 1px solid var(--ot-bg-2-border);
}

.e-7e10f2fa > .box > .features > .feature
{
	display: flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
}

.e-7e10f2fa > .box > .features > .feature > .icon
{
	font-size: 18px;
	color: var(--ot-green);
	flex-shrink: 0;
	margin-top: 1px;
	font-variation-settings: 'FILL' 1;
}

.e-7e10f2fa > .box > .features > .feature > .text
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-1);
	line-height: 1.5;
	font-family: var(--ot-font-primary);
}

/* Disabled */

.e-7e10f2fa > .box > .features > .feature.disabled > .icon
{
	color: var(--ot-text-3);
	font-variation-settings: normal;
}

.e-7e10f2fa > .box > .features > .feature.disabled > .text
{
	color: var(--ot-text-3);
	text-decoration: line-through;
	opacity: 0.7;
}

/* Highlight */

.e-7e10f2fa > .box > .features > .feature.highlight > .icon
{
	color: var(--ot-brand);
}

.e-7e10f2fa > .box > .features > .feature.highlight > .text
{
	font-weight: 600;
	color: var(--ot-text-1);
}

/* ===== ACTION ===== */

.e-7e10f2fa > .box > .action
{
	display: flex;
	margin-top: auto;
}

/* ===== TONE: HIGHLIGHTED ===== */

.e-7e10f2fa > .box.highlighted
{
	border-color: var(--ot-brand);
	box-shadow: 0 0 0 1px var(--ot-brand-opacity), 0 20px 48px -20px var(--ot-brand-opacity);
}

.e-7e10f2fa > .box.highlighted::before
{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--ot-brand) 0%, var(--ot-brand-hover) 100%);
}

.e-7e10f2fa > .box.highlighted:hover
{
	transform: translateY(-4px);
	box-shadow: 0 0 0 1px var(--ot-brand-opacity), 0 24px 56px -20px var(--ot-brand-opacity);
}

/* ===== TONE: FEATURED ===== */

.e-7e10f2fa > .box.featured
{
	background: linear-gradient(160deg, var(--ot-brand) 0%, var(--ot-brand-hover) 100%);
	border-color: var(--ot-brand);
	color: #fff;
}

.e-7e10f2fa > .box.featured::before
{
	content: '';
	position: absolute;
	top: -40%;
	right: -20%;
	width: 60%;
	height: 80%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.18) 0%, transparent 60%);
	pointer-events: none;
}

.e-7e10f2fa > .box.featured > .header > .top > .icon
{
	background: rgba(255, 255, 255, 0.18);
	color: #fff;
}

.e-7e10f2fa > .box.featured > .header > .top > .badge
{
	background: rgba(255, 255, 255, 0.18);
	color: #fff;
}

.e-7e10f2fa > .box.featured > .header > .name { color: #fff; }
.e-7e10f2fa > .box.featured > .header > .desc { color: rgba(255, 255, 255, 0.85); }
.e-7e10f2fa > .box.featured > .header > .price { color: #fff; }

.e-7e10f2fa > .box.featured > .header > .price > .currency,
.e-7e10f2fa > .box.featured > .header > .price > .period
{
	color: rgba(255, 255, 255, 0.85);
}

.e-7e10f2fa > .box.featured > .header > .yearly,
.e-7e10f2fa > .box.featured > .header > .original
{
	color: rgba(255, 255, 255, 0.75);
}

.e-7e10f2fa > .box.featured > .features
{
	border-top-color: rgba(255, 255, 255, 0.18);
}

.e-7e10f2fa > .box.featured > .features > .feature > .icon { color: #fff; }
.e-7e10f2fa > .box.featured > .features > .feature > .text { color: #fff; }

.e-7e10f2fa > .box.featured > .features > .feature.disabled > .icon,
.e-7e10f2fa > .box.featured > .features > .feature.disabled > .text
{
	color: rgba(255, 255, 255, 0.5);
}

.e-7e10f2fa > .box.featured > .ribbon
{
	background: #fff;
	color: var(--ot-brand);
}

/* ===== BACKGROUND ===== */

.e-7e10f2fa > .box.bg-1 { background: var(--ot-bg-1); }
.e-7e10f2fa > .box.bg-1 > .features { border-top-color: var(--ot-bg-1-border); }

.e-7e10f2fa > .box.bg-2 { background: var(--ot-bg-2); }
.e-7e10f2fa > .box.bg-2 > .features { border-top-color: var(--ot-bg-2-border); }

.e-7e10f2fa > .box.bg-3 { background: var(--ot-bg-3); }
.e-7e10f2fa > .box.bg-3 > .features { border-top-color: var(--ot-bg-3-border); }

.e-7e10f2fa > .box.bg-4 { background: var(--ot-bg-4); }
.e-7e10f2fa > .box.bg-4 > .features { border-top-color: var(--ot-bg-4-border); }

/* ===== BORDER ===== */

.e-7e10f2fa > .box.border { border-color: var(--ot-bg-2-border); }
.e-7e10f2fa > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-7e10f2fa > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-7e10f2fa > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-7e10f2fa > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

.e-7e10f2fa > .box.highlighted.border,
.e-7e10f2fa > .box.highlighted
{
	border-color: var(--ot-brand);
}

/* ===== SIZE ===== */

.e-7e10f2fa > .box.size-s
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-m);
}

.e-7e10f2fa > .box.size-s > .header > .top > .icon { width: 36px; height: 36px; }
.e-7e10f2fa > .box.size-s > .header > .top > .icon > i { font-size: 20px; }
.e-7e10f2fa > .box.size-s > .header > .name { font-size: 18px; }
.e-7e10f2fa > .box.size-s > .header > .price > .amount { font-size: 40px; }
.e-7e10f2fa > .box.size-s > .header > .price > .currency { font-size: 15px; margin-top: 4px; }
.e-7e10f2fa > .box.size-s > .header > .price > .period { font-size: 12px; margin-bottom: 6px; }
.e-7e10f2fa > .box.size-s > .features { padding-top: var(--ot-spacing-m); }
.e-7e10f2fa > .box.size-s > .features > .feature > .text { font-size: 12.5px; }

.e-7e10f2fa > .box.size-l
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-l);
}

.e-7e10f2fa > .box.size-l > .header > .top > .icon { width: 52px; height: 52px; }
.e-7e10f2fa > .box.size-l > .header > .top > .icon > i { font-size: 28px; }
.e-7e10f2fa > .box.size-l > .header > .name { font-size: 28px; }
.e-7e10f2fa > .box.size-l > .header > .desc { font-size: 14px; }
.e-7e10f2fa > .box.size-l > .header > .price > .amount { font-size: 72px; letter-spacing: -0.035em; }
.e-7e10f2fa > .box.size-l > .header > .price > .currency { font-size: 22px; margin-top: 10px; }
.e-7e10f2fa > .box.size-l > .header > .price > .period { font-size: 16px; margin-bottom: 10px; }
.e-7e10f2fa > .box.size-l > .features > .feature > .text { font-size: 14px; }
/* ===== CARDS PROFILE ===== */

.e-7dbb0917
{
	display: contents;
}

/* Box */

.e-7dbb0917 > .box
{
	position: relative;
	display: flex;
	width: 100%;
	border-radius: var(--ot-radius-l);
	overflow: hidden;
	transition: border-color var(--ot-transition), box-shadow var(--ot-transition), transform var(--ot-transition);
}

.e-7dbb0917 > .box.vertical
{
	flex-direction: column;
}

.e-7dbb0917 > .box.horizontal
{
	flex-direction: row;
	align-items: center;
	gap: var(--ot-spacing-m);
}

/* Link overlay */

.e-7dbb0917 > .box > .link
{
	position: absolute;
	inset: 0;
	z-index: 1;
}

.e-7dbb0917 > .box:has(> .link):hover
{
	transform: translateY(-2px);
	box-shadow: var(--ot-shadow-m);
}

/* Cover */

.e-7dbb0917 > .box > .cover
{
	height: 120px;
	background-size: cover;
	background-position: center;
	background-color: var(--ot-bg-3);
}

.e-7dbb0917 > .box.horizontal > .cover
{
	display: none;
}

/* Body */

.e-7dbb0917 > .box > .body
{
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-l);
	flex: 1;
	min-width: 0;
}

/* Cover offset */

.e-7dbb0917 > .box.vertical:has(> .cover) > .body
{
	margin-top: -36px;
}

/* Head */

.e-7dbb0917 > .box > .body > .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	min-width: 0;
}

/* Avatar */

.e-7dbb0917 > .box > .body > .head > .avatar
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background-color: var(--ot-bg-3);
	background-size: cover;
	background-position: center;
	border: 3px solid var(--ot-bg-1);
	box-shadow: var(--ot-shadow-s);
	flex-shrink: 0;
}

.e-7dbb0917 > .box > .body > .head > .avatar > i
{
	font-size: 28px;
	color: var(--ot-text-3);
}

/* Identity */

.e-7dbb0917 > .box > .body > .head > .identity
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.e-7dbb0917 > .box > .body > .head > .identity > .name
{
	display: flex;
	align-items: center;
	gap: 5px;
	font-family: var(--ot-font-secondary);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	line-height: 1.2;
	font-variation-settings: 'opsz' 144;
}

.e-7dbb0917 > .box > .body > .head > .identity > .name > .verified
{
	font-size: 15px;
	color: var(--ot-blue);
	font-variation-settings: 'FILL' 1;
}

.e-7dbb0917 > .box > .body > .head > .identity > .role
{
	font-size: 12px;
	color: var(--ot-text-2);
}

/* Description */

.e-7dbb0917 > .box > .body > .description
{
	margin: 0;
	font-size: var(--ot-size-m);
	line-height: 1.55;
	color: var(--ot-text-2);
}

/* Tags */

.e-7dbb0917 > .box > .body > .tags
{
	display: flex;
	flex-wrap: wrap;
	gap: var(--ot-spacing-x);
}

.e-7dbb0917 > .box > .body > .tags > .tag
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 9px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-2);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.e-7dbb0917 > .box > .body > .tags > .tag > i
{
	font-size: 13px;
}

/* Meta */

.e-7dbb0917 > .box > .body > .meta
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

/* Stats */

.e-7dbb0917 > .box > .body > .stats
{
	display: flex;
	gap: var(--ot-spacing-l);
	padding: var(--ot-spacing-m) 0;
	border-top: 1px solid var(--ot-bg-2-border);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-7dbb0917 > .box > .body > .stats > .stat > .num
{
	font-family: var(--ot-font-secondary);
	font-size: 18px;
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1;
	font-variation-settings: 'opsz' 144;
	margin-bottom: 3px;
}

.e-7dbb0917 > .box > .body > .stats > .stat > .label
{
	font-size: 10px;
	font-weight: 600;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

/* Socials */

.e-7dbb0917 > .box > .body > .socials
{
	display: flex;
	gap: var(--ot-spacing-s);
}

.e-7dbb0917 > .box > .body > .socials > .social
{
	position: relative;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--ot-height-m);
	height: var(--ot-height-m);
	border-radius: var(--ot-radius-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-2);
	text-decoration: none;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast), border-color var(--ot-transition-fast), transform var(--ot-transition-fast);
}

.e-7dbb0917 > .box > .body > .socials > .social:hover
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	border-color: var(--ot-brand);
	transform: translateY(-1px);
}

.e-7dbb0917 > .box > .body > .socials > .social > i
{
	font-size: 16px;
}

/* Actions */

.e-7dbb0917 > .box > .body > .actions
{
	position: relative;
	z-index: 3;
	display: flex;
	gap: var(--ot-spacing-s);
}

/* Follow */

.e-7dbb0917 > .box > .body > .follow
{
	position: relative;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-x);
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
	cursor: pointer;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
	align-self: flex-start;
}

.e-7dbb0917 > .box > .body > .follow:hover
{
	border-color: var(--ot-text-1);
	transform: translateY(-1px);
}

.e-7dbb0917 > .box > .body > .follow > i
{
	font-size: 16px;
}

.e-7dbb0917 > .box > .body > .follow.active
{
	background: var(--ot-text-1);
	border-color: var(--ot-text-1);
	color: var(--ot-bg-1);
}

/* ===== HORIZONTAL ===== */

.e-7dbb0917 > .box.horizontal > .body
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-7dbb0917 > .box.horizontal > .body > .stats
{
	padding: 0;
	border: none;
	gap: var(--ot-spacing-m);
}

/* ===== BACKGROUND ===== */

.e-7dbb0917 > .box.bg-1 { background: var(--ot-bg-1); }
.e-7dbb0917 > .box.bg-1 .avatar { border-color: var(--ot-bg-1); }
.e-7dbb0917 > .box.bg-1 .tag { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }
.e-7dbb0917 > .box.bg-1 .social { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }
.e-7dbb0917 > .box.bg-1 .stats { border-color: var(--ot-bg-1-border); }

.e-7dbb0917 > .box.bg-2 { background: var(--ot-bg-2); }
.e-7dbb0917 > .box.bg-2 .avatar { border-color: var(--ot-bg-2); }
.e-7dbb0917 > .box.bg-2 .tag { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }
.e-7dbb0917 > .box.bg-2 .social { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }
.e-7dbb0917 > .box.bg-2 .stats { border-color: var(--ot-bg-2-border); }

.e-7dbb0917 > .box.bg-3 { background: var(--ot-bg-3); }
.e-7dbb0917 > .box.bg-3 .avatar { border-color: var(--ot-bg-3); }
.e-7dbb0917 > .box.bg-3 .tag { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }
.e-7dbb0917 > .box.bg-3 .social { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }
.e-7dbb0917 > .box.bg-3 .stats { border-color: var(--ot-bg-3-border); }

.e-7dbb0917 > .box.bg-4 { background: var(--ot-bg-4); }
.e-7dbb0917 > .box.bg-4 .avatar { border-color: var(--ot-bg-4); }
.e-7dbb0917 > .box.bg-4 .tag { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }
.e-7dbb0917 > .box.bg-4 .social { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }
.e-7dbb0917 > .box.bg-4 .stats { border-color: var(--ot-bg-4-border); }

/* Border */

.e-7dbb0917 > .box.border { border: 1px solid var(--ot-bg-2-border); }
.e-7dbb0917 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-7dbb0917 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-7dbb0917 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-7dbb0917 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

/* Small */

.e-7dbb0917 > .box.size-s > .body
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-7dbb0917 > .box.size-s .avatar { width: 44px; height: 44px; }
.e-7dbb0917 > .box.size-s .avatar > i { font-size: 22px; }
.e-7dbb0917 > .box.size-s .identity > .name { font-size: 15px; }
.e-7dbb0917 > .box.size-s .identity > .role { font-size: var(--ot-size-s); }
.e-7dbb0917 > .box.size-s .description { font-size: 12px; }
.e-7dbb0917 > .box.size-s .stats > .stat > .num { font-size: 16px; }
.e-7dbb0917 > .box.size-s.vertical:has(> .cover) > .body { margin-top: -28px; }

/* Medium */

.e-7dbb0917 > .box.size-m > .body
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-m);
}

.e-7dbb0917 > .box.size-m .avatar { width: 56px; height: 56px; }
.e-7dbb0917 > .box.size-m .avatar > i { font-size: 28px; }
.e-7dbb0917 > .box.size-m .identity > .name { font-size: 17px; }

/* Large */

.e-7dbb0917 > .box.size-l > .body
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-m);
}

.e-7dbb0917 > .box.size-l .avatar { width: 72px; height: 72px; }
.e-7dbb0917 > .box.size-l .avatar > i { font-size: 36px; }
.e-7dbb0917 > .box.size-l .identity > .name { font-size: 20px; }
.e-7dbb0917 > .box.size-l .identity > .role { font-size: var(--ot-size-m); }
.e-7dbb0917 > .box.size-l .description { font-size: 14px; }
.e-7dbb0917 > .box.size-l .stats > .stat > .num { font-size: var(--ot-size-l); }
.e-7dbb0917 > .box.size-l.vertical:has(> .cover) > .body { margin-top: -44px; }
.e-7dbb0917 > .box.size-l > .cover { height: 140px; }
/* ===== CARDS SHARE ===== */

.e-54760d1f
{
	display: contents;
}

/* Box */

.e-54760d1f > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	width: 100%;
	padding: var(--ot-spacing-l);
	border-radius: var(--ot-radius-l);
}

/* Title */

.e-54760d1f > .box > .title
{
	font-size: var(--ot-size-s);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ot-text-3);
	font-family: var(--ot-font-primary);
}

/* Actions */

.e-54760d1f > .box > .actions
{
	display: flex;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

/* Action button */

.e-54760d1f > .box > .actions > .action
{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-x);
	min-width: 38px;
	height: 38px;
	padding: 0 var(--ot-spacing-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	color: var(--ot-text-2);
	cursor: pointer;
	font-family: var(--ot-font-primary);
	font-size: 12.5px;
	font-weight: 600;
	outline: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-54760d1f > .box > .actions > .action:hover
{
	background: var(--ot-bg-2-hover);
	color: var(--ot-text-1);
	transform: translateY(-1px);
}

.e-54760d1f > .box > .actions > .action:active
{
	transform: translateY(0) scale(0.95);
	transition-duration: 100ms;
}

.e-54760d1f > .box > .actions > .action > i
{
	font-size: 17px;
	transition: transform var(--ot-transition);
}

.e-54760d1f > .box > .actions > .action > .count
{
	font-variant-numeric: tabular-nums;
}

/* Copied state */

.e-54760d1f > .box > .actions > .action.copied
{
	background: var(--ot-green-opacity);
	border-color: var(--ot-green);
	color: var(--ot-green);
}

.e-54760d1f > .box > .actions > .action.copied > i
{
	animation: e-54760d1f-pop 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-54760d1f-pop
{
	0% { transform: scale(0.5); opacity: 0; }
	60% { transform: scale(1.2); opacity: 1; }
	100% { transform: scale(1); }
}

/* Saved state */

.e-54760d1f > .box > .actions > .action.saved
{
	background: var(--ot-text-1);
	border-color: var(--ot-text-1);
	color: var(--ot-bg-1);
}

.e-54760d1f > .box > .actions > .action.saved > i
{
	font-variation-settings: 'FILL' 1;
	animation: e-54760d1f-pop 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Liked state */

.e-54760d1f > .box > .actions > .action.liked
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	color: #fff;
}

.e-54760d1f > .box > .actions > .action.liked > i
{
	font-variation-settings: 'FILL' 1;
	animation: e-54760d1f-heart 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-54760d1f-heart
{
	0% { transform: scale(1); }
	30% { transform: scale(0.7); }
	60% { transform: scale(1.3); }
	100% { transform: scale(1); }
}

/* Platforms */

.e-54760d1f > .box > .platforms
{
	display: flex;
	gap: var(--ot-spacing-s);
	padding-top: var(--ot-spacing-m);
	border-top: 1px solid var(--ot-bg-2-border);
	flex-wrap: wrap;
}

.e-54760d1f > .box > .platforms > .platform
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-2);
	text-decoration: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-54760d1f > .box > .platforms > .platform > i
{
	font-size: 17px;
}

.e-54760d1f > .box > .platforms > .platform > svg
{
	width: 16px;
	height: 16px;
	display: block;
}

.e-54760d1f > .box > .platforms > .platform:hover
{
	transform: translateY(-2px);
}

.e-54760d1f > .box > .platforms > .platform[data-platform="twitter"]:hover { background: #1DA1F2; border-color: #1DA1F2; color: #fff; }
.e-54760d1f > .box > .platforms > .platform[data-platform="facebook"]:hover { background: #1877F2; border-color: #1877F2; color: #fff; }
.e-54760d1f > .box > .platforms > .platform[data-platform="linkedin"]:hover { background: #0A66C2; border-color: #0A66C2; color: #fff; }
.e-54760d1f > .box > .platforms > .platform[data-platform="whatsapp"]:hover { background: #25D366; border-color: #25D366; color: #fff; }
.e-54760d1f > .box > .platforms > .platform[data-platform="telegram"]:hover { background: #26A5E4; border-color: #26A5E4; color: #fff; }
.e-54760d1f > .box > .platforms > .platform[data-platform="email"]:hover { background: var(--ot-text-1); border-color: var(--ot-text-1); color: var(--ot-bg-1); }

/* ===== ORIENTATION: VERTICAL ===== */

.e-54760d1f > .box.vertical > .actions
{
	flex-direction: column;
	align-items: stretch;
}

.e-54760d1f > .box.vertical > .actions > .action
{
	justify-content: center;
}

.e-54760d1f > .box.vertical > .platforms
{
	flex-direction: column;
	align-items: stretch;
}

.e-54760d1f > .box.vertical > .platforms > .platform
{
	width: 100%;
	height: 38px;
	border-radius: var(--ot-radius-m);
	justify-content: center;
	gap: var(--ot-spacing-s);
}

/* ===== VARIANT: INLINE ===== */

.e-54760d1f > .box.inline
{
	padding: 0;
	background: transparent !important;
	border: none !important;
	border-radius: 0;
	flex-direction: row;
	align-items: center;
	gap: var(--ot-spacing-m);
}

.e-54760d1f > .box.inline > .title
{
	margin: 0;
}

.e-54760d1f > .box.inline > .platforms
{
	padding-top: 0;
	border-top: none;
	border-left: 1px solid var(--ot-bg-2-border);
	padding-left: var(--ot-spacing-m);
}

/* ===== VARIANT: COMPACT ===== */

.e-54760d1f > .box.compact
{
	padding: var(--ot-spacing-s);
	gap: var(--ot-spacing-x);
}

.e-54760d1f > .box.compact > .title
{
	display: none;
}

.e-54760d1f > .box.compact > .actions > .action
{
	min-width: 34px;
	height: 34px;
	padding: 0 var(--ot-spacing-x);
}

/* ===== BACKGROUND ===== */

.e-54760d1f > .box.bg-1 { background: var(--ot-bg-1); }
.e-54760d1f > .box.bg-1 > .actions > .action { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }
.e-54760d1f > .box.bg-1 > .actions > .action:hover { background: var(--ot-bg-1-hover); }
.e-54760d1f > .box.bg-1 > .platforms { border-color: var(--ot-bg-1-border); }
.e-54760d1f > .box.bg-1 > .platforms > .platform { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }

.e-54760d1f > .box.bg-2 { background: var(--ot-bg-2); }
.e-54760d1f > .box.bg-2 > .actions > .action { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }
.e-54760d1f > .box.bg-2 > .actions > .action:hover { background: var(--ot-bg-2-hover); }
.e-54760d1f > .box.bg-2 > .platforms { border-color: var(--ot-bg-2-border); }
.e-54760d1f > .box.bg-2 > .platforms > .platform { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }

.e-54760d1f > .box.bg-3 { background: var(--ot-bg-3); }
.e-54760d1f > .box.bg-3 > .actions > .action { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }
.e-54760d1f > .box.bg-3 > .actions > .action:hover { background: var(--ot-bg-3-hover); }
.e-54760d1f > .box.bg-3 > .platforms { border-color: var(--ot-bg-3-border); }
.e-54760d1f > .box.bg-3 > .platforms > .platform { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }

.e-54760d1f > .box.bg-4 { background: var(--ot-bg-4); }
.e-54760d1f > .box.bg-4 > .actions > .action { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }
.e-54760d1f > .box.bg-4 > .actions > .action:hover { background: var(--ot-bg-4-hover); }
.e-54760d1f > .box.bg-4 > .platforms { border-color: var(--ot-bg-4-border); }
.e-54760d1f > .box.bg-4 > .platforms > .platform { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }

/* ===== VARIANT: BORDER ===== */

.e-54760d1f > .box.border { border: 1px solid var(--ot-bg-2-border); }
.e-54760d1f > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-54760d1f > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-54760d1f > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-54760d1f > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-54760d1f > .box.size-s
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-54760d1f > .box.size-s > .actions > .action
{
	min-width: 32px;
	height: 32px;
	font-size: var(--ot-size-s);
}

.e-54760d1f > .box.size-s > .actions > .action > i
{
	font-size: 15px;
}

.e-54760d1f > .box.size-s > .platforms > .platform
{
	width: 32px;
	height: 32px;
}

.e-54760d1f > .box.size-s > .platforms > .platform > i
{
	font-size: 15px;
}

.e-54760d1f > .box.size-s > .platforms > .platform > svg
{
	width: 14px;
	height: 14px;
}

.e-54760d1f > .box.size-l
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-l);
}

.e-54760d1f > .box.size-l > .title
{
	font-size: 12.5px;
}

.e-54760d1f > .box.size-l > .actions > .action
{
	min-width: 44px;
	height: 44px;
	padding: 0 var(--ot-spacing-m);
	font-size: 13.5px;
}

.e-54760d1f > .box.size-l > .actions > .action > i
{
	font-size: 19px;
}

.e-54760d1f > .box.size-l > .platforms > .platform
{
	width: 44px;
	height: 44px;
}

.e-54760d1f > .box.size-l > .platforms > .platform > i
{
	font-size: 19px;
}

.e-54760d1f > .box.size-l > .platforms > .platform > svg
{
	width: 18px;
	height: 18px;
}
/* Root */

.e-7e98a114
{
	display: flex;
	width: 100%;
}

/* Holder */

.e-7e98a114 > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	min-width: 0;
	border-radius: var(--ot-radius-l);
	border: 1px solid transparent;
	background: transparent;
	color: inherit;
	text-decoration: none;
	overflow: hidden;
	transition: background var(--ot-transition), border-color var(--ot-transition), transform var(--ot-transition), box-shadow var(--ot-transition);
}

.e-7e98a114 > .box.horizontal
{
	flex-direction: row;
	align-items: stretch;
}

.e-7e98a114 > .box.clickable
{
	cursor: pointer;
}

.e-7e98a114 > .box.disabled
{
	opacity: 0.5;
	cursor: not-allowed;
	pointer-events: none;
}

.e-7e98a114 > .box.active
{
	border-color: var(--ot-brand);
	box-shadow: 0 0 0 3px var(--ot-brand-opacity);
}

/* ===== BODY ===== */

.e-7e98a114 > .box > .body
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	z-index: 1;
}

/* ===== HEAD ===== */

.e-7e98a114 > .box > .body > .head
{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--ot-spacing-s);
	width: 100%;
}

.e-7e98a114 > .box > .body > .head > .head-text
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
}

.e-7e98a114 > .box > .body > .head > .head-text > .label
{
	font-family: var(--ot-font-primary);
	font-size: 11px;
	font-weight: 700;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	line-height: 1.4;
}

/* Icon wrap */

.e-7e98a114 > .box > .body > .head > .icon-wrap
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
}

.e-7e98a114 > .box > .body > .head > .icon-wrap > i
{
	font-size: 18px;
}

.e-7e98a114 > .box > .body > .head > .icon-wrap.brand
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand-border);
	color: var(--ot-brand);
}

.e-7e98a114 > .box > .body > .head > .icon-wrap.blue
{
	background: var(--ot-blue-opacity);
	border-color: var(--ot-blue-border);
	color: var(--ot-blue);
}

.e-7e98a114 > .box > .body > .head > .icon-wrap.red
{
	background: var(--ot-red-opacity);
	border-color: var(--ot-red-border);
	color: var(--ot-red);
}

.e-7e98a114 > .box > .body > .head > .icon-wrap.orange
{
	background: var(--ot-orange-opacity);
	border-color: var(--ot-orange-border);
	color: var(--ot-orange);
}

.e-7e98a114 > .box > .body > .head > .icon-wrap.green
{
	background: var(--ot-green-opacity);
	border-color: var(--ot-green-border);
	color: var(--ot-green);
}

.e-7e98a114 > .box > .body > .head > .icon-wrap.bg-1 { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-7e98a114 > .box > .body > .head > .icon-wrap.bg-2 { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-7e98a114 > .box > .body > .head > .icon-wrap.bg-3 { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-7e98a114 > .box > .body > .head > .icon-wrap.bg-4 { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

/* ===== VALUE ROW ===== */

.e-7e98a114 > .box > .body > .value-row
{
	display: flex;
	align-items: baseline;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

.e-7e98a114 > .box > .body > .value-row > .value
{
	font-family: var(--ot-font-secondary);
	font-size: 32px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.025em;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
}

.e-7e98a114 > .box > .body > .value-row > .delta
{
	display: inline-flex;
	align-items: center;
	gap: 3px;
	padding: 3px 8px;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
}

.e-7e98a114 > .box > .body > .value-row > .delta > i
{
	font-size: 14px;
}

.e-7e98a114 > .box > .body > .value-row > .delta > .delta-label
{
	font-weight: 500;
	opacity: 0.7;
}

.e-7e98a114 > .box > .body > .value-row > .delta.delta-up
{
	background: var(--ot-green-opacity);
	color: var(--ot-green);
}

.e-7e98a114 > .box > .body > .value-row > .delta.delta-down
{
	background: var(--ot-red-opacity);
	color: var(--ot-red);
}

.e-7e98a114 > .box > .body > .value-row > .delta.delta-neutral
{
	background: var(--ot-bg-2);
	color: var(--ot-text-2);
}

/* ===== DESCRIPTION ===== */

.e-7e98a114 > .box > .body > .description
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	margin: 0;
	line-height: 1.5;
}

/* ===== SPARKLINE ===== */

.e-7e98a114 > .box > .sparkline
{
	width: 100%;
	margin-top: auto;
	padding: 0 var(--ot-spacing-m) var(--ot-spacing-s);
	pointer-events: none;
}

.e-7e98a114 > .box.horizontal > .sparkline
{
	width: 40%;
	align-self: center;
	padding: var(--ot-spacing-m);
	margin-top: 0;
}

/* ===== BACKGROUND VARIANTS ===== */

.e-7e98a114 > .box.bg-1 { background: var(--ot-bg-1); }
.e-7e98a114 > .box.bg-2 { background: var(--ot-bg-2); }
.e-7e98a114 > .box.bg-3 { background: var(--ot-bg-3); }
.e-7e98a114 > .box.bg-4 { background: var(--ot-bg-4); }

.e-7e98a114 > .box.border { border-color: var(--ot-bg-2-border); }
.e-7e98a114 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-7e98a114 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-7e98a114 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-7e98a114 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* Hover lift */

.e-7e98a114 > .box.hover-lift.clickable:hover
{
	transform: translateY(-1px);
	border-color: var(--ot-bg-3-border);
	box-shadow: 0 4px 16px -8px rgba(20, 20, 30, 0.08);
}

/* Gradient */

.e-7e98a114 > .box.gradient
{
	background: var(--ot-bg-1);
	border: 1px solid transparent;
	background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
	background-image: linear-gradient(var(--ot-bg-1), var(--ot-bg-1)), linear-gradient(135deg, var(--ot-brand), var(--ot-blue));
}

/* Clickable non-lift hover */

.e-7e98a114 > .box.clickable:not(.hover-lift):hover
{
	border-color: var(--ot-bg-3-border);
}

/* ===== SIZE VARIANTS ===== */

.e-7e98a114 > .box.size-s > .body
{
	padding: var(--ot-spacing-s);
	gap: var(--ot-spacing-x);
}

.e-7e98a114 > .box.size-s > .body > .value-row > .value
{
	font-size: 22px;
}

.e-7e98a114 > .box.size-s > .body > .head > .icon-wrap
{
	width: 28px;
	height: 28px;
}

.e-7e98a114 > .box.size-s > .body > .head > .icon-wrap > i
{
	font-size: 15px;
}

.e-7e98a114 > .box.size-m > .body
{
	padding: var(--ot-spacing-m);
}

.e-7e98a114 > .box.size-l > .body
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-m);
}

.e-7e98a114 > .box.size-l > .body > .value-row > .value
{
	font-size: 42px;
}

.e-7e98a114 > .box.size-l > .body > .head > .icon-wrap
{
	width: 44px;
	height: 44px;
	border-radius: var(--ot-radius-l);
}

.e-7e98a114 > .box.size-l > .body > .head > .icon-wrap > i
{
	font-size: 22px;
}

/* ===== LOADING ===== */

.e-7e98a114 > .box.loading > .body > .head > .head-text > .label,
.e-7e98a114 > .box.loading > .body > .value-row > .value,
.e-7e98a114 > .box.loading > .body > .head > .icon-wrap
{
	background: linear-gradient(90deg, var(--ot-bg-2) 0%, var(--ot-bg-3) 50%, var(--ot-bg-2) 100%);
	background-size: 200% 100%;
	animation: e-7e98a114-shimmer 1.4s infinite linear;
	color: transparent !important;
	border-color: transparent !important;
}

@keyframes e-7e98a114-shimmer
{
	from { background-position: 200% 0; }
	to { background-position: -200% 0; }
}
/* ===== CHARTS BAR ===== */

.e-6f75e2cf
{
	display: contents;
}

/* Box */

.e-6f75e2cf > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--ot-spacing-m);
	border-radius: var(--ot-radius-l);
	border: 1px solid transparent;
	padding: var(--ot-spacing-l);
}

/* Inline */

.e-6f75e2cf > .box.inline
{
	padding: 0;
	background: transparent !important;
	border-color: transparent !important;
	gap: var(--ot-spacing-s);
}

/* Clean */

.e-6f75e2cf > .box.clean
{
	padding: 0;
	background: transparent !important;
	border-color: transparent !important;
}

/* ===== HEAD ===== */

.e-6f75e2cf > .box > .head
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-6f75e2cf > .box > .head > .title
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
}

.e-6f75e2cf > .box > .head > .description
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

/* ===== CANVAS ===== */

.e-6f75e2cf > .box > .canvas
{
	position: relative;
	width: 100%;
}

/* ===== GRID ===== */

.e-6f75e2cf > .box > .canvas > .grid
{
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.e-6f75e2cf > .box > .canvas > .grid > .grid-line
{
	position: absolute;
	left: 32px;
	right: 0;
	height: 1px;
	background: var(--ot-bg-2-border);
}

.e-6f75e2cf > .box > .canvas > .grid.horizontal > .grid-line
{
	left: 0;
	right: 0;
	top: 0;
	bottom: 24px;
	width: 1px;
	height: auto;
}

.e-6f75e2cf > .box > .canvas > .grid > .grid-line > .grid-value
{
	position: absolute;
	top: 50%;
	left: -32px;
	transform: translateY(-50%);
	width: 28px;
	text-align: right;
	font-family: var(--ot-font-primary);
	font-size: 10px;
	font-weight: 600;
	color: var(--ot-text-3);
}

.e-6f75e2cf > .box > .canvas > .grid.horizontal > .grid-line > .grid-value
{
	top: auto;
	bottom: -18px;
	left: 50%;
	transform: translateX(-50%);
	width: auto;
	text-align: center;
}

/* ===== BARS ===== */

.e-6f75e2cf > .box > .canvas > .bars
{
	position: relative;
	display: flex;
	height: 100%;
	gap: var(--ot-spacing-s);
	padding-left: 36px;
}

.e-6f75e2cf > .box.horizontal > .canvas > .bars
{
	flex-direction: column;
	padding-left: 0;
	padding-bottom: 24px;
}

/* Bar wrap */

.e-6f75e2cf > .box > .canvas > .bars > .bar-wrap
{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	flex: 1;
	min-width: 0;
	cursor: pointer;
}

.e-6f75e2cf > .box.horizontal > .canvas > .bars > .bar-wrap
{
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

/* Bar value */

.e-6f75e2cf > .box > .canvas > .bars > .bar-wrap > .bar-value
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-text-1);
	margin-bottom: var(--ot-spacing-x);
	line-height: 1;
}

.e-6f75e2cf > .box.horizontal > .canvas > .bars > .bar-wrap > .bar-value
{
	margin-bottom: 0;
	margin-left: var(--ot-spacing-s);
	order: 2;
}

/* Bar */

.e-6f75e2cf > .box > .canvas > .bars > .bar-wrap > .bar
{
	width: 100%;
	background: var(--ot-brand);
	border-radius: var(--ot-radius-s) var(--ot-radius-s) 0 0;
	min-height: 2px;
	opacity: 0.8;
	transition: opacity var(--ot-transition), filter var(--ot-transition);
	animation: e-6f75e2cf-rise 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;
	transform-origin: bottom;
}

.e-6f75e2cf > .box.horizontal > .canvas > .bars > .bar-wrap > .bar
{
	height: 16px;
	width: 0;
	border-radius: 0 var(--ot-radius-s) var(--ot-radius-s) 0;
	animation: e-6f75e2cf-grow 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;
	transform-origin: left;
}

@keyframes e-6f75e2cf-rise
{
	from { transform: scaleY(0); }
	to { transform: scaleY(1); }
}

@keyframes e-6f75e2cf-grow
{
	from { transform: scaleX(0); }
	to { transform: scaleX(1); }
}

/* Bar hover / active */

.e-6f75e2cf > .box > .canvas > .bars > .bar-wrap:hover > .bar,
.e-6f75e2cf > .box > .canvas > .bars > .bar-wrap.active > .bar
{
	opacity: 1;
	filter: brightness(1.05);
}

/* Bar label */

.e-6f75e2cf > .box > .canvas > .bars > .bar-wrap > .bar-label
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-3);
	margin-top: 6px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
	text-align: center;
}

.e-6f75e2cf > .box.horizontal > .canvas > .bars > .bar-wrap > .bar-label
{
	margin-top: 0;
	margin-right: var(--ot-spacing-s);
	order: 0;
	width: 80px;
	text-align: right;
}

/* ===== BAR COLORS ===== */

.e-6f75e2cf .bar-wrap.color-brand > .bar { background: var(--ot-brand); }
.e-6f75e2cf .bar-wrap.color-blue > .bar { background: var(--ot-blue); }
.e-6f75e2cf .bar-wrap.color-red > .bar { background: var(--ot-red); }
.e-6f75e2cf .bar-wrap.color-orange > .bar { background: var(--ot-orange); }
.e-6f75e2cf .bar-wrap.color-green > .bar { background: var(--ot-green); }

/* ===== BACKGROUND ===== */

.e-6f75e2cf > .box.bg-1 { background: var(--ot-bg-1); }
.e-6f75e2cf > .box.bg-2 { background: var(--ot-bg-2); }
.e-6f75e2cf > .box.bg-3 { background: var(--ot-bg-3); }
.e-6f75e2cf > .box.bg-4 { background: var(--ot-bg-4); }

/* Border */

.e-6f75e2cf > .box.border { border-color: var(--ot-bg-2-border); }
.e-6f75e2cf > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-6f75e2cf > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-6f75e2cf > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-6f75e2cf > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-6f75e2cf > .box.size-s
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-6f75e2cf > .box.size-l
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-l);
}
/* ===== CHARTS DONUT ===== */

.e-6965df40
{
	display: contents;
}

/* Box */

.e-6965df40 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-l);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-l);
}

/* ===== HEAD ===== */

.e-6965df40 > .box > .head
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-6965df40 > .box > .head > .title
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
}

.e-6965df40 > .box > .head > .desc
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

/* ===== CANVAS ===== */

.e-6965df40 > .box > .canvas
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-l);
	flex-wrap: wrap;
}

/* Chart */

.e-6965df40 > .box > .canvas > .chart
{
	position: relative;
	flex-shrink: 0;
}

.e-6965df40 > .box > .canvas > .chart > svg
{
	display: block;
	width: 100%;
	height: 100%;
	overflow: visible;
}

/* Track */

.e-6965df40 svg .track
{
	stroke: var(--ot-bg-2);
}

/* Segments */

.e-6965df40 svg .segment
{
	cursor: pointer;
	animation: e-6965df40-draw 0.8s cubic-bezier(0.22, 1, 0.36, 1);
	transition: stroke-width var(--ot-transition), filter var(--ot-transition);
}

.e-6965df40 svg .segment:hover
{
	filter: brightness(1.08);
}

@keyframes e-6965df40-draw
{
	from { opacity: 0; }
	to { opacity: 1; }
}

/* Segment colors */

.e-6965df40 svg .segment.color-brand  { stroke: var(--ot-brand); }
.e-6965df40 svg .segment.color-blue   { stroke: var(--ot-blue); }
.e-6965df40 svg .segment.color-green  { stroke: var(--ot-green); }
.e-6965df40 svg .segment.color-orange { stroke: var(--ot-orange); }
.e-6965df40 svg .segment.color-red    { stroke: var(--ot-red); }

/* Center */

.e-6965df40 > .box > .canvas > .chart > .center
{
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	pointer-events: none;
}

.e-6965df40 > .box > .canvas > .chart > .center > .value
{
	font-family: var(--ot-font-secondary);
	font-size: 28px;
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1;
	font-variation-settings: 'opsz' 144;
}

.e-6965df40 > .box > .canvas > .chart > .center > .label
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

/* ===== LEGEND ===== */

.e-6965df40 > .box > .canvas > .legend
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: var(--ot-spacing-s);
}

.e-6965df40 > .box > .canvas > .legend > .item
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
}

.e-6965df40 > .box > .canvas > .legend > .item > .dot
{
	width: 10px;
	height: 10px;
	border-radius: 50%;
	flex-shrink: 0;
}

.e-6965df40 > .box > .canvas > .legend > .item > .name
{
	flex: 1;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-6965df40 > .box > .canvas > .legend > .item > .percent
{
	font-weight: 700;
	color: var(--ot-text-1);
	flex-shrink: 0;
}

/* Legend dot colors */

.e-6965df40 .item.color-brand  > .dot { background: var(--ot-brand); }
.e-6965df40 .item.color-blue   > .dot { background: var(--ot-blue); }
.e-6965df40 .item.color-green  > .dot { background: var(--ot-green); }
.e-6965df40 .item.color-orange > .dot { background: var(--ot-orange); }
.e-6965df40 .item.color-red    > .dot { background: var(--ot-red); }

/* ===== BACKGROUND ===== */

.e-6965df40 > .box.bg-1 { background: var(--ot-bg-1); }
.e-6965df40 > .box.bg-2 { background: var(--ot-bg-2); }
.e-6965df40 > .box.bg-3 { background: var(--ot-bg-3); }
.e-6965df40 > .box.bg-4 { background: var(--ot-bg-4); }

/* Border per-bg */

.e-6965df40 > .box.border                { border-color: var(--ot-bg-2-border); }
.e-6965df40 > .box.bg-1.border           { border-color: var(--ot-bg-1-border); }
.e-6965df40 > .box.bg-2.border           { border-color: var(--ot-bg-2-border); }
.e-6965df40 > .box.bg-3.border           { border-color: var(--ot-bg-3-border); }
.e-6965df40 > .box.bg-4.border           { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-6965df40 > .box.size-s { padding: var(--ot-spacing-m); gap: var(--ot-spacing-s); }
.e-6965df40 > .box.size-l { padding: var(--ot-spacing-l); gap: var(--ot-spacing-l); }

/* ===== MODIFIERS ===== */

.e-6965df40 > .box.clean
{
	padding: 0;
	background: transparent !important;
	border-color: transparent !important;
}

.e-6965df40 > .box.inline
{
	padding: 0;
	background: transparent !important;
	border-color: transparent !important;
	gap: var(--ot-spacing-s);
}
/* ===== CHARTS LINE ===== */

.e-7f41cd6a
{
	display: contents;
}

/* Box */

.e-7f41cd6a > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--ot-spacing-m);
	border-radius: var(--ot-radius-l);
	border: 1px solid transparent;
	padding: var(--ot-spacing-l);
}

.e-7f41cd6a > .box.inline
{
	padding: 0;
	background: transparent !important;
	border-color: transparent !important;
	gap: var(--ot-spacing-s);
}

.e-7f41cd6a > .box.clean
{
	background: transparent !important;
	border-color: transparent !important;
	padding: 0;
}

/* ===== HEAD ===== */

.e-7f41cd6a > .box > .head
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-7f41cd6a > .box > .head > .title
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
}

.e-7f41cd6a > .box > .head > .description
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

/* ===== CANVAS ===== */

.e-7f41cd6a > .box > .canvas
{
	width: 100%;
	position: relative;
}

.e-7f41cd6a > .box > .canvas > svg
{
	display: block;
	width: 100%;
	height: auto;
	overflow: visible;
}

/* Grid */

.e-7f41cd6a > .box > .canvas > svg > .grid > .grid-line
{
	stroke: var(--ot-bg-2-border);
	stroke-width: 1;
	vector-effect: non-scaling-stroke;
}

.e-7f41cd6a > .box > .canvas > svg > .grid > .grid-label
{
	font-family: var(--ot-font-primary);
	font-size: 10px;
	font-weight: 600;
	fill: var(--ot-text-3);
}

/* X labels */

.e-7f41cd6a > .box > .canvas > svg > .labels > .x-label
{
	font-family: var(--ot-font-primary);
	font-size: 10px;
	font-weight: 500;
	fill: var(--ot-text-3);
}

/* ===== LINE ===== */

.e-7f41cd6a > .box > .canvas > svg > .series > .line
{
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	vector-effect: non-scaling-stroke;
	animation: e-7f41cd6a-draw 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Area */

.e-7f41cd6a > .box > .canvas > svg > .series > .area
{
	opacity: 0.3;
	animation: e-7f41cd6a-fade 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Dots */

.e-7f41cd6a > .box > .canvas > svg > .series > .dot
{
	stroke: var(--ot-bg-1);
	stroke-width: 2;
	cursor: pointer;
	transition: r var(--ot-transition);
}

.e-7f41cd6a > .box > .canvas > svg > .series > .dot:hover
{
	r: 5;
}

@keyframes e-7f41cd6a-draw
{
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes e-7f41cd6a-fade
{
	from { opacity: 0; }
	to { opacity: 0.3; }
}

/* ===== SERIES COLORS ===== */

.e-7f41cd6a .series.color-brand > .line { stroke: var(--ot-brand); }
.e-7f41cd6a .series.color-brand > .dot { fill: var(--ot-brand); }
.e-7f41cd6a .series.color-brand > .area { fill: var(--ot-brand); }
.area-start.color-brand { stop-color: var(--ot-brand); stop-opacity: 0.5; }
.area-end.color-brand { stop-color: var(--ot-brand); stop-opacity: 0; }

.e-7f41cd6a .series.color-blue > .line { stroke: var(--ot-blue); }
.e-7f41cd6a .series.color-blue > .dot { fill: var(--ot-blue); }
.e-7f41cd6a .series.color-blue > .area { fill: var(--ot-blue); }
.area-start.color-blue { stop-color: var(--ot-blue); stop-opacity: 0.5; }
.area-end.color-blue { stop-color: var(--ot-blue); stop-opacity: 0; }

.e-7f41cd6a .series.color-red > .line { stroke: var(--ot-red); }
.e-7f41cd6a .series.color-red > .dot { fill: var(--ot-red); }
.e-7f41cd6a .series.color-red > .area { fill: var(--ot-red); }
.area-start.color-red { stop-color: var(--ot-red); stop-opacity: 0.5; }
.area-end.color-red { stop-color: var(--ot-red); stop-opacity: 0; }

.e-7f41cd6a .series.color-orange > .line { stroke: var(--ot-orange); }
.e-7f41cd6a .series.color-orange > .dot { fill: var(--ot-orange); }
.e-7f41cd6a .series.color-orange > .area { fill: var(--ot-orange); }
.area-start.color-orange { stop-color: var(--ot-orange); stop-opacity: 0.5; }
.area-end.color-orange { stop-color: var(--ot-orange); stop-opacity: 0; }

.e-7f41cd6a .series.color-green > .line { stroke: var(--ot-green); }
.e-7f41cd6a .series.color-green > .dot { fill: var(--ot-green); }
.e-7f41cd6a .series.color-green > .area { fill: var(--ot-green); }
.area-start.color-green { stop-color: var(--ot-green); stop-opacity: 0.5; }
.area-end.color-green { stop-color: var(--ot-green); stop-opacity: 0; }

/* ===== LEGEND ===== */

.e-7f41cd6a > .box > .legend
{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--ot-spacing-m);
}

.e-7f41cd6a > .box > .legend > .legend-item
{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
}

.e-7f41cd6a > .box > .legend > .legend-item > .dot-marker
{
	width: 10px;
	height: 10px;
	border-radius: 50%;
}

.e-7f41cd6a > .box > .legend > .legend-item.color-brand > .dot-marker { background: var(--ot-brand); }
.e-7f41cd6a > .box > .legend > .legend-item.color-blue > .dot-marker { background: var(--ot-blue); }
.e-7f41cd6a > .box > .legend > .legend-item.color-red > .dot-marker { background: var(--ot-red); }
.e-7f41cd6a > .box > .legend > .legend-item.color-orange > .dot-marker { background: var(--ot-orange); }
.e-7f41cd6a > .box > .legend > .legend-item.color-green > .dot-marker { background: var(--ot-green); }

/* ===== BACKGROUND ===== */

.e-7f41cd6a > .box.bg-1 { background: var(--ot-bg-1); }
.e-7f41cd6a > .box.bg-2 { background: var(--ot-bg-2); }
.e-7f41cd6a > .box.bg-3 { background: var(--ot-bg-3); }
.e-7f41cd6a > .box.bg-4 { background: var(--ot-bg-4); }

/* Border */

.e-7f41cd6a > .box.border { border-color: var(--ot-bg-2-border); }
.e-7f41cd6a > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-7f41cd6a > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-7f41cd6a > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-7f41cd6a > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-7f41cd6a > .box.size-s { padding: var(--ot-spacing-m); gap: var(--ot-spacing-s); }
.e-7f41cd6a > .box.size-m { padding: var(--ot-spacing-l); }
.e-7f41cd6a > .box.size-l { padding: var(--ot-spacing-l); gap: var(--ot-spacing-l); }
/* ===== CORE BUILDER ===== */

.e-7d599f7d
{
	display: flex;
	width: 100%;
}

/* Box */

.e-7d599f7d > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--ot-spacing-l);
}

.e-7d599f7d > .box.has-steps.steps-vertical
{
	flex-direction: row;
	align-items: flex-start;
	gap: var(--ot-spacing-m);
}

.e-7d599f7d > .box.has-steps.steps-horizontal
{
	flex-direction: column;
	gap: var(--ot-spacing-m);
}

/* Steps sidebar */

.e-7d599f7d > .box.steps-vertical > .steps
{
	flex-shrink: 0;
	width: 260px;
	min-width: 260px;
	max-width: 260px;
	position: sticky;
	top: 0;
}

.e-7d599f7d > .box.steps-horizontal > .steps
{
	width: 100%;
}

/* Main */

.e-7d599f7d > .box > .main
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: var(--ot-spacing-l);
}

/* Sections */

.e-7d599f7d > .box > .main > .sections
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-l);
}

.e-7d599f7d > .box > .main > .sections > .step-panel
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-l);
}

/* Grid */

.e-7d599f7d .grid
{
	display: grid;
	gap: var(--ot-spacing-m);
	width: 100%;
}

/* Footer */

.e-7d599f7d > .box > .main > .footer
{
	display: flex;
	justify-content: flex-end;
}

/* ===== BACKGROUND ===== */

.e-7d599f7d > .box.bg-1 { background: var(--ot-bg-1); padding: var(--ot-spacing-l); border-radius: var(--ot-radius-m); }
.e-7d599f7d > .box.bg-2 { background: var(--ot-bg-2); padding: var(--ot-spacing-l); border-radius: var(--ot-radius-m); }
.e-7d599f7d > .box.bg-3 { background: var(--ot-bg-3); padding: var(--ot-spacing-l); border-radius: var(--ot-radius-m); }
.e-7d599f7d > .box.bg-4 { background: var(--ot-bg-4); padding: var(--ot-spacing-l); border-radius: var(--ot-radius-m); }

/* ===== BORDER ===== */

.e-7d599f7d > .box.border
{
	border: 1px solid var(--ot-bg-2-border);
	padding: var(--ot-spacing-l);
	border-radius: var(--ot-radius-m);
}

/* ===== SIZE ===== */

.e-7d599f7d > .box.size-s { gap: var(--ot-spacing-m); }
.e-7d599f7d > .box.size-s > .main { gap: var(--ot-spacing-m); }
.e-7d599f7d > .box.size-s > .main > .sections { gap: var(--ot-spacing-m); }
.e-7d599f7d > .box.size-s > .main > .sections > .step-panel { gap: var(--ot-spacing-m); }
.e-7d599f7d > .box.size-s .grid { gap: var(--ot-spacing-s); }

.e-7d599f7d > .box.size-l .grid { gap: var(--ot-spacing-l); }

/* ===== RESPONSIVE ===== */

@media (max-width: 900px)
{
	.e-7d599f7d > .box.has-steps
	{
		flex-direction: column;
	}

	.e-7d599f7d > .box > .steps
	{
		width: 100%;
		position: static;
	}

	.e-7d599f7d .grid
	{
		grid-template-columns: 1fr !important;
	}
}
/* ===== CORE REPEATER ===== */

.e-d62eba0
{
	display: flex;
	width: 100%;
}

/* Box */

.e-d62eba0 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	width: 100%;
	border-radius: var(--ot-radius-m);
	border: 1px solid transparent;
}

/* ===== ROWS ===== */

.e-d62eba0 > .box > .rows
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* Row */

.e-d62eba0 > .box > .rows > .row
{
	position: relative;
	display: flex;
	align-items: stretch;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	transition: background var(--ot-transition), border-color var(--ot-transition);
}

.e-d62eba0 > .box > .rows > .row:hover
{
	border-color: var(--ot-bg-3-border);
}

/* Reorder */

.e-d62eba0 > .box > .rows > .row > .reorder
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	gap: 2px;
	align-self: center;
}

.e-d62eba0 > .box > .rows > .row > .reorder > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 18px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-d62eba0 > .box > .rows > .row > .reorder > .action:hover:not(:disabled)
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

.e-d62eba0 > .box > .rows > .row > .reorder > .action:disabled
{
	opacity: 0.3;
	cursor: not-allowed;
}

.e-d62eba0 > .box > .rows > .row > .reorder > .action > i
{
	font-size: 18px;
}

/* Number */

.e-d62eba0 > .box > .rows > .row > .number
{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	align-self: center;
	border: 1px solid transparent;
	border-radius: 50%;
	font-family: var(--ot-font-primary);
	font-size: 11px;
	font-weight: 700;
	color: var(--ot-text-2);
}

/* Fields */

.e-d62eba0 > .box > .rows > .row > .fields
{
	display: flex;
	flex: 1;
	gap: var(--ot-spacing-s);
	min-width: 0;
}

.e-d62eba0 > .box.vertical > .rows > .row > .fields
{
	flex-direction: column;
}

/* Field */

.e-d62eba0 > .box > .rows > .row > .fields > .field
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
	flex: 1;
	min-width: 0;
}

.e-d62eba0 > .box > .rows > .row > .fields > .field > .field-info
{
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.e-d62eba0 > .box > .rows > .row > .fields > .field > .field-info > .field-label
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-2);
	line-height: 1.2;
}

.e-d62eba0 > .box > .rows > .row > .fields > .field > .field-info > .field-description
{
	font-family: var(--ot-font-primary);
	font-size: 10.5px;
	color: var(--ot-text-3);
	line-height: 1.3;
}

/* Hide labels on subsequent rows in horizontal mode */

.e-d62eba0 > .box.horizontal > .rows > .row:not(:first-child) .field > .field-info
{
	display: none;
}

/* Row actions */

.e-d62eba0 > .box > .rows > .row > .actions
{
	display: flex;
	align-items: center;
	gap: 2px;
	flex-shrink: 0;
	align-self: center;
}

.e-d62eba0 > .box > .rows > .row > .actions > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-d62eba0 > .box > .rows > .row > .actions > .action:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

.e-d62eba0 > .box > .rows > .row > .actions > .action.danger:hover
{
	background: var(--ot-red-opacity);
	color: var(--ot-red);
}

.e-d62eba0 > .box > .rows > .row > .actions > .action > i
{
	font-size: 16px;
}

/* ===== EMPTY ===== */

.e-d62eba0 > .box > .empty
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-l);
	border: 1px dashed var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
}

.e-d62eba0 > .box > .empty > .empty-icon
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--ot-bg-2);
	color: var(--ot-text-3);
}

.e-d62eba0 > .box > .empty > .empty-icon > i
{
	font-size: 24px;
}

.e-d62eba0 > .box > .empty > .empty-text
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
}

/* ===== FOOTER ===== */

.e-d62eba0 > .box > .footer
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ot-spacing-s);
}

.e-d62eba0 > .box > .footer > .counter
{
	font-family: var(--ot-font-primary);
	font-size: 11px;
	font-weight: 600;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.e-d62eba0 > .box > .footer > .footer-actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.e-d62eba0 > .box > .empty > .empty-actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

/* ===== ITERATION ===== */

.e-d62eba0 > .box > .iteration
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* Iteration chip */

.e-d62eba0 > .box > .iteration > .iteration-chip
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: var(--ot-brand-opacity);
	border: 1px solid var(--ot-brand-opacity);
	border-radius: var(--ot-radius-m);
	transition: border-color var(--ot-transition);
}

.e-d62eba0 > .box > .iteration > .iteration-chip:hover
{
	border-color: var(--ot-brand);
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-icon
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-brand);
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-text
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: 2px;
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-text > .iteration-label
{
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ot-text-3);
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-text > .iteration-expression
{
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-brand);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-count
{
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	padding: 2px var(--ot-spacing-s);
	background: var(--ot-bg-1);
	border-radius: 100px;
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-2);
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 26px;
	height: 26px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-brand);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-action:hover
{
	background: var(--ot-bg-1);
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-action.danger:hover
{
	background: rgba(244,63,94,0.18);
	color: var(--ot-red);
}

.e-d62eba0 > .box > .iteration > .iteration-chip > .iteration-action > i
{
	font-size: 14px;
}

/* Iteration template editor */

.e-d62eba0 > .box > .iteration > .iteration-template
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
}

.e-d62eba0 > .box > .iteration > .iteration-template > .iteration-template-head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding-bottom: var(--ot-spacing-s);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-d62eba0 > .box > .iteration > .iteration-template > .iteration-template-head > i
{
	font-size: 16px;
	color: var(--ot-brand);
	flex-shrink: 0;
}

.e-d62eba0 > .box > .iteration > .iteration-template > .iteration-template-head > .iteration-template-label
{
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ot-text-2);
}

.e-d62eba0 > .box > .iteration > .iteration-template > .iteration-template-head > .iteration-template-hint
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-d62eba0 > .box > .iteration > .iteration-template > .iteration-template-head > .iteration-template-hint > code
{
	padding: 1px 5px;
	background: var(--ot-bg-1);
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: 11px;
	color: var(--ot-text-2);
}

.e-d62eba0 > .box > .iteration > .iteration-template > .fields
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* Iteration preview */

.e-d62eba0 > .box > .iteration > .iteration-preview
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: var(--ot-spacing-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	max-height: 200px;
	overflow-y: auto;
}

.e-d62eba0 > .box > .iteration > .iteration-preview > .iteration-preview-head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ot-text-3);
}

.e-d62eba0 > .box > .iteration > .iteration-preview > .iteration-preview-head > i
{
	font-size: 13px;
}

.e-d62eba0 > .box > .iteration > .iteration-preview > .iteration-row
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: 4px var(--ot-spacing-s);
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-s);
}

.e-d62eba0 > .box > .iteration > .iteration-preview > .iteration-row:nth-child(odd)
{
	background: var(--ot-bg-1);
}

.e-d62eba0 > .box > .iteration > .iteration-preview > .iteration-row > .iteration-row-index
{
	flex-shrink: 0;
	width: 22px;
	color: var(--ot-text-3);
	font-weight: 700;
	text-align: right;
}

.e-d62eba0 > .box > .iteration > .iteration-preview > .iteration-row > .iteration-row-text
{
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: var(--ot-text-2);
}

/* Iteration empty */

.e-d62eba0 > .box > .iteration > .iteration-empty
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border: 1px dashed var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	color: var(--ot-text-3);
	font-size: var(--ot-size-s);
}

.e-d62eba0 > .box > .iteration > .iteration-empty > i
{
	font-size: 16px;
}

/* ===== BACKGROUND ===== */

.e-d62eba0 > .box.bg-1 > .rows > .row { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-d62eba0 > .box.bg-1 > .rows > .row:hover { background: var(--ot-bg-1-hover); }
.e-d62eba0 > .box.bg-1 > .empty { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-d62eba0 > .box.bg-1 .number { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }

.e-d62eba0 > .box.bg-2 > .rows > .row { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-d62eba0 > .box.bg-2 > .rows > .row:hover { background: var(--ot-bg-2-hover); }
.e-d62eba0 > .box.bg-2 > .empty { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-d62eba0 > .box.bg-2 .number { background: var(--ot-bg-3); border-color: var(--ot-bg-2-border); }
.e-d62eba0 > .box.bg-2 .action:hover { background: var(--ot-bg-1); }

.e-d62eba0 > .box.bg-3 > .rows > .row { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-d62eba0 > .box.bg-3 > .rows > .row:hover { background: var(--ot-bg-3-hover); }
.e-d62eba0 > .box.bg-3 > .empty { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-d62eba0 > .box.bg-3 .number { background: var(--ot-bg-4); border-color: var(--ot-bg-3-border); }
.e-d62eba0 > .box.bg-3 .action:hover { background: var(--ot-bg-2); }

.e-d62eba0 > .box.bg-4 > .rows > .row { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }
.e-d62eba0 > .box.bg-4 > .rows > .row:hover { background: var(--ot-bg-4-hover); }
.e-d62eba0 > .box.bg-4 > .empty { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }
.e-d62eba0 > .box.bg-4 .number { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }
.e-d62eba0 > .box.bg-4 .action:hover { background: var(--ot-bg-3); }

/* ===== BORDER ===== */

.e-d62eba0 > .box.border { border-color: var(--ot-bg-2-border); padding: var(--ot-spacing-m); }
.e-d62eba0 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-d62eba0 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-d62eba0 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-d62eba0 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-d62eba0 > .box.size-s > .rows > .row { padding: var(--ot-spacing-x); gap: var(--ot-spacing-x); }
.e-d62eba0 > .box.size-s > .rows > .row > .fields { gap: var(--ot-spacing-x); }
.e-d62eba0 > .box.size-s .action { width: 24px; height: 24px; }
.e-d62eba0 > .box.size-s .action > i { font-size: 14px; }

.e-d62eba0 > .box.size-m > .rows > .row { padding: var(--ot-spacing-s); gap: var(--ot-spacing-s); }
.e-d62eba0 > .box.size-m > .rows > .row > .fields { gap: var(--ot-spacing-s); }

.e-d62eba0 > .box.size-l > .rows > .row { padding: var(--ot-spacing-m); gap: var(--ot-spacing-m); }
.e-d62eba0 > .box.size-l > .rows > .row > .fields { gap: var(--ot-spacing-m); }
.e-d62eba0 > .box.size-l .action { width: 32px; height: 32px; }
.e-d62eba0 > .box.size-l .action > i { font-size: 18px; }

/* ===== DISABLED ===== */

.e-d62eba0 > .box.disabled > .rows > .row
{
	opacity: 0.7;
	cursor: not-allowed;
}
/* ===== DATA FILTERS ===== */

.e-435be612
{
	display: contents;
}

/* Box */

.e-435be612 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	overflow: hidden;
}

.e-435be612 > .box.sticky
{
	position: sticky;
	top: var(--ot-spacing-m);
	max-height: calc(100vh - var(--ot-spacing-l));
}

/* ===== BACKGROUND ===== */

.e-435be612 > .box.bg-1 { background: var(--ot-bg-1); }
.e-435be612 > .box.bg-2 { background: var(--ot-bg-2); }
.e-435be612 > .box.bg-3 { background: var(--ot-bg-3); }
.e-435be612 > .box.bg-4 { background: var(--ot-bg-4); }

/* ===== BORDER ===== */

.e-435be612 > .box.border { border-color: var(--ot-bg-2-border); }
.e-435be612 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-435be612 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-435be612 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-435be612 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== BORDER-LEFT ===== */

.e-435be612 > .box.border-left
{
	border: none;
	border-left: 1px solid var(--ot-bg-2-border);
	border-radius: 0;
}

.e-435be612 > .box.bg-1.border-left { border-left-color: var(--ot-bg-1-border); }
.e-435be612 > .box.bg-2.border-left { border-left-color: var(--ot-bg-2-border); }
.e-435be612 > .box.bg-3.border-left { border-left-color: var(--ot-bg-3-border); }
.e-435be612 > .box.bg-4.border-left { border-left-color: var(--ot-bg-4-border); }

/* ===== MODIFIERS ===== */

.e-435be612 > .box.clean
{
	background: transparent;
	border-color: transparent;
}

/* ===== HEAD ===== */

.e-435be612 > .box > .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	height: 65px;
	padding: 0 var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-435be612 > .box > .head > .head-title
{
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 1;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 700;
	color: var(--ot-text-1);
	min-width: 0;
}

.e-435be612 > .box > .head > .head-title > i
{
	font-size: 18px;
	color: var(--ot-text-2);
}

.e-435be612 > .box > .head > .head-title > .head-count
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	background: var(--ot-brand);
	color: #fff;
	border-radius: 100px;
	font-size: 11px;
	font-weight: 700;
	margin-left: 4px;
}

.e-435be612 > .box > .head > .head-clear
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 6px 10px;
	background: transparent;
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition), border-color var(--ot-transition);
}

.e-435be612 > .box > .head > .head-clear:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
	border-color: var(--ot-bg-3-border);
}

.e-435be612 > .box > .head > .head-clear > i
{
	font-size: 14px;
}

/* ===== GROUPS ===== */

.e-435be612 > .box > .groups
{
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	flex: 1;
}

.e-435be612 > .box > .groups > .group
{
	display: flex;
	flex-direction: column;
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-435be612 > .box > .groups > .group:last-child
{
	border-bottom: none;
}

/* Group head */

.e-435be612 > .box > .groups > .group > .group-head
{
	display: flex;
	align-items: center;
	gap: 6px;
	height: 44px;
	padding: 0 var(--ot-spacing-m);
	user-select: none;
}

.e-435be612 > .box > .groups > .group > .group-head.collapsible
{
	cursor: pointer;
}

.e-435be612 > .box > .groups > .group > .group-head > .group-label
{
	font-family: var(--ot-font-primary);
	font-size: 11px;
	font-weight: 700;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.e-435be612 > .box > .groups > .group > .group-head > .group-count
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 16px;
	padding: 0 5px;
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
}

.e-435be612 > .box > .groups > .group > .group-head > .group-spacer
{
	flex: 1;
}

.e-435be612 > .box > .groups > .group > .group-head > .group-clear
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-435be612 > .box > .groups > .group > .group-head > .group-clear:hover
{
	background: var(--ot-red-opacity);
	color: var(--ot-red);
}

.e-435be612 > .box > .groups > .group > .group-head > .group-clear > i
{
	font-size: 14px;
}

.e-435be612 > .box > .groups > .group > .group-head > .group-chevron
{
	font-size: 18px;
	color: var(--ot-text-3);
	transition: transform var(--ot-transition);
}

.e-435be612 > .box > .groups > .group.collapsed > .group-head > .group-chevron
{
	transform: rotate(-90deg);
}

/* Group body */

.e-435be612 > .box > .groups > .group > .group-body
{
	padding: 0 var(--ot-spacing-m) var(--ot-spacing-m);
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-435be612 > .box > .groups > .group > .group-body:first-child
{
	padding-top: var(--ot-spacing-m);
}

/* ===== OPTIONS (checkbox / radio wrappers) ===== */

.e-435be612 > .box > .groups > .group > .group-body > .options
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-435be612 > .box > .groups > .group > .group-body > .options > .search
{
	margin-bottom: var(--ot-spacing-s);
}

/* Show more */

.e-435be612 > .box > .groups > .group > .group-body > .options > .show-more
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 4px;
	padding: 6px 10px;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-brand);
	cursor: pointer;
	transition: background var(--ot-transition);
	align-self: flex-start;
}

.e-435be612 > .box > .groups > .group > .group-body > .options > .show-more:hover
{
	background: var(--ot-brand-opacity);
}

.e-435be612 > .box > .groups > .group > .group-body > .options > .show-more > i
{
	font-size: 16px;
}

/* ===== TAGS ===== */

.e-435be612 > .box > .groups > .group > .group-body > .tags
{
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.e-435be612 > .box > .groups > .group > .group-body > .tags > .tag
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 5px 10px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition), border-color var(--ot-transition);
}

.e-435be612 > .box > .groups > .group > .group-body > .tags > .tag:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-435be612 > .box > .groups > .group > .group-body > .tags > .tag.active
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	color: #fff;
}

.e-435be612 > .box > .groups > .group > .group-body > .tags > .tag > i
{
	font-size: 15px;
}

.e-435be612 > .box > .groups > .group > .group-body > .tags > .tag > .tag-count
{
	font-size: 11px;
	font-weight: 700;
	opacity: 0.75;
	font-variant-numeric: tabular-nums;
}

/* ===== RANGE ===== */

.e-435be612 > .box > .groups > .group > .group-body > .range
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.e-435be612 > .box > .groups > .group > .group-body > .range > .range-dash
{
	color: var(--ot-text-3);
	font-weight: 500;
}

/* ===== DATE RANGE ===== */

.e-435be612 > .box > .groups > .group > .group-body > .date-range
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* ===== TOGGLE ===== */

.e-435be612 > .box > .groups > .group > .group-body > .toggle-wrap
{
	padding: 4px 0;
}

/* ===== FOOT ===== */

.e-435be612 > .box > .foot
{
	padding: var(--ot-spacing-m);
	border-top: 1px solid var(--ot-bg-2-border);
}

/* ===== HORIZONTAL ===== */

.e-435be612 > .box.horizontal > .groups
{
	flex-direction: row;
	align-items: flex-start;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-m);
	overflow-x: auto;
	overflow-y: visible;
}

.e-435be612 > .box.horizontal > .groups > .group
{
	min-width: 200px;
	border-bottom: none;
	border-right: 1px solid var(--ot-bg-2-border);
	padding-right: var(--ot-spacing-m);
}

.e-435be612 > .box.horizontal > .groups > .group:last-child
{
	border-right: none;
	padding-right: 0;
}

.e-435be612 > .box.horizontal > .groups > .group > .group-head,
.e-435be612 > .box.horizontal > .groups > .group > .group-body
{
	padding-left: 0;
	padding-right: 0;
}
/* ===== DATA TABLE ===== */

.e-305e9281
{
	display: block;
	width: 100%;
}

/* Box */

.e-305e9281 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	overflow: hidden;
}

/* ===== BACKGROUND ===== */

.e-305e9281 > .box.bg-1 { background: var(--ot-bg-1); }
.e-305e9281 > .box.bg-2 { background: var(--ot-bg-2); }
.e-305e9281 > .box.bg-3 { background: var(--ot-bg-3); }
.e-305e9281 > .box.bg-4 { background: var(--ot-bg-4); }

/* ===== BORDER ===== */

.e-305e9281 > .box.border { border-color: var(--ot-bg-2-border); }
.e-305e9281 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-305e9281 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-305e9281 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-305e9281 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== MODIFIERS ===== */

.e-305e9281 > .box.border-bottom
{
	border-color: transparent;
	border-bottom-color: var(--ot-bg-2-border);
	border-radius: 0;
}

.e-305e9281 > .box.bg-1.border-bottom { border-bottom-color: var(--ot-bg-1-border); }
.e-305e9281 > .box.bg-2.border-bottom { border-bottom-color: var(--ot-bg-2-border); }
.e-305e9281 > .box.bg-3.border-bottom { border-bottom-color: var(--ot-bg-3-border); }
.e-305e9281 > .box.bg-4.border-bottom { border-bottom-color: var(--ot-bg-4-border); }

.e-305e9281 > .box.clean
{
	border-color: transparent;
	border-radius: 0;
}

/* ===== HEAD ===== */

.e-305e9281 > .box > .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-305e9281 > .box > .head > .head-icon
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
	flex-shrink: 0;
}

.e-305e9281 > .box > .head > .head-icon > i
{
	font-size: 22px;
}

.e-305e9281 > .box > .head > .head-text
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: 2px;
}

.e-305e9281 > .box > .head > .head-text > .head-title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-size: 22px;
	font-weight: 500;
	letter-spacing: -0.018em;
	color: var(--ot-text-1);
	line-height: 1.15;
	font-variation-settings: 'opsz' 144;
}

.e-305e9281 > .box > .head > .head-text > .head-description
{
	margin: 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.5;
}

.e-305e9281 > .box > .head > .head-actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

/* ===== TOOLBAR ===== */

.e-305e9281 > .box > .toolbar
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-305e9281 > .box > .toolbar > .toolbar-search
{
	flex: 1 1 auto;
	max-width: 320px;
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	margin-left: auto;
	padding: 4px var(--ot-spacing-s) 4px var(--ot-spacing-m);
	background: var(--ot-brand-opacity);
	border: 1px solid var(--ot-brand-border);
	border-radius: var(--ot-radius-s);
	animation: e-305e9281-bulk-in 0.25s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-305e9281-bulk-in
{
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk > .toolbar-bulk-count
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-brand);
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk > .toolbar-bulk-actions
{
	display: flex;
	align-items: center;
	gap: 2px;
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk .bulk-action
{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 5px 10px;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-1);
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk .bulk-action:hover
{
	background: var(--ot-bg-1);
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk .bulk-action.danger:hover
{
	background: var(--ot-red-opacity);
	color: var(--ot-red);
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk .bulk-action > i
{
	font-size: 15px;
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk .bulk-clear
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-brand);
	cursor: pointer;
	margin-left: 4px;
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk .bulk-clear:hover
{
	background: var(--ot-bg-1);
}

.e-305e9281 > .box > .toolbar > .toolbar-bulk .bulk-clear > i
{
	font-size: 16px;
}

/* ===== TABLE ===== */

.e-305e9281 > .box > .table
{
	display: flex;
	flex-direction: column;
	overflow-x: auto;
}

.e-305e9281 > .box > .table > .row,
.e-305e9281 > .box > .table > div > .row
{
	display: grid;
	align-items: center;
	min-height: 48px;
	padding: 0 var(--ot-spacing-m);
	gap: var(--ot-spacing-m);
	transition: background var(--ot-transition);
}

/* Head row */

.e-305e9281 > .box > .table > .head-row
{
	min-height: 42px;
	background: var(--ot-bg-2);
	border-bottom: 1px solid var(--ot-bg-2-border);
	position: sticky;
	top: 0;
	z-index: 2;
}

.e-305e9281 > .box.bg-2 > .table > .head-row { background: var(--ot-bg-3); }
.e-305e9281 > .box.bg-3 > .table > .head-row { background: var(--ot-bg-4); }

.e-305e9281 > .box > .table > .head-row > .cell
{
	font-family: var(--ot-font-primary);
	font-size: 11px;
	font-weight: 700;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.e-305e9281 > .box > .table > .head-row > .head-cell
{
	display: flex;
	align-items: center;
	gap: 4px;
	user-select: none;
}

.e-305e9281 > .box > .table > .head-row > .head-cell.sortable
{
	cursor: pointer;
	transition: color var(--ot-transition);
}

.e-305e9281 > .box > .table > .head-row > .head-cell.sortable:hover
{
	color: var(--ot-text-1);
}

.e-305e9281 > .box > .table > .head-row > .head-cell.sorted
{
	color: var(--ot-brand);
}

.e-305e9281 > .box > .table > .head-row > .head-cell > .sort-icon
{
	font-size: 14px;
	opacity: 0.6;
	transition: opacity var(--ot-transition);
}

.e-305e9281 > .box > .table > .head-row > .head-cell.sortable:hover > .sort-icon
{
	opacity: 1;
}

/* Body row */

.e-305e9281 > .box > .table > div > .body-row
{
	border-bottom: 1px solid var(--ot-bg-2-border);
	cursor: default;
}

.e-305e9281 > .box > .table > div > .body-row.clickable
{
	cursor: pointer;
}

.e-305e9281 > .box > .table > div:last-child > .body-row
{
	border-bottom: none;
}

.e-305e9281 > .box > .table > div > .body-row:hover
{
	background: var(--ot-bg-2);
}

.e-305e9281 > .box.bg-2 > .table > div > .body-row:hover { background: var(--ot-bg-3); }
.e-305e9281 > .box.bg-3 > .table > div > .body-row:hover { background: var(--ot-bg-4); }

.e-305e9281 > .box > .table > div > .body-row.selected
{
	background: var(--ot-brand-opacity);
}

/* Striped */

.e-305e9281 > .box.striped > .table > div:nth-child(even) > .body-row
{
	background: var(--ot-bg-2);
}

.e-305e9281 > .box.striped.bg-2 > .table > div:nth-child(even) > .body-row
{
	background: var(--ot-bg-3);
}

/* Sticky */

.e-305e9281 > .box.sticky > .table
{
	max-height: 560px;
	overflow-y: auto;
}

/* Cells */

.e-305e9281 > .box > .table .cell
{
	min-width: 0;
	padding: 10px 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-1);
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-305e9281 > .box > .table .cell.align-left { text-align: left; }
.e-305e9281 > .box > .table .cell.align-center { text-align: center; display: flex; justify-content: center; }
.e-305e9281 > .box > .table .cell.align-right { text-align: right; display: flex; justify-content: flex-end; }

/* Select cell */

.e-305e9281 > .box > .table .select-cell
{
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.e-305e9281 > .box > .table .select-cell > .select-box
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	padding: 0;
	background: var(--ot-bg-1);
	border: 1.5px solid var(--ot-bg-3-border);
	border-radius: 4px;
	color: transparent;
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), border-color var(--ot-transition);
}

.e-305e9281 > .box > .table .select-cell > .select-box:hover
{
	border-color: var(--ot-brand);
}

.e-305e9281 > .box > .table .select-cell > .select-box.checked,
.e-305e9281 > .box > .table .select-cell > .select-box.indeterminate
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	color: #fff;
}

.e-305e9281 > .box > .table .select-cell > .select-box > i
{
	font-size: 14px;
	font-weight: 700;
}

/* Actions cell */

.e-305e9281 > .box > .table .actions-cell
{
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.e-305e9281 > .box > .table .actions-cell > .actions-trigger
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-305e9281 > .box > .table .actions-cell > .actions-trigger:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-305e9281 > .box > .table .actions-cell > .actions-trigger > i
{
	font-size: 18px;
}

/* ===== EMPTY ===== */

.e-305e9281 > .box > .empty
{
	padding: var(--ot-spacing-l);
}

/* ===== LOADING SKELETON ===== */

.e-305e9281 > .box > .table .skeleton
{
	background: linear-gradient(90deg, var(--ot-bg-2) 0%, var(--ot-bg-3) 50%, var(--ot-bg-2) 100%);
	background-size: 200% 100%;
	animation: e-305e9281-shimmer 1.4s infinite linear;
	border-radius: var(--ot-radius-s);
}

.e-305e9281 > .box > .table .skeleton-line
{
	height: 14px;
	width: 80%;
}

.e-305e9281 > .box > .table .skeleton-box
{
	width: 18px;
	height: 18px;
}

@keyframes e-305e9281-shimmer
{
	from { background-position: 200% 0; }
	to { background-position: -200% 0; }
}

/* ===== PAGINATION ===== */

.e-305e9281 > .box > .pagination
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-s) var(--ot-spacing-l);
	border-top: 1px solid var(--ot-bg-2-border);
}

.e-305e9281 > .box > .pagination > .pagination-info
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	font-variant-numeric: tabular-nums;
}

.e-305e9281 > .box > .pagination > .pagination-controls
{
	display: flex;
	align-items: center;
	gap: 2px;
}

.e-305e9281 > .box > .pagination > .pagination-controls > .page-btn
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	padding: 0;
	background: transparent;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-2);
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition), border-color var(--ot-transition);
}

.e-305e9281 > .box > .pagination > .pagination-controls > .page-btn:hover:not(:disabled)
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
	border-color: var(--ot-bg-2-border);
}

.e-305e9281 > .box > .pagination > .pagination-controls > .page-btn:disabled
{
	opacity: 0.35;
	cursor: not-allowed;
}

.e-305e9281 > .box > .pagination > .pagination-controls > .page-btn > i
{
	font-size: 18px;
}

.e-305e9281 > .box > .pagination > .pagination-controls > .page-current
{
	padding: 0 var(--ot-spacing-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-text-1);
	font-variant-numeric: tabular-nums;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 767.98px)
{
	.e-305e9281 > .box > .toolbar
	{
		flex-direction: column;
		align-items: stretch;
	}

	.e-305e9281 > .box > .toolbar > .toolbar-search
	{
		max-width: 100%;
	}

	.e-305e9281 > .box > .pagination
	{
		flex-direction: column;
		gap: var(--ot-spacing-s);
	}
}
/* ===== FORM BUTTON ===== */

.e-64e877b
{
	display: contents;
}

/* Box */

.e-64e877b > .box
{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-s);
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	background: transparent;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	outline: none;
	user-select: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), box-shadow var(--ot-transition), transform var(--ot-transition);
}

.e-64e877b > .box:hover { transform: translateY(-1px); }
.e-64e877b > .box:active { transform: translateY(0) scale(0.97); transition-duration: 100ms; }
.e-64e877b > .box:focus-visible { box-shadow: 0 0 0 1px var(--ot-brand-opacity); }

/* Body */

.e-64e877b > .box > .body
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.e-64e877b > .box > .body > i
{
	font-size: 18px;
	transition: transform var(--ot-transition);
}

.e-64e877b > .box > .body > .left { margin-right: -2px; }
.e-64e877b > .box > .body > .right { margin-left: -2px; }
.e-64e877b > .box:hover > .body > .right { transform: translateX(2px); }

/* Spinner */

.e-64e877b > .box > .spin > i
{
	font-size: 18px;
	animation: e-64e877b-spin 0.8s linear infinite;
}

@keyframes e-64e877b-spin
{
	to { transform: rotate(360deg); }
}

/* States */

.e-64e877b > .box.disabled
{
	opacity: 0.5;
	cursor: not-allowed;
	pointer-events: none;
	transform: none;
}

.e-64e877b > .box.loading
{
	cursor: wait;
	pointer-events: none;
}

/* ===== STYLE: SOLID ===== */

.e-64e877b > .box.solid.brand  { background: var(--ot-brand);  border-color: var(--ot-brand);  color: #fff; }
.e-64e877b > .box.solid.blue   { background: var(--ot-blue);   border-color: var(--ot-blue);   color: #fff; }
.e-64e877b > .box.solid.red    { background: var(--ot-red);    border-color: var(--ot-red);    color: #fff; }
.e-64e877b > .box.solid.orange { background: var(--ot-orange); border-color: var(--ot-orange); color: #fff; }
.e-64e877b > .box.solid.green  { background: var(--ot-green);  border-color: var(--ot-green);  color: #fff; }
.e-64e877b > .box.solid.dark   { background: var(--ot-text-1); border-color: var(--ot-text-1); color: var(--ot-bg-1); }

.e-64e877b > .box.solid.brand:hover  { background: var(--ot-brand-hover);  border-color: var(--ot-brand-hover); }
.e-64e877b > .box.solid.blue:hover   { background: var(--ot-blue-hover);   border-color: var(--ot-blue-hover); }
.e-64e877b > .box.solid.red:hover    { background: var(--ot-red-hover);    border-color: var(--ot-red-hover); }
.e-64e877b > .box.solid.orange:hover { background: var(--ot-orange-hover); border-color: var(--ot-orange-hover); }
.e-64e877b > .box.solid.green:hover  { background: var(--ot-green-hover);  border-color: var(--ot-green-hover); }
.e-64e877b > .box.solid.dark:hover   { background: var(--ot-text-2);       border-color: var(--ot-text-2); }

/* ===== STYLE: SOFT ===== */

.e-64e877b > .box.soft.brand  { background: var(--ot-brand-opacity);  color: var(--ot-brand); }
.e-64e877b > .box.soft.blue   { background: var(--ot-blue-opacity);   color: var(--ot-blue); }
.e-64e877b > .box.soft.red    { background: var(--ot-red-opacity);    color: var(--ot-red); }
.e-64e877b > .box.soft.orange { background: var(--ot-orange-opacity); color: var(--ot-orange); }
.e-64e877b > .box.soft.green  { background: var(--ot-green-opacity);  color: var(--ot-green); }

.e-64e877b > .box.soft.brand:hover  { background: var(--ot-brand);  color: #fff; }
.e-64e877b > .box.soft.blue:hover   { background: var(--ot-blue);   color: #fff; }
.e-64e877b > .box.soft.red:hover    { background: var(--ot-red);    color: #fff; }
.e-64e877b > .box.soft.orange:hover { background: var(--ot-orange); color: #fff; }
.e-64e877b > .box.soft.green:hover  { background: var(--ot-green);  color: #fff; }

/* ===== STYLE: OUTLINE ===== */

.e-64e877b > .box.outline.brand  { border-color: var(--ot-brand);  color: var(--ot-brand); }
.e-64e877b > .box.outline.blue   { border-color: var(--ot-blue);   color: var(--ot-blue); }
.e-64e877b > .box.outline.red    { border-color: var(--ot-red);    color: var(--ot-red); }
.e-64e877b > .box.outline.orange { border-color: var(--ot-orange); color: var(--ot-orange); }
.e-64e877b > .box.outline.green  { border-color: var(--ot-green);  color: var(--ot-green); }

.e-64e877b > .box.outline.brand:hover  { background: var(--ot-brand-opacity); }
.e-64e877b > .box.outline.blue:hover   { background: var(--ot-blue-opacity); }
.e-64e877b > .box.outline.red:hover    { background: var(--ot-red-opacity); }
.e-64e877b > .box.outline.orange:hover { background: var(--ot-orange-opacity); }
.e-64e877b > .box.outline.green:hover  { background: var(--ot-green-opacity); }

/* ===== STYLE: GHOST ===== */

.e-64e877b > .box.ghost
{
	background: transparent;
	color: var(--ot-text-2);
}

.e-64e877b > .box.ghost:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

/* ===== STYLE: LINK ===== */

.e-64e877b > .box.link
{
	height: auto;
	padding: 0;
	background: transparent;
	border-color: transparent;
	color: var(--ot-brand);
}

.e-64e877b > .box.link:hover
{
	background: transparent;
	color: var(--ot-brand-hover);
	transform: none;
}

.e-64e877b > .box.link:hover > .body > .text
{
	text-decoration: underline;
	text-underline-offset: 3px;
}

.e-64e877b > .box.link:active { transform: none; }

/* ===== BACKGROUND ===== */

.e-64e877b > .box.bg-1 { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-64e877b > .box.bg-2 { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-64e877b > .box.bg-3 { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-64e877b > .box.bg-4 { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

.e-64e877b > .box.bg-1:hover { background: var(--ot-bg-1-hover); }
.e-64e877b > .box.bg-2:hover { background: var(--ot-bg-2-hover); }
.e-64e877b > .box.bg-3:hover { background: var(--ot-bg-3-hover); }
.e-64e877b > .box.bg-4:hover { background: var(--ot-bg-4-hover); }

/* Glass */

.e-64e877b > .box.glass
{
	background: var(--ot-bg-1-opacity);
	border-color: var(--ot-bg-2-border);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
}

.e-64e877b > .box.glass:hover { background: var(--ot-bg-2-opacity); }

/* ===== SIZE ===== */

.e-64e877b > .box.size-s
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
	font-size: var(--ot-size-s);
	gap: var(--ot-spacing-x);
}

.e-64e877b > .box.size-s > .body { gap: var(--ot-spacing-x); }

.e-64e877b > .box.size-s > .body > i,
.e-64e877b > .box.size-s > .spin > i { font-size: 14px; }

.e-64e877b > .box.size-l
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-l);
}

.e-64e877b > .box.size-l > .body > i,
.e-64e877b > .box.size-l > .spin > i { font-size: 20px; }

/* ===== MODIFIERS ===== */

.e-64e877b > .box.full
{
	width: 100%;
}

.e-64e877b > .box.rounded
{
	border-radius: 100px;
}

.e-64e877b > .box.icon-only
{
	padding: 0;
	width: var(--ot-height-m);
	gap: 0;
}

.e-64e877b > .box.icon-only.size-s { width: var(--ot-height-s); }
.e-64e877b > .box.icon-only.size-l { width: var(--ot-height-l); }

/* Link size resets */

.e-64e877b > .box.link.size-s,
.e-64e877b > .box.link.size-l
{
	height: auto;
	padding: 0;
}
/* ===== FORM CHECKBOX ===== */

.e-f249baa
{
	display: contents;
}

/* Expression wrapper */

.e-f249baa > .expression
{
	display: block;
	width: 100%;
}

/* Variable button */

.e-f249baa > .box > .variable-btn
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: var(--ot-height-s);
	height: var(--ot-height-s);
	padding: 0;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition), border-color var(--ot-transition);
}

.e-f249baa > .box > .variable-btn:hover
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-f249baa > .box > .variable-btn > i
{
	font-size: 14px;
}

/* Box */

.e-f249baa > .box
{
	position: relative;
	display: inline-flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	cursor: pointer;
	font-family: var(--ot-font-primary);
}

.e-f249baa > .box.reverse
{
	flex-direction: row-reverse;
}

/* Input — hidden but accessible */

.e-f249baa > .box > input
{
	position: absolute;
	opacity: 0;
	cursor: pointer;
	width: 0;
	height: 0;
	margin: 0;
}

/* Info */

.e-f249baa > .box > .info
{
	display: inline-flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	padding-top: 1px;
}

.e-f249baa > .box > .info > .label
{
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	line-height: 1.3;
	user-select: none;
	transition: color var(--ot-transition);
}

.e-f249baa > .box > .info > .description
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.4;
	user-select: none;
	transition: color var(--ot-transition);
}

/* Mark */

.e-f249baa > .box > .mark
{
	position: relative;
	display: block;
	flex-shrink: 0;
	border-radius: var(--ot-radius-s);
	border: 1px solid transparent;
	background: transparent;
	transition: background var(--ot-transition), border-color var(--ot-transition), transform var(--ot-transition-fast), box-shadow var(--ot-transition);
}

/* Checkmark */

.e-f249baa > .box > .mark::after
{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	border: solid white;
	transform: translate(-50%, -60%) rotate(45deg) scale(0);
	opacity: 0;
	transition: transform var(--ot-transition), opacity var(--ot-transition-fast);
}

.e-f249baa > .box > input:checked ~ .mark::after
{
	transform: translate(-50%, -60%) rotate(45deg) scale(1);
	opacity: 1;
}

/* Indeterminate */

.e-f249baa > .box.indeterminate > .mark::after
{
	transform: translate(-50%, -50%) rotate(0) scale(1);
	opacity: 1;
	border: none;
	background: white;
	border-radius: 1px;
}

/* Focus */

.e-f249baa > .box > input:focus-visible ~ .mark
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Active */

.e-f249baa > .box:active > .mark
{
	transform: scale(0.92);
}

/* Disabled */

.e-f249baa > .box.disabled
{
	cursor: not-allowed;
}

.e-f249baa > .box.disabled > .mark
{
	opacity: 0.45;
}

.e-f249baa > .box.disabled > .info > .label,
.e-f249baa > .box.disabled > .info > .description
{
	color: var(--ot-text-3);
	opacity: 0.6;
}

/* ===== SIZE ===== */

/* Small */

.e-f249baa > .box.size-s > .mark
{
	width: 16px;
	height: 16px;
}

.e-f249baa > .box.size-s > .mark::after
{
	width: 3px;
	height: 6px;
	border-width: 0 1.5px 1.5px 0;
}

.e-f249baa > .box.size-s.indeterminate > .mark::after
{
	width: 8px;
	height: 1.5px;
}

.e-f249baa > .box.size-s > .info > .label
{
	font-size: var(--ot-size-s);
}

.e-f249baa > .box.size-s > .info > .description
{
	font-size: 10.5px;
}

.e-f249baa > .box.size-s > .icon { font-size: 16px; }

/* Medium */

.e-f249baa > .box.size-m > .mark
{
	width: 20px;
	height: 20px;
}

.e-f249baa > .box.size-m > .mark::after
{
	width: 4px;
	height: 8px;
	border-width: 0 2px 2px 0;
}

.e-f249baa > .box.size-m.indeterminate > .mark::after
{
	width: 10px;
	height: 2px;
}

.e-f249baa > .box.size-m > .info > .label
{
	font-size: var(--ot-size-m);
}

/* Large */

.e-f249baa > .box.size-l > .mark
{
	width: 24px;
	height: 24px;
}

.e-f249baa > .box.size-l > .mark::after
{
	width: 5px;
	height: 10px;
	border-width: 0 2.5px 2.5px 0;
}

.e-f249baa > .box.size-l.indeterminate > .mark::after
{
	width: 12px;
	height: 2.5px;
}

.e-f249baa > .box.size-l > .info > .label
{
	font-size: var(--ot-size-m);
}

.e-f249baa > .box.size-l > .icon { font-size: 20px; }

/* ===== BACKGROUND ===== */

.e-f249baa > .box.bg-1 > .mark { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-f249baa > .box.bg-2 > .mark { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-f249baa > .box.bg-3 > .mark { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-f249baa > .box.bg-4 > .mark { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

.e-f249baa > .box.bg-1:hover:not(.disabled):not(.indeterminate) > input:not(:checked) ~ .mark { background: var(--ot-bg-1-hover); }
.e-f249baa > .box.bg-2:hover:not(.disabled):not(.indeterminate) > input:not(:checked) ~ .mark { background: var(--ot-bg-2-hover); }
.e-f249baa > .box.bg-3:hover:not(.disabled):not(.indeterminate) > input:not(:checked) ~ .mark { background: var(--ot-bg-3-hover); }
.e-f249baa > .box.bg-4:hover:not(.disabled):not(.indeterminate) > input:not(:checked) ~ .mark { background: var(--ot-bg-4-hover); }

/* Transparent */

.e-f249baa > .box.transparent > .mark
{
	background: transparent;
	border-color: transparent;
}

/* Border */

.e-f249baa > .box.border > .mark
{
	border-color: var(--ot-bg-2-border);
}

.e-f249baa > .box.border:hover:not(.disabled) > .mark
{
	border-color: var(--ot-text-3);
}

/* ===== COLOR (checked state) ===== */

.e-f249baa > .box > input:checked ~ .mark,
.e-f249baa > .box.indeterminate > .mark
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
}

.e-f249baa > .box.color-blue > input:checked ~ .mark,
.e-f249baa > .box.color-blue.indeterminate > .mark
{
	background: var(--ot-blue);
	border-color: var(--ot-blue);
}

.e-f249baa > .box.color-red > input:checked ~ .mark,
.e-f249baa > .box.color-red.indeterminate > .mark
{
	background: var(--ot-red);
	border-color: var(--ot-red);
}

.e-f249baa > .box.color-orange > input:checked ~ .mark,
.e-f249baa > .box.color-orange.indeterminate > .mark
{
	background: var(--ot-orange);
	border-color: var(--ot-orange);
}

.e-f249baa > .box.color-green > input:checked ~ .mark,
.e-f249baa > .box.color-green.indeterminate > .mark
{
	background: var(--ot-green);
	border-color: var(--ot-green);
}

/* Focus per color */

.e-f249baa > .box.color-blue > input:focus-visible ~ .mark { box-shadow: 0 0 0 1px var(--ot-blue-opacity); }
.e-f249baa > .box.color-red > input:focus-visible ~ .mark { box-shadow: 0 0 0 1px var(--ot-red-opacity); }
.e-f249baa > .box.color-orange > input:focus-visible ~ .mark { box-shadow: 0 0 0 1px var(--ot-orange-opacity); }
.e-f249baa > .box.color-green > input:focus-visible ~ .mark { box-shadow: 0 0 0 1px var(--ot-green-opacity); }

/* Icon */

.e-f249baa > .box > .icon
{
	font-size: 18px;
	color: var(--ot-text-2);
	flex-shrink: 0;
	align-self: center;
}

/* Count */

.e-f249baa > .box > .count
{
	margin-left: auto;
	padding-left: var(--ot-spacing-s);
	font-size: 11px;
	font-weight: 700;
	color: var(--ot-text-3);
	font-variant-numeric: tabular-nums;
	align-self: center;
}
/* ===== FORM COLOR ===== */

.e-21311850
{
	display: contents;
}

/* Box */

.e-21311850 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	width: 100%;
}

/* Field */

.e-21311850 > .box > .field
{
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	padding: 0 var(--ot-spacing-s);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	background: transparent;
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-21311850 > .box > .field:focus-within
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Swatch */

.e-21311850 > .box > .field > .swatch
{
	position: relative;
	flex-shrink: 0;
	border-radius: var(--ot-radius-s);
	border: 1px solid var(--ot-bg-2-border);
	cursor: pointer;
	overflow: hidden;
	padding: 0;
	outline: none;
	background-color: transparent;
	background-image: linear-gradient(45deg, var(--ot-bg-3) 25%, transparent 25%), linear-gradient(-45deg, var(--ot-bg-3) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--ot-bg-3) 75%), linear-gradient(-45deg, transparent 75%, var(--ot-bg-3) 75%);
	background-size: 8px 8px;
	background-position: 0 0, 0 4px, 4px -4px, -4px 0;
	transition: border-color var(--ot-transition), transform var(--ot-transition);
}

.e-21311850 > .box > .field > .swatch:hover
{
	transform: scale(1.08);
}

/* Native color input */

.e-21311850 > .box > .field > .swatch > .native
{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
	border: none;
	padding: 0;
}

/* Hex input */

.e-21311850 > .box > .field > .input
{
	flex: 1;
	min-width: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--ot-text-1);
	font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
	font-size: var(--ot-size-m);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 0;
}

.e-21311850 > .box > .field > .input::placeholder
{
	color: var(--ot-text-3);
	text-transform: none;
}

/* Action */

.e-21311850 > .box > .field > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	padding: 0;
	border: none;
	background: transparent;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-21311850 > .box > .field > .action:hover
{
	background: var(--ot-bg-2-hover);
	color: var(--ot-text-1);
}

.e-21311850 > .box > .field > .action > i
{
	font-size: 14px;
}

.e-21311850 > .box > .field > .action.copied
{
	color: var(--ot-green);
	background: var(--ot-green-opacity);
}

/* Presets */

.e-21311850 > .box > .presets
{
	display: flex;
	flex-wrap: wrap;
	gap: var(--ot-spacing-x);
}

.e-21311850 > .box > .presets > .preset
{
	width: 22px;
	height: 22px;
	padding: 0;
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	cursor: pointer;
	outline: none;
	transition: border-color var(--ot-transition), transform var(--ot-transition), box-shadow var(--ot-transition);
}

.e-21311850 > .box > .presets > .preset:hover
{
	transform: scale(1.1);
}

.e-21311850 > .box > .presets > .preset.active
{
	box-shadow: 0 0 0 2px var(--ot-bg-1), 0 0 0 4px var(--ot-brand);
}

/* Disabled */

.e-21311850 > .box.disabled > .field
{
	cursor: not-allowed;
	opacity: 0.55;
}

.e-21311850 > .box.disabled > .field > .swatch
{
	cursor: not-allowed;
	transform: none;
}

.e-21311850 > .box.disabled > .field > .input
{
	cursor: not-allowed;
}

/* ===== BACKGROUND ===== */

.e-21311850 > .box.bg-1 > .field { background: var(--ot-bg-1); }
.e-21311850 > .box.bg-2 > .field { background: var(--ot-bg-2); }
.e-21311850 > .box.bg-3 > .field { background: var(--ot-bg-3); }
.e-21311850 > .box.bg-4 > .field { background: var(--ot-bg-4); }

.e-21311850 > .box.bg-1 > .field:hover:not(:focus-within) { background: var(--ot-bg-1-hover); }
.e-21311850 > .box.bg-2 > .field:hover:not(:focus-within) { background: var(--ot-bg-2-hover); }
.e-21311850 > .box.bg-3 > .field:hover:not(:focus-within) { background: var(--ot-bg-3-hover); }
.e-21311850 > .box.bg-4 > .field:hover:not(:focus-within) { background: var(--ot-bg-4-hover); }

.e-21311850 > .box.bg-1 > .field > .swatch { border-color: var(--ot-bg-1-border); }
.e-21311850 > .box.bg-2 > .field > .swatch { border-color: var(--ot-bg-2-border); }
.e-21311850 > .box.bg-3 > .field > .swatch { border-color: var(--ot-bg-3-border); }
.e-21311850 > .box.bg-4 > .field > .swatch { border-color: var(--ot-bg-4-border); }

.e-21311850 > .box.bg-1 > .field > .action:hover { background: var(--ot-bg-1-hover); }
.e-21311850 > .box.bg-2 > .field > .action:hover { background: var(--ot-bg-2-hover); }
.e-21311850 > .box.bg-3 > .field > .action:hover { background: var(--ot-bg-3-hover); }
.e-21311850 > .box.bg-4 > .field > .action:hover { background: var(--ot-bg-4-hover); }

/* Transparent */

.e-21311850 > .box.transparent > .field
{
	background: transparent;
	padding: 0;
}

/* Border */

.e-21311850 > .box.border > .field { border-color: var(--ot-bg-2-border); }
.e-21311850 > .box.bg-1.border > .field { border-color: var(--ot-bg-1-border); }
.e-21311850 > .box.bg-2.border > .field { border-color: var(--ot-bg-2-border); }
.e-21311850 > .box.bg-3.border > .field { border-color: var(--ot-bg-3-border); }
.e-21311850 > .box.bg-4.border > .field { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-21311850 > .box.size-s > .field
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-x);
}

.e-21311850 > .box.size-s > .field > .swatch { width: 18px; height: 18px; }
.e-21311850 > .box.size-s > .field > .input { font-size: var(--ot-size-s); }
.e-21311850 > .box.size-s > .field > .action { width: 18px; height: 18px; }
.e-21311850 > .box.size-s > .field > .action > i { font-size: 13px; }
.e-21311850 > .box.size-s > .presets > .preset { width: 18px; height: 18px; }

.e-21311850 > .box.size-m > .field
{
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-s);
}

.e-21311850 > .box.size-m > .field > .swatch { width: 22px; height: 22px; }
.e-21311850 > .box.size-m > .field > .input { font-size: var(--ot-size-m); }

.e-21311850 > .box.size-l > .field
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-m);
}

.e-21311850 > .box.size-l > .field > .swatch { width: 28px; height: 28px; }
.e-21311850 > .box.size-l > .field > .input { font-size: var(--ot-size-m); }
.e-21311850 > .box.size-l > .field > .action { width: 26px; height: 26px; }
.e-21311850 > .box.size-l > .field > .action > i { font-size: 16px; }
.e-21311850 > .box.size-l > .presets > .preset { width: 28px; height: 28px; }
/* ===== FORM DATE ===== */

.e-283879c1
{
	display: contents;
}

/* Box */

.e-283879c1 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	width: 100%;
}

/* Field */

.e-283879c1 > .box > .field
{
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	padding: 0 var(--ot-spacing-m);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	background: transparent;
	cursor: pointer;
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-283879c1 > .box > .field:focus-within
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Icon */

.e-283879c1 > .box > .field > .icon
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-text-3);
	transition: color var(--ot-transition);
}

.e-283879c1 > .box.today > .field > .icon
{
	color: var(--ot-brand);
}

/* Input */

.e-283879c1 > .box > .field > .input
{
	flex: 1;
	min-width: 0;
	padding: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	cursor: pointer;
}

.e-283879c1 > .box > .field > .input::placeholder
{
	color: var(--ot-text-3);
	font-weight: 400;
}

/* Hide native indicator — the whole field opens the picker now. */
.e-283879c1 > .box > .field > .input::-webkit-calendar-picker-indicator
{
	display: none;
}

.e-283879c1 > .box > .field > .input:disabled
{
	cursor: not-allowed;
}

/* Action */

.e-283879c1 > .box > .field > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	padding: 0;
	border: none;
	background: transparent;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-283879c1 > .box > .field > .action:hover
{
	background: var(--ot-bg-2-hover);
	color: var(--ot-text-1);
}

.e-283879c1 > .box > .field > .action > i
{
	font-size: 14px;
}

/* Presets */

.e-283879c1 > .box > .presets
{
	display: flex;
	flex-wrap: wrap;
	gap: var(--ot-spacing-x);
}

.e-283879c1 > .box > .presets > .preset
{
	display: inline-flex;
	align-items: center;
	padding: var(--ot-spacing-x) 10px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-283879c1 > .box > .presets > .preset:hover:not(.disabled):not(.active)
{
	background: var(--ot-bg-2-hover);
	color: var(--ot-text-1);
	transform: translateY(-1px);
}

.e-283879c1 > .box > .presets > .preset.active
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand);
	color: var(--ot-brand);
}

.e-283879c1 > .box > .presets > .preset.disabled
{
	opacity: 0.4;
	cursor: not-allowed;
}

/* Disabled */

.e-283879c1 > .box.disabled > .field
{
	cursor: not-allowed;
	opacity: 0.55;
}

/* ===== BACKGROUND ===== */

.e-283879c1 > .box.bg-1 > .field { background: var(--ot-bg-1); }
.e-283879c1 > .box.bg-2 > .field { background: var(--ot-bg-2); }
.e-283879c1 > .box.bg-3 > .field { background: var(--ot-bg-3); }
.e-283879c1 > .box.bg-4 > .field { background: var(--ot-bg-4); }

.e-283879c1 > .box.bg-1 > .field:hover:not(:focus-within) { background: var(--ot-bg-1-hover); }
.e-283879c1 > .box.bg-2 > .field:hover:not(:focus-within) { background: var(--ot-bg-2-hover); }
.e-283879c1 > .box.bg-3 > .field:hover:not(:focus-within) { background: var(--ot-bg-3-hover); }
.e-283879c1 > .box.bg-4 > .field:hover:not(:focus-within) { background: var(--ot-bg-4-hover); }

.e-283879c1 > .box.bg-1 > .field > .action:hover { background: var(--ot-bg-1-hover); }
.e-283879c1 > .box.bg-2 > .field > .action:hover { background: var(--ot-bg-2-hover); }
.e-283879c1 > .box.bg-3 > .field > .action:hover { background: var(--ot-bg-3-hover); }
.e-283879c1 > .box.bg-4 > .field > .action:hover { background: var(--ot-bg-4-hover); }

/* Transparent */

.e-283879c1 > .box.transparent > .field
{
	background: transparent;
	padding: 0;
}

/* Border */

.e-283879c1 > .box.border > .field { border-color: var(--ot-bg-2-border); }
.e-283879c1 > .box.bg-1.border > .field { border-color: var(--ot-bg-1-border); }
.e-283879c1 > .box.bg-2.border > .field { border-color: var(--ot-bg-2-border); }
.e-283879c1 > .box.bg-3.border > .field { border-color: var(--ot-bg-3-border); }
.e-283879c1 > .box.bg-4.border > .field { border-color: var(--ot-bg-4-border); }

/* Today */

.e-283879c1 > .box.today > .field,
.e-283879c1 > .box.today.border > .field
{
	border-color: var(--ot-brand);
}

/* ===== SIZE ===== */

.e-283879c1 > .box.size-s > .field
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
}

.e-283879c1 > .box.size-s > .field > .icon { font-size: 15px; }
.e-283879c1 > .box.size-s > .field > .input { font-size: var(--ot-size-s); }
.e-283879c1 > .box.size-s > .field > .action { width: 18px; height: 18px; }
.e-283879c1 > .box.size-s > .field > .action > i { font-size: 13px; }
.e-283879c1 > .box.size-s > .presets > .preset { font-size: 10.5px; padding: 3px 8px; }

.e-283879c1 > .box.size-m > .field
{
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
}

.e-283879c1 > .box.size-l > .field
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-l);
}

.e-283879c1 > .box.size-l > .field > .icon { font-size: 20px; }
.e-283879c1 > .box.size-l > .field > .action { width: 26px; height: 26px; }
.e-283879c1 > .box.size-l > .field > .action > i { font-size: 16px; }
.e-283879c1 > .box.size-l > .presets > .preset { font-size: 12.5px; padding: 5px 12px; }
/* ===== FORM EDITOR ===== */

.e-2248d40
{
	display: contents;
}

/* Box */

.e-2248d40 > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	border-radius: var(--ot-radius-m);
	overflow: visible;
	transition: border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-2248d40 > .box:focus-within
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Toolbar */

.e-2248d40 > .box > .bar
{
	display: flex;
	align-items: center;
	gap: 2px;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
	flex-wrap: wrap;
	border-radius: var(--ot-radius-m) var(--ot-radius-m) 0 0;
}

.e-2248d40 > .box > .bar > div
{
	display: inline-flex;
	align-items: center;
}

.e-2248d40 > .box > .bar .btn
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-2);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-2248d40 > .box > .bar .btn:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-2248d40 > .box > .bar .btn.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-2248d40 > .box > .bar .btn > i
{
	font-size: 18px;
}

.e-2248d40 > .box > .bar .sep
{
	width: 1px;
	height: 20px;
	background: var(--ot-bg-2-border);
	margin: 0 6px;
}

/* Area */

.e-2248d40 > .box > .area
{
	position: relative;
	padding: var(--ot-spacing-l);
	width: 100%;
	border-radius: 0 0 var(--ot-radius-m) var(--ot-radius-m);
}

/* Body (contenteditable) */

.e-2248d40 > .box > .area > .body
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	line-height: 1.75;
	color: var(--ot-text-1);
	outline: none;
	min-height: 200px;
	word-break: break-word;
	overflow-wrap: break-word;
}

/* Placeholder */

.e-2248d40 > .box > .area > .body:empty::before,
.e-2248d40 > .box > .area > .body > p:only-child:empty::before
{
	content: attr(data-placeholder);
	color: var(--ot-text-3);
	pointer-events: none;
}

.e-2248d40 > .box > .area > .body > *:first-child { margin-top: 0; }
.e-2248d40 > .box > .area > .body > *:last-child { margin-bottom: 0; }

/* Headings */

.e-2248d40 > .box > .area > .body :is(h2, h3, h4)
{
	font-family: var(--ot-font-secondary);
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--ot-text-1);
	line-height: 1.2;
}

.e-2248d40 > .box > .area > .body h2 { font-size: 26px; margin: 1.2em 0 0.5em; }
.e-2248d40 > .box > .area > .body h3 { font-size: 21px; margin: 1.1em 0 0.45em; }
.e-2248d40 > .box > .area > .body h4 { font-size: 17px; margin: 1em 0 0.4em; }

.e-2248d40 > .box > .area > .body :is(h2, h3, h4) + :is(h2, h3, h4)
{
	margin-top: 0;
}

/* Paragraphs */

.e-2248d40 > .box > .area > .body p
{
	margin: 0 0 1em;
	color: var(--ot-text-2);
}

/* Inline formatting */

.e-2248d40 > .box > .area > .body strong { font-weight: 700; color: var(--ot-text-1); }
.e-2248d40 > .box > .area > .body em { font-style: italic; }
.e-2248d40 > .box > .area > .body s { text-decoration: line-through; color: var(--ot-text-3); }
.e-2248d40 > .box > .area > .body u { text-decoration: underline; }

/* Links */

.e-2248d40 > .box > .area > .body a
{
	color: var(--ot-brand);
	text-decoration: underline;
	text-decoration-color: var(--ot-brand-opacity);
	text-underline-offset: 3px;
	transition: text-decoration-color var(--ot-transition-fast);
}

.e-2248d40 > .box > .area > .body a:hover
{
	text-decoration-color: var(--ot-brand);
}

/* Lists */

.e-2248d40 > .box > .area > .body :is(ul, ol)
{
	margin: 0 0 1em;
	padding-left: 1.6em;
}

.e-2248d40 > .box > .area > .body ul { list-style: disc; }
.e-2248d40 > .box > .area > .body ol { list-style: decimal; }

.e-2248d40 > .box > .area > .body li
{
	margin: 0 0 0.3em;
	color: var(--ot-text-2);
}

.e-2248d40 > .box > .area > .body li:last-child
{
	margin-bottom: 0;
}

/* Blockquote */

.e-2248d40 > .box > .area > .body blockquote
{
	margin: 1.3em 0;
	padding: 0.2em 0 0.2em 1em;
	border-left: 3px solid var(--ot-brand);
	font-family: var(--ot-font-secondary);
	font-size: 1.15em;
	font-style: italic;
	line-height: 1.5;
	color: var(--ot-text-1);
}

.e-2248d40 > .box > .area > .body blockquote p
{
	margin: 0;
	color: inherit;
}

/* Inline code */

.e-2248d40 > .box > .area > .body code
{
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 0.9em;
	padding: 0.1em 0.35em;
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
}

/* Pre / code block */

.e-2248d40 > .box > .area > .body pre
{
	margin: 1.3em 0;
	padding: 1em 1.2em;
	border-radius: var(--ot-radius-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	overflow-x: auto;
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 0.9em;
	line-height: 1.6;
}

.e-2248d40 > .box > .area > .body pre > code
{
	background: transparent;
	border: none;
	padding: 0;
}

/* Images */

.e-2248d40 > .box > .area > .body img
{
	display: block;
	max-width: 100%;
	height: auto;
	border-radius: var(--ot-radius-m);
	margin: 1.5em 0;
}

/* HR */

.e-2248d40 > .box > .area > .body hr
{
	border: none;
	height: 1px;
	background: var(--ot-bg-2-border);
	margin: 2em 0;
}

/* Tables */

.e-2248d40 > .box > .area > .body table
{
	width: 100%;
	border-collapse: collapse;
	margin: 1.5em 0;
	font-size: var(--ot-size-s);
}

.e-2248d40 > .box > .area > .body th,
.e-2248d40 > .box > .area > .body td
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	border: 1px solid var(--ot-bg-2-border);
	text-align: left;
	vertical-align: top;
}

.e-2248d40 > .box > .area > .body thead td,
.e-2248d40 > .box > .area > .body th
{
	font-weight: 600;
	color: var(--ot-text-1);
	background: var(--ot-bg-2);
}

.e-2248d40 > .box > .area > .body td
{
	color: var(--ot-text-2);
}

/* ===== BACKGROUND ===== */

.e-2248d40 > .box.bg-1 { background: var(--ot-bg-1); }
.e-2248d40 > .box.bg-1 > .bar { background: var(--ot-bg-1); }

.e-2248d40 > .box.bg-2 { background: var(--ot-bg-2); }
.e-2248d40 > .box.bg-2 > .bar { background: var(--ot-bg-2); border-bottom-color: var(--ot-bg-2-border); }
.e-2248d40 > .box.bg-2 > .bar .btn:hover { background: var(--ot-bg-3); }
.e-2248d40 > .box.bg-2 > .bar .sep { background: var(--ot-bg-2-border); }

.e-2248d40 > .box.bg-3 { background: var(--ot-bg-3); }
.e-2248d40 > .box.bg-3 > .bar { background: var(--ot-bg-3); border-bottom-color: var(--ot-bg-3-border); }
.e-2248d40 > .box.bg-3 > .bar .btn:hover { background: var(--ot-bg-4); }
.e-2248d40 > .box.bg-3 > .bar .sep { background: var(--ot-bg-3-border); }

.e-2248d40 > .box.bg-4 { background: var(--ot-bg-4); }
.e-2248d40 > .box.bg-4 > .bar { background: var(--ot-bg-4); border-bottom-color: var(--ot-bg-4-border); }
.e-2248d40 > .box.bg-4 > .bar .btn:hover { background: var(--ot-bg-3); }
.e-2248d40 > .box.bg-4 > .bar .sep { background: var(--ot-bg-4-border); }

/* ===== BORDER ===== */

.e-2248d40 > .box.border { border: 1px solid var(--ot-bg-2-border); }
.e-2248d40 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-2248d40 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-2248d40 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-2248d40 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-2248d40 > .box.size-s > .bar { padding: var(--ot-spacing-x) var(--ot-spacing-s); }
.e-2248d40 > .box.size-s > .bar .btn { width: 26px; height: 26px; }
.e-2248d40 > .box.size-s > .bar .btn > i { font-size: 16px; }
.e-2248d40 > .box.size-s > .area { padding: var(--ot-spacing-m); }
.e-2248d40 > .box.size-s > .area > .body { font-size: var(--ot-size-s); min-height: 140px; }

.e-2248d40 > .box.size-m > .bar { padding: var(--ot-spacing-s) var(--ot-spacing-m); }
.e-2248d40 > .box.size-m > .area { padding: var(--ot-spacing-l); }

.e-2248d40 > .box.size-l > .bar { padding: var(--ot-spacing-m) var(--ot-spacing-l); }
.e-2248d40 > .box.size-l > .bar .btn { width: 34px; height: 34px; }
.e-2248d40 > .box.size-l > .bar .btn > i { font-size: 20px; }
.e-2248d40 > .box.size-l > .area { padding: var(--ot-spacing-l); }
.e-2248d40 > .box.size-l > .area > .body { min-height: 280px; }

/* ===== COMPACT ===== */

.e-2248d40 > .box.compact > .area { padding: var(--ot-spacing-m); }
.e-2248d40 > .box.compact > .area > .body { min-height: 120px; }
/* ===== FORM FIELD ===== */

.e-2109a6b9
{
	display: contents;
}

/* Box */

.e-2109a6b9 > .box
{
	display: flex;
	width: 100%;
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-l);
}

.e-2109a6b9 > .box.horizontal
{
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
}

.e-2109a6b9 > .box.vertical
{
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* Info */

.e-2109a6b9 > .box > .info
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
	min-width: 0;
	flex: 1;
}

.e-2109a6b9 > .box.horizontal > .info
{
	padding-top: 6px;
	max-width: 240px;
}

/* Label */

.e-2109a6b9 > .box > .info > .label
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	line-height: 1.3;
	cursor: default;
}

.e-2109a6b9 > .box > .info > .label > .required
{
	color: var(--ot-red);
	font-weight: 600;
}

.e-2109a6b9 > .box > .info > .label > .hint
{
	font-size: 16px;
	color: var(--ot-text-3);
	cursor: help;
	transition: color var(--ot-transition);
}

.e-2109a6b9 > .box > .info > .label > .hint:hover
{
	color: var(--ot-text-1);
}

/* Description */

.e-2109a6b9 > .box > .info > .description
{
	margin: 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.5;
}

/* Control */

.e-2109a6b9 > .box > .control
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
	flex: 1;
	min-width: 0;
}

.e-2109a6b9 > .box.horizontal > .control
{
	flex: 1.5;
}

.e-2109a6b9 > .box.vertical > .control
{
	width: 100%;
}

/* Input slot */

.e-2109a6b9 > .box > .control > .input
{
	display: flex;
	width: 100%;
}

.e-2109a6b9 > .box > .control > .input > *
{
	width: 100%;
}

/* Error message */

.e-2109a6b9 > .box > .control > .message
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-red);
	animation: e-2109a6b9-shake 0.3s cubic-bezier(0.36, 0.07, 0.19, 0.97);
}

.e-2109a6b9 > .box > .control > .message > i
{
	font-size: 14px;
	font-variation-settings: 'FILL' 1;
}

@keyframes e-2109a6b9-shake
{
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-3px); }
	75% { transform: translateX(3px); }
}

/* Error state */

.e-2109a6b9 > .box.error > .control > .input > *
{
	--ot-brand: var(--ot-red);
	--ot-brand-opacity: var(--ot-red-opacity);
}

/* ===== VARIANT ===== */

.e-2109a6b9 > .box.clean
{
	padding: 0;
}

.e-2109a6b9 > .box.border
{
	border-bottom: 1px solid var(--ot-bg-2-border);
}

/* ===== SIZE ===== */

/* Small */

.e-2109a6b9 > .box.size-s
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	gap: var(--ot-spacing-m);
}

.e-2109a6b9 > .box.size-s.vertical
{
	gap: var(--ot-spacing-x);
}

.e-2109a6b9 > .box.size-s > .info > .label
{
	font-size: var(--ot-size-s);
}

.e-2109a6b9 > .box.size-s > .info > .description
{
	font-size: var(--ot-size-s);
}

/* Medium */

.e-2109a6b9 > .box.size-m
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-m);
}

/* Large */

.e-2109a6b9 > .box.size-l
{
	padding: var(--ot-spacing-l) var(--ot-spacing-m);
	gap: var(--ot-spacing-l);
}

.e-2109a6b9 > .box.size-l.vertical
{
	gap: var(--ot-spacing-s);
}

.e-2109a6b9 > .box.size-l > .info > .label
{
	font-size: 15px;
}

.e-2109a6b9 > .box.size-l > .info > .description
{
	font-size: var(--ot-size-m);
}

/* Clean overrides */

.e-2109a6b9 > .box.clean.size-s,
.e-2109a6b9 > .box.clean.size-m,
.e-2109a6b9 > .box.clean.size-l
{
	padding: 0;
}
/* ===== FORM INPUT ===== */

.e-20dcefe9
{
	display: contents;
}

/* Box */

.e-20dcefe9 > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	background: transparent;
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-20dcefe9 > .box:focus-within
{
	border-color: var(--ot-brand);
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Field */

.e-20dcefe9 > .box > .field
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
}

/* Icon */

.e-20dcefe9 > .box > .field > .icon
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-text-3);
	transition: color var(--ot-transition);
}

.e-20dcefe9 > .box:focus-within > .field > .icon
{
	color: var(--ot-text-1);
}

/* Affix */

.e-20dcefe9 > .box > .field > .affix
{
	flex-shrink: 0;
	color: var(--ot-text-3);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	user-select: none;
}

/* Input */

.e-20dcefe9 > .box > .field > .input
{
	flex: 1;
	min-width: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
}

.e-20dcefe9 > .box > .field > .input::placeholder
{
	color: var(--ot-text-3);
	font-weight: 400;
}

.e-20dcefe9 > .box > .field > .input:disabled
{
	cursor: not-allowed;
}

/* Action */

.e-20dcefe9 > .box > .field > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	padding: 0;
	border: none;
	background: transparent;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-20dcefe9 > .box > .field > .action:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-20dcefe9 > .box > .field > .action > i
{
	font-size: 14px;
}

/* Dropdown */

.e-20dcefe9 > .box > .dropdown
{
	position: absolute;
	top: calc(100% + var(--ot-spacing-x));
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	padding: var(--ot-spacing-x);
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	box-shadow: var(--ot-shadow-m);
	z-index: 10;
	max-height: 240px;
	overflow-y: auto;
	animation: e-20dcefe9-drop var(--ot-transition);
}

@keyframes e-20dcefe9-drop
{
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.e-20dcefe9 > .box > .dropdown > .option
{
	display: flex;
	align-items: center;
	width: 100%;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	text-align: left;
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-20dcefe9 > .box > .dropdown > .option:hover,
.e-20dcefe9 > .box > .dropdown > .option.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

/* Disabled */

.e-20dcefe9 > .box.disabled
{
	cursor: not-allowed;
	opacity: 0.5;
}

/* ===== BACKGROUND ===== */

.e-20dcefe9 > .box.bg-1 { background: var(--ot-bg-1); }
.e-20dcefe9 > .box.bg-2 { background: var(--ot-bg-2); }
.e-20dcefe9 > .box.bg-3 { background: var(--ot-bg-3); }
.e-20dcefe9 > .box.bg-4 { background: var(--ot-bg-4); }
.e-20dcefe9 > .box.transparent { background: transparent; }

.e-20dcefe9 > .box.bg-1:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-1-hover); }
.e-20dcefe9 > .box.bg-2:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-2-hover); }
.e-20dcefe9 > .box.bg-3:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-3-hover); }
.e-20dcefe9 > .box.bg-4:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-4-hover); }

/* ===== BORDER ===== */

.e-20dcefe9 > .box.border { border-color: var(--ot-bg-2-border); }
.e-20dcefe9 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-20dcefe9 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-20dcefe9 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-20dcefe9 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-20dcefe9 > .box.size-s > .field
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
}

.e-20dcefe9 > .box.size-s > .field > .icon
{
	font-size: 15px;
}

.e-20dcefe9 > .box.size-s > .field > .affix,
.e-20dcefe9 > .box.size-s > .field > .input
{
	font-size: var(--ot-size-s);
}

.e-20dcefe9 > .box.size-s > .field > .action
{
	width: 18px;
	height: 18px;
}

.e-20dcefe9 > .box.size-s > .field > .action > i
{
	font-size: 13px;
}

.e-20dcefe9 > .box.size-m > .field
{
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
}

.e-20dcefe9 > .box.size-l > .field
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-l);
}

.e-20dcefe9 > .box.size-l > .field > .icon
{
	font-size: 20px;
}

.e-20dcefe9 > .box.size-l > .field > .action
{
	width: 26px;
	height: 26px;
}

.e-20dcefe9 > .box.size-l > .field > .action > i
{
	font-size: 16px;
}
/* ===== FORM RADIO ===== */

.e-206433b8
{
	display: contents;
}

/* Box */

.e-206433b8 > .box
{
	position: relative;
	display: inline-flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	cursor: pointer;
	font-family: var(--ot-font-primary);
}

.e-206433b8 > .box.reverse
{
	flex-direction: row-reverse;
}

/* Input */

.e-206433b8 > .box > input
{
	position: absolute;
	opacity: 0;
	cursor: pointer;
	width: 0;
	height: 0;
	margin: 0;
}

/* Info */

.e-206433b8 > .box > .info
{
	display: inline-flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	padding-top: 1px;
}

.e-206433b8 > .box > .info > .label
{
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	line-height: 1.3;
	user-select: none;
	transition: color var(--ot-transition);
}

.e-206433b8 > .box > .info > .description
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.4;
	user-select: none;
	transition: color var(--ot-transition);
}

/* Mark */

.e-206433b8 > .box > .mark
{
	position: relative;
	display: block;
	flex-shrink: 0;
	border-radius: 50%;
	border: 1px solid transparent;
	background: transparent;
	transition: background var(--ot-transition), border-color var(--ot-transition), transform var(--ot-transition-fast), box-shadow var(--ot-transition);
}

/* Dot */

.e-206433b8 > .box > .mark::after
{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	border-radius: 50%;
	background: white;
	transform: translate(-50%, -50%) scale(0);
	opacity: 0;
	transition: transform var(--ot-transition), opacity var(--ot-transition-fast);
}

.e-206433b8 > .box > input:checked ~ .mark::after
{
	transform: translate(-50%, -50%) scale(1);
	opacity: 1;
}

/* Focus */

.e-206433b8 > .box > input:focus-visible ~ .mark
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Active */

.e-206433b8 > .box:active > .mark
{
	transform: scale(0.92);
}

/* Disabled */

.e-206433b8 > .box.disabled
{
	cursor: not-allowed;
}

.e-206433b8 > .box.disabled > .mark
{
	opacity: 0.45;
}

.e-206433b8 > .box.disabled > .info > .label,
.e-206433b8 > .box.disabled > .info > .description
{
	color: var(--ot-text-3);
	opacity: 0.6;
}

/* ===== SIZE ===== */

.e-206433b8 > .box.size-s > .mark
{
	width: 16px;
	height: 16px;
}

.e-206433b8 > .box.size-s > .mark::after
{
	width: 6px;
	height: 6px;
}

.e-206433b8 > .box.size-s > .info > .label
{
	font-size: var(--ot-size-s);
}

.e-206433b8 > .box.size-s > .info > .description
{
	font-size: 10.5px;
}

.e-206433b8 > .box.size-m > .mark
{
	width: 20px;
	height: 20px;
}

.e-206433b8 > .box.size-m > .mark::after
{
	width: 8px;
	height: 8px;
}

.e-206433b8 > .box.size-m > .info > .label
{
	font-size: var(--ot-size-m);
}

.e-206433b8 > .box.size-l > .mark
{
	width: 24px;
	height: 24px;
}

.e-206433b8 > .box.size-l > .mark::after
{
	width: 10px;
	height: 10px;
}

.e-206433b8 > .box.size-l > .info > .label
{
	font-size: var(--ot-size-m);
}

/* ===== BACKGROUND ===== */

.e-206433b8 > .box.bg-1 > .mark
{
	background: var(--ot-bg-1);
	border-color: var(--ot-bg-1-border);
}

.e-206433b8 > .box.bg-1:hover:not(.disabled) > input:not(:checked) ~ .mark
{
	background: var(--ot-bg-1-hover);
}

.e-206433b8 > .box.bg-2 > .mark
{
	background: var(--ot-bg-2);
	border-color: var(--ot-bg-2-border);
}

.e-206433b8 > .box.bg-2:hover:not(.disabled) > input:not(:checked) ~ .mark
{
	background: var(--ot-bg-2-hover);
}

.e-206433b8 > .box.bg-3 > .mark
{
	background: var(--ot-bg-3);
	border-color: var(--ot-bg-3-border);
}

.e-206433b8 > .box.bg-3:hover:not(.disabled) > input:not(:checked) ~ .mark
{
	background: var(--ot-bg-3-hover);
}

.e-206433b8 > .box.bg-4 > .mark
{
	background: var(--ot-bg-4);
	border-color: var(--ot-bg-4-border);
}

.e-206433b8 > .box.bg-4:hover:not(.disabled) > input:not(:checked) ~ .mark
{
	background: var(--ot-bg-4-hover);
}

/* Transparent */

.e-206433b8 > .box.transparent > .mark
{
	background: transparent;
	border-color: transparent;
}

.e-206433b8 > .box.transparent > input:not(:checked) ~ .mark::after
{
	background: var(--ot-text-1);
}

/* Border */

.e-206433b8 > .box.border > .mark
{
	background: transparent;
	border-color: var(--ot-bg-2-border);
}

.e-206433b8 > .box.border:hover:not(.disabled) > input:not(:checked) ~ .mark
{
	border-color: var(--ot-text-3);
}

/* ===== CHECKED ===== */

.e-206433b8 > .box.bg-1 > input:checked ~ .mark,
.e-206433b8 > .box.bg-2 > input:checked ~ .mark,
.e-206433b8 > .box.bg-3 > input:checked ~ .mark,
.e-206433b8 > .box.bg-4 > input:checked ~ .mark,
.e-206433b8 > .box.transparent > input:checked ~ .mark,
.e-206433b8 > .box.border > input:checked ~ .mark
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
}

/* ===== COLOR ===== */

.e-206433b8 > .box.color-brand > input:checked ~ .mark
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
}

.e-206433b8 > .box.color-blue > input:checked ~ .mark
{
	background: var(--ot-blue);
	border-color: var(--ot-blue);
}

.e-206433b8 > .box.color-red > input:checked ~ .mark
{
	background: var(--ot-red);
	border-color: var(--ot-red);
}

.e-206433b8 > .box.color-orange > input:checked ~ .mark
{
	background: var(--ot-orange);
	border-color: var(--ot-orange);
}

.e-206433b8 > .box.color-green > input:checked ~ .mark
{
	background: var(--ot-green);
	border-color: var(--ot-green);
}

/* Color focus rings */

.e-206433b8 > .box.color-blue > input:focus-visible ~ .mark
{
	box-shadow: 0 0 0 1px var(--ot-blue-opacity);
}

.e-206433b8 > .box.color-red > input:focus-visible ~ .mark
{
	box-shadow: 0 0 0 1px var(--ot-red-opacity);
}

.e-206433b8 > .box.color-orange > input:focus-visible ~ .mark
{
	box-shadow: 0 0 0 1px var(--ot-orange-opacity);
}

.e-206433b8 > .box.color-green > input:focus-visible ~ .mark
{
	box-shadow: 0 0 0 1px var(--ot-green-opacity);
}

/* ===== ICON ===== */

.e-206433b8 > .box > .icon
{
	font-size: 18px;
	color: var(--ot-text-2);
	flex-shrink: 0;
	align-self: center;
}

.e-206433b8 > .box.size-s > .icon { font-size: 16px; }
.e-206433b8 > .box.size-l > .icon { font-size: 20px; }

/* ===== COUNT ===== */

.e-206433b8 > .box > .count
{
	margin-left: auto;
	padding-left: var(--ot-spacing-s);
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-text-3);
	font-variant-numeric: tabular-nums;
	align-self: center;
}
/* ===== FORM RATING ===== */

.e-13e502f0
{
	display: contents;
}

/* Box */

.e-13e502f0 > .box
{
	display: inline-flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	font-family: var(--ot-font-primary);
}

/* Info */

.e-13e502f0 > .box > .info
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-13e502f0 > .box > .info > .label
{
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	line-height: 1.3;
}

.e-13e502f0 > .box > .info > .text
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.4;
}

/* Row */

.e-13e502f0 > .box > .row
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

/* Stars */

.e-13e502f0 > .box > .row > .stars
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
}

/* Star */

.e-13e502f0 .star
{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	outline: none;
	color: var(--ot-bg-3-border);
	transition: transform var(--ot-transition), color var(--ot-transition);
}

.e-13e502f0 .star:hover:not(:disabled)
{
	transform: scale(1.15);
}

.e-13e502f0 .star:active:not(:disabled)
{
	transform: scale(1);
	transition-duration: 100ms;
}

.e-13e502f0 .star:disabled
{
	cursor: default;
}

.e-13e502f0 .star:focus-visible
{
	outline: none;
}

.e-13e502f0 .star:focus-visible > .base
{
	filter: drop-shadow(0 0 6px var(--ot-brand-opacity));
}

/* Base icon */

.e-13e502f0 .star > .base
{
	position: relative;
	z-index: 1;
	color: var(--ot-bg-3-border);
	font-variation-settings: 'FILL' 0;
}

/* Fill icon */

.e-13e502f0 .star > .fill
{
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	transform: translate(-50%, -50%);
	width: 0;
	overflow: hidden;
	font-variation-settings: 'FILL' 1;
	transition: width var(--ot-transition-slow);
	pointer-events: none;
}

.e-13e502f0 .star.fill-50 > .fill
{
	width: 50%;
	left: 0;
	transform: translate(0, -50%);
}

.e-13e502f0 .star.fill-100 > .fill
{
	width: 100%;
	left: 0;
	transform: translate(0, -50%);
}

/* Half-click area */

.e-13e502f0 .star > .half
{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
	width: 50%;
	height: 100%;
	cursor: pointer;
}

/* States */

.e-13e502f0 > .box.readonly .star,
.e-13e502f0 > .box.disabled .star
{
	cursor: default;
	pointer-events: none;
}

.e-13e502f0 > .box.readonly .star:hover,
.e-13e502f0 > .box.disabled .star:hover
{
	transform: none;
}

.e-13e502f0 > .box.disabled
{
	opacity: 0.5;
}

/* Meta */

.e-13e502f0 > .box > .row > .meta
{
	display: inline-flex;
	align-items: baseline;
	gap: var(--ot-spacing-x);
	margin-left: var(--ot-spacing-x);
}

.e-13e502f0 > .box > .row > .meta > .value
{
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
	font-variant-numeric: tabular-nums;
}

.e-13e502f0 > .box > .row > .meta > .count
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	font-variant-numeric: tabular-nums;
}

/* ===== COLOR ===== */

.e-13e502f0 > .box.brand .star > .fill { color: var(--ot-brand); }
.e-13e502f0 > .box.blue .star > .fill { color: var(--ot-blue); }
.e-13e502f0 > .box.red .star > .fill { color: var(--ot-red); }
.e-13e502f0 > .box.orange .star > .fill { color: var(--ot-orange); }
.e-13e502f0 > .box.green .star > .fill { color: var(--ot-green); }

.e-13e502f0 > .box.brand .star:focus-visible > .base { filter: drop-shadow(0 0 6px var(--ot-brand-opacity)); }
.e-13e502f0 > .box.blue .star:focus-visible > .base { filter: drop-shadow(0 0 6px var(--ot-blue-opacity)); }
.e-13e502f0 > .box.red .star:focus-visible > .base { filter: drop-shadow(0 0 6px var(--ot-red-opacity)); }
.e-13e502f0 > .box.orange .star:focus-visible > .base { filter: drop-shadow(0 0 6px var(--ot-orange-opacity)); }
.e-13e502f0 > .box.green .star:focus-visible > .base { filter: drop-shadow(0 0 6px var(--ot-green-opacity)); }

/* ===== SIZE ===== */

.e-13e502f0 > .box.size-s > .row > .stars { gap: 2px; }

.e-13e502f0 > .box.size-s .star > .base,
.e-13e502f0 > .box.size-s .star > .fill { font-size: 16px; }

.e-13e502f0 > .box.size-s > .row > .meta > .value { font-size: var(--ot-size-s); }
.e-13e502f0 > .box.size-s > .row > .meta > .count { font-size: 10.5px; }

.e-13e502f0 > .box.size-m > .row > .stars { gap: var(--ot-spacing-x); }

.e-13e502f0 > .box.size-m .star > .base,
.e-13e502f0 > .box.size-m .star > .fill { font-size: 22px; }

.e-13e502f0 > .box.size-l > .row > .stars { gap: var(--ot-spacing-s); }

.e-13e502f0 > .box.size-l .star > .base,
.e-13e502f0 > .box.size-l .star > .fill { font-size: 30px; }

.e-13e502f0 > .box.size-l > .row > .meta > .value { font-size: 15px; }
.e-13e502f0 > .box.size-l > .row > .meta > .count { font-size: var(--ot-size-m); }
/* ===== FORM SECTION ===== */

.e-5c75a80e
{
	display: contents;
}

/* Box */

.e-5c75a80e > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-l);
	transition: border-color var(--ot-transition);
}

/* ===== HEADER ===== */

.e-5c75a80e > .box > .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-m);
	border-bottom: 1px solid transparent;
	transition: border-color var(--ot-transition);
}

.e-5c75a80e > .box:not(.collapsed) > .head
{
	border-bottom-color: var(--ot-bg-2-border);
}

/* Head main */

.e-5c75a80e > .box > .head > .head-main
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	flex: 1;
	min-width: 0;
}

.e-5c75a80e > .box.collapsible > .head > .head-main
{
	cursor: pointer;
}

/* Icon */

.e-5c75a80e > .box > .head > .head-main > .icon
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	flex-shrink: 0;
}

.e-5c75a80e > .box > .head > .head-main > .icon > i
{
	font-size: 22px;
}

/* Text */

.e-5c75a80e > .box > .head > .head-main > .text
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.e-5c75a80e > .box > .head > .head-main > .text > .eyebrow
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ot-brand);
}

.e-5c75a80e > .box > .head > .head-main > .text > .title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-size: 18px;
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	line-height: 1.25;
	font-variation-settings: 'opsz' 144;
}

.e-5c75a80e > .box > .head > .head-main > .text > .description
{
	margin: 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.5;
}

/* Chevron */

.e-5c75a80e > .box > .head > .head-main > .chevron
{
	flex-shrink: 0;
	font-size: 22px;
	color: var(--ot-text-3);
	transition: transform var(--ot-transition-slow), color var(--ot-transition);
}

.e-5c75a80e > .box.collapsible > .head > .head-main:hover > .chevron
{
	color: var(--ot-text-1);
}

.e-5c75a80e > .box.collapsed > .head > .head-main > .chevron
{
	transform: rotate(-90deg);
}

/* Actions */

.e-5c75a80e > .box > .head > .actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-shrink: 0;
}

/* ===== CONTENT ===== */

.e-5c75a80e > .box > .content
{
	display: flex;
	flex-direction: column;
	animation: e-5c75a80e-expand 0.25s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-5c75a80e-expand
{
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Padded content */

.e-5c75a80e > .box.padded > .content
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-m);
}

.e-5c75a80e > .box.padded.size-s > .content
{
	padding: var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-5c75a80e > .box.padded.size-l > .content
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-l);
}

/* ===== BACKGROUND ===== */

.e-5c75a80e > .box.bg-1 { background: var(--ot-bg-1); }
.e-5c75a80e > .box.bg-2 { background: var(--ot-bg-2); }
.e-5c75a80e > .box.bg-3 { background: var(--ot-bg-3); }
.e-5c75a80e > .box.bg-4 { background: var(--ot-bg-4); }

.e-5c75a80e > .box.bg-1:not(.collapsed) > .head { border-bottom-color: var(--ot-bg-1-border); }
.e-5c75a80e > .box.bg-2:not(.collapsed) > .head { border-bottom-color: var(--ot-bg-2-border); }
.e-5c75a80e > .box.bg-3:not(.collapsed) > .head { border-bottom-color: var(--ot-bg-3-border); }
.e-5c75a80e > .box.bg-4:not(.collapsed) > .head { border-bottom-color: var(--ot-bg-4-border); }

/* ===== BORDER ===== */

.e-5c75a80e > .box.border { border-color: var(--ot-bg-2-border); }
.e-5c75a80e > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-5c75a80e > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-5c75a80e > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-5c75a80e > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== CLEAN ===== */

.e-5c75a80e > .box.clean
{
	background: transparent;
	border: none;
	border-radius: 0;
	gap: var(--ot-spacing-m);
}

.e-5c75a80e > .box.clean > .head
{
	padding: 0 0 var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-5c75a80e > .box.clean > .content
{
	padding: 0;
}

/* ===== SIZE: SMALL ===== */

.e-5c75a80e > .box.size-s > .head
{
	padding: var(--ot-spacing-m);
}

.e-5c75a80e > .box.size-s > .head > .head-main
{
	gap: var(--ot-spacing-s);
}

.e-5c75a80e > .box.size-s > .head > .head-main > .icon
{
	width: 34px;
	height: 34px;
	border-radius: var(--ot-radius-s);
}

.e-5c75a80e > .box.size-s > .head > .head-main > .icon > i
{
	font-size: 18px;
}

.e-5c75a80e > .box.size-s > .head > .head-main > .text > .eyebrow
{
	font-size: 10px;
}

.e-5c75a80e > .box.size-s > .head > .head-main > .text > .title
{
	font-size: 15px;
}

.e-5c75a80e > .box.size-s > .head > .head-main > .text > .description
{
	font-size: var(--ot-size-s);
}

.e-5c75a80e > .box.size-s > .head > .head-main > .chevron
{
	font-size: 20px;
}

/* ===== SIZE: LARGE ===== */

.e-5c75a80e > .box.size-l > .head
{
	padding: var(--ot-spacing-l);
}

.e-5c75a80e > .box.size-l > .head > .head-main > .icon
{
	width: 52px;
	height: 52px;
	border-radius: var(--ot-radius-l);
}

.e-5c75a80e > .box.size-l > .head > .head-main > .icon > i
{
	font-size: 26px;
}

.e-5c75a80e > .box.size-l > .head > .head-main > .text > .title
{
	font-size: 22px;
}

.e-5c75a80e > .box.size-l > .head > .head-main > .text > .description
{
	font-size: 14px;
}

.e-5c75a80e > .box.size-l > .head > .head-main > .chevron
{
	font-size: 26px;
}

/* Clean size overrides */

.e-5c75a80e > .box.clean.size-s > .head { padding: 0 0 var(--ot-spacing-s); }
.e-5c75a80e > .box.clean.size-l > .head { padding: 0 0 var(--ot-spacing-l); }
/* ===== FORM SELECT ===== */

.e-15ce864f
{
	display: contents;
}

/* Box */

.e-15ce864f > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	background: transparent;
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-15ce864f > .box.open
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Trigger */

.e-15ce864f > .box > .trigger
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	cursor: pointer;
	user-select: none;
}

.e-15ce864f > .box > .trigger > .icon
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-text-3);
	transition: color var(--ot-transition);
}

.e-15ce864f > .box.open > .trigger > .icon
{
	color: var(--ot-text-1);
}

.e-15ce864f > .box > .trigger > .selected
{
	flex: 1;
	min-width: 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-15ce864f > .box > .trigger > .placeholder
{
	flex: 1;
	min-width: 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	color: var(--ot-text-3);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Action (clear) */

.e-15ce864f > .box > .trigger > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	padding: 0;
	margin-left: auto;
	border: none;
	background: transparent;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-15ce864f > .box > .trigger > .action:hover
{
	background: var(--ot-bg-2-hover);
	color: var(--ot-text-1);
}

.e-15ce864f > .box > .trigger > .action > i
{
	font-size: 14px;
}

/* Arrow */

.e-15ce864f > .box > .trigger > .arrow
{
	flex-shrink: 0;
	font-size: 20px;
	color: var(--ot-text-3);
	margin-left: auto;
	transition: transform var(--ot-transition), color var(--ot-transition);
}

.e-15ce864f > .box > .trigger > .action + .arrow
{
	margin-left: 0;
}

.e-15ce864f > .box.open > .trigger > .arrow
{
	transform: rotate(180deg);
	color: var(--ot-brand);
}

/* ===== DROPDOWN (rendered via float overlay) ===== */

.e-15ce864f > .box > .dropdown
{
	position: absolute;
	top: calc(100% + var(--ot-spacing-x));
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	box-shadow: var(--ot-shadow-m);
	z-index: 100;
	overflow: hidden;
	animation: e-15ce864f-drop var(--ot-transition);
}

@keyframes e-15ce864f-drop
{
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.e-15ce864f > .box.above > .dropdown
{
	top: auto;
	bottom: calc(100% + var(--ot-spacing-x));
	animation: e-15ce864f-drop-above var(--ot-transition);
}

@keyframes e-15ce864f-drop-above
{
	from { opacity: 0; transform: translateY(4px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Search */

.e-15ce864f > .box > .dropdown > .search
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: 0 var(--ot-spacing-m);
	height: var(--ot-height-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-15ce864f > .box > .dropdown > .search > i
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-text-3);
}

.e-15ce864f > .box > .dropdown > .search > input
{
	flex: 1;
	min-width: 0;
	width: 100%;
	padding: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
}

.e-15ce864f > .box > .dropdown > .search > input::placeholder
{
	color: var(--ot-text-3);
	font-weight: 400;
}

/* List */

.e-15ce864f > .box > .dropdown > .list
{
	display: flex;
	flex-direction: column;
	padding: var(--ot-spacing-x);
	max-height: 280px;
	overflow-y: auto;
}

/* Option */

.e-15ce864f > .box > .dropdown > .list > .option
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	text-align: left;
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-15ce864f > .box > .dropdown > .list > .option > .icon
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-text-3);
	transition: color var(--ot-transition-fast);
}

.e-15ce864f > .box > .dropdown > .list > .option > .text
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.e-15ce864f > .box > .dropdown > .list > .option > .text > .label
{
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-15ce864f > .box > .dropdown > .list > .option > .text > .description
{
	font-size: var(--ot-size-s);
	font-weight: 400;
	color: var(--ot-text-3);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-15ce864f > .box > .dropdown > .list > .option > .check
{
	flex-shrink: 0;
	margin-left: auto;
	font-size: 18px;
	color: var(--ot-brand);
}

.e-15ce864f > .box > .dropdown > .list > .option:hover:not(.disabled),
.e-15ce864f > .box > .dropdown > .list > .option.active:not(.disabled)
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-15ce864f > .box > .dropdown > .list > .option:hover:not(.disabled) > .icon,
.e-15ce864f > .box > .dropdown > .list > .option.active:not(.disabled) > .icon
{
	color: var(--ot-brand);
}

.e-15ce864f > .box > .dropdown > .list > .option.selected
{
	color: var(--ot-brand);
}

.e-15ce864f > .box > .dropdown > .list > .option.selected > .icon
{
	color: var(--ot-brand);
}

.e-15ce864f > .box > .dropdown > .list > .option.disabled
{
	opacity: 0.4;
	cursor: not-allowed;
}

/* Empty */

.e-15ce864f > .box > .dropdown > .list > .empty
{
	padding: var(--ot-spacing-m);
	text-align: center;
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

/* ===== DISABLED ===== */

.e-15ce864f > .box.disabled
{
	cursor: not-allowed;
	opacity: 0.55;
}

.e-15ce864f > .box.disabled > .trigger
{
	cursor: not-allowed;
}

/* ===== BACKGROUND ===== */

.e-15ce864f > .box.bg-1 { background: var(--ot-bg-1); }
.e-15ce864f > .box.bg-2 { background: var(--ot-bg-2); }
.e-15ce864f > .box.bg-3 { background: var(--ot-bg-3); }
.e-15ce864f > .box.bg-4 { background: var(--ot-bg-4); }

.e-15ce864f > .box.bg-1:hover:not(.open):not(.disabled) { background: var(--ot-bg-1-hover); }
.e-15ce864f > .box.bg-2:hover:not(.open):not(.disabled) { background: var(--ot-bg-2-hover); }
.e-15ce864f > .box.bg-3:hover:not(.open):not(.disabled) { background: var(--ot-bg-3-hover); }
.e-15ce864f > .box.bg-4:hover:not(.open):not(.disabled) { background: var(--ot-bg-4-hover); }

.e-15ce864f > .box.bg-1 > .trigger > .action:hover { background: var(--ot-bg-1-hover); }
.e-15ce864f > .box.bg-2 > .trigger > .action:hover { background: var(--ot-bg-2-hover); }
.e-15ce864f > .box.bg-3 > .trigger > .action:hover { background: var(--ot-bg-3-hover); }
.e-15ce864f > .box.bg-4 > .trigger > .action:hover { background: var(--ot-bg-4-hover); }

.e-15ce864f > .box.transparent { background: transparent; }

/* Border */

.e-15ce864f > .box.border { border-color: var(--ot-bg-2-border); }
.e-15ce864f > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-15ce864f > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-15ce864f > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-15ce864f > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-15ce864f > .box.size-s > .trigger
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
}

.e-15ce864f > .box.size-s > .trigger > .icon { font-size: 15px; }

.e-15ce864f > .box.size-s > .trigger > .selected,
.e-15ce864f > .box.size-s > .trigger > .placeholder { font-size: var(--ot-size-s); }

.e-15ce864f > .box.size-s > .trigger > .arrow { font-size: 17px; }

.e-15ce864f > .box.size-s > .trigger > .action { width: 18px; height: 18px; }
.e-15ce864f > .box.size-s > .trigger > .action > i { font-size: 13px; }

.e-15ce864f > .box.size-m > .trigger
{
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
}

.e-15ce864f > .box.size-l > .trigger
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-l);
}

.e-15ce864f > .box.size-l > .trigger > .icon { font-size: 20px; }
.e-15ce864f > .box.size-l > .trigger > .arrow { font-size: 22px; }
.e-15ce864f > .box.size-l > .trigger > .action { width: 26px; height: 26px; }
.e-15ce864f > .box.size-l > .trigger > .action > i { font-size: 16px; }
/* ===== FORM SLIDER ===== */

.e-162fca34
{
	display: contents;
}

/* Box */

.e-162fca34 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	width: 100%;
	font-family: var(--ot-font-primary);
}

/* Head */

.e-162fca34 > .box > .head
{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--ot-spacing-m);
}

.e-162fca34 > .box > .head > .info
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.e-162fca34 > .box > .head > .info > .label
{
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	line-height: 1.3;
}

.e-162fca34 > .box > .head > .info > .description
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.4;
}

.e-162fca34 > .box > .head > .value
{
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
	font-variant-numeric: tabular-nums;
	padding: 2px var(--ot-spacing-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	flex-shrink: 0;
}

/* Control */

.e-162fca34 > .box > .control
{
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
}

/* Track */

.e-162fca34 > .box > .control > .track
{
	position: absolute;
	left: 0;
	right: 0;
	height: 6px;
	background: var(--ot-bg-3);
	border-radius: var(--ot-radius-s);
	pointer-events: none;
	overflow: hidden;
}

.e-162fca34 > .box > .control > .track > .fill
{
	height: 100%;
	background: var(--ot-brand);
	border-radius: var(--ot-radius-s);
	transition: width 20ms linear;
}

/* Marks */

.e-162fca34 > .box > .control > .track > .marks
{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	pointer-events: none;
}

.e-162fca34 > .box > .control > .track > .marks > .mark
{
	position: absolute;
	top: 50%;
	width: 2px;
	height: 2px;
	border-radius: 50%;
	background: var(--ot-bg-1);
	transform: translate(-50%, -50%);
	transition: background var(--ot-transition);
}

.e-162fca34 > .box > .control > .track > .marks > .mark.active
{
	background: rgba(255, 255, 255, 0.5);
}

/* Native input */

.e-162fca34 > .box > .control > input
{
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
	background: transparent;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
	z-index: 1;
}

.e-162fca34 > .box > .control > input:focus
{
	outline: none;
}

/* Thumb — WebKit */

.e-162fca34 > .box > .control > input::-webkit-slider-thumb
{
	-webkit-appearance: none;
	appearance: none;
	background: white;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	box-shadow: var(--ot-shadow-s), 0 0 0 1px rgba(20, 20, 30, 0.08);
	transition: transform var(--ot-transition), box-shadow var(--ot-transition);
}

.e-162fca34 > .box > .control > input::-webkit-slider-thumb:hover
{
	transform: scale(1.1);
}

.e-162fca34 > .box > .control > input:active::-webkit-slider-thumb
{
	transform: scale(1.05);
	box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-brand-opacity);
}

.e-162fca34 > .box > .control > input:focus-visible::-webkit-slider-thumb
{
	box-shadow: var(--ot-shadow-s), 0 0 0 4px var(--ot-brand-opacity);
}

/* Thumb — Firefox */

.e-162fca34 > .box > .control > input::-moz-range-thumb
{
	background: white;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	box-shadow: var(--ot-shadow-s), 0 0 0 1px rgba(20, 20, 30, 0.08);
	transition: transform var(--ot-transition), box-shadow var(--ot-transition);
}

.e-162fca34 > .box > .control > input::-moz-range-thumb:hover
{
	transform: scale(1.1);
}

.e-162fca34 > .box > .control > input:active::-moz-range-thumb
{
	transform: scale(1.05);
	box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-brand-opacity);
}

/* Range labels */

.e-162fca34 > .box > .range
{
	display: flex;
	justify-content: space-between;
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	font-variant-numeric: tabular-nums;
}

/* Disabled */

.e-162fca34 > .box.disabled
{
	opacity: 0.5;
	pointer-events: none;
}

/* ===== COLOR ===== */

.e-162fca34 > .box.brand > .control > .track > .fill { background: var(--ot-brand); }
.e-162fca34 > .box.brand > .control > input:active::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-brand-opacity); }
.e-162fca34 > .box.brand > .control > input:active::-moz-range-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-brand-opacity); }
.e-162fca34 > .box.brand > .control > input:focus-visible::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 4px var(--ot-brand-opacity); }

.e-162fca34 > .box.blue > .control > .track > .fill { background: var(--ot-blue); }
.e-162fca34 > .box.blue > .control > input:active::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-blue-opacity); }
.e-162fca34 > .box.blue > .control > input:active::-moz-range-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-blue-opacity); }
.e-162fca34 > .box.blue > .control > input:focus-visible::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 4px var(--ot-blue-opacity); }

.e-162fca34 > .box.red > .control > .track > .fill { background: var(--ot-red); }
.e-162fca34 > .box.red > .control > input:active::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-red-opacity); }
.e-162fca34 > .box.red > .control > input:active::-moz-range-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-red-opacity); }
.e-162fca34 > .box.red > .control > input:focus-visible::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 4px var(--ot-red-opacity); }

.e-162fca34 > .box.orange > .control > .track > .fill { background: var(--ot-orange); }
.e-162fca34 > .box.orange > .control > input:active::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-orange-opacity); }
.e-162fca34 > .box.orange > .control > input:active::-moz-range-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-orange-opacity); }
.e-162fca34 > .box.orange > .control > input:focus-visible::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 4px var(--ot-orange-opacity); }

.e-162fca34 > .box.green > .control > .track > .fill { background: var(--ot-green); }
.e-162fca34 > .box.green > .control > input:active::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-green-opacity); }
.e-162fca34 > .box.green > .control > input:active::-moz-range-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 8px var(--ot-green-opacity); }
.e-162fca34 > .box.green > .control > input:focus-visible::-webkit-slider-thumb { box-shadow: var(--ot-shadow-s), 0 0 0 4px var(--ot-green-opacity); }

/* ===== SIZE ===== */

.e-162fca34 > .box.size-s > .control > .track
{
	height: 4px;
}

.e-162fca34 > .box.size-s > .control > input
{
	height: 14px;
}

.e-162fca34 > .box.size-s > .control > input::-webkit-slider-thumb
{
	width: 14px;
	height: 14px;
}

.e-162fca34 > .box.size-s > .control > input::-moz-range-thumb
{
	width: 14px;
	height: 14px;
}

.e-162fca34 > .box.size-s > .head > .info > .label
{
	font-size: var(--ot-size-s);
}

.e-162fca34 > .box.size-s > .head > .value
{
	font-size: var(--ot-size-s);
}

.e-162fca34 > .box.size-s > .range
{
	font-size: 10.5px;
}

.e-162fca34 > .box.size-m > .control > .track
{
	height: 6px;
}

.e-162fca34 > .box.size-m > .control > input
{
	height: 18px;
}

.e-162fca34 > .box.size-m > .control > input::-webkit-slider-thumb
{
	width: 18px;
	height: 18px;
}

.e-162fca34 > .box.size-m > .control > input::-moz-range-thumb
{
	width: 18px;
	height: 18px;
}

.e-162fca34 > .box.size-l > .control > .track
{
	height: 8px;
}

.e-162fca34 > .box.size-l > .control > input
{
	height: 22px;
}

.e-162fca34 > .box.size-l > .control > input::-webkit-slider-thumb
{
	width: 22px;
	height: 22px;
}

.e-162fca34 > .box.size-l > .control > input::-moz-range-thumb
{
	width: 22px;
	height: 22px;
}

.e-162fca34 > .box.size-l > .head > .info > .label
{
	font-size: var(--ot-size-m);
}

.e-162fca34 > .box.size-l > .head > .value
{
	font-size: 15px;
}
/* ===== FORM TAGS ===== */

.e-283fbe2c
{
	display: contents;
}

/* Box */

.e-283fbe2c > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	background: transparent;
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-283fbe2c > .box:focus-within
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Field */

.e-283fbe2c > .box > .field
{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	min-height: var(--ot-height-m);
}

/* Tag */

.e-283fbe2c > .box > .field > .tag
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: 3px 4px 3px var(--ot-spacing-s);
	border-radius: 100px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: 11.5px;
	font-weight: 500;
	line-height: 1;
	transition: background var(--ot-transition), border-color var(--ot-transition), transform var(--ot-transition);
}

.e-283fbe2c > .box > .field > .tag > .text
{
	padding: 0 var(--ot-spacing-x);
}

/* Remove button */

.e-283fbe2c > .box > .field > .tag > .remove
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	padding: 0;
	border: none;
	background: transparent;
	border-radius: 50%;
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-283fbe2c > .box > .field > .tag > .remove:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-283fbe2c > .box > .field > .tag > .remove > i
{
	font-size: 13px;
}

/* Shake */

.e-283fbe2c > .box > .field > .tag.shake
{
	animation: e-283fbe2c-shake 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-283fbe2c-shake
{
	0%, 100% { transform: translateX(0); }
	20% { transform: translateX(-3px); }
	40% { transform: translateX(3px); }
	60% { transform: translateX(-2px); }
	80% { transform: translateX(2px); }
}

/* Input */

.e-283fbe2c > .box > .field > .input
{
	flex: 1;
	min-width: 80px;
	padding: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
}

.e-283fbe2c > .box > .field > .input::placeholder
{
	color: var(--ot-text-3);
}

.e-283fbe2c > .box > .field > .input:disabled
{
	cursor: not-allowed;
}

/* Dropdown */

.e-283fbe2c > .box > .dropdown
{
	position: absolute;
	top: calc(100% + var(--ot-spacing-x));
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	padding: var(--ot-spacing-x);
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	box-shadow: var(--ot-shadow-m);
	z-index: 10;
	max-height: 240px;
	overflow-y: auto;
	animation: e-283fbe2c-drop var(--ot-transition);
}

@keyframes e-283fbe2c-drop
{
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.e-283fbe2c > .box.above > .dropdown
{
	top: auto;
	bottom: calc(100% + var(--ot-spacing-x));
	animation: e-283fbe2c-drop-above var(--ot-transition);
}

@keyframes e-283fbe2c-drop-above
{
	from { opacity: 0; transform: translateY(4px); }
	to { opacity: 1; transform: translateY(0); }
}

.e-283fbe2c > .box > .dropdown > .option
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	color: var(--ot-text-1);
	text-align: left;
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-283fbe2c > .box > .dropdown > .option > .label
{
	font-weight: 500;
	flex-shrink: 0;
}

.e-283fbe2c > .box > .dropdown > .option > .description
{
	color: var(--ot-text-3);
	font-size: var(--ot-size-s);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	min-width: 0;
}

.e-283fbe2c > .box > .dropdown > .option:hover,
.e-283fbe2c > .box > .dropdown > .option.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

/* Chips (select mode) */

.e-283fbe2c > .box > .chips
{
	display: flex;
	flex-wrap: wrap;
	gap: var(--ot-spacing-x);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	min-height: var(--ot-height-m);
}

.e-283fbe2c > .box > .chips > .placeholder
{
	color: var(--ot-text-3);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 400;
	user-select: none;
}

.e-283fbe2c > .box > .chips > .chip
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: 4px var(--ot-spacing-s);
	border-radius: 100px;
	background: var(--ot-bg-3);
	border: 1px solid var(--ot-bg-3-border);
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
	font-size: 11.5px;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
	outline: none;
	user-select: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-283fbe2c > .box > .chips > .chip:hover
{
	background: var(--ot-bg-3-hover);
	color: var(--ot-text-1);
}

.e-283fbe2c > .box > .chips > .chip:active
{
	transform: scale(0.95);
}

.e-283fbe2c > .box > .chips > .chip.selected
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand);
	color: var(--ot-brand);
}

.e-283fbe2c > .box > .chips > .chip:disabled
{
	cursor: not-allowed;
	opacity: 0.5;
}

/* Disabled */

.e-283fbe2c > .box.disabled
{
	cursor: not-allowed;
	opacity: 0.55;
}

.e-283fbe2c > .box.disabled > .field
{
	cursor: not-allowed;
}

/* ===== BACKGROUND ===== */

.e-283fbe2c > .box.bg-1 { background: var(--ot-bg-1); }

.e-283fbe2c > .box.bg-1 > .field > .tag
{
	background: var(--ot-bg-2);
	border-color: var(--ot-bg-1-border);
}

.e-283fbe2c > .box.bg-1 > .field > .tag > .remove:hover { background: var(--ot-bg-3); }
.e-283fbe2c > .box.bg-1 > .dropdown { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }

.e-283fbe2c > .box.bg-2 { background: var(--ot-bg-2); }

.e-283fbe2c > .box.bg-2 > .field > .tag
{
	background: var(--ot-bg-1);
	border-color: var(--ot-bg-2-border);
}

.e-283fbe2c > .box.bg-2 > .field > .tag > .remove:hover { background: var(--ot-bg-2-hover); }
.e-283fbe2c > .box.bg-2 > .dropdown { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }

.e-283fbe2c > .box.bg-3 { background: var(--ot-bg-3); }

.e-283fbe2c > .box.bg-3 > .field > .tag
{
	background: var(--ot-bg-2);
	border-color: var(--ot-bg-3-border);
}

.e-283fbe2c > .box.bg-3 > .field > .tag > .remove:hover { background: var(--ot-bg-3-hover); }
.e-283fbe2c > .box.bg-3 > .dropdown { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }

.e-283fbe2c > .box.bg-4 { background: var(--ot-bg-4); }

.e-283fbe2c > .box.bg-4 > .field > .tag
{
	background: var(--ot-bg-3);
	border-color: var(--ot-bg-4-border);
}

.e-283fbe2c > .box.bg-4 > .field > .tag > .remove:hover { background: var(--ot-bg-4-hover); }
.e-283fbe2c > .box.bg-4 > .dropdown { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

.e-283fbe2c > .box.bg-1:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-1-hover); }
.e-283fbe2c > .box.bg-2:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-2-hover); }
.e-283fbe2c > .box.bg-3:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-3-hover); }
.e-283fbe2c > .box.bg-4:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-4-hover); }

/* Transparent */

.e-283fbe2c > .box.transparent { background: transparent; }

/* Border */

.e-283fbe2c > .box.border { border-color: var(--ot-bg-2-border); }
.e-283fbe2c > .box.border.bg-1 { border-color: var(--ot-bg-1-border); }
.e-283fbe2c > .box.border.bg-2 { border-color: var(--ot-bg-2-border); }
.e-283fbe2c > .box.border.bg-3 { border-color: var(--ot-bg-3-border); }
.e-283fbe2c > .box.border.bg-4 { border-color: var(--ot-bg-4-border); }

/* ===== COLOR (tag chips) ===== */

.e-283fbe2c > .box.brand > .field > .tag { background: var(--ot-brand-opacity); border-color: var(--ot-brand); color: var(--ot-brand); }
.e-283fbe2c > .box.brand > .field > .tag > .remove { color: var(--ot-brand); }
.e-283fbe2c > .box.brand > .field > .tag > .remove:hover { background: var(--ot-brand); color: #fff; }
.e-283fbe2c > .box.brand > .chips > .chip.selected { background: var(--ot-brand-opacity); border-color: var(--ot-brand); color: var(--ot-brand); }

.e-283fbe2c > .box.blue > .field > .tag { background: var(--ot-blue-opacity); border-color: var(--ot-blue); color: var(--ot-blue); }
.e-283fbe2c > .box.blue > .field > .tag > .remove { color: var(--ot-blue); }
.e-283fbe2c > .box.blue > .field > .tag > .remove:hover { background: var(--ot-blue); color: #fff; }
.e-283fbe2c > .box.blue > .chips > .chip.selected { background: var(--ot-blue-opacity); border-color: var(--ot-blue); color: var(--ot-blue); }

.e-283fbe2c > .box.red > .field > .tag { background: var(--ot-red-opacity); border-color: var(--ot-red); color: var(--ot-red); }
.e-283fbe2c > .box.red > .field > .tag > .remove { color: var(--ot-red); }
.e-283fbe2c > .box.red > .field > .tag > .remove:hover { background: var(--ot-red); color: #fff; }
.e-283fbe2c > .box.red > .chips > .chip.selected { background: var(--ot-red-opacity); border-color: var(--ot-red); color: var(--ot-red); }

.e-283fbe2c > .box.orange > .field > .tag { background: var(--ot-orange-opacity); border-color: var(--ot-orange); color: var(--ot-orange); }
.e-283fbe2c > .box.orange > .field > .tag > .remove { color: var(--ot-orange); }
.e-283fbe2c > .box.orange > .field > .tag > .remove:hover { background: var(--ot-orange); color: #fff; }
.e-283fbe2c > .box.orange > .chips > .chip.selected { background: var(--ot-orange-opacity); border-color: var(--ot-orange); color: var(--ot-orange); }

.e-283fbe2c > .box.green > .field > .tag { background: var(--ot-green-opacity); border-color: var(--ot-green); color: var(--ot-green); }
.e-283fbe2c > .box.green > .field > .tag > .remove { color: var(--ot-green); }
.e-283fbe2c > .box.green > .field > .tag > .remove:hover { background: var(--ot-green); color: #fff; }
.e-283fbe2c > .box.green > .chips > .chip.selected { background: var(--ot-green-opacity); border-color: var(--ot-green); color: var(--ot-green); }

/* ===== SIZE ===== */

/* Small */

.e-283fbe2c > .box.size-s > .field,
.e-283fbe2c > .box.size-s > .chips
{
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
	min-height: var(--ot-height-s);
}

.e-283fbe2c > .box.size-s > .field > .tag
{
	font-size: 10.5px;
	padding: 2px 3px 2px 7px;
}

.e-283fbe2c > .box.size-s > .field > .tag > .remove
{
	width: 14px;
	height: 14px;
}

.e-283fbe2c > .box.size-s > .field > .tag > .remove > i
{
	font-size: 11px;
}

.e-283fbe2c > .box.size-s > .field > .input
{
	font-size: var(--ot-size-s);
}

.e-283fbe2c > .box.size-s > .chips > .chip
{
	font-size: 10.5px;
	padding: 2px var(--ot-spacing-s);
}

/* Medium */

.e-283fbe2c > .box.size-m > .field,
.e-283fbe2c > .box.size-m > .chips
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	min-height: var(--ot-height-m);
}

/* Large */

.e-283fbe2c > .box.size-l > .field,
.e-283fbe2c > .box.size-l > .chips
{
	padding: var(--ot-spacing-s) var(--ot-spacing-l);
	min-height: var(--ot-height-l);
}

.e-283fbe2c > .box.size-l > .field > .tag
{
	font-size: 12.5px;
	padding: 4px 5px 4px var(--ot-spacing-s);
}

.e-283fbe2c > .box.size-l > .field > .tag > .remove
{
	width: 18px;
	height: 18px;
}

.e-283fbe2c > .box.size-l > .field > .tag > .remove > i
{
	font-size: 14px;
}

.e-283fbe2c > .box.size-l > .field > .input
{
	font-size: var(--ot-size-m);
}

.e-283fbe2c > .box.size-l > .chips > .chip
{
	font-size: 12.5px;
	padding: 5px var(--ot-spacing-m);
}
/* ===== FORM TEXTAREA ===== */

.e-5973ffcd
{
	display: contents;
}

/* Box */

.e-5973ffcd > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	background: transparent;
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-5973ffcd > .box:focus-within
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Textarea */

.e-5973ffcd > .box > textarea
{
	width: 100%;
	padding: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	line-height: 1.6;
}

.e-5973ffcd > .box > textarea::placeholder
{
	color: var(--ot-text-3);
	font-weight: 400;
}

.e-5973ffcd > .box > textarea:disabled
{
	cursor: not-allowed;
}

/* Counter */

.e-5973ffcd > .box > .counter
{
	display: flex;
	align-items: center;
	gap: 2px;
	align-self: flex-end;
	margin-top: var(--ot-spacing-x);
	padding-top: var(--ot-spacing-x);
	font-family: var(--ot-font-primary);
	font-size: 10.5px;
	font-weight: 500;
	color: var(--ot-text-3);
	font-variant-numeric: tabular-nums;
	transition: color var(--ot-transition);
	pointer-events: none;
}

.e-5973ffcd > .box > .counter > .slash
{
	opacity: 0.5;
}

.e-5973ffcd > .box > .counter > .full
{
	color: var(--ot-red);
	font-weight: 600;
}

/* Disabled */

.e-5973ffcd > .box.disabled
{
	cursor: not-allowed;
	opacity: 0.55;
}

/* ===== BACKGROUND ===== */

.e-5973ffcd > .box.bg-1 { background: var(--ot-bg-1); }
.e-5973ffcd > .box.bg-2 { background: var(--ot-bg-2); }
.e-5973ffcd > .box.bg-3 { background: var(--ot-bg-3); }
.e-5973ffcd > .box.bg-4 { background: var(--ot-bg-4); }

.e-5973ffcd > .box.bg-1:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-1-hover); }
.e-5973ffcd > .box.bg-2:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-2-hover); }
.e-5973ffcd > .box.bg-3:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-3-hover); }
.e-5973ffcd > .box.bg-4:hover:not(:focus-within):not(.disabled) { background: var(--ot-bg-4-hover); }

/* Transparent */

.e-5973ffcd > .box.transparent
{
	background: transparent;
	padding: 0;
}

/* ===== BORDER ===== */

.e-5973ffcd > .box.border { border-color: var(--ot-bg-2-border); }
.e-5973ffcd > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-5973ffcd > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-5973ffcd > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-5973ffcd > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-5973ffcd > .box.size-s
{
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
}

.e-5973ffcd > .box.size-s > textarea
{
	font-size: var(--ot-size-s);
	line-height: 1.5;
}

.e-5973ffcd > .box.size-m
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
}

.e-5973ffcd > .box.size-m > textarea
{
	font-size: var(--ot-size-m);
	line-height: 1.6;
}

.e-5973ffcd > .box.size-l
{
	padding: var(--ot-spacing-m) var(--ot-spacing-l);
}

.e-5973ffcd > .box.size-l > textarea
{
	font-size: var(--ot-size-m);
	line-height: 1.7;
}

/* Variable button */
.e-5973ffcd > .box
{
	position: relative;
}

.e-5973ffcd > .box > .variable-btn
{
	position: absolute;
	top: 6px;
	right: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-1-border);
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition);
	z-index: 1;
}

.e-5973ffcd > .box > .variable-btn:hover
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-5973ffcd > .box > .variable-btn > i
{
	font-size: 14px;
}
/* ===== FORM TOGGLE ===== */

.e-180e0ca7
{
	display: contents;
}

/* Expression wrapper */

.e-180e0ca7 > .expression
{
	display: block;
	width: 100%;
}

/* Variable button */

.e-180e0ca7 > .box > .variable-btn
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: var(--ot-height-s);
	height: var(--ot-height-s);
	padding: 0;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition), border-color var(--ot-transition);
}

.e-180e0ca7 > .box > .variable-btn:hover
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-180e0ca7 > .box > .variable-btn > i
{
	font-size: 14px;
}

/* Box */

.e-180e0ca7 > .box
{
	position: relative;
	display: inline-flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	cursor: pointer;
	user-select: none;
	font-family: var(--ot-font-primary);
}

.e-180e0ca7 > .box.reverse
{
	flex-direction: row-reverse;
}

/* Hidden input */

.e-180e0ca7 > .box > input
{
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	margin: 0;
}

/* Track */

.e-180e0ca7 > .box > .track
{
	position: relative;
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	border-radius: 100px;
	background: var(--ot-bg-3);
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

/* Thumb */

.e-180e0ca7 > .box > .track > .thumb
{
	position: absolute;
	top: 50%;
	border-radius: 50%;
	background: #fff;
	box-shadow: var(--ot-shadow-s);
	transform: translateY(-50%);
	transition: transform var(--ot-transition);
}

/* Active */

.e-180e0ca7 > .box.active > .track
{
	background: var(--ot-brand);
}

/* Press feedback */

.e-180e0ca7 > .box:active:not(.disabled) > .track > .thumb
{
	transform: translateY(-50%) scaleX(1.1);
}

/* Focus ring */

.e-180e0ca7 > .box > input:focus-visible ~ .track
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Info */

.e-180e0ca7 > .box > .info
{
	display: inline-flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	padding-top: 1px;
}

.e-180e0ca7 > .box > .info > .label
{
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	line-height: 1.3;
	transition: color var(--ot-transition);
}

.e-180e0ca7 > .box > .info > .desc
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.4;
	transition: color var(--ot-transition);
}

/* Disabled */

.e-180e0ca7 > .box.disabled
{
	cursor: not-allowed;
}

.e-180e0ca7 > .box.disabled > .track
{
	opacity: 0.45;
}

.e-180e0ca7 > .box.disabled > .info > .label,
.e-180e0ca7 > .box.disabled > .info > .desc
{
	color: var(--ot-text-3);
	opacity: 0.6;
}

/* ===== BACKGROUND ===== */

.e-180e0ca7 > .box.bg-1 > .track { background: var(--ot-bg-1); }
.e-180e0ca7 > .box.bg-2 > .track { background: var(--ot-bg-2); }
.e-180e0ca7 > .box.bg-3 > .track { background: var(--ot-bg-3); }
.e-180e0ca7 > .box.bg-4 > .track { background: var(--ot-bg-4); }

/* Border */

.e-180e0ca7 > .box.border.bg-1 > .track { border: 1px solid var(--ot-bg-1-border); }
.e-180e0ca7 > .box.border.bg-2 > .track { border: 1px solid var(--ot-bg-2-border); }
.e-180e0ca7 > .box.border.bg-3 > .track { border: 1px solid var(--ot-bg-3-border); }
.e-180e0ca7 > .box.border.bg-4 > .track { border: 1px solid var(--ot-bg-4-border); }

/* ===== COLOR (active state) ===== */

.e-180e0ca7 > .box.active.brand > .track { background: var(--ot-brand); border-color: var(--ot-brand); }
.e-180e0ca7 > .box.active.blue > .track { background: var(--ot-blue); border-color: var(--ot-blue); }
.e-180e0ca7 > .box.active.red > .track { background: var(--ot-red); border-color: var(--ot-red); }
.e-180e0ca7 > .box.active.orange > .track { background: var(--ot-orange); border-color: var(--ot-orange); }
.e-180e0ca7 > .box.active.green > .track { background: var(--ot-green); border-color: var(--ot-green); }

/* Focus per color */

.e-180e0ca7 > .box.blue > input:focus-visible ~ .track { box-shadow: 0 0 0 1px var(--ot-blue-opacity); }
.e-180e0ca7 > .box.red > input:focus-visible ~ .track { box-shadow: 0 0 0 1px var(--ot-red-opacity); }
.e-180e0ca7 > .box.orange > input:focus-visible ~ .track { box-shadow: 0 0 0 1px var(--ot-orange-opacity); }
.e-180e0ca7 > .box.green > input:focus-visible ~ .track { box-shadow: 0 0 0 1px var(--ot-green-opacity); }

/* ===== SIZE ===== */

/* Small */

.e-180e0ca7 > .box.size-s > .track
{
	width: 28px;
	height: 16px;
}

.e-180e0ca7 > .box.size-s > .track > .thumb
{
	width: 12px;
	height: 12px;
	left: 2px;
}

.e-180e0ca7 > .box.size-s.active > .track > .thumb
{
	transform: translate(12px, -50%);
}

.e-180e0ca7 > .box.size-s:active:not(.disabled) > .track > .thumb
{
	transform: translateY(-50%) scaleX(1.1);
}

.e-180e0ca7 > .box.size-s.active:active:not(.disabled) > .track > .thumb
{
	transform: translate(10px, -50%) scaleX(1.2);
}

.e-180e0ca7 > .box.size-s > .info > .label
{
	font-size: var(--ot-size-s);
}

.e-180e0ca7 > .box.size-s > .info > .desc
{
	font-size: 10.5px;
}

/* Medium */

.e-180e0ca7 > .box.size-m > .track
{
	width: 36px;
	height: 20px;
}

.e-180e0ca7 > .box.size-m > .track > .thumb
{
	width: 16px;
	height: 16px;
	left: 2px;
}

.e-180e0ca7 > .box.size-m.active > .track > .thumb
{
	transform: translate(16px, -50%);
}

.e-180e0ca7 > .box.size-m:active:not(.disabled) > .track > .thumb
{
	transform: translateY(-50%) scaleX(1.15);
}

.e-180e0ca7 > .box.size-m.active:active:not(.disabled) > .track > .thumb
{
	transform: translate(13px, -50%) scaleX(1.25);
}

/* Large */

.e-180e0ca7 > .box.size-l > .track
{
	width: 44px;
	height: 24px;
}

.e-180e0ca7 > .box.size-l > .track > .thumb
{
	width: 20px;
	height: 20px;
	left: 2px;
}

.e-180e0ca7 > .box.size-l.active > .track > .thumb
{
	transform: translate(20px, -50%);
}

.e-180e0ca7 > .box.size-l:active:not(.disabled) > .track > .thumb
{
	transform: translateY(-50%) scaleX(1.15);
}

.e-180e0ca7 > .box.size-l.active:active:not(.disabled) > .track > .thumb
{
	transform: translate(17px, -50%) scaleX(1.25);
}

.e-180e0ca7 > .box.size-l > .info > .label
{
	font-size: var(--ot-size-m);
}
/* ===== FORM TRANSFER ===== */

.e-1e66ff82
{
	display: contents;
}

/* Box */

.e-1e66ff82 > .box
{
	display: flex;
	align-items: stretch;
	gap: var(--ot-spacing-m);
	width: 100%;
	min-height: 320px;
}

/* ===== PANEL ===== */

.e-1e66ff82 > .box > .panel
{
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	border-radius: var(--ot-radius-m);
	border: 1px solid transparent;
	overflow: hidden;
}

/* Head */

.e-1e66ff82 > .box > .panel > .head
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	flex-shrink: 0;
}

.e-1e66ff82 > .box > .panel > .head > .title
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-text-2);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.e-1e66ff82 > .box > .panel > .head > .counter
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-3);
}

/* Search */

.e-1e66ff82 > .box > .panel > .search
{
	padding: 0 var(--ot-spacing-s) var(--ot-spacing-s);
	flex-shrink: 0;
}

/* List */

.e-1e66ff82 > .box > .panel > .list
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 0 var(--ot-spacing-s) var(--ot-spacing-s);
	flex: 1;
	min-height: 0;
	max-height: 300px;
	overflow-y: auto;
}

/* Empty */

.e-1e66ff82 > .box > .panel > .list > .empty
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-s);
	flex: 1;
	min-height: 160px;
	color: var(--ot-text-3);
}

.e-1e66ff82 > .box > .panel > .list > .empty > i
{
	font-size: 28px;
	opacity: 0.6;
}

.e-1e66ff82 > .box > .panel > .list > .empty > span
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
}

/* Item */

.e-1e66ff82 > .box > .panel > .list > .item
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	padding: var(--ot-spacing-s);
	background: transparent;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-s);
	text-align: left;
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition-fast), border-color var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-1e66ff82 > .box > .panel > .list > .item:hover:not(.disabled)
{
	background: var(--ot-bg-2);
}

.e-1e66ff82 > .box > .panel > .list > .item.disabled
{
	opacity: 0.4;
	cursor: not-allowed;
}

/* Item icon */

.e-1e66ff82 > .box > .panel > .list > .item > .item-icon
{
	flex-shrink: 0;
	font-size: 20px;
	color: var(--ot-text-2);
}


/* Item text */

.e-1e66ff82 > .box > .panel > .list > .item > .item-text
{
	display: flex;
	flex-direction: column;
	gap: 1px;
	flex: 1;
	min-width: 0;
}

.e-1e66ff82 > .box > .panel > .list > .item > .item-text > .item-label
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-1e66ff82 > .box > .panel > .list > .item > .item-text > .item-desc
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Item move indicator (revealed on hover) */

.e-1e66ff82 > .box > .panel > .list > .item > .item-move
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-text-3);
	opacity: 0;
	transition: opacity var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-1e66ff82 > .box > .panel > .list > .item:hover:not(.disabled) > .item-move
{
	opacity: 1;
	color: var(--ot-brand);
}

/* ===== CONTROLS ===== */

.e-1e66ff82 > .box > .controls
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-s);
	flex-shrink: 0;
	padding: var(--ot-spacing-s);
}

.e-1e66ff82 > .box > .controls > .control
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--ot-height-m);
	height: var(--ot-height-m);
	padding: 0;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-2);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast), border-color var(--ot-transition-fast), transform var(--ot-transition-fast);
}

.e-1e66ff82 > .box > .controls > .control:hover:not(:disabled)
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
	border-color: var(--ot-bg-3-border);
}

.e-1e66ff82 > .box > .controls > .control.accent:not(:disabled)
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	color: #fff;
}

.e-1e66ff82 > .box > .controls > .control.accent:hover:not(:disabled)
{
	background: var(--ot-brand-hover);
	border-color: var(--ot-brand-hover);
	transform: translateX(2px);
}

.e-1e66ff82 > .box > .controls > .control.accent:nth-child(3):hover:not(:disabled)
{
	transform: translateX(-2px);
}

.e-1e66ff82 > .box > .controls > .control:disabled
{
	opacity: 0.35;
	cursor: not-allowed;
}

.e-1e66ff82 > .box > .controls > .control > i
{
	font-size: 18px;
}

/* ===== BACKGROUND ===== */

.e-1e66ff82 > .box.bg-1 > .panel { background: var(--ot-bg-1); }
.e-1e66ff82 > .box.bg-2 > .panel { background: var(--ot-bg-2); }
.e-1e66ff82 > .box.bg-3 > .panel { background: var(--ot-bg-3); }
.e-1e66ff82 > .box.bg-4 > .panel { background: var(--ot-bg-4); }

/* Border */

.e-1e66ff82 > .box.border.bg-1 > .panel { border-color: var(--ot-bg-1-border); }
.e-1e66ff82 > .box.border.bg-2 > .panel { border-color: var(--ot-bg-2-border); }
.e-1e66ff82 > .box.border.bg-3 > .panel { border-color: var(--ot-bg-3-border); }
.e-1e66ff82 > .box.border.bg-4 > .panel { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-1e66ff82 > .box.size-s > .panel > .head
{
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
}

.e-1e66ff82 > .box.size-s > .panel > .list > .item
{
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
	gap: var(--ot-spacing-x);
}

.e-1e66ff82 > .box.size-s > .panel > .list > .item > .item-icon
{
	font-size: 16px;
}

.e-1e66ff82 > .box.size-s > .controls > .control
{
	width: var(--ot-height-s);
	height: var(--ot-height-s);
}

.e-1e66ff82 > .box.size-s > .controls > .control > i
{
	font-size: 15px;
}

.e-1e66ff82 > .box.size-l > .panel > .head
{
	padding: var(--ot-spacing-m) var(--ot-spacing-l);
}

.e-1e66ff82 > .box.size-l > .panel > .list > .item
{
	padding: var(--ot-spacing-m) var(--ot-spacing-l);
	gap: var(--ot-spacing-m);
}

.e-1e66ff82 > .box.size-l > .panel > .list > .item > .item-icon
{
	font-size: 22px;
}

.e-1e66ff82 > .box.size-l > .controls > .control
{
	width: var(--ot-height-l);
	height: var(--ot-height-l);
}

.e-1e66ff82 > .box.size-l > .controls > .control > i
{
	font-size: 20px;
}

/* ===== DISABLED ===== */

.e-1e66ff82 > .box.disabled
{
	opacity: 0.65;
	pointer-events: none;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 767.98px)
{
	.e-1e66ff82 > .box
	{
		flex-direction: column;
	}

	.e-1e66ff82 > .box > .controls
	{
		flex-direction: row;
		width: 100%;
		justify-content: center;
	}
}
/* ===== FORM UPLOAD ===== */

.e-3f8bc2c8
{
	display: contents;
}

/* Box */

.e-3f8bc2c8 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	width: 100%;
}

.e-3f8bc2c8 > .box.disabled
{
	opacity: 0.5;
	pointer-events: none;
}

/* ===== DROPZONE ===== */

.e-3f8bc2c8 > .box > .zone
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 160px;
	padding: var(--ot-spacing-l);
	background: var(--ot-bg-2);
	border: 1.5px dashed var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	cursor: pointer;
	transition: background var(--ot-transition), border-color var(--ot-transition), transform var(--ot-transition);
}

.e-3f8bc2c8 > .box > .zone:hover
{
	background: var(--ot-bg-3);
	border-color: var(--ot-bg-3-border);
}

/* Hidden input */

.e-3f8bc2c8 > .box > .zone > .input
{
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* Prompt */

.e-3f8bc2c8 > .box > .zone > .prompt
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-s);
	text-align: center;
	cursor: pointer;
}

.e-3f8bc2c8 > .box > .zone > .prompt > .badge
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-2);
	transition: background var(--ot-transition), color var(--ot-transition), border-color var(--ot-transition), transform var(--ot-transition);
}

.e-3f8bc2c8 > .box > .zone > .prompt > .badge > i
{
	font-size: 24px;
}

.e-3f8bc2c8 > .box > .zone > .prompt > .badge > .spin
{
	font-size: 24px;
	animation: e-3f8bc2c8-spin 0.8s linear infinite;
}

@keyframes e-3f8bc2c8-spin
{
	to { transform: rotate(360deg); }
}

.e-3f8bc2c8 > .box > .zone > .prompt > .text
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}

.e-3f8bc2c8 > .box > .zone > .prompt > .text > .label
{
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
}

.e-3f8bc2c8 > .box > .zone > .prompt > .text > .hint
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

/* Has files — zone becomes grid container */

.e-3f8bc2c8 > .box > .zone.compact
{
	min-height: auto;
	padding: var(--ot-spacing-s);
	align-items: stretch;
	justify-content: stretch;
}

/* ===== GRID (inside zone) ===== */

.e-3f8bc2c8 > .box > .zone > .grid
{
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
	gap: var(--ot-spacing-s);
	width: 100%;
}

/* Card */

.e-3f8bc2c8 > .box > .zone > .grid > .card
{
	position: relative;
	display: flex;
	flex-direction: column;
	border-radius: var(--ot-radius-s);
	overflow: hidden;
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-2-border);
	animation: e-3f8bc2c8-in 0.25s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-3f8bc2c8-in
{
	from { opacity: 0; transform: scale(0.95); }
	to { opacity: 1; transform: scale(1); }
}

/* Drag and drop reorder */

.e-3f8bc2c8 > .box > .zone > .grid > .card[draggable="true"]
{
	cursor: grab;
}

.e-3f8bc2c8 > .box > .zone > .grid > .card.dragging
{
	opacity: 0.4;
	cursor: grabbing;
}

.e-3f8bc2c8 > .box > .zone > .grid > .card.drag-over
{
	border-color: var(--ot-brand);
	background: var(--ot-brand-opacity);
}

/* Thumbnail */

.e-3f8bc2c8 > .box > .zone > .grid > .card > .thumb
{
	width: 100%;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: var(--ot-radius-s);
}

.e-3f8bc2c8 > .box > .zone > .grid > .card > .thumb > img
{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.e-3f8bc2c8 > .box > .zone > .grid > .card > .thumb.placeholder
{
	color: var(--ot-text-3);
}

.e-3f8bc2c8 > .box > .zone > .grid > .card > .thumb.placeholder > i
{
	font-size: 28px;
}

/* Remove button */

.e-3f8bc2c8 > .box > .zone > .grid > .card > .remove
{
	position: absolute;
	top: var(--ot-spacing-x);
	right: var(--ot-spacing-x);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	padding: 0;
	background: var(--ot-bg-1-opacity);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-2);
	cursor: pointer;
	opacity: 0;
	transition: opacity var(--ot-transition-fast), background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-3f8bc2c8 > .box > .zone > .grid > .card:hover > .remove
{
	opacity: 1;
}

.e-3f8bc2c8 > .box > .zone > .grid > .card > .remove:hover
{
	background: var(--ot-red-opacity);
	color: var(--ot-red);
}

.e-3f8bc2c8 > .box > .zone > .grid > .card > .remove > i
{
	font-size: 14px;
}

/* Add card */

.e-3f8bc2c8 > .box > .zone > .grid > .card.add
{
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1;
	border: 1.5px dashed var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-1);
	cursor: pointer;
	color: var(--ot-text-3);
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition);
}

.e-3f8bc2c8 > .box > .zone > .grid > .card.add:hover
{
	background: var(--ot-bg-3);
	border-color: var(--ot-bg-3-border);
	color: var(--ot-text-1);
}

.e-3f8bc2c8 > .box > .zone > .grid > .card.add.loading
{
	cursor: default;
	border-style: solid;
}

.e-3f8bc2c8 > .box > .zone > .grid > .card.add .spin
{
	animation: e-3f8bc2c8-spin 0.8s linear infinite;
}

.e-3f8bc2c8 > .box > .zone > .grid > .card.add > i
{
	font-size: 24px;
}

/* ===== FOOTER ===== */

.e-3f8bc2c8 > .box > .footer
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
}

.e-3f8bc2c8 > .box > .footer > .count
{
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.e-3f8bc2c8 > .box > .footer > .clear
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-3);
	cursor: pointer;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-3f8bc2c8 > .box > .footer > .clear:hover
{
	background: var(--ot-red-opacity);
	color: var(--ot-red);
}

.e-3f8bc2c8 > .box > .footer > .clear > i
{
	font-size: 14px;
}


/* ===== BACKGROUND ===== */

.e-3f8bc2c8 > .box.bg-1 > .zone { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-3f8bc2c8 > .box.bg-1 > .zone:hover { background: var(--ot-bg-2); }
.e-3f8bc2c8 > .box.bg-1 > .zone > .prompt > .badge { background: var(--ot-bg-2); }

.e-3f8bc2c8 > .box.bg-2 > .zone { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-3f8bc2c8 > .box.bg-2 > .zone:hover { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }

.e-3f8bc2c8 > .box.bg-3 > .zone { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-3f8bc2c8 > .box.bg-3 > .zone:hover { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

.e-3f8bc2c8 > .box.bg-4 > .zone { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-3f8bc2c8 > .box.size-s > .zone
{
	min-height: 100px;
	padding: var(--ot-spacing-m);
}

.e-3f8bc2c8 > .box.size-s > .zone > .prompt > .badge
{
	width: 36px;
	height: 36px;
}

.e-3f8bc2c8 > .box.size-s > .zone > .prompt > .badge > i
{
	font-size: 18px;
}

.e-3f8bc2c8 > .box.size-s > .zone > .grid
{
	grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
	gap: var(--ot-spacing-x);
}

.e-3f8bc2c8 > .box.size-l > .zone
{
	min-height: 220px;
	padding: var(--ot-spacing-l);
}

.e-3f8bc2c8 > .box.size-l > .zone > .prompt > .badge
{
	width: 60px;
	height: 60px;
}

.e-3f8bc2c8 > .box.size-l > .zone > .prompt > .badge > i
{
	font-size: 30px;
}

.e-3f8bc2c8 > .box.size-l > .zone > .grid
{
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
}
/* ===== FORM UPLOAD INPUT ===== */

.e-37c1b86d
{
	display: contents;
}

/* Box */

.e-37c1b86d > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
}

.e-37c1b86d > .box.disabled
{
	opacity: 0.5;
	pointer-events: none;
}

/* Field */

.e-37c1b86d > .box > .field
{
	display: flex;
	align-items: center;
	width: 100%;
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-37c1b86d > .box > .field:focus-within
{
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

/* Preview */

.e-37c1b86d > .box > .field > .preview
{
	flex-shrink: 0;
	width: var(--ot-height-s);
	height: var(--ot-height-s);
	border-radius: var(--ot-radius-s);
	overflow: hidden;
	margin-right: var(--ot-spacing-s);
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--ot-bg-1);
}

.e-37c1b86d > .box > .field > .preview > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.e-37c1b86d > .box > .field > .preview.placeholder
{
	color: var(--ot-text-3);
}

.e-37c1b86d > .box > .field > .preview.placeholder > i
{
	font-size: 16px;
}

/* Icon */

.e-37c1b86d > .box > .field > .icon
{
	flex-shrink: 0;
	font-size: 18px;
	color: var(--ot-text-3);
	margin-right: var(--ot-spacing-s);
	transition: color var(--ot-transition);
}

.e-37c1b86d > .box > .field:focus-within > .icon
{
	color: var(--ot-text-1);
}

.e-37c1b86d > .box > .field > .icon.spin
{
	margin-right: 0;
	margin-left: var(--ot-spacing-s);
	animation: e-37c1b86d-spin 0.8s linear infinite;
}

@keyframes e-37c1b86d-spin
{
	to { transform: rotate(360deg); }
}

/* Input */

.e-37c1b86d > .box > .field > .input
{
	flex: 1;
	min-width: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
}

.e-37c1b86d > .box > .field > .input::placeholder
{
	color: var(--ot-text-3);
	font-weight: 400;
}

/* Action buttons */

.e-37c1b86d > .box > .field > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	padding: 0;
	margin-left: var(--ot-spacing-x);
	border: none;
	background: transparent;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-37c1b86d > .box > .field > .action:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-37c1b86d > .box > .field > .action > i
{
	font-size: 14px;
}

/* Hidden file input */

.e-37c1b86d > .box > .picker
{
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* ===== BACKGROUNDS ===== */

.e-37c1b86d > .box.bg-1 > .field { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-37c1b86d > .box.bg-2 > .field { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-37c1b86d > .box.bg-3 > .field { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-37c1b86d > .box.bg-4 > .field { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

.e-37c1b86d > .box.bg-1 > .field:hover:not(:focus-within) { background: var(--ot-bg-1-hover); }
.e-37c1b86d > .box.bg-2 > .field:hover:not(:focus-within) { background: var(--ot-bg-2-hover); }
.e-37c1b86d > .box.bg-3 > .field:hover:not(:focus-within) { background: var(--ot-bg-3-hover); }
.e-37c1b86d > .box.bg-4 > .field:hover:not(:focus-within) { background: var(--ot-bg-4-hover); }

/* Border */

.e-37c1b86d > .box.border > .field { border-color: var(--ot-bg-2-border); }
.e-37c1b86d > .box.bg-1.border > .field { border-color: var(--ot-bg-1-border); }
.e-37c1b86d > .box.bg-3.border > .field { border-color: var(--ot-bg-3-border); }
.e-37c1b86d > .box.bg-4.border > .field { border-color: var(--ot-bg-4-border); }

/* Border bottom */

.e-37c1b86d > .box.border-bottom > .field
{
	border-radius: 0;
	border-color: transparent;
	border-bottom-color: var(--ot-bg-2-border);
}

/* ===== SIZES ===== */

.e-37c1b86d > .box.size-s > .field
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
}

.e-37c1b86d > .box.size-s > .field > .preview
{
	width: 20px;
	height: 20px;
}

.e-37c1b86d > .box.size-s > .field > .icon { font-size: 15px; }
.e-37c1b86d > .box.size-s > .field > .input { font-size: var(--ot-size-s); }
.e-37c1b86d > .box.size-s > .field > .action { width: 18px; height: 18px; }
.e-37c1b86d > .box.size-s > .field > .action > i { font-size: 13px; }

.e-37c1b86d > .box.size-l > .field
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-l);
}

.e-37c1b86d > .box.size-l > .field > .preview
{
	width: var(--ot-height-m);
	height: var(--ot-height-m);
}

.e-37c1b86d > .box.size-l > .field > .icon { font-size: 20px; }
.e-37c1b86d > .box.size-l > .field > .action { width: 26px; height: 26px; }
.e-37c1b86d > .box.size-l > .field > .action > i { font-size: 16px; }
/* ===== GLOBAL ACCORDION ===== */

.e-56e72db4
{
	display: contents;
}

/* Box */

.e-56e72db4 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
}

/* Item */

.e-56e72db4 > .box > .item
{
	display: flex;
	flex-direction: column;
}

.e-56e72db4 > .box > .item.disabled
{
	opacity: 0.5;
	pointer-events: none;
}

/* Header */

.e-56e72db4 > .box > .item > .header
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	width: 100%;
	padding: var(--ot-spacing-m);
	background: transparent;
	border: none;
	cursor: pointer;
	text-align: left;
	font-family: var(--ot-font-primary);
	color: var(--ot-text-1);
	transition: background var(--ot-transition);
}

.e-56e72db4 > .box > .item > .header:hover:not(:disabled)
{
	background: var(--ot-bg-2-opacity);
}

.e-56e72db4 > .box > .item > .header:disabled
{
	cursor: not-allowed;
}

/* Leading icon */

.e-56e72db4 > .box > .item > .header > .leading
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	font-size: 20px;
	flex-shrink: 0;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-56e72db4 > .box > .item.open > .header > .leading
{
	background: var(--ot-brand);
	color: #fff;
}

/* Text */

.e-56e72db4 > .box > .item > .header > .text
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
	min-width: 0;
}

.e-56e72db4 > .box > .item > .header > .text > .title
{
	font-size: 14px;
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1.35;
	transition: color var(--ot-transition);
}

.e-56e72db4 > .box > .item > .header > .text > .description
{
	font-size: 12px;
	color: var(--ot-text-2);
	line-height: 1.4;
}

.e-56e72db4 > .box > .item.open > .header > .text > .title
{
	color: var(--ot-brand);
}

/* Chevron */

.e-56e72db4 > .box > .item > .header > .chevron
{
	font-size: 22px;
	color: var(--ot-text-3);
	flex-shrink: 0;
	transition: transform var(--ot-transition-slow), color var(--ot-transition);
}

.e-56e72db4 > .box > .item.open > .header > .chevron
{
	transform: rotate(180deg);
	color: var(--ot-brand);
}

/* Panel */

.e-56e72db4 > .box > .item > .panel
{
	overflow: hidden;
	animation: e-56e72db4-reveal var(--ot-transition-slow);
}

.e-56e72db4 > .box > .item > .panel > .content
{
	padding: 0 var(--ot-spacing-m) var(--ot-spacing-m);
	font-size: 13.5px;
	line-height: 1.65;
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
}

.e-56e72db4 > .box > .item > .panel > .content > span
{
	display: block;
	padding-top: var(--ot-spacing-m);
	border-top: 1px solid var(--ot-bg-2-border);
}

.e-56e72db4 > .box > .item > .panel > .content p
{
	margin: 0 0 0.8em;
}

.e-56e72db4 > .box > .item > .panel > .content p:last-child
{
	margin-bottom: 0;
}

.e-56e72db4 > .box > .item > .panel > .content :is(h2, h3, h4)
{
	font-family: var(--ot-font-secondary);
	font-weight: 500;
	color: var(--ot-text-1);
	letter-spacing: -0.01em;
	line-height: 1.25;
	margin: 1.2em 0 0.6em;
}

.e-56e72db4 > .box > .item > .panel > .content h2 { font-size: 18px; }
.e-56e72db4 > .box > .item > .panel > .content h3 { font-size: 16px; }
.e-56e72db4 > .box > .item > .panel > .content h4 { font-size: 14px; }

.e-56e72db4 > .box > .item > .panel > .content a
{
	color: var(--ot-brand);
	text-decoration: underline;
	text-decoration-color: var(--ot-brand-opacity);
	text-underline-offset: 3px;
	transition: text-decoration-color var(--ot-transition);
}

.e-56e72db4 > .box > .item > .panel > .content a:hover
{
	text-decoration-color: var(--ot-brand);
}

.e-56e72db4 > .box > .item > .panel > .content strong
{
	font-weight: 700;
	color: var(--ot-text-1);
}

.e-56e72db4 > .box > .item > .panel > .content code
{
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 0.9em;
	padding: 1px 6px;
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
}

.e-56e72db4 > .box > .item > .panel > .content :is(ul, ol)
{
	margin: 0 0 0.8em;
	padding-left: 1.4em;
}

.e-56e72db4 > .box > .item > .panel > .content li
{
	margin: 0 0 0.3em;
}

@keyframes e-56e72db4-reveal
{
	from
	{
		opacity: 0;
		transform: translateY(-6px);
	}
	to
	{
		opacity: 1;
		transform: translateY(0);
	}
}

/* ===== TONE: ROWS ===== */

.e-56e72db4 > .box.rows
{
	border-radius: var(--ot-radius-m);
	overflow: hidden;
}

.e-56e72db4 > .box.rows > .item
{
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-56e72db4 > .box.rows > .item:last-child
{
	border-bottom: none;
}

/* ===== TONE: CARDS ===== */

.e-56e72db4 > .box.cards
{
	gap: var(--ot-spacing-s);
}

.e-56e72db4 > .box.cards > .item
{
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	overflow: hidden;
	transition: border-color var(--ot-transition);
}

.e-56e72db4 > .box.cards > .item:hover:not(.disabled)
{
	border-color: var(--ot-bg-3-border);
}

.e-56e72db4 > .box.cards > .item.open
{
	border-color: var(--ot-brand);
}

/* ===== TONE: MINIMAL ===== */

.e-56e72db4 > .box.minimal > .item
{
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-56e72db4 > .box.minimal > .item:last-child
{
	border-bottom: none;
}

.e-56e72db4 > .box.minimal > .item > .header
{
	padding: var(--ot-spacing-m) 0;
}

.e-56e72db4 > .box.minimal > .item > .panel > .content
{
	padding: 0 0 var(--ot-spacing-m);
}

/* ===== BACKGROUND ===== */

.e-56e72db4 > .box.bg-1 { background: var(--ot-bg-1); border-radius: var(--ot-radius-m); }
.e-56e72db4 > .box.bg-1 > .item > .header:hover:not(:disabled) { background: var(--ot-bg-1-hover); }
.e-56e72db4 > .box.bg-1.rows > .item { border-bottom-color: var(--ot-bg-1-border); }
.e-56e72db4 > .box.bg-1.minimal > .item { border-bottom-color: var(--ot-bg-1-border); }
.e-56e72db4 > .box.bg-1.cards > .item { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }

.e-56e72db4 > .box.bg-2 { background: var(--ot-bg-2); border-radius: var(--ot-radius-m); }
.e-56e72db4 > .box.bg-2 > .item > .header:hover:not(:disabled) { background: var(--ot-bg-2-hover); }
.e-56e72db4 > .box.bg-2.rows > .item { border-bottom-color: var(--ot-bg-2-border); }
.e-56e72db4 > .box.bg-2.minimal > .item { border-bottom-color: var(--ot-bg-2-border); }
.e-56e72db4 > .box.bg-2.cards > .item { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }

.e-56e72db4 > .box.bg-3 { background: var(--ot-bg-3); border-radius: var(--ot-radius-m); }
.e-56e72db4 > .box.bg-3 > .item > .header:hover:not(:disabled) { background: var(--ot-bg-3-hover); }
.e-56e72db4 > .box.bg-3.rows > .item { border-bottom-color: var(--ot-bg-3-border); }
.e-56e72db4 > .box.bg-3.minimal > .item { border-bottom-color: var(--ot-bg-3-border); }
.e-56e72db4 > .box.bg-3.cards > .item { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }

.e-56e72db4 > .box.bg-4 { background: var(--ot-bg-4); border-radius: var(--ot-radius-m); }
.e-56e72db4 > .box.bg-4 > .item > .header:hover:not(:disabled) { background: var(--ot-bg-4-hover); }
.e-56e72db4 > .box.bg-4.rows > .item { border-bottom-color: var(--ot-bg-4-border); }
.e-56e72db4 > .box.bg-4.minimal > .item { border-bottom-color: var(--ot-bg-4-border); }
.e-56e72db4 > .box.bg-4.cards > .item { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }

/* ===== BORDER ===== */

.e-56e72db4 > .box.border { border: 1px solid var(--ot-bg-2-border); border-radius: var(--ot-radius-m); }
.e-56e72db4 > .box.border-top { border-top: 1px solid var(--ot-bg-2-border); }
.e-56e72db4 > .box.border-right { border-right: 1px solid var(--ot-bg-2-border); }
.e-56e72db4 > .box.border-bottom { border-bottom: 1px solid var(--ot-bg-2-border); }
.e-56e72db4 > .box.border-left { border-left: 1px solid var(--ot-bg-2-border); }

.e-56e72db4 > .box.bg-1.border,
.e-56e72db4 > .box.bg-1.border-top,
.e-56e72db4 > .box.bg-1.border-right,
.e-56e72db4 > .box.bg-1.border-bottom,
.e-56e72db4 > .box.bg-1.border-left { border-color: var(--ot-bg-1-border); }

.e-56e72db4 > .box.bg-2.border,
.e-56e72db4 > .box.bg-2.border-top,
.e-56e72db4 > .box.bg-2.border-right,
.e-56e72db4 > .box.bg-2.border-bottom,
.e-56e72db4 > .box.bg-2.border-left { border-color: var(--ot-bg-2-border); }

.e-56e72db4 > .box.bg-3.border,
.e-56e72db4 > .box.bg-3.border-top,
.e-56e72db4 > .box.bg-3.border-right,
.e-56e72db4 > .box.bg-3.border-bottom,
.e-56e72db4 > .box.bg-3.border-left { border-color: var(--ot-bg-3-border); }

.e-56e72db4 > .box.bg-4.border,
.e-56e72db4 > .box.bg-4.border-top,
.e-56e72db4 > .box.bg-4.border-right,
.e-56e72db4 > .box.bg-4.border-bottom,
.e-56e72db4 > .box.bg-4.border-left { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

/* Small */

.e-56e72db4 > .box.size-s > .item > .header { padding: var(--ot-spacing-s) var(--ot-spacing-m); gap: var(--ot-spacing-s); }
.e-56e72db4 > .box.size-s > .item > .header > .leading { width: 28px; height: 28px; font-size: 16px; }
.e-56e72db4 > .box.size-s > .item > .header > .text > .title { font-size: 13px; }
.e-56e72db4 > .box.size-s > .item > .header > .text > .description { font-size: 11px; }
.e-56e72db4 > .box.size-s > .item > .header > .chevron { font-size: 18px; }
.e-56e72db4 > .box.size-s > .item > .panel > .content { padding: 0 var(--ot-spacing-m) var(--ot-spacing-s); font-size: 12.5px; }

.e-56e72db4 > .box.size-s.minimal > .item > .header { padding: var(--ot-spacing-s) 0; }
.e-56e72db4 > .box.size-s.minimal > .item > .panel > .content { padding: 0 0 var(--ot-spacing-s); }

/* Large */

.e-56e72db4 > .box.size-l > .item > .header { padding: var(--ot-spacing-l) var(--ot-spacing-m); gap: var(--ot-spacing-m); }
.e-56e72db4 > .box.size-l > .item > .header > .leading { width: 44px; height: 44px; font-size: 24px; }
.e-56e72db4 > .box.size-l > .item > .header > .text > .title { font-size: 16px; }
.e-56e72db4 > .box.size-l > .item > .header > .text > .description { font-size: 13px; }
.e-56e72db4 > .box.size-l > .item > .header > .chevron { font-size: 26px; }
.e-56e72db4 > .box.size-l > .item > .panel > .content { padding: 0 var(--ot-spacing-m) var(--ot-spacing-l); font-size: 14.5px; }

.e-56e72db4 > .box.size-l.minimal > .item > .header { padding: var(--ot-spacing-l) 0; }
.e-56e72db4 > .box.size-l.minimal > .item > .panel > .content { padding: 0 0 var(--ot-spacing-l); }
/* ===== GLOBAL CODE ===== */

.e-4a15b201
{
	display: contents;
}

/* Box */

.e-4a15b201 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	overflow: hidden;
}

.e-4a15b201 > .box.bg-1 { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-4a15b201 > .box.bg-2 { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-4a15b201 > .box.bg-3 { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-4a15b201 > .box.bg-4 { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

/* Head */

.e-4a15b201 > .box > .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: var(--ot-bg-1-opacity);
	border-bottom: 1px solid var(--ot-bg-3-border);
}

/* Dots */

.e-4a15b201 > .box > .head > .dots
{
	display: flex;
	gap: 6px;
	flex-shrink: 0;
}

.e-4a15b201 > .box > .head > .dots > span
{
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
}

.e-4a15b201 > .box > .head > .dots > span:nth-child(1) { background: #ff5f56; }
.e-4a15b201 > .box > .head > .dots > span:nth-child(2) { background: #ffbd2e; }
.e-4a15b201 > .box > .head > .dots > span:nth-child(3) { background: #27c93f; }

/* Filename / Language */

.e-4a15b201 > .box > .head > .filename,
.e-4a15b201 > .box > .head > .language
{
	flex: 1;
	text-align: center;
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 12px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.55);
}

.e-4a15b201 > .box > .head > .language
{
	text-transform: uppercase;
	font-size: 10.5px;
	letter-spacing: 0.06em;
}

/* Copy */

.e-4a15b201 > .box > .head > .copy
{
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 10px;
	background: var(--ot-bg-3);
	border: 1px solid var(--ot-bg-3-border);
	border-radius: 100px;
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 600;
	cursor: pointer;
	flex-shrink: 0;
	transition: background var(--ot-transition), color var(--ot-transition), border-color var(--ot-transition);
}

.e-4a15b201 > .box > .head > .copy:hover
{
	background: var(--ot-bg-4);
	color: var(--ot-text-1);
}

.e-4a15b201 > .box > .head > .copy > i
{
	font-size: 13px;
}

.e-4a15b201 > .box > .head > .copy.copied
{
	background: var(--ot-green-opacity);
	border-color: var(--ot-green-border);
	color: var(--ot-green);
}

/* Body */

.e-4a15b201 > .box > .body
{
	margin: 0;
	padding: var(--ot-spacing-m);
	overflow-x: auto;
	font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
	font-size: var(--ot-size-m);
	line-height: 1.65;
	color: var(--ot-text-1);
	tab-size: 4;
}

.e-4a15b201 > .box > .body > code
{
	font-family: inherit;
	font-size: inherit;
	background: none;
	padding: 0;
	border: none;
	color: inherit;
	display: block;
	white-space: pre;
}

/* Scrollbar */

.e-4a15b201 > .box > .body::-webkit-scrollbar { height: 8px; }
.e-4a15b201 > .box > .body::-webkit-scrollbar-track { background: transparent; }
.e-4a15b201 > .box > .body::-webkit-scrollbar-thumb { background: var(--ot-bg-4); border-radius: 100px; }
.e-4a15b201 > .box > .body::-webkit-scrollbar-thumb:hover { background: var(--ot-bg-4-hover); }

/* ===== LINE NUMBERS ===== */

.e-4a15b201 .numbered
{
	display: flex;
	flex-direction: column;
}

.e-4a15b201 .line
{
	display: flex;
	padding: 0 var(--ot-spacing-m) 0 0;
	margin: 0 calc(var(--ot-spacing-m) * -1);
	transition: background var(--ot-transition-fast);
}

.e-4a15b201 .line > .number
{
	width: 40px;
	padding-right: 14px;
	text-align: right;
	color: var(--ot-text-3);
	user-select: none;
	flex-shrink: 0;
	border-right: 1px solid var(--ot-bg-3-border);
	margin-right: 14px;
}

.e-4a15b201 .line > .code
{
	flex: 1;
	min-width: 0;
}

/* Highlighted line */

.e-4a15b201 .line.highlighted
{
	background: var(--ot-brand-opacity);
	box-shadow: inset 2px 0 0 var(--ot-brand);
}

.e-4a15b201 .line.highlighted > .number
{
	color: var(--ot-brand);
}

/* Plain (no numbers) */

.e-4a15b201 .plain
{
	display: block;
	white-space: pre;
}

/* ===== SYNTAX TOKENS ===== */

.e-4a15b201 .t-keyword { color: #ff7b72; font-weight: 500; }
.e-4a15b201 .t-string { color: #a5d6ff; }
.e-4a15b201 .t-number { color: #ffa657; }
.e-4a15b201 .t-comment { color: #8b949e; font-style: italic; }
.e-4a15b201 .t-fn { color: #d2a8ff; }
.e-4a15b201 .t-tag { color: #7ee787; }
.e-4a15b201 .t-attr { color: #79c0ff; }
.e-4a15b201 .t-selector { color: #7ee787; }
.e-4a15b201 .t-prop { color: #79c0ff; }

/* ===== BORDER ===== */

.e-4a15b201 > .box.border { border-color: var(--ot-bg-2-border); }
.e-4a15b201 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-4a15b201 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-4a15b201 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-4a15b201 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-4a15b201 > .box.size-s > .head
{
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
}

.e-4a15b201 > .box.size-s > .body
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	font-size: 12px;
	line-height: 1.55;
}

.e-4a15b201 > .box.size-l > .head
{
	padding: var(--ot-spacing-m) var(--ot-spacing-l);
}

.e-4a15b201 > .box.size-l > .body
{
	padding: var(--ot-spacing-l);
	font-size: 14px;
	line-height: 1.75;
}
/* ===== GLOBAL GALLERY ===== */

.e-ee00abe
{
	display: block;
	width: 100%;
}

/* Box */

.e-ee00abe > .box
{
	position: relative;
	width: 100%;
	overflow: hidden;
}

.e-ee00abe > .box.rounded
{
	border-radius: var(--ot-radius-l);
}

/* ===== BENTO LAYOUT ===== */

.e-ee00abe > .box > .bento
{
	display: grid;
	grid-template-columns: 2fr 1fr;
	height: 480px;
	width: 100%;
}

.e-ee00abe > .box.compact > .bento
{
	height: 360px;
}

.e-ee00abe > .box.tall > .bento
{
	height: 560px;
}

/* Bento main */

.e-ee00abe > .box > .bento > .bento-main
{
	overflow: hidden;
	cursor: pointer;
}

.e-ee00abe > .box > .bento > .bento-main > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: filter var(--ot-transition-slow), transform var(--ot-transition-slow);
}

.e-ee00abe > .box > .bento > .bento-main:hover > img
{
	filter: brightness(0.92);
	transform: scale(1.02);
}

/* Bento side */

.e-ee00abe > .box > .bento > .bento-side
{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
}

.e-ee00abe > .box > .bento > .bento-side > .bento-thumb
{
	overflow: hidden;
	cursor: pointer;
}

.e-ee00abe > .box > .bento > .bento-side > .bento-thumb > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: filter var(--ot-transition-slow), transform var(--ot-transition-slow);
}

.e-ee00abe > .box > .bento > .bento-side > .bento-thumb:hover > img
{
	filter: brightness(0.88);
	transform: scale(1.03);
}

/* Show all button */

.e-ee00abe > .box > .bento > .show-all
{
	position: absolute;
	bottom: 18px;
	right: 18px;
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: 10px 20px;
	background: var(--ot-text-1);
	border: none;
	border-radius: 100px;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-bg-1);
	cursor: pointer;
	box-shadow: var(--ot-shadow-m);
	transition: transform var(--ot-transition), box-shadow var(--ot-transition);
	z-index: 1;
}

.e-ee00abe > .box > .bento > .show-all:hover
{
	transform: translateY(-2px);
	box-shadow: var(--ot-shadow-l);
}

.e-ee00abe > .box > .bento > .show-all > i
{
	font-size: 16px;
}

/* ===== GRID LAYOUT ===== */

.e-ee00abe > .box > .grid
{
	display: grid;
	width: 100%;
}

.e-ee00abe > .box > .grid > .grid-item
{
	overflow: hidden;
	cursor: pointer;
	border-radius: var(--ot-radius-m);
}

.e-ee00abe > .box > .grid > .grid-item > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: filter var(--ot-transition-slow), transform var(--ot-transition-slow);
}

.e-ee00abe > .box > .grid > .grid-item:hover > img
{
	filter: brightness(0.92);
	transform: scale(1.04);
}

/* ===== CAROUSEL LAYOUT ===== */

.e-ee00abe > .box > .carousel
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	width: 100%;
}

/* Carousel stage */

.e-ee00abe > .box > .carousel > .carousel-stage
{
	position: relative;
	width: 100%;
	overflow: hidden;
	border-radius: var(--ot-radius-m);
	background: var(--ot-bg-2);
}

.e-ee00abe > .box > .carousel > .carousel-stage > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
	cursor: zoom-in;
	animation: e-ee00abe-fade var(--ot-transition-slow);
}

@keyframes e-ee00abe-fade
{
	from { opacity: 0; }
	to { opacity: 1; }
}

/* Carousel nav */

.e-ee00abe > .box > .carousel > .carousel-stage > .carousel-nav
{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--ot-bg-1-opacity);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 50%;
	color: var(--ot-text-1);
	cursor: pointer;
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	box-shadow: var(--ot-shadow-m);
	transition: transform var(--ot-transition), box-shadow var(--ot-transition);
	z-index: 1;
}

.e-ee00abe > .box > .carousel > .carousel-stage > .prev { left: 16px; }
.e-ee00abe > .box > .carousel > .carousel-stage > .next { right: 16px; }

.e-ee00abe > .box > .carousel > .carousel-stage > .carousel-nav:hover
{
	box-shadow: var(--ot-shadow-l);
}

.e-ee00abe > .box > .carousel > .carousel-stage > .prev:hover { transform: translateY(-50%) translateX(-2px); }
.e-ee00abe > .box > .carousel > .carousel-stage > .next:hover { transform: translateY(-50%) translateX(2px); }

.e-ee00abe > .box > .carousel > .carousel-stage > .carousel-nav > i
{
	font-size: 22px;
}

/* Carousel counter */

.e-ee00abe > .box > .carousel > .carousel-stage > .carousel-counter
{
	position: absolute;
	bottom: 16px;
	right: 16px;
	padding: 6px 12px;
	background: var(--ot-bg-1-opacity);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border-radius: 100px;
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	letter-spacing: 0.04em;
}

/* Carousel thumbs */

.e-ee00abe > .box > .carousel > .carousel-thumbs
{
	display: flex;
	gap: var(--ot-spacing-x);
	overflow-x: auto;
	padding: 2px 0;
	scrollbar-width: none;
}

.e-ee00abe > .box > .carousel > .carousel-thumbs::-webkit-scrollbar
{
	display: none;
}

.e-ee00abe > .box > .carousel > .carousel-thumbs > .carousel-thumb
{
	flex-shrink: 0;
	width: 80px;
	height: 56px;
	padding: 0;
	border: 2px solid transparent;
	border-radius: var(--ot-radius-s);
	background: transparent;
	overflow: hidden;
	cursor: pointer;
	transition: border-color var(--ot-transition), opacity var(--ot-transition);
	opacity: 0.65;
}

.e-ee00abe > .box > .carousel > .carousel-thumbs > .carousel-thumb:hover
{
	opacity: 1;
}

.e-ee00abe > .box > .carousel > .carousel-thumbs > .carousel-thumb.active
{
	opacity: 1;
	border-color: var(--ot-brand);
}

.e-ee00abe > .box > .carousel > .carousel-thumbs > .carousel-thumb > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ===== LIGHTBOX ===== */

.lightbox-box
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100vw;
	height: 100vh;
	padding: 80px 80px 140px;
	box-sizing: border-box;
}

/* Lightbox close */

.lightbox-close
{
	position: absolute;
	top: 20px;
	right: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	transition: background var(--ot-transition), transform var(--ot-transition);
	z-index: 10;
}

.lightbox-close:hover
{
	background: rgba(255, 255, 255, 0.2);
	transform: rotate(90deg);
}

.lightbox-close > i
{
	font-size: 22px;
}

/* Lightbox counter */

.lightbox-counter
{
	position: absolute;
	top: 28px;
	left: 50%;
	transform: translateX(-50%);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 100px;
	color: #fff;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	letter-spacing: 0.04em;
	z-index: 10;
}

/* Lightbox nav */

.lightbox-nav
{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	transition: background var(--ot-transition), transform var(--ot-transition);
	z-index: 10;
}

.lightbox-nav.prev { left: 32px; }
.lightbox-nav.next { right: 32px; }

.lightbox-nav:hover { background: rgba(255, 255, 255, 0.2); }
.lightbox-nav.prev:hover { transform: translateY(-50%) translateX(-3px); }
.lightbox-nav.next:hover { transform: translateY(-50%) translateX(3px); }

.lightbox-nav > i
{
	font-size: 26px;
}

/* Lightbox stage */

.lightbox-stage
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-m);
	max-width: 100%;
	max-height: 100%;
}

.lightbox-stage > img
{
	max-width: 100%;
	max-height: calc(100vh - 220px);
	object-fit: contain;
	border-radius: var(--ot-radius-m);
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
	animation: e-ee00abe-lightbox-in var(--ot-transition-slow);
}

@keyframes e-ee00abe-lightbox-in
{
	from { opacity: 0; transform: scale(0.96); }
	to { opacity: 1; transform: scale(1); }
}

/* Lightbox caption */

.lightbox-caption
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	color: rgba(255, 255, 255, 0.85);
	text-align: center;
	max-width: 600px;
	line-height: 1.5;
}

/* Lightbox thumbs */

.lightbox-thumbs
{
	position: absolute;
	bottom: 28px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 6px;
	padding: 10px 14px;
	background: rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 14px;
	max-width: calc(100vw - 64px);
	overflow-x: auto;
	scrollbar-width: none;
	z-index: 10;
}

.lightbox-thumbs::-webkit-scrollbar
{
	display: none;
}

.lightbox-thumbs > .lightbox-thumb
{
	flex-shrink: 0;
	width: 56px;
	height: 44px;
	padding: 0;
	border: 2px solid transparent;
	border-radius: var(--ot-radius-s);
	background: transparent;
	overflow: hidden;
	cursor: pointer;
	transition: border-color var(--ot-transition), opacity var(--ot-transition);
	opacity: 0.55;
}

.lightbox-thumbs > .lightbox-thumb:hover
{
	opacity: 0.9;
}

.lightbox-thumbs > .lightbox-thumb.active
{
	opacity: 1;
	border-color: #fff;
}

.lightbox-thumbs > .lightbox-thumb > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 767.98px)
{
	.e-ee00abe > .box > .bento
	{
		height: 320px;
	}

	.e-ee00abe > .box > .bento > .bento-side
	{
		display: none;
	}

	.e-ee00abe > .box > .carousel > .carousel-thumbs > .carousel-thumb
	{
		width: 60px;
		height: 42px;
	}

	.lightbox-box
	{
		padding: 60px 16px 120px;
	}

	.lightbox-nav.prev { left: 12px; }
	.lightbox-nav.next { right: 12px; }

	.lightbox-nav
	{
		width: 40px;
		height: 40px;
	}

	.lightbox-nav > i
	{
		font-size: 20px;
	}
}
/* ===== GLOBAL HEADING ===== */

.e-49fb116e
{
	display: contents;
}

/* Box */

.e-49fb116e > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-l);
	width: 100%;
}

.e-49fb116e > .box.border
{
	padding-bottom: var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

/* Top */

.e-49fb116e > .box > .top
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
}

/* Icon */

.e-49fb116e > .box > .top > .icon
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: var(--ot-radius-m);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	flex-shrink: 0;
}

.e-49fb116e > .box > .top > .icon > i
{
	font-size: 26px;
}

/* Text */

.e-49fb116e > .box > .top > .text
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	min-width: 0;
	flex: 1;
}

/* Eyebrow */

.e-49fb116e > .box > .top > .text > .eyebrow
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ot-brand);
}

/* Title */

.e-49fb116e > .box > .top > .text > .title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-weight: 500;
	letter-spacing: -0.022em;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
	line-height: 1.05;
}

.e-49fb116e > .box > .top > .text > .title em
{
	font-style: italic;
	color: var(--ot-brand);
	font-weight: 500;
}

/* Description */

.e-49fb116e > .box > .top > .text > .description
{
	margin: 0;
	font-family: var(--ot-font-primary);
	font-size: 14px;
	line-height: 1.55;
	color: var(--ot-text-2);
	max-width: 560px;
}

/* Right */

.e-49fb116e > .box > .top > .right
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-shrink: 0;
}

.e-49fb116e > .box > .top > .right:empty
{
	display: none;
}

/* Bottom */

.e-49fb116e > .box > .bottom
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

/* ===== ALIGN ===== */

.e-49fb116e > .box.center > .top
{
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.e-49fb116e > .box.center > .top > .text
{
	align-items: center;
	flex: 0 1 auto;
}

.e-49fb116e > .box.center > .top > .text > .description
{
	max-width: 540px;
}

.e-49fb116e > .box.center > .bottom
{
	justify-content: center;
}

.e-49fb116e > .box.right > .top
{
	flex-direction: row-reverse;
	text-align: right;
}

.e-49fb116e > .box.right > .top > .text
{
	align-items: flex-end;
}

.e-49fb116e > .box.right > .bottom
{
	justify-content: flex-end;
}

/* ===== SIZE ===== */

/* Small */

.e-49fb116e > .box.size-s > .top > .icon
{
	width: 36px;
	height: 36px;
}

.e-49fb116e > .box.size-s > .top > .icon > i
{
	font-size: 20px;
}

.e-49fb116e > .box.size-s > .top > .text > .title
{
	font-size: var(--ot-size-l);
	line-height: 1.15;
}

.e-49fb116e > .box.size-s > .top > .text > .description
{
	font-size: var(--ot-size-m);
}

/* Medium */

.e-49fb116e > .box.size-m > .top > .text > .title
{
	font-size: 32px;
	line-height: 1.05;
}

.e-49fb116e > .box.size-m > .top > .text > .description
{
	font-size: 14px;
}

/* Large */

.e-49fb116e > .box.size-l > .top > .icon
{
	width: 60px;
	height: 60px;
}

.e-49fb116e > .box.size-l > .top > .icon > i
{
	font-size: 32px;
}

.e-49fb116e > .box.size-l > .top > .text > .title
{
	font-size: 48px;
	line-height: 1;
}

.e-49fb116e > .box.size-l > .top > .text > .description
{
	font-size: 16px;
	max-width: 640px;
}
/* ===== GLOBAL MARKDOWN ===== */

.e-4696d703
{
	display: contents;
}

/* Box */

.e-4696d703 > .box
{
	position: relative;
	width: 100%;
	border-radius: var(--ot-radius-l);
	overflow: hidden;
}

/* Body */

.e-4696d703 > .box > .body
{
	overflow: hidden;
	transition: max-height var(--ot-transition-slow);
}

.e-4696d703 > .box.expanded > .body
{
	max-height: none !important;
}

/* Prose */

.e-4696d703 .prose
{
	font-family: var(--ot-font-primary);
	font-size: 14px;
	line-height: 1.75;
	color: var(--ot-text-1);
}

.e-4696d703 .prose > .segment + .segment
{
	margin-top: 1.5em;
}

.e-4696d703 .prose > .segment:first-child .line:first-child > *,
.e-4696d703 .prose > .segment:first-child > *:first-child,
.e-4696d703 .prose > *:first-child
{
	margin-top: 0;
	padding-top: 0;
}

.e-4696d703 .prose > .segment:last-child .line:last-child > *,
.e-4696d703 .prose > .segment:last-child > *:last-child,
.e-4696d703 .prose > *:last-child
{
	margin-bottom: 0;
	padding-bottom: 0;
}

/* ===== HEADINGS ===== */

.e-4696d703 .prose :is(h1, h2, h3, h4, h5, h6)
{
	font-family: var(--ot-font-secondary);
	font-weight: 500;
	letter-spacing: -0.02em;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
	line-height: 1.15;
}

.e-4696d703 .prose h1 { font-size: 2.25em; margin: 0 0 0.9em; }
.e-4696d703 .prose h2 { font-size: 1.5em; margin: 1em 0 0.75em; }
.e-4696d703 .prose h3 { font-size: 1.25em; margin: 1.6em 0 0.6em; }
.e-4696d703 .prose h4 { font-size: 1.1em; margin: 1.5em 0 0.5em; }

.e-4696d703 .prose :is(h1, h2, h3, h4) + :is(h1, h2, h3, h4)
{
	margin-top: 0;
}

/* ===== INLINE ===== */

.e-4696d703 .prose em
{
	font-style: italic;
	color: var(--ot-brand);
}

.e-4696d703 .prose strong
{
	font-weight: 700;
	color: var(--ot-text-1);
}

.e-4696d703 .prose del
{
	text-decoration: line-through;
	opacity: 0.6;
}

/* ===== PARAGRAPH ===== */

.e-4696d703 .prose p
{
	margin: 0 0 1.25em;
	color: var(--ot-text-2);
	line-height: 1.75;
}

.e-4696d703 .prose > p:first-child
{
	color: var(--ot-text-1);
}

/* ===== LINKS ===== */

.e-4696d703 .prose a
{
	color: var(--ot-brand);
	text-decoration: underline;
	text-decoration-color: var(--ot-brand-opacity);
	text-underline-offset: 3px;
	transition: text-decoration-color var(--ot-transition);
}

.e-4696d703 .prose a:hover
{
	text-decoration-color: var(--ot-brand);
}

/* ===== LISTS ===== */

.e-4696d703 .prose :is(ul, ol)
{
	margin: 0 0 1.25em;
	padding-left: 1.6em;
}

.e-4696d703 .prose ul { list-style: disc; }
.e-4696d703 .prose ol { list-style: decimal; }

.e-4696d703 .prose li
{
	margin: 0 0 0.5em;
	color: var(--ot-text-2);
	line-height: 1.7;
}

.e-4696d703 .prose li::marker
{
	color: var(--ot-brand);
}

.e-4696d703 .prose li:last-child
{
	margin-bottom: 0;
}

/* ===== BLOCKQUOTE ===== */

.e-4696d703 .prose blockquote
{
	margin: 1.6em 0;
	padding: 0.25em 0 0.25em 1.2em;
	border-left: 3px solid var(--ot-brand);
	font-family: var(--ot-font-secondary);
	font-size: 1.3em;
	font-style: italic;
	line-height: 1.45;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
}

.e-4696d703 .prose blockquote p
{
	margin: 0;
	color: inherit;
}

/* ===== INLINE CODE ===== */

.e-4696d703 .prose code,
.e-4696d703 .prose code.inline
{
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 0.88em;
	padding: 0.15em 0.4em;
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-brand);
}

/* ===== IMAGES ===== */

.e-4696d703 .prose img
{
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--ot-radius-l);
	margin: 2em 0 0.5em;
}

.e-4696d703 .prose img + em
{
	display: block;
	font-size: 0.85em;
	font-style: italic;
	color: var(--ot-text-3);
	text-align: center;
	margin-bottom: 2em;
}

/* ===== HR ===== */

.e-4696d703 .prose hr
{
	border: none;
	height: 1px;
	background: var(--ot-bg-2-border);
	margin: 3em 0;
}

/* ===== TABLE ===== */

.e-4696d703 .prose table
{
	margin: 1.5em 0;
	width: 100%;
	border-collapse: collapse;
}

.e-4696d703 .prose th
{
	font-size: 0.85em;
	font-weight: 600;
	text-align: left;
	padding: 0.6em 1em;
	border-bottom: 2px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
}

.e-4696d703 .prose td
{
	font-size: 0.9em;
	padding: 0.6em 1em;
	border-bottom: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-2);
}

.e-4696d703 .prose tr:last-child td
{
	border-bottom: none;
}

/* ===== LINE WRAPPER ===== */

.e-4696d703 .prose > .line:empty
{
	height: var(--ot-spacing-m);
}

.e-4696d703 .prose > .line:first-child > *
{
	margin-top: 0;
	padding-top: 0;
}

.e-4696d703 .prose > .line:last-child > *
{
	margin-bottom: 0;
	padding-bottom: 0;
}

/* ===== COLLAPSIBLE ===== */

.e-4696d703 > .box.collapsible:not(.expanded) > .fade
{
	position: absolute;
	bottom: 44px;
	left: 0;
	right: 0;
	height: 80px;
	background: linear-gradient(180deg, transparent 0%, var(--ot-bg-1) 100%);
	pointer-events: none;
}

.e-4696d703 > .box.collapsible > .toggle
{
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-x);
	width: 100%;
	margin-top: var(--ot-spacing-m);
	padding-top: var(--ot-spacing-m);
	background: transparent;
	border: none;
	border-top: 1px solid var(--ot-bg-1-border);
	color: var(--ot-brand);
	font-size: var(--ot-size-s);
	font-weight: 600;
	font-family: var(--ot-font-primary);
	cursor: pointer;
	transition: color var(--ot-transition);
}

.e-4696d703 > .box.collapsible > .toggle:hover
{
	color: var(--ot-brand-hover);
}

.e-4696d703 > .box.collapsible > .toggle > i
{
	font-size: 18px;
}

/* ===== BACKGROUND ===== */

.e-4696d703 > .box.bg-1 { background: var(--ot-bg-1); padding: var(--ot-spacing-l); }
.e-4696d703 > .box.bg-2 { background: var(--ot-bg-2); padding: var(--ot-spacing-l); }
.e-4696d703 > .box.bg-3 { background: var(--ot-bg-3); padding: var(--ot-spacing-l); }
.e-4696d703 > .box.bg-4 { background: var(--ot-bg-4); padding: var(--ot-spacing-l); }

.e-4696d703 > .box.bg-1.collapsible:not(.expanded) > .fade { background: linear-gradient(180deg, transparent 0%, var(--ot-bg-1) 100%); }
.e-4696d703 > .box.bg-2.collapsible:not(.expanded) > .fade { background: linear-gradient(180deg, transparent 0%, var(--ot-bg-2) 100%); }
.e-4696d703 > .box.bg-3.collapsible:not(.expanded) > .fade { background: linear-gradient(180deg, transparent 0%, var(--ot-bg-3) 100%); }
.e-4696d703 > .box.bg-4.collapsible:not(.expanded) > .fade { background: linear-gradient(180deg, transparent 0%, var(--ot-bg-4) 100%); }

.e-4696d703 > .box.bg-1.collapsible > .toggle { border-top-color: var(--ot-bg-1-border); }
.e-4696d703 > .box.bg-2.collapsible > .toggle { border-top-color: var(--ot-bg-2-border); }
.e-4696d703 > .box.bg-3.collapsible > .toggle { border-top-color: var(--ot-bg-3-border); }
.e-4696d703 > .box.bg-4.collapsible > .toggle { border-top-color: var(--ot-bg-4-border); }

/* ===== BORDER ===== */

.e-4696d703 > .box.border { border: 1px solid var(--ot-bg-2-border); }
.e-4696d703 > .box.bg-1.border { border-color: var(--ot-bg-1-border); }
.e-4696d703 > .box.bg-2.border { border-color: var(--ot-bg-2-border); }
.e-4696d703 > .box.bg-3.border { border-color: var(--ot-bg-3-border); }
.e-4696d703 > .box.bg-4.border { border-color: var(--ot-bg-4-border); }
/* ===== GLOBAL MENU ===== */

/* Root */

.e-4a1a1973
{
	display: contents;
}

/* Box */

.e-4a1a1973 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	min-width: 180px;
	padding: var(--ot-spacing-x);
	gap: 1px;
}

/* ===== ENTRY ===== */

.e-4a1a1973 .entry
{
	display: flex;
	flex-direction: column;
}

/* ===== ROW (clickable) ===== */

.e-4a1a1973 .entry > .row
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s);
	min-height: var(--ot-height-m);
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	cursor: pointer;
	user-select: none;
	text-decoration: none;
	font-family: var(--ot-font-primary);
	text-align: left;
	width: 100%;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-4a1a1973 .entry > .row:hover
{
	background: var(--ot-bg-2-hover);
}

/* Disabled */

.e-4a1a1973 .entry.disabled > .row
{
	opacity: 0.4;
	cursor: not-allowed;
	pointer-events: none;
}

/* Icon */

.e-4a1a1973 .entry > .row > .icon
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	font-size: 18px;
	color: var(--ot-text-2);
	flex-shrink: 0;
}

/* Text */

.e-4a1a1973 .entry > .row > .text
{
	display: flex;
	flex-direction: column;
	gap: 1px;
	flex: 1;
	min-width: 0;
}

.e-4a1a1973 .entry > .row > .text > .label
{
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-4a1a1973 .entry > .row > .text > .description
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Badge */

.e-4a1a1973 .entry > .row > .badge
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: var(--ot-height-x);
	padding: 0 6px;
	background: var(--ot-brand);
	color: #fff;
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
	font-family: var(--ot-font-primary);
	flex-shrink: 0;
	margin-left: auto;
}

/* Shortcut */

.e-4a1a1973 .entry > .row > .shortcut
{
	display: inline-flex;
	align-items: center;
	padding: 2px 6px;
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-3);
	color: var(--ot-text-2);
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 10.5px;
	font-weight: 500;
	letter-spacing: 0.02em;
	flex-shrink: 0;
	margin-left: auto;
}

/* Trail icon */

.e-4a1a1973 .entry > .row > .trail
{
	font-size: 16px;
	color: var(--ot-text-3);
	flex-shrink: 0;
	margin-left: auto;
	transition: transform var(--ot-transition-fast);
}

.e-4a1a1973 .entry > .row:hover > .trail
{
	transform: translateX(2px);
}

.e-4a1a1973 .entry > .row > .shortcut + .trail,
.e-4a1a1973 .entry > .row > .badge + .trail,
.e-4a1a1973 .entry > .row > .badge + .shortcut
{
	margin-left: 0;
}

/* Arrow (submenu toggle) */

.e-4a1a1973 .entry > .row > .arrow
{
	font-size: 18px;
	color: var(--ot-text-3);
	flex-shrink: 0;
	margin-left: auto;
	transition: transform var(--ot-transition), color var(--ot-transition-fast);
}

.e-4a1a1973 .entry.open > .row > .arrow
{
	transform: rotate(180deg);
	color: var(--ot-brand);
}

/* ===== STATES ===== */

/* Active */

.e-4a1a1973 .entry.active > .row
{
	background: var(--ot-brand-opacity);
}

.e-4a1a1973 .entry.active > .row > .icon,
.e-4a1a1973 .entry.active > .row > .text > .label
{
	color: var(--ot-brand);
}

.e-4a1a1973 .entry.active > .row > .icon
{
	font-variation-settings: 'FILL' 0, 'wght' 500;
}

/* Danger */

.e-4a1a1973 .entry.danger > .row > .icon,
.e-4a1a1973 .entry.danger > .row > .text > .label
{
	color: var(--ot-red);
}

.e-4a1a1973 .entry.danger > .row:hover
{
	background: var(--ot-red-opacity);
}

/* Color accents */

.e-4a1a1973 .entry.color-brand > .row > .icon  { color: var(--ot-brand); }
.e-4a1a1973 .entry.color-blue > .row > .icon    { color: var(--ot-blue); }
.e-4a1a1973 .entry.color-red > .row > .icon     { color: var(--ot-red); }
.e-4a1a1973 .entry.color-orange > .row > .icon  { color: var(--ot-orange); }
.e-4a1a1973 .entry.color-green > .row > .icon   { color: var(--ot-green); }

/* ===== SEPARATOR ===== */

.e-4a1a1973 .entry.separator
{
	padding: var(--ot-spacing-x) 0;
}

.e-4a1a1973 .entry > .separator
{
	height: 1px;
	background: var(--ot-bg-2-border);
	margin: 0 var(--ot-spacing-s);
}

/* ===== HEADER ===== */

.e-4a1a1973 .entry > .header
{
	font-size: 10.5px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ot-text-3);
	padding: var(--ot-spacing-s) var(--ot-spacing-m) var(--ot-spacing-x);
	user-select: none;
	font-family: var(--ot-font-primary);
}

/* ===== SUBMENU ===== */

.e-4a1a1973 .entry > .submenu
{
	padding-left: calc(20px + var(--ot-spacing-s));
	animation: e-4a1a1973-reveal var(--ot-transition);
}

@keyframes e-4a1a1973-reveal
{
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* ===== TONE: DEFAULT ===== */

.e-4a1a1973 > .box.default
{
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
}

/* ===== TONE: CONTEXTUAL (floating) ===== */

.e-4a1a1973 > .box.contextual
{
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-1-border);
	border-radius: var(--ot-radius-m);
	box-shadow: var(--ot-shadow-l);
	min-width: 220px;
}

/* ===== TONE: FLUSH (no container) ===== */

.e-4a1a1973 > .box.flush
{
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 0;
}

/* ===== TONE: BORDERED ===== */

.e-4a1a1973 > .box.bordered
{
	background: transparent;
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
}

/* ===== BACKGROUND ===== */

.e-4a1a1973 > .box.bg-1 { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-4a1a1973 > .box.bg-1 .entry > .row:hover { background: var(--ot-bg-1-hover); }
.e-4a1a1973 > .box.bg-1 .entry > .row > .shortcut { background: var(--ot-bg-2); }
.e-4a1a1973 > .box.bg-1 .entry > .separator { background: var(--ot-bg-1-border); }

.e-4a1a1973 > .box.bg-2 { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-4a1a1973 > .box.bg-2 .entry > .row:hover { background: var(--ot-bg-2-hover); }
.e-4a1a1973 > .box.bg-2 .entry > .row > .shortcut { background: var(--ot-bg-1); }
.e-4a1a1973 > .box.bg-2 .entry > .separator { background: var(--ot-bg-2-border); }

.e-4a1a1973 > .box.bg-3 { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-4a1a1973 > .box.bg-3 .entry > .row:hover { background: var(--ot-bg-3-hover); }
.e-4a1a1973 > .box.bg-3 .entry > .row > .shortcut { background: var(--ot-bg-2); }
.e-4a1a1973 > .box.bg-3 .entry > .separator { background: var(--ot-bg-3-border); }

.e-4a1a1973 > .box.bg-4 { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }
.e-4a1a1973 > .box.bg-4 .entry > .row:hover { background: var(--ot-bg-4-hover); }
.e-4a1a1973 > .box.bg-4 .entry > .row > .shortcut { background: var(--ot-bg-3); }
.e-4a1a1973 > .box.bg-4 .entry > .separator { background: var(--ot-bg-4-border); }

/* ===== BORDER MODIFIERS ===== */

.e-4a1a1973 > .box.border        { border: 1px solid var(--ot-bg-2-border); }
.e-4a1a1973 > .box.border-top    { border-top: 1px solid var(--ot-bg-2-border); }
.e-4a1a1973 > .box.border-right  { border-right: 1px solid var(--ot-bg-2-border); }
.e-4a1a1973 > .box.border-bottom { border-bottom: 1px solid var(--ot-bg-2-border); }
.e-4a1a1973 > .box.border-left   { border-left: 1px solid var(--ot-bg-2-border); }

.e-4a1a1973 > .box.bg-1.border,
.e-4a1a1973 > .box.bg-1.border-top,
.e-4a1a1973 > .box.bg-1.border-right,
.e-4a1a1973 > .box.bg-1.border-bottom,
.e-4a1a1973 > .box.bg-1.border-left { border-color: var(--ot-bg-1-border); }

.e-4a1a1973 > .box.bg-3.border,
.e-4a1a1973 > .box.bg-3.border-top,
.e-4a1a1973 > .box.bg-3.border-right,
.e-4a1a1973 > .box.bg-3.border-bottom,
.e-4a1a1973 > .box.bg-3.border-left { border-color: var(--ot-bg-3-border); }

.e-4a1a1973 > .box.bg-4.border,
.e-4a1a1973 > .box.bg-4.border-top,
.e-4a1a1973 > .box.bg-4.border-right,
.e-4a1a1973 > .box.bg-4.border-bottom,
.e-4a1a1973 > .box.bg-4.border-left { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

/* Small */

.e-4a1a1973 > .box.size-s .entry > .row
{
	min-height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-x);
	gap: var(--ot-spacing-x);
}

.e-4a1a1973 > .box.size-s .entry > .row > .icon
{
	width: 16px;
	font-size: 15px;
}

.e-4a1a1973 > .box.size-s .entry > .row > .text > .label
{
	font-size: var(--ot-size-s);
}

.e-4a1a1973 > .box.size-s .entry > .row > .text > .description
{
	font-size: 10.5px;
}

.e-4a1a1973 > .box.size-s .entry > .row > .shortcut
{
	font-size: 10px;
	padding: 1px 5px;
}

.e-4a1a1973 > .box.size-s .entry > .header
{
	font-size: 9.5px;
	padding: var(--ot-spacing-x) var(--ot-spacing-s) 2px;
}

/* Large */

.e-4a1a1973 > .box.size-l .entry > .row
{
	min-height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-m);
	gap: var(--ot-spacing-m);
}

.e-4a1a1973 > .box.size-l .entry > .row > .icon
{
	width: 24px;
	font-size: 22px;
}

.e-4a1a1973 > .box.size-l .entry > .row > .text > .label
{
	font-size: 14px;
}

.e-4a1a1973 > .box.size-l .entry > .row > .text > .description
{
	font-size: 12.5px;
}

.e-4a1a1973 > .box.size-l .entry > .row > .shortcut
{
	font-size: var(--ot-size-s);
	padding: 3px 8px;
}

.e-4a1a1973 > .box.size-l .entry > .header
{
	font-size: var(--ot-size-s);
	padding: var(--ot-spacing-m) var(--ot-spacing-l) var(--ot-spacing-x);
}
/* ===== GLOBAL NOTICE ===== */

.e-2e3de5ec
{
	display: contents;
}

/* Box */

.e-2e3de5ec > .box
{
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	width: 100%;
	padding: var(--ot-spacing-m);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	font-family: var(--ot-font-primary);
	transition: opacity var(--ot-transition), transform var(--ot-transition);
}

/* Icon */

.e-2e3de5ec > .box > .icon
{
	flex-shrink: 0;
	font-size: 20px;
	line-height: 1.3;
	font-variation-settings: 'FILL' 1;
}

/* Body */

.e-2e3de5ec > .box > .body
{
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-2e3de5ec > .box > .body > .title
{
	font-size: var(--ot-size-m);
	font-weight: 600;
	line-height: 1.3;
}

.e-2e3de5ec > .box > .body > .text
{
	font-size: 12.5px;
	line-height: 1.5;
	opacity: 0.85;
}

/* Actions */

.e-2e3de5ec > .box > .actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-shrink: 0;
}

.e-2e3de5ec > .box > .actions:empty
{
	display: none;
}

/* Close */

.e-2e3de5ec > .box > .close
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: currentColor;
	cursor: pointer;
	flex-shrink: 0;
	opacity: 0.6;
	transition: background var(--ot-transition), opacity var(--ot-transition);
}

.e-2e3de5ec > .box > .close:hover
{
	opacity: 1;
	background: rgba(255, 255, 255, 0.1);
}

.e-2e3de5ec > .box > .close > i
{
	font-size: 18px;
}

/* ===== TONE: SOFT (opacity background) ===== */

.e-2e3de5ec > .box.soft.brand  { background: var(--ot-brand-opacity);  border-color: var(--ot-brand-border);  color: var(--ot-brand); }
.e-2e3de5ec > .box.soft.blue   { background: var(--ot-blue-opacity);   border-color: var(--ot-blue-border);   color: var(--ot-blue); }
.e-2e3de5ec > .box.soft.red    { background: var(--ot-red-opacity);    border-color: var(--ot-red-border);    color: var(--ot-red); }
.e-2e3de5ec > .box.soft.orange { background: var(--ot-orange-opacity); border-color: var(--ot-orange-border); color: var(--ot-orange); }
.e-2e3de5ec > .box.soft.green  { background: var(--ot-green-opacity);  border-color: var(--ot-green-border);  color: var(--ot-green); }

.e-2e3de5ec > .box.soft > .body > .title { color: inherit; }
.e-2e3de5ec > .box.soft > .body > .text  { color: var(--ot-text-1); }

/* ===== TONE: FILLED (solid background) ===== */

.e-2e3de5ec > .box.filled.brand  { background: var(--ot-brand);  border-color: var(--ot-brand);  color: #fff; }
.e-2e3de5ec > .box.filled.blue   { background: var(--ot-blue);   border-color: var(--ot-blue);   color: #fff; }
.e-2e3de5ec > .box.filled.red    { background: var(--ot-red);    border-color: var(--ot-red);    color: #fff; }
.e-2e3de5ec > .box.filled.orange { background: var(--ot-orange); border-color: var(--ot-orange); color: #fff; }
.e-2e3de5ec > .box.filled.green  { background: var(--ot-green);  border-color: var(--ot-green);  color: #fff; }

.e-2e3de5ec > .box.filled > .body > .title { color: #fff; }
.e-2e3de5ec > .box.filled > .body > .text  { color: #fff; opacity: 0.9; }

/* ===== TONE: ACCENT (left border bar) ===== */

.e-2e3de5ec > .box.accent
{
	border-left-width: 3px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.e-2e3de5ec > .box.accent.brand  { background: var(--ot-brand-opacity);  border-color: transparent; border-left-color: var(--ot-brand);  color: var(--ot-brand); }
.e-2e3de5ec > .box.accent.blue   { background: var(--ot-blue-opacity);   border-color: transparent; border-left-color: var(--ot-blue);   color: var(--ot-blue); }
.e-2e3de5ec > .box.accent.red    { background: var(--ot-red-opacity);    border-color: transparent; border-left-color: var(--ot-red);    color: var(--ot-red); }
.e-2e3de5ec > .box.accent.orange { background: var(--ot-orange-opacity); border-color: transparent; border-left-color: var(--ot-orange); color: var(--ot-orange); }
.e-2e3de5ec > .box.accent.green  { background: var(--ot-green-opacity);  border-color: transparent; border-left-color: var(--ot-green);  color: var(--ot-green); }

.e-2e3de5ec > .box.accent > .body > .title { color: inherit; }
.e-2e3de5ec > .box.accent > .body > .text  { color: var(--ot-text-1); }

/* ===== BACKGROUND (neutral) ===== */

.e-2e3de5ec > .box.bg-1 { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); color: var(--ot-text-2); }
.e-2e3de5ec > .box.bg-2 { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); color: var(--ot-text-2); }
.e-2e3de5ec > .box.bg-3 { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); color: var(--ot-text-2); }
.e-2e3de5ec > .box.bg-4 { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); color: var(--ot-text-2); }

.e-2e3de5ec > .box.bg-1 > .body > .title,
.e-2e3de5ec > .box.bg-2 > .body > .title,
.e-2e3de5ec > .box.bg-3 > .body > .title,
.e-2e3de5ec > .box.bg-4 > .body > .title
{
	color: var(--ot-text-1);
}

/* ===== SIZE ===== */

.e-2e3de5ec > .box.size-s
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	gap: var(--ot-spacing-s);
}

.e-2e3de5ec > .box.size-s > .icon
{
	font-size: 17px;
}

.e-2e3de5ec > .box.size-s > .body > .title
{
	font-size: 12px;
}

.e-2e3de5ec > .box.size-s > .body > .text
{
	font-size: var(--ot-size-s);
}

.e-2e3de5ec > .box.size-s > .close
{
	width: 24px;
	height: 24px;
}

.e-2e3de5ec > .box.size-s > .close > i
{
	font-size: 15px;
}

.e-2e3de5ec > .box.size-l
{
	padding: var(--ot-spacing-l);
	gap: var(--ot-spacing-m);
}

.e-2e3de5ec > .box.size-l > .icon
{
	font-size: 24px;
}

.e-2e3de5ec > .box.size-l > .body > .title
{
	font-size: 15px;
}

.e-2e3de5ec > .box.size-l > .body > .text
{
	font-size: 13.5px;
}

.e-2e3de5ec > .box.size-l > .close
{
	width: 32px;
	height: 32px;
}

.e-2e3de5ec > .box.size-l > .close > i
{
	font-size: 20px;
}
/* ===== GLOBAL PARAMETERS ===== */

.e-29179902
{
	display: contents;
}

/* Box */

.e-29179902 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
}

/* List */

.e-29179902 > .box > .list
{
	display: flex;
	flex-direction: column;
	width: 100%;
}

/* ===== PARAM ===== */

.e-29179902 .param
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m) 0;
	border-bottom: 1px solid var(--ot-bg-2-border);
	transition: background var(--ot-transition);
}

.e-29179902 > .box > .list > .param:last-child
{
	border-bottom: none;
}

.e-29179902 .param.deprecated > .head > .name
{
	text-decoration: line-through;
	opacity: 0.5;
}

/* Head */

.e-29179902 .param > .head
{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--ot-spacing-s);
}

/* Name */

.e-29179902 .param > .head > .name
{
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ot-text-1);
}

/* Type */

.e-29179902 .param > .head > .type
{
	display: inline-flex;
	align-items: center;
	padding: 2px var(--ot-spacing-s);
	border-radius: var(--ot-radius-s);
	background: var(--ot-blue-opacity);
	color: var(--ot-blue);
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: var(--ot-size-s);
	font-weight: 600;
}

/* Badges */

.e-29179902 .param > .head > .badge
{
	display: inline-flex;
	align-items: center;
	padding: 2px var(--ot-spacing-s);
	border-radius: 100px;
	font-family: var(--ot-font-primary);
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.e-29179902 .param > .head > .badge.required
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-29179902 .param > .head > .badge.deprecated
{
	background: var(--ot-red-opacity);
	color: var(--ot-red);
}

.e-29179902 .param > .head > .badge.since
{
	background: var(--ot-green-opacity);
	color: var(--ot-green);
}

/* Description */

.e-29179902 .param > .description
{
	font-size: var(--ot-size-m);
	line-height: 1.6;
	color: var(--ot-text-2);
}

.e-29179902 .param > .description code
{
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 0.88em;
	padding: 1px 6px;
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
}

/* Meta (default, options) */

.e-29179902 .param > .meta
{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--ot-spacing-s);
}

.e-29179902 .param > .meta > .label
{
	font-size: 10.5px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ot-text-3);
}

.e-29179902 .param > .meta > .options
{
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--ot-spacing-x);
}

.e-29179902 .param .mono
{
	display: inline-flex;
	align-items: center;
	padding: 2px var(--ot-spacing-s);
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-1);
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: var(--ot-size-s);
	font-weight: 500;
}

/* Children */

.e-29179902 .param > .children
{
	display: flex;
	flex-direction: column;
	margin-top: var(--ot-spacing-s);
	padding-left: var(--ot-spacing-m);
	border-left: 2px solid var(--ot-bg-2-border);
}

.e-29179902 .param > .children > .param
{
	padding: var(--ot-spacing-s) 0;
	border-bottom: 1px dashed var(--ot-bg-2-border);
}

.e-29179902 .param > .children > .param:last-child
{
	border-bottom: none;
}

/* ===== TONE: ROWS ===== */

.e-29179902 > .box.rows
{
	padding: 0;
}

/* ===== TONE: COMPACT ===== */

.e-29179902 > .box.compact .param
{
	flex-direction: row;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-s) 0;
}

.e-29179902 > .box.compact .param > .head
{
	flex-shrink: 0;
}

.e-29179902 > .box.compact .param > .description
{
	flex: 1;
	min-width: 200px;
	font-size: 12.5px;
}

.e-29179902 > .box.compact .param > .meta
{
	flex-basis: 100%;
}

/* ===== TONE: CARDS ===== */

.e-29179902 > .box.cards > .list
{
	gap: var(--ot-spacing-s);
}

.e-29179902 > .box.cards > .list > .param
{
	padding: var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	transition: border-color var(--ot-transition);
}

.e-29179902 > .box.cards > .list > .param:hover
{
	border-color: var(--ot-bg-3-border);
}

.e-29179902 > .box.cards > .list > .param:last-child
{
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-29179902 > .box.cards > .list > .param:last-child:hover
{
	border-color: var(--ot-bg-3-border);
}

/* ===== BACKGROUND ===== */

.e-29179902 > .box.bg-1 { background: var(--ot-bg-1); border-radius: var(--ot-radius-m); padding: var(--ot-spacing-m); }
.e-29179902 > .box.bg-2 { background: var(--ot-bg-2); border-radius: var(--ot-radius-m); padding: var(--ot-spacing-m); }
.e-29179902 > .box.bg-3 { background: var(--ot-bg-3); border-radius: var(--ot-radius-m); padding: var(--ot-spacing-m); }
.e-29179902 > .box.bg-4 { background: var(--ot-bg-4); border-radius: var(--ot-radius-m); padding: var(--ot-spacing-m); }

.e-29179902 > .box.bg-1 .param { border-bottom-color: var(--ot-bg-1-border); }
.e-29179902 > .box.bg-2 .param { border-bottom-color: var(--ot-bg-2-border); }
.e-29179902 > .box.bg-3 .param { border-bottom-color: var(--ot-bg-3-border); }
.e-29179902 > .box.bg-4 .param { border-bottom-color: var(--ot-bg-4-border); }

.e-29179902 > .box.bg-1 .param > .head > .type,
.e-29179902 > .box.bg-1 .param .mono { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }

.e-29179902 > .box.bg-2 .param > .head > .type,
.e-29179902 > .box.bg-2 .param .mono { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }

.e-29179902 > .box.bg-3 .param > .head > .type,
.e-29179902 > .box.bg-3 .param .mono { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }

.e-29179902 > .box.bg-4 .param > .head > .type,
.e-29179902 > .box.bg-4 .param .mono { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }

/* Cards on background */

.e-29179902 > .box.bg-1.cards > .list > .param { background: var(--ot-bg-2); border-color: var(--ot-bg-1-border); }
.e-29179902 > .box.bg-1.cards > .list > .param:hover { border-color: var(--ot-bg-2-border); }

.e-29179902 > .box.bg-2.cards > .list > .param { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }
.e-29179902 > .box.bg-2.cards > .list > .param:hover { border-color: var(--ot-bg-3-border); }

.e-29179902 > .box.bg-3.cards > .list > .param { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }
.e-29179902 > .box.bg-3.cards > .list > .param:hover { border-color: var(--ot-bg-4-border); }

.e-29179902 > .box.bg-4.cards > .list > .param { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }

/* Children on background */

.e-29179902 > .box.bg-1 .param > .children { border-left-color: var(--ot-bg-1-border); }
.e-29179902 > .box.bg-2 .param > .children { border-left-color: var(--ot-bg-2-border); }
.e-29179902 > .box.bg-3 .param > .children { border-left-color: var(--ot-bg-3-border); }
.e-29179902 > .box.bg-4 .param > .children { border-left-color: var(--ot-bg-4-border); }

.e-29179902 > .box.bg-1 .param > .children > .param { border-bottom-color: var(--ot-bg-1-border); }
.e-29179902 > .box.bg-2 .param > .children > .param { border-bottom-color: var(--ot-bg-2-border); }
.e-29179902 > .box.bg-3 .param > .children > .param { border-bottom-color: var(--ot-bg-3-border); }
.e-29179902 > .box.bg-4 .param > .children > .param { border-bottom-color: var(--ot-bg-4-border); }

/* ===== BORDER ===== */

.e-29179902 > .box.border { border: 1px solid var(--ot-bg-2-border); border-radius: var(--ot-radius-m); padding: var(--ot-spacing-m); }
.e-29179902 > .box.border-top { border-top: 1px solid var(--ot-bg-2-border); }
.e-29179902 > .box.border-right { border-right: 1px solid var(--ot-bg-2-border); }
.e-29179902 > .box.border-bottom { border-bottom: 1px solid var(--ot-bg-2-border); }
.e-29179902 > .box.border-left { border-left: 1px solid var(--ot-bg-2-border); }

.e-29179902 > .box.bg-1.border,
.e-29179902 > .box.bg-1.border-top,
.e-29179902 > .box.bg-1.border-right,
.e-29179902 > .box.bg-1.border-bottom,
.e-29179902 > .box.bg-1.border-left { border-color: var(--ot-bg-1-border); }

.e-29179902 > .box.bg-2.border,
.e-29179902 > .box.bg-2.border-top,
.e-29179902 > .box.bg-2.border-right,
.e-29179902 > .box.bg-2.border-bottom,
.e-29179902 > .box.bg-2.border-left { border-color: var(--ot-bg-2-border); }

.e-29179902 > .box.bg-3.border,
.e-29179902 > .box.bg-3.border-top,
.e-29179902 > .box.bg-3.border-right,
.e-29179902 > .box.bg-3.border-bottom,
.e-29179902 > .box.bg-3.border-left { border-color: var(--ot-bg-3-border); }

.e-29179902 > .box.bg-4.border,
.e-29179902 > .box.bg-4.border-top,
.e-29179902 > .box.bg-4.border-right,
.e-29179902 > .box.bg-4.border-bottom,
.e-29179902 > .box.bg-4.border-left { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

/* Small */

.e-29179902 > .box.size-s .param
{
	padding: var(--ot-spacing-s) 0;
	gap: var(--ot-spacing-x);
}

.e-29179902 > .box.size-s .param > .head
{
	gap: var(--ot-spacing-x);
}

.e-29179902 > .box.size-s .param > .head > .name
{
	font-size: 12.5px;
}

.e-29179902 > .box.size-s .param > .head > .type
{
	font-size: 10px;
	padding: 1px 6px;
}

.e-29179902 > .box.size-s .param > .head > .badge
{
	font-size: 9px;
	padding: 1px 6px;
}

.e-29179902 > .box.size-s .param > .description
{
	font-size: 12px;
}

.e-29179902 > .box.size-s .param .mono
{
	font-size: 10px;
	padding: 1px 6px;
}

/* Large */

.e-29179902 > .box.size-l .param
{
	padding: var(--ot-spacing-l) 0;
	gap: var(--ot-spacing-m);
}

.e-29179902 > .box.size-l .param > .head > .name
{
	font-size: 15px;
}

.e-29179902 > .box.size-l .param > .head > .type
{
	font-size: 12px;
	padding: 3px 10px;
}

.e-29179902 > .box.size-l .param > .head > .badge
{
	font-size: var(--ot-size-s);
	padding: 3px 10px;
}

.e-29179902 > .box.size-l .param > .description
{
	font-size: 14px;
}

.e-29179902 > .box.size-l .param .mono
{
	font-size: 12px;
	padding: 3px 10px;
}
/* ===== GLOBAL TAGS ===== */

.e-4a1d382d
{
	display: contents;
}

/* Box */

.e-4a1d382d > .box
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
	width: 100%;
}

/* Tag */

.e-4a1d382d .tag
{
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: 7px var(--ot-spacing-m);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-2);
	background: transparent;
	border: 1px solid transparent;
	border-radius: 100px;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	user-select: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-4a1d382d .tag:hover:not(.disabled):not(.active)
{
	color: var(--ot-text-1);
	transform: translateY(-1px);
}

.e-4a1d382d .tag:active:not(.disabled)
{
	transform: translateY(0) scale(0.97);
	transition-duration: 100ms;
}

.e-4a1d382d .tag:focus-visible
{
	box-shadow: 0 0 0 3px var(--ot-brand-opacity);
}

.e-4a1d382d .tag.disabled
{
	cursor: not-allowed;
	opacity: 0.45;
	pointer-events: none;
}

/* Active */

.e-4a1d382d .tag.active
{
	color: var(--ot-brand);
}

/* Icon */

.e-4a1d382d .tag > i
{
	font-size: 16px;
	margin-left: -2px;
}

/* Color dot */

.e-4a1d382d .tag > .dot
{
	width: 8px;
	height: 8px;
	border-radius: 50%;
	flex-shrink: 0;
	background: var(--ot-text-3);
	transition: box-shadow var(--ot-transition);
}

.e-4a1d382d .tag.active > .dot
{
	box-shadow: 0 0 0 3px var(--ot-bg-1);
}

.e-4a1d382d .tag.color-brand > .dot { background: var(--ot-brand); }
.e-4a1d382d .tag.color-blue > .dot { background: var(--ot-blue); }
.e-4a1d382d .tag.color-red > .dot { background: var(--ot-red); }
.e-4a1d382d .tag.color-orange > .dot { background: var(--ot-orange); }
.e-4a1d382d .tag.color-green > .dot { background: var(--ot-green); }

/* Count badge */

.e-4a1d382d .tag > .count
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	padding: 0 6px;
	background: var(--ot-bg-2);
	border-radius: 100px;
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-3);
	line-height: 18px;
	margin-right: -4px;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-4a1d382d .tag.active > .count
{
	background: var(--ot-brand);
	color: #fff;
}

/* ===== TONE: PILLS ===== */

.e-4a1d382d > .box.pills > .tag
{
	background: var(--ot-bg-2);
}

.e-4a1d382d > .box.pills > .tag:hover:not(.disabled):not(.active)
{
	background: var(--ot-bg-2-hover);
}

.e-4a1d382d > .box.pills > .tag.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

/* ===== TONE: OUTLINE ===== */

.e-4a1d382d > .box.outline > .tag
{
	background: transparent;
	border-color: var(--ot-bg-2-border);
}

.e-4a1d382d > .box.outline > .tag:hover:not(.disabled):not(.active)
{
	border-color: var(--ot-text-2);
}

.e-4a1d382d > .box.outline > .tag.active
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand);
	color: var(--ot-brand);
}

/* ===== TONE: MINIMAL ===== */

.e-4a1d382d > .box.minimal > .tag
{
	background: transparent;
	border-color: transparent;
	padding: 7px var(--ot-spacing-s);
}

.e-4a1d382d > .box.minimal > .tag:hover:not(.disabled):not(.active)
{
	background: var(--ot-bg-2-opacity);
}

.e-4a1d382d > .box.minimal > .tag.active
{
	color: var(--ot-brand);
	background: var(--ot-brand-opacity);
}

/* ===== BACKGROUND ===== */

.e-4a1d382d > .box.bg-1.pills > .tag { background: var(--ot-bg-1); }
.e-4a1d382d > .box.bg-1.pills > .tag:hover:not(.disabled):not(.active) { background: var(--ot-bg-1-hover); }
.e-4a1d382d > .box.bg-1 .tag > .count { background: var(--ot-bg-2); }

.e-4a1d382d > .box.bg-2.pills > .tag { background: var(--ot-bg-2); }
.e-4a1d382d > .box.bg-2.pills > .tag:hover:not(.disabled):not(.active) { background: var(--ot-bg-2-hover); }
.e-4a1d382d > .box.bg-2 .tag > .count { background: var(--ot-bg-3); }

.e-4a1d382d > .box.bg-3.pills > .tag { background: var(--ot-bg-3); }
.e-4a1d382d > .box.bg-3.pills > .tag:hover:not(.disabled):not(.active) { background: var(--ot-bg-3-hover); }
.e-4a1d382d > .box.bg-3 .tag > .count { background: var(--ot-bg-4); }

.e-4a1d382d > .box.bg-4.pills > .tag { background: var(--ot-bg-4); }
.e-4a1d382d > .box.bg-4.pills > .tag:hover:not(.disabled):not(.active) { background: var(--ot-bg-4-hover); }
.e-4a1d382d > .box.bg-4 .tag > .count { background: var(--ot-bg-3); }

/* Outline + bg */

.e-4a1d382d > .box.bg-1.outline > .tag { border-color: var(--ot-bg-1-border); }
.e-4a1d382d > .box.bg-2.outline > .tag { border-color: var(--ot-bg-2-border); }
.e-4a1d382d > .box.bg-3.outline > .tag { border-color: var(--ot-bg-3-border); }
.e-4a1d382d > .box.bg-4.outline > .tag { border-color: var(--ot-bg-4-border); }

/* ===== BORDER MODIFIER ===== */

.e-4a1d382d > .box.border > .tag { border-color: var(--ot-bg-2-border); }
.e-4a1d382d > .box.bg-1.border > .tag { border-color: var(--ot-bg-1-border); }
.e-4a1d382d > .box.bg-2.border > .tag { border-color: var(--ot-bg-2-border); }
.e-4a1d382d > .box.bg-3.border > .tag { border-color: var(--ot-bg-3-border); }
.e-4a1d382d > .box.bg-4.border > .tag { border-color: var(--ot-bg-4-border); }

/* ===== SIZE ===== */

.e-4a1d382d > .box.size-s
{
	gap: var(--ot-spacing-x);
}

.e-4a1d382d > .box.size-s .tag
{
	padding: 5px var(--ot-spacing-s);
	font-size: var(--ot-size-s);
}

.e-4a1d382d > .box.size-s .tag > i
{
	font-size: 14px;
}

.e-4a1d382d > .box.size-s .tag > .dot
{
	width: 6px;
	height: 6px;
}

.e-4a1d382d > .box.size-s .tag > .count
{
	min-width: 16px;
	font-size: 10px;
	line-height: 16px;
	padding: 0 5px;
}

.e-4a1d382d > .box.size-s.minimal > .tag
{
	padding: 5px var(--ot-spacing-x);
}

.e-4a1d382d > .box.size-l .tag
{
	padding: 10px var(--ot-spacing-l);
	font-size: 14px;
}

.e-4a1d382d > .box.size-l .tag > i
{
	font-size: 18px;
}

.e-4a1d382d > .box.size-l .tag > .dot
{
	width: 10px;
	height: 10px;
}

.e-4a1d382d > .box.size-l .tag > .count
{
	min-width: 20px;
	font-size: var(--ot-size-s);
	line-height: 20px;
	padding: 0 8px;
}
/* ===== NAVIGATION DOCK ===== */

.e-1a845976
{
	display: contents;
}

/* Box */

.e-1a845976 > .box
{
	display: flex;
	flex-direction: column;
	align-items: center;
	flex-shrink: 0;
	width: 68px;
	height: 100%;
	padding: var(--ot-spacing-s) 0;
	overflow: hidden;
}

/* Logo */

.e-1a845976 > .box > .logo
{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	margin-bottom: var(--ot-spacing-s);
	transition: transform var(--ot-transition);
}

.e-1a845976 > .box > .logo:hover
{
	transform: scale(1.06);
}

.e-1a845976 > .box > .logo > img
{
	width: 22px;
	height: 22px;
	object-fit: contain;
}

/* Stack */

.e-1a845976 > .box > .stack
{
	display: flex;
	flex-direction: column;
	align-items: center;
	flex-shrink: 0;
	width: 100%;
}

.e-1a845976 > .box > .stack.bottom
{
	margin-top: auto;
}

/* Separator */

.e-1a845976 .separator
{
	width: 32px;
	height: 1px;
	background: var(--ot-bg-2-border);
	margin: var(--ot-spacing-s) auto;
	flex-shrink: 0;
}

/* Group */

.e-1a845976 .group
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-x);
	flex-shrink: 0;
}

/* Item */

.e-1a845976 .item
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: var(--ot-radius-m);
	color: var(--ot-text-2);
	text-decoration: none;
	transition: background var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-1a845976 .item:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-1a845976 .item:active
{
	transform: scale(0.94);
	transition-duration: 100ms;
}

.e-1a845976 .item > i
{
	font-size: 20px;
	font-variation-settings: 'wght' 400;
}

/* Active */

.e-1a845976 .item.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-1a845976 .item.active > i
{
	font-variation-settings: 'wght' 500;
}

.e-1a845976 .item.active::before
{
	content: '';
	position: absolute;
	left: calc(var(--ot-spacing-s) * -1);
	top: 50%;
	width: 3px;
	height: 50%;
	border-radius: 0 3px 3px 0;
	background: var(--ot-brand);
	transform: translateY(-50%);
}

/* Badge */

.e-1a845976 .item > .badge
{
	position: absolute;
	top: 2px;
	right: 2px;
	min-width: 16px;
	height: 16px;
	padding: 0 4px;
	border-radius: 100px;
	background: var(--ot-brand);
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	font-family: var(--ot-font-primary);
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--ot-bg-2);
}

/* ===== BACKGROUND ===== */

.e-1a845976 > .box.bg-1 { background: var(--ot-bg-1); }
.e-1a845976 > .box.bg-1 .item:hover { background: var(--ot-bg-1-hover); }
.e-1a845976 > .box.bg-1 .separator { background: var(--ot-bg-1-border); }
.e-1a845976 > .box.bg-1 .item > .badge { border-color: var(--ot-bg-1); }

.e-1a845976 > .box.bg-2 { background: var(--ot-bg-2); }
.e-1a845976 > .box.bg-2 .item:hover { background: var(--ot-bg-2-hover); }
.e-1a845976 > .box.bg-2 .separator { background: var(--ot-bg-2-border); }
.e-1a845976 > .box.bg-2 .item > .badge { border-color: var(--ot-bg-2); }

.e-1a845976 > .box.bg-3 { background: var(--ot-bg-3); }
.e-1a845976 > .box.bg-3 .item:hover { background: var(--ot-bg-3-hover); }
.e-1a845976 > .box.bg-3 .separator { background: var(--ot-bg-3-border); }
.e-1a845976 > .box.bg-3 .item > .badge { border-color: var(--ot-bg-3); }

.e-1a845976 > .box.bg-4 { background: var(--ot-bg-4); }
.e-1a845976 > .box.bg-4 .item:hover { background: var(--ot-bg-4-hover); }
.e-1a845976 > .box.bg-4 .separator { background: var(--ot-bg-4-border); }
.e-1a845976 > .box.bg-4 .item > .badge { border-color: var(--ot-bg-4); }

/* ===== BORDER ===== */

.e-1a845976 > .box.border { border: 1px solid var(--ot-bg-2-border); }
.e-1a845976 > .box.border-top { border-top: 1px solid var(--ot-bg-2-border); }
.e-1a845976 > .box.border-right { border-right: 1px solid var(--ot-bg-2-border); }
.e-1a845976 > .box.border-bottom { border-bottom: 1px solid var(--ot-bg-2-border); }
.e-1a845976 > .box.border-left { border-left: 1px solid var(--ot-bg-2-border); }

.e-1a845976 > .box.bg-1.border,
.e-1a845976 > .box.bg-1.border-top,
.e-1a845976 > .box.bg-1.border-right,
.e-1a845976 > .box.bg-1.border-bottom,
.e-1a845976 > .box.bg-1.border-left { border-color: var(--ot-bg-1-border); }

.e-1a845976 > .box.bg-2.border,
.e-1a845976 > .box.bg-2.border-top,
.e-1a845976 > .box.bg-2.border-right,
.e-1a845976 > .box.bg-2.border-bottom,
.e-1a845976 > .box.bg-2.border-left { border-color: var(--ot-bg-2-border); }

.e-1a845976 > .box.bg-3.border,
.e-1a845976 > .box.bg-3.border-top,
.e-1a845976 > .box.bg-3.border-right,
.e-1a845976 > .box.bg-3.border-bottom,
.e-1a845976 > .box.bg-3.border-left { border-color: var(--ot-bg-3-border); }

.e-1a845976 > .box.bg-4.border,
.e-1a845976 > .box.bg-4.border-top,
.e-1a845976 > .box.bg-4.border-right,
.e-1a845976 > .box.bg-4.border-bottom,
.e-1a845976 > .box.bg-4.border-left { border-color: var(--ot-bg-4-border); }
/* ===== NAVIGATION FOOTER ===== */

.e-71bcd7e2
{
	display: block;
	width: 100%;
}

/* Box */

.e-71bcd7e2 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	background: var(--ot-bg-1);
	border-top: 1px solid transparent;
	padding: var(--ot-spacing-l) var(--ot-spacing-l) var(--ot-spacing-m);
}

/* ===== BACKGROUND ===== */

.e-71bcd7e2 > .box.bg-1 { background: var(--ot-bg-1); }
.e-71bcd7e2 > .box.bg-2 { background: var(--ot-bg-2); }
.e-71bcd7e2 > .box.bg-3 { background: var(--ot-bg-3); }
.e-71bcd7e2 > .box.bg-4 { background: var(--ot-bg-4); }

/* ===== MODIFIERS ===== */

.e-71bcd7e2 > .box.border { border-top-color: var(--ot-bg-2-border); }
.e-71bcd7e2 > .box.bg-1.border { border-top-color: var(--ot-bg-1-border); }
.e-71bcd7e2 > .box.bg-2.border { border-top-color: var(--ot-bg-2-border); }
.e-71bcd7e2 > .box.bg-3.border { border-top-color: var(--ot-bg-3-border); }
.e-71bcd7e2 > .box.bg-4.border { border-top-color: var(--ot-bg-4-border); }

.e-71bcd7e2 > .box.clean
{
	background: transparent !important;
	border-top-color: transparent !important;
}

/* ===== TOP SLOT ===== */

.e-71bcd7e2 > .box > .top-slot
{
	margin-bottom: var(--ot-spacing-l);
	padding-bottom: var(--ot-spacing-l);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

/* ===== MAIN ===== */

.e-71bcd7e2 > .box > .main
{
	display: grid;
	grid-template-columns: minmax(280px, 1.2fr) 3fr;
	gap: var(--ot-spacing-l);
	width: 100%;
}

/* ===== BRAND COLUMN ===== */

.e-71bcd7e2 > .box > .main > .brand-col
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	min-width: 0;
}

.e-71bcd7e2 > .box > .main > .brand-col > .brand
{
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: inherit;
}

.e-71bcd7e2 > .box > .main > .brand-col > .brand > .brand-logo
{
	display: block;
	height: 28px;
	width: auto;
}

.e-71bcd7e2 > .box > .main > .brand-col > .tagline
{
	margin: 0;
	max-width: 340px;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
	line-height: 1.6;
}

/* Newsletter */

.e-71bcd7e2 > .box > .main > .brand-col > .newsletter
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	max-width: 420px;
}

.e-71bcd7e2 > .box > .main > .brand-col > .newsletter > .newsletter-text
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-71bcd7e2 > .box > .main > .brand-col > .newsletter > .newsletter-text > .newsletter-title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-size: 16px;
	font-weight: 600;
	color: var(--ot-text-1);
	letter-spacing: -0.01em;
}

.e-71bcd7e2 > .box > .main > .brand-col > .newsletter > .newsletter-text > .newsletter-description
{
	margin: 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.5;
}

.e-71bcd7e2 > .box > .main > .brand-col > .newsletter > .newsletter-form
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

.e-71bcd7e2 > .box > .main > .brand-col > .newsletter > .newsletter-form > e-form-input
{
	flex: 1 1 200px;
	min-width: 0;
}

/* ===== GROUPS ===== */

.e-71bcd7e2 > .box > .main > .groups
{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: var(--ot-spacing-l);
	align-content: start;
}

.e-71bcd7e2 > .box > .main > .groups > .group
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	min-width: 0;
}

.e-71bcd7e2 > .box > .main > .groups > .group > .group-title
{
	margin: 0 0 4px;
	font-family: var(--ot-font-primary);
	font-size: 11px;
	font-weight: 700;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.e-71bcd7e2 > .box > .main > .groups > .group > .group-list
{
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-71bcd7e2 > .box > .main > .groups > .group > .group-list .group-link
{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 0;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	text-decoration: none;
	transition: color var(--ot-transition);
}

.e-71bcd7e2 > .box > .main > .groups > .group > .group-list .group-link:hover
{
	color: var(--ot-text-1);
}

.e-71bcd7e2 > .box > .main > .groups > .group > .group-list .group-link > i
{
	font-size: 16px;
	color: var(--ot-text-3);
}

.e-71bcd7e2 > .box > .main > .groups > .group > .group-list .group-link > .group-badge
{
	display: inline-flex;
	align-items: center;
	padding: 1px 6px;
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	border-radius: 100px;
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

/* ===== BOTTOM BAR ===== */

.e-71bcd7e2 > .box > .bottom
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	flex-wrap: wrap;
	margin-top: var(--ot-spacing-l);
	padding-top: var(--ot-spacing-m);
	border-top: 1px solid var(--ot-bg-2-border);
}

.e-71bcd7e2 > .box > .bottom > .copyright
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-71bcd7e2 > .box > .bottom > .legal
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

.e-71bcd7e2 > .box > .bottom > .legal > .legal-link
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-3);
	text-decoration: none;
	transition: color var(--ot-transition);
}

.e-71bcd7e2 > .box > .bottom > .legal > .legal-link:hover
{
	color: var(--ot-text-1);
}

.e-71bcd7e2 > .box > .bottom > .legal > .legal-link:not(:last-child)::after
{
	content: '·';
	margin-left: var(--ot-spacing-s);
	color: var(--ot-text-3);
	opacity: 0.5;
}

.e-71bcd7e2 > .box > .bottom > .social
{
	display: flex;
	align-items: center;
	gap: 4px;
	margin-left: auto;
}

.e-71bcd7e2 > .box > .bottom > .social > .social-link
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: var(--ot-radius-s);
	background: transparent;
	color: var(--ot-text-2);
	text-decoration: none;
	transition: background var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-71bcd7e2 > .box > .bottom > .social > .social-link:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-brand);
	transform: translateY(-1px);
}

.e-71bcd7e2 > .box > .bottom > .social > .social-link > i
{
	font-size: 18px;
}

/* ===== BOTTOM SLOT ===== */

.e-71bcd7e2 > .box > .bottom-slot
{
	margin-top: var(--ot-spacing-m);
	padding-top: var(--ot-spacing-m);
	border-top: 1px solid var(--ot-bg-2-border);
}

/* ===== RESPONSIVE ===== */

@media (max-width: 900px)
{
	.e-71bcd7e2 > .box > .main
	{
		grid-template-columns: 1fr;
	}

	.e-71bcd7e2 > .box > .main > .groups
	{
		grid-template-columns: repeat(2, 1fr);
	}

	.e-71bcd7e2 > .box > .bottom
	{
		flex-direction: column;
		align-items: flex-start;
	}

	.e-71bcd7e2 > .box > .bottom > .social
	{
		margin-left: 0;
	}
}

@media (max-width: 560px)
{
	.e-71bcd7e2 > .box > .main > .groups
	{
		grid-template-columns: 1fr;
	}
}
/* ===== NAVIGATION NAVBAR ===== */

/* Root */

.e-64d8716d
{
	display: block;
	width: 100%;
}

/* Box */

.e-64d8716d > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	background: var(--ot-bg-1);
	border-bottom: 1px solid transparent;
	transition: transform var(--ot-transition-slow), background var(--ot-transition-slow), border-color var(--ot-transition-slow), box-shadow var(--ot-transition-slow);
	z-index: 100;
}

/* Sticky */

.e-64d8716d > .box.sticky
{
	position: sticky;
	top: 0;
}

/* Blur */

.e-64d8716d > .box.blur
{
	background: var(--ot-bg-1-opacity);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
}

/* Scroll hide */

.e-64d8716d > .box.hidden
{
	transform: translateY(-100%);
}

/* Shrunk */

.e-64d8716d > .box.shrunk
{
	box-shadow: var(--ot-shadow-s);
}

/* ===== BANNER ===== */

.e-64d8716d > .box > .banner
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: var(--ot-spacing-s) var(--ot-spacing-l);
	background: var(--ot-brand-opacity);
	border-bottom: 1px solid var(--ot-bg-2-border);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-1);
}

/* ===== BAR ===== */

.e-64d8716d > .box > .bar
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	width: 100%;
	height: 64px;
	padding: 0 var(--ot-spacing-l);
	transition: height var(--ot-transition-slow);
}

.e-64d8716d > .box.shrunk > .bar
{
	height: 56px;
}

/* ===== VARIANTS ===== */

/* Border */

.e-64d8716d > .box.border
{
	border-bottom-color: var(--ot-bg-2-border);
}

/* Clean */

.e-64d8716d > .box.clean
{
	background: transparent !important;
	border-bottom-color: transparent !important;
}

/* Background */

.e-64d8716d > .box.bg-1 { background: var(--ot-bg-1); }
.e-64d8716d > .box.bg-2 { background: var(--ot-bg-2); }
.e-64d8716d > .box.bg-3 { background: var(--ot-bg-3); }
.e-64d8716d > .box.bg-4 { background: var(--ot-bg-4); }

/* ===== SECTIONS ===== */

.e-64d8716d > .box > .bar > .section
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	min-width: 0;
}

.e-64d8716d > .box > .bar > .section.left
{
	flex: 1 1 auto;
}

.e-64d8716d > .box > .bar > .section.right
{
	flex: 0 1 auto;
	margin-left: auto;
}

/* ===== BRAND ===== */

.e-64d8716d > .box > .bar > .section > .brand
{
	display: inline-flex;
	align-items: center;
	padding: 6px var(--ot-spacing-s);
	margin-left: calc(var(--ot-spacing-s) * -1);
	border-radius: var(--ot-radius-s);
	text-decoration: none;
	color: inherit;
	transition: background var(--ot-transition);
}

.e-64d8716d > .box > .bar > .section > .brand:hover
{
	background: var(--ot-bg-2);
}

.e-64d8716d > .box > .bar > .section > .brand > .brand-logo
{
	display: block;
	height: 24px;
	width: auto;
}

/* ===== CRUMBS ===== */

.e-64d8716d > .box > .bar > .section > .crumbs
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	min-width: 0;
	overflow: hidden;
}

.e-64d8716d > .box > .bar > .section > .crumbs > .crumb
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	text-decoration: none;
	white-space: nowrap;
	position: relative;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-64d8716d > .box > .bar > .section > .crumbs > .crumb:not(:last-child)
{
	margin-right: 12px;
}

.e-64d8716d > .box > .bar > .section > .crumbs > .crumb:not(:last-child)::after
{
	content: '/';
	position: absolute;
	right: -10px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--ot-text-3);
	font-weight: 400;
	opacity: 0.6;
}

.e-64d8716d > .box > .bar > .section > .crumbs > .crumb:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

.e-64d8716d > .box > .bar > .section > .crumbs > .crumb:last-child
{
	color: var(--ot-text-1);
	font-weight: 600;
}

.e-64d8716d > .box > .bar > .section > .crumbs > .crumb > i
{
	font-size: 16px;
}

/* ===== NAV ===== */

.e-64d8716d > .box > .bar > .section .nav
{
	display: flex;
	align-items: center;
	gap: 2px;
}

.e-64d8716d > .box > .bar > .section .nav .nav-item
{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: var(--ot-spacing-s) 12px;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-64d8716d > .box > .bar > .section .nav .nav-item:hover:not(.disabled)
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

.e-64d8716d > .box > .bar > .section .nav .nav-item.active
{
	color: var(--ot-text-1);
	background: var(--ot-bg-2);
	font-weight: 600;
}

.e-64d8716d > .box > .bar > .section .nav .nav-item.disabled
{
	opacity: 0.45;
	cursor: not-allowed;
	pointer-events: none;
}

.e-64d8716d > .box > .bar > .section .nav .nav-item > i
{
	font-size: 18px;
}

.e-64d8716d > .box > .bar > .section .nav .nav-item > .nav-chevron
{
	font-size: 16px;
	opacity: 0.5;
	transition: transform var(--ot-transition);
}

.e-64d8716d > .box > .bar > .section .nav .nav-item.has-children:hover > .nav-chevron
{
	transform: rotate(180deg);
}

.e-64d8716d > .box > .bar > .section .nav .nav-item > .nav-badge
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: var(--ot-height-x);
	height: var(--ot-height-x);
	padding: 0 5px;
	background: var(--ot-brand);
	color: #fff;
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
}

/* ===== ACTIONS SLOT ===== */

.e-64d8716d > .box > .bar > .section > .actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

/* ===== BELL ===== */

.e-64d8716d > .box > .bar > .section .bell
{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-2);
	text-decoration: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-64d8716d > .box > .bar > .section .bell:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

.e-64d8716d > .box > .bar > .section .bell > i
{
	font-size: 20px;
}

.e-64d8716d > .box > .bar > .section .bell > .bell-badge
{
	position: absolute;
	top: 4px;
	right: 4px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 16px;
	height: 16px;
	padding: 0 4px;
	background: var(--ot-red);
	color: #fff;
	border: 2px solid var(--ot-bg-1);
	border-radius: 100px;
	font-size: 9px;
	font-weight: 700;
	line-height: 1;
}

/* ===== USER TRIGGER ===== */

.e-64d8716d > .box > .bar > .section .user-trigger
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: 4px 6px 4px 4px;
	background: transparent;
	border: 1px solid transparent;
	border-radius: 100px;
	cursor: pointer;
	transition: background var(--ot-transition), border-color var(--ot-transition);
}

.e-64d8716d > .box > .bar > .section .user-trigger:hover
{
	background: var(--ot-bg-2);
	border-color: var(--ot-bg-2-border);
}

.e-64d8716d > .box > .bar > .section .user-avatar-small
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--ot-bg-3);
	color: var(--ot-text-2);
	flex-shrink: 0;
}

.e-64d8716d > .box > .bar > .section .user-avatar-small > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.e-64d8716d > .box > .bar > .section .user-avatar-small.user-avatar-fallback > i
{
	font-size: 18px;
}

.e-64d8716d > .box > .bar > .section .user-chevron > i
{
	font-size: 18px;
	color: var(--ot-text-3);
}

/* ===== BURGER ===== */

.e-64d8716d > .box > .bar > .burger
{
	display: none;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-1);
	cursor: pointer;
	margin-left: auto;
}

.e-64d8716d > .box > .bar > .burger:hover
{
	background: var(--ot-bg-2);
}

.e-64d8716d > .box > .bar > .burger > i
{
	font-size: 22px;
}

/* ===== MOBILE DRAWER ===== */

.e-64d8716d > .box > .drawer
{
	display: none;
	flex-direction: column;
	padding: var(--ot-spacing-m) var(--ot-spacing-l) var(--ot-spacing-l);
	border-top: 1px solid var(--ot-bg-2-border);
	max-height: calc(100vh - 64px);
	overflow-y: auto;
	animation: e-64d8716d-drawer-in 0.25s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-64d8716d-drawer-in
{
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.e-64d8716d > .box > .drawer > .drawer-user
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border-radius: var(--ot-radius-m);
	margin-bottom: var(--ot-spacing-m);
}

.e-64d8716d > .box > .drawer > .drawer-user > .drawer-user-avatar
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--ot-bg-3);
	color: var(--ot-text-2);
	flex-shrink: 0;
}

.e-64d8716d > .box > .drawer > .drawer-user > .drawer-user-avatar > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.e-64d8716d > .box > .drawer > .drawer-user > .drawer-user-avatar.drawer-user-avatar-fallback > i
{
	font-size: 22px;
}

.e-64d8716d > .box > .drawer > .drawer-user > .drawer-user-text
{
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.e-64d8716d > .box > .drawer > .drawer-user > .drawer-user-text > .drawer-user-name
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
}

.e-64d8716d > .box > .drawer > .drawer-user > .drawer-user-text > .drawer-user-email
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-64d8716d > .box > .drawer > .drawer-nav,
.e-64d8716d > .box > .drawer > .drawer-user-menu
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-64d8716d > .box > .drawer .drawer-item
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: 12px 14px;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-1);
	text-decoration: none;
	transition: background var(--ot-transition-fast);
}

.e-64d8716d > .box > .drawer .drawer-item:hover
{
	background: var(--ot-bg-2);
}

.e-64d8716d > .box > .drawer .drawer-item.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-64d8716d > .box > .drawer .drawer-item > i
{
	font-size: 20px;
}

.e-64d8716d > .box > .drawer .drawer-item > .drawer-badge
{
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	background: var(--ot-brand);
	color: #fff;
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
}

.e-64d8716d > .box > .drawer .drawer-group
{
	margin: var(--ot-spacing-s) 0;
}

.e-64d8716d > .box > .drawer .drawer-group > .drawer-group-head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: 10px 14px;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 700;
	color: var(--ot-text-3);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.e-64d8716d > .box > .drawer .drawer-group > .drawer-group-head > i
{
	font-size: 16px;
}

.e-64d8716d > .box > .drawer .drawer-group > .drawer-child
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: 10px 14px 10px 36px;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
	text-decoration: none;
	transition: background var(--ot-transition-fast), color var(--ot-transition-fast);
}

.e-64d8716d > .box > .drawer .drawer-group > .drawer-child:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

.e-64d8716d > .box > .drawer .drawer-separator
{
	height: 1px;
	background: var(--ot-bg-2-border);
	margin: var(--ot-spacing-s) 0;
}

/* ===== DROPDOWN ===== */

.navbar-dropdown
{
	display: flex;
	flex-direction: column;
	padding: 6px;
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	box-shadow: var(--ot-shadow-m);
	min-width: 240px;
	max-width: 320px;
}

.navbar-dropdown > .dropdown-item
{
	display: flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	padding: 10px 12px;
	border-radius: var(--ot-radius-s);
	text-decoration: none;
	color: var(--ot-text-1);
	transition: background var(--ot-transition-fast);
}

.navbar-dropdown > .dropdown-item:hover
{
	background: var(--ot-bg-2);
}

.navbar-dropdown > .dropdown-item > .dropdown-icon
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: var(--ot-radius-s);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	flex-shrink: 0;
}

.navbar-dropdown > .dropdown-item > .dropdown-icon > i
{
	font-size: 18px;
}

.navbar-dropdown > .dropdown-item > .dropdown-text
{
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
}

.navbar-dropdown > .dropdown-item > .dropdown-text > .dropdown-label
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1.3;
}

.navbar-dropdown > .dropdown-item > .dropdown-text > .dropdown-description
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.4;
}

/* ===== USER MENU POPUP ===== */

.navbar-user-menu
{
	display: flex;
	flex-direction: column;
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	box-shadow: var(--ot-shadow-m);
	min-width: 260px;
	overflow: hidden;
}

.navbar-user-menu > .user-head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.navbar-user-menu > .user-head > .user-avatar
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--ot-bg-2);
	color: var(--ot-text-2);
	flex-shrink: 0;
}

.navbar-user-menu > .user-head > .user-avatar > img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.navbar-user-menu > .user-head > .user-avatar.user-avatar-fallback > i
{
	font-size: 20px;
}

.navbar-user-menu > .user-head > .user-text
{
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.navbar-user-menu > .user-head > .user-text > .user-name
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.navbar-user-menu > .user-head > .user-text > .user-email
{
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.navbar-user-menu > .user-menu-list
{
	display: flex;
	flex-direction: column;
	padding: 6px;
}

.navbar-user-menu .user-menu-item
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s) 12px;
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-1);
	text-decoration: none;
	transition: background var(--ot-transition-fast);
}

.navbar-user-menu .user-menu-item:hover
{
	background: var(--ot-bg-2);
}

.navbar-user-menu .user-menu-item > i
{
	font-size: 18px;
	color: var(--ot-text-3);
}

.navbar-user-menu .user-menu-separator
{
	height: 1px;
	background: var(--ot-bg-2-border);
	margin: var(--ot-spacing-x) 0;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 900px)
{
	.e-64d8716d > .box > .bar > .section .nav,
	.e-64d8716d > .box > .bar > .section .bell,
	.e-64d8716d > .box > .bar > .section .user-trigger
	{
		display: none;
	}

	.e-64d8716d > .box > .bar > .burger
	{
		display: inline-flex;
	}

	.e-64d8716d > .box.open > .drawer
	{
		display: flex;
	}

	.e-64d8716d > .box > .bar > .section.right
	{
		margin-left: 0;
	}
}
/* ===== NAVIGATION SIDEBAR ===== */

/* Root */

.e-210c16c7
{
	display: flex;
	flex-shrink: 0;
	height: 100%;
}

/* Box */

.e-210c16c7 > .box
{
	display: flex;
	flex-direction: column;
	width: 260px;
	height: 100%;
	overflow-y: auto;
}

/* ===== HEAD ===== */

.e-210c16c7 > .box > .head
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
	flex-shrink: 0;
	padding: var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-210c16c7 > .box > .head > .title
{
	font-family: var(--ot-font-secondary);
	font-size: var(--ot-size-l);
	font-weight: 500;
	letter-spacing: -0.018em;
	color: var(--ot-text-1);
	font-variation-settings: 'opsz' 144;
	line-height: 1.1;
}

.e-210c16c7 > .box > .head > .subtitle
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	font-family: var(--ot-font-primary);
	line-height: 1.4;
}

.e-210c16c7 > .box > .head > .version
{
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	padding: 3px 9px;
	margin-top: var(--ot-spacing-x);
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	border-radius: 100px;
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.04em;
	font-family: var(--ot-font-primary);
}

/* ===== STACK ===== */

.e-210c16c7 > .box > .stack
{
	display: flex;
	flex-direction: column;
	padding: var(--ot-spacing-s);
	gap: var(--ot-spacing-x);
}

.e-210c16c7 > .box > .stack.bottom
{
	margin-top: auto;
	border-top: 1px solid var(--ot-bg-2-border);
}

/* ===== GROUP ===== */

.e-210c16c7 .group
{
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.e-210c16c7 .group + .group
{
	margin-top: var(--ot-spacing-s);
}

.e-210c16c7 .group-title
{
	font-size: 10.5px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ot-text-3);
	padding: var(--ot-spacing-s) var(--ot-spacing-s) var(--ot-spacing-x);
	font-family: var(--ot-font-primary);
}

/* ===== ITEM ===== */

.e-210c16c7 .item
{
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-s);
	border-radius: var(--ot-radius-m);
	color: var(--ot-text-2);
	font-size: 12px;
	font-weight: 500;
	text-decoration: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-210c16c7 .item.child
{
	margin-left: calc(var(--depth) * 13px + var(--ot-spacing-s));
}

.e-210c16c7 .item.child::before
{
	content: '';
	position: absolute;
	left: calc(var(--ot-spacing-s) * -1);
	top: 0;
	bottom: 0;
	border-left: 1px solid var(--ot-bg-2-border);
}

.e-210c16c7 .item > i
{
	color: var(--ot-text-2);
	font-size: 16px;
	flex-shrink: 0;
	transition: color var(--ot-transition);
}

.e-210c16c7 .item > .label
{
	flex: 1;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e-210c16c7 .item > .chevron
{
	opacity: 0;
	font-size: 16px;
	transform: translateX(-4px);
	transition: opacity var(--ot-transition), transform var(--ot-transition);
	margin-left: auto;
}

.e-210c16c7 .item:hover
{
	background: var(--ot-bg-1);
	color: var(--ot-text-1);
}

.e-210c16c7 .item:hover > i
{
	color: var(--ot-text-1);
}

.e-210c16c7 .item:hover > .chevron
{
	opacity: 1;
	transform: translateX(0);
}

/* Active */

.e-210c16c7 .item.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-210c16c7 .item.active > i
{
	color: var(--ot-brand);
	font-variation-settings: 'FILL' 0, 'wght' 500;
}

.e-210c16c7 .item.active > .chevron
{
	opacity: 1;
	transform: translateX(0);
	color: var(--ot-brand);
}

.e-210c16c7 .item.active::after
{
	content: '';
	position: absolute;
	left: calc(var(--ot-spacing-s) * -1);
	top: 50%;
	width: 3px;
	height: 50%;
	border-radius: 0 3px 3px 0;
	background: var(--ot-brand);
	transform: translateY(-50%);
}


/* ===== BADGE ===== */

.e-210c16c7 .item > .badge
{
	min-width: 20px;
	height: 20px;
	padding: 0 7px;
	background: var(--ot-brand);
	color: white;
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--ot-font-primary);
	line-height: 1;
	margin-left: auto;
}

/* Count */

.e-210c16c7 .item > .count
{
	min-width: 20px;
	height: 20px;
	padding: 0 7px;
	background: var(--ot-bg-3);
	color: var(--ot-text-2);
	border-radius: 100px;
	font-size: 10.5px;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--ot-font-primary);
	line-height: 1;
	margin-left: auto;
}

.e-210c16c7 .item.active > .count
{
	background: var(--ot-brand);
	color: white;
}

/* Soon badge */

.e-210c16c7 .item > .soon-badge
{
	font-size: 9.5px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 3px 7px;
	background: var(--ot-bg-3);
	color: var(--ot-text-3);
	border-radius: 100px;
	font-family: var(--ot-font-primary);
	margin-left: auto;
}

/* Soon / Disabled */

.e-210c16c7 .item.soon,
.e-210c16c7 .item.disabled
{
	cursor: not-allowed;
	opacity: 0.55;
}

.e-210c16c7 .item.soon:hover,
.e-210c16c7 .item.disabled:hover
{
	background: transparent;
	color: var(--ot-text-2);
}

.e-210c16c7 .item.soon:hover > i,
.e-210c16c7 .item.disabled:hover > i
{
	color: var(--ot-text-3);
}

/* ===== FOOT ===== */

.e-210c16c7 > .box > .foot
{
	flex-shrink: 0;
	padding: var(--ot-spacing-m);
	border-top: 1px solid var(--ot-bg-2-border);
}

/* ===== BACKGROUND ===== */

.e-210c16c7 > .box.bg-1 { background: var(--ot-bg-1); }
.e-210c16c7 > .box.bg-1 > .head,
.e-210c16c7 > .box.bg-1 > .stack.bottom,
.e-210c16c7 > .box.bg-1 > .foot { border-color: var(--ot-bg-1-border); }
.e-210c16c7 > .box.bg-1 .item:hover { background: var(--ot-bg-1-hover); }
.e-210c16c7 > .box.bg-1 .item > .count { background: var(--ot-bg-2); }

.e-210c16c7 > .box.bg-2 { background: var(--ot-bg-2); }
.e-210c16c7 > .box.bg-2 > .head,
.e-210c16c7 > .box.bg-2 > .stack.bottom,
.e-210c16c7 > .box.bg-2 > .foot { border-color: var(--ot-bg-2-border); }
.e-210c16c7 > .box.bg-2 .item:hover { background: var(--ot-bg-2-hover); }
.e-210c16c7 > .box.bg-2 .item > .count { background: var(--ot-bg-3); }

.e-210c16c7 > .box.bg-3 { background: var(--ot-bg-3); }
.e-210c16c7 > .box.bg-3 > .head,
.e-210c16c7 > .box.bg-3 > .stack.bottom,
.e-210c16c7 > .box.bg-3 > .foot { border-color: var(--ot-bg-3-border); }
.e-210c16c7 > .box.bg-3 .item:hover { background: var(--ot-bg-3-hover); }
.e-210c16c7 > .box.bg-3 .item > .count { background: var(--ot-bg-4); }

.e-210c16c7 > .box.bg-4 { background: var(--ot-bg-4); }
.e-210c16c7 > .box.bg-4 > .head,
.e-210c16c7 > .box.bg-4 > .stack.bottom,
.e-210c16c7 > .box.bg-4 > .foot { border-color: var(--ot-bg-4-border); }
.e-210c16c7 > .box.bg-4 .item:hover { background: var(--ot-bg-4-hover); }
.e-210c16c7 > .box.bg-4 .item > .count { background: var(--ot-bg-3); }

/* ===== BORDER ===== */

.e-210c16c7 > .box.border { border: 1px solid var(--ot-bg-2-border); }
.e-210c16c7 > .box.border-top { border-top: 1px solid var(--ot-bg-2-border); }
.e-210c16c7 > .box.border-right { border-right: 1px solid var(--ot-bg-2-border); }
.e-210c16c7 > .box.border-bottom { border-bottom: 1px solid var(--ot-bg-2-border); }
.e-210c16c7 > .box.border-left { border-left: 1px solid var(--ot-bg-2-border); }

.e-210c16c7 > .box.bg-1.border,
.e-210c16c7 > .box.bg-1.border-top,
.e-210c16c7 > .box.bg-1.border-right,
.e-210c16c7 > .box.bg-1.border-bottom,
.e-210c16c7 > .box.bg-1.border-left { border-color: var(--ot-bg-1-border); }

.e-210c16c7 > .box.bg-2.border,
.e-210c16c7 > .box.bg-2.border-top,
.e-210c16c7 > .box.bg-2.border-right,
.e-210c16c7 > .box.bg-2.border-bottom,
.e-210c16c7 > .box.bg-2.border-left { border-color: var(--ot-bg-2-border); }

.e-210c16c7 > .box.bg-3.border,
.e-210c16c7 > .box.bg-3.border-top,
.e-210c16c7 > .box.bg-3.border-right,
.e-210c16c7 > .box.bg-3.border-bottom,
.e-210c16c7 > .box.bg-3.border-left { border-color: var(--ot-bg-3-border); }

.e-210c16c7 > .box.bg-4.border,
.e-210c16c7 > .box.bg-4.border-top,
.e-210c16c7 > .box.bg-4.border-right,
.e-210c16c7 > .box.bg-4.border-bottom,
.e-210c16c7 > .box.bg-4.border-left { border-color: var(--ot-bg-4-border); }
/* ===== NAVIGATION STEPS ===== */

.e-36dc8444
{
	display: contents;
}

/* Box */

.e-36dc8444 > .box
{
	display: flex;
	width: 100%;
	border-radius: var(--ot-radius-l);
	overflow: hidden;
}

.e-36dc8444 > .box.vertical
{
	flex-direction: column;
}

.e-36dc8444 > .box.horizontal
{
	flex-direction: row;
	align-items: stretch;
}

/* Step */

.e-36dc8444 .step
{
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-m);
	background: transparent;
	border: none;
	text-align: left;
	font-family: var(--ot-font-primary);
	cursor: pointer;
	transition: background var(--ot-transition);
}

.e-36dc8444 > .box.vertical > .step
{
	width: 100%;
}

.e-36dc8444 > .box.horizontal > .step
{
	flex: 1;
	flex-direction: column;
	text-align: center;
	align-items: center;
}

.e-36dc8444 .step:hover:not(.disabled)
{
	background: var(--ot-bg-2-opacity);
}

/* Marker */

.e-36dc8444 .step > .marker
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border-radius: 50%;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	color: var(--ot-text-2);
	font-weight: 600;
	z-index: 1;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition), transform var(--ot-transition);
}

.e-36dc8444 .step > .marker > i
{
	font-variation-settings: 'wght' 500;
}

/* Text */

.e-36dc8444 .step > .text
{
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.e-36dc8444 .step > .text > .label
{
	font-weight: 600;
	color: var(--ot-text-2);
	line-height: 1.3;
	transition: color var(--ot-transition);
}

.e-36dc8444 .step > .text > .description
{
	color: var(--ot-text-3);
	line-height: 1.4;
	font-weight: 400;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

/* ===== STATES ===== */

/* Done */

.e-36dc8444 .step.done > .marker
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	color: #fff;
}

.e-36dc8444 .step.done > .text > .label
{
	color: var(--ot-text-1);
}

/* Active */

.e-36dc8444 .step.active > .marker
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	color: #fff;
	transform: scale(1.05);
	box-shadow: 0 0 0 4px var(--ot-brand-opacity);
}

.e-36dc8444 .step.active > .text > .label
{
	color: var(--ot-brand);
}

.e-36dc8444 .step.active > .text > .description
{
	color: var(--ot-text-2);
}

/* Disabled */

.e-36dc8444 .step.disabled
{
	cursor: not-allowed;
	opacity: 0.45;
}

.e-36dc8444 .step.disabled:hover
{
	background: transparent;
}

/* ===== CONNECTED ===== */

.e-36dc8444 > .box.vertical.connected > .step + .step::before
{
	content: '';
	position: absolute;
	width: 2px;
	background: var(--ot-bg-2-border);
	transition: background var(--ot-transition);
	z-index: 0;
}

.e-36dc8444 > .box.vertical.connected > .step.done + .step::before
{
	background: var(--ot-brand);
}

.e-36dc8444 > .box.horizontal.connected > .step + .step::before
{
	content: '';
	position: absolute;
	height: 2px;
	background: var(--ot-bg-2-border);
	transition: background var(--ot-transition);
	z-index: 0;
}

.e-36dc8444 > .box.horizontal.connected > .step.done + .step::before
{
	background: var(--ot-brand);
}

/* ===== CLEAN ===== */

.e-36dc8444 > .box.clean
{
	background: transparent !important;
	border: none !important;
	border-radius: 0;
}

/* ===== BACKGROUND ===== */

.e-36dc8444 > .box.bg-1 { background: var(--ot-bg-1); }
.e-36dc8444 > .box.bg-1 .step.upcoming > .marker { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-36dc8444 > .box.bg-1 .step:hover:not(.disabled) { background: var(--ot-bg-1-hover); }

.e-36dc8444 > .box.bg-2 { background: var(--ot-bg-2); }
.e-36dc8444 > .box.bg-2 .step.upcoming > .marker { background: var(--ot-bg-1); border-color: var(--ot-bg-2-border); }
.e-36dc8444 > .box.bg-2 .step:hover:not(.disabled) { background: var(--ot-bg-2-hover); }

.e-36dc8444 > .box.bg-3 { background: var(--ot-bg-3); }
.e-36dc8444 > .box.bg-3 .step.upcoming > .marker { background: var(--ot-bg-2); border-color: var(--ot-bg-3-border); }
.e-36dc8444 > .box.bg-3 .step:hover:not(.disabled) { background: var(--ot-bg-3-hover); }

.e-36dc8444 > .box.bg-4 { background: var(--ot-bg-4); }
.e-36dc8444 > .box.bg-4 .step.upcoming > .marker { background: var(--ot-bg-3); border-color: var(--ot-bg-4-border); }
.e-36dc8444 > .box.bg-4 .step:hover:not(.disabled) { background: var(--ot-bg-4-hover); }

/* ===== BORDER ===== */

.e-36dc8444 > .box.border { border: 1px solid var(--ot-bg-2-border); }
.e-36dc8444 > .box.border-top { border-top: 1px solid var(--ot-bg-2-border); }
.e-36dc8444 > .box.border-right { border-right: 1px solid var(--ot-bg-2-border); }
.e-36dc8444 > .box.border-bottom { border-bottom: 1px solid var(--ot-bg-2-border); }
.e-36dc8444 > .box.border-left { border-left: 1px solid var(--ot-bg-2-border); }

.e-36dc8444 > .box.bg-1.border,
.e-36dc8444 > .box.bg-1.border-top,
.e-36dc8444 > .box.bg-1.border-right,
.e-36dc8444 > .box.bg-1.border-bottom,
.e-36dc8444 > .box.bg-1.border-left { border-color: var(--ot-bg-1-border); }

.e-36dc8444 > .box.bg-2.border,
.e-36dc8444 > .box.bg-2.border-top,
.e-36dc8444 > .box.bg-2.border-right,
.e-36dc8444 > .box.bg-2.border-bottom,
.e-36dc8444 > .box.bg-2.border-left { border-color: var(--ot-bg-2-border); }

.e-36dc8444 > .box.bg-3.border,
.e-36dc8444 > .box.bg-3.border-top,
.e-36dc8444 > .box.bg-3.border-right,
.e-36dc8444 > .box.bg-3.border-bottom,
.e-36dc8444 > .box.bg-3.border-left { border-color: var(--ot-bg-3-border); }

.e-36dc8444 > .box.bg-4.border,
.e-36dc8444 > .box.bg-4.border-top,
.e-36dc8444 > .box.bg-4.border-right,
.e-36dc8444 > .box.bg-4.border-bottom,
.e-36dc8444 > .box.bg-4.border-left { border-color: var(--ot-bg-4-border); }

/* Connected line per background */

.e-36dc8444 > .box.bg-1.connected > .step + .step::before { background: var(--ot-bg-1-border); }
.e-36dc8444 > .box.bg-2.connected > .step + .step::before { background: var(--ot-bg-2-border); }
.e-36dc8444 > .box.bg-3.connected > .step + .step::before { background: var(--ot-bg-3-border); }
.e-36dc8444 > .box.bg-4.connected > .step + .step::before { background: var(--ot-bg-4-border); }

.e-36dc8444 > .box.bg-1.connected > .step.done + .step::before,
.e-36dc8444 > .box.bg-2.connected > .step.done + .step::before,
.e-36dc8444 > .box.bg-3.connected > .step.done + .step::before,
.e-36dc8444 > .box.bg-4.connected > .step.done + .step::before { background: var(--ot-brand); }

/* ===== SIZE — vertical ===== */

.e-36dc8444 > .box.vertical.size-s > .step { padding: var(--ot-spacing-s) var(--ot-spacing-m); gap: var(--ot-spacing-s); }
.e-36dc8444 > .box.vertical.size-s .step > .marker { width: 24px; height: 24px; font-size: 11px; }
.e-36dc8444 > .box.vertical.size-s .step > .marker > i { font-size: 15px; }
.e-36dc8444 > .box.vertical.size-s .step > .text > .label { font-size: 12px; }
.e-36dc8444 > .box.vertical.size-s .step > .text > .description { font-size: 10.5px; }
.e-36dc8444 > .box.vertical.size-s.connected > .step + .step::before
{
	left: calc(var(--ot-spacing-m) + 12px - 1px);
	top: calc(-1 * var(--ot-spacing-s));
	height: calc(var(--ot-spacing-s) * 2);
}

.e-36dc8444 > .box.vertical.size-m > .step { padding: var(--ot-spacing-m); gap: var(--ot-spacing-m); }
.e-36dc8444 > .box.vertical.size-m .step > .marker { width: 32px; height: 32px; font-size: 13px; }
.e-36dc8444 > .box.vertical.size-m .step > .marker > i { font-size: 18px; }
.e-36dc8444 > .box.vertical.size-m .step > .text > .label { font-size: 13px; }
.e-36dc8444 > .box.vertical.size-m .step > .text > .description { font-size: 11.5px; }
.e-36dc8444 > .box.vertical.size-m.connected > .step + .step::before
{
	left: calc(var(--ot-spacing-m) + 16px - 1px);
	top: calc(-1 * var(--ot-spacing-m));
	height: calc(var(--ot-spacing-m) * 2);
}

.e-36dc8444 > .box.vertical.size-l > .step { padding: var(--ot-spacing-l) var(--ot-spacing-m); gap: var(--ot-spacing-m); }
.e-36dc8444 > .box.vertical.size-l .step > .marker { width: 40px; height: 40px; font-size: 15px; }
.e-36dc8444 > .box.vertical.size-l .step > .marker > i { font-size: 20px; }
.e-36dc8444 > .box.vertical.size-l .step > .text > .label { font-size: 15px; }
.e-36dc8444 > .box.vertical.size-l .step > .text > .description { font-size: 13px; }
.e-36dc8444 > .box.vertical.size-l.connected > .step + .step::before
{
	left: calc(var(--ot-spacing-m) + 20px - 1px);
	top: calc(-1 * var(--ot-spacing-l));
	height: calc(var(--ot-spacing-l) * 2);
}

/* ===== SIZE — horizontal ===== */

.e-36dc8444 > .box.horizontal.size-s > .step { padding: var(--ot-spacing-s); gap: var(--ot-spacing-x); }
.e-36dc8444 > .box.horizontal.size-s .step > .marker { width: 24px; height: 24px; font-size: 11px; }
.e-36dc8444 > .box.horizontal.size-s .step > .marker > i { font-size: 15px; }
.e-36dc8444 > .box.horizontal.size-s .step > .text > .label { font-size: 12px; }
.e-36dc8444 > .box.horizontal.size-s .step > .text > .description { font-size: 10.5px; }
.e-36dc8444 > .box.horizontal.size-s.connected > .step + .step::before
{
	top: calc(var(--ot-spacing-s) + 12px - 1px);
	left: calc(-50% + 12px);
	width: calc(100% - 24px);
}

.e-36dc8444 > .box.horizontal.size-m > .step { padding: var(--ot-spacing-m); gap: var(--ot-spacing-s); }
.e-36dc8444 > .box.horizontal.size-m .step > .marker { width: 32px; height: 32px; font-size: 13px; }
.e-36dc8444 > .box.horizontal.size-m .step > .marker > i { font-size: 18px; }
.e-36dc8444 > .box.horizontal.size-m .step > .text > .label { font-size: 13px; }
.e-36dc8444 > .box.horizontal.size-m .step > .text > .description { font-size: 11.5px; }
.e-36dc8444 > .box.horizontal.size-m.connected > .step + .step::before
{
	top: calc(var(--ot-spacing-m) + 16px - 1px);
	left: calc(-50% + 16px);
	width: calc(100% - 32px);
}

.e-36dc8444 > .box.horizontal.size-l > .step { padding: var(--ot-spacing-l) var(--ot-spacing-m); gap: var(--ot-spacing-s); }
.e-36dc8444 > .box.horizontal.size-l .step > .marker { width: 40px; height: 40px; font-size: 15px; }
.e-36dc8444 > .box.horizontal.size-l .step > .marker > i { font-size: 20px; }
.e-36dc8444 > .box.horizontal.size-l .step > .text > .label { font-size: 15px; }
.e-36dc8444 > .box.horizontal.size-l .step > .text > .description { font-size: 13px; }
.e-36dc8444 > .box.horizontal.size-l.connected > .step + .step::before
{
	top: calc(var(--ot-spacing-l) + 20px - 1px);
	left: calc(-50% + 20px);
	width: calc(100% - 40px);
}
/* ===== NAVIGATION TABS ===== */

.e-1a8b6ac1
{
	display: contents;
}

/* Box */

.e-1a8b6ac1 > .box
{
	display: flex;
	flex-direction: column;
}

/* Tabs nav */

.e-1a8b6ac1 > .box > .tabs
{
	display: flex;
	align-items: center;
	overflow-x: auto;
	scrollbar-width: none;
	overflow: hidden;
}

.e-1a8b6ac1 > .box > .tabs::-webkit-scrollbar
{
	display: none;
}

/* Tab base */

.e-1a8b6ac1 .tab
{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-s);
	white-space: nowrap;
	cursor: pointer;
	text-decoration: none;
	font-family: var(--ot-font-primary);
	font-weight: 500;
	color: var(--ot-text-2);
	user-select: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition);
}

.e-1a8b6ac1 .tab:hover:not(.disabled)
{
	color: var(--ot-text-1);
}

.e-1a8b6ac1 .tab.active
{
	color: var(--ot-text-1);
	font-weight: 600;
}

.e-1a8b6ac1 .tab.disabled
{
	cursor: not-allowed;
	opacity: 0.45;
}

/* Count badge */

.e-1a8b6ac1 .tab > .count
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	padding: 0 6px;
	background: var(--ot-bg-2);
	border-radius: 100px;
	font-size: 10.5px;
	font-weight: 600;
	color: var(--ot-text-3);
	line-height: 18px;
	font-family: var(--ot-font-primary);
}

.e-1a8b6ac1 .tab.active > .count
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

/* Content panels */

.e-1a8b6ac1 > .box > .body
{
	padding-top: var(--ot-spacing-l);
}

/* When a background or border is set, wrap the panel content in a card. */

.e-1a8b6ac1 > .box.border > .body,
.e-1a8b6ac1 > .box.bg-1 > .body,
.e-1a8b6ac1 > .box.bg-2 > .body,
.e-1a8b6ac1 > .box.bg-3 > .body,
.e-1a8b6ac1 > .box.bg-4 > .body
{
	margin-top: var(--ot-spacing-s);
	padding: var(--ot-spacing-m) var(--ot-spacing-l);
	border-radius: var(--ot-radius-l);
}

.e-1a8b6ac1 > .box.bg-1 > .body { background: var(--ot-bg-1); }
.e-1a8b6ac1 > .box.bg-2 > .body { background: var(--ot-bg-2); }
.e-1a8b6ac1 > .box.bg-3 > .body { background: var(--ot-bg-3); }
.e-1a8b6ac1 > .box.bg-4 > .body { background: var(--ot-bg-4); }

.e-1a8b6ac1 > .box.border > .body
{
	border: 1px solid var(--ot-bg-2-border);
}

.e-1a8b6ac1 > .box > .body .panel
{
	display: none;
}

.e-1a8b6ac1 > .box > .body .panel.active
{
	display: block;
	animation: e-1a8b6ac1-fade 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes e-1a8b6ac1-fade
{
	from { opacity: 0; transform: translateY(4px); }
	to { opacity: 1; transform: translateY(0); }
}

/* ===== TONE: UNDERLINE ===== */

.e-1a8b6ac1 > .box.underline > .tabs
{
	gap: var(--ot-spacing-l);
}

.e-1a8b6ac1 > .box.underline > .tabs > .tab
{
	padding: 14px 0;
}

.e-1a8b6ac1 > .box.underline > .tabs > .tab.active::after
{
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	right: 0;
	height: 2px;
	background: var(--ot-brand);
	border-radius: 2px 2px 0 0;
}

/* ===== TONE: PILLS ===== */

.e-1a8b6ac1 > .box.pills > .tabs
{
	gap: var(--ot-spacing-s);
}

.e-1a8b6ac1 > .box.pills > .tabs > .tab
{
	padding: 8px 16px;
	border-radius: 100px;
	background: transparent;
	border: 1px solid transparent;
}

.e-1a8b6ac1 > .box.pills > .tabs > .tab:hover:not(.disabled)
{
	background: var(--ot-bg-2);
}

.e-1a8b6ac1 > .box.pills > .tabs > .tab.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-1a8b6ac1 > .box.pills > .tabs > .tab.active > .count
{
	background: var(--ot-brand);
	color: white;
}

/* ===== TONE: CONTAINED ===== */

.e-1a8b6ac1 > .box.contained > .tabs
{
	padding: var(--ot-spacing-x);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	gap: 2px;
}

.e-1a8b6ac1 > .box.contained > .tabs > .tab
{
	padding: 8px 14px;
	border-radius: calc(var(--ot-radius-m) - 2px);
}

.e-1a8b6ac1 > .box.contained > .tabs > .tab:hover:not(.disabled)
{
	background: var(--ot-bg-2-hover);
}

.e-1a8b6ac1 > .box.contained > .tabs > .tab.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-1a8b6ac1 > .box.contained > .tabs > .tab.active > .count
{
	background: var(--ot-brand);
	color: white;
}

/* ===== TONE: SEGMENTED ===== */

.e-1a8b6ac1 > .box.segmented > .tabs
{
	padding: 3px;
	background: var(--ot-bg-3);
	border-radius: 100px;
	gap: 0;
	display: inline-flex;
	align-self: flex-start;
}

.e-1a8b6ac1 > .box.segmented > .tabs > .tab
{
	padding: 8px 18px;
	border-radius: 100px;
	flex: 1;
}

.e-1a8b6ac1 > .box.border.segmented > .tabs { border: 1px solid var(--ot-bg-2-border); }
.e-1a8b6ac1 > .box.bg-1.border.segmented > .tabs { border-color: var(--ot-bg-1-border); }
.e-1a8b6ac1 > .box.bg-2.border.segmented > .tabs { border-color: var(--ot-bg-2-border); }
.e-1a8b6ac1 > .box.bg-3.border.segmented > .tabs { border-color: var(--ot-bg-3-border); }
.e-1a8b6ac1 > .box.bg-4.border.segmented > .tabs { border-color: var(--ot-bg-4-border); }

.e-1a8b6ac1 > .box.segmented > .tabs > .tab:hover:not(.disabled)
{
	color: var(--ot-text-1);
}

.e-1a8b6ac1 > .box.segmented > .tabs > .tab.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

.e-1a8b6ac1 > .box.segmented > .tabs > .tab.active > .count
{
	background: var(--ot-brand);
	color: white;
}

/* ===== BACKGROUND ===== */

/* underline / pills — bg on box */

.e-1a8b6ac1 > .box.bg-1.underline,
.e-1a8b6ac1 > .box.bg-1.pills { background: var(--ot-bg-1); padding: 0 var(--ot-spacing-m); }

.e-1a8b6ac1 > .box.bg-2.underline,
.e-1a8b6ac1 > .box.bg-2.pills { background: var(--ot-bg-2); padding: 0 var(--ot-spacing-m); }

.e-1a8b6ac1 > .box.bg-3.underline,
.e-1a8b6ac1 > .box.bg-3.pills { background: var(--ot-bg-3); padding: 0 var(--ot-spacing-m); }

.e-1a8b6ac1 > .box.bg-4.underline,
.e-1a8b6ac1 > .box.bg-4.pills { background: var(--ot-bg-4); padding: 0 var(--ot-spacing-m); }

/* contained — bg on track */

.e-1a8b6ac1 > .box.bg-1.contained > .tabs { background: var(--ot-bg-1); border-color: var(--ot-bg-1-border); }
.e-1a8b6ac1 > .box.bg-2.contained > .tabs { background: var(--ot-bg-2); border-color: var(--ot-bg-2-border); }
.e-1a8b6ac1 > .box.bg-3.contained > .tabs { background: var(--ot-bg-3); border-color: var(--ot-bg-3-border); }
.e-1a8b6ac1 > .box.bg-4.contained > .tabs { background: var(--ot-bg-4); border-color: var(--ot-bg-4-border); }

/* segmented — bg on track */

.e-1a8b6ac1 > .box.bg-1.segmented > .tabs { background: var(--ot-bg-1); }
.e-1a8b6ac1 > .box.bg-2.segmented > .tabs { background: var(--ot-bg-2); }
.e-1a8b6ac1 > .box.bg-3.segmented > .tabs { background: var(--ot-bg-3); }
.e-1a8b6ac1 > .box.bg-4.segmented > .tabs { background: var(--ot-bg-4); }

/* pills hover per bg */

.e-1a8b6ac1 > .box.bg-1.pills > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-1-hover); }
.e-1a8b6ac1 > .box.bg-2.pills > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-2-hover); }
.e-1a8b6ac1 > .box.bg-3.pills > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-3-hover); }
.e-1a8b6ac1 > .box.bg-4.pills > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-4-hover); }

/* contained hover per bg */

.e-1a8b6ac1 > .box.bg-1.contained > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-1-hover); }
.e-1a8b6ac1 > .box.bg-2.contained > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-2-hover); }
.e-1a8b6ac1 > .box.bg-3.contained > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-3-hover); }
.e-1a8b6ac1 > .box.bg-4.contained > .tabs > .tab:hover:not(.disabled) { background: var(--ot-bg-4-hover); }

/* count badge per bg */

.e-1a8b6ac1 > .box.bg-1 .tab > .count { background: var(--ot-bg-2); }
.e-1a8b6ac1 > .box.bg-2 .tab > .count { background: var(--ot-bg-3); }
.e-1a8b6ac1 > .box.bg-3 .tab > .count { background: var(--ot-bg-4); }
.e-1a8b6ac1 > .box.bg-4 .tab > .count { background: var(--ot-bg-3); }

/* ===== BORDER ===== */

.e-1a8b6ac1 > .box.border.underline,
.e-1a8b6ac1 > .box.border.pills { border-bottom: 1px solid var(--ot-bg-2-border); }

.e-1a8b6ac1 > .box.bg-1.border.underline,
.e-1a8b6ac1 > .box.bg-1.border.pills { border-bottom-color: var(--ot-bg-1-border); }

.e-1a8b6ac1 > .box.bg-2.border.underline,
.e-1a8b6ac1 > .box.bg-2.border.pills { border-bottom-color: var(--ot-bg-2-border); }

.e-1a8b6ac1 > .box.bg-3.border.underline,
.e-1a8b6ac1 > .box.bg-3.border.pills { border-bottom-color: var(--ot-bg-3-border); }

.e-1a8b6ac1 > .box.bg-4.border.underline,
.e-1a8b6ac1 > .box.bg-4.border.pills { border-bottom-color: var(--ot-bg-4-border); }

/* ===== STRETCH ===== */

.e-1a8b6ac1 > .box.stretch > .tabs
{
	width: 100%;
}

.e-1a8b6ac1 > .box.stretch.segmented > .tabs
{
	align-self: stretch;
}

.e-1a8b6ac1 > .box.stretch > .tabs > .tab
{
	flex: 1;
}

/* ===== SIZE: S ===== */

.e-1a8b6ac1 > .box.size-s .tab
{
	font-size: 12px;
}

.e-1a8b6ac1 > .box.size-s .tab > i
{
	font-size: 14px;
}

.e-1a8b6ac1 > .box.size-s .tab > .count
{
	min-width: 16px;
	font-size: 10px;
	line-height: 16px;
	padding: 0 5px;
}

.e-1a8b6ac1 > .box.size-s.underline > .tabs > .tab { padding: 10px 0; }
.e-1a8b6ac1 > .box.size-s.underline > .tabs { gap: var(--ot-spacing-m); }
.e-1a8b6ac1 > .box.size-s.pills > .tabs > .tab { padding: 6px 12px; }
.e-1a8b6ac1 > .box.size-s.contained > .tabs > .tab { padding: 6px 10px; }
.e-1a8b6ac1 > .box.size-s.segmented > .tabs > .tab { padding: 6px 14px; }

/* ===== SIZE: M ===== */

.e-1a8b6ac1 > .box.size-m .tab
{
	font-size: 13px;
}

.e-1a8b6ac1 > .box.size-m .tab > i
{
	font-size: 16px;
}

/* ===== SIZE: L ===== */

.e-1a8b6ac1 > .box.size-l .tab
{
	font-size: 14px;
}

.e-1a8b6ac1 > .box.size-l .tab > i
{
	font-size: 18px;
}

.e-1a8b6ac1 > .box.size-l .tab > .count
{
	min-width: 22px;
	font-size: 11.5px;
	line-height: 22px;
	padding: 0 8px;
}

.e-1a8b6ac1 > .box.size-l.underline > .tabs > .tab { padding: 18px 0; }
.e-1a8b6ac1 > .box.size-l.pills > .tabs > .tab { padding: 12px 22px; }
.e-1a8b6ac1 > .box.size-l.contained > .tabs > .tab { padding: 12px 18px; }
.e-1a8b6ac1 > .box.size-l.segmented > .tabs > .tab { padding: 12px 24px; }
/* ===== STATUS CODE ===== */

.e-471f3f12
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 320px;
	padding: var(--ot-spacing-l);
}

/* Box */

.e-471f3f12 > .box
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-m);
	text-align: center;
	max-width: 480px;
}

/* Code number */

.e-471f3f12 > .box > .code
{
	font-family: var(--ot-font-secondary);
	font-size: 140px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.04em;
	color: var(--ot-brand);
	background: linear-gradient(180deg, var(--ot-brand) 0%, var(--ot-brand-hover) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	font-variation-settings: 'opsz' 144;
	user-select: none;
	margin-bottom: var(--ot-spacing-s);
}

/* Title */

.e-471f3f12 > .box > .title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	line-height: 1.15;
	font-variation-settings: 'opsz' 144;
}

/* Description */

.e-471f3f12 > .box > .description
{
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
}

/* ===== COLOR ===== */

.e-471f3f12 > .box.brand > .code  { background: linear-gradient(180deg, var(--ot-brand) 0%, var(--ot-brand-hover) 100%);   -webkit-background-clip: text; background-clip: text; }
.e-471f3f12 > .box.blue > .code   { background: linear-gradient(180deg, var(--ot-blue) 0%, var(--ot-blue-hover) 100%);     -webkit-background-clip: text; background-clip: text; }
.e-471f3f12 > .box.red > .code    { background: linear-gradient(180deg, var(--ot-red) 0%, var(--ot-red-hover) 100%);       -webkit-background-clip: text; background-clip: text; }
.e-471f3f12 > .box.orange > .code { background: linear-gradient(180deg, var(--ot-orange) 0%, var(--ot-orange-hover) 100%); -webkit-background-clip: text; background-clip: text; }
.e-471f3f12 > .box.green > .code  { background: linear-gradient(180deg, var(--ot-green) 0%, var(--ot-green-hover) 100%);   -webkit-background-clip: text; background-clip: text; }

/* ===== SIZE ===== */

.e-471f3f12 > .box.size-s
{
	min-height: 240px;
	padding: var(--ot-spacing-m);
}

.e-471f3f12 > .box.size-s > .code        { font-size: 96px; }
.e-471f3f12 > .box.size-s > .title       { font-size: 20px; }
.e-471f3f12 > .box.size-s > .description { font-size: var(--ot-size-m); }

.e-471f3f12 > .box.size-m > .code  { font-size: 140px; }
.e-471f3f12 > .box.size-m > .title { font-size: 26px; }

.e-471f3f12 > .box.size-l
{
	min-height: 480px;
}

.e-471f3f12 > .box.size-l > .code        { font-size: 200px; letter-spacing: -0.05em; }
.e-471f3f12 > .box.size-l > .title       { font-size: 36px; }
.e-471f3f12 > .box.size-l > .description { font-size: 16px; max-width: 560px; }
/* ===== STATUS EMPTY ===== */

.e-631be738
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 320px;
	padding: var(--ot-spacing-l);
}

/* Box */

.e-631be738 > .box
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-m);
	text-align: center;
	max-width: 420px;
}

/* Circle */

.e-631be738 > .box > .circle
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	margin-bottom: var(--ot-spacing-s);
}

.e-631be738 > .box > .circle::before
{
	content: '';
	position: absolute;
	inset: -8px;
	border-radius: 50%;
	opacity: 0.6;
}

.e-631be738 > .box > .circle > i
{
	font-size: 32px;
	font-variation-settings: 'wght' 400;
}

/* Title */

.e-631be738 > .box > .title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-weight: 500;
	font-size: 22px;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	line-height: 1.2;
	font-variation-settings: 'opsz' 144;
}

/* Description */

.e-631be738 > .box > .description
{
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
}

/* ===== COLOR ===== */

.e-631be738 > .box.brand > .circle { background: var(--ot-brand-opacity); color: var(--ot-brand); }
.e-631be738 > .box.brand > .circle::before { border: 1px dashed var(--ot-brand-opacity); }

.e-631be738 > .box.blue > .circle { background: var(--ot-blue-opacity); color: var(--ot-blue); }
.e-631be738 > .box.blue > .circle::before { border: 1px dashed var(--ot-blue-opacity); }

.e-631be738 > .box.red > .circle { background: var(--ot-red-opacity); color: var(--ot-red); }
.e-631be738 > .box.red > .circle::before { border: 1px dashed var(--ot-red-opacity); }

.e-631be738 > .box.orange > .circle { background: var(--ot-orange-opacity); color: var(--ot-orange); }
.e-631be738 > .box.orange > .circle::before { border: 1px dashed var(--ot-orange-opacity); }

.e-631be738 > .box.green > .circle { background: var(--ot-green-opacity); color: var(--ot-green); }
.e-631be738 > .box.green > .circle::before { border: 1px dashed var(--ot-green-opacity); }

/* ===== SIZE ===== */

.e-631be738 > .box.size-s
{
	max-width: 360px;
}

.e-631be738 > .box.size-s > .circle { width: 56px; height: 56px; }
.e-631be738 > .box.size-s > .circle > i { font-size: 26px; }
.e-631be738 > .box.size-s > .title { font-size: 18px; }
.e-631be738 > .box.size-s > .description { font-size: var(--ot-size-m); }

.e-631be738 > .box.size-l
{
	max-width: 500px;
}

.e-631be738 > .box.size-l > .circle { width: 96px; height: 96px; }
.e-631be738 > .box.size-l > .circle::before { inset: -10px; }
.e-631be738 > .box.size-l > .circle > i { font-size: 44px; }
.e-631be738 > .box.size-l > .title { font-size: 28px; }
.e-631be738 > .box.size-l > .description { font-size: 15px; }
/* ===== STATUS ERROR ===== */

.e-63199a7d
{
	display: contents;
}

/* Box */

.e-63199a7d > .box
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-m);
	text-align: center;
	width: 100%;
	min-height: 320px;
	padding: var(--ot-spacing-l);
}

/* Inner */

.e-63199a7d > .box > .inner
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-m);
	max-width: 420px;
}

/* Circle */

.e-63199a7d > .box > .inner > .circle
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: var(--ot-red-opacity);
	color: var(--ot-red);
	margin-bottom: var(--ot-spacing-s);
}

.e-63199a7d > .box > .inner > .circle::before
{
	content: '';
	position: absolute;
	inset: -10px;
	border-radius: 50%;
	border: 1px solid var(--ot-red-opacity);
	animation: e-63199a7d-pulse 2.4s ease-in-out infinite;
}

@keyframes e-63199a7d-pulse
{
	0%, 100% { transform: scale(1); opacity: 0.6; }
	50% { transform: scale(1.08); opacity: 0.2; }
}

.e-63199a7d > .box > .inner > .circle > i
{
	font-size: 36px;
	font-variation-settings: 'FILL' 1, 'wght' 400;
}

/* Title */

.e-63199a7d > .box > .inner > .title
{
	margin: 0;
	font-family: var(--ot-font-secondary);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	line-height: 1.2;
	font-variation-settings: 'opsz' 144;
}

/* Description */

.e-63199a7d > .box > .inner > .description
{
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
}

/* ===== COLOR ===== */

.e-63199a7d > .box.brand > .inner > .circle { background: var(--ot-brand-opacity); color: var(--ot-brand); }
.e-63199a7d > .box.brand > .inner > .circle::before { border-color: var(--ot-brand-opacity); }

.e-63199a7d > .box.blue > .inner > .circle { background: var(--ot-blue-opacity); color: var(--ot-blue); }
.e-63199a7d > .box.blue > .inner > .circle::before { border-color: var(--ot-blue-opacity); }

.e-63199a7d > .box.red > .inner > .circle { background: var(--ot-red-opacity); color: var(--ot-red); }
.e-63199a7d > .box.red > .inner > .circle::before { border-color: var(--ot-red-opacity); }

.e-63199a7d > .box.orange > .inner > .circle { background: var(--ot-orange-opacity); color: var(--ot-orange); }
.e-63199a7d > .box.orange > .inner > .circle::before { border-color: var(--ot-orange-opacity); }

.e-63199a7d > .box.green > .inner > .circle { background: var(--ot-green-opacity); color: var(--ot-green); }
.e-63199a7d > .box.green > .inner > .circle::before { border-color: var(--ot-green-opacity); }

/* ===== SIZE ===== */

.e-63199a7d > .box.size-s
{
	min-height: 240px;
	padding: var(--ot-spacing-m);
}

.e-63199a7d > .box.size-s > .inner > .circle { width: 60px; height: 60px; }
.e-63199a7d > .box.size-s > .inner > .circle > i { font-size: 28px; }
.e-63199a7d > .box.size-s > .inner > .title { font-size: 18px; }
.e-63199a7d > .box.size-s > .inner > .description { font-size: 13px; }

.e-63199a7d > .box.size-m > .inner > .circle { width: 80px; height: 80px; }
.e-63199a7d > .box.size-m > .inner > .title { font-size: 22px; }

.e-63199a7d > .box.size-l
{
	min-height: 440px;
}

.e-63199a7d > .box.size-l > .inner > .circle { width: 104px; height: 104px; }
.e-63199a7d > .box.size-l > .inner > .circle > i { font-size: 48px; }
.e-63199a7d > .box.size-l > .inner > .title { font-size: 28px; }
.e-63199a7d > .box.size-l > .inner > .description { font-size: 15px; max-width: 500px; }
/* ===== STATUS LOADING ===== */

.e-691b81f7
{
	display: contents;
}

/* Box */

.e-691b81f7 > .box
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-m);
	width: 100%;
	min-height: 320px;
	padding: var(--ot-spacing-l);
}

/* Circle */

.e-691b81f7 > .box > .circle
{
	position: relative;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	border: 2px solid var(--ot-bg-3-border);
	display: flex;
	align-items: center;
	justify-content: center;
	animation: e-691b81f7-pulse 2.4s ease-in-out infinite;
}

.e-691b81f7 > .box > .circle::before
{
	content: '';
	position: absolute;
	inset: -10px;
	border-radius: 50%;
	border: 1px dashed var(--ot-bg-3-border);
	opacity: 0.5;
	animation: e-691b81f7-pulse 2.4s ease-in-out infinite reverse;
}

.e-691b81f7 > .box > .circle > .spin
{
	font-size: 32px;
	animation: e-691b81f7-spin 0.8s linear infinite;
}

/* Text */

.e-691b81f7 > .box > .text
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	font-family: var(--ot-font-primary);
}

/* ===== COLOR ===== */

.e-691b81f7 > .box.brand > .circle { border-color: var(--ot-brand-opacity); }
.e-691b81f7 > .box.brand > .circle::before { border-color: var(--ot-brand-opacity); }
.e-691b81f7 > .box.brand > .circle > .spin { color: var(--ot-brand); }

.e-691b81f7 > .box.blue > .circle { border-color: var(--ot-blue-opacity); }
.e-691b81f7 > .box.blue > .circle::before { border-color: var(--ot-blue-opacity); }
.e-691b81f7 > .box.blue > .circle > .spin { color: var(--ot-blue); }

.e-691b81f7 > .box.red > .circle { border-color: var(--ot-red-opacity); }
.e-691b81f7 > .box.red > .circle::before { border-color: var(--ot-red-opacity); }
.e-691b81f7 > .box.red > .circle > .spin { color: var(--ot-red); }

.e-691b81f7 > .box.orange > .circle { border-color: var(--ot-orange-opacity); }
.e-691b81f7 > .box.orange > .circle::before { border-color: var(--ot-orange-opacity); }
.e-691b81f7 > .box.orange > .circle > .spin { color: var(--ot-orange); }

.e-691b81f7 > .box.green > .circle { border-color: var(--ot-green-opacity); }
.e-691b81f7 > .box.green > .circle::before { border-color: var(--ot-green-opacity); }
.e-691b81f7 > .box.green > .circle > .spin { color: var(--ot-green); }

/* ===== SIZE ===== */

.e-691b81f7 > .box.size-s
{
	min-height: 200px;
	padding: var(--ot-spacing-m);
}

.e-691b81f7 > .box.size-s > .circle { width: 56px; height: 56px; }
.e-691b81f7 > .box.size-s > .circle > .spin { font-size: 24px; }
.e-691b81f7 > .box.size-s > .text { font-size: var(--ot-size-s); }

.e-691b81f7 > .box.size-l
{
	min-height: 440px;
}

.e-691b81f7 > .box.size-l > .circle { width: 104px; height: 104px; }
.e-691b81f7 > .box.size-l > .circle > .spin { font-size: 44px; }
.e-691b81f7 > .box.size-l > .text { font-size: 15px; }

/* ===== AUTO ===== */

.e-691b81f7 > .box.auto
{
	min-height: auto;
}

/* ===== ANIMATIONS ===== */

@keyframes e-691b81f7-spin
{
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

@keyframes e-691b81f7-pulse
{
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: 0.5; transform: scale(1.02); }
}
/* ===== VARIABLE BUILDER ===== */

.e-66c5db60
{
	display: contents;
}

/* Box */

.e-66c5db60 > .box
{
	display: flex;
	flex-direction: column;
	width: 70vw;
	max-width: 1000px;
	max-height: 90vh;
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-1-border);
	border-radius: var(--ot-radius-l);
	overflow: hidden;
}

/* ===== HEAD ===== */

.e-66c5db60 > .box > .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	border-bottom: 1px solid var(--ot-bg-1-border);
	flex-shrink: 0;
}

.e-66c5db60 > .box > .head > .head-icon
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	background: var(--ot-brand-opacity);
	border-radius: var(--ot-radius-s);
	color: var(--ot-brand);
	flex-shrink: 0;
}

.e-66c5db60 > .box > .head > .head-icon > i
{
	font-size: 16px;
}

.e-66c5db60 > .box > .head > .head-text
{
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.e-66c5db60 > .box > .head > .head-text > .head-eyebrow
{
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ot-text-3);
}

.e-66c5db60 > .box > .head > .head-text > .head-title
{
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
}

.e-66c5db60 > .box > .head > .head-close
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: var(--ot-height-s);
	height: var(--ot-height-s);
	padding: 0;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-2);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-66c5db60 > .box > .head > .head-close:hover
{
	background: var(--ot-bg-3);
	color: var(--ot-text-1);
}

.e-66c5db60 > .box > .head > .head-close > i
{
	font-size: 14px;
}

/* ===== BODY ===== */

.e-66c5db60 > .box > .body
{
	flex: 1;
	display: grid;
	grid-template-columns: 320px 1fr;
	min-height: 0;
	overflow: hidden;
}

/* ===== PICKER ===== */

.e-66c5db60 > .box > .body > .picker
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border-right: 1px solid var(--ot-bg-1-border);
	min-height: 0;
	overflow: hidden;
}

.e-66c5db60 > .box > .body > .picker > .picker-head
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;
}

.e-66c5db60 > .box > .body > .picker > .picker-head > .picker-label
{
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ot-text-3);
}

.e-66c5db60 > .box > .body > .picker > .picker-head > .picker-count
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 18px;
	padding: 0 6px;
	background: var(--ot-bg-3);
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
	color: var(--ot-text-2);
}

/* Picker search */

.e-66c5db60 > .box > .body > .picker > .picker-search
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-shrink: 0;
	padding: 0 var(--ot-spacing-s);
	height: var(--ot-height-s);
	background: var(--ot-bg-1);
	border: 1px solid var(--ot-bg-1-border);
	border-radius: var(--ot-radius-s);
	transition: border-color var(--ot-transition);
}

.e-66c5db60 > .box > .body > .picker > .picker-search:focus-within
{
	border-color: var(--ot-brand);
}

.e-66c5db60 > .box > .body > .picker > .picker-search > i
{
	font-size: 14px;
	color: var(--ot-text-3);
	flex-shrink: 0;
}

.e-66c5db60 > .box > .body > .picker > .picker-search > input
{
	flex: 1;
	min-width: 0;
	padding: 0;
	background: transparent;
	border: none;
	outline: none;
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	color: var(--ot-text-1);
}

.e-66c5db60 > .box > .body > .picker > .picker-search > input::placeholder
{
	color: var(--ot-text-3);
}

/* Picker tree */

.e-66c5db60 > .box > .body > .picker > .picker-tree
{
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 1px;
	overflow-y: auto;
	min-height: 0;
	scrollbar-width: thin;
	scrollbar-color: var(--ot-bg-3) transparent;
}

.e-66c5db60 > .box > .body > .picker > .picker-tree::-webkit-scrollbar
{
	width: 6px;
}

.e-66c5db60 > .box > .body > .picker > .picker-tree::-webkit-scrollbar-thumb
{
	background: var(--ot-bg-3);
	border-radius: 100px;
}

/* Node */

.e-66c5db60 .node
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	padding: 0 var(--ot-spacing-s) 0 calc(var(--ot-spacing-s) + var(--depth, 0) * 14px);
	height: 28px;
	background: transparent;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-1);
	font-family: var(--ot-font-primary);
	font-size: var(--ot-size-s);
	text-align: left;
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), border-color var(--ot-transition);
}

.e-66c5db60 .node:hover
{
	background: var(--ot-bg-3);
}

.e-66c5db60 .node.active
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand-opacity);
}

/* Chevron */

.e-66c5db60 .node > .node-chevron
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 14px;
	height: 14px;
	color: var(--ot-text-3);
}

.e-66c5db60 .node > .node-chevron > i
{
	font-size: 14px;
	transition: transform var(--ot-transition);
}

.e-66c5db60 .node.expandable.expanded > .node-chevron > i
{
	transform: rotate(90deg);
}

/* Key */

.e-66c5db60 .node > .node-key
{
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-1);
	flex-shrink: 0;
}

/* Preview value */

.e-66c5db60 .node > .node-preview
{
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

/* Type chip */

.e-66c5db60 .node > .node-type
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	padding: 2px 6px;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 100px;
	background: var(--ot-bg-1);
	color: var(--ot-text-3);
}

.e-66c5db60 .node.type-object  > .node-type { background: rgba(56,189,248,0.12);  color: var(--ot-blue); }
.e-66c5db60 .node.type-array   > .node-type { background: rgba(251,146,60,0.12);  color: var(--ot-orange); }
.e-66c5db60 .node.type-string  > .node-type { background: rgba(52,211,153,0.12);  color: var(--ot-green); }
.e-66c5db60 .node.type-number  > .node-type { background: rgba(226,112,85,0.12);  color: var(--ot-brand); }
.e-66c5db60 .node.type-boolean > .node-type { background: rgba(244,63,94,0.12);   color: var(--ot-red); }
.e-66c5db60 .node.type-date    > .node-type { background: var(--ot-bg-3);          color: var(--ot-text-2); }
.e-66c5db60 .node.type-null    > .node-type { background: var(--ot-bg-3);          color: var(--ot-text-3); }

/* Empty */

.e-66c5db60 > .box > .body > .picker > .picker-tree > .picker-empty,
.e-66c5db60 > .box > .body > .picker .picker-empty
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: var(--ot-spacing-m);
	border: 1px dashed var(--ot-bg-2-border);
	border-radius: var(--ot-radius-s);
	color: var(--ot-text-3);
	font-size: var(--ot-size-s);
}

.e-66c5db60 .picker-empty > i
{
	font-size: 18px;
}

/* ===== EDITOR ===== */

.e-66c5db60 > .box > .body > .editor
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-m);
	overflow-y: auto;
	min-height: 0;
}

.e-66c5db60 > .box > .body > .editor > .editor-field
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-label
{
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ot-text-3);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-area
{
	width: 100%;
	min-height: 96px;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: var(--ot-radius-m);
	color: var(--ot-text-1);
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-m);
	line-height: 1.5;
	resize: vertical;
	outline: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), box-shadow var(--ot-transition);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-area::placeholder
{
	color: var(--ot-text-3);
	font-family: var(--ot-font-primary);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-area:focus
{
	border-color: var(--ot-brand);
	box-shadow: 0 0 0 1px var(--ot-brand-opacity);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-hint
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
	line-height: 1.5;
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-hint > code
{
	padding: 1px 6px;
	background: var(--ot-bg-2);
	border-radius: var(--ot-radius-s);
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: 11px;
	color: var(--ot-text-2);
}

/* ===== QUICK INSERTS ===== */

.e-66c5db60 > .box > .body > .editor > .editor-quick
{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--ot-spacing-s);
}

.e-66c5db60 > .box > .body > .editor > .editor-quick > .editor-quick-label
{
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ot-text-3);
}

.e-66c5db60 > .box > .body > .editor > .editor-quick > .editor-quick-item
{
	display: inline-flex;
	align-items: center;
	padding: 0 var(--ot-spacing-s);
	height: 24px;
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	border-radius: 100px;
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), border-color var(--ot-transition), color var(--ot-transition);
}

.e-66c5db60 > .box > .body > .editor > .editor-quick > .editor-quick-item:hover
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand-opacity);
	color: var(--ot-brand);
}

/* ===== PREVIEW ===== */

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview
{
	display: flex;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	font-size: var(--ot-size-m);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview > i
{
	font-size: 16px;
	flex-shrink: 0;
	margin-top: 2px;
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview > pre
{
	flex: 1;
	margin: 0;
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-m);
	line-height: 1.5;
	white-space: pre-wrap;
	word-break: break-word;
	color: var(--ot-text-1);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview.ok
{
	background: rgba(52,211,153,0.08);
	border-color: rgba(52,211,153,0.18);
	color: var(--ot-text-1);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview.ok > i
{
	color: var(--ot-green);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview.error
{
	background: rgba(244,63,94,0.08);
	border-color: rgba(244,63,94,0.18);
	color: var(--ot-red);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview.error > i
{
	color: var(--ot-red);
}

.e-66c5db60 > .box > .body > .editor > .editor-field > .editor-preview.empty
{
	background: var(--ot-bg-2);
	border: 1px dashed var(--ot-bg-2-border);
	color: var(--ot-text-3);
}

/* ===== FOOT ===== */

.e-66c5db60 > .box > .foot
{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-m);
	border-top: 1px solid var(--ot-bg-1-border);
	flex-shrink: 0;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 900px)
{
	.e-66c5db60 > .box
	{
		width: 95vw;
		max-height: 95vh;
	}

	.e-66c5db60 > .box > .body
	{
		grid-template-columns: 1fr;
	}

	.e-66c5db60 > .box > .body > .picker
	{
		border-right: none;
		border-bottom: 1px solid var(--ot-bg-1-border);
		max-height: 40vh;
	}
}
/* ===== VARIABLE CHIP ===== */

.e-22d0c6a7
{
	display: contents;
}

/* Box */

.e-22d0c6a7 > .box
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	width: 100%;
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-s) 0 var(--ot-spacing-m);
	background: var(--ot-brand-opacity);
	border: 1px solid var(--ot-brand-opacity);
	border-radius: var(--ot-radius-m);
	transition: background var(--ot-transition), border-color var(--ot-transition);
}

.e-22d0c6a7 > .box:hover:not(.disabled)
{
	border-color: var(--ot-brand);
}

/* Icon */

.e-22d0c6a7 > .box > .icon
{
	flex-shrink: 0;
	font-size: 16px;
	color: var(--ot-brand);
}

/* Text */

.e-22d0c6a7 > .box > .text
{
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-brand);
}

/* Actions */

.e-22d0c6a7 > .box > .action
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: var(--ot-radius-s);
	color: var(--ot-brand);
	cursor: pointer;
	outline: none;
	transition: background var(--ot-transition), color var(--ot-transition);
}

.e-22d0c6a7 > .box > .action:hover
{
	background: var(--ot-bg-1);
}

.e-22d0c6a7 > .box > .action.clear:hover
{
	background: rgba(244,63,94,0.18);
	color: var(--ot-red);
}

.e-22d0c6a7 > .box > .action > i
{
	font-size: 14px;
}

/* Disabled */

.e-22d0c6a7 > .box.disabled
{
	opacity: 0.6;
	cursor: not-allowed;
}

/* ===== SIZE ===== */

.e-22d0c6a7 > .box.size-s
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-x) 0 var(--ot-spacing-s);
	gap: var(--ot-spacing-x);
}

.e-22d0c6a7 > .box.size-s > .icon
{
	font-size: 13px;
}

.e-22d0c6a7 > .box.size-s > .text
{
	font-size: var(--ot-size-s);
}

.e-22d0c6a7 > .box.size-s > .action
{
	width: 18px;
	height: 18px;
}

.e-22d0c6a7 > .box.size-s > .action > i
{
	font-size: 12px;
}

.e-22d0c6a7 > .box.size-l
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-s) 0 var(--ot-spacing-l);
}

.e-22d0c6a7 > .box.size-l > .icon
{
	font-size: 18px;
}

.e-22d0c6a7 > .box.size-l > .action
{
	width: 26px;
	height: 26px;
}

.e-22d0c6a7 > .box.size-l > .action > i
{
	font-size: 16px;
}
/* Base page styles */
.ot-page
{
	display: grid;
	position: fixed;
	inset: 0;
	width: 100vw;
	height: 100dvh;
	overflow: hidden;
}

/* Page area containers */
.ot-page-area
{
	position: relative;
	overflow: auto;
}

.ot-page-area > div
{
	display: contents;
}
[ot]
{
	opacity: 0;
}
.e-593be338
{
	display: contents;
}

/* Button Base */
.e-593be338 > .box
{
	position: relative;
	border: 1px solid transparent;
	border-radius: var(--ot-radius-m);
	padding: 4px var(--ot-spacing-m);
	cursor: pointer;
	outline: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-s);
	background: transparent;
	color: var(--ot-text-1);
	font-size: var(--ot-size-m);
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	user-select: none;

	-webkit-tap-highlight-color: transparent;
	transition:
		background var(--site-dur-fast) var(--site-ease),
		border-color var(--site-dur-fast) var(--site-ease),
		color var(--site-dur-fast) var(--site-ease),
		box-shadow var(--site-dur-fast) var(--site-ease),
		transform var(--site-dur-fast) var(--site-ease-spring);
}

/* Content wrapper */
.e-593be338 > .box > .content
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-s);
	transition: transform var(--site-dur-fast) var(--site-ease);
}

/* Text */
.e-593be338 > .box > .content > .text
{
	line-height: 1;
}

/* Icons */
.e-593be338 > .box > .content > i
{
	font-size: 18px;
	transition: transform var(--site-dur-fast) var(--site-ease);
}

.e-593be338 > .box > .content > .icon-left
{
	margin-right: -2px;
}

.e-593be338 > .box > .content > .icon-right
{
	margin-left: -2px;
}

/* Hover - subtle lift */
.e-593be338 > .box:hover
{
	transform: translateY(-2px);
}

.e-593be338 > .box:hover > .content > .icon-right
{
	transform: translateX(2px);
}

/* Active - press down */
.e-593be338 > .box:active
{
	transform: translateY(0) scale(0.98);
	transition-duration: 0.1s;
}

/* Focus visible - premium glow ring */
.e-593be338 > .box:focus-visible
{
	outline: none;
	box-shadow:
		0 0 0 2px var(--ot-bg-1),
		0 0 0 4px var(--ot-brand);
}

/* Disabled */
.e-593be338 > .box[disabled="true"]
{
	opacity: 0.5;
	cursor: not-allowed;
	pointer-events: none;
	transform: none;
}

/* Loading */
.e-593be338 > .box[loading="true"]
{
	cursor: wait;
	pointer-events: none;
}

/* Spinner */
.e-593be338 > .box > .spinner
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.e-593be338 > .box > .spinner > i
{
	font-size: 18px;
	animation: e-button-spin 0.8s linear infinite;
}

@keyframes e-button-spin
{
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

/* Ripple effect */
.e-593be338 > .box > .ripple
{
	position: absolute;
	border-radius: 50%;
	background: currentColor;
	opacity: 0.18;
	transform: scale(0);
	animation: e-button-ripple var(--site-dur) var(--site-ease) forwards;
	pointer-events: none;
	z-index: 0;
}

@keyframes e-button-ripple
{
	to
	{
		transform: scale(2.5);
		opacity: 0;
	}
}

/* Full width */
.e-593be338 > .box[variant*="full"]
{
	width: 100%;
}

/* Rounded (pill) */
.e-593be338 > .box[variant*="rounded"]
{
	border-radius: 100px;
}

/* Icon only - square aspect */
.e-593be338 > .box[variant*="icon-only"]
{
	padding: 0;
	aspect-ratio: 1;
}

.e-593be338 > .box[variant*="icon-only"] > .content > i
{
	margin: 0;
}
/* Small */
.e-593be338 > .box[variant*="size-s"]
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
	font-size: var(--ot-size-s);
	gap: var(--ot-spacing-x);
}

.e-593be338 > .box[variant*="size-s"] > .content
{
	gap: var(--ot-spacing-x);
}

.e-593be338 > .box[variant*="size-s"] > .content > i,
.e-593be338 > .box[variant*="size-s"] > .spinner > i
{
	font-size: 14px;
}

/* Medium (default) */
.e-593be338 > .box[variant*="size-m"]
{
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	font-size: var(--ot-size-m);
	gap: var(--ot-spacing-s);
}

.e-593be338 > .box[variant*="size-m"] > .content
{
	gap: var(--ot-spacing-s);
}

.e-593be338 > .box[variant*="size-m"] > .content > i,
.e-593be338 > .box[variant*="size-m"] > .spinner > i
{
	font-size: 18px;
}

/* Large */
.e-593be338 > .box[variant*="size-l"]
{
	height: var(--ot-height-l);
	padding: 0 var(--ot-spacing-l);
	font-size: var(--ot-size-l);
	gap: var(--ot-spacing-m);
}

.e-593be338 > .box[variant*="size-l"] > .content
{
	gap: var(--ot-spacing-m);
}

.e-593be338 > .box[variant*="size-l"] > .content > i,
.e-593be338 > .box[variant*="size-l"] > .spinner > i
{
	font-size: 22px;
}

/* Icon-only size adjustments */
.e-593be338 > .box[variant*="icon-only"][variant*="size-s"]
{
	width: var(--ot-height-s);
	padding: 0;
}

.e-593be338 > .box[variant*="icon-only"][variant*="size-m"]
{
	width: var(--ot-height-m);
	padding: 0;
}

.e-593be338 > .box[variant*="icon-only"][variant*="size-l"]
{
	width: var(--ot-height-l);
	padding: 0;
}
/* ============================================
   SOLID VARIANTS - Bold, confident, primary actions
   bg = color, border = color, text = white, hover intensifies the colored glow.
   ============================================ */

/* Icons inherit the button text color across every variant. */
.e-593be338 > .box > .content > i,
.e-593be338 > .box > .spinner > i
{
	color: inherit;
}

/* Brand */
.e-593be338 > .box[variant*="brand"]
{
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	color: white;
	box-shadow: var(--site-shadow-m), 0 2px 12px var(--ot-brand-opacity);
}

.e-593be338 > .box[variant*="brand"]:hover
{
	background: var(--ot-brand-hover);
	border-color: var(--ot-brand-hover);
	box-shadow: var(--site-shadow-m), 0 6px 22px var(--ot-brand-opacity);
}

.e-593be338 > .box[variant*="brand"]:focus-visible
{
	box-shadow:
		0 0 0 2px var(--ot-bg-1),
		0 0 0 4px var(--ot-brand);
}

/* Blue */
.e-593be338 > .box[variant*="blue"]
{
	background: var(--ot-blue);
	border-color: var(--ot-blue);
	color: white;
	box-shadow: var(--site-shadow-m), 0 2px 12px var(--ot-blue-opacity);
}

.e-593be338 > .box[variant*="blue"]:hover
{
	background: var(--ot-blue-hover);
	border-color: var(--ot-blue-hover);
	box-shadow: var(--site-shadow-m), 0 6px 22px var(--ot-blue-opacity);
}

.e-593be338 > .box[variant*="blue"]:focus-visible
{
	box-shadow:
		0 0 0 2px var(--ot-bg-1),
		0 0 0 4px var(--ot-blue);
}

/* Red */
.e-593be338 > .box[variant*="red"]
{
	background: var(--ot-red);
	border-color: var(--ot-red);
	color: white;
	box-shadow: var(--site-shadow-m), 0 2px 12px var(--ot-red-opacity);
}

.e-593be338 > .box[variant*="red"]:hover
{
	background: var(--ot-red-hover);
	border-color: var(--ot-red-hover);
	box-shadow: var(--site-shadow-m), 0 6px 22px var(--ot-red-opacity);
}

.e-593be338 > .box[variant*="red"]:focus-visible
{
	box-shadow:
		0 0 0 2px var(--ot-bg-1),
		0 0 0 4px var(--ot-red);
}

/* Orange */
.e-593be338 > .box[variant*="orange"]
{
	background: var(--ot-orange);
	border-color: var(--ot-orange);
	color: white;
	box-shadow: var(--site-shadow-m), 0 2px 12px var(--ot-orange-opacity);
}

.e-593be338 > .box[variant*="orange"]:hover
{
	background: var(--ot-orange-hover);
	border-color: var(--ot-orange-hover);
	box-shadow: var(--site-shadow-m), 0 6px 22px var(--ot-orange-opacity);
}

.e-593be338 > .box[variant*="orange"]:focus-visible
{
	box-shadow:
		0 0 0 2px var(--ot-bg-1),
		0 0 0 4px var(--ot-orange);
}

/* Green */
.e-593be338 > .box[variant*="green"]
{
	background: var(--ot-green);
	border-color: var(--ot-green);
	color: white;
	box-shadow: var(--site-shadow-m), 0 2px 12px var(--ot-green-opacity);
}

.e-593be338 > .box[variant*="green"]:hover
{
	background: var(--ot-green-hover);
	border-color: var(--ot-green-hover);
	box-shadow: var(--site-shadow-m), 0 6px 22px var(--ot-green-opacity);
}

.e-593be338 > .box[variant*="green"]:focus-visible
{
	box-shadow:
		0 0 0 2px var(--ot-bg-1),
		0 0 0 4px var(--ot-green);
}

/* ============================================
   SOFT VARIANTS - Semi-transparent fill + colored text
   ============================================ */

.e-593be338 > .box[variant*="soft-brand"]
{
	background: var(--ot-brand-opacity);
	border-color: transparent;
	color: var(--ot-brand);
	box-shadow: none;
}

.e-593be338 > .box[variant*="soft-brand"]:hover
{
	background: var(--ot-brand);
	color: white;
}

.e-593be338 > .box[variant*="soft-blue"]
{
	background: var(--ot-blue-opacity);
	border-color: transparent;
	color: var(--ot-blue);
	box-shadow: none;
}

.e-593be338 > .box[variant*="soft-blue"]:hover
{
	background: var(--ot-blue);
	color: white;
}

.e-593be338 > .box[variant*="soft-red"]
{
	background: var(--ot-red-opacity);
	border-color: transparent;
	color: var(--ot-red);
	box-shadow: none;
}

.e-593be338 > .box[variant*="soft-red"]:hover
{
	background: var(--ot-red);
	color: white;
}

.e-593be338 > .box[variant*="soft-orange"]
{
	background: var(--ot-orange-opacity);
	border-color: transparent;
	color: var(--ot-orange);
	box-shadow: none;
}

.e-593be338 > .box[variant*="soft-orange"]:hover
{
	background: var(--ot-orange);
	color: white;
}

.e-593be338 > .box[variant*="soft-green"]
{
	background: var(--ot-green-opacity);
	border-color: transparent;
	color: var(--ot-green);
	box-shadow: none;
}

.e-593be338 > .box[variant*="soft-green"]:hover
{
	background: var(--ot-green);
	color: white;
}

/* ============================================
   OUTLINE VARIANTS - Transparent fill + colored border + colored text
   ============================================ */

.e-593be338 > .box[variant*="outline-brand"]
{
	background: transparent;
	border-color: var(--ot-brand-border);
	color: var(--ot-brand);
	box-shadow: none;
}

.e-593be338 > .box[variant*="outline-brand"]:hover
{
	background: var(--ot-brand-opacity);
	border-color: var(--ot-brand);
}

.e-593be338 > .box[variant*="outline-blue"]
{
	background: transparent;
	border-color: var(--ot-blue-border);
	color: var(--ot-blue);
	box-shadow: none;
}

.e-593be338 > .box[variant*="outline-blue"]:hover
{
	background: var(--ot-blue-opacity);
	border-color: var(--ot-blue);
}

.e-593be338 > .box[variant*="outline-red"]
{
	background: transparent;
	border-color: var(--ot-red-border);
	color: var(--ot-red);
	box-shadow: none;
}

.e-593be338 > .box[variant*="outline-red"]:hover
{
	background: var(--ot-red-opacity);
	border-color: var(--ot-red);
}

.e-593be338 > .box[variant*="outline-orange"]
{
	background: transparent;
	border-color: var(--ot-orange-border);
	color: var(--ot-orange);
	box-shadow: none;
}

.e-593be338 > .box[variant*="outline-orange"]:hover
{
	background: var(--ot-orange-opacity);
	border-color: var(--ot-orange);
}

.e-593be338 > .box[variant*="outline-green"]
{
	background: transparent;
	border-color: var(--ot-green-border);
	color: var(--ot-green);
	box-shadow: none;
}

.e-593be338 > .box[variant*="outline-green"]:hover
{
	background: var(--ot-green-opacity);
	border-color: var(--ot-green);
}

/* ============================================
   SURFACE VARIANTS - Neutral background fills
   ============================================ */

.e-593be338 > .box[variant*="bg-1"]
{
	background: var(--ot-bg-1);
	border-color: var(--ot-bg-1-border);
	color: var(--ot-text-1);
}

.e-593be338 > .box[variant*="bg-1"]:hover
{
	background: var(--ot-bg-1-hover);
}

.e-593be338 > .box[variant*="bg-2"]
{
	background: var(--ot-bg-2);
	border-color: var(--ot-bg-2-border);
	color: var(--ot-text-1);
}

.e-593be338 > .box[variant*="bg-2"]:hover
{
	background: var(--ot-bg-2-hover);
}

.e-593be338 > .box[variant*="bg-3"]
{
	background: var(--ot-bg-3);
	border-color: var(--ot-bg-3-border);
	color: var(--ot-text-1);
}

.e-593be338 > .box[variant*="bg-3"]:hover
{
	background: var(--ot-bg-3-hover);
}

.e-593be338 > .box[variant*="bg-4"]
{
	background: var(--ot-bg-4);
	border-color: var(--ot-bg-4-border);
	color: var(--ot-text-1);
}

.e-593be338 > .box[variant*="bg-4"]:hover
{
	background: var(--ot-bg-4-hover);
}

/* ============================================
   SPECIAL VARIANTS
   ============================================ */

/* Ghost - minimal, text-like */
.e-593be338 > .box[variant*="ghost"]
{
	background: transparent;
	border-color: transparent;
	color: var(--ot-text-2);
}

.e-593be338 > .box[variant*="ghost"]:hover
{
	background: var(--ot-bg-2);
	color: var(--ot-text-1);
}

/* Border - neutral outlined */
.e-593be338 > .box[variant*="border"]
{
	background: transparent;
	border-color: var(--ot-bg-1-border);
	color: var(--ot-text-1);
}

.e-593be338 > .box[variant*="border"]:hover
{
	background: var(--ot-bg-2);
	border-color: var(--ot-bg-3-border);
}

/* Glass - frosted surface */
.e-593be338 > .box[variant*="glass"]
{
	background: var(--site-glass);
	border-color: var(--site-hairline);
	color: var(--ot-text-1);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
}

.e-593be338 > .box[variant*="glass"]:hover
{
	background: var(--site-glass-strong);
	border-color: var(--site-hairline-strong);
}

/* Transparent - no fill, no border, muted text */
.e-593be338 > .box[variant*="transparent"]
{
	background: transparent;
	border-color: transparent;
	color: var(--ot-text-3);
}

.e-593be338 > .box[variant*="transparent"]:hover
{
	color: var(--ot-text-1);
}
/* card — e-4e321da (built on .site-card) */

.e-4e321da
{
	display: flex;
	height: 100%;
}

.e-4e321da > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	width: 100%;
	padding: var(--ot-spacing-l);
	overflow: hidden;
}

/* Coral top-accent rule — the distinctive mark. */
.e-4e321da > .box::before
{
	content: '';
	position: absolute;
	inset: 0 0 auto 0;
	height: 3px;
	background: var(--ot-brand);
	opacity: 0;
	transition: opacity var(--site-dur) var(--site-ease);
	z-index: 2;
}

.e-4e321da > .box:hover::before { opacity: 1; }

.e-4e321da > .box.link
{
	text-decoration: none;
	cursor: pointer;
}

/* Head row — icon tile, optional index, optional chip. */

.e-4e321da > .box > .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.e-4e321da .site-tile
{
	transition: transform var(--site-dur) var(--site-ease);
}

.e-4e321da > .box:hover .site-tile { transform: scale(1.06) rotate(-3deg); }

.e-4e321da .index
{
	font-family: var(--ot-font-mono), monospace;
	font-size: var(--ot-size-s);
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--ot-text-3);
}

.e-4e321da .site-chip { margin-left: auto; }

.e-4e321da .site-chip .dot
{
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: var(--ot-brand);
	box-shadow: 0 0 0 3px var(--ot-brand-opacity);
	flex-shrink: 0;
}

/* Title */

.e-4e321da > .box > .title
{
	font-size: var(--ot-size-l);
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	margin: 0;
}

/* Description */

.e-4e321da > .box > .description
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.6;
	margin: 0;
}

/* Link arrow — nudges right on hover. */

.e-4e321da > .box > .arrow
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin-top: var(--ot-spacing-s);
	border-radius: 999px;
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	transition: transform var(--site-dur) var(--site-ease);
}

.e-4e321da > .box > .arrow i { font-size: 16px; }

.e-4e321da > .box.link:hover > .arrow { transform: translateX(4px); }
/* code — e-4e2eefd (built on .site-card) */

.e-4e2eefd
{
	display: flex;
	width: 100%;
}

.e-4e2eefd > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	border-radius: var(--ot-radius-m);
	overflow: hidden;
}

.e-4e2eefd > .box > .label
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	position: relative;
	z-index: 1;
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: var(--ot-bg-3);
	border-bottom: 1px solid var(--site-hairline);
}

.e-4e2eefd > .box > .label > .text
{
	font-size: var(--ot-size-s);
	font-weight: 600;
	font-family: monospace;
	color: var(--ot-text-2);
}

.e-4e2eefd > .box > .label > .lang
{
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-family: monospace;
	color: var(--ot-brand);
}

.e-4e2eefd > .box > .label > .lang > .dot
{
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: var(--ot-brand);
	box-shadow: 0 0 8px var(--ot-brand-opacity);
}

.e-4e2eefd > .box > .label > .copy
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--ot-height-s);
	height: var(--ot-height-s);
	margin-left: auto;
	padding: 0;
	border: 1px solid var(--site-hairline);
	border-radius: var(--ot-radius-s);
	background: transparent;
	color: var(--ot-text-3);
	cursor: pointer;
	transition: color var(--site-dur-fast) var(--site-ease), border-color var(--site-dur-fast) var(--site-ease), background var(--site-dur-fast) var(--site-ease);
}

.e-4e2eefd > .box > .label > .copy:hover
{
	color: var(--ot-text-1);
	border-color: var(--site-hairline-strong);
	background: var(--ot-bg-1-hover);
}

.e-4e2eefd > .box > .label > .copy.copied
{
	color: var(--ot-green);
	border-color: var(--ot-green-border);
}

.e-4e2eefd > .box > .label > .copy i
{
	font-size: var(--ot-size-m);
}

.e-4e2eefd > .box > .label > .copy .done
{
	display: none;
}

.e-4e2eefd > .box > .label > .copy.copied .idle
{
	display: none;
}

.e-4e2eefd > .box > .label > .copy.copied .done
{
	display: inline-flex;
}

.e-4e2eefd > .box > .content
{
	position: relative;
	z-index: 1;
	padding: var(--ot-spacing-m);
	margin: 0;
	font-size: var(--ot-size-s);
	font-family: monospace;
	color: var(--ot-text-2);
	line-height: 1.6;
	background: var(--ot-bg-2);
	overflow-x: auto;
	white-space: pre;
	tab-size: 4;
}
/* faq — e-213092c0 (built on .site-card) */

.e-213092c0
{
	display: flex;
	width: 100%;
}

.e-213092c0 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	width: 100%;
}

/* Head */

.e-213092c0 > .box > .head
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	margin-bottom: var(--ot-spacing-s);
}

/* List */

.e-213092c0 > .box > .list
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

/* Item */

.e-213092c0 .item
{
	overflow: hidden;
}

.e-213092c0 .item > .question
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	padding: var(--ot-spacing-m);
	cursor: pointer;
	position: relative;
	z-index: 1;
}

.e-213092c0 .item > .question > .index
{
	font-family: var(--ot-font-mono, ui-monospace, Menlo, Consolas, monospace);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-3);
	flex-shrink: 0;
	transition: color var(--site-dur) var(--site-ease);
}

.e-213092c0 .item.active > .question > .index
{
	color: var(--ot-brand);
}

.e-213092c0 .item > .question > .text
{
	flex: 1;
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1.4;
}

.e-213092c0 .item > .question > .chevron
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: var(--ot-bg-3);
	border: 1px solid var(--site-hairline);
	color: var(--ot-text-2);
	flex-shrink: 0;
	transition: transform var(--site-dur) var(--site-ease), color var(--site-dur) var(--site-ease), background var(--site-dur) var(--site-ease);
}

.e-213092c0 .item > .question > .chevron i
{
	font-size: 18px;
}

.e-213092c0 .item.active > .question > .chevron
{
	transform: rotate(45deg);
	color: var(--ot-brand);
	background: var(--ot-brand-opacity);
}

/* Answer */

.e-213092c0 .item > .answer
{
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	position: relative;
	z-index: 1;
	transition: max-height var(--site-dur) var(--site-ease), opacity var(--site-dur) var(--site-ease);
}

.e-213092c0 .item.active > .answer
{
	max-height: 500px;
	opacity: 1;
}

.e-213092c0 .item > .answer > p
{
	margin: 0;
	padding: 0 var(--ot-spacing-m) var(--ot-spacing-m) calc(var(--ot-spacing-m) + var(--ot-spacing-l));
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.6;
}
/* heading — e-52c43b2c (eyebrow + title + accent + lead) */

.e-52c43b2c
{
	display: flex;
	width: 100%;
}

.e-52c43b2c > .box
{
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
	border-bottom: 1px solid var(--site-hairline);
	padding-bottom: var(--ot-spacing-m);
}

.e-52c43b2c > .box > .site-eyebrow
{
	align-self: flex-start;
	margin-bottom: var(--ot-spacing-x);
}

.e-52c43b2c > .box > .site-tile.icon
{
	margin-bottom: var(--ot-spacing-x);
}

.e-52c43b2c > .box > .icon
{
	font-size: var(--site-title);
	line-height: 1;
	color: var(--ot-text-2);
}

.e-52c43b2c > .box > .title
{
	font-family: var(--ot-font-secondary), system-ui, sans-serif;
	font-size: var(--site-lead);
	font-weight: 600;
	letter-spacing: -0.01em;
	line-height: 1.2;
	color: var(--ot-text-1);
	margin: 0;
}

.e-52c43b2c > .box > .description
{
	font-size: var(--ot-size-m);
	line-height: 1.6;
	color: var(--ot-text-2);
	margin: 0;
}

/* Alignment */

.e-52c43b2c > .box.center
{
	align-items: center;
	text-align: center;
}

.e-52c43b2c > .box.center > .site-eyebrow
{
	align-self: center;
}

.e-52c43b2c > .box.right
{
	align-items: flex-end;
	text-align: right;
}

.e-52c43b2c > .box.right > .site-eyebrow
{
	align-self: flex-end;
}

/* Variants */

.e-52c43b2c > .box.clean,
.e-52c43b2c > .box.hero,
.e-52c43b2c > .box.page
{
	border-bottom: none;
	padding-bottom: 0;
}

.e-52c43b2c > .box.hero,
.e-52c43b2c > .box.page
{
	transition-delay: 0.08s;
}

.e-52c43b2c > .box.hero > .title,
.e-52c43b2c > .box.page > .title,
.e-52c43b2c > .box.size-l > .title
{
	font-size: var(--site-display);
	font-weight: 600;
	line-height: 1.04;
	letter-spacing: -0.03em;
}

.e-52c43b2c > .box.hero > .description,
.e-52c43b2c > .box.page > .description,
.e-52c43b2c > .box.size-l > .description
{
	font-size: var(--site-lead);
	max-width: 60ch;
}

/* Sizes */

.e-52c43b2c > .box.size-s > .title
{
	font-size: var(--ot-size-l);
}

.e-52c43b2c > .box.size-s > .description
{
	font-size: var(--ot-size-s);
}

.e-52c43b2c > .box.size-m > .title
{
	font-size: var(--site-title);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.e-52c43b2c > .box.size-m > .description
{
	font-size: var(--site-lead);
	max-width: 60ch;
}
.e-56f2e505
{
	display: flex;
	width: 100%;
}

.e-56f2e505 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-m);
	width: 100%;
}

/* Line wrapper */

.e-56f2e505 > .box > .line:empty
{
	height: var(--ot-spacing-m);
}

/* Headings */

.e-56f2e505 > .box h1
{
	font-size: 32px;
	font-weight: 800;
	color: var(--ot-text-1);
	line-height: 1.2;
	letter-spacing: -0.5px;
	margin: 0;
	scroll-margin-top: var(--ot-spacing-l);
}

.e-56f2e505 > .box h2
{
	font-size: 24px;
	font-weight: 700;
	color: var(--ot-text-1);
	line-height: 1.3;
	letter-spacing: -0.3px;
	margin: 0;
	scroll-margin-top: var(--ot-spacing-l);
}

.e-56f2e505 > .box h3
{
	font-size: 18px;
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1.4;
	margin: 0;
	scroll-margin-top: var(--ot-spacing-l);
}

.e-56f2e505 > .box h4
{
	font-size: 15px;
	font-weight: 600;
	color: var(--ot-text-1);
	line-height: 1.4;
	margin: 0;
}

/* Paragraph */

.e-56f2e505 > .box p
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.8;
	margin: 0;
}

/* Links */

.e-56f2e505 > .box a
{
	color: var(--ot-brand);
	text-decoration: none;
	font-weight: 500;
	transition: opacity var(--site-dur-fast) var(--site-ease);
}

.e-56f2e505 > .box a:hover
{
	opacity: 0.8;
}

/* Bold & Italic */

.e-56f2e505 > .box strong
{
	font-weight: 600;
	color: var(--ot-text-1);
}

.e-56f2e505 > .box em
{
	font-style: italic;
}

.e-56f2e505 > .box del
{
	text-decoration: line-through;
	opacity: 0.6;
}

/* Lists */

.e-56f2e505 > .box ul,
.e-56f2e505 > .box ol
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
	padding-left: 24px;
	margin: 0;
}

.e-56f2e505 > .box li
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.7;
}

.e-56f2e505 > .box ul > li
{
	list-style-type: disc;
}

.e-56f2e505 > .box ol > li
{
	list-style-type: decimal;
}

.e-56f2e505 > .box li::marker
{
	color: var(--ot-brand);
}

/* Blockquote */

.e-56f2e505 > .box blockquote
{
	background: var(--site-glass);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border: 1px solid var(--site-hairline);
	border-left: 4px solid var(--ot-brand);
	border-radius: var(--ot-radius-m);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	margin: 0;
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.7;
	font-style: italic;
}

/* Inline code */

.e-56f2e505 > .box code.inline
{
	padding: 2px 7px;
	border-radius: var(--ot-radius-s);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-size: 0.88em;
	color: var(--ot-brand);
}

/* Code block */

.e-56f2e505 > .box .codeblock
{
	position: relative;
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	border-radius: var(--ot-radius-m);
	padding: var(--ot-spacing-m);
	overflow-x: auto;
	margin: 0;
}

/* Language label chip — top-right, driven by data-lang on the inner code. */

.e-56f2e505 > .box .codeblock:has(> code[data-lang])
{
	padding-top: calc(var(--ot-spacing-m) + var(--ot-height-s));
}

.e-56f2e505 > .box .codeblock > code[data-lang]::before
{
	content: attr(data-lang);
	position: absolute;
	top: var(--ot-spacing-s);
	right: var(--ot-spacing-s);
	display: inline-flex;
	align-items: center;
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
	border-radius: 999px;
	background: var(--ot-bg-3);
	border: 1px solid var(--site-hairline);
	font-family: var(--ot-font-secondary), system-ui, sans-serif;
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.e-56f2e505 > .box .codeblock > code
{
	font-family: 'JetBrains Mono', 'Fira Code', monospace;
	font-size: var(--ot-size-s);
	line-height: 1.7;
	color: var(--ot-text-1);
	tab-size: 4;
}

/* Table */

.e-56f2e505 > .box .table-scroll
{
	width: 100%;
	overflow-x: auto;
	border-radius: var(--ot-radius-m);
	border: 1px solid var(--site-hairline);
}

.e-56f2e505 > .box table
{
	width: 100%;
	border-collapse: collapse;
	background-color: var(--ot-bg-2);
}

.e-56f2e505 > .box table th
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	background: var(--ot-bg-3);
	font-size: var(--ot-size-s);
	font-weight: 600;
	color: var(--ot-text-1);
	text-align: left;
	white-space: nowrap;
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-56f2e505 > .box table td
{
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.6;
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-56f2e505 > .box table tr:last-child td
{
	border-bottom: none;
}

.e-56f2e505 > .box table tr:hover td
{
	background: var(--ot-bg-2-hover);
	transition: background var(--site-dur-fast) var(--site-ease);
}

/* Horizontal rule */

.e-56f2e505 > .box hr
{
	border: none;
	border-top: 1px solid var(--site-hairline);
	margin: 0;
}

/* Images */

.e-56f2e505 > .box img
{
	max-width: 100%;
	height: auto;
	border-radius: var(--ot-radius-m);
	border: 1px solid var(--site-hairline);
	box-shadow: var(--site-shadow-m);
}
/* params — e-427310e4 */

.e-427310e4
{
	display: flex;
	width: 100%;
}

.e-427310e4 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
}

.e-427310e4 > .box > .param
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-x);
	padding: var(--ot-spacing-s);
	margin-inline: calc(var(--ot-spacing-s) * -1);
	border-bottom: 1px solid var(--site-hairline);
	border-radius: var(--ot-radius-s);
	transition: background var(--site-dur-fast) var(--site-ease);
}

.e-427310e4 > .box > .param:last-child
{
	border-bottom: none;
}

.e-427310e4 > .box > .param:hover
{
	background: var(--ot-bg-1-hover);
}

.e-427310e4 > .box > .param > .head
{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--ot-spacing-s);
}

.e-427310e4 > .box > .param > .head > .name
{
	font-size: var(--ot-size-m);
	font-weight: 600;
	font-family: monospace;
	color: var(--ot-text-1);
}

.e-427310e4 > .box > .param > .head > .type
{
	background: var(--ot-blue-opacity);
	border-color: var(--ot-blue-border);
	color: var(--ot-blue);
}

.e-427310e4 > .box > .param > .head > .required
{
	background: var(--ot-orange-opacity);
	border-color: var(--ot-orange-border);
	color: var(--ot-orange);
}

.e-427310e4 > .box > .param > .head > .optional
{
	background: var(--ot-bg-3);
	border-color: var(--site-hairline);
	color: var(--ot-text-3);
}

.e-427310e4 > .box > .param > .head > .default
{
	background: var(--ot-bg-3);
	border-color: var(--site-hairline);
	color: var(--ot-text-3);
	font-family: monospace;
}

.e-427310e4 > .box > .param > .desc
{
	margin: 0;
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
	line-height: 1.6;
}
/* section — e-6733c3f1 (built on .site-card) */

.e-6733c3f1
{
	display: flex;
	width: 100%;
}

.e-6733c3f1 > .box
{
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: var(--ot-spacing-l);
}

/* Header: icon tile left, eyebrow + title + description stacked right (asymmetric). */
.e-6733c3f1 > .box > .header
{
	display: flex;
	align-items: flex-start;
	gap: var(--ot-spacing-m);
}

.e-6733c3f1 > .box > .header > .site-tile
{
	flex-shrink: 0;
	transition: transform var(--site-dur) var(--site-ease);
}

.e-6733c3f1 > .box.is-hover-lift:hover > .header > .site-tile
{
	transform: scale(1.06) rotate(-3deg);
}

.e-6733c3f1 > .box > .header > .intro
{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
	min-width: 0;
}

/* Double-rule divider between header and body. */
.e-6733c3f1 > .box > .rule
{
	height: 3px;
	margin: var(--ot-spacing-m) 0;
	border-top: 1px solid var(--site-hairline-strong);
	border-bottom: 1px solid var(--site-hairline);
}

.e-6733c3f1 > .box > .body
{
	color: var(--ot-text-2);
}
/* stat — e-4db9696 */

.e-4db9696
{
	display: block;
}

.e-4db9696 > .box
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-x);
	text-align: center;
}

.e-4db9696 .value
{
	font-family: var(--ot-font-secondary), system-ui, sans-serif;
	font-size: clamp(1.9rem, 1.2rem + 1.8vw, 2.8rem);
	font-weight: 600;
	letter-spacing: -0.03em;
	line-height: 1;
	color: var(--ot-text-1);
	font-variant-numeric: tabular-nums;
}

.e-4db9696 .label
{
	font-size: var(--ot-size-s);
	color: var(--ot-text-2);
}
/* tab-group — e-22bbdf0f */

.e-22bbdf0f
{
	display: flex;
	justify-content: center;
}

.e-22bbdf0f > .box
{
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 2px;
	padding: 4px;
	border-radius: 999px;
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	box-shadow: var(--site-shadow-s);
}

.e-22bbdf0f .indicator
{
	position: absolute;
	top: 4px;
	left: 0;
	height: calc(100% - 8px);
	border-radius: 999px;
	background: var(--ot-bg-4);
	box-shadow: var(--site-shadow-s), inset 0 1px 0 rgba(255,255,255,0.06);
	transition: transform var(--site-dur) var(--site-ease), width var(--site-dur) var(--site-ease);
	z-index: 0;
}

.e-22bbdf0f .tab
{
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	border-radius: 999px;
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-2);
	white-space: nowrap;
	transition: color var(--site-dur-fast) var(--site-ease);
}

.e-22bbdf0f .tab:hover { color: var(--ot-text-1); }
.e-22bbdf0f .tab.active { color: var(--ot-text-1); }

.e-22bbdf0f .tab i { font-size: 18px; color: inherit; }

.e-22bbdf0f .tab .badge
{
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	padding: 2px 6px;
	border-radius: 999px;
	color: var(--ot-brand);
	background: var(--ot-brand-opacity);
}

/* Sizes */
.e-22bbdf0f > .box.size-s .tab { height: var(--ot-height-s); padding: 0 var(--ot-spacing-s); font-size: var(--ot-size-s); }
.e-22bbdf0f > .box.size-l .tab { height: var(--ot-height-l); padding: 0 var(--ot-spacing-l); }

@media screen and (max-width: 560px)
{
	.e-22bbdf0f > .box { width: 100%; overflow-x: auto; }
}
/* tabs — e-4db696c (glass container, coral active indicator) */

.e-4db696c
{
	display: flex;
}

.e-4db696c > .box
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	border-radius: var(--ot-radius-m);
	padding: var(--ot-spacing-x);
}

.e-4db696c > .box > .tab
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	padding: var(--ot-spacing-s) var(--ot-spacing-m);
	border-radius: var(--ot-radius-s);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-2);
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: all var(--site-dur) var(--site-ease);
}

.e-4db696c > .box > .tab > i
{
	font-size: var(--ot-size-l);
}

.e-4db696c > .box > .tab:hover:not(.active)
{
	background: var(--ot-brand-opacity);
	color: var(--ot-text-1);
}

.e-4db696c > .box > .tab.active
{
	background: var(--ot-brand-opacity);
	color: var(--ot-brand);
	box-shadow: inset 0 -2px 0 var(--ot-brand);
}
/* tags — e-4db68d1 (filter chips built on .site-chip) */

.e-4db68d1
{
	display: flex;
}

.e-4db68d1 > .box
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

/* Inactive chip — glass/border treatment derived from .site-chip. */
.e-4db68d1 > .box > .tag
{
	height: auto;
	padding: var(--ot-spacing-x) var(--ot-spacing-s);
	border-radius: var(--ot-radius-l);
	background: var(--site-glass);
	border: 1px solid var(--site-hairline);
	color: var(--ot-text-2);
	font-weight: 500;
	letter-spacing: 0.01em;
	cursor: pointer;
	outline: none;
	transition: color var(--site-dur) var(--site-ease),
		background var(--site-dur) var(--site-ease),
		border-color var(--site-dur) var(--site-ease),
		box-shadow var(--site-dur) var(--site-ease),
		transform var(--site-dur-fast) var(--site-ease);
}

/* Leading dot — collapsed until active, then signals selection. */
.e-4db68d1 > .box > .tag > .dot
{
	width: 0;
	height: 6px;
	border-radius: 999px;
	background: currentColor;
	overflow: hidden;
	transition: width var(--site-dur) var(--site-ease), margin var(--site-dur) var(--site-ease);
}

.e-4db68d1 > .box > .tag:hover
{
	color: var(--ot-text-1);
	border-color: var(--site-hairline-strong);
}

.e-4db68d1 > .box > .tag:active
{
	transform: scale(0.96);
}

.e-4db68d1 > .box > .tag.active
{
	color: white;
	background: var(--ot-brand);
	border-color: var(--ot-brand);
	box-shadow: 0 0 12px var(--ot-brand-opacity);
}

.e-4db68d1 > .box > .tag.active > .dot
{
	width: 6px;
	margin-right: var(--ot-spacing-x);
}
/* footer: e-52bf54cf */

.e-52bf54cf
{
	display: block;
	width: 100%;
}

.e-52bf54cf > .box
{
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	border-top: 1px solid var(--site-hairline);
	background:
		radial-gradient(60% 100% at 50% 100%, rgba(226,112,85,0.06), transparent 70%),
		var(--ot-bg-1);
	overflow: hidden;
	padding-bottom: clamp(4rem, 11vw, 9rem);
}

/* ---- Credit line + links ---- */
.e-52bf54cf .inner
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ot-spacing-m);
	flex-wrap: wrap;
	padding-top: var(--ot-spacing-l);
	padding-bottom: var(--ot-spacing-l);
	position: relative;
	z-index: 1;
}

.e-52bf54cf .made
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.6;
	margin: 0;
}

.e-52bf54cf .framework
{
	color: var(--ot-brand);
	font-weight: 500;
	transition: color var(--site-dur-fast) var(--site-ease);
}

.e-52bf54cf .framework:hover { color: var(--ot-brand-hover); }

.e-52bf54cf .links
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-l);
}

.e-52bf54cf .link
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	transition: color var(--site-dur-fast) var(--site-ease);
}

.e-52bf54cf .link:hover { color: var(--ot-brand); }

/* ---- Bottom ---- */
.e-52bf54cf .bottom
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ot-spacing-m);
	flex-wrap: wrap;
	padding-top: var(--ot-spacing-m);
	padding-bottom: var(--ot-spacing-m);
	border-top: 1px solid var(--site-hairline);
	position: relative;
	z-index: 1;
}

.e-52bf54cf .copyright { font-size: var(--ot-size-s); color: var(--ot-text-3); }
.e-52bf54cf .note { font-size: var(--ot-size-s); color: var(--ot-text-3); }

/* ---- Giant clipped wordmark ---- */
.e-52bf54cf .wordmark
{
	position: absolute;
	left: 50%;
	bottom: -0.18em;
	transform: translateX(-50%);
	font-family: var(--ot-font-secondary), system-ui, sans-serif;
	font-weight: 700;
	font-size: clamp(5rem, 15vw, 14rem);
	letter-spacing: -0.04em;
	line-height: 1;
	white-space: nowrap;
	background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	pointer-events: none;
	z-index: 0;
	user-select: none;
}

@media screen and (max-width: 900px)
{
	.e-52bf54cf .inner { flex-direction: column; align-items: flex-start; }
	.e-52bf54cf .bottom { flex-direction: column; align-items: flex-start; gap: var(--ot-spacing-x); }
}
/* navbar: element root class is e-<GenerateHash('elements-navbar')> = e-45daee5a */

.e-45daee5a
{
	display: block;
}

/* Fixed shell: transparent and click-through; only inner controls catch clicks. */
.e-45daee5a > .box
{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 50;
	pointer-events: none;
}

.e-45daee5a .bar
{
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: var(--ot-spacing-m);
	height: var(--site-nav);
	margin-top: var(--ot-spacing-s);
	padding: 0 var(--ot-spacing-m);
	border-radius: 999px;
	border: 1px solid transparent;
	transition: background var(--site-dur) var(--site-ease), border-color var(--site-dur) var(--site-ease), backdrop-filter var(--site-dur) var(--site-ease), height var(--site-dur) var(--site-ease);
}

/* Scroll-aware: floating glass pill once scrolled. */
.e-45daee5a .bar.is-scrolled
{
	height: 58px;
	background: var(--site-glass);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border-color: var(--site-hairline);
	box-shadow: var(--site-shadow-m);
}

/* Logo */
.e-45daee5a .logo
{
	display: inline-flex;
	align-items: center;
	pointer-events: auto;
	transition: opacity var(--ot-transition);
}

.e-45daee5a .logo:hover { opacity: 0.8; }

.e-45daee5a .logo-text
{
	font-family: var(--ot-font-secondary), system-ui, sans-serif;
	font-size: 1.15rem;
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--ot-text-1);
	white-space: nowrap;
}

.e-45daee5a .logo-accent
{
	background: linear-gradient(180deg, var(--ot-brand) 0%, var(--ot-brand-hover) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: var(--ot-brand);
}

/* Center links */
.e-45daee5a .links
{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-x);
	pointer-events: auto;
}

.e-45daee5a .link
{
	display: inline-flex;
	align-items: center;
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	border-radius: var(--ot-radius-m);
	font-size: var(--ot-size-m);
	font-weight: 500;
	color: var(--ot-text-2);
	cursor: pointer;
	transition: color var(--ot-transition), background var(--ot-transition);
}

.e-45daee5a .link:hover
{
	color: var(--ot-text-1);
	background: var(--ot-bg-2);
}

/* Right actions */
.e-45daee5a .actions
{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--ot-spacing-s);
	pointer-events: auto;
}

/* GitHub icon link */
.e-45daee5a .github
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--ot-height-m);
	height: var(--ot-height-m);
	border-radius: var(--ot-radius-m);
	color: var(--ot-text-2);
	transition: color var(--site-dur-fast) var(--site-ease), background var(--site-dur-fast) var(--site-ease);
}

.e-45daee5a .github:hover { color: var(--ot-text-1); background: var(--ot-bg-2); }
.e-45daee5a .github > i { font-size: 18px; color: inherit; }

/* Mobile: hide center links, keep wordmark and actions. */
@media screen and (max-width: 991.98px)
{
	.e-45daee5a .bar { height: var(--site-nav-mobile); }
	.e-45daee5a .bar.is-scrolled { height: 50px; }
	.e-45daee5a .links { display: none; }
}
/* 404 page */

.notfound
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--ot-spacing-l);
	flex: 1;
	min-height: 60vh;
	padding-top: calc(var(--site-nav) + var(--site-section));
	padding-bottom: var(--site-section);
	text-align: center;
}

.notfound-actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
	justify-content: center;
}
/* Site background — dotted grid + vertical dashed rails, fixed behind all content.
   Element root class is e-<GenerateHash('elements-background')> = e-2a46703c.
   Pure CSS: dots via a radial-gradient, rails via dashed linear-gradients.
   Hidden on small screens (decoration only). */

.e-2a46703c
{
	display: block;
}

.e-2a46703c > .box
{
	position: fixed;
	inset: 0;
	z-index: -10;
	overflow: hidden;
	pointer-events: none;
	background: var(--ot-bg-1);
}

/* Wide frame carrying the dotted pattern. */
.e-2a46703c .dots
{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: var(--site-wide);
	height: 100%;
	background-image: radial-gradient(var(--site-dot-color) 0.75px, transparent 0.75px);
	background-size: var(--site-dot) var(--site-dot);
	background-position: 0 0;
	mask-image: linear-gradient(to bottom, black 0%, black 70%, transparent 100%);
	-webkit-mask-image: linear-gradient(to bottom, black 0%, black 70%, transparent 100%);
}

/* Content-column frame carrying the two vertical dashed rails. */
.e-2a46703c .rails
{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: var(--site-content);
	height: 100%;
}

.e-2a46703c .rail
{
	position: absolute;
	top: 0;
	width: var(--site-rail);
	height: 100%;
	background-image: linear-gradient(to bottom, var(--site-rail-color) 50%, transparent 50%);
	background-size: var(--site-rail) var(--site-grid-cell);
	background-repeat: repeat-y;
}

.e-2a46703c .rail.left { left: 0; }
.e-2a46703c .rail.right { right: 0; }

/* Soft brand glow at the very top, behind the hero. */
.e-2a46703c .glow
{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: var(--site-wide);
	height: 720px;
	background: var(--site-glow);
	opacity: 0.7;
}

@media screen and (max-width: 991.98px)
{
	.e-2a46703c .dots,
	.e-2a46703c .rails
	{
		display: none;
	}
}
/* Site layout utilities — content column, sections, dividers. */

/* Central content column, aligned to the background frame. */
.site-content
{
	width: 100%;
	max-width: var(--site-content);
	margin: 0 auto;
	padding: 0 var(--ot-spacing-l);
}

.site-wide
{
	width: 100%;
	max-width: var(--site-wide);
	margin: 0 auto;
	padding: 0 var(--ot-spacing-l);
}

/* Major vertical section spacing. */
.site-section
{
	padding-top: var(--site-section);
	padding-bottom: var(--site-section);
}

.site-section-s
{
	padding-top: var(--site-section-s);
	padding-bottom: var(--site-section-s);
}

/* First section under the fixed navbar gets navbar height of breathing room. */
.site-section-top
{
	padding-top: calc(var(--site-nav) + var(--site-section));
}

/* Horizontal hairline divider that spans the content column. */
.site-divider
{
	width: 100%;
	height: 1px;
	background: var(--site-hairline);
	border: 0;
}

@media screen and (max-width: 900px)
{
	.site-content,
	.site-wide
	{
		padding: 0 var(--ot-spacing-m);
	}

	.site-section-top
	{
		padding-top: calc(var(--site-nav-mobile) + var(--site-section));
	}
}
/* Motion — scroll-reveal fade in/out is DISABLED by request.
   data-reveal / data-reveal-stagger attributes remain harmless no-ops (always visible).
   Only small purposeful keyframes (float, pulse, sheen) are kept for active elements. */

[data-reveal],
[data-reveal-stagger] > *
{
	opacity: 1;
	transform: none;
}

/* Slow floating bob (hero chips). */
@keyframes site-float
{
	0%, 100% { transform: translateY(0); }
	50%      { transform: translateY(-6px); }
}

/* Gradient sheen sweep (eyebrows / badges). */
@keyframes site-sheen
{
	0%   { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

/* Conic border spin (featured accents). */
@keyframes site-spin
{
	to { transform: rotate(1turn); }
}
/* Site surfaces — glass, gradient-hairline cards, cursor glow, chips, pills. */

/* Frosted glass surface (navbar, dropdowns, floating bars). */
.site-glass
{
	background: var(--site-glass);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	border: 1px solid var(--site-hairline);
}

.site-glass-strong
{
	background: var(--site-glass-strong);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
}

/* ---- Gradient-hairline card ----
   A premium card: layered fill + a 1px gradient border drawn with a masked ::before,
   plus an optional cursor-tracked glow (--mx/--my set by the glow behavior in JS). */
.site-card
{
	position: relative;
	background: var(--site-card);
	border-radius: var(--ot-radius-l);
	isolation: isolate;
	transition: transform var(--site-dur-fast) var(--site-ease), background var(--site-dur-fast) var(--site-ease);
}

/* gradient hairline border */
.site-card::before
{
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 1px;
	background: var(--site-border-gradient);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	mask-composite: exclude;
	pointer-events: none;
	z-index: 1;
}

/* cursor-tracked glow (radial follows --mx/--my; opacity ramps in on hover) */
.site-card::after
{
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: radial-gradient(220px circle at var(--mx, 50%) var(--my, 0%), var(--ot-brand-opacity), transparent 60%);
	opacity: 0;
	transition: opacity var(--site-dur) var(--site-ease);
	pointer-events: none;
	z-index: 0;
}

.site-card:hover::after { opacity: 1; }

.site-card.is-hover-lift:hover
{
	transform: translateY(-4px);
	background: var(--site-card-hover);
}

/* a flat bordered panel (no gradient), for larger regions */
.site-panel
{
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	border-radius: var(--ot-radius-l);
}

.site-panel-2
{
	background: var(--ot-bg-3);
	border: 1px solid var(--ot-bg-3-border);
	border-radius: var(--ot-radius-l);
}

/* Icon tile — framed icon used across cards/features. */
.site-tile
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: var(--ot-radius-m);
	background: linear-gradient(180deg, var(--ot-brand-opacity), transparent), var(--ot-bg-3);
	border: 1px solid var(--site-hairline-strong);
	color: var(--ot-brand);
	position: relative;
	z-index: 1;
}

.site-tile i { font-size: 24px; color: inherit; }

/* Small rounded chip. */
.site-chip
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
	border-radius: 999px;
	background: var(--ot-bg-3);
	border: 1px solid var(--site-hairline);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	white-space: nowrap;
}

.site-chip i { font-size: 14px; }

/* Status dot. */
.site-dot-status
{
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: var(--ot-text-3);
	flex-shrink: 0;
}

.site-dot-status.live
{
	background: var(--ot-green);
	box-shadow: 0 0 0 3px var(--ot-green-opacity);
	animation: site-pulse 2.4s var(--site-ease) infinite;
}

.site-dot-status.soon { background: var(--ot-orange); box-shadow: 0 0 0 3px var(--ot-orange-opacity); }

@keyframes site-pulse
{
	0%, 100% { box-shadow: 0 0 0 3px var(--ot-green-opacity); }
	50%      { box-shadow: 0 0 0 5px rgba(52,211,153,0.05); }
}
/* Site-level design tokens — layered on top of canonical framework --ot-* tokens. */

:root
{
	/* Layout frame */
	--site-content: 1200px;        /* central content column */
	--site-wide: 1480px;           /* wide background frame (dots + outer rails) */
	--site-rail: 1px;              /* vertical rail thickness */
	--site-nav: 72px;              /* navbar height (desktop) */
	--site-nav-mobile: 54px;       /* navbar height (mobile) */

	/* Vertical section rhythm */
	--site-section: 120px;         /* between major sections */
	--site-section-s: 72px;        /* tighter sections */

	/* Background grid */
	--site-grid-cell: 32px;        /* dash + rail repeat */
	--site-dot: 12px;              /* dotted pattern repeat */
	--site-dot-color: rgba(255, 255, 255, 0.035);
	--site-rail-color: rgba(255, 255, 255, 0.05);

	/* Surfaces — refined, layered */
	--site-glass: rgba(18, 18, 21, 0.66);
	--site-glass-strong: rgba(16, 16, 19, 0.86);
	--site-hairline: rgba(255, 255, 255, 0.07);
	--site-hairline-strong: rgba(255, 255, 255, 0.12);

	/* Elevated card fill — a hair lighter than bg-2, with a top sheen via gradient */
	--site-card: linear-gradient(180deg, rgba(255,255,255,0.025) 0%, rgba(255,255,255,0) 120px), var(--ot-bg-2);
	--site-card-hover: linear-gradient(180deg, rgba(255,255,255,0.04) 0%, rgba(255,255,255,0) 140px), var(--ot-bg-2-hover);

	/* Gradient hairline border (for .site-border / cards). Used as border-image or layered bg. */
	--site-border-gradient: linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.04) 40%, rgba(255,255,255,0.02));

	/* Brand glow variants */
	--site-glow: radial-gradient(60% 60% at 50% 0%, var(--ot-brand-opacity) 0%, transparent 70%);
	--site-glow-soft: radial-gradient(50% 50% at 50% 0%, rgba(226,112,85,0.10) 0%, transparent 70%);

	/* Subtle grain overlay (data-uri SVG fractal noise) */
	--site-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");

	/* Shadows — softer, more layered than framework defaults */
	--site-shadow-s: 0 1px 2px rgba(0,0,0,0.3), 0 2px 6px rgba(0,0,0,0.2);
	--site-shadow-m: 0 4px 16px rgba(0,0,0,0.32), 0 1px 3px rgba(0,0,0,0.25);
	--site-shadow-l: 0 24px 60px -16px rgba(0,0,0,0.55), 0 8px 24px -12px rgba(0,0,0,0.4);
	--site-shadow-glow: 0 0 0 1px var(--ot-brand-border), 0 8px 40px -8px var(--ot-brand-opacity);

	/* Motion */
	--site-ease: cubic-bezier(0.22, 1, 0.36, 1);          /* expo-out, the "Linear" feel */
	--site-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1); /* slight overshoot */
	--site-dur: 0.5s;
	--site-dur-fast: 0.24s;

	/* Monospace (terminals, code, version pills, region codes) */
	--ot-font-mono: ui-monospace, 'SF Mono', 'JetBrains Mono', Menlo, Consolas, monospace;

	/* Display type scale (hero / section titles) */
	--site-display: clamp(2.6rem, 1.6rem + 4.4vw, 4.7rem);
	--site-title: clamp(2rem, 1.4rem + 2.4vw, 3rem);
	--site-lead: clamp(1.02rem, 0.94rem + 0.42vw, 1.2rem);
}

@media screen and (max-width: 900px)
{
	:root
	{
		--site-section: 72px;
		--site-section-s: 48px;
	}
}

@media (prefers-reduced-motion: reduce)
{
	*, *::before, *::after
	{
		animation-duration: 0.001ms !important;
		transition-duration: 0.001ms !important;
		scroll-behavior: auto !important;
	}
}
/* Site typography — display headings, eyebrows, leads, gradient accent. */

/* Big hero / page display heading. */
.site-display
{
	font-family: var(--ot-font-secondary), system-ui, sans-serif;
	font-size: var(--site-display);
	font-weight: 600;
	line-height: 1.04;
	letter-spacing: -0.03em;
	color: var(--ot-text-1);
	margin: 0;
}

/* Section-level title (smaller than hero). */
.site-title
{
	font-family: var(--ot-font-secondary), system-ui, sans-serif;
	font-size: var(--site-title);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.02em;
	color: var(--ot-text-1);
	margin: 0;
}

/* Coral accent applied to a span inside a display/title — subtle vertical gradient for depth. */
.site-accent
{
	background: linear-gradient(180deg, var(--ot-brand) 0%, var(--ot-brand-hover) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: var(--ot-brand);
}

/* Muted display continuation (title second line that should read softer than the accent). */
.site-muted-line
{
	color: var(--ot-text-3);
}

/* Small uppercase label above a title — pill with a sheen sweep. */
.site-eyebrow
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: 5px 12px 5px 10px;
	border-radius: 999px;
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	font-size: var(--ot-size-s);
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--ot-text-2);
	margin: 0;
}

.site-eyebrow .dot
{
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: var(--ot-brand);
	box-shadow: 0 0 0 4px var(--ot-brand-opacity);
	flex-shrink: 0;
}

.site-eyebrow b
{
	font-weight: 600;
	color: var(--ot-brand);
}

/* Supporting paragraph under a title. */
.site-lead
{
	font-size: var(--site-lead);
	line-height: 1.6;
	color: var(--ot-text-2);
	margin: 0;
	max-width: 60ch;
}

/* Centered blocks constrain lead width and center it. */
.site-center
{
	text-align: center;
}

.site-center .site-lead,
.site-center .site-eyebrow
{
	margin-left: auto;
	margin-right: auto;
}
/* code-window — e-3659bfa */

.e-3659bfa
{
	display: block;
}

.e-3659bfa > .box
{
	display: flex;
	flex-direction: column;
	border-radius: var(--ot-radius-l);
	background: var(--ot-bg-2);
	border: 1px solid var(--ot-bg-2-border);
	box-shadow: var(--ot-shadow-l);
	overflow: hidden;
}

.e-3659bfa .chrome
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	height: 44px;
	padding: 0 var(--ot-spacing-m);
	background: var(--ot-bg-3);
	border-bottom: 1px solid var(--ot-bg-2-border);
}

.e-3659bfa .dots
{
	display: inline-flex;
	gap: 6px;
	flex-shrink: 0;
}

.e-3659bfa .dots span
{
	width: 11px;
	height: 11px;
	border-radius: 999px;
	background: var(--ot-bg-4);
}

.e-3659bfa .dots span:nth-child(1) { background: #ff5f57; }
.e-3659bfa .dots span:nth-child(2) { background: #febc2e; }
.e-3659bfa .dots span:nth-child(3) { background: #28c840; }

.e-3659bfa .tabs
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-x);
}

.e-3659bfa .tab
{
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
	border-radius: var(--ot-radius-s);
	font-size: var(--ot-size-s);
	font-weight: 500;
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	color: var(--ot-text-3);
	transition: color var(--ot-transition), background var(--ot-transition);
}

.e-3659bfa .tab:hover { color: var(--ot-text-2); }

.e-3659bfa .tab.active
{
	color: var(--ot-text-1);
	background: var(--ot-bg-4);
}

.e-3659bfa .title
{
	margin-left: auto;
	font-size: var(--ot-size-s);
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	color: var(--ot-text-3);
}

.e-3659bfa .code
{
	margin: 0;
	padding: var(--ot-spacing-l);
	overflow-x: auto;
	font-family: var(--ot-font-mono);
	font-size: var(--ot-size-m);
	line-height: 1.7;
	color: var(--ot-text-1);
	tab-size: 2;
	white-space: pre;
}

.e-3659bfa .code code
{
	font-family: inherit;
	color: var(--ot-text-2);
}

/* Syntax tokens (rendered as real <span class="t-*"> via ot-for) */
.e-3659bfa .code .t-p { color: var(--ot-text-2); }                   /* plain */
.e-3659bfa .code .t-k { color: var(--ot-brand); }                   /* keywords / verbs */
.e-3659bfa .code .t-s { color: var(--ot-green); }                   /* strings */
.e-3659bfa .code .t-n { color: var(--ot-orange); }                  /* numbers */
.e-3659bfa .code .t-f { color: var(--ot-blue); }                    /* function calls */
.e-3659bfa .code .t-c { color: var(--ot-text-3); font-style: italic; } /* comments */
/* cta — e-21309bc6 */

.e-21309bc6
{
	display: block;
}

.e-21309bc6 .panel
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-m);
	text-align: center;
	padding: var(--site-section-s) var(--ot-spacing-l);
	border-radius: var(--ot-radius-l);
	background:
		radial-gradient(80% 120% at 50% -10%, var(--ot-brand-opacity), transparent 60%),
		var(--ot-bg-2);
	border: 1px solid var(--ot-brand-border);
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

/* dotted grid texture inside the panel */
.e-21309bc6 .panel::before
{
	content: '';
	position: absolute;
	inset: 0;
	background-image: radial-gradient(var(--site-hairline) 1px, transparent 1px);
	background-size: 22px 22px;
	mask-image: radial-gradient(70% 70% at 50% 0%, black, transparent 70%);
	-webkit-mask-image: radial-gradient(70% 70% at 50% 0%, black, transparent 70%);
	opacity: 0.6;
	pointer-events: none;
	z-index: -1;
}

/* top brand glow line */
.e-21309bc6 .panel::after
{
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 60%;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--ot-brand), transparent);
	pointer-events: none;
}

.e-21309bc6 .panel > *
{
	position: relative;
	z-index: 1;
}

.e-21309bc6 .site-lead
{
	max-width: 56ch;
	margin-left: auto;
	margin-right: auto;
}

.e-21309bc6 .actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
	justify-content: center;
	margin-top: var(--ot-spacing-x);
}

.e-21309bc6 .note
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-21309bc6 .note i { font-size: 15px; color: var(--ot-green); }
/* feature — e-1700c7e0 (built on .site-card) */

.e-1700c7e0
{
	display: block;
	height: 100%;
}

.e-1700c7e0 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	height: 100%;
	padding: var(--ot-spacing-l);
}

.e-1700c7e0 .icon
{
	margin-bottom: var(--ot-spacing-x);
	transition: transform var(--site-dur) var(--site-ease);
}

.e-1700c7e0 > .box:hover .icon { transform: translateY(-2px); }

.e-1700c7e0 .title
{
	font-size: var(--ot-size-l);
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
	margin: 0;
}

.e-1700c7e0 .body
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.65;
	margin: 0;
}

.e-1700c7e0 .bullets
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	list-style: none;
	padding: 0;
	margin: var(--ot-spacing-s) 0 0;
}

.e-1700c7e0 .bullets li
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
}

.e-1700c7e0 .tick
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 999px;
	background: var(--ot-brand-opacity);
	flex-shrink: 0;
}

.e-1700c7e0 .tick i { font-size: 12px; color: var(--ot-brand); }
/* features — e-36e7cc53 */

.e-36e7cc53
{
	display: block;
}

.e-36e7cc53 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-l);
}

.e-36e7cc53 .grid
{
	display: grid;
	gap: var(--ot-spacing-l);
}

.e-36e7cc53 .grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
.e-36e7cc53 .grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
.e-36e7cc53 .grid.cols-4 { grid-template-columns: repeat(4, 1fr); }

@media screen and (max-width: 991.98px)
{
	.e-36e7cc53 .grid.cols-3,
	.e-36e7cc53 .grid.cols-4 { grid-template-columns: repeat(2, 1fr); }
}

@media screen and (max-width: 600px)
{
	.e-36e7cc53 .grid { grid-template-columns: 1fr; }
}
/* hero — e-4e0ccf0 */

.e-4e0ccf0
{
	display: block;
	position: relative;
}

.e-4e0ccf0 > .box
{
	position: relative;
	display: flex;
	justify-content: center;
	padding-top: calc(var(--site-nav) + 96px);
	padding-bottom: var(--site-section);
	overflow: hidden;
}

/* Layered gradient mesh glow behind the hero copy. */
.e-4e0ccf0 .mesh
{
	position: absolute;
	top: -160px;
	left: 50%;
	transform: translateX(-50%);
	width: 1100px;
	max-width: 140vw;
	height: 760px;
	pointer-events: none;
	background:
		radial-gradient(38% 50% at 50% 0%, rgba(226,112,85,0.16), transparent 70%),
		radial-gradient(30% 40% at 22% 18%, rgba(56,189,248,0.08), transparent 70%),
		radial-gradient(30% 40% at 80% 16%, rgba(226,112,85,0.08), transparent 70%);
	filter: blur(8px);
}

.e-4e0ccf0 .inner
{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ot-spacing-l);
	max-width: 900px;
}

.e-4e0ccf0 .site-display
{
	max-width: 17ch;
}

.e-4e0ccf0 .site-lead
{
	font-size: var(--site-lead);
	max-width: 60ch;
}

.e-4e0ccf0 .actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
	justify-content: center;
	margin-top: var(--ot-spacing-x);
}

.e-4e0ccf0 .note
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-4e0ccf0 .note i { font-size: 15px; color: var(--ot-green); }

/* Floating product chips */
.e-4e0ccf0 .chips
{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--ot-spacing-s);
	margin-top: var(--ot-spacing-m);
}

.e-4e0ccf0 .chip
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	height: var(--ot-height-m);
	padding: 0 var(--ot-spacing-m);
	border-radius: 999px;
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
	box-shadow: var(--site-shadow-s);
	animation: site-float 6s var(--site-ease) infinite;
}

.e-4e0ccf0 .chip:nth-child(even) { animation-delay: -3s; }
.e-4e0ccf0 .chip:nth-child(3n)   { animation-delay: -1.5s; }

.e-4e0ccf0 .chip i { font-size: 16px; color: var(--ot-brand); }

@media screen and (max-width: 900px)
{
	.e-4e0ccf0 > .box
	{
		padding-top: calc(var(--site-nav-mobile) + 60px);
		padding-bottom: var(--site-section);
	}
}
/* hero-terminal — e-387fab67 */

.e-387fab67
{
	display: block;
	position: relative;
}

.e-387fab67 > .box
{
	position: relative;
	padding-top: calc(var(--site-nav) + 80px);
	overflow: hidden;
}

/* layered brand mesh glow */
.e-387fab67 .mesh
{
	position: absolute;
	top: -180px;
	left: 50%;
	transform: translateX(-50%);
	width: 1300px;
	max-width: 150vw;
	height: 820px;
	pointer-events: none;
	background:
		radial-gradient(34% 44% at 28% 0%, rgba(226,112,85,0.18), transparent 70%),
		radial-gradient(30% 40% at 80% 10%, rgba(56,189,248,0.10), transparent 70%);
	filter: blur(6px);
}

/* faint converging grid lines behind the copy */
.e-387fab67 .grid-lines
{
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		linear-gradient(90deg, var(--site-hairline) 1px, transparent 1px),
		linear-gradient(var(--site-hairline) 1px, transparent 1px);
	background-size: 64px 64px;
	mask-image: radial-gradient(60% 60% at 30% 30%, black, transparent 75%);
	-webkit-mask-image: radial-gradient(60% 60% at 30% 30%, black, transparent 75%);
	opacity: 0.5;
}

/* Asymmetric split: copy left, window right. */
.e-387fab67 .inner
{
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1.08fr;
	align-items: center;
	gap: var(--site-section-s);
}

/* ---- Copy ---- */
.e-387fab67 .copy
{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ot-spacing-s);
}

.e-387fab67 .site-display
{
	max-width: 14ch;
	margin-top: var(--ot-spacing-m);
	font-size: clamp(2.9rem, 1.8rem + 4.8vw, 5.2rem);
	letter-spacing: -0.035em;
	line-height: 1.0;
}

.e-387fab67 .site-lead { max-width: 46ch; margin-top: var(--ot-spacing-x); }

.e-387fab67 .actions
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
	margin-top: var(--ot-spacing-m);
}

.e-387fab67 .meta
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
	margin-top: var(--ot-spacing-m);
	width: 100%;
}

.e-387fab67 .meta-item
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	height: var(--ot-height-s);
	padding: 0 var(--ot-spacing-s);
	border-radius: 999px;
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	font-size: var(--ot-size-s);
	font-weight: 500;
	color: var(--ot-text-2);
}

.e-387fab67 .meta-item i { font-size: 14px; color: var(--ot-brand); }

/* ---- IDE window ---- */
.e-387fab67 .window
{
	position: relative;
	display: grid;
	grid-template-columns: auto 1fr;
	border-radius: var(--ot-radius-l);
	background: var(--site-glass-strong);
	backdrop-filter: var(--ot-blur);
	-webkit-backdrop-filter: var(--ot-blur);
	box-shadow: var(--site-shadow-l);
	overflow: hidden;
	isolation: isolate;
	transition: transform var(--site-dur) var(--site-ease);
}

.e-387fab67 .window:hover { transform: translateY(-2px); }

/* soft brand glow bleeding from behind the window */
.e-387fab67 .window-glow
{
	position: absolute;
	inset: -1px;
	border-radius: inherit;
	background: radial-gradient(120% 80% at 100% 0%, var(--ot-brand-opacity), transparent 55%);
	pointer-events: none;
	z-index: 0;
}

.e-387fab67 .window::before
{
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 1px;
	background: var(--site-border-gradient);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	mask-composite: exclude;
	pointer-events: none;
	z-index: 3;
}

/* left rail of product tabs */
.e-387fab67 .rail
{
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: var(--ot-spacing-s);
	background: rgba(0,0,0,0.28);
	border-right: 1px solid var(--site-hairline);
}

.e-387fab67 .rail-tab
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	padding: var(--ot-spacing-s);
	border-radius: var(--ot-radius-m);
	color: var(--ot-text-3);
	transition: color var(--site-dur-fast) var(--site-ease), background var(--site-dur-fast) var(--site-ease);
	position: relative;
}

.e-387fab67 .rail-tab i { font-size: 20px; color: inherit; }

.e-387fab67 .rail-label
{
	font-size: var(--ot-size-s);
	font-weight: 500;
	white-space: nowrap;
}

.e-387fab67 .rail-tab:hover { color: var(--ot-text-2); background: rgba(255,255,255,0.04); }

.e-387fab67 .rail-tab.active
{
	color: var(--ot-text-1);
	background: var(--ot-brand-opacity);
}

.e-387fab67 .rail-tab.active::before
{
	content: '';
	position: absolute;
	left: -1px;
	top: 18%;
	height: 64%;
	width: 2px;
	border-radius: 999px;
	background: var(--ot-brand);
	box-shadow: 0 0 8px var(--ot-brand);
}

/* terminal pane */
.e-387fab67 .term
{
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	min-width: 0;
	background: linear-gradient(180deg, rgba(255,255,255,0.02), transparent 120px);
}

.e-387fab67 .term-bar
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	height: 44px;
	padding: 0 var(--ot-spacing-m);
	border-bottom: 1px solid var(--site-hairline);
}

.e-387fab67 .dots { display: inline-flex; gap: 6px; }
.e-387fab67 .dots span { width: 11px; height: 11px; border-radius: 999px; background: var(--ot-bg-4); }
.e-387fab67 .dots span:nth-child(1) { background: #ff5f57; }
.e-387fab67 .dots span:nth-child(2) { background: #febc2e; }
.e-387fab67 .dots span:nth-child(3) { background: #28c840; }

.e-387fab67 .term-title
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	font-family: var(--ot-font-mono);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-387fab67 .term-title i { font-size: 14px; color: var(--ot-text-3); }

.e-387fab67 .term-body
{
	flex: 1;
	padding: var(--ot-spacing-m);
	min-height: 320px;
	max-height: 320px;
	overflow: hidden;
	font-family: var(--ot-font-mono);
	font-size: var(--ot-size-m);
	line-height: 1.9;
}

.e-387fab67 .term-line
{
	display: flex;
	align-items: baseline;
	gap: var(--ot-spacing-m);
	white-space: pre-wrap;
	word-break: break-word;
}

/* line-number gutter */
.e-387fab67 .term-num
{
	flex-shrink: 0;
	width: 1.4em;
	text-align: right;
	color: var(--ot-text-3);
	opacity: 0.45;
	user-select: none;
}

.e-387fab67 .term-run
{
	display: inline-flex;
	align-items: baseline;
	gap: var(--ot-spacing-x);
	min-width: 0;
}

.e-387fab67 .term-line.cmd .term-text { color: var(--ot-text-1); }
.e-387fab67 .term-line.ok .term-text { color: var(--ot-text-2); }
.e-387fab67 .term-line.dim .term-text { color: var(--ot-text-3); }
.e-387fab67 .term-line.out .term-text { color: var(--ot-blue); }
.e-387fab67 .term-line.warn .term-text { color: var(--ot-orange); }

.e-387fab67 .term-prompt { color: var(--ot-brand); font-weight: 600; }
.e-387fab67 .term-arrow { color: var(--ot-text-3); margin-right: 2px; }

.e-387fab67 .term-mark
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transform: translateY(3px);
}

.e-387fab67 .term-mark i { font-size: 15px; }
.e-387fab67 .term-mark.ok i { color: var(--ot-green); }
.e-387fab67 .term-mark.warn i { color: var(--ot-orange); }
.e-387fab67 .term-mark.out { color: var(--ot-blue); transform: none; }

.e-387fab67 .term-caret
{
	display: inline-block;
	width: 8px;
	height: 1.05em;
	margin-left: 2px;
	transform: translateY(2px);
	background: var(--ot-brand);
	animation: term-blink 1s steps(2) infinite;
}

@keyframes term-blink { 0%,50% { opacity: 1; } 50.01%,100% { opacity: 0; } }

/* status bar */
.e-387fab67 .term-status
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-m);
	height: 32px;
	padding: 0 var(--ot-spacing-m);
	border-top: 1px solid var(--site-hairline);
	background: rgba(0,0,0,0.2);
	font-family: var(--ot-font-mono);
	font-size: var(--ot-size-s);
	color: var(--ot-text-3);
}

.e-387fab67 .status-seg { display: inline-flex; align-items: center; gap: var(--ot-spacing-x); }
.e-387fab67 .status-seg i { font-size: 13px; }
.e-387fab67 .status-dot { width: 6px; height: 6px; border-radius: 999px; background: var(--ot-brand); }
.e-387fab67 .status-ready { margin-left: auto; }

.e-387fab67 .ready-dot
{
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: var(--ot-orange);
	box-shadow: 0 0 0 3px var(--ot-orange-opacity);
}

.e-387fab67 .term-status.ready .ready-dot
{
	background: var(--ot-green);
	box-shadow: 0 0 0 3px var(--ot-green-opacity);
	animation: site-pulse 2.4s var(--site-ease) infinite;
}

.e-387fab67 .term-status.ready .ready-text::after { content: ''; }

/* ---- Responsive: stack ---- */
@media screen and (max-width: 980px)
{
	.e-387fab67 .inner { grid-template-columns: 1fr; gap: var(--site-section-s); }
	.e-387fab67 .copy { align-items: center; text-align: center; }
	.e-387fab67 .site-display, .e-387fab67 .site-lead { max-width: none; }
	.e-387fab67 .meta { justify-content: center; }
}

@media screen and (max-width: 560px)
{
	.e-387fab67 .rail-label { display: none; }
	.e-387fab67 .term-body { min-height: 260px; max-height: 260px; }
	.e-387fab67 .term-status { font-size: 10px; gap: var(--ot-spacing-s); }
}

@media screen and (max-width: 900px)
{
	.e-387fab67 > .box { padding-top: calc(var(--site-nav-mobile) + 48px); }
}
/* proof — e-693dc8ee */

.e-693dc8ee
{
	display: block;
}

.e-693dc8ee .panel
{
	padding: var(--ot-spacing-l);
	overflow: hidden;
}

.e-693dc8ee .caption
{
	text-align: center;
	font-size: var(--ot-size-s);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--ot-text-3);
	margin: 0 0 var(--ot-spacing-l);
}

.e-693dc8ee .stats
{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--ot-spacing-m);
}

.e-693dc8ee .cell
{
	position: relative;
	display: flex;
	justify-content: center;
}

.e-693dc8ee .cell:not(:last-child)::after
{
	content: '';
	position: absolute;
	right: calc(var(--ot-spacing-m) * -0.5);
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 64%;
	background: linear-gradient(180deg, transparent, var(--site-hairline-strong), transparent);
}

@media screen and (max-width: 768px)
{
	.e-693dc8ee .stats { grid-template-columns: repeat(2, 1fr); gap: var(--ot-spacing-l); }
	.e-693dc8ee .cell:nth-child(2)::after { display: none; }
}
/* section-head — e-7a431b22 */

.e-7a431b22
{
	display: block;
}

.e-7a431b22 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
}

.e-7a431b22 .site-lead
{
	max-width: 62ch;
	margin-top: var(--ot-spacing-x);
}

.e-7a431b22 > .box.site-center
{
	max-width: 820px;
	margin-left: auto;
	margin-right: auto;
	align-items: center;
}

.e-7a431b22 .site-eyebrow .dot
{
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: var(--ot-brand);
	box-shadow: 0 0 0 4px var(--ot-brand-opacity);
}
/* timeline: e-338c43a9 */

.e-338c43a9
{
	display: block;
}

.e-338c43a9 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-l);
}

.e-338c43a9 .track
{
	width: 100%;
	max-width: 920px;
	margin: 0 auto;
}

/* Asymmetric row: period left, marker line, content right. */
.e-338c43a9 .entry
{
	display: grid;
	grid-template-columns: 150px 40px minmax(0, 1fr);
	grid-template-areas: 'period marker content';
	column-gap: var(--ot-spacing-s);
}

.e-338c43a9 .period
{
	grid-area: period;
	padding-top: 5px;
	text-align: right;
	font-family: var(--ot-font-mono);
	font-size: var(--ot-size-s);
	letter-spacing: 0.02em;
	color: var(--ot-text-3);
}

.e-338c43a9 .entry.current .period { color: var(--ot-text-2); }

/* marker column: continuous vertical line with a dot per entry */
.e-338c43a9 .marker
{
	grid-area: marker;
	position: relative;
	display: flex;
	justify-content: center;
}

.e-338c43a9 .marker::before
{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 1px;
	transform: translateX(-50%);
	background: var(--site-hairline-strong);
}

.e-338c43a9 .entry:first-child .marker::before { top: 12px; }

.e-338c43a9 .entry:last-child .marker::before
{
	background: linear-gradient(180deg, var(--site-hairline-strong), transparent 80%);
}

.e-338c43a9 .dot
{
	position: relative;
	z-index: 1;
	flex-shrink: 0;
	width: 9px;
	height: 9px;
	margin-top: 7px;
	border-radius: 999px;
	background: var(--ot-bg-4);
	border: 1px solid var(--site-hairline-strong);
}

/* current entry: coral pulsing dot, .site-dot-status style */
.e-338c43a9 .entry.current .dot
{
	background: var(--ot-brand);
	border-color: transparent;
	box-shadow: 0 0 0 3px var(--ot-brand-opacity);
	animation: timeline-pulse 2.4s var(--site-ease) infinite;
}

@keyframes timeline-pulse
{
	0%, 100% { box-shadow: 0 0 0 3px var(--ot-brand-opacity); }
	50%      { box-shadow: 0 0 0 6px rgba(226,112,85,0.05); }
}

.e-338c43a9 .content
{
	grid-area: content;
	min-width: 0;
}

.e-338c43a9 .entry:not(:last-child) .content { padding-bottom: 44px; }

.e-338c43a9 .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

.e-338c43a9 .role
{
	margin: 0;
	font-size: 1.06rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--ot-text-1);
}

.e-338c43a9 .dotsep
{
	width: 3px;
	height: 3px;
	border-radius: 999px;
	background: var(--ot-text-3);
	flex-shrink: 0;
}

.e-338c43a9 .company
{
	font-size: 1rem;
	font-weight: 500;
	color: var(--ot-text-2);
}

.e-338c43a9 .note
{
	display: inline-flex;
	align-items: center;
	height: 22px;
	padding: 0 9px;
	border-radius: 999px;
	background: var(--ot-brand-opacity);
	border: 1px solid var(--ot-brand-border);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--ot-brand);
	white-space: nowrap;
}

.e-338c43a9 .concurrent
{
	display: inline-flex;
	align-items: center;
	gap: 5px;
	height: 22px;
	padding: 0 9px;
	border-radius: 999px;
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	font-size: 12px;
	font-weight: 500;
	color: var(--ot-text-3);
	white-space: nowrap;
}

.e-338c43a9 .concurrent i { font-size: 13px; color: var(--ot-text-3); }

.e-338c43a9 .text
{
	max-width: 62ch;
	margin: var(--ot-spacing-x) 0 0;
	font-size: var(--ot-size-m);
	line-height: 1.65;
	color: var(--ot-text-2);
}

.e-338c43a9 .tags
{
	display: flex;
	flex-wrap: wrap;
	gap: var(--ot-spacing-x);
	margin-top: var(--ot-spacing-s);
}

.e-338c43a9 .tag
{
	display: inline-flex;
	align-items: center;
	height: 24px;
	padding: 0 10px;
	border-radius: 999px;
	background: var(--ot-bg-2);
	border: 1px solid var(--site-hairline);
	font-family: var(--ot-font-mono);
	font-size: 12px;
	color: var(--ot-text-3);
	white-space: nowrap;
}

/* ---- Responsive: period stacks above the entry ---- */
@media screen and (max-width: 768px)
{
	.e-338c43a9 .entry
	{
		grid-template-columns: 24px minmax(0, 1fr);
		grid-template-areas:
			'marker period'
			'marker content';
	}

	.e-338c43a9 .period
	{
		padding-top: 4px;
		margin-bottom: var(--ot-spacing-x);
		text-align: left;
	}

	.e-338c43a9 .dot { margin-top: 8px; }
	.e-338c43a9 .entry:first-child .marker::before { top: 13px; }
	.e-338c43a9 .entry:not(:last-child) .content { padding-bottom: 36px; }
}
/* work: e-4d9d5d9 (bento grid built on .site-card) */

.e-4d9d5d9
{
	display: block;
}

.e-4d9d5d9 > .box
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-l);
}

.e-4d9d5d9 .grid
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--ot-spacing-l);
}

.e-4d9d5d9 .card
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-s);
	height: 100%;
	padding: var(--ot-spacing-l);
	overflow: hidden;
}

.e-4d9d5d9 .card.wide
{
	grid-column: span 2;
}

/* content sits above the ghost decor and the card glow */
.e-4d9d5d9 .top,
.e-4d9d5d9 .head,
.e-4d9d5d9 .body,
.e-4d9d5d9 .points,
.e-4d9d5d9 .link
{
	position: relative;
	z-index: 1;
}

/* ---- Ghost decor (wide card) ---- */
.e-4d9d5d9 .ghost
{
	position: absolute;
	right: -10px;
	bottom: -24px;
	z-index: 0;
	font-family: var(--ot-font-mono);
	font-size: clamp(84px, 48px + 6vw, 140px);
	font-weight: 600;
	letter-spacing: -0.05em;
	line-height: 1;
	white-space: nowrap;
	background: linear-gradient(180deg, rgba(255,255,255,0.085) 0%, rgba(255,255,255,0.01) 90%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	pointer-events: none;
	user-select: none;
}

/* ---- Card head ---- */
.e-4d9d5d9 .top
{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: var(--ot-spacing-x);
}

.e-4d9d5d9 .site-tile
{
	transition: transform var(--site-dur) var(--site-ease);
}

.e-4d9d5d9 .card:hover .site-tile { transform: translateY(-2px); }

.e-4d9d5d9 .index
{
	font-family: var(--ot-font-mono);
	font-size: var(--ot-size-s);
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
	color: var(--ot-text-3);
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--ot-bg-3);
	border: 1px solid var(--site-hairline);
}

.e-4d9d5d9 .head
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	flex-wrap: wrap;
}

.e-4d9d5d9 .name
{
	font-size: 1.35rem;
}

.e-4d9d5d9 .card.wide .name
{
	font-size: 1.65rem;
}

.e-4d9d5d9 .tag
{
	font-family: var(--ot-font-mono);
	font-size: var(--ot-size-s);
	line-height: 1;
	color: var(--ot-text-3);
	padding: 5px 9px;
	border-radius: 999px;
	border: 1px solid var(--site-hairline-strong);
	white-space: nowrap;
}

/* ---- Card body ---- */
.e-4d9d5d9 .body
{
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
	line-height: 1.65;
	margin: 0;
}

.e-4d9d5d9 .card.wide .body
{
	max-width: 58ch;
}

.e-4d9d5d9 .points
{
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--ot-spacing-s);
	list-style: none;
	padding: 0;
	margin: var(--ot-spacing-x) 0 0;
}

.e-4d9d5d9 .card.wide .points
{
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: var(--ot-spacing-l);
	max-width: 680px;
}

.e-4d9d5d9 .points li
{
	display: flex;
	align-items: center;
	gap: var(--ot-spacing-s);
	font-size: var(--ot-size-m);
	color: var(--ot-text-2);
}

.e-4d9d5d9 .tick
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 999px;
	background: var(--ot-brand-opacity);
	flex-shrink: 0;
}

.e-4d9d5d9 .tick i { font-size: 12px; color: var(--ot-brand); }

/* ---- Link ---- */
.e-4d9d5d9 .link
{
	display: inline-flex;
	align-items: center;
	gap: var(--ot-spacing-x);
	width: fit-content;
	margin-top: auto;
	padding-top: var(--ot-spacing-m);
	font-size: var(--ot-size-m);
	font-weight: 600;
	color: var(--ot-text-2);
	text-decoration: none;
	transition: color var(--site-dur-fast) var(--site-ease);
}

.e-4d9d5d9 .link i
{
	font-size: 16px;
	color: var(--ot-brand);
	transition: transform var(--site-dur-fast) var(--site-ease);
}

.e-4d9d5d9 .link:hover { color: var(--ot-text-1); }
.e-4d9d5d9 .link:hover i { transform: translateX(3px); }

@media screen and (max-width: 768px)
{
	.e-4d9d5d9 .grid { grid-template-columns: 1fr; }
	.e-4d9d5d9 .card.wide { grid-column: auto; }
	.e-4d9d5d9 .card.wide .name { font-size: 1.35rem; }
	.e-4d9d5d9 .card.wide .body { max-width: none; }
	.e-4d9d5d9 .card.wide .points { grid-template-columns: 1fr; column-gap: var(--ot-spacing-s); max-width: none; }
	.e-4d9d5d9 .ghost { font-size: 76px; right: -6px; bottom: -16px; }
}
/* Marketing / product page layout shells. */

.page
{
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

/* Anchor targets clear the fixed navbar when jumped to. */
#work,
#career,
#contact
{
	scroll-margin-top: calc(var(--site-nav) + var(--ot-spacing-m));
}

@media screen and (max-width: 900px)
{
	#work,
	#career,
	#contact
	{
		scroll-margin-top: calc(var(--site-nav-mobile) + var(--ot-spacing-m));
	}
}

/* Code/SDK showcase block: head + window stacked, centered. */
.showcase
{
	display: flex;
	flex-direction: column;
	gap: var(--ot-spacing-l);
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
}