:root {
  color-scheme: light;
  --ink: #071b2a;
  --muted: #607482;
  --line: #d9e2e7;
  --paper: #f7fafb;
  --white: #fff;
  --teal: #08a69b;
  --cyan: #18bee4;
  --lime: #6edb72;
  --danger: #c53b31;
}

* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: Inter, "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  letter-spacing: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input {
  font: inherit;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}

.site-header {
  height: 76px;
  padding: 0 clamp(24px, 4vw, 72px);
  display: grid;
  grid-template-columns: minmax(250px, 1fr) auto minmax(250px, 1fr);
  align-items: center;
  gap: 34px;
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(247, 250, 251, 0.96);
  border-bottom: 1px solid rgba(7, 27, 42, 0.08);
  backdrop-filter: blur(14px);
}
.brand {
  display: inline-flex;
  width: 292px;
}
.brand img {
  width: 100%;
  height: 54px;
  object-fit: contain;
  object-position: left center;
}
.site-header nav {
  display: flex;
  align-items: center;
  gap: 28px;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
}
.site-header nav a:hover {
  color: var(--teal);
}
.site-header > .button {
  justify-self: end;
}

.button {
  display: inline-flex;
  min-height: 46px;
  padding: 0 20px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid var(--ink);
  border-radius: 4px;
  background: var(--ink);
  color: var(--white);
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  transition:
    transform 0.18s,
    background 0.18s;
}
.button:hover {
  transform: translateY(-2px);
  background: #0c3347;
}
.button-small {
  min-height: 38px;
  padding: 0 15px;
}
.button-outline {
  color: var(--ink);
  background: transparent;
}
.button-outline:hover {
  color: #fff;
  background: var(--ink);
}
.button-light {
  color: var(--ink);
  background: #fff;
  border-color: #fff;
}
.button-light:hover {
  color: #fff;
}

