/* SOURCE_STRUCTURE: common layout / cards / responsive / download popup */
:root{--brand:#ff6c2f;--brand2:#ff9b6f;--text:#202124;--muted:#8b8f96;--line:#ececf0;--bg:#f7f7f8;--blue:#eaf5ff;--warm:#fff0e8;--sidebar:218px;--shadow:0 10px 32px rgba(28,34,45,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;line-height:1.6}.skip{position:fixed;left:12px;top:-60px;background:#111;color:#fff;padding:8px 12px;z-index:1000;border-radius:8px}.skip:focus{top:12px}.app{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#fff;border-right:1px solid var(--line);z-index:30;padding:18px 15px;display:flex;flex-direction:column;overflow:auto}.brand{display:flex;justify-content:center;align-items:center;height:72px}.brand img{width:92px;height:72px;object-fit:contain}.side-nav{margin-top:12px;display:grid;gap:4px}.side-nav a{display:flex;gap:12px;align-items:center;color:#252525;text-decoration:none;padding:10px 12px;border-radius:11px;font-size:14px}.side-nav a:hover,.side-nav a.active{background:#fff4ec;color:var(--brand)}.side-nav svg{width:19px;height:19px;stroke:currentColor;flex:0 0 auto}.side-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.side-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.side-mini a{text-align:center;color:#666;font-size:12px;text-decoration:none}.main{margin-left:var(--sidebar)}.topbar{position:sticky;top:0;background:rgba(247,247,248,.95);backdrop-filter:blur(12px);z-index:20;border-bottom:1px solid rgba(0,0,0,.03)}.notice{text-align:center;background:#fff2eb;color:#f36c30;font-size:12px;padding:4px 10px}.top-inner{max-width:1380px;margin:auto;padding:11px 32px 14px}.top-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;font-size:13px}.top-links a{color:#8a8a8a;text-decoration:none}.top-links a.active,.top-links a:hover{color:#111;font-weight:700}.search-row{margin-top:12px;display:flex;align-items:center;justify-content:center;gap:8px}.search{width:min(620px,60vw);height:42px;background:white;border:1px solid #dedee3;border-radius:12px;display:flex;align-items:center;padding:0 13px;color:#a0a0a7}.search input{border:0;outline:0;width:100%;font-size:14px;background:transparent}.pill{border:1px solid #dddde2;background:#fff;border-radius:11px;padding:8px 13px;color:#777;font-size:13px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.pill.active{color:var(--brand);border-color:#ffc4ab;background:#fff7f2}.download-pill{background:var(--brand);color:white;border-color:var(--brand);font-weight:700}.content{max-width:1380px;margin:0 auto;padding:22px 32px 70px}.hero-download{display:grid;grid-template-columns:1.45fr .85fr;gap:24px;background:linear-gradient(135deg,#fff7f2,#fff,#f1f8ff);border:1px solid #eee;border-radius:20px;padding:28px 30px;box-shadow:var(--shadow);margin-bottom:22px;position:relative;overflow:visible}.eyebrow{font-size:12px;color:var(--brand);font-weight:800;letter-spacing:.09em;text-transform:uppercase}.hero-download h1,.page-hero h1,.detail-hero h1{font-size:34px;line-height:1.25;margin:8px 0 10px}.hero-download p,.page-hero p,.detail-hero p{color:#686b73;margin:0 0 18px;max-width:760px}.cta-row{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:9px;border-radius:12px;padding:12px 18px;text-decoration:none;font-weight:800;border:1px solid #ddd;color:#333;background:white;transition:.2s;cursor:pointer}.btn.primary{background:linear-gradient(135deg,#ff6c2f,#ff8d5a);color:white;border-color:transparent}.btn.big{padding:14px 22px;font-size:16px}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(255,108,47,.2)}.btn svg{width:20px;height:20px}.hero-quick{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px}.hero-quick a{font-size:13px;color:#6f747b;text-decoration:none}.hero-quick a:hover{color:var(--brand)}.hero-art{position:relative;min-height:230px;border-radius:17px;overflow:hidden;background:#ddd;display:block}.hero-art img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-art:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(0,0,0,.55))}.hero-art span{position:absolute;left:16px;bottom:14px;color:#fff;font-weight:800;z-index:1}.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:24px 0 12px}.section-head h2{font-size:22px;margin:0}.section-head p{margin:0;color:var(--muted);font-size:13px}.weekly{background:var(--blue);border-radius:18px;padding:16px}.carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:12px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.card{background:#fff;border:1px solid #ececf1;border-radius:14px;overflow:hidden;min-width:0;box-shadow:0 3px 10px rgba(0,0,0,.03);transition:.2s}.card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,30,50,.08)}.card-link{text-decoration:none;color:inherit;display:block}.cover{position:relative;aspect-ratio:1.55/1;background:#ddd;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover;display:block}.heat{position:absolute;top:9px;left:9px;background:rgba(42,42,42,.68);color:#fff;border-radius:20px;padding:3px 9px;font-size:12px}.tagbar{position:absolute;bottom:8px;left:8px;right:8px;padding:5px 9px;color:white;background:linear-gradient(90deg,rgba(152,87,46,.92),rgba(255,170,126,.78));border-radius:10px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-body{padding:12px}.card h3{font-size:16px;line-height:1.4;margin:0 0 7px}.card p{font-size:13px;color:#8a8d95;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.meta{display:flex;justify-content:space-between;gap:8px;color:#a0a3aa;font-size:12px;margin-top:10px}.recommend-layout{display:grid;grid-template-columns:1fr 260px;gap:16px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.story-grid{margin-top:14px}.forum{background:var(--warm);border-radius:18px;padding:14px 16px;height:max-content}.forum h3{margin:0 0 10px;color:#d76a35}.forum a{display:block;text-decoration:none;color:#333;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.06);font-size:14px}.forum .more-link{color:var(--brand);font-weight:700}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:26px 0}.feature-strip a{background:#fff;border:1px solid #eee;border-radius:14px;padding:16px;text-decoration:none;color:#222}.feature-strip b{display:block;margin-bottom:4px}.feature-strip span{font-size:13px;color:#888}.feature-strip a:hover{border-color:#ffc4ab;background:#fffaf7}.footer{padding:28px 32px 40px;text-align:center;color:#9b9da3;font-size:13px}.footer a{color:#777;text-decoration:none;margin:0 8px}.footer p{margin:8px 0 0}.floating-download{position:fixed;right:24px;bottom:26px;z-index:80;display:grid;justify-items:center;gap:5px}.float-btn{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#ff6c2f,#ff925c);display:grid;place-items:center;color:white;box-shadow:0 10px 28px rgba(255,108,47,.38);text-decoration:none;border:4px solid white}.float-btn svg{width:26px;height:26px}.float-label{background:#222;color:#fff;font-size:11px;padding:2px 7px;border-radius:10px}.download-qr-tooltip{position:fixed;z-index:9999;width:206px;background:#fff;border:1px solid #e7e7e7;border-radius:16px;padding:12px;box-shadow:0 18px 48px rgba(0,0,0,.2);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease,visibility .16s;text-align:center}.download-qr-tooltip.show{opacity:1;visibility:visible;transform:none}.download-qr-tooltip img{display:block;width:180px;height:180px;object-fit:contain;margin:auto}.download-qr-tooltip strong{display:block;font-size:13px;margin-top:6px}.download-qr-tooltip small{display:block;color:#888;font-size:11px;margin-top:2px}.page-hero{background:white;border:1px solid #eee;border-radius:18px;padding:26px;margin-bottom:18px}.image-hero{display:grid;grid-template-columns:1.2fr .75fr;gap:20px;align-items:center}.image-hero>img{width:100%;aspect-ratio:1.55/1;object-fit:cover;border-radius:14px}.download-page{display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:center}.static-qr{background:#fff8f4;border:1px solid #ffe1d3;border-radius:16px;padding:14px;text-align:center}.static-qr img{width:190px;height:190px;object-fit:contain;display:block;margin:auto}.static-qr b{display:block;margin-top:6px}.download-note{font-size:13px;color:#888;margin-top:14px}.filter-row,.rank-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.rank-list{display:grid;gap:10px}.rank-item{display:grid;grid-template-columns:44px 110px 1fr auto;align-items:center;gap:12px;background:#fff;border:1px solid #eee;border-radius:14px;padding:10px}.rank-no{font-size:22px;font-weight:900;color:#ff6c2f;text-align:center}.rank-item img{width:110px;height:74px;object-fit:cover;border-radius:10px}.rank-item h3{margin:0 0 4px;font-size:16px}.rank-item h3 a{color:#222;text-decoration:none}.rank-item p{margin:0;color:#888;font-size:13px}.rank-score{font-weight:800;color:#ff6c2f;text-align:right}.rank-score small{color:#999;font-weight:500}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.steps.four{grid-template-columns:repeat(4,1fr)}.step{background:#fff;border:1px solid #eee;border-radius:14px;padding:18px}.step b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff0e8;color:#ff6c2f;margin-bottom:10px}.step h3{margin:0 0 6px}.step p{margin:0;color:#888;font-size:14px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:10px}.faq details{background:#fff;border:1px solid #eee;border-radius:12px;padding:13px 14px}.faq summary{cursor:pointer;font-weight:700}.faq p{margin:8px 0 0;color:#777;font-size:14px}.breadcrumb{font-size:13px;color:#999;margin:0 0 14px}.breadcrumb a{color:#777;text-decoration:none}.breadcrumb span{margin:0 5px}.detail-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;background:#fff;border:1px solid #eee;border-radius:18px;padding:20px}.detail-hero>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}.detail-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.detail-meta span{font-size:12px;background:#fff4ec;color:#b75a2d;border-radius:10px;padding:5px 8px}.article-copy{background:#fff;border:1px solid #eee;border-radius:16px;padding:22px;margin:18px 0}.article-copy h2{font-size:20px;margin:18px 0 8px}.article-copy h2:first-child{margin-top:0}.article-copy p{color:#686b73}.forum-page{display:grid;gap:12px}.forum-post{background:#fff;border:1px solid #eee;border-radius:14px;padding:20px}.forum-post h2{font-size:18px;margin:0 0 8px}.forum-post p{color:#777}.forum-post a{font-size:13px;color:var(--brand);text-decoration:none;margin-right:14px}.mobile-download{display:none}.mobile-toggle{display:none}
@media(max-width:1100px){:root{--sidebar:182px}.grid{grid-template-columns:repeat(3,1fr)}.recommend-layout{grid-template-columns:1fr}.forum{display:none}.steps.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:.2s;width:250px}.sidebar.open{transform:none}.main{margin-left:0}.mobile-toggle{display:grid;position:fixed;top:12px;left:12px;z-index:90;width:40px;height:40px;border-radius:12px;border:1px solid #ddd;background:#fff;place-items:center}.notice{padding-left:55px}.top-inner{padding:12px 14px 14px}.top-links{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-left:45px}.search-row{justify-content:flex-start}.search{width:100%}.search-row .pill:not(.download-pill){display:none}.content{padding:16px 12px 90px}.hero-download,.image-hero,.detail-hero,.download-page{grid-template-columns:1fr;padding:20px}.hero-download h1,.page-hero h1,.detail-hero h1{font-size:27px}.hero-art{min-height:220px}.grid{grid-template-columns:repeat(2,1fr)}.recommend-layout{display:block}.steps,.faq,.feature-strip{grid-template-columns:1fr 1fr}.floating-download{display:none}.download-qr-tooltip{display:none!important}.mobile-download{display:block;position:fixed;left:12px;right:12px;bottom:12px;z-index:85}.mobile-download a{display:flex;justify-content:center;background:linear-gradient(135deg,#ff6c2f,#ff8d5a);color:white;text-decoration:none;padding:13px 18px;border-radius:13px;font-weight:800;box-shadow:0 12px 30px rgba(255,108,47,.32)}}
@media(max-width:560px){.grid,.steps,.steps.four,.faq,.feature-strip{grid-template-columns:1fr}.carousel{grid-auto-columns:82%}.hero-download h1,.page-hero h1,.detail-hero h1{font-size:24px}.card h3{font-size:15px}.rank-item{grid-template-columns:36px 82px 1fr}.rank-item img{width:82px;height:64px}.rank-score{display:none}.static-qr{display:none}}
