:root {
  --lectivas-shell-horizontal: clamp(5px, 0.8vw, 10px);
  --lectivas-gap: clamp(10px, 1.6vw, 16px);
  --lectivas-page-bg: var(--color-body-bg, #f5f6fb);
  --lectivas-panel-bg: var(--user-panel-bg, var(--surface-soft, #ffffff));
  --lectivas-panel-border: var(--floating-panel-border, var(--surface-soft-border, rgba(24, 34, 67, 0.22)));
  --lectivas-panel-shadow: var(--surface-soft-shadow, 0 6px 14px rgba(22, 32, 72, 0.14));
  --lectivas-panel-gloss: linear-gradient(
      180deg,
      var(--user-panel-header-bg, var(--surface-default, #ffffff)),
      var(--lectivas-panel-bg) 58px
    );
  --lectivas-header-bg: linear-gradient(
      180deg,
      var(--user-panel-header-bg, var(--surface-default, #ffffff)),
      var(--lectivas-panel-bg) 62px
    );
  --lectivas-header-border: var(--lectivas-panel-border);
  --lectivas-header-glow-a: color-mix(in srgb, var(--primary-accent, #3a7afe) 32%, transparent);
  --lectivas-header-glow-b: color-mix(in srgb, var(--secondary-accent, #5b6479) 30%, transparent);
  --lectivas-tab-bg: color-mix(in srgb, var(--surface-subtle, rgba(58, 122, 254, 0.06)) 64%, transparent);
  --lectivas-tab-bg-hover: var(--small-btn-hover, color-mix(in srgb, var(--surface-subtle, rgba(58, 122, 254, 0.06)) 88%, transparent));
  --lectivas-card-bg: color-mix(in srgb, var(--surface-default, #ffffff) 90%, var(--surface-subtle, rgba(58, 122, 254, 0.06)) 10%);
  --lectivas-chip-bg: color-mix(in srgb, var(--surface-subtle, rgba(58, 122, 254, 0.06)) 68%, var(--surface-default, #ffffff));
  --lectivas-text-primary: var(--color-text-primary, #1f2433);
  --lectivas-muted: var(--text-muted, #5b6479);
  --lectivas-chip-text: var(--color-text-primary, #1f2433);
  --lectivas-divider: color-mix(in srgb, var(--surface-border, rgba(24, 34, 67, 0.14)) 78%, transparent);
  --lectivas-accent: var(--primary-accent, #3a7afe);
  --lectivas-button-shadow: 0 12px 24px color-mix(in srgb, var(--lectivas-accent) 22%, transparent);
  --lectivas-link-bg-hover: color-mix(in srgb, var(--lectivas-accent) 14%, transparent);
  --lectivas-link-text-hover: color-mix(in srgb, var(--lectivas-accent) 82%, var(--lectivas-chip-text));
  --lectivas-aspect-harmonic-color: color-mix(in srgb, #2f6bff 86%, var(--lectivas-accent) 14%);
  --lectivas-aspect-inharmonic-color: color-mix(in srgb, #d24a4a 84%, var(--lectivas-text-primary) 16%);
  --lectivas-points-modifier-text: color-mix(in srgb, var(--lectivas-accent) 86%, var(--lectivas-text-primary));
  --lectivas-points-modifier-bg: color-mix(in srgb, var(--lectivas-accent) 12%, transparent);
  --lectivas-points-modifier-border: color-mix(in srgb, var(--lectivas-accent) 32%, transparent);
  --lectivas-rule-lunar-color: var(--btn-primary-text, #ffffff);
  --lectivas-rule-lunar-border-color: color-mix(in srgb, var(--lectivas-accent) 68%, var(--lectivas-panel-border));
  --lectivas-rule-lunar-bg: var(--btn-primary-bg, var(--lectivas-accent));
  --lectivas-rule-lunar-glow-color: color-mix(in srgb, var(--lectivas-accent) 34%, transparent);
  --lectivas-disabled-field-bg: color-mix(in srgb, #d7dbe4 72%, var(--lectivas-panel-bg));
  --lectivas-disabled-field-border: color-mix(in srgb, var(--lectivas-panel-border) 86%, #8b94a6);
  --lectivas-disabled-field-text: color-mix(in srgb, var(--lectivas-muted) 86%, var(--lectivas-text-primary));
  --lectivas-assisted-alert-bg: color-mix(in srgb, #d93025 9%, var(--lectivas-panel-bg));
  --lectivas-assisted-alert-border: color-mix(in srgb, #d93025 56%, transparent);
  --lectivas-assisted-alert-text: #a8071a;
  --lectivas-coordinate-apply-bg: color-mix(in srgb, #159a63 13%, var(--lectivas-panel-bg));
  --lectivas-coordinate-apply-border: color-mix(in srgb, #159a63 48%, transparent);
  --lectivas-coordinate-apply-text: #087f5b;
  --lectivas-overlay-opacity: 1;
  --lectivas-radius-xl: var(--panel-radius, 4px);
  --lectivas-section-divider: color-mix(in srgb, var(--user-panel-divider, var(--lectivas-panel-border)) 72%, transparent);
}

:root[data-theme="light"] {
  --lectivas-panel-bg: color-mix(in srgb, var(--surface-soft, #ffffff) 97%, #ffffff);
  --lectivas-header-bg: linear-gradient(
      180deg,
      var(--user-panel-header-bg, #f8faff),
      var(--lectivas-panel-bg) 62px
    );
  --lectivas-header-glow-a: color-mix(in srgb, var(--primary-accent, #3a7afe) 26%, transparent);
  --lectivas-header-glow-b: color-mix(in srgb, var(--secondary-accent, #5b6479) 18%, transparent);
  --lectivas-tab-bg: color-mix(in srgb, var(--surface-subtle, rgba(58, 122, 254, 0.06)) 78%, #ffffff);
  --lectivas-tab-bg-hover: color-mix(in srgb, var(--small-btn-hover, rgba(58, 122, 254, 0.12)) 84%, #ffffff);
  --lectivas-card-bg: #ffffff;
  --lectivas-chip-bg: color-mix(in srgb, var(--surface-subtle, rgba(58, 122, 254, 0.06)) 80%, #ffffff);
  --lectivas-accent: var(--primary-accent, #3a7afe);
  --lectivas-panel-shadow: 0 4px 10px rgba(22, 32, 72, 0.08);
  --lectivas-aspect-harmonic-color: #2f6bff;
  --lectivas-aspect-inharmonic-color: #c94747;
  --lectivas-points-modifier-text: color-mix(in srgb, var(--lectivas-accent) 78%, #17213a);
  --lectivas-points-modifier-bg: color-mix(in srgb, var(--lectivas-accent) 10%, #ffffff);
  --lectivas-points-modifier-border: color-mix(in srgb, var(--lectivas-accent) 28%, transparent);
  --lectivas-disabled-field-bg: #e7eaf0;
  --lectivas-disabled-field-border: #c5cad6;
  --lectivas-disabled-field-text: #667085;
  --lectivas-assisted-alert-bg: #fff1f0;
  --lectivas-assisted-alert-border: #ffaaa5;
  --lectivas-assisted-alert-text: #a8071a;
  --lectivas-coordinate-apply-bg: #e9f8f1;
  --lectivas-coordinate-apply-border: #89d5b0;
  --lectivas-coordinate-apply-text: #087f5b;
  --lectivas-overlay-opacity: 0.24;
}

:root[data-theme="dark"] {
  --lectivas-panel-bg: color-mix(in srgb, var(--surface-soft, #1b1e29) 92%, #10131d 8%);
  --lectivas-panel-gloss: linear-gradient(
      180deg,
      var(--user-panel-header-bg, var(--surface-default, #1f2230)),
      var(--lectivas-panel-bg) 58px
    );
  --lectivas-header-bg: linear-gradient(
      180deg,
      var(--user-panel-header-bg, var(--surface-default, #1f2230)),
      var(--lectivas-panel-bg) 62px
    );
  --lectivas-header-glow-a: color-mix(in srgb, var(--primary-accent, #8b9bff) 38%, transparent);
  --lectivas-header-glow-b: color-mix(in srgb, var(--secondary-accent, #94a3b8) 30%, transparent);
  --lectivas-tab-bg: color-mix(in srgb, var(--surface-default, #1f2230) 90%, var(--surface-subtle, rgba(139, 155, 255, 0.06)) 10%);
  --lectivas-tab-bg-hover: color-mix(in srgb, var(--surface-default, #1f2230) 82%, var(--surface-subtle, rgba(139, 155, 255, 0.06)) 18%);
  --lectivas-card-bg: color-mix(in srgb, var(--surface-default, #1f2230) 88%, var(--surface-subtle, rgba(139, 155, 255, 0.06)) 12%);
  --lectivas-chip-bg: color-mix(in srgb, var(--surface-subtle, rgba(139, 155, 255, 0.06)) 74%, var(--surface-default, #1f2230));
  --lectivas-accent: color-mix(in srgb, var(--primary-accent, #8b9bff) 88%, #ffffff 12%);
  --lectivas-button-shadow: 0 14px 26px color-mix(in srgb, #000000 45%, var(--lectivas-accent) 25%);
  --lectivas-link-bg-hover: color-mix(in srgb, var(--lectivas-accent) 18%, transparent);
  --lectivas-link-text-hover: color-mix(in srgb, #ffffff 24%, var(--lectivas-accent));
  --lectivas-aspect-harmonic-color: color-mix(in srgb, #76a5ff 86%, #dce7ff 14%);
  --lectivas-aspect-inharmonic-color: color-mix(in srgb, #ff7070 82%, #ffe2e2 18%);
  --lectivas-points-modifier-text: color-mix(in srgb, var(--lectivas-accent) 72%, #ffffff);
  --lectivas-points-modifier-bg: color-mix(in srgb, var(--lectivas-accent) 15%, transparent);
  --lectivas-points-modifier-border: color-mix(in srgb, var(--lectivas-accent) 38%, transparent);
  --lectivas-disabled-field-bg: color-mix(in srgb, #2b3140 76%, #111827);
  --lectivas-disabled-field-border: color-mix(in srgb, #596174 64%, transparent);
  --lectivas-disabled-field-text: color-mix(in srgb, #9ca3af 86%, #ffffff);
  --lectivas-assisted-alert-bg: color-mix(in srgb, #ff6b6b 12%, #1f2230);
  --lectivas-assisted-alert-border: color-mix(in srgb, #ff7a7a 58%, transparent);
  --lectivas-assisted-alert-text: #ffb3b3;
  --lectivas-coordinate-apply-bg: color-mix(in srgb, #49d596 16%, #1f2230);
  --lectivas-coordinate-apply-border: color-mix(in srgb, #58e0a1 56%, transparent);
  --lectivas-coordinate-apply-text: #9af1c5;
  --lectivas-overlay-opacity: 0.44;
}

:root[data-theme="night"] {
  --lectivas-panel-bg: color-mix(in srgb, var(--surface-soft, rgba(17, 13, 40, 0.5)) 88%, #0a1020 12%);
  --lectivas-panel-gloss: linear-gradient(
      180deg,
      var(--user-panel-header-bg, var(--surface-default, #111c33)),
      var(--lectivas-panel-bg) 58px
    );
  --lectivas-header-bg: linear-gradient(
      180deg,
      var(--user-panel-header-bg, var(--surface-default, #111c33)),
      var(--lectivas-panel-bg) 62px
    );
  --lectivas-header-glow-a: color-mix(in srgb, var(--primary-accent, #94a3b8) 40%, transparent);
  --lectivas-header-glow-b: color-mix(in srgb, var(--secondary-accent, #94a3b8) 34%, transparent);
  --lectivas-tab-bg: color-mix(in srgb, var(--surface-default, #111c33) 88%, var(--surface-subtle, rgba(126, 102, 255, 0.08)) 12%);
  --lectivas-tab-bg-hover: color-mix(in srgb, var(--surface-default, #111c33) 80%, var(--surface-subtle, rgba(126, 102, 255, 0.08)) 20%);
  --lectivas-card-bg: color-mix(in srgb, var(--surface-default, #111c33) 86%, var(--surface-subtle, rgba(126, 102, 255, 0.08)) 14%);
  --lectivas-chip-bg: color-mix(in srgb, var(--surface-subtle, rgba(126, 102, 255, 0.08)) 76%, var(--surface-default, #111c33));
  --lectivas-accent: color-mix(in srgb, var(--primary-accent, #7e66ff) 86%, #f8f8ff 14%);
  --lectivas-button-shadow: 0 14px 28px color-mix(in srgb, #020617 60%, var(--lectivas-accent) 28%);
  --lectivas-link-bg-hover: color-mix(in srgb, var(--lectivas-accent) 22%, transparent);
  --lectivas-link-text-hover: color-mix(in srgb, #ffffff 30%, var(--lectivas-accent));
  --lectivas-aspect-harmonic-color: color-mix(in srgb, #7ea9ff 82%, #d8e5ff 18%);
  --lectivas-aspect-inharmonic-color: color-mix(in srgb, #ff7373 80%, #ffd8d8 20%);
  --lectivas-points-modifier-text: color-mix(in srgb, var(--lectivas-accent) 70%, #ffffff);
  --lectivas-points-modifier-bg: color-mix(in srgb, var(--lectivas-accent) 18%, transparent);
  --lectivas-points-modifier-border: color-mix(in srgb, var(--lectivas-accent) 42%, transparent);
  --lectivas-disabled-field-bg: color-mix(in srgb, #222944 72%, #0a1020);
  --lectivas-disabled-field-border: color-mix(in srgb, #56607a 66%, transparent);
  --lectivas-disabled-field-text: color-mix(in srgb, #a7aec3 88%, #ffffff);
  --lectivas-assisted-alert-bg: color-mix(in srgb, #ff6565 13%, #111c33);
  --lectivas-assisted-alert-border: color-mix(in srgb, #ff7777 60%, transparent);
  --lectivas-assisted-alert-text: #ffc1c1;
  --lectivas-coordinate-apply-bg: color-mix(in srgb, #4cda9b 18%, #111c33);
  --lectivas-coordinate-apply-border: color-mix(in srgb, #60e5a8 58%, transparent);
  --lectivas-coordinate-apply-text: #a9f5ce;
  --lectivas-overlay-opacity: 0.5;
}

body.lectivas-page {
  min-height: 100vh;
  margin: 0;
  font-size: 12px;
  color: var(--lectivas-text-primary);
  background: var(--lectivas-page-bg);
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0 0 16px;
  position: relative;
  overflow-x: hidden;
  transition: background 0.25s ease, color 0.25s ease;
}

body.lectivas-page::before {
  content: "";
  position: fixed;
  inset: 0;
  background: linear-gradient(
    180deg,
    color-mix(in srgb, var(--surface-subtle, rgba(255, 255, 255, 0.08)) 68%, transparent),
    transparent 320px
  );
  opacity: var(--lectivas-overlay-opacity);
  pointer-events: none;
  z-index: 0;
}

.lectivas-header,
.lectivas-grid {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
  padding-left: var(--lectivas-shell-horizontal);
  padding-right: var(--lectivas-shell-horizontal);
}

.lectivas-header {
  min-height: 44px;
  padding: 0 var(--lectivas-shell-horizontal);
  border: 0;
  border-bottom: 1px solid var(--lectivas-header-border);
  border-radius: 0;
  background: var(--lectivas-panel-bg);
  box-shadow: none;
  overflow: visible;
}

.lectivas-header::before {
  display: none;
}

.lectivas-header__content {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  gap: 14px;
  flex-wrap: nowrap;
}

.lectivas-header__brand {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.lectivas-header__title {
  margin: 0;
  color: var(--lectivas-text-primary);
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}

.lectivas-header__subtitle {
  min-width: 0;
  overflow: hidden;
  color: var(--lectivas-muted);
  font-size: 11px;
  font-weight: 650;
  line-height: 1;
  text-overflow: ellipsis;
}

.lectivas-header__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 5px;
  flex-wrap: nowrap;
  margin-left: auto;
}

.lectivas-header__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 7px;
  border: 1px solid var(--small-btn-border, var(--lectivas-panel-border));
  border-radius: var(--panel-radius, 4px);
  background: var(--small-btn-bg, var(--lectivas-chip-bg));
  color: var(--lectivas-text-primary);
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

.lectivas-header__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 10px;
  border: 1px solid var(--small-btn-border, var(--lectivas-panel-border));
  border-radius: var(--panel-radius, 4px);
  background: var(--small-btn-bg, transparent);
  color: var(--lectivas-text-primary);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

.lectivas-header__link:hover,
.lectivas-header__link:focus-visible {
  background: var(--small-btn-hover, var(--lectivas-tab-bg-hover));
  border-color: color-mix(in srgb, var(--lectivas-accent) 42%, var(--lectivas-panel-border));
  color: var(--lectivas-text-primary);
}

.lectivas-grid {
  display: grid;
  grid-template-columns: minmax(300px, 340px) minmax(520px, 1fr) minmax(300px, 340px);
  grid-template-areas: "form results profile";
  gap: var(--lectivas-gap);
  align-items: start;
  padding-bottom: 18px;
}

.lectivas-panel {
  background: var(--lectivas-panel-gloss, var(--lectivas-panel-bg));
  border: 1px solid var(--lectivas-panel-border);
  border-radius: var(--panel-radius, 4px);
  box-shadow: var(--lectivas-panel-shadow);
  position: relative;
  overflow: hidden;
  transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.lectivas-panel::before {
  display: none;
}

.lectivas-panel--form {
  grid-area: form;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 8px;
  overflow: visible;
  border-radius: var(--panel-radius, 4px);
}

.lectivas-left-column {
  align-self: stretch;
  min-height: 0;
}

.lectivas-left-column > * {
  flex: 0 0 auto;
}

.lectivas-panel--search {
  min-width: 0;
  background: var(--lectivas-panel-bg);
  box-shadow: 0 1px 4px color-mix(in srgb, #000000 6%, transparent);
}

.lectivas-panel--results {
  grid-area: results;
  background: var(--lectivas-panel-bg);
  box-shadow: none;
}

.lectivas-panel--profile {
  grid-area: profile;
}

.lectivas-profile-column {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 8px;
}

.lectivas-panel .collapsible-body {
  position: relative;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.user-panel-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--lectivas-text-primary);
  margin-bottom: -4px;
}

.lectivas-results-heading {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  gap: 8px;
}

.lectivas-results-count {
  color: color-mix(in srgb, var(--lectivas-muted) 88%, var(--lectivas-text-primary));
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
  text-align: left;
  white-space: nowrap;
}

.lectivas-results-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.46fr) minmax(300px, 0.54fr);
  gap: 10px;
  align-items: stretch;
  min-width: 0;
}

.lectivas-results-list {
  display: flex;
  min-width: 0;
  min-height: 0;
  height: 100%;
  flex-direction: column;
  gap: 12px;
}

.lectivas-results-layout.is-assisted-panel-open #resultsStatus,
.lectivas-results-layout.is-assisted-panel-open #resultsGrid,
.lectivas-results-layout.is-assisted-panel-open #windowsGrid {
  display: none;
}

.lectivas-chart-preview {
  min-width: 0;
  position: sticky;
  top: 10px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 0;
}

.lectivas-chart-preview[hidden] {
  display: none;
}

.lectivas-chart-preview__canvas {
  width: min(100%, var(--lectivas-chart-canvas-size, 100%));
  max-width: none;
  aspect-ratio: 1;
  display: block;
}

.lectivas-chart-preview.is-perfect-selecting .lectivas-chart-preview__canvas {
  cursor: crosshair;
}

.lectivas-perfect-chart {
  position: absolute;
  top: calc(var(--lectivas-chart-canvas-size, 100%) / 2);
  left: 50%;
  z-index: 3;
  display: flex;
  width: min(300px, 58%);
  min-height: 42px;
  transform: translate(-50%, -50%);
  align-items: center;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  pointer-events: none;
  text-align: center;
}

.lectivas-perfect-chart[hidden] {
  display: none;
}

.lectivas-perfect-chart__button {
  pointer-events: auto;
  min-width: 0;
  width: min(210px, 100%);
  min-height: 38px;
  padding: 8px 12px;
  border: 1px solid color-mix(in srgb, var(--lectivas-accent) 42%, var(--lectivas-panel-border));
  border-radius: calc(var(--panel-radius, 4px) * 1.5);
  background:
    linear-gradient(
      135deg,
      color-mix(in srgb, var(--lectivas-accent) 15%, var(--lectivas-panel-bg)),
      color-mix(in srgb, var(--lectivas-panel-bg) 86%, #ffffff 14%)
    );
  color: var(--lectivas-accent);
  box-shadow: 0 8px 18px color-mix(in srgb, #000000 13%, transparent);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0;
  cursor: pointer;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.lectivas-perfect-chart__button:hover,
.lectivas-perfect-chart__button:focus-visible {
  border-color: color-mix(in srgb, var(--lectivas-accent) 68%, var(--lectivas-panel-border));
  box-shadow: 0 10px 22px color-mix(in srgb, var(--lectivas-accent) 18%, transparent);
  transform: translateY(-1px);
  outline: 0;
}

.lectivas-perfect-chart__prompt {
  margin: 0;
  padding: 7px 10px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 86%, transparent);
  border-radius: calc(var(--panel-radius, 4px) * 1.5);
  background: color-mix(in srgb, var(--lectivas-panel-bg) 92%, transparent);
  color: var(--lectivas-text-primary);
  box-shadow: 0 6px 16px color-mix(in srgb, #000000 10%, transparent);
  font-size: 11.5px;
  font-weight: 800;
  line-height: 1.25;
}

.lectivas-perfect-chart__prompt .hamburg-symbols {
  color: var(--lectivas-accent);
  font-size: 15px;
  font-weight: 400;
  line-height: 1;
  vertical-align: -0.08em;
}

.lectivas-perfect-chart__prompt[hidden] {
  display: none;
}

.lectivas-perfect-chart__options {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  pointer-events: auto;
}

.lectivas-perfect-chart__options[hidden] {
  display: none;
}

.lectivas-perfect-chart__planet {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  padding: 0;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  border-radius: 50%;
  background: color-mix(in srgb, var(--lectivas-panel-bg) 92%, transparent);
  color: var(--lectivas-text-primary);
  box-shadow: 0 4px 11px color-mix(in srgb, #000000 9%, transparent);
  cursor: pointer;
  transition: border-color 0.16s ease, color 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}

.lectivas-perfect-chart__planet .hamburg-symbols {
  font-size: 17px;
  font-weight: 400;
  line-height: 1;
}

.lectivas-perfect-chart__planet:hover,
.lectivas-perfect-chart__planet:focus-visible,
.lectivas-perfect-chart__planet.is-selected {
  border-color: color-mix(in srgb, var(--lectivas-accent) 62%, var(--lectivas-panel-border));
  color: var(--lectivas-accent);
  box-shadow: 0 6px 14px color-mix(in srgb, var(--lectivas-accent) 14%, transparent);
  transform: translateY(-1px);
  outline: 0;
}

.lectivas-perfect-chart__house {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 30px;
  padding: 0 7px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-panel-bg) 92%, transparent);
  color: var(--lectivas-text-primary);
  box-shadow: 0 4px 11px color-mix(in srgb, #000000 9%, transparent);
  cursor: pointer;
  font: inherit;
  font-size: 10.5px;
  font-weight: 850;
  line-height: 1;
  transition: border-color 0.16s ease, color 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}

.lectivas-perfect-chart__house:hover,
.lectivas-perfect-chart__house:focus-visible,
.lectivas-perfect-chart__house.is-selected {
  border-color: color-mix(in srgb, var(--lectivas-accent) 62%, var(--lectivas-panel-border));
  color: var(--lectivas-accent);
  box-shadow: 0 6px 14px color-mix(in srgb, var(--lectivas-accent) 14%, transparent);
  transform: translateY(-1px);
  outline: 0;
}

.lectivas-perfect-chart__estimate {
  pointer-events: none;
  width: min(280px, 100%);
  padding: 8px 9px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  border-radius: calc(var(--panel-radius, 4px) * 1.5);
  background: color-mix(in srgb, var(--lectivas-panel-bg) 94%, transparent);
  color: var(--lectivas-text-primary);
  box-shadow: 0 8px 18px color-mix(in srgb, #000000 10%, transparent);
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
}

.lectivas-perfect-chart__estimate[hidden] {
  display: none;
}

.lectivas-perfect-chart__estimate-header,
.lectivas-perfect-chart__estimate-grid > div {
  display: grid;
  grid-template-columns: minmax(74px, 0.36fr) minmax(0, 1fr);
  align-items: baseline;
  gap: 6px;
}

.lectivas-perfect-chart__estimate-header {
  padding-bottom: 5px;
  border-bottom: 1px solid color-mix(in srgb, var(--lectivas-section-divider) 60%, transparent);
  color: var(--lectivas-muted);
  font-size: 10px;
}

.lectivas-perfect-chart__estimate-header span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: var(--lectivas-text-primary);
}

.lectivas-perfect-chart__estimate-grid {
  display: grid;
  gap: 4px;
  margin: 6px 0 0;
}

.lectivas-perfect-chart__estimate-grid dt,
.lectivas-perfect-chart__estimate-grid dd {
  margin: 0;
}

.lectivas-perfect-chart__estimate-grid dt {
  color: var(--lectivas-muted);
  font-weight: 750;
}

.lectivas-perfect-chart__estimate-grid dd {
  color: var(--lectivas-text-primary);
  font-weight: 800;
}

.lectivas-perfect-chart__estimate .hamburg-symbols {
  color: var(--lectivas-accent);
  font-size: 13px;
  font-weight: 400;
  line-height: 1;
  vertical-align: -0.08em;
}

.lectivas-perfect-chart__muted {
  color: var(--lectivas-muted);
  font-weight: 700;
}

.user-panel-heading {
  margin: 0 0 clamp(12px, 1.6vw, 20px);
}

.lectivas-panel-tabs {
  position: relative;
  padding: 0 12px;
  border-bottom: 1px solid var(--lectivas-section-divider);
  z-index: 2;
}

.lectivas-panel--form .lectivas-panel-tabs {
  transform: none;
}

.lectivas-tabs {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0;
  border: 0;
  background: transparent;
}

.lectivas-tab {
  color: var(--lectivas-muted);
  background: transparent;
  padding: 10px 0 9px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
  transition: color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  position: relative;
  margin: 0;
  flex: 0 1 auto;
  min-width: 0;
  text-align: left;
}

.lectivas-tab:hover {
  color: var(--lectivas-text-primary);
  background: transparent;
}

.lectivas-tab.is-active {
  background: transparent;
  color: var(--lectivas-accent);
  border-bottom-color: var(--lectivas-accent);
  box-shadow: none;
  transform: none;
  margin: 0;
  z-index: 1;
}

.lectivas-tab.is-active::after {
  display: none;
}

.lectivas-tab:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 60%, transparent);
  outline-offset: 2px;
}

.lectivas-tab-panel[hidden] {
  display: none;
}

.user-panel-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.lectivas-form-section {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-top: 8px;
  border-top: 1px solid var(--lectivas-section-divider);
}

.lectivas-form-section:first-child {
  padding-top: 0;
  border-top: 0;
}

.lectivas-field-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.lectivas-field-group label {
  font-weight: 600;
  color: var(--lectivas-text-primary);
}

.lectivas-field-group--split {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
}

.lectivas-field-group--split > div {
  display: grid;
  grid-template-columns: minmax(116px, 36%) minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.lectivas-field-group--split .user-panel-label {
  margin: 0;
  font-size: 11.5px;
  line-height: 1.15;
  color: color-mix(in srgb, var(--lectivas-text-primary) 88%, var(--lectivas-muted));
  white-space: nowrap;
}

.lectivas-search-criteria-panel {
  box-shadow: 0 1px 4px color-mix(in srgb, #000000 6%, transparent);
}

.lectivas-assisted-search-form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.lectivas-search-criteria-panel__body {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.lectivas-assisted-step {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.lectivas-assisted-step[hidden] {
  display: none;
}

.lectivas-assisted-step__question {
  margin: 0;
  color: var(--lectivas-text-primary);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
  text-align: center;
}

.lectivas-assisted-step__question-planet {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.lectivas-assisted-step__question-glyph {
  color: var(--lectivas-text-primary);
  font-size: 15px;
  font-weight: 400;
  line-height: 1;
}

.lectivas-assisted-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.lectivas-assisted-options--planets {
  grid-template-columns: repeat(auto-fit, minmax(74px, 1fr));
}

.lectivas-assisted-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  min-height: 32px;
  padding: 6px 8px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 44%, transparent);
  color: var(--lectivas-text-primary);
  font: inherit;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.15;
  cursor: pointer;
  text-align: center;
  transition: border-color 0.16s ease, background 0.16s ease, color 0.16s ease;
}

.lectivas-assisted-option .hamburg-symbols {
  color: currentColor;
  font-size: 16px;
  line-height: 1;
}

.lectivas-assisted-option:hover,
.lectivas-assisted-option:focus-visible {
  border-color: color-mix(in srgb, var(--lectivas-accent) 44%, var(--lectivas-panel-border));
  background: color-mix(in srgb, var(--lectivas-accent) 8%, var(--lectivas-chip-bg));
  outline: 0;
}

.lectivas-assisted-option.is-selected {
  border-color: color-mix(in srgb, var(--lectivas-accent) 62%, var(--lectivas-panel-border));
  background: color-mix(in srgb, var(--lectivas-accent) 14%, var(--lectivas-panel-bg));
  color: var(--lectivas-accent);
}

.lectivas-assisted-alert {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 30px;
  padding: 7px 9px;
  border: 1px solid var(--lectivas-assisted-alert-border);
  border-left-width: 3px;
  border-radius: var(--panel-radius, 4px);
  background: var(--lectivas-assisted-alert-bg);
  color: var(--lectivas-assisted-alert-text);
  font-size: 11.5px;
  font-weight: 750;
  line-height: 1.25;
  text-align: center;
}

.lectivas-assisted-alert[hidden] {
  display: none;
}

.lectivas-assisted-alert .lectivas-assisted-step__question-planet {
  color: inherit;
}

.lectivas-assisted-alert .lectivas-assisted-step__question-glyph {
  color: inherit;
}

.lectivas-assisted-nav {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 32px;
  align-items: center;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid color-mix(in srgb, var(--lectivas-section-divider) 72%, transparent);
}

.lectivas-assisted-nav__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 28px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 80%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 40%, transparent);
  color: var(--lectivas-accent);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.lectivas-assisted-nav__button:disabled {
  cursor: default;
  opacity: 0.42;
  color: var(--lectivas-muted);
}

.lectivas-assisted-nav__counter {
  min-width: 0;
  color: var(--lectivas-muted);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.lectivas-assisted-summary {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0 0 10px;
  border-bottom: 1px solid color-mix(in srgb, var(--lectivas-section-divider) 72%, transparent);
}

.lectivas-assisted-summary[hidden] {
  display: none;
}

.lectivas-assisted-summary__header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.lectivas-assisted-summary__title {
  color: var(--lectivas-text-primary);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.lectivas-assisted-summary__date {
  min-width: 0;
  color: color-mix(in srgb, var(--lectivas-muted) 82%, transparent);
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1.2;
  text-align: right;
}

.lectivas-assisted-summary__table {
  width: 100%;
  border-collapse: collapse;
  color: var(--lectivas-text-primary);
  font-size: 11.5px;
  line-height: 1.25;
}

.lectivas-assisted-summary__table tr + tr {
  border-top: 1px solid color-mix(in srgb, var(--lectivas-section-divider) 56%, transparent);
}

.lectivas-assisted-summary__table th,
.lectivas-assisted-summary__table td {
  padding: 5px 0;
  vertical-align: middle;
}

.lectivas-assisted-summary__table th {
  width: 30%;
  color: var(--lectivas-muted);
  font-weight: 700;
  text-align: left;
  white-space: nowrap;
}

.lectivas-assisted-summary__table td {
  min-width: 0;
  font-weight: 700;
  text-align: left;
}

.lectivas-assisted-summary__inline,
.lectivas-assisted-summary__item {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.lectivas-assisted-summary__inline {
  flex-wrap: wrap;
  gap: 4px 7px;
}

.lectivas-assisted-summary__item {
  gap: 3px;
  white-space: nowrap;
}

.lectivas-assisted-summary__planet-glyph,
.lectivas-assisted-summary__sign-glyph {
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
}

.lectivas-assisted-summary__planet-glyph {
  color: var(--lectivas-text-primary);
}

.lectivas-assisted-summary__sign-glyph {
  color: var(--lectivas-accent);
}

.lectivas-assisted-summary__separator {
  display: inline-block;
  width: 4px;
  height: 4px;
  margin: 0 1px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--lectivas-muted) 62%, transparent);
}

.lectivas-assisted-summary__missing {
  color: var(--lectivas-muted);
  font-weight: 600;
}

.lectivas-assisted-coordinate {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 6px;
  min-width: 0;
  white-space: nowrap;
}

.lectivas-assisted-summary__table td .lectivas-assisted-coordinate {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 8px;
  width: 100%;
}

.lectivas-assisted-coordinate__label {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  flex: 0 0 auto;
  min-width: 0;
}

.lectivas-assisted-coordinate__label--compound {
  gap: 7px;
}

.lectivas-assisted-coordinate__planet,
.lectivas-assisted-coordinate__sign {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
}

.lectivas-assisted-coordinate__sign {
  position: relative;
}

.lectivas-assisted-coordinate__sign::before {
  content: "";
  width: 3px;
  height: 3px;
  margin-right: 1px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--lectivas-muted) 54%, transparent);
}

.lectivas-assisted-coordinate__fields {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  gap: 3px;
  justify-self: end;
  min-width: 0;
}

.lectivas-assisted-coordinate__input {
  box-sizing: border-box;
  width: 28px;
  height: 21px;
  padding: 0 3px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  border-radius: 4px;
  background: color-mix(in srgb, var(--lectivas-panel-bg) 92%, transparent);
  color: var(--lectivas-text-primary);
  font: inherit;
  font-size: 10.5px;
  font-weight: 750;
  line-height: 1;
  text-align: center;
}

.lectivas-assisted-coordinate__input:focus-visible {
  border-color: color-mix(in srgb, var(--lectivas-accent) 58%, var(--lectivas-panel-border));
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 24%, transparent);
  outline-offset: 1px;
}

.lectivas-assisted-coordinate__unit {
  color: var(--lectivas-muted);
  font-size: 10.5px;
  font-weight: 800;
}

.lectivas-assisted-coordinate__apply {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 21px;
  padding: 0;
  border: 1px solid var(--lectivas-coordinate-apply-border);
  border-radius: 4px;
  background: var(--lectivas-coordinate-apply-bg);
  color: var(--lectivas-coordinate-apply-text);
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}

.lectivas-assisted-coordinate__apply:hover,
.lectivas-assisted-coordinate__apply:focus-visible {
  border-color: color-mix(in srgb, var(--lectivas-coordinate-apply-border) 70%, var(--lectivas-coordinate-apply-text));
  outline: 0;
}

.lectivas-assisted-coordinate__apply:disabled,
.lectivas-assisted-coordinate__apply[aria-disabled="true"] {
  border-color: var(--lectivas-disabled-field-border);
  background: var(--lectivas-disabled-field-bg);
  color: var(--lectivas-disabled-field-text);
  cursor: default;
  opacity: 0.72;
}

.lectivas-assisted-coordinate__apply:disabled:hover,
.lectivas-assisted-coordinate__apply[aria-disabled="true"]:hover,
.lectivas-assisted-coordinate__apply:disabled:focus-visible,
.lectivas-assisted-coordinate__apply[aria-disabled="true"]:focus-visible {
  border-color: var(--lectivas-disabled-field-border);
  outline: 0;
}

.lectivas-assisted-house,
.lectivas-assisted-planetary-day {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  width: 100%;
}

.lectivas-assisted-house__select,
.lectivas-assisted-planetary-day__select {
  box-sizing: border-box;
  width: 100%;
  min-height: 24px;
  padding: 2px 7px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-panel-bg) 92%, transparent);
  color: var(--lectivas-text-primary);
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.2;
}

.lectivas-assisted-house__select:focus-visible,
.lectivas-assisted-planetary-day__select:focus-visible {
  border-color: color-mix(in srgb, var(--lectivas-accent) 58%, var(--lectivas-panel-border));
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 24%, transparent);
  outline-offset: 1px;
}

.lectivas-exact-card {
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 86%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: var(--lectivas-panel-bg);
  overflow: visible;
}

.lectivas-exact-card__summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  min-height: 32px;
  padding: 8px 10px;
  color: var(--lectivas-text-primary);
  cursor: pointer;
  list-style: none;
  user-select: none;
}

.lectivas-exact-card__summary::-webkit-details-marker {
  display: none;
}

.lectivas-exact-card[open] .lectivas-exact-card__summary {
  border-bottom: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 52%, transparent);
}

.lectivas-exact-card[open] .lectivas-profile-section__chevron {
  transform: translateY(1px) rotate(225deg);
  border-color: var(--lectivas-accent);
}

.lectivas-exact-card__title {
  min-width: 0;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.lectivas-exact-card__meta {
  min-width: 0;
  padding: 2px 6px;
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-muted) 10%, transparent);
  color: color-mix(in srgb, var(--lectivas-muted) 88%, var(--lectivas-text-primary));
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
}

.lectivas-exact-card__meta.is-running {
  background: color-mix(in srgb, var(--lectivas-accent) 12%, transparent);
  color: var(--lectivas-accent);
}

.lectivas-exact-card__meta.is-resolved {
  background: color-mix(in srgb, #168a5b 13%, transparent);
  color: color-mix(in srgb, #2fa26f 84%, var(--lectivas-text-primary));
}

.lectivas-exact-card__meta.is-warning,
.lectivas-exact-card__meta.is-error {
  background: color-mix(in srgb, #b00000 10%, transparent);
  color: color-mix(in srgb, #c84747 88%, var(--lectivas-text-primary));
}

.lectivas-exact-card__body {
  position: relative;
  z-index: 1;
  padding: 9px 10px 10px;
}

.lectivas-exact-card__approximation {
  display: grid;
  justify-items: center;
  gap: 7px;
  margin-bottom: 8px;
  padding: 8px;
  border: 1px solid color-mix(in srgb, #b00000 30%, var(--lectivas-panel-border));
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, #b00000 7%, var(--lectivas-panel-bg));
  color: color-mix(in srgb, #c84747 88%, var(--lectivas-text-primary));
  font-size: 11.5px;
  font-weight: 800;
  line-height: 1.3;
  text-align: center;
}

.lectivas-exact-card__approximation p {
  margin: 0;
}

.lectivas-exact-card__voc-notice {
  display: grid;
  justify-items: center;
  gap: 7px;
  margin-bottom: 8px;
  padding: 8px;
  border: 1px solid color-mix(in srgb, #b00000 34%, var(--lectivas-panel-border));
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, #b00000 8%, var(--lectivas-panel-bg));
  color: color-mix(in srgb, #c84747 90%, var(--lectivas-text-primary));
  font-size: 11.5px;
  font-weight: 820;
  line-height: 1.32;
  text-align: center;
}

.lectivas-exact-card__voc-notice.is-searching {
  border-color: color-mix(in srgb, var(--lectivas-accent) 34%, var(--lectivas-panel-border));
  background: color-mix(in srgb, var(--lectivas-accent) 8%, var(--lectivas-panel-bg));
  color: var(--lectivas-accent);
}

.lectivas-exact-card__voc-notice p {
  margin: 0;
}

.lectivas-exact-card__approximation .lectivas-exact-card__inline {
  color: var(--lectivas-text-primary);
}

.lectivas-exact-card__house-label,
.lectivas-exact-card__coord-strong {
  color: var(--lectivas-text-primary);
}

.lectivas-exact-card__approximation-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px;
}

.lectivas-exact-card__action {
  min-height: 28px;
  padding: 5px 10px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 84%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-panel-bg) 92%, var(--lectivas-chip-bg));
  color: var(--lectivas-text-primary);
  font: inherit;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.1;
  cursor: pointer;
}

.lectivas-exact-card__action--accept {
  border-color: color-mix(in srgb, #2fa26f 45%, var(--lectivas-panel-border));
  color: color-mix(in srgb, #2fa26f 86%, var(--lectivas-text-primary));
}

.lectivas-exact-card__action--reject {
  border-color: color-mix(in srgb, #c84747 46%, var(--lectivas-panel-border));
  color: color-mix(in srgb, #c84747 88%, var(--lectivas-text-primary));
}

.lectivas-exact-card__action:hover,
.lectivas-exact-card__action:focus-visible {
  border-color: var(--lectivas-accent);
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 22%, transparent);
  outline-offset: 1px;
}

.lectivas-exact-card__context-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin-bottom: 8px;
}

.lectivas-exact-card__context-panel {
  display: grid;
  align-content: start;
  gap: 3px;
  min-width: 0;
  min-height: 58px;
  padding: 7px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 78%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 36%, transparent);
  color: var(--lectivas-text-primary);
}

.lectivas-exact-card__context-title {
  min-width: 0;
  color: var(--lectivas-muted);
  font-size: 9.8px;
  font-weight: 800;
  line-height: 1.15;
}

.lectivas-exact-card__context-value {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  color: var(--lectivas-text-primary);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.18;
}

.lectivas-exact-card__context-value strong {
  min-width: 0;
  overflow-wrap: anywhere;
}

.lectivas-exact-card__context-glyph {
  flex: 0 0 auto;
  color: var(--lectivas-accent);
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
}

.lectivas-exact-card__context-detail {
  min-width: 0;
  color: var(--lectivas-muted);
  font-size: 9.8px;
  font-weight: 700;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.lectivas-exact-card__context-panel.is-voc {
  border-color: color-mix(in srgb, #c84747 44%, var(--lectivas-panel-border));
  background: color-mix(in srgb, #b00000 7%, var(--lectivas-chip-bg));
}

.lectivas-exact-card__context-panel.is-voc .lectivas-exact-card__context-value {
  color: color-mix(in srgb, #c84747 88%, var(--lectivas-text-primary));
}

.lectivas-exact-card__context-panel.is-not-voc .lectivas-exact-card__context-value {
  color: color-mix(in srgb, #2fa26f 84%, var(--lectivas-text-primary));
}

.lectivas-exact-card__hour-choices {
  display: grid;
  gap: 6px;
  margin-bottom: 8px;
}

.lectivas-exact-card__hour-choices-title {
  color: var(--lectivas-muted);
  font-size: 10px;
  font-weight: 850;
  line-height: 1.1;
  text-transform: uppercase;
}

.lectivas-exact-card__hour-choice-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 6px;
}

.lectivas-exact-card__hour-choice {
  display: grid;
  gap: 2px;
  min-width: 0;
  min-height: 48px;
  padding: 6px 7px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 80%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 32%, transparent);
  color: var(--lectivas-text-primary);
  cursor: pointer;
  font: inherit;
  text-align: left;
}

.lectivas-exact-card__hour-choice:hover,
.lectivas-exact-card__hour-choice:focus-visible {
  border-color: color-mix(in srgb, var(--lectivas-accent) 58%, var(--lectivas-panel-border));
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 18%, transparent);
  outline-offset: 1px;
}

.lectivas-exact-card__hour-choice.is-selected,
.lectivas-exact-card__hour-choice:disabled {
  border-color: color-mix(in srgb, var(--lectivas-accent) 48%, var(--lectivas-panel-border));
  background: color-mix(in srgb, var(--lectivas-accent) 12%, var(--lectivas-panel-bg));
  color: var(--lectivas-accent);
  cursor: default;
}

.lectivas-exact-card__hour-choice-main {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  font-size: 10.7px;
  font-weight: 850;
  line-height: 1.15;
}

.lectivas-exact-card__hour-choice-glyph {
  flex: 0 0 auto;
  color: currentColor;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
}

.lectivas-exact-card__hour-choice-range,
.lectivas-exact-card__hour-choice-instant {
  min-width: 0;
  color: var(--lectivas-muted);
  font-size: 9.8px;
  font-weight: 750;
  line-height: 1.1;
}

.lectivas-exact-card__hour-choice.is-selected .lectivas-exact-card__hour-choice-range,
.lectivas-exact-card__hour-choice.is-selected .lectivas-exact-card__hour-choice-instant {
  color: color-mix(in srgb, var(--lectivas-accent) 74%, var(--lectivas-muted));
}

.lectivas-exact-card__table {
  width: 100%;
  border-collapse: collapse;
  color: var(--lectivas-text-primary);
  font-size: 11.5px;
  line-height: 1.25;
}

.lectivas-exact-card__table tr + tr {
  border-top: 1px solid color-mix(in srgb, var(--lectivas-section-divider) 52%, transparent);
}

.lectivas-exact-card__table th,
.lectivas-exact-card__table td {
  padding: 5px 0;
  vertical-align: middle;
}

.lectivas-exact-card__table th {
  width: 30%;
  color: var(--lectivas-muted);
  font-weight: 750;
  text-align: left;
  white-space: nowrap;
}

.lectivas-exact-card__table td {
  font-weight: 700;
  text-align: left;
}

.lectivas-exact-card__link {
  color: var(--lectivas-accent);
  font-weight: 850;
  text-decoration: none;
}

.lectivas-exact-card__link:hover,
.lectivas-exact-card__link:focus-visible {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.lectivas-exact-card__inline,
.lectivas-exact-card__running {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  min-width: 0;
}

.lectivas-exact-card__coord,
.lectivas-exact-card__muted {
  color: var(--lectivas-muted);
  font-weight: 700;
}

.lectivas-exact-card__glyph {
  color: var(--lectivas-text-primary);
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
}

.lectivas-exact-card__glyph--sign {
  color: var(--lectivas-accent);
}

.lectivas-exact-card__ok {
  color: color-mix(in srgb, #2fa26f 84%, var(--lectivas-text-primary));
  font-weight: 850;
}

.lectivas-exact-card__warning,
.lectivas-exact-card__error {
  color: color-mix(in srgb, #c84747 88%, var(--lectivas-text-primary));
  font-weight: 850;
}

.lectivas-exact-card__loader {
  display: inline-block;
  width: 13px;
  height: 13px;
  border: 2px solid color-mix(in srgb, var(--lectivas-accent) 22%, transparent);
  border-top-color: var(--lectivas-accent);
  border-radius: 50%;
  animation: lectivas-status-spin 0.9s linear infinite;
}

.lectivas-locked-panel {
  box-shadow: 0 1px 4px color-mix(in srgb, #000000 6%, transparent);
}

.lectivas-locked-panel .lectivas-profile-section__summary {
  grid-template-columns: minmax(0, 1fr) auto;
  cursor: not-allowed;
}

.lectivas-locked-panel .lectivas-profile-section__title {
  color: color-mix(in srgb, var(--lectivas-text-primary) 72%, #ab9999);
}

.lectivas-lock-icon {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 11px;
  margin: 0 2px 0 6px;
  border: 1.6px solid #ab9999;
  border-radius: 2px;
  color: #ab9999;
  box-sizing: border-box;
}

.lectivas-lock-icon::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -8px;
  width: 8px;
  height: 8px;
  border: 1.6px solid #ab9999;
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  transform: translateX(-50%);
  box-sizing: border-box;
}

.lectivas-lock-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 3px;
  width: 2px;
  height: 3px;
  border-radius: 999px;
  background: #ab9999;
  transform: translateX(-50%);
}

.lectivas-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--lectivas-text-primary);
  min-width: 0;
}

.lectivas-checkbox span:not(.hamburg-symbols):not(.lectivas-aspect-glyph):not(.visually-hidden) {
  min-width: 0;
}

.lectivas-checkbox input {
  flex: 0 0 auto;
  width: 13px;
  height: 13px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border-radius: 2px;
  accent-color: var(--lectivas-accent);
}

.lectivas-rule-options {
  --lectivas-rule-suboption-cell: 32px;
  --lectivas-rule-suboptions-columns: 4;
  --lectivas-rule-suboptions-gap: 5px;
  --lectivas-rule-suboptions-width: calc(
    (var(--lectivas-rule-suboption-cell) * var(--lectivas-rule-suboptions-columns))
    + (var(--lectivas-rule-suboptions-gap) * (var(--lectivas-rule-suboptions-columns) - 1))
  );
  display: flex;
  flex-direction: column;
  gap: 9px;
  padding: 9px;
  border-radius: var(--panel-radius, 4px);
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 42%, transparent);
}

.lectivas-rule-panels {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 8px;
}

.lectivas-rule-panels > .lectivas-rule-options {
  padding: 9px;
}

.lectivas-rule-options__header {
  display: flex;
  align-items: center;
  min-height: 16px;
  color: var(--lectivas-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.lectivas-rule-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: nowrap;
}

.lectivas-rule-row__label {
  font-size: 12px;
  font-weight: 600;
  color: var(--lectivas-text-primary);
}

.lectivas-rule-suboptions {
  margin-left: auto;
  display: grid;
  grid-template-columns: repeat(var(--lectivas-rule-suboptions-columns), var(--lectivas-rule-suboption-cell));
  align-items: center;
  justify-content: start;
  width: var(--lectivas-rule-suboptions-width);
  gap: 0 var(--lectivas-rule-suboptions-gap);
}

.lectivas-rule-suboptions--planets {
  --lectivas-rule-suboptions-columns: 7;
  --lectivas-rule-suboption-cell: 32px;
  --lectivas-rule-suboptions-width: calc(
    (var(--lectivas-rule-suboption-cell) * var(--lectivas-rule-suboptions-columns))
    + (var(--lectivas-rule-suboptions-gap) * (var(--lectivas-rule-suboptions-columns) - 1))
  );
  margin-left: 0;
  justify-content: center;
}

.lectivas-rule-row--planets {
  justify-content: center;
}

.lectivas-rule-row--aspect-polarity {
  justify-content: center;
  gap: 12px;
  align-items: center;
}

.lectivas-rule-row--aspect-types {
  justify-content: center;
  gap: 10px;
}

.lectivas-rule-suboptions--aspects {
  --lectivas-rule-suboptions-columns: 5;
  --lectivas-rule-suboption-cell: 34px;
  --lectivas-rule-suboptions-width: calc(
    (var(--lectivas-rule-suboption-cell) * var(--lectivas-rule-suboptions-columns))
    + (var(--lectivas-rule-suboptions-gap) * (var(--lectivas-rule-suboptions-columns) - 1))
  );
  margin-left: 0;
  justify-content: center;
}

.lectivas-rule-suboptions[hidden] {
  display: none;
}

.lectivas-rule-suboptions.is-disabled .lectivas-checkbox {
  cursor: not-allowed;
}

.lectivas-checkbox--glyph {
  gap: 4px;
  position: relative;
  cursor: pointer;
}

.lectivas-rule-suboptions .lectivas-checkbox--glyph {
  width: var(--lectivas-rule-suboption-cell);
  min-height: 28px;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 70%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--surface-default, #ffffff) 52%, transparent);
  transition: opacity 0.16s ease, border-color 0.16s ease, background-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

.lectivas-checkbox--glyph input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: inherit;
}

.lectivas-checkbox--glyph:has(input:checked) {
  border-color: color-mix(in srgb, var(--lectivas-accent) 58%, var(--lectivas-panel-border));
  background: color-mix(in srgb, var(--lectivas-accent) 13%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--lectivas-accent) 12%, transparent);
}

.lectivas-checkbox--glyph:has(input:focus-visible) {
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 55%, transparent);
  outline-offset: 2px;
}

.lectivas-checkbox--glyph:has(input:checked) .hamburg-symbols,
.lectivas-checkbox--glyph:has(input:checked) .lectivas-aspect-glyph {
  color: var(--lectivas-accent);
}

.lectivas-rule-suboptions--aspects .lectivas-checkbox--glyph {
  padding: 2px 6px;
}

.lectivas-rule-suboptions--aspects.is-rule-locked .lectivas-checkbox--glyph {
  opacity: 0.38;
}

.lectivas-rule-suboptions--aspects.is-rule-locked .lectivas-checkbox--glyph.is-rule-active {
  opacity: 1;
  border-color: color-mix(in srgb, var(--lectivas-accent) 52%, var(--lectivas-panel-border));
  background: color-mix(in srgb, var(--lectivas-accent) 14%, transparent);
}

.lectivas-rule-suboptions--aspects.is-rule-locked .lectivas-checkbox--glyph.is-rule-active .lectivas-aspect-glyph {
  color: var(--lectivas-accent);
}

.lectivas-rule-suboptions--planets .lectivas-checkbox--glyph {
  padding: 2px 6px;
}

.lectivas-rule-suboptions--planets.is-rule-locked .lectivas-checkbox--glyph {
  opacity: 0.38;
}

.lectivas-rule-suboptions--planets.is-rule-locked .lectivas-checkbox--glyph.is-rule-active {
  opacity: 1;
  border-color: color-mix(in srgb, var(--lectivas-accent) 52%, var(--lectivas-panel-border));
  background: color-mix(in srgb, var(--lectivas-accent) 14%, transparent);
}

.lectivas-rule-suboptions--planets.is-rule-locked .lectivas-checkbox--glyph.is-rule-active .hamburg-symbols {
  color: var(--lectivas-accent);
}

.lectivas-rule-suboptions--planets.is-rule-locked .lectivas-checkbox--glyph.is-rule-lunar {
  border-color: var(--lectivas-rule-lunar-border-color);
  background: var(--lectivas-rule-lunar-bg);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--lectivas-rule-lunar-color) 26%, transparent),
    0 0 0 1px var(--lectivas-rule-lunar-glow-color);
}

.lectivas-rule-suboptions--planets.is-rule-locked .lectivas-checkbox--glyph.is-rule-lunar .hamburg-symbols {
  color: var(--lectivas-rule-lunar-color);
}

.lectivas-rule-suboptions--aspects .lectivas-checkbox--glyph.is-rule-conjunction-active {
  border-color: var(--lectivas-rule-lunar-border-color);
  background: var(--lectivas-rule-lunar-bg);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--lectivas-rule-lunar-color) 26%, transparent),
    0 0 0 1px var(--lectivas-rule-lunar-glow-color);
}

.lectivas-rule-suboptions--aspects .lectivas-checkbox--glyph.is-rule-conjunction-active .lectivas-aspect-glyph {
  color: var(--lectivas-rule-lunar-color);
}

.lectivas-rule-suboptions--aspects.is-rule-locked .lectivas-checkbox--glyph.is-rule-conjunction-active {
  border-color: var(--lectivas-rule-lunar-border-color);
  background: var(--lectivas-rule-lunar-bg);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--lectivas-rule-lunar-color) 26%, transparent),
    0 0 0 1px var(--lectivas-rule-lunar-glow-color);
}

.lectivas-rule-suboptions--aspects.is-rule-locked .lectivas-checkbox--glyph.is-rule-conjunction-active .lectivas-aspect-glyph {
  color: var(--lectivas-rule-lunar-color);
}

.lectivas-checkbox--glyph .hamburg-symbols {
  font-size: 15px;
  line-height: 1;
}

.lectivas-aspect-glyph {
  font-size: 14px;
  line-height: 1;
  color: var(--lectivas-accent);
}

.lectivas-aspect-glyph--harmonic {
  color: var(--lectivas-aspect-harmonic-color);
}

.lectivas-aspect-glyph--inharmonic {
  color: var(--lectivas-aspect-inharmonic-color);
}

.lectivas-panel input:not([type="checkbox"]),
.lectivas-panel select,
.lectivas-left-column input:not([type="checkbox"]),
.lectivas-left-column select,
.lectivas-profile-column input:not([type="checkbox"]),
.lectivas-profile-column select {
  width: 100%;
  min-height: 28px;
  padding: 4px 7px;
  border: 1px solid var(--input-border, rgba(255, 255, 255, 0.22));
  border-radius: var(--panel-radius, 4px);
  background: var(--input-bg, #1c2133);
  color: var(--input-text, #f6f8ff);
  font: inherit;
  font-size: 11.5px;
  line-height: 1.25;
  box-shadow: inset 0 1px 1px color-mix(in srgb, var(--surface-border, rgba(24, 34, 67, 0.14)) 20%, transparent);
}

.lectivas-panel select,
.lectivas-left-column select,
.lectivas-profile-column select {
  padding-right: 26px;
}

.lectivas-panel input:not([type="checkbox"]):focus,
.lectivas-panel select:focus,
.lectivas-left-column input:not([type="checkbox"]):focus,
.lectivas-left-column select:focus,
.lectivas-profile-column input:not([type="checkbox"]):focus,
.lectivas-profile-column select:focus {
  outline: none;
  border-color: color-mix(in srgb, var(--lectivas-accent) 58%, var(--input-border, rgba(255, 255, 255, 0.22)));
  box-shadow:
    inset 0 1px 1px color-mix(in srgb, var(--surface-border, rgba(24, 34, 67, 0.14)) 20%, transparent),
    0 0 0 2px color-mix(in srgb, var(--lectivas-accent) 20%, transparent);
}

.lectivas-panel input:not([type="checkbox"])::placeholder,
.lectivas-left-column input:not([type="checkbox"])::placeholder,
.lectivas-profile-column input:not([type="checkbox"])::placeholder {
  color: color-mix(in srgb, var(--input-text, var(--lectivas-text-primary)) 55%, transparent);
}

.lectivas-panel .lectivas-assisted-coordinate__input:not([type="checkbox"]) {
  box-sizing: border-box;
  flex: 0 0 30px;
  width: 30px;
  min-width: 30px;
  max-width: 30px;
  min-height: 0;
  height: 22px;
  padding: 0 3px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 82%, transparent);
  border-radius: 4px;
  background: color-mix(in srgb, var(--lectivas-panel-bg) 92%, transparent);
  color: var(--lectivas-text-primary);
  box-shadow: none;
  font: inherit;
  font-size: 10.5px;
  font-weight: 750;
  line-height: 1;
  text-align: center;
}

.lectivas-panel .lectivas-assisted-coordinate__input:not([type="checkbox"]):focus {
  border-color: color-mix(in srgb, var(--lectivas-accent) 58%, var(--lectivas-panel-border));
  box-shadow: none;
}

.lectivas-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.lectivas-button {
  background: var(--btn-primary-bg, var(--lectivas-accent));
  color: var(--btn-primary-text, #ffffff);
  border: 1px solid var(--btn-primary-border, transparent);
  border-radius: var(--panel-radius, 4px);
  min-height: 34px;
  min-width: 160px;
  padding: 8px 14px;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
  box-shadow: 0 2px 5px color-mix(in srgb, #000000 16%, transparent);
}

.lectivas-button--full,
.lectivas-assisted-search-form .lectivas-button {
  display: inline-flex;
  align-items: center;
  width: 100%;
  justify-content: center;
  text-align: center;
}

.lectivas-button:hover {
  transform: translateY(-1px);
  opacity: 0.95;
}

.lectivas-button:disabled,
.lectivas-button[aria-disabled="true"] {
  cursor: default;
  transform: none;
  border-color: var(--lectivas-disabled-field-border);
  background: var(--lectivas-disabled-field-bg);
  color: var(--lectivas-disabled-field-text);
  box-shadow: none;
  opacity: 1;
}

.lectivas-button:disabled:hover,
.lectivas-button[aria-disabled="true"]:hover {
  transform: none;
  opacity: 1;
}

.lectivas-button:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 65%, transparent);
  outline-offset: 2px;
}

.lectivas-helper {
  margin: 0;
  font-size: 12px;
  color: var(--lectivas-muted);
}

.lectivas-profile-overview {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.lectivas-profile-overview__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: var(--lectivas-text-primary);
}

.lectivas-profile-overview__header strong {
  font-size: 12px;
  line-height: 1.2;
}

.lectivas-profile-overview__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
}

.lectivas-summary-group {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 5px;
  padding: 0 0 7px;
  border-bottom: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 48%, transparent);
}

.lectivas-summary-group:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.lectivas-summary-group__label {
  color: var(--lectivas-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.lectivas-summary-group__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.lectivas-summary-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 20px;
  gap: 5px;
  padding: 2px 6px;
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 36%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 54%, transparent);
  color: var(--lectivas-text-primary);
  font-size: 11px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.lectivas-summary-chip--glyph .hamburg-symbols,
.lectivas-summary-chip--glyph .lectivas-aspect-glyph {
  color: var(--lectivas-accent);
  font-size: 13px;
  line-height: 1;
}

.lectivas-summary-chip--muted {
  color: var(--lectivas-muted);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 55%, transparent);
}

.lectivas-summary-chip--harmonic .lectivas-aspect-glyph {
  color: var(--lectivas-aspect-harmonic-color);
}

.lectivas-summary-chip--inharmonic .lectivas-aspect-glyph {
  color: var(--lectivas-aspect-inharmonic-color);
}

.lectivas-status {
  font-size: 12px;
  color: var(--lectivas-muted);
  border-left: 3px solid var(--lectivas-divider);
  padding-left: 10px;
}

.lectivas-status__text {
  display: block;
}

.lectivas-status.is-centered {
  box-sizing: border-box;
  display: flex;
  flex: 1 1 auto;
  min-height: 160px;
  padding: 28px 12px;
  border-left: 0;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 14px;
  text-align: center;
  color: var(--lectivas-text-primary);
}

.lectivas-status.is-centered .lectivas-status__text {
  max-width: 44ch;
  font-weight: 700;
  line-height: 1.35;
}

.lectivas-status.is-centered:not(.is-loading) {
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 72%, transparent);
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-chip-bg) 38%, transparent);
}

.lectivas-status__loader {
  width: 34px;
  height: 34px;
  border: 2px solid color-mix(in srgb, var(--lectivas-accent) 22%, transparent);
  border-top-color: var(--lectivas-accent);
  border-right-color: color-mix(in srgb, var(--lectivas-accent) 58%, var(--lectivas-text-primary));
  border-radius: 999px;
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--lectivas-accent) 8%, transparent);
  animation: lectivas-status-spin 0.9s linear infinite;
}

@keyframes lectivas-status-spin {
  to {
    transform: rotate(360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .lectivas-status__loader {
    animation-duration: 1.8s;
  }
}

.lectivas-results {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 10px;
}

.lectivas-results-layout.has-chart .lectivas-results,
.lectivas-results-layout.has-chart .lectivas-result-group__cards {
  grid-template-columns: 1fr;
}

.lectivas-results--grouped {
  display: flex;
  flex-direction: column;
  gap: var(--lectivas-gap);
}

.lectivas-result-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.lectivas-result-group__title {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  color: var(--lectivas-accent);
  letter-spacing: 0;
  text-transform: uppercase;
}

.lectivas-result-group__cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 10px;
}

.lectivas-card {
  border-radius: var(--panel-radius, 4px);
  border: 1px solid var(--lectivas-panel-border);
  padding: 12px;
  background: var(--lectivas-card-bg);
  display: flex;
  flex-direction: column;
  gap: 0;
  box-shadow: 0 2px 8px color-mix(in srgb, #000000 12%, transparent);
  position: relative;
  cursor: pointer;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

.lectivas-card:hover,
.lectivas-card:focus-visible,
.lectivas-card.is-selected,
.lectivas-card.is-expanded {
  border-color: color-mix(in srgb, var(--lectivas-accent) 42%, var(--lectivas-panel-border));
  box-shadow: 0 4px 12px color-mix(in srgb, #000000 16%, transparent);
}

.lectivas-card:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--lectivas-accent) 42%, transparent);
  outline-offset: 2px;
}

.lectivas-card.is-expanded {
  background: color-mix(in srgb, var(--lectivas-card-bg) 88%, var(--lectivas-accent) 12%);
}

.lectivas-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  min-height: 24px;
}

.lectivas-card__body {
  display: flex;
  flex-direction: column;
  gap: 11px;
  padding-top: 9px;
}

.lectivas-card__body[hidden] {
  display: none;
}

.lectivas-card__details {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(190px, 0.88fr);
  gap: 14px;
  align-items: start;
}

.lectivas-card__detail-column {
  min-width: 0;
}

.lectivas-card__meta-list {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lectivas-card__meta-list li {
  display: grid;
  grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);
  gap: 8px;
  align-items: baseline;
  min-width: 0;
  font-size: 12px;
  line-height: 1.35;
  color: var(--lectivas-text-primary);
}

.lectivas-card__meta-label {
  color: var(--lectivas-muted);
  font-size: 11px;
  font-weight: 700;
}

.lectivas-card__meta-value {
  min-width: 0;
  color: var(--lectivas-text-primary);
  font-size: 12px;
  font-weight: 600;
  overflow-wrap: anywhere;
}

.lectivas-card__toggle {
  display: inline-flex;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  align-items: center;
  justify-content: center;
  color: color-mix(in srgb, var(--lectivas-muted) 82%, var(--lectivas-accent));
}

.lectivas-card__toggle::before {
  content: "";
  width: 6px;
  height: 6px;
  border: solid currentColor;
  border-width: 0 1.5px 1.5px 0;
  transform: translateY(-1px) rotate(45deg);
  transition: transform 0.16s ease, color 0.16s ease;
}

.lectivas-card.is-expanded .lectivas-card__toggle {
  color: var(--lectivas-accent);
}

.lectivas-card.is-expanded .lectivas-card__toggle::before {
  transform: translateY(1px) rotate(225deg);
}

.lectivas-card__instant {
  display: inline-flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 22px;
  font-size: 11px;
  font-weight: 600;
  color: var(--lectivas-accent);
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.lectivas-card__instant--link {
  color: inherit;
  text-decoration: none;
}

.lectivas-card__instant--link:hover {
  text-decoration: underline;
}

.lectivas-score {
  display: inline-flex;
  align-items: center;
  margin-left: auto;
  min-height: 22px;
  padding: 2px 8px;
  border: 1px solid color-mix(in srgb, var(--lectivas-accent) 36%, var(--lectivas-panel-border));
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-accent) 11%, transparent);
  font-size: 11px;
  font-weight: 700;
  color: var(--lectivas-accent);
  line-height: 1.2;
  white-space: nowrap;
}

.lectivas-explanation {
  margin: 0;
  padding-left: 16px;
  font-size: 12px;
  line-height: 1.42;
  color: var(--lectivas-text-primary);
  list-style: disc;
  list-style-position: outside;
}

.lectivas-explanation li + li {
  margin-top: 4px;
}

.lectivas-result-glyph {
  display: inline-block;
  min-width: 1em;
  line-height: 1;
  font-size: 0.95em;
  color: var(--lectivas-accent);
  vertical-align: baseline;
}

.lectivas-aspect-type {
  font-weight: 700;
  color: var(--lectivas-text-primary);
}

.lectivas-card__score-table {
  padding-top: 10px;
  border-top: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 72%, transparent);
}

.lectivas-score-table__title {
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 800;
  color: var(--lectivas-text-primary);
  letter-spacing: 0;
}

.lectivas-score-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
  line-height: 1.25;
}

.lectivas-score-table th,
.lectivas-score-table td {
  padding: 4px 0;
  border-bottom: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 42%, transparent);
  vertical-align: top;
}

.lectivas-score-table th {
  padding-right: 12px;
  text-align: left;
  font-weight: 600;
  color: var(--lectivas-text-primary);
}

.lectivas-score-table td {
  width: 1%;
  text-align: right;
  white-space: nowrap;
}

.lectivas-score-table strong {
  font-variant-numeric: tabular-nums;
}

.lectivas-score-table tfoot th,
.lectivas-score-table tfoot td {
  border-bottom: 0;
  padding-top: 6px;
  font-weight: 800;
}

.lectivas-score-table .is-positive {
  color: color-mix(in srgb, #2fa26f 74%, var(--lectivas-text-primary));
}

.lectivas-score-table .is-negative {
  color: color-mix(in srgb, #d1495b 76%, var(--lectivas-text-primary));
}

.lectivas-points-mode-switch {
  --planetary-hours-toggle-active-bg: color-mix(in srgb, var(--lectivas-accent) 14%, var(--lectivas-panel-bg));
  --planetary-hours-toggle-active-text: var(--lectivas-accent);
  --planetary-hours-toggle-active-border: color-mix(in srgb, var(--lectivas-accent) 48%, var(--lectivas-panel-border));
  justify-self: end;
  flex-shrink: 0;
  background: color-mix(in srgb, var(--lectivas-chip-bg) 62%, transparent);
}

.lectivas-points-mode-switch .advanced-transits-switch-option {
  min-width: 52px;
}

.lectivas-points-mode-switch .advanced-transits-switch-label {
  min-height: 22px;
  padding: 3px 7px;
  font-size: 10px;
}

.lectivas-points-table {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.lectivas-points-table__group {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.lectivas-points-table__group-title {
  color: var(--lectivas-muted);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}

.lectivas-score-table--points th,
.lectivas-score-table--points td {
  padding-top: 3px;
  padding-bottom: 3px;
}

.lectivas-points-table__detail {
  display: block;
  margin-top: 1px;
  color: var(--lectivas-muted);
  font-size: 10.5px;
  font-weight: 600;
  line-height: 1.2;
}

.lectivas-points-table__modifier {
  display: inline-flex;
  align-items: center;
  min-height: 17px;
  padding: 1px 4px;
  border: 1px solid var(--lectivas-points-modifier-border);
  border-radius: var(--panel-radius, 4px);
  background: var(--lectivas-points-modifier-bg);
  color: var(--lectivas-points-modifier-text);
  font-weight: 800;
  line-height: 1.05;
}

.lectivas-points-table__empty {
  margin: 0;
}

.lectivas-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 8px;
  border-radius: var(--panel-radius, 4px);
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 70%, transparent);
  background: var(--lectivas-chip-bg);
  color: var(--lectivas-chip-text);
  font-size: 11px;
  line-height: 1.3;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.lectivas-chip--link {
  text-decoration: none;
  cursor: pointer;
}

.lectivas-chip--link:hover {
  border-color: color-mix(in srgb, var(--lectivas-accent) 45%, var(--lectivas-panel-border));
  color: var(--lectivas-link-text-hover);
  background: var(--lectivas-link-bg-hover);
}

.lectivas-diagnostics {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.lectivas-advanced-controls {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.lectivas-advanced-controls .lectivas-field-group {
  gap: 6px;
}

.lectivas-advanced-grid {
  border: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
  max-height: none;
  overflow-y: visible;
  gap: 3px;
}

.lectivas-advanced-grid .config-row {
  grid-template-columns: 24px minmax(38px, 1fr) minmax(38px, 1fr) 44px 26px 26px;
  gap: 3px;
  min-height: 28px;
  font-size: 11px;
  padding: 2px 0;
  border-bottom: 1px solid color-mix(in srgb, var(--lectivas-section-divider) 55%, transparent);
}

.lectivas-advanced-grid .config-row.is-applied {
  border-radius: var(--panel-radius, 4px);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--lectivas-accent) 45%, transparent);
  background: color-mix(in srgb, var(--lectivas-accent) 11%, transparent);
  padding: 2px 4px;
}

.lectivas-advanced-grid.is-coords-hidden .lectivas-coord-field {
  display: none;
}

.lectivas-advanced-grid .config-row.is-hidden {
  display: none;
}

.lectivas-advanced-grid .label {
  font-weight: 700;
  text-align: center;
  color: var(--lectivas-text-primary);
}

.lectivas-axis-label {
  font-size: 11px;
  letter-spacing: 0;
}

.lectivas-coord-input {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1px;
  min-width: 0;
  padding: 2px 3px;
  border-radius: var(--panel-radius, 4px);
  border: 1px solid var(--input-border, rgba(255, 255, 255, 0.22));
  background: var(--input-bg, #1c2133);
  color: var(--input-text, #f6f8ff);
  min-height: 26px;
}

.lectivas-panel .lectivas-coord-input input:not([type="checkbox"]) {
  width: 22px;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font: inherit;
  text-align: center;
}

.lectivas-coord-input input:focus-visible {
  outline: none;
}

.lectivas-coord-input span {
  font-size: 10px;
  color: var(--lectivas-muted);
}

.lectivas-advanced-grid .retro-spacer {
  display: none;
}

.lectivas-panel .lectivas-advanced-grid .zodiac-select {
  min-height: 26px;
  padding: 2px 4px;
  font-family: "HamburgSymbols", sans-serif;
  font-size: 15px;
  line-height: 1;
  text-align: center;
}

.lectivas-panel .lectivas-advanced-grid .zodiac-select option {
  font-family: "HamburgSymbols", sans-serif;
}

.lectivas-advanced-grid .small-btn {
  width: 26px;
  min-height: 26px;
  padding: 2px 0;
  font-size: 12px;
  line-height: 1;
}

.lectivas-advanced-actions {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  margin-top: 2px;
}

.lectivas-advanced-actions .small-btn {
  text-transform: none;
  font-size: 0.85rem;
  width: 100%;
}

.lectivas-advanced-submit {
  margin-top: 4px;
}

.lectivas-advanced-submit .lectivas-button {
  width: 100%;
}

.lectivas-diagnostics--compact {
  margin-top: 2px;
  gap: 6px;
}

.lectivas-advanced-note {
  max-width: 65ch;
  line-height: 1.4;
}

.lectivas-windows {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.lectivas-windows--grouped {
  display: flex;
  flex-direction: column;
  gap: var(--lectivas-gap);
}

.lectivas-window-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.lectivas-window-group__title {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  color: var(--lectivas-accent);
  letter-spacing: 0;
  text-transform: uppercase;
}

.lectivas-window-group__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.lectivas-window {
  border-radius: var(--panel-radius, 4px);
  border: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 78%, transparent);
  padding: 10px;
  background: color-mix(in srgb, var(--lectivas-chip-bg) 52%, transparent);
  font-size: 12px;
  color: var(--lectivas-text-primary);
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.lectivas-profile {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.lectivas-profile-section {
  border: 1px solid var(--lectivas-panel-border);
  border-radius: var(--panel-radius, 4px);
  background: var(--lectivas-panel-bg);
  box-shadow: 0 2px 7px color-mix(in srgb, #000000 7%, transparent);
  overflow: clip;
}

.lectivas-whenwhere {
  box-shadow: 0 1px 4px color-mix(in srgb, #000000 6%, transparent);
}

.lectivas-whenwhere.is-assisted-range-locked #windowFrom,
.lectivas-whenwhere.is-assisted-range-locked #windowTo {
  border-color: var(--lectivas-disabled-field-border);
  background: var(--lectivas-disabled-field-bg);
  color: var(--lectivas-disabled-field-text);
  cursor: not-allowed;
  opacity: 1;
  -webkit-text-fill-color: var(--lectivas-disabled-field-text);
}

.lectivas-profile-section__summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 8px 10px;
  cursor: pointer;
  user-select: none;
  color: var(--lectivas-text-primary);
  list-style: none;
}

.lectivas-profile-section__summary::-webkit-details-marker {
  display: none;
}

.lectivas-profile-section__title {
  min-width: 0;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.lectivas-profile-section__meta {
  min-width: 20px;
  padding: 2px 6px;
  border-radius: var(--panel-radius, 4px);
  background: color-mix(in srgb, var(--lectivas-accent) 10%, transparent);
  color: color-mix(in srgb, var(--lectivas-muted) 78%, var(--lectivas-text-primary));
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}

.lectivas-profile-section__chevron {
  width: 7px;
  height: 7px;
  border: solid color-mix(in srgb, var(--lectivas-muted) 84%, var(--lectivas-accent));
  border-width: 0 1.5px 1.5px 0;
  transform: translateY(-1px) rotate(45deg);
  transition: transform 0.16s ease, border-color 0.16s ease;
}

.lectivas-profile-section[open] .lectivas-profile-section__summary {
  border-bottom: 1px solid color-mix(in srgb, var(--lectivas-panel-border) 55%, transparent);
}

.lectivas-profile-section[open] .lectivas-profile-section__chevron {
  transform: translateY(1px) rotate(225deg);
  border-color: var(--lectivas-accent);
}

.lectivas-profile-section__body {
  padding: 10px;
}

.lectivas-profile-section--diagnostics .lectivas-profile-section__summary {
  grid-template-columns: minmax(0, 1fr) auto;
}

.lectivas-profile-list {
  margin: 0;
  padding-left: 17px;
  list-style: disc;
  list-style-position: outside;
  color: var(--lectivas-text-primary);
  font-size: 12px;
  line-height: 1.42;
}

.lectivas-profile-list li + li {
  margin-top: 5px;
}

.lectivas-activity-state {
  font-weight: 800;
}

.lectivas-activity-state.is-active {
  color: color-mix(in srgb, #2fa26f 82%, var(--lectivas-text-primary));
}

.lectivas-activity-state.is-inactive {
  color: color-mix(in srgb, #c84747 86%, var(--lectivas-text-primary));
}

.lectivas-profile__box {
  border-radius: var(--panel-radius, 4px);
  border: 1px solid var(--lectivas-panel-border);
  padding: 10px;
  background: color-mix(in srgb, var(--lectivas-chip-bg) 45%, transparent);
  display: flex;
  flex-direction: column;
  gap: 7px;
  box-shadow: none;
}

.lectivas-profile__box strong {
  font-size: 12px;
}

.lectivas-profile__box ul {
  margin: 0;
  padding-left: 18px;
  list-style: disc;
  list-style-position: outside;
  color: var(--lectivas-text-primary);
}

.lectivas-profile__box li + li {
  margin-top: 4px;
}

@media (min-width: 1281px) {
  body.lectivas-page {
    height: 100dvh;
    min-height: 100dvh;
    overflow: hidden;
    padding-bottom: 0;
  }

  body.lectivas-page [data-site-footer] {
    display: none;
  }

  .lectivas-grid {
    --lectivas-desktop-bottom-gap: 10px;
    flex: 0 0 calc(100dvh - 54px - var(--lectivas-desktop-bottom-gap));
    align-items: stretch;
    min-height: 0;
    height: calc(100dvh - 54px - var(--lectivas-desktop-bottom-gap));
    padding-bottom: 0;
  }

  .lectivas-panel--results,
  .lectivas-panel--results > .collapsible-body {
    min-height: 0;
    height: 100%;
  }

  .lectivas-panel--form,
  .lectivas-left-column,
  .lectivas-panel--profile {
    min-height: 0;
    height: 100%;
    max-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
  }

  .lectivas-results-list {
    min-height: 0;
    overflow: hidden;
    scrollbar-width: none;
  }

  .lectivas-results-list.is-scrollable {
    overflow-x: hidden;
    overflow-y: auto;
  }

  .lectivas-panel--form::-webkit-scrollbar,
  .lectivas-left-column::-webkit-scrollbar,
  .lectivas-panel--profile::-webkit-scrollbar,
  .lectivas-results-list::-webkit-scrollbar {
    width: 0;
    height: 0;
  }

  .lectivas-results-layout {
    flex: 1 1 auto;
    min-height: 0;
  }

  .lectivas-chart-preview {
    height: 100%;
  }

  .lectivas-status.is-centered {
    min-height: 100%;
  }
}

@media (max-width: 1280px) {
  .lectivas-grid {
    grid-template-columns: minmax(320px, 0.42fr) minmax(460px, 0.58fr);
    grid-template-areas:
      "form results"
      "profile profile";
  }
}

@media (max-width: 920px) {
  .lectivas-grid {
    grid-template-columns: 1fr;
    grid-template-areas:
      "form"
      "results"
      "profile";
  }

  .lectivas-results-layout,
  .lectivas-results-layout.has-chart {
    grid-template-columns: 1fr;
    height: auto;
  }

  .lectivas-results-list {
    height: auto;
    overflow: visible;
  }

  .lectivas-chart-preview {
    position: static;
  }
}

@media (max-width: 720px) {
  .lectivas-header {
    padding-top: 7px;
    padding-bottom: 7px;
  }

  .lectivas-card__details {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .lectivas-exact-card__context-grid {
    grid-template-columns: 1fr;
  }

  .lectivas-header__content {
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    gap: 8px;
  }

  .lectivas-header__brand {
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
  }

  .lectivas-header__actions {
    justify-content: flex-start;
    width: 100%;
    margin-left: 0;
  }

  .lectivas-header__link {
    flex: 1 1 0;
  }

  .lectivas-tabs {
    width: 100%;
    flex-wrap: wrap;
  }

  .lectivas-tabs .lectivas-tab {
    flex: 1;
    text-align: center;
  }

  .lectivas-rule-row {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .lectivas-rule-row--aspect-polarity {
    flex-wrap: wrap;
    gap: 10px;
  }

  .lectivas-rule-row--aspect-polarity .lectivas-checkbox {
    flex: 1 1 180px;
    min-width: 0;
    align-items: flex-start;
    line-height: 1.25;
  }

  .lectivas-rule-row--aspect-types {
    justify-content: flex-start;
    gap: 10px;
    flex-wrap: wrap;
  }

  .lectivas-rule-suboptions {
    margin-left: 0;
    width: 100%;
    grid-template-columns: repeat(auto-fit, minmax(var(--lectivas-rule-suboption-cell), max-content));
    justify-content: start;
    align-items: flex-start;
  }

  .lectivas-rule-row--aspect-types .lectivas-rule-suboptions--aspects {
    width: auto;
    grid-template-columns: repeat(5, var(--lectivas-rule-suboption-cell));
  }

  .lectivas-advanced-controls {
    grid-template-columns: 1fr;
  }

  .lectivas-advanced-grid .config-row {
    grid-template-columns: 24px minmax(38px, 1fr) minmax(38px, 1fr) 44px 26px 26px;
    gap: 3px;
  }

  .lectivas-advanced-grid .small-btn {
    width: 26px;
  }

  .lectivas-advanced-actions {
    grid-template-columns: 1fr;
  }
}
