/* roulang page: index */
:root{
      --blue:#2563eb;
      --blue-dark:#173b70;
      --blue-hover:#1d4ed8;
      --blue-pale:#eff6ff;
      --blue-soft:#dbeafe;
      --ink:#263244;
      --muted:#64748b;
      --line:#e2e8f0;
      --canvas:#f8fafc;
      --white:#ffffff;
      --green:#0f9f8c;
      --radius:16px;
      --radius-lg:24px;
      --shadow:0 10px 30px rgba(30,64,175,.08);
      --shadow-hover:0 18px 38px rgba(30,64,175,.14);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--ink);
      background:var(--canvas);
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
      font-size:16px;
      line-height:1.8;
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none}
    button,input{font:inherit}
    button{cursor:pointer}
    img{max-width:100%;display:block}
    ::selection{background:#bfdbfe;color:#173b70}
    .site-header{
      position:sticky;top:0;z-index:50;
      background:rgba(255,255,255,.96);
      border-bottom:1px solid rgba(226,232,240,.95);
      box-shadow:0 2px 14px rgba(30,64,175,.035);
      backdrop-filter:blur(12px);
    }
    .nav-link{
      position:relative;
      color:#536176;
      font-size:14px;
      font-weight:600;
      padding:25px 2px 23px;
      transition:color .2s ease;
    }
    .nav-link:hover,.nav-link.active{color:var(--blue)}
    .nav-link.active:after{
      content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;
      border-radius:99px;background:var(--blue);
    }
    .brand-mark{
      width:32px;height:32px;border-radius:11px;display:grid;place-items:center;
      color:#fff;background:linear-gradient(135deg,#2563eb,#60a5fa);
      box-shadow:0 7px 16px rgba(37,99,235,.25);flex:0 0 auto;
    }
    .brand-text{font-size:16px;font-weight:800;letter-spacing:-.04em;color:var(--blue-dark);white-space:nowrap}
    .search-shell{
      display:flex;align-items:center;gap:8px;width:190px;height:42px;padding:0 12px;
      color:#94a3b8;border:1px solid var(--line);background:#fff;border-radius:12px;
      transition:.2s ease;
    }
    .search-shell:focus-within{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
    .search-shell input{border:0;outline:0;width:100%;color:var(--ink);font-size:13px;background:transparent}
    .search-shell input::placeholder{color:#94a3b8}
    .btn-primary,.btn-secondary{
      min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
      padding:0 17px;border-radius:12px;font-size:14px;font-weight:700;transition:.22s ease;
    }
    .btn-primary{color:#fff;background:var(--blue);border:1px solid var(--blue);box-shadow:0 8px 16px rgba(37,99,235,.18)}
    .btn-primary:hover{background:var(--blue-hover);border-color:var(--blue-hover);transform:translateY(-2px);box-shadow:0 12px 22px rgba(37,99,235,.25)}
    .btn-secondary{color:var(--blue);background:#fff;border:1px solid #bfdbfe}
    .btn-secondary:hover{background:var(--blue-pale);border-color:#93c5fd;transform:translateY(-2px)}
    .btn-primary:focus-visible,.btn-secondary:focus-visible,.filter-btn:focus-visible,.faq-button:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:3px}
    .hero-grid{
      background-color:#f3f8ff;
      background-image:linear-gradient(rgba(37,99,235,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.045) 1px,transparent 1px);
      background-size:32px 32px;
    }
    .hero-panel{
      position:relative;overflow:hidden;
      background:linear-gradient(145deg,#173b70 0%,#1e4d92 58%,#2563eb 100%);
      border:1px solid rgba(255,255,255,.17);
      box-shadow:0 24px 58px rgba(23,59,112,.22);
    }
    .hero-panel:before{
      content:"";position:absolute;width:260px;height:260px;right:-85px;top:-95px;
      border:1px solid rgba(191,219,254,.32);border-radius:50%;
      box-shadow:0 0 0 26px rgba(191,219,254,.07),0 0 0 53px rgba(191,219,254,.045);
    }
    .hero-panel:after{
      content:"";position:absolute;bottom:-75px;left:35%;width:300px;height:160px;
      background:radial-gradient(ellipse,rgba(96,165,250,.4),transparent 68%);
      filter:blur(10px);
    }
    .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.08em}
    .eyebrow i{display:block;width:8px;height:8px;border-radius:50%;background:#0f9f8c;box-shadow:0 0 0 4px rgba(15,159,140,.12)}
    .section-kicker{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.1em}
    .section-title{margin:9px 0 12px;color:var(--blue-dark);font-size:clamp(27px,3vw,38px);line-height:1.28;font-weight:800;letter-spacing:-.04em}
    .section-desc{max-width:650px;margin:0;color:var(--muted);font-size:15px;line-height:1.9}
    .surface-card{
      background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);
      transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
    }
    .surface-card:hover{transform:translateY(-4px);border-color:#bfdbfe;box-shadow:var(--shadow-hover)}
    .quick-item{position:relative}
    .quick-item:not(:last-child):after{
      content:"";position:absolute;right:-18px;top:50%;width:16px;height:1px;background:#bfdbfe;
    }
    .path-row{position:relative}
    .path-row:not(:last-child):after{content:"";position:absolute;left:22px;top:61px;bottom:-34px;width:1px;background:#bfdbfe}
    .path-number{color:#bfdbfe;font-size:38px;line-height:1;font-weight:800;letter-spacing:-.08em}
    .filter-btn{
      min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:#fff;
      color:#536176;font-size:13px;font-weight:600;transition:.2s ease;
    }
    .filter-btn:hover,.filter-btn.selected{border-color:#93c5fd;background:var(--blue-pale);color:var(--blue)}
    .metric-line{height:6px;overflow:hidden;border-radius:99px;background:#e8f0fb}
    .metric-line b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#60a5fa)}
    .mini-cover{
      position:relative;overflow:hidden;border-radius:13px;
      background:linear-gradient(135deg,#dbeafe,#eff6ff 55%,#bfdbfe);
    }
    .mini-cover:before{content:"";position:absolute;width:105px;height:105px;right:-28px;bottom:-38px;border:16px solid rgba(37,99,235,.16);border-radius:50%}
    .mini-cover:after{content:"";position:absolute;width:54px;height:54px;left:20px;top:20px;border:1px solid rgba(37,99,235,.26);transform:rotate(45deg)}
    .quote-card{position:relative;overflow:hidden}
    .quote-card .quote-mark{font-family:Georgia,serif;color:#bfdbfe;font-size:80px;line-height:.75}
    .tier-card{position:relative;overflow:hidden}
    .tier-card.featured{border-color:#93c5fd;background:linear-gradient(145deg,#fff,#eff6ff)}
    .tier-card.featured:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--blue)}
    .news-item{border-bottom:1px solid var(--line);transition:.2s ease}
    .news-item:hover{padding-left:8px;background:#f8fbff}
    .faq-item{border-bottom:1px solid var(--line)}
    .faq-button{width:100%;padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;background:transparent;border:0;color:var(--blue-dark);font-size:15px;font-weight:700}
    .faq-icon{width:26px;height:26px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;background:var(--blue-pale);color:var(--blue);transition:transform .25s ease,background .25s ease}
    .faq-item.open .faq-icon{transform:rotate(45deg);color:white;background:var(--blue)}
    .faq-answer{max-height:0;overflow:hidden;opacity:0;transition:max-height .32s ease,opacity .25s ease}
    .faq-item.open .faq-answer{max-height:170px;opacity:1}
    .faq-answer p{margin:0 0 18px;color:var(--muted);font-size:14px;line-height:1.85}
    .cta-panel{
      position:relative;overflow:hidden;background:linear-gradient(112deg,#eff6ff 0%,#fff 52%,#dbeafe 100%);
      border:1px solid #bfdbfe;
    }
    .cta-panel:after{content:"";position:absolute;width:260px;height:260px;right:-80px;top:-130px;border:28px solid rgba(37,99,235,.08);border-radius:50%}
    .footer-link{color:#64748b;font-size:14px;transition:.2s ease}
    .footer-link:hover{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
    .mobile-drawer{display:none}
    .mobile-drawer.open{display:block}
    @media(max-width:1023px){
      .desktop-nav,.nav-search,.nav-cta{display:none}
      .mobile-toggle{display:inline-grid}
      .hero-panel{min-height:400px}
      .quick-item:not(:last-child):after{display:none}
    }
    @media(max-width:767px){
      body{font-size:15px}
      .brand-text{font-size:14px;max-width:190px;overflow:hidden;text-overflow:ellipsis}
      .hero-panel{min-height:auto}
      .hero-grid{background-size:24px 24px}
      .section-title{font-size:28px}
      .quick-item{padding-bottom:18px;border-bottom:1px solid var(--line)}
      .quick-item:last-child{border-bottom:0;padding-bottom:0}
      .path-row:not(:last-child):after{bottom:-25px}
    }
    @media(max-width:520px){
      .brand-mark{width:29px;height:29px;border-radius:9px}
      .brand-text{max-width:175px;font-size:13px}
      .hero-title{font-size:34px!important}
      .hero-panel{padding:20px!important}
      .btn-primary,.btn-secondary{width:100%}
    }

/* roulang page: category2 */
:root{
 --blue:#2563eb;--blue-dark:#173b70;--blue-hover:#1d4ed8;--blue-pale:#eff6ff;--blue-soft:#dbeafe;
 --ink:#263244;--muted:#64748b;--line:#e2e8f0;--canvas:#f8fafc;--white:#fff;--green:#0f9f8c;
 --radius:16px;--radius-lg:24px;--shadow:0 10px 30px rgba(30,64,175,.08);--shadow-hover:0 18px 38px rgba(30,64,175,.14);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--canvas);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} button,input{font:inherit} button{cursor:pointer} img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(226,232,240,.95);box-shadow:0 2px 14px rgba(30,64,175,.035);backdrop-filter:blur(12px)}
.nav-link{position:relative;color:#536176;font-size:14px;font-weight:600;padding:25px 2px 23px;transition:color .2s ease}
.nav-link:hover,.nav-link.active{color:var(--blue)}.nav-link.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:99px;background:var(--blue)}
.brand-mark{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2563eb,#60a5fa);box-shadow:0 7px 16px rgba(37,99,235,.25);flex:0 0 auto}
.brand-text{font-size:16px;font-weight:800;letter-spacing:-.04em;color:var(--blue-dark);white-space:nowrap}
.search-shell{display:flex;align-items:center;gap:8px;width:190px;height:42px;padding:0 12px;color:#94a3b8;border:1px solid var(--line);background:#fff;border-radius:12px;transition:.2s ease}
.search-shell:focus-within{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.12)}.search-shell input{border:0;outline:0;width:100%;color:var(--ink);font-size:13px;background:transparent}.search-shell input::placeholder{color:#94a3b8}
.btn-primary,.btn-secondary{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 17px;border-radius:12px;font-size:14px;font-weight:700;transition:.22s ease}
.btn-primary{color:#fff;background:var(--blue);border:1px solid var(--blue);box-shadow:0 8px 16px rgba(37,99,235,.18)}.btn-primary:hover{background:var(--blue-hover);border-color:var(--blue-hover);transform:translateY(-2px);box-shadow:0 12px 22px rgba(37,99,235,.25)}
.btn-secondary{color:var(--blue);background:#fff;border:1px solid #bfdbfe}.btn-secondary:hover{background:var(--blue-pale);border-color:#93c5fd;transform:translateY(-2px)}
.btn-primary:focus-visible,.btn-secondary:focus-visible,.filter-btn:focus-visible,.faq-button:focus-visible,.guide-link:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:3px}
.mobile-drawer{display:none}.mobile-drawer.open{display:block}.section-kicker{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.1em}.section-title{margin:9px 0 12px;color:var(--blue-dark);font-size:clamp(27px,3vw,38px);line-height:1.28;font-weight:800;letter-spacing:-.04em}.section-desc{max-width:680px;margin:0;color:var(--muted);font-size:15px;line-height:1.9}
.surface-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.surface-card:hover{transform:translateY(-4px);border-color:#bfdbfe;box-shadow:var(--shadow-hover)}
.topic-hero{position:relative;overflow:hidden;background:#fff}.topic-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,235,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.045) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(90deg,transparent,black 35%,black 100%)}.topic-hero:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;right:-180px;top:-220px;background:radial-gradient(circle,rgba(96,165,250,.22),transparent 67%)}
.breadcrumb{font-size:13px;color:#94a3b8}.breadcrumb a{color:var(--blue);font-weight:700}.topic-cover{position:relative;overflow:hidden;min-height:300px;color:#fff;background:linear-gradient(145deg,#173b70,#2563eb);border-radius:24px;box-shadow:0 24px 58px rgba(23,59,112,.2)}.topic-cover:before{content:"";position:absolute;width:235px;height:235px;right:-74px;top:-80px;border:1px solid rgba(219,234,254,.46);border-radius:50%;box-shadow:0 0 0 25px rgba(219,234,254,.08),0 0 0 51px rgba(219,234,254,.05)}.topic-cover:after{content:"";position:absolute;width:260px;height:1px;bottom:60px;left:-40px;background:rgba(219,234,254,.36);transform:rotate(-26deg)}
.anchor-bar{overflow-x:auto;scrollbar-width:thin}.anchor-item{white-space:nowrap;min-height:42px;display:inline-flex;align-items:center;border-bottom:2px solid transparent;padding:0 15px;color:#64748b;font-size:14px;font-weight:700;transition:.2s}.anchor-item:hover,.anchor-item.active{background:var(--blue-pale);border-color:var(--blue);color:var(--blue)}
.timeline-wrap{position:relative}.timeline-wrap:before{content:"";position:absolute;left:20px;top:16px;bottom:20px;width:1px;background:#bfdbfe}.timeline-item{position:relative;padding-left:52px}.timeline-dot{position:absolute;left:12px;top:8px;width:17px;height:17px;border:4px solid #fff;border-radius:50%;background:var(--blue);box-shadow:0 0 0 1px #93c5fd}.timeline-link{display:block;padding:5px 0;color:#64748b;font-size:13px;font-weight:700;transition:.2s}.timeline-link:hover{color:var(--blue);transform:translateX(3px)}
.topic-index{position:sticky;top:105px}.topic-card{overflow:hidden}.topic-art{position:relative;min-height:175px;background:linear-gradient(135deg,#dbeafe,#f8fbff)}.topic-art:before{content:"";position:absolute;width:145px;height:145px;border:1px solid rgba(37,99,235,.28);border-radius:50%;right:25px;top:16px}.topic-art:after{content:"";position:absolute;width:45%;height:9px;left:26px;bottom:35px;background:#60a5fa;box-shadow:0 17px 0 #93c5fd,0 34px 0 #dbeafe}
.topic-art.alt{background:linear-gradient(135deg,#eff6ff,#e0f2fe)}.topic-art.alt:before{border-radius:14px;transform:rotate(25deg);background:rgba(37,99,235,.08)}.topic-art.alt:after{background:#0f9f8c;box-shadow:0 17px 0 #5eead4,0 34px 0 #ccfbf1}
.topic-art.deep{background:linear-gradient(135deg,#e8f1ff,#fff)}.topic-art.deep:before{width:115px;height:170px;right:40px;top:0;border-radius:0;border-width:0 1px;background:rgba(37,99,235,.08);box-shadow:34px 30px 0 rgba(37,99,235,.06)}
.badge{display:inline-flex;align-items:center;gap:6px;border-radius:8px;background:var(--blue-pale);color:var(--blue);padding:4px 9px;font-size:12px;font-weight:800}.badge.green{background:#ecfdf5;color:#078675}.metric{height:6px;overflow:hidden;border-radius:99px;background:#dbeafe}.metric>span{display:block;height:100%;border-radius:99px;background:var(--blue)}.guide-link{display:inline-flex;align-items:center;gap:7px;color:var(--blue);font-size:14px;font-weight:800;transition:.2s}.guide-link:hover{gap:11px;color:var(--blue-hover)}
.filter-btn{min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#536176;font-size:13px;font-weight:600;transition:.2s ease}.filter-btn:hover,.filter-btn.selected{border-color:#93c5fd;background:var(--blue-pale);color:var(--blue)}
.faq-item{border-bottom:1px solid var(--line)}.faq-button{width:100%;padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;background:transparent;border:0;color:var(--blue-dark);font-size:15px;font-weight:700}.faq-icon{width:26px;height:26px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;background:var(--blue-pale);color:var(--blue);transition:transform .25s ease,background .25s ease}.faq-item.open .faq-icon{transform:rotate(45deg);background:var(--blue);color:#fff}.faq-answer{display:none;padding:0 42px 19px 0;color:var(--muted);font-size:14px;line-height:1.85}.faq-item.open .faq-answer{display:block}.footer-link{font-size:14px;color:#64748b;transition:.2s}.footer-link:hover{color:var(--blue);transform:translateX(3px)}
@media(max-width:1023px){.desktop-nav,.nav-search,.nav-cta{display:none}.mobile-toggle{display:grid}.topic-index{position:relative;top:auto}.timeline-wrap:before{display:none}.timeline-item{padding-left:0}.timeline-dot{display:none}}
@media(max-width:767px){.brand-text{font-size:14px}.topic-hero:before{mask-image:none}.topic-cover{min-height:230px}.section-title{font-size:28px}.anchor-bar{margin-right:-16px}.topic-art{min-height:138px}}
@media(max-width:520px){body{font-size:15px}.brand-mark{width:30px;height:30px}.brand-text{max-width:218px;overflow:hidden;text-overflow:ellipsis}.btn-primary,.btn-secondary{padding:0 14px}.topic-cover{border-radius:18px}.faq-button{font-size:14px}}

/* roulang page: category1 */
:root{
 --blue:#2563eb;--blue-dark:#173b70;--blue-hover:#1d4ed8;--blue-pale:#eff6ff;
 --blue-soft:#dbeafe;--ink:#263244;--muted:#64748b;--line:#e2e8f0;
 --canvas:#f8fafc;--white:#fff;--green:#0f9f8c;--radius:16px;--radius-lg:24px;
 --shadow:0 10px 30px rgba(30,64,175,.08);--shadow-hover:0 18px 38px rgba(30,64,175,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--canvas);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} button,input{font:inherit} button{cursor:pointer} img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(226,232,240,.95);box-shadow:0 2px 14px rgba(30,64,175,.035);backdrop-filter:blur(12px)}
.nav-link{position:relative;color:#536176;font-size:14px;font-weight:600;padding:25px 2px 23px;transition:color .2s ease}
.nav-link:hover,.nav-link.active{color:var(--blue)}
.nav-link.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:99px;background:var(--blue)}
.brand-mark{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2563eb,#60a5fa);box-shadow:0 7px 16px rgba(37,99,235,.25);flex:0 0 auto}
.brand-text{font-size:16px;font-weight:800;letter-spacing:-.04em;color:var(--blue-dark);white-space:nowrap}
.search-shell{display:flex;align-items:center;gap:8px;width:190px;height:42px;padding:0 12px;color:#94a3b8;border:1px solid var(--line);background:#fff;border-radius:12px;transition:.2s ease}
.search-shell:focus-within{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.search-shell input{border:0;outline:0;width:100%;color:var(--ink);font-size:13px;background:transparent}
.search-shell input::placeholder{color:#94a3b8}
.btn-primary,.btn-secondary{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 17px;border-radius:12px;font-size:14px;font-weight:700;transition:.22s ease}
.btn-primary{color:#fff;background:var(--blue);border:1px solid var(--blue);box-shadow:0 8px 16px rgba(37,99,235,.18)}
.btn-primary:hover{background:var(--blue-hover);border-color:var(--blue-hover);transform:translateY(-2px);box-shadow:0 12px 22px rgba(37,99,235,.25)}
.btn-secondary{color:var(--blue);background:#fff;border:1px solid #bfdbfe}
.btn-secondary:hover{background:var(--blue-pale);border-color:#93c5fd;transform:translateY(-2px)}
.btn-primary:focus-visible,.btn-secondary:focus-visible,.filter-btn:focus-visible,.faq-button:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:3px}
.mobile-drawer{display:none}.mobile-drawer.open{display:block}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.08em}
.eyebrow i{display:block;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(15,159,140,.12)}
.section-kicker{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.1em}
.section-title{margin:9px 0 12px;color:var(--blue-dark);font-size:clamp(27px,3vw,38px);line-height:1.28;font-weight:800;letter-spacing:-.04em}
.section-desc{max-width:650px;margin:0;color:var(--muted);font-size:15px;line-height:1.9}
.surface-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.surface-card:hover{transform:translateY(-4px);border-color:#bfdbfe;box-shadow:var(--shadow-hover)}
.filter-btn{min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#536176;font-size:13px;font-weight:700;transition:.2s ease}
.filter-btn:hover,.filter-btn.selected{border-color:#93c5fd;background:var(--blue-pale);color:var(--blue)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-button{width:100%;padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;background:transparent;border:0;color:var(--blue-dark);font-size:15px;font-weight:700}
.faq-icon{width:26px;height:26px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;background:var(--blue-pale);color:var(--blue);transition:transform .25s ease,background .25s ease}
.faq-item.open .faq-icon{transform:rotate(45deg);color:#fff;background:var(--blue)}
.faq-answer{display:none;padding:0 42px 18px 0;color:var(--muted);font-size:14px;line-height:1.85}
.faq-item.open .faq-answer{display:block}
.footer-link{font-size:14px;color:#64748b;transition:.2s ease}.footer-link:hover{color:var(--blue);padding-left:3px}
.category-hero{position:relative;overflow:hidden;background:#eff6ff;background-image:linear-gradient(rgba(37,99,235,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.045) 1px,transparent 1px);background-size:32px 32px}
.category-hero:after{content:"";position:absolute;right:-90px;top:-120px;width:340px;height:340px;border:40px solid rgba(96,165,250,.12);border-radius:50%}
.cover-panel{position:relative;overflow:hidden;background:linear-gradient(145deg,#173b70,#2563eb);box-shadow:0 20px 45px rgba(30,64,175,.2)}
.cover-panel:before{content:"";position:absolute;width:210px;height:210px;right:-50px;top:-50px;border:1px solid rgba(255,255,255,.35);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.06),0 0 0 48px rgba(255,255,255,.04)}
.cover-panel:after{content:"";position:absolute;left:34px;bottom:34px;width:170px;height:1px;background:rgba(255,255,255,.34);box-shadow:0 -18px 0 rgba(255,255,255,.15),0 -36px 0 rgba(255,255,255,.1)}
.media-cover{position:relative;overflow:hidden;min-height:180px;background:linear-gradient(145deg,#dbeafe,#eff6ff)}
.media-cover:before{content:"";position:absolute;width:135px;height:135px;border:20px solid rgba(37,99,235,.17);border-radius:50%;right:-30px;top:-26px}
.media-cover:after{content:"";position:absolute;left:24px;bottom:26px;width:58%;height:8px;border-radius:99px;background:rgba(37,99,235,.19);box-shadow:0 -19px 0 rgba(37,99,235,.11),0 -38px 0 rgba(37,99,235,.08)}
.feature-cover{min-height:320px;background:linear-gradient(145deg,#173b70,#2869d9)}
.feature-cover:before{border-color:rgba(191,219,254,.34);width:260px;height:260px;right:-65px;top:-65px}
.feature-cover:after{background:rgba(255,255,255,.28);box-shadow:0 -20px 0 rgba(255,255,255,.16),0 -40px 0 rgba(255,255,255,.1)}
.tag{display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border-radius:8px;background:var(--blue-pale);color:var(--blue);font-size:12px;font-weight:800}
.meta-line{display:flex;flex-wrap:wrap;gap:14px;color:#94a3b8;font-size:12px}.status-dot{width:7px;height:7px;margin-right:6px;display:inline-block;border-radius:50%;background:var(--green)}
.side-row{padding:15px 0;border-bottom:1px solid var(--line);transition:.2s ease}.side-row:hover{padding-left:5px;color:var(--blue)}
.pagination a{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:14px;font-weight:700;color:#536176;transition:.2s ease}
.pagination a:hover,.pagination a.current{color:#fff;background:var(--blue);border-color:var(--blue)}
@media(max-width:1023px){.desktop-nav,.nav-search,.nav-cta{display:none}.mobile-toggle{display:grid!important}.brand-text{font-size:14px}}
@media(max-width:767px){body{font-size:15px}.category-hero{background-size:25px 25px}.cover-panel{min-height:220px}.feature-cover{min-height:230px}.section-title{font-size:28px}.search-shell{width:100%}.faq-button{font-size:14px}.brand-text{max-width:205px;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:520px){.brand-text{max-width:172px;font-size:13px}.btn-primary,.btn-secondary{padding:0 14px}.pagination a{width:36px;height:36px}}
