.main {
  background: #fdfdfd;
}

.blank-page {
  flex: 1 1 auto;
  min-height: 0;
  background: #fdfdfd;
}

.atlas-workspace {
  --atlas-panel-width: 252px;
  --atlas-panel-collapsed-width: 46px;
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  background: #fdfdfd;
  overflow: hidden;
}

.atlas-isolated-layout {
  width: 100%;
  min-width: 920px;
  height: 100%;
  background: #fdfdfd;
}
.atlas-workspace.is-isolated {
  --atlas-panel-width: 286px;
  --atlas-panel-collapsed-width: 58px;
}

.atlas-menu-panel {
  width: var(--atlas-panel-width);
  min-width: var(--atlas-panel-collapsed-width);
  max-width: none;
  height: 100%;
  flex: 0 0 var(--atlas-panel-width);
  display: flex;
  flex-direction: column;
  position: relative;
  background: #FFFFFF;
  border-right: 1px solid #e6e6e6;
  color: #353535;
  font-family: var(--font-sidebar);
  font-size: 13px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition:
    width 200ms ease-out,
    flex-basis 200ms ease-out;
}

.atlas-menu-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: 11.78px 9px 8px 9px;
  scrollbar-width: none;
}
.atlas-menu-scroll::-webkit-scrollbar { display: none; }
.atlas-menu-scroll.has-row-menu {
  overflow: visible;
}

.atlas-identity-header {
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 12px;
}
.atlas-identity-left {
  min-width: 0;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 4px 7px;
  border-radius: 7px;
}
.atlas-identity-logo {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  background: #fff;
  padding: 3px;
  box-shadow: inset 0 0 0 0.5px rgba(0,0,0,0.05);
}
.atlas-identity-logo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}
.atlas-identity-name {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #1a1a1a;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
}
.atlas-identity-collapse-btn {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #747474;
  cursor: pointer;
  outline: none;
  transition: background 0.12s, color 0.12s;
}
.atlas-identity-collapse-btn:hover,
.atlas-identity-collapse-btn:focus-visible {
  background: #f3f3f3;
  color: #3a3a3a;
}

.atlas-topbar {
  display: flex;
  align-items: center;
  gap: 2px;
  height: 32px;
  margin: 0 1px 13px 1px;
  padding: 0 2px 0 0;
  box-sizing: border-box;
  border: 1px solid #ededed;
  border-radius: 7px;
  background: #fafafa;
  overflow: hidden;
  transition: gap 0.18s ease, background 0.16s ease;
}
.atlas-topbar.is-search-active {
  gap: 0;
}

