/* Geo Console — charcoal + mint one-surface egress panel */
.geo-console-page {
  --gc-bg: #030706;
  --gc-panel: #08110e;
  --gc-panel-2: #0c1a15;
  --gc-line: rgba(110, 255, 177, 0.16);
  --gc-line-strong: rgba(110, 255, 177, 0.4);
  --gc-mint: #6effb1;
  --gc-mint-hot: #18ff83;
  --gc-text: #effff6;
  --gc-muted: #8ca79a;
  --gc-warn: #e8c56a;
  --gc-danger: #ff8f8f;
}
.geo-console-page .gc-main {
  width: min(1440px, 96vw);
  margin: 0 auto;
  padding: 28px 0 72px;
  position: relative;
  z-index: 1;
}
.gc-hero {
  padding: 18px 0 28px;
  border-bottom: 1px solid var(--gc-line);
  margin-bottom: 22px;
}
.gc-kicker {
  font-size: 11px;
  letter-spacing: 0.18em;
  color: var(--gc-mint);
}
.gc-hero h1 {
  font-size: clamp(36px, 5.5vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.04em;
  margin: 10px 0 14px;
  color: var(--gc-text);
}
.gc-hero h1 em { color: var(--gc-mint); font-style: normal; }
.gc-hero p {
  max-width: 720px;
  color: var(--gc-muted);
  margin: 0 0 16px;
  font-size: 16px;
}
.gc-badge-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gc-badge {
  display: inline-block;
  border: 1px solid var(--gc-line-strong);
  padding: 6px 12px;
  font-size: 11px;
  letter-spacing: 0.14em;
  font-weight: 800;
}
.gc-badge.selective {
  color: #032116;
  background: var(--gc-mint);
  border-color: var(--gc-mint);
}
.gc-badge.full {
  color: var(--gc-warn);
  background: rgba(232, 197, 106, 0.08);
  border-color: rgba(232, 197, 106, 0.55);
}
.gc-pill {
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--gc-muted);
  border: 1px solid var(--gc-line);
  padding: 5px 10px;
}
.gc-pill.pending { color: var(--gc-warn); border-color: rgba(232, 197, 106, 0.45); }
.gc-pill.live { color: var(--gc-mint); border-color: var(--gc-line-strong); }

.gc-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr) 300px;
  gap: 16px;
  align-items: start;
}
.gc-rail, .gc-center, .gc-inspector {
  border: 1px solid var(--gc-line);
  background: linear-gradient(160deg, rgba(110, 255, 177, 0.05), rgba(8, 17, 14, 0.92));
  padding: 16px;
  min-height: 420px;
}
.gc-panel-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 14px;
}
.gc-panel-head > span {
  color: var(--gc-mint);
  font: 700 11px ui-monospace, monospace;
  border: 1px solid var(--gc-line);
  padding: 5px 7px;
}
.gc-panel-head h2 {
  margin: 0 0 4px;
  font-size: 18px;
  color: var(--gc-text);
}
.gc-panel-head p {
  margin: 0;
  color: var(--gc-muted);
  font-size: 12px;
}
.gc-caption {
  color: var(--gc-muted);
  font-size: 12px;
  margin: 10px 0 0;
  line-height: 1.45;
}
.gc-caption code { color: var(--gc-mint); font-size: 11px; }

.gc-sku {
  display: flex;
  gap: 6px;
  margin-bottom: 12px;
}
.gc-sku button {
  flex: 1;
  background: transparent;
  border: 1px solid var(--gc-line);
  color: var(--gc-muted);
  padding: 8px 6px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
}
.gc-sku button[aria-pressed="true"],
.gc-sku button:hover {
  color: #032116;
  background: var(--gc-mint);
  border-color: var(--gc-mint);
}

.gc-object-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  max-height: 520px;
  overflow: auto;
}
.gc-object {
  text-align: left;
  width: 100%;
  border: 1px solid var(--gc-line);
  background: var(--gc-panel);
  color: var(--gc-text);
  padding: 10px 12px;
  cursor: pointer;
  display: grid;
  gap: 4px;
}
.gc-object:hover,
.gc-object[aria-selected="true"] {
  border-color: var(--gc-mint);
  background: rgba(110, 255, 177, 0.08);
}
.gc-object strong { font-size: 13px; }
.gc-object .meta {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: var(--gc-muted);
  font-size: 11px;
  letter-spacing: 0.04em;
}
.gc-object .demo-tag {
  color: var(--gc-warn);
  font-size: 10px;
  letter-spacing: 0.12em;
}