.hero {
  min-height: calc(100vh - 76px);
  padding: clamp(56px, 7vw, 112px) clamp(24px, 5vw, 88px) 72px;
  display: grid;
  grid-template-columns: minmax(360px, 0.78fr) minmax(600px, 1.22fr);
  gap: clamp(46px, 6vw, 104px);
  align-items: center;
  overflow: hidden;
}
.eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 22px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.8px;
}
.eyebrow span {
  width: 30px;
  height: 2px;
  background: var(--teal);
}
.eyebrow.light {
  color: rgba(255, 255, 255, 0.65);
}
.eyebrow.light span {
  background: var(--cyan);
}
.hero h1 {
  margin: 0;
  font-size: clamp(58px, 6.3vw, 104px);
  line-height: 0.92;
  font-weight: 900;
}
.hero h1 em {
  color: var(--teal);
  font-style: normal;
}
.hero-lead {
  max-width: 620px;
  margin: 34px 0 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.9;
  white-space: pre-line;
}
.hero-actions {
  display: flex;
  align-items: center;
  gap: 28px;
  margin-top: 38px;
}
.text-link {
  font-size: 14px;
  font-weight: 800;
}
.text-link span {
  margin-left: 8px;
  color: var(--teal);
}
.hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  max-width: 520px;
  margin: 58px 0 0;
  padding: 24px 0 0;
  border-top: 1px solid var(--line);
}
.hero-metrics div {
  padding-right: 20px;
  border-right: 1px solid var(--line);
}
.hero-metrics div + div {
  padding-left: 24px;
}
.hero-metrics div:last-child {
  border: 0;
}
.hero-metrics dt {
  font-size: 24px;
  font-weight: 900;
}
.hero-metrics dd {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.product-stage {
  position: relative;
  min-width: 0;
}
.app-shell {
  border: 1px solid #cbd8df;
  border-radius: 8px;
  overflow: hidden;
  background: #eef3f5;
  box-shadow: 0 28px 70px rgba(7, 27, 42, 0.18);
  transform: perspective(1400px) rotateY(-3deg) rotateX(1deg);
  transform-origin: center;
}
.window-bar {
  height: 50px;
  padding: 0 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.window-brand,
.window-tools {
  display: flex;
  align-items: center;
  gap: 8px;
}
.window-brand img {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  object-fit: cover;
  box-shadow: 0 0 0 1px rgba(8, 166, 155, 0.18);
}
.window-brand strong {
  font-size: 13px;
}
.window-brand span,
.window-tools span {
  color: var(--muted);
  font-size: 10px;
}
.window-tools {
  gap: 13px;
}
.window-tools span {
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 4px;
}
.window-tools b {
  font-size: 13px;
}
.app-body {
  min-height: 514px;
  display: grid;
  grid-template-columns: 58px 1fr;
}
.app-rail {
  padding: 16px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 13px;
  background: #fff;
  border-right: 1px solid var(--line);
}
.app-rail span {
  flex: 1;
}
.app-rail button {
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 4px;
  color: var(--muted);
  background: transparent;
  font-size: 16px;
}
.app-rail button.active {
  color: var(--teal);
  background: #e7f6f4;
}
.app-main {
  padding: 28px;
  min-width: 0;
}
.app-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.app-heading p {
  margin: 0 0 5px;
  color: var(--muted);
  font-size: 10px;
}
.app-heading h2 {
  margin: 0;
  font-size: 20px;
}
.online {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  color: #28723e;
  background: #e8f7e9;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 800;
}
.online i {
  width: 7px;
  height: 7px;
  background: #43b85f;
  border-radius: 50%;
}
.metric-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin: 24px 0 14px;
}
.metric-grid article {
  padding: 15px;
  background: #fff;
  border: 1px solid #dbe4e9;
  border-radius: 5px;
}
.metric-grid span,
.metric-grid small {
  color: var(--muted);
  font-size: 9px;
}
.metric-grid strong {
  display: block;
  margin: 10px 0 2px;
  font-size: 22px;
}
.workspace-row {
  display: grid;
  grid-template-columns: 0.76fr 1.24fr;
  gap: 12px;
}
.channel-panel,
.conversation-panel {
  background: #fff;
  border: 1px solid #dbe4e9;
  border-radius: 5px;
  overflow: hidden;
}
.panel-title {
  height: 44px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #e7edef;
  font-size: 10px;
}
.panel-title span {
  color: #298a65;
}
.channels > div {
  padding: 10px 13px;
  display: grid;
  grid-template-columns: 26px 1fr 7px;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid #edf1f3;
}
.channels img {
  width: 26px;
  height: 26px;
  border-radius: 6px;
}
.channels span {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.channels b {
  font-size: 9px;
}
.channels small {
  color: var(--muted);
  font-size: 8px;
}
.channels i,
.contact i {
  width: 6px;
  height: 6px;
  background: var(--lime);
  border-radius: 50%;
}
.contact {
  height: 55px;
  padding: 0 13px;
  display: grid;
  grid-template-columns: 31px 1fr 7px;
  gap: 9px;
  align-items: center;
  border-bottom: 1px solid #e7edef;
}
.avatar {
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #426c75;
  border-radius: 50%;
  font-size: 9px;
  font-weight: 800;
}
.contact span {
  display: flex;
  flex-direction: column;
}
.contact b {
  font-size: 10px;
}
.contact small {
  color: var(--muted);
  font-size: 8px;
}
.messages {
  min-height: 187px;
  padding: 17px 14px;
  display: flex;
  flex-direction: column;
  gap: 7px;
  background: #fafcfc;
}
.messages p {
  max-width: 78%;
  margin: 0;
  padding: 8px 10px;
  border-radius: 4px;
  font-size: 8px;
  line-height: 1.5;
}
.incoming {
  background: #fff;
  border: 1px solid #e3eaed;
}
.messages .translated {
  padding: 1px 10px;
  color: var(--teal);
  font-size: 7px;
}
.outgoing {
  align-self: flex-end;
  color: #fff;
  background: var(--teal);
}
.composer {
  margin: 0 10px 10px;
  padding: 9px 8px 9px 11px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #dce5e8;
  border-radius: 4px;
}
.composer span {
  color: #8b9aa3;
  font-size: 7px;
}
.composer button {
  padding: 5px 7px;
  border: 0;
  border-radius: 3px;
  color: #fff;
  background: var(--ink);
  font-size: 7px;
}
.stage-note {
  position: absolute;
  right: -18px;
  bottom: -38px;
  width: 278px;
  padding: 15px 18px;
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 12px;
  align-items: center;
  color: #fff;
  background: var(--ink);
  box-shadow: 0 16px 36px rgba(7, 27, 42, 0.22);
}
.stage-note span {
  color: var(--cyan);
  font-size: 22px;
  font-weight: 900;
}
.stage-note p {
  margin: 0;
  font-size: 10px;
  line-height: 1.5;
}
.stage-note strong {
  display: block;
  font-size: 12px;
}

.platform-strip {
  padding: 30px clamp(24px, 5vw, 88px);
  display: grid;
  grid-template-columns: 300px 1fr;
  align-items: center;
  gap: 32px;
  background: #fff;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.platform-strip p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.platform-strip > div {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  overflow: hidden;
}
.platform-strip span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
.platform-strip img {
  width: 25px;
  height: 25px;
  object-fit: contain;
}

.section {
  padding: 112px clamp(24px, 7vw, 120px);
}
.section-heading {
  display: grid;
  grid-template-columns: 1fr 1.1fr 0.9fr;
  gap: 42px;
  align-items: end;
  margin-bottom: 64px;
}
.section-heading .eyebrow {
  align-self: start;
}
.section-heading h2 {
  margin: 0;
  font-size: clamp(38px, 4vw, 64px);
  line-height: 1.12;
}
.section-heading > p:last-child {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.85;
}
.feature-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr;
  grid-template-rows: repeat(2, minmax(250px, auto));
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.feature-grid article {
  position: relative;
  padding: 34px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.feature-grid .feature-primary {
  grid-row: 1 / 3;
  padding: 44px;
  color: #fff;
  background: var(--ink);
}
.feature-index {
  position: absolute;
  right: 24px;
  top: 22px;
  color: #91a1aa;
  font-size: 10px;
  font-weight: 900;
}
.feature-icon {
  width: 48px;
  height: 48px;
  margin-bottom: 50px;
  display: grid;
  place-items: center;
  border: 1px solid #b8c9cf;
  color: var(--teal);
  font-size: 24px;
}
.feature-grid h3 {
  margin: 0 0 18px;
  font-size: 23px;
}
.feature-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.85;
}
.feature-primary p {
  color: rgba(255, 255, 255, 0.62);
}
.feature-primary ul {
  margin: 34px 0 0;
  padding: 22px 0 0;
  display: grid;
  gap: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  list-style: none;
  font-size: 12px;
}
.feature-primary li::before {
  content: "✓";
  margin-right: 9px;
  color: var(--lime);
}

.workflow-section {
  min-height: 760px;
  padding: 108px clamp(24px, 7vw, 120px);
  display: grid;
  grid-template-columns: 0.84fr 1.16fr;
  gap: clamp(55px, 9vw, 150px);
  color: #fff;
  background: var(--ink);
}
.workflow-copy h2,
.security-title h2,
.download-section h2 {
  margin: 0;
  font-size: clamp(42px, 4vw, 66px);
  line-height: 1.08;
}
.workflow-list {
  margin-top: 70px;
}
.workflow-list article {
  padding: 24px 0;
  display: grid;
  grid-template-columns: 45px 1fr;
  gap: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
}
.workflow-list article > span {
  color: var(--cyan);
  font-size: 12px;
  font-weight: 900;
}
.workflow-list h3 {
  margin: 0 0 8px;
  font-size: 17px;
}
.workflow-list p {
  margin: 0;
  color: rgba(255, 255, 255, 0.55);
  font-size: 12px;
  line-height: 1.75;
}
.workflow-visual {
  padding: 70px 0 0;
  position: relative;
}
.flow-card {
  width: min(480px, 88%);
  padding: 26px;
  background: #fff;
  color: var(--ink);
  border-left: 4px solid var(--cyan);
}
.flow-card small {
  color: var(--muted);
  font-size: 9px;
  font-weight: 800;
}
.flow-card p {
  margin: 15px 0 0;
  font-size: 17px;
  line-height: 1.5;
}
.flow-source {
  margin-left: 0;
}
.flow-result {
  margin-left: 12%;
  border-left-color: var(--teal);
}
.flow-line {
  width: 60%;
  height: 64px;
  margin-left: 10%;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255, 255, 255, 0.55);
  font-size: 9px;
}
.flow-line i {
  flex: 1;
  height: 1px;
  background: rgba(255, 255, 255, 0.18);
}
.ai-suggestion {
  width: min(420px, 78%);
  margin: 34px 0 0 22%;
  padding: 24px;
  color: var(--ink);
  background: #e9f8f5;
  border: 1px solid #58c7b9;
}
.ai-suggestion b {
  color: var(--teal);
  font-size: 11px;
}
.ai-suggestion p {
  margin: 14px 0;
  font-size: 13px;
  line-height: 1.6;
}
.ai-suggestion button {
  min-height: 32px;
  padding: 0 12px;
  border: 0;
  border-radius: 3px;
  color: #fff;
  background: var(--ink);
  font-size: 10px;
  font-weight: 800;
}

.pricing-section {
  background: #fff;
}

.billing-rules {
  max-width: 920px;
  margin: 28px auto 0;
  padding: 22px 24px;
  border: 1px solid var(--line, #dce4ec);
  background: #fff;
}

.billing-rules h3 {
  margin: 0 0 8px;
  font-size: 18px;
}

.billing-rules p {
  margin: 0;
  color: #526174;
  line-height: 1.8;
  white-space: pre-line;
}

.section-description {
  max-width: 640px;
  color: var(--muted);
  line-height: 1.8;
}
.section-heading.narrow {
  grid-template-columns: 0.65fr 1.2fr 1fr;
}
.plans {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  min-height: 320px;
}
.billing-console-bar {
  max-width: 1180px;
  margin: 0 auto 34px;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  color: #f5fbff;
  background: #102d40;
  border: 1px solid #244b61;
  border-radius: 8px;
  box-shadow: 0 14px 30px rgba(7, 27, 42, 0.12);
}
.billing-console-bar > div:first-child { display: grid; gap: 5px; }
.billing-console-kicker { color: #68d6c4; font-size: 10px; font-weight: 800; letter-spacing: 0.12em; }
.billing-console-bar strong { font-size: 18px; letter-spacing: 0; }
.billing-console-stats { display: flex; gap: 26px; }
.billing-console-stats span { display: grid; gap: 3px; min-width: 88px; }
.billing-console-stats b { color: #fff; font-size: 13px; }
.billing-console-stats small { color: rgba(229, 244, 249, 0.62); font-size: 10px; }
@media (max-width: 700px) {
  .billing-console-bar { align-items: flex-start; flex-direction: column; }
  .billing-console-stats { width: 100%; justify-content: space-between; gap: 12px; }
}
.loading {
  color: var(--muted);
}
.plan {
  position: relative;
  min-height: 350px;
  padding: 34px;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line);
  background: var(--paper);
}
.plan.featured {
  color: #fff;
  background: var(--ink);
  border-color: var(--ink);
}
.plan-badge {
  position: absolute;
  right: 18px;
  top: 18px;
  padding: 5px 8px;
  color: var(--ink);
  background: var(--lime);
  font-size: 9px;
  font-weight: 900;
}
.plan small {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
}
.plan.featured small,
.plan.featured p {
  color: rgba(255, 255, 255, 0.58);
}
.plan h3 {
  margin: 18px 0 8px;
  font-size: 24px;
}
.plan-price {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 20px 0;
}
.plan-price strong {
  font-size: 42px;
}
.plan-price span {
  font-size: 12px;
}
.plan p {
  min-height: 50px;
  margin: 0 0 28px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.7;
}
.plan .button {
  margin-top: auto;
  width: 100%;
}
.plan.featured .button {
  color: var(--ink);
  background: #fff;
  border-color: #fff;
}

.security-section {
  padding: 104px clamp(24px, 7vw, 120px);
  display: grid;
  grid-template-columns: 0.9fr 1.4fr;
  gap: 90px;
  color: #fff;
  background: #0c3347;
}
.security-points {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.security-points article {
  padding: 15px 30px;
  border-left: 1px solid rgba(255, 255, 255, 0.17);
}
.security-points b {
  color: var(--cyan);
  font-size: 11px;
}
.security-points h3 {
  margin: 48px 0 16px;
  font-size: 18px;
}
.security-points p {
  margin: 0;
  color: rgba(255, 255, 255, 0.57);
  font-size: 12px;
  line-height: 1.8;
}

.support-section {
  background: #f3f7f7;
}
.support-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.support-grid article {
  min-height: 245px;
  padding: 34px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.support-grid article > span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}
.support-grid h3 {
  margin: 38px 0 14px;
  font-size: 20px;
}
.support-grid p {
  margin: 0 0 24px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.8;
}
.support-grid a {
  margin-top: auto;
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.download-section {
  padding: 88px clamp(24px, 7vw, 120px);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 60px;
  align-items: end;
  color: #fff;
  background: var(--teal);
}
.download-section p:last-child {
  max-width: 600px;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 13px;
  line-height: 1.8;
}
.download-section .button {
  min-width: 245px;
}
footer {
  min-height: 154px;
  padding: 30px clamp(24px, 5vw, 88px);
  display: grid;
  grid-template-columns: 270px 1fr auto;
  align-items: center;
  gap: 40px;
  background: #fff;
  border-top: 1px solid var(--line);
}
footer img {
  width: 255px;
}
footer p,
footer span {
  color: var(--muted);
  font-size: 11px;
}

dialog {
  width: min(720px, calc(100% - 32px));
  max-height: calc(100vh - 40px);
  padding: 0;
  color: var(--ink);
  background: #fff;
  border: 0;
  border-radius: 6px;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.38);
  overflow: auto;
}
dialog::backdrop {
  background: rgba(7, 27, 42, 0.72);
  backdrop-filter: blur(5px);
}
.dialog-close {
  position: absolute;
  right: 18px;
  top: 14px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  color: var(--muted);
  background: #edf2f4;
  font-size: 22px;
  cursor: pointer;
}
.dialog-heading {
  padding: 35px 38px 25px;
  border-bottom: 1px solid var(--line);
}
.dialog-heading h2 {
  margin: 0;
  font-size: 28px;
}
#order-content {
  padding: 30px 38px 38px;
}
.order-summary {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  align-items: center;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--line);
}
.order-summary h3 {
  margin: 0 0 7px;
  font-size: 20px;
}
.order-summary p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}
.order-summary strong {
  font-size: 27px;
}
.order-pay {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 28px;
  padding: 28px 0;
}
.qr-box {
  width: 180px;
  height: 180px;
  padding: 12px;
  display: grid;
  place-items: center;
  background: #fff;
  border: 1px solid var(--line);
}
.qr-box img {
  width: 100%;
  height: 100%;
  image-rendering: pixelated;
}
.pay-fields label {
  display: block;
  margin-bottom: 18px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
}
.copy-row {
  margin-top: 7px;
  display: grid;
  grid-template-columns: 1fr 38px;
  border: 1px solid var(--line);
}
.copy-row code {
  padding: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 11px;
}
.copy-row button {
  border: 0;
  border-left: 1px solid var(--line);
  background: #f2f6f7;
  cursor: pointer;
}
.transaction-form label {
  display: block;
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 800;
}
.transaction-form div {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 9px;
}
.transaction-form input {
  min-width: 0;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 3px;
  outline: 0;
}
.transaction-form input:focus {
  border-color: var(--teal);
}
.transaction-form .button {
  min-height: 42px;
}
.order-status {
  margin: 18px 0 0;
  padding: 13px;
  color: #8b5b00;
  background: #fff8e7;
  font-size: 12px;
}
.order-status.success {
  color: #217447;
  background: #eaf8ef;
}
.license-result {
  margin-top: 20px;
  padding: 18px;
  background: #eaf8ef;
  border-left: 3px solid #39a762;
}
.license-result strong {
  display: block;
  margin-bottom: 8px;
  color: #217447;
}
.license-result code {
  word-break: break-all;
}
.order-actions {
  display: flex;
  gap: 10px;
  margin-top: 18px;
}
.error-message {
  color: var(--danger);
  font-size: 12px;
}

@media (max-width: 1100px) {
  .site-header {
    grid-template-columns: 1fr auto;
  }
  .site-header nav {
    display: none;
  }
  .hero {
    grid-template-columns: 1fr;
    padding-top: 70px;
  }
  .product-stage {
    max-width: 820px;
  }
  .section-heading,
  .section-heading.narrow {
    grid-template-columns: 1fr 1.2fr;
  }
  .section-heading > p:last-child {
    grid-column: 2;
  }
  .feature-grid {
    grid-template-columns: 1fr 1fr;
  }
  .feature-grid .feature-primary {
    grid-row: span 2;
  }
  .workflow-section,
  .security-section {
    grid-template-columns: 1fr;
  }
  .workflow-visual {
    max-width: 760px;
  }
  .platform-strip {
    grid-template-columns: 1fr;
  }
  .security-points {
    padding-top: 20px;
  }
}

@media (max-width: 760px) {
  .site-header > .button {
    min-height: 34px;
    padding: 0 10px;
    font-size: 0;
  }
  .site-header > .button::after {
    content: "下载";
    font-size: 12px;
  }
  .hero {
    min-height: auto;
    padding: 52px 18px 70px;
    gap: 58px;
  }
  .hero h1 {
    font-size: 54px;
  }
  .hero-lead {
    font-size: 15px;
  }
  .hero-actions {
    align-items: stretch;
    flex-direction: column;
    gap: 18px;
  }
  .hero-actions .button {
    width: 100%;
  }
  .hero-metrics {
    gap: 0;
  }
  .hero-metrics div {
    padding-right: 10px;
  }
  .hero-metrics div + div {
    padding-left: 12px;
  }
  .hero-metrics dt {
    font-size: 19px;
  }
  .app-shell {
    width: 100%;
    transform: none;
  }
  .product-stage {
    height: auto;
  }
  .stage-note {
    right: 0;
    bottom: -8px;
    width: 240px;
  }
  .platform-strip {
    padding: 26px 18px;
  }
  .platform-strip > div {
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 6px;
  }
  .section {
    padding: 80px 18px;
  }
  .section-heading,
  .section-heading.narrow {
    display: block;
    margin-bottom: 42px;
  }
  .section-heading h2 {
    font-size: 38px;
  }
  .section-heading > p:last-child {
    margin-top: 24px;
  }
  .feature-grid {
    display: block;
    border-top: 1px solid var(--line);
  }
  .feature-grid article {
    min-height: 260px;
  }
  .feature-grid .feature-primary {
    min-height: 470px;
  }
  .workflow-section {
    padding: 80px 18px;
    gap: 20px;
  }
  .workflow-copy h2,
  .security-title h2,
  .download-section h2 {
    font-size: 40px;
  }
  .workflow-visual {
    padding-top: 44px;
  }
  .flow-card {
    width: 95%;
  }
  .flow-result {
    margin-left: 5%;
  }
  .ai-suggestion {
    width: 90%;
    margin-left: 10%;
  }
  .plans {
    grid-template-columns: 1fr;
  }
  .support-grid {
    grid-template-columns: 1fr;
  }
  .security-section {
    padding: 80px 18px;
    gap: 45px;
  }
  .security-points {
    grid-template-columns: 1fr;
  }
  .security-points article {
    padding: 25px 0;
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.17);
  }
  .security-points h3 {
    margin-top: 20px;
  }
  .download-section {
    padding: 70px 18px;
    grid-template-columns: 1fr;
    align-items: start;
  }
  .download-section .button {
    min-width: 0;
    width: 100%;
  }
  footer {
    padding: 36px 18px;
    grid-template-columns: 1fr;
    gap: 12px;
  }
  footer img {
    width: 235px;
  }
  .order-pay {
    grid-template-columns: 1fr;
  }
  .qr-box {
    margin: 0 auto;
  }
  #order-content,
  .dialog-heading {
    padding-left: 20px;
    padding-right: 20px;
  }
  .transaction-form div {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    transition: none !important;
  }
}

