:root {
  --qz-mobile-nav-height: 66px;
  --qz-mobile-safe-bottom: env(safe-area-inset-bottom, 0px);
  --qz-app-accent: #2457db;
  --qz-app-ink: #14202b;
  --qz-app-muted: #6f7c88;
  --qz-app-bg: #f7f8fa;
}

.qz-mobile-dock { display: none; }
.qz-skip-link { position:fixed;left:12px;top:8px;z-index:1300;transform:translateY(-150%);padding:10px 14px;border-radius:10px;background:#14202b;color:#fff;text-decoration:none; }
.qz-skip-link:focus { transform:none; }
.qz-app-toast { position:fixed;z-index:1250;left:50%;bottom:calc(var(--qz-mobile-nav-height) + var(--qz-mobile-safe-bottom) + 22px);width:max-content;max-width:calc(100vw - 32px);transform:translate(-50%,20px);padding:11px 15px;border-radius:12px;background:#14202b;color:#fff;font-size:13px;line-height:1.45;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;box-shadow:0 12px 30px rgba(20,32,43,.2); }
.qz-app-toast.is-visible { opacity:1;transform:translate(-50%,0);pointer-events:auto; }
.qz-app-toast button { margin-left:10px;border:0;background:transparent;color:#a9c2ff;font-weight:700; }
.qz-network-state { position:fixed;z-index:1240;left:12px;right:12px;top:calc(env(safe-area-inset-top,0px) + 8px);padding:10px 14px;border-radius:12px;background:#7e321f;color:#fff;font-size:13px;text-align:center;transform:translateY(-140%);transition:transform .2s ease; }
.qz-network-state.is-visible { transform:none; }
.qz-reading-progress { position:fixed;z-index:1210;top:0;left:0;width:100%;height:3px;background:#2457db;transform:scaleX(0);transform-origin:left center; }

@media (max-width: 820px) {
  html { scroll-behavior: smooth; }
  body.qz-app-shell {
    padding-bottom: calc(var(--qz-mobile-nav-height) + var(--qz-mobile-safe-bottom));
    overscroll-behavior-y: contain;
    background: var(--qz-app-bg);
    color: var(--qz-app-ink);
  }
  body.qz-app-shell.qz-page-enter .site-main,
  body.qz-app-shell.qz-page-enter #qzMain { animation:qz-page-enter .22s ease-out both; }
  @keyframes qz-page-enter { from { opacity:.45;transform:translateY(5px) } to { opacity:1;transform:none } }

  .headnav-bg {
    position: sticky;
    top: 0;
    z-index: 1040;
    border-bottom: 1px solid rgba(14, 17, 22, .08);
    background: rgba(255, 255, 255, .94);
    -webkit-backdrop-filter: blur(16px) saturate(160%);
    backdrop-filter: blur(16px) saturate(160%);
  }

  .navbar { min-height: 64px; }
  body.qz-mobile-primary .navbar-toggler { display:none; }
  body.qz-mobile-primary .site-footer,
  body.qz-mobile-primary .kb-footer,
  body.qz-mobile-primary .footer-band { display:none; }
  body.qz-mobile-primary .navbar-brand { max-width:calc(100vw - 28px); }
  body.qz-mobile-primary .navbar-brand .qz-wordmark { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
  .navbar-toggler {
    width: 48px;
    height: 44px;
    padding: 8px;
    border-color: rgba(14, 17, 22, .14) !important;
    color: #0e1116 !important;
    box-shadow: none !important;
  }
  .navbar-toggler-icon {
    width: 26px;
    height: 26px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%230e1116' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 8h22M4 15h22M4 22h22'/%3e%3c/svg%3e") !important;
  }
  .qz-mobile-back { width:44px;height:44px;display:grid;flex:0 0 44px;place-items:center;margin-right:2px;border:0;border-radius:13px;background:#f0f2f4;color:#17232d;font-size:1.2rem; }
  .navbar-collapse {
    margin: 0 -12px;
    padding: 10px 12px 16px;
    border-top: 1px solid rgba(14, 17, 22, .08);
    background: #fff;
  }
  .navbar-collapse .nav-link,
  .navbar-collapse .dropdown-item {
    min-height: 44px;
    display: flex !important;
    align-items: center;
  }

  .qz-mobile-dock {
    position: fixed;
    z-index: 1100;
    left: 10px;
    right: 10px;
    bottom: max(8px, var(--qz-mobile-safe-bottom));
    height: 58px;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: stretch;
    padding: 4px;
    border: 1px solid rgba(14, 17, 22, .1);
    border-radius: 18px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 46px rgba(24, 39, 52, .18);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    backdrop-filter: blur(18px) saturate(170%);
  }
  .qz-mobile-dock a {
    min-width: 0;
    min-height: 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    border-radius: 14px;
    color: #737b86;
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    transition: color .18s ease, background .18s ease, transform .18s ease;
  }
  .qz-mobile-dock a i { font-size: 19px; line-height: 1; }
  .qz-mobile-dock a.is-active {
    color: #224fe8;
    background: #edf1ff;
  }
  .qz-mobile-dock a:active { transform: scale(.96); }
  .qz-mobile-dock a:focus-visible {
    outline: 2px solid #2f5bff;
    outline-offset: -2px;
  }

  body.qz-auth-screen { padding-bottom:0;min-height:100dvh;background:#f7f8fa; }
  body.qz-auth-screen .qz-mobile-dock,
  body.qz-auth-screen .navbar-toggler,
  body.qz-auth-screen .qz-im-root { display:none !important; }
  body.qz-auth-screen .headnav-bg { position:relative;border:0;background:transparent; }
  body.qz-auth-screen .navbar { justify-content:center; }
  body.qz-auth-screen .navbar-brand { margin:0; }
  body.qz-auth-screen .footer-band { display:block;background:transparent;color:#79838d; }
  body.qz-auth-screen .footer-band .footer { padding:8px 0 24px; }
  body.qz-auth-screen .footer-band .footer-copy { display:none; }
  body.qz-auth-screen .footer-band .footer-beian { justify-content:center;font-size:10px;opacity:.72; }
  body.qz-auth-screen .site-main > .container { width:100%;max-width:none!important;padding:0!important; }
  body.qz-auth-screen .site-main .login-container { width:100%!important;max-width:none!important;min-height:calc(100dvh - 150px);margin:0 auto;padding:28px 20px 34px;border:0!important;border-radius:24px 24px 0 0!important;background:#fff;box-shadow:none!important; }

  .footer-band { display:block;padding:0 16px;border-top:1px solid #e5e9ed;background:#f7f8fa;color:#7a8490; }
  .footer-band .footer { padding:16px 0 calc(18px + var(--qz-mobile-nav-height) + var(--qz-mobile-safe-bottom)); }
  .footer-band .footer-top { display:none; }
  .footer-band .footer-legal { display:grid;justify-items:center;gap:4px;margin:0;padding:0;border:0;color:#7a8490;font-size:11px;line-height:1.65;text-align:center; }
  .footer-band .footer-copy,.footer-band .footer-beian { display:flex;flex-wrap:wrap;justify-content:center;gap:2px 10px;color:#7a8490; }
  .footer-band .footer-copy p,.footer-band .footer-beian p { margin:0; }
  .footer-band .footer-legal a { color:#66727e;text-decoration:none; }
  .footer-band .footer-beian img { width:14px;height:14px;object-fit:contain; }
  .qz-im-launcher { display:none !important; }
  .qz-im-root { right:0 !important;bottom:calc(var(--qz-mobile-nav-height) + var(--qz-mobile-safe-bottom)) !important;left:0; }
  .qz-im-panel { position:fixed !important;inset:0 0 calc(var(--qz-mobile-nav-height) + var(--qz-mobile-safe-bottom)) 0 !important;width:100% !important;height:auto !important;max-height:none !important;margin:0 !important;border-radius:0 !important;box-shadow:none !important; }
  .qz-im-root.is-open + .qz-mobile-dock [data-section="assistant"],
  body.qz-assistant-open .qz-mobile-dock [data-section="assistant"] { color:#224fe8;background:#edf1ff; }
  body.qz-assistant-open { overflow:hidden; }

  .site-main { padding-left:0;padding-right:0; }
  input,select,textarea { scroll-margin-bottom:calc(var(--qz-mobile-nav-height) + 24px); }

  .info-page { padding:14px 14px 88px!important; }
  .info-page-hero { min-height:0!important;padding:12px 0 20px!important; }
  .info-page-hero h1 { margin:8px 0!important;font-size:1.85rem!important; }
  .info-page-hero p { display:-webkit-box;overflow:hidden;font-size:.95rem!important;line-height:1.65!important;-webkit-box-orient:vertical;-webkit-line-clamp:3; }
  .info-page-layout { gap:22px!important; }
  .info-page-content { padding:0!important; }
  .info-page-content>p,.contextbox>p { max-width:68ch;line-height:1.85!important;text-wrap:pretty; }
  .info-page-aside { grid-auto-columns:minmax(220px,78vw);grid-auto-flow:column;overflow-x:auto;scroll-snap-type:x proximity; }
  .info-page-aside>* { scroll-snap-align:start; }
  body.qz-mobile-primary .container>.contextbox { margin:0;padding:20px 4px 88px;border:0!important;box-shadow:none!important; }
  body.qz-mobile-primary .container>.contextbox h1 { font-size:1.85rem;line-height:1.25;letter-spacing:-.035em; }
  body.qz-mobile-primary .container>.contextbox p,
  body.qz-mobile-primary .container>.contextbox li { font-size:1rem;line-height:1.9;text-wrap:pretty; }

  button, [role="button"], input, select, textarea { touch-action: manipulation; }
  button:active,a:active { -webkit-tap-highlight-color:transparent; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .qz-mobile-dock a,.qz-app-toast,.qz-network-state { transition: none; }
  body.qz-app-shell.qz-page-enter .site-main,body.qz-app-shell.qz-page-enter #qzMain { animation:none; }
}