.gc-deck {
  border: 1px dashed rgba(110, 255, 177, 0.28);
  background: rgba(3, 7, 6, 0.55);
  padding: 16px;
  min-height: 260px;
  display: grid;
  gap: 14px;
}
.gc-deck-stack {
  position: relative;
  height: 160px;
  perspective: 800px;
}
.gc-deck-face {
  position: absolute;
  left: 12%;
  right: 12%;
  height: 96px;
  border: 1px solid var(--gc-line-strong);
  background: linear-gradient(135deg, rgba(110, 255, 177, 0.18), rgba(8, 17, 14, 0.9));
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gc-mint);
  font: 700 12px ui-monospace, monospace;
  letter-spacing: 0.16em;
  transform-origin: center bottom;
  transition: transform 0.25s ease, opacity 0.25s ease;
}
.gc-deck-face[data-lod="0"] { transform: translateY(0) scale(1); z-index: 3; }
.gc-deck-face[data-lod="1"] { transform: translateY(18px) scale(0.96); z-index: 2; opacity: 0.85; }
.gc-deck-face[data-lod="2"] { transform: translateY(36px) scale(0.92); z-index: 1; opacity: 0.65; }
.gc-deck-face.active {
  border-color: var(--gc-mint-hot);
  box-shadow: 0 0 24px rgba(24, 255, 131, 0.2);
}
.gc-deck-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: end;
}
.gc-deck-meta label {
  display: grid;
  gap: 4px;
  color: var(--gc-muted);
  font-size: 11px;
  letter-spacing: 0.08em;
  min-width: 140px;
}
.gc-deck-meta input[type="range"] { width: 100%; accent-color: var(--gc-mint); }

.gc-askbar {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--gc-line);
  background: var(--gc-panel);
  padding: 10px;
}
.gc-ask-label {
  color: var(--gc-mint);
  font-size: 11px;
  letter-spacing: 0.16em;
  font-weight: 800;
}
.gc-askbar button {
  background: transparent;
  border: 1px solid var(--gc-line);
  color: var(--gc-muted);
  padding: 8px 12px;
  cursor: pointer;
  font-weight: 700;
  font-size: 12px;
}
.gc-askbar button.active,
.gc-askbar button:hover {
  color: #032116;
  background: var(--gc-mint);
  border-color: var(--gc-mint);
}
.gc-askbar input {
  flex: 1 1 180px;
  min-width: 160px;
  border: 1px solid var(--gc-line);
  background: #050a09;
  color: var(--gc-text);
  padding: 10px 12px;
}
.gc-primary {
  border: 0 !important;
  background: var(--gc-mint) !important;
  color: #032116 !important;
  font-weight: 800 !important;
  padding: 10px 16px !important;
  cursor: pointer;
}
.gc-ghost {
  background: transparent;
  border: 1px solid var(--gc-line-strong);
  color: var(--gc-mint);
  padding: 8px 12px;
  cursor: pointer;
  font-weight: 700;
  font-size: 12px;
}
.gc-ghost:hover { border-color: var(--gc-mint-hot); color: var(--gc-mint-hot); }

.gc-metrics {
  display: grid;
  gap: 8px;
  margin: 0;
}
.gc-metrics > div {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 8px;
  border: 1px solid var(--gc-line);
  padding: 8px 10px;
  background: rgba(3, 7, 6, 0.55);
}
.gc-metrics dt {
  margin: 0;
  color: var(--gc-muted);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: none;
}
.gc-metrics dd {
  margin: 0;
  text-align: right;
  color: var(--gc-text);
  font: 700 12px ui-monospace, monospace;
  word-break: break-all;
}
.gc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 12px;
  min-height: 28px;
}
.gc-chip {
  border: 1px solid var(--gc-line-strong);
  color: var(--gc-mint);
  padding: 4px 8px;
  font-size: 11px;
  letter-spacing: 0.06em;
  background: rgba(110, 255, 177, 0.06);
}

.gc-drawer {
  position: fixed;
  inset: 0;
  z-index: 40;
  background: rgba(2, 5, 4, 0.72);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 24px;
}
.gc-drawer[hidden] { display: none !important; }
.gc-drawer-panel {
  width: min(920px, 100%);
  max-height: 85vh;
  overflow: auto;
  border: 1px solid var(--gc-line-strong);
  background: var(--gc-panel-2);
  padding: 18px;
}
.gc-drawer-panel .gc-panel-head { justify-content: space-between; }
.gc-compare-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.gc-compare-grid article {
  border: 1px solid var(--gc-line);
  padding: 14px;
  background: rgba(3, 7, 6, 0.5);
}
.gc-compare-grid article.geo { border-color: var(--gc-line-strong); }
.gc-compare-grid h3 { margin: 0 0 10px; color: var(--gc-text); }
.gc-compare-grid ul { margin: 0; padding-left: 18px; color: var(--gc-muted); }
.gc-compare-grid li { margin: 6px 0; }
.gc-compare-grid .warn { color: var(--gc-warn); }
.gc-compare-grid .ok { color: var(--gc-mint); }

@media (max-width: 1100px) {
  .gc-layout { grid-template-columns: 1fr; }
  .gc-rail, .gc-center, .gc-inspector { min-height: 0; }
}
@media (max-width: 700px) {
  .gc-compare-grid { grid-template-columns: 1fr; }
}

.gc-success-bar{
  display:grid;gap:4px;margin:0 0 12px;padding:10px 12px;
  border:1px solid var(--gc-line-strong);background:rgba(110,255,177,.06);
}
.gc-success-bar.fail{border-color:rgba(232,197,106,.55);background:rgba(232,197,106,.08)}
.gc-success-bar .gc-success-label{font-size:10px;letter-spacing:.14em;color:var(--gc-mint);font-weight:800}
.gc-success-bar.fail .gc-success-label{color:var(--gc-warn)}
.gc-success-bar strong{font-size:16px;color:var(--gc-text)}


