.mobile .page-content-standard {
  padding: 1rem 16px 20vh 16px !important;
  width: 100vw !important;
  max-width: 100vw !important;
  overflow-x: hidden;
}
.mobile .page-content-standard > * {
  padding-left: 0;
  padding-right: 0;
}
.mobile .page-header-wrapper {
  margin-bottom: 1rem;
}
.mobile .pageheader {
  padding: 0;
  margin-bottom: 0;
}
.mobile .pageheader .H1 {
  font-size: 2rem;
  line-height: 1.2;
  margin-bottom: 0.5rem;
}
.mobile .pageheader .Lead {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 1rem;
}
.mobile .universal-search-container {
  margin-bottom: 1rem;
  background-color: transparent !important;
  border-radius: 0 !important;
}
.mobile .universal-search-container .universal-search-tag-categories {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 0.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title {
  font-size: 0.75rem;
  line-height: 1.4;
  opacity: 0.6;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  flex-shrink: 0;
  min-width: 4rem;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category .universal-search-tag-list {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category .universal-search-tag-list .tag {
  font-size: 0.875rem;
  line-height: 1.5;
  padding: 0.4rem 0.6rem;
  flex-shrink: 0;
}
.mobile .test-container,
.mobile .search-container {
  padding-bottom: 1rem;
}
.mobile .bars {
  padding-top: 2.3rem;
}
.mobile .bars .statusline .title {
  white-space: nowrap;
  overflow: hidden;
  display: flex;
  gap: 0.25rem;
}
.mobile .bars .statusline .title > .font-caps {
  max-width: calc(95vw / 2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
}
.mobile .bars .statusline .title .tags {
  max-width: calc(95vw / 2);
  white-space: nowrap !important;
  overflow: hidden;
  flex-wrap: nowrap !important;
  flex-shrink: 0;
}
.mobile .bars .statusline .title .tags .tag {
  white-space: nowrap;
  display: inline-block;
}
.mobile .api-content section,
.mobile .api-content .flex,
.mobile .api-content button {
  margin-left: 0;
  margin-right: 0;
}
.mobile .Dashboard {
  min-height: 100vh;
}
.mobile .Dashboard .dashboard-grid {
  padding: 0 !important;
  gap: 0 !important;
}
.mobile .Dashboard .dashboard-grid .card {
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  margin-left: -16px;
  margin-right: -16px;
}
.mobile .Dashboard .dashboard-grid .deployment-gantt-chart {
  display: none !important;
}
.mobile .achievements-grid {
  grid-template-columns: 1fr;
}
.mobile .tag-category {
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  gap: 0.5rem;
}
.mobile .tag-category-title {
  min-width: auto;
  font-size: 0.75rem;
  line-height: 1.4;
}
.mobile .tag-category-tags {
  width: 100%;
  flex-wrap: wrap;
}
.mobile .keyword-table-wrapper {
  width: calc(100vw - 1rem);
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  padding: 0 0.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.mobile .keyword-table {
  font-size: 0.875rem;
  line-height: 1.5;
  min-width: 500px;
}
.mobile .button {
  max-width: 95vw;
}
.mobile .spotlight-message {
  width: 95vw;
  min-width: 95vw !important;
}
.TestPage {
  position: relative;
  height: 100vh;
  width: 100vw;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background-color: #000;
}
.TestPage .test-replay {
  background: transparent;
  width: 100%;
  height: 100%;
}
.TestPage .hidden-view {
  opacity: 0;
  pointer-events: none;
}
.TestPage .view-layer-front {
  z-index: 200;
  pointer-events: none;
}
.TestPage .view-layer-back {
  z-index: 100;
  pointer-events: none;
}
.TestPage .test-container {
  margin: 0 auto;
  top: 2.3rem;
}
.TestPage .test-edit-container {
  display: flex;
  height: 100%;
  width: 100%;
}
.TestPage .monaco-editor-container {
  flex: 1;
  min-width: 40vw;
}
.TestPage > .Replay {
  flex: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #000;
}
.TestPage .test-panel {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  position: fixed;
  left: 72px;
  top: 12px;
  width: 28vw;
  height: calc(100vh - 24px);
  z-index: 900;
  display: flex;
  flex-direction: column;
}
.TestPage .test-panel > * {
  flex: 1;
  min-height: 0;
}
.TestPage .test-panel .monaco-editor-container {
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.TestPage .test-panel .monaco-editor-container .monaco-container {
  flex: 1;
  height: 100%;
}
.TestPage .test-panel .TestDashboard {
  overflow-y: auto;
}
.mobile .test-container {
  top: 0.5rem;
}
.mobile .monaco-editor-container {
  min-width: 95vw;
}
.mobile .test-panel {
  left: 0;
  right: 0;
  top: auto;
  width: 100vw;
  height: 60vh;
  border-radius: 14px 14px 0 0;
}
.onboarding-subscription-page {
  display: flex;
  align-items: center;
  min-height: 100vh;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.home-status-icon {
  min-height: 48px;
}
.home-status-text {
  min-height: 32px;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
}
.home-status-ok-icon {
  border-radius: 9999px;
  width: 3rem;
  height: 3rem;
}
.home-status-notok-icon {
  color: #ef4444;
  width: 3rem;
  height: 3rem;
}
.home-status-section {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80vh;
  flex-direction: column;
}
.tag-group-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.group-by-item {
  cursor: pointer;
}
.groupStatuses {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 2rem 0;
}
.groupStatuses .group-header-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5rem;
  text-align: center;
}
.groupStatuses .group-header-center h1 {
  margin: 0;
}
.groupStatuses .group-by-row {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.groupStatuses .tag-group-section {
  width: 100%;
  margin-bottom: 2rem;
}
.artifacts-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 4rem 2rem;
  text-align: center;
  gap: 1rem;
}
.artifact-group {
  margin-top: 2.5rem;
}
.artifact-group .groupHeading {
  margin-bottom: 0.5rem;
}
.artifacts-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.artifacts-container .artifacts-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}
.artifacts-container .artifacts-header .artifacts-title {
  font-size: 1.5rem;
  font-weight: 600;
}
.artifacts-container .artifacts-header .artifacts-actions {
  display: flex;
  gap: 0.5rem;
}
.artifacts-container .artifacts-stats {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin-bottom: 1rem;
}
.artifacts-container .item-cards-container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1rem;
}
@media (max-width: 640px) {
  .artifacts-container .item-cards-container {
    grid-template-columns: 1fr;
  }
}
.artifacts-container .artifact-detail .artifact-header {
  margin-bottom: 1.5rem;
}
.artifacts-container .artifact-detail .artifact-header .artifact-title {
  font-size: 1.5rem;
  font-weight: 600;
  display: flex;
  align-items: center;
}
.artifacts-container .artifact-detail .artifact-header .artifact-title .artifact-icon {
  margin-right: 0.5rem;
  font-size: 1.25rem;
}
.artifacts-container .artifact-detail .artifact-header .artifact-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.artifacts-container .artifact-detail .artifact-header .artifact-meta .artifact-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}
.artifacts-container .artifact-detail .artifact-header .artifact-meta .artifact-date {
  font-size: 0.875rem;
  color: var(--text-secondary);
}
.artifacts-container .artifact-detail .artifact-content {
  margin-top: 1rem;
}
.artifacts-container .artifact-detail .artifact-content.markdown {
  line-height: 1.6;
}
.artifacts-container .artifact-detail .artifact-content.markdown h1,
.artifacts-container .artifact-detail .artifact-content.markdown h2,
.artifacts-container .artifact-detail .artifact-content.markdown h3,
.artifacts-container .artifact-detail .artifact-content.markdown h4,
.artifacts-container .artifact-detail .artifact-content.markdown h5,
.artifacts-container .artifact-detail .artifact-content.markdown h6 {
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
}
.artifacts-container .artifact-detail .artifact-content.markdown p {
  margin-bottom: 1rem;
}
.artifacts-container .artifact-detail .artifact-content.markdown ul,
.artifacts-container .artifact-detail .artifact-content.markdown ol {
  margin-bottom: 1rem;
  padding-left: 1.5rem;
}
.artifacts-container .artifact-detail .artifact-content.markdown code {
  background: var(--bg-secondary);
  padding: 0.2rem 0.4rem;
  border-radius: 0.25rem;
  font-family: monospace;
}
.artifacts-container .artifact-detail .artifact-content.markdown pre {
  background: var(--bg-secondary);
  padding: 1rem;
  border-radius: 0.5rem;
  overflow-x: auto;
  margin-bottom: 1rem;
}
.artifacts-container .artifact-detail .artifact-content.markdown pre code {
  background: transparent;
  padding: 0;
}
.artifacts-container .artifact-detail .linked-artifacts {
  margin-top: 2rem;
}
.artifacts-container .artifact-detail .linked-artifacts .linked-artifacts-title {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.artifacts-container .empty-state {
  text-align: center;
  padding: 3rem 1rem;
  color: rgba(255,255,255,0.6);
  display: flex;
  justify-content: center;
}
.artifacts-container .empty-state .empty-state-icon {
  font-size: 3rem;
  margin-bottom: 1rem;
}
.artifacts-container .empty-state .empty-state-title {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}
.artifacts-container .empty-state .empty-state-description {
  max-width: 30rem;
  color: var(--text-secondary);
}
.artifact-card-title {
  display: flex;
  align-items: center;
}
.artifact-card-icon {
  margin-right: 0.5rem;
}
.artifact-card-date {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.5);
  margin-top: 0.25rem;
}
.artifact-detail-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1rem;
}
.artifact-detail-actions {
  display: flex;
  gap: 0.5rem;
}
.artifact-linked-section {
  margin-top: 1.5rem;
}
.artifact-linked-title {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 1rem;
}
.artifact-renderer-error {
  padding: 1rem;
  margin-bottom: 1rem;
  background: rgba(220,60,60,0.12);
  border: 1px solid rgba(220,60,60,0.35);
  border-radius: 4px;
  color: #fff;
}
.artifact-renderer-raw {
  background: rgba(255,255,255,0.04);
  padding: 1rem;
  border-radius: 4px;
  overflow: auto;
}
.empty-state {
  text-align: center;
  padding: 3rem 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.empty-state .empty-state-icon {
  font-size: 3.5rem;
  margin-bottom: 0.5rem;
}
.empty-state .empty-state-title {
  font-size: 1.25rem;
  font-weight: 500;
  color: #fff;
}
.onboarding {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
  font-size: 2rem;
}
.onboarding input {
  margin-bottom: 16px;
  font-size: 30px;
}
.onboarding .Website {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.onboarding .address {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.onboarding .address .Form {
  max-width: 320px !important;
  min-width: 320px !important;
  min-height: 56px !important;
  width: 100% !important;
  display: flex;
  align-items: flex-start !important;
  flex-direction: row-reverse !important;
  justify-content: center !important;
  gap: 16px !important;
  margin-top: 0px !important;
}
.onboarding .address .Form .horizontal-layout {
  width: 100% !important;
}
.onboarding .address .Form .horizontal-layout .horizontal-layout-item {
  width: 100% !important;
}
.onboarding .address .Form .horizontal-layout .input-control {
  width: 100% !important;
}
.onboarding .address .Form .horizontal-layout input {
  width: 100% !important;
}
.onboarding .address .Form .validation_error {
  font-size: 14px !important;
  margin-top: 4px !important;
  max-width: 400px !important;
  white-space: nowrap !important;
  overflow: visible !important;
}
.onboarding .onboarding-suggest {
  color: #888;
  font-size: 0.85rem;
  cursor: pointer;
}
.onboarding .onboarding-suggest:hover {
  color: #fff;
}
.onboarding .billing {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.onboarding .billing .billing-hint {
  color: #888;
  font-size: 0.9rem;
}
.onboarding .billing .billing-skip {
  color: #888;
  font-size: 0.85rem;
  cursor: pointer;
}
.onboarding .tests {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px !important;
}
.onboarding .stepper {
  display: flex;
  align-items: center;
  position: relative;
  margin: 2rem 0;
  counter-reset: step;
  width: 300px;
}
.onboarding .stepper span {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  flex: 1;
  cursor: pointer;
  font-size: 14px;
  color: rgba(255,255,255,0.7);
}
.onboarding .stepper span:before {
  content: "";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 9px;
  height: 9px;
  background-color: rgba(234,234,240,0.3);
  border-radius: 50%;
  margin-bottom: 12px;
  z-index: 1;
}
.onboarding .stepper span:not(:first-child):after {
  content: "";
  position: absolute;
  top: 4px;
  left: calc(-50% + 5px);
  right: calc(50% - 12px);
  width: 80%;
  border-top: 2px solid rgba(234,234,240,0.3);
  border-radius: 2px;
  z-index: 0;
}
.onboarding .stepper span:hover {
  opacity: 0.9;
}
.onboarding .stepper span:not(.dim) {
  color: #fff;
}
.onboarding .stepper span:not(.dim):before {
  background-color: #fff;
}
.onboarding .stepper span:not(.dim):not(:first-child):after {
  border-color: #fff;
}
.onboarding .stepper span:not(.dim) ~ span:not(.dim) {
  color: #fff;
}
.onboarding .stepper span:not(.dim) ~ span:not(.dim):before {
  background-color: #fff;
}
.onboarding .stepper span:not(.dim) ~ span:not(.dim):not(:first-child):after {
  border-color: #fff;
}
.onboarding .stepper span.tab-address.hasError {
  color: #f00 !important;
}
.onboarding .stepper span.tab-address.hasError:before {
  background-color: #f00 !important;
}
#onboardingTabs {
  height: 70vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#onboardingTabs .tab {
  padding: 10px;
  display: none;
  justify-content: center;
  align-items: center;
  min-height: 100%;
  pointer-events: none;
}
#onboardingTabs .tab.active {
  display: flex;
  pointer-events: auto;
}
.onboarding-workspace-hint {
  color: rgba(255,255,255,0.5);
  font-size: 0.9rem;
}
.onboarding-workspace-url {
  color: #fff;
}
.onboarding-heading--error {
  color: #f44;
}
#generationTabs {
  height: 100vh;
  display: flex;
  flex-direction: column;
}
#generationTabs .tab {
  width: 40vw;
  display: none;
  padding: 10px;
}
#generationTabs .tab.active {
  display: flex;
}
.welcome-page {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 80vh;
  padding: 2rem;
  margin: 0 auto;
  text-align: center;
}
.welcome-page h1 {
  margin-bottom: 0.5rem;
  white-space: nowrap;
}
.welcome-page .welcome-subtitle {
  color: rgba(255,255,255,0.7);
  font-size: 1.05rem;
  margin-bottom: 2.5rem;
}
.welcome-page .welcome-skip {
  margin-top: 2rem;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: rgba(255,255,255,0.7);
  font-size: 0.9rem;
  cursor: pointer;
  transition: color 0.2s ease;
}
.welcome-page .welcome-skip:hover {
  color: #fff;
}
.welcome-page .welcome-steps {
  width: 100%;
  max-width: 640px;
  margin-top: 3rem;
}
.welcome-page .welcome-steps .steps-label {
  text-align: center;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: rgba(255,255,255,0.5);
  margin-bottom: 1.5rem;
}
.welcome-page .welcome-steps .steps-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
}
.welcome-page .welcome-steps .step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
}
.welcome-page .welcome-steps .step .step-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.6);
}
.welcome-page .welcome-steps .step span {
  font-size: 13px;
  color: rgba(255,255,255,0.6);
}
.mobile .welcome-page {
  padding: 1.5rem;
}
.mobile .welcome-page h1 {
  white-space: normal;
  font-size: 2.5rem;
}
.mobile .welcome-page .chat-window {
  border-radius: 12px;
}
.mobile .welcome-page .chat-bubble {
  max-width: 95%;
  font-size: 12px;
}
.mobile .welcome-page .welcome-steps .steps-grid {
  grid-template-columns: 1fr;
  gap: 1rem;
}
.mobile .welcome-page .welcome-steps .step {
  flex-direction: row;
  text-align: left;
  gap: 12px;
}
.achievements-page {
  margin-top: 0;
}
.achievement-category {
  margin-bottom: 3rem;
}
.achievement-category .category-title {
  font-size: 1.5rem;
  font-weight: 500;
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
}
.achievements-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1.5rem;
}
.achievement-card {
  background: transparent;
  border-radius: 12px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  border: 1px solid rgba(255,255,255,0.8);
  min-height: 180px;
}
.achievement-card.completed {
  border: 1px solid rgba(255,255,255,0.3);
}
.achievement-card.not-completed-startable {
  border: 1px solid rgba(255,255,255,0.8);
}
.achievement-card.not-completed-hidden {
  filter: grayscale(0.6);
  border: 1px solid rgba(255,255,255,0.2);
}
.achievement-content {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: center;
}
.achievement-icon {
  font-size: 2rem;
  min-width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border-radius: 8px;
}
.achievement-icon svg {
  color: rgba(255,255,255,0.1);
}
.achievement-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 4px;
}
.achievement-info h3 {
  font-size: 1.1rem;
  font-weight: 500;
}
.achievement-info p {
  color: rgba(255,255,255,0.7);
  font-size: 0.9rem;
  line-height: 1.4;
}
.achievement-info .disabled-reason {
  color: rgba(255,255,0,0.8);
  font-size: 0.85rem;
  font-style: italic;
  margin-top: 4px;
}
.achievement-status {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  height: 32px;
  margin-top: auto;
}
.achievement-status .completed-status {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 12px;
}
.achievement-status .completed-status .check-icon {
  width: 20px;
  height: 20px;
  color: #0f0;
  margin-left: auto;
}
.achievement-status .completed-status span {
  color: #0f0;
  font-weight: 500;
}
.settings-content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.FormItem {
  margin-bottom: 1.5rem;
}
.FormItem label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
  color: rgba(255,255,255,0.9);
}
.environment-selector {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}
.NotificationsList,
.SettingsList,
.secrets-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.form-buttons {
  display: flex;
  gap: 0.75rem;
  margin-top: 1rem;
}
.notification-item,
.secret-item,
.settings-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 6px;
  margin-bottom: 0.75rem;
}
.notification-item.disabled,
.secret-item.disabled,
.settings-item.disabled {
  opacity: 0.5;
}
.notification-item .notification-item-text,
.secret-item .notification-item-text,
.settings-item .notification-item-text,
.notification-item .secret-item-text,
.secret-item .secret-item-text,
.settings-item .secret-item-text,
.notification-item .settings-item-text,
.secret-item .settings-item-text,
.settings-item .settings-item-text {
  flex: 1;
  color: rgba(255,255,255,0.9);
  font-weight: 500;
}
.notification-item .notification-item-right,
.secret-item .notification-item-right,
.settings-item .notification-item-right,
.notification-item .secret-item-right,
.secret-item .secret-item-right,
.settings-item .secret-item-right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.notification-item .notification-item-right .secret-value,
.secret-item .notification-item-right .secret-value,
.settings-item .notification-item-right .secret-value,
.notification-item .secret-item-right .secret-value,
.secret-item .secret-item-right .secret-value,
.settings-item .secret-item-right .secret-value,
.notification-item .notification-item-right .otp-code,
.secret-item .notification-item-right .otp-code,
.settings-item .notification-item-right .otp-code,
.notification-item .secret-item-right .otp-code,
.secret-item .secret-item-right .otp-code,
.settings-item .secret-item-right .otp-code {
  font-family: monospace;
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
  background: rgba(255,255,255,0.05);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  min-width: 80px;
  text-align: center;
}
.notification-item .notification-item-right .otp-container,
.secret-item .notification-item-right .otp-container,
.settings-item .notification-item-right .otp-container,
.notification-item .secret-item-right .otp-container,
.secret-item .secret-item-right .otp-container,
.settings-item .secret-item-right .otp-container {
  display: flex;
  align-items: center;
  gap: 8px;
}
.notification-item .notification-item-right .otp-code .timer,
.secret-item .notification-item-right .otp-code .timer,
.settings-item .notification-item-right .otp-code .timer,
.notification-item .secret-item-right .otp-code .timer,
.secret-item .secret-item-right .otp-code .timer,
.settings-item .secret-item-right .otp-code .timer {
  font-size: 0.75rem;
  color: #0c0;
  opacity: 0.9;
  margin-left: 0.25rem;
}
.DeleteButton,
.save-button {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  color: rgba(255,255,255,0.6);
  transition: all 0.2s ease;
  font-size: 0 !important;
}
.DeleteButton svg,
.save-button svg {
  color: rgba(255,255,255,0.6);
  fill: currentColor;
}
.DeleteButton:hover,
.save-button:hover {
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.9);
}
.DeleteButton:hover svg,
.save-button:hover svg {
  color: rgba(255,255,255,0.9);
}
.create-button {
  padding: 0.75rem 1.5rem;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  color: rgba(255,255,255,0.9);
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.create-button:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.15);
}
.notification-form {
  padding: 1rem;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 6px;
  margin-bottom: 1rem;
}
.notification-form .notification-form-content {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
}
.notification-form .notification-form-content .horizontal-layout,
.notification-form .notification-form-content .jsonforms-horizontal-layout {
  display: flex !important;
  align-items: center;
  gap: 1rem;
  flex: 1;
  flex-direction: row !important;
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item {
  flex: 1;
  min-width: 0;
  margin-bottom: 0 !important;
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item label,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item label,
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item .switch-label,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item .switch-label {
  display: none !important;
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item .select-container,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item .select-container {
  width: 100%;
  max-width: 200px;
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item .select-container button,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item .select-container button {
  width: 100% !important;
  max-width: none !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  color: rgba(255,255,255,0.9) !important;
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item .select-container button:focus,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item .select-container button:focus {
  border-color: rgba(255,255,255,0.2) !important;
  background: rgba(255,255,255,0.08) !important;
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item input,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item input,
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item select,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item select {
  width: 100%;
  padding: 0.5rem;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 4px;
  color: rgba(255,255,255,0.9);
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item input:focus,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item input:focus,
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item select:focus,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item select:focus {
  outline: none;
  border-color: rgba(255,255,255,0.2);
  background: rgba(255,255,255,0.08);
}
.notification-form .notification-form-content .horizontal-layout .horizontal-layout-item .switch-container,
.notification-form .notification-form-content .jsonforms-horizontal-layout .horizontal-layout-item .switch-container {
  display: flex;
  align-items: center;
  justify-content: center;
}
.notification-form .notification-form-content .separator-container {
  display: flex;
  align-items: center;
}
.notification-form .notification-form-content .separator-container .Separator {
  width: 1px;
  height: 24px;
  background: rgba(255,255,255,0.1);
  margin: 0 0.5rem;
}
.secrets-group {
  background: rgba(255,255,255,0.01);
  border: 1px solid rgba(255,255,255,0.04);
  border-radius: 6px;
  padding: 1rem;
  margin-bottom: 1rem;
}
.secrets-group .secrets-group-heading {
  font-size: 1rem;
  font-weight: 600;
  color: rgba(255,255,255,0.8);
  margin: 0 0 0.75rem 0;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  text-transform: capitalize;
}
.notification-error,
.validation-error {
  color: #ff6b6b;
  font-size: 0.875rem;
  margin-top: 0.5rem;
}
.error-message {
  color: #ff6b6b;
  background: rgba(255,107,107,0.1);
  padding: 0.75rem;
  border-radius: 6px;
  margin-bottom: 1rem;
}
.jsonforms-horizontal-layout {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 1rem !important;
}
.jsonforms-horizontal-layout > div {
  flex: 1;
  margin-bottom: 0 !important;
}
.invoice-actions {
  display: flex;
  gap: 0.5rem;
}
.tests-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 4rem 2rem;
  text-align: center;
  gap: 1rem;
}
.tests-empty-state .tests-empty-title {
  font-size: 1.875rem;
  color: rgba(255,255,255,0.95);
  margin: 0;
}
.tests-empty-state .tests-empty-desc {
  font-size: 1.1rem;
  color: rgba(255,255,255,0.7);
  margin: 0 0 0.5rem;
}
.tests-filter {
  margin: 1rem 0;
  padding: 0.75rem;
  background-color: rgba(255,255,255,0.02);
  border-radius: 0.5rem;
}
.test-group {
  margin-top: 2.5rem;
  margin-bottom: 0.5rem;
}
.test-group .group-heading-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.test-group .group-heading-row .groupHeading {
  margin: 0;
}
.test-group .group-heading-row .group-run-btn {
  opacity: 0;
  flex-shrink: 0;
  margin: 0;
  transition: opacity 150ms ease;
}
.test-group:hover .group-run-btn {
  opacity: 1;
}
.captcha-playground {
  max-width: 1400px;
  margin: 0 auto;
  padding: 2rem;
  color: #fff;
}
.captcha-header {
  text-align: center;
  margin-bottom: 3rem;
}
.captcha-header h1 {
  font-size: 3rem;
  margin-bottom: 1rem;
}
.captcha-description {
  font-size: 1.2rem;
  color: #aaa;
  max-width: 800px;
  margin: 0 auto;
}
.captcha-controls {
  text-align: center;
  margin-bottom: 2rem;
}
.captcha-controls .reset-button {
  background: #f44;
  color: #fff;
  padding: 0.8rem 2rem;
  border-radius: 0.5rem;
  border: none;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  transition: all 0.2s;
}
.captcha-controls .reset-button:hover {
  background: #f66;
}
.captcha-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: 2rem;
  margin-bottom: 3rem;
}
.captcha-grid .card {
  background: #1a1a1a;
  border: 1px solid #333;
  border-radius: 1rem;
  padding: 0;
  transition: all 0.3s;
}
.captcha-grid .card:hover {
  border-color: #5aff28;
  box-shadow: 0 4px 20px rgba(90,255,40,0.1);
}
.captcha-info {
  color: #aaa;
  font-size: 0.9rem;
  margin-bottom: 1rem;
}
.captcha-container {
  margin-top: 1.5rem;
  margin-bottom: 1rem;
  min-height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0a0a0a;
  border-radius: 0.5rem;
  padding: 1rem;
}
.captcha-container > div {
  margin: 0 auto;
}
.captcha-result {
  margin-top: 1rem;
  padding: 1rem;
  background: #0a0a0a;
  border-radius: 0.5rem;
  border: 1px solid #333;
}
.captcha-result strong {
  color: #5aff28;
  display: block;
  margin-bottom: 0.5rem;
}
.captcha-result code {
  display: block;
  color: #aaa;
  font-family: 'SF NS Mono', monospace;
  font-size: 0.85rem;
  white-space: pre-wrap;
  word-break: break-all;
}
.captcha-notes {
  background: #1a1a1a;
  border: 1px solid #333;
  border-radius: 1rem;
  padding: 2rem;
  margin-top: 2rem;
}
.captcha-notes h2 {
  margin-bottom: 1rem;
  color: #5aff28;
}
.captcha-notes ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.captcha-notes ul li {
  padding: 0.5rem 0;
  padding-left: 1.5rem;
  position: relative;
  color: #ccc;
}
.captcha-notes ul li:before {
  content: '→';
  position: absolute;
  left: 0;
  color: #5aff28;
}
@media (max-width: 768px) {
  .captcha-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .captcha-playground {
    padding: 1rem;
  }
  .captcha-header h1 {
    font-size: 2rem;
  }
}
.aw-page {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 80vh;
  gap: 0.75rem;
  text-align: center;
  padding: 2rem;
}
.aw-page h1 {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
}
.aw-page p {
  color: rgba(255,255,255,0.55);
  margin: 0;
}
.aw-page .aw-error-detail {
  font-family: monospace;
  font-size: 0.8rem;
  color: rgba(248,113,113,0.8);
  background: rgba(248,113,113,0.08);
  border: 1px solid rgba(248,113,113,0.2);
  border-radius: 6px;
  padding: 0.6rem 1rem;
  max-width: 560px;
  word-break: break-all;
  text-align: left;
}
.aw-page .aw-hint {
  font-size: 0.85rem;
}
.aw-icon {
  font-size: 3rem;
  line-height: 1;
}
.aw-icon.aw-icon-ok {
  color: #4ade80;
}
.aw-icon.aw-icon-fail {
  color: #f87171;
}
.aw-spinner {
  width: 36px;
  height: 36px;
  border: 3px solid rgba(255,255,255,0.12);
  border-top-color: rgba(255,255,255,0.7);
  border-radius: 50%;
  animation: aw-spin 0.8s linear infinite;
  margin-bottom: 0.5rem;
}
.aw-workspace-btn {
  display: inline-block;
  margin-top: 1rem;
  padding: 0.6rem 1.4rem;
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 8px;
  color: #fff;
  font-size: 0.9rem;
  text-decoration: none;
  transition: border-color 0.2s;
}
.aw-workspace-btn:hover {
  border-color: rgba(255,255,255,0.7);
}
@-moz-keyframes aw-spin {
  to {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes aw-spin {
  to {
    transform: rotate(360deg);
  }
}
@-o-keyframes aw-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes aw-spin {
  to {
    transform: rotate(360deg);
  }
}
.ssl-wizard {
  max-width: 700px;
  margin: 0 auto;
}
.ssl-goal {
  text-align: center;
  padding: 1rem;
  background: var(--bg-dim);
  border-radius: 8px;
  margin-bottom: 2rem;
  color: var(--fg-dim);
}
.ssl-goal strong {
  display: block;
  margin-bottom: 0.5rem;
}
.ssl-package {
  background: rgba(255,255,255,0.02);
  border-radius: 12px;
  margin-bottom: 1rem;
  transition: all 0.3s ease;
  cursor: pointer;
  min-width: 500px;
}
.ssl-package:hover {
  background: rgba(255,255,255,0.05);
  transform: translateY(-2px);
  box-shadow: 0px 8px 24px rgba(0,0,0,0.2);
}
.ssl-package.open {
  background: rgba(255,255,255,0.07);
  box-shadow: 0px 12px 28px rgba(0,0,0,0.25);
}
.ssl-package.passes {
  border: 2px solid var(--success);
}
.ssl-package.fails {
  border: 2px solid var(--error);
}
.ssl-package-header {
  padding: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.ssl-package-content {
  flex: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.ssl-package-title {
  font-size: 1.2rem;
  font-weight: bold;
  color: rgba(255,255,255,0.9);
}
.open .ssl-package-title {
  color: #fff;
  text-shadow: 0 0 8px rgba(255,255,255,0.2);
}
.ssl-checks-bars {
  display: flex;
  gap: 0.25rem;
  align-items: center;
}
.ssl-chevron {
  font-size: 1.5rem;
  color: rgba(255,255,255,0.6);
  opacity: 0.7;
  transition: all 0.4s ease;
}
.open .ssl-chevron {
  opacity: 1;
  color: #fff;
}
.ssl-package-details {
  padding: 0 1.25rem 1.25rem 1.25rem;
  animation: slideDown 0.3s ease;
}
.ssl-package-details .description {
  color: var(--fg-dim);
  margin-bottom: 1.5rem;
  font-size: 0.95rem;
}
.ssl-warning {
  background: var(--bg-error);
  padding: 0.75rem 1rem;
  margin-bottom: 1.5rem;
  border-radius: 6px;
  font-size: 0.9rem;
  color: var(--error);
  border: 1px solid var(--error);
}
.ssl-checks {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.ssl-button-container {
  display: flex;
  justify-content: center;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--border);
}
@-moz-keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.generate-uptime-select {
  max-width: 28rem;
}
.testedit-loader {
  height: 100vh;
}
.agent-run-page {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  position: relative;
}
.agent-run-page .chat-messages {
  padding: 0;
  height: auto;
  overflow-y: visible;
}
.agent-run-page .chat-messages.agent-run-top {
  gap: 10px;
}
.agent-run-bar {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.5rem 0 0.75rem;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.agent-run-bar-info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.4rem;
  flex: 1;
  font-size: 1rem;
  color: rgba(255,255,255,0.95);
  min-width: 0;
}
.agent-run-sep {
  color: rgba(255,255,255,0.25);
  font-size: 0.9rem;
}
.agent-run-phase {
  font-weight: 600;
  font-size: 1rem;
}
.agent-run-phase--done {
  color: var(--cta, #5aff28);
}
.agent-run-phase--failed {
  color: rgba(220,60,60,0.9);
}
.agent-run-phase--in_progress {
  color: rgba(255,255,255,0.95);
}
.agent-run-model {
  font-family: var(--font-mono, monospace);
  font-size: 0.95rem;
  color: rgba(255,255,255,0.7);
}
.agent-run-bar-actions {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  flex-shrink: 0;
}
.agent-run-btn {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 6px;
  color: rgba(255,255,255,0.95);
  font-size: 0.9rem;
  padding: 4px 12px;
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}
.agent-run-btn:hover {
  background: rgba(255,255,255,0.13);
  border-color: rgba(255,255,255,0.25);
}
.agent-run-view-mode {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.55);
  letter-spacing: 0.03em;
  min-width: 72px;
  text-align: center;
}
.agent-run-view-mode:hover {
  color: rgba(255,255,255,0.9);
}
.agent-run-btn--kill {
  border-color: rgba(220,60,60,0.35);
  color: rgba(220,100,100,0.9);
}
.agent-run-btn--kill:hover {
  background: rgba(220,60,60,0.12);
  border-color: rgba(220,60,60,0.6);
  color: #ff7878;
}
.agent-run-btn--kill:disabled {
  opacity: 0.5;
  cursor: default;
}
.agent-run-task-header {
  font-size: 1rem;
  font-weight: 400;
  color: #fff;
  line-height: 1.4;
  padding: 8px 12px;
  border-left: 2px solid var(--cta);
  background-color: rgba(0,0,0,0.25);
  border-radius: 0 4px 4px 0;
  margin-bottom: 0.25rem;
}
.agent-run-sentinel {
  height: 1px;
  pointer-events: none;
}
.agent-run-jump-btn {
  position: fixed;
  bottom: 24px;
  right: 24px;
  background: rgba(10,10,15,0.92);
  border: 1px solid rgba(90,255,40,0.3);
  border-radius: 20px;
  color: rgba(90,255,40,0.9);
  font-size: 0.9rem;
  padding: 7px 16px;
  cursor: pointer;
  backdrop-filter: blur(8px);
  z-index: 100;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.agent-run-jump-btn:hover {
  background: rgba(20,20,25,0.95);
  border-color: rgba(90,255,40,0.6);
  color: var(--cta, #5aff28);
}
.not-found-page {
  display: flex;
  align-items: center;
  min-height: 100vh;
  flex-direction: column;
  justify-content: center;
}
.agents-page {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.agents-page .chat-messages.agents-run-list {
  padding: 0;
  height: auto;
  overflow-y: visible;
}
.agents-page .command-header .dim {
  color: rgba(255,255,255,0.45);
  font-weight: 400;
  margin-left: 0.4rem;
}
.agent-running-card {
  background: rgba(255,204,0,0.03);
  border: 1px solid rgba(255,204,0,0.18);
  border-radius: 8px;
  padding: 0.9rem 1.1rem;
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.agent-running-card:hover {
  background: rgba(255,204,0,0.06);
  border-color: rgba(255,204,0,0.35);
}
.agent-running-header {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  margin-bottom: 0.45rem;
}
.agent-running-name {
  font-weight: 600;
  font-size: 1rem;
  color: rgba(255,255,255,0.95);
}
.agent-running-host {
  color: rgba(255,255,255,0.38);
  font-size: 0.875rem;
}
.agent-running-elapsed {
  margin-left: auto;
  font-size: 0.825rem;
  color: rgba(255,255,255,0.38);
  font-family: var(--font-mono, monospace);
}
.agent-running-task {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  margin-bottom: 0.3rem;
}
.agent-running-phase {
  font-size: 0.825rem;
  color: rgba(255,204,0,0.8);
}
.agent-stop-btn {
  background: rgba(220,60,60,0.07);
  border: 1px solid rgba(220,60,60,0.22);
  border-radius: 5px;
  color: rgba(220,100,100,0.8);
  font-size: 0.8rem;
  padding: 2px 9px;
  cursor: pointer;
  white-space: nowrap;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.agent-stop-btn:hover {
  background: rgba(220,60,60,0.16);
  border-color: rgba(220,60,60,0.5);
  color: #ff7878;
}
.agent-stop-btn:disabled {
  opacity: 0.5;
  cursor: default;
}
.agents-history {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.agents-date-groups {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.agents-date-groups .H1 {
  margin: 0 0 0.5rem 0;
}
.agent-date-group {
  display: flex;
  flex-direction: column;
}
.agent-run-card--done {
  background: rgba(90,255,40,0.02);
  border-color: rgba(90,255,40,0.12);
}
.agent-run-card--done:hover {
  background: rgba(90,255,40,0.05);
  border-color: rgba(90,255,40,0.26);
}
.agent-run-card--failed {
  background: rgba(220,60,60,0.03);
  border-color: rgba(220,60,60,0.16);
}
.agent-run-card--failed:hover {
  background: rgba(220,60,60,0.07);
  border-color: rgba(220,60,60,0.32);
}
.agent-run-card--stale {
  background: rgba(255,255,255,0.01);
  border-color: rgba(255,255,255,0.06);
}
.agent-run-card--stale:hover {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.13);
}
.agent-run-card--interactive {
  background: rgba(255,255,255,0.01);
  border-color: rgba(255,255,255,0.07);
}
.agent-run-card--interactive:hover {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.14);
}
.agent-run-card--deleting {
  opacity: 0.4;
  pointer-events: none;
}
.agent-status-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.agent-status-dot--done {
  background: rgba(90,255,40,0.55);
}
.agent-status-dot--failed {
  background: rgba(220,60,60,0.65);
}
.agent-status-dot--stale {
  background: rgba(255,255,255,0.18);
}
.agent-status-dot--interactive {
  background: rgba(255,255,255,0.2);
}
.agent-run-phase--done {
  color: rgba(90,255,40,0.6);
}
.agent-run-phase--failed {
  color: rgba(220,100,100,0.75);
}
.agent-run-phase--stale {
  color: rgba(255,255,255,0.28);
  font-style: italic;
}
.agent-live-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fc0;
  flex-shrink: 0;
  animation: agent-pulse 1.4s ease-in-out infinite;
}
.agent-model-badge {
  font-size: 0.72rem;
  font-weight: 400;
  color: rgba(255,255,255,0.32);
  margin-left: 6px;
  font-family: var(--font-mono, monospace);
}
.agent-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}
.agent-meta-chip {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.38);
  background: rgba(255,255,255,0.06);
  border-radius: 4px;
  padding: 1px 6px;
}
.agent-meta-chip--artifact {
  color: rgba(220,190,100,0.75);
  background: rgba(180,140,60,0.1);
}
.agent-meta-chip--test {
  color: rgba(100,220,120,0.75);
  background: rgba(60,160,80,0.1);
}
.agent-run-card {
  position: relative;
}
@-moz-keyframes agent-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
@-webkit-keyframes agent-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
@-o-keyframes agent-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
@keyframes agent-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
.updates-container {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.update-date-group {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.update-date-group .H1 {
  margin: 0;
}
.update-timestamp {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.35);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.update-entry-actions {
  display: flex;
  gap: 0.25rem;
  margin-top: 0.5rem;
}
.update-entry-actions .update-action-button {
  font-size: 0.75rem;
  padding: 0.2rem 0.5rem;
  height: auto;
  min-height: 22px;
}
.update-diff-section {
  margin-top: 0.5rem;
}
.update-diff-toggle {
  cursor: pointer;
  font-size: 0.75rem;
  color: rgba(255,255,255,0.45);
  user-select: none;
}
.update-diff-toggle:hover {
  color: rgba(255,255,255,0.7);
}
.update-diff-viewer {
  margin-top: 0.5rem;
}
.load-more {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
}
.updates-menu-trigger {
  position: relative;
}
.updates-menu-trigger .updates-badge {
  position: absolute;
  top: 0;
  right: -8px;
  background-color: var(--cta);
  color: #000;
  font-size: 0.75rem;
  font-weight: bold;
  min-width: 18px;
  height: 18px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
  transform: translateY(-50%);
}
@-moz-keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(192,57,43,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0);
  }
}
@-webkit-keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(192,57,43,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0);
  }
}
@-o-keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(192,57,43,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0);
  }
}
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(192,57,43,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(192,57,43,0);
  }
}
.section-wrap {
  max-width: 1270px;
  margin: 0 auto;
  padding: 0 2rem;
  width: 100%;
}
.LandingPage h2 {
  font-size: 3.5rem;
  line-height: 1;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  line-height: 1;
  color: #fff;
  margin-bottom: 2rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
.LandingPage h2 strong,
.LandingPage h2 b {
  background: linear-gradient(223deg, #5aff28, #00ab1d);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: inline-block;
  line-height: 1.2;
}
.LandingPage h3 {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: #fff;
  margin-bottom: 0.75rem;
}
.LandingPage .Lead {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  color: #fff;
  margin-bottom: 4rem;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.TopSectionTitle {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 7rem;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  line-height: 1;
  color: #fff;
  text-align: center;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
.TopSectionTitle strong,
.TopSectionTitle b {
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  background: linear-gradient(223deg, #5aff28, #00ab1d);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.TopSectionTitle em,
.TopSectionTitle i {
  font-style: normal;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  color: var(--cta);
  text-shadow: 0 0 20px rgba(90,255,40,0.67), 0 0 30px rgba(90,255,40,0.67);
}
.TopSectionDescription {
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  color: #fff;
  text-align: center;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
}
.TopSectionDescription strong {
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: #fff;
}
.TopSectionDescription em {
  font-style: normal;
  color: var(--cta);
}
.LandingPage {
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 100vw;
  overflow-x: hidden;
  --gradient-text: linear-gradient(135deg, #5aff28 0%, rgba(90,255,40,0.8) 100%);
  --mesh-gradient: radial-gradient(at 40% 20%, rgba(90,255,40,0.1) 0px, transparent 50%), radial-gradient(at 80% 80%, rgba(90,255,40,0.05) 0px, transparent 50%), radial-gradient(at 0% 50%, rgba(90,255,40,0.03) 0px, transparent 50%);
  --glow-text: 0 0 10px rgba(90,255,40,0.8);
}
.LandingHeader {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 18px 48px;
  align-items: center;
  height: 80px;
  width: 100%;
  gap: 16px;
  position: fixed;
  top: 0;
  z-index: 1000;
}
.LandingHeader::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.4);
  box-shadow: 0 12px 60px #000;
  z-index: -1;
}
.LandingHeader .LogoContainer {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}
.LandingHeader .LogoContainer a {
  opacity: 1;
}
.LandingHeader .LogoContainer img {
  width: 32px;
  height: 32px;
}
.LandingHeader .LogoContainer span {
  font-size: 28px;
  font-weight: 900;
  color: #fff;
  letter-spacing: normal;
}
.LandingHeader .LogoContainer .text-cta {
  color: var(--cta);
}
.LandingHeader .LogoContainer .text-optical {
  margin-left: -0.09em;
}
.LandingPage .Main {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.Section {
  min-height: 100vh;
  width: 100vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: 6rem;
  padding-bottom: 6rem;
  text-align: center;
}
.TopSection {
  width: 100vw;
  min-height: 100vh;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.TopSection:before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--mesh-gradient);
  z-index: 1;
}
.TopSection .floating-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  pointer-events: none;
  z-index: 2;
}
.TopSection .floating-orb.orb-1 {
  top: 25%;
  left: 25%;
  width: 320px;
  height: 320px;
  background: rgba(90,255,40,0.2);
  animation: luxe-float 6s ease-in-out infinite;
}
.TopSection .floating-orb.orb-2 {
  bottom: 33%;
  right: 33%;
  width: 384px;
  height: 384px;
  background: rgba(90,255,40,0.1);
  animation: luxe-float 6s ease-in-out infinite;
  animation-delay: -2s;
}
.TopSection .floating-orb.orb-3 {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 256px;
  height: 256px;
  background: rgba(90,255,40,0.15);
  animation: luxe-float 6s ease-in-out infinite;
  animation-delay: -4s;
}
.TopSectionContent {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: 80px;
  width: 100%;
  max-width: 900px;
  gap: 2rem;
  position: relative;
  z-index: 10;
}
.TopSectionContent .TopSectionText {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.TopSectionContent .TopSectionText .TopSectionTitle {
  text-align: center;
}
.TopSectionContent .TopSectionText .TopSectionTitle .gradient-text {
  background: var(--gradient-text);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: var(--glow-text);
}
.TopSectionContent .TopSectionText .TopSectionDescription {
  text-align: center;
}
.TopSectionContent .TopSectionText .TopSectionDescription strong {
  font-weight: 600;
  font-variation-settings: 'wght' 600;
}
.TopSectionContent .TopSectionText .TopSectionDescription em {
  font-style: normal;
  color: var(--cta);
}
.TopSectionContent .TopSectionButtons {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  margin-top: 32px;
  margin-bottom: 3rem;
  flex-wrap: wrap;
}
.EnterpriseFeatures {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
  margin: 0 auto;
}
.EnterpriseFeatures .feature-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #fff;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 500;
  font-variation-settings: 'wght' 500;
}
.PersonaSwitcherContainer {
  display: flex;
  justify-content: center;
}
.PersonaSwitcherContainer .PersonaSwitcher {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
}
.PersonaSwitcherContainer .PersonaSwitcher .persona-btn {
  border: none;
  background: rgba(255,255,255,0.05);
  color: #fff;
  padding: 10px 18px;
  border-radius: 50px;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
}
.PersonaSwitcherContainer .PersonaSwitcher .persona-btn.active {
  background: rgba(90,255,40,0.1);
  color: var(--cta);
}
.PersonaSwitcherContainer .PersonaSwitcher .persona-btn:hover {
  background: rgba(255,255,255,0.08);
  color: #fff;
}
.VideoSection {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 112px;
  border-radius: 16px;
  background: radial-gradient(85.77% 49.97% at 51% 5.12%, rgba(255,255,255,0.11) 0, rgba(222,226,255,0.08) 45.83%, rgba(241,242,255,0.02) 100%), rgba(0,0,0,0.44);
  border: 1px solid rgba(255,255,255,0.08);
  backdrop-filter: blur(2px);
  box-shadow: 0 0 40px 20px rgba(255,255,255,0.03), inset 0 0.5px 0 0 rgba(255,255,255,0.3);
  margin-bottom: 8rem;
}
.VideoSection .VideoSectionContent {
  position: relative;
  border-radius: 16px;
  padding: 10px;
  width: 926px;
  max-width: calc(100vw - 60px);
  height: fit-content;
  background-color: rgba(0,0,0,0.05);
}
.VideoSection .VideoSectionContent .Video {
  border-radius: 10px;
}
.AiChatSection .AiChatPunchline {
  font-size: 1.25rem;
  line-height: 1.4;
  color: #fff;
  max-width: 42rem;
  margin: 2rem auto 0;
}
.AiChatSection .AiChatPunchline strong {
  font-weight: 600;
  font-variation-settings: 'wght' 600;
}
.AiChatSection .AiChatPunchline em {
  font-style: normal;
  color: var(--cta);
}
.feature {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #040406 0%, #070709 50%, #050506 100%);
}
.feature.red-feature {
  background: linear-gradient(135deg, #060404 0%, #090707 50%, #060505 100%);
}
.feature.purple-feature {
  background: linear-gradient(135deg, #050406 0%, #080709 50%, #050506 100%);
}
.feature.teal-feature {
  background: linear-gradient(135deg, #040606 0%, #070909 50%, #050606 100%);
}
.feature.amber-feature {
  background: linear-gradient(135deg, #060604 0%, #090807 50%, #060505 100%);
}
.feature .floating-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
  pointer-events: none;
  z-index: 0;
  animation: luxe-float 8s ease-in-out infinite;
}
.feature .floating-orb.floating-orb-red {
  background: rgba(220,53,69,0.12);
}
.feature .floating-orb.floating-orb-purple {
  background: rgba(138,43,226,0.12);
}
.feature .floating-orb.floating-orb-teal {
  background: rgba(0,128,128,0.12);
}
.feature .floating-orb.floating-orb-amber {
  background: rgba(255,191,0,0.12);
}
.feature .floating-orb.floating-orb-blue {
  background: rgba(0,0,255,0.12);
}
.feature .feature-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  max-width: 1270px;
  margin: 0 auto;
  padding: 0 2rem;
  width: 100%;
}
.feature .feature-header {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  margin-bottom: 3rem;
}
.feature .feature-header .title {
  margin: 0 0 1rem;
}
.feature .feature-header p,
.feature .feature-header .Lead {
  text-align: left;
  margin: 0;
  max-width: none;
}
.feature .subfeatures-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2.5rem;
  width: 100%;
  margin: 0 auto 4rem;
}
.feature .problems-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 2rem;
  width: 100%;
  margin: 0 auto 4rem;
}
.subfeature {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  padding: 2rem;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  transition: all 0.3s ease;
}
.subfeature:hover {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.15);
  transform: translateY(-4px);
  box-shadow: 0 8px 25px rgba(0,0,0,0.2), 0 0 15px rgba(90,255,40,0.08);
}
.subfeature .icon {
  font-size: 2rem;
  margin-bottom: 1rem;
}
.subfeature .title {
  color: #fff;
  margin-bottom: 0.75rem;
}
.subfeature .description {
  color: #fff;
  font-size: 1rem;
  line-height: 1.5;
  line-height: 1.6;
}
.PricingCalculatorSection .normal,
.Pricing .normal {
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
}
.PricingCalculatorSection b,
.Pricing b,
.PricingCalculatorSection strong,
.Pricing strong {
  color: var(--cta);
}
.PricingCalculatorSection .PricingPlans,
.Pricing .PricingPlans {
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2rem;
  width: 100%;
  margin-top: 3rem;
}
.PricingCalculatorSection .PricingPlans .PricingCard,
.Pricing .PricingPlans .PricingCard {
  display: flex;
  flex-direction: column;
  text-align: left;
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(255,255,255,0.05) 0, rgba(255,255,255,0) 100%);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 2rem;
  width: 340px;
  min-height: 520px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.PricingCalculatorSection .PricingPlans .PricingCard:hover,
.Pricing .PricingPlans .PricingCard:hover {
  transform: translateY(-8px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.3);
}
.PricingCalculatorSection .PricingPlans .PricingCard.popular,
.Pricing .PricingPlans .PricingCard.popular {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(102,255,102,0.08) 0, rgba(102,255,102,0.03) 100%);
  border-color: rgba(102,255,102,0.2);
  position: relative;
}
.PricingCalculatorSection .PricingPlans .PricingCard.popular:hover,
.Pricing .PricingPlans .PricingCard.popular:hover {
  transform: translateY(-12px);
  box-shadow: 0 16px 40px rgba(100,255,100,0.12);
}
.PricingCalculatorSection .PricingPlans .PricingCard.popular .PopularBadge,
.Pricing .PricingPlans .PricingCard.popular .PopularBadge {
  position: absolute;
  top: -12px;
  right: 20px;
  background: linear-gradient(90deg, #4caf50, #8bc34a);
  color: #000;
  padding: 4px 14px;
  border-radius: 20px;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
}
.PricingCalculatorSection .PricingPlans .PricingCard.enterprise,
.Pricing .PricingPlans .PricingCard.enterprise {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(102,102,255,0.08) 0, rgba(102,102,255,0.03) 100%);
  border-color: rgba(102,102,255,0.2);
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanName,
.Pricing .PricingPlans .PricingCard .PlanName {
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: #fff;
  margin-bottom: 0.75rem;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanPrice,
.Pricing .PricingPlans .PricingCard .PlanPrice {
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  color: #fff;
  margin-bottom: 1.25rem;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanDescription,
.Pricing .PricingPlans .PricingCard .PlanDescription {
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
  line-height: 1.6;
  margin-bottom: 1.5rem;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanDescription a,
.Pricing .PricingPlans .PricingCard .PlanDescription a {
  color: #fff;
  text-decoration: underline;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanFeatures,
.Pricing .PricingPlans .PricingCard .PlanFeatures {
  flex-grow: 1;
  margin-bottom: 2rem;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanFeatures .FeaturesTitle,
.Pricing .PricingPlans .PricingCard .PlanFeatures .FeaturesTitle {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 0.75rem;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanFeatures ul,
.Pricing .PricingPlans .PricingCard .PlanFeatures ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanFeatures ul li,
.Pricing .PricingPlans .PricingCard .PlanFeatures ul li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin-bottom: 0.6rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
}
.PricingCalculatorSection .PricingPlans .PricingCard .PlanFeatures ul li .FeatureIcon,
.Pricing .PricingPlans .PricingCard .PlanFeatures ul li .FeatureIcon {
  color: var(--cta);
  font-weight: bold;
  flex-shrink: 0;
}
.FAQSection h2 {
  text-align: center;
  margin-bottom: 3rem;
}
.EnterpriseSection {
  position: relative;
  padding: 5rem 0;
  overflow: hidden;
  background: linear-gradient(135deg, #030303 0%, #090a0c 50%, #050505 100%);
  text-align: center;
}
.EnterpriseSection:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 600px;
  height: 600px;
  background: rgba(90,255,40,0.12);
  border-radius: 50%;
  filter: blur(80px);
  z-index: 0;
}
.EnterpriseSection .EnterpriseContent {
  position: relative;
  z-index: 1;
}
.EnterpriseSection .EnterpriseDescription {
  font-size: 1.25rem;
  line-height: 1.4;
  color: #fff;
  margin-bottom: 2.5rem;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.EnterpriseSection .EnterpriseButtons {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}
.FeaturesOverview {
  padding: 3rem 0;
  text-align: center;
}
.FeaturesOverview .features-overview-title {
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: #fff;
  margin-bottom: 0.75rem;
}
.FeaturesOverview .features-overview-lead {
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
}
.FeaturesOverview .features-overview-lead a {
  color: var(--cta);
  text-decoration: none;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
}
.FeaturesOverview .features-overview-lead a:hover {
  text-shadow: 0 0 8px rgba(90,255,40,0.5);
}
.ManifestoSection .manifesto-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
.ManifestoSection .manifesto-pillar {
  padding: 2.5rem;
  text-align: left;
  border-radius: 16px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.ManifestoSection .manifesto-pillar:hover {
  transform: translateY(-8px);
}
.ManifestoSection .manifesto-pillar.pillar-green {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(26,255,26,0.1) 0, rgba(26,255,26,0.02) 100%);
  border: 1px solid rgba(26,255,26,0.25);
}
.ManifestoSection .manifesto-pillar.pillar-green:hover {
  box-shadow: 0 16px 40px rgba(26,255,26,0.12);
}
.ManifestoSection .manifesto-pillar.pillar-blue {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(51,153,255,0.1) 0, rgba(51,153,255,0.02) 100%);
  border: 1px solid rgba(51,153,255,0.25);
}
.ManifestoSection .manifesto-pillar.pillar-blue:hover {
  box-shadow: 0 16px 40px rgba(51,153,255,0.12);
}
.ManifestoSection .manifesto-pillar.pillar-purple {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(166,77,255,0.1) 0, rgba(166,77,255,0.02) 100%);
  border: 1px solid rgba(166,77,255,0.25);
}
.ManifestoSection .manifesto-pillar.pillar-purple:hover {
  box-shadow: 0 16px 40px rgba(166,77,255,0.12);
}
.ManifestoSection .pillar-title {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  color: #fff;
  margin-bottom: 0.75rem;
}
.ManifestoSection .pillar-text {
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
  margin: 0;
}
.ManifestoSection .pillar-text em {
  font-style: normal;
  color: var(--cta);
}
.BeforeAfterSection h2 {
  margin-bottom: 3rem;
}
.BeforeAfterSection .before-after-table {
  max-width: 860px;
  margin: 0 auto;
  text-align: left;
}
.BeforeAfterSection .ba-header-row {
  display: grid;
  grid-template-columns: 1fr 2.5rem 1fr;
  margin-bottom: 0.25rem;
}
.BeforeAfterSection .ba-old-label,
.BeforeAfterSection .ba-new-label {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.5rem 0;
}
.BeforeAfterSection .ba-old-label {
  color: #fff;
  text-align: right;
  padding-right: 1.5rem;
}
.BeforeAfterSection .ba-new-label {
  color: var(--cta);
  padding-left: 1.5rem;
}
.BeforeAfterSection .ba-arrow-spacer {
  display: block;
}
.BeforeAfterSection .ba-summary-row {
  display: grid;
  grid-template-columns: 1fr 2.5rem 1fr;
  margin-bottom: 1.5rem;
}
.BeforeAfterSection .ba-summary-old {
  text-align: right;
  padding-right: 1.5rem;
  font-size: 0.8rem;
  font-style: italic;
  color: rgba(255,255,255,0.4);
}
.BeforeAfterSection .ba-summary-new {
  padding-left: 1.5rem;
  font-size: 0.8rem;
  font-style: italic;
  color: var(--cta);
  opacity: 0.65;
}
.BeforeAfterSection .ba-row {
  display: grid;
  grid-template-columns: 1fr 2.5rem 1fr;
  align-items: start;
  padding: 0.9rem 0;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.BeforeAfterSection .ba-old {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.2rem;
  padding-right: 1.5rem;
}
.BeforeAfterSection .ba-old-main {
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
  text-align: right;
}
.BeforeAfterSection .ba-cost {
  display: inline-block;
  background: rgba(255,80,80,0.15);
  color: #ff7070;
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.1rem 0.45rem;
  border-radius: 3px;
  letter-spacing: 0.03em;
}
.BeforeAfterSection .ba-old-detail {
  font-size: 0.78rem;
  color: rgba(255,255,255,0.38);
  line-height: 1.45;
  text-align: right;
}
.BeforeAfterSection .ba-arrow {
  color: var(--cta);
  text-align: center;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  padding-top: 0.15rem;
}
.BeforeAfterSection .ba-new {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding-left: 1.5rem;
}
.BeforeAfterSection .ba-new-main {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  color: #fff;
}
.BeforeAfterSection .ba-new-detail {
  font-size: 0.78rem;
  color: rgba(255,255,255,0.38);
  line-height: 1.45;
}
.UseCasesSection h2 {
  margin-bottom: 1rem;
}
.UseCasesSection .use-cases-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: center;
  margin-top: 1rem;
}
.UseCasesSection .use-case-card {
  width: calc(33.333% - 1rem);
  min-width: 280px;
  padding: 2rem;
  text-align: left;
  border-radius: 16px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.UseCasesSection .use-case-card:hover {
  transform: translateY(-8px);
}
.UseCasesSection .use-case-card.card-green {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(26,255,26,0.1) 0, rgba(26,255,26,0.02) 100%);
  border: 1px solid rgba(26,255,26,0.25);
}
.UseCasesSection .use-case-card.card-green:hover {
  box-shadow: 0 16px 40px rgba(26,255,26,0.12);
}
.UseCasesSection .use-case-card.card-blue {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(51,153,255,0.1) 0, rgba(51,153,255,0.02) 100%);
  border: 1px solid rgba(51,153,255,0.25);
}
.UseCasesSection .use-case-card.card-blue:hover {
  box-shadow: 0 16px 40px rgba(51,153,255,0.12);
}
.UseCasesSection .use-case-card.card-purple {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(166,77,255,0.1) 0, rgba(166,77,255,0.02) 100%);
  border: 1px solid rgba(166,77,255,0.25);
}
.UseCasesSection .use-case-card.card-purple:hover {
  box-shadow: 0 16px 40px rgba(166,77,255,0.12);
}
.UseCasesSection .use-case-card.card-amber {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(255,179,26,0.1) 0, rgba(255,179,26,0.02) 100%);
  border: 1px solid rgba(255,179,26,0.25);
}
.UseCasesSection .use-case-card.card-amber:hover {
  box-shadow: 0 16px 40px rgba(255,179,26,0.12);
}
.UseCasesSection .use-case-card.card-teal {
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(0,230,210,0.1) 0, rgba(0,230,210,0.02) 100%);
  border: 1px solid rgba(0,230,210,0.25);
}
.UseCasesSection .use-case-card.card-teal:hover {
  box-shadow: 0 16px 40px rgba(0,230,210,0.12);
}
.UseCasesSection .uc-icon {
  font-size: 2rem;
  line-height: 1.2;
  margin-bottom: 0.75rem;
}
.UseCasesSection .uc-title {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  color: #fff;
  margin-bottom: 0.75rem;
}
.UseCasesSection .uc-problem {
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
  margin-bottom: 0.75rem;
}
.UseCasesSection .uc-solution {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  color: var(--cta);
  margin: 0;
}
.LandingNav {
  display: flex;
  flex-direction: row;
  gap: 2rem;
  align-items: center;
}
.LandingNav .landing-nav-link {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  color: rgba(255,255,255,0.65);
  text-decoration: none;
  transition: color 0.2s ease;
}
.LandingNav .landing-nav-link:hover {
  color: #fff;
}
.HeroTrustBar {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.45);
  flex-wrap: wrap;
  padding-bottom: 1rem;
}
.HeroTrustBar .trust-separator {
  color: rgba(255,255,255,0.2);
}
.BlogSection .blog-posts-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2rem;
}
.BlogSection .blog-post-card {
  padding: 1.75rem;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  text-align: left;
  transition: all 0.3s ease;
}
.BlogSection .blog-post-card:hover {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.15);
  transform: translateY(-4px);
}
.BlogSection .blog-post-link {
  text-decoration: none;
  color: inherit;
  display: block;
}
.BlogSection .blog-post-tag {
  font-size: 0.75rem;
  line-height: 1.4;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: var(--cta);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 0.75rem;
}
.BlogSection .blog-post-title {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: #fff;
  margin-bottom: 0.75rem;
  line-height: 1.4;
}
.BlogSection .blog-post-excerpt {
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.6);
  line-height: 1.6;
}
.TrustSection .trust-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2rem;
}
.TrustSection .trust-item {
  padding: 1.75rem;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  text-align: left;
}
.TrustSection .trust-item-icon {
  font-size: 2rem;
  margin-bottom: 0.75rem;
}
.TrustSection .trust-item-title {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  color: #fff;
  margin-bottom: 0.5rem;
}
.TrustSection .trust-item-text {
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.6);
  line-height: 1.6;
}
.ClosingCTASection {
  position: relative;
  min-height: auto;
  padding: 10rem 0;
}
.ClosingCTASection::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 600px;
  height: 400px;
  background: rgba(90,255,40,0.08);
  border-radius: 50%;
  filter: blur(80px);
  z-index: 0;
}
.ClosingCTASection .section-wrap {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.ClosingCTASection .closing-cta-headline {
  font-size: 3.5rem;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  color: #fff;
  margin-bottom: 1.5rem;
  line-height: 1.1;
}
.ClosingCTASection .closing-cta-headline strong {
  background: linear-gradient(223deg, #5aff28, #00ab1d);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: inline-block;
  line-height: 1.2;
}
.ClosingCTASection .closing-cta-sub {
  font-size: 1.25rem;
  line-height: 1.4;
  color: rgba(255,255,255,0.55);
  margin-bottom: 3rem;
  max-width: 42rem;
  margin-left: auto;
  margin-right: auto;
}
.AiInstructions {
  text-align: center;
  font-size: 0.75rem;
  line-height: 1.4;
  color: rgba(255,255,255,0.15);
  padding: 1rem 2rem;
}
.AiInstructions a {
  color: rgba(255,255,255,0.25);
}
.fadeInAndUp {
  opacity: 0;
  animation: fadeInAndUp var(--animation-duration, 2s) cubic-bezier(0.25, 0.46, 0.45, 0.94) var(--animation-delay, 0s) forwards;
}
.desktop-only {
  display: block;
}
.mobile-only {
  display: none;
}
@media (max-width: 768px) {
  .section-wrap {
    padding: 0 1.25rem;
  }
  .LandingHeader {
    height: 68px;
    padding: 18px 1.25rem;
  }
  .LandingHeader .LogoContainer span {
    font-size: 22px;
  }
  .TopSection {
    min-height: 100vh;
    padding-top: 0;
    padding-bottom: 0;
  }
  .PersonaSwitcherContainer {
    display: none;
  }
  .TopSectionTitle {
    font-size: 3.5rem;
  }
  .TopSectionContent {
    padding-top: 68px;
    padding-bottom: 4rem;
    gap: 1.5rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .TopSectionContent .TopSectionText {
    gap: 2rem;
  }
  .TopSectionContent .TopSectionButtons {
    flex-direction: column;
    gap: 1.25rem;
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
    align-items: stretch;
    text-align: center;
    width: unset;
    padding: 0;
  }
  .TopSectionContent .TopSectionButtons > * {
    width: 100%;
    max-width: 100%;
  }
  .VideoSection {
    display: none;
  }
  .Section {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }
  .feature .subfeatures-grid {
    grid-template-columns: 1fr;
  }
  .feature .problems-grid {
    grid-template-columns: 1fr;
  }
  .Pricing .PricingPlans .PricingCard {
    width: 100%;
    min-height: auto;
  }
  .ManifestoSection .manifesto-pillars {
    grid-template-columns: 1fr;
  }
  .BeforeAfterSection .ba-header-row,
  .BeforeAfterSection .ba-summary-row,
  .BeforeAfterSection .ba-row {
    grid-template-columns: 1fr 1.5rem 1fr;
  }
  .BeforeAfterSection .ba-old {
    padding-right: 0.5rem;
  }
  .BeforeAfterSection .ba-new {
    padding-left: 0.5rem;
  }
  .BeforeAfterSection .ba-old-label,
  .BeforeAfterSection .ba-summary-old {
    padding-right: 0.5rem;
  }
  .BeforeAfterSection .ba-new-label,
  .BeforeAfterSection .ba-summary-new {
    padding-left: 0.5rem;
  }
  .UseCasesSection .use-case-card {
    width: 100%;
    min-width: unset;
  }
  .LandingNav {
    display: none;
  }
  .BlogSection .blog-posts-grid {
    grid-template-columns: 1fr;
  }
  .TrustSection .trust-grid {
    grid-template-columns: 1fr;
  }
  .ClosingCTASection .closing-cta-headline {
    font-size: 2.5rem;
  }
  .desktop-only {
    display: none;
  }
  .mobile-only {
    display: block;
  }
}
@-moz-keyframes luxe-float {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  33% {
    transform: translateY(-10px) rotate(1deg);
  }
  66% {
    transform: translateY(-5px) rotate(-1deg);
  }
}
@-webkit-keyframes luxe-float {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  33% {
    transform: translateY(-10px) rotate(1deg);
  }
  66% {
    transform: translateY(-5px) rotate(-1deg);
  }
}
@-o-keyframes luxe-float {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  33% {
    transform: translateY(-10px) rotate(1deg);
  }
  66% {
    transform: translateY(-5px) rotate(-1deg);
  }
}
@keyframes luxe-float {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  33% {
    transform: translateY(-10px) rotate(1deg);
  }
  66% {
    transform: translateY(-5px) rotate(-1deg);
  }
}
@-moz-keyframes fadeInAndUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInAndUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes fadeInAndUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInAndUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-moz-keyframes box-shadow-pulse-green {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@-webkit-keyframes box-shadow-pulse-green {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@-o-keyframes box-shadow-pulse-green {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@keyframes box-shadow-pulse-green {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
.Dashboard {
  padding: 20px;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  max-width: 100vw;
  overflow-x: hidden;
}
.Dashboard .loading-indicator {
  position: absolute;
  top: 20px;
  right: 20px;
  background-color: rgba(0,0,0,0.7);
  color: #fff;
  padding: 10px 15px;
  border-radius: 4px;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
  animation: fadeIn 0.3s ease-in-out;
}
.Dashboard .dashboard-header {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  padding: 16px 0;
  box-sizing: border-box;
  gap: 16px;
  max-width: 1910px;
  margin: 0 auto;
  margin-top: 20px;
}
.Dashboard .period-tabs {
  display: flex;
  flex-direction: row;
  gap: 4px;
  flex-shrink: 0;
}
.Dashboard .period-tab {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 8px;
  color: rgba(255,255,255,0.6);
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  white-space: nowrap;
}
.Dashboard .period-tab:hover {
  background: rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.9);
}
.Dashboard .period-tab.active {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.3);
  color: rgba(255,255,255,0.95);
}
.Dashboard .dashboard-grid {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 16px;
  padding: 16px 0;
  width: 100%;
  max-width: 1910px;
  margin: 0 auto;
  box-sizing: border-box;
}
.Dashboard .dashboard-grid .row {
  display: contents;
}
.Dashboard .dashboard-grid .card {
  min-width: 290px;
  grid-column: span 2;
  background-color: transparent;
  padding: 16px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  border-radius: 8px;
  border: 1px solid #27272a;
}
.Dashboard .dashboard-grid .row:nth-child(2) .card {
  grid-column: span 5;
  min-height: 460px;
  max-height: 460px;
}
.Dashboard .dashboard-grid .deployment-gantt-chart {
  grid-column: span 10;
  overflow: visible;
}
.Dashboard .dashboard-grid .success-tests .card-content,
.Dashboard .dashboard-grid .failed-tests .card-content,
.Dashboard .dashboard-grid .total-test-time .card-content,
.Dashboard .dashboard-grid .flaky-tests .card-content,
.Dashboard .dashboard-grid .newly-added-tests .card-content {
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.Dashboard .dashboard-grid .success-tests .card-content .card-title,
.Dashboard .dashboard-grid .failed-tests .card-content .card-title,
.Dashboard .dashboard-grid .total-test-time .card-content .card-title,
.Dashboard .dashboard-grid .flaky-tests .card-content .card-title,
.Dashboard .dashboard-grid .newly-added-tests .card-content .card-title {
  font-size: 24px;
  line-height: 36px;
  font-weight: 500;
  color: #fff;
}
.Dashboard .dashboard-grid .success-tests .card-content .card-value,
.Dashboard .dashboard-grid .failed-tests .card-content .card-value,
.Dashboard .dashboard-grid .total-test-time .card-content .card-value,
.Dashboard .dashboard-grid .flaky-tests .card-content .card-value,
.Dashboard .dashboard-grid .newly-added-tests .card-content .card-value {
  font-size: 36px;
  font-weight: 600;
  color: #fff;
}
.Dashboard .dashboard-grid .success-tests .card-content .card-text,
.Dashboard .dashboard-grid .failed-tests .card-content .card-text,
.Dashboard .dashboard-grid .total-test-time .card-content .card-text,
.Dashboard .dashboard-grid .flaky-tests .card-content .card-text,
.Dashboard .dashboard-grid .newly-added-tests .card-content .card-text {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  line-height: 36px;
  font-weight: 500;
  color: #fff;
  text-align: center;
}
.Dashboard .dashboard-grid .success-tests .card-content .card-text span,
.Dashboard .dashboard-grid .failed-tests .card-content .card-text span,
.Dashboard .dashboard-grid .total-test-time .card-content .card-text span,
.Dashboard .dashboard-grid .flaky-tests .card-content .card-text span,
.Dashboard .dashboard-grid .newly-added-tests .card-content .card-text span {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}
.Dashboard .dashboard-grid .success-tests .card-content .card-text span svg,
.Dashboard .dashboard-grid .failed-tests .card-content .card-text span svg,
.Dashboard .dashboard-grid .total-test-time .card-content .card-text span svg,
.Dashboard .dashboard-grid .flaky-tests .card-content .card-text span svg,
.Dashboard .dashboard-grid .newly-added-tests .card-content .card-text span svg {
  width: 1em;
  height: 1em;
  transition: transform 0.2s ease-in-out;
}
.Dashboard .dashboard-grid .success-tests .card-content .flaky-tests-text:hover,
.Dashboard .dashboard-grid .failed-tests .card-content .flaky-tests-text:hover,
.Dashboard .dashboard-grid .total-test-time .card-content .flaky-tests-text:hover,
.Dashboard .dashboard-grid .flaky-tests .card-content .flaky-tests-text:hover,
.Dashboard .dashboard-grid .newly-added-tests .card-content .flaky-tests-text:hover {
  opacity: 0.8;
  cursor: pointer;
}
.Dashboard .dashboard-grid .success-tests .card-content .flaky-tests-text:hover svg,
.Dashboard .dashboard-grid .failed-tests .card-content .flaky-tests-text:hover svg,
.Dashboard .dashboard-grid .total-test-time .card-content .flaky-tests-text:hover svg,
.Dashboard .dashboard-grid .flaky-tests .card-content .flaky-tests-text:hover svg,
.Dashboard .dashboard-grid .newly-added-tests .card-content .flaky-tests-text:hover svg {
  transform: translateX(4px);
}
.Dashboard .dashboard-grid .total-tests-value {
  font-size: 3rem;
}
.Dashboard .dashboard-grid .total-tests-diff {
  font-size: 1.2rem;
  margin-top: 10px;
}
.Dashboard .dashboard-grid .new-tests {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.Dashboard .dashboard-grid .new-tests .pie-chart-container {
  margin-top: -36px;
  max-width: 250px;
  max-height: 250px;
}
.Dashboard .dashboard-grid .new-tests .pie-chart-title {
  margin-top: 12px;
  font-size: 24px;
  font-weight: 500;
  color: #fff;
  text-align: center;
}
.Dashboard .dashboard-grid .chart-container {
  max-height: 350px;
  min-height: 350px;
  width: 100%;
}
.Dashboard .dashboard-grid .chart-container .recharts-responsive-container {
  min-height: 350px;
  animation: fadeIn 1.5s ease-in-out !important;
}
.Dashboard .dashboard-grid .chart-container .recharts-layer {
  outline: none;
}
.Dashboard .dashboard-grid .chart-container .recharts-surface {
  outline: none;
}
.Dashboard .dashboard-grid .bar-chart {
  height: 100%;
  width: 100%;
  min-height: 350px;
  max-height: 350px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 32px 20px -20px -20px;
  outline: none !important;
}
.Dashboard .dashboard-grid .success-rate-chart,
.Dashboard .dashboard-grid .tests-time-chart {
  padding-bottom: 24px;
}
.Dashboard .dashboard-grid .success-rate-chart .success-chart-title,
.Dashboard .dashboard-grid .tests-time-chart .success-chart-title,
.Dashboard .dashboard-grid .success-rate-chart .test-time-chart-title,
.Dashboard .dashboard-grid .tests-time-chart .test-time-chart-title {
  margin: 8px 0px 24px 12px;
  font-size: 24px;
  font-weight: 500;
  color: #fff;
}
.Dashboard .dashboard-grid .success-rate-chart .success-chart-title .loading-text,
.Dashboard .dashboard-grid .tests-time-chart .success-chart-title .loading-text,
.Dashboard .dashboard-grid .success-rate-chart .test-time-chart-title .loading-text,
.Dashboard .dashboard-grid .tests-time-chart .test-time-chart-title .loading-text {
  font-size: 16px;
  font-style: italic;
  opacity: 0.7;
}
.card-title {
  font-size: 24px;
  font-weight: 500;
  margin: 8px 0px 24px 12px;
}
.custom-tooltip {
  position: relative;
  background-color: transparent;
  border-radius: 12px;
  padding: 12px;
  min-width: 70px;
}
.custom-tooltip:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.7);
  border: 1px solid rgba(39,39,42,0.4);
  border-radius: 12px;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  box-shadow: 0px 0px 15px 10px var(--background-semi);
  transition: backdrop-filter 1s ease-in-out, box-shadow 1s ease-in-out, background-color 1s ease-in-out;
  z-index: -1;
}
.custom-tooltip .tooltip-label {
  position: relative;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 8px;
  padding-bottom: 4px;
}
.custom-tooltip .tooltip-content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.custom-tooltip .tooltip-item {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fff;
  font-size: 16px;
}
.custom-tooltip .tooltip-indicator {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.custom-tooltip .recharts-layer {
  outline: none;
}
.custom-tooltip .recharts-surface {
  outline: none;
}
.billing-card {
  grid-column: span 5 !important;
  min-height: 400px;
}
.billing-card .subscription-content,
.billing-card .invoice-list-content {
  width: 100%;
}
.billing-card .card-title {
  font-size: 24px;
  font-weight: 500;
  margin: 8px 0px 24px 12px;
  color: #fff;
}
.invoice-item,
.subscription-info {
  display: flex;
  justify-content: space-between;
  border: 1px solid #27272a;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 8px;
}
@media (max-width: 1200px) {
  .Dashboard .dashboard-grid {
    grid-template-columns: repeat(6, 1fr);
  }
  .Dashboard .dashboard-grid .card {
    grid-column: span 3;
  }
  .Dashboard .dashboard-grid .row:nth-child(2) .card {
    grid-column: span 6;
  }
  .Dashboard .dashboard-grid .deployment-gantt-chart {
    grid-column: span 6;
  }
  .Dashboard .dashboard-grid .billing-card {
    grid-column: span 6 !important;
  }
}
@media (max-width: 768px) {
  .Dashboard {
    padding: 10px;
  }
  .Dashboard .dashboard-header {
    flex-wrap: wrap;
    gap: 12px;
  }
  .Dashboard .dashboard-header button {
    width: calc(50% - 6px);
    min-width: 140px;
  }
  .Dashboard .dashboard-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 12px;
  }
  .Dashboard .dashboard-grid .row {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .Dashboard .dashboard-grid .card {
    grid-column: span 1;
    min-width: unset;
  }
  .Dashboard .dashboard-grid .row:nth-child(2) .card {
    grid-column: span 1;
    min-height: 350px;
    max-height: 350px;
  }
  .Dashboard .dashboard-grid .deployment-gantt-chart {
    grid-column: span 1;
  }
  .Dashboard .dashboard-grid .billing-card {
    grid-column: span 1 !important;
    min-height: 400px;
  }
}
.dashboard-date-picker {
  width: auto;
  padding: 0;
}
.cli-login-page {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  padding: 20px;
}
.cli-login-card {
  max-width: 480px;
  width: 100%;
  text-align: center;
}
.cli-login-card .subtitle {
  opacity: 0.7;
  margin-bottom: 32px;
}
.cli-login-content {
  margin-top: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cli-login-content .user-info {
  padding: 16px;
  border-radius: 8px;
  background: rgba(255,255,255,0.05);
  margin-bottom: 24px;
  width: 100%;
}
.cli-login-content .user-info strong {
  display: block;
  margin-bottom: 8px;
}
.cli-login-content .user-info p {
  opacity: 0.7;
  font-size: 14px;
  margin: 8px 0;
}
.cli-login-content .user-info .company-selector {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 16px 0;
}
.cli-login-content .user-info .company-selector button.selected {
  background: var(--color-primary);
  border-color: var(--color-primary);
}
.status-box {
  padding: 16px;
  border-radius: 8px;
  text-align: center;
  margin-top: 24px;
}
.status-box.authorizing {
  background: rgba(59,130,246,0.1);
  border: 1px solid rgba(59,130,246,0.3);
  color: #60a5fa;
}
.status-box.authorizing .spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid rgba(255,255,255,0.3);
  border-top-color: currentColor;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  margin-right: 8px;
  vertical-align: middle;
}
.status-box.success {
  background: rgba(34,197,94,0.1);
  border: 1px solid rgba(34,197,94,0.3);
}
.status-box.success p {
  margin: 0;
  color: #4ade80;
}
.status-box.success .note {
  color: #fff;
  opacity: 0.7;
  font-size: 14px;
  margin-top: 8px;
}
.status-box.error {
  background: rgba(239,68,68,0.1);
  border: 1px solid rgba(239,68,68,0.3);
  color: #f87171;
}
.status-box.error p {
  margin: 0;
}
.help-text {
  margin-top: 16px;
  font-size: 14px;
  text-align: center;
  color: #fff;
}
@-moz-keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@-o-keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.api-content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.api-content section {
  margin-top: 1.5rem;
}
.api-content .FormItem {
  margin-bottom: 1.5rem;
}
.api-content .FormItem label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
  color: rgba(255,255,255,0.9);
}
.api-content .FormItem img {
  max-height: 2rem;
  width: auto;
}
.api-content .flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 6px;
  margin-bottom: 0.75rem;
}
.api-content .flex div:first-child {
  flex: 1;
  color: rgba(255,255,255,0.9);
  font-weight: 500;
  font-family: monospace;
  font-size: 0.875rem;
}
.api-content .flex div:last-child {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.api-content .monaco-container {
  margin: 1.5rem 0;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.06);
  background: #000;
}
.monaco-controls {
  background: #000;
  padding: 8px 12px;
  border-bottom: 1px solid rgba(255,255,255,0.1);
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 40px;
}
.monaco-controls .toolbar-left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.monaco-controls .toolbar-right {
  display: flex;
  align-items: center;
  gap: 8px;
}
.monaco-controls .toolbar-right .converting-indicator {
  font-size: 11px;
  color: #888;
  font-style: italic;
}
.monaco-controls [data-radix-select-trigger] {
  min-width: 120px;
  height: 28px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  color: #fff;
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 4px;
}
.monaco-controls [data-radix-select-trigger]:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.25);
}
.monaco-controls [data-radix-select-trigger]:focus {
  border-color: rgba(255,255,255,0.3);
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1);
  outline: none;
}
.copyButton.monaco {
  position: static !important;
  float: none !important;
  top: auto !important;
  right: auto !important;
  z-index: auto !important;
  margin: 0 !important;
}
.api-content button {
  margin-top: 0.5rem;
}
a,
button,
[role="button"],
[role="tab"],
[role="menuitem"],
[role="option"] {
  cursor: pointer;
}
a {
  color: var(--cta);
  text-decoration: none;
  transition: color 300ms cubic-bezier(0.4, 0, 0.2, 1);
}
a:hover {
  color: var(--cta-hover);
}
.row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
input,
textarea,
select {
  background: rgba(255,255,255,0.03);
  backdrop-filter: blur(12px);
  border: 1.5px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: 0.75rem 1rem;
  color: rgba(255,255,255,0.95);
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  outline: none;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
input::placeholder,
textarea::placeholder,
select::placeholder {
  color: rgba(255,255,255,0.4);
  font-weight: 300;
  font-variation-settings: 'wght' 300;
}
input:hover,
textarea:hover,
select:hover {
  border-color: rgba(255,255,255,0.25);
  background: rgba(255,255,255,0.05);
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
input:focus,
textarea:focus,
select:focus,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  border-color: rgba(255,255,255,0.4);
  background: rgba(255,255,255,0.08);
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1), 0 4px 12px rgba(0,0,0,0.2);
  transform: scale(1.002);
}
input:disabled,
textarea:disabled,
select:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: rgba(255,255,255,0.01);
  border-color: rgba(255,255,255,0.05);
}
input.xl {
  margin-bottom: 16px;
  font-size: 2rem;
  line-height: 1.2;
  padding: 1.25rem 1.5rem;
  border-radius: 12px;
}
textarea {
  resize: vertical;
  min-height: 100px;
  line-height: 1.5;
}
select {
  cursor: pointer;
}
select::-ms-expand {
  display: none;
}
.input-group {
  position: relative;
}
.input-group input {
  padding-right: 3rem;
}
.input-group .input-icon {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,0.4);
  pointer-events: none;
}
.display-none {
  display: none !important;
}
.ProgressBarIndefinite {
  display: flex !important;
  flex-direction: row !important;
  gap: 3px !important;
}
.normal {
  font-weight: normal !important;
}
.hide {
  will-change: opacity;
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
}
.w10 {
  width: 10vw;
}
.w20 {
  width: 20vw;
}
.w30 {
  width: 30vw;
}
.w40 {
  width: 40vw;
}
.w50 {
  width: 50vw;
}
.w60 {
  width: 60vw;
}
.w70 {
  width: 70vw;
}
.w80 {
  width: 80vw;
}
.w90 {
  width: 90vw;
}
.w100 {
  width: 100vw;
}
.h10 {
  height: 10vh;
}
.h20 {
  height: 20vh;
}
.h30 {
  height: 30vh;
}
.h40 {
  height: 40vh;
}
.h50 {
  height: 50vh;
}
.h60 {
  height: 60vh;
}
.h70 {
  height: 70vh;
}
.h80 {
  height: 80vh;
}
.h90 {
  height: 90vh;
}
.h100 {
  height: 100vh;
}
.page-content-standard {
  padding-top: 2rem !important;
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 2rem;
  min-height: 100vh;
}
.groupHeading {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  line-height: 1.2;
  letter-spacing: normal;
  color: #fff;
  margin: 0;
}
.tag-category {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.tag-category-title {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  color: rgba(255,255,255,0.6);
  font-variant: small-caps;
  min-width: 80px;
}
.tag-category-title.tag-category-title-clickable {
  cursor: pointer;
  user-select: none;
  transition: color 120ms ease;
}
.tag-category-title.tag-category-title-clickable:hover {
  color: rgba(255,255,255,0.9);
}
.tag-category-title.tag-category-title-active {
  color: var(--cta);
}
.tag-category-title.tag-category-title-active:hover {
  color: var(--cta);
}
.tag-category-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.mobile .page-content-standard {
  padding: 1rem 16px 20vh 16px !important;
  width: 100vw !important;
  max-width: 100vw !important;
  overflow-x: hidden;
}
.mobile .page-content-standard > * {
  padding-left: 0;
  padding-right: 0;
}
.mobile .page-header-wrapper {
  margin-bottom: 1rem;
}
.mobile .pageheader {
  padding: 0;
  margin-bottom: 0;
}
.mobile .pageheader .H1 {
  font-size: 2rem;
  line-height: 1.2;
  margin-bottom: 0.5rem;
}
.mobile .pageheader .Lead {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 1rem;
}
.mobile .universal-search-container {
  margin-bottom: 1rem;
  background-color: transparent !important;
  border-radius: 0 !important;
}
.mobile .universal-search-container .universal-search-tag-categories {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 0.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title {
  font-size: 0.75rem;
  line-height: 1.4;
  opacity: 0.6;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  flex-shrink: 0;
  min-width: 4rem;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category .universal-search-tag-list {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.5rem;
}
.mobile .universal-search-container .universal-search-tag-categories .universal-search-tag-category .universal-search-tag-list .tag {
  font-size: 0.875rem;
  line-height: 1.5;
  padding: 0.4rem 0.6rem;
  flex-shrink: 0;
}
.mobile .test-container,
.mobile .search-container {
  padding-bottom: 1rem;
}
.mobile .bars {
  padding-top: 2.3rem;
}
.mobile .bars .statusline .title {
  white-space: nowrap;
  overflow: hidden;
  display: flex;
  gap: 0.25rem;
}
.mobile .bars .statusline .title > .font-caps {
  max-width: calc(95vw / 2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
}
.mobile .bars .statusline .title .tags {
  max-width: calc(95vw / 2);
  white-space: nowrap !important;
  overflow: hidden;
  flex-wrap: nowrap !important;
  flex-shrink: 0;
}
.mobile .bars .statusline .title .tags .tag {
  white-space: nowrap;
  display: inline-block;
}
.mobile .api-content section,
.mobile .api-content .flex,
.mobile .api-content button {
  margin-left: 0;
  margin-right: 0;
}
.mobile .Dashboard {
  min-height: 100vh;
}
.mobile .Dashboard .dashboard-grid {
  padding: 0 !important;
  gap: 0 !important;
}
.mobile .Dashboard .dashboard-grid .card {
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  margin-left: -16px;
  margin-right: -16px;
}
.mobile .Dashboard .dashboard-grid .deployment-gantt-chart {
  display: none !important;
}
.mobile .achievements-grid {
  grid-template-columns: 1fr;
}
.mobile .tag-category {
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  gap: 0.5rem;
}
.mobile .tag-category-title {
  min-width: auto;
  font-size: 0.75rem;
  line-height: 1.4;
}
.mobile .tag-category-tags {
  width: 100%;
  flex-wrap: wrap;
}
.mobile .keyword-table-wrapper {
  width: calc(100vw - 1rem);
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  padding: 0 0.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.mobile .keyword-table {
  font-size: 0.875rem;
  line-height: 1.5;
  min-width: 500px;
}
.mobile .button {
  max-width: 95vw;
}
.mobile .spotlight-message {
  width: 95vw;
  min-width: 95vw !important;
}
.TestPage {
  position: relative;
  height: 100vh;
  width: 100vw;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background-color: #000;
}
.TestPage .test-replay {
  background: transparent;
  width: 100%;
  height: 100%;
}
.TestPage .hidden-view {
  opacity: 0;
  pointer-events: none;
}
.TestPage .view-layer-front {
  z-index: 200;
  pointer-events: none;
}
.TestPage .view-layer-back {
  z-index: 100;
  pointer-events: none;
}
.TestPage .test-container {
  margin: 0 auto;
  top: 2.3rem;
}
.TestPage .test-edit-container {
  display: flex;
  height: 100%;
  width: 100%;
}
.TestPage .monaco-editor-container {
  flex: 1;
  min-width: 40vw;
}
.TestPage > .Replay {
  flex: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #000;
}
.TestPage .test-panel {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  position: fixed;
  left: 72px;
  top: 12px;
  width: 28vw;
  height: calc(100vh - 24px);
  z-index: 900;
  display: flex;
  flex-direction: column;
}
.TestPage .test-panel > * {
  flex: 1;
  min-height: 0;
}
.TestPage .test-panel .monaco-editor-container {
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.TestPage .test-panel .monaco-editor-container .monaco-container {
  flex: 1;
  height: 100%;
}
.TestPage .test-panel .TestDashboard {
  overflow-y: auto;
}
.mobile .test-container {
  top: 0.5rem;
}
.mobile .monaco-editor-container {
  min-width: 95vw;
}
.mobile .test-panel {
  left: 0;
  right: 0;
  top: auto;
  width: 100vw;
  height: 60vh;
  border-radius: 14px 14px 0 0;
}
.ssl-wizard {
  max-width: 700px;
  margin: 0 auto;
}
.ssl-goal {
  text-align: center;
  padding: 1rem;
  background: var(--bg-dim);
  border-radius: 8px;
  margin-bottom: 2rem;
  color: var(--fg-dim);
}
.ssl-goal strong {
  display: block;
  margin-bottom: 0.5rem;
}
.ssl-package {
  background: rgba(255,255,255,0.02);
  border-radius: 12px;
  margin-bottom: 1rem;
  transition: all 0.3s ease;
  cursor: pointer;
  min-width: 500px;
}
.ssl-package:hover {
  background: rgba(255,255,255,0.05);
  transform: translateY(-2px);
  box-shadow: 0px 8px 24px rgba(0,0,0,0.2);
}
.ssl-package.open {
  background: rgba(255,255,255,0.07);
  box-shadow: 0px 12px 28px rgba(0,0,0,0.25);
}
.ssl-package.passes {
  border: 2px solid var(--success);
}
.ssl-package.fails {
  border: 2px solid var(--error);
}
.ssl-package-header {
  padding: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.ssl-package-content {
  flex: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.ssl-package-title {
  font-size: 1.2rem;
  font-weight: bold;
  color: rgba(255,255,255,0.9);
}
.open .ssl-package-title {
  color: #fff;
  text-shadow: 0 0 8px rgba(255,255,255,0.2);
}
.ssl-checks-bars {
  display: flex;
  gap: 0.25rem;
  align-items: center;
}
.ssl-chevron {
  font-size: 1.5rem;
  color: rgba(255,255,255,0.6);
  opacity: 0.7;
  transition: all 0.4s ease;
}
.open .ssl-chevron {
  opacity: 1;
  color: #fff;
}
.ssl-package-details {
  padding: 0 1.25rem 1.25rem 1.25rem;
  animation: slideDown 0.3s ease;
}
.ssl-package-details .description {
  color: var(--fg-dim);
  margin-bottom: 1.5rem;
  font-size: 0.95rem;
}
.ssl-warning {
  background: var(--bg-error);
  padding: 0.75rem 1rem;
  margin-bottom: 1.5rem;
  border-radius: 6px;
  font-size: 0.9rem;
  color: var(--error);
  border: 1px solid var(--error);
}
.ssl-checks {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.ssl-button-container {
  display: flex;
  justify-content: center;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--border);
}
@-moz-keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
button {
  cursor: pointer;
}
.mobile .button {
  max-width: 95vw;
}
button[role="accordion"] {
  width: 100%;
  max-width: 100% !important;
  border: 1px solid #333;
  user-select: none;
}
button:not([role="switch"]) {
  padding: 0.7rem 1.2rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 6px;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  max-width: 500px;
  outline: none;
}
button:not([role="switch"]):hover {
  transform: scale(1.005);
}
button:not([role="switch"]):active {
  transform: scale(0.995);
}
button:not([role="switch"]):focus {
  outline: none;
}
button:not([role="switch"]):focus-visible {
  outline: none;
}
button.big {
  padding: 1rem 2rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 12px;
}
button.xl {
  padding: 1.25rem 2.5rem;
  font-size: 1.25rem;
  line-height: 1.4;
  border-radius: 14px;
}
button.xxl {
  padding: 1.5rem 3rem;
  font-size: 1.5rem;
  line-height: 1.3;
  border-radius: 16px;
}
button.box-shadow-pulse {
  animation: box-shadow-pulse 2s ease-in-out infinite;
}
button:not([role]) {
  cursor: pointer;
  margin-right: 0.5rem;
  background: transparent;
  border: 1.5px solid rgba(255,255,255,0.15);
  cursor: pointer;
  color: rgba(255,255,255,0.9);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  position: relative;
  overflow: hidden;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
button:not([role])::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);
  transition: left 0.5s ease;
}
button:not([role]):hover {
  border-color: rgba(255,255,255,0.3);
  color: #fff;
  background: rgba(255,255,255,0.05);
}
button:not([role]):hover::before {
  left: 100%;
}
button:not([role]):active {
  background: rgba(255,255,255,0.08);
  transform: scale(0.98);
}
button:not([role])[disabled] {
  border-color: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.4);
  cursor: not-allowed;
}
button:not([role])[disabled]::before {
  display: none;
}
button[role='cta'] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px 12px 18px;
  background: var(--cta);
  border-radius: 12px;
  border: none;
  height: 48px;
  box-shadow: 0px 4px 16px rgba(90,255,40,0.3);
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  color: #000;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  position: relative;
  overflow: hidden;
}
button[role='cta'].big {
  padding: 14px 20px 14px 22px;
  height: 56px;
  border-radius: 14px;
}
button[role='cta'].big .ArrowRightIcon {
  width: 28px;
  height: 28px;
}
button[role='cta'].big span {
  font-size: 1.25rem;
  line-height: 1.4;
}
button[role='cta'].xl {
  padding: 16px 24px 16px 26px;
  height: 64px;
  border-radius: 16px;
}
button[role='cta'].xl .ArrowRightIcon {
  width: 32px;
  height: 32px;
}
button[role='cta'].xl span {
  font-size: 1.5rem;
  line-height: 1.3;
}
button[role='cta'].xxl {
  padding: 18px 28px 18px 30px;
  height: 72px;
  border-radius: 18px;
}
button[role='cta'].xxl .ArrowRightIcon {
  width: 36px;
  height: 36px;
}
button[role='cta'].xxl span {
  font-size: 1.5rem;
  line-height: 1.3;
}
button[role='cta']:hover {
  background: var(--cta);
  box-shadow: 0px 6px 24px rgba(90,255,40,0.4);
  transform: translateY(-2px);
}
button[role='cta']:hover .ArrowRightIcon {
  background-color: rgba(0,0,0,0.2);
  transform: scale(1.1);
  transition: background-color 0.3s ease, transform 0.3s ease;
}
button[role='cta']:active {
  background: #1caa00;
  transform: translateY(-1px);
  box-shadow: 0px 4px 16px rgba(90,255,40,0.3);
}
button[role='cta'][disabled] {
  background: #9cf69c;
}
button[role='cta'] span {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  color: #09090b;
  margin-top: 3px;
  white-space: nowrap;
}
button[role='cta'] .ArrowRightIcon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0,0,0,0.28);
  border-radius: 6px;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
button[role='cta'] .ArrowRightIcon.big {
  padding: 8px 10px 8px 12px;
  height: 60px;
}
button[role='cta'] .ArrowRightIcon .ArrowRightIcon {
  width: 22px;
  height: 22px;
}
button[role='cta'] .ArrowRightIcon span {
  font-size: 14px;
}
[role="dialog"],
.toast.frozen,
[role="menu"] {
  backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3) !important;
  transition: backdrop-filter 1s ease-in-out;
}
.toast.frozen {
  position: relative;
}
.frozen[cmdk-root] {
  background-color: rgba(0,0,0,0.7) !important;
}
[cmdk-root].frozen {
  background-color: rgba(0,0,0,0.7) !important;
  backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
}
[cmdk-item] [cmdk-shortcut] {
  color: rgba(255,255,255,0.5) !important;
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 4px !important;
  padding: 2px 6px !important;
  font-size: 0.75rem !important;
  font-family: monospace !important;
}
.H1 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: normal;
  color: #fff;
  margin-bottom: 1.5rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (min-width: 1024px) {
  .H1 {
    font-size: 3rem;
  }
}
.H2 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: normal;
  color: #fff;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.H2:first-child {
  margin-top: 0;
}
.H3 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: normal;
  color: #fff;
  margin-bottom: 0.75rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.Lead {
  font-family: "SF NS", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 300;
  color: rgba(255,255,255,0.7);
  margin-bottom: 1.5rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.absolute {
  position: absolute !important;
}
.ui-section {
  margin-bottom: 3rem;
  width: 100%;
}
.input-with-errors {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.button-selector {
  display: flex;
  gap: 8px;
  background: rgba(0,0,0,0.7);
  padding: 8px;
  border-radius: 4px;
}
.button-selector .button-selector-option {
  background: rgba(51,51,51,0.9);
  color: #fff;
  border: none;
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: normal;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.button-selector .button-selector-option.active {
  background: var(--cta);
  color: #000;
  font-weight: bold;
}
.group-row {
  display: flex;
  gap: 0.125rem;
}
.group-left {
  padding-right: 0.5rem;
  display: flex;
}
.group-right {
  padding-left: 0.5rem;
  display: flex;
}
.Header {
  font-size: 2.25rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  text-align: center;
}
@media (min-width: 1024px) {
  .Header {
    font-size: 3rem;
  }
}
.pre-animate {
  opacity: 0;
}
@-moz-keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@-webkit-keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@-o-keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
.one-by-one > * {
  opacity: 0;
  will-change: opacity, transform;
}
.one-by-one.animate > * {
  animation-name: OneByOne;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
}
.one-by-one.animate > *:nth-child(1) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 0));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(2) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 1));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(3) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 2));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(4) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 3));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(5) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 4));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(6) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 5));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(7) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 6));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(8) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 7));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(9) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 8));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(10) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 9));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(11) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 10));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(12) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 11));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(13) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 12));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(14) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 13));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(15) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 14));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(16) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 15));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(17) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 16));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(18) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 17));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(19) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 18));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(20) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 19));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(21) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 20));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(22) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 21));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(23) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 22));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(24) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 23));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(25) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 24));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(26) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 25));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(27) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 26));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(28) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 27));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(29) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 28));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(30) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 29));
  animation-duration: var(--duration);
}
.settings-content {
  padding-top: 3rem;
}
@-moz-keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.task-list-container {
  margin-top: 0.5rem;
}
.status-container.ok .task-list-container {
  display: none;
}
.task-list {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.task-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.1rem 0;
  transition: all 0.2s ease;
}
.task-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.task-name {
  flex: 1;
  color: rgba(255,255,255,0.9);
  font-size: 0.9rem;
  line-height: 1.4;
}
.task-done .task-name {
  color: rgba(255,255,255,0.6);
}
.task-in_progress .task-name {
  color: rgba(255,255,255,0.9);
  font-weight: 500;
}
.task-failed .task-name {
  color: rgba(255,255,255,0.9);
}
.spinner {
  width: 14px;
  height: 14px;
  border: 2px solid rgba(255,255,255,0.3);
  border-top: 2px solid rgba(255,255,255,0.8);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  flex-shrink: 0;
}
.task-list-message {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.9);
  font-size: 0.9rem;
  line-height: 1.6;
}
@-moz-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-o-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.simple-json-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}
.simple-json-form .loading-form {
  padding: 1rem;
  text-align: center;
  color: #6b7280;
}
.popup-form-container {
  position: relative;
}
.popup-form-container .popup-trigger-button {
  padding: 0.5rem 1rem;
  background-color: #3b82f6;
  color: #fff;
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  font-weight: 500;
}
.popup-form-container .popup-trigger-button:hover {
  background-color: #2563eb;
}
.popup-content {
  backdrop-filter: blur(20px) !important;
  background-color: rgba(0,0,0,0.7) !important;
  box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.6) !important, 0 0 30px rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 12px;
  padding: 2rem;
  width: 90%;
  max-width: 600px;
  max-height: 90vh;
  overflow-y: auto;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: fadeIn 0.25s ease-in-out;
  z-index: 10002;
  text-align: left;
}
.popup-content::before {
  content: '';
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  background: linear-gradient(45deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05));
  border-radius: 14px;
  z-index: -1;
  filter: blur(1px);
}
.popup-content * {
  text-align: left;
}
.popup-content .form-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
}
.popup-content .form-errors {
  margin-top: 1rem;
  padding: 0.75rem;
  border-radius: 0.25rem;
  background-color: #fee2e2;
  border: 1px solid #ef4444;
  text-align: left;
}
.popup-content .form-errors .error-message {
  color: #b91c1c;
  font-size: 0.875rem;
  margin-bottom: 0.25rem;
  text-align: left;
}
.popup-content .form-errors .error-message:last-child {
  margin-bottom: 0;
}
.popup-content .vertical-layout {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.popup-content .horizontal-layout {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
}
.popup-content .horizontal-layout > div {
  flex: 1;
  min-width: 200px;
}
.popup-content .input-control {
  margin-bottom: 1rem;
}
.popup-content .input-control label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: rgba(255,255,255,0.9) !important;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-align: left;
}
.popup-content .input-control input,
.popup-content .input-control textarea,
.popup-content .input-control select {
  width: 100%;
  padding: 0.75rem;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 6px;
  color: rgba(255,255,255,0.95) !important;
  transition: all 0.2s ease;
}
.popup-content .input-control input::placeholder,
.popup-content .input-control textarea::placeholder,
.popup-content .input-control select::placeholder {
  color: rgba(255,255,255,0.5) !important;
}
.popup-content .input-control input:focus,
.popup-content .input-control textarea:focus,
.popup-content .input-control select:focus {
  outline: none;
  border-color: rgba(255,255,255,0.3) !important;
  background: rgba(255,255,255,0.08) !important;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1);
}
.popup-content .input-control .validation_error {
  color: #ef4444;
  font-size: 0.75rem;
  margin-top: 0.25rem;
  text-align: left;
}
.popup-content .tag-select-container {
  margin-bottom: 1rem;
}
.popup-content .tag-select-container label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: rgba(255,255,255,0.9) !important;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-align: left;
}
.popup-content .tag-select-container .tag-select-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 90%;
  display: inline-block;
}
.popup-content .group {
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1rem;
}
.popup-content .group .group-label {
  font-weight: 600;
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  text-align: left;
}
.popup-form-container {
  position: relative;
}
.popup-form-container .popup-trigger-button {
  background: var(--cta);
  color: #000;
  font-weight: 600;
  padding: 0.5rem 1rem;
  border-radius: 0.25rem;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.popup-form-container .popup-trigger-button:hover {
  background: var(--cta-hover);
}
.popup-form-container .popup-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--background);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 0.5rem;
  padding: 1.5rem;
  z-index: 1001;
  width: 90%;
  max-width: 600px;
  max-height: 90vh;
  overflow-y: auto;
}
.popup-form-container .popup-content .form-title {
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.popup-form-container .popup-content .form-description {
  margin-bottom: 1.5rem;
  color: var(--text-secondary);
}
.popup-form-container .popup-content .form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 1.5rem;
}
.multi-screenshot {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.multi-screenshot .screenshot-grid {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
  width: 100%;
}
.multi-screenshot .screenshot-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 800px;
}
.multi-screenshot .screenshot-item .screenshot-container {
  text-align: center;
  margin-bottom: 1rem;
  width: 100%;
  display: flex;
  justify-content: space-around;
}
.multi-screenshot .screenshot-item .screenshot-container .screenshot-image {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.multi-screenshot .screenshot-item .screenshot-info {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.multi-screenshot .screenshot-item .screenshot-info .device-name {
  font-weight: 600;
  color: rgba(255,255,255,0.9);
}
.multi-screenshot .screenshot-item .screenshot-info .resolution {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  background: rgba(255,255,255,0.1);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
}
.sitemap-container {
  margin: 1rem 0;
  border: none;
  border-radius: 0;
  overflow: hidden;
  background: transparent;
  width: 100%;
}
.sitemap-header {
  padding: 1rem;
  background: rgba(0,0,0,0.8);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  backdrop-filter: blur(12px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}
.sitemap-header h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: rgba(255,255,255,0.95);
}
.sitemap-stats {
  display: flex;
  gap: 1rem;
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
}
.sitemap-stats span {
  padding: 0.25rem 0.5rem;
  background: rgba(255,255,255,0.1);
  border-radius: 4px;
  color: rgba(255,255,255,0.9);
}
.sitemap-flow {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background: transparent;
  top: 0;
  left: 0;
}
.sitemap-flow .react-flow__attribution {
  display: none;
}
.sitemap-node {
  width: 300px;
  background: rgba(0,0,0,0.8);
  border: 2px solid rgba(255,255,255,0.2);
  border-radius: 12px;
  min-width: 300px;
  max-width: 400px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6);
  transition: all 0.2s ease;
  backdrop-filter: blur(16px);
}
.sitemap-node:hover {
  border-color: rgba(99,102,241,0.8);
  box-shadow: 0 12px 48px rgba(0,0,0,0.8);
  background: rgba(0,0,0,0.9);
  transform: scale(1.02);
}
.node-content {
  padding: 0;
}
.node-thumbnail {
  margin-bottom: 0.75rem;
  border-radius: 12px 12px 0 0;
  overflow: hidden;
}
.thumbnail-image {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 12px 12px 0 0;
  display: block;
}
.node-info .node-title {
  font-decoration: none;
  font-weight: 600;
  font-size: 1rem;
  color: rgba(255,255,255,0.95);
  margin-bottom: 0.5rem;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.node-info .tags {
  gap: 0.25rem;
  margin-top: 0.5rem;
}
.node-info .tags .tag {
  font-size: 0.65rem;
  padding: 0.1rem 0.3rem;
}
.node-info .node-type {
  font-size: 0.7rem;
  color: #6366f1;
  background: rgba(99,102,241,0.2);
  padding: 0.25rem 0.5rem;
  border-radius: 16px;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 600;
}
.react-flow__handle {
  display: none;
}
.react-flow__controls button {
  background: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: rgba(255,255,255,0.8) !important;
}
.react-flow__controls button:hover {
  background: rgba(255,255,255,0.15) !important;
  color: rgba(255,255,255,0.95) !important;
}
.react-flow__minimap {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
}
.artifact-type-control .form-label {
  color: rgba(255,255,255,0.95);
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 1rem;
  display: block;
}
.artifact-type-control .form-description {
  color: rgba(255,255,255,0.7);
  margin-bottom: 1.5rem;
}
.artifact-type-control .artifact-type-grid {
  display: grid;
  gap: 1rem;
}
.artifact-type-control .artifact-type-button {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem;
  border: 2px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  background: rgba(255,255,255,0.02);
  color: #fff;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  width: 100%;
}
.artifact-type-control .artifact-type-button:hover {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.25);
}
.artifact-type-control .artifact-type-button.selected {
  border-color: #5aff28;
  background: rgba(90,255,40,0.1);
}
.artifact-type-control .artifact-type-button.selected .artifact-type-name {
  color: #5aff28;
}
.artifact-type-control .artifact-type-icon {
  font-size: 1.5rem;
  margin-top: 0.25rem;
  flex-shrink: 0;
}
.artifact-type-control .artifact-type-content {
  flex: 1;
}
.artifact-type-control .artifact-type-name {
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  color: rgba(255,255,255,0.95);
}
.artifact-type-control .artifact-type-description {
  font-size: 0.875rem;
  line-height: 1.4;
  color: rgba(255,255,255,0.7);
  margin: 0;
}
.selected .artifact-type-control .artifact-type-description {
  color: rgba(255,255,255,0.9);
}
.artifact-type-control .artifact-type-check {
  flex-shrink: 0;
  margin-top: 0.25rem;
}
.artifact-type-control .artifact-type-check .check-circle {
  width: 20px;
  height: 20px;
  background: #5aff28;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.artifact-type-control .artifact-type-check .check-circle svg {
  width: 12px;
  height: 12px;
  fill: #000;
}
.artifact-type-control .validation-error {
  color: #f00;
  font-size: 0.875rem;
  margin-top: 0.5rem;
}
.app-wrapper {
  position: absolute;
  display: flex;
  flex-direction: column;
  transition: opacity 100ms;
  opacity: 1;
  pointer-events: none;
  z-index: 100;
}
.app-wrapper .app-container {
  display: flex;
  flex-direction: column;
  border-radius: 0.5rem;
  overflow: hidden;
  border: 1px solid #3a3a3a;
  height: 100%;
  box-sizing: border-box;
  pointer-events: none;
}
.app-wrapper .app-container.terminal-mode {
  background: #000;
}
.app-wrapper .app-container.browser-mode {
  background: transparent;
}
.app-wrapper .browser-chrome {
  display: flex;
  flex-direction: column;
  background: #2a2a2a;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  pointer-events: auto;
}
.app-wrapper .browser-chrome .browser-chrome-top {
  display: flex;
  align-items: center;
  padding: 0.5rem;
  gap: 0.25rem;
}
.app-wrapper .browser-controls {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.app-wrapper .browser-dots {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0 0.5rem;
}
.app-wrapper .browser-dots span {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
}
.app-wrapper .browser-dots span.red {
  background: #ef4444;
}
.app-wrapper .browser-dots span.yellow {
  background: #facc15;
}
.app-wrapper .browser-dots span.green {
  background: #22c55e;
}
.app-wrapper .browser-button {
  height: 2rem;
  width: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  cursor: pointer;
  transition: color 150ms;
}
.app-wrapper .browser-button:hover:not(.disabled) {
  color: #aaa;
}
.app-wrapper .browser-button.disabled {
  color: #333;
  cursor: not-allowed;
  opacity: 0.5;
}
.app-wrapper .browser-button svg {
  width: 1rem;
  height: 1rem;
}
.app-wrapper .browser-url-bar {
  flex: 1;
  margin: 0 0.5rem;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.app-wrapper .browser-url {
  display: flex;
  align-items: center;
  background: #1a1a1a;
  border-radius: 9999px;
  padding: 0.375rem 1rem;
  font-size: 0.875rem;
  width: 100%;
}
.app-wrapper .browser-url svg {
  width: 0.75rem;
  height: 0.75rem;
  color: #888;
  margin-right: 0.5rem;
  flex-shrink: 0;
}
.app-wrapper .browser-url span {
  width: 100%;
  color: #ddd;
  opacity: 0.8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  outline: none;
  cursor: text;
}
.app-wrapper .page-tabs {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0 0.5rem 0.5rem 0.5rem;
  overflow-x: auto;
}
.app-wrapper .page-tabs::-webkit-scrollbar {
  height: 0;
}
.app-wrapper .page-tab {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  background: rgba(255,255,255,0.05);
  border-radius: 0.375rem;
  font-size: 0.75rem;
  cursor: pointer;
  transition: background 150ms;
  white-space: nowrap;
  flex-shrink: 0;
  color: #888;
}
.app-wrapper .page-tab:hover {
  background: rgba(255,255,255,0.1);
  color: #aaa;
}
.app-wrapper .page-tab.active {
  background: rgba(255,255,255,0.15);
  color: #ddd;
}
.app-wrapper .page-tab .page-tab-title {
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.app-wrapper .recording-button {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  cursor: pointer;
  transition: background 150ms, border 150ms;
  border: 1px solid transparent;
}
.app-wrapper .recording-button:not(.active) {
  background: rgba(102,102,102,0.1);
  border: 1px solid rgba(102,102,102,0.3);
  color: #666;
}
.app-wrapper .recording-button:not(.active):hover {
  background: rgba(102,102,102,0.15);
  color: #aaa;
}
.app-wrapper .recording-button.active {
  background: rgba(239,68,68,0.1);
  border: 1px solid rgba(239,68,68,0.3);
  color: #ef4444;
}
.app-wrapper .recording-button.active:hover {
  background: rgba(239,68,68,0.15);
}
.app-wrapper .recording-button .recording-dot {
  width: 0.5rem;
  height: 0.5rem;
  background: #ef4444;
  border-radius: 50%;
  animation: pulse 1.5s ease-in-out infinite;
}
.app-wrapper .recording-button .recording-text {
  font-weight: 500;
}
.app-wrapper .browser-progress-bar {
  width: 100%;
  height: 4px;
  background: rgba(255,255,255,0.1);
  overflow: visible;
  position: relative;
  cursor: pointer;
  pointer-events: auto;
}
.app-wrapper .browser-progress-bar .bar {
  height: 100%;
  transition: width 0.3s ease, background 0.3s ease, background-color 0.3s ease;
}
.app-wrapper .browser-progress-bar .cluster {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  pointer-events: auto;
  z-index: 1000;
}
.app-wrapper .browser-progress-bar .cluster .progress-marker {
  position: relative;
  left: 0;
  top: 0;
  transform: none;
}
.app-wrapper .browser-progress-bar .progress-marker {
  position: absolute;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 1000;
  transform: translate(-50%, -50%);
  pointer-events: auto;
  display: none;
}
.app-wrapper .browser-progress-bar .progress-marker-tooltip {
  position: absolute;
  bottom: 100%;
  left: 0;
  transform: translateX(-50%);
  background: #1a1a1a;
  color: #fff;
  padding: 0.5rem 0.75rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  white-space: nowrap;
  margin-bottom: 0.5rem;
  z-index: 100;
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.5);
}
.app-wrapper .browser-progress-bar .progress-marker-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-top-color: #1a1a1a;
}
.app-wrapper .browser-content {
  flex: 1;
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
  background: transparent;
  position: relative;
  overflow: hidden;
  display: flex;
  pointer-events: none;
}
.app-wrapper .browser-content .test-replay {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.app-wrapper .browser-content :global(.rr-player) {
  will-change: transform;
}
.app-wrapper .browser-content :global(.rr-player iframe) {
  pointer-events: auto;
}
.app-wrapper .welcome-screen {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-family: 'SF NS Mono', 'Monaco', 'Cascadia Code', 'Roboto Mono', monospace;
  pointer-events: auto;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.app-wrapper .welcome-message {
  text-align: center;
  color: #d4d4d4;
  font-size: 14px;
}
.app-wrapper .welcome-message p {
  margin-bottom: 1.5rem;
  opacity: 0.8;
}
.sidebar {
  position: fixed;
  left: 12px;
  top: 12px;
  bottom: 12px;
  width: 52px;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  overflow: visible;
  transition: width 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar:hover {
  width: 220px;
}
.sidebar:hover .sidebar-logo-text,
.sidebar:hover .sidebar-nav-label,
.sidebar:hover .sidebar-shortcut {
  opacity: 1;
  max-width: 160px;
}
.sidebar-logo-text,
.sidebar-nav-label,
.sidebar-shortcut {
  opacity: 0;
  max-width: 0;
  overflow: hidden;
  white-space: nowrap;
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1), max-width 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-header {
  display: flex;
  align-items: center;
  padding: 14px 0 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  flex-shrink: 0;
  min-height: 52px;
}
.sidebar-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 17px;
  overflow: hidden;
  width: 100%;
}
.sidebar-logo-mark {
  width: 20px;
  height: 20px;
  min-width: 20px;
  border-radius: 5px;
  background: var(--cta);
  color: #000;
  font-weight: 800;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.sidebar-logo-text {
  font-size: 0.82rem;
  font-weight: 600;
  color: rgba(255,255,255,0.85);
  letter-spacing: normal;
}
.sidebar-org-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 17px;
  width: 100%;
  cursor: pointer;
  border-radius: 8px;
  transition: background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-org-btn:hover {
  background: rgba(255,255,255,0.07);
}
.sidebar-org-btn .sidebar-logo-text {
  overflow: hidden;
  text-overflow: ellipsis;
}
.sidebar-nav {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 6px 6px 0 6px;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.sidebar-nav::-webkit-scrollbar {
  width: 2px;
}
.sidebar-nav::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
}
.sidebar .sidebar-nav-item {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 11px;
  padding: 9px 17px;
  border-radius: 8px;
  cursor: pointer;
  border: none;
  background: transparent;
  color: rgba(255,255,255,0.55);
  font-size: 0.85rem;
  font-weight: 400;
  text-align: left;
  max-width: none;
  margin: 0;
  white-space: nowrap;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1), background 200ms cubic-bezier(0.4, 0, 0.2, 1), border-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar .sidebar-nav-item:hover,
.sidebar .sidebar-nav-item:focus,
.sidebar .sidebar-nav-item:focus-visible,
.sidebar .sidebar-nav-item:active {
  border: none;
  outline: none;
  transform: none;
}
.sidebar .sidebar-nav-item:hover {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.85);
}
.sidebar .sidebar-nav-item::before {
  display: none;
}
.sidebar .sidebar-nav-item.active {
  border: none;
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
}
.sidebar .sidebar-nav-item.active .sidebar-nav-icon {
  color: var(--cta);
}
.sidebar .sidebar-nav-item.sidebar-action-item {
  color: rgba(255,255,255,0.4);
}
.sidebar .sidebar-nav-item.sidebar-action-item .sidebar-nav-icon {
  color: rgba(255,255,255,0.35);
}
.sidebar-nav-icon {
  flex-shrink: 0;
  color: inherit;
  min-width: 18px;
}
.sidebar-test-section {
  padding: 0 6px;
  display: flex;
  flex-direction: column;
  gap: 1px;
  flex-shrink: 0;
}
.sidebar-divider {
  height: 1px;
  background: rgba(255,255,255,0.06);
  margin: 6px 6px;
}
.sidebar-footer {
  padding: 6px 6px 10px 6px;
  border-top: 1px solid rgba(255,255,255,0.06);
  display: flex;
  flex-direction: column;
  gap: 1px;
  flex-shrink: 0;
}
.sidebar-shortcut {
  flex-shrink: 0;
  font-size: 0.68rem;
  font-family: 'SF NS Mono', monospace;
  color: rgba(255,255,255,0.2);
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 4px;
  padding: 1px 5px;
  margin-left: auto;
}
.sidebar-user-wrap {
  position: relative;
}
.sidebar .sidebar-user {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px 17px;
  color: rgba(255,255,255,0.3);
  font-size: 0.8rem;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  background: transparent;
  border: none;
  margin: 0;
  cursor: pointer;
  border-radius: 8px;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1), background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar .sidebar-user::before {
  display: none;
}
.sidebar .sidebar-user:hover,
.sidebar .sidebar-user.open {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.65);
  border: none;
}
.sidebar .sidebar-user .sidebar-user-chevron {
  margin-left: auto;
  flex-shrink: 0;
  opacity: 0;
  color: rgba(255,255,255,0.3);
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1), transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotate(180deg);
}
.sidebar .sidebar-user .sidebar-user-chevron.up {
  transform: rotate(0deg);
}
.sidebar:hover .sidebar-user-chevron {
  opacity: 1;
}
.sidebar-user-menu {
  position: absolute;
  bottom: calc(100% + 6px);
  left: 6px;
  right: 6px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  background-color: rgba(20,20,22,0.98);
  padding: 4px;
  z-index: 100;
}
.sidebar-user-menu-label {
  font-size: 0.68rem;
  color: rgba(255,255,255,0.25);
  padding: 5px 10px 3px 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.sidebar-user-menu-divider {
  height: 1px;
  background: rgba(255,255,255,0.07);
  margin: 4px 6px;
}
.sidebar-user-menu .sidebar-user-menu-item {
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  padding: 9px 11px;
  border-radius: 8px;
  border: none;
  margin: 0;
  background: transparent;
  color: rgba(255,255,255,0.55);
  font-size: 0.85rem;
  font-weight: 400;
  cursor: pointer;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1), background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-user-menu .sidebar-user-menu-item:hover {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.85);
  border: none;
}
.sidebar-user-menu .sidebar-user-menu-item.active {
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
}
.sidebar-user-menu .sidebar-user-menu-item::before {
  display: none;
}
.sidebar-user-menu .sidebar-user-menu-item:focus,
.sidebar-user-menu .sidebar-user-menu-item:focus-visible,
.sidebar-user-menu .sidebar-user-menu-item:active {
  outline: none;
  border: none;
  transform: none;
}
.sidebar-mobile {
  position: fixed;
  bottom: 12px;
  left: 12px;
  right: 12px;
  height: 56px;
  z-index: 1000;
  display: flex;
  flex-direction: row;
  align-items: center;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45);
  overflow: hidden;
}
.sidebar-mobile .sidebar-nav {
  flex: 1;
  flex-direction: row;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 4px 6px;
  gap: 2px;
  height: 100%;
}
.sidebar-mobile .sidebar-nav::-webkit-scrollbar {
  display: none;
}
.sidebar-mobile .sidebar-nav-label {
  display: none;
}
.sidebar-mobile .sidebar .sidebar-nav-item,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item {
  flex-direction: column;
  gap: 2px;
  padding: 6px 10px;
  height: 100%;
  border-radius: 8px;
  border: none;
  border-bottom: 2px solid transparent;
  border-left: none;
}
.sidebar-mobile .sidebar .sidebar-nav-item:hover,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item:hover {
  border: none;
  border-bottom: 2px solid transparent;
}
.sidebar-mobile .sidebar .sidebar-nav-item.active,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item.active {
  border: none;
  border-bottom: 2px solid var(--cta);
  background: rgba(90,255,40,0.09);
}
.sidebar-mobile .sidebar .sidebar-nav-item.active .sidebar-nav-icon,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item.active .sidebar-nav-icon {
  color: var(--cta);
}
.mobile .sidebar {
  display: none;
}
.checkbox-group-container {
  margin-bottom: 16px;
}
.checkbox-group-container label {
  display: block;
  margin-bottom: 8px;
}
.checkbox-group-options {
  display: flex;
  gap: 8px;
  background: rgba(0,0,0,0.7);
  padding: 8px;
  border-radius: 4px;
  flex-wrap: wrap;
}
.checkbox-group-options button {
  background: #333;
  color: #fff;
  border: none;
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: normal;
  min-width: fit-content;
}
.checkbox-group-options button.selected {
  background: #0f0;
  color: #000;
}
.Footer {
  width: 100vw;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.Footer .footer-inner {
  display: flex;
  flex-direction: row;
  gap: 6rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 2rem 3rem;
}
.Footer .footer-brand {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 200px;
  max-width: 260px;
  flex-shrink: 0;
}
.Footer .footer-logo a {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  color: #fff;
  text-decoration: none;
  letter-spacing: -0.01em;
}
.Footer .footer-logo a .text-cta {
  color: var(--cta);
}
.Footer .footer-tagline {
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.45);
  line-height: 1.6;
  margin: 0;
}
.Footer .footer-socials {
  display: flex;
  flex-direction: row;
  gap: 0.75rem;
  margin-top: 0.25rem;
}
.Footer .footer-socials .social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.5);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.Footer .footer-socials .social-link:hover {
  color: #fff;
  border-color: rgba(255,255,255,0.25);
  background: rgba(255,255,255,0.05);
}
.Footer .footer-columns {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 3rem;
  flex: 1;
}
.Footer .LinksColumn {
  display: flex;
  flex-direction: column;
  min-width: 120px;
}
.Footer .LinksColumn .LinksHeader {
  font-size: 0.75rem;
  line-height: 1.4;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  margin-bottom: 1rem;
}
.Footer .LinksColumn .Links {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
.Footer .LinksColumn .Links a {
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.7);
  text-decoration: none;
  padding: 0.35rem 0;
  transition: all 150ms ease;
}
.Footer .LinksColumn .Links a:hover {
  color: #fff;
}
.Footer .footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.06);
  max-width: 1200px;
  margin: 0 auto;
  padding: 1.25rem 2rem;
  font-size: 0.75rem;
  line-height: 1.4;
  color: rgba(255,255,255,0.3);
}
@media (max-width: 768px) {
  .Footer .footer-inner {
    flex-direction: column;
    gap: 2.5rem;
    padding: 3rem 1.5rem 2rem;
  }
  .Footer .footer-brand {
    max-width: 100%;
  }
  .Footer .footer-columns {
    gap: 2rem;
  }
  .Footer .footer-bottom {
    padding: 1rem 1.5rem;
  }
}
@font-face {
  font-family: 'SF NS';
  src: local('SF Pro'), local('SF Pro Text'), local('.SFNSText'), url("./fonts/SF-NS-Regular.woff2") format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: optional;
}
@font-face {
  font-family: 'SF NS';
  src: local('SF Pro'), local('SF Pro Text'), local('.SFNSText'), url("./fonts/SF-NS-Italic.woff2") format('woff2');
  font-weight: 100 900;
  font-style: italic;
  font-display: optional;
}
@font-face {
  font-family: 'SF NS Mono';
  src: local('SF Mono'), local('.SFNSMono'), url("./fonts/SF-NS-Mono.woff2") format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: optional;
}
@font-face {
  font-family: 'SF Compact';
  src: local('SF Compact'), local('.SFCompactText'), url("./fonts/SF-Compact.woff2") format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: optional;
}
body {
  background: #000;
  color: #fff;
  font-family: 'SF NS', 'SF Pro Text', 'SF Pro Icons', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  touch-action: pan-x pan-y;
}
.doc-content {
  user-select: text;
  -webkit-user-select: text;
}
::selection,
::-moz-selection {
  background-color: #5aff28;
  color: #000;
}
.markdown-content h1 {
  scroll-margin-top: 5rem;
  font-size: 2.2rem;
  font-weight: 900;
  line-height: 1.2;
  margin-top: 4rem;
  margin-bottom: 0rem;
  padding-bottom: 0.5rem;
  color: #fff;
}
.markdown-content h2 {
  scroll-margin-top: 5rem;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.3;
  margin-top: 3.5rem;
  margin-bottom: 0rem;
  color: #fff;
}
.markdown-content h3:not(.accordion) {
  scroll-margin-top: 5rem;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 3rem;
  margin-bottom: 0rem;
  color: #fff;
}
.markdown-content .accordion .accordion {
  margin-left: 1rem;
}
.markdown-content h4 {
  scroll-margin-top: 5rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  color: #fff;
}
.markdown-content p {
  margin-bottom: 1.25rem;
  line-height: 1.7;
  color: #fff;
}
.markdown-content figure {
  margin: 2.5rem 0;
}
.markdown-content img {
  max-width: 100%;
  height: auto;
  border-radius: 0.5rem;
  display: block;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}
.markdown-content figcaption {
  margin-top: 0.75rem;
  font-size: 1.2rem;
  opacity: 1;
  text-align: center;
}
.markdown-content h3 + p img,
.markdown-content h3 + p figure,
.markdown-content h4 + p img,
.markdown-content h4 + p figure {
  margin-top: 0.75rem;
}
.markdown-content h3:has(+ p img),
.markdown-content h3:has(+ p figure),
.markdown-content h4:has(+ p img),
.markdown-content h4:has(+ p figure) {
  margin-top: 3.5rem;
  margin-bottom: 0.75rem;
  font-size: 1.2rem;
  font-weight: 600;
  color: rgba(255,255,255,0.8);
  letter-spacing: 0.02em;
}
.markdown-content blockquote {
  border-left: 4px solid rgba(255,255,255,0.2);
  padding: 1rem 1.5rem;
  margin: 1.5rem 0;
  background-color: rgba(255,255,255,0.05);
  border-radius: 0 0.5rem 0.5rem 0;
}
.markdown-content blockquote p {
  margin: 0;
  color: rgba(255,255,255,0.8);
}
.markdown-content ul,
.markdown-content ol {
  margin: 1.5rem 0 1.5rem 1.5rem;
}
.markdown-content ul li,
.markdown-content ol li {
  margin-bottom: 0.5rem;
  line-height: 1.6;
  padding-left: 0.5rem;
}
.markdown-content ul {
  list-style-type: disc;
}
.markdown-content ol {
  list-style-type: decimal;
}
.markdown-content code {
  font-family: monospace;
  background-color: rgba(255,255,255,0.1);
  padding: 0.2rem 0.4rem;
  border-radius: 0.25rem;
  font-size: 0.9rem;
}
.markdown-content pre {
/* background-color: rgba(0, 0, 0, 0.3); */
/* padding: 1rem; */
/* border-radius: 0.5rem; */
  overflow-x: auto;
/* margin: 1.5rem 0; */
  margin: 0;
  padding: 0;
}
.markdown-content pre code {
  background-color: transparent;
  padding: 0;
  border-radius: 0;
  font-size: 0.9rem;
}
.ai-chat-demo {
  background: rgba(0,0,0,0.3);
  border: 2px solid transparent;
  border-radius: 12px;
  margin: 1.5rem 0;
  backdrop-filter: blur(8px);
  position: relative;
  box-shadow: 0 0 20px rgba(0,255,255,0.1), 0 0 40px rgba(255,0,255,0.05);
  transition: box-shadow 0.3s ease;
  padding: 1rem;
}
.ai-chat-demo:hover {
  box-shadow: 0 0 30px rgba(0,255,255,0.2), 0 0 60px rgba(255,0,255,0.1);
}
.ai-chat-demo::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 12px;
  padding: 2px;
  background: linear-gradient(45deg, rgba(0,255,255,0.3) 0%, rgba(255,0,255,0.3) 25%, rgba(255,255,0,0.3) 50%, rgba(0,255,255,0.3) 75%, rgba(255,0,255,0.3) 100%);
  background-size: 400% 400%;
  animation: gradientShift 8s ease infinite;
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask-composite: xor;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  z-index: -1;
}
.ai-chat-demo::after {
  content: '🤖 AI Chat';
  position: absolute;
  top: -12px;
  left: 20px;
  background: rgba(0,0,0,0.8);
  color: rgba(255,255,255,0.8);
  padding: 4px 12px;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 500;
  backdrop-filter: blur(4px);
  animation: aiPulse 3s ease-in-out infinite;
}
.one-by-one-child {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
.one-by-one-child.animate {
  opacity: 1;
  transform: translateY(0);
}
.typing-chunk {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.typing-chunk.animate {
  opacity: 1;
}
.ai-chat-demo .chat-messages {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 15px;
}
.ai-chat-demo .chat-message {
  padding: 8px 12px;
  border-radius: 8px;
  max-width: 100%;
  width: 100%;
}
.ai-chat-demo .chat-message.user {
  align-self: flex-end;
  border-left: 2px solid var(--cta);
  border-radius: 0;
  color: #bbb;
  white-space: break-spaces;
  transition: opacity 0.3s, border-color 0.3s;
}
.ai-chat-demo .chat-message.user.pending {
  opacity: 0.5;
  border-left-color: #666;
}
.ai-chat-demo .chat-message.user.processing {
  opacity: 0.75;
  border-left-color: #999;
}
.ai-chat-demo .chat-message.user.processed {
  opacity: 1;
  border-left-color: var(--cta);
}
.ai-chat-demo .chat-message.ai {
  width: 100%;
  align-self: flex-start;
  background-color: transparent;
  color: #fff;
}
.ai-chat-demo .chat-message.ai .message-content {
  white-space: pre-wrap;
}
.ai-chat-demo .chat-message.ai .message-content p {
  margin-bottom: 0.75rem;
  line-height: 1.6;
  color: rgba(255,255,255,0.9);
}
.ai-chat-demo .chat-message.ai .message-content ul {
  margin: 0.75rem 0 0.75rem 1rem;
  list-style-type: disc;
}
.ai-chat-demo .chat-message.ai .message-content ul li {
  margin-bottom: 0.25rem;
  line-height: 1.5;
  padding-left: 0.25rem;
}
.ai-chat-demo table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  overflow-x: auto;
  display: block;
}
.ai-chat-demo table th,
.ai-chat-demo table td {
  padding: 0.75rem;
  text-align: left;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.ai-chat-demo table tr {
  padding: 0.5rem !important;
}
.ai-chat-demo table th {
  font-weight: 600;
  background-color: rgba(255,255,255,0.05);
}
.ai-chat-demo table tr:hover {
  background-color: rgba(255,255,255,0.03);
}
.card {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  margin-bottom: 1.5rem;
}
.card .card-header {
  padding: 1.5rem 1.5rem 0 1.5rem;
}
.card .card-header h3 {
  font-size: 1.125rem;
  font-weight: 600;
  color: rgba(255,255,255,0.95);
  margin: 0 0 1rem 0;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.card .card-content {
  padding: 1.5rem;
}
.card-header + .card .card-content {
  padding-top: 0;
}
.dark {
  --background: 0 0% 0%;
  --foreground: 0 0% 98%;
  --background-semi: rgba(0,0,0,0.1);
  --cta: #5aff28;
  --cta-hover: #32c800;
  --primary: 0 0% 9%;
  --primary-rgb: #5aff28;
  --primary-foreground: 0 0% 98%;
  --muted-foreground: 0 0% 45%;
  --border: 0 0% 15%;
  --input: 0 0% 15%;
  --ring: 0 0% 9%;
  --radius: 0.5rem;
  color: #fff;
  --card: 0 0% 3%;
  --card-foreground: 0 0% 98%;
  --popover: 0 0% 3%;
  --popover-foreground: 0 0% 98%;
  --secondary: 0 0% 8%;
  --secondary-foreground: 0 0% 98%;
  --muted: 0 0% 6%;
  --accent: 0 0% 12%;
  --accent-foreground: 0 0% 98%;
  --destructive: 0 85% 55%;
  --destructive-foreground: 0 0% 98%;
}
.font-caps,
.test-title,
.commandpalette [cmdk-group-heading] {
  font-variant: petite-caps;
  font-variant-caps: all-petite-caps;
}
.font-mono {
  font-family: 'SF NS Mono', 'SF Mono', 'Fira Code', 'Fira Mono', 'Roboto Mono', 'Oxygen Mono', 'Ubuntu Monospace', 'Source Code Pro', 'Droid Sans Mono', 'Courier New', monospace, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}
.font-sans {
  font-family: 'SF NS', 'SF Pro Text', 'SF Pro Icons', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
}
.font-normal {
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  font-optical-sizing: none;
  font-synthesis: none;
  font-kerning: none;
  font-variant-ligatures: none;
  font-variant-caps: none;
  font-variant-numeric: none;
  font-variant-alternates: none;
  font-variant-east-asian: none;
  font-variant-position: normal;
}
[role="menubar"] {
  position: fixed;
  z-index: 900;
  width: 100%;
  max-height: 40px;
}
.menu-wrapper {
  position: relative;
  padding: 8px 0;
}
.menu-wrapper [role="menuitem"],
.menu-wrapper [data-radix-collection-item] {
  cursor: pointer;
}
[role=menubar] {
  z-index: 100000;
}
[role=menubar] [role=menu] {
  backdrop-filter: blur(8px) !important;
  background-color: rgba(0,0,0,0.3) !important;
  box-shadow: 8px 5px 12px 0px rgba(0,0,0,0.3) !important;
}
[role=menubar] button {
  border: none !important;
  cursor: pointer;
}
.test-container,
.search-container {
  position: relative;
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  padding-bottom: 0.5rem;
}
.bar {
  flex: 1;
  height: 1rem;
  will-change: transform, opacity;
  cursor: pointer;
  opacity: 1;
  box-shadow: 0 0 12px transparent;
}
.bar.highlight {
  transform: scale(2);
}
.bar.unhover {
  transform: translateY(0) !important;
  transition: transform 300ms ease-in-out, opacity 300ms ease-in-out;
}
.bar.hover,
.bar.selected {
  opacity: 0.8;
  transform: translateY(-5px);
  transition: transform 150ms ease-in-out, opacity 150ms ease-in-out;
}
.bars {
  padding-top: 5px;
}
.bars .statusline {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  line-height: 1.25rem;
  padding-bottom: 3px;
}
.bars .title {
  display: flex;
  align-items: center;
  opacity: 1;
  transition: opacity 300ms ease-in-out;
}
.bars .preview {
  display: flex;
  flex-direction: row;
  height: 1rem;
  margin-left: auto;
  opacity: 0;
  transition: opacity 300ms ease-in-out;
}
.bars .preview * {
  margin-right: 1rem;
  text-align: end;
}
.bars .preview .ms {
  width: 5rem;
}
.bars .controls {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 0;
  opacity: 0;
  transition: opacity 300ms ease-in-out;
  margin-left: 1rem;
}
.bars .controls button {
  padding: 0 0.5rem;
  margin: 0;
}
.bars .bars-container {
  display: flex;
  gap: 0.125rem;
}
.bars .tag {
  padding: 0;
  border: none;
  background: none;
  backdrop-filter: none;
}
.bars:hover .controls,
.bars:hover .preview,
.bars:hover .title {
  opacity: 1 !important;
}
.run-test-icon {
  cursor: pointer;
  margin-left: 0.5rem;
}
.frosted,
.frozen {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  box-shadow: 0px 10px 15px 10px rgba(0,0,0,0.15);
  background-color: rgba(0,0,0,0.5) !important;
  transition: backdrop-filter 1s ease-in-out;
}
.barWithText {
  display: flex;
  align-items: center;
  align-content: center;
  gap: 0.5rem;
  width: 30vw;
}
.bar-init {
  background: #fc0;
  outline: none;
  box-shadow: 0 0 20px #fc0;
}
.bar-QUEUED {
  background: #4af;
  box-shadow: 0 0 6px #4af;
  animation: fadeIn 300ms ease-out, queuedPulse 1s ease-in-out infinite;
}
.bar-running,
.bar-pending {
  background: #fc0;
  box-shadow: 0 0 12px #fc0;
  animation: fadeIn 300ms ease-out, runningPulse 1s ease-in-out infinite;
}
.bar-progress {
  outline: none;
  background-size: 100% 100%;
  background: #0f0;
  box-shadow: 0 0 5px #090;
  animation: beat 1s ease infinite;
}
.bar-success,
.bar-pass,
.bar-ok {
  background: #0f0;
  outline: none;
  animation: fadeIn 300ms ease-out;
  background-size: 100% 400%;
  box-shadow: 0 0 10px #0f0;
  transition: background-color 1s ease-in-out;
}
.bar-empty {
  background: #222;
  transition: background-color 1s ease-in-out;
}
.bar-fail,
.bar-error {
  background: #f00;
  outline: none;
  animation: fadeIn 300ms ease-out;
  background-size: 100% 400%;
  box-shadow: 0 0 10px #f00;
  transition: background-color 1s ease-in-out;
}
.fadeIn {
  animation: fadeIn 500ms ease-in-out;
  animation-timing-function: ease-in-out;
}
.fadeIn300 {
  animation: fadeIn 300ms ease-in-out;
  animation-timing-function: ease-in-out;
}
.lineprogress {
  will-change: opacity;
  border-left: 4px solid;
  border-right: 0;
  border-bottom: 0;
  border-top: 0;
  transition: all 300ms ease-in-out;
  opacity: 0.8;
}
.lineprogress.PENDING {
  border-left-color: #0ff;
  background-color: rgba(0,255,255,0.2);
}
.lineprogress.RUNNING,
.lineprogress.NOT.SET {
  border-left-color: #fc0;
  animation: pulse-border 1.5s infinite;
  background-color: rgba(255,204,0,0.2);
}
.lineprogress.FAIL {
  border-left-color: #f33;
  background-color: rgba(255,51,51,0.2);
}
.lineprogress.PASS {
  border-left-color: #0c0;
  background-color: rgba(0,204,0,0.2);
}
.monaco-result-widget {
  pointer-events: none;
  z-index: 10;
}
.monaco-result-content {
  display: inline-block;
  background: rgba(90,255,40,0.15);
  border: 1px solid rgba(90,255,40,0.4);
  border-radius: 4px;
  padding: 2px 8px;
  color: #5aff28;
  font-size: 12px;
  font-family: 'Menlo', 'Monaco', 'Courier New', monospace;
  font-weight: 500;
  margin-left: 1rem;
  backdrop-filter: blur(4px);
}
.timeline-scrubber {
  padding: 1rem;
  background-color: rgba(255,255,255,0.05);
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.timeline-scrubber .timeline-slider {
  height: 1.5rem;
  position: relative;
}
.timeline-scrubber .keyword-marker {
  background-color: #888;
  transition: all 0.2s ease;
}
.timeline-scrubber .keyword-marker.PASS {
  background-color: #0c0;
}
.timeline-scrubber .keyword-marker.FAIL {
  background-color: #f33;
}
.timeline-scrubber .keyword-marker.RUNNING {
  background-color: #fc0;
}
.timeline-scrubber .keyword-marker:hover {
  transform: scaleY(1.5);
}
.timeline-scrubber .current-keyword .pass {
  color: #0c0;
}
.timeline-scrubber .current-keyword .fail {
  color: #f33;
}
.timeline-scrubber .current-keyword .running {
  color: #fc0;
}
.timeline-scrubber.RUNNING {
  background-color: rgba(255,204,0,0.1);
  animation: pulse-bg 1.5s infinite;
}
.timeline-scrubber.FIXING {
  background-color: rgba(255,165,0,0.1);
}
.dim {
  opacity: 0.5;
  transition: opacity 500ms ease-in-out;
}
.animate-beat {
  animation: beat 1s infinite alternate;
}
.animate-shake {
  animation: shake 3s infinite alternate;
}
.center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.chart-container {
  max-height: 100px;
  min-height: 100px;
  width: 100%;
  overflow: hidden;
}
.chart-container .recharts-responsive-container {
  min-height: 120px;
  animation: fadeIn 1.5s ease-in-out !important;
}
.chart-container .custom-tooltip {
  background-color: rgba(0,0,0,0.25);
  border: 1px solid transparent;
  border-radius: 5px;
  padding: 8px;
  box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
.chart-container .custom-tooltip .label {
  font-weight: bold;
  color: #fff;
}
.chart-container .custom-tooltip p {
  margin: 0;
  font-size: 12px;
}
.test-charts {
  position: relative;
}
.configuration-form .vertical-layout {
  margin-top: 8px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.configuration-form .vertical-layout .input-control,
.configuration-form .vertical-layout .select-with-search-container,
.configuration-form .vertical-layout .textarea-control,
.configuration-form .vertical-layout .checkbox-group-container {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.configuration-form .vertical-layout .select-with-search-container button {
  width: 100%;
}
.configuration-form .vertical-layout .switch-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
}
.pie-chart-container {
  margin-top: -60px;
  max-height: 260px;
  min-height: 260px;
  width: 300px;
}
.pie-chart-container .fill-foreground {
  fill: #fff;
}
.pie-chart-container .text-3xl {
  font-size: 30px;
  line-height: 36px;
}
.pie-chart-container .fill-muted-foreground {
  fill: rgba(255,255,255,0.7);
}
.pie-chart-container .recharts-sector {
  stroke: var(--background);
  outline: none;
}
.pie-chart-container .recharts-pie {
  min-height: 250px;
  min-width: 250px;
}
.pie-chart-container .recharts-layer {
  outline: none;
}
.pie-chart-container .recharts-surface {
  outline: none;
}
.pie-chart-container .recharts-cartesian-axis-tick text {
  fill: var(--muted-foreground);
}
.pie-chart-container .recharts-cartesian-grid line {
  stroke: var(--border);
  opacity: 0.5;
}
.pie-chart-container .recharts-tooltip-wrapper .recharts-tooltip-item {
  display: none;
  color: var(--foreground);
}
.pie-chart-container .recharts-tooltip-wrapper .recharts-default-tooltip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  height: 20px;
  background-color: #000;
  border: 1px solid #27272a;
  border-radius: 6px;
  border-radius: 6px;
  padding: 12px;
  padding-left: 0px;
  box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.pie-chart-container .recharts-tooltip-wrapper .recharts-default-tooltip .grid {
  display: flex;
  justify-content: center;
  width: 100%;
  gap: 12px;
  margin-left: -14px;
  margin-right: -24px;
}
.pie-chart-container .pie-chart {
  margin-top: -40px;
  max-height: 260px;
  min-height: 260px;
  width: 300px;
}
.pie-chart-container .recharts-responsive-container {
  min-height: 300px;
}
.slide-fade-in {
  animation: slideFadeIn 0.5s ease-in-out;
}
.backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0);
  z-index: 10001;
  backdrop-filter: blur(3px);
  animation: fadeIn 250ms ease-in-out;
  pointer-events: auto;
}
.commandpalette {
  position: fixed;
  left: 50%;
  top: 50%;
  width: 100%;
  max-width: 32rem;
  max-height: 100lvh;
  display: grid;
  z-index: 10002 !important;
  animation: fadeIn 250ms ease-in-out;
  transform: translate(-50%, -50%) translateZ(0) !important;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
}
.commandpalette [cmdk-input-wrapper] {
  border-top: 1px solid rgba(255,255,255,0.06);
  padding: 4px 8px;
}
.commandpalette [cmdk-input] {
  color: #fff !important;
  background: transparent !important;
  font-size: 0.875rem;
  padding: 10px 8px;
}
.commandpalette [cmdk-input]::placeholder {
  color: rgba(255,255,255,0.4);
}
.commandpalette [cmdk-group-heading] {
  color: rgba(255,255,255,0.35);
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  padding: 6px 17px 4px;
}
.commandpalette [cmdk-item] {
  color: rgba(255,255,255,0.5);
  border-radius: 8px;
  padding: 9px 17px;
  font-size: 0.85rem;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.commandpalette [cmdk-item]:hover {
  background: rgba(255,255,255,0.07);
}
.commandpalette [cmdk-item][data-selected="true"] {
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  font-weight: 400;
}
.commandpalette [cmdk-empty] {
  color: rgba(255,255,255,0.35);
  font-size: 0.85rem;
  padding: 16px 17px;
}
.commandpalette [cmdk-input-wrapper] svg {
  display: none !important;
}
.commandpalette [cmdk-list] {
  padding: 4px 6px 6px;
}
.commandpalette [cmdk-group] {
  padding: 0;
}
.Page {
  padding-top: 3.5rem;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.TabsContainer {
  width: 100vw;
  max-height: 100vh;
  overflow: auto;
  display: flex;
  flex-direction: row;
}
.TabsContainer .tab {
  max-width: 100vw;
  width: 100vw;
}
.monaco-editor-container {
  height: 100%;
  width: 100%;
}
.Header {
  width: 100vw;
}
.Container {
  width: 60vw;
  margin-left: 20vw;
}
.center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.fadeOut {
  animation: fadeOut 300ms ease-in-out;
  animation-fill-mode: forwards;
}
.display-none {
  display: none !important;
}
.rr-player__frame {
  background: transparent !important;
}
.pt-0 {
  padding-top: 0 !important;
}
.pb-0 {
  padding-bottom: 0 !important;
}
.pl-0 {
  padding-left: 0 !important;
}
.pr-0 {
  padding-right: 0 !important;
}
.border-error {
  border: 1px solid #f00 !important;
}
.text-error {
  color: #f00 !important;
}
.tab {
  width: 100vw;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#onboardingTabs .tab {
  opacity: 0;
  display: none;
}
#onboardingTabs .tab div {
  align-items: center;
  display: flex;
  flex-direction: column;
}
#onboardingTabs .tab.active {
  opacity: 1;
  display: flex;
}
.overlayBackdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.9);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  font-family: 'SF NS', 'SF Pro Text', 'SF Pro Icons', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
  color: #fff;
}
.overlayContent {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 600px;
  width: 100%;
}
.closeOverlayButton {
  position: absolute;
  top: 10px;
  right: 10px;
  background: rgba(0,0,0,0.6);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 4px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 20px;
  z-index: 100000;
  transition: all 0.2s;
}
.closeOverlayButton:hover {
  background: rgba(255,255,255,0.2);
  border-color: rgba(255,255,255,0.5);
}
.videoOverlayContent {
  position: relative;
  width: 90vw;
  max-height: 90vh;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
}
.videoOverlayContent video {
  width: 90vw;
  max-height: 90vh;
  height: auto;
  display: block;
}
.opacity-0 {
  opacity: 0 !important;
}
.replayer-mouse {
  position: absolute;
  width: 48px;
  height: 48px;
  opacity: 1;
  transition: left 0.05s linear, top 0.05s linear;
  will-change: left, top;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("./cursor.png");
  border-color: transparent;
  z-index: 9999;
  pointer-events: none;
}
.replayer-mouse.visible {
  opacity: 1;
}
.replayer-mouse:after {
  display: none;
}
.replayer-mouse.active:after {
  animation: click 0.2s ease-in-out 1;
}
.replayer-mouse.touch-device {
  background-image: none;
  width: 70px;
  height: 70px;
  border-radius: 100%;
  margin-left: -37px;
  margin-top: -37px;
  border: 4px solid rgba(73,80,246,0);
  transition: left 0s linear, top 0s linear, border-color 0.2s ease-in-out;
}
.replayer-mouse.touch-device.touch-active {
  border-color: #0f0;
  transition: left 0.25s linear, top 0.25s linear, border-color 0.2s ease-in-out;
}
.replayer-mouse.touch-device:after {
  opacity: 0;
}
.replayer-mouse.touch-device.active:after {
  animation: touch-click 0.2s ease-in-out 1;
}
.replayer-mouse-tail {
  position: absolute;
  pointer-events: none;
}
.replayer-wrapper {
  animation: fadeIn 300ms;
  background: #fff;
  position: relative;
  float: left;
  clear: both;
  transform-origin: top left;
  left: 50%;
  top: 50%;
}
.replayer-wrapper > iframe {
  border: none;
}
.highlight {
  position: relative;
  z-index: 10004;
  animation: bounce-highlight 1s ease-in-out infinite !important;
  opacity: 1;
}
.bg-primary {
  background: #000;
}
.bg-primary-hover {
  background: rgba(0,0,0,0.6) 0;
}
.text-primary-foreground {
  color: #fff;
}
.keybinding {
  color: #fff;
  opacity: 0.5;
  background: #444;
  border-radius: 5px;
  padding: 3px 3px;
  margin: 3px;
}
.test-container {
  position: relative;
}
.test-container .chart-container {
  position: absolute;
  width: 100%;
  z-index: 10;
  backdrop-filter: blur(12px);
  background: rgba(0,0,0,0.7);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0px 4px 8px rgba(0,0,0,0.3);
  border-radius: 4px;
}
.FormItem {
  margin: 0.3rem 0;
  width: 100%;
  display: flex !important;
  align-items: center;
  flex-direction: row !important;
  justify-content: space-between;
  gap: 1rem;
}
.FormItem.vertical {
  flex-direction: column !important;
  align-items: flex-start;
}
.FormItem label {
  width: 10rem;
}
.blur {
  animation: blur 0.5s ease-in-out;
}
.tags {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5rem;
  opacity: 0.8;
  transition: opacity 300ms ease-in-out;
}
.tags:hover {
  opacity: 1;
}
.tags .tag {
  margin: 0;
  opacity: 0.8;
  transition: all 300ms ease-in-out;
}
.tags .tag:hover {
  opacity: 1;
}
.tag {
  cursor: pointer !important;
  white-space: nowrap;
  font-size: 0.85rem;
  padding: 0.3rem 0.7rem;
  border-radius: 6px;
  background: rgba(255,255,255,0.05);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.9);
  font-weight: 400;
  cursor: pointer;
  transition: all 400ms ease;
  margin-right: 0;
}
.tag:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.2);
  backdrop-filter: blur(15px);
}
.tag.tag-selected {
  opacity: 1 !important;
  background: rgba(90,255,40,0.2);
  color: var(--cta);
  backdrop-filter: blur(15px);
}
.tag.tag-selected:hover {
  background: rgba(90,255,40,0.25);
}
.doc-card-tags {
  margin-top: 0.5rem;
}
.testsContainer .testGroup {
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.testsContainer .testGroup .header {
  font-weight: 700;
  display: flex;
  flex-direction: row;
  align-items: center;
}
.testsContainer .test-item {
  margin-bottom: 1rem;
}
.testGroup {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.usermenu {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
.usermenu div {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0 1rem;
}
.text-m {
  font-size: 1.1rem;
}
.cta {
  box-shadow: 0 0 3px #fff;
}
.center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.container {
  min-height: 100vh;
  width: 100vw;
}
.max-w-md {
  max-width: 40rem;
  margin: 0 auto;
}
.errorPage {
  margin: 10rem auto;
  width: 50%;
  white-space: pre;
  user-select: all;
}
.validation_error {
  color: #f00;
  animation: fadeIn 500ms ease-in-out;
  animation-timing-function: ease-in-out;
}
.copyButton.monaco {
  float: right;
  right: 10px;
  position: relative;
  top: 50px;
  z-index: 10;
}
.groupStatuses {
  top: -100px;
  position: relative;
}
.NotFoundPage {
  background: rgba(0,0,0,0.6);
}
.NotFoundPage .backrooms {
  position: fixed;
  z-index: -10;
}
[data-radix-popper-content-wrapper] {
  z-index: 12000 !important;
}
.h80 {
  height: 80vh;
}
.otp-code {
  display: flex;
  gap: 0.5rem;
  font-family: monospace;
  font-size: 1.2rem;
  font-weight: 600;
  background: var(--color-bg-secondary);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  cursor: pointer;
}
.otp-code .timer {
  color: #0c0;
}
.bg-white {
  background: #fff;
}
[role="switch"] {
  border: 1px solid rgba(255,255,255,0.3);
  transition: all 200ms ease;
}
[role="switch"][data-state="unchecked"] {
  background: rgba(255,255,255,0.1);
}
[role="switch"][data-state="unchecked"] span {
  background: #fff;
  transition: all 200ms ease;
}
[role="switch"][data-state="checked"] {
  background: #fff;
}
[role="switch"][data-state="checked"] span {
  background: #000;
  transition: all 200ms ease;
}
.keyword-table-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.keyword-table {
  width: 100%;
  min-width: 600px;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  overflow: hidden;
  background-color: rgba(0,0,0,0.2);
}
.keyword-table th,
.keyword-table td {
  padding: 1rem 1.25rem;
  text-align: left;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.keyword-table thead tr {
  background-color: rgba(255,255,255,0.04);
}
.keyword-table tbody tr {
  transition: background-color 0.15s ease;
}
.keyword-table tbody tr:hover {
  background-color: rgba(255,255,255,0.03);
}
.keyword-table tbody tr:last-child td {
  border-bottom: none;
}
.keyword-table th {
  font-weight: 600;
  font-size: 0.875rem;
  color: rgba(255,255,255,0.6);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.keyword-table td {
  color: rgba(255,255,255,0.85);
  font-size: 0.95rem;
}
.keyword-table .keyword-table-arg {
  font-family: 'SF NS Mono', monospace;
  color: rgba(90,255,40,0.9);
  font-weight: 600;
  font-size: 0.9rem;
  white-space: nowrap;
}
th,
td {
  padding: 0.75rem 0.5rem;
}
th {
  font-size: 0.75rem;
}
.doc-navigation {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  margin-top: 4rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.doc-navigation .doc-nav-link {
  cursor: pointer;
  padding: 1.5rem;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 0.5rem;
  transition: all 0.2s ease;
  flex: 1;
  max-width: 400px;
}
.doc-navigation .doc-nav-link:hover {
  border-color: rgba(255,255,255,0.3);
  background-color: rgba(255,255,255,0.05);
}
.doc-navigation .doc-nav-link .doc-nav-label {
  font-size: 0.85rem;
  color: rgba(255,255,255,0.6);
  margin-bottom: 0.5rem;
}
.doc-navigation .doc-nav-link .doc-nav-title {
  font-size: 1.1rem;
  font-weight: 500;
  color: rgba(255,255,255,0.95);
}
.doc-navigation .doc-nav-link.doc-nav-prev {
  text-align: left;
}
.doc-navigation .doc-nav-link.doc-nav-next {
  text-align: right;
  margin-left: auto;
}
@-moz-keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@-webkit-keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@-o-keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@-moz-keyframes aiPulse {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.02);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
@-webkit-keyframes aiPulse {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.02);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
@-o-keyframes aiPulse {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.02);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
@keyframes aiPulse {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.02);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
@-moz-keyframes fadeInAndSlideUp {
  0% {
    opacity: 0;
    transform: translateY(30px) scale(0.95);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@-webkit-keyframes fadeInAndSlideUp {
  0% {
    opacity: 0;
    transform: translateY(30px) scale(0.95);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@-o-keyframes fadeInAndSlideUp {
  0% {
    opacity: 0;
    transform: translateY(30px) scale(0.95);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes fadeInAndSlideUp {
  0% {
    opacity: 0;
    transform: translateY(30px) scale(0.95);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@-moz-keyframes queuedPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
@-webkit-keyframes queuedPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
@-o-keyframes queuedPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
@keyframes queuedPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
@-moz-keyframes runningPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
}
@-webkit-keyframes runningPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
}
@-o-keyframes runningPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
}
@keyframes runningPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
}
@-moz-keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 0% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}
@-webkit-keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 0% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}
@-o-keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 0% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}
@keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 0% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}
@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fadeInAndScaleUp {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@-webkit-keyframes fadeInAndScaleUp {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@-o-keyframes fadeInAndScaleUp {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fadeInAndScaleUp {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@-moz-keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  100% {
    background-position: 0% 100%;
  }
}
@-webkit-keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  100% {
    background-position: 0% 100%;
  }
}
@-o-keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  100% {
    background-position: 0% 100%;
  }
}
@keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  100% {
    background-position: 0% 100%;
  }
}
@-moz-keyframes pulse-border {
  0% {
    border-left-width: 4px;
  }
  50% {
    border-left-width: 8px;
  }
  100% {
    border-left-width: 4px;
  }
}
@-webkit-keyframes pulse-border {
  0% {
    border-left-width: 4px;
  }
  50% {
    border-left-width: 8px;
  }
  100% {
    border-left-width: 4px;
  }
}
@-o-keyframes pulse-border {
  0% {
    border-left-width: 4px;
  }
  50% {
    border-left-width: 8px;
  }
  100% {
    border-left-width: 4px;
  }
}
@keyframes pulse-border {
  0% {
    border-left-width: 4px;
  }
  50% {
    border-left-width: 8px;
  }
  100% {
    border-left-width: 4px;
  }
}
@-moz-keyframes pulse-bg {
  0% {
    background-color: rgba(255,204,0,0.05);
  }
  50% {
    background-color: rgba(255,204,0,0.2);
  }
  100% {
    background-color: rgba(255,204,0,0.05);
  }
}
@-webkit-keyframes pulse-bg {
  0% {
    background-color: rgba(255,204,0,0.05);
  }
  50% {
    background-color: rgba(255,204,0,0.2);
  }
  100% {
    background-color: rgba(255,204,0,0.05);
  }
}
@-o-keyframes pulse-bg {
  0% {
    background-color: rgba(255,204,0,0.05);
  }
  50% {
    background-color: rgba(255,204,0,0.2);
  }
  100% {
    background-color: rgba(255,204,0,0.05);
  }
}
@keyframes pulse-bg {
  0% {
    background-color: rgba(255,204,0,0.05);
  }
  50% {
    background-color: rgba(255,204,0,0.2);
  }
  100% {
    background-color: rgba(255,204,0,0.05);
  }
}
@-moz-keyframes beat {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes beat {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
@-o-keyframes beat {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes beat {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
@-moz-keyframes upAndDown {
  0% {
    transform: translateY(0%);
  }
  50% {
    transform: translateY(-50%);
  }
  100% {
    transform: translateY(0%);
  }
}
@-webkit-keyframes upAndDown {
  0% {
    transform: translateY(0%);
  }
  50% {
    transform: translateY(-50%);
  }
  100% {
    transform: translateY(0%);
  }
}
@-o-keyframes upAndDown {
  0% {
    transform: translateY(0%);
  }
  50% {
    transform: translateY(-50%);
  }
  100% {
    transform: translateY(0%);
  }
}
@keyframes upAndDown {
  0% {
    transform: translateY(0%);
  }
  50% {
    transform: translateY(-50%);
  }
  100% {
    transform: translateY(0%);
  }
}
@-moz-keyframes shake {
  0% {
    transform: rotate(0deg);
  }
  10% {
    transform: rotate(-10deg);
  }
  20% {
    transform: rotate(10deg);
  }
  30% {
    transform: rotate(0deg);
  }
}
@-webkit-keyframes shake {
  0% {
    transform: rotate(0deg);
  }
  10% {
    transform: rotate(-10deg);
  }
  20% {
    transform: rotate(10deg);
  }
  30% {
    transform: rotate(0deg);
  }
}
@-o-keyframes shake {
  0% {
    transform: rotate(0deg);
  }
  10% {
    transform: rotate(-10deg);
  }
  20% {
    transform: rotate(10deg);
  }
  30% {
    transform: rotate(0deg);
  }
}
@keyframes shake {
  0% {
    transform: rotate(0deg);
  }
  10% {
    transform: rotate(-10deg);
  }
  20% {
    transform: rotate(10deg);
  }
  30% {
    transform: rotate(0deg);
  }
}
@-moz-keyframes slideFadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes slideFadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes slideFadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideFadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-moz-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-o-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes growUpAndSides {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes growUpAndSides {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@-o-keyframes growUpAndSides {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes growUpAndSides {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@-moz-keyframes click {
  0% {
    opacity: 0.5;
    width: 60px;
    height: 60px;
    border-width: 3px;
  }
  100% {
    opacity: 0;
    width: 120px;
    height: 120px;
    border-width: 1px;
  }
}
@-webkit-keyframes click {
  0% {
    opacity: 0.5;
    width: 60px;
    height: 60px;
    border-width: 3px;
  }
  100% {
    opacity: 0;
    width: 120px;
    height: 120px;
    border-width: 1px;
  }
}
@-o-keyframes click {
  0% {
    opacity: 0.5;
    width: 60px;
    height: 60px;
    border-width: 3px;
  }
  100% {
    opacity: 0;
    width: 120px;
    height: 120px;
    border-width: 1px;
  }
}
@keyframes click {
  0% {
    opacity: 0.5;
    width: 60px;
    height: 60px;
    border-width: 3px;
  }
  100% {
    opacity: 0;
    width: 120px;
    height: 120px;
    border-width: 1px;
  }
}
@-moz-keyframes touch-click {
  0% {
    opacity: 0;
    width: 20px;
    height: 20px;
  }
  50% {
    opacity: 0.5;
    width: 10px;
    height: 10px;
  }
}
@-webkit-keyframes touch-click {
  0% {
    opacity: 0;
    width: 20px;
    height: 20px;
  }
  50% {
    opacity: 0.5;
    width: 10px;
    height: 10px;
  }
}
@-o-keyframes touch-click {
  0% {
    opacity: 0;
    width: 20px;
    height: 20px;
  }
  50% {
    opacity: 0.5;
    width: 10px;
    height: 10px;
  }
}
@keyframes touch-click {
  0% {
    opacity: 0;
    width: 20px;
    height: 20px;
  }
  50% {
    opacity: 0.5;
    width: 10px;
    height: 10px;
  }
}
@-moz-keyframes bounce-highlight {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 20px rgba(90,255,40,0.4);
  }
  50% {
    transform: scale(1.02);
    box-shadow: 0 0 30px rgba(90,255,40,0.6), 0 0 60px rgba(90,255,40,0.3);
  }
}
@-webkit-keyframes bounce-highlight {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 20px rgba(90,255,40,0.4);
  }
  50% {
    transform: scale(1.02);
    box-shadow: 0 0 30px rgba(90,255,40,0.6), 0 0 60px rgba(90,255,40,0.3);
  }
}
@-o-keyframes bounce-highlight {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 20px rgba(90,255,40,0.4);
  }
  50% {
    transform: scale(1.02);
    box-shadow: 0 0 30px rgba(90,255,40,0.6), 0 0 60px rgba(90,255,40,0.3);
  }
}
@keyframes bounce-highlight {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 20px rgba(90,255,40,0.4);
  }
  50% {
    transform: scale(1.02);
    box-shadow: 0 0 30px rgba(90,255,40,0.6), 0 0 60px rgba(90,255,40,0.3);
  }
}
@-moz-keyframes blur {
  from {
    filter: blur(0px);
  }
  to {
    filter: blur(8px);
  }
}
@-webkit-keyframes blur {
  from {
    filter: blur(0px);
  }
  to {
    filter: blur(8px);
  }
}
@-o-keyframes blur {
  from {
    filter: blur(0px);
  }
  to {
    filter: blur(8px);
  }
}
@keyframes blur {
  from {
    filter: blur(0px);
  }
  to {
    filter: blur(8px);
  }
}
@-moz-keyframes cta {
  0% {
    transform: rotate(0deg);
  }
  90% {
    transform: rotate(0deg);
  }
  93% {
    transform: rotate(-10deg);
  }
  96% {
    transform: rotate(10deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@-webkit-keyframes cta {
  0% {
    transform: rotate(0deg);
  }
  90% {
    transform: rotate(0deg);
  }
  93% {
    transform: rotate(-10deg);
  }
  96% {
    transform: rotate(10deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@-o-keyframes cta {
  0% {
    transform: rotate(0deg);
  }
  90% {
    transform: rotate(0deg);
  }
  93% {
    transform: rotate(-10deg);
  }
  96% {
    transform: rotate(10deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes cta {
  0% {
    transform: rotate(0deg);
  }
  90% {
    transform: rotate(0deg);
  }
  93% {
    transform: rotate(-10deg);
  }
  96% {
    transform: rotate(10deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.feature-header-text {
  margin-bottom: 1.5rem;
}
.feature-problem {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 0.5rem;
}
.feature-goal {
  font-size: 1.1rem;
  line-height: 1.5;
}
.feature-files-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.scenario-auth-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 1rem;
  background: rgba(90,180,255,0.1);
  color: rgba(140,200,255,0.9);
}
.feature-no-bugs-msg {
  font-size: 1rem;
  margin-top: 0.5rem;
}
.scenario-trigger {
  display: flex;
  align-items: center;
  gap: 8px;
}
.scenario-severity {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.75rem;
}
.scenario-severity-blocker {
  background: rgba(200,30,30,0.35);
  color: rgba(255,180,180,0.95);
}
.scenario-severity-critical {
  background: rgba(180,20,20,0.2);
  color: rgba(255,160,160,0.9);
}
.scenario-severity-major {
  background: rgba(200,100,0,0.2);
  color: rgba(255,190,100,0.9);
}
.scenario-severity-minor,
.scenario-severity-low {
  background: rgba(200,150,0,0.15);
  color: rgba(255,210,100,0.9);
}
.scenario-tests-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.75rem;
  background: rgba(0,180,60,0.15);
  color: rgba(120,240,150,0.9);
}
.scenario-proposed-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.75rem;
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.55);
}
.feature-status {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.875rem;
}
.feature-status-working {
  color: var(--cta);
  background: rgba(0,180,60,0.15);
}
.feature-status-broken {
  color: rgba(220,60,60,0.9);
  background: rgba(200,30,30,0.15);
}
.feature-status-partial {
  color: rgba(255,170,0,0.9);
  background: rgba(200,130,0,0.15);
}
.feature-status-untested {
  color: rgba(255,255,255,0.7);
  background: rgba(255,255,255,0.05);
}
.feature-test-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.feature-test-badge-img {
  cursor: pointer;
}
.feature-non-goals-inline {
  list-style-type: disc;
  margin: 0;
  padding-left: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.feature-list-plain {
  list-style-type: disc;
  margin-left: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.feature-list {
  display: flex;
  flex-direction: column;
}
.feature-list .feature-list-coverage {
  margin-bottom: 1rem;
}
.feature-list .feature-list-items {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.feature-badge {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 4px;
  background-color: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  cursor: pointer;
  transition: background-color 0.2s;
  width: 100%;
}
.feature-badge:hover {
  background-color: rgba(255,255,255,0.08);
}
.feature-badge-sm {
  padding: 0.5rem 0.75rem;
  font-size: 0.75rem;
}
.feature-badge-md {
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
}
.feature-badge .feature-badge-name {
  font-weight: 500;
}
.coverage-bar {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.coverage-bar .coverage-bar-items {
  display: flex;
  gap: 2px;
}
.coverage-bar .coverage-bar-count {
  font-size: 0.875rem;
  color: #9ca3af;
}
.scenario-section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.scenario-section-header .scenario-section-title {
  flex: 1;
}
.feature-related-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.feature-related-chip {
  display: inline-flex;
  align-items: center;
  padding: 2px 10px;
  border-radius: 4px;
  border: 1px solid var(--border, rgba(255,255,255,0.12));
  font-size: 0.8125rem;
  color: var(--accent, #7ee787);
  text-decoration: none;
  cursor: pointer;
}
.feature-related-chip:hover {
  background: rgba(255,255,255,0.06);
}
.ErudaConsole {
  position: relative;
  width: 100%;
  height: 40vh;
  background: var(--background);
  display: flex;
  flex-direction: column;
}
.ErudaConsole .loading {
  padding: 20px;
  text-align: center;
  color: var(--text-secondary);
}
.ErudaConsole .eruda-container {
  flex: 1;
  overflow: hidden;
}
.ErudaConsole .eruda-container :global .eruda-dev-tools {
  height: 100% !important;
  position: relative !important;
}
.ErudaConsole .eruda-container :global .eruda-entry-btn {
  display: none !important;
}
.ErudaConsole .eruda-container :global .eruda-tools {
  background: var(--background) !important;
  color: var(--text) !important;
}
.ErudaConsole .eruda-container :global .eruda-console {
  background: var(--background) !important;
}
.ErudaConsole .eruda-container :global .eruda-console-log-item {
  border-bottom: 1px solid var(--border) !important;
  color: var(--text) !important;
}
.ErudaConsole .eruda-container :global .eruda-console-log-item.eruda-error {
  background: rgba(255,0,0,0.1) !important;
  color: #f55 !important;
}
.ErudaConsole .eruda-container :global .eruda-console-log-item.eruda-warn {
  background: rgba(255,165,0,0.1) !important;
  color: #fa0 !important;
}
.cdp-console-toggle {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 999;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: var(--primary);
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  transition: all 0.2s ease;
}
.cdp-console-toggle:hover {
  background: var(--primary-hover);
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  transform: translateY(-2px);
}
.cdp-console-toggle svg {
  stroke-width: 2;
}
.cdp-console-toggle span {
  margin: 0;
}
.bottom-screen {
  position: fixed;
  bottom: 2rem;
  left: 50%;
  transform: translate(-50%, 0);
}
.top-screen {
  position: fixed;
  top: 2rem;
  left: 50%;
  transform: translate(-50%, 0);
}
.center-screen {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10005;
}
.spotlight {
  font-family: 'SF NS', 'SF Pro Text', 'SF Pro Icons', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
  color: #fff;
}
.spotlight-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.6);
  z-index: 10003;
  animation: fadeIn 0.3s ease-in-out;
}
.spotlight-backdrop.hide {
  display: none;
}
.spotlight-backdrop.soft-blur {
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  background-color: rgba(0,0,0,0.5);
  transition: backdrop-filter 0.5s ease-in-out;
}
.spotlight-backdrop[style] {
  -webkit-clip-path: path('M 0 0 h 100vw v 100vh h -100vw z M calc(var(--x) - 20px) calc(var(--y) - 20px) h calc(var(--width) + 40px) v calc(var(--height) + 40px) h calc((var(--width) + 40px) * -1) z');
  clip-path: path('M 0 0 h 100vw v 100vh h -100vw z M calc(var(--x) - 20px) calc(var(--y) - 20px) h calc(var(--width) + 40px) v calc(var(--height) + 40px) h calc((var(--width) + 40px) * -1) z');
}
.spotlight-highlight {
  position: fixed;
  border-radius: 4px;
  z-index: 10004;
  pointer-events: none;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
}
.spotlight-highlight.spotlight-pulse-animation {
  animation: pulseHighlight 1.5s ease-in-out infinite;
}
.spotlight-message {
  position: fixed;
  min-width: 400px !important;
  max-width: 90vw;
  padding: 15px 20px;
  border-radius: 12px;
  z-index: 2147483647 !important;
  width: auto;
  animation: scaleGlowBottomScreen 0.5s ease-out, pulseGlow 2s ease-in-out infinite 0.5s;
  transition: top 0.3s ease-out, left 0.3s ease-out;
  pointer-events: auto;
  backdrop-filter: blur(20px) !important;
  background-color: rgba(0,0,0,0.6) !important;
  box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5) !important, 0 0 30px rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
.spotlight-message::before {
  content: '';
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  background: linear-gradient(45deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05));
  border-radius: 14px;
  z-index: -1;
  filter: blur(1px);
}
.spotlight-message .spotlight-close-button {
  position: absolute;
  top: 15px;
  right: 20px;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 4px;
  color: rgba(255,255,255,0.5);
  font-size: 16px;
  cursor: pointer;
  padding: 0;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  z-index: 1;
}
.spotlight-message .spotlight-close-button:hover {
  color: rgba(255,255,255,0.9);
  background: rgba(255,255,255,0.15);
  border-color: rgba(255,255,255,0.3);
}
.spotlight-message p {
  margin: 0 0 10px 0;
  color: rgba(255,255,255,0.95);
  word-wrap: break-word;
  overflow-wrap: break-word;
  max-height: 60vh;
  overflow-y: auto;
  line-height: 1.5;
}
.spotlight-message.top-screen {
  animation: scaleGlowTopScreen 0.5s ease-out, pulseGlow 2s ease-in-out infinite 0.5s;
}
.spotlight-message.center-screen {
  animation: scaleGlowCenterScreen 0.5s ease-out, pulseGlow 2s ease-in-out infinite 0.5s;
}
.spotlight-message.left {
  position: fixed;
  left: 2rem;
  top: 50%;
  transform: translate(0, -50%);
}
.spotlight-message.right {
  position: fixed;
  right: 2rem;
  top: 50%;
  transform: translate(0, -50%);
}
.spotlight-message-top {
  transform: translate(-50%, -100%);
  margin-top: -10px;
}
.spotlight-message-top.edge-left {
  transform: translate(0, -100%);
}
.spotlight-message-top.edge-right {
  transform: translate(-100%, -100%);
}
.spotlight-message-bottom {
  transform: translateX(-50%);
  margin-top: 10px;
}
.spotlight-message-bottom.edge-left {
  transform: translate(0, 0);
}
.spotlight-message-bottom.edge-right {
  transform: translate(-100%, 0);
}
.spotlight-message-right {
  transform: translate(0, 0);
  margin-left: 10px;
}
.spotlight-message-bottom-center {
  transform: translate(-50%, 0);
}
.spotlight-link {
  display: inline-block;
  color: #5aff28;
  text-decoration: underline;
  cursor: pointer;
  margin-left: 5px;
  font-weight: 500;
  transition: color 0.2s ease;
}
.spotlight-link:hover {
  color: #4de01f;
}
.spotlight-link-info {
  display: block;
  font-size: 0.85em;
  color: rgba(255,255,255,0.7);
  margin-top: 5px;
  font-style: italic;
}
.spotlight-buttons {
  display: flex;
  justify-content: space-between;
  width: 100%;
  gap: 10px;
  margin-top: 15px;
  pointer-events: auto;
}
.spotlight-buttons .spotlight-back-button {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.2);
}
.spotlight-buttons .spotlight-back-button:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.3);
}
.spotlight-buttons .spotlight-back-button:active {
  background: rgba(255,255,255,0.15);
}
.spotlight-buttons .spotlight-next-button {
  margin-left: auto;
}
.spotlight-buttons button {
  padding: 0.7rem 1.2rem;
  border: 1.5px solid rgba(255,255,255,0.15);
  border-radius: 6px;
  cursor: pointer;
  background: transparent;
  color: rgba(255,255,255,0.9);
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  pointer-events: auto;
  z-index: 2147483647 !important;
}
.spotlight-buttons button:hover:not(:disabled) {
  border-color: rgba(255,255,255,0.3);
  color: #fff;
  background: rgba(255,255,255,0.05);
}
.spotlight-buttons button:active:not(:disabled) {
  background: rgba(255,255,255,0.08);
  transform: scale(0.98);
}
.spotlight-buttons button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  border-color: rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.5);
}
.spotlight-progress {
  position: absolute;
  bottom: 22px;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255,255,255,0.7);
  font-size: 14px;
  font-weight: 500;
}
.mobile .spotlight-message {
  width: 95vw;
  min-width: 95vw !important;
}
@-moz-keyframes blink {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  20% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
}
@-webkit-keyframes blink {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  20% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
}
@-o-keyframes blink {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  20% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  20% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
}
@-moz-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-o-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-moz-keyframes slideIn {
  from {
    opacity: 0;
    transform: translate(-50%, -80%);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -100%);
  }
}
@-webkit-keyframes slideIn {
  from {
    opacity: 0;
    transform: translate(-50%, -80%);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -100%);
  }
}
@-o-keyframes slideIn {
  from {
    opacity: 0;
    transform: translate(-50%, -80%);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -100%);
  }
}
@keyframes slideIn {
  from {
    opacity: 0;
    transform: translate(-50%, -80%);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -100%);
  }
}
@-moz-keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255,255,255,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0);
  }
}
@-webkit-keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255,255,255,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0);
  }
}
@-o-keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255,255,255,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0);
  }
}
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255,255,255,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0);
  }
}
@-moz-keyframes pulseHighlight {
  0% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
  50% {
    box-shadow: 0 0 0 4px rgba(255,255,255,0.7), 0 0 25px rgba(255,255,255,0.5);
  }
  100% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
}
@-webkit-keyframes pulseHighlight {
  0% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
  50% {
    box-shadow: 0 0 0 4px rgba(255,255,255,0.7), 0 0 25px rgba(255,255,255,0.5);
  }
  100% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
}
@-o-keyframes pulseHighlight {
  0% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
  50% {
    box-shadow: 0 0 0 4px rgba(255,255,255,0.7), 0 0 25px rgba(255,255,255,0.5);
  }
  100% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
}
@keyframes pulseHighlight {
  0% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
  50% {
    box-shadow: 0 0 0 4px rgba(255,255,255,0.7), 0 0 25px rgba(255,255,255,0.5);
  }
  100% {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.5), 0 0 15px rgba(255,255,255,0.3);
  }
}
@-moz-keyframes scaleGlowBottomScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@-webkit-keyframes scaleGlowBottomScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@-o-keyframes scaleGlowBottomScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@keyframes scaleGlowBottomScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@-moz-keyframes scaleGlowTopScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@-webkit-keyframes scaleGlowTopScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@-o-keyframes scaleGlowTopScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@keyframes scaleGlowTopScreen {
  from {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@-moz-keyframes scaleGlowCenterScreen {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@-webkit-keyframes scaleGlowCenterScreen {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@-o-keyframes scaleGlowCenterScreen {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@keyframes scaleGlowCenterScreen {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@-moz-keyframes pulseGlow {
  0%, 100% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 30px rgba(255,255,255,0.1);
  }
  50% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 40px rgba(90,255,40,0.3);
  }
}
@-webkit-keyframes pulseGlow {
  0%, 100% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 30px rgba(255,255,255,0.1);
  }
  50% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 40px rgba(90,255,40,0.3);
  }
}
@-o-keyframes pulseGlow {
  0%, 100% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 30px rgba(255,255,255,0.1);
  }
  50% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 40px rgba(90,255,40,0.3);
  }
}
@keyframes pulseGlow {
  0%, 100% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 30px rgba(255,255,255,0.1);
  }
  50% {
    box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.5), 0 0 40px rgba(90,255,40,0.3);
  }
}
.pricing-calculator {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem;
}
.pricing-calculator .calculator-controls {
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 2rem;
  margin-bottom: 2rem;
}
.pricing-calculator .calculator-controls .input-group {
  display: flex;
  gap: 2rem;
  align-items: flex-end;
}
.pricing-calculator .calculator-controls .input-group label {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.pricing-calculator .calculator-controls .input-group label .input-label {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  font-weight: 600;
}
.pricing-calculator .calculator-controls .input-group label input[type="number"],
.pricing-calculator .calculator-controls .input-group label select {
  padding: 0.75rem 1rem;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 8px;
  color: rgba(255,255,255,0.95);
  font-size: 1.1rem;
  font-weight: 600;
  transition: all 0.2s ease;
}
.pricing-calculator .calculator-controls .input-group label input[type="number"]:focus,
.pricing-calculator .calculator-controls .input-group label select:focus {
  outline: none;
  border-color: rgba(90,255,40,0.5);
  background: rgba(255,255,255,0.08);
  box-shadow: 0 0 0 3px rgba(90,255,40,0.1);
}
.pricing-calculator .calculator-controls .input-group label input[type="number"] {
  font-family: monospace;
}
.pricing-calculator .calculator-controls .input-group label select {
  cursor: pointer;
}
.pricing-calculator .calculator-controls .input-group .calculated-runs {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.75rem 1rem;
  background: rgba(90,255,40,0.05);
  border: 1px solid rgba(90,255,40,0.2);
  border-radius: 8px;
}
.pricing-calculator .calculator-controls .input-group .calculated-runs .runs-label {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  font-weight: 600;
}
.pricing-calculator .calculator-controls .input-group .calculated-runs .runs-value {
  font-size: 1.5rem;
  color: #5aff28;
  font-family: monospace;
  font-weight: 700;
}
.pricing-calculator .template-selector {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 2.5rem;
  justify-content: center;
  align-items: center;
}
.pricing-calculator .template-selector .templates-label {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  font-weight: 600;
  margin-right: 0.5rem;
}
.pricing-calculator .template-selector button {
  padding: 0.75rem 1.5rem;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.8);
  border-radius: 50px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.95rem;
  font-weight: 600;
  white-space: nowrap;
  backdrop-filter: blur(4px);
}
.pricing-calculator .template-selector button:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.15);
  color: #fff;
  transform: translateY(-2px);
}
.pricing-calculator .template-selector button.selected {
  background: rgba(90,255,40,0.1);
  border-color: rgba(90,255,40,0.3);
  color: #5aff28;
  box-shadow: 0 0 20px rgba(90,255,40,0.2);
}
.pricing-calculator .calculation {
  font-family: monospace;
  color: rgba(90,255,40,0.9);
  margin: 0 0 3rem 0;
  font-size: 1.1rem;
  font-weight: 500;
  text-align: center;
}
.pricing-calculator .cost-comparison {
  margin-bottom: 3rem;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  overflow: visible;
  background: rgba(0,0,0,0.2);
}
.pricing-calculator .cost-comparison .cost-bar {
  display: grid;
  grid-template-columns: 2fr 1fr 3fr;
  align-items: center;
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  transition: all 0.3s ease;
  gap: 1.5rem;
}
.pricing-calculator .cost-comparison .cost-bar:last-child {
  border-bottom: none;
}
.pricing-calculator .cost-comparison .cost-bar:hover {
  background: rgba(255,255,255,0.03);
}
.pricing-calculator .cost-comparison .cost-bar.highlighted {
  background: rgba(90,255,40,0.05);
  border-color: rgba(90,255,40,0.2);
}
.pricing-calculator .cost-comparison .cost-bar.highlighted .bar-label .competitor-name {
  color: #5aff28;
}
.pricing-calculator .cost-comparison .cost-bar.highlighted .bar-label .cost-amount {
  color: #5aff28;
  text-shadow: 0 0 10px rgba(90,255,40,0.5);
}
.pricing-calculator .cost-comparison .cost-bar.highlighted .bar-fill {
  background: linear-gradient(90deg, rgba(90,255,40,0.9) 0%, rgba(90,255,40,0.6) 100%);
  box-shadow: 0 0 15px rgba(90,255,40,0.5);
}
.pricing-calculator .cost-comparison .cost-bar .bar-label {
  display: contents;
}
.pricing-calculator .cost-comparison .cost-bar .bar-label .competitor-name {
  font-weight: 600;
  font-size: 1rem;
  color: rgba(255,255,255,0.9);
}
.pricing-calculator .cost-comparison .cost-bar .bar-label .cost-amount {
  font-family: monospace;
  font-size: 1.2rem;
  color: rgba(255,255,255,0.85);
  font-weight: 700;
  text-align: right;
}
.pricing-calculator .cost-comparison .cost-bar .bar-container {
  height: 10px;
  background: rgba(255,255,255,0.05);
  border-radius: 50px;
  overflow: visible;
}
.pricing-calculator .cost-comparison .cost-bar .bar-container .bar-fill {
  height: 100%;
  width: var(--bar-width);
  background: linear-gradient(90deg, rgba(90,255,40,0.4) 0%, rgba(90,255,40,0.2) 100%);
  transition: width 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-shadow: 0 0 8px rgba(90,255,40,0.2);
  border-radius: 50px;
}
.pricing-calculator .cost-comparison-detailed {
  margin-bottom: 3rem;
  overflow-x: auto;
}
.pricing-calculator .cost-comparison-detailed .pricing-table {
  width: 100%;
  border-collapse: collapse;
  background: rgba(0,0,0,0.2);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  overflow: hidden;
}
.pricing-calculator .cost-comparison-detailed .pricing-table thead {
  background: rgba(255,255,255,0.05);
}
.pricing-calculator .cost-comparison-detailed .pricing-table thead tr {
  border-bottom: 2px solid rgba(255,255,255,0.1);
}
.pricing-calculator .cost-comparison-detailed .pricing-table thead th {
  padding: 1rem 1.25rem;
  text-align: left;
  font-weight: 700;
  font-size: 0.9rem;
  color: rgba(255,255,255,0.9);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,0.05);
  transition: all 0.2s ease;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody tr:hover {
  background: rgba(255,255,255,0.03);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody tr.highlighted {
  background: rgba(90,255,40,0.05);
  border-color: rgba(90,255,40,0.2);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody tr.highlighted td {
  color: rgba(255,255,255,0.95);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody tr.highlighted a {
  color: #5aff28;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody tr.highlighted .total-cell strong {
  color: #5aff28;
  text-shadow: 0 0 10px rgba(90,255,40,0.5);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody tr:last-child {
  border-bottom: none;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td {
  padding: 1rem 1.25rem;
  color: rgba(255,255,255,0.85);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td a {
  color: rgba(90,255,40,0.9);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s ease;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td a:hover {
  color: #5aff28;
  text-decoration: underline;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.model-cell .model-name {
  font-weight: 600;
  color: rgba(255,255,255,0.9);
  margin-bottom: 0.25rem;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.model-cell .model-details {
  font-size: 0.85rem;
  color: rgba(255,255,255,0.6);
  font-family: monospace;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.cost-cell {
  font-family: monospace;
  color: rgba(255,255,255,0.85);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.total-cell {
  font-family: monospace;
  font-size: 1.1rem;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.total-cell strong {
  font-weight: 700;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.savings-cell .savings-positive {
  color: #5aff28;
  font-weight: 700;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.savings-cell .savings-negative {
  color: rgba(255,100,100,0.9);
  font-weight: 700;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.savings-cell .baseline {
  color: rgba(255,255,255,0.4);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell {
  min-width: 250px;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell .comparison-content {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell .comparison-content .savings-text {
  font-size: 0.9rem;
  font-weight: 600;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell .comparison-content .savings-text .savings-positive {
  color: #5aff28;
  font-weight: 700;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell .comparison-content .savings-text .savings-negative {
  color: rgba(255,100,100,0.9);
  font-weight: 700;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell .comparison-content .bar-container {
  height: 8px;
  background: rgba(255,255,255,0.05);
  border-radius: 50px;
  overflow: hidden;
  width: 100%;
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell .comparison-content .bar-container .bar-fill {
  height: 100%;
  width: var(--bar-width);
  background: linear-gradient(90deg, rgba(90,255,40,0.4) 0%, rgba(90,255,40,0.2) 100%);
  transition: width 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-shadow: 0 0 8px rgba(90,255,40,0.2);
}
.pricing-calculator .cost-comparison-detailed .pricing-table tbody td.comparison-cell .comparison-content .bar-container .bar-fill.highlighted-bar {
  background: linear-gradient(90deg, rgba(90,255,40,0.9) 0%, rgba(90,255,40,0.6) 100%);
  box-shadow: 0 0 15px rgba(90,255,40,0.5);
}
.pricing-calculator .pricing-notes {
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 2rem;
  margin-top: 3rem;
}
.pricing-calculator .pricing-notes h3 {
  font-size: 1.3rem;
  font-weight: 700;
  color: rgba(255,255,255,0.95);
  margin-bottom: 1rem;
}
.pricing-calculator .pricing-notes ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.pricing-calculator .pricing-notes ul li {
  padding: 0.75rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.8);
  font-size: 0.95rem;
  line-height: 1.6;
}
.pricing-calculator .pricing-notes ul li:last-child {
  border-bottom: none;
}
.pricing-calculator .pricing-notes ul li strong {
  color: rgba(255,255,255,0.95);
  font-weight: 600;
}
.pricing-calculator .pricing-notes ul li a {
  color: rgba(90,255,40,0.9);
  text-decoration: none;
  transition: color 0.2s ease;
}
.pricing-calculator .pricing-notes ul li a:hover {
  color: #5aff28;
  text-decoration: underline;
}
.pricing-calculator .calculator-link {
  text-align: center;
  margin-top: 2rem;
}
.pricing-calculator .calculator-link a {
  color: #5aff28;
  text-decoration: none;
  font-size: 1.1rem;
  font-weight: 600;
  transition: all 0.3s ease;
  display: inline-block;
  padding: 0.5rem 1rem;
  border-radius: 50px;
  border: 1px solid rgba(90,255,40,0.2);
  background: rgba(90,255,40,0.05);
}
.pricing-calculator .calculator-link a:hover {
  background: rgba(90,255,40,0.1);
  border-color: rgba(90,255,40,0.4);
  text-shadow: 0 0 10px rgba(90,255,40,0.6);
  transform: translateY(-2px);
  box-shadow: 0 0 20px rgba(90,255,40,0.2);
}
@media (max-width: 768px) {
  .pricing-calculator {
    padding: 1rem;
  }
  .pricing-calculator .calculator-controls .input-group {
    flex-direction: column;
    align-items: stretch;
  }
  .pricing-calculator .calculation {
    font-size: 0.95rem;
  }
  .pricing-calculator .cost-comparison-detailed .pricing-table {
    font-size: 0.85rem;
  }
  .pricing-calculator .cost-comparison-detailed .pricing-table th,
  .pricing-calculator .cost-comparison-detailed .pricing-table td {
    padding: 0.75rem;
  }
  .pricing-calculator .cost-comparison .cost-bar {
    grid-template-columns: 1fr;
    gap: 0.75rem;
    padding: 1rem;
  }
  .pricing-calculator .cost-comparison .cost-bar .bar-label {
    display: flex;
    justify-content: space-between;
  }
  .pricing-calculator .cost-comparison .cost-bar .bar-label .competitor-name {
    font-size: 0.9rem;
  }
  .pricing-calculator .cost-comparison .cost-bar .bar-label .cost-amount {
    font-size: 1.1rem;
  }
  .pricing-calculator .cost-comparison .cost-bar .bar-container {
    grid-column: 1;
  }
}
.test-validation-renderer {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.validation-description {
  margin: 0;
  color: rgba(255,255,255,0.85);
  line-height: 1.6;
  font-size: 1.05rem;
}
.validation-scope {
  color: rgba(255,255,255,0.5);
  font-size: 1rem;
}
.validation-distribution {
  display: flex;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 8px;
}
.validation-distribution-item {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
.validation-distribution-count {
  color: rgba(255,255,255,0.95);
  font-size: 1.1rem;
  font-variant-numeric: tabular-nums;
}
.validation-grade {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.6rem;
  height: 1.6rem;
  padding: 0 0.4rem;
  border-radius: 4px;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.02em;
}
.validation-grade-A {
  background: rgba(90,255,40,0.15);
  color: var(--cta, #5aff28);
}
.validation-grade-B {
  background: rgba(130,220,100,0.15);
  color: rgba(180,250,160,0.95);
}
.validation-grade-C {
  background: rgba(255,200,60,0.15);
  color: rgba(255,220,140,0.95);
}
.validation-grade-D {
  background: rgba(255,160,60,0.18);
  color: rgba(255,190,110,0.95);
}
.validation-grade-F {
  background: rgba(255,90,90,0.2);
  color: rgba(255,150,150,0.95);
}
.validation-section {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.validation-section-title {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 600;
  color: rgba(255,255,255,0.95);
}
.validation-rows {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.validation-row {
  padding: 0.75rem 1rem;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 6px;
}
.validation-row-F {
  border-left: 3px solid rgba(255,90,90,0.8);
}
.validation-row-D {
  border-left: 3px solid rgba(255,160,60,0.8);
}
.validation-row-C {
  border-left: 3px solid rgba(255,200,60,0.7);
}
.validation-row-B {
  border-left: 3px solid rgba(130,220,100,0.7);
}
.validation-row-A {
  border-left: 3px solid rgba(90,255,40,0.7);
}
.validation-row-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.validation-row-test {
  color: rgba(255,255,255,0.95);
  text-decoration: none;
  font-weight: 500;
}
.validation-row-test:hover {
  text-decoration: underline;
}
.validation-row-spacer {
  flex: 1;
}
.validation-rules {
  margin-top: 0.35rem;
  color: rgba(255,255,255,0.7);
  font-size: 1rem;
}
.validation-rule-fail {
  display: inline-block;
  padding: 0.1rem 0.4rem;
  margin-right: 0.3rem;
  background: rgba(255,90,90,0.15);
  color: rgba(255,150,150,0.95);
  border-radius: 3px;
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.03em;
}
.validation-rules-na {
  color: rgba(255,255,255,0.5);
}
.validation-evidence {
  margin-top: 0.35rem;
  margin-bottom: 0;
  padding-left: 1.2rem;
  color: rgba(255,255,255,0.7);
  font-size: 1rem;
  line-height: 1.5;
}
.validation-recommendation {
  margin-top: 0.5rem;
  padding: 0.5rem 0.75rem;
  background: rgba(255,255,255,0.04);
  border-radius: 4px;
  color: rgba(255,255,255,0.9);
  line-height: 1.5;
  font-size: 1rem;
}
.validation-recommendation strong {
  color: rgba(255,255,255,0.95);
  font-weight: 600;
}
.status-container {
  color: #fff;
  display: flex;
  align-items: center;
  padding: 12px 16px;
  border-radius: 8px;
  margin-bottom: 16px;
  transition: all 0.2s ease-in-out;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
.status-container.thinking {
  background-color: rgba(59,130,246,0.15);
  animation: pulse-blue 2s infinite;
}
.status-container.ok {
  background-color: rgba(34,197,94,0.15);
}
.status-container.error {
  background-color: rgba(239,68,68,0.15);
}
.status-container.working {
  background-color: rgba(245,158,11,0.15);
  animation: pulse-amber 2s infinite;
}
.status-container.working.inProgress {
  background-color: rgba(90,255,40,0.15) !important;
  animation: pulse-green 2s infinite !important;
}
.status-container.noted {
  background-color: rgba(139,92,246,0.15);
  animation: pulse-purple 2s infinite;
}
.status-container.changeMode {
  background-color: rgba(20,184,166,0.15);
}
.status-icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 12px;
}
.status-icon {
  width: 20px;
  height: 20px;
}
.status-icon.thinking {
  color: #3b82f6;
  animation: pulse-icon 2s ease-in-out infinite;
}
.status-icon.ok {
  color: #22c55e;
}
.status-icon.error {
  color: #ef4444;
}
.status-icon.working {
  color: #f59e0b;
  animation: pulse-icon 2s ease-in-out infinite;
}
.status-container.working.inProgress .status-icon.working {
  animation: spin 1.5s linear infinite !important;
  color: rgba(90,255,40,0.8) !important;
}
.status-icon.noted {
  color: #8b5cf6;
  animation: pulse-icon 2s ease-in-out infinite;
}
.status-icon.noted.inProgress {
  animation: pulse-purple 1.5s infinite;
}
.status-icon.changeMode {
  color: #14b8a6;
  animation: pulse-icon 2s ease-in-out infinite;
}
.status-text {
  font-size: 14px;
  line-height: 1.5;
  color: #fff;
  flex: 1;
}
.spin {
  animation: spin 1.5s linear infinite;
}
.saved.inProgress {
  animation: pulse-teal 1.5s infinite;
}
.status-container.working.inProgress .status-icon.working {
  animation: spin 1.5s linear infinite !important;
}
@-moz-keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@-o-keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@-moz-keyframes pulse-blue {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@-webkit-keyframes pulse-blue {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@-o-keyframes pulse-blue {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@keyframes pulse-blue {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@-moz-keyframes pulse-amber {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@-webkit-keyframes pulse-amber {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@-o-keyframes pulse-amber {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@keyframes pulse-amber {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@-moz-keyframes pulse-purple {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@-webkit-keyframes pulse-purple {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@-o-keyframes pulse-purple {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@keyframes pulse-purple {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@-moz-keyframes pulse-teal {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@-webkit-keyframes pulse-teal {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@-o-keyframes pulse-teal {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@keyframes pulse-teal {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@-moz-keyframes pulse-green {
  0% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(90,255,40,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0);
  }
}
@-webkit-keyframes pulse-green {
  0% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(90,255,40,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0);
  }
}
@-o-keyframes pulse-green {
  0% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(90,255,40,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0);
  }
}
@keyframes pulse-green {
  0% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0.4);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(90,255,40,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(90,255,40,0);
  }
}
@-moz-keyframes pulse-blue-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@-webkit-keyframes pulse-blue-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@-o-keyframes pulse-blue-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@keyframes pulse-blue-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(59,130,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59,130,246,0);
  }
}
@-moz-keyframes pulse-amber-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@-webkit-keyframes pulse-amber-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@-o-keyframes pulse-amber-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@keyframes pulse-amber-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(245,158,11,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(245,158,11,0);
  }
}
@-moz-keyframes pulse-purple-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@-webkit-keyframes pulse-purple-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@-o-keyframes pulse-purple-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@keyframes pulse-purple-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(139,92,246,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(139,92,246,0);
  }
}
@-moz-keyframes pulse-teal-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@-webkit-keyframes pulse-teal-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@-o-keyframes pulse-teal-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@keyframes pulse-teal-dark {
  0% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0.3);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(20,184,166,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(20,184,166,0);
  }
}
@-moz-keyframes pulse-icon {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
@-webkit-keyframes pulse-icon {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
@-o-keyframes pulse-icon {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
@keyframes pulse-icon {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}
.artifact-links {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 8px;
}
.artifact-links-header {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}
.artifact-links-title {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 600;
  color: rgba(255,255,255,0.95);
}
.artifact-links-count {
  color: rgba(255,255,255,0.5);
  font-variant-numeric: tabular-nums;
}
.artifact-links-groups {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.artifact-links-group {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.artifact-links-type {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  color: rgba(255,255,255,0.5);
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.04em;
  font-size: 1rem;
}
.artifact-links-type-icon {
  font-size: 1rem;
}
.artifact-links-type-name {
  color: rgba(255,255,255,0.7);
}
.artifact-links-type-count {
  color: rgba(255,255,255,0.35);
  font-variant-numeric: tabular-nums;
}
.artifact-links-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.artifact-links-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.3rem 0.65rem;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 4px;
  color: rgba(255,255,255,0.9);
  text-decoration: none;
  font-size: 1rem;
  cursor: pointer;
}
.artifact-links-chip:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.2);
}
.artifact-links-chip-outgoing {
  border-left: 2px solid var(--cta, #5aff28);
}
.artifact-links-chip-incoming {
  border-right: 2px solid rgba(90,180,255,0.8);
}
.artifact-links-chip-both {
  border-left: 2px solid var(--cta, #5aff28);
  border-right: 2px solid rgba(90,180,255,0.8);
}
.artifact-links-arrow {
  color: rgba(255,255,255,0.5);
  font-size: 0.9rem;
  font-weight: 600;
}
.artifact-links-chip-name {
  color: rgba(255,255,255,0.95);
}
.one-by-one > * {
  opacity: 0;
  will-change: opacity, transform;
}
.one-by-one.animate > * {
  animation-name: OneByOne;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
}
.one-by-one.animate > *:nth-child(1) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 0));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(2) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 1));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(3) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 2));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(4) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 3));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(5) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 4));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(6) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 5));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(7) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 6));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(8) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 7));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(9) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 8));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(10) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 9));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(11) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 10));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(12) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 11));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(13) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 12));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(14) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 13));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(15) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 14));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(16) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 15));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(17) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 16));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(18) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 17));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(19) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 18));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(20) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 19));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(21) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 20));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(22) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 21));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(23) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 22));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(24) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 23));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(25) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 24));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(26) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 25));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(27) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 26));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(28) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 27));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(29) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 28));
  animation-duration: var(--duration);
}
.one-by-one.animate > *:nth-child(30) {
  animation-delay: calc(var(--initial-delay) + (var(--delay) * 29));
  animation-duration: var(--duration);
}
.settings-content {
  padding-top: 3rem;
}
@-moz-keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes OneByOne {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.checkbox-group-container {
  margin-bottom: 16px;
}
.checkbox-group-container label {
  display: block;
  margin-bottom: 8px;
}
.checkbox-group-options {
  display: flex;
  gap: 8px;
  background: rgba(0,0,0,0.7);
  padding: 8px;
  border-radius: 4px;
  flex-wrap: wrap;
}
.checkbox-group-options button {
  background: #333;
  color: #fff;
  border: none;
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: normal;
  min-width: fit-content;
}
.checkbox-group-options button.selected {
  background: #0f0;
  color: #000;
}
.chat-window {
  width: 100%;
  max-width: 640px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.03);
  overflow: hidden;
}
.chat-titlebar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  background: rgba(0,0,0,0.3);
}
.chat-titlebar .dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
}
.chat-titlebar .dot.red {
  background: #ff5f57;
}
.chat-titlebar .dot.yellow {
  background: #febc2e;
}
.chat-titlebar .dot.green {
  background: #28c840;
}
.chat-titlebar .titlebar-label {
  margin-left: 8px;
  font-size: 12px;
  color: rgba(255,255,255,0.5);
  font-family: monospace;
}
.chat-messages {
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.chat-bubble-row {
  display: flex;
}
.chat-bubble-row.user {
  justify-content: flex-end;
}
.chat-bubble-row.agent {
  justify-content: flex-start;
}
.chat-bubble {
  padding: 12px 16px;
  font-size: 13px;
  line-height: 1.6;
  max-width: 85%;
  word-break: break-word;
}
.chat-bubble.user {
  background: rgba(90,255,40,0.12);
  border: 1px solid rgba(90,255,40,0.2);
  color: rgba(255,255,255,0.9);
  border-radius: 18px 18px 4px 18px;
  font-family: "SF Mono", "Cascadia Code", "Roboto Mono", monospace;
}
.chat-bubble .chat-bubble-placeholder {
  color: rgba(90,255,40,0.45);
  border-bottom: 1px dashed rgba(90,255,40,0.35);
  outline: none;
  min-width: 2ch;
  display: inline;
  cursor: text;
}
.chat-bubble .chat-bubble-placeholder:focus {
  color: rgba(90,255,40,0.9);
  border-bottom-color: rgba(90,255,40,0.7);
}
.chat-bubble.agent {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.5);
  border-radius: 18px 18px 18px 4px;
}
.typing-dots {
  display: inline-flex;
  gap: 2px;
  letter-spacing: 2px;
}
.typing-dots span {
  animation: welcome-bounce 1.4s infinite;
}
.typing-dots span:nth-child(2) {
  animation-delay: 0.2s;
}
.typing-dots span:nth-child(3) {
  animation-delay: 0.4s;
}
.chat-actions {
  padding: 0 20px 20px;
  display: flex;
  justify-content: center;
}
.chat-actions button {
  flex: 1;
  max-width: 100%;
  justify-content: center;
}
@-moz-keyframes welcome-bounce {
  0%, 60%, 100% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-4px);
  }
}
@-webkit-keyframes welcome-bounce {
  0%, 60%, 100% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-4px);
  }
}
@-o-keyframes welcome-bounce {
  0%, 60%, 100% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-4px);
  }
}
@keyframes welcome-bounce {
  0%, 60%, 100% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-4px);
  }
}
.NoirH1 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-weight: 950;
  font-variation-settings: 'wght' 950;
  margin-bottom: 2.5rem;
  line-height: 1;
  letter-spacing: normal;
  font-size: clamp(4rem, 7vw, 7rem);
  color: #fff;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.NoirH1 strong,
.NoirH1 b {
  font-style: normal;
  font-weight: 950;
  font-variation-settings: 'wght' 950;
  background: #5aff28;
  background: linear-gradient(223deg, #5aff28 11.76%, #00ab1d 71.01%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.NoirH1 em,
.NoirH1 i {
  font-style: normal;
  font-weight: 950;
  font-variation-settings: 'wght' 950;
  color: var(--cta);
  position: relative;
  display: inline-block;
  text-shadow: 0 0 0px rgba(90,255,40,0.67), 0 0 20px rgba(90,255,40,0.67), 0 0 30px rgba(90,255,40,0.67);
  animation: textGlow 2s ease-in-out infinite alternate;
}
.NoirH1 em::before,
.NoirH1 i::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  color: var(--cta);
  filter: blur(4px);
  opacity: 0.8;
}
.NoirH2 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.5rem, 5vw, 5rem);
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  margin-bottom: 2rem;
  line-height: 1;
  letter-spacing: normal;
  color: #fff;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.NoirH2 .gradient-text,
.NoirH2 strong,
.NoirH2 b {
  background: #5aff28;
  background: linear-gradient(223deg, #5aff28 11.76%, #00ab1d 71.01%);
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  color: transparent !important;
  display: inline-block;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
}
.NoirH2 strong,
.NoirH2 b,
.NoirH2.title strong,
.NoirH2.title b {
  background: #5aff28;
  background: linear-gradient(223deg, #5aff28 11.76%, #00ab1d 71.01%);
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  color: transparent !important;
  display: inline-block;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  line-height: 1.2;
}
.NoirH3 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.25rem, 2.5vw, 1.5rem);
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  line-height: 1.3;
  margin-bottom: 1rem;
  color: #fff;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.NoirLead {
  font-family: "SF NS", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  margin-bottom: 4rem;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.6;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  font-size: clamp(1.25rem, 3vw, 1.875rem);
  color: rgba(217,217,217,0.7);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.NoirBadge {
  display: inline-block;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  backdrop-filter: blur(4px);
  color: #00ff80;
  border: 1px solid rgba(0,255,128,0.3);
  background-color: rgba(0,255,128,0.05);
}
.NoirStat {
  font-size: 3rem;
  line-height: 1.1;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  margin-bottom: 0.5rem;
  color: #00ff80;
}
@-moz-keyframes textGlow {
  0% {
    text-shadow: 0 0 5px rgba(90,255,40,0.67), 0 0 20px rgba(90,255,40,0.67), 0 0 30px rgba(90,255,40,0.67);
  }
  100% {
    text-shadow: 0 0 15px rgba(90,255,40,0.8), 0 0 25px rgba(90,255,40,0.8), 0 0 35px rgba(90,255,40,0.8);
  }
}
@-webkit-keyframes textGlow {
  0% {
    text-shadow: 0 0 5px rgba(90,255,40,0.67), 0 0 20px rgba(90,255,40,0.67), 0 0 30px rgba(90,255,40,0.67);
  }
  100% {
    text-shadow: 0 0 15px rgba(90,255,40,0.8), 0 0 25px rgba(90,255,40,0.8), 0 0 35px rgba(90,255,40,0.8);
  }
}
@-o-keyframes textGlow {
  0% {
    text-shadow: 0 0 5px rgba(90,255,40,0.67), 0 0 20px rgba(90,255,40,0.67), 0 0 30px rgba(90,255,40,0.67);
  }
  100% {
    text-shadow: 0 0 15px rgba(90,255,40,0.8), 0 0 25px rgba(90,255,40,0.8), 0 0 35px rgba(90,255,40,0.8);
  }
}
@keyframes textGlow {
  0% {
    text-shadow: 0 0 5px rgba(90,255,40,0.67), 0 0 20px rgba(90,255,40,0.67), 0 0 30px rgba(90,255,40,0.67);
  }
  100% {
    text-shadow: 0 0 15px rgba(90,255,40,0.8), 0 0 25px rgba(90,255,40,0.8), 0 0 35px rgba(90,255,40,0.8);
  }
}
.coverage-report-renderer {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.coverage-description {
  margin: 0;
  color: rgba(255,255,255,0.85);
  line-height: 1.6;
  font-size: 1.05rem;
}
.coverage-scope {
  color: rgba(255,255,255,0.5);
  font-size: 1rem;
  letter-spacing: 0.02em;
}
.coverage-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  padding: 1.25rem 1.5rem;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 8px;
}
.coverage-summary-stat {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 5rem;
}
.coverage-summary-stat-primary {
  margin-left: auto;
  text-align: right;
}
.coverage-summary-stat-primary .coverage-summary-value {
  color: var(--cta, #5aff28);
  font-size: 1.75rem;
}
.coverage-summary-value {
  font-size: 1.5rem;
  font-weight: 700;
  color: rgba(255,255,255,0.95);
  line-height: 1.1;
}
.coverage-summary-label {
  font-variant-caps: all-petite-caps;
  color: rgba(255,255,255,0.5);
  letter-spacing: 0.04em;
  font-size: 1rem;
}
.coverage-section {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.coverage-section-title {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 600;
  color: rgba(255,255,255,0.95);
}
.coverage-table {
  display: flex;
  flex-direction: column;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 8px;
  overflow: hidden;
}
.coverage-table-head {
  display: grid;
  grid-template-columns: 1.7fr 0.6fr 1.3fr 0.4fr 0.5fr 0.4fr 0.4fr;
  gap: 0.75rem;
  padding: 0.6rem 1rem;
  background: rgba(255,255,255,0.04);
  border-bottom: 1px solid rgba(255,255,255,0.09);
  color: rgba(255,255,255,0.5);
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.04em;
  font-size: 1rem;
}
.coverage-table-row {
  display: grid;
  grid-template-columns: 1.7fr 0.6fr 1.3fr 0.4fr 0.5fr 0.4fr 0.4fr;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  align-items: center;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  font-size: 1rem;
}
.coverage-table-row:last-child {
  border-bottom: none;
}
.coverage-table-num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.coverage-feature-id a {
  color: rgba(255,255,255,0.95);
  text-decoration: none;
  font-weight: 500;
}
.coverage-feature-id a:hover {
  text-decoration: underline;
}
.coverage-feature-notes {
  color: rgba(255,255,255,0.5);
  font-size: 0.95rem;
  margin-top: 0.2rem;
  line-height: 1.4;
}
.coverage-num-covered {
  color: var(--cta, #5aff28);
}
.coverage-num-gap {
  color: rgba(255,200,60,0.95);
}
.coverage-num-dead {
  color: rgba(255,90,90,0.95);
}
.coverage-bar {
  display: flex;
  background: rgba(255,255,255,0.06);
  overflow: hidden;
  min-width: 4rem;
}
.coverage-bar-seg {
  height: 100%;
}
.coverage-bar-covered {
  background: var(--cta, #5aff28);
}
.coverage-bar-gap {
  background: rgba(255,200,60,0.85);
}
.coverage-bar-dead {
  background: rgba(255,90,90,0.85);
}
.coverage-priority {
  display: inline-block;
  padding: 0.15rem 0.55rem;
  border-radius: 4px;
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.04em;
  font-size: 0.95rem;
  font-weight: 600;
}
.coverage-priority-critical {
  background: rgba(255,90,90,0.2);
  color: rgba(255,150,150,0.95);
}
.coverage-priority-high {
  background: rgba(255,160,60,0.2);
  color: rgba(255,190,110,0.95);
}
.coverage-priority-medium {
  background: rgba(255,220,60,0.15);
  color: rgba(255,230,140,0.9);
}
.coverage-priority-low {
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.5);
}
.coverage-gap-list,
.coverage-orphan-list,
.coverage-next-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.coverage-gap-item,
.coverage-orphan-item {
  padding: 0.75rem 1rem;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 6px;
}
.coverage-gap-head,
.coverage-orphan-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.coverage-gap-feature {
  color: rgba(255,255,255,0.95);
  font-weight: 500;
  text-decoration: none;
}
.coverage-gap-feature:hover {
  text-decoration: underline;
}
.coverage-gap-arrow {
  color: rgba(255,255,255,0.35);
}
.coverage-gap-scenario {
  color: rgba(255,255,255,0.85);
}
.coverage-gap-impact {
  margin-top: 0.35rem;
  color: rgba(255,255,255,0.7);
  line-height: 1.5;
}
.coverage-dead-id {
  margin-top: 0.35rem;
  color: rgba(255,255,255,0.7);
}
.coverage-dead-id code {
  background: rgba(255,255,255,0.08);
  padding: 0.1rem 0.4rem;
  border-radius: 3px;
}
.coverage-orphan-name {
  color: rgba(255,255,255,0.95);
  text-decoration: none;
  font-weight: 500;
}
.coverage-orphan-name:hover {
  text-decoration: underline;
}
.coverage-orphan-status {
  padding: 0.1rem 0.45rem;
  border-radius: 3px;
  font-variant-caps: all-petite-caps;
  font-size: 0.9rem;
  letter-spacing: 0.04em;
}
.coverage-orphan-status-pass {
  background: rgba(90,255,40,0.15);
  color: var(--cta, #5aff28);
}
.coverage-orphan-status-fail {
  background: rgba(255,90,90,0.2);
  color: rgba(255,150,150,0.95);
}
.coverage-orphan-status-unknown {
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.5);
}
.coverage-orphan-tag {
  color: rgba(255,255,255,0.5);
  font-size: 0.95rem;
}
.coverage-orphan-suggestion {
  margin-top: 0.35rem;
  color: rgba(255,255,255,0.7);
}
.coverage-next-item {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
  padding: 0.5rem 1rem;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 6px;
}
.coverage-next-mode {
  padding: 0.15rem 0.55rem;
  border-radius: 4px;
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.04em;
  font-size: 0.95rem;
  font-weight: 600;
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.85);
  flex-shrink: 0;
}
.coverage-next-mode-tdd {
  background: rgba(90,255,40,0.12);
  color: var(--cta, #5aff28);
}
.coverage-next-mode-fix-tests {
  background: rgba(255,160,60,0.15);
  color: rgba(255,190,110,0.95);
}
.coverage-next-desc {
  color: rgba(255,255,255,0.85);
  line-height: 1.5;
}
.simple-json-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}
.simple-json-form .loading-form {
  padding: 1rem;
  text-align: center;
  color: #6b7280;
}
.popup-form-container {
  position: relative;
}
.popup-form-container .popup-trigger-button {
  padding: 0.5rem 1rem;
  background-color: #3b82f6;
  color: #fff;
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  font-weight: 500;
}
.popup-form-container .popup-trigger-button:hover {
  background-color: #2563eb;
}
.popup-content {
  backdrop-filter: blur(20px) !important;
  background-color: rgba(0,0,0,0.7) !important;
  box-shadow: 0px 15px 25px 15px rgba(0,0,0,0.6) !important, 0 0 30px rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 12px;
  padding: 2rem;
  width: 90%;
  max-width: 600px;
  max-height: 90vh;
  overflow-y: auto;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: fadeIn 0.25s ease-in-out;
  z-index: 10002;
  text-align: left;
}
.popup-content::before {
  content: '';
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  background: linear-gradient(45deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05));
  border-radius: 14px;
  z-index: -1;
  filter: blur(1px);
}
.popup-content * {
  text-align: left;
}
.popup-content .form-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
}
.popup-content .form-errors {
  margin-top: 1rem;
  padding: 0.75rem;
  border-radius: 0.25rem;
  background-color: #fee2e2;
  border: 1px solid #ef4444;
  text-align: left;
}
.popup-content .form-errors .error-message {
  color: #b91c1c;
  font-size: 0.875rem;
  margin-bottom: 0.25rem;
  text-align: left;
}
.popup-content .form-errors .error-message:last-child {
  margin-bottom: 0;
}
.popup-content .vertical-layout {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.popup-content .horizontal-layout {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
}
.popup-content .horizontal-layout > div {
  flex: 1;
  min-width: 200px;
}
.popup-content .input-control {
  margin-bottom: 1rem;
}
.popup-content .input-control label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: rgba(255,255,255,0.9) !important;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-align: left;
}
.popup-content .input-control input,
.popup-content .input-control textarea,
.popup-content .input-control select {
  width: 100%;
  padding: 0.75rem;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 6px;
  color: rgba(255,255,255,0.95) !important;
  transition: all 0.2s ease;
}
.popup-content .input-control input::placeholder,
.popup-content .input-control textarea::placeholder,
.popup-content .input-control select::placeholder {
  color: rgba(255,255,255,0.5) !important;
}
.popup-content .input-control input:focus,
.popup-content .input-control textarea:focus,
.popup-content .input-control select:focus {
  outline: none;
  border-color: rgba(255,255,255,0.3) !important;
  background: rgba(255,255,255,0.08) !important;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1);
}
.popup-content .input-control .validation_error {
  color: #ef4444;
  font-size: 0.75rem;
  margin-top: 0.25rem;
  text-align: left;
}
.popup-content .tag-select-container {
  margin-bottom: 1rem;
}
.popup-content .tag-select-container label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: rgba(255,255,255,0.9) !important;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-align: left;
}
.popup-content .tag-select-container .tag-select-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 90%;
  display: inline-block;
}
.popup-content .group {
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1rem;
}
.popup-content .group .group-label {
  font-weight: 600;
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  text-align: left;
}
.artifact-type-control .form-label {
  color: rgba(255,255,255,0.95);
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 1rem;
  display: block;
}
.artifact-type-control .form-description {
  color: rgba(255,255,255,0.7);
  margin-bottom: 1.5rem;
}
.artifact-type-control .artifact-type-grid {
  display: grid;
  gap: 1rem;
}
.artifact-type-control .artifact-type-button {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem;
  border: 2px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  background: rgba(255,255,255,0.02);
  color: #fff;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  width: 100%;
}
.artifact-type-control .artifact-type-button:hover {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.25);
}
.artifact-type-control .artifact-type-button.selected {
  border-color: #5aff28;
  background: rgba(90,255,40,0.1);
}
.artifact-type-control .artifact-type-button.selected .artifact-type-name {
  color: #5aff28;
}
.artifact-type-control .artifact-type-icon {
  font-size: 1.5rem;
  margin-top: 0.25rem;
  flex-shrink: 0;
}
.artifact-type-control .artifact-type-content {
  flex: 1;
}
.artifact-type-control .artifact-type-name {
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  color: rgba(255,255,255,0.95);
}
.artifact-type-control .artifact-type-description {
  font-size: 0.875rem;
  line-height: 1.4;
  color: rgba(255,255,255,0.7);
  margin: 0;
}
.selected .artifact-type-control .artifact-type-description {
  color: rgba(255,255,255,0.9);
}
.artifact-type-control .artifact-type-check {
  flex-shrink: 0;
  margin-top: 0.25rem;
}
.artifact-type-control .artifact-type-check .check-circle {
  width: 20px;
  height: 20px;
  background: #5aff28;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.artifact-type-control .artifact-type-check .check-circle svg {
  width: 12px;
  height: 12px;
  fill: #000;
}
.artifact-type-control .validation-error {
  color: #f00;
  font-size: 0.875rem;
  margin-top: 0.5rem;
}
.FAQAccordion {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  text-align: left;
}
.FAQAccordion .accordion-item {
  width: 100%;
  cursor: pointer;
  border-radius: 16px;
  margin-bottom: 16px;
  overflow: hidden;
  position: relative;
  background: radial-gradient(49.41% 64.58% at 49.4% 0, rgba(255,255,255,0.05) 0, rgba(255,255,255,0) 100%);
  border: 1px solid rgba(255,255,255,0.08);
  transition: border-color 0.3s, background 0.3s, transform 0.3s, box-shadow 0.3s;
}
.FAQAccordion .accordion-item:hover {
  border-color: rgba(255,255,255,0.18);
  transform: translateY(-2px);
  box-shadow: 0px 8px 24px rgba(0,0,0,0.2);
}
.FAQAccordion .accordion-item.expanded {
  border-color: rgba(255,255,255,0.2);
  box-shadow: 0px 12px 28px rgba(0,0,0,0.25);
}
.FAQAccordion .accordion-item.expanded .accordion-chevron {
  opacity: 1;
  transform: rotate(180deg) scale(1.1);
}
.FAQAccordion .accordion-item.expanded .accordion-collapse {
  grid-template-rows: 1fr;
}
.FAQAccordion .accordion-item.expanded .accordion-details-text {
  opacity: 1;
}
.FAQAccordion .accordion-summary {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 32px;
  position: relative;
  z-index: 1;
}
.FAQAccordion .accordion-summary .accordion-title {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  color: #fff;
  line-height: 1.3;
  transition: color 0.3s;
}
.FAQAccordion .accordion-chevron {
  display: flex;
  flex-shrink: 0;
  opacity: 0.7;
  color: #fff;
  transform: rotate(0deg) scale(1);
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s;
}
.FAQAccordion .accordion-collapse {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.FAQAccordion .accordion-details {
  overflow: hidden;
}
.FAQAccordion .accordion-details .accordion-details-text {
  padding: 0 32px 32px 32px;
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
  line-height: 1.7;
  opacity: 0;
  transition: opacity 0.3s ease 0.1s;
}
.FAQAccordion .accordion-details .accordion-details-text ul,
.FAQAccordion .accordion-details .accordion-details-text ol {
  padding-left: 1.5em;
  margin: 0.5em 0;
}
.FAQAccordion .accordion-details .accordion-details-text p {
  margin: 0.5em 0;
}
.task-list-container {
  margin-top: 0.5rem;
}
.status-container.ok .task-list-container {
  display: none;
}
.task-list {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.task-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.1rem 0;
  transition: all 0.2s ease;
}
.task-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.task-name {
  flex: 1;
  color: rgba(255,255,255,0.9);
  font-size: 0.9rem;
  line-height: 1.4;
}
.task-done .task-name {
  color: rgba(255,255,255,0.6);
}
.task-in_progress .task-name {
  color: rgba(255,255,255,0.9);
  font-weight: 500;
}
.task-failed .task-name {
  color: rgba(255,255,255,0.9);
}
.spinner {
  width: 14px;
  height: 14px;
  border: 2px solid rgba(255,255,255,0.3);
  border-top: 2px solid rgba(255,255,255,0.8);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  flex-shrink: 0;
}
.task-list-message {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.9);
  font-size: 0.9rem;
  line-height: 1.6;
}
@-moz-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-o-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
button {
  cursor: pointer;
}
.mobile .button {
  max-width: 95vw;
}
button[role="accordion"] {
  width: 100%;
  max-width: 100% !important;
  border: 1px solid #333;
  user-select: none;
}
button:not([role="switch"]) {
  padding: 0.7rem 1.2rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 6px;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  max-width: 500px;
  outline: none;
}
button:not([role="switch"]):hover {
  transform: scale(1.005);
}
button:not([role="switch"]):active {
  transform: scale(0.995);
}
button:not([role="switch"]):focus {
  outline: none;
}
button:not([role="switch"]):focus-visible {
  outline: none;
}
button.big {
  padding: 1rem 2rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 12px;
}
button.xl {
  padding: 1.25rem 2.5rem;
  font-size: 1.25rem;
  line-height: 1.4;
  border-radius: 14px;
}
button.xxl {
  padding: 1.5rem 3rem;
  font-size: 1.5rem;
  line-height: 1.3;
  border-radius: 16px;
}
button.box-shadow-pulse {
  animation: box-shadow-pulse 2s ease-in-out infinite;
}
button:not([role]) {
  cursor: pointer;
  margin-right: 0.5rem;
  background: transparent;
  border: 1.5px solid rgba(255,255,255,0.15);
  cursor: pointer;
  color: rgba(255,255,255,0.9);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  position: relative;
  overflow: hidden;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
button:not([role])::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);
  transition: left 0.5s ease;
}
button:not([role]):hover {
  border-color: rgba(255,255,255,0.3);
  color: #fff;
  background: rgba(255,255,255,0.05);
}
button:not([role]):hover::before {
  left: 100%;
}
button:not([role]):active {
  background: rgba(255,255,255,0.08);
  transform: scale(0.98);
}
button:not([role])[disabled] {
  border-color: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.4);
  cursor: not-allowed;
}
button:not([role])[disabled]::before {
  display: none;
}
button[role='cta'] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px 12px 18px;
  background: var(--cta);
  border-radius: 12px;
  border: none;
  height: 48px;
  box-shadow: 0px 4px 16px rgba(90,255,40,0.3);
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  color: #000;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  position: relative;
  overflow: hidden;
}
button[role='cta'].big {
  padding: 14px 20px 14px 22px;
  height: 56px;
  border-radius: 14px;
}
button[role='cta'].big .ArrowRightIcon {
  width: 28px;
  height: 28px;
}
button[role='cta'].big span {
  font-size: 1.25rem;
  line-height: 1.4;
}
button[role='cta'].xl {
  padding: 16px 24px 16px 26px;
  height: 64px;
  border-radius: 16px;
}
button[role='cta'].xl .ArrowRightIcon {
  width: 32px;
  height: 32px;
}
button[role='cta'].xl span {
  font-size: 1.5rem;
  line-height: 1.3;
}
button[role='cta'].xxl {
  padding: 18px 28px 18px 30px;
  height: 72px;
  border-radius: 18px;
}
button[role='cta'].xxl .ArrowRightIcon {
  width: 36px;
  height: 36px;
}
button[role='cta'].xxl span {
  font-size: 1.5rem;
  line-height: 1.3;
}
button[role='cta']:hover {
  background: var(--cta);
  box-shadow: 0px 6px 24px rgba(90,255,40,0.4);
  transform: translateY(-2px);
}
button[role='cta']:hover .ArrowRightIcon {
  background-color: rgba(0,0,0,0.2);
  transform: scale(1.1);
  transition: background-color 0.3s ease, transform 0.3s ease;
}
button[role='cta']:active {
  background: #1caa00;
  transform: translateY(-1px);
  box-shadow: 0px 4px 16px rgba(90,255,40,0.3);
}
button[role='cta'][disabled] {
  background: #9cf69c;
}
button[role='cta'] span {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 500;
  font-variation-settings: 'wght' 500;
  color: #09090b;
  margin-top: 3px;
  white-space: nowrap;
}
button[role='cta'] .ArrowRightIcon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0,0,0,0.28);
  border-radius: 6px;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
button[role='cta'] .ArrowRightIcon.big {
  padding: 8px 10px 8px 12px;
  height: 60px;
}
button[role='cta'] .ArrowRightIcon .ArrowRightIcon {
  width: 22px;
  height: 22px;
}
button[role='cta'] .ArrowRightIcon span {
  font-size: 14px;
}
[role="dialog"],
.toast.frozen,
[role="menu"] {
  backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3) !important;
  transition: backdrop-filter 1s ease-in-out;
}
.toast.frozen {
  position: relative;
}
.frozen[cmdk-root] {
  background-color: rgba(0,0,0,0.7) !important;
}
[cmdk-root].frozen {
  background-color: rgba(0,0,0,0.7) !important;
  backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
}
[cmdk-item] [cmdk-shortcut] {
  color: rgba(255,255,255,0.5) !important;
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 4px !important;
  padding: 2px 6px !important;
  font-size: 0.75rem !important;
  font-family: monospace !important;
}
.H1 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: normal;
  color: #fff;
  margin-bottom: 1.5rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (min-width: 1024px) {
  .H1 {
    font-size: 3rem;
  }
}
.H2 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: normal;
  color: #fff;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.H2:first-child {
  margin-top: 0;
}
.H3 {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: normal;
  color: #fff;
  margin-bottom: 0.75rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.Lead {
  font-family: "SF NS", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 300;
  color: rgba(255,255,255,0.7);
  margin-bottom: 1.5rem;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.absolute {
  position: absolute !important;
}
.ui-section {
  margin-bottom: 3rem;
  width: 100%;
}
.input-with-errors {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.button-selector {
  display: flex;
  gap: 8px;
  background: rgba(0,0,0,0.7);
  padding: 8px;
  border-radius: 4px;
}
.button-selector .button-selector-option {
  background: rgba(51,51,51,0.9);
  color: #fff;
  border: none;
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: normal;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.button-selector .button-selector-option.active {
  background: var(--cta);
  color: #000;
  font-weight: bold;
}
.group-row {
  display: flex;
  gap: 0.125rem;
}
.group-left {
  padding-right: 0.5rem;
  display: flex;
}
.group-right {
  padding-left: 0.5rem;
  display: flex;
}
.Header {
  font-size: 2.25rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  text-align: center;
}
@media (min-width: 1024px) {
  .Header {
    font-size: 3rem;
  }
}
.pre-animate {
  opacity: 0;
}
@-moz-keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@-webkit-keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@-o-keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
@keyframes box-shadow-pulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(90,255,40,0.3), 0 0 12px rgba(90,255,40,0.2);
  }
  50% {
    box-shadow: 0 6px 24px rgba(90,255,40,0.45), 0 0 20px rgba(90,255,40,0.3);
  }
}
.ResultsPanel {
  position: fixed;
  top: 5.5rem;
  right: 32vw;
  width: auto;
  height: calc(100vh - 5.5rem);
  pointer-events: none;
  z-index: 100;
}
.ResultsPanel .result-inline {
  position: absolute;
  left: 0;
  height: 19px;
  display: flex;
  align-items: center;
  gap: 4px;
  pointer-events: auto;
  cursor: pointer;
  transition: opacity 0.15s ease;
  opacity: 0.5;
}
.ResultsPanel .result-inline:hover {
  opacity: 1;
}
.ResultsPanel .result-inline .result-arrow {
  color: rgba(255,255,255,0.3);
  font-size: 11px;
  font-family: 'Menlo', 'Monaco', 'Courier New', monospace;
}
.ResultsPanel .result-inline .result-value {
  display: inline-block;
  color: rgba(150,150,150,0.9);
  font-size: 11px;
  font-family: 'Menlo', 'Monaco', 'Courier New', monospace;
  font-weight: 400;
  font-style: italic;
  line-height: 16px;
  white-space: nowrap;
  max-width: 300px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ui-review-renderer {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.ui-review-page {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.ui-review-page-header {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.ui-review-page-name {
  margin: 0;
  font-size: 1.35rem;
  font-weight: 700;
}
.ui-review-page-url {
  color: var(--muted);
  font-size: 0.8rem;
  word-break: break-all;
}
.ui-review-what-i-saw {
  margin: 0;
  color: var(--text-secondary, inherit);
  line-height: 1.6;
}
.ui-review-screenshot {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.ui-review-viewport-tabs {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.ui-review-viewport-tab {
  padding: 0.3rem 0.75rem;
  border-radius: 4px;
  border: 1px solid var(--border);
  background: transparent;
  color: var(--text, inherit);
  cursor: pointer;
  font-size: 0.8rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.ui-review-viewport-tab.active {
  background: var(--accent, rgba(255,255,255,0.15));
  border-color: var(--primary, var(--border));
  color: var(--primary, inherit);
  font-weight: 600;
}
.ui-review-viewport-size {
  color: var(--muted);
  font-size: 0.7rem;
}
.ui-review-screenshot-img {
  max-width: 100%;
  border-radius: 6px;
  border: 1px solid var(--border);
  display: block;
}
.sitemap-container {
  margin: 1rem 0;
  border: none;
  border-radius: 0;
  overflow: hidden;
  background: transparent;
  width: 100%;
}
.sitemap-header {
  padding: 1rem;
  background: rgba(0,0,0,0.8);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  backdrop-filter: blur(12px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}
.sitemap-header h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: rgba(255,255,255,0.95);
}
.sitemap-stats {
  display: flex;
  gap: 1rem;
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
}
.sitemap-stats span {
  padding: 0.25rem 0.5rem;
  background: rgba(255,255,255,0.1);
  border-radius: 4px;
  color: rgba(255,255,255,0.9);
}
.sitemap-flow {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background: transparent;
  top: 0;
  left: 0;
}
.sitemap-flow .react-flow__attribution {
  display: none;
}
.sitemap-node {
  width: 300px;
  background: rgba(0,0,0,0.8);
  border: 2px solid rgba(255,255,255,0.2);
  border-radius: 12px;
  min-width: 300px;
  max-width: 400px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6);
  transition: all 0.2s ease;
  backdrop-filter: blur(16px);
}
.sitemap-node:hover {
  border-color: rgba(99,102,241,0.8);
  box-shadow: 0 12px 48px rgba(0,0,0,0.8);
  background: rgba(0,0,0,0.9);
  transform: scale(1.02);
}
.node-content {
  padding: 0;
}
.node-thumbnail {
  margin-bottom: 0.75rem;
  border-radius: 12px 12px 0 0;
  overflow: hidden;
}
.thumbnail-image {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 12px 12px 0 0;
  display: block;
}
.node-info .node-title {
  font-decoration: none;
  font-weight: 600;
  font-size: 1rem;
  color: rgba(255,255,255,0.95);
  margin-bottom: 0.5rem;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.node-info .tags {
  gap: 0.25rem;
  margin-top: 0.5rem;
}
.node-info .tags .tag {
  font-size: 0.65rem;
  padding: 0.1rem 0.3rem;
}
.node-info .node-type {
  font-size: 0.7rem;
  color: #6366f1;
  background: rgba(99,102,241,0.2);
  padding: 0.25rem 0.5rem;
  border-radius: 16px;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 600;
}
.react-flow__handle {
  display: none;
}
.react-flow__controls button {
  background: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: rgba(255,255,255,0.8) !important;
}
.react-flow__controls button:hover {
  background: rgba(255,255,255,0.15) !important;
  color: rgba(255,255,255,0.95) !important;
}
.react-flow__minimap {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
}
.page-header-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 0.25rem;
  z-index: 10;
  position: relative;
}
.page-header-wrapper .pageheader {
  flex: 1;
}
.page-header-wrapper .page-header-actions {
  display: flex;
  gap: 1rem;
}
.doc-meta {
  z-index: 10;
  position: relative;
}
.deployment-gantt {
  width: 100%;
  position: relative;
  overflow: visible;
}
.deployment-gantt .deployment-gantt-empty {
  text-align: center;
  padding: 40px;
  color: rgba(255,255,255,0.4);
  font-size: 14px;
}
.deployment-gantt .gantt-container {
  position: relative;
  width: 100%;
  overflow: visible;
}
.deployment-gantt .gantt-y-axis {
  position: absolute;
  left: 0;
  top: 0;
  width: 400px;
  height: 100%;
}
.deployment-gantt .gantt-y-label {
  position: absolute;
  width: 400px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 12px;
  font-size: 12px;
  font-weight: 400;
  color: rgba(255,255,255,0.8);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.deployment-gantt .gantt-chart-area {
  position: absolute;
  left: 400px;
  right: 0;
  top: 0;
  height: 100%;
  overflow: visible;
}
.deployment-gantt .gantt-grid {
  position: absolute;
  width: 100%;
  height: 100%;
}
.deployment-gantt .gantt-row {
  position: absolute;
  width: 100%;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.deployment-gantt .gantt-row-header {
  padding: 8px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.deployment-gantt .gantt-header-label {
  font-size: 14px;
  font-weight: 600;
  color: rgba(255,255,255,0.9);
  text-align: center;
}
.deployment-gantt .gantt-bars {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.deployment-gantt .gantt-bar {
  position: absolute;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 0 8px;
  overflow: visible;
}
.deployment-gantt .gantt-bar:hover {
  z-index: 100;
}
.deployment-gantt .gantt-bar-label {
  font-size: 11px;
  font-weight: 500;
  color: #000;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.deployment-gantt .gantt-tooltip {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 8px;
  background: rgba(0,0,0,0.95);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 6px;
  padding: 12px;
  min-width: 250px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.5);
  pointer-events: none;
  z-index: 1000;
}
.deployment-gantt .gantt-tooltip .tooltip-header {
  font-size: 14px;
  color: #fff;
  margin-bottom: 8px;
  border-bottom: 1px solid rgba(255,255,255,0.1);
  padding-bottom: 6px;
}
.deployment-gantt .gantt-tooltip .tooltip-time {
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  margin-bottom: 4px;
}
.deployment-gantt .gantt-tooltip .tooltip-description {
  font-size: 12px;
  color: rgba(255,255,255,0.9);
  margin-top: 8px;
  line-height: 1.4;
}
.deployment-gantt .gantt-x-axis {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 30px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.deployment-gantt .gantt-x-label {
  position: absolute;
  transform: translateX(-50%);
  font-size: 11px;
  color: rgba(255,255,255,0.6);
  padding-top: 8px;
}
.copy-row-button {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.25rem 0.55rem;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 4px;
  color: rgba(255,255,255,0.7);
  cursor: pointer;
  font-size: 0.95rem;
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.03em;
  transition: background-color 120ms, border-color 120ms, color 120ms;
}
.copy-row-button:hover {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.2);
  color: rgba(255,255,255,0.95);
}
.copy-row-button.copy-row-button-copied {
  background: rgba(90,255,40,0.1);
  border-color: var(--cta, #5aff28);
  color: var(--cta, #5aff28);
}
.copy-row-button-icon {
  font-size: 0.9rem;
  line-height: 1;
}
.copy-row-button-label {
  line-height: 1;
}
.popup-form-container {
  position: relative;
}
.popup-form-container .popup-trigger-button {
  background: var(--cta);
  color: #000;
  font-weight: 600;
  padding: 0.5rem 1rem;
  border-radius: 0.25rem;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.popup-form-container .popup-trigger-button:hover {
  background: var(--cta-hover);
}
.popup-form-container .popup-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--background);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 0.5rem;
  padding: 1.5rem;
  z-index: 1001;
  width: 90%;
  max-width: 600px;
  max-height: 90vh;
  overflow-y: auto;
}
.popup-form-container .popup-content .form-title {
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.popup-form-container .popup-content .form-description {
  margin-bottom: 1.5rem;
  color: var(--text-secondary);
}
.popup-form-container .popup-content .form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 1.5rem;
}
.item-card {
  cursor: pointer;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  padding: 1.25rem 1.5rem;
  margin-bottom: 0;
}
.item-card:hover {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.18);
}
.item-card:hover .item-card-arrow {
  transform: translateX(4px);
}
.item-card .item-card-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.item-card .item-card-content .item-card-main {
  flex: 1;
  min-width: 0;
}
.item-card .item-card-content .item-card-main .item-card-title {
  font-size: 1.1rem;
  font-weight: 500;
  margin-bottom: 0.4rem;
  color: rgba(255,255,255,0.95);
}
.item-card .item-card-content .item-card-main .item-card-description {
  color: rgba(255,255,255,0.5);
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0 0 0.6rem 0;
}
.item-card .item-card-content .item-card-main .item-card-tags {
  margin-top: 0.5rem;
}
.item-card .item-card-content .item-card-arrow {
  width: 20px;
  height: 20px;
  color: rgba(255,255,255,0.4);
  transition: transform 0.2s ease;
  flex-shrink: 0;
  margin-left: 1rem;
  margin-top: 0.2rem;
}
.item-card .item-card-content .item-card-right {
  flex-shrink: 0;
  margin-left: 1rem;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.5rem;
}
.item-cards-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.empty-state {
  text-align: center;
  padding: 3rem 1rem;
  color: rgba(255,255,255,0.6);
}
.empty-state p {
  font-size: 1.1rem;
  margin: 0;
}
@media (max-width: 768px) {
  .item-card {
    padding: 1rem;
    overflow-x: hidden;
  }
  .item-card .item-card-content {
    flex-direction: column;
    align-items: flex-start;
  }
  .item-card .item-card-content .item-card-main {
    width: 100%;
  }
  .item-card .item-card-content .item-card-main .item-card-title {
    font-size: 1rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }
  .item-card .item-card-content .item-card-main .item-card-description {
    font-size: 0.9rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }
  .item-card .item-card-content .item-card-main .item-card-tags {
    width: 100%;
    overflow-x: hidden;
  }
  .item-card .item-card-content .item-card-arrow {
    margin-left: 0;
    margin-top: 0.5rem;
    align-self: flex-end;
  }
}
.video-story {
  width: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4rem 2rem;
}
@media (max-width: 768px) {
  .video-story {
    padding: 2rem 1rem;
  }
}
.video-story-content {
  position: relative;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}
.video-container {
  position: relative;
  width: 100%;
  border-radius: 16px;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
  background: #0a0a0a;
  will-change: transform;
}
.video-container video {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 16px;
  opacity: 0;
  transition: opacity 0.8s ease-in;
}
.video-container video.video-loaded {
  opacity: 1;
}
.text-container {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 4rem;
  background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.7) 60%, transparent 100%);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  will-change: transform;
}
@media (max-width: 768px) {
  .text-container {
    position: relative;
    padding: 2rem;
    background: none;
  }
}
.text-container h2 {
  font-size: 4rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.2;
  text-shadow: 0 2px 20px rgba(0,0,0,0.8);
}
@media (max-width: 768px) {
  .text-container h2 {
    font-size: 2.5rem;
    text-shadow: none;
  }
}
.text-container p {
  font-size: 1.8rem;
  color: rgba(255,255,255,0.9);
  line-height: 1.6;
  margin: 0;
  text-shadow: 0 1px 10px rgba(0,0,0,0.8);
}
@media (max-width: 768px) {
  .text-container p {
    font-size: 1.3rem;
    text-shadow: none;
    color: rgba(255,255,255,0.7);
  }
}
.feature-badge {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  border-radius: 6px;
  background: #1f2937;
  cursor: pointer;
  border: 1px solid #374151;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.feature-badge:hover {
  background: #374151;
}
.feature-badge--sm {
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
}
.feature-badge--md {
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
}
.feature-badge-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.feature-badge-status--working {
  color: #86efac;
}
.feature-badge-status--broken {
  color: #fca5a5;
}
.feature-badge-status--partial {
  color: #fde68a;
}
.feature-badge-status--missing {
  color: #fca5a5;
}
.feature-badge-status--untested {
  color: #9ca3af;
}
.feature-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.feature-list-coverage {
  margin-bottom: 0.75rem;
}
.feature-list-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.coverage-bar-clickable {
  cursor: pointer;
}
.commandpalette__action-name {
  margin-left: auto;
  font-size: 0.75rem;
  color: rgba(220,60,60,0.9);
  flex-shrink: 0;
}
.regression-run-renderer {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.regression-description {
  margin: 0;
  color: rgba(255,255,255,0.85);
  line-height: 1.6;
  font-size: 1.05rem;
}
.regression-verdict {
  padding: 1rem 1.25rem;
  border-radius: 8px;
  font-size: 1.2rem;
  font-weight: 600;
  border: 1px solid rgba(255,255,255,0.09);
}
.regression-verdict-safe_to_ship {
  background: rgba(90,255,40,0.1);
  color: var(--cta, #5aff28);
  border-color: rgba(90,255,40,0.3);
}
.regression-verdict-regressions_found {
  background: rgba(255,90,90,0.12);
  color: rgba(255,150,150,0.95);
  border-color: rgba(255,90,90,0.35);
}
.regression-verdict-pre_existing_only {
  background: rgba(255,200,60,0.1);
  color: rgba(255,220,140,0.95);
  border-color: rgba(255,200,60,0.3);
}
.regression-verdict-inconclusive {
  background: rgba(160,180,255,0.1);
  color: rgba(200,210,255,0.95);
  border-color: rgba(160,180,255,0.3);
}
.regression-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  align-items: center;
}
.regression-count {
  padding: 0.3rem 0.7rem;
  border-radius: 4px;
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.04em;
  font-size: 1rem;
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.85);
}
.regression-count-green {
  background: rgba(90,255,40,0.12);
  color: var(--cta, #5aff28);
}
.regression-count-regressed {
  background: rgba(255,90,90,0.18);
  color: rgba(255,150,150,0.95);
}
.regression-count-flaky {
  background: rgba(160,180,255,0.12);
  color: rgba(200,210,255,0.95);
}
.regression-count-pre_existing_fail {
  background: rgba(255,200,60,0.12);
  color: rgba(255,220,140,0.95);
}
.regression-count-skipped {
  color: rgba(255,255,255,0.5);
}
.regression-method {
  color: rgba(255,255,255,0.5);
  font-size: 1rem;
  margin-left: auto;
}
.regression-section {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.regression-section-title {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 600;
  color: rgba(255,255,255,0.95);
}
.regression-section-regressed {
  color: rgba(255,150,150,0.95);
}
.regression-section-flaky {
  color: rgba(200,210,255,0.95);
}
.regression-files {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.regression-files code {
  background: rgba(255,255,255,0.06);
  padding: 0.1rem 0.4rem;
  border-radius: 3px;
  color: rgba(255,255,255,0.9);
}
.regression-results {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.regression-result {
  padding: 0.75rem 1rem;
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 6px;
}
.regression-result-regressed {
  border-left: 3px solid rgba(255,90,90,0.8);
}
.regression-result-flaky {
  border-left: 3px solid rgba(160,180,255,0.8);
}
.regression-result-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.regression-result-test {
  color: rgba(255,255,255,0.95);
  text-decoration: none;
  font-weight: 500;
}
.regression-result-test:hover {
  text-decoration: underline;
}
.regression-result-run {
  color: rgba(255,255,255,0.5);
  font-size: 0.95rem;
  padding: 0.15rem 0.45rem;
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 3px;
  text-decoration: none;
}
.regression-result-run:hover {
  background: rgba(255,255,255,0.06);
}
.regression-result-spacer {
  flex: 1;
}
.regression-result-msg {
  margin-top: 0.35rem;
  color: rgba(255,150,150,0.95);
  font-family: 'SF NS Mono', 'SF Mono', monospace;
  font-size: 0.95rem;
}
.regression-result-source {
  margin-top: 0.35rem;
  color: rgba(255,255,255,0.5);
  font-size: 0.95rem;
}
.regression-result-source code {
  background: rgba(255,255,255,0.06);
  padding: 0.1rem 0.4rem;
  border-radius: 3px;
}
.accordion-trigger {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 0;
  font-weight: 500;
  background: transparent;
  border: none;
  color: inherit;
  cursor: pointer;
  text-align: left;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.accordion-trigger:hover {
  opacity: 0.85;
}
.accordion-trigger:focus-visible {
  outline: none;
}
.accordion-chevron {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
[data-state="open"] .accordion-chevron {
  transform: rotate(180deg);
}
.accordion-content {
  overflow: hidden;
  font-size: 0.875rem;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.accordion-content-inner {
  padding-bottom: 1rem;
  padding-top: 0;
}
.ui-tooltip-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  border-radius: 8px;
  padding: 0.3rem 0.75rem;
  font-size: 0.9rem;
  transition: all 150ms ease;
  z-index: 50;
  overflow: hidden;
  color: rgba(255,255,255,0.9);
  box-shadow: 0 4px 16px rgba(0,0,0,0.4);
}
.ui-switch {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  flex-shrink: 0;
}
.ui-switch-thumb {
  display: block;
  pointer-events: none;
  border-radius: 9999px;
  background: #fff;
  box-shadow: 0 1px 4px rgba(0,0,0,0.3);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.fancybox-container {
  max-width: 200px;
}
.fancybox-trigger {
  width: 200px;
  justify-content: space-between;
}
.fancybox-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fancybox-icon {
  margin-left: 0.5rem;
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  opacity: 0.5;
}
.fancybox-popover-content {
  width: 200px;
  padding: 0;
}
.fancybox-group {
  max-height: 145px;
  overflow: auto;
}
.fancybox-group::-webkit-scrollbar {
  width: 2px;
}
.fancybox-group::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
}
.fancybox-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.fancybox-form {
  display: grid;
  width: 100%;
  gap: 0.75rem;
}
.fancybox-check-icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.5rem;
  flex-shrink: 0;
}
.fancybox-item-label {
  flex: 1;
}
.fancybox-color-swatch {
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  flex-shrink: 0;
}
.fancybox-icon-spacer {
  width: 1rem;
  height: 1rem;
  margin-right: 0.5rem;
}
.fancybox-edit-icon {
  width: 0.625rem;
  height: 0.625rem;
  margin-right: 0.5rem;
}
.fancybox-list-item-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.fancybox-edit-form {
  display: flex;
  align-items: flex-end;
  gap: 1rem;
}
.fancybox-color-field {
  display: grid;
  gap: 0.75rem;
}
.fancybox-input-sm {
  height: 2rem;
}
.fancybox-color-input {
  height: 2rem;
  padding: 0.25rem 0.5rem;
}
.fancybox-dialog-content {
  display: flex;
  flex-direction: column;
  max-height: 90vh;
}
.fancybox-dialog-list {
  flex: 1;
  overflow-y: scroll;
  margin: 0 -1.5rem;
  padding: 0.5rem 1.5rem;
}
.fancybox-dialog-list::-webkit-scrollbar {
  width: 2px;
}
.fancybox-dialog-list::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
}
.fancybox-badge {
  margin-bottom: 0.5rem;
  margin-right: 0.5rem;
}
.select-trigger {
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: #fff;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  height: 2.5rem;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  padding: 0 0.75rem;
  font-size: 0.875rem;
  border-radius: 8px;
}
.select-trigger:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.25);
}
.select-trigger:active {
  transform: scale(0.995);
}
.select-trigger:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.select-trigger > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.select-chevron {
  width: 1rem;
  height: 1rem;
  opacity: 0.5;
  flex-shrink: 0;
}
.select-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  position: relative;
  z-index: 50;
  max-height: 24rem;
  min-width: 8rem;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5);
}
.select-content-popper[data-side="bottom"] {
  transform: translateY(4px);
}
.select-content-popper[data-side="top"] {
  transform: translateY(-4px);
}
.select-content-popper[data-side="left"] {
  transform: translateX(-4px);
}
.select-content-popper[data-side="right"] {
  transform: translateX(4px);
}
.select-viewport {
  padding: 4px;
}
.select-viewport-popper {
  height: var(--radix-select-trigger-height);
  width: 100%;
  min-width: var(--radix-select-trigger-width);
}
.select-label {
  padding: 6px 2rem 6px 0.5rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(255,255,255,0.5);
}
.select-item {
  position: relative;
  display: flex;
  width: 100%;
  cursor: default;
  user-select: none;
  align-items: center;
  border-radius: 8px;
  padding: 6px 0.5rem 6px 2rem;
  font-size: 0.875rem;
  outline: none;
  color: rgba(255,255,255,0.85);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.select-item:hover {
  background: rgba(255,255,255,0.07);
}
.select-item[data-disabled] {
  pointer-events: none;
  opacity: 0.5;
}
.select-item[data-state="checked"] {
  color: #fff;
}
.select-item-indicator {
  position: absolute;
  left: 0.5rem;
  display: flex;
  width: 0.875rem;
  height: 0.875rem;
  align-items: center;
  justify-content: center;
}
.select-check-icon {
  width: 1rem;
  height: 1rem;
}
.select-separator {
  margin: 4px -4px;
  height: 1px;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.select-scroll-btn {
  display: flex;
  cursor: default;
  align-items: center;
  justify-content: center;
  padding: 4px 0;
}
.select-scroll-icon {
  width: 1rem;
  height: 1rem;
}
.pl-8 {
  padding-left: 2rem;
}
.menubar-root {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  height: 2.5rem;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  padding: 0.25rem;
}
.menubar-trigger {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  border-radius: 6px;
  font-weight: 500;
  font-size: 0.875rem;
  cursor: pointer;
  outline: none;
  user-select: none;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.menubar-trigger:hover {
  background: rgba(255,255,255,0.07);
}
.menubar-trigger[data-state="open"] {
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
}
.menubar-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  padding: 0.25rem;
  min-width: 12rem;
  z-index: 50;
}
.menubar-sub-trigger {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.5rem;
  border-radius: 6px;
  font-size: 0.875rem;
  cursor: pointer;
  outline: none;
  user-select: none;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.menubar-sub-trigger:hover {
  background: rgba(255,255,255,0.07);
}
.menubar-sub-trigger[data-state="open"] {
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
}
.menubar-sub-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  padding: 0.25rem;
  min-width: 8rem;
  z-index: 50;
}
.menubar-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.5rem;
  border-radius: 6px;
  font-size: 0.875rem;
  cursor: pointer;
  outline: none;
  user-select: none;
  position: relative;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.menubar-item:hover {
  background: rgba(255,255,255,0.07);
}
.menubar-item[data-disabled] {
  opacity: 0.5;
  pointer-events: none;
}
.menubar-separator {
  border-top: 1px solid rgba(255,255,255,0.06);
  margin: 0.25rem -0.25rem;
}
.menubar-shortcut {
  margin-left: auto;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  color: rgba(255,255,255,0.35);
}
.menubar-label {
  padding: 0.375rem 0.5rem;
  font-weight: 600;
  font-size: 0.875rem;
  color: rgba(255,255,255,0.5);
}
.menubar-checkbox-item {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.5rem 0.375rem 2rem;
  border-radius: 6px;
  font-size: 0.875rem;
  cursor: pointer;
  outline: none;
  user-select: none;
  position: relative;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.menubar-checkbox-item:hover {
  background: rgba(255,255,255,0.07);
}
.menubar-checkbox-item[data-disabled] {
  opacity: 0.5;
  pointer-events: none;
}
.menubar-sub-arrow {
  margin-left: auto;
  width: 1rem;
  height: 1rem;
}
.menubar-check-icon {
  width: 1rem;
  height: 1rem;
}
.menubar-radio-icon {
  width: 0.5rem;
  height: 0.5rem;
  fill: currentColor;
}
.menubar-radio-item {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.5rem 0.375rem 2rem;
  border-radius: 6px;
  font-size: 0.875rem;
  cursor: pointer;
  outline: none;
  user-select: none;
  position: relative;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.menubar-radio-item:hover {
  background: rgba(255,255,255,0.07);
}
.menubar-radio-item[data-disabled] {
  opacity: 0.5;
  pointer-events: none;
}
.ui-popover-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  border-radius: 14px;
  padding: 1rem;
  width: 18rem;
  z-index: 50;
  outline: none;
  color: rgba(255,255,255,0.9);
  box-shadow: 0 8px 32px rgba(0,0,0,0.5);
}
.ui-input {
  width: 100%;
}
.ui-input:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.resizable-group {
  display: flex;
  height: 100%;
  width: 100%;
}
.resizable-group[data-panel-group-direction="vertical"] {
  flex-direction: column;
}
.resizable-handle {
  position: relative;
  display: flex;
  width: 1px;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.08);
  outline: none;
  transition: background 150ms ease;
}
.resizable-handle::after {
  content: "";
  position: absolute;
  inset-y: 0;
  left: 50%;
  width: 0.25rem;
  transform: translateX(-50%);
}
.resizable-handle:focus-visible {
  outline: none;
  background: rgba(255,255,255,0.2);
}
.resizable-handle[data-panel-group-direction="vertical"] {
  height: 1px;
  width: 100%;
}
.resizable-handle[data-panel-group-direction="vertical"]::after {
  left: 0;
  top: 50%;
  height: 0.25rem;
  width: 100%;
  transform: translateY(-50%);
}
.resizable-handle[data-panel-group-direction="vertical"] .resizable-handle-grip {
  transform: rotate(90deg);
}
.resizable-handle-grip {
  z-index: 10;
  display: flex;
  width: 0.75rem;
  height: 1rem;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
}
.resizable-handle-icon {
  width: 0.625rem;
  height: 0.625rem;
  color: rgba(255,255,255,0.4);
}
.ui-card {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  margin: 0.75rem;
  color: #fff;
}
.ui-card-header {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  padding: 1rem;
}
.ui-card-title {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: #fff;
  margin: 0;
}
.ui-card-description {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.5);
  margin: 0;
}
.ui-card-content {
  padding: 1.5rem;
  padding-top: 0;
}
.ui-card-footer {
  display: flex;
  align-items: center;
  padding: 1.5rem;
  padding-top: 0;
}
.ui-textarea {
  width: 100%;
  min-height: 80px;
  resize: vertical;
}
.ui-textarea:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.ui-checkbox {
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid rgba(255,255,255,0.3);
  cursor: pointer;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.ui-checkbox:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.3);
}
.ui-checkbox[data-state="checked"] {
  background: var(--cta);
  border-color: var(--cta);
}
.ui-checkbox[disabled] {
  cursor: not-allowed;
  opacity: 0.5;
}
.ui-checkbox-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000;
}
.btn-base {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  font-size: 0.875rem;
  font-weight: 500;
  border-radius: 6px;
  cursor: pointer;
  outline: none;
  border: none;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-base:focus-visible {
  outline: none;
}
.btn-base:disabled {
  pointer-events: none;
  opacity: 0.5;
}
.btn-default {
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: #fff;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-default:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.25);
}
.btn-default:active {
  transform: scale(0.995);
}
.btn-destructive {
  background: rgba(220,60,60,0.15);
  border: 1px solid rgba(220,60,60,0.3);
  color: rgba(220,60,60,0.9);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-destructive:hover {
  background: rgba(220,60,60,0.25);
  border-color: rgba(220,60,60,0.5);
}
.btn-destructive:active {
  transform: scale(0.995);
}
.btn-outline {
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: #fff;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-outline:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.25);
}
.btn-outline:active {
  transform: scale(0.995);
}
.btn-secondary {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.85);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-secondary:hover {
  background: rgba(255,255,255,0.12);
}
.btn-secondary:active {
  transform: scale(0.995);
}
.btn-ghost-variant {
  background: transparent;
  border: none;
  color: rgba(255,255,255,0.7);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-ghost-variant:hover {
  background: rgba(255,255,255,0.07);
  color: #fff;
}
.btn-link {
  background: transparent;
  border: none;
  color: var(--cta);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.btn-link:hover {
  color: var(--cta-hover);
}
.btn-cta-variant {
  border-radius: 12px;
  background: var(--cta);
  color: #000;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  box-shadow: 0px 4px 16px rgba(90,255,40,0.3);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-cta-variant:hover {
  transform: translateY(-2px);
  box-shadow: 0px 6px 24px rgba(90,255,40,0.4);
}
.btn-cta-variant:active {
  transform: scale(0.995);
}
.btn-sm {
  height: 2.25rem;
  padding: 0 0.75rem;
  font-size: 0.8125rem;
  border-radius: 6px;
}
.btn-lg {
  height: 2.75rem;
  padding: 0 2rem;
  font-size: 1rem;
  border-radius: 8px;
}
.btn-icon {
  height: 2.5rem;
  width: 2.5rem;
  padding: 0;
  border-radius: 6px;
  flex-shrink: 0;
}
.ui-progress {
  position: relative;
  width: 100%;
  height: 1rem;
  overflow: hidden;
  border-radius: 9999px;
  background: rgba(255,255,255,0.08);
}
.ui-progress-indicator {
  height: 100%;
  width: 100%;
  flex: 1;
  transition: transform 0.3s ease;
}
.cal {
  padding: 0.75rem;
}
.cal-months {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (min-width: 640px) {
  .cal-months {
    flex-direction: row;
    gap: 1rem;
  }
}
.cal-month {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.cal-caption {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 0.25rem;
  position: relative;
}
.cal-caption-label {
  font-size: 0.875rem;
  font-weight: 500;
  color: #fff;
}
.cal-nav {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.cal-nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 6px;
  color: rgba(255,255,255,0.5);
  cursor: pointer;
  transition: opacity 150ms ease, background 150ms ease;
}
.cal-nav-btn:hover {
  opacity: 1;
  background: rgba(255,255,255,0.07);
  border: none;
}
.cal-nav-prev {
  position: absolute;
  left: 0.25rem;
}
.cal-nav-next {
  position: absolute;
  right: 0.25rem;
}
.cal-nav-icon {
  width: 1rem;
  height: 1rem;
}
.cal-table {
  width: 100%;
  border-collapse: collapse;
}
.cal-head-row {
  display: flex;
}
.cal-head-cell {
  width: 2.25rem;
  font-size: 0.8rem;
  font-weight: 400;
  color: rgba(255,255,255,0.4);
  text-align: center;
  border-radius: 4px;
}
.cal-row {
  display: flex;
  width: 100%;
  margin-top: 0.5rem;
}
.cal-cell {
  width: 2.25rem;
  height: 2.25rem;
  text-align: center;
  font-size: 0.875rem;
  padding: 0;
  position: relative;
}
.cal-day {
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  font-weight: 400;
  background: transparent;
  border: none;
  color: rgba(255,255,255,0.7);
  cursor: pointer;
  transition: background 150ms ease, color 150ms ease;
}
.cal-day:hover {
  background: rgba(255,255,255,0.07);
  color: #fff;
}
.cal-day-selected {
  background: var(--cta) !important;
  color: #000 !important;
  font-weight: 600;
}
.cal-day-selected:hover {
  background: var(--cta) !important;
  color: #000 !important;
}
.cal-day-today {
  background: rgba(255,255,255,0.08);
  color: #fff;
}
.cal-day-outside {
  color: rgba(255,255,255,0.2);
}
.cal-day-disabled {
  color: rgba(255,255,255,0.15);
  cursor: not-allowed;
}
.cal-day-disabled:hover {
  background: transparent;
}
.cal-day-range-middle {
  background: rgba(90,255,40,0.09);
  border-radius: 0;
}
.cal-day-range-end {
  border-radius: 0 6px 6px 0;
}
.cal-day-hidden {
  visibility: hidden;
}
.cmdk-root {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.cmdk-dialog-content {
  overflow: hidden;
  padding: 0;
}
.cmdk-input-wrapper {
  display: flex;
  align-items: center;
  padding: 0 0.75rem;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.cmdk-input {
  width: 100%;
  padding: 0.75rem 0;
  background: transparent;
  color: #fff;
  outline: none;
  font-size: 1rem;
  border: none;
}
.cmdk-input::placeholder {
  color: rgba(255,255,255,0.4);
}
.cmdk-input:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.cmdk-list {
  max-height: 300px;
  overflow-y: auto;
  overflow-x: hidden;
}
.cmdk-list::-webkit-scrollbar {
  width: 2px;
}
.cmdk-list::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
}
.cmdk-empty {
  padding: 1.5rem;
  text-align: center;
  font-size: 0.875rem;
  color: rgba(255,255,255,0.5);
}
.cmdk-group {
  padding: 0.25rem;
  overflow: hidden;
}
.cmdk-separator {
  border-top: 1px solid rgba(255,255,255,0.06);
  margin: 0.25rem -0.25rem;
}
.cmdk-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.5rem;
  border-radius: 6px;
  cursor: pointer;
  font-size: 0.875rem;
  outline: none;
  user-select: none;
  position: relative;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.cmdk-item:hover {
  background: rgba(255,255,255,0.07);
}
.cmdk-item[data-selected="true"] {
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
  font-variation-settings: 'wght' 500;
}
.cmdk-item[data-disabled="true"] {
  opacity: 0.4;
  pointer-events: none;
}
.cmdk-shortcut {
  margin-left: auto;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  color: rgba(255,255,255,0.35);
}
.ui-avatar {
  position: relative;
  display: flex;
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 9999px;
}
.ui-avatar-image {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
}
.ui-avatar-fallback {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background: rgba(255,255,255,0.08);
}
.ui-label {
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1;
  cursor: default;
}
.ui-label:has(+ input:disabled),
.ui-label:has(+ select:disabled),
.ui-label:has(+ textarea:disabled) {
  cursor: not-allowed;
  opacity: 0.7;
}
.drawer {
  position: fixed;
  background-color: rgba(0,0,0,0.9);
  backdrop-filter: blur(10px);
  box-shadow: 0 0 3px 3px rgba(0,0,0,0.5);
  z-index: 99;
  overflow: auto;
  cursor: pointer;
}
.drawer-left {
  top: 0;
  left: 0;
  height: 100vh;
  width: auto;
  max-width: 90vw;
}
.drawer-right {
  top: 0;
  right: 0;
  height: 100vh;
  width: auto;
  max-width: 90vw;
}
.drawer-bottom {
  bottom: 0;
  left: 0;
  width: 100vw;
  height: auto;
  max-height: 90vh;
}
.drawer.highlight {
  animation: none !important;
}
.drawer-handle {
  position: absolute;
  z-index: 100;
}
.drawer-handle-left {
  top: 0;
  right: 0;
  width: 20px;
  height: 100%;
  cursor: pointer;
}
.drawer-handle-right {
  top: 0;
  left: 0;
  width: 20px;
  height: 100%;
  cursor: pointer;
}
.drawer-handle-bottom {
  top: 0;
  left: 0;
  width: 100%;
  height: 20px;
  cursor: pointer;
}
.mobile .drawer-right {
  max-width: 100vw;
}
.dropdown-container {
  position: relative;
  display: inline-block;
}
.dropdown-container .dropdown-trigger {
  display: block;
  width: 100%;
  height: 100%;
}
.dropdown-container .dropdown-menu {
  position: fixed;
  min-width: 200px;
  z-index: 1001;
  margin-top: 0px;
  padding: 8px 4px 4px 4px;
  display: flex;
  flex-direction: column;
  gap: 1px;
  border-radius: 8px;
  background-color: rgba(0,0,0,0.8);
  border: 1px solid rgba(255,255,255,0.1);
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}
.dropdown-container .dropdown-menu .dropdown-menu-item {
  width: 100%;
  justify-content: flex-start;
  text-align: left;
  margin: 0;
  border-radius: 4px;
  padding: 6px 8px;
  min-height: auto;
  height: auto;
  border: none;
  background: transparent;
  position: relative;
}
.dropdown-container .dropdown-menu .dropdown-menu-item:hover {
  background: rgba(255,255,255,0.1);
}
.dropdown-container .dropdown-menu .dropdown-menu-item .menu-shortcut {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  opacity: 0.8;
  color: rgba(255,255,255,0.8);
  font-weight: 400;
}
.dm-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  z-index: 50;
  min-width: 8rem;
  overflow: hidden;
  padding: 4px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5);
}
.dm-sub-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  z-index: 50;
  min-width: 8rem;
  overflow: hidden;
  padding: 4px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5);
}
.dm-item,
.dm-sub-trigger,
.dm-checkbox-item,
.dm-radio-item {
  position: relative;
  display: flex;
  cursor: default;
  user-select: none;
  align-items: center;
  gap: 0.5rem;
  border-radius: 8px;
  padding: 6px 8px;
  font-size: 0.875rem;
  outline: none;
  color: rgba(255,255,255,0.85);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.dm-item:hover,
.dm-sub-trigger:hover,
.dm-checkbox-item:hover,
.dm-radio-item:hover {
  background: rgba(255,255,255,0.07);
}
.dm-item[data-disabled],
.dm-sub-trigger[data-disabled],
.dm-checkbox-item[data-disabled],
.dm-radio-item[data-disabled] {
  pointer-events: none;
  opacity: 0.5;
}
.dm-item svg,
.dm-sub-trigger svg,
.dm-checkbox-item svg,
.dm-radio-item svg {
  pointer-events: none;
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.dm-sub-trigger[data-state="open"] {
  background: rgba(255,255,255,0.07);
}
.dm-checkbox-item {
  padding-left: 2rem;
  padding-right: 0.5rem;
}
.dm-radio-item {
  padding-left: 2rem;
  padding-right: 0.5rem;
}
.dm-item-indicator {
  position: absolute;
  left: 0.5rem;
  display: flex;
  width: 0.875rem;
  height: 0.875rem;
  align-items: center;
  justify-content: center;
}
.dm-check-icon {
  width: 1rem;
  height: 1rem;
}
.dm-radio-dot {
  width: 0.5rem;
  height: 0.5rem;
  fill: currentColor;
}
.dm-label {
  padding: 6px 8px;
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(255,255,255,0.5);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.dm-separator {
  margin: 4px -4px;
  height: 1px;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.dm-shortcut {
  margin-left: auto;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  opacity: 0.6;
  color: rgba(255,255,255,0.7);
}
.dm-inset {
  padding-left: 2rem;
}
.dm-chevron {
  margin-left: auto;
  width: 1rem;
  height: 1rem;
}
.sheet-overlay {
  position: fixed;
  inset: 0;
  z-index: 999;
}
.sheet-content {
  position: fixed;
  z-index: 1000;
  background: rgba(0,0,0,0.92);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 16px 48px rgba(0,0,0,0.7);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sheet-content.sheet-content-top {
  inset-x: 0;
  top: 0;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.sheet-content.sheet-content-bottom {
  inset-x: 0;
  bottom: 0;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.sheet-content.sheet-content-left {
  inset-y: 0;
  left: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 75%;
  max-width: 24rem;
  border-right: 1px solid rgba(255,255,255,0.1);
}
.sheet-content.sheet-content-right {
  inset-y: 0;
  right: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 75%;
  max-width: 24rem;
  border-left: 1px solid rgba(255,255,255,0.1);
}
.sheet-close {
  position: absolute;
  right: 1rem;
  top: 1rem;
  background: transparent;
  border: none;
  padding: 0;
  opacity: 0.6;
  cursor: pointer;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 150ms ease;
  color: #fff;
}
.sheet-close:hover {
  opacity: 1;
}
.sheet-close:focus {
  outline: none;
}
.sheet-header {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.sheet-footer {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-top: auto;
}
.sheet-title {
  font-size: 1.125rem;
  font-weight: 600;
  color: #fff;
}
.sheet-description {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.5);
}
.dialog-overlay {
  position: fixed;
  inset: 0;
  z-index: 1001;
}
.dialog-content {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 1002;
  display: grid;
  width: 100%;
  max-width: 32rem;
  transform: translate(-50%, -50%);
  gap: 1rem;
  padding: 1.5rem;
  border-radius: 14px;
  box-shadow: 0 16px 48px rgba(0,0,0,0.6);
  color: #fff;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.dialog-close {
  position: absolute;
  right: 1rem;
  top: 1rem;
  background: transparent;
  border: none;
  padding: 0;
  opacity: 0.6;
  cursor: pointer;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 150ms ease;
}
.dialog-close:hover {
  opacity: 1;
}
.dialog-close:focus {
  outline: none;
}
.dialog-close-icon {
  width: 1rem;
  height: 1rem;
}
.dialog-header {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.dialog-footer {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.dialog-title {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: #fff;
}
.dialog-description {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.5);
}
.carousel {
  position: relative;
}
.carousel-viewport {
  overflow: hidden;
}
.carousel-track {
  display: flex;
  margin-left: -1rem;
}
.carousel-track--vertical {
  flex-direction: column;
  margin-left: 0;
  margin-top: -1rem;
}
.carousel-item {
  min-width: 0;
  flex-shrink: 0;
  flex-grow: 0;
  flex-basis: 100%;
  padding-left: 1rem;
}
.carousel-item--vertical {
  padding-left: 0;
  padding-top: 1rem;
}
.carousel-btn {
  position: absolute;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: #fff;
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.carousel-btn:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.25);
}
.carousel-btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.carousel-btn--prev {
  left: -3rem;
  top: 50%;
  transform: translateY(-50%);
}
.carousel-btn--prev-vertical {
  top: -3rem;
  left: 50%;
  transform: translateX(-50%) rotate(90deg);
}
.carousel-btn--next {
  right: -3rem;
  top: 50%;
  transform: translateY(-50%);
}
.carousel-btn--next-vertical {
  bottom: -3rem;
  left: 50%;
  transform: translateX(-50%) rotate(90deg);
}
.carousel-btn-icon {
  width: 1rem;
  height: 1rem;
}
.alert-dialog-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100001;
  background: rgba(0,0,0,0.8);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.alert-dialog-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100002;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  width: 32rem;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.alert-dialog-header {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.alert-dialog-footer {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.alert-dialog-title {
  font-size: 1.125rem;
  font-weight: 600;
}
.alert-dialog-description {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.5);
}
.ui-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 9999px;
  border: 1px solid rgba(255,255,255,0.15);
  padding: 0.25rem 0.6rem;
  font-size: 0.75rem;
  font-weight: 600;
  transition: all 150ms ease;
}
.ui-badge-default {
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.7);
}
.ui-badge-secondary {
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.7);
}
.ui-badge-destructive {
  background: rgba(220,60,60,0.15);
  border-color: rgba(220,60,60,0.3);
  color: rgba(220,60,60,0.9);
}
.ui-badge-outline {
  background: transparent;
  color: rgba(255,255,255,0.7);
}
.ui-separator {
  flex-shrink: 0;
}
.ui-separator-horizontal {
  height: 1px;
  width: 100%;
  background: rgba(255,255,255,0.09);
}
.ui-separator-vertical {
  width: 1px;
  height: 100%;
  background: rgba(255,255,255,0.09);
}
.chart-container {
  display: flex;
  aspect-ratio: 16/9;
  justify-content: center;
  font-size: 0.75rem;
}
.chart-container .recharts-cartesian-axis-tick text {
  fill: rgba(255,255,255,0.4);
}
.chart-container .recharts-cartesian-grid line[stroke='#ccc'] {
  stroke: rgba(255,255,255,0.08);
}
.chart-container .recharts-curve.recharts-tooltip-cursor {
  stroke: rgba(255,255,255,0.08);
}
.chart-container .recharts-dot[stroke='#fff'] {
  stroke: transparent;
}
.chart-container .recharts-layer {
  outline: none;
}
.chart-container .recharts-polar-grid [stroke='#ccc'] {
  stroke: rgba(255,255,255,0.08);
}
.chart-container .recharts-radial-bar-background-sector {
  fill: rgba(255,255,255,0.04);
}
.chart-container .recharts-rectangle.recharts-tooltip-cursor {
  fill: rgba(255,255,255,0.04);
}
.chart-container .recharts-reference-line [stroke='#ccc'] {
  stroke: rgba(255,255,255,0.08);
}
.chart-container .recharts-sector[stroke='#fff'] {
  stroke: transparent;
}
.chart-container .recharts-sector {
  outline: none;
}
.chart-container .recharts-surface {
  outline: none;
}
.chart-tooltip {
  display: grid;
  min-width: 8rem;
  align-items: start;
  gap: 0.375rem;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(0,0,0,0.75);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  padding: 0.375rem 0.625rem;
  font-size: 0.75rem;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5);
}
.chart-tooltip-label {
  font-weight: 500;
  color: #fff;
}
.chart-tooltip-items {
  display: grid;
  gap: 0.375rem;
}
.chart-tooltip-item {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.5rem;
}
.chart-tooltip-item--dot {
  align-items: center;
}
.chart-indicator {
  flex-shrink: 0;
  border-radius: 2px;
  border: 1px solid var(--color-border);
  background: var(--color-bg);
}
.chart-indicator--dot {
  width: 0.625rem;
  height: 0.625rem;
}
.chart-indicator--line {
  width: 0.25rem;
}
.chart-indicator--dashed {
  width: 0;
  border-width: 1.5px;
  border-style: dashed;
  background: transparent;
}
.chart-indicator--nested {
  margin: 0.125rem 0;
}
.chart-tooltip-content {
  display: flex;
  flex: 1;
  justify-content: space-between;
  line-height: 1;
}
.chart-tooltip-content--nest {
  align-items: flex-end;
}
.chart-tooltip-content--center {
  align-items: center;
}
.chart-tooltip-meta {
  display: grid;
  gap: 0.375rem;
}
.chart-tooltip-name {
  color: rgba(255,255,255,0.4);
}
.chart-tooltip-value {
  font-family: monospace;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  color: #fff;
}
.chart-legend {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
.chart-legend--top {
  padding-bottom: 0.75rem;
}
.chart-legend--bottom {
  padding-top: 0.75rem;
}
.chart-legend-item {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  color: rgba(255,255,255,0.7);
  font-size: 0.75rem;
}
.chart-legend-swatch {
  width: 0.5rem;
  height: 0.5rem;
  flex-shrink: 0;
  border-radius: 2px;
}
.app-wrapper {
  position: absolute;
  display: flex;
  flex-direction: column;
  transition: opacity 100ms;
  opacity: 1;
  pointer-events: none;
  z-index: 100;
}
.app-wrapper .app-container {
  display: flex;
  flex-direction: column;
  border-radius: 0.5rem;
  overflow: hidden;
  border: 1px solid #3a3a3a;
  height: 100%;
  box-sizing: border-box;
  pointer-events: none;
}
.app-wrapper .app-container.terminal-mode {
  background: #000;
}
.app-wrapper .app-container.browser-mode {
  background: transparent;
}
.app-wrapper .browser-chrome {
  display: flex;
  flex-direction: column;
  background: #2a2a2a;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  pointer-events: auto;
}
.app-wrapper .browser-chrome .browser-chrome-top {
  display: flex;
  align-items: center;
  padding: 0.5rem;
  gap: 0.25rem;
}
.app-wrapper .browser-controls {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.app-wrapper .browser-dots {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0 0.5rem;
}
.app-wrapper .browser-dots span {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
}
.app-wrapper .browser-dots span.red {
  background: #ef4444;
}
.app-wrapper .browser-dots span.yellow {
  background: #facc15;
}
.app-wrapper .browser-dots span.green {
  background: #22c55e;
}
.app-wrapper .browser-button {
  height: 2rem;
  width: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  cursor: pointer;
  transition: color 150ms;
}
.app-wrapper .browser-button:hover:not(.disabled) {
  color: #aaa;
}
.app-wrapper .browser-button.disabled {
  color: #333;
  cursor: not-allowed;
  opacity: 0.5;
}
.app-wrapper .browser-button svg {
  width: 1rem;
  height: 1rem;
}
.app-wrapper .browser-url-bar {
  flex: 1;
  margin: 0 0.5rem;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.app-wrapper .browser-url {
  display: flex;
  align-items: center;
  background: #1a1a1a;
  border-radius: 9999px;
  padding: 0.375rem 1rem;
  font-size: 0.875rem;
  width: 100%;
}
.app-wrapper .browser-url svg {
  width: 0.75rem;
  height: 0.75rem;
  color: #888;
  margin-right: 0.5rem;
  flex-shrink: 0;
}
.app-wrapper .browser-url span {
  width: 100%;
  color: #ddd;
  opacity: 0.8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  outline: none;
  cursor: text;
}
.app-wrapper .page-tabs {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0 0.5rem 0.5rem 0.5rem;
  overflow-x: auto;
}
.app-wrapper .page-tabs::-webkit-scrollbar {
  height: 0;
}
.app-wrapper .page-tab {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  background: rgba(255,255,255,0.05);
  border-radius: 0.375rem;
  font-size: 0.75rem;
  cursor: pointer;
  transition: background 150ms;
  white-space: nowrap;
  flex-shrink: 0;
  color: #888;
}
.app-wrapper .page-tab:hover {
  background: rgba(255,255,255,0.1);
  color: #aaa;
}
.app-wrapper .page-tab.active {
  background: rgba(255,255,255,0.15);
  color: #ddd;
}
.app-wrapper .page-tab .page-tab-title {
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.app-wrapper .recording-button {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  cursor: pointer;
  transition: background 150ms, border 150ms;
  border: 1px solid transparent;
}
.app-wrapper .recording-button:not(.active) {
  background: rgba(102,102,102,0.1);
  border: 1px solid rgba(102,102,102,0.3);
  color: #666;
}
.app-wrapper .recording-button:not(.active):hover {
  background: rgba(102,102,102,0.15);
  color: #aaa;
}
.app-wrapper .recording-button.active {
  background: rgba(239,68,68,0.1);
  border: 1px solid rgba(239,68,68,0.3);
  color: #ef4444;
}
.app-wrapper .recording-button.active:hover {
  background: rgba(239,68,68,0.15);
}
.app-wrapper .recording-button .recording-dot {
  width: 0.5rem;
  height: 0.5rem;
  background: #ef4444;
  border-radius: 50%;
  animation: pulse 1.5s ease-in-out infinite;
}
.app-wrapper .recording-button .recording-text {
  font-weight: 500;
}
.app-wrapper .browser-progress-bar {
  width: 100%;
  height: 4px;
  background: rgba(255,255,255,0.1);
  overflow: visible;
  position: relative;
  cursor: pointer;
  pointer-events: auto;
}
.app-wrapper .browser-progress-bar .bar {
  height: 100%;
  transition: width 0.3s ease, background 0.3s ease, background-color 0.3s ease;
}
.app-wrapper .browser-progress-bar .cluster {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  pointer-events: auto;
  z-index: 1000;
}
.app-wrapper .browser-progress-bar .cluster .progress-marker {
  position: relative;
  left: 0;
  top: 0;
  transform: none;
}
.app-wrapper .browser-progress-bar .progress-marker {
  position: absolute;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 1000;
  transform: translate(-50%, -50%);
  pointer-events: auto;
  display: none;
}
.app-wrapper .browser-progress-bar .progress-marker-tooltip {
  position: absolute;
  bottom: 100%;
  left: 0;
  transform: translateX(-50%);
  background: #1a1a1a;
  color: #fff;
  padding: 0.5rem 0.75rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  white-space: nowrap;
  margin-bottom: 0.5rem;
  z-index: 100;
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.5);
}
.app-wrapper .browser-progress-bar .progress-marker-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-top-color: #1a1a1a;
}
.app-wrapper .browser-content {
  flex: 1;
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
  background: transparent;
  position: relative;
  overflow: hidden;
  display: flex;
  pointer-events: none;
}
.app-wrapper .browser-content .test-replay {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.app-wrapper .browser-content :global(.rr-player) {
  will-change: transform;
}
.app-wrapper .browser-content :global(.rr-player iframe) {
  pointer-events: auto;
}
.app-wrapper .welcome-screen {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-family: 'SF NS Mono', 'Monaco', 'Cascadia Code', 'Roboto Mono', monospace;
  pointer-events: auto;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.app-wrapper .welcome-message {
  text-align: center;
  color: #d4d4d4;
  font-size: 14px;
}
.app-wrapper .welcome-message p {
  margin-bottom: 1.5rem;
  opacity: 0.8;
}
.sidebar {
  position: fixed;
  left: 12px;
  top: 12px;
  bottom: 12px;
  width: 52px;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  overflow: visible;
  transition: width 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar:hover {
  width: 220px;
}
.sidebar:hover .sidebar-logo-text,
.sidebar:hover .sidebar-nav-label,
.sidebar:hover .sidebar-shortcut {
  opacity: 1;
  max-width: 160px;
}
.sidebar-logo-text,
.sidebar-nav-label,
.sidebar-shortcut {
  opacity: 0;
  max-width: 0;
  overflow: hidden;
  white-space: nowrap;
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1), max-width 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-header {
  display: flex;
  align-items: center;
  padding: 14px 0 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  flex-shrink: 0;
  min-height: 52px;
}
.sidebar-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 17px;
  overflow: hidden;
  width: 100%;
}
.sidebar-logo-mark {
  width: 20px;
  height: 20px;
  min-width: 20px;
  border-radius: 5px;
  background: var(--cta);
  color: #000;
  font-weight: 800;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.sidebar-logo-text {
  font-size: 0.82rem;
  font-weight: 600;
  color: rgba(255,255,255,0.85);
  letter-spacing: normal;
}
.sidebar-org-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 17px;
  width: 100%;
  cursor: pointer;
  border-radius: 8px;
  transition: background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-org-btn:hover {
  background: rgba(255,255,255,0.07);
}
.sidebar-org-btn .sidebar-logo-text {
  overflow: hidden;
  text-overflow: ellipsis;
}
.sidebar-nav {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 6px 6px 0 6px;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.sidebar-nav::-webkit-scrollbar {
  width: 2px;
}
.sidebar-nav::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
}
.sidebar .sidebar-nav-item {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 11px;
  padding: 9px 17px;
  border-radius: 8px;
  cursor: pointer;
  border: none;
  background: transparent;
  color: rgba(255,255,255,0.55);
  font-size: 0.85rem;
  font-weight: 400;
  text-align: left;
  max-width: none;
  margin: 0;
  white-space: nowrap;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1), background 200ms cubic-bezier(0.4, 0, 0.2, 1), border-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar .sidebar-nav-item:hover,
.sidebar .sidebar-nav-item:focus,
.sidebar .sidebar-nav-item:focus-visible,
.sidebar .sidebar-nav-item:active {
  border: none;
  outline: none;
  transform: none;
}
.sidebar .sidebar-nav-item:hover {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.85);
}
.sidebar .sidebar-nav-item::before {
  display: none;
}
.sidebar .sidebar-nav-item.active {
  border: none;
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
}
.sidebar .sidebar-nav-item.active .sidebar-nav-icon {
  color: var(--cta);
}
.sidebar .sidebar-nav-item.sidebar-action-item {
  color: rgba(255,255,255,0.4);
}
.sidebar .sidebar-nav-item.sidebar-action-item .sidebar-nav-icon {
  color: rgba(255,255,255,0.35);
}
.sidebar-nav-icon {
  flex-shrink: 0;
  color: inherit;
  min-width: 18px;
}
.sidebar-test-section {
  padding: 0 6px;
  display: flex;
  flex-direction: column;
  gap: 1px;
  flex-shrink: 0;
}
.sidebar-divider {
  height: 1px;
  background: rgba(255,255,255,0.06);
  margin: 6px 6px;
}
.sidebar-footer {
  padding: 6px 6px 10px 6px;
  border-top: 1px solid rgba(255,255,255,0.06);
  display: flex;
  flex-direction: column;
  gap: 1px;
  flex-shrink: 0;
}
.sidebar-shortcut {
  flex-shrink: 0;
  font-size: 0.68rem;
  font-family: 'SF NS Mono', monospace;
  color: rgba(255,255,255,0.2);
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 4px;
  padding: 1px 5px;
  margin-left: auto;
}
.sidebar-user-wrap {
  position: relative;
}
.sidebar .sidebar-user {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px 17px;
  color: rgba(255,255,255,0.3);
  font-size: 0.8rem;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  background: transparent;
  border: none;
  margin: 0;
  cursor: pointer;
  border-radius: 8px;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1), background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar .sidebar-user::before {
  display: none;
}
.sidebar .sidebar-user:hover,
.sidebar .sidebar-user.open {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.65);
  border: none;
}
.sidebar .sidebar-user .sidebar-user-chevron {
  margin-left: auto;
  flex-shrink: 0;
  opacity: 0;
  color: rgba(255,255,255,0.3);
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1), transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotate(180deg);
}
.sidebar .sidebar-user .sidebar-user-chevron.up {
  transform: rotate(0deg);
}
.sidebar:hover .sidebar-user-chevron {
  opacity: 1;
}
.sidebar-user-menu {
  position: absolute;
  bottom: calc(100% + 6px);
  left: 6px;
  right: 6px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  background-color: rgba(20,20,22,0.98);
  padding: 4px;
  z-index: 100;
}
.sidebar-user-menu-label {
  font-size: 0.68rem;
  color: rgba(255,255,255,0.25);
  padding: 5px 10px 3px 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.sidebar-user-menu-divider {
  height: 1px;
  background: rgba(255,255,255,0.07);
  margin: 4px 6px;
}
.sidebar-user-menu .sidebar-user-menu-item {
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  padding: 9px 11px;
  border-radius: 8px;
  border: none;
  margin: 0;
  background: transparent;
  color: rgba(255,255,255,0.55);
  font-size: 0.85rem;
  font-weight: 400;
  cursor: pointer;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1), background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-user-menu .sidebar-user-menu-item:hover {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.85);
  border: none;
}
.sidebar-user-menu .sidebar-user-menu-item.active {
  background: rgba(90,255,40,0.09);
  color: rgba(255,255,255,0.95);
  font-weight: 500;
}
.sidebar-user-menu .sidebar-user-menu-item::before {
  display: none;
}
.sidebar-user-menu .sidebar-user-menu-item:focus,
.sidebar-user-menu .sidebar-user-menu-item:focus-visible,
.sidebar-user-menu .sidebar-user-menu-item:active {
  outline: none;
  border: none;
  transform: none;
}
.sidebar-mobile {
  position: fixed;
  bottom: 12px;
  left: 12px;
  right: 12px;
  height: 56px;
  z-index: 1000;
  display: flex;
  flex-direction: row;
  align-items: center;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45);
  overflow: hidden;
}
.sidebar-mobile .sidebar-nav {
  flex: 1;
  flex-direction: row;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 4px 6px;
  gap: 2px;
  height: 100%;
}
.sidebar-mobile .sidebar-nav::-webkit-scrollbar {
  display: none;
}
.sidebar-mobile .sidebar-nav-label {
  display: none;
}
.sidebar-mobile .sidebar .sidebar-nav-item,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item {
  flex-direction: column;
  gap: 2px;
  padding: 6px 10px;
  height: 100%;
  border-radius: 8px;
  border: none;
  border-bottom: 2px solid transparent;
  border-left: none;
}
.sidebar-mobile .sidebar .sidebar-nav-item:hover,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item:hover {
  border: none;
  border-bottom: 2px solid transparent;
}
.sidebar-mobile .sidebar .sidebar-nav-item.active,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item.active {
  border: none;
  border-bottom: 2px solid var(--cta);
  background: rgba(90,255,40,0.09);
}
.sidebar-mobile .sidebar .sidebar-nav-item.active .sidebar-nav-icon,
.sidebar-mobile .sidebar-mobile .sidebar-nav-item.active .sidebar-nav-icon {
  color: var(--cta);
}
.mobile .sidebar {
  display: none;
}
[data-radix-portal] [data-radix-overlay] {
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  background: rgba(0,0,0,0.8);
  z-index: 100001 !important;
}
[data-radix-dialog-content].achievement-modal-wrapper {
  z-index: 100002 !important;
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  max-width: none !important;
  max-height: none !important;
  width: auto !important;
  display: block !important;
  gap: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  animation: am-fade-in 300ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
  outline: none;
  border: none;
  background: none;
  padding: 0;
}
[data-radix-dialog-content].achievement-modal-wrapper button {
  z-index: 100010 !important;
  outline: none;
  position: relative;
}
[data-radix-dialog-content].achievement-modal-wrapper .dialog-close {
  display: none !important;
}
[data-radix-portal]:not(:last-of-type) [data-radix-dialog-content].achievement-modal-wrapper {
  display: none !important;
}
.achievement-modal {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  width: 380px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 2.5rem 2rem 2rem;
  text-align: center;
}
.achievement-modal__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  width: 100%;
}
.achievement-modal__label {
  font-size: 0.75rem;
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.12em;
  color: rgba(255,255,255,0.35);
}
.achievement-modal__icon-wrap {
  width: 96px;
  height: 96px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  animation: am-icon-pop 400ms cubic-bezier(0.4, 0, 0.2, 1) 150ms both;
}
.achievement-modal__icon-wrap svg {
  width: 52px;
  height: 52px;
  color: #fff;
}
.achievement-modal__title {
  font-size: 1.375rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
  position: relative;
  display: inline-block;
}
.achievement-modal__title::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--cta);
  border-radius: 2px;
  animation: am-underline 600ms cubic-bezier(0.4, 0, 0.2, 1) 300ms forwards;
}
.achievement-modal__desc {
  font-size: 1rem;
  color: rgba(255,255,255,0.5);
  line-height: 1.5;
  margin: 0;
}
.achievement-modal__close {
  width: 100%;
  padding: 1rem 2rem 0;
  border-top: 1px solid rgba(255,255,255,0.06);
  margin-top: 0.5rem;
}
.achievement-modal__close button {
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: #fff;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  padding: 0.5rem 2rem;
  font-size: 1rem;
  cursor: pointer;
}
.achievement-modal__close button:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.25);
}
.achievement-modal__close button:active {
  transform: scale(0.995);
}
@-moz-keyframes am-fade-in {
  from {
    opacity: 0;
    transform: translate(-50%, -48%) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@-webkit-keyframes am-fade-in {
  from {
    opacity: 0;
    transform: translate(-50%, -48%) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@-o-keyframes am-fade-in {
  from {
    opacity: 0;
    transform: translate(-50%, -48%) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@keyframes am-fade-in {
  from {
    opacity: 0;
    transform: translate(-50%, -48%) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@-moz-keyframes am-icon-pop {
  0% {
    transform: scale(0.7);
    opacity: 0;
  }
  70% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@-webkit-keyframes am-icon-pop {
  0% {
    transform: scale(0.7);
    opacity: 0;
  }
  70% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@-o-keyframes am-icon-pop {
  0% {
    transform: scale(0.7);
    opacity: 0;
  }
  70% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes am-icon-pop {
  0% {
    transform: scale(0.7);
    opacity: 0;
  }
  70% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@-moz-keyframes am-underline {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
@-webkit-keyframes am-underline {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
@-o-keyframes am-underline {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
@keyframes am-underline {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
.Footer {
  width: 100vw;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.Footer .footer-inner {
  display: flex;
  flex-direction: row;
  gap: 6rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 2rem 3rem;
}
.Footer .footer-brand {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 200px;
  max-width: 260px;
  flex-shrink: 0;
}
.Footer .footer-logo a {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 700;
  font-variation-settings: 'wght' 700;
  color: #fff;
  text-decoration: none;
  letter-spacing: -0.01em;
}
.Footer .footer-logo a .text-cta {
  color: var(--cta);
}
.Footer .footer-tagline {
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.45);
  line-height: 1.6;
  margin: 0;
}
.Footer .footer-socials {
  display: flex;
  flex-direction: row;
  gap: 0.75rem;
  margin-top: 0.25rem;
}
.Footer .footer-socials .social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.5);
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.Footer .footer-socials .social-link:hover {
  color: #fff;
  border-color: rgba(255,255,255,0.25);
  background: rgba(255,255,255,0.05);
}
.Footer .footer-columns {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 3rem;
  flex: 1;
}
.Footer .LinksColumn {
  display: flex;
  flex-direction: column;
  min-width: 120px;
}
.Footer .LinksColumn .LinksHeader {
  font-size: 0.75rem;
  line-height: 1.4;
  font-weight: 600;
  font-variation-settings: 'wght' 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  margin-bottom: 1rem;
}
.Footer .LinksColumn .Links {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
.Footer .LinksColumn .Links a {
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(255,255,255,0.7);
  text-decoration: none;
  padding: 0.35rem 0;
  transition: all 150ms ease;
}
.Footer .LinksColumn .Links a:hover {
  color: #fff;
}
.Footer .footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.06);
  max-width: 1200px;
  margin: 0 auto;
  padding: 1.25rem 2rem;
  font-size: 0.75rem;
  line-height: 1.4;
  color: rgba(255,255,255,0.3);
}
@media (max-width: 768px) {
  .Footer .footer-inner {
    flex-direction: column;
    gap: 2.5rem;
    padding: 3rem 1.5rem 2rem;
  }
  .Footer .footer-brand {
    max-width: 100%;
  }
  .Footer .footer-columns {
    gap: 2rem;
  }
  .Footer .footer-bottom {
    padding: 1rem 1.5rem;
  }
}
.aiChatBot {
  opacity: 0;
  position: fixed;
  display: flex;
  flex-direction: column;
  z-index: 889;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.aiChatBot.hidden {
  pointer-events: none;
  opacity: 0;
}
.aiChatBot.frozen {
  backdrop-filter: blur(8px);
  box-shadow: 0px 10px 15px 10px rgba(0,0,0,0.15);
  background-color: rgba(0,0,0,0.5) !important;
  transition: backdrop-filter 1s ease-in-out;
}
.aiChatBot.fullscreen {
  opacity: 1;
  width: 100%;
  height: 100%;
}
.aiChatBot.fullscreen .chat-messages {
  padding-top: 60px;
}
.aiChatBot.inline {
  opacity: 1;
  position: relative;
  width: 100%;
  height: auto;
  overflow: visible;
  background-color: transparent !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}
.aiChatBot.inline .chat-header {
  display: none;
}
.aiChatBot.inline .chat-messages {
  height: auto;
  overflow-y: visible;
  padding-top: 0;
  padding-bottom: 1rem;
}
.aiChatBot.inline .chat-message.user {
  width: auto;
  max-width: 85%;
  align-self: flex-end;
  background-color: rgba(80,80,100,0.25);
  padding: 10px 14px;
}
.aiChatBot.inline .msg-phase .msg-phase-text {
  font-size: 0.95em;
}
.aiChatBot.right-quarter {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  opacity: 1;
  width: 30vw;
  position: fixed;
  right: 12px;
  top: 12px;
  bottom: 12px;
}
.aiChatBot.half-screen {
  width: 50%;
  height: 90%;
  position: fixed;
  right: 20px;
  bottom: 20px;
  border-radius: 12px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.3);
  z-index: 1000;
}
.aiChatBot.minimized {
  width: 300px;
  height: 40px;
  position: fixed;
  right: 20px;
  bottom: 0;
  border-radius: 12px 12px 0 0;
  box-shadow: 0 -2px 10px rgba(0,0,0,0.2);
  z-index: 1000;
  background: #000;
}
.aiChatBot.minimized .minimized-indicator {
  color: #fff;
  font-weight: 500;
  font-size: 14px;
  text-align: center;
  line-height: 40px;
  width: 100%;
}
.aiChatBot .chat-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background-color: rgba(0,0,0,0.3);
  border-bottom: 1px solid rgba(255,255,255,0.1);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
}
.aiChatBot .chat-header .chat-title {
  color: #fff;
  font-weight: 600;
  font-size: 14px;
}
.aiChatBot .chat-header .chat-toggle-size {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.2);
  color: #fff;
  padding: 4px 8px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 16px;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.aiChatBot .chat-header .chat-toggle-size:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.3);
}
.aiChatBot .chat-messages {
  user-select: text;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
  padding-top: 60px;
  overflow-y: auto;
  overflow-x: hidden;
  padding-bottom: 11rem;
  height: 100%;
}
.aiChatBot .chat-message {
  padding: 8px 12px;
  border-radius: 8px;
  max-width: 100%;
  width: 100%;
  user-select: text;
}
.aiChatBot .chat-message.CommandNotification {
  padding: 0;
}
.aiChatBot .chat-message.user {
  align-self: flex-end;
  border-left: 2px solid var(--cta);
  border-radius: 0;
  background-color: rgba(0,0,0,0.251);
  color: #fff;
  white-space: break-spaces;
  transition: border-color 0.3s;
}
.aiChatBot .chat-message.user.pending {
  border-left-color: #666;
}
.aiChatBot .chat-message.user.processing {
  border-left-color: #999;
}
.aiChatBot .chat-message.user.processed {
  border-left-color: #0f0;
}
.aiChatBot .chat-message.user .typing-indicator {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.aiChatBot .chat-message .question-buttons {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.aiChatBot .chat-message.ai {
  width: 100%;
  align-self: flex-start;
  color: #fff;
}
.aiChatBot .chat-message.ai div:not(.status-container) {
  white-space: pre-wrap;
}
.aiChatBot .chat-message.ai.Status {
  background-color: transparent;
  padding: 0;
}
.aiChatBot .chat-message.ai.Status .status-container {
  width: 100%;
}
.aiChatBot .chat-input {
  position: static;
  z-index: 10;
  display: flex;
  padding: 10px;
  gap: 10px;
  bottom: 0;
  width: 100%;
  background: #fff;
}
.fullscreen .aiChatBot .chat-input {
  position: fixed;
}
.half-screen .aiChatBot .chat-input {
  border-radius: 0 0 12px 12px;
}
.aiChatBot .chat-input textarea.agent-listening {
  border: 2px solid rgba(0,255,0,0.8) !important;
  box-shadow: 0 0 8px rgba(0,255,0,0.3) !important;
}
.aiChatBot .chat-input textarea.agent-not-listening {
  border: 2px solid #f00 !important;
}
.aiChatBot .inProgress {
  box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  animation: shadowGradient 2s infinite;
}
@-moz-keyframes shadowGradient {
  0% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
  50% {
    box-shadow: 0 0 20px 0 #0f0;
  }
  100% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
}
@-webkit-keyframes shadowGradient {
  0% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
  50% {
    box-shadow: 0 0 20px 0 #0f0;
  }
  100% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
}
@-o-keyframes shadowGradient {
  0% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
  50% {
    box-shadow: 0 0 20px 0 #0f0;
  }
  100% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
}
@keyframes shadowGradient {
  0% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
  50% {
    box-shadow: 0 0 20px 0 #0f0;
  }
  100% {
    box-shadow: 0 0 10px 0 rgba(0,255,0,0.5);
  }
}
.user-personas {
  margin: 1rem 0;
}
.user-personas .personas-summary {
  margin-bottom: 1.5rem;
  padding: 1rem;
  border-radius: 8px;
}
.user-personas .personas-summary p {
  color: #fff;
  font-size: 17px;
  line-height: 1.6;
  margin: 0;
  font-weight: 500;
}
.user-personas .personas-grid {
  display: grid;
  gap: 1.5rem;
}
.user-personas .persona-card {
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 12px;
  padding: 1.5rem;
}
.user-personas .persona-card .persona-header {
  margin-bottom: 1.5rem;
}
.user-personas .persona-card .persona-header h3 {
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  margin: 0 0 0.5rem 0;
}
.user-personas .persona-card .persona-header .persona-subtitle {
  color: rgba(255,255,255,0.85);
  font-size: 16px;
  font-weight: 500;
}
.user-personas .persona-card .persona-background {
  margin-bottom: 1rem;
}
.user-personas .persona-card .persona-background p {
  color: rgba(255,255,255,0.8);
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
  font-style: italic;
}
.user-personas .persona-card .persona-quote {
  margin-bottom: 1rem;
}
.user-personas .persona-card .persona-quote blockquote {
  border-left: 4px solid #5aff28;
  padding-left: 1rem;
  margin: 0;
  font-style: italic;
  color: #fff;
  font-size: 17px;
  line-height: 1.5;
  font-weight: 500;
}
.user-personas .persona-card .persona-bad-habit {
  margin-bottom: 1.5rem;
  padding: 0.75rem 1rem;
  background: rgba(255,165,0,0.1);
  border-left: 3px solid rgba(255,165,0,0.6);
  border-radius: 4px;
  color: rgba(255,255,255,0.85);
  font-size: 15px;
  line-height: 1.5;
}
.user-personas .persona-card .persona-bad-habit strong {
  color: rgba(255,165,0,0.9);
  font-weight: 600;
  margin-right: 0.5rem;
}
.user-personas .persona-card .persona-details {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.user-personas .persona-card .persona-details h4 {
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 0.5rem 0;
}
.user-personas .persona-card .persona-details ul {
  margin: 0;
  padding-left: 1.2rem;
}
.user-personas .persona-card .persona-details ul li {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 0.3rem;
  font-weight: 400;
}
.user-personas .persona-card .persona-details .tech-level {
  display: flex;
  gap: 1rem;
  font-size: 16px;
}
.user-personas .persona-card .persona-details .tech-level .label {
  color: #fff;
  font-weight: 600;
}
.user-personas .persona-card .persona-details .tech-level .value {
  color: rgba(255,255,255,0.9);
  font-weight: 400;
}
.user-personas .persona-card .persona-details .channel-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.user-personas .persona-card .persona-details .channel-badges .channel-badge {
  background: rgba(90,255,40,0.3);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  padding: 0.4rem 1rem;
  border-radius: 16px;
  border: 1px solid rgba(90,255,40,0.5);
}
.user-personas .persona-card .persona-testing-section {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255,255,255,0.15);
}
.user-personas .persona-card .persona-testing-section h4 {
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 0.75rem 0;
}
.user-personas .persona-card .persona-testing-section p {
  color: rgba(255,255,255,0.9);
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
}
.user-personas .persona-card .persona-testing-section ul {
  margin: 0;
  padding-left: 1.2rem;
}
.user-personas .persona-card .persona-testing-section ul li {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 0.3rem;
  font-weight: 400;
}
.user-personas .persona-card .persona-testing-section .credentials-grid {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.user-personas .persona-card .persona-testing-section .credential-item {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}
.user-personas .persona-card .persona-testing-section .credential-item .label {
  color: rgba(255,255,255,0.7);
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.user-personas .persona-card .persona-testing-section .credential-item .value-with-copy {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.user-personas .persona-card .persona-testing-section .credential-item .value-with-copy code {
  background: rgba(90,255,40,0.15);
  color: #5aff28;
  padding: 0.5rem 0.75rem;
  border-radius: 6px;
  font-family: 'Monaco', 'Menlo', 'Courier New', monospace;
  font-size: 14px;
  border: 1px solid rgba(90,255,40,0.3);
  flex: 1;
}
.user-personas .persona-card .persona-testing-section .credential-item .value-with-copy button {
  flex-shrink: 0;
}
.interactive-elements-accordion {
  margin-top: 1rem;
}
.interactive-elements-accordion .element-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0.5rem 0;
}
.interactive-elements-accordion .element-item {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  padding: 0.75rem;
}
.interactive-elements-accordion .element-details {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.interactive-elements-accordion .element-text {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  word-wrap: break-word;
  white-space: normal;
  max-width: 100%;
}
.interactive-elements-accordion .element-selector {
  background: rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.2);
  color: #5aff28;
  font-size: 12px;
  font-family: 'SF Mono', Monaco, monospace;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  word-break: break-all;
  white-space: pre-wrap;
}
.connection-status {
  padding: 4px 8px;
  font-size: 11px;
  opacity: 0.7;
}
.connection-status.disconnected {
  color: #f87171;
}
.tool-call-card {
  background: rgba(0,0,0,0.6);
  border-left: 3px solid #ff0;
  border-radius: 0;
  overflow: hidden;
}
.chat-message.success .tool-call-card {
  border-left-color: #0f0;
}
.chat-message.failed .tool-call-card {
  border-left-color: #f00;
}
.tool-call-card .tool-call-header {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 10px 12px;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.tool-call-card .tool-call-header:hover {
  background: rgba(255,255,255,0.06);
}
.tool-call-card .tool-call-name {
  font-size: 0.875rem;
  font-weight: 700;
  color: #fff;
}
.tool-call-card .tool-call-primary {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.55);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
}
.tool-call-card .tool-call-duration {
  font-size: 0.7rem;
  color: rgba(255,255,255,0.25);
  font-family: 'SF NS Mono', 'SF Mono', 'Fira Code', monospace;
  flex-shrink: 0;
  margin-left: auto;
}
.tool-call-card .tool-call-chevron {
  font-size: 0.65rem;
  color: rgba(255,255,255,0.3);
  flex-shrink: 0;
}
.tool-call-card .tool-call-body-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.2s ease;
}
.tool-call-card--open .tool-call-body-wrap {
  grid-template-rows: 1fr;
}
.tool-call-card .tool-call-body {
  min-height: 0;
  overflow: hidden;
  border-top: 1px solid rgba(255,255,255,0);
  transition: border-color 0.2s ease, padding 0.2s ease;
  padding: 0 12px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.tool-call-card--open .tool-call-body {
  border-top-color: rgba(255,255,255,0.08);
  padding: 8px 12px;
}
.tool-call-card .tool-call-row {
  display: flex;
  gap: 8px;
  font-size: 0.8rem;
  line-height: 1.5;
}
.tool-call-card .tool-call-key {
  color: rgba(255,255,255,0.4);
  flex-shrink: 0;
  min-width: 80px;
}
.tool-call-card .tool-call-val {
  color: rgba(255,255,255,0.8);
  white-space: pre-wrap;
  word-break: break-word;
  font-family: 'SF NS Mono', 'SF Mono', 'Fira Code', monospace;
}
.msg-bug,
.msg-observation {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 0 6px 6px 0;
}
.msg-bug .msg-icon,
.msg-observation .msg-icon {
  font-size: 15px;
  line-height: 1.6;
  flex-shrink: 0;
}
.msg-bug .msg-body,
.msg-observation .msg-body {
  flex: 1;
  min-width: 0;
  overflow-x: auto;
}
.msg-bug .msg-body p,
.msg-observation .msg-body p {
  margin: 0;
}
.msg-bug {
  border-left: 3px solid #ef4444;
  background: rgba(239,68,68,0.08);
}
.msg-observation {
  border-left: 3px solid #60a5fa;
  background: rgba(96,165,250,0.06);
}
.msg-observation .msg-observation-json {
  color: #fff;
  white-space: pre-wrap;
  word-break: break-word;
  margin: 0;
  line-height: 1.5;
}
.msg-observation .msg-observation-summary {
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  max-width: 100%;
}
.msg-observation .msg-observation-content-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.2s ease;
}
.msg-observation .msg-observation-content-wrap--open {
  grid-template-rows: 1fr;
}
.msg-observation .msg-observation-content {
  min-height: 0;
  overflow: hidden;
}
.msg-observation .msg-observation-text {
  color: #fff;
  white-space: pre-wrap;
  word-break: break-word;
  line-height: 1.5;
  padding-top: 4px;
}
.msg-observation .msg-observation-fold-btn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 0.75rem;
  color: rgba(96,165,250,0.7);
  padding: 4px 0;
  display: block;
  margin-top: 4px;
}
.msg-observation .msg-observation-fold-btn:hover {
  color: #60a5fa;
}
.msg-phase {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
  color: rgba(255,255,255,0.45);
  font-size: 13px;
  font-weight: 500;
}
.msg-phase .msg-phase-line {
  flex: 1;
  height: 1px;
  background: rgba(255,255,255,0.1);
}
.msg-phase .msg-phase-text {
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 5px;
}
.msg-phase .msg-phase-icon {
  font-size: 11px;
  opacity: 0.8;
}
.msg-phase.msg-phase--done {
  color: rgba(100,220,130,0.9);
}
.msg-phase.msg-phase--done .msg-phase-line {
  background: rgba(100,220,130,0.2);
}
.msg-phase.msg-phase--failed {
  color: rgba(255,100,100,0.9);
}
.msg-phase.msg-phase--failed .msg-phase-line {
  background: rgba(255,100,100,0.2);
}
.msg-phase.msg-phase--in_progress {
  color: rgba(255,255,255,0.6);
}
.msg-session-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  border: 1px solid rgba(120,200,255,0.25);
  border-radius: 8px;
  text-decoration: none;
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  background: rgba(80,140,220,0.08);
}
.msg-session-link:hover {
  background: rgba(80,140,220,0.18);
  border-color: rgba(120,200,255,0.5);
}
.msg-session-link .msg-session-link-icon {
  font-size: 14px;
  color: rgba(140,200,255,0.9);
}
.msg-session-link .msg-session-link-text {
  font-size: 13px;
  font-weight: 600;
  color: rgba(140,200,255,0.9);
}
.msg-session-link .msg-session-link-hint {
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  margin-left: 2px;
}
.msg-artifact-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  border: 1px solid rgba(200,170,100,0.25);
  border-radius: 8px;
  text-decoration: none;
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  background: rgba(180,140,60,0.08);
}
.msg-artifact-link:hover {
  background: rgba(180,140,60,0.18);
  border-color: rgba(200,170,100,0.5);
}
.msg-artifact-link .msg-artifact-link-icon {
  font-size: 14px;
  color: rgba(220,190,100,0.9);
}
.msg-artifact-link .msg-artifact-link-text {
  font-size: 13px;
  font-weight: 600;
  color: rgba(220,190,100,0.9);
}
.msg-artifact-link .msg-artifact-link-hint {
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  margin-left: 2px;
}
.msg-test-result-link {
  text-decoration: none;
  display: block;
  border-radius: 0 6px 6px 0;
  transition: filter 0.15s ease;
}
.msg-test-result-link:hover .msg-test-result {
  filter: brightness(1.35);
}
.msg-test-result-link:hover .msg-test-result-view {
  opacity: 1;
}
.msg-test-result {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 0 6px 6px 0;
  font-size: 0.875rem;
  cursor: pointer;
  transition: filter 0.15s ease;
}
.msg-test-result--passed {
  border-left: 3px solid rgba(100,220,120,0.7);
  background: rgba(60,160,80,0.08);
}
.msg-test-result--passed .msg-test-result-icon {
  color: rgba(100,220,120,0.9);
}
.msg-test-result--failed {
  border-left: 3px solid rgba(255,100,100,0.7);
  background: rgba(200,50,50,0.08);
}
.msg-test-result--failed .msg-test-result-icon {
  color: rgba(255,100,100,0.9);
}
.msg-test-result .msg-test-result-icon {
  font-weight: 700;
  flex-shrink: 0;
}
.msg-test-result .msg-test-result-name {
  color: rgba(255,255,255,0.85);
  flex: 1;
}
.msg-test-result .msg-test-result-duration {
  font-size: 0.72rem;
  color: rgba(255,255,255,0.3);
  font-family: 'SF NS Mono', 'SF Mono', 'Fira Code', monospace;
}
.msg-test-result .msg-test-result-view {
  font-size: 0.72rem;
  color: #fff;
  margin-left: 4px;
  white-space: nowrap;
}
.chat-message[data-ts] {
  position: relative;
}
.chat-message[data-ts]:hover::before {
  content: attr(data-ts);
  position: absolute;
  left: -52px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.65rem;
  color: rgba(255,255,255,0.25);
  font-family: 'SF NS Mono', 'SF Mono', 'Fira Code', monospace;
  white-space: nowrap;
  pointer-events: none;
}
.msg-link-card {
  display: block;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  padding: 10px 14px;
  text-decoration: none;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}
.msg-link-card:hover {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.28);
}
.msg-link-card .msg-link-title {
  font-weight: 600;
  font-size: 14px;
  color: #fff;
  margin-bottom: 3px;
}
.msg-link-card .msg-link-desc {
  font-size: 13px;
  color: rgba(255,255,255,0.55);
  margin-bottom: 6px;
}
.msg-link-card .msg-link-url {
  font-size: 11px;
  color: rgba(255,255,255,0.3);
  font-family: monospace;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.msg-screenshot {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  cursor: pointer;
  text-align: center;
}
.msg-screenshot .msg-screenshot-img {
  display: block;
  max-width: 100%;
  max-height: 320px;
  margin: 0 auto;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.1);
  object-fit: contain;
  transition: border-color 0.15s ease;
}
.msg-screenshot .msg-screenshot-img:hover {
  border-color: rgba(255,255,255,0.3);
}
.msg-screenshot .msg-screenshot-name {
  margin-top: 4px;
  font-size: 0.7rem;
  color: rgba(255,255,255,0.3);
  font-family: var(--font-mono, monospace);
  text-align: center;
}
.msg-screenshot-lightbox {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.92);
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.msg-screenshot-lightbox-img {
  max-width: 90vw;
  max-height: 85vh;
  object-fit: contain;
  border-radius: 4px;
  box-shadow: 0 8px 40px rgba(0,0,0,0.6);
}
.msg-screenshot-lightbox-hint {
  margin-top: 12px;
  font-size: 0.75rem;
  color: rgba(255,255,255,0.35);
}
.message-status {
  padding: 16px;
  margin: 16px;
  font-size: 14px;
  border-radius: 6px;
  text-align: center;
}
.message-status.processing {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  margin: 8px;
  background: rgba(0,0,0,0.5);
  border-radius: 6px;
}
.message-status.error {
  background: rgba(0,0,0,0.9);
  color: #f44;
  border: 1px solid rgba(255,68,68,0.3);
  line-height: 1.6;
}
.message-status.success {
  background: rgba(0,0,0,0.9);
  color: #0f0;
  border: 1px solid rgba(0,255,0,0.3);
  line-height: 1.6;
}
.typing-indicator {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #fff;
  font-size: 14px;
}
.typing-indicator .dots {
  animation: text-ellipsis 1.5s infinite;
}
.exploratory-testing .flow-header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  justify-content: flex-start;
}
.exploratory-testing .flow-header .flow-name {
  font-size: 1.1rem;
  font-weight: 600;
  text-align: left;
  flex: 1;
  color: #fff;
}
.exploratory-testing .flow-header .flow-stats {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.65);
}
.exploratory-testing .flow-content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding-top: 0.5rem;
}
.exploratory-testing .flow-description {
  font-size: 1rem;
  line-height: 1.6;
  color: rgba(255,255,255,0.85);
}
.exploratory-testing .section-container {
  margin-bottom: 1.5rem;
}
.exploratory-testing .section-header {
  font-size: 1rem;
  font-weight: 700;
  color: rgba(255,255,255,0.9);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 0.75rem;
  margin-top: 0.5rem;
}
.exploratory-testing .test-result-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
}
.exploratory-testing .test-result-content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  font-size: 1rem;
  line-height: 1.6;
}
.exploratory-testing .test-result-content .test-timestamp {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.65);
}
.exploratory-testing .test-result-content .test-notes {
  color: rgba(255,255,255,0.8);
  font-style: italic;
}
.exploratory-testing .bug-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
}
.exploratory-testing .bug-header .bug-title {
  flex: 1;
  text-align: left;
  color: #fff;
}
.exploratory-testing .bug-content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  font-size: 1rem;
  line-height: 1.6;
  color: rgba(255,255,255,0.85);
}
.exploratory-testing .flow-notes-list {
  font-size: 1rem;
  line-height: 1.6;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.exploratory-testing .flow-notes-list li {
  color: rgba(255,255,255,0.85);
}
.exploratory-testing .repro-steps {
  margin-left: 1rem;
  margin-top: 0.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  list-style-type: decimal;
  list-style-position: inside;
}
.page-inventory [role="region"] > div {
  padding-left: 2rem;
  padding-bottom: 1rem;
}
.page-inventory h2 {
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: normal;
  margin-top: 2rem;
  margin-bottom: 1.5rem;
}
.page-inventory h3 {
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: 600;
  margin-bottom: 1rem;
}
.page-inventory h4 {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
}
.page-inventory p,
.page-inventory li {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 0.5rem;
}
.page-inventory code {
  font-size: 0.9rem;
  background: rgba(255,255,255,0.05);
  padding: 0.2rem 0.4rem;
  border-radius: 3px;
}
.tasks-artifact .tasks-overview {
  border-left: 3px solid rgba(255,255,255,0.2);
  padding: 0.65rem 1rem;
  margin-bottom: 1rem;
}
.tasks-artifact .tasks-overview p {
  color: rgba(255,255,255,0.92);
  font-size: 1rem;
  line-height: 1.55;
  margin: 0;
}
.tasks-artifact .tasks-source {
  font-size: 0.95rem;
  color: rgba(255,255,255,0.6);
  margin-bottom: 1rem;
}
.tasks-artifact .tasks-source a {
  color: rgba(180,200,255,0.95);
}
.tasks-artifact .tasks-source a:hover {
  color: #fff;
}
.tasks-artifact .tasks-files-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem;
}
.tasks-artifact .tasks-files-list li {
  padding: 0.3rem 0;
  font-size: 1rem;
  color: rgba(255,255,255,0.9);
}
.tasks-artifact .tasks-files-list li code {
  font-size: 0.95rem;
  color: rgba(180,200,255,0.95);
  background: rgba(255,255,255,0.06);
  padding: 0.05rem 0.3rem;
  border-radius: 3px;
}
.tasks-artifact .tasks-files-list li span {
  color: rgba(255,255,255,0.7);
}
.tasks-artifact .tasks-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.tasks-artifact .tasks-group {
  padding: 0.9rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.tasks-artifact .tasks-group:last-child {
  border-bottom: none;
}
.tasks-artifact .task-row {
  display: flex;
  align-items: baseline;
  gap: 0.6rem;
  padding: 0.15rem 0;
}
.tasks-artifact .task-subtask-row {
  padding-left: 1.75rem;
}
.tasks-artifact .task-status {
  flex-shrink: 0;
  font-size: 1.1rem;
}
.tasks-artifact .task-id {
  font-size: 0.95rem;
  color: rgba(255,255,255,0.55);
  font-family: 'SF NS Mono', 'SF Mono', monospace;
  flex-shrink: 0;
  min-width: 2.25rem;
}
.tasks-artifact .task-title {
  flex: 1;
  font-size: 1.05rem;
  color: rgba(255,255,255,0.98);
}
.tasks-artifact .badge {
  padding: 0.15rem 0.55rem;
  border-radius: 4px;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  flex-shrink: 0;
}
.tasks-artifact .badge-critical {
  background: rgba(220,38,38,0.3);
  color: #fca5a5;
}
.tasks-artifact .badge-high {
  background: rgba(234,88,12,0.3);
  color: #fdba74;
}
.tasks-artifact .badge-medium {
  background: rgba(234,179,8,0.3);
  color: #fde047;
}
.tasks-artifact .badge-low {
  background: rgba(107,114,128,0.3);
  color: #d1d5db;
}
.tasks-artifact .task-description {
  padding-left: 3.5rem;
  font-size: 1rem;
  color: rgba(255,255,255,0.85);
  line-height: 1.55;
  margin: 0.25rem 0 0.4rem;
}
.tasks-artifact .task-subtask-group {
  display: flex;
  flex-direction: column;
}
.tasks-artifact .task-notes,
.tasks-artifact .task-context {
  padding-left: 3.5rem;
  font-size: 1rem;
  color: rgba(255,255,255,0.92);
  line-height: 1.6;
  margin: 0.35rem 0 0.6rem;
  font-style: normal;
}
.tasks-artifact .task-notes p,
.tasks-artifact .task-context p {
  margin: 0 0 0.5rem;
  font-size: inherit;
  color: inherit;
  line-height: inherit;
}
.tasks-artifact .task-notes p:last-child,
.tasks-artifact .task-context p:last-child {
  margin-bottom: 0;
}
.tasks-artifact .task-notes ul,
.tasks-artifact .task-context ul,
.tasks-artifact .task-notes ol,
.tasks-artifact .task-context ol {
  margin: 0.35rem 0;
  padding-left: 1.4rem;
}
.tasks-artifact .task-notes ul li,
.tasks-artifact .task-context ul li,
.tasks-artifact .task-notes ol li,
.tasks-artifact .task-context ol li {
  font-size: inherit;
  color: inherit;
  line-height: 1.6;
  padding: 0.15rem 0;
}
.tasks-artifact .task-notes code,
.tasks-artifact .task-context code {
  font-size: 0.95rem;
  background: rgba(255,255,255,0.08);
  padding: 0.05rem 0.35rem;
  border-radius: 3px;
  color: rgba(190,210,255,0.98);
  font-family: 'SF NS Mono', 'SF Mono', monospace;
}
.tasks-artifact .task-notes pre,
.tasks-artifact .task-context pre {
  background: rgba(0,0,0,0.35);
  padding: 0.6rem 0.8rem;
  border-radius: 4px;
  margin: 0.5rem 0;
  overflow-x: auto;
}
.tasks-artifact .task-notes pre code,
.tasks-artifact .task-context pre code {
  background: transparent;
  padding: 0;
  font-size: 0.95rem;
}
.tasks-artifact .task-notes strong,
.tasks-artifact .task-context strong,
.tasks-artifact .task-notes b,
.tasks-artifact .task-context b {
  color: #fff;
  font-weight: 600;
}
.tasks-artifact .task-notes a,
.tasks-artifact .task-context a {
  color: rgba(180,200,255,0.95);
}
.tasks-artifact .task-notes a:hover,
.tasks-artifact .task-context a:hover {
  text-decoration: underline;
}
.tasks-artifact .task-subtask-group .task-context,
.tasks-artifact .task-subtask-group .task-notes {
  padding-left: 5rem;
}
.mobile .aiChatBot.right-quarter {
  width: 100vw;
  height: auto;
  left: 0;
  right: 0;
  top: 5.5rem;
  bottom: 0;
}
.project-overview-artifact .url-link {
  color: #60a5fa;
}
.project-overview-artifact .url-link:hover {
  text-decoration: underline;
}
.project-overview-artifact .section-header {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
}
.project-overview-artifact .summary-box {
  background: rgba(255,255,255,0.05);
  padding: 1rem;
  border-radius: 8px;
}
.project-overview-artifact .tech-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}
.project-overview-artifact .tech-badge {
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  background: rgba(255,255,255,0.1);
  font-size: 0.75rem;
}
.project-overview-artifact .feature-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.project-overview-artifact .feature-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.project-overview-artifact .feature-icon {
  font-size: 1rem;
}
.project-overview-artifact .feature-name {
  color: rgba(255,255,255,0.85);
}
.project-overview-artifact .feature-link,
.project-overview-artifact .journey-step-link {
  padding: 0.125rem 0.5rem;
  font-size: 0.9rem;
}
.project-overview-artifact .feature-reason {
  color: rgba(255,255,255,0.5);
  font-size: 0.9rem;
}
.project-overview-artifact .badge {
  padding: 0.125rem 0.5rem;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 500;
}
.project-overview-artifact .badge-critical {
  background: rgba(220,38,38,0.3);
  color: #fca5a5;
}
.project-overview-artifact .badge-high {
  background: rgba(234,88,12,0.3);
  color: #fdba74;
}
.project-overview-artifact .badge-medium {
  background: rgba(234,179,8,0.3);
  color: #fde047;
}
.project-overview-artifact .badge-low {
  background: rgba(107,114,128,0.3);
  color: #d1d5db;
}
.project-overview-artifact .journey-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.project-overview-artifact .journey-name {
  font-weight: 600;
}
.project-overview-artifact .journey-steps {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.project-overview-artifact .journey-step {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.project-overview-artifact .journey-step-icon {
  font-size: 1rem;
}
.project-overview-artifact .journey-step-action {
  color: rgba(255,255,255,0.85);
}
.project-overview-artifact .journey-step-found {
  color: #4ade80;
}
.project-overview-artifact .journey-step-missing,
.project-overview-artifact .journey-step-blocked {
  color: #f87171;
}
.project-overview-artifact .journey-step-notes {
  color: rgba(255,255,255,0.5);
  font-size: 0.9rem;
}
.project-overview-artifact .notes-list {
  list-style: disc inside;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.accordion-trigger-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.accordion-trigger-row--start {
  justify-content: flex-start;
}
.accordion-trigger-row--full {
  width: 100%;
}
.accordion-trigger-row__label {
  flex: 1;
  text-align: left;
  font-weight: 600;
  color: #fff;
}
.test-priority-badge {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 0.15rem 0.5rem;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.test-priority-badge--high {
  background: rgba(220,38,38,0.25);
  color: #fca5a5;
}
.test-priority-badge--medium {
  background: rgba(234,179,8,0.25);
  color: #fde047;
}
.test-priority-badge--low {
  background: rgba(107,114,128,0.25);
  color: #d1d5db;
}
.test-details {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.test-details__heading {
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: #fff;
}
.test-details__text {
  color: #fff;
}
.test-details__category {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.test-steps-list {
  list-style: decimal inside;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0;
  margin: 0;
}
.broken-selectors-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.broken-selector-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.broken-selector-item__code {
  font-size: 0.875rem;
  background: rgba(255,255,255,0.06);
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
  color: #5aff28;
  font-family: 'SF Mono', Monaco, monospace;
}
.broken-selector-item__error {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
  margin: 0;
}
.bug-details {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.bug-details__grid {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.known-errors__patterns {
  margin-top: 1.5rem;
}
.self-healing__last-error {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
}
.attempt-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.attempt-trigger__left {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.attempt-trigger__label {
  font-weight: 600;
  text-align: left;
  color: #fff;
}
.attempt-trigger__time {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.5);
}
.attempt-detail__timestamp {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.5);
  margin-bottom: 0.5rem;
}
.attempt-detail__block {
  margin-bottom: 1rem;
}
.attempt-detail__pre {
  background: rgba(255,255,255,0.06);
  padding: 0.5rem;
  border-radius: 4px;
  font-size: 0.875rem;
  margin-top: 0.25rem;
  white-space: pre-wrap;
  word-break: break-all;
}
.attempt-detail__text {
  font-size: 0.875rem;
  margin-top: 0.25rem;
  color: rgba(255,255,255,0.85);
}
.attempt-detail__footer {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.75rem;
}
.selectors-tried-list {
  list-style: disc inside;
  font-size: 0.875rem;
  margin-top: 0.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.code-diff-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.code-diff-grid__label {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.5);
  margin-bottom: 0.25rem;
}
.accordion-item--borderless {
  border: none;
}
.creds-description {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
  margin-bottom: 0.5rem;
}
.cred-username {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
}
.cred-environment {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.5);
}
.permissions-list {
  list-style: disc inside;
  margin: 0;
  padding: 0;
}
.usage-code {
  font-size: 0.75rem;
  margin: 0 0 0.25rem;
}
.usage-hint {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.5);
}
.memory-tag {
  margin-left: 0.4rem;
  font-size: 0.75rem;
}
.sitemap-flow--full {
  width: 100%;
  height: 100vh;
}
.node-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 8px;
}
@-moz-keyframes text-ellipsis {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0.33;
  }
  50% {
    opacity: 0.66;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes text-ellipsis {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0.33;
  }
  50% {
    opacity: 0.66;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-o-keyframes text-ellipsis {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0.33;
  }
  50% {
    opacity: 0.66;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes text-ellipsis {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0.33;
  }
  50% {
    opacity: 0.66;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.diff-viewer-container {
  border-radius: 8px;
  overflow: hidden;
  font-family: Monaco, Menlo, "Ubuntu Mono", monospace;
  font-size: 12px;
  background: #1a1a1a;
}
.diff-viewer-container .diff-viewer-title {
  background: #2a2a2a;
  color: #e0e0e0;
  padding: 8px 12px;
  border-bottom: 1px solid #444;
  font-size: 13px;
  font-weight: 500;
}
.diff-tooltip-content {
  background-color: #1a1a1a !important;
  border: 1px solid #444 !important;
  border-radius: 8px !important;
  padding: 0 !important;
  max-width: 800px !important;
  max-height: 600px !important;
  overflow: auto !important;
  z-index: 1000 !important;
  box-shadow: 0 10px 38px -10px rgba(22,23,24,0.35), 0 10px 20px -15px rgba(22,23,24,0.2) !important;
}
.diff-tooltip-arrow {
  fill: #444 !important;
}
.diff-viewer-container {
  border: 1px solid #30363d;
  border-radius: 6px;
}
.diff-viewer-container .diff {
  background: #0d1117 !important;
  color: #e6edf3 !important;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
.diff-viewer-container .diff-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}
.diff-viewer-container .diff-gutter {
  background: #0d1117 !important;
  color: #7d8590 !important;
  border-right: 1px solid #30363d !important;
  padding: 0 8px !important;
  text-align: right !important;
  user-select: none !important;
  vertical-align: top !important;
  width: 1% !important;
  min-width: 50px !important;
}
.diff-viewer-container .diff-code {
  background: #0d1117 !important;
  color: #e6edf3 !important;
  padding: 0 8px !important;
  white-space: pre !important;
  word-wrap: break-word !important;
}
.diff-viewer-container .diff-line-insert {
  background: #033a16 !important;
}
.diff-viewer-container .diff-line-insert .diff-code {
  background: #033a16 !important;
  color: #e6edf3 !important;
}
.diff-viewer-container .diff-line-insert .diff-gutter {
  background: #033a16 !important;
  color: #7d8590 !important;
}
.diff-viewer-container .diff-line-insert::before {
  content: "+" !important;
  color: #3fb950 !important;
  font-weight: bold !important;
}
.diff-viewer-container .diff-line-delete {
  background: #67060c !important;
}
.diff-viewer-container .diff-line-delete .diff-code {
  background: #67060c !important;
  color: #e6edf3 !important;
}
.diff-viewer-container .diff-line-delete .diff-gutter {
  background: #67060c !important;
  color: #7d8590 !important;
}
.diff-viewer-container .diff-line-delete::before {
  content: "-" !important;
  color: #f85149 !important;
  font-weight: bold !important;
}
.diff-viewer-container .diff-line-normal {
  background: #0d1117 !important;
}
.diff-viewer-container .diff-line-normal .diff-code {
  background: #0d1117 !important;
  color: #e6edf3 !important;
}
.diff-viewer-container .diff-line-normal .diff-gutter {
  background: #0d1117 !important;
  color: #7d8590 !important;
}
.diff-viewer-container .diff-hunk-header {
  background: #21262d !important;
  color: #8b949e !important;
  border-top: 1px solid #30363d !important;
  border-bottom: 1px solid #30363d !important;
  padding: 6px 8px !important;
  font-weight: 600 !important;
}
.diff-viewer-container .diff-split .diff-gutter-col {
  background: #0d1117 !important;
  border-right: 1px solid #30363d !important;
}
.diff-viewer-container .diff-split .diff-code-col {
  background: #0d1117 !important;
}
.diff-viewer-container .diff-split .diff-gutter-col-old {
  background: #0d1117 !important;
}
.diff-viewer-container .diff-split .diff-code-col-old {
  background: #0d1117 !important;
}
.diff-viewer-container .diff-split .diff-gutter-col-new {
  background: #0d1117 !important;
}
.diff-viewer-container .diff-split .diff-code-col-new {
  background: #0d1117 !important;
}
.diff-viewer-container .diff-split .diff-line-old-only .diff-gutter-col-old {
  background: #67060c !important;
}
.diff-viewer-container .diff-split .diff-line-old-only .diff-code-col-old {
  background: #67060c !important;
}
.diff-viewer-container .diff-split .diff-line-new-only .diff-gutter-col-new {
  background: #033a16 !important;
}
.diff-viewer-container .diff-split .diff-line-new-only .diff-code-col-new {
  background: #033a16 !important;
}
.run-summary {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem 1.1rem;
  background: rgba(0,0,0,0.2);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 6px;
}
.run-summary-section {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.run-summary-section.run-summary-section-err {
  padding: 0.5rem 0.75rem;
  border-left: 2px solid rgba(255,120,120,0.6);
  background: rgba(255,90,90,0.05);
  border-radius: 4px;
}
.run-summary-head {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: rgba(255,255,255,0.5);
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.04em;
  font-size: 0.95rem;
}
.run-summary-body {
  color: rgba(255,255,255,0.9);
  font-size: 1rem;
  line-height: 1.5;
}
.run-summary-final {
  padding: 0.6rem 0.75rem;
  background: rgba(120,200,255,0.05);
  border-left: 2px solid rgba(120,200,255,0.35);
  border-radius: 4px;
  color: rgba(200,220,255,0.95);
  font-size: 0.98rem;
  white-space: pre-wrap;
}
.run-summary-muted {
  color: rgba(255,255,255,0.4);
}
.run-summary-stats {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
  margin-bottom: 0.4rem;
}
.run-summary-stat {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.15rem 0.5rem;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 3px;
  color: rgba(255,255,255,0.85);
  font-size: 0.95rem;
  font-variant-numeric: tabular-nums;
}
.run-summary-stat b {
  color: rgba(255,255,255,0.98);
  font-weight: 600;
}
.run-summary-stat.run-summary-stat-err {
  color: rgba(255,150,150,0.95);
  border-color: rgba(255,120,120,0.25);
  background: rgba(255,90,90,0.08);
}
.run-summary-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
  gap: 0.25rem 0.75rem;
}
.run-summary-list li {
  display: inline-flex;
  align-items: baseline;
  gap: 0.4rem;
  color: rgba(255,255,255,0.75);
  font-size: 0.95rem;
}
.run-summary-list-count {
  color: rgba(255,255,255,0.95);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  min-width: 1.4rem;
  text-align: right;
}
.run-summary-list-label {
  color: rgba(255,255,255,0.7);
}
.run-summary-touched-row {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  margin-top: 0.3rem;
}
.run-summary-touched-row:first-child {
  margin-top: 0;
}
.run-summary-touched-label {
  min-width: 5rem;
  color: rgba(255,255,255,0.5);
  font-variant-caps: all-petite-caps;
  letter-spacing: 0.04em;
  font-size: 0.9rem;
  padding-top: 0.15rem;
}
.run-summary-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
}
.run-summary-chip {
  padding: 0.15rem 0.5rem;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 3px;
  color: rgba(180,200,255,0.9);
  font-size: 0.9rem;
  font-family: 'SF NS Mono', 'SF Mono', monospace;
  text-decoration: none;
  max-width: 20rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.run-summary-chip:hover {
  background: rgba(255,255,255,0.1);
  color: rgba(220,230,255,0.98);
}
.run-summary-errs {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}
.run-summary-errs li {
  color: rgba(255,180,180,0.9);
  font-size: 0.95rem;
  font-family: 'SF NS Mono', 'SF Mono', monospace;
  padding: 0.35rem 0.5rem;
  background: rgba(0,0,0,0.25);
  border-radius: 4px;
  white-space: pre-wrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 6rem;
}
.page-header,
.pageheader {
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
}
.page-header .page-header-title,
.pageheader .page-header-title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: rgba(255,255,255,0.95);
}
.page-header .page-header-description,
.pageheader .page-header-description {
  color: rgba(255,255,255,0.7);
  font-size: 1.1rem;
  margin: 0;
}
.page-header .page-metadata,
.pageheader .page-metadata {
  margin-top: 0.75rem;
  font-size: 0.85rem;
  color: rgba(255,255,255,0.5);
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.page-header .metadata-item,
.pageheader .metadata-item {
  color: rgba(255,255,255,0.5);
}
.page-header .metadata-separator,
.pageheader .metadata-separator {
  color: rgba(255,255,255,0.3);
}
.page-header .text-muted-foreground,
.pageheader .text-muted-foreground,
.page-header .dimmer-lead,
.pageheader .dimmer-lead {
  opacity: 0.7 !important;
  color: rgba(255,255,255,0.6) !important;
}
.dimmer-lead,
.text-muted-foreground {
  opacity: 0.7 !important;
  color: rgba(255,255,255,0.6) !important;
}
@media (max-width: 768px) {
  .page-header,
  .pageheader {
    width: 100%;
    padding: 0.75rem 1rem;
  }
}
.persona-badge {
  display: flex;
  align-items: center;
  border-radius: 6px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.persona-badge:hover {
  background: rgba(255,255,255,0.07);
}
.persona-badge-sm {
  padding: 4px 8px;
  font-size: 0.75rem;
  gap: 4px;
}
.persona-badge-md {
  padding: 8px 12px;
  font-size: 0.875rem;
  gap: 6px;
}
.persona-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.pie-chart-container {
  margin: 0 auto;
  aspect-ratio: 1;
  width: 100%;
}
.donut-label-value {
  fill: #fff;
  font-size: 2.25rem;
  font-weight: 700;
}
.donut-label-text {
  color: rgba(255,255,255,0.5);
}
div.clickEffect {
  position: fixed;
  box-sizing: border-box;
  border-style: solid;
  border-color: #4a90e2;
  border-radius: 50%;
  animation: clickEffect 0.4s ease-out;
  z-index: 99999;
}
.animated-hand-cursor {
  position: fixed;
  pointer-events: none;
  z-index: 100000;
  font-size: 32px;
  transform-origin: center center;
  transition: all 0.3s ease-out;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,0.4));
  will-change: transform, left, top, opacity;
}
.animated-hand {
  position: fixed;
  pointer-events: none;
  z-index: 10000;
  animation: hand-move 0.8s ease-out;
}
.animated-hand svg {
  width: 40px;
  height: 40px;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
  color: var(--primary-color, #4a90e2);
}
.animated-hand-click {
  animation: hand-click 1s ease-out;
}
.animated-hand-hover {
  animation: hand-hover 1s ease-out;
}
@-moz-keyframes clickEffect {
  0% {
    opacity: 1;
    width: 0.5em;
    height: 0.5em;
    margin: -0.25em;
    border-width: 0.5em;
  }
  100% {
    opacity: 0.2;
    width: 15em;
    height: 15em;
    margin: -7.5em;
    border-width: 0.03em;
  }
}
@-webkit-keyframes clickEffect {
  0% {
    opacity: 1;
    width: 0.5em;
    height: 0.5em;
    margin: -0.25em;
    border-width: 0.5em;
  }
  100% {
    opacity: 0.2;
    width: 15em;
    height: 15em;
    margin: -7.5em;
    border-width: 0.03em;
  }
}
@-o-keyframes clickEffect {
  0% {
    opacity: 1;
    width: 0.5em;
    height: 0.5em;
    margin: -0.25em;
    border-width: 0.5em;
  }
  100% {
    opacity: 0.2;
    width: 15em;
    height: 15em;
    margin: -7.5em;
    border-width: 0.03em;
  }
}
@keyframes clickEffect {
  0% {
    opacity: 1;
    width: 0.5em;
    height: 0.5em;
    margin: -0.25em;
    border-width: 0.5em;
  }
  100% {
    opacity: 0.2;
    width: 15em;
    height: 15em;
    margin: -7.5em;
    border-width: 0.03em;
  }
}
@-moz-keyframes hand-move {
  0% {
    transform: translate(-100px, -100px) scale(0.5);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 1;
  }
}
@-webkit-keyframes hand-move {
  0% {
    transform: translate(-100px, -100px) scale(0.5);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 1;
  }
}
@-o-keyframes hand-move {
  0% {
    transform: translate(-100px, -100px) scale(0.5);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 1;
  }
}
@keyframes hand-move {
  0% {
    transform: translate(-100px, -100px) scale(0.5);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 1;
  }
}
@-moz-keyframes hand-click {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
}
@-webkit-keyframes hand-click {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
}
@-o-keyframes hand-click {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
}
@keyframes hand-click {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
}
@-moz-keyframes hand-hover {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
@-webkit-keyframes hand-hover {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
@-o-keyframes hand-hover {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
@keyframes hand-hover {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
.run-healthcheck-icon {
  cursor: pointer;
  margin-left: 0.5rem;
}
.universal-search-container {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border-radius: 0;
  position: relative;
  width: 100%;
}
.universal-search-container .universal-search-input {
  position: relative;
}
.universal-search-container .universal-search-input .universal-search-text-input {
  width: 100%;
  border-radius: 6px;
  height: 2.5rem;
  font-size: 0.95rem;
  padding: 0 0.75rem;
}
.universal-search-container .universal-search-input .universal-search-active-chips {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  gap: 0.35rem;
  align-items: center;
  pointer-events: auto;
  opacity: 1;
  transition: opacity 100ms ease;
}
.universal-search-container .universal-search-input .universal-search-active-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.15rem 0.5rem;
  border-radius: 8px;
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--cta);
  background: rgba(90,255,40,0.12);
  border: 1px solid rgba(90,255,40,0.25);
  cursor: pointer;
  white-space: nowrap;
  font-variant: small-caps;
  transition: background 150ms ease;
}
.universal-search-container .universal-search-input .universal-search-active-chip:hover {
  background: rgba(90,255,40,0.2);
}
.universal-search-container .universal-search-input .universal-search-active-chip .chip-remove {
  opacity: 0.6;
  font-size: 0.85rem;
  line-height: 1;
}
.universal-search-container:focus-within .universal-search-active-chips,
.universal-search-container:hover .universal-search-active-chips {
  opacity: 0;
  pointer-events: none;
}
.universal-search-container .universal-search-tags {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 200;
  padding: 0.75rem 1rem;
  border-radius: 0 0 14px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  border-top: none;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
  transition: opacity 150ms ease, transform 150ms ease;
}
.universal-search-container:focus-within .universal-search-tags,
.universal-search-container:hover .universal-search-tags {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.tag.tag-hint {
  border-color: rgba(255,255,255,0.45);
  color: rgba(255,255,255,0.95);
  background: rgba(255,255,255,0.08);
}
.tag.tag-hint .universal-search-tags .universal-search-tag-search {
  margin-bottom: 0.75rem;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-search .universal-search-tag-input {
  width: 100%;
  border-radius: 4px;
  height: 2rem;
  font-size: 0.9rem;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-simple-tags .universal-search-tag-list.simple {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-tag-categories {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 0.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title {
  font-size: 0.75rem;
  font-weight: 400;
  min-width: 5rem;
  color: var(--fg-muted-more);
  opacity: 0.7;
  flex-shrink: 0;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category .universal-search-tag-list {
  display: flex;
  gap: 0.5rem;
  flex-wrap: nowrap;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category.empty {
  opacity: 0.4;
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category.empty .universal-search-category-title {
  color: var(--fg-muted-more);
}
.tag.tag-hint .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category.empty .universal-search-empty-category {
  color: var(--fg-muted-more);
  font-style: italic;
  font-size: 0.75rem;
  padding: 0.25rem 0;
  min-height: 1.5rem;
  display: flex;
  align-items: center;
}
.tag.tag-hint .universal-search-summary {
  margin-top: 0.75rem;
  padding-top: 0.5rem;
  border-top: 1px solid var(--border-subtle);
}
.tag.tag-hint .universal-search-summary .universal-search-results-count {
  font-size: 0.85rem;
  color: var(--fg-muted);
}
.tag.tag-hint .universal-search-summary .universal-search-results-count .universal-search-active-filters {
  color: var(--fg-muted-more);
  font-style: italic;
}
@media (max-width: 768px) {
  .universal-search-container {
    width: 100%;
    margin: 1rem 0;
    padding: 0.5rem;
    overflow-x: hidden;
  }
  .universal-search-container .universal-search-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
  .universal-search-container .universal-search-header .universal-search-clear-btn {
    font-size: 0.7rem;
    padding: 0.2rem 0.4rem;
  }
  .universal-search-container .universal-search-input .universal-search-text-input {
    font-size: 0.9rem;
  }
  .universal-search-container .universal-search-tags {
    width: 100%;
    overflow-x: auto;
  }
  .universal-search-container .universal-search-tags .universal-search-tag-content {
    width: 100%;
  }
  .universal-search-container .universal-search-tags .universal-search-tag-content .universal-search-simple-tags .universal-search-tag-list.simple {
    gap: 0.4rem;
  }
  .universal-search-container .universal-search-tags .universal-search-tag-content .universal-search-tag-categories {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 0.5rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .universal-search-container .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category {
    flex-shrink: 0;
    display: flex;
    align-items: center;
  }
  .universal-search-container .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title {
    font-size: 0.75rem;
    min-width: auto;
    flex-shrink: 0;
  }
  .universal-search-container .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category .universal-search-tag-list {
    flex-wrap: nowrap;
    gap: 0.5rem;
  }
}
.universal-search-container.compact {
  margin: 0.75rem 0;
  padding: 0.5rem;
}
.universal-search-container.compact .universal-search-header {
  margin-bottom: 0.5rem;
}
.universal-search-container.compact .universal-search-header .universal-search-title {
  font-size: 0.9rem;
}
.universal-search-container.compact .universal-search-input {
  margin-bottom: 1rem;
}
.universal-search-container.compact .universal-search-input .universal-search-text-input {
  height: 2rem;
  font-size: 0.85rem;
}
.universal-search-container.compact .universal-search-tags .universal-search-tag-search {
  margin-bottom: 0.5rem;
}
.universal-search-container.compact .universal-search-tags .universal-search-tag-search .universal-search-tag-input {
  height: 1.75rem;
  font-size: 0.8rem;
}
.universal-search-container.compact .universal-search-tags .universal-search-tag-content .universal-search-tag-categories {
  gap: 0.75rem;
}
.universal-search-container.compact .universal-search-tags .universal-search-tag-content .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title {
  font-size: 0.8rem;
  margin-bottom: 0.25rem;
}
.universal-search-container.compact .universal-search-summary {
  margin-top: 0.5rem;
  padding-top: 0.25rem;
}
.universal-search-container.compact .universal-search-summary .universal-search-results-count {
  font-size: 0.8rem;
}
.universal-search-container.updates-filter,
.universal-search-container.tests-filter,
.universal-search-container.docs-filter,
.universal-search-container.healthchecks-filter,
.universal-search-container.keywords-filter {
  margin: 1rem 0;
  padding: 0.75rem;
  background-color: rgba(255,255,255,0.02);
  border-radius: 0.5rem;
  width: 100%;
}
.universal-search-container.updates-filter .universal-search-text-input,
.universal-search-container.tests-filter .universal-search-text-input,
.universal-search-container.docs-filter .universal-search-text-input,
.universal-search-container.healthchecks-filter .universal-search-text-input,
.universal-search-container.keywords-filter .universal-search-text-input {
  width: 100%;
}
.universal-search-container.updates-filter .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title,
.universal-search-container.tests-filter .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title,
.universal-search-container.docs-filter .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title,
.universal-search-container.healthchecks-filter .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title,
.universal-search-container.keywords-filter .universal-search-tag-categories .universal-search-tag-category .universal-search-category-title {
  color: var(--fg-muted);
}
.universal-search-container.keywords-filter .universal-search-text-input {
  border: 2px solid var(--border);
}
.universal-search-container.keywords-filter .universal-search-text-input:focus {
  border-color: var(--primary);
}
.AiChatSlider {
  width: 80vw;
  max-width: 800px;
  margin: 2rem auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
}
.AiChatSlider .chat-win {
  width: 100%;
  background: #0f0f14;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 80px rgba(0,0,0,0.7), 0 0 80px rgba(90,255,40,0.05);
}
.AiChatSlider .chat-bar {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 12px 16px;
  background: #1e1e26;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.AiChatSlider .chat-bar .bar-dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
}
.AiChatSlider .chat-bar .bar-dot.r {
  background: #ff5f57;
}
.AiChatSlider .chat-bar .bar-dot.y {
  background: #febc2e;
}
.AiChatSlider .chat-bar .bar-dot.g {
  background: #28c840;
}
.AiChatSlider .chat-body {
  padding: 1.5rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 14px;
  height: 320px;
  justify-content: center;
}
.AiChatSlider .chat-msg {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.AiChatSlider .chat-msg.chat-user {
  justify-content: flex-end;
}
.AiChatSlider .chat-msg.chat-ai {
  justify-content: flex-start;
}
.AiChatSlider .chat-avi {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 800;
  background: rgba(139,92,246,0.3);
  color: #beaaff;
  border: 1px solid rgba(139,92,246,0.35);
}
.AiChatSlider .chat-bbl {
  padding: 14px 18px;
  font-size: 17px;
  line-height: 1.5;
  max-width: 75%;
}
.AiChatSlider .chat-bbl.bbl-user {
  background: rgba(90,255,40,0.12);
  border: 1px solid rgba(90,255,40,0.25);
  color: #fff;
  border-radius: 14px 14px 3px 14px;
  font-weight: 500;
}
.AiChatSlider .chat-bbl.bbl-ai {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.85);
  border-radius: 14px 14px 14px 3px;
}
.AiChatSlider .chat-dots {
  display: flex;
  gap: 10px;
}
.AiChatSlider .chat-dots .cdot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,0.12);
  border: none;
  padding: 0;
  cursor: pointer;
  transition: all 0.3s ease;
}
.AiChatSlider .chat-dots .cdot.on {
  background: var(--cta);
  box-shadow: 0 0 10px rgba(90,255,40,0.5);
  transform: scale(1.4);
}
.AiChatSlider .chat-dots .cdot:hover:not(.on) {
  background: rgba(255,255,255,0.3);
}
.AiChatSection {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 1270px;
  margin: 8rem auto;
  padding: 0 20px;
  gap: 2rem;
}
.AiChatSection h2 {
  text-align: center;
  margin-bottom: 0;
}
.AiChatSection .normal {
  text-align: center;
  margin-bottom: 0;
}
.AiChatSection .AiChatPunchline {
  max-width: 700px;
  text-align: center;
}
.AiChatSection .AiChatPunchline strong {
  color: #ccc;
  font-style: normal;
  font-variation-settings: "wght" 500;
}
.AiChatSection .AiChatPunchline em {
  color: #fff;
  font-style: normal;
  font-variation-settings: "wght" 600;
}
@media (max-width: 600px) {
  .AiChatSection {
    margin: 4rem auto;
    padding: 0 1rem;
  }
}
@media (max-width: 600px) {
  .AiChatSlider {
    width: calc(100vw - 2rem);
    max-width: 100%;
  }
  .AiChatSlider .chat-body {
    padding: 1.2rem;
    height: 300px;
  }
  .AiChatSlider .chat-bbl {
    font-size: 15px;
    padding: 12px 14px;
  }
}
@-moz-keyframes msgFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes msgFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-o-keyframes msgFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes msgFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-moz-keyframes liarShake {
  0% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-5px);
  }
  40% {
    transform: translateX(4px);
  }
  60% {
    transform: translateX(-3px);
  }
  80% {
    transform: translateX(2px);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes liarShake {
  0% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-5px);
  }
  40% {
    transform: translateX(4px);
  }
  60% {
    transform: translateX(-3px);
  }
  80% {
    transform: translateX(2px);
  }
  100% {
    transform: translateX(0);
  }
}
@-o-keyframes liarShake {
  0% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-5px);
  }
  40% {
    transform: translateX(4px);
  }
  60% {
    transform: translateX(-3px);
  }
  80% {
    transform: translateX(2px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes liarShake {
  0% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-5px);
  }
  40% {
    transform: translateX(4px);
  }
  60% {
    transform: translateX(-3px);
  }
  80% {
    transform: translateX(2px);
  }
  100% {
    transform: translateX(0);
  }
}
a,
button,
[role="button"],
[role="tab"],
[role="menuitem"],
[role="option"] {
  cursor: pointer;
}
a {
  color: var(--cta);
  text-decoration: none;
  transition: color 300ms cubic-bezier(0.4, 0, 0.2, 1);
}
a:hover {
  color: var(--cta-hover);
}
.row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
input,
textarea,
select {
  background: rgba(255,255,255,0.03);
  backdrop-filter: blur(12px);
  border: 1.5px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: 0.75rem 1rem;
  color: rgba(255,255,255,0.95);
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  outline: none;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
input::placeholder,
textarea::placeholder,
select::placeholder {
  color: rgba(255,255,255,0.4);
  font-weight: 300;
  font-variation-settings: 'wght' 300;
}
input:hover,
textarea:hover,
select:hover {
  border-color: rgba(255,255,255,0.25);
  background: rgba(255,255,255,0.05);
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
input:focus,
textarea:focus,
select:focus,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  border-color: rgba(255,255,255,0.4);
  background: rgba(255,255,255,0.08);
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1), 0 4px 12px rgba(0,0,0,0.2);
  transform: scale(1.002);
}
input:disabled,
textarea:disabled,
select:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: rgba(255,255,255,0.01);
  border-color: rgba(255,255,255,0.05);
}
input.xl {
  margin-bottom: 16px;
  font-size: 2rem;
  line-height: 1.2;
  padding: 1.25rem 1.5rem;
  border-radius: 12px;
}
textarea {
  resize: vertical;
  min-height: 100px;
  line-height: 1.5;
}
select {
  cursor: pointer;
}
select::-ms-expand {
  display: none;
}
.input-group {
  position: relative;
}
.input-group input {
  padding-right: 3rem;
}
.input-group .input-icon {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,0.4);
  pointer-events: none;
}
.display-none {
  display: none !important;
}
.ProgressBarIndefinite {
  display: flex !important;
  flex-direction: row !important;
  gap: 3px !important;
}
.normal {
  font-weight: normal !important;
}
.hide {
  will-change: opacity;
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
}
.w10 {
  width: 10vw;
}
.w20 {
  width: 20vw;
}
.w30 {
  width: 30vw;
}
.w40 {
  width: 40vw;
}
.w50 {
  width: 50vw;
}
.w60 {
  width: 60vw;
}
.w70 {
  width: 70vw;
}
.w80 {
  width: 80vw;
}
.w90 {
  width: 90vw;
}
.w100 {
  width: 100vw;
}
.h10 {
  height: 10vh;
}
.h20 {
  height: 20vh;
}
.h30 {
  height: 30vh;
}
.h40 {
  height: 40vh;
}
.h50 {
  height: 50vh;
}
.h60 {
  height: 60vh;
}
.h70 {
  height: 70vh;
}
.h80 {
  height: 80vh;
}
.h90 {
  height: 90vh;
}
.h100 {
  height: 100vh;
}
.page-content-standard {
  padding-top: 2rem !important;
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 2rem;
  min-height: 100vh;
}
.groupHeading {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  line-height: 1.2;
  letter-spacing: normal;
  color: #fff;
  margin: 0;
}
.tag-category {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.tag-category-title {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  color: rgba(255,255,255,0.6);
  font-variant: small-caps;
  min-width: 80px;
}
.tag-category-title.tag-category-title-clickable {
  cursor: pointer;
  user-select: none;
  transition: color 120ms ease;
}
.tag-category-title.tag-category-title-clickable:hover {
  color: rgba(255,255,255,0.9);
}
.tag-category-title.tag-category-title-active {
  color: var(--cta);
}
.tag-category-title.tag-category-title-active:hover {
  color: var(--cta);
}
.tag-category-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.toasts {
  position: fixed;
  bottom: 1.5rem;
  left: 1.5rem;
  z-index: 3000;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  overflow: scroll;
  max-height: 100%;
}
.toasts .toast {
  pointer-events: all;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  padding: 1.25rem 1.5rem;
  color: #fff;
  min-width: 280px;
  max-width: 400px;
  position: relative;
}
.toasts .toast .title {
  display: flex;
  color: rgba(255,255,255,0.95);
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  line-height: 1.4;
  align-items: center;
  gap: 0.5rem;
}
.toasts .toast .message {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.9);
  white-space: break-spaces;
  line-height: 1.5;
}
.toasts .toast button {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 6px;
  padding: 0.7rem 1.2rem;
  color: rgba(255,255,255,0.9);
  font-size: 0.9rem;
  font-weight: 500;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  margin-top: 0.5rem;
  margin-right: 0.5rem;
}
.toasts .toast button:hover {
  background: rgba(255,255,255,0.08);
  color: #fff;
  border-color: rgba(255,255,255,0.3);
}
.toasts .toast button:active {
  background: rgba(255,255,255,0.1);
  transform: scale(0.98);
}
.toast.glass-morphism .buttons button {
  background: rgba(255,255,255,0.08);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: 0.75rem 1.25rem;
  color: rgba(255,255,255,0.95);
  font-size: 0.9rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.toast.glass-morphism .buttons button:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.2);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.toast.glass-morphism .buttons button:active {
  transform: translateY(0);
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.toast.minimal-modern .buttons button {
  background: transparent;
  border: 1.5px solid rgba(255,255,255,0.15);
  border-radius: 6px;
  padding: 0.7rem 1.2rem;
  color: rgba(255,255,255,0.9);
  font-size: 0.9rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.toast.minimal-modern .buttons button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);
  transition: left 0.5s ease;
}
.toast.minimal-modern .buttons button:hover {
  border-color: rgba(255,255,255,0.3);
  color: #fff;
  background: rgba(255,255,255,0.05);
}
.toast.minimal-modern .buttons button:hover::before {
  left: 100%;
}
.toast.minimal-modern .buttons button:active {
  background: rgba(255,255,255,0.08);
  transform: scale(0.98);
}
.toast.gradient-accent .buttons button {
  background: linear-gradient(135deg, rgba(90,255,40,0.1), rgba(90,255,40,0.05));
  border: 1px solid rgba(90,255,40,0.2);
  border-radius: 10px;
  padding: 0.75rem 1.5rem;
  color: #fff;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(90,255,40,0.1);
}
.toast.gradient-accent .buttons button::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(90,255,40,0.15), rgba(90,255,40,0.08));
  opacity: 0;
  transition: opacity 0.3s ease;
}
.toast.gradient-accent .buttons button:hover {
  border-color: rgba(90,255,40,0.4);
  box-shadow: 0 4px 20px rgba(90,255,40,0.2);
  transform: translateY(-2px);
}
.toast.gradient-accent .buttons button:hover::before {
  opacity: 1;
}
.monaco-loader {
  height: 100vh;
}
.monaco-container {
  position: relative;
  width: 100%;
}
.monaco-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.25rem 0.5rem;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.api-monaco-container {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.browser-progress-bar .bar.bar-success {
  background: linear-gradient(90deg, #0f0 0%, #0c0 100%);
}
.browser-progress-bar .bar.bar-error {
  background: linear-gradient(90deg, #f00 0%, #c00 100%);
}
.browser-progress-bar .bar.bar-running {
  background: linear-gradient(90deg, #fc0 0%, #f90 100%);
}
.browser-progress-bar .bar.bar-pending {
  background: linear-gradient(90deg, #fc0 0%, #f90 100%);
}
.browser-progress-bar .bar.bar-empty {
  background: rgba(255,255,255,0.2);
}
.current-command-banner {
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), 0 2px 8px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(0,0,0,0.3);
  overflow: hidden;
  position: fixed;
  bottom: 24px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: fit-content;
  max-width: 72vw;
  z-index: 700;
  padding: 6px;
  display: flex;
  flex-direction: column;
  gap: 0;
  cursor: default;
}
.current-command-banner .banner-keywords {
  overflow-y: auto;
  max-height: 55vh;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.current-command-banner .banner-keywords::-webkit-scrollbar {
  display: none;
}
.current-command-banner .keyword-line {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 7px 14px;
  border-radius: 7px;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
  transition: max-height 220ms ease, opacity 180ms ease, padding 180ms ease;
  cursor: pointer;
}
.current-command-banner .keyword-line.current {
  max-height: 40px;
  opacity: 1;
  padding-top: 7px;
  padding-bottom: 7px;
}
.current-command-banner .keyword-line .keyword-status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
  background: #555;
}
.current-command-banner .keyword-line .keyword-elapsed {
  color: #fff;
  font-size: 12px;
  font-family: monospace;
  white-space: nowrap;
  flex-shrink: 0;
  width: 3em;
  text-align: right;
}
.current-command-banner .keyword-line .keyword-text {
  color: #fff;
  font-size: 13px;
  font-family: monospace;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.current-command-banner .keyword-line .keyword-return {
  color: #4ec9b0;
  font-size: 12px;
  font-family: monospace;
  white-space: nowrap;
  flex-shrink: 0;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.current-command-banner .keyword-line .keyword-selector-badge {
  font-size: 13px;
  color: #5aff28;
  opacity: 0.8;
  flex-shrink: 0;
  line-height: 1;
}
.current-command-banner .keyword-line.pending .keyword-status-dot,
.current-command-banner .keyword-line.info .keyword-status-dot,
.current-command-banner .keyword-line.running .keyword-status-dot {
  background: #fc0;
}
.current-command-banner .keyword-line.pass .keyword-status-dot,
.current-command-banner .keyword-line.success .keyword-status-dot {
  background: #3d3;
}
.current-command-banner .keyword-line.fail .keyword-status-dot,
.current-command-banner .keyword-line.error .keyword-status-dot {
  background: #f33;
}
.current-command-banner .keyword-line.not_set .keyword-status-dot,
.current-command-banner .keyword-line.skip .keyword-status-dot {
  background: #444;
}
.current-command-banner:hover .keyword-line.past {
  max-height: 40px;
  opacity: 1;
  padding-top: 7px;
  padding-bottom: 7px;
}
.current-command-banner:hover .keyword-line.past .keyword-text {
  color: #fff;
}
.current-command-banner:hover .keyword-line.future {
  max-height: 40px;
  opacity: 0.4;
  padding-top: 7px;
  padding-bottom: 7px;
}
.current-command-banner .banner-bottom-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
}
.current-command-banner .banner-controls {
  display: contents;
}
.current-command-banner .banner-live {
  font-size: 13px;
  font-family: monospace;
  color: #f44;
  white-space: nowrap;
  flex-shrink: 0;
  padding: 2px 4px;
  animation: banner-live-pulse 1.4s ease-in-out infinite;
}
.current-command-banner .banner-playpause,
.current-command-banner .banner-prev,
.current-command-banner .banner-next,
.current-command-banner .banner-speed {
  font-size: 14px;
  font-family: monospace;
  color: #fff;
  white-space: nowrap;
  flex-shrink: 0;
  cursor: pointer;
  padding: 2px 4px;
  border-radius: 4px;
  transition: color 100ms;
}
.current-command-banner .banner-playpause:hover,
.current-command-banner .banner-prev:hover,
.current-command-banner .banner-next:hover,
.current-command-banner .banner-speed:hover {
  color: #aaa;
}
.current-command-banner .banner-icon-toggle {
  font-size: 15px;
  font-family: monospace;
  color: rgba(255,255,255,0.35);
  cursor: pointer;
  flex-shrink: 0;
  padding: 2px 3px;
  border-radius: 4px;
  transition: color 120ms;
}
.current-command-banner .banner-icon-toggle:hover {
  color: rgba(255,255,255,0.8);
}
.current-command-banner .banner-icon-toggle.active {
  color: #5aff28;
}
.current-command-banner .browser-progress-bar {
  width: 100%;
  height: 4px;
  background: rgba(255,255,255,0.1);
  overflow: visible;
  position: relative;
  cursor: pointer;
  pointer-events: auto;
  border-radius: 4px;
  flex: 1;
}
.current-command-banner .browser-progress-bar .bar {
  height: 100%;
  border-radius: 0 0 8px 8px;
  transition: width 0.3s ease, background 0.3s ease;
}
.current-command-banner .browser-progress-bar .bar.bar-success {
  background: linear-gradient(90deg, #0f0 0%, #0c0 100%);
}
.current-command-banner .browser-progress-bar .bar.bar-error {
  background: linear-gradient(90deg, #f00 0%, #c00 100%);
}
.current-command-banner .browser-progress-bar .bar.bar-running,
.current-command-banner .browser-progress-bar .bar.bar-pending {
  background: linear-gradient(90deg, #fc0 0%, #f90 100%);
}
.current-command-banner .browser-progress-bar .bar.bar-empty {
  background: rgba(255,255,255,0.2);
}
.current-command-banner .browser-progress-bar .cluster {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  pointer-events: auto;
  z-index: 1000;
}
.current-command-banner .browser-progress-bar .cluster .progress-marker {
  position: relative;
  left: 0;
  top: 0;
  transform: none;
}
.current-command-banner .browser-progress-bar .progress-marker {
  position: absolute;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 1000;
  transform: translate(-50%, -50%);
  pointer-events: auto;
  display: none;
}
.current-command-banner .banner-description {
  color: #fff;
  font-size: 15px;
  padding: 0 14px;
}
@-moz-keyframes banner-live-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
@-webkit-keyframes banner-live-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
@-o-keyframes banner-live-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
@keyframes banner-live-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
.prd-renderer {
  padding: 15px;
  color: #fff;
  border-radius: 8px;
  margin-bottom: 20px;
}
.prd-renderer .prd-title {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 15px;
  padding-bottom: 8px;
}
.prd-renderer .prd-overview {
  margin-bottom: 20px;
  padding: 15px;
  border-radius: 6px;
}
.prd-renderer .prd-overview p {
  margin-bottom: 10px;
  line-height: 1.5;
}
.prd-renderer .prd-overview .prd-metadata {
  margin-top: 10px;
  font-size: 14px;
  color: #888;
}
.prd-renderer .prd-overview .prd-metadata p {
  margin-bottom: 5px;
}
.prd-renderer .accordion-summary {
  padding: 0.5rem;
}
.prd-renderer .accordion-details .accordion-details-text {
  padding: 0.5rem;
}
.prd-renderer .accordion-item {
  margin: 0;
}
.prd-renderer .prd-list .prd-list-item {
  padding: 12px;
  margin-bottom: 10px;
  border-radius: 4px;
}
.prd-renderer .prd-list .prd-list-item:last-child {
  margin-bottom: 0;
}
.prd-renderer .prd-list .prd-list-item p {
  margin-bottom: 5px;
  line-height: 1.4;
}
.prd-renderer .prd-list .prd-list-item strong {
  font-weight: 600;
}
.prd-renderer .prd-string-list {
  list-style-type: disc;
  padding-left: 20px;
  margin: 5px 0 10px 0;
}
.prd-renderer .prd-string-list li {
  margin-bottom: 3px;
}
.prd-renderer .prd-flow-list {
  list-style-type: decimal;
  padding-left: 20px;
  margin: 5px 0 10px 0;
}
.prd-renderer .prd-flow-list li {
  margin-bottom: 3px;
}
.prd-renderer .prd-smart-goal {
  margin-top: 5px;
  padding: 8px;
  border-radius: 4px;
  font-size: 14px;
}
.prd-renderer .prd-sub-section {
  margin-top: 0.25rem;
}
.prd-renderer .prd-json-view {
  margin-top: 20px;
  border-radius: 6px;
  overflow: hidden;
}
.prd-renderer .prd-json-view summary {
  padding: 10px 15px;
  cursor: pointer;
  font-weight: 600;
}
.prd-renderer .prd-json-view .prd-json-content {
  padding: 10px;
}
.page-inventory {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.pi-url-link {
  color: rgba(100,180,255,0.9);
}
.pi-url-link:hover {
  text-decoration: underline;
}
.pi-meta-muted {
  color: rgba(255,255,255,0.5);
}
.pi-coverage-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.875rem;
}
.pi-coverage-badge--full {
  background: rgba(0,120,50,0.35);
  color: rgba(180,255,200,0.95);
}
.pi-coverage-badge--partial {
  background: rgba(140,100,0,0.35);
  color: rgba(255,220,120,0.95);
}
.pi-coverage-badge--none {
  background: rgba(160,30,30,0.35);
  color: rgba(255,180,180,0.95);
}
.pi-priority-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.875rem;
}
.pi-priority-badge--high {
  background: rgba(160,30,30,0.25);
  color: rgba(255,160,160,0.95);
}
.pi-priority-badge--medium {
  background: rgba(140,100,0,0.25);
  color: rgba(255,210,100,0.95);
}
.pi-priority-badge--low {
  background: rgba(0,120,50,0.25);
  color: rgba(160,255,190,0.95);
}
.pi-status-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.8rem;
}
.pi-status-badge--pass {
  background: rgba(0,120,50,0.3);
  color: rgba(180,255,200,0.95);
}
.pi-status-badge--fail {
  background: rgba(160,30,30,0.3);
  color: rgba(255,180,180,0.95);
}
.pi-status-badge--skip,
.pi-status-badge--unknown {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.7);
}
.pi-element-type-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.875rem;
  background: rgba(40,80,180,0.3);
  color: rgba(160,200,255,0.95);
}
.pi-trigger-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.pi-feature-name {
  font-size: 1.125rem;
  font-weight: 600;
  color: #fff;
}
.pi-element-name {
  font-weight: 600;
  color: #fff;
}
.pi-section-body {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.pi-element-body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.pi-coverage-block {
  border-left: 2px solid rgba(60,100,200,0.5);
  padding-left: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.pi-coverage-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.pi-subsection-label {
  font-weight: 600;
  margin-bottom: 0.25rem;
  color: #fff;
}
.pi-subsection-label--pass {
  color: var(--cta);
}
.pi-subsection-label--fail {
  color: rgba(220,60,60,0.9);
}
.pi-subsection-heading {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: #fff;
}
.pi-elements-heading {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: #fff;
}
.pi-happy-path-heading {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: var(--cta);
}
.pi-error-cases-heading {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: rgba(220,60,60,0.9);
}
.pi-edge-cases-heading {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: rgba(255,170,0,0.9);
}
.pi-category-label {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255,255,255,0.5);
}
.pi-code {
  background: rgba(255,255,255,0.07);
  padding: 2px 8px;
  border-radius: 4px;
  font-family: monospace;
  font-size: 0.875rem;
}
.pi-selector-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pi-checklist {
  list-style: disc;
  padding-left: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pi-state-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
}
.pi-outcome-block {
  background: rgba(255,255,255,0.04);
  padding: 0.5rem 0.75rem;
  border-radius: 4px;
}
.pi-test-data-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
}
.pi-badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.pi-test-badge {
  height: 20px;
  object-fit: contain;
  cursor: pointer;
}
.pi-test-badge--sm {
  height: 16px;
}
.pi-test-tracking {
  border-top: 1px solid rgba(255,255,255,0.08);
  padding-top: 0.75rem;
  margin-top: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.pi-linked-tests {
  margin-bottom: 0.5rem;
}
.pi-results-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pi-result-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
}
.pi-result-time {
  font-size: 0.625rem;
  color: rgba(255,255,255,0.5);
}
.pi-steps-list {
  list-style: decimal;
  padding-left: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
a,
button,
[role="button"],
[role="tab"],
[role="menuitem"],
[role="option"] {
  cursor: pointer;
}
a {
  color: var(--cta);
  text-decoration: none;
  transition: color 300ms cubic-bezier(0.4, 0, 0.2, 1);
}
a:hover {
  color: var(--cta-hover);
}
.row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
input,
textarea,
select {
  background: rgba(255,255,255,0.03);
  backdrop-filter: blur(12px);
  border: 1.5px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: 0.75rem 1rem;
  color: rgba(255,255,255,0.95);
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  outline: none;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
input::placeholder,
textarea::placeholder,
select::placeholder {
  color: rgba(255,255,255,0.4);
  font-weight: 300;
  font-variation-settings: 'wght' 300;
}
input:hover,
textarea:hover,
select:hover {
  border-color: rgba(255,255,255,0.25);
  background: rgba(255,255,255,0.05);
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
input:focus,
textarea:focus,
select:focus,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  border-color: rgba(255,255,255,0.4);
  background: rgba(255,255,255,0.08);
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1), 0 4px 12px rgba(0,0,0,0.2);
  transform: scale(1.002);
}
input:disabled,
textarea:disabled,
select:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: rgba(255,255,255,0.01);
  border-color: rgba(255,255,255,0.05);
}
input.xl {
  margin-bottom: 16px;
  font-size: 2rem;
  line-height: 1.2;
  padding: 1.25rem 1.5rem;
  border-radius: 12px;
}
textarea {
  resize: vertical;
  min-height: 100px;
  line-height: 1.5;
}
select {
  cursor: pointer;
}
select::-ms-expand {
  display: none;
}
.input-group {
  position: relative;
}
.input-group input {
  padding-right: 3rem;
}
.input-group .input-icon {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,0.4);
  pointer-events: none;
}
.display-none {
  display: none !important;
}
.ProgressBarIndefinite {
  display: flex !important;
  flex-direction: row !important;
  gap: 3px !important;
}
.normal {
  font-weight: normal !important;
}
.hide {
  will-change: opacity;
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
}
.w10 {
  width: 10vw;
}
.w20 {
  width: 20vw;
}
.w30 {
  width: 30vw;
}
.w40 {
  width: 40vw;
}
.w50 {
  width: 50vw;
}
.w60 {
  width: 60vw;
}
.w70 {
  width: 70vw;
}
.w80 {
  width: 80vw;
}
.w90 {
  width: 90vw;
}
.w100 {
  width: 100vw;
}
.h10 {
  height: 10vh;
}
.h20 {
  height: 20vh;
}
.h30 {
  height: 30vh;
}
.h40 {
  height: 40vh;
}
.h50 {
  height: 50vh;
}
.h60 {
  height: 60vh;
}
.h70 {
  height: 70vh;
}
.h80 {
  height: 80vh;
}
.h90 {
  height: 90vh;
}
.h100 {
  height: 100vh;
}
.page-content-standard {
  padding-top: 2rem !important;
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 2rem;
  min-height: 100vh;
}
.groupHeading {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  line-height: 1.2;
  letter-spacing: normal;
  color: #fff;
  margin: 0;
}
.tag-category {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.tag-category-title {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  color: rgba(255,255,255,0.6);
  font-variant: small-caps;
  min-width: 80px;
}
.tag-category-title.tag-category-title-clickable {
  cursor: pointer;
  user-select: none;
  transition: color 120ms ease;
}
.tag-category-title.tag-category-title-clickable:hover {
  color: rgba(255,255,255,0.9);
}
.tag-category-title.tag-category-title-active {
  color: var(--cta);
}
.tag-category-title.tag-category-title-active:hover {
  color: var(--cta);
}
.tag-category-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.test-popup {
  padding: 0.75rem 1rem;
  border-radius: 0 0 14px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 8px 32px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background-color: rgba(12,12,13,0.88);
  overflow: hidden;
  border-top: none;
}
.test-popup__header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 14px;
}
.test-popup__actions {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  flex-shrink: 0;
}
.test-popup__actions button {
  margin: 0;
}
.test-popup__description {
  flex: 1;
  font-size: 1.1rem;
  font-weight: 400;
  color: #fff;
  line-height: 1.5;
  white-space: pre-wrap;
}
.test-popup__stats {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
  margin-bottom: 10px;
  align-items: baseline;
}
.test-popup__stat {
  font-size: 1.3rem;
  font-weight: 500;
  color: rgba(255,255,255,0.5);
  white-space: nowrap;
  flex-shrink: 0;
}
.test-popup__stat.stat-hidden {
  display: none;
}
.test-popup__stat.stat-mono {
  font-family: monospace;
}
.test-popup__stat.stat-pass {
  color: var(--cta);
}
.test-popup__stat.stat-fail {
  color: rgba(220,60,60,0.9);
}
.test-popup__stat.stat-warn {
  color: rgba(255,170,0,0.9);
}
.test-popup__chart {
  height: 80px;
  margin-bottom: 10px;
}
.test-popup__chart .chart-container {
  aspect-ratio: auto;
  height: 80px;
}
.test-popup__errors {
  border-top: 1px solid rgba(255,255,255,0.06);
  padding-top: 10px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 2.4rem;
}
.test-popup__error-msg {
  font-size: 1.2rem;
  font-weight: 400;
  color: rgba(220,60,60,0.9);
  white-space: pre-wrap;
  word-break: break-word;
}
.test-popup__links {
  margin-bottom: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}
.recording-controls {
  position: fixed;
  top: 1rem;
  right: 1rem;
  z-index: 1000;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  background: rgba(0,0,0,0.9);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 0.5rem;
  backdrop-filter: blur(10px);
  box-shadow: 0 4px 16px rgba(0,0,0,0.5);
}
.recording-controls .recording-indicator {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
}
.recording-controls .recording-dot {
  width: 0.625rem;
  height: 0.625rem;
  background: #ef4444;
  border-radius: 50%;
  animation: pulse 1.5s ease-in-out infinite;
}
@-moz-keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
}
@-webkit-keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
}
@-o-keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
}
@keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
}
.search-tags-container {
  margin-bottom: 1rem;
}
.search-tags-container .search-tags-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}
.search-tags-container .search-tags-header .search-tags-title {
  font-size: 1rem;
  font-weight: 600;
  margin: 0;
}
.search-tags-container .search-tags-header .search-tags-clear-btn {
  background-color: var(--error);
  color: #fff;
  font-size: 0.75rem;
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.search-tags-container .search-tags-header .search-tags-clear-btn:hover {
  opacity: 0.9;
}
.search-tags-container .search-tags-search {
  margin-bottom: 0.5rem;
}
.search-tags-container .search-tags-search .search-tags-input {
  width: 100%;
  border-radius: 4px;
  height: 2rem;
}
.search-tags-container .search-tags-content .search-tags-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.search-tags-container .search-tags-content .search-tags-categories .search-tags-category {
  flex: 1;
  min-width: 150px;
  max-width: calc(25% - 1rem);
}
.search-tags-container .search-tags-content .search-tags-categories .search-tags-category .search-tags-category-title {
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
  color: var(--fg-muted);
  text-transform: capitalize;
}
.search-tags-container .search-tags-content .search-tags-categories .search-tags-category.empty {
  opacity: 0.4;
}
.search-tags-container .search-tags-content .search-tags-categories .search-tags-category.empty .search-tags-category-title {
  color: var(--fg-muted-more);
}
.search-tags-container .search-tags-content .search-tags-categories .search-tags-category.empty .search-tags-empty-category {
  color: var(--fg-muted-more);
  font-style: italic;
  font-size: 0.75rem;
  padding: 0.25rem 0;
  min-height: 1.5rem;
  display: flex;
  align-items: center;
}
.search-tags-container .search-tags-content .search-tags-empty {
  color: var(--fg-muted);
  font-style: italic;
  padding: 0.5rem 0;
}
@media (max-width: 768px) {
  .search-tags-container .search-tags-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }
  .search-tags-container .search-tags-header .search-tags-clear-btn {
    font-size: 0.7rem;
    padding: 0.15rem 0.4rem;
  }
  .search-tags-container .search-tags-content .search-tags-categories {
    flex-direction: column;
    gap: 0.5rem;
  }
  .search-tags-container .search-tags-content .search-tags-categories .search-tags-category {
    max-width: 100%;
  }
  .search-tags-container .search-tags-content .search-tags-categories .search-tags-category .search-tags-category-title {
    font-size: 0.8rem;
  }
}
.page-renderer-screenshot {
  width: 100%;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.1);
  display: block;
}
.page-renderer-link {
  color: rgba(130,170,255,0.9);
  text-decoration: none;
  transition: all 150ms ease;
}
.page-renderer-link:hover {
  text-decoration: underline;
}
.page-renderer-auth-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.875rem;
  background: rgba(200,150,0,0.15);
  color: rgba(255,210,100,0.9);
}
.page-renderer-features {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.page-renderer-feature-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 6px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.page-renderer-feature-item:hover {
  background: rgba(255,255,255,0.07);
}
.page-renderer-elements {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.page-renderer-element {
  padding: 12px;
  border-radius: 6px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
}
.page-renderer-element-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}
.page-renderer-element-type {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.75rem;
  background: rgba(50,100,200,0.15);
  color: rgba(150,180,255,0.9);
}
.page-renderer-element-name {
  font-weight: 500;
}
.page-renderer-element-selector {
  display: block;
  font-size: 0.875rem;
  font-family: 'SF NS Mono', monospace;
  color: rgba(255,255,255,0.5);
}
.page-renderer-element-desc {
  font-size: 0.875rem;
  margin-top: 4px;
  color: rgba(255,255,255,0.7);
}
.page-renderer-notes-list {
  list-style-type: disc;
  margin-left: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.cli-player-container {
  margin: 5rem auto;
  width: 80vw;
  height: 90vh;
}
.cli-player-container .control-bar {
  background: rgba(0,0,0,0.8);
}
.ap-player .ap-overlay-start .ap-play-button {
  left: 40% !important;
}
.bar-item {
  height: 1rem;
  width: 0.5rem;
}
.multi-screenshot {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.multi-screenshot .screenshot-grid {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
  width: 100%;
}
.multi-screenshot .screenshot-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 800px;
}
.multi-screenshot .screenshot-item .screenshot-container {
  text-align: center;
  margin-bottom: 1rem;
  width: 100%;
  display: flex;
  justify-content: space-around;
}
.multi-screenshot .screenshot-item .screenshot-container .screenshot-image {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.multi-screenshot .screenshot-item .screenshot-info {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.multi-screenshot .screenshot-item .screenshot-info .device-name {
  font-weight: 600;
  color: rgba(255,255,255,0.9);
}
.multi-screenshot .screenshot-item .screenshot-info .resolution {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  background: rgba(255,255,255,0.1);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
}
.persona-type-badge {
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  font-size: 0.75rem;
}
.persona-type-badge--primary {
  background: #1e3a5f;
  color: #bfdbfe;
}
.persona-type-badge--secondary {
  background: #3b0764;
  color: #e9d5ff;
}
.persona-type-badge--admin {
  background: #450a0a;
  color: #fecaca;
}
.persona-type-badge--default {
  background: #1f2937;
  color: #f3f4f6;
}
.persona-auth-state {
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  background: #14532d;
  color: #bbf7d0;
  font-size: 0.875rem;
}
.persona-section-box {
  background: #1f2937;
  padding: 1rem;
  border-radius: 6px;
}
.persona-credentials {
  background: #1f2937;
  padding: 1rem;
  border-radius: 6px;
  font-family: monospace;
  font-size: 0.875rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.persona-credentials p {
  margin: 0;
}
.persona-label {
  color: rgba(255,255,255,0.5);
}
.persona-tags-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.persona-permission-badge {
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  background: #451a03;
  color: #fef08a;
  font-size: 0.875rem;
}
.persona-goals-title {
  color: #86efac;
}
.persona-pain-title {
  color: #fca5a5;
}
.persona-list {
  list-style: disc;
  padding-left: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
a,
button,
[role="button"],
[role="tab"],
[role="menuitem"],
[role="option"] {
  cursor: pointer;
}
a {
  color: var(--cta);
  text-decoration: none;
  transition: color 300ms cubic-bezier(0.4, 0, 0.2, 1);
}
a:hover {
  color: var(--cta-hover);
}
.row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
input,
textarea,
select {
  background: rgba(255,255,255,0.03);
  backdrop-filter: blur(12px);
  border: 1.5px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: 0.75rem 1rem;
  color: rgba(255,255,255,0.95);
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  outline: none;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
input::placeholder,
textarea::placeholder,
select::placeholder {
  color: rgba(255,255,255,0.4);
  font-weight: 300;
  font-variation-settings: 'wght' 300;
}
input:hover,
textarea:hover,
select:hover {
  border-color: rgba(255,255,255,0.25);
  background: rgba(255,255,255,0.05);
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
input:focus,
textarea:focus,
select:focus,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  border-color: rgba(255,255,255,0.4);
  background: rgba(255,255,255,0.08);
  box-shadow: 0 0 0 2px rgba(255,255,255,0.1), 0 4px 12px rgba(0,0,0,0.2);
  transform: scale(1.002);
}
input:disabled,
textarea:disabled,
select:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: rgba(255,255,255,0.01);
  border-color: rgba(255,255,255,0.05);
}
input.xl {
  margin-bottom: 16px;
  font-size: 2rem;
  line-height: 1.2;
  padding: 1.25rem 1.5rem;
  border-radius: 12px;
}
textarea {
  resize: vertical;
  min-height: 100px;
  line-height: 1.5;
}
select {
  cursor: pointer;
}
select::-ms-expand {
  display: none;
}
.input-group {
  position: relative;
}
.input-group input {
  padding-right: 3rem;
}
.input-group .input-icon {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,0.4);
  pointer-events: none;
}
.display-none {
  display: none !important;
}
.ProgressBarIndefinite {
  display: flex !important;
  flex-direction: row !important;
  gap: 3px !important;
}
.normal {
  font-weight: normal !important;
}
.hide {
  will-change: opacity;
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
}
.w10 {
  width: 10vw;
}
.w20 {
  width: 20vw;
}
.w30 {
  width: 30vw;
}
.w40 {
  width: 40vw;
}
.w50 {
  width: 50vw;
}
.w60 {
  width: 60vw;
}
.w70 {
  width: 70vw;
}
.w80 {
  width: 80vw;
}
.w90 {
  width: 90vw;
}
.w100 {
  width: 100vw;
}
.h10 {
  height: 10vh;
}
.h20 {
  height: 20vh;
}
.h30 {
  height: 30vh;
}
.h40 {
  height: 40vh;
}
.h50 {
  height: 50vh;
}
.h60 {
  height: 60vh;
}
.h70 {
  height: 70vh;
}
.h80 {
  height: 80vh;
}
.h90 {
  height: 90vh;
}
.h100 {
  height: 100vh;
}
.page-content-standard {
  padding-top: 2rem !important;
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 2rem;
  min-height: 100vh;
}
.groupHeading {
  font-family: "SF NS", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 900;
  font-variation-settings: 'wght' 900;
  line-height: 1.2;
  letter-spacing: normal;
  color: #fff;
  margin: 0;
}
.tag-category {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.tag-category-title {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 400;
  font-variation-settings: 'wght' 400;
  color: rgba(255,255,255,0.6);
  font-variant: small-caps;
  min-width: 80px;
}
.tag-category-title.tag-category-title-clickable {
  cursor: pointer;
  user-select: none;
  transition: color 120ms ease;
}
.tag-category-title.tag-category-title-clickable:hover {
  color: rgba(255,255,255,0.9);
}
.tag-category-title.tag-category-title-active {
  color: var(--cta);
}
.tag-category-title.tag-category-title-active:hover {
  color: var(--cta);
}
.tag-category-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