.atlas-menu-search {
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  height: 30px;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding: 0 10px;
  gap: 8px;
  background: transparent;
  border: 0;
  border-radius: 6px;
  color: #a9a9a9;
  font-size: 13px;
  cursor: text;
  box-shadow: none;
  transition: width 0.18s ease, flex-basis 0.18s ease, border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.atlas-topbar.is-search-active .atlas-menu-search {
  flex-basis: 100%;
  width: 100%;
}
.atlas-menu-search .cmd-sym {
  font-size: 13px;
  font-weight: 500;
  margin-left: -2px;
}
.atlas-menu-search .search-input {
  flex: 1;
  min-width: 0;
  height: 17px;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  color: #1a1a1a;
  caret-color: #1a1a1a;
  font-family: inherit;
  font-size: 13px;
  line-height: 1;
}
.atlas-menu-search .search-input::placeholder { color: #a9a9a9; }
.atlas-menu-search .slash {
  color: #b8b8b8;
  font-size: 13px;
}

.atlas-collapse-btn {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  min-width: 0;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #747474;
  cursor: pointer;
  outline: none;
  overflow: hidden;
  transition: width 0.18s ease, flex-basis 0.18s ease, opacity 0.12s ease, background 0.12s, border-color 0.12s, color 0.12s;
}
.atlas-topbar.is-search-active .atlas-collapse-btn {
  width: 0;
  flex-basis: 0;
  opacity: 0;
  pointer-events: none;
  border-width: 0;
}
.atlas-collapse-btn:hover,
.atlas-collapse-btn:focus-visible {
  background: #f3f3f3;
  color: #3a3a3a;
}
.atlas-collapsed-search-btn {
  display: none;
}
.atlas-collapse-icon {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}

.atlas-workspace.is-isolated .atlas-menu-scroll {
  padding: 16px 14px 10px;
}
.atlas-workspace.is-isolated .atlas-topbar {
  height: 36px;
  margin: 2px 0 22px;
  padding: 0;
  gap: 0;
}
.atlas-workspace.is-isolated .atlas-menu-search {
  height: 34px;
  padding: 0 11px;
  font-size: 14px;
}
.atlas-workspace.is-isolated .atlas-menu-search .search-input {
  height: 18px;
  font-size: 14px;
}
.atlas-workspace.is-isolated .atlas-menu-search .cmd-sym,
.atlas-workspace.is-isolated .atlas-menu-search .slash {
  font-size: 14px;
}
.atlas-workspace.is-isolated .atlas-primary {
  gap: 2px;
}
.atlas-workspace.is-isolated .atlas-menu-row,
.atlas-workspace.is-isolated .atlas-item-row {
  height: 33px;
  padding: 0 11px;
  border-radius: 8px;
  font-size: 15px;
}
.atlas-workspace.is-isolated .atlas-menu-icon {
  width: 17px;
  height: 17px;
  flex-basis: 17px;
  stroke-width: 1.7;
}
.atlas-workspace.is-isolated .atlas-menu-shortcut {
  width: 34px;
  flex-basis: 34px;
  font-size: 13px;
}
.atlas-workspace.is-isolated .atlas-section {
  margin-top: 22px;
}
.atlas-workspace.is-isolated .atlas-primary + .atlas-section {
  margin-top: 30px;
}
.atlas-workspace.is-isolated .atlas-section-head {
  height: 27px;
  padding: 0 11px;
}
.atlas-workspace.is-isolated .atlas-section-toggle {
  height: 22px;
  font-size: 14px;
  line-height: 22px;
}
.atlas-workspace.is-isolated .atlas-view-all {
  font-size: 12.5px;
}
.atlas-workspace.is-isolated .atlas-section-chev .chev-down,
.atlas-workspace.is-isolated .atlas-account-chev .chev-down {
  width: 12px;
  height: 12px;
}
.atlas-workspace.is-isolated .atlas-item-row {
  height: 34px;
}
.atlas-workspace.is-isolated .atlas-account {
  min-height: 58px;
  padding: 9px 15px 10px;
  font-size: 14px;
}
.atlas-workspace.is-isolated .atlas-avatar {
  width: 30px;
  height: 30px;
  flex-basis: 30px;
  font-size: 13px;
}
.atlas-workspace.is-isolated .atlas-resizer {
  display: none;
}

.atlas-primary {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.atlas-menu-row,
.atlas-item-row {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 26px;
  padding: 0 10px;
  border-radius: 6px;
  cursor: pointer;
  color: #353535;
  font-size: 13.4px;
  font-weight: 400;
  line-height: 1.2;
  position: relative;
  overflow: hidden;
  background-clip: padding-box;
  outline: none;
  user-select: none;
  text-decoration: none;
}
.atlas-menu-row:hover,
.atlas-item-row:hover {
  background-color: #f7f7f7;
}
.atlas-menu-row.is-active,
.atlas-item-row.is-active {
  background-color: #f1f1f1;
}

.atlas-menu-icon {
  width: 14.8px;
  height: 14.8px;
  flex: 0 0 14.8px;
  stroke: #343434;
  stroke-width: 1.75;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}
.atlas-menu-label,
.atlas-item-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  letter-spacing: 0px;
  line-height: 1.2;
  padding-bottom: 0;
}
.atlas-item-label {
  color: #353535;
  text-overflow: clip;
  -webkit-mask-image: linear-gradient(90deg, #000 0, #000 85%, transparent 101%);
  mask-image: linear-gradient(90deg, #000 0, #000 85%, transparent 101%);
}
.atlas-item-row:hover .atlas-item-label {
  -webkit-mask-image: linear-gradient(90deg, #000 0, #000 70%, transparent 85%);
  mask-image: linear-gradient(90deg, #000 0, #000 70%, transparent 85%);
}
.atlas-menu-count {
  flex: 0 0 28px;
  width: 28px;
  margin-right: 0;
  color: #9a9a9a;
  font-size: 11.8px;
  line-height: 1;
  text-align: right;
  font-variant-numeric: tabular-nums;
  text-decoration: underline;
  text-decoration-color: #d8d8d8;
  text-underline-offset: 2px;
}
.atlas-menu-shortcut {
  flex: 0 0 28px;
  width: 28px;
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.5px;
  margin-right: 0;
  color: #9a9a9a;
  font-size: 12px;
  line-height: 1;
  text-align: right;
  opacity: 0;
  transition: opacity 0.12s;
}
.atlas-menu-row.is-new-chat:hover .atlas-menu-shortcut {
  opacity: 1;
}
.atlas-menu-shortcut-cmd {
  font-size: 12.2px;
  line-height: 1;
}

.atlas-sep {
  display: none;
  height: 1px;
  background: #ededed;
  margin: 8px -8px 12px -8px;
}
.atlas-sep + .atlas-section {
  margin-top: 0;
}
.atlas-section {
  margin-top: 8px;
}
.atlas-primary + .atlas-section {
  margin-top: 28.3px;
}
.atlas-section + .atlas-section {
  margin-top: 24px;
}
.atlas-section-head {
  display: flex;
  align-items: center;
  height: 22px;
  padding: 0 10px;
  gap: 8px;
  user-select: none;
}
.atlas-section + .atlas-section .atlas-section-head {
  height: 22px;
}
.atlas-section-toggle,
.atlas-view-all {
  display: flex;
  align-items: center;
  min-width: 0;
  height: 18px;
  border-radius: 6px;
  cursor: pointer;
  outline: none;
}
.atlas-section-toggle {
  gap: 4px;
  color: #9b9b9b;
  font-size: 13.1px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0;
}
.atlas-section-toggle:hover,
.atlas-view-all:hover {
  color: #555;
}
.atlas-section-text {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.atlas-section-chev {
  display: flex;
  color: var(--chevron-default);
  transition: transform 0.2s, color 0.15s;
}
.atlas-section-toggle:hover .atlas-section-chev { color: var(--text-primary); }
.atlas-section-toggle.is-collapsed .atlas-section-chev { transform: rotate(-90deg); }
.atlas-section-chev .chev-down,
.atlas-account-chev .chev-down {
  width: 10.6px;
  height: 10.6px;
  stroke: currentColor;
  stroke-width: 1.8;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.atlas-view-all {
  margin-left: auto;
  margin-right: -3.8px;
  gap: 4px;
  color: #9a9a9a;
  font-size: 11.8px;
  font-weight: 400;
  letter-spacing: 0;
  flex: 0 0 auto;
}
.atlas-view-all .atlas-section-text {
  text-align: right;
}
.atlas-view-chevron {
  width: 11.2px;
  height: 11.2px;
  stroke: currentColor;
  stroke-width: 1.8;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.atlas-section-list {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.atlas-section-list.is-hidden {
  display: none;
}

.atlas-item-row {
  height: 27px;
  gap: 0;
  color: #353535;
  padding: 0 10px;
  font-size: 13.4px;
}
.atlas-item-row.has-open-menu {
  overflow: visible;
  z-index: 30;
}
.atlas-item-more {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 19.5px;
  height: 19.5px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  color: #242424;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  opacity: 0;
  /* Dots rendered a touch heavier so they read from a short distance on
     row hover. text-stroke thickens the glyph weight slightly beyond 700. */
  text-shadow: 0 0 0 currentColor;
  -webkit-text-stroke: 0.3px currentColor;
  transition: opacity 0.12s, background 0.12s;
}
.atlas-item-row:hover .atlas-item-more {
  opacity: 1;
}
.atlas-item-more:hover {
  background: #eeeeee;
}

.atlas-row-menu-popover {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  width: 203px;
  min-height: 222px;
  z-index: 2500;
  overflow: visible;
  pointer-events: auto;
}
.atlas-row-menu-popover .no-icon-menu-preview {
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.5);
  transform-origin: top left;
}
.atlas-row-menu-popover .atlas-row-menu-preview {
  pointer-events: auto;
}
.atlas-row-menu-preview .is-atlas-value-row .no-icon-menu-left {
  flex: 0 0 auto;
  min-width: max-content;
  overflow: visible;
}
.atlas-row-menu-preview .is-atlas-value-row .no-icon-menu-left > span {
  display: block;
  white-space: nowrap;
}
.atlas-row-menu-preview .is-atlas-value-row .no-icon-menu-right {
  flex: 0 1 auto;
  width: auto;
  min-width: 0;
  margin-left: 28px;
  overflow: hidden;
  justify-content: flex-end;
}
.atlas-row-menu-preview .is-atlas-value-row .atlas-menu-value {
  display: block;
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
  white-space: nowrap;
  line-height: 1.12;
  padding-bottom: 2px;
  margin-bottom: -2px;
}
.atlas-row-menu-preview .is-atlas-value-row .no-icon-menu-chevron {
  flex: 0 0 24px;
}

.atlas-item-loader {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 2.5px;
  margin-right: 8px;
}
.atlas-item-loader i {
  width: 3.5px;
  height: 3.5px;
  border-radius: 1.2px;
  background: #d2d2d2;
  animation: atlas-loading-dot 1s ease-in-out infinite;
}
.atlas-item-loader i:nth-child(2) { animation-delay: 0.15s; }
.atlas-item-loader i:nth-child(3) { animation-delay: 0.3s; }
@keyframes atlas-loading-dot {
  0%, 100% { background: #d6d6d6; }
  50% { background: #6f6f6f; }
}

.atlas-account {
  min-height: 36px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 12px 8px 12px;
  border-top: 0;
  color: #1a1a1a;
  font-size: 12.2px;
  font-weight: 400;
  letter-spacing: 0;
}
.atlas-account:hover {
  background: #f6f6f6;
}
.atlas-avatar {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  background: #efefef;
  color: #272727;
  font-size: 10px;
  font-weight: 600;
  box-shadow: inset 0 0 0 1px #e6e6e6;
}
.atlas-account-title,
.atlas-account-plan {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.atlas-account-dot {
  color: #9b9b9b;
  flex: 0 0 auto;
}
.atlas-account-plan {
  color: #838383;
}
.atlas-account-spacer {
  flex: 1 1 auto;
  min-width: 8px;
}
.atlas-account-chev {
  display: flex;
  flex: 0 0 auto;
  color: var(--chevron-default);
  transition: color 0.15s;
}
.atlas-account:hover .atlas-account-chev {
  color: var(--text-primary);
}

.atlas-resizer {
  position: absolute;
  top: 0;
  right: -4px;
  bottom: 0;
  z-index: 4;
  width: 8px;
  cursor: ew-resize;
  background: transparent;
  outline: none;
}
/* Hover/resize indicator: a SHORT rounded segment centered vertically on the
   border — never a full-height line, so the 1px panel border-right never
   appears to thicken. The pill is centered on the border line itself. */
.atlas-resizer::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 3px;
  height: 44px;
  border-radius: 3px;
  background: transparent;
  transition: background 0.14s ease;
}
.atlas-resizer:hover::after,
.atlas-resizer:focus-visible::after,
#root.is-atlas-resizing .atlas-resizer::after {
  background: #535353;
}
#root.is-atlas-resizing,
#root.is-atlas-resizing * {
  cursor: ew-resize !important;
  user-select: none !important;
}

/* Resize-handle hover tooltip — "Click to collapse ⌘B / Drag to resize".
   Appended to <body> (outside #root) so it stays crisp and viewport-fixed;
   JS positions it next to the cursor with a small gap from the border. */
.atlas-resizer-tip {
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  display: none;
  flex-direction: column;
  gap: 1px;
  padding: 7px 10px 8px;
  border-radius: 9px;
  background: #303030;
  color: #f4f4f4;
  font-family: var(--font-sidebar);
  font-size: 12.5px;
  line-height: 1.4;
  letter-spacing: 0.01em;
  white-space: nowrap;
  pointer-events: none;
  box-shadow:
    0 8px 24px rgba(0, 0, 0, 0.20),
    0 1px 3px rgba(0, 0, 0, 0.16);
}
.atlas-resizer-tip.is-visible {
  display: flex;
}
.atlas-resizer-tip-line {
  display: inline-flex;
  align-items: center;
}
.atlas-resizer-tip-key {
  margin-left: 7px;
  color: rgba(244, 244, 241, 0.55);
  font-size: 12px;
}

.atlas-page-surface {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  background: #fdfdfd;
  overflow: hidden;
}
.atlas-chat-header {
  height: 52px;
  flex: 0 0 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  position: relative;
  z-index: 5;
  padding: 0 22px 0 31px;
  background: rgba(253, 253, 252, 0.88);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  backdrop-filter: blur(14px) saturate(160%);
}
.atlas-chat-header::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 42px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(253,253,252,0.92), rgba(253,253,252,0));
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.atlas-chat-header.is-empty-new-chat {
  justify-content: flex-end;
}
.atlas-chat-header-placeholder {
  flex: 1 1 auto;
  min-width: 0;
  height: 30px;
}
.atlas-chat-title-wrap {
  min-width: 0;
  max-width: min(52vw, 520px);
  display: inline-flex;
  align-items: center;
  position: relative;
  margin-left: -8px;
}
.atlas-chat-title-btn,
.atlas-chat-title-input {
  min-width: 0;
  height: 30px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--text-primary);
  font: inherit;
  font-family: var(--font-sidebar);
  font-size: 14.25px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
  outline: none;
}
.atlas-chat-title-btn {
  max-width: min(52vw, 486px);
  cursor: pointer;
  transition: background 0.12s, color 0.12s;
}
.atlas-chat-title-btn:hover,
.atlas-chat-title-btn:focus-visible {
  background: #f7f7f7;
}
.atlas-chat-title-wrap.is-pending-title .atlas-chat-title-btn {
  color: var(--chevron-default);
}
.atlas-chat-title-input {
  box-sizing: border-box;
  width: var(--atlas-title-edit-start, min(52vw, 486px));
  flex: 0 0 var(--atlas-title-edit-start, min(52vw, 486px));
  max-width: min(52vw, 486px);
  border: 0;
  background: transparent;
  caret-color: #1a1a1a;
  cursor: text;
  transition: width 0.18s ease-out, flex-basis 0.18s ease-out, max-width 0.18s ease-out, color 0.14s ease;
}
.atlas-chat-title-wrap.is-editing-title .atlas-chat-title-input {
  background: #f7f7f7;
}
.atlas-chat-title-input::selection {
  background: rgba(207, 207, 203, 0.48);
  color: #1a1a1a;
}
.atlas-chat-title-wrap.is-title-edit-expanded .atlas-chat-title-input {
  width: min(52vw, 486px);
  flex-basis: min(52vw, 486px);
}
.atlas-chat-title {
  min-width: 0;
  height: 100%;
  display: inline-flex;
  align-items: center;
  overflow: hidden;
  padding: 0;
  margin: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 1.2;
}
.atlas-chat-title-chev-btn {
  width: 28px;
  height: 30px;
  flex: 0 0 28px;
  display: grid;
  place-items: center;
  margin-left: -4px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--chevron-default);
  cursor: pointer;
  outline: none;
  transition: background 0.12s, color 0.12s;
}
.atlas-chat-title-chev-btn:hover,
.atlas-chat-title-chev-btn:focus-visible,
.atlas-chat-title-wrap.is-open .atlas-chat-title-chev-btn {
  background: #f7f7f7;
  color: var(--text-primary);
}
.atlas-chat-title-chev {
  display: inline-flex;
  flex: 0 0 auto;
  color: currentColor;
}
.atlas-chat-title-chev .chev-down {
  width: 15.435px;
  height: 15.435px;
  transform: translateY(0.5px);
  stroke: currentColor;
  stroke-width: 2.05;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.atlas-chat-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 6px;
}
.atlas-chat-actions.is-pending-actions {
  gap: 0;
}
.atlas-chat-action-btn {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #2f3138;
  cursor: pointer;
  outline: none;
  transition: background 0.12s, color 0.12s;
}
.atlas-chat-action-btn:hover,
.atlas-chat-action-btn:focus-visible {
  background: #f7f7f7;
  color: var(--text-primary);
}
.atlas-chat-action-icon {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 1.6;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.atlas-chat-actions.is-resolving-actions .atlas-chat-action-btn.is-document {
  animation: atlasDocumentSlideHome 0.28s ease-out both;
}
.atlas-chat-actions.is-resolving-actions .atlas-chat-action-btn.is-share {
  animation: atlasShareSettleIn 0.24s ease-out both;
}
@keyframes atlasDocumentSlideHome {
  from {
    transform: translateX(36px);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes atlasShareSettleIn {
  from {
    opacity: 0;
    transform: translateX(6px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.atlas-chat-title-menu-popover {
  position: absolute;
  top: calc(100% + 5px);
  right: 0;
  z-index: 2500;
  width: 203px;
  min-height: 147px;
  overflow: visible;
  pointer-events: auto;
}
.atlas-chat-title-menu-popover .no-icon-menu-preview {
  position: absolute;
  top: 0;
  left: 0;
  transform: scale(0.5);
  transform-origin: top left;
  pointer-events: auto;
}
.atlas-chat-title-menu-preview .is-atlas-value-row .no-icon-menu-left {
  flex: 0 0 auto;
  min-width: max-content;
}
.atlas-chat-title-menu-preview .is-atlas-value-row .no-icon-menu-right {
  flex: 0 1 auto;
  min-width: 0;
  margin-left: 28px;
  overflow: hidden;
  justify-content: flex-end;
}
.atlas-chat-title-menu-preview .is-atlas-value-row .atlas-menu-value {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
  white-space: nowrap;
  line-height: 1.12;
  padding-bottom: 2px;
  margin-bottom: -2px;
}
.atlas-chat-thread {
  flex: 1 1 auto;
  min-height: 0;
  position: relative;
  background: #fdfdfd;
  display: grid;
  place-items: center;
  overflow: auto;
  padding: 54px 30px 64px;
}
.atlas-workspace.is-isolated .atlas-page-surface {
  background: #fdfdfd;
}
.atlas-workspace.is-isolated .atlas-chat-header {
  height: 62px;
  flex-basis: 62px;
  padding: 0 28px 0 34px;
  background: rgba(253, 253, 252, 0.92);
}
.atlas-workspace.is-isolated .atlas-chat-header.is-empty-new-chat {
  justify-content: space-between;
}
.atlas-workspace.is-isolated .atlas-isolated-corner-btn {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 34px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  outline: none;
  opacity: 0.86;
  transition: background 0.12s, opacity 0.12s;
}
.atlas-workspace.is-isolated .atlas-isolated-corner-btn:hover,
.atlas-workspace.is-isolated .atlas-isolated-corner-btn:focus-visible {
  background: #f7f7f7;
  opacity: 1;
}
.atlas-workspace.is-isolated .atlas-isolated-corner-btn img {
  width: 23px;
  height: 23px;
  display: block;
  object-fit: contain;
}
.atlas-workspace.is-isolated .atlas-chat-thread {
  padding: 72px clamp(36px, 5vw, 86px) 88px;
}
.atlas-workspace.is-isolated .atlas-chat-start {
  width: min(1010px, 100%);
  gap: 25px;
  transform: translateY(clamp(-120px, -11.7vh, -94px)) scale(0.9);
  transform-origin: center center;
}
.atlas-workspace.is-isolated .atlas-start-heading {
  gap: 19px;
  transform: translateY(-9px);
}
.atlas-workspace.is-isolated .atlas-start-mark {
  --atlas-start-mark-size: 64px;
}
.atlas-workspace.is-isolated .atlas-start-title {
  font-size: 58px;
}
.atlas-workspace.is-isolated .atlas-start-title.is-medium {
  font-size: 52px;
}
.atlas-workspace.is-isolated .atlas-start-title.is-long {
  font-size: 44px;
}
.atlas-workspace.is-isolated .atlas-start-title.is-extra-long {
  font-size: 38px;
}
.atlas-workspace.is-isolated .atlas-start-composer {
  width: min(790px, 76%);
}
.atlas-workspace.is-isolated .atlas-start-composer-main {
  min-height: 132px;
  border-radius: 20px;
}
.atlas-workspace.is-isolated .atlas-start-input {
  min-height: 70px;
  padding: 18px 20px 4px;
  font-size: 16px;
}
.atlas-workspace.is-isolated .atlas-start-actions {
  min-height: 44px;
  padding: 0 16px 12px;
}
.atlas-workspace.is-isolated .atlas-start-icon,
.atlas-workspace.is-isolated .atlas-start-chev .chev-down {
  width: 18px;
  height: 18px;
  flex-basis: 18px;
}
.atlas-workspace.is-isolated .atlas-start-icon-btn,
.atlas-workspace.is-isolated .atlas-start-model-btn,
.atlas-workspace.is-isolated .atlas-start-context-btn,
.atlas-workspace.is-isolated .atlas-start-send-btn {
  height: 30px;
  font-size: 15px;
}
.atlas-workspace.is-isolated .atlas-start-icon-btn {
  width: 30px;
}
.atlas-workspace.is-isolated .atlas-start-pills {
  gap: 11px;
  margin-top: 4px;
}
.atlas-workspace.is-isolated .atlas-start-pill {
  height: 35px;
  padding: 0 14px;
  border-radius: 8px;
  font-size: 15px;
}
.atlas-workspace.is-isolated .atlas-start-pill .atlas-start-icon {
  width: 18px;
  height: 18px;
}
.atlas-chat-start {
  width: min(840px, 100%);
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 21px;
  margin: -1px auto 0;
  transform: translateY(clamp(-70px, -7.25vh, -54px));
}
.atlas-start-heading {
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: #303030;
  white-space: nowrap;
  transform: translateY(-7px);
}
.atlas-start-mark {
  --atlas-start-mark-size: 58px;
  width: var(--atlas-start-mark-size);
  height: var(--atlas-start-mark-size);
  flex: 0 0 var(--atlas-start-mark-size);
  display: block;
  object-fit: contain;
}
.atlas-start-title {
  max-width: 100%;
  margin: 0;
  color: currentColor;
  font-family: "Instrument Serif", Georgia, serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: 0.02em;
  font-kerning: normal;
  text-rendering: optimizeLegibility;
  text-align: center;
  white-space: nowrap;
  overflow-wrap: break-word;
}
.atlas-start-title.is-medium {
  font-size: 45px;
}
.atlas-start-title.is-long {
  font-size: 38px;
}
.atlas-start-title.is-extra-long {
  font-size: 32px;
  line-height: 1.04;
  white-space: normal;
}
.atlas-start-composer {
  width: 80%;
  min-width: 0;
  box-sizing: border-box;
}
.atlas-start-composer-main {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  min-height: 135.52px;
  display: flex;
  flex-direction: column;
  border: 1px solid #d9d9d9;
  border-radius: 18px;
  background: #ffffff;
  box-shadow:
    0 1px 1px rgba(0,0,0,0.035),
    0 14px 34px rgba(0,0,0,0.065),
    0 28px 58px rgba(0,0,0,0.035);
  overflow: hidden;
}
.atlas-start-input {
  width: 100%;
  min-height: 66px;
  flex: 1 1 auto;
  padding: 16px 18px 4px;
  border: 0;
  outline: none;
  resize: none;
  background: transparent;
  color: #1a1a1a;
  caret-color: #1a1a1a;
  font: inherit;
  font-family: var(--font-sidebar);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.36;
}
.atlas-start-input::placeholder {
  color: #8f8f8f;
  opacity: 1;
}
.atlas-start-actions {
  min-width: 0;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 14px 10px 14px;
}
.atlas-start-actions-left,
.atlas-start-actions-right {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.atlas-start-icon,
.atlas-start-chev .chev-down {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  stroke: currentColor;
  stroke-width: 1.6;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.atlas-start-chev {
  display: inline-flex;
  color: currentColor;
}
.atlas-start-icon-btn,
.atlas-start-mode-btn,
.atlas-start-model-btn,
.atlas-start-context-btn,
.atlas-start-send-btn {
  min-width: 0;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #7a7a7a;
  font: inherit;
  font-family: var(--font-sidebar);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  outline: none;
  transition: background 0.12s ease, color 0.12s ease;
}
.atlas-start-icon-btn {
  width: 26px;
  padding: 0;
}
.atlas-start-mode-btn,
.atlas-start-model-btn,
.atlas-start-context-btn {
  padding: 0 8px;
}
.atlas-start-mode-btn span,
.atlas-start-model-btn span,
.atlas-start-context-btn span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.atlas-start-icon-btn:hover,
.atlas-start-mode-btn:hover,
.atlas-start-model-btn:hover,
.atlas-start-context-btn:hover,
.atlas-start-send-btn:hover,
.atlas-start-icon-btn:focus-visible,
.atlas-start-mode-btn:focus-visible,
.atlas-start-model-btn:focus-visible,
.atlas-start-context-btn:focus-visible,
.atlas-start-send-btn:focus-visible {
  background: #f7f7f7;
  color: #343434;
}
.atlas-start-model-btn {
  color: #3a3a3a;
}
.atlas-start-muted {
  color: #9a9a9a;
}
.atlas-start-send-btn {
  width: 26px;
  padding: 0;
  background: #1a1a1a;
  color: #fff;
}
.atlas-start-send-btn:hover,
.atlas-start-send-btn:focus-visible {
  background: #343434;
  color: #fff;
}
.atlas-start-send-btn .atlas-start-icon {
  width: 15px;
  height: 15px;
}
.atlas-start-context-row {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  min-height: 38px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: -1px;
  padding: 6px 12px 7px;
  border: 1px solid #ededed;
  border-top: 0;
  border-radius: 0 0 8px 8px;
  background: #fafafa;
  color: #8c8c8c;
}
.atlas-start-context-row .atlas-start-icon {
  width: 15px;
  height: 15px;
}
.atlas-start-pills {
  max-width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 6px;
}
.atlas-start-pill {
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 11px;
  border: 1px solid #ededed;
  border-radius: 7px;
  background: #fff;
  color: #2f2f2f;
  box-shadow: 0 1px 2px rgba(0,0,0,0.025);
  font: inherit;
  font-family: var(--font-sidebar);
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  outline: none;
  transition: background 0.12s ease, border-color 0.12s ease, box-shadow 0.12s ease;
}
.atlas-start-pill:hover,
.atlas-start-pill:focus-visible {
  background: #f8f8f8;
  border-color: #dddddd;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.atlas-start-pill .atlas-start-icon {
  width: 16px;
  height: 16px;
  color: #777777;
}
.atlas-start-cards {
  width: min(690px, calc(100% - 70px));
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  align-self: center;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px;
  margin-top: 14px;
}
.atlas-start-card {
  min-height: 112px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 15px 16px 16px;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  background: #fff;
  color: #2d2d2d;
  font: inherit;
  font-family: var(--font-sidebar);
  text-align: left;
  cursor: pointer;
  outline: none;
  transition: background 0.12s ease, border-color 0.12s ease, box-shadow 0.12s ease;
}
.atlas-start-card:hover,
.atlas-start-card:focus-visible {
  background: #fdfdfd;
  border-color: #dedede;
  box-shadow: 0 4px 14px rgba(0,0,0,0.04);
}
.atlas-start-card .atlas-start-icon {
  width: 18px;
  height: 18px;
  color: #4a4a4a;
}
.atlas-start-card-title {
  display: block;
  margin-top: 9px;
  color: #252525;
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.2;
}
.atlas-start-card-body {
  display: block;
  color: #8e8e8e;
  font-size: 13.2px;
  font-weight: 400;
  line-height: 1.32;
}
@media (max-width: 860px) {
  .atlas-chat-thread {
    padding-inline: 20px;
  }
  .atlas-start-title {
    font-size: 46px;
  }
  .atlas-start-mark {
    --atlas-start-mark-size: 54px;
    stroke-width: 3.2;
  }
  .atlas-start-title.is-medium {
    font-size: 41px;
  }
  .atlas-start-title.is-long {
    font-size: 31px;
  }
  .atlas-start-title.is-extra-long {
    font-size: 27px;
  }
  .atlas-start-cards {
    width: min(520px, 100%);
    grid-template-columns: 1fr;
  }
}
@media (max-width: 560px) {
  .atlas-chat-thread {
    padding: 28px 14px 36px;
  }
  .atlas-chat-start {
    gap: 17px;
    transform: translateY(-34px);
  }
  .atlas-start-heading {
    align-items: flex-start;
    gap: 10px;
    white-space: normal;
    transform: translateY(-4px);
  }
  .atlas-start-title {
    font-size: 26px;
    text-align: left;
    white-space: normal;
  }
  .atlas-start-title.is-medium,
  .atlas-start-title.is-long,
  .atlas-start-title.is-extra-long {
    font-size: 24px;
  }
  .atlas-start-mark {
    --atlas-start-mark-size: 34px;
    margin-top: 2px;
    stroke-width: 2.45;
  }
  .atlas-start-composer-main {
    min-height: 135.52px;
    border-radius: 18px;
  }
  .atlas-start-composer {
    width: 100%;
  }
  .atlas-start-input {
    min-height: 66px;
    padding: 17px 19px 3px;
    font-size: 15px;
  }
  .atlas-start-actions {
    padding-inline: 14px;
  }
  .atlas-start-context-row {
    align-items: stretch;
    flex-direction: column;
    gap: 4px;
  }
  .atlas-start-context-btn {
    justify-content: flex-start;
  }
}
@media (max-width: 440px) {
  .atlas-start-actions {
    align-items: stretch;
    flex-direction: column;
    gap: 8px;
  }
  .atlas-start-actions-left,
  .atlas-start-actions-right {
    width: 100%;
    justify-content: space-between;
  }
}

.atlas-menu-panel.is-collapsed {
  width: var(--atlas-panel-collapsed-width);
  flex-basis: var(--atlas-panel-collapsed-width);
}
.atlas-menu-panel.is-collapsed .atlas-menu-scroll {
  padding: 11px 7px 8px 7px;
}
.atlas-menu-panel.is-collapsed .atlas-topbar {
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  height: auto;
  margin: 0 0 6px 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}
.atlas-menu-panel.is-collapsed .atlas-collapsed-search-btn {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  padding: 0;
  border: 1px solid #ececec;
  border-radius: 7px;
  background: #fafafa;
  color: #8a8a8a;
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  outline: none;
}
.atlas-menu-panel.is-collapsed .atlas-collapsed-search-btn:focus-visible {
  color: #666;
}
.atlas-menu-panel.is-collapsed .atlas-primary {
  gap: 6px;
}
.atlas-menu-panel.is-collapsed .atlas-menu-search,
.atlas-menu-panel.is-collapsed .atlas-menu-label,
.atlas-menu-panel.is-collapsed .atlas-menu-count,
.atlas-menu-panel.is-collapsed .atlas-item-label,
.atlas-menu-panel.is-collapsed .atlas-section,
.atlas-menu-panel.is-collapsed .atlas-account-title,
.atlas-menu-panel.is-collapsed .atlas-account-dot,
.atlas-menu-panel.is-collapsed .atlas-account-plan,
.atlas-menu-panel.is-collapsed .atlas-account-spacer,
.atlas-menu-panel.is-collapsed .atlas-account-chev {
  display: none;
}
.atlas-menu-panel.is-collapsed .atlas-collapse-btn {
  width: 32px;
  height: 32px;
  flex-basis: 32px;
  border-radius: 7px;
}
.atlas-menu-panel.is-collapsed .atlas-menu-row {
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  margin: 0 auto;
  border-radius: 7px;
}
.atlas-menu-panel.is-collapsed .atlas-menu-row:hover {
  background-color: #f3f3f3;
}
.atlas-menu-panel.is-collapsed .atlas-menu-row.is-active {
  background-color: #f1f1f1;
}
.atlas-menu-panel.is-collapsed .atlas-menu-icon {
  width: 18px;
  height: 18px;
  flex-basis: 18px;
  stroke-width: 1.6;
}
.atlas-menu-panel.is-collapsed .atlas-account {
  justify-content: center;
  padding: 7px 0 8px 0;
}
.atlas-menu-panel.is-collapsed .atlas-resizer {
  display: none;
}

.pipeline-summary:empty {
  width: 0;
  min-width: 0;
}

.tabs .tab {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 190px;
}

.tabs .tab-label {
  display: inline-block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.atlas-flower-icon {
  display: inline-block;
  flex-shrink: 0;
  width: 15px;
  height: 15px;
  color: inherit;
  background-color: currentColor;
  opacity: 1;
  -webkit-mask: url("../assets/atlas-flower-mask.png?v=20260602-12") center / contain no-repeat;
  mask: url("../assets/atlas-flower-mask.png?v=20260602-12") center / contain no-repeat;
}

.atlas-start-heading .atlas-start-mark.atlas-flower-icon {
  width: var(--atlas-start-mark-size);
  height: var(--atlas-start-mark-size);
  flex: 0 0 var(--atlas-start-mark-size);
  color: #c97655;
  background-color: currentColor;
}

.cn-hb-crumb .atlas-flower-icon.cn-hb-icon {
  width: 16px;
  height: 16px;
}

.tabs .tab .atlas-flower-icon {
  width: 17px;
  height: 17px;
  color: #555;
  background-color: #555;
}

.repo-search-popover {
  display: none;
  position: fixed;
  z-index: 2600;
  width: 220px;
  max-width: calc(100vw - 16px);
  max-height: min(300px, calc(100vh - 96px));
  overflow-y: auto;
  padding: 4px 10px;
  background: #ffffff;
  border: 1px solid #dddddd;
  border-radius: 7px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.05), 0 8px 22px rgba(0,0,0,0.08);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #242424;
  user-select: none;
  pointer-events: auto;
}
.repo-search-popover.open { display: block; }
.repo-search-popover[data-anchor="atlas"] {
  box-sizing: border-box;
}
.repo-search-popover::-webkit-scrollbar { width: 4px; }
.repo-search-popover::-webkit-scrollbar-track { background: transparent; }
.repo-search-popover::-webkit-scrollbar-thumb { background: #d8d8d8; border-radius: 999px; }
.repo-search-result {
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  box-sizing: border-box;
  margin: 0 -5px;
  padding: 0 5px;
  border-radius: 5px;
  cursor: pointer;
  transition: background 0.12s;
}
.repo-search-result:hover { background: #f7f7f7; }
.repo-search-result-title {
  min-width: 0;
  flex: 1 1 auto;
  color: #242424;
  font-size: 13px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.repo-search-result-meta {
  max-width: 44%;
  color: #858585;
  font-size: 13px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 0 1 auto;
}
.repo-search-result-meta span { color: #858585; }
.repo-search-result-title mark,
.repo-search-result-meta mark {
  padding: 0;
  background: transparent;
  color: #242424;
  font-weight: 500;
}
.repo-search-empty {
  min-height: 24px;
  display: flex;
  align-items: center;
  margin: 0 -5px;
  padding: 0 5px;
  color: #737373;
  font-size: 13px;
  line-height: 1;
}
.repo-search-popover[data-scope="website"] {
  padding-top: 3px;
  padding-bottom: 3px;
}
.repo-search-popover[data-scope="website"] .repo-search-empty,
.repo-search-popover[data-scope="page"] .repo-search-empty {
  min-height: 22px;
}
.repo-search-popover[data-scope="page"] {
  padding-top: 3px;
  padding-bottom: 3px;
}

/* ================================================================
   RIGHT TRACK
   ================================================================ */
.right-track-page {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  background: #fdfdfd;
  color: #232323;
  font-family: var(--font-app);
}

.right-track-page h1,
.right-track-page h2,
.right-track-page h3,
.right-track-page p {
  letter-spacing: 0;
}

.rt-shell {
  width: min(1260px, calc(100% - 48px));
  margin: 0 auto;
  padding: 24px 0 42px;
}

.rt-hero,
.rt-panel,
.rt-course-card,
.rt-detail-card,
.rt-scenario-card,
.rt-deadline-table {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.025);
}

.rt-hero {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(480px, 0.9fr);
  gap: 18px;
  padding: 18px;
  align-items: stretch;
}

.rt-title-row {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.rt-hero-icon {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  color: #242424;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rt-title-row h1,
.rt-split-head h1 {
  margin: 0;
  color: #1d1d1d;
  font-size: 28px;
  line-height: 1.08;
  font-weight: 600;
}

.rt-title-row p,
.rt-split-head p,
.rt-panel-head p,
.rt-detail-left p,
.rt-scenario-card p {
  margin: 5px 0 0;
  color: #737373;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 400;
}

.rt-offer-line {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 24px;
  min-width: 0;
  color: #535353;
  font-size: 13px;
  line-height: 1.3;
}

.rt-offer-line strong {
  color: #1f1f1f;
  font-weight: 600;
  white-space: nowrap;
}

.rt-offer-line span:last-child {
  min-width: 0;
}

.rt-hero-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}

.rt-mini-metric {
  min-width: 0;
  min-height: 82px;
  padding: 12px;
  background: #f6f6f6;
  border: 1px solid #eeeeee;
  border-radius: 7px;
}

.rt-mini-metric span,
.rt-mini-metric em {
  display: block;
  color: #838383;
  font-size: 12px;
  line-height: 1.25;
  font-style: normal;
}

.rt-mini-metric strong {
  display: block;
  margin: 5px 0 4px;
  color: #1f1f1f;
  font-size: 20px;
  line-height: 1;
  font-weight: 600;
}

.rt-mini-metric.safe strong { color: #14856f; }
.rt-mini-metric.watch strong { color: #b86522; }

.rt-grid {
  display: grid;
  gap: 16px;
  margin-top: 16px;
}

.rt-grid-overview {
  grid-template-columns: minmax(0, 1.5fr) minmax(280px, 0.7fr);
}

.rt-panel {
  padding: 16px;
  min-width: 0;
}

.rt-panel-head,
.rt-split-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.rt-panel-head h2,
.rt-panel-head.compact h2,
.rt-detail-left h2 {
  margin: 0;
  color: #222222;
  font-size: 16px;
  line-height: 1.15;
  font-weight: 600;
}

.rt-panel-head.compact {
  align-items: center;
}

.rt-panel-head.compact span {
  color: #838383;
  font-size: 12px;
}

.rt-split-head {
  align-items: center;
  margin-bottom: 16px;
}

.rt-head-pills {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.rt-flag:not(svg) {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 25px;
  padding: 0 9px;
  border: 1px solid #e9e9e9;
  border-radius: 7px;
  color: #565656;
  background: #fbfbfb;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
}

.rt-flag:not(svg) svg {
  width: 13px;
  height: 13px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rt-flag:not(svg).rt-flag-orange { color: #bf5d1e; background: #fff8f1; border-color: #f1dfcf; }
.rt-flag:not(svg).rt-flag-blue { color: #316ac4; background: #f4f7ff; border-color: #dee7fb; }

.rt-trackline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 22px 0 18px;
  border-top: 1px solid #ececec;
  border-bottom: 1px solid #ececec;
}

.rt-track-node {
  position: relative;
  min-width: 0;
  padding: 18px 14px 16px 0;
}

.rt-track-node + .rt-track-node {
  padding-left: 20px;
}

.rt-track-node + .rt-track-node::before {
  content: '';
  position: absolute;
  left: 0;
  top: 20px;
  bottom: 20px;
  width: 1px;
  background: #eeeeee;
}

.rt-track-node > span,
.rt-signal-dot,
.rt-deadline-status {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border: 1.4px dashed #b7b7b7;
  border-radius: 50%;
  background: #fff;
}

.rt-track-node > span::after,
.rt-signal-dot span,
.rt-deadline-status span {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
}

.rt-track-node.safe > span,
.rt-signal-dot.safe,
.rt-deadline-status.open { color: #18a871; border-color: #18a871; }
.rt-track-node.watch > span,
.rt-signal-dot.watch,
.rt-deadline-status.next { color: #ec6d2d; border-color: #ec6d2d; }
.rt-track-node.risk > span,
.rt-signal-dot.risk,
.rt-signal-dot.danger,
.rt-deadline-status.risk { color: #d94b45; border-color: #d94b45; }
.rt-deadline-status.tbd { color: #8b8b8b; border-color: #b7b7b7; }

.rt-track-node strong,
.rt-track-node em {
  display: block;
  min-width: 0;
}

.rt-track-node strong {
  margin-top: 10px;
  color: #242424;
  font-size: 13px;
  font-weight: 600;
}

.rt-track-node em {
  margin-top: 3px;
  color: #838383;
  font-size: 12px;
  font-style: normal;
  line-height: 1.25;
}

.rt-offer-rules,
.rt-weight-row,
.rt-calc-output {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.rt-offer-rules div,
.rt-weight-row div,
.rt-calc-output div {
  min-width: 0;
  padding: 11px;
  background: #fafafa;
  border: 1px solid #eeeeee;
  border-radius: 7px;
}

.rt-offer-rules span,
.rt-weight-row span,
.rt-calc-output span {
  display: block;
  color: #838383;
  font-size: 12px;
}

.rt-offer-rules strong,
.rt-weight-row strong,
.rt-calc-output strong {
  display: block;
  margin-top: 4px;
  color: #242424;
  font-size: 14px;
  font-weight: 600;
}

.rt-ingest-list {
  display: grid;
  gap: 9px;
  margin-top: 15px;
}

.rt-ingest-list div {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 10px;
  align-items: center;
  min-width: 0;
}

.rt-ingest-list strong,
.rt-ingest-list em {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rt-ingest-list strong {
  color: #242424;
  font-size: 13px;
  font-weight: 600;
}

.rt-ingest-list em {
  color: #838383;
  font-size: 12px;
  font-style: normal;
  grid-column: 2;
}

.rt-doc-icon {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: linear-gradient(135deg, #3b82f6, #92b5f5);
}

.rt-doc-icon.sheet {
  background: linear-gradient(135deg, #14a38b, #8cd6c8);
}

.rt-course-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.rt-course-card {
  min-width: 0;
  padding: 14px;
}

.rt-course-card-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.rt-course-card-head > div {
  min-width: 0;
  flex: 1 1 auto;
}

.rt-course-card h3 {
  margin: 0;
  color: #222222;
  font-size: 14px;
  font-weight: 600;
}

.rt-course-card p {
  margin: 3px 0 0;
  color: #737373;
  font-size: 12px;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rt-status-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 22px;
  padding: 0 8px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

.rt-status-chip.safe { color: #117d68; background: #eefaf6; }
.rt-status-chip.watch { color: #9c5b18; background: #fff7eb; }
.rt-status-chip.risk,
.rt-status-chip.danger { color: #b9342f; background: #fff0ed; }

.rt-course-score {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 19px 0 8px;
}

.rt-course-score strong {
  color: #1f1f1f;
  font-size: 26px;
  line-height: 1;
  font-weight: 600;
}

.rt-course-score span,
.rt-course-foot {
  color: #838383;
  font-size: 12px;
}

.rt-progress {
  position: relative;
  height: 7px;
  border-radius: 999px;
  background: #eeeeda;
  overflow: hidden;
}

.rt-progress span {
  display: block;
  width: var(--rt-progress, 0%);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--rt-course-color, #ec6d2d), #3b82f6);
}

.rt-progress i {
  position: absolute;
  top: -2px;
  bottom: -2px;
  left: var(--rt-marker, 80%);
  width: 1px;
  background: #242424;
  opacity: 0.45;
}

.rt-course-foot {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 9px;
}

.rt-course-detail-list,
.rt-range-list {
  display: grid;
  gap: 12px;
}

.rt-detail-card {
  display: grid;
  grid-template-columns: minmax(280px, 0.8fr) minmax(520px, 1.2fr);
  gap: 18px;
  padding: 16px;
}

.rt-detail-code {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  color: #838383;
  font-size: 12px;
}

.rt-course-token {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 22px;
  padding: 0 8px;
  border-radius: 7px;
  color: #242424;
  background: color-mix(in srgb, var(--rt-course-color, #ddd) 13%, #fff);
  border: 1px solid color-mix(in srgb, var(--rt-course-color, #ddd) 28%, #e9e9e9);
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

.rt-detail-left h2 {
  margin-bottom: 6px;
}

.rt-weight-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 18px;
}

.rt-assessment-table {
  min-width: 0;
  border: 1px solid #eeeeee;
  border-radius: 8px;
  overflow: hidden;
}

.rt-assessment-header,
.rt-assessment-row {
  display: grid;
  grid-template-columns: 1fr minmax(180px, 2fr) 72px 104px 116px;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.rt-assessment-header {
  min-height: 34px;
  padding: 0 12px;
  background: #fafafa;
  color: #838383;
  font-size: 12px;
  font-weight: 600;
}

.rt-assessment-row {
  min-height: 42px;
  padding: 0 12px;
  border-top: 1px solid #eeeeee;
  color: #535353;
  font-size: 12px;
}

.rt-assessment-row > * {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rt-assessment-row strong {
  color: #242424;
  font-size: 13px;
  font-weight: 500;
}

.rt-assessment-row em {
  color: #838383;
  font-style: normal;
}

.rt-grade-entry {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border: 1px solid #e7e7e7;
  border-radius: 7px;
  background: #fff;
  color: #242424;
}

.rt-scenario-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.rt-scenario-card {
  min-width: 0;
  padding: 14px;
}

.rt-scenario-top {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #242424;
  font-size: 13px;
}

.rt-scenario-top span {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #fff 0 36%, transparent 38%),
    var(--rt-scenario-color);
}

.rt-scenario-top strong {
  font-weight: 600;
}

.rt-scenario-value {
  margin-top: 16px;
  color: #1f1f1f;
  font-size: 30px;
  line-height: 1;
  font-weight: 600;
}

.rt-scenario-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 9px;
  color: #838383;
  font-size: 12px;
}

.rt-scenario-meta em {
  font-style: normal;
  font-weight: 600;
}

.rt-scenario-meta em.safe,
.rt-scenario-meta em.on-track { color: #117d68; }
.rt-scenario-meta em.watch,
.rt-scenario-meta em.on-watch { color: #9c5b18; }
.rt-scenario-meta em.danger,
.rt-scenario-meta em.not-meeting { color: #b9342f; }

.rt-panel-wide {
  padding: 16px;
}

.rt-threshold-label {
  color: #838383;
  font-size: 12px;
  white-space: nowrap;
}

.rt-range-row {
  display: grid;
  grid-template-columns: minmax(230px, 0.8fr) minmax(240px, 1fr) minmax(190px, 0.6fr);
  gap: 18px;
  align-items: center;
  min-height: 58px;
  padding: 0 2px;
  border-top: 1px solid #eeeeee;
}

.rt-range-row:first-child {
  border-top: none;
}

.rt-range-row > div:first-child {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.rt-range-row strong {
  min-width: 0;
  color: #242424;
  font-size: 13px;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rt-range {
  position: relative;
  height: 9px;
  border-radius: 999px;
  background: #eeeeee;
}

.rt-range-fill {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--rt-floor);
  right: calc(100% - var(--rt-ceiling));
  border-radius: inherit;
  background: color-mix(in srgb, var(--rt-course-color, #3b82f6) 38%, #ececec);
}

.rt-range-projected,
.rt-range-threshold {
  position: absolute;
  top: -4px;
  bottom: -4px;
  width: 2px;
  border-radius: 999px;
}

.rt-range-projected {
  left: var(--rt-projected);
  background: var(--rt-course-color, #3b82f6);
}

.rt-range-threshold {
  left: var(--rt-threshold);
  background: #242424;
  opacity: 0.55;
}

.rt-range-numbers {
  display: grid;
  gap: 4px;
  color: #838383;
  font-size: 12px;
  text-align: right;
}

.rt-range-numbers strong {
  color: #242424;
}

.rt-deadline-table {
  overflow: hidden;
}

.rt-deadline-columns,
.rt-deadline-row {
  display: grid;
  grid-template-columns: minmax(300px, 1.4fr) 108px 96px 76px 98px 118px;
  gap: 12px;
  align-items: center;
}

.rt-deadline-columns {
  min-height: 38px;
  padding: 0 18px;
  background: #fafafa;
  color: #838383;
  border-bottom: 1px solid #eeeeee;
  font-size: 12px;
  font-weight: 600;
}

.rt-deadline-group-head {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 0 18px;
  color: #242424;
  border-bottom: 1px solid #eeeeee;
}

.rt-deadline-group-head span {
  color: #ec6d2d;
  font-size: 20px;
  line-height: 1;
}

.rt-deadline-group-head strong {
  font-size: 13px;
  font-weight: 600;
}

.rt-deadline-group-head em {
  height: 20px;
  padding: 3px 7px;
  border-radius: 6px;
  background: #f3f3f3;
  color: #737373;
  font-size: 12px;
  font-style: normal;
}

.rt-deadline-row {
  min-height: 48px;
  margin: 8px 18px;
  padding: 0 10px;
  border: 1px solid #eeeeee;
  border-radius: 999px;
  color: #535353;
  font-size: 13px;
  background: #fff;
}

.rt-deadline-name {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.rt-deadline-name > div {
  min-width: 0;
}

.rt-deadline-name strong,
.rt-deadline-name em {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rt-deadline-name strong {
  color: #242424;
  font-size: 13px;
  font-weight: 500;
}

.rt-deadline-name em {
  color: #838383;
  font-size: 12px;
  font-style: normal;
}

.rt-mini-flag {
  width: 13px;
  height: 15px;
  border-left: 2px solid #3b82f6;
  border-radius: 1px;
  background: linear-gradient(90deg, #3b82f6 0 78%, transparent 79%);
  clip-path: polygon(0 0, 100% 0, 88% 55%, 100% 100%, 0 100%);
  flex: 0 0 13px;
}

.rt-priority {
  display: inline-flex;
  justify-content: center;
  min-width: 70px;
  height: 22px;
  padding: 4px 8px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
}

.rt-priority.low { color: #2463bd; background: #edf4ff; }
.rt-priority.medium { color: #9c5b18; background: #fff6e7; }
.rt-priority.high { color: #b9342f; background: #fff0ed; }
.rt-priority.urgent { color: #b9342f; background: #fee6e0; }

.rt-calc-grid {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) minmax(300px, 0.85fr);
  gap: 14px;
  align-items: start;
}

.rt-calc-panel {
  min-width: 0;
}

.rt-calc-controls {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.rt-calc-controls label {
  min-width: 0;
  display: grid;
  gap: 6px;
  color: #838383;
  font-size: 12px;
}

.rt-calc-controls select,
.rt-calc-controls input {
  width: 100%;
  min-width: 0;
  height: 34px;
  border: 1px solid #e5e5e5;
  border-radius: 7px;
  background: #fff;
  color: #242424;
  font: inherit;
  font-size: 13px;
  padding: 0 10px;
  outline: none;
}

.rt-calc-controls select:focus,
.rt-calc-controls input:focus {
  border-color: #c7c7c7;
  box-shadow: 0 0 0 3px rgba(36, 36, 33, 0.06);
}

.rt-calc-output {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 14px 0 16px;
}

.rt-grade-key {
  min-width: 0;
}

.rt-grade-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  margin-top: 15px;
}

.rt-grade-grid div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  min-height: 30px;
  align-items: center;
  padding: 0 9px;
  border: 1px solid #eeeeee;
  border-radius: 7px;
  background: #fafafa;
  font-size: 12px;
}

.rt-grade-grid span {
  color: #737373;
}

.rt-grade-grid strong {
  color: #242424;
  font-weight: 600;
}

.rt-rules-panel {
  grid-column: 1 / -1;
}

.rt-rule-list {
  display: grid;
  gap: 12px;
  margin-top: 15px;
}

.rt-rule-list div {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #535353;
  font-size: 13px;
  line-height: 1.35;
}

@media (max-width: 1180px) {
  .rt-hero,
  .rt-grid-overview,
  .rt-detail-card,
  .rt-calc-grid {
    grid-template-columns: 1fr;
  }
  .rt-hero-metrics,
  .rt-course-strip,
  .rt-scenario-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .rt-assessment-header,
  .rt-assessment-row {
    grid-template-columns: 0.9fr minmax(180px, 1.5fr) 68px 96px 108px;
  }
}

@media (max-width: 860px) {
  .layout:has(.right-track-page) .tabs {
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
  }
  .layout:has(.right-track-page) .tabs::-webkit-scrollbar {
    display: none;
  }
  .layout:has(.right-track-page) .tabs-spacer {
    flex: 0 0 8px;
  }
  .layout:has(.right-track-page) .tabs-controls {
    flex: 0 0 auto;
  }
  .rt-shell {
    width: min(100% - 24px, 720px);
    padding-top: 16px;
  }
  .rt-hero-metrics,
  .rt-course-strip,
  .rt-scenario-grid,
  .rt-trackline,
  .rt-offer-rules,
  .rt-weight-row,
  .rt-calc-output,
  .rt-calc-controls,
  .rt-grade-grid {
    grid-template-columns: 1fr;
  }
  .rt-track-node + .rt-track-node {
    padding-left: 0;
    border-top: 1px solid #eeeeee;
  }
  .rt-track-node + .rt-track-node::before {
    display: none;
  }
  .rt-deadline-table {
    overflow-x: auto;
  }
  .rt-deadline-columns,
  .rt-deadline-row {
    grid-template-columns: 280px 100px 90px 70px 90px 116px;
    min-width: 770px;
  }
  .rt-range-row {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px 0;
  }
  .rt-range-numbers {
    text-align: left;
  }
}