/* === Tip8 SKU button kit 2.9.71 (Christopher DESIGN GO) === */
.sku-kit,
.sku-switch.sku-kit,
.gc-sku.sku-kit {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  border: 0;
  background: transparent;
  margin: 0.35rem 0 0.75rem;
  padding: 0;
}
.sku-kit .sku-btn,
.sku-switch.sku-kit button,
.gc-sku.sku-kit button {
  box-sizing: border-box;
  min-height: 3.25rem;
  min-width: 9rem;
  padding: 0.9rem 1.4rem;
  margin: 0;
  border-radius: 14px;
  border: 2px solid;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.2rem;
  cursor: pointer;
  font-family: Inter, "Segoe UI", system-ui, sans-serif;
  letter-spacing: 0.02em;
  text-transform: none;
  box-shadow: 0 6px 18px rgba(0,0,0,.28);
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
  background: #0f3d2e;
  color: #3dd68c;
  border-color: #3dd68c;
}
.sku-kit .sku-btn-label {
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.1;
}
.sku-kit .sku-btn-sub {
  font-size: 0.8rem;
  font-weight: 600;
  opacity: 0.9;
  letter-spacing: 0.04em;
}
.sku-kit .sku-btn:hover,
.sku-switch.sku-kit button:hover,
.gc-sku.sku-kit button:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(0,0,0,.35);
  filter: brightness(1.08);
}
.sku-kit .sku-btn:focus-visible,
.sku-switch.sku-kit button:focus-visible,
.gc-sku.sku-kit button:focus-visible {
  outline: 3px solid #4ade80;
  outline-offset: 2px;
}
.sku-kit .sku-geo { background:#0f3d2e; border-color:#3dd68c; color:#3dd68c; }
.sku-kit .sku-pro { background:#134e3a; border-color:#5eead4; color:#5eead4; }
.sku-kit .sku-ultra { background:#14532d; border-color:#a3e635; color:#a3e635; }
.sku-kit .sku-dunamis {
  background: linear-gradient(145deg, #052e16, #166534);
  border-color: #fbbf24;
  border-width: 3px;
  color: #fde68a;
}
.sku-kit .sku-custom {
  background: #1c1917;
  border-color: #86efac;
  border-style: dashed;
  color: #86efac;
}
.sku-kit .sku-btn[aria-pressed="true"],
.sku-kit .sku-btn[aria-checked="true"],
.sku-switch.sku-kit button[aria-pressed="true"],
.gc-sku.sku-kit button[aria-pressed="true"] {
  color: #fff !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.12), 0 10px 24px rgba(0,0,0,.4);
}
.sku-kit .sku-geo[aria-pressed="true"], .sku-kit .sku-geo[aria-checked="true"] { background:#1a7f4f; border-color:#1a7f4f; }
.sku-kit .sku-pro[aria-pressed="true"], .sku-kit .sku-pro[aria-checked="true"] { background:#0d9488; border-color:#0d9488; }
.sku-kit .sku-ultra[aria-pressed="true"], .sku-kit .sku-ultra[aria-checked="true"] { background:#65a30d; border-color:#65a30d; }
.sku-kit .sku-dunamis[aria-pressed="true"], .sku-kit .sku-dunamis[aria-checked="true"] {
  background:#22c55e; border-color:#fbbf24; border-width:3px; color:#052e16 !important;
}
.sku-kit .sku-custom[aria-pressed="true"], .sku-kit .sku-custom[aria-checked="true"] {
  background:#4ade80; border-style: solid; border-color:#4ade80; color:#052e16 !important;
}
.sku-kit .sku-btn[aria-pressed="true"] .sku-btn-sub,
.sku-kit .sku-btn[aria-checked="true"] .sku-btn-sub { color: inherit; opacity: 0.95; }
@media (max-width: 720px) {
  .sku-kit, .sku-switch.sku-kit, .gc-sku.sku-kit { gap: 1rem; }
  .sku-kit .sku-btn, .sku-switch.sku-kit button, .gc-sku.sku-kit button {
    flex: 1 1 calc(50% - 1rem);
    min-width: calc(50% - 1rem);
  }
}
@media (max-width: 420px) {
  .sku-kit .sku-btn, .sku-switch.sku-kit button, .gc-sku.sku-kit button {
    flex: 1 1 100%;
    min-width: 100%;
  }
}
.pricing-grid.pricing-tiers {
  grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr));
  gap: 1.25rem;
}
.price-card[data-tier="custom"] {
  border-style: dashed;
  border-color: #86efac;
  background: #141210;
}
.price-card[data-tier="custom"] small { color: #86efac; }
.price-card[data-tier="dunamis"] {
  border-color: #fbbf24;
  box-shadow: inset 0 0 0 1px rgba(251,191,36,.28), 0 8px 24px rgba(0,0,0,.25);
}