/* HARMONY UI refresh: dark glass workspace */

:root {
  color-scheme: dark;
  --ink: #f4f7ff;
  --muted: #98a6c2;
  --line: rgba(162, 181, 224, .16);
  --paper: #070b16;
  --white: #0d1425;
  --teal: #6d7cff;
  --cyan: #56d8ff;
  --lime: #69e7b1;
  --danger: #ff7f96;
  --surface: rgba(15, 23, 42, .76);
  --surface-strong: rgba(20, 30, 56, .92);
}
body {
  color: #eef3ff;
  background:
    radial-gradient(900px 520px at 82% -12%, rgba(91, 105, 255, .22), transparent 68%),
    radial-gradient(740px 460px at -10% 28%, rgba(48, 191, 255, .11), transparent 67%),
    #070b16;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .22;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(to bottom, #000, transparent 78%);
}
.site-header {
  height: 72px;
  background: rgba(7, 11, 22, .78);
  border-bottom: 1px solid var(--line);
  box-shadow: 0 14px 40px rgba(0,0,0,.18);
}
.brand img { height: 48px; filter: drop-shadow(0 0 18px rgba(105,123,255,.22)); }
.site-header nav { color: #c8d2e7; gap: 26px; }
.site-header nav a { transition: color .2s, opacity .2s; }
.site-header nav a:hover { color: #fff; }
.button {
  border: 1px solid rgba(156, 170, 255, .34);
  border-radius: 11px;
  background: linear-gradient(135deg, #6875ff, #4c59db);
  box-shadow: 0 12px 28px rgba(73, 86, 230, .25);
}
.button:hover { background: linear-gradient(135deg, #7e8aff, #5a66ec); box-shadow: 0 16px 34px rgba(73, 86, 230, .35); }
.button-outline { color: #e8edff; background: rgba(255,255,255,.035); border-color: rgba(172, 188, 234, .24); box-shadow: none; }
.button-outline:hover { color: #fff; background: rgba(114, 129, 255, .20); }
.hero { position: relative; min-height: calc(100vh - 72px); }
.hero-copy { position: relative; z-index: 1; }
.eyebrow { color: #9eacd0; }
.eyebrow span { background: linear-gradient(90deg, #65d8ff, #6c78ff); }
.hero h1 { letter-spacing: -.055em; text-shadow: 0 12px 36px rgba(0,0,0,.24); }
.hero h1 em { background: linear-gradient(110deg, #65ddff, #7980ff 70%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hero-lead, .section-heading > p:last-child, .section-description { color: #9aa8c6; }
.hero-metrics { border-color: var(--line); }
.hero-metrics div { border-color: var(--line); }
.hero-metrics dd { color: #8290ae; }
.app-shell {
  border-color: rgba(157, 175, 236, .22);
  border-radius: 18px;
  background: #0e1526;
  box-shadow: 0 35px 90px rgba(0,0,0,.42), 0 0 0 1px rgba(110,128,255,.06);
  transform: perspective(1400px) rotateY(-2deg) rotateX(1deg);
}
.window-bar { background: #10182b; border-color: var(--line); }
.window-brand strong { color: #f3f6ff; }
.window-brand span, .window-tools span { color: #8594b5; }
.window-tools span { border-color: var(--line); background: rgba(255,255,255,.025); }
.app-body { background: #0b1221; }
.app-rail { background: #0b1221; border-color: var(--line); }
.app-rail button { color: #8592b2; }
.app-rail button.active { color: #8b95ff; background: rgba(108,121,255,.16); }
.app-main { background: linear-gradient(180deg, rgba(20,29,52,.72), rgba(9,15,29,.86)); }
.app-heading p, .metric-grid span, .metric-grid small, .app-heading h2 { color: #dce5ff; }
.online { color: #70e5b4; background: rgba(62, 202, 139, .12); }
.metric-grid article, .channel-panel, .conversation-panel { background: rgba(20, 30, 53, .86); border-color: var(--line); }
.metric-grid article { box-shadow: inset 0 1px 0 rgba(255,255,255,.025); }
.metric-grid span, .metric-grid small, .panel-title span, .channels small, .contact small { color: #8796b7; }
.metric-grid strong, .panel-title strong, .channels b, .contact b { color: #edf2ff; }
.panel-title, .contact, .channels > div { border-color: var(--line); }
.messages { background: rgba(8, 14, 27, .72); }
.messages p.incoming { color: #dae4ff; background: #151f36; border-color: var(--line); }
.messages .translated { color: #71dff9; }
.messages p.outgoing { background: linear-gradient(135deg, #6370f4, #4e5fd8); }
.composer { border-color: var(--line); background: rgba(255,255,255,.035); }
.composer span { color: #8190b0; }
.composer button { background: #6675f5; }
.stage-note { border-radius: 14px; background: linear-gradient(135deg, #182443, #111a31); box-shadow: 0 18px 42px rgba(0,0,0,.36); }
.platform-strip, .pricing-section, .support-section, footer { background: rgba(10, 16, 31, .86); border-color: var(--line); }
.platform-strip p, .platform-strip span { color: #c4d0ea; }
.platform-strip img { filter: saturate(.85) brightness(1.08); }
.section-heading h2, .feature-grid h3, .support-grid h3 { color: #f1f4ff; }
.feature-grid, .support-grid { border-color: var(--line); }
.feature-grid article, .support-grid article { background: rgba(14, 22, 40, .78); border-color: var(--line); }
.feature-grid .feature-primary { background: linear-gradient(160deg, #202c58, #121a32); }
.feature-grid p, .support-grid p { color: #98a7c7; }
.feature-icon { border-color: rgba(137, 157, 230, .3); color: #71d9ff; border-radius: 12px; background: rgba(107, 123, 255, .08); }
.workflow-section { background: linear-gradient(145deg, #101931, #080d1b 70%); }
.workflow-list article { border-color: var(--line); }
.flow-card { border-radius: 14px; background: #f0f4ff; box-shadow: 0 20px 42px rgba(0,0,0,.24); }
.flow-card p { color: #0e1730; }
.ai-suggestion { border-radius: 14px; background: linear-gradient(135deg, #dffbff, #e6e9ff); border-color: #79cde8; box-shadow: 0 20px 40px rgba(0,0,0,.18); }
.billing-console-bar { border-radius: 16px; background: linear-gradient(135deg, #1a2750, #121a34); border-color: rgba(136, 158, 255, .24); box-shadow: 0 20px 48px rgba(0,0,0,.25); }
.plan { border-radius: 16px; border-color: var(--line); background: rgba(15, 23, 42, .82); box-shadow: 0 20px 42px rgba(0,0,0,.18); }
.plan.featured { background: linear-gradient(160deg, #202d62, #151d3c); border-color: rgba(132, 149, 255, .38); }
.plan small, .plan p { color: #93a2c2; }
.plan.featured small, .plan.featured p { color: #aab6d4; }
.plan-badge { border-radius: 8px; color: #fff; background: linear-gradient(135deg, #6c7cff, #4bc9ea); }
.security-section { background: linear-gradient(145deg, #141f3b, #0c1326); }
.security-points article { border-color: var(--line); }
.security-points p { color: #9aa8c4; }
.download-section { background: linear-gradient(110deg, #5668ee, #3e83cf); }
footer img { filter: drop-shadow(0 0 16px rgba(105,123,255,.2)); }
footer p, footer span { color: #8998b6; }
dialog { color: #edf2ff; background: #10182a; border: 1px solid rgba(157, 176, 235, .18); border-radius: 18px; }
dialog::backdrop { background: rgba(3, 6, 14, .78); }
.dialog-heading, .order-summary { border-color: var(--line); }
.dialog-close { color: #aab7d3; background: rgba(255,255,255,.08); }
.order-summary p, .pay-fields label { color: #8c9abc; }
.qr-box, .copy-row, .transaction-form input { background: #0a1120; border-color: var(--line); color: #eaf0ff; }
.copy-row button { color: #dbe4ff; background: rgba(255,255,255,.06); border-color: var(--line); }
.order-status { color: #ffd884; background: rgba(255, 194, 86, .12); }
.order-status.success, .license-result { color: #8df0bf; background: rgba(66, 205, 144, .12); }
.error-message { color: #ff9bac; }
@media (max-width: 760px) {
  .site-header { background: rgba(7,11,22,.9); }
  .hero { background: radial-gradient(500px 320px at 50% 0%, rgba(91,105,255,.14), transparent 70%); }
}


/* HARMONY OneChat-inspired light pass (independent implementation) */
:root {
  color-scheme: light;
  --ink: #0b222b;
  --muted: #5f7780;
  --line: rgba(11,34,43,.11);
  --paper: #fafdfE;
  --white: #fff;
  --teal: #0891b2;
  --cyan: #18a9c8;
  --lime: #0a9962;
  --danger: #c53b31;
}
body {
  color: #3d5560;
  background: #fafdfE;
  background-image: radial-gradient(900px 520px at 50% -18%, rgba(8,145,178,.11), transparent 70%);
}
body::before { opacity: 0; }
.site-header {
  height: 68px;
  padding: 0;
  background: rgba(250,253,254,.86);
  border-bottom-color: transparent;
  backdrop-filter: blur(14px);
}
.brand img { height: 48px; filter: none; }
.site-header nav { color: #3d5560; font-weight: 600; }
.site-header nav a:hover { color: #0e7490; }
.button {
  min-height: 46px;
  padding: 0 24px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: #0a9962;
  box-shadow: none;
}
.button:hover { background: #0b8a58; }
.button-outline { color: #0b222b; background: transparent; border-color: rgba(11,34,43,.22); }
.button-outline:hover { color: #0e7490; background: transparent; border-color: #0891b2; }
.hero {
  display: block;
  min-height: auto;
  padding: 118px 0 88px;
  text-align: center;
}
.hero-copy { max-width: 1000px; margin: 0 auto; }
.eyebrow { justify-content: center; color: #5f7780; }
.hero h1 {
  font-size: clamp(2.5rem, 5.8vw, 5.25rem);
  line-height: 1.12;
  letter-spacing: .005em;
  text-shadow: none;
}
.hero h1 em { color: #0891b2; background: none; -webkit-text-fill-color: initial; }
.hero-lead { max-width: 700px; margin: 26px auto 0; color: #5f7780; font-size: 1.05rem; line-height: 1.9; }
.hero-actions { justify-content: center; margin-top: 34px; }
.text-link { color: #0b222b; }
.text-link span { color: #0891b2; }
.hero-metrics { max-width: 520px; margin: 50px auto 0; border-color: rgba(11,34,43,.1); text-align: left; }
.hero-metrics div { border-color: rgba(11,34,43,.1); }
.hero-metrics dt { color: #0b222b; }
.hero-metrics dd { color: #5f7780; }
.product-stage { max-width: 1120px; margin: 66px auto 0; }
.app-shell {
  border: 1px solid rgba(11,34,43,.12);
  border-radius: 18px;
  background: #eef6f8;
  box-shadow: 0 26px 72px rgba(11,34,43,.16);
  transform: none;
}
.window-bar { background: #fff; border-color: rgba(11,34,43,.1); }
.window-brand strong { color: #0b222b; }
.window-brand span, .window-tools span { color: #5f7780; }
.window-tools span { border-color: rgba(11,34,43,.1); background: #fff; }
.app-body { background: #f1f7f8; }
.app-rail { background: #fff; border-color: rgba(11,34,43,.1); }
.app-rail button { color: #5f7780; }
.app-rail button.active { color: #0891b2; background: rgba(8,145,178,.1); }
.app-main { background: #f1f7f8; }
.app-heading p, .metric-grid span, .metric-grid small { color: #5f7780; }
.app-heading h2, .metric-grid strong, .panel-title strong, .channels b, .contact b { color: #0b222b; }
.online { color: #0a9962; background: rgba(10,153,98,.09); }
.metric-grid article, .channel-panel, .conversation-panel { background: #fff; border-color: rgba(11,34,43,.1); box-shadow: none; }
.metric-grid span, .metric-grid small, .panel-title span, .channels small, .contact small { color: #5f7780; }
.panel-title, .contact, .channels > div { border-color: rgba(11,34,43,.08); }
.messages { background: #f8fbfb; }
.messages p.incoming { color: #0b222b; background: #fff; border-color: rgba(11,34,43,.1); }
.messages .translated { color: #0891b2; }
.messages p.outgoing { background: #0891b2; }
.composer { border-color: rgba(11,34,43,.1); background: #fff; }
.composer span { color: #8aa0a8; }
.composer button { background: #0b222b; }
.stage-note { border-radius: 14px; background: #0b222b; box-shadow: 0 16px 36px rgba(11,34,43,.22); }
.platform-strip { padding-top: 30px; padding-bottom: 30px; background: #fff; border-color: rgba(11,34,43,.1); }
.platform-strip p, .platform-strip span { color: #3d5560; }
.section { background: #fafdfE; }
.section-heading h2, .feature-grid h3, .support-grid h3 { color: #0b222b; }
.section-heading > p:last-child, .feature-grid p, .support-grid p { color: #5f7780; }
.feature-grid, .support-grid { border-color: rgba(11,34,43,.1); }
.feature-grid article, .support-grid article { background: #fff; border-color: rgba(11,34,43,.1); }
.feature-grid .feature-primary { background: #0b222b; }
.feature-grid .feature-primary h3 { color: #fff; }
.feature-icon { border-color: rgba(8,145,178,.35); color: #0891b2; background: rgba(8,145,178,.06); border-radius: 10px; }
.workflow-section { background: #0b222b; }
.billing-console-bar { background: #0b222b; border-color: rgba(185,205,212,.16); border-radius: 14px; }
.plan { background: #fafdfE; border-color: rgba(11,34,43,.1); border-radius: 14px; box-shadow: none; }
.plan.featured { background: #0b222b; border-color: #0b222b; }
.plan small, .plan p { color: #5f7780; }
.plan.featured small, .plan.featured p { color: #b9cdd4; }
.plan-badge { color: #fff; background: #0891b2; border-radius: 999px; }
.security-section { background: #0e3441; }
.download-section { background: #0a9962; }
footer { background: #f2f9fb; border-color: rgba(11,34,43,.1); }
footer img { filter: none; }
footer p, footer span { color: #5f7780; }
dialog { color: #0b222b; background: #fff; border-color: rgba(11,34,43,.12); border-radius: 16px; }
dialog::backdrop { background: rgba(11,34,43,.56); }
.dialog-heading, .order-summary { border-color: rgba(11,34,43,.1); }
.dialog-close { color: #5f7780; background: #eef6f8; }
.order-summary p, .pay-fields label { color: #5f7780; }
.qr-box, .copy-row, .transaction-form input { background: #fff; border-color: rgba(11,34,43,.14); color: #0b222b; }
.copy-row button { color: #0b222b; background: #f2f9fb; border-color: rgba(11,34,43,.1); }
.order-status { color: #8a6100; background: #fff8e7; }
.order-status.success, .license-result { color: #217447; background: #eaf8ef; }
@media (max-width: 760px) {
  .hero { padding: 100px 18px 70px; }
  .product-stage { margin-top: 52px; }
}

/* Product preview: keep the mockup centered and fully inside the hero. */
.hero { overflow: visible; }
.product-stage {
  width: min(1120px, 100%);
  margin-left: auto;
  margin-right: auto;
  height: auto !important;
}
.app-shell {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  transform: none !important;
}
.app-body { min-height: 560px; }
.stage-note {
  position: static;
  width: min(420px, 100%);
  margin: 24px auto 0;
}
@media (max-width: 760px) {
  .app-body { min-height: 430px; }
  .app-main { padding: 18px; }
  .workspace-row { grid-template-columns: 1fr; }
  .stage-note { margin-top: 18px; }
}
