:root {
  --muted: #435f76;
  --line: #bfd0dc;
  --paper: #e6eef4;
}

/* Theme switching remains automatic; the manual control is intentionally hidden. */
#solar-theme-button { display: none !important; }

body { background: #e6eef4; }
.section-intro h2 span, .faq-layout h2 span { color: #48667f; }
.section-intro > p, .seo-overview p, .feature-card p, .panel-copy > p, .faq-list p { color: #405d73; }
.eyebrow { color: #43667d; }
.overview-label, .panel-label { font-weight: 700; }
.feature-card { border-color: #bfd1dc; background: linear-gradient(145deg, #fff 0%, #f7fbfd 100%); box-shadow: 0 15px 42px rgba(27,61,84,.08); }
.feature-card h3 { color: #071a2d; }
.feature-number { color: #8ea5b6; font-weight: 700; }
.feature-card a { color: #0b263a; }
.feature-card a span { color: #526f85; }
.mini-table, .panel-art { background: #edf4f8; }
.table-head { color: #637d91; }
.scenario-tab { color: #466277; border-color: #afc4d1; }
.scenario-panel { border: 1px solid #bdd0dc; }
.panel-copy li { color: #486378; }
.panel-copy li b { color: #10293d; }
.workflow-section { background: #dce7ef; }
.scenarios { background: linear-gradient(180deg, #d9e6ee 0%, #e7eff4 100%); }
.developer-section { background: #f2f7fa; }
.faq-section { background: #f4f8fb; }
.seo-overview { background: #deebf2; }

.theme-day body { background: #e1ebf1; color: #07192c; }
.theme-day .hero:before { background: radial-gradient(circle at 76% 28%, rgba(28,184,202,.2), transparent 29%), radial-gradient(circle at 17% 74%, rgba(92,127,195,.16), transparent 34%), linear-gradient(135deg, #e5f1f6 0%, #dce9f2 54%, #edf4f7 100%); }
.theme-day .hero h1 span { background: linear-gradient(90deg, #36566f, #58758c); -webkit-background-clip: text; background-clip: text; }
.theme-day .hero-copy > p, .theme-day .hero .eyebrow, .theme-day .hero-note { color: #3e5c72; }
.theme-day #features { position: relative; z-index: 0; }
.theme-day #features::before { content: ""; position: absolute; z-index: -1; inset: 0 auto 0 50%; width: 100vw; transform: translateX(-50%); background: radial-gradient(circle at 11% 16%, rgba(30,178,192,.11), transparent 25%), radial-gradient(circle at 89% 76%, rgba(106,91,190,.08), transparent 27%), linear-gradient(180deg, #e3edf3 0%, #e8f0f4 100%); }
.theme-day .section-intro h2, .theme-day .seo-overview h2, .theme-day .faq-layout h2 { color: #07192c; }
.theme-day .section-intro h2 span, .theme-day .faq-layout h2 span { color: #3f6079; }
.theme-day .section-intro > p, .theme-day .seo-overview p, .theme-day .feature-card p, .theme-day .panel-copy > p, .theme-day .faq-list p, .theme-day .faq-layout > div:first-child p { color: #3c586e; }
.theme-day .feature-card { background: linear-gradient(145deg, #fff 0%, #f6fafc 100%); border-color: #b5cbd8; box-shadow: 0 17px 44px rgba(26,62,85,.1); }
.theme-day .feature-card:hover { border-color: #6ebfc8; box-shadow: 0 27px 68px rgba(25,68,94,.16); }
.theme-day .feature-card h3 { color: #06182a; }
.theme-day .feature-number { color: #829dad; }
.theme-day .scenario-panel { background: #fff; border-color: #b7ccd8; box-shadow: 0 18px 50px rgba(27,64,88,.11); }
.theme-day .scenario-tab { color: #38566d; border-color: #a9c0cd; }
.theme-day .scenarios { background: radial-gradient(circle at 90% 15%, rgba(28,171,187,.12), transparent 25%), linear-gradient(180deg, #d6e4ec, #e4edf2); }
.theme-day .workflow-section { background: linear-gradient(180deg, #d8e5ed, #e3ecf2); }
.theme-day .developer-section { background: linear-gradient(180deg, #eef5f8, #f5f9fb); }
.theme-day .faq-section { background: linear-gradient(180deg, #f3f8fa, #eaf2f6); }
.theme-day .seo-overview { background: #dbe8f0; border-color: #bcd0dc; }
.theme-day .overview-topics span { background: #f8fbfd; border-color: #aec4d1; color: #294b63; }
.theme-day .trust-inner > span, .theme-day .trust-brands { color: #b9c9d5 !important; }
.theme-day .trust-brands span:first-child { color: #fff !important; }
.theme-day .footer-menu-group a, .theme-day .wechat-card span { color: #afc0cd; }
.theme-day .footer-contact-card > a { color: #fff; }
.theme-day .faq-list details { border-color: #bfcfda; }
.theme-day .faq-list summary { color: #0e2639; }
.theme-day .device-row, .theme-day .policy-items > div { color: #405d72; border-color: #cbdbe4; }
.theme-day .device-row b, .theme-day .policy-items b { color: #102c41; }
.theme-day .code-tabs span { color: #587084; }
.theme-day .step p { color: #3e5a70; }
.theme-day .step h3 { color: #0b2438; }

@media (max-width: 700px) {
  .section-intro h2 span, .faq-layout h2 span { color: #3d5e77; }
}

/* Larger, more legible type scale and a roomier security layout. */
body { font-size: 17px; }
.section-intro h2, .security-copy h2, .developer-copy h2, .faq-layout h2, .cta-inner h2 { font-size: 46px; }
.section-intro > p, .security-copy p, .developer-copy p { font-size: 16px; line-height: 1.9; }
.feature-card h3 { font-size: 22px; }
.feature-card p { font-size: 15px; line-height: 1.9; }
.feature-card a { font-size: 14px; }
.panel-copy h3 { font-size: 34px; }
.panel-copy > p { font-size: 15px; line-height: 1.95; }
.panel-copy li { font-size: 14px; line-height: 1.65; }
.faq-list summary { font-size: 18px; }
.faq-list p { font-size: 14px; line-height: 1.95; }
.security-section { padding-top: 150px; padding-bottom: 150px; }
.security-layout { gap: 70px; }
.security-copy { max-width: 650px; }
.security-copy h2 { font-size: 50px; }
.security-copy p { font-size: 17px; max-width: 590px; }
.security-points { gap: 14px; margin: 34px 0 40px; }
.security-points > div { gap: 15px; padding: 15px 17px; border: 1px solid rgba(104, 154, 176, .24); border-radius: 13px; background: rgba(17, 42, 63, .5); }
.point-icon { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 12px; font-size: 20px; }
.security-points b { font-size: 17px; line-height: 1.4; }
.security-points small { font-size: 14px; line-height: 1.7; margin-top: 5px; }
.security-copy .btn { min-height: 54px; padding: 0 23px; font-size: 15px; }

@media (max-width: 980px) {
  .security-section { padding-top: 115px; padding-bottom: 115px; }
  .security-layout { gap: 45px; }
  .security-copy h2 { font-size: 44px; }
}

@media (max-width: 700px) {
  .section { padding-top: 92px; padding-bottom: 92px; }
  .section-intro h2, .security-copy h2, .developer-copy h2, .faq-layout h2, .cta-inner h2 { font-size: 37px; line-height: 1.25; }
  .section-intro > p, .security-copy p, .developer-copy p { font-size: 16px; line-height: 1.9; }
  .feature-card h3 { font-size: 22px; }
  .feature-card p { font-size: 15px; }
  .panel-copy h3 { font-size: 30px; }
  .panel-copy > p { font-size: 15px; }
  .panel-copy li { font-size: 14px; }
  .faq-list summary { font-size: 18px; }
  .faq-list p { font-size: 14px; }
  .security-section { padding-top: 92px; padding-bottom: 92px; }
  .security-layout { gap: 42px; }
  .security-copy h2 { font-size: 38px; }
  .security-copy p { font-size: 16px; }
  .security-points { margin-top: 28px; gap: 12px; }
  .security-points > div { padding: 14px; gap: 13px; }
  .point-icon { flex-basis: 42px; width: 42px; height: 42px; }
  .security-points b { font-size: 16px; }
  .security-points small { font-size: 13.5px; line-height: 1.7; }
  .security-copy .btn { width: 100%; min-height: 56px; font-size: 16px; }
  .security-art-large { height: 350px; transform: scale(.9); margin: -5px -18px; }
}

/* Unified display-sized typography across the full official site. */
body { font-size: 18px; }
.announcement { font-size: 14px; }
.brand b { font-size: 22px; }
.brand em { font-size: 10px; }
.main-nav a { font-size: 16px; }
.login-link { font-size: 15px; }
.btn { font-size: 15px; }
.btn-small { height: 46px; padding: 0 22px; }
.eyebrow { font-size: 13px; }
.hero h1 { font-size: 64px; }
.hero { gap: 34px; }
.hero-copy { width: 46%; }
.hero-visual { width: 54%; }
.hero-copy > p { font-size: 18px; }
.hero-note { font-size: 14px; }
.trust-inner > span, .trust-brands { font-size: 14px; }
.trust-brands span:first-child { font-size: 16px; }
.seo-overview h2 { font-size: 31px; }
.seo-overview p { font-size: 16px; }
.overview-label { font-size: 12px; }
.overview-topics span { font-size: 12px; }
.section-intro h2, .security-copy h2, .developer-copy h2, .faq-layout h2, .cta-inner h2 { font-size: 50px; }
.section-intro > p, .security-copy p, .developer-copy p { font-size: 17px; }
.feature-card h3 { font-size: 23px; }
.feature-card p { font-size: 16px; }
.feature-card a { font-size: 15px; }
.feature-number { font-size: 12px; }
.scenario-tab { font-size: 14px; padding: 12px 26px; }
.panel-label { font-size: 12px; }
.panel-copy h3 { font-size: 38px; }
.panel-copy > p { font-size: 16px; }
.panel-copy li { font-size: 15px; }
.panel-copy .text-link { font-size: 15px; }
.filter-bar { font-size: 12px; }
.filter-bar i, .filter-bar b { font-size: 10px; }
.device-row { font-size: 11px; }
.device-row.head { font-size: 10px; }
.device-row b { font-size: 12px; }
.device-row small { font-size: 10px; }
.status { font-size: 10px; }
.policy-head { font-size: 14px; }
.policy-head i { font-size: 10px; }
.policy-progress > span { font-size: 11px; }
.policy-items b { font-size: 12px; }
.policy-items em { font-size: 10px; }
.org-node { font-size: 12px; }
.org-node b { font-size: 12px; }
.org-node small { font-size: 10px; }
.security-copy h2 { font-size: 54px; }
.security-copy p { font-size: 18px; }
.security-points b { font-size: 18px; }
.security-points small { font-size: 15px; }
.security-copy .btn { font-size: 16px; }
.security-badge { font-size: 11px; }
.security-badge b { font-size: 12px; }
.developer-copy p { font-size: 17px; }
.code-tabs span { font-size: 12px; }
.code-window > div { font-size: 11px; }
.code-window pre { font-size: 12px; }
.integration-node { font-size: 12px; }
.integration-node b { font-size: 12px; }
.integration-node small { font-size: 10px; }
.step h3 { font-size: 19px; }
.step p { font-size: 14px; }
.faq-list summary { font-size: 19px; }
.faq-list p { font-size: 15px; }
.cta-inner p { font-size: 15px; }
.footer-brand p { font-size: 14px; }
.footer-links b, .footer-links a { font-size: 13px; }
.footer-bottom { font-size: 12px; }

@media (max-width: 980px) {
  .hero h1 { font-size: 58px; }
  .hero { gap: 24px; }
  .hero-copy { width: 44%; }
  .hero-visual { width: 56%; }
  .section-intro h2, .security-copy h2, .developer-copy h2, .faq-layout h2, .cta-inner h2 { font-size: 44px; }
  .security-copy h2 { font-size: 48px; }
}

@media (max-width: 700px) {
  body { font-size: 16px; }
  .announcement { font-size: 12px; }
  .brand b { font-size: 20px; }
  .main-nav a { font-size: 16px; }
  .btn { font-size: 14px; }
  .eyebrow { font-size: 11px; }
  .hero h1 { font-size: 46px; }
  .hero-copy, .hero-visual { width: 100%; }
  .hero-copy > p { font-size: 16px; }
  .hero-note { font-size: 13px; }
  .section-intro h2, .security-copy h2, .developer-copy h2, .faq-layout h2, .cta-inner h2 { font-size: 38px; }
  .section-intro > p, .security-copy p, .developer-copy p { font-size: 16px; }
  .feature-card h3 { font-size: 22px; }
  .feature-card p { font-size: 15px; }
  .feature-card a { font-size: 14px; }
  .scenario-tab { font-size: 13px; padding: 11px 20px; }
  .panel-copy h3 { font-size: 31px; }
  .panel-copy > p { font-size: 15px; }
  .panel-copy li { font-size: 14px; }
  .filter-bar { font-size: 11px; }
  .device-row { font-size: 10px; }
  .device-row b { font-size: 11px; }
  .device-row small { font-size: 9px; }
  .status { font-size: 9px; }
  .security-copy h2 { font-size: 40px; }
  .security-copy p { font-size: 16px; }
  .security-points b { font-size: 16px; }
  .security-points small { font-size: 13.5px; }
  .code-tabs span { font-size: 11px; }
  .code-window pre { font-size: 11px; }
  .step h3 { font-size: 19px; }
  .step p { font-size: 14px; }
  .faq-list summary { font-size: 18px; }
  .faq-list p { font-size: 14px; }
}

/* Qiyun Technology brand lockup. */
.brand { gap: 13px; min-width: 186px; }
.brand-mark { width: 36px; height: 36px; flex: 0 0 36px; padding: 8px; border-radius: 11px; border: 1px solid rgba(112, 167, 190, .18); box-shadow: 0 9px 24px rgba(1, 12, 24, .2), inset 0 1px rgba(255, 255, 255, .04); }
.brand-mark i { width: 4px; }
.brand-mark i:nth-child(1) { height: 9px; }
.brand-mark i:nth-child(2) { height: 15px; }
.brand-mark i:nth-child(3) { height: 20px; }
.brand > span:last-child { gap: 5px; line-height: 1; }
.brand b { font-size: 21px; font-weight: 800; letter-spacing: .1em; white-space: nowrap; }
.brand em { margin-top: 0; font-size: 10px; font-weight: 600; letter-spacing: .08em; white-space: nowrap; color: #8da3b6; }
.theme-day .site-header .brand em { color: #9db0c0 !important; }

/* Keep the solar theme control available without competing with navigation. */
.theme-slot { position: fixed; right: 24px; bottom: 91px; z-index: 46; }
.theme-slot .solar-theme-button { min-width: 112px; background: rgba(8, 24, 39, .91); border-color: rgba(129, 174, 195, .36); box-shadow: 0 14px 35px rgba(2, 13, 24, .24); backdrop-filter: blur(12px); }
.theme-day .theme-slot .solar-theme-button { background: rgba(255, 255, 255, .94); border-color: #c6dbe5; color: #2d4d62; box-shadow: 0 14px 35px rgba(40, 78, 100, .16); }

@media (max-width: 1100px) {
  .brand { min-width: 168px; }
  .brand b { font-size: 19px; }
  .brand em { font-size: 9px; }
}

@media (max-width: 700px) {
  .brand { min-width: 0; gap: 10px; }
  .brand-mark { width: 34px; height: 34px; flex-basis: 34px; }
  .brand b { font-size: 18px; }
  .brand em { font-size: 8.5px; letter-spacing: .04em; }
  .theme-slot { right: 14px; bottom: 72px; }
  .theme-slot .solar-theme-button { min-width: 46px; width: 46px; height: 46px; padding: 0; }
  .theme-slot .solar-theme-button small { display: none; }
}
