:root{
    --blue:#8ecbf0;
    --pink:#ffb7c5;
    --yellow:#ffe08a;
    --mint:#b8ead6;
    --purple:#d8ccf5;
    --ink:#2b2b3a;
    --paper:#fffdf7;
    --line:#2b2b3a;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
    color:var(--ink);
    background:var(--paper);
    line-height:1.7;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1120px;margin:0 auto;padding:0 20px;}

  /* halftone dot texture */
  .dots{
    background-image:radial-gradient(var(--ink) 1px, transparent 1px);
    background-size:12px 12px;
  }

  /* header */
  .site-header{
    position:sticky;top:0;z-index:50;
    background:rgba(255,253,247,.95);
    border-bottom:3px solid var(--ink);
    backdrop-filter:blur(6px);
  }
  .header-inner{
    display:flex;align-items:center;justify-content:space-between;
    gap:16px;padding:10px 20px;max-width:1120px;margin:0 auto;
  }
  .brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:.5px;}
  .brand img{height:34px;width:auto;}
  .brand span{color:#e05a8a;}
  .nav{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;font-weight:600;}
  .nav a{padding:4px 2px;border-bottom:2px solid transparent;transition:.2s;}
  .nav a:hover{border-bottom-color:#e05a8a;color:#e05a8a;}
  .menu-btn{display:none;background:var(--yellow);border:2px solid var(--ink);border-radius:8px;font-size:18px;padding:4px 12px;font-weight:800;cursor:pointer;}

  /* hero */
  .hero{
    position:relative;
    padding:48px 0 64px;
    background:linear-gradient(120deg,var(--blue) 0%,#cbeaff 45%,var(--pink) 100%);
    overflow:hidden;
    border-bottom:3px solid var(--ink);
  }
  .hero::before{
    content:"";position:absolute;inset:0;
    background-image:radial-gradient(rgba(43,43,58,.28) 1.2px, transparent 1.2px);
    background-size:14px 14px;
    opacity:.55;pointer-events:none;
  }
  .hero::after{
    content:"";position:absolute;right:-10%;top:0;width:70%;height:100%;
    background:repeating-conic-gradient(from 0deg at 100% 50%, rgba(255,255,255,.5) 0deg 2deg, transparent 2deg 8deg);
    pointer-events:none;opacity:.5;
  }
  .hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;}
  .hero-tag{
    display:inline-block;background:var(--ink);color:#fff;font-size:13px;font-weight:700;
    padding:4px 14px;border-radius:20px;transform:rotate(-2deg);margin-bottom:14px;
  }
  .hero h1{font-size:40px;line-height:1.25;font-weight:900;letter-spacing:.5px;margin-bottom:16px;}
  .hero h1 em{font-style:normal;color:#e05a8a;position:relative;}
  .hero h1 em::after{
    content:"";position:absolute;left:0;right:0;bottom:2px;height:10px;
    background:var(--yellow);z-index:-1;border-radius:4px;
  }
  .hero p.lead{font-size:16px;margin-bottom:20px;max-width:520px;}
  .hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px;}
  .hero-chips span{
    background:#fff;border:2px solid var(--ink);border-radius:20px;
    padding:3px 12px;font-size:13px;font-weight:700;
  }
  .hero-actions{display:flex;flex-wrap:wrap;gap:12px;}
  .btn{
    display:inline-flex;align-items:center;gap:8px;
    font-weight:800;font-size:15px;padding:12px 24px;border-radius:14px;
    border:3px solid var(--ink);cursor:pointer;transition:transform .15s, box-shadow .15s;
    background:#fff;box-shadow:4px 4px 0 var(--ink);
  }
  .btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);}
  .btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink);}
  .btn-main{background:#ffd23f;}
  .btn-sub{background:#ffe6ef;}

  .hero-visual{position:relative;min-height:340px;}
  .panel-stack{position:relative;height:100%;}
  .panel-card{
    position:absolute;border:3px solid var(--ink);border-radius:10px;
    overflow:hidden;background:#fff;box-shadow:6px 6px 0 var(--ink);
    transition:transform .3s;
  }
  .panel-card img{width:100%;height:100%;object-fit:cover;}
  .pc1{width:46%;height:250px;left:0;top:24px;transform:rotate(-4deg);z-index:2;}
  .pc2{width:44%;height:220px;right:0;top:0;transform:rotate(5deg);z-index:3;}
  .pc3{width:40%;height:180px;left:32%;bottom:0;transform:rotate(-2deg);z-index:4;}
  .panel-card:hover{transform:rotate(0) scale(1.04);z-index:9;}
  .sfx{
    position:absolute;font-weight:900;color:#e05a8a;
    font-size:22px;letter-spacing:1px;z-index:6;
    text-shadow:2px 2px 0 #fff;pointer-events:none;
  }
  .sfx.s1{top:0;left:2%;transform:rotate(-8deg);}
  .sfx.s2{bottom:8%;right:2%;transform:rotate(6deg);color:#2f7dbb;}

  /* section base */
  section{padding:64px 0;position:relative;}
  .sec-head{text-align:center;margin-bottom:40px;}
  .sec-head h2{font-size:30px;font-weight:900;display:inline-block;position:relative;padding-bottom:10px;}
  .sec-head h2::after{
    content:"";position:absolute;left:10%;right:10%;bottom:0;height:8px;
    background:var(--yellow);border-radius:6px;z-index:-1;
  }
  .sec-head p{margin-top:12px;font-size:15px;color:#555;}

  /* 今日更新 panel wall */
  .sec-update{background:#eaf7ff;}
  .panel-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .comic-panel{
    position:relative;background:#fff;border:3px solid var(--ink);
    border-radius:8px;overflow:hidden;transition:transform .2s;
    box-shadow:5px 5px 0 rgba(43,43,58,.85);
  }
  .comic-panel:hover{transform:scale(1.04) rotate(-1deg);}
  .comic-panel img{width:100%;height:220px;object-fit:cover;}
  .comic-panel .meta{padding:10px 12px 14px;}
  .comic-panel .meta h3{font-size:15px;font-weight:800;margin-bottom:4px;}
  .comic-panel .meta span{font-size:12px;color:#666;}
  .noise{
    position:absolute;top:8px;right:8px;background:#ffd23f;border:2px solid var(--ink);
    font-size:12px;font-weight:900;padding:1px 8px;border-radius:6px;
    transform:rotate(6deg) scale(.7);opacity:0;transition:.22s;pointer-events:none;
  }
  .comic-panel:hover .noise{opacity:1;transform:rotate(6deg) scale(1);}

  /* 热门推荐 timeline */
  .sec-hot{background:#fff6f9;}
  .timeline{position:relative;max-width:980px;margin:0 auto;padding:10px 0;}
  .timeline::before{
    content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;
    background:repeating-linear-gradient(180deg,var(--ink) 0 10px,transparent 10px 20px);
    transform:translateX(-50%);
  }
  .tl-item{display:flex;gap:32px;align-items:center;margin-bottom:44px;position:relative;}
  .tl-item:nth-child(even){flex-direction:row-reverse;}
  .tl-poster{
    width:42%;flex-shrink:0;border:3px solid var(--ink);border-radius:10px;overflow:hidden;
    box-shadow:6px 6px 0 var(--pink);background:#fff;
  }
  .tl-poster img{width:100%;height:240px;object-fit:cover;}
  .tl-text{width:58%;}
  .tl-text .date{display:inline-block;background:var(--ink);color:#fff;font-size:12px;font-weight:700;padding:2px 10px;border-radius:6px;margin-bottom:8px;}
  .tl-text h3{font-size:20px;font-weight:900;margin-bottom:8px;}
  .tl-text p{font-size:14px;color:#555;margin-bottom:10px;}
  .tags{display:flex;flex-wrap:wrap;gap:6px;}
  .tags span{background:#fff;border:2px solid var(--ink);border-radius:14px;font-size:12px;padding:1px 10px;font-weight:700;}

  /* 云传输带 */
  .sec-sync{background:#f1fbf5;}
  .cloud-belt{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;}
  .belt-visual{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:24px;border:3px dashed #5cb98f;border-radius:20px;background:#fff;}
  .device{text-align:center;flex:1;}
  .device img{width:100%;max-width:130px;height:130px;object-fit:cover;border-radius:14px;border:3px solid var(--ink);margin:0 auto;}
  .device p{font-size:13px;font-weight:700;margin-top:8px;}
  .dash-line{flex:0 0 60px;height:2px;background:repeating-linear-gradient(90deg,#2b2b3a 0 6px,transparent 6px 12px);}
  .bubble{
    position:relative;background:#fff;border:3px solid var(--ink);border-radius:16px;
    padding:12px 18px;font-size:14px;font-weight:700;box-shadow:4px 4px 0 var(--mint);
    margin-bottom:16px;
  }
  .bubble::after{content:"";position:absolute;left:24px;bottom:-14px;border:8px solid transparent;border-top-color:var(--ink);}
  .sync-list{list-style:none;}
  .sync-list li{font-size:14px;margin-bottom:10px;padding-left:22px;position:relative;}
  .sync-list li::before{content:"✔";position:absolute;left:0;color:#2f9e6d;font-weight:900;}

  /* 弹幕 & 评论 */
  .sec-barrage{background:#fffbe6;overflow:hidden;}
  .bubble-matrix{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:18px;max-width:1000px;margin:0 auto;
  }
  .chat-bubble{
    display:flex;gap:10px;align-items:flex-start;
    background:#fff;border:3px solid var(--ink);border-radius:18px;
    padding:12px 14px;box-shadow:4px 4px 0 var(--purple);
  }
  .chat-bubble:nth-child(3n){box-shadow:4px 4px 0 var(--pink);}
  .chat-bubble:nth-child(3n+1){box-shadow:4px 4px 0 var(--yellow);}
  .avatar{width:38px;height:38px;border-radius:50%;border:2px solid var(--ink);flex-shrink:0;overflow:hidden;background:var(--blue);}
  .avatar img{width:100%;height:100%;object-fit:cover;}
  .chat-body{font-size:13px;line-height:1.55;}
  .chat-body strong{display:block;font-size:12px;color:#e05a8a;margin-bottom:2px;}

  /* FAQ */
  .sec-faq{background:#f4f2ff;}
  .faq-list{max-width:820px;margin:0 auto;}
  .faq-item{
    background:#fff;border:3px solid var(--ink);border-radius:14px;
    margin-bottom:14px;overflow:hidden;box-shadow:4px 4px 0 var(--purple);
  }
  .faq-q{
    display:flex;justify-content:space-between;align-items:center;gap:12px;
    padding:14px 18px;font-weight:800;font-size:15px;cursor:pointer;
    background:#fff;transition:.2s;
  }
  .faq-q:hover{background:#fdf6ff;}
  .faq-q .mark{transition:transform .2s;font-size:18px;color:#e05a8a;font-weight:900;}
  .faq-item.open .faq-q .mark{transform:rotate(45deg);}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 18px;}
  .faq-item.open .faq-a{max-height:260px;padding:0 18px 16px;}
  .faq-a p{font-size:14px;color:#555;}

  /* download */
  .sec-download{
    background:linear-gradient(140deg,var(--blue),var(--pink));
    border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);
    position:relative;overflow:hidden;
  }
  .sec-download::before{
    content:"";position:absolute;inset:0;
    background-image:radial-gradient(rgba(255,255,255,.5) 1.5px, transparent 1.5px);
    background-size:16px 16px;pointer-events:none;
  }
  .download-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;}
  .install-steps{background:rgba(255,255,255,.9);border:3px solid var(--ink);border-radius:18px;padding:24px;box-shadow:6px 6px 0 var(--ink);}
  .install-steps h3{font-size:20px;font-weight:900;margin-bottom:14px;}
  .install-steps ol{padding-left:20px;}
  .install-steps li{font-size:14px;margin-bottom:10px;color:#444;}
  .download-cta{display:flex;flex-direction:column;gap:14px;align-items:flex-start;}
  .dl-btn{
    display:inline-flex;align-items:center;gap:10px;
    background:#fff;border:3px solid var(--ink);border-radius:16px;
    padding:14px 26px;font-weight:900;font-size:16px;box-shadow:5px 5px 0 var(--ink);
    transition:transform .15s, box-shadow .15s;
  }
  .dl-btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);}
  .dl-btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink);}
  .dl-btn.android{background:#b9efc9;}
  .dl-btn.ios{background:#ffe4ae;}
  .dl-btn.other{background:#e4ddff;}
  .dl-note{font-size:13px;color:#3a3a4a;max-width:420px;}

  /* bd modal */
  .bd-mask{
    display:none;position:fixed;inset:0;z-index:200;
    background:rgba(30,30,45,.55);align-items:center;justify-content:center;padding:20px;
  }
  .bd-mask.show{display:flex;}
  .bd-box{
    background:#fff;border:3px solid var(--ink);border-radius:20px;
    max-width:440px;width:100%;padding:24px;box-shadow:8px 8px 0 var(--ink);
  }
  .bd-box h3{font-size:17px;font-weight:900;margin-bottom:14px;line-height:1.5;}
  .bd-url{
    background:#f3f3f8;border:2px dashed var(--ink);border-radius:10px;
    padding:10px 12px;font-size:13px;word-break:break-all;margin-bottom:14px;user-select:all;
  }
  .bd-actions{display:flex;gap:10px;flex-wrap:wrap;}
  .bd-copy{
    background:#ffd23f;border:3px solid var(--ink);border-radius:10px;
    padding:8px 18px;font-weight:800;cursor:pointer;font-size:14px;
  }
  .bd-close{
    background:#fff;border:3px solid var(--ink);border-radius:10px;
    padding:8px 18px;font-weight:800;cursor:pointer;font-size:14px;
  }

  /* footer */
  .site-footer{
    background:#2b2b3a;color:#f0f0f8;padding:44px 0 28px;position:relative;
  }
  .footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;margin-bottom:28px;}
  .footer-brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:20px;margin-bottom:10px;}
  .footer-brand img{height:32px;width:auto;}
  .footer-text{font-size:13px;color:#bdbdd0;line-height:1.8;}
  .footer-col h4{font-size:14px;font-weight:800;margin-bottom:10px;color:#ffd23f;}
  .footer-col a{display:block;font-size:13px;color:#c9c9dc;margin-bottom:8px;transition:.2s;}
  .footer-col a:hover{color:#fff;}
  .footer-bottom{
    border-top:1px solid #4a4a60;padding-top:18px;display:flex;flex-wrap:wrap;
    justify-content:space-between;gap:10px;font-size:12px;color:#9c9cb4;
  }
  .end-mark{
    text-align:center;font-weight:900;font-size:22px;letter-spacing:3px;
    color:#ffd23f;margin-bottom:18px;
  }
  .end-mark small{display:block;font-size:12px;color:#9c9cb4;letter-spacing:1px;margin-top:4px;}

  /* responsive */
  @media (max-width:1024px){
    .hero h1{font-size:32px;}
    .panel-wall{grid-template-columns:repeat(2,1fr);}
    .footer-top{grid-template-columns:1fr 1fr;}
  }
  @media (max-width:768px){
    .nav{display:none;width:100%;flex-direction:column;gap:4px;padding-top:10px;}
    .nav.open{display:flex;}
    .header-inner{flex-wrap:wrap;justify-content:flex-start;}
    .menu-btn{display:inline-block;margin-left:auto;}
    .hero{padding:32px 0 44px;}
    .hero-inner{grid-template-columns:1fr;}
    .hero h1{font-size:27px;}
    .hero-visual{min-height:320px;margin-top:12px;}
    .pc1{width:48%;height:210px;}
    .pc2{width:46%;height:190px;}
    .pc3{width:44%;height:150px;left:28%;}
    .tl-item,.tl-item:nth-child(even){flex-direction:column;}
    .tl-poster,.tl-text{width:100%;}
    .tl-poster img{height:220px;}
    .timeline::before{left:16px;}
    .cloud-belt{grid-template-columns:1fr;}
    .download-grid{grid-template-columns:1fr;}
    .footer-top{grid-template-columns:1fr;}
    section{padding:44px 0;}
    .sec-head h2{font-size:23px;}
  }
  @media (max-width:480px){
    .panel-wall{grid-template-columns:1fr;}
    .comic-panel img{height:200px;}
    .belt-visual{flex-direction:column;}
    .dash-line{width:2px;height:40px;flex:0 0 40px;background:repeating-linear-gradient(180deg,#2b2b3a 0 6px,transparent 6px 12px);}
  }