/* Shell and specialized page layouts. Shared primitives: components.css. */
body.explore-ui {color-scheme: dark;}
body.explore-ui .title {margin-bottom: 24px;}
body.explore-ui :is(.title h1, .hero h1) {color: var(--explore-text);
  margin-block: 10px 10px;
  font-size: clamp(28px, 2.5vw, 36px);
  font-weight: 650;
  letter-spacing: -.04em;
  line-height: 1.35;}
body.explore-ui .sectionline {margin-block: 20px 16px; gap: 16px;}
body.explore-ui .split {margin-top: 24px; gap: 24px; align-items: start;}
body.explore-ui .large-gap {margin-top: 24px;}
body.explore-ui .selftable {margin-top: 24px;}
body.explore-ui .article {color: #cbd9e8;}
body.explore-ui .article p {overflow-wrap: anywhere;}
body.explore-ui :is(.title .eyebrow, .hero .eyebrow, .kicker) {color: var(--explore-accent);
  font-size: 11px;
  letter-spacing: .15em;}
body.explore-ui :is(.title .eyebrow, .hero .eyebrow)::before {background: var(--explore-warm);}
body.explore-ui .hero {min-height: 168px;
  padding: 24px 28px;
  border: 1px solid var(--explore-line);
  border-radius: 8px;
  background: var(--explore-panel);
  color: var(--explore-text);}
body.explore-ui .hero .copy {max-width: 72%;}
body.explore-ui .hero p {max-width: 66ch; color: #c0d1e3;}
body.explore-ui .hero .blueprint {opacity: .5; color: var(--explore-accent);}
body.explore-ui .hero .hero-meta {margin-top: 20px;
  gap: 14px;
  opacity: 1;
  font-size: 12px;
  color: var(--explore-muted);}
body.explore-ui .hero-meta span:first-child {color: var(--explore-warm);}
body.explore-ui :is(.filters label, .selects label) {color: var(--explore-muted);
  font-size: 13px;
  line-height: 1.7;}
body.explore-ui .chipsline {margin-block: 20px 8px;}
body.explore-ui .backlink {margin-bottom: 8px; color: var(--explore-muted);}
body.explore-ui .namelink {min-height: 44px;}
body.explore-ui .namelink:hover {color: var(--explore-accent);}
body.explore-ui .pill i {background: var(--explore-accent);}
body.explore-ui :is(.score, .spacebar) {color: var(--explore-accent);}
body.explore-ui :is(.initial, .notice-icon, .iconbox) {border-radius: 6px;
  background: #19354a;
  color: var(--explore-accent);}
body.explore-ui .art label {top: 15px; left: 16px; font-size: 11px;}
body.explore-ui .notice-row {padding-block: 18px; border-color: var(--explore-line);}
body.explore-ui .notice-copy {gap: 7px;}
body.explore-ui .notice-copy b {font-size: 15px; color: var(--explore-text);}
body.explore-ui :is(.notice-row, .path-card):hover b {color: var(--explore-accent);}
body.explore-ui :is(.notice-meta, .notice-end, .notice-summary, .path-card p) {color: var(--explore-muted);}
body.explore-ui .notice-summary {display: block; font-size: 14px; line-height: 1.8; -webkit-line-clamp: unset;}
body.explore-ui .notice-icon {margin-top: 3px;}
body.explore-ui .unread {padding: 3px 7px; font-size: 11px; border-radius: 4px;}
body.explore-ui .path-card {padding-block: 18px; border-color: var(--explore-line);}
body.explore-ui .path-card b {color: var(--explore-text); font-size: 15px;}
body.explore-ui .path-card .kicker {font-size: 11px;}
body.explore-ui .path-card > .ico {color: var(--explore-accent);}
body.explore-ui .notice-article {padding: 32px;}
body.explore-ui .notice-article .notice-title {font-size: clamp(23px, 2.2vw, 30px);}
body.explore-ui .notice-article > p {color: #cbd9e8; font-size: 15px;}
body.explore-ui .chart {height: 160px;
  margin-top: 6px;
  background: repeating-linear-gradient(to top, transparent 0, transparent 33px, #294156 34px, transparent 35px);}
body.explore-ui .barcol i {border-radius: 2px 2px 0 0; background: #4b96cc;}
body.explore-ui .barcol:last-child i {background: var(--explore-accent);}
body.explore-ui .barcol b {color: var(--explore-muted); font-size: 12px; font-variant-numeric: tabular-nums;}
body.explore-ui .barcol small {color: var(--explore-muted); background: var(--explore-panel); font-size: 12px; padding-top: 4px;}
body.explore-ui .gauge {gap: 22px; margin-block: 20px;}
body.explore-ui .ring {background: conic-gradient(var(--explore-accent) var(--angle), #294156 0);}
body.explore-ui .ring > div {background: var(--explore-panel); color: var(--explore-text);}
body.explore-ui .ring small {font-size: 10px;}
body.explore-ui .gauge p {font-size: 14px;}
body.explore-ui .steps {gap: 23px;}
body.explore-ui .steps li {font-size: 14px; padding-left: 43px;}
body.explore-ui .steps li::before {width: 29px; height: 29px; background: #19354a; color: var(--explore-accent);}
body.explore-ui .steps span {font-size: 13px;}
body.explore-ui .ext-download {margin-bottom: 24px;}
body.explore-ui :is(.checkbox, .compose > label) {color: var(--explore-text); font-size: 14px;}
body.explore-ui .checkbox {gap: 9px;}
body.explore-ui .compose {margin-top: 26px; gap: 12px;}
body.explore-ui .ext-editor-aside > .large-gap {margin-top: 0;}
body.explore-ui .ext-admin-grid {gap: 0 24px;}
body.explore-ui .ext-admin-link {min-height: 84px;
  padding: 18px 0;
  border: 0;
  border-bottom: 1px solid var(--explore-line);
  border-radius: 0;
  color: var(--explore-text);
  font-size: 14px;}
body.explore-ui .ext-admin-link:hover {background: transparent; border-color: var(--explore-accent); color: var(--explore-accent);}
body.explore-ui .roleoption {min-height: 60px; color: var(--explore-text); background: transparent;}
body.explore-ui .roleoption:hover {background: var(--explore-raised);}
body.explore-ui .version-item {padding: 20px 0; border: 0; border-top: 1px solid var(--explore-line); border-radius: 0;}
body.explore-ui .version-notes {color: #cbd9e8;}
body.explore-ui .scene-sections {gap: 24px; margin-top: 24px;}
body.explore-ui .scene-map {border: 1px solid var(--explore-line); border-radius: 6px; background: #0c1a29;}
body.explore-ui .scene-map svg text {fill: #d9e7f5;}
body.explore-ui .scene-map svg .map-number {fill: #082033; font-weight: 700;}
body.explore-ui .scene-map svg [fill="#edf6fd"] {fill: #0c1a29;}
body.explore-ui .scene-map svg [stroke="#d7e8f4"] {stroke: #1c3042;}
body.explore-ui .scene-map svg :is([fill="#dce7ef"], [fill="#d7e4ed"], [fill="#d4e2ec"], [fill="#dce8f1"]) {fill: #20384c;}
body.explore-ui .scene-map svg [fill="#f7fbff"] {fill: #14283b;}
body.explore-ui .scene-map svg [fill="#e5f2ed"] {fill: #142f2a;}
body.explore-ui .scene-map svg :is([fill="#fff0d5"], [fill="#fff0dc"]) {fill: #3a2e1f;}
body.explore-ui .scene-map svg [fill="#0062b5"] {fill: var(--explore-accent);}
body.explore-ui .scene-map svg [fill="#00a5ef"] {fill: #2385b3;}
body.explore-ui .scene-map svg [fill="#ed7f25"] {fill: var(--explore-warm);}
body.explore-ui .scene-map svg [stroke="#0062b5"] {stroke: var(--explore-accent);}
body.explore-ui .scene-map svg [stroke="#ed7f25"] {stroke: var(--explore-warm);}
body.explore-ui .scene-map svg :is([stroke="#9bbbd3"], [stroke="#a9c5da"], [stroke="#9bb7cb"], [stroke="#aac4d8"]) {stroke: #52718a;}
body.explore-ui .scene-map svg [stroke="#a4c6b6"] {stroke: #50756a;}
body.explore-ui .scene-map svg [stroke="#fff"] {stroke: #91b5a9;}
body.explore-ui .map-road {stroke: #344c62;}
body.explore-ui .map-center {stroke: #c1d3e3;}
body.explore-ui .map-route {stroke: var(--explore-accent);}
body.explore-ui .scene-map figcaption {padding: 12px 14px; background: #0f2132; border-color: var(--explore-line); color: var(--explore-muted);}
body.explore-ui .scene-goals {border-color: var(--explore-line);}
body.explore-ui .scene-facts {gap: 12px;}
body.explore-ui .scene-facts .version-fact:hover {background: #1b354b; border-color: #4a91b1;}
body.explore-ui .scene-facts .version-fact b {color: var(--explore-accent);}
body.explore-ui .launch-grid {gap: 32px;}
body.explore-ui .launch-demo {border-color: var(--explore-line); padding-top: 16px;}
body.explore-ui .launch-demo summary {min-height: 44px; display: list-item; align-content: center; color: var(--explore-muted); font-size: 13px;}
body.explore-ui .launch-demo label {color: var(--explore-text); font-size: 14px;}
body.explore-ui .launch-demo p {color: var(--explore-muted);}
body.explore-ui .video-placeholder {min-height: 270px; border: 1px solid var(--explore-line); border-radius: 6px; background: #102b43;}
body.explore-ui .video-placeholder > .ico {color: var(--explore-warm);}
body.explore-ui .video-placeholder span {color: #b6cde0; font-size: 13px;}
body.explore-ui .search-popover {border-color: #43617c; border-radius: 8px; background: var(--explore-panel); box-shadow: 0 18px 50px #0008;}
body.explore-ui .search-result {border-radius: 4px; color: var(--explore-text);}
body.explore-ui :is(.search-result:hover, .search-result[aria-selected="true"]) {background: #1b354b;}
body.explore-ui .search-result-copy > span {color: var(--explore-muted); font-size: 13px; line-height: 1.8;}
body.explore-ui .search-result > .ico {color: var(--explore-accent);}
body.explore-ui .search-view-all {min-height: 48px; border-color: var(--explore-line); color: var(--explore-accent);}
body.explore-ui .search-empty {color: var(--explore-muted);}
body.explore-ui .search-page-list {gap: 0;}
body.explore-ui .search-page-list .search-result {padding: 22px 0; border: 0; border-bottom: 1px solid var(--explore-line); border-radius: 0;}
body.explore-ui .search-page-list .search-result:last-child {border-bottom: 0;}
body.explore-ui .message-thread p {display: block; -webkit-line-clamp: unset;}
body.explore-ui .conversation {gap: 22px; padding-block: 8px 24px;}
body.explore-ui :is(.bubble, .ai-message) {padding: 17px 19px;
  border: 1px solid #294156;
  border-radius: 3px 9px 9px;
  background: #14273a;
  color: var(--explore-text);}
body.explore-ui :is(.bubble.self, .ai-message.user) {border-color: #315570;
  border-radius: 9px 3px 9px 9px;
  background: #193a50;}
body.explore-ui :is(.bubble small, .ai-message small) {color: var(--explore-muted); font-size: 12px;}
body.explore-ui :is(.bubble p, .ai-message p) {color: var(--explore-text); font-size: 14px; line-height: 1.85;}
body.explore-ui .ai-head {padding: 25px 24px 20px;}
body.explore-ui .ai-identity h2 {color: var(--explore-text); font-size: 18px;}
body.explore-ui .ai-identity > .iconbox {border-radius: 8px; background: #19354a; color: var(--explore-accent);}
body.explore-ui :is(.ai-identity small, .ai-context, .ai-disclaimer, .ai-compose-actions small, .ai-welcome > p) {color: var(--explore-muted);}
body.explore-ui .ai-icon {color: var(--explore-muted); border-radius: 6px;}
body.explore-ui .ai-icon:hover {color: var(--explore-text); background: var(--explore-raised);}
body.explore-ui .ai-tools {padding-inline: 24px; gap: 10px;}
body.explore-ui .ai-context {padding: 12px 24px; border-color: var(--explore-line); background: #0d1928; font-size: 12px;}
body.explore-ui .ai-messages {padding: 24px; gap: 22px; scrollbar-color: #43617c var(--explore-panel);}
body.explore-ui .ai-welcome-mark {border-radius: 8px; background: #19354a; color: var(--explore-accent);}
body.explore-ui .ai-welcome h3 {color: var(--explore-text); font-size: 23px;}
body.explore-ui .ai-welcome > p {font-size: 14px;}
body.explore-ui .ai-suggestions {gap: 12px;}
body.explore-ui .ai-suggestions button {min-height: 48px;
  padding: 14px;
  border: 1px solid #3c5870;
  border-radius: 6px;
  background: var(--explore-raised);
  color: var(--explore-text);
  font-size: 14px;
  line-height: 1.6;}
body.explore-ui .ai-suggestions button:hover {background: #1c354b; border-color: var(--explore-accent);}
body.explore-ui .ai-suggestions .ico {color: var(--explore-accent);}
body.explore-ui .ai-compose {padding: 19px 24px 16px; border-color: var(--explore-line); background: var(--explore-panel);}
body.explore-ui .ai-compose-actions small {font-size: 11px;}
body.explore-ui .ai-disclaimer {font-size: 12px; line-height: 1.7;}
@media (max-width: 1100px) {
body.explore-ui .split {gap: 20px;}
}
@media (max-width: 960px) {
body.explore-ui .launch-grid {grid-template-columns: minmax(0, 1fr) minmax(260px, 1fr); gap: 24px;}
body.explore-ui .ext-editor-aside > .large-gap {margin-top: 0;}
}
@media (max-width: 760px) {
body.explore-ui .hero {min-height: 0; padding: 24px;}
body.explore-ui .hero .copy {max-width: 92%;}
body.explore-ui .hero .blueprint {opacity: .24;}
body.explore-ui :is(.title h1, .hero h1) {font-size: 28px;}
body.explore-ui .sectionline {margin-top: 20px;}
body.explore-ui .split {gap: 20px;}
body.explore-ui .launch-grid {grid-template-columns: 1fr; gap: 24px;}
body.explore-ui .ext-editor-aside > .large-gap {margin-top: 0;}
body.explore-ui .notice-article {padding: 24px;}
body.explore-ui .bubble {max-width: 90%;}
}
@media (max-width: 520px) {
body.explore-ui .hero {padding: 24px 20px;}
body.explore-ui .hero .copy {max-width: 100%;}
body.explore-ui .hero .hero-meta {flex-wrap: wrap; gap: 8px;}
body.explore-ui .notice-row {gap: 12px;}
body.explore-ui .notice-meta {font-size: 12px;}
body.explore-ui .notice-end {font-size: 12px;}
body.explore-ui .notice-summary {font-size: 14px;}
body.explore-ui .ai-head {padding: 20px 18px 16px;}
body.explore-ui :is(.ai-tools, .ai-context, .ai-messages, .ai-compose) {padding-inline: 18px;}
body.explore-ui .ai-compose-actions {flex-wrap: wrap;}
body.explore-ui .ai-compose-actions small {font-size: 11px;}
}
body.explore-ui .filters label, body.explore-ui .selects label {display: inline-flex; align-items: center; gap: 8px;}
body.explore-ui .catalog-controls {align-items: center;}
body.explore-ui .personal-identity, body.explore-ui .personal-progress, body.explore-ui .team-invite {border-radius: 8px;}
body.explore-ui .personal-form {max-width: none;}
body.explore-ui .team-entry-grid {gap: 24px;}
body.explore-ui .team-entry-grid > :is(div, form) {display: flex; flex-direction: column; align-items: stretch; border-radius: 6px; background: #0d1928;}
body.explore-ui .team-entry-grid .iconbox {margin-bottom: 8px;}
body.explore-ui .team-entry-grid p {margin: 12px 0 16px;}
body.explore-ui .launch-actions .ext-caption {margin-bottom: 0;}
body.explore-ui[data-explore-area="dashboard"] .split {align-items: stretch;}
body.explore-ui[data-explore-area="dashboard"] .split .gauge {flex: 1; margin-block: 0;}
body.explore-ui .nova-task-actions {display: flex; gap: var(--space-control); flex-wrap: wrap; padding-top: 16px; border-top: 1px solid var(--explore-line);}
body.explore-ui .nova-download-panel {display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px 28px; align-items: center;}
body.explore-ui .nova-download-panel .article {margin: 12px 0 0; max-width: none; text-wrap: pretty;}
@media (max-width: 760px) {
body.explore-ui .nova-download-panel {display: block;}
body.explore-ui .nova-download-panel .article {margin: 12px 0 18px;}
body.explore-ui .team-entry-grid {gap: 16px;}
}
body.explore-ui #team-join-feedback:empty {display: none;}
body.explore-ui .launch-actions .ext-caption {text-wrap: pretty;}
