@font-face{font-family:'APHT3';src:url('fonts/apht55.woff2') format('woff2');font-weight:400;font-display:swap;}
@font-face{font-family:'APHT3';src:url('fonts/apht85.woff2') format('woff2');font-weight:700 900;font-display:swap;}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}
  :root {
    --ink: #16324f;
    --ink-soft: #3f5a75;
    --muted: #6b839b;
    --sky-1: #4aa8f0;
    --sky-2: #8ecdf6;
    --blue: #2563eb;
    --blue-2: #38bdf8;
    --violet: #7c3aed;
    --violet-2: #a78bfa;
    --orange: #ea580c;
    --orange-2: #fb923c;
    --red: #e11d48;
    --glass: rgba(255, 255, 255, 0.72);
    --glass-strong: rgba(255, 255, 255, 0.9);
    --line: rgba(255, 255, 255, 0.7);
  }

  * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'APHT3',-apple-system, BlinkMacSystemFont, "HarmonyOS Sans SC", "MiSans", "PingFang SC", "Source Han Sans SC", "Noto Sans CJK SC", "Microsoft YaHei UI", "Microsoft YaHei", "Segoe UI", system-ui, sans-serif; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
  html, body { min-height: 100%; }
  body {
    background:
      linear-gradient(180deg, rgba(59, 143, 230, 0.42) 0%, rgba(131, 198, 245, 0.34) 34%, rgba(222, 243, 255, 0.55) 68%, rgba(245, 252, 255, 0.9) 100%),
      radial-gradient(120% 90% at 50% 0%, #d9f1ff 0%, #a9dcfa 46%, #9dd6f8 100%);
    background-color: #b9e3fb;
    color: var(--ink);
    line-height: 1.6;
    overflow-x: hidden;
    letter-spacing: 0;
  }

  .sky {
    position: fixed; inset: 0; z-index: 0; overflow: hidden; pointer-events: none;
  }
  .sky-photo {
    position: absolute; inset: 0;
    background: url('plane-sky.webp') center 30%/cover no-repeat;
    opacity: 1; mix-blend-mode: normal;
  }

  .sky-light {
    position: absolute; left: 0; width: 90px; height: 2px; border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.95), transparent);
    opacity: 0.1; animation: light-slide 14s ease-in-out infinite;
  }
  .sky-light.l1 { top: 30%; animation-delay: 0s; }
  .sky-light.l2 { top: 44%; width: 70px; animation-delay: -4.5s; opacity: 0.08; }
  .sky-light.l3 { top: 58%; width: 110px; animation-delay: -9s; opacity: 0.09; }
  @keyframes light-slide {
    0% { transform: translateX(-16vw) rotate(18deg); }
    50% { transform: translateX(52vw) rotate(-14deg); }
    100% { transform: translateX(118vw) rotate(10deg); }
  }

  .page {
    position: relative; z-index: 1;
    width: 100%; max-width: 1360px; margin: 0 auto;
    padding: 18px 4% 30px;
    display: flex; flex-direction: column; gap: 16px;
  }

  .brand-box {
    position: relative; padding: 22px 18px 42px; border-radius: 18px; text-align: center;
    background: linear-gradient(135deg, #38bdf8 0%, #2563eb 50%, #7c3aed 100%); border: 1px solid rgba(255,255,255,0.45);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.3), 0 14px 36px rgba(29,78,216,0.36);
    animation: brand-breathe 4.2s ease-in-out infinite;
  }
  .brand-title {
    display: flex; align-items: center; justify-content: flex-start; gap: 18px; max-width: 100%;
    position: relative;
    font-size: clamp(32px, 5.6vw, 52px); font-weight: 900; line-height: 1.25; color: #fff;
    text-shadow: 0 1px 2px rgba(2, 20, 63, 0.45);
  }
  .brand-title .brand-text {
    position: absolute; left: 50%; transform: translateX(-50%); white-space: nowrap;
  }
  .brand-title .logo {
    position: relative; flex: none; width: clamp(96px, 12vw, 154px); height: clamp(96px, 12vw, 154px);
    display: grid; place-items: center;
  }
  .brand-title .logo svg { width: 100%; height: 100%; display: block; }
  #globeImg {
    width: 100%; height: 100%; object-fit: cover; display: block;
    animation: globe-spin 10s linear infinite;
    transform-origin: 50% 50%;
  }
  @keyframes globe-spin {
    from { transform: perspective(700px) rotateY(0deg); }
    to { transform: perspective(700px) rotateY(360deg); }
  }
  @keyframes logo-glow {
    0%, 100% { box-shadow: 0 0 0 4px rgba(125,211,252,0.3), 0 14px 34px rgba(2, 20, 63, 0.5), 0 0 26px rgba(56,189,248,0.36); }
    50% { box-shadow: 0 0 0 6px rgba(125,211,252,0.52), 0 18px 44px rgba(37,99,235,0.6), 0 0 34px rgba(56,189,248,0.56); }
  }
  .hotline {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 8px 15px; border-radius: 999px;
    color: #fff; font-size: 12px; font-weight: 700; letter-spacing: 0.5px;
    background: linear-gradient(135deg, #f43f5e, #c81e5a);
    border: 1px solid rgba(255,255,255,0.55);
    animation: hotline-breathe 2.8s ease-in-out infinite;
  }
  .hotline .dot { width: 7px; height: 7px; border-radius: 50%; background: #fff; box-shadow: 0 0 9px #fff; animation: dot-blink 1.6s ease-in-out infinite; }
  .brand-box .hotline { position: absolute; right: 14px; bottom: 10px; }
  @keyframes dot-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.35; } }
  @keyframes brand-breathe {
    0%, 100% { box-shadow: 0 5px 0 rgba(30, 58, 138, 0.9), 0 12px 32px rgba(37,99,235,0.34); }
    50% { box-shadow: 0 5px 0 rgba(30, 58, 138, 0.9), 0 16px 40px rgba(124,58,237,0.48), 0 0 26px rgba(56,189,248,0.4); }
  }
  @keyframes hotline-breathe {
    0%, 100% { box-shadow: 0 4px 0 rgba(136, 19, 55, 0.8), 0 8px 18px rgba(244, 63, 94, 0.3); }
    50% { box-shadow: 0 4px 0 rgba(136, 19, 55, 0.8), 0 12px 28px rgba(244, 63, 94, 0.55), 0 0 18px rgba(251, 113, 133, 0.55); }
  }

  .main-buttons {
    display: grid; grid-template-columns: 1fr; gap: 10px;
    width: 100%;
  }
  .main-pill-btn {
    position: relative; overflow: hidden; isolation: isolate;
    min-height: 56px; padding: 10px 14px;
    display: flex; align-items: center; justify-content: flex-start; gap: 9px;
    color: #fff; text-align: left; cursor: pointer; user-select: none;
    border: 1px solid rgba(255,255,255,0.4); border-radius: 12px;
    transition: transform 0.22s ease, box-shadow 0.22s ease;
  }
  .main-pill-btn.blue { background: linear-gradient(135deg, #22d3ee, #2563eb); animation: breathe-blue 3.2s ease-in-out infinite; }
  .main-pill-btn.purple { background: linear-gradient(135deg, #c084fc, #7c3aed 58%, #c026d3); animation: breathe-purple 3.5s ease-in-out infinite; }
  .main-pill-btn.orange { background: linear-gradient(135deg, #fbbf24, #f97316 55%, #dc2626); animation: breathe-orange 3.8s ease-in-out infinite; }
  .main-pill-btn:hover { transform: translateY(-3px); }
  .main-pill-btn:active { transform: translateY(2px); }
  .main-pill-btn .ico { font-size: 24px; line-height: 1; flex: none; font-family: "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; }
  .main-pill-btn .num { font-size: 13.5px; font-weight: 800; white-space: nowrap; }
  .main-pill-btn .num b { font-size: 15px; }
  .main-pill-btn .desc { font-size: 12px; color: rgba(255,255,255,0.92); white-space: nowrap; }
  @keyframes breathe-blue {
    0%, 100% { box-shadow: 0 4px 0 rgba(23, 63, 157, 0.95), 0 10px 20px rgba(37,99,235,0.34); }
    50% { box-shadow: 0 4px 0 rgba(23, 63, 157, 0.95), 0 14px 30px rgba(56,189,248,0.58), 0 0 20px rgba(56,189,248,0.5); }
  }
  @keyframes breathe-purple {
    0%, 100% { box-shadow: 0 4px 0 rgba(56, 24, 126, 0.95), 0 10px 20px rgba(124,58,237,0.34); }
    50% { box-shadow: 0 4px 0 rgba(56, 24, 126, 0.95), 0 14px 30px rgba(167,139,250,0.6), 0 0 20px rgba(167,139,250,0.52); }
  }
  @keyframes breathe-orange {
    0%, 100% { box-shadow: 0 4px 0 rgba(128, 48, 8, 0.95), 0 10px 20px rgba(234,88,12,0.34); }
    50% { box-shadow: 0 4px 0 rgba(128, 48, 8, 0.95), 0 14px 30px rgba(251,146,60,0.62), 0 0 20px rgba(251,146,60,0.5); }
  }

  .tool-section {
    display: flex; align-items: center; justify-content: center; gap: 12px; flex-wrap: wrap;
  }
  .tool-pill {
    position: relative; overflow: hidden; flex: 1 1 220px; max-width: 300px;
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    min-height: 54px; padding: 10px 20px; border-radius: 14px;
    color: #fff; font-size: 15px; font-weight: 800; cursor: pointer; user-select: none;
    border: 1px solid rgba(255,255,255,0.55);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .tool-pill:hover { transform: translateY(-2px); }
  .tool-pill .ico, .participate-btn .ico { font-size: 30px; line-height: 1; flex: none; font-family: "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; }
  .tool-pill:active { transform: translateY(2px); }
  .panel-link {
    position: relative; overflow: hidden;
    display: inline-flex; align-items: center; justify-content: center; gap: 7px;
    min-height: 36px; padding: 6px 14px; border-radius: 999px;
    color: #fff; font-size: 12px; font-weight: 700; cursor: pointer; user-select: none;
    border: 1px solid rgba(255,255,255,0.42);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .panel-link:hover { transform: translateY(-2px); }
  .panel-link:active { transform: translateY(2px); }
  .tool-pill.cyan { background: linear-gradient(135deg, #22d3ee, #0ea5e9 45%, #2563eb); animation: breathe-tool-cyan 3.2s ease-in-out infinite; }
  .tool-pill.red { background: linear-gradient(135deg, #fb7185, #e11d48 55%, #be123c); animation: breathe-tool-red 3.5s ease-in-out infinite; }
  .tool-pill.amber { background: linear-gradient(135deg, #fde047, #f97316 55%, #dc2626); animation: breathe-tool-amber 3.8s ease-in-out infinite; }
  @keyframes breathe-tool-cyan {
    0%, 100% { box-shadow: 0 3px 0 rgba(21, 74, 148, 0.9), 0 7px 16px rgba(14,165,233,0.3); }
    50% { box-shadow: 0 3px 0 rgba(21, 74, 148, 0.9), 0 10px 24px rgba(56,189,248,0.55), 0 0 14px rgba(56,189,248,0.42); }
  }
  @keyframes breathe-tool-red {
    0%, 100% { box-shadow: 0 3px 0 rgba(132, 18, 60, 0.9), 0 7px 16px rgba(225,29,72,0.3); }
    50% { box-shadow: 0 3px 0 rgba(132, 18, 60, 0.9), 0 10px 24px rgba(251,113,133,0.55), 0 0 14px rgba(251,113,133,0.42); }
  }
  @keyframes breathe-tool-amber {
    0%, 100% { box-shadow: 0 3px 0 rgba(130, 65, 8, 0.9), 0 7px 16px rgba(249,115,22,0.3); }
    50% { box-shadow: 0 3px 0 rgba(130, 65, 8, 0.9), 0 10px 24px rgba(251,191,36,0.55), 0 0 14px rgba(251,191,36,0.42); }
  }
  .tool-pill.blue { background: linear-gradient(135deg, #60a5fa, #2563eb 50%, #1e40af); animation: breathe-tool-blue 3.3s ease-in-out infinite; }
  .tool-pill.green { background: linear-gradient(135deg, #34d399, #059669 50%, #065f46); animation: breathe-tool-green 3.6s ease-in-out infinite; }
  .tool-pill.violet { background: linear-gradient(135deg, #a78bfa, #7c3aed 50%, #6d28d9); animation: breathe-tool-violet 3.9s ease-in-out infinite; }
  @keyframes breathe-tool-blue {
    0%, 100% { box-shadow: 0 3px 0 rgba(23, 63, 157, 0.9), 0 7px 16px rgba(37,99,235,0.3); }
    50% { box-shadow: 0 3px 0 rgba(23, 63, 157, 0.9), 0 10px 24px rgba(96,165,250,0.55), 0 0 14px rgba(96,165,250,0.42); }
  }
  @keyframes breathe-tool-green {
    0%, 100% { box-shadow: 0 3px 0 rgba(6, 78, 59, 0.9), 0 7px 16px rgba(5,150,105,0.3); }
    50% { box-shadow: 0 3px 0 rgba(6, 78, 59, 0.9), 0 10px 24px rgba(52,211,153,0.55), 0 0 14px rgba(52,211,153,0.42); }
  }
  @keyframes breathe-tool-violet {
    0%, 100% { box-shadow: 0 3px 0 rgba(76, 29, 149, 0.9), 0 7px 16px rgba(124,58,237,0.3); }
    50% { box-shadow: 0 3px 0 rgba(76, 29, 149, 0.9), 0 10px 24px rgba(167,139,250,0.55), 0 0 14px rgba(167,139,250,0.42); }
  }
  .step-list { list-style: none; counter-reset: step; }
  .step-list li { counter-increment: step; position: relative; padding: 11px 0 11px 42px; border-bottom: 1px dashed rgba(37,99,235,0.18); font-size: 14px; }
  .step-list li:last-child { border-bottom: none; }
  .step-list li::before { content: counter(step); position: absolute; left: 0; top: 11px; width: 26px; height: 26px; border-radius: 50%; background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff; display: grid; place-items: center; font-size: 13px; font-weight: 800; }
  .tool-modal h5 { font-size: 14px; font-weight: 800; color: var(--blue); margin: 16px 0 2px; }
  .fx-box { background: rgba(255,255,255,0.85); border: 1px solid rgba(37,99,235,0.18); border-radius: 12px; padding: 14px; margin-top: 4px; }
  .fx-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  .fx-input { width: 110px; padding: 9px 12px; border-radius: 10px; border: 1px solid rgba(37,99,235,0.25); font-size: 15px; font-weight: 700; outline: none; }
  .fx-select { padding: 9px 10px; border-radius: 10px; border: 1px solid rgba(37,99,235,0.25); font-size: 13px; background: #fff; outline: none; }
  .fx-arrow { font-size: 18px; color: var(--blue); font-weight: 800; }
  .fx-result { margin-top: 12px; padding: 11px 14px; border-radius: 10px; background: linear-gradient(135deg, #eff6ff, #dbeafe); font-size: 16px; font-weight: 800; color: #1d4ed8; }
  .tz-table { width: 100%; border-collapse: collapse; font-size: 13px; }
  .tz-table th { text-align: left; padding: 8px 10px; color: var(--muted); border-bottom: 1px solid rgba(37,99,235,0.25); }
  .tz-table td { padding: 8px 10px; border-bottom: 1px dashed rgba(37,99,235,0.16); }
  .tz-clock { font-weight: 800; color: var(--blue); font-variant-numeric: tabular-nums; }
  .tz-diff { color: var(--ink-soft); }
  .phrase-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .phrase-item { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 12px; border-radius: 10px; background: rgba(255,255,255,0.82); border: 1px solid rgba(37,99,235,0.16); font-size: 13px; }
  .phrase-en { color: var(--ink-soft); }
  .phrase-copy { flex: none; font-size: 12px; padding: 3px 11px; border: none; border-radius: 999px; background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff; font-weight: 700; cursor: pointer; }
  .mini-table { width: 100%; border-collapse: collapse; font-size: 13px; }
  .mini-table th { text-align: left; padding: 8px 10px; color: var(--muted); border-bottom: 1px solid rgba(37,99,235,0.25); }
  .mini-table td { padding: 8px 10px; border-bottom: 1px dashed rgba(37,99,235,0.16); }
  @media (max-width: 600px) { .phrase-grid { grid-template-columns: 1fr; } }

  .content-section {
    display: flex; flex-direction: column; gap: 12px;
  }
  .panel-head {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    padding: 0 2px;
  }
  .panel-head .title {
    font-size: 15px; font-weight: 800; color: var(--ink);
    display: inline-flex; align-items: center; gap: 8px;
  }
  .panel-head .title .tag { font-size: 11px; font-weight: 700; color: var(--blue); background: rgba(56,189,248,0.16); border: 1px solid rgba(56,189,248,0.3); padding: 2px 8px; border-radius: 999px; }
  .panel-head .actions { display: flex; align-items: center; gap: 9px; }
  .panel-link { min-height: 32px; padding: 5px 13px; font-size: 12px; }
  .panel-link.ghost {
    color: var(--ink-soft); background: linear-gradient(135deg, rgba(222,241,253,0.95), rgba(235,248,255,0.92)); backdrop-filter: blur(10px);
    border: 1px solid rgba(37,99,235,0.24); box-shadow: 0 4px 12px rgba(37,99,235,0.1);
    animation: none;
  }
  .panel-link.ghost:hover { color: var(--blue); border-color: rgba(37,99,235,0.45); }
  .search-input {
    flex: 1 1 220px; max-width: 300px; min-width: 0; min-height: 34px; padding: 6px 15px;
    border-radius: 999px; border: 1px solid rgba(37,99,235,0.24); outline: none;
    color: var(--ink); font-size: 13px; font-weight: 600; background: rgba(255,255,255,0.94);
    box-shadow: 0 4px 12px rgba(37,99,235,0.1); transition: border-color 0.2s ease, box-shadow 0.2s ease;
  }
  .search-input::placeholder { color: var(--muted); }
  .search-input:focus { border-color: rgba(56,189,248,0.7); box-shadow: 0 6px 18px rgba(37,99,235,0.18); }
  #backHome { display: none; }

  .content-panel {
    position: relative; overflow: hidden;
    min-height: 920px; padding: 24px;
    display: flex; align-items: center; justify-content: center;
    background: url('hero-aerial.webp') center 34%/cover no-repeat;
    background-color: #2d7fd1;
    border: 1px solid rgba(148, 197, 235, 0.55); border-radius: 18px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 14px 36px rgba(30, 86, 148, 0.16);
  }
  .home-view {
    width: 100%; min-height: 100%;
    display: flex; align-items: center; justify-content: center;
  }
  .content-panel::before {
    content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: linear-gradient(180deg, rgba(8, 30, 68, 0.22) 0%, rgba(8, 30, 68, 0.05) 30%, rgba(8, 30, 68, 0.12) 66%, rgba(8, 30, 68, 0.52) 100%);
  }
  .content-panel > * { position: relative; z-index: 1; }
  .news-grid {
    display: grid; grid-template-columns: 1fr; gap: 14px; width: 100%;
  }
  .news-main { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 14px; min-width: 0; }
  .news-feature {
    position: relative; overflow: hidden; min-height: 560px; border-radius: 14px; color: #fff;
    background: linear-gradient(160deg, #0ea5e9, #2563eb 58%, #4f46e5);
    box-shadow: 0 14px 30px rgba(37,99,235,0.3); display: flex; flex-direction: column; justify-content: flex-end; padding: 18px;
  }
  .news-feature::before {
    content: ''; position: absolute; inset: 0; opacity: 0.45;
    background: url('hero-aerial.webp') center/cover no-repeat;
  }
  .news-feature > * { position: relative; }
  .news-feature .nf-tag {
    position: absolute; top: 14px; left: 14px; z-index: 2; font-size: 11px; font-weight: 800;
    padding: 4px 10px; border-radius: 999px; background: rgba(255,255,255,0.22); border: 1px solid rgba(255,255,255,0.4); backdrop-filter: blur(6px);
  }
  .news-feature h3 { font-size: 19px; font-weight: 800; line-height: 1.35; margin-bottom: 5px; text-shadow: 0 2px 8px rgba(0,0,0,0.25); }
  .news-feature p { font-size: 13px; color: rgba(255,255,255,0.92); max-width: 480px; }
  .news-feature .nf-meta { margin-top: 10px; font-size: 12px; color: rgba(255,255,255,0.85); }
  .news-list { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
  .news-block-title {
    display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 800; color: var(--ink); margin-bottom: 2px;
  }
  .news-block-title .dot {
    width: 8px; height: 8px; border-radius: 50%; background: linear-gradient(135deg, #f43f5e, #f97316); box-shadow: 0 0 10px rgba(244,63,94,0.6);
  }
  .news-item {
    display: flex; align-items: center; gap: 11px; padding: 10px 12px; border-radius: 11px;
    background: linear-gradient(135deg, #f4faff 0%, #e6f3fd 100%); border: 1px solid rgba(37,99,235,0.16);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  }
  .news-item:hover { transform: translateX(3px); border-color: rgba(56,189,248,0.55); box-shadow: 0 8px 18px rgba(37,99,235,0.14); }
  .news-item .ni-tag {
    flex: none; font-size: 10px; font-weight: 800; padding: 3px 8px; border-radius: 999px; color: #fff;
    background: linear-gradient(135deg, #f43f5e, #e11d48);
  }
  .news-item .ni-tag.green { background: linear-gradient(135deg, #10b981, #0d9488); }
  .news-item .ni-tag.amber { background: linear-gradient(135deg, #f59e0b, #f97316); }
  .news-item .ni-title { flex: 1; min-width: 0; font-size: 13px; font-weight: 700; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .news-item .ni-meta { flex: none; font-size: 11px; color: var(--muted); }
  .notice-row {
    display: flex; align-items: center; gap: 12px;
    padding: 11px 14px; border-radius: 10px;
    background: linear-gradient(135deg, #eef8ff 0%, #dff0fe 100%); border: 1px solid rgba(37,99,235,0.18);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  }
  .notice-row:hover { transform: translateX(3px); border-color: rgba(56,189,248,0.45); box-shadow: 0 8px 18px rgba(37,99,235,0.12); }
  .notice-tag {
    flex: none; font-size: 11px; font-weight: 800; padding: 3px 9px;
    border-radius: 999px; color: #075985; background: #bae6fd;
  }
  .notice-tag.green { color: #065f46; background: #a7f3d0; }
  .notice-tag.amber { color: #92400e; background: #fde68a; }
  .notice-title { font-size: 14px; font-weight: 700; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .notice-meta { flex: none; font-size: 12px; color: var(--muted); }
  .notice-arrow { flex: none; color: var(--blue); font-weight: 800; }

  .country-grid {
    display: none; width: 100%;
    grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 10px; align-content: flex-start;
    animation: fade-in-up 0.35s ease-out;
  }
  @keyframes fade-in-up { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
  .country-tag {
    position: relative; overflow: hidden;
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px;
    min-height: 100px; padding: 14px 10px; border-radius: 18px; text-align: center;
    background: linear-gradient(135deg, #f7fbff 0%, #e6f3fd 100%); border: 1px solid rgba(37,99,235,0.2);
    font-size: 15px; font-weight: 700; line-height: 1.25; cursor: pointer; color: var(--ink);
    box-shadow: 0 6px 16px rgba(37,99,235,0.12);
    transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  }
  .country-tag:hover {
    transform: translateY(-3px); border-color: transparent;
    background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff;
    box-shadow: 0 10px 22px rgba(37,99,235,0.4);
  }
  .country-tag .fi { width: 56px; height: 40px; border-radius: 6px; box-shadow: 0 2px 8px rgba(37,99,235,0.22), 0 0 0 1px rgba(37,99,235,0.2); }
  .no-result { display: none; width: 100%; padding: 42px 0; text-align: center; color: var(--muted); font-size: 14px; }
  .participate-section {
    display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 12px;
    width: 100%; padding: 18px 24px; border-radius: 16px;
    background: linear-gradient(135deg, rgba(8, 34, 74, 0.34) 0%, rgba(8, 34, 74, 0.18) 100%);
    backdrop-filter: blur(12px) saturate(160%);
    border: 1px solid rgba(255,255,255,0.42);
    box-shadow: 0 12px 34px rgba(8, 30, 68, 0.22);
    animation: participate-float 5s ease-in-out infinite;
  }
  .participate-title { display: inline-flex; align-items: center; gap: 9px; font-size: 16px; font-weight: 800; color: #fff; text-shadow: 0 2px 8px rgba(8, 30, 68, 0.45); }
  .participate-title .dot { width: 9px; height: 9px; border-radius: 50%; background: linear-gradient(135deg, #f43f5e, #f97316); box-shadow: 0 0 10px rgba(244,63,94,0.6); }
  .participate-actions { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
  .participate-btn {
    display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 7px 16px;
    border-radius: 999px; border: 1px solid rgba(255,255,255,0.5); color: #fff; font-size: 13px; font-weight: 800;
    cursor: pointer; user-select: none; transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .participate-btn.pink { background: linear-gradient(135deg, #fb7185, #e11d48); box-shadow: 0 3px 0 #881337, 0 8px 18px rgba(225,29,72,0.3); }
  .participate-btn.violet { background: linear-gradient(135deg, #a78bfa, #7c3aed); box-shadow: 0 3px 0 #4c1d95, 0 8px 18px rgba(124,58,237,0.3); }
  .participate-btn.cyan { background: linear-gradient(135deg, #38bdf8, #2563eb); box-shadow: 0 3px 0 #1e3a8a, 0 8px 18px rgba(37,99,235,0.3); }
  .participate-btn:hover { transform: translateY(-2px); }
  .participate-btn:active { transform: translateY(2px); }
  footer {
    text-align: center; padding: 14px 4% 10px; margin-top: 6px; line-height: 1.9;
    font-size: 12px; color: var(--ink-soft); border-top: 1px dashed rgba(37,99,235,0.18);
  }
  footer a { color: var(--blue); text-decoration: none; }
  #copyToast {
    position: fixed; left: 50%; bottom: calc(120px + env(safe-area-inset-bottom));
    transform: translateX(-50%); background: rgba(15,23,42,0.92); color: #fff;
    font-size: 12.5px; padding: 8px 16px; border-radius: 999px; white-space: nowrap;
    z-index: 1200; opacity: 0; transition: opacity .18s; pointer-events: none;
  }
  #copyToast.on { opacity: 1; }

  .modal-mask {
    position: fixed; inset: 0; z-index: 200;
    display: none; align-items: center; justify-content: center;
    background: rgba(9, 45, 84, 0.42); backdrop-filter: blur(8px);
  }
  .modal-mask.show { display: flex; animation: mask-in 0.22s ease-out; }
  @keyframes mask-in { from { opacity: 0; } to { opacity: 1; } }
  .modal-card {
    width: 520px; max-width: 92%; max-height: 84vh; overflow-y: auto;
    position: relative; padding: 26px;
    background: linear-gradient(160deg, #e9f6ff 0%, #f6fbff 100%); border: 1px solid rgba(148,197,235,0.55);
    border-radius: 16px; color: var(--ink);
    box-shadow: 0 24px 60px rgba(9, 45, 84, 0.28);
    animation: card-in 0.28s ease-out;
  }
  @keyframes card-in { from { opacity: 0; transform: translateY(18px) scale(0.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
  .modal-close {     position: absolute; top: 16px; right: 16px; width: 34px; height: 34px;     display: grid; place-items: center; font-size: 20px; font-weight: 700; color: #b91c1c; cursor: pointer;     background: #ffffff; border: 1px solid rgba(220,38,38,0.45); border-radius: 50%;     box-shadow: 0 2px 10px rgba(9,45,84,0.20); transition: transform 0.15s ease;   }
  .modal-close:hover { background: rgba(37,99,235,0.1); color: var(--blue); }
  #countryModal > .modal-card, #toolModal > .modal-card, #bottomModal > .modal-card { padding-top: 62px; }
  .modal-back {     position: absolute; top: 14px; left: 14px; z-index: 5;     display: inline-flex; align-items: center; gap: 3px;     min-width: 40px; min-height: 30px; padding: 2px 11px;     font-size: 16px; font-weight: 700; line-height: 1; color: #2563eb;     background: rgba(37,99,235,0.10); border: 1px solid rgba(37,99,235,0.30);     border-radius: 999px; cursor: pointer; user-select: none;   }
  .modal-header { display: flex; align-items: center; gap: 13px; padding-bottom: 14px; border-bottom: 1px solid rgba(37,99,235,0.15); margin-bottom: 18px; }
  .modal-header .fi { width: 40px; height: 30px; border-radius: 4px; box-shadow: 0 2px 8px rgba(37,99,235,0.2), 0 0 0 1px rgba(37,99,235,0.18); }
  .modal-header h3 { font-size: 21px; font-weight: 800; }
  .modal-header .modal-flag-name { font-size: 12px; color: var(--muted); }
  .info-row { display: flex; gap: 12px; margin-bottom: 14px; font-size: 14px; }
  .info-label { min-width: 80px; color: var(--muted); flex: none; }
  .info-value { font-weight: 600; }
  .info-value.highlight { color: var(--blue); font-size: 16px; font-weight: 800; }
  .modal-footer { margin-top: 18px; padding-top: 13px; border-top: 1px solid rgba(37,99,235,0.15); font-size: 12px; color: var(--muted); }

  .share-modal { width: 560px; }
  .share-modal h4 { font-size: 18px; font-weight: 800; margin-bottom: 14px; }
  .share-form { display: flex; flex-direction: column; gap: 12px; }
  .share-input, .share-textarea {
    width: 100%; padding: 11px 14px; border-radius: 12px; outline: none;
    border: 1px solid rgba(37,99,235,0.22); color: var(--ink); font-size: 14px;
    background: rgba(255,255,255,0.94); box-shadow: 0 4px 12px rgba(37,99,235,0.08);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
  }
  .share-input:focus, .share-textarea:focus { border-color: rgba(56,189,248,0.7); box-shadow: 0 6px 18px rgba(37,99,235,0.16); }
  .share-textarea { min-height: 140px; resize: vertical; }
  .share-form-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  .share-submit {
    min-height: 40px; padding: 0 24px; border: none; border-radius: 999px;
    color: #fff; font-size: 14px; font-weight: 800; cursor: pointer;
    background: linear-gradient(135deg, #f43f5e, #e11d48); box-shadow: 0 3px 0 #881337, 0 8px 18px rgba(225,29,72,0.28);
  }
  .share-submit:hover { transform: translateY(-2px); }
  .share-success { display: none; font-size: 13px; font-weight: 700; color: #047857; }
  .share-records { margin-top: 18px; padding-top: 14px; border-top: 1px solid rgba(37,99,235,0.15); }
  .share-records-title { font-size: 14px; font-weight: 800; color: var(--ink); margin-bottom: 10px; }
  .share-empty { padding: 22px 0; text-align: center; font-size: 13px; color: var(--muted); }
  .share-card { padding: 12px 14px; border-radius: 12px; margin-bottom: 10px; background: linear-gradient(135deg, #f4faff, #e6f3fd); border: 1px solid rgba(37,99,235,0.16); }
  .share-card-title { font-size: 14px; font-weight: 800; color: var(--ink); margin-bottom: 4px; }
  .share-card-text { font-size: 13px; color: var(--ink-soft); line-height: 1.7; }

  .tool-modal { width: 620px; }
  .tool-modal h4 { font-size: 18px; font-weight: 800; margin-bottom: 14px; }
  .tool-list { list-style: none; }
  .tool-list li { padding: 10px 0; border-bottom: 1px dashed rgba(37,99,235,0.18); font-size: 14px; }
  .tool-list li:last-child { border-bottom: none; }
  .tool-list strong { color: var(--blue); }
  .tip-box { margin-top: 14px; padding: 12px 15px; border-radius: 10px; font-size: 13px; }
  .tip-box.blue { background: #eff6ff; border-left: 3px solid #3b82f6; color: #1d4ed8; }
  .tip-box.red { background: #fff1f2; border-left: 3px solid #e11d48; color: #be123c; }
  .tip-box.amber { background: #fffbeb; border-left: 3px solid #f59e0b; color: #b45309; }
  .official-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
  .official-link {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 10px 15px; border-radius: 12px; text-decoration: none;
    color: #fff; font-size: 13px; font-weight: 800; line-height: 1.4;
    border: 1px solid rgba(255,255,255,0.5);
    box-shadow: 0 3px 0 rgba(15, 23, 42, 0.18);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .official-link:hover { transform: translateY(-2px); box-shadow: 0 5px 0 rgba(15, 23, 42, 0.2), 0 8px 18px rgba(2, 20, 63, 0.25); }
  .official-link.blue { background: linear-gradient(135deg, #38bdf8, #2563eb); }
  .official-link.red { background: linear-gradient(135deg, #fb7185, #e11d48); }
  .official-link.violet { background: linear-gradient(135deg, #a78bfa, #7c3aed); }
  .official-link.green { background: linear-gradient(135deg, #34d399, #059669); }
  .official-link.orange { background: linear-gradient(135deg, #fbbf24, #f97316); }
  .copy-btn {
    margin-top: 16px; float: right; padding: 7px 16px;
    background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff;
    border: none; border-radius: 999px; font-size: 12px; font-weight: 700; cursor: pointer;
    box-shadow: 0 3px 0 #1d4ed8, 0 7px 16px rgba(37,99,235,0.35);
    transition: transform 0.2s ease;
  }
  .copy-btn:hover { transform: translateY(-2px); }
  .copy-btn:active { transform: translateY(2px); }
  .ripple {
    position: absolute; border-radius: 50%; pointer-events: none; z-index: 2;
    background: radial-gradient(circle, rgba(255,255,255,0.85) 0%, rgba(255,255,255,0) 70%);
    transform: scale(0); animation: ripple-pop 0.55s ease-out forwards;
  }
  @keyframes ripple-pop {
    to { transform: scale(3.2); opacity: 0; }
  }

  @media (max-width: 768px) {
    .page { padding: 12px 4% 22px; gap: 12px; }
    .news-grid { grid-template-columns: 1fr; }
    .news-feature { min-height: 220px; }
    .brand-box { padding: 16px 12px 38px; }
    .brand-title { font-size: clamp(23px, 6.6vw, 29px); gap: 8px; justify-content: center; }
    .brand-title .brand-text { position: static; transform: none; }
    .brand-title .logo { width: 82px; height: 82px; }
    .brand-box .hotline { right: 8px; bottom: 8px; font-size: 10px; padding: 6px 10px; }
    .main-buttons { grid-template-columns: 1fr; gap: 10px; }
    .main-pill-btn { min-height: 48px; padding: 7px 14px; }
    .main-pill-btn .num { font-size: 13.5px; }
    .main-pill-btn .num b { font-size: 15px; }
    .main-pill-btn .desc { font-size: 12px; }
    .content-panel { padding: 16px; min-height: 640px; }
    .participate-section { width: 100%; padding: 18px 14px; }
    .participate-actions { flex-direction: column; width: 100%; }
    .participate-btn { justify-content: center; width: 100%; }
    .panel-head { flex-direction: column; align-items: flex-start; }
    .panel-head .actions { width: 100%; flex-wrap: wrap; }
    .notice-row { flex-wrap: wrap; }
    .notice-title { white-space: normal; }
    .notice-meta { width: 100%; }
    .tool-pill { flex: 1 1 100%; }
    .news-main { grid-template-columns: 1fr; }
  }

  @keyframes participate-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
  }
  a.hotline { text-decoration: none; cursor: pointer; }

  .info-banner {
    position: relative; overflow: hidden; border-radius: 18px; height: 200px; margin-bottom: 14px;
    display: flex; align-items: flex-end;
    background-color: #2d7fd1;
    border: 1px solid rgba(255,255,255,0.55);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.35), 0 14px 32px rgba(29,78,216,0.22);
  }
  .info-banner-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 36%; display: block; }
  .info-banner::before {
    content: ''; position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(180deg, rgba(8,30,68,0.05) 0%, rgba(8,30,68,0.16) 55%, rgba(8,30,68,0.62) 100%);
  }
  .info-banner-text { position: relative; z-index: 2; padding: 16px 22px 18px; color: #fff; }
  .info-banner-tag {
    display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: 1px; color: #dff1ff;
    background: rgba(255,255,255,0.18); border: 1px solid rgba(255,255,255,0.35);
    padding: 3px 10px; border-radius: 999px; margin-bottom: 8px; backdrop-filter: blur(6px);
  }
  .info-banner-title { font-size: 27px; font-weight: 900; line-height: 1.2; text-shadow: 0 2px 10px rgba(2,20,63,0.45); }
  .info-banner-sub { font-size: 13px; color: rgba(255,255,255,0.94); margin-top: 4px; text-shadow: 0 1px 6px rgba(2,20,63,0.4); }
  @media (max-width: 600px) {
    .info-banner { height: 150px; }
    .info-banner-title { font-size: 21px; }
    .info-banner-sub { font-size: 12px; }
  }
  
  /* ===== 资讯首页内容块 v2（彩色动感版） ===== */
  .info-home { width: 100%; display: flex; flex-direction: column; gap: 14px; }
  .info-block-title { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 800; color: #fff; text-shadow: 0 1px 4px rgba(15,60,120,0.35); }
  .info-block-sub { font-size: 11px; font-weight: 600; color: rgba(255,255,255,0.88); }
  .info-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
  .info-dot.cyan { background: #22d3ee; box-shadow: 0 0 8px rgba(34,211,238,0.7); }
  .info-dot.orange { background: #fb923c; box-shadow: 0 0 8px rgba(251,146,60,0.7); }
  .info-dot.pink { background: #f472b6; box-shadow: 0 0 8px rgba(244,114,182,0.7); }
  .reminder-bar { position: relative; overflow: hidden; display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 14px; background: linear-gradient(135deg, #0ea5e9, #2563eb); border: 1px solid rgba(255,255,255,0.5); color: #fff; box-shadow: 0 10px 24px rgba(30,80,160,0.25); animation: fade-in-up 0.45s ease-out both; }
  .reminder-bar::after { content: ''; position: absolute; top: 0; bottom: 0; width: 60px; background: linear-gradient(105deg, transparent, rgba(255,255,255,0.35), transparent); animation: bar-shine 3.2s ease-in-out infinite; }
  @keyframes bar-shine { 0% { left: -80px; } 60%, 100% { left: 110%; } }
  .reminder-ico { font-size: 22px; flex-shrink: 0; }
  .reminder-text { display: flex; flex-direction: column; gap: 2px; font-size: 12px; line-height: 1.5; }
  .reminder-text b { font-size: 14px; }
  .dest-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .dest-card { position: relative; overflow: hidden; display: flex; align-items: center; gap: 10px; padding: 13px 14px; border-radius: 14px; color: #fff; cursor: pointer; border: 1px solid rgba(255,255,255,0.55); box-shadow: 0 8px 20px rgba(20,70,130,0.18); transition: transform 0.22s ease, box-shadow 0.22s ease; animation: fade-in-up 0.45s ease-out both; animation-delay: calc(var(--i, 0) * 60ms); }
  .dest-card:hover { transform: translateY(-3px) scale(1.02); box-shadow: 0 14px 28px rgba(20,70,130,0.28); }
  .dest-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,0.28) 50%, transparent 60%); transform: translateX(-120%); transition: transform 0.6s ease; pointer-events: none; }
  .dest-card:hover::after { transform: translateX(120%); }
  .dest-card.d-cyan { background: linear-gradient(135deg, #22d3ee, #0ea5e9 45%, #2563eb); }
  .dest-card.d-red { background: linear-gradient(135deg, #fb7185, #e11d48 55%, #be123c); }
  .dest-card.d-amber { background: linear-gradient(135deg, #fbbf24, #f97316 55%, #dc2626); }
  .dest-card.d-blue { background: linear-gradient(135deg, #60a5fa, #2563eb 50%, #1e40af); }
  .dest-card.d-green { background: linear-gradient(135deg, #34d399, #059669 50%, #065f46); }
  .dest-card.d-violet { background: linear-gradient(135deg, #a78bfa, #7c3aed 50%, #6d28d9); }
  .dest-flag { font-size: 0; width: 40px; height: 30px; border-radius: 5px; box-shadow: 0 2px 8px rgba(0,0,0,0.3); background-color: rgba(255,255,255,0.22); flex-shrink: 0; }
  .dest-info { flex: 1; min-width: 0; }
  .dest-name { font-size: 14.5px; font-weight: 800; color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,0.25); }
  .dest-meta { font-size: 11px; color: rgba(255,255,255,0.92); margin-top: 2px; }
  .dest-arrow { color: rgba(255,255,255,0.95); font-size: 18px; font-weight: 800; transition: transform 0.2s ease; }
  .dest-card:hover .dest-arrow { transform: translateX(3px); }
  .quick-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
  .quick-item { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 11px 10px; border-radius: 12px; color: #fff; font-size: 12.5px; font-weight: 700; border: 1px solid rgba(255,255,255,0.5); box-shadow: 0 6px 16px rgba(20,70,130,0.16); cursor: pointer; transition: transform 0.22s ease, box-shadow 0.22s ease; animation: fade-in-up 0.45s ease-out both; animation-delay: calc(var(--i, 0) * 50ms); }
  .quick-item:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(20,70,130,0.24); }
  .quick-item.q-cyan { background: linear-gradient(135deg, #22d3ee, #0ea5e9 45%, #2563eb); }
  .quick-item.q-red { background: linear-gradient(135deg, #fb7185, #e11d48 55%, #be123c); }
  .quick-item.q-amber { background: linear-gradient(135deg, #fbbf24, #f97316 55%, #dc2626); }
  .quick-item.q-blue { background: linear-gradient(135deg, #60a5fa, #2563eb 50%, #1e40af); }
  .quick-item.q-green { background: linear-gradient(135deg, #34d399, #059669 50%, #065f46); }
  .quick-item.q-violet { background: linear-gradient(135deg, #a78bfa, #7c3aed 50%, #6d28d9); }
  .q-ico { font-size: 17px; }
  .share-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .share-card { display: flex; gap: 10px; padding: 12px 14px; border-radius: 14px; box-shadow: 0 8px 20px rgba(20,70,130,0.14); transition: transform 0.22s ease, box-shadow 0.22s ease; animation: fade-in-up 0.45s ease-out both; animation-delay: calc(var(--i, 0) * 70ms); }
  .share-card:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(20,70,130,0.22); }
  .share-card.s-pink { background: linear-gradient(135deg, rgba(255,241,246,0.97), rgba(255,228,240,0.95)); border: 1px solid rgba(244,114,182,0.35); }
  .share-card.s-cyan { background: linear-gradient(135deg, rgba(236,254,255,0.97), rgba(224,247,255,0.95)); border: 1px solid rgba(34,211,238,0.35); }
  .share-card.s-amber { background: linear-gradient(135deg, rgba(255,251,235,0.97), rgba(255,244,220,0.95)); border: 1px solid rgba(251,146,60,0.35); }
  .share-avatar { width: 34px; height: 34px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 15px; flex-shrink: 0; color: #fff; }
  .share-avatar.a-pink { background: linear-gradient(135deg, #f472b6, #db2777); }
  .share-avatar.a-cyan { background: linear-gradient(135deg, #22d3ee, #0284c7); }
  .share-avatar.a-amber { background: linear-gradient(135deg, #fbbf24, #ea580c); }
  .share-body { font-size: 12px; color: #475569; line-height: 1.55; }
  .share-body b { display: block; font-size: 13px; color: var(--ink); margin-bottom: 3px; }
  @media (max-width: 640px) { .dest-grid, .share-grid { grid-template-columns: repeat(2, 1fr); } .quick-grid { grid-template-columns: repeat(2, 1fr); } }

  .fx-swap { width: 38px; height: 38px; border: none; border-radius: 50%; cursor: pointer; color: #fff; font-size: 18px; font-weight: 800; background: linear-gradient(135deg, #22d3ee, #2563eb); box-shadow: 0 4px 12px rgba(37,99,235,0.3); transition: transform 0.2s ease, box-shadow 0.2s ease; flex-shrink: 0; }
  .fx-swap:hover { transform: rotate(180deg); box-shadow: 0 6px 16px rgba(37,99,235,0.4); }
  .fx-rate-note { margin-top: 8px; font-size: 12px; color: #64748b; }

  .tz-date { font-size: 12px; color: var(--muted); margin-bottom: 2px; }

  /* ===== App 版外壳 ===== */
  .app { max-width: 480px; margin: 0 auto; min-height: 100vh; position: relative; padding-bottom: 24px; }
  @media (min-width: 640px) { .app { box-shadow: 0 0 50px rgba(20,70,130,0.2); } }
  .app-logo { width: 44px; height: 44px; border-radius: 50%; overflow: hidden; background: rgba(255,255,255,0.25); flex: none; }
  .app-logo img { width: 100%; height: 100%; object-fit: cover; }
  .app-note { text-align: center; font-size: 11px; color: #64748b; padding: 8px 12px 0; line-height: 1.5; }
  .app-header { position: sticky; top: 0; z-index: 25; display: flex; align-items: center; gap: 10px; padding: calc(10px + env(safe-area-inset-top)) 14px 10px; background: linear-gradient(135deg, #38bdf8, #2563eb 55%, #7c3aed); color: #fff; border-bottom: 1px solid rgba(255,255,255,0.35); box-shadow: 0 6px 18px rgba(29,78,216,0.25); }

  .app-header b { font-size: 16px; font-weight: 800; display: block; line-height: 1.3; }
  .app-header small { font-size: 10.5px; opacity: 0.92; }
  .tab-panel { display: none; padding: 12px 14px 24px; }
  .tab-panel.active { display: block; animation: fade-in-up 0.25s ease-out; }

  .app-hero { position: relative; display: flex; align-items: center; justify-content: center; gap: 10px; padding: 15px 14px; border-radius: 16px; background: linear-gradient(135deg, #38bdf8, #2563eb 55%, #7c3aed); color: #fff; box-shadow: 0 10px 24px rgba(29,78,216,0.28); overflow: hidden; }
  .app-hero::after { content: ''; position: absolute; top: -40px; right: -30px; width: 120px; height: 120px; border-radius: 50%; background: rgba(255,255,255,0.14); }
  .app-hero-text b { font-size: 16px; display: block; }
  .app-hero-text span { font-size: 11px; opacity: 0.92; }
  .app-hero .hotline { position: static; margin-left: auto; flex: none; font-size: 11px; padding: 7px 12px; }
  .search-input { width: 100%; margin: 12px 0 10px; padding: 11px 14px; border-radius: 12px; border: 1px solid rgba(37,99,235,0.25); font-size: 14px; outline: none; background: rgba(255,255,255,0.96); }
  .panel-title { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 800; color: var(--ink); margin: 6px 0 12px; }
  .app .main-buttons { grid-template-columns: 1fr; gap: 8px; }
  .app .main-pill-btn { min-height: 62px; padding: 8px 4px; flex-direction: column; text-align: center; gap: 2px; }
  .app .main-pill-btn .desc { font-size: 9.5px; }
  .app .tool-section { gap: 9px; }
  .app .tool-pill { padding: 11px 8px; font-size: 12px; gap: 5px; }
  .app-tip { text-align: center; font-size: 11.5px; color: var(--muted); padding: 4px 0 2px; }
  .app .info-block-title { color: var(--ink); text-shadow: none; }
  .app .info-block-sub { color: var(--muted); }
  .app .info-banner { height: 140px; }
  #backHome { margin: 10px 0; align-self: flex-start; }
  /* 二级页面（列表页） */
  .page-view {
    position: fixed; top: 0; bottom: 0; left: 0; right: 0; margin: auto;
    max-width: 480px; width: 100%; height: 100%;
    background: linear-gradient(180deg, #f0f7ff 0%, #ffffff 100%);
    z-index: 100;
    display: flex; flex-direction: column;
    transform: translateX(105%);
    visibility: hidden;
    transition: transform 0.28s ease-out, visibility 0.28s;
    box-shadow: 0 0 40px rgba(20, 70, 130, 0.18);
  }
  .page-view.open { transform: translateX(0); visibility: visible; }
  .page-top {
    display: flex; align-items: center; gap: 10px;
    padding: 12px 14px;
    background: linear-gradient(135deg, #1d4ed8, #2563eb);
    color: #fff; flex: none;
  }
  .page-top b { flex: 1; font-size: 16px; font-weight: 700; text-align: center; }
  .page-back {     display: inline-flex; align-items: center; justify-content: center; gap: 4px;     min-width: 52px; min-height: 36px; padding: 4px 14px;     font-size: 17px; font-weight: 800; line-height: 1; cursor: pointer; user-select: none;     color: #1d4ed8; background: #ffffff; border: 1px solid rgba(255,255,255,0.85); border-radius: 999px;     box-shadow: 0 2px 8px rgba(9,45,84,0.25);     transition: transform 0.15s ease, box-shadow 0.15s ease;   }
  .page-back:active { background: rgba(37,99,235,0.22); }
  .page-top-space { width: 30px; flex: none; }
  .page-body { flex: 1; overflow-y: auto; padding: 12px 14px 24px; }
  .page-search { width: 100%; max-width: none; margin-bottom: 12px; }
  .quick-tools { margin-top: 2px; }
  .qt-title { font-size: 13px; font-weight: 700; color: var(--blue); margin: 2px 0 8px; }
  .qt-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .qt-item {
    background: #fff; border: 1px solid rgba(148, 197, 235, 0.4);
    border-radius: 12px; padding: 10px 4px; text-align: center;
    font-size: 12px; color: #123b66; box-shadow: 0 1px 3px rgba(20, 70, 130, 0.08);
  }
  .qt-item span { display: block; font-size: 20px; margin-bottom: 4px; }
  /* 工具详情：全屏二级页 */
  .modal-mask.page-modal { align-items: stretch; padding: 0; }
  .modal-mask.page-modal .modal-card {
    width: 100%; max-width: 480px; margin: 0 auto;
    max-height: 100vh; height: 100vh; border-radius: 0;
    border: none; display: flex; flex-direction: column; padding: 0;
  }
  .modal-mask.page-modal .modal-card h4 {
    flex: none; margin: 0; padding: 14px 46px 14px 16px;
    background: linear-gradient(135deg, #1d4ed8, #2563eb);
    color: #fff; font-size: 16px; border-radius: 0;
  }
  .modal-mask.page-modal #toolContent { flex: 1; overflow-y: auto; padding: 14px 16px 12px; }
  .modal-mask.page-modal .modal-close { color: #fff; background: rgba(255, 255, 255, 0.22); }
  /* 首页/工具页：两列长条药丸工具 */
  .tool-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; align-items: stretch; width: 100%; }
  .tool-grid .tool-pill { flex: none; max-width: none; width: 100%; min-height: 52px; padding: 6px 14px; flex-direction: row; justify-content: flex-start; gap: 8px; font-size: 13px; border-radius: 999px; text-align: left; white-space: nowrap; }
  .tool-grid .tool-pill .ico { font-size: 22px; }
  .home-section-title { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 800; color: var(--ink); margin: 4px 0 2px; }
  .home-section-title .bar { width: 4px; height: 14px; border-radius: 2px; background: linear-gradient(180deg, #2563eb, #38bdf8); }
  .home-actions { flex-wrap: nowrap; gap: 6px; }
  .home-actions .participate-btn { flex: 1 1 0; justify-content: center; min-height: 34px; padding: 6px 8px; gap: 4px; font-size: 11px; }
  .home-actions .participate-btn .ico { font-size: 16px; }
  .app-header b { font-size: 15px; white-space: nowrap; }
  .app-logo { width: 44px; height: 44px; border-radius: 50%; overflow: hidden; background: rgba(255,255,255,0.25); flex: none; }
  .app-logo img { width: 100%; height: 100%; object-fit: cover; }
  .app-note { text-align: center; font-size: 11px; color: #64748b; padding: 8px 12px 0; line-height: 1.5; }
  .app-header { justify-content: center; text-align: center; }
  .home-info .share-card { padding: 16px 18px; border-radius: 16px; margin-bottom: 12px; }
  .home-info .share-avatar { width: 46px; height: 46px; font-size: 21px; }
  .home-info .share-body { font-size: 14px; line-height: 1.65; }
  .home-actions .participate-btn { color: #fff; border: none; box-shadow: 0 2px 8px rgba(20,70,130,0.25); }
  .home-actions .participate-btn.pink { background: linear-gradient(135deg, #fb7185, #e11d48); }
  .home-actions .participate-btn.violet { background: linear-gradient(135deg, #a78bfa, #7c3aed); }
  .home-actions .participate-btn.cyan { background: linear-gradient(135deg, #38bdf8, #2563eb); }
    .h-bars { display: flex; flex-direction: column; gap: 10px; }
  .h-bar {
    display: flex; align-items: center; gap: 12px;
    padding: 14px 15px; border-radius: 14px;
    background: linear-gradient(135deg, #f4faff, #e6f3fd);
    border: 1.5px dashed rgba(37,99,235,0.45);
    cursor: pointer; user-select: none;
    transition: transform 0.15s ease;
  }
  .h-bar:active { transform: scale(0.98); }
  .h-bar .b-ico { font-size: 25px; line-height: 1; flex: none; }
  .h-bar .b-body { flex: 1; min-width: 0; }
  .h-bar .b-name { font-size: 14.5px; font-weight: 800; color: var(--ink); }
  .h-bar .b-sub { font-size: 11px; color: var(--ink-soft); margin-top: 2px; }
  .h-bar .b-tag { font-size: 10px; font-weight: 700; color: #2563eb; background: rgba(37,99,235,0.10); border-radius: 999px; padding: 2px 8px; flex: none; }
  .h-bar .b-arrow { font-size: 20px; color: #2563eb; font-weight: 700; flex: none; }
  .app-header { position: relative; }
  .app-header .app-logo { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); }
  .app-header b { font-size: 17px; }
  .page-note { text-align: center; font-size: 12.5px; color: var(--ink-soft); padding: 30px 18px; line-height: 1.9; }
  .share-page-actions { text-align: center; margin: 0 0 14px; }
  .share-page-actions .share-submit { display: inline-block; }
  .share-empty { text-align: center; font-size: 12px; color: var(--muted); padding: 22px 10px; }

  /* ===== v1.1：分享横幅 / 行前清单 / 目的地速查卡 ===== */
  .app-cta {
    display: flex; align-items: center; gap: 12px; width: 100%;
    padding: 13px 15px; border-radius: 16px; cursor: pointer; user-select: none;
    background: linear-gradient(135deg, #0ea5e9, #2563eb 55%, #7c3aed);
    color: #fff; border: 1px solid rgba(255,255,255,0.42);
    box-shadow: 0 10px 24px rgba(29,78,216,0.30);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .app-cta:active { transform: scale(0.985); }
  .app-cta .cta-ico { font-size: 32px; flex: none; line-height: 1; }
  .app-cta .cta-body { flex: 1; min-width: 0; }
  .app-cta .cta-title { font-size: 14.5px; font-weight: 800; }
  .app-cta .cta-sub { font-size: 11px; opacity: 0.94; margin-top: 2px; line-height: 1.5; }
  .app-cta .cta-arrow { font-size: 22px; flex: none; font-weight: 800; }

  .check-head { display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px; }
  .check-progress { height: 12px; border-radius: 999px; background: rgba(37,99,235,0.14); overflow: hidden; }
  .check-progress i { display: block; height: 100%; width: 0%; border-radius: 999px; background: linear-gradient(90deg, #34d399, #059669); transition: width 0.3s ease; }
  .check-stat { font-size: 13px; font-weight: 700; color: var(--blue); text-align: right; }
  .check-group { margin-bottom: 14px; }
  .check-group-title { display: flex; align-items: center; justify-content: space-between; font-size: 14px; font-weight: 800; color: var(--ink); margin: 4px 0 8px; }
  .check-group-title small { color: var(--muted); font-weight: 600; }
  .check-item {
    position: relative; overflow: hidden; display: flex; align-items: flex-start; gap: 10px;
    padding: 11px 12px; margin-bottom: 8px; border-radius: 12px;
    background: rgba(255,255,255,0.88); border: 1px solid rgba(37,99,235,0.16);
    cursor: pointer; user-select: none; transition: transform 0.15s ease, border-color 0.15s ease;
  }
  .check-item:active { transform: scale(0.985); }
  .check-box {
    flex: none; width: 22px; height: 22px; margin-top: 1px; border-radius: 50%;
    border: 2px solid #94a3b8; display: grid; place-items: center; font-size: 12px; color: #fff;
    transition: all 0.18s ease; background: transparent;
  }
  .check-item.on .check-box { background: linear-gradient(135deg, #34d399, #059669); border-color: #059669; }
  .check-item .check-txt { flex: 1; min-width: 0; font-size: 13.5px; font-weight: 600; color: var(--ink); }
  .check-item .check-tip { font-size: 11.5px; color: var(--muted); font-weight: 400; margin-top: 1px; line-height: 1.45; }
  .check-item.on .check-txt { text-decoration: line-through; color: var(--muted); }
  .check-actions { display: flex; gap: 10px; margin-top: 4px; }
  .check-btn {
    flex: 1; min-height: 40px; border: none; border-radius: 999px; color: #fff;
    font-size: 13px; font-weight: 800; cursor: pointer;
    box-shadow: 0 3px 0 rgba(15, 23, 42, 0.18);
  }
  .check-btn.all { background: linear-gradient(135deg, #34d399, #059669); }
  .check-btn.clear { background: linear-gradient(135deg, #94a3b8, #64748b); }

  .qc-intro { font-size: 13px; color: var(--ink-soft); margin-bottom: 10px; line-height: 1.6; }
  .qc-search { width: 100%; padding: 10px 14px; border-radius: 12px; border: 1px solid rgba(37,99,235,0.22); outline: none; font-size: 14px; background: rgba(255,255,255,0.95); margin-bottom: 10px; }
  .qc-tags { display: flex; flex-wrap: wrap; gap: 8px; }
  .qc-tag {
    display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px; border-radius: 999px;
    background: rgba(255,255,255,0.92); border: 1px solid rgba(37,99,235,0.18); color: var(--ink);
    font-size: 12.5px; font-weight: 700; cursor: pointer; transition: all 0.15s ease; user-select: none;
  }
  .qc-tag:active { transform: scale(0.96); }
  .qc-tag.sel { background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff; border-color: transparent; }
  .qc-tag .fi { width: 22px; height: 16px; border-radius: 2px; box-shadow: 0 0 0 1px rgba(37,99,235,0.2); }
  .qc-empty { text-align: center; color: var(--muted); font-size: 13px; padding: 22px 0; }
  .qc-card {
    margin-top: 2px; padding: 15px 16px; border-radius: 16px;
    background: linear-gradient(160deg, #f4faff, #e9f3fd); border: 1px solid rgba(37,99,235,0.2);
    box-shadow: 0 10px 26px rgba(29,78,216,0.12);
  }
  .qc-card-head { display: flex; align-items: center; gap: 12px; padding-bottom: 11px; margin-bottom: 8px; border-bottom: 1px solid rgba(37,99,235,0.16); }
  .qc-card-head .fi { width: 46px; height: 34px; border-radius: 5px; box-shadow: 0 2px 8px rgba(37,99,235,0.25); }
  .qc-card-head b { font-size: 19px; }
  .qc-card-head small { font-size: 12px; color: var(--muted); font-weight: 600; }
  .qc-row { display: flex; gap: 12px; padding: 8px 0; border-bottom: 1px dashed rgba(37,99,235,0.14); font-size: 13.5px; }
  .qc-row:last-of-type { border-bottom: none; }
  .qc-row .k { flex: none; width: 76px; color: var(--muted); }
  .qc-row .v { flex: 1; font-weight: 600; line-height: 1.5; }
  .qc-foot { margin-top: 10px; padding-top: 9px; border-top: 1px dashed rgba(37,99,235,0.2); font-size: 11.5px; color: var(--muted); line-height: 1.6; }
  .qc-country-btn { display: inline-block; margin: 2px 0 6px auto; border: 1px solid rgba(37,99,235,0.4); color: #2563eb; background: #fff; border-radius: 999px; padding: 6px 15px; font-size: 12.5px; font-weight: 700; cursor: pointer; }

  .dl-card { margin-bottom: 12px; padding: 13px 15px; border-radius: 14px; background: rgba(255,255,255,0.92); border: 1px solid rgba(37,99,235,0.16); }
  .dl-card h5 { font-size: 23px; font-weight: 900; color: var(--ink); margin-bottom: 10px; line-height: 1.35; }
  .dl-steps { list-style: none; counter-reset: dl; }
  .dl-steps li { counter-increment: dl; position: relative; padding: 10px 0 10px 42px; font-size: 19px; font-weight: 700; color: var(--ink-soft); line-height: 1.65; }
  .dl-steps li::before { content: counter(dl); position: absolute; left: 0; top: 10px; width: 30px; height: 30px; border-radius: 50%; background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff; display: grid; place-items: center; font-size: 17px; font-weight: 900; }
  .dl-link {
    display: block; margin-top: 12px; text-align: center; padding: 16px 12px; border-radius: 12px;
    background: linear-gradient(135deg, #34d399, #059669); color: #fff; font-size: 22px; font-weight: 900;
    text-decoration: none;
    border: none; cursor: pointer; width: 100%;
    box-shadow: 0 3px 0 rgba(6, 78, 59, 0.5);
  }
  .dl-link.blue { background: linear-gradient(135deg, #38bdf8, #2563eb); box-shadow: 0 3px 0 #1e3a8a; }
  .dl-link.gray { background: linear-gradient(135deg, #94a3b8, #64748b); box-shadow: 0 3px 0 #334155; }
  .dl-pending { margin-top: 10px; padding: 10px 12px; border-radius: 12px; background: #fffbeb; border: 1px dashed #f59e0b; color: #b45309; font-size: 12.5px; line-height: 1.6; }
  .app-download-strip { display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:16px; color:#fff; text-decoration:none; background:linear-gradient(135deg,#34d399,#059669 58%,#047857); border:1px solid rgba(255,255,255,.62); box-shadow:0 4px 0 rgba(6,78,59,.7),0 10px 22px rgba(5,150,105,.26); }
  .app-download-strip:active { transform:scale(.985); }
  .app-download-strip .ads-ico { flex:none; width:42px; height:42px; border-radius:13px; display:grid; place-items:center; font-size:24px; background:rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.32); }
  .app-download-strip .ads-txt { flex:1; min-width:0; }
  .app-download-strip b { display:block; font-size:15px; font-weight:900; line-height:1.3; }
  .app-download-strip small { display:block; margin-top:2px; font-size:11px; line-height:1.45; color:rgba(255,255,255,.92); }
  .app-download-strip .ads-go { flex:none; font-size:22px; font-weight:900; }

  /* ===== v1.2：版式修正（主次分明 / 右下角分享 / 单返回键）===== */
  .app-header { justify-content: flex-start; text-align: left; gap: 11px; padding: calc(8px + env(safe-area-inset-top)) 14px 8px; }
  .app-header .app-logo { position: static; transform: none; width: 50px; height: 50px; margin: 0; box-shadow: 0 0 0 2px rgba(255,255,255,0.35); }
  .app-header b { font-size: 20px; font-weight: 900; line-height: 1.2; letter-spacing: 0.5px; }
  .app-header .app-sub { display: block; font-size: 10.5px; font-weight: 500; opacity: 0.95; margin-top: 1px; letter-spacing: 0.2px; }
  .app .main-buttons { grid-template-columns: 1fr; gap: 10px; }
  .app .main-pill-btn { min-height: 54px; padding: 10px 18px; flex-direction: row; justify-content: flex-start; text-align: left; gap: 10px; border-radius: 999px; }
  .app .main-pill-btn .ico { font-size: 24px; }
  .app .main-pill-btn .num { font-size: 14px; font-weight: 800; line-height: 1.2; white-space: nowrap; }
  .app .main-pill-btn .num b { font-size: 16px; }
  .app .main-pill-btn .desc { display: block; font-size: 10.5px; opacity: .92; white-space: nowrap; }
  .app-note { padding-top: 6px; }

  .share-float {
    position: fixed; right: max(12px, calc(50% - 228px)); bottom: calc(14px + env(safe-area-inset-bottom));
    z-index: 60; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px;
    width: 62px; height: 62px; border-radius: 50%;
    color: #fff; background: linear-gradient(135deg, #38bdf8, #2563eb 60%, #7c3aed);
    border: 1px solid rgba(255,255,255,0.6);
    box-shadow: 0 6px 18px rgba(29,78,216,0.45);
    cursor: pointer; user-select: none; font-weight: 800; font-size: 10.5px;
    transition: transform 0.15s ease;
  }
  .share-float .f-ico { font-size: 24px; line-height: 1; }
  .share-float:active { transform: scale(0.94); }

  .qr-area { display: flex; flex-direction: column; align-items: center; gap: 8px; margin-top: 12px; padding: 13px 10px; border-radius: 14px; background: #fff; border: 1px dashed rgba(37,99,235,0.35); }
  .qr-cap { font-size: 18px; font-weight: 900; color: var(--ink); line-height: 1.5; text-align: center; }
  .qr-canvas { width: min(294px, 100%); min-height: 188px; background: #fff; display: grid; place-items: center; border-radius: 8px; }
  .qr-canvas canvas, .qr-canvas svg { width: auto; height: auto; max-width: 100%; image-rendering: pixelated; }
  .qr-canvas img { display: block; width: auto; max-width: 100%; height: auto; }
  .qr-link { display:block; line-height:0; text-decoration:none; }
  .qr-note { font-size: 12px; color: #b45309; line-height: 1.6; text-align: center; padding: 0 6px; }
  .qr-ok { font-size: 11px; color: var(--muted); }

  .modal-close {
    position: absolute; top: 14px; right: 14px; z-index: 6;
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 66px; min-height: 32px; padding: 2px 13px;
    font-size: 14px; font-weight: 800; line-height: 1; color: #1d4ed8;
    background: #ffffff; border: 1px solid rgba(37,99,235,0.35); border-radius: 999px;
    box-shadow: 0 2px 10px rgba(9,45,84,0.20); cursor: pointer; user-select: none;
    transition: transform 0.15s ease;
  }
  .modal-close:active { transform: scale(0.95); }
  .modal-mask.page-modal .modal-close { color: #1d4ed8; background: #fff; }
  .modal-mask.page-modal .modal-card h4 { padding: 14px 92px 14px 16px; }
  .share-modal h4 { padding-right: 76px; }

  /* ===== v1.2b：主页配重修正 + 分享钮可拖动 ===== */
  .app-header { padding: calc(11px + env(safe-area-inset-top)) 16px 11px; }
  .app-header .app-logo { width: 54px; height: 54px; }
  .app-header b { font-size: clamp(21px, 6.4vw, 25px); font-weight: 900; letter-spacing: 1px; }
  .app-header .app-sub { font-size: 11px; opacity: 0.95; margin-top: 2px; }
  .app-note { font-size: 11px; padding-top: 7px; }
  .search-input { margin: 14px 0 12px; }
  .tool-grid { gap: 8px; }
  .tool-grid .tool-pill { min-height: 48px; padding: 6px 12px; font-size: 12px; gap: 7px; }
  .tool-grid .tool-pill .ico { font-size: 20px; }
  .app .main-pill-btn { min-height: 56px; }
  .home-view { padding-bottom: 74px; }

  .share-float {
    width: 66px; height: 66px; font-size: 11px;
    right: max(12px, calc(50% - 228px)); bottom: calc(18px + env(safe-area-inset-bottom));
    touch-action: none;
  }
  .share-float .f-ico { font-size: 25px; }
  .share-float.touch-hint { opacity: 0.95; }

  /* ===== v1.2c：主页顶部大主题区 ===== */
  .app-header { justify-content: flex-start; padding: calc(6px + env(safe-area-inset-top)) 12px 6px; }
  .app-header .app-logo { width: 40px; height: 40px; box-shadow: none; }
  .app-header b, .app-header .app-sub { display: none; }
  .app-note { display: none; }

  .home-hero {
    position: relative; overflow: hidden; isolation: isolate;
    width: 100%; border-radius: 20px; padding: 18px 18px 30px;
    background: linear-gradient(135deg, #0ea5e9 0%, #2563eb 55%, #7c3aed 100%);
    color: #fff;
    box-shadow: 0 14px 34px rgba(29, 78, 216, 0.32);
    animation: brand-breathe 4.2s ease-in-out infinite;
  }
  .home-hero::before, .home-hero::after {
    content: ''; position: absolute; border-radius: 50%; z-index: 0;
  }
  .home-hero::before { top: -60px; right: -40px; width: 170px; height: 170px; background: rgba(255,255,255,0.13); }
  .home-hero::after { bottom: -90px; left: -50px; width: 210px; height: 210px; background: rgba(255,255,255,0.09); }
  .home-hero > * { position: relative; z-index: 1; }
.home-hero > .hh-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 8px; }
.hh-meta > .hh-clock { flex: 0 0 auto; text-align: left; margin: 0; font-size: clamp(10px, 3.1vw, 11px); font-weight: 700; line-height: 1.45; letter-spacing: 0.1px; color: rgba(255,255,255,0.92); text-shadow: 0 1px 3px rgba(2,20,63,0.35); white-space: nowrap; pointer-events: none; font-variant-numeric: tabular-nums; }
.hh-meta > .hh-clock b { font-size: 1.35em; letter-spacing: 0.5px; }
#panel-home .hh-meta > .hh-call, .home-hero .hh-meta > .hh-call { position: static !important; left: auto !important; right: auto !important; bottom: auto !important; margin: 0 !important; display: block !important; flex: 0 1 auto; min-width: 0; text-align: right !important; white-space: normal !important; padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; font-size: 10.5px !important; line-height: 1.35 !important; letter-spacing: 0.2px; opacity: 0.85 !important; max-width: 62%; }
  .hh-kicker {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 3px 12px; border-radius: 999px; font-size: 11.5px; font-weight: 700; letter-spacing: 0.6px;
    background: rgba(255,255,255,0.16); border: 1px solid rgba(255,255,255,0.35);
  }
  .hh-title {
    font-size: clamp(24px, 6.6vw, 33px); font-weight: 900; line-height: 1.15;
    letter-spacing: 1px; margin: 9px 0 5px;
    text-shadow: 0 2px 8px rgba(2, 20, 63, 0.4);
  }
  .hh-sub { font-size: 12px; font-weight: 600; opacity: 0.95; letter-spacing: 0.3px; }
  .hh-call {
    margin-top: 12px; font-size: 10.5px; font-weight: 500; opacity: 0.78;
    letter-spacing: 0.3px; text-align: center;
  }

  /* 右下角「分享」：变小、低调一点，仍可按住拖动 */
  .share-float { width: 52px; height: 52px; font-size: 11px; opacity: 0.94; bottom: calc(10px + env(safe-area-inset-bottom)); }
  .share-float .f-ico { font-size: 21px; }
.page-back .back-arrow, .modal-close .back-arrow { flex: none; display: inline-block; }

  /* V6：主题大字通栏居中（任何宽度都居中），地球左上装饰不占位，热线右下角小字 */
  .home-hero { padding: 26px 16px 48px; border-radius: 22px; }
  .brand-band { position: relative; display: block; width: 100%; padding: 0 6px; box-sizing: border-box; text-align: center; }
  .brand-globe { position: static; left: auto; top: auto; transform: none; margin: 0 auto 10px; display: grid; place-items: center; width: clamp(40px, 13vw, 54px); height: clamp(40px, 13vw, 54px); }
  .brand-globe img { width: 100%; height: 100%; object-fit: contain; display: block; animation: globe-spin 16s linear infinite; transform-origin: 50% 50%; }
  .brand-text { position: relative; z-index: 1; display: block; margin: 0 auto; text-align: center; }
  .brand-text .hh-kicker { display: inline-flex; margin: 0 0 9px; letter-spacing: 1px; }
  .brand-text .hh-title { font-size: clamp(24px, 7.6vw, 34px); font-weight: 900; line-height: 1.22; letter-spacing: 2px; margin: 0 auto 4px; white-space: nowrap; text-align: center; text-shadow: 0 3px 14px rgba(2,20,63,.42), 0 0 24px rgba(147,197,253,.5); }
  .brand-text .hh-sub { margin: 6px auto 0; font-size: clamp(12px, 3.4vw, 14px); letter-spacing: 1px; opacity: 0.9; text-align: center; }
  .hh-call { position: absolute; right: 10px; bottom: 8px; margin: 0; display: inline-flex; align-items: center; gap: 5px; padding: 5px 11px; border-radius: 999px; background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.3); font-size: 10.5px; font-weight: 700; white-space: nowrap; opacity: .95; letter-spacing: .2px; }
  .app-header { padding: calc(6px + env(safe-area-inset-top)) 14px 6px; }
  #globeImg { animation: globe-spin 16s linear infinite; transform-origin: 50% 50%; }
  @media (max-width: 359px) {
 .brand-globe { width: 34px; height: 34px; }
 .brand-text .hh-title { font-size: clamp(21px, 7vw, 24px); letter-spacing: 1.4px; }
  }  /* ===== 客服悬浮球 + 反馈页 ===== */
  .cs-float { position: fixed; right: max(12px, calc(50% - 228px)); bottom: calc(98px + env(safe-area-inset-bottom)); z-index: 60; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; width: 62px; height: 62px; border-radius: 50%; color: #fff; background: linear-gradient(135deg, #fb923c, #f43f5e 78%); border: 1px solid rgba(255,255,255,0.7); box-shadow: 0 6px 18px rgba(225,29,72,0.42); cursor: pointer; user-select: none; touch-action: none; font-weight: 800; font-size: 11px; letter-spacing: 0.5px; transition: transform 0.15s ease; }
  .cs-float:active { transform: scale(0.92); }
  .cs-float .f-ico { font-size: 22px; line-height: 1.15; }
  @media (max-width: 380px) { .cs-float { width: 52px; height: 52px; font-size: 9.5px; bottom: calc(80px + env(safe-area-inset-bottom)); } .cs-float .f-ico { font-size: 19px; } }
  .cs-banner { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: 16px; background: linear-gradient(135deg, #fff7ed, #ffe4e6); border: 1px solid rgba(244,63,94,0.22); margin-bottom: 12px; }
  .cs-banner .cs-ic { font-size: 34px; flex: none; }
  .cs-banner b { display: block; font-size: 17px; color: #9f1239; margin-bottom: 3px; }
  .cs-banner span { font-size: 12.5px; color: #7f1d1d; opacity: 0.88; line-height: 1.5; }
  .cs-ai { display: flex; gap: 8px; align-items: flex-start; background: #eff6ff; border: 1px solid rgba(37,99,235,0.2); border-radius: 12px; padding: 10px 12px; font-size: 12.5px; color: #1e3a8a; line-height: 1.55; margin-bottom: 14px; }
  .cs-block { margin-bottom: 12px; }
  .cs-t { font-size: 13.5px; font-weight: 800; color: #16324f; margin-bottom: 7px; }
  .cs-req { font-size: 11px; color: #ef4444; font-weight: 600; }
  .cs-chiprow { display: flex; flex-wrap: wrap; gap: 8px; }
  .cs-chip { padding: 8px 14px; border-radius: 999px; font-size: 13px; font-weight: 700; background: #fff; border: 1px solid rgba(37,99,235,0.3); color: #1d4ed8; cursor: pointer; user-select: none; }
  .cs-chip.on { background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff; border-color: transparent; }
  .cs-input { width: 100%; box-sizing: border-box; border: 1px solid rgba(37,99,235,0.3); border-radius: 12px; padding: 10px 12px; font-size: 14px; font-family: inherit; background: #fff; color: #16324f; outline: none; }
  textarea.cs-input { resize: vertical; min-height: 118px; line-height: 1.6; }
  .cs-count { text-align: right; font-size: 11px; color: #94a3b8; margin-top: 3px; }
  .cs-submit { width: 100%; padding: 13px; border: 0; border-radius: 999px; font-size: 16px; font-weight: 800; color: #fff; background: linear-gradient(135deg, #fb923c, #f43f5e); box-shadow: 0 6px 16px rgba(225,29,72,0.3); cursor: pointer; margin: 6px 0 12px; }
  .cs-ok { background: #ecfdf5; border: 1px solid rgba(16,185,129,0.4); color: #065f46; border-radius: 12px; padding: 12px; font-size: 13.5px; line-height: 1.6; margin-bottom: 10px; }
  .cs-ok a { color: #059669; font-weight: 800; cursor: pointer; }
  .cs-note { font-size: 11.5px; color: #64748b; line-height: 1.65; }  /* ===== 客服：在线咨询(自动回复) ===== */
  .cs-tabs { display: flex; gap: 8px; margin-bottom: 12px; }
  .cs-tab { flex: 1; text-align: center; padding: 9px 0; border-radius: 999px; font-size: 14px; font-weight: 800; color: #64748b; background: #eef2f7; cursor: pointer; user-select: none; }
  .cs-tab.on { color: #fff; background: linear-gradient(135deg, #38bdf8, #2563eb); }
  .cs-chat { display: flex; flex-direction: column; }
  .cs-note-top { font-size: 12px; color: #1e3a8a; background: #eff6ff; border: 1px solid rgba(37,99,235,0.2); border-radius: 12px; padding: 9px 11px; line-height: 1.55; margin-bottom: 10px; }
  .chat-box { display: flex; flex-direction: column; gap: 8px; height: 252px; overflow-y: auto; background: #f4f7fb; border: 1px solid #e2e8f0; border-radius: 14px; padding: 10px; }
  .msg { max-width: 84%; padding: 8px 11px; border-radius: 14px; font-size: 14px; line-height: 1.55; white-space: pre-wrap; word-break: break-word; }
  .msg.bot { align-self: flex-start; background: #fff; color: #16324f; border: 1px solid #e2e8f0; border-bottom-left-radius: 4px; }
  .msg.user { align-self: flex-end; background: linear-gradient(135deg, #38bdf8, #2563eb); color: #fff; border-bottom-right-radius: 4px; }
  .msg.tip { align-self: flex-start; color: #94a3b8; font-size: 12.5px; font-style: italic; border: none; background: transparent; }
  .chat-quick { display: flex; flex-wrap: wrap; gap: 7px; margin: 10px 0 6px; }
  .q-chip { padding: 7px 12px; font-size: 12.5px; font-weight: 700; color: #1d4ed8; background: #fff; border: 1px solid rgba(37,99,235,0.3); border-radius: 999px; cursor: pointer; }
  .chat-input-row { display: flex; gap: 8px; }
  .chat-input { flex: 1; min-width: 0; border: 1px solid rgba(37,99,235,0.3); border-radius: 999px; padding: 10px 14px; font-size: 14px; outline: none; background: #fff; color: #16324f; }
  .chat-send { flex: none; border: 0; border-radius: 999px; padding: 0 20px; font-size: 14px; font-weight: 800; color: #fff; background: linear-gradient(135deg, #fb923c, #f43f5e); cursor: pointer; }
.feed-list{display:flex;flex-direction:column;gap:18px;padding:4px 0 30px;}
.feed-card{background:#fff;border:1px solid rgba(37,99,235,.14);border-radius:18px;overflow:hidden;box-shadow:0 8px 20px rgba(15,60,120,.10);}
.feed-media img{width:100%;display:block;max-height:430px;object-fit:cover;}
.feed-media .grid2{display:grid;grid-template-columns:1fr 1fr;gap:3px;}
.feed-media .grid2 img{height:150px;object-fit:cover;}
.feed-video{position:relative;width:100%;aspect-ratio:16/9;background:#000;}
.feed-video iframe,.feed-video video{width:100%;height:100%;border:0;display:block;}
.feed-body{padding:15px 16px 17px;}
.feed-tag{display:inline-block;font-size:12px;font-weight:800;padding:3px 10px;border-radius:999px;margin-bottom:9px;color:#fff;}
.feed-tag.t-user{background:linear-gradient(135deg,#7c3aed,#4f46e5);}
.feed-tag.t-blog{background:linear-gradient(135deg,#f43f5e,#fb923c);}
.feed-tag.t-info{background:linear-gradient(135deg,#2563eb,#7c3aed);}
.feed-tag.t-repost{background:linear-gradient(135deg,#f59e0b,#ef4444);margin-left:6px;}
.news-filters{display:flex;gap:8px;margin:0 0 10px;flex-wrap:wrap;}
.nf-btn{border:1.5px solid #d7e0ef;background:#fff;color:#475569;border-radius:999px;padding:7px 15px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;}
.nf-btn.on{background:linear-gradient(135deg,#2563eb,#7c3aed);border-color:transparent;color:#fff;}
.share-role{display:flex;gap:8px;}
.sr-btn{flex:1;padding:10px 4px;border-radius:12px;border:1.5px solid #d7e0ef;background:#f8fafc;color:#334155;font-size:14px;font-weight:700;cursor:pointer;}
.sr-btn.on{background:linear-gradient(135deg,#2563eb,#7c3aed);border-color:transparent;color:#fff;}
.feed-title{font-size:19px;font-weight:900;line-height:1.4;color:#0f2a4a;margin-bottom:8px;}
.feed-text{font-size:15.5px;line-height:1.8;color:#33445c;white-space:pre-line;word-break:break-word;}
.feed-meta{margin-top:13px;padding-top:11px;border-top:1px dashed #dde7f3;font-size:12.5px;color:#7890a8;display:flex;justify-content:space-between;gap:8px;}
.feed-empty{text-align:center;color:#87a0b8;font-size:14px;padding:30px 10px;background:rgba(255,255,255,.55);border-radius:16px;}
.news-actions{position:sticky;top:0;z-index:5;background:rgba(240,248,255,.92);border-radius:16px;padding:6px 2px;margin:2px 0 10px;}
.btn-publish{display:block;width:100%;border:0;border-radius:999px;padding:13px 16px;font-size:16px;font-weight:900;color:#fff;background:linear-gradient(135deg,#2563eb,#7c3aed);box-shadow:0 8px 18px rgba(37,99,235,.25);cursor:pointer;}
.form-btn-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:4px;}
.file-btn{border:1px dashed #8fb4e8;background:#f2f7ff;color:#2563eb;border-radius:10px;padding:9px 13px;font-size:13.5px;font-weight:800;cursor:pointer;display:inline-block;}
.form-hint{font-size:12px;color:#8a99ad;}
.pic-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.pic-thumb{position:relative;width:82px;height:82px;border-radius:12px;overflow:hidden;border:1px solid #d5e2f2;}
.pic-thumb img{width:100%;height:100%;object-fit:cover;}
.pic-del{position:absolute;top:3px;right:3px;width:20px;height:20px;line-height:18px;text-align:center;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:13px;cursor:pointer;border:0;}
#feedLight{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.93);display:none;align-items:center;justify-content:center;}
#feedLight img{max-width:96vw;max-height:92vh;border-radius:8px;}
#feedLight span{position:absolute;top:14px;right:18px;color:#fff;font-size:30px;line-height:1;cursor:pointer;}

/* ===== 2026-09-04 资讯放大版：大图大字，手机可读 ===== */
.home-section-title.news-title{font-size:17px;margin:2px 0 4px;letter-spacing:.5px;}
.news-teaser{position:relative;overflow:hidden;cursor:pointer;user-select:none;padding:20px 18px;border-radius:20px;background:linear-gradient(135deg,#0ea5e9 0%,#2563eb 55%,#7c3aed 100%);box-shadow:0 12px 26px rgba(29,78,216,.28);border:1px solid rgba(255,255,255,.45);transition:transform .16s ease;}
.news-teaser:active{transform:scale(.985);}
.news-teaser::after{content:'';position:absolute;right:-30px;top:-34px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.14);}
.news-teaser::before{content:'';position:absolute;right:52px;bottom:-48px;width:110px;height:110px;border-radius:50%;background:rgba(255,255,255,.10);}
.nt-tag{position:relative;z-index:1;display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.3px;color:#fff;background:rgba(255,255,255,.20);border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:4px 12px;margin-bottom:11px;}
.nt-title{position:relative;z-index:1;font-size:21px;font-weight:900;letter-spacing:.3px;line-height:1.35;color:#fff;text-shadow:0 2px 12px rgba(2,20,70,.28);margin-bottom:7px;}
.nt-sub{position:relative;z-index:1;font-size:14px;line-height:1.7;color:rgba(255,255,255,.95);text-shadow:0 1px 6px rgba(2,20,70,.25);margin-bottom:14px;}
.nt-go{position:relative;z-index:1;display:inline-flex;align-items:center;gap:4px;font-size:15px;font-weight:900;color:#123c7a;background:#fff;border-radius:999px;padding:10px 20px;box-shadow:0 8px 18px rgba(2,20,70,.22);}
.page-body > .page-note{padding:4px 8px 14px;font-size:13px;line-height:1.8;color:#556f88;}
.official-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 14px;}
.official-links a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 10px;border-radius:12px;background:#fff;border:1px solid #cfe0f7;color:#1d4ed8;font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 3px 10px rgba(37,99,235,.08);}
.official-links a:active{transform:scale(.98);}
@media (max-width:360px){.official-links a{font-size:12px;padding:7px 5px;}}
.feed-card{border-radius:20px;box-shadow:0 10px 24px rgba(15,60,120,.12);}
.feed-title{font-size:20px;letter-spacing:.2px;}
.feed-text{font-size:16px;line-height:1.85;}
.feed-meta{font-size:13px;color:#5f7a93;}
.feed-media .grid2 img{height:172px;}
  .home-feed-preview{display:flex;flex-direction:column;gap:16px;}
  #newsTeaser.hide{display:none;}
  .home-feed-preview .feed-text{max-height:112px;overflow:hidden;}
  .feed-more{display:block;text-align:center;margin:2px auto 0;border:0;border-radius:999px;padding:12px 22px;font-size:15px;font-weight:800;color:#fff;background:linear-gradient(135deg,#2563eb,#7c3aed);box-shadow:0 8px 18px rgba(37,99,235,.28);cursor:pointer;}
  .app{display:flex;flex-direction:column;min-height:100vh;}
  .app-main{flex:1;display:flex;flex-direction:column;}
  #panel-home{flex:1;display:flex;flex-direction:column;}
  #homeView{flex:1;}
  #homeView .share-rows{margin-top:auto;}
.news-actions{padding:8px 2px 10px;}

/* ===== 2026-09-04 红色国旗动感 + 底部三行 ===== */
.cn-flag{display:inline-block;width:32px;height:21px;border-radius:2px;overflow:hidden;vertical-align:-4px;margin-right:7px;box-shadow:0 1px 3px rgba(0,0,0,.30);flex:none;}
.cn-flag svg{display:block;width:100%;height:100%;}

.share-rows{display:flex;flex-direction:column;gap:10px;margin-top:2px;}
.share-row{display:flex;align-items:center;gap:12px;padding:9px 18px;border-radius:999px;color:#fff;cursor:pointer;user-select:none;box-shadow:0 6px 16px rgba(20,70,130,.20);transition:transform .15s ease;}
.share-row:active{transform:scale(.98);}
.share-row .s-ico{font-size:22px;line-height:1;flex:none;}
.share-row .s-txt{flex:1;min-width:0;}
.share-row .s-txt b{display:block;font-size:15.5px;font-weight:900;letter-spacing:.3px;line-height:1.25;}
.share-row .s-txt i{display:block;font-style:normal;font-size:11px;opacity:.92;margin-top:1px;line-height:1.3;}
.share-row .s-go{font-size:24px;font-weight:800;flex:none;opacity:.95;}
.share-row.r-pink{background:linear-gradient(135deg,#fb7185,#e11d48);}
.share-row.r-violet{background:linear-gradient(135deg,#a78bfa,#7c3aed);}
.share-row.r-cyan{background:linear-gradient(135deg,#38bdf8,#2563eb);}

/* 2026-09-05 功能键文字锐化：停呼吸动画，避免低清重绘 */
.tool-pill,.main-pill-btn,.share-row,.participate-btn,.panel-link{animation:none !important;box-shadow:0 4px 12px rgba(21,60,130,.25);}
.tool-pill,.share-row .s-txt b{text-shadow:none;}

/* ===== 2026-09-04 地球去外圈：只留地球本身 ===== */
.brand-globe{background:transparent !important;box-shadow:none !important;overflow:visible !important;border-radius:0 !important;}
.brand-globe img{object-fit:contain !important;border-radius:0 !important;box-shadow:none !important;}

/* ===== 2026-09-04 三行改一排：博主/达人/发布 ===== */
.share-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;}
.share-row{flex-direction:column;justify-content:center;text-align:center;gap:4px;padding:8px 4px;min-height:56px;border-radius:13px;box-shadow:0 4px 10px rgba(20,70,130,.16);}
.share-row .s-ico{font-size:19px;line-height:1;}
.share-row .s-txt{display:flex;flex-direction:column;align-items:center;justify-content:center;}
.share-row .s-txt b{display:block;font-size:12.5px;font-weight:900;line-height:1.3;letter-spacing:.2px;}
.share-row .s-txt i{display:none;}
.share-row .s-go{display:none;}

/* ===== v2.3 高清五星红旗 + 首页真3D地球（带平面兜底） ===== */
.cn-flag{width:34px;height:22px;border-radius:3px;box-shadow:0 1px 4px rgba(0,0,0,.35);}
.cn-flag svg{shape-rendering:geometricPrecision;}
 #brandGlobe{position:absolute;}
 /* 2026-09-15：手机/平板下地球仪居中到标题上方；PC（≥900px）保持原布局 */
 @media (max-width: 899px) {
   #panel-home #brandGlobe{position:static;left:auto;top:auto;transform:none;margin:0 auto 10px;display:block;width:clamp(40px,13vw,54px);height:clamp(40px,13vw,54px);}
   #panel-home #brandGlobe img{width:100%;height:100%;}
 }
#globe3d{position:absolute;inset:0;width:100%;height:100%;z-index:3;visibility:hidden;border-radius:50%;overflow:hidden;background:transparent;filter:saturate(1.25) brightness(1.12);}
#globe3d .cesium-viewer-bottom,#globe3d .cesium-viewer-toolbar,#globe3d .cesium-viewer-animationContainer,#globe3d .cesium-viewer-timelineContainer,#globe3d .cesium-viewer-fullscreenContainer,#globe3d .cesium-viewer-infoBoxContainer,#globe3d .cesium-viewer-geocoderContainer,#globe3d .cesium-viewer-homeButtonContainer,#globe3d .cesium-viewer-sceneModePickerContainer,#globe3d .cesium-viewer-baseLayerPickerContainer,#globe3d .cesium-viewer-navigationHelpButtonContainer,#globe3d .cesium-widget-credits{display:none !important;}

/* ===== 2026-09-04 v2.6 结构定型：首页只有一个“旅游资讯”大信息流块；博主/达人分享三条横杠收到 App 最底部 ===== */
.home-section-title.news-title{font-size:18px;margin:4px 0 2px;letter-spacing:.5px;}
.home-feed-preview{display:flex;flex-direction:column;gap:14px;}
.share-rows{display:flex;flex-direction:column;gap:12px;margin-top:22px;}
.share-row{flex-direction:row;justify-content:flex-start;text-align:left;gap:13px;padding:15px 16px;min-height:62px;border-radius:18px;box-shadow:0 6px 16px rgba(20,70,130,.18);}
.share-row .s-ico{font-size:26px;line-height:1;}
.share-row .s-txt{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;}
.share-row .s-txt b{display:block;font-size:16.5px;font-weight:900;line-height:1.35;letter-spacing:.3px;}
.share-row .s-txt i{display:block;font-size:12px;line-height:1.5;opacity:.92;margin-top:2px;}
.share-row .s-go{display:inline;}

/* ===== 2026-09-05 老板定稿改动：搜索去掉 / 资讯三块合成一块 / 分享三行改一行三块横排 ===== */
.home-feed-preview{background:#fff;border:1px solid rgba(37,99,235,.14);border-radius:18px;overflow:hidden;box-shadow:0 8px 20px rgba(15,60,120,.10);gap:0;}
.home-feed-preview .feed-card{border:0;border-radius:0;box-shadow:none;background:transparent;border-bottom:1px dashed #e3ebf5;}
.home-feed-preview .feed-card:last-child{border-bottom:0;}
.home-feed-preview .feed-body{padding:12px 14px 13px;}
.share-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;}
.share-row{flex-direction:column;justify-content:center;text-align:center;gap:5px;padding:10px 4px;min-height:70px;border-radius:14px;}
.share-row .s-ico{font-size:21px;line-height:1;}
.share-row .s-txt{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.share-row .s-txt b{display:block;font-size:12.5px;font-weight:900;line-height:1.35;letter-spacing:.2px;word-break:break-word;}
.share-row .s-txt i{display:none;}
.share-row .s-go{display:none;}
/* ===== 2026-09-05 微调2：免签三按钮确保第2排同一行三格；分享块改扁形、图标在左 ===== */
.main-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px;}
.main-pill-btn{flex-direction:column;justify-content:center;text-align:center;gap:2px;min-height:66px;padding:6px 4px;}
.main-pill-btn .ico{font-size:20px;}
.main-pill-btn .num{font-size:12px;line-height:1.3;}
.main-pill-btn .num b{font-size:14px;}
.main-pill-btn .desc{font-size:8.5px;line-height:1.3;white-space:normal;color:rgba(255,255,255,0.92);}
@media (max-width:359px){.main-pill-btn .desc{display:none;}}
.share-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:16px;}
.share-row{flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;gap:6px;padding:7px 6px;min-height:42px;border-radius:10px;}
.share-row .s-ico{font-size:17px;line-height:1;}
.share-row .s-txt{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;}
.share-row .s-txt b{font-size:11px;font-weight:900;line-height:1.25;letter-spacing:.1px;word-break:break-word;text-align:left;}
/* ===== 2026-09-05 老板排位：免签第2排 / 资讯第3排 / 分享置底并留白 ===== */
.share-rows{margin-top:38px;}
/* ===== 2026-09-05 微调3：头部与免签排留空 / 资讯字体调小 / 分享排与工具明显隔开 ===== */
#homeView > .main-buttons{margin-top:18px;}
/* ===== 2026-09-06 🔒 锁死规则（老板拍板，勿改勿缩）=====
   中部"旅游资讯/博主/达人"内容主区必须排在版面正中间并放大：
   字、照片、视频要大而清楚，占位固定（不随加载跳动、不塌陷）。
   任何改版不得缩小、移位、压缩此区；工具区/分享行排其上下均可。 */
#panel-home .home-hero{padding:12px 14px 18px;border-radius:20px;}
#panel-home .main-buttons{grid-template-columns:repeat(3,1fr)!important;gap:6px;margin:0;}
#panel-home .main-pill-btn{flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;min-height:66px;padding:4px 2px;gap:3px;border-radius:14px;}
  #homeView .news-title{font-size:19px!important;margin:2px 0 6px;}
  @media (max-width:420px){#homeView .news-title{font-size:16px!important;letter-spacing:0!important;white-space:nowrap;}}
  #homeFeedPreview{min-height:430px;gap:15px;}
#homeFeedPreview .feed-title{font-size:19px!important;font-weight:900!important;line-height:1.45!important;margin-bottom:7px;}
#homeFeedPreview .feed-text{font-size:15.5px!important;line-height:1.85!important;max-height:none!important;}
#homeFeedPreview .feed-tag{font-size:12px!important;padding:3px 10px!important;margin-bottom:8px;}
#homeFeedPreview .feed-meta{font-size:13px!important;margin-top:10px;padding-top:9px;}
#homeFeedPreview .feed-body{padding:13px 15px 14px!important;}
#homeFeedPreview .feed-media img{width:100%!important;max-height:none!important;height:auto!important;aspect-ratio:16/10!important;object-fit:cover!important;}
#homeFeedPreview .feed-media .grid2 img{aspect-ratio:auto!important;height:150px!important;}
#homeFeedPreview .feed-more{font-size:15px!important;padding:13px 24px!important;}
#homeView .share-rows{margin:0!important;}
#panel-home .home-view{padding-bottom:2px;}
#panel-home .app-note{display:none;}
body{padding-bottom:12px!important;}
#panel-home .tools-strip{margin-bottom:0!important;}
/* 🔒 2026-09-06 打磨2：副标题不孤字 / 表单占位与提交按钮 */
 #panel-home .brand-text .hh-sub{white-space:normal;text-wrap:balance;font-size:13.5px;letter-spacing:1px;line-height:1.6;margin-top:6px;}
#panel-home input::placeholder,#panel-home textarea::placeholder{color:#64748b;opacity:.75;}
#panel-home .share-form-row .btn-publish,#panel-home .form-btn-row .btn-submit{width:100%;}
/* 🔒 2026-09-06 版面打磨（手机优先）：顶卡不截字/底栏三格不挤/分享文案精简 */
#panel-home .home-hero{margin-bottom:10px;}
#panel-home .hh-call{position:static;display:block;text-align:center;margin:7px 0 0;font-size:10.5px;line-height:1.3;opacity:.85;letter-spacing:.2px;}
#panel-home .main-pill-btn .num{font-size:11.5px;line-height:1.15;white-space:nowrap;}
#panel-home .main-pill-btn .num b{font-size:13px;}
#panel-home .main-pill-btn .desc{font-size:8.5px;line-height:1.15;margin:0 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
#panel-home .share-rows{gap:7px;padding-left:max(8px,calc((100vw - 420px)/2));padding-right:max(8px,calc((100vw - 420px)/2));}
#panel-home .share-row{min-height:46px;padding:6px 8px;gap:7px;}
#panel-home .share-row .s-ico{font-size:18px;}
#panel-home .share-row .s-txt b{font-size:12px;line-height:1.2;}
#panel-home .share-row .s-txt i{display:block;font-size:9.5px;line-height:1.3;color:rgba(255,255,255,.88);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px;}
@keyframes lv-flow{0%{background-position:0% 30%}50%{background-position:100% 70%}100%{background-position:0% 30%}}
@keyframes lv-breathe{0%,100%{box-shadow:0 6px 0 rgba(15,40,110,.85),0 12px 24px rgba(37,99,235,.35),0 0 10px rgba(147,197,253,.35)}50%{box-shadow:0 6px 0 rgba(15,40,110,.85),0 18px 36px rgba(56,189,248,.8),0 0 30px rgba(224,242,254,.95)}}
.home-hero{background-size:170% 170%;animation:lv-breathe 3.6s ease-in-out infinite,lv-flow 10s ease-in-out infinite}
.main-pill-btn{background-size:170% 170% !important;animation:lv-breathe 3.6s ease-in-out infinite,lv-flow 8s ease-in-out infinite !important}
.tool-pill{background-size:170% 170% !important;animation:lv-breathe 4s ease-in-out infinite,lv-flow 11s ease-in-out infinite !important}
@media (prefers-reduced-motion: reduce){.home-hero,.main-pill-btn,.tool-pill{animation-duration:6s !important}}
@keyframes lv-sweep{0%{transform:translateX(-260%)}60%,100%{transform:translateX(420%)}}
@keyframes lv-halo{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,0),0 8px 18px rgba(37,99,235,.28)}50%{box-shadow:0 0 0 9px rgba(255,255,255,0),0 10px 26px rgba(37,99,235,.55),0 0 24px rgba(224,242,254,.95)}}
.main-pill-btn,.tool-pill,.share-row{position:relative;overflow:hidden}
.main-pill-btn::after,.tool-pill::after,.share-row::after{content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:34%;pointer-events:none;background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.55),rgba(255,255,255,0));transform:translateX(-260%);animation:lv-sweep 4.2s ease-in-out infinite;filter:blur(2px)}
.tool-pill::after{animation-delay:.7s}
.share-row::after{animation-delay:1.4s}
.share-row{background-size:170% 170% !important;animation:lv-breathe 4.2s ease-in-out infinite,lv-flow 12s ease-in-out infinite !important}
.cs-float,.share-float{animation:lv-halo 2.8s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.main-pill-btn::after,.tool-pill::after,.share-row::after{animation-duration:7s}.cs-float,.share-float{animation-duration:6s}}
@keyframes lv-t3d{0%,100%{text-shadow:0 1px 0 rgba(255,255,255,.3),1px 1px 0 #93c5fd,2px 2px 0 #60a5fa,3px 3px 0 #3b82f6,4px 4px 0 #2563eb,5px 5px 0 #1e40af,6px 6px 0 rgba(30,58,138,.95),0 5px 16px rgba(2,20,63,.55),0 0 8px rgba(191,219,254,.95),0 0 18px rgba(56,189,248,.4)}50%{text-shadow:0 1px 0 rgba(255,255,255,.34),1px 1px 0 #93c5fd,2px 2px 0 #60a5fa,3px 3px 0 #3b82f6,4px 4px 0 #2563eb,5px 5px 0 #1d4ed8,6px 6px 0 rgba(30,58,138,.95),0 6px 20px rgba(2,20,63,.62),0 0 14px rgba(191,219,254,1),0 0 30px rgba(56,189,248,.8)}}
.brand-text .hh-title{animation:lv-t3d 3.8s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.brand-text .hh-title{animation-duration:7s}}
.cs-float,.share-float{animation:none !important;width:56px !important;height:56px !important;font-size:10px !important;opacity:1 !important}
.cs-float .f-ico,.share-float .f-ico{font-size:23px !important;line-height:1.15 !important}
.share-float{bottom:calc(10px + env(safe-area-inset-bottom)) !important}
.cs-float{bottom:calc(78px + env(safe-area-inset-bottom)) !important}
.cs-float{outline:none;box-shadow:0 6px 16px rgba(234,88,12,.32),0 0 0 3px rgba(255,237,213,.95),0 0 14px 3px rgba(251,146,60,.6),0 0 26px 6px rgba(251,146,60,.22)}
.share-float{outline:none;box-shadow:0 6px 16px rgba(29,78,216,.4),0 0 0 3px rgba(224,242,254,.95),0 0 14px 3px rgba(56,189,248,.6),0 0 26px 6px rgba(56,189,248,.25)}
@keyframes rim-orbit{to{transform:rotate(360deg)}}
.cs-float::before,.share-float::before{content:"";position:absolute;inset:-5px;border-radius:50%;pointer-events:none;z-index:1;
background:conic-gradient(from 30deg,transparent 0deg 55deg,rgba(255,255,255,.06) 88deg,rgba(255,255,255,.95) 118deg 150deg,rgba(255,255,255,.06) 180deg,transparent 215deg 360deg);
-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px));mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px));
filter:drop-shadow(0 0 3px rgba(255,255,255,.95)) drop-shadow(0 0 9px rgba(191,219,254,.75));
animation:rim-orbit 1.6s linear infinite}
.cs-float>*,.share-float>*{position:relative;z-index:2}
@media (prefers-reduced-motion:reduce){.cs-float::before,.share-float::before{animation-duration:5s}}
@keyframes cnflag-wave{0%,100%{transform:skewY(-8deg) skewX(-5deg) rotate(-2.5deg)}50%{transform:skewY(8deg) skewX(5deg) rotate(2.5deg)}}
.cn-flag{transform-origin:left center;animation:cnflag-wave 1.6s ease-in-out infinite;position:relative}
.cn-flag::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:repeating-linear-gradient(98deg,rgba(255,255,255,0) 0 2px,rgba(255,255,255,.13) 3px 5px,rgba(150,20,10,.20) 6px 8px,rgba(255,255,255,0) 9px 11px)}
@media (prefers-reduced-motion:reduce){.cn-flag{animation-duration:6s}}
/* 2026-09-05 恢复平面地球缓慢自转（同第1版）；3D Cesium 仅联网加载成功时启用 */
.app-header:empty{display:none !important;}
/* ===== 2026-09-05 宽屏自适应：平板/桌面≥900px 生效，手机版不变 ===== */
@media (min-width: 900px) {
  body { background: linear-gradient(180deg, #e8f0fa 0%, #f4f8fd 60%, #eef4fb 100%); }
  .app { max-width: 1180px; width: 100%; margin: 0 auto; padding: 0 30px 46px; box-sizing: border-box; box-shadow: 0 0 70px rgba(15,60,120,.10); border-radius: 0 0 26px 26px; }
  .app-main { width: 100%; }
  .home-hero { position: relative; margin-top: 26px; padding: 56px 70px 58px; border-radius: 30px; overflow: hidden; text-align: center; box-shadow: 0 30px 70px -26px rgba(15,60,120,.42); }
  .brand-band { position: relative; display: block; width: 100%; padding: 0; }
  .brand-globe { position: absolute; left: clamp(6px, 1.4vw, 26px); top: 50%; transform: translateY(-50%); margin: 0; width: clamp(62px, 5.8vw, 92px); height: clamp(62px, 5.8vw, 92px); }
  .brand-globe img { filter: drop-shadow(0 10px 22px rgba(2,20,63,.22)) saturate(1.12) brightness(1.05); }
  .brand-text { display: block; width: auto; max-width: 880px; margin: 0 auto; text-align: center; }
  .brand-text .hh-kicker { display: inline-flex; font-size: 13px; padding: 5px 16px; gap: 8px; margin: 0 auto 8px; }
  .brand-text .hh-title { font-size: clamp(24px, 3vw, 42px); letter-spacing: 1px; white-space: nowrap; text-shadow: 0 5px 18px rgba(2,20,63,.28); }
  .brand-text .hh-sub { font-size: clamp(14px, 1.5vw, 18px); margin-top: 8px; text-align: center; }
  .hh-call { position: absolute; right: clamp(10px, 1.6vw, 22px); bottom: clamp(8px, 1.4vw, 14px); margin: 0; display: inline-flex; align-items: center; gap: 6px; padding: 6px 13px; border-radius: 999px; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.32); font-size: 12px; font-weight: 700; white-space: nowrap; opacity: .95; letter-spacing: .2px; }
  .home-view { width: 100%; max-width: 1020px; margin: 18px auto 0; }
  .app .main-buttons { grid-template-columns: repeat(3, minmax(240px, 1fr)); gap: 18px; }
  .app .main-pill-btn { min-height: 88px; padding: 14px 22px; flex-direction: column; }
  .app .main-pill-btn .ico { font-size: 30px; }
  .app .main-pill-btn .num { font-size: 18px; }
  .app .main-pill-btn .num b { font-size: 21px; }
  .app .main-pill-btn .desc { font-size: 13px; }
  .home-section-title { font-size: 19px; margin: 6px 0 4px; }
  .home-section-title.news-title { font-size: 21px; }
  .home-feed-preview { max-width: 1020px; margin: 0 auto; }
  .feed-card { border-radius: 18px; box-shadow: 0 10px 26px rgba(15,60,120,.10); }
  .tool-grid { grid-template-columns: repeat(auto-fill, minmax(196px, 1fr)); gap: 14px; }
  .tool-grid .tool-pill { min-height: 66px; padding: 10px 18px; gap: 10px; }
  .tool-grid .tool-pill .ico { font-size: 26px; }
  .tool-grid .tool-pill { font-size: 14.5px; }
  .share-rows { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .share-row { min-height: 92px; padding: 18px 20px; border-radius: 20px; }
  .share-row .s-ico { font-size: 30px; }
  .share-row .s-txt b { font-size: 18px; }
  .share-row .s-txt i { font-size: 13.5px; }
  .app-note { font-size: 12.5px; margin-top: 26px; }
  .page-body { padding: 22px 34px 36px; font-size: 15px; line-height: 1.7; }
  .page-search { max-width: 640px; }
  .modal-mask .modal-card { width: min(880px, 92vw); }
  .modal-card #toolContent { font-size: 15px; line-height: 1.7; }
  .share-modal { width: min(640px, 92vw); }
  .cs-float { right: max(22px, calc((100vw - 1180px)/2 + 18px)); bottom: 26px; }
  .share-float { right: max(22px, calc((100vw - 1180px)/2 + 18px)); bottom: 100px; }
}
@media (min-width: 760px) and (max-width: 899px) {
  .app { max-width: 820px; width: 100%; margin: 0 auto; padding: 0 20px 40px; box-sizing: border-box; }
  .home-view { width: 100%; }
  .app .main-buttons { grid-template-columns: repeat(3, 1fr); gap: 14px; }
  .app .main-pill-btn { min-height: 78px; padding: 12px 16px; }
  .brand-globe { width: 62px; height: 62px; }
  .brand-text .hh-title { font-size: 26px; }
  .tool-grid { grid-template-columns: repeat(3, 1fr); }
  .share-rows { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .cs-float, .share-float { right: 26px; }
}
/* C案 2026-09-06：分享三行 = 屏幕底部常驻栏（滑动不跳位） */
.share-rows{position:fixed!important;left:0;right:0;bottom:0;margin:0!important;z-index:90;display:flex!important;flex-direction:row;align-items:center;justify-content:center;gap:10px;padding:9px max(12px,calc((100vw - 1360px)/2)) calc(9px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(8,22,50,.96),rgba(8,22,50,.99));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid rgba(120,180,255,.35);box-shadow:0 -8px 26px rgba(4,16,42,.45)}
.share-rows .share-row{flex:0 1 460px;min-width:0;display:flex!important;flex-direction:row;align-items:center;justify-content:center;gap:9px;margin:0!important;padding:11px 10px;min-height:50px;border-radius:15px}
.share-rows .share-row .s-ico{font-size:21px;line-height:1;flex:none}
.share-rows .share-row .s-txt{flex:0 1 auto!important;display:block!important;text-align:left}
.share-rows .share-row .s-txt b{display:block;font-size:14.5px;font-weight:900;line-height:1.25}
.share-rows .share-row .s-txt i,.share-rows .share-row .s-go{display:none!important}
.share-float,.cs-float{bottom:calc(84px + env(safe-area-inset-bottom))!important;z-index:95}
body{padding-bottom:88px}
.page-view{padding-bottom:80px}
@media (max-width:600px){
.share-rows{gap:6px;padding:7px 10px calc(7px + env(safe-area-inset-bottom))}
.share-rows .share-row{flex:1 1 0;padding:6px 2px;min-height:48px;border-radius:13px;gap:2px;flex-direction:column}
.share-rows .share-row .s-ico{font-size:19px}
.share-rows .share-row .s-txt b{font-size:12px}
body{padding-bottom:76px}
.page-view{padding-bottom:74px}
}
/* A案 2026-09-06：首页实用工具 = 一条入口条 + 全部工具面板（24 个原样保留） */
.tools-strip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 10px;padding:12px 14px;border-radius:18px;background:linear-gradient(135deg,#0a1f3d,#12346b 55%,#352e8c);border:1px solid rgba(148,197,235,.3);box-shadow:0 10px 22px rgba(9,26,66,.18)}
.ts-head{flex:none}
.ts-title{font-size:15.5px;font-weight:900;color:#fff;letter-spacing:.3px;line-height:1.3}
.ts-sub{font-size:11.5px;color:#9db8e8;margin-top:2px}
.ts-scroll{flex:1;min-width:0;display:flex;gap:8px;overflow-x:auto;padding:6px 0;scrollbar-width:none}
.ts-scroll::-webkit-scrollbar{display:none}
.ts-chip{flex:none;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.13);color:#fff;font-size:13px;font-weight:800;border-radius:999px;padding:7px 13px;cursor:pointer;white-space:nowrap;line-height:1.2}
.ts-chip:hover{background:rgba(255,255,255,.22)}
.ts-chip .ico{font-size:15px;line-height:1}
.ts-all{flex:none;border:0;border-radius:999px;padding:11px 18px;font-size:14px;font-weight:900;color:#07213f;background:linear-gradient(135deg,#7deefb,#38bdf8);cursor:pointer;box-shadow:0 6px 14px rgba(56,189,248,.35)}
.alltools-mask{position:fixed;inset:0;z-index:220;background:rgba(5,13,30,.82);display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.alltools-mask.hide{display:none}
.at-card{width:min(980px,100%);max-height:min(86vh,780px);overflow:hidden;display:flex;flex-direction:column;background:#f4f8ff;border-radius:22px;box-shadow:0 24px 60px rgba(2,12,40,.55)}
.at-top{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;background:linear-gradient(135deg,#0a1f3d,#12346b 60%,#352e8c);color:#fff;font-size:17px;font-weight:900}
.at-x{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.15);cursor:pointer;font-size:15px;color:#fff;border:1px solid rgba(255,255,255,.4)}
.at-grid{overflow-y:auto;padding:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.at-item{display:flex;align-items:center;gap:9px;text-align:left;border:0;border-radius:14px;padding:11px 12px;font-size:14px;font-weight:800;color:#fff;cursor:pointer;line-height:1.25;box-shadow:0 4px 10px rgba(15,50,120,.16)}
.at-item .ico{font-size:19px;line-height:1;flex:none}
.at-item.c0{background:linear-gradient(135deg,#3b82f6,#1d4ed8 55%,#1e3a8a)}
.at-item.c1{background:linear-gradient(135deg,#0891b2,#075985 55%,#0c4a6e)}
.at-item.c2{background:linear-gradient(135deg,#059669,#047857 55%,#064e3b)}
.at-item.c3{background:linear-gradient(135deg,#7c3aed,#6d28d9 55%,#4c1d95)}
.at-item.c4{background:linear-gradient(135deg,#ea580c,#c2410c 55%,#7c2d12)}
.at-item.c5{background:linear-gradient(135deg,#e11d48,#be123c 55%,#881337)}
.at-item{animation:breathe-at-blue 3.6s ease-in-out infinite}.at-item:hover{filter:brightness(1.12);transform:translateY(-1px)} @keyframes breathe-at-blue{0%,100%{box-shadow:0 0 0 0 rgba(96,165,250,0),0 4px 10px rgba(15,50,120,.16)}50%{box-shadow:0 0 0 3px rgba(96,165,250,.18),0 0 18px rgba(96,165,250,.5),0 4px 12px rgba(37,99,235,.25)}}
@media (max-width:600px){
.tools-strip{padding:12px 12px;gap:10px}
.ts-head{order:1;width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.ts-title{font-size:15px}
.ts-scroll{order:2;width:100%}
.ts-all{order:3;width:100%;margin-top:2px;text-align:center}
.alltools-mask{padding:10px;align-items:flex-end}
.at-card{border-radius:20px 20px 0 0;max-height:88vh}
.at-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));padding:12px}
}
/* 2026-09-07 手机版按电脑版口径：资讯字体放大+清晰、图片满幅 */
#homeFeedPreview .feed-title{font-size:20px!important;font-weight:900!important;line-height:1.45!important;color:#0c2540!important;}
#homeFeedPreview .feed-text{font-size:16px!important;line-height:1.85!important;color:#26374e!important;}
#homeFeedPreview .feed-meta{font-size:13px!important;color:#5d7691!important;}
#homeFeedPreview .feed-tag{font-size:12.5px!important;}
#homeFeedPreview .feed-media img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:16/9!important;object-fit:cover!important;display:block!important;}
#homeFeedPreview .feed-media .grid2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px!important;}
#homeFeedPreview .feed-media .grid2 img{aspect-ratio:1/1!important;height:auto!important;object-fit:cover!important;}
/* 2026-09-07 手机版工具药丸 = 电脑版同款：彩色渐变 + 白光绕圈呼吸灯 */
.tools-strip .ts-chip,.tools-strip .ts-all,.tool-grid .tool-pill{position:relative;}
.tools-strip .ts-chip{background:linear-gradient(135deg,#60a5fa,#2563eb 60%,#1e40af)!important;border:1px solid rgba(255,255,255,.35)!important;padding:8px 16px!important;min-height:48px!important;gap:8px!important;border-radius:999px!important;box-shadow:0 4px 10px rgba(15,60,120,.28)!important;}
.tools-strip .ts-chip[data-k="fx"]{background:linear-gradient(135deg,#34d399,#059669 60%,#065f46)!important;}
.tools-strip .ts-chip[data-k="timezone"]{background:linear-gradient(135deg,#a78bfa,#7c3aed 60%,#6d28d9)!important;}
.tools-strip .ts-chip[data-k="quickcard"]{background:linear-gradient(135deg,#22d3ee,#0ea5e9 60%,#2563eb)!important;}
.tools-strip .ts-chip[data-k="net"]{background:linear-gradient(135deg,#fbbf24,#f97316 60%,#ea580c)!important;}
.tools-strip .ts-chip[data-k="material"]{background:linear-gradient(135deg,#f472b6,#db2777 60%,#9d174d)!important;}
.tools-strip .ts-chip[data-k="insurance"]{background:linear-gradient(135deg,#fb7185,#e11d48 60%,#be123c)!important;}
.tools-strip .ts-chip .ico{font-size:22px!important;}
.tools-strip .ts-chip > span:not(.ico){font-size:16px!important;font-weight:900!important;color:#fff!important;line-height:1.2;white-space:nowrap;}
.tools-strip .ts-all{background:linear-gradient(135deg,#2563eb,#7c3aed)!important;color:#fff!important;font-size:16px!important;font-weight:900!important;min-height:48px!important;padding:0 18px!important;border-radius:999px!important;}
.runline{position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;z-index:2;opacity:1;border:3px solid transparent;filter:drop-shadow(0 0 6px #fff) drop-shadow(0 0 16px rgba(255,255,255,.95)) drop-shadow(0 0 28px rgba(147,197,253,.85));animation:runLineGlowM 1.1s linear infinite;}
@keyframes runLineGlowM{0%,5%{border-top-color:#fff;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}15%,22%{border-top-color:rgba(255,255,255,.25);border-right-color:#fff;border-bottom-color:transparent;border-left-color:transparent}40%,47%{border-top-color:transparent;border-right-color:rgba(255,255,255,.25);border-bottom-color:#fff;border-left-color:transparent}65%,72%{border-top-color:transparent;border-right-color:transparent;border-bottom-color:rgba(255,255,255,.25);border-left-color:#fff}90%,100%{border-top-color:#fff;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}}
/* 2026-09-07 修复：客服/分享两个悬浮球分开放置，客服在分享正上方 */
.cs-float{right:max(12px, calc(50% - 228px))!important;bottom:calc(152px + env(safe-area-inset-bottom))!important;}
.share-float{right:max(12px, calc(50% - 228px))!important;bottom:calc(84px + env(safe-area-inset-bottom))!important;}
@media (max-width:380px){.cs-float{bottom:calc(146px + env(safe-area-inset-bottom))!important;}}
/* 2026-09-07 24个工具弹层格子：放开裁剪，让绕圈炫光完整可见 */
.tool-grid .tool-pill{overflow:visible!important;}
/* 2026-09-07 全部工具格子：白色呼吸灯（脉动光晕）+ 保留绕圈 */
.tool-grid .tool-pill{overflow:visible!important;animation:itemBreathe 1.8s ease-in-out infinite!important;}
@keyframes itemBreathe{0%,100%{box-shadow:0 0 0 2px rgba(255,255,255,.45),0 4px 12px rgba(15,60,120,.2)}50%{box-shadow:0 0 0 4px rgba(255,255,255,.95),0 0 16px 2px rgba(255,255,255,.85),0 0 28px 6px rgba(147,197,253,.7),0 4px 12px rgba(15,60,120,.25)}}
.at-grid .at-item{position:relative;overflow:visible!important;}
.at-grid .at-item::before{content:"";position:absolute;inset:-3px;border-radius:inherit;pointer-events:none;z-index:1;border:2.5px solid rgba(255,255,255,.9);box-shadow:0 0 10px 1px rgba(255,255,255,.6),0 0 20px 5px rgba(147,197,253,.65),0 4px 14px rgba(15,60,120,.3);animation:atWhiteBreathe 1.6s ease-in-out infinite;}
@keyframes atWhiteBreathe{0%,100%{border-color:rgba(255,255,255,.55);box-shadow:0 0 6px rgba(255,255,255,.3),0 4px 12px rgba(15,60,120,.25)}50%{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.9),0 0 16px 3px rgba(255,255,255,.95),0 0 30px 9px rgba(147,197,253,.8),0 0 46px 18px rgba(255,255,255,.5),0 4px 16px rgba(15,60,120,.3)}}
#homeFeedPreview .feed-card:focus-visible,#newsList .feed-card:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:2px}
.feed-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid #e7eef8}
.feed-inline{display:inline-flex;align-items:center;gap:5px;border:0;border-radius:999px;padding:8px 15px;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;font-size:13px;font-weight:900;cursor:pointer;box-shadow:0 5px 14px rgba(37,99,235,.22)}
.feed-inline:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(37,99,235,.3)}
.feed-inline:active{transform:translateY(1px)}
.feed-source{font-size:12px;color:#7890a8;white-space:nowrap}
.feed-reader .feed-actions{display:none!important}
.feed-reader .fr-source-row{margin-top:18px;padding-top:14px;border-top:1px dashed #d9e5f2}
.feed-reader .fr-source-row a{display:inline-flex;align-items:center;gap:5px;color:#1d4ed8;font-size:14px;font-weight:800;text-decoration:none}
.feed-reader .fr-source-row a:hover{text-decoration:underline}
/* 资讯卡片排版：手机/平板=横向滑动(打横)，电脑=多列等宽对齐；卡片可点开阅读弹层；空态带“去发布” */
.feed-empty .empty-pub{display:inline-block;margin-top:12px;padding:9px 24px;border:0;border-radius:999px;background:linear-gradient(135deg,#3b82f6,#7c3aed);color:#fff!important;font-size:14px;font-weight:800;cursor:pointer;box-shadow:0 4px 14px rgba(59,130,246,.35);line-height:1.5}
.feed-empty .empty-pub:active{transform:scale(.97)}
#homeFeedPreview .feed-card,#newsList .feed-card{cursor:pointer}
#homeFeedPreview .feed-card:hover,#newsList .feed-card:hover{box-shadow:0 8px 24px rgba(30,58,138,.14)}
@media (max-width:900px){
  #newsList{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:12px!important;padding:6px 2px 12px!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:thin!important}
  #newsList .feed-card{flex:0 0 min(86%,340px)!important;scroll-snap-align:start!important;max-height:66vh!important;overflow-y:auto!important}
  #newsList .feed-empty{flex:0 0 100%!important}
}
@media (min-width:901px){
  #newsList{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))!important;gap:16px!important;overflow:visible!important;padding:4px 0 10px!important}
  #newsList .feed-card{flex:none!important;max-height:70vh!important;overflow-y:auto!important}
}
@media (min-width:1000px){
  #homeFeedPreview{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:minmax(0,1fr) auto!important;gap:0 22px!important;align-items:stretch!important;align-content:stretch!important}
  #homeFeedPreview .feed-card{justify-content:flex-start!important;height:auto!important}
  #homeFeedPreview .feed-more{grid-column:1/-1!important;justify-self:center!important;width:auto!important;margin-top:14px!important}
}
.feed-reader{position:fixed;inset:0;z-index:9999;background:rgba(10,20,35,.62);display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(3px)}
.feed-reader .fr-box{background:#fff;border-radius:18px;max-width:640px;width:100%;max-height:86vh;overflow:auto;padding:20px 22px;box-shadow:0 18px 60px rgba(0,0,0,.3)}
.feed-reader .fr-x{float:right;border:0;background:#eef2f7;color:#334155;width:32px;height:32px;border-radius:50%;font-size:16px;cursor:pointer;line-height:1}
.feed-reader .feed-title{font-size:20px;color:#0c2540}
.feed-reader .feed-text{font-size:16px;line-height:1.85;color:#26374e;white-space:pre-line}
.feed-media{position:relative;overflow:hidden;background:#0b1f3a}
.feed-photo-credit{position:absolute;left:10px;right:10px;bottom:10px;z-index:3;display:inline-block;width:fit-content;max-width:calc(100% - 20px);padding:5px 9px;border-radius:8px;background:rgba(4,18,38,.76);color:#fff;font-size:11px;font-weight:700;line-height:1.45;text-shadow:0 1px 2px rgba(0,0,0,.45);backdrop-filter:blur(5px)}
.feed-media-kicker{position:absolute;left:10px;top:10px;z-index:3;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;background:linear-gradient(135deg,rgba(14,165,233,.92),rgba(79,70,229,.92));color:#fff;font-size:11px;font-weight:900;box-shadow:0 6px 18px rgba(2,20,63,.22)}
.feed-gallery{min-height:180px;isolation:isolate}
.feed-gallery .gallery-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:feedGalleryFade 12s ease-in-out infinite}
.feed-gallery .gallery-slide:first-child{opacity:1}
@keyframes feedGalleryFade{0%,25%{opacity:1;transform:scale(1.03)}33%,92%{opacity:0;transform:scale(1)}100%{opacity:1;transform:scale(1.03)}}
.feed-fallback{min-height:180px;display:grid;place-content:center;justify-items:center;gap:5px;text-align:center;padding:22px;background:radial-gradient(circle at 30% 18%,rgba(255,255,255,.28),transparent 32%),linear-gradient(135deg,#0ea5e9 0%,#2563eb 52%,#4f46e5 100%);color:#fff}
.feed-fallback .fi{font-size:54px;line-height:1;filter:drop-shadow(0 6px 14px rgba(0,20,70,.32))}
.feed-fallback b{font-size:23px;line-height:1.2}
.feed-fallback small{font-size:12px;font-weight:800;opacity:.9}
.feed-fallback em{font-size:11px;font-style:normal;font-weight:700;opacity:.82}
.feed-reader .feed-media{flex:0 0 auto;max-height:260px;border-radius:14px;margin:4px 0 16px}
.feed-reader .feed-media img{width:100%;height:100%;max-height:260px;object-fit:cover}
.feed-reader .feed-fallback{min-height:200px}
@media (prefers-reduced-motion:reduce){.feed-gallery .gallery-slide{animation:none}.feed-gallery .gallery-slide:not(:first-child){display:none}}
/* 国家名单页横排：小屏3-4列横铺，不再是竖长条（2026-09-09 v2） */
@media (max-width:600px){
  .country-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))!important;gap:8px!important;padding:2px 0 6px!important}
  .country-tag{min-height:76px!important;padding:8px 4px!important;font-size:12.5px!important;gap:5px!important;border-radius:12px!important}
  .country-tag .fi{font-size:20px!important}
}
@media (min-width:601px) and (max-width:1000px){
  .country-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr))!important;gap:10px!important}
}
/* 电脑宽屏横铺（2026-09-09）：签证国家名单页/资讯页正文不再窄条竖排 */
@media (min-width:1100px){
  #listPage .page-body, #infoNewsPage .page-body, #infoAppPage .page-body, #csPage .page-body{max-width:none!important;width:100%!important}
  #listPage .country-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:14px!important}
  #listPage .country-tag{min-height:96px!important;font-size:14.5px!important}
  #newsList{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))!important}
}
.ext-note{background:#eef4ff;border:1px solid #c7d8f7;color:#1e3a8a;font-size:12.5px;line-height:1.7;border-radius:10px;padding:8px 12px;margin:0 0 10px}
#newsList a.feed-title{display:block;color:#0c2540;text-decoration:none;font-weight:900;margin:6px 0}
#newsList a.feed-title:hover{color:#1d4ed8;text-decoration:underline}
#newsList .feed-open{color:#1d4ed8;text-decoration:none;font-weight:700;font-size:12.5px}
#newsList .feed-open:hover{text-decoration:underline}
#newsList .feed-card .feed-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}
.at-grid .at-item::before{border-width:2px!important;border-color:rgba(255,255,255,.85)!important;box-shadow:0 0 6px rgba(255,255,255,.35),0 0 14px 2px rgba(147,197,253,.4),0 4px 10px rgba(15,60,120,.22)!important;animation:atRing 2.6s ease-in-out infinite!important;}
@keyframes atRing{0%,100%{border-color:rgba(255,255,255,.55);box-shadow:0 0 5px rgba(255,255,255,.22),0 0 10px 1px rgba(147,197,253,.3),0 4px 10px rgba(15,60,120,.2)}50%{border-color:#fff;box-shadow:0 0 8px 1px rgba(255,255,255,.55),0 0 18px 4px rgba(147,197,253,.5),0 4px 12px rgba(15,60,120,.24)}}
.at-grid .at-item > .runline{opacity:1!important;border:3px solid transparent!important;animation:atComet 2.4s linear infinite!important;filter:drop-shadow(0 0 4px rgba(255,255,255,.95))!important;border-radius:inherit!important;}
@keyframes atComet{0%,4%{border-top-color:#fff;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}16%,20%{border-top-color:rgba(255,255,255,.18);border-right-color:#fff;border-bottom-color:transparent;border-left-color:transparent}36%,40%{border-top-color:transparent;border-right-color:rgba(255,255,255,.18);border-bottom-color:#fff;border-left-color:transparent}56%,60%{border-top-color:transparent;border-right-color:transparent;border-bottom-color:rgba(255,255,255,.18);border-left-color:#fff}76%,80%{border-top-color:#fff;border-right-color:transparent;border-bottom-color:transparent;border-left-color:rgba(255,255,255,.18)}100%{border-top-color:#fff;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}}
.at-grid .at-item .at-lab{text-shadow:0 1px 2px rgba(6,20,50,.55),0 0 1px rgba(6,20,50,.45);}
/* ===== 2026-09-15 老板要求：首屏 1 秒抓眼球，主题字“出国旅游助手”做绝对主角 =====
   层级：主题字（金色流光+描边+光晕）> 副题（小黄标/说明行，压小压淡）> 元信息（日期时间/热线，退到最小）
   仅手机/平板（≤899px）生效；电脑版 ≥900px 完全不动。 */
@media (max-width:899px){
  /* 顶部一排：地球仪靠左、红旗小黄标靠右（display:contents 把 brand-text 打散成 flex 子项，省掉整段竖向空间） */
  #panel-home .brand-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 6px;padding:0 2px;}
  #panel-home .brand-text{display:contents;}
  #panel-home #brandGlobe{position:relative;width:clamp(38px,10.5vw,46px);height:clamp(38px,10.5vw,46px);margin:0;flex:0 0 auto;}
  #panel-home #brandGlobe::before{content:"";position:absolute;inset:-42%;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,214,90,.40) 0%,rgba(147,197,253,.34) 42%,rgba(255,255,255,0) 72%);}
  #panel-home #brandGlobe img{filter:drop-shadow(0 0 9px rgba(191,219,254,.7)) saturate(1.15) brightness(1.08);}
  #panel-home .brand-text .hh-kicker{font-size:10.5px;letter-spacing:.6px;padding:2px 10px;gap:4px;opacity:.85;margin:0;flex:0 0 auto;}
  #panel-home .brand-text .hh-kicker .cn-flag{width:22px;height:14px;}
  #panel-home .brand-text .hh-title{
    font-size:clamp(31px,11vw,46px); letter-spacing:2px; margin:3px 0 6px; flex:1 1 100%;
    color:transparent; -webkit-text-fill-color:transparent; text-shadow:none;
    background-image:linear-gradient(100deg,#F0A81C 0%,#FFD24D 10%,#FFE9A8 20%,#FFFDF2 30%,#FFD24D 42%,#E8901A 56%,#FFD24D 68%,#FFF0B4 80%,#F0A81C 90%,#FFD24D 100%);
    background-size:200% 100%; background-position:0% 50%;
    -webkit-background-clip:text; background-clip:text;
    filter:drop-shadow(0 1px 0 rgba(9,28,80,.95)) drop-shadow(0 0 2px rgba(9,28,80,.7)) drop-shadow(0 5px 14px rgba(2,20,63,.6)) drop-shadow(0 0 16px rgba(255,214,90,.5));
    animation:hf-pop .8s cubic-bezier(.2,.9,.25,1.15) both, hf-shine 5.5s ease-in-out .8s infinite alternate;
  }
  #panel-home .brand-text .hh-sub{font-size:12.5px;letter-spacing:1.2px;opacity:.84;margin:5px 0 0;flex:1 1 100%;}
  #panel-home .home-hero > .hh-meta{margin-top:10px;}
  #panel-home .hh-meta > .hh-clock{font-size:10px;opacity:.72;letter-spacing:.2px;}
  #panel-home .hh-meta > .hh-clock b{font-size:1.15em;}
  #panel-home .hh-meta > .hh-call{font-size:10px!important;opacity:.68!important;}
}
@keyframes hf-pop{0%{transform:scale(.8);opacity:0}62%{transform:scale(1.045);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes hf-shine{0%{background-position:0% 50%}100%{background-position:100% 50%}}
@media (max-width:375px){
  #panel-home .home-hero > .hh-meta{flex-wrap:wrap;row-gap:2px;}
  #panel-home .hh-meta > .hh-call{flex:1 1 100%!important;max-width:100%!important;text-align:center!important;margin-top:3px!important;}
}
@media (prefers-reduced-motion: reduce){#panel-home .brand-text .hh-title{animation:hf-pop .6s ease-out both}}
/* 2026-09-19 手机版：「出国旅游助手」做绝对主角（居中/放大/发光）；北京时间在左、领保热线在右同排。仅 ≤899px 生效，电脑版不动。 */
@media (max-width:899px){
  #panel-home .home-hero{padding:10px 12px 12px!important;border-radius:18px!important;text-align:center!important;}
  #panel-home #brandGlobe{width:clamp(30px,9vw,38px)!important;height:clamp(30px,9vw,38px)!important;}
  #panel-home .brand-text .hh-kicker{font-size:9.5px!important;padding:2px 8px!important;letter-spacing:.3px!important;opacity:.78!important;}
  #panel-home .brand-text .hh-kicker .cn-flag{width:18px!important;height:11px!important;}
  #panel-home .brand-text .hh-title{font-size:clamp(33px,12.4vw,48px)!important;line-height:1.12!important;letter-spacing:2px!important;margin:4px auto!important;padding:1px 0!important;width:100%!important;text-align:center!important;
    filter:drop-shadow(0 1px 0 rgba(9,28,80,.95)) drop-shadow(0 0 3px rgba(9,28,80,.75)) drop-shadow(0 6px 16px rgba(2,20,63,.6)) drop-shadow(0 0 20px rgba(255,214,90,.7))!important;}
  #panel-home .brand-text .hh-sub{font-size:10.5px!important;letter-spacing:.3px!important;line-height:1.4!important;margin:2px 0 0!important;opacity:.8!important;}
  #panel-home .home-hero > .hh-meta{flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;column-gap:6px!important;row-gap:1px!important;margin-top:5px!important;}
  #panel-home .hh-meta > .hh-clock{text-align:left!important;font-size:8px!important;line-height:1.3!important;opacity:.62!important;flex:0 1 auto!important;min-width:0!important;}
  #panel-home .hh-meta > .hh-clock b{font-size:1.1em!important;}
  #panel-home .hh-meta > .hh-call{text-align:right!important;font-size:8px!important;line-height:1.3!important;opacity:.62!important;margin:0 0 0 auto!important;flex:0 1 auto!important;max-width:none!important;}
  footer{padding:8px 4% 6px!important;margin-top:2px!important;line-height:1.55!important;font-size:10.5px!important;}
  #pageTips{padding:10px 18px calc(208px + env(safe-area-inset-bottom))!important;font-size:10.5px!important;line-height:1.6!important;letter-spacing:.3px!important;}
}
@media (max-width:379px){
  #panel-home .hh-meta > .hh-clock, #panel-home .hh-meta > .hh-call{font-size:7.4px!important;}
}
/* end compact */
/* Mobile news: use full-width vertical cards so photos and videos are comfortable to inspect. */
@media (max-width:900px){
  #newsList{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;overflow:visible!important;gap:16px!important;padding:8px 0 18px!important;scroll-snap-type:none!important;}
  #newsList .feed-card{flex:0 0 auto!important;width:100%!important;max-width:760px!important;min-width:0!important;margin:0 auto!important;max-height:none!important;overflow:hidden!important;scroll-snap-align:none!important;}
  #newsList .feed-media img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:3/2!important;object-fit:cover!important;}
  #newsList .feed-media .grid2{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;}
  #newsList .feed-media .grid2 img{aspect-ratio:1/1!important;height:auto!important;}
  #newsList .feed-video{width:100%!important;aspect-ratio:16/9!important;}
}
@media (max-width:380px){#newsList .feed-body{padding:14px 14px 16px!important;}}
/* 大面积真实图片 + 大字号，确保手机和电脑上都能看清。 */
#homeFeedPreview .feed-title,#newsList .feed-title{font-size:25px!important;font-weight:900!important;line-height:1.4!important;color:#092b4f!important;margin:10px 0!important;}
#homeFeedPreview .feed-text,#newsList .feed-text{font-size:18.5px!important;line-height:1.78!important;color:#213a55!important;font-weight:600!important;}
#homeFeedPreview .feed-meta,#newsList .feed-meta{font-size:14px!important;line-height:1.5!important;color:#56708b!important;font-weight:700!important;}
#homeFeedPreview .feed-tag,#newsList .feed-tag{font-size:14px!important;font-weight:900!important;padding:5px 12px!important;}
#newsList .feed-actions .feed-inline{font-size:15px!important;padding:10px 18px!important;}
#newsList .feed-source{font-size:13.5px!important;font-weight:700!important;}
#homeFeedPreview .feed-media,#newsList .feed-media{min-height:210px;background:#dbeafe;}
#homeFeedPreview .feed-media img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:16/9!important;object-fit:cover!important;display:block!important;}
#newsList .feed-media img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:3/2!important;object-fit:cover!important;display:block!important;}
.feed-photo-credit{font-size:13px!important;font-weight:800!important;padding:7px 11px!important;}
.feed-media-kicker{font-size:13px!important;font-weight:900!important;padding:7px 12px!important;}
.feed-fallback b{font-size:27px!important}.feed-fallback small{font-size:14px!important}.feed-fallback em{font-size:13px!important}
@media (max-width:900px){
  #homeFeedPreview .feed-title,#newsList .feed-title{font-size:23px!important;line-height:1.42!important;}
  #homeFeedPreview .feed-text,#newsList .feed-text{font-size:18px!important;line-height:1.8!important;}
  #homeFeedPreview .feed-media,#newsList .feed-media{min-height:230px;}
  #newsList .feed-media img{aspect-ratio:4/3!important;}
}
.ts-chip>.ico~.ico,.ts-mini>.ico~.ico,.at-item>.ico~.ico,.tool-pill>.ico~.ico,.main-pill-btn>.ico~.ico,.share-row>.s-ico~.s-ico{display:none!important}
.ts-chip .ico::before,.ts-chip .ico::after,.ts-mini .ico::before,.ts-mini .ico::after,.at-item .ico::before,.at-item .ico::after,.tool-pill .ico::before,.tool-pill .ico::after,.main-pill-btn .ico::before,.main-pill-btn .ico::after,.share-row .s-ico::before,.share-row .s-ico::after{content:none!important;display:none!important}
/* 2026-09-24：手机版金色主题字改成任意宽度都生效。
   原来只在不超过 899px 时生效，iPad 横屏或宽窗口打开手机版时标题会回退成白色。 */
#panel-home .brand-text .hh-title,
#panel-home .brand-text .hh-title > span{
  color:transparent!important; -webkit-text-fill-color:transparent!important;
  text-shadow:none!important;
}
#panel-home .brand-text .hh-title{
  background-image:linear-gradient(100deg,#F0A81C 0%,#FFD24D 10%,#FFE9A8 20%,#FFFDF2 30%,#FFD24D 42%,#E8901A 56%,#FFD24D 68%,#FFF0B4 80%,#F0A81C 90%,#FFD24D 100%);
  background-size:200% 100%; background-position:0% 50%;
  -webkit-background-clip:text; background-clip:text;
  animation:hf-pop .8s cubic-bezier(.2,.9,.25,1.15) both, hf-shine 5.5s ease-in-out .8s infinite alternate!important;
}
@media (min-width:900px){
  #panel-home .brand-text .hh-title{
    filter:drop-shadow(0 2px 0 rgba(9,28,80,.9)) drop-shadow(0 0 3px rgba(9,28,80,.6)) drop-shadow(0 8px 22px rgba(2,20,63,.5)) drop-shadow(0 0 24px rgba(255,214,90,.45));
  }
}
@media (prefers-reduced-motion: reduce){#panel-home .brand-text .hh-title{animation:hf-pop .6s ease-out both!important}}
.feed-tag.t-ext{background:linear-gradient(135deg,#0ea5e9,#2563eb 58%,#4f46e5)!important;}
.ext-note{background:linear-gradient(135deg,#e8f5ff,#eef2ff)!important;border-color:#bfd4ff!important;color:#173b78!important;font-weight:800!important;}
@media (max-width:900px){.ext-note{margin-bottom:12px!important;}}
#iosInstallModal{position:fixed;inset:0;z-index:10050;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(5,24,52,.72);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
#iosInstallModal.on{display:flex}
.ios-install-card{position:relative;width:min(620px,100%);max-height:92vh;overflow:auto;padding:30px 24px calc(24px + env(safe-area-inset-bottom));border:3px solid #2563eb;border-radius:20px;background:#fff;color:#102844;text-align:left;box-shadow:0 24px 70px rgba(0,20,65,.42)}
.ios-install-card h2{margin:0 46px 14px 0;font-size:32px;line-height:1.28;font-weight:900;color:#0b3a79}
.ios-install-card p{margin:0 0 18px;font-size:22px;line-height:1.7;font-weight:800;color:#173b65}
.ios-install-step{display:flex;gap:14px;align-items:flex-start;margin:12px 0;padding:16px 14px;border:2px solid #b9d7fa;border-radius:14px;background:#eef7ff;font-size:22px;line-height:1.65;font-weight:900;color:#102844}
.ios-install-step b{flex:none;display:grid;place-items:center;min-width:44px;height:44px;border-radius:50%;background:#0b67d1;color:#fff;font-size:20px}
.ios-share-mark{display:inline-grid;place-items:center;min-width:46px;height:46px;margin:0 5px;border:3px solid #0b67d1;border-radius:11px;color:#0b67d1;font-size:31px;font-weight:900;line-height:1;vertical-align:middle}
.ios-install-actions{display:grid;gap:12px;margin-top:20px}
.ios-install-btn{display:block;width:100%;padding:17px 14px;border:0;border-radius:14px;background:linear-gradient(135deg,#38bdf8,#2563eb);color:#fff;font:900 24px/1.3 "Microsoft YaHei","PingFang SC",sans-serif;cursor:pointer}
.ios-install-btn.copy{background:linear-gradient(135deg,#34d399,#059669)}
.ios-install-close{position:absolute;top:10px;right:10px;width:48px;height:48px;border:0;border-radius:50%;background:#e8f0fa;color:#173b65;font:900 27px/1 sans-serif;cursor:pointer}
@media(max-width:380px){.ios-install-card{padding:26px 16px calc(18px + env(safe-area-inset-bottom))}.ios-install-card h2{font-size:27px}.ios-install-card p{font-size:19px}.ios-install-step{font-size:19px;gap:10px}.ios-install-step b{min-width:38px;height:38px;font-size:17px}.ios-install-btn{font-size:21px}}
#pwaOffline{position:fixed;left:50%;transform:translateX(-50%);top:calc(8px + env(safe-area-inset-top));z-index:10060;display:none;align-items:center;justify-content:center;padding:11px 18px;border-radius:999px;background:#8a4b00;color:#fff;font:900 16px/1.35 "Microsoft YaHei","PingFang SC",sans-serif;box-shadow:0 8px 22px rgba(0,0,0,.28);max-width:92vw;text-align:center}
#pwaOffline.on{display:flex}
/* 安装引导弹窗弹出时，别让断网提示压住它 */
#iosInstallModal.on ~ #pwaOffline{display:none!important}
#pwaUpdate{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom));z-index:10061;display:none;align-items:center;justify-content:center;padding:13px 20px;border:0;border-radius:999px;background:#0b67d1;color:#fff;font:900 18px/1.3 "Microsoft YaHei","PingFang SC",sans-serif;box-shadow:0 10px 26px rgba(11,103,209,.42);cursor:pointer;max-width:92vw}
#pwaUpdate.on{display:flex}
/* ===== 2026-10-02 手机版适配修复：窄屏标题不再截断 / 不被悬浮球挡字 / 字号加大 ===== */
@media (max-width:600px){
  .cs-float,.share-float{display:none!important;}
  .share-rows{gap:6px!important;padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;}
  .share-rows .share-row{flex:1 1 0!important;min-width:0!important;min-height:56px!important;padding:7px 2px!important;gap:3px!important;flex-direction:column!important;}
  .share-rows .share-row .s-ico{font-size:21px!important;}
  .share-rows .share-row .s-txt b{font-size:13px!important;line-height:1.2!important;white-space:nowrap!important;}
  body{padding-bottom:84px!important;}
  .home-section-title.news-title{white-space:normal!important;line-height:1.4!important;min-height:46px!important;align-items:center!important;}
  .home-section-title.news-title .bar{height:1.2em!important;}
  .feed-inline{min-height:44px!important;padding:10px 18px!important;font-size:14px!important;}
  #panel-home .main-pill-btn .num{font-size:14px!important;}
  #panel-home .main-pill-btn .desc{font-size:10.5px!important;line-height:1.25!important;}
  #pageTips{font-size:12px!important;line-height:1.75!important;}
}
@media (max-width:899px){
  #panel-home .home-hero > .hh-meta{flex-direction:column!important;align-items:center!important;gap:2px!important;margin-top:6px!important;}
  #panel-home .hh-meta > .hh-clock,
  #panel-home .hh-meta > .hh-call{width:100%!important;max-width:100%!important;flex:0 1 auto!important;text-align:center!important;margin:0!important;white-space:normal!important;}
  #panel-home .brand-text .hh-kicker{font-size:11.5px!important;opacity:.9!important;}
  #panel-home .brand-text .hh-sub{font-size:12.5px!important;line-height:1.5!important;opacity:.9!important;}
  #panel-home .hh-meta > .hh-clock,
  #panel-home .hh-meta > .hh-call{font-size:11.5px!important;line-height:1.4!important;opacity:.92!important;}
}
@media (max-width:379px){
  #panel-home .brand-text .hh-kicker{font-size:11px!important;}
  #panel-home .brand-text .hh-sub{font-size:12px!important;}
  #panel-home .hh-meta > .hh-clock,
  #panel-home .hh-meta > .hh-call{font-size:11px!important;}
  #panel-home .main-pill-btn .desc{font-size:10px!important;}
}
.share-row.r-blue{background:linear-gradient(135deg,#2563eb,#1d4ed8 60%,#0f3a9e)!important;}
@media (max-width:600px){
  #panel-home .main-pill-btn .desc{font-size:11px!important;}
}
@media (max-width:360px){
  /* 320px 这种小屏，三个按钮横排会挤掉文字，改成竖排大字 */
  #panel-home .main-buttons{grid-template-columns:1fr!important;gap:10px!important;}
  #panel-home .main-pill-btn{min-height:64px!important;}
  #panel-home .main-pill-btn .num{font-size:15px!important;}
  #panel-home .main-pill-btn .desc{display:block!important;font-size:11.5px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;max-width:100%!important;}
}

/* 2026-10-02 方案A：分享表单里的图片/视频上传要求（大字清楚） */
.share-rules{margin:10px 2px 2px;padding:10px 12px;border:1px solid #c7d8f7;border-radius:10px;background:#f4f8ff;color:#24486f;font-size:15px;line-height:1.75}
.share-rules summary{cursor:pointer;font-weight:900;color:#0b3a79;font-size:15px}
.share-rules b{color:#08366f}
.share-rules div{margin-top:8px}
