/* roulang page: index */
:root {
      --bg: #140f17;
      --bg-deep: #0d0a10;
      --panel: #211822;
      --panel-soft: #291d29;
      --panel-warm: #30202a;
      --line: #44313e;
      --line-light: #614250;
      --text: #f5e9ed;
      --muted: #bcaab3;
      --subtle: #8e7985;
      --coral: #e47b77;
      --coral-dark: #b9535c;
      --cream: #f3d4bd;
      --sage: #a8bbb0;
      --radius: 14px;
      --radius-sm: 9px;
      --shadow: 0 18px 45px rgba(0,0,0,.22);
      --max: 1200px;
      --ease: 180ms ease;
    }

    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--text);
      background:
        radial-gradient(circle at 82% 6%, rgba(139,53,78,.18), transparent 30rem),
        linear-gradient(180deg, #171019 0%, var(--bg) 46%, var(--bg-deep) 100%);
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
      font-size: 15px;
      line-height: 1.75;
      letter-spacing: 0;
    }

    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    button { cursor: pointer; }
    img { max-width: 100%; display: block; }
    :focus-visible { outline: 3px solid var(--cream); outline-offset: 3px; }
    ::selection { color: #21131a; background: var(--cream); }

    .container { width: min(var(--max), calc(100% - 48px)); margin: 0 auto; }
    .site-header {
      position: sticky;
      top: 0;
      z-index: 20;
      background: rgba(20,15,23,.94);
      border-bottom: 1px solid rgba(97,66,80,.5);
      transition: background var(--ease), box-shadow var(--ease);
    }
    .nav {
      min-height: 74px;
      display: flex;
      align-items: center;
      gap: 30px;
    }
    .brand {
      display: inline-flex;
      align-items: center;
      gap: 11px;
      min-width: max-content;
      font-size: 17px;
      font-weight: 800;
      letter-spacing: .2px;
    }
    .brand-mark {
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      color: #29171f;
      background: var(--cream);
      border-radius: 10px 10px 10px 3px;
      font-size: 15px;
      font-weight: 900;
    }
    .nav-links {
      display: flex;
      align-items: center;
      gap: 5px;
      flex: 1;
    }
    .nav-link {
      position: relative;
      padding: 9px 13px;
      color: var(--muted);
      border-radius: 8px;
      transition: color var(--ease), background var(--ease);
    }
    .nav-link:hover, .nav-link.active {
      color: var(--text);
      background: rgba(228,123,119,.1);
    }
    .nav-link.active::after {
      content: "";
      position: absolute;
      left: 13px;
      right: 13px;
      bottom: 3px;
      height: 2px;
      background: var(--coral);
      border-radius: 2px;
    }
    .nav-tools { display: flex; align-items: center; gap: 12px; }
    .age-badge, .status-badge, .tag {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      white-space: nowrap;
      border: 1px solid var(--line-light);
      border-radius: 999px;
      color: var(--muted);
      font-size: 12px;
      line-height: 1;
    }
    .age-badge { padding: 9px 11px; color: var(--cream); border-color: rgba(243,212,189,.45); }
    .status-badge { padding: 8px 10px; color: var(--sage); border-color: rgba(168,187,176,.35); }
    .tag { padding: 6px 9px; background: rgba(255,255,255,.035); }
    .tag.warm { color: var(--cream); border-color: rgba(243,212,189,.35); }
    .tag.coral { color: #ffaaa1; border-color: rgba(228,123,119,.42); }
    .tag.restricted { color: #d2aebd; border-color: #6c4355; }

    .btn {
      min-height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 10px 17px;
      border: 1px solid transparent;
      border-radius: 9px;
      font-weight: 700;
      line-height: 1.2;
      transition: transform var(--ease), background var(--ease), border-color var(--ease), color var(--ease);
    }
    .btn:hover { transform: translateY(-2px); }
    .btn-primary { color: #28161c; background: var(--coral); }
    .btn-primary:hover { background: #ee8c83; }
    .btn-secondary { color: var(--text); background: #2b1d28; border-color: var(--line-light); }
    .btn-secondary:hover { border-color: var(--coral); background: #35222e; }
    .btn-text { min-height: auto; padding: 4px 0; color: var(--cream); }
    .btn-text:hover { color: #fff3e9; transform: none; }
    .menu-toggle { display: none; border: 0; color: var(--text); background: transparent; font-size: 24px; }

    .status-bar {
      border-top: 1px solid rgba(97,66,80,.32);
      background: #100c12;
      color: var(--subtle);
      font-size: 12px;
    }
    .status-inner { min-height: 32px; display: flex; align-items: center; gap: 19px; overflow: hidden; }
    .status-inner span { white-space: nowrap; }
    .status-dot { color: var(--coral); }

    main { overflow: hidden; }
    .hero {
      padding: 74px 0 58px;
      position: relative;
    }
    .hero-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.1fr) minmax(370px, .9fr);
      gap: 62px;
      align-items: center;
    }
    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: var(--cream);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .08em;
    }
    .eyebrow::before {
      content: "";
      width: 26px;
      height: 2px;
      background: var(--coral);
    }
    h1, h2, h3, p { margin-top: 0; }
    h1 {
      max-width: 680px;
      margin: 18px 0 22px;
      color: #fff4f0;
      font-size: clamp(34px, 4.2vw, 56px);
      line-height: 1.16;
      letter-spacing: 0;
    }
    .hero-copy {
      max-width: 650px;
      margin-bottom: 28px;
      color: var(--muted);
      font-size: 17px;
      line-height: 1.85;
    }
    .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 30px; }
    .hero-points { display: flex; flex-wrap: wrap; gap: 10px 22px; color: var(--subtle); font-size: 13px; }
    .hero-points span::before { content: "✓"; margin-right: 7px; color: var(--coral); font-weight: 800; }

    .poster-stage {
      position: relative;
      min-height: 392px;
      padding: 20px;
      display: flex;
      align-items: flex-end;
      justify-content: flex-end;
      background:
        linear-gradient(135deg, rgba(93,39,57,.8), transparent 58%),
        repeating-linear-gradient(125deg, rgba(255,255,255,.035) 0 1px, transparent 1px 12px),
        #261824;
      border: 1px solid var(--line-light);
      border-radius: 18px;
      box-shadow: var(--shadow);
      isolation: isolate;
    }
    .poster-stage::before {
      content: "18+";
      position: absolute;
      top: 21px;
      left: 23px;
      color: rgba(243,212,189,.8);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .1em;
    }
    .poster-copy {
      width: 78%;
      padding: 24px;
      background: linear-gradient(180deg, transparent, rgba(13,10,16,.84) 38%);
      border-radius: 12px;
    }
    .poster-number { color: var(--coral); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
    .poster-copy h2 { margin: 10px 0 8px; font-size: 29px; line-height: 1.25; }
    .poster-copy p { margin-bottom: 15px; color: var(--muted); }
    .poster-meta { display: flex; flex-wrap: wrap; gap: 8px; }
    .poster-side {
      position: absolute;
      right: 20px;
      top: 79px;
      display: grid;
      gap: 8px;
      width: 92px;
    }
    .mini-stat { padding: 10px 9px; background: rgba(13,10,16,.55); border-left: 2px solid var(--coral); }
    .mini-stat strong { display: block; font-size: 17px; line-height: 1.2; }
    .mini-stat small { color: var(--subtle); font-size: 11px; }

    .section { padding: 72px 0; }
    .section.dark { background: #100c12; border-top: 1px solid rgba(97,66,80,.28); border-bottom: 1px solid rgba(97,66,80,.28); }
    .section-head {
      display: flex;
      justify-content: space-between;
      align-items: end;
      gap: 25px;
      margin-bottom: 29px;
    }
    .section-kicker { margin-bottom: 8px; color: var(--coral); font-size: 12px; font-weight: 800; letter-spacing: .1em; }
    h2 { margin-bottom: 10px; color: #fff1ee; font-size: clamp(25px, 3vw, 35px); line-height: 1.25; }
    .section-intro { max-width: 630px; margin-bottom: 0; color: var(--muted); }
    .section-link { white-space: nowrap; }

    .feature-nav {
      display: grid;
      grid-template-columns: 1.2fr 1fr 1fr 1fr;
      gap: 12px;
    }
    .feature-item {
      min-height: 190px;
      padding: 23px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: var(--panel);
      transition: transform var(--ease), border-color var(--ease), background var(--ease);
    }
    .feature-item:first-child { background: var(--panel-warm); border-color: #704650; }
    .feature-item:hover { transform: translateY(-4px); border-color: var(--coral); background: #30212c; }
    .feature-index { color: var(--coral); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
    .feature-item h3 { margin: 13px 0 6px; font-size: 18px; }
    .feature-item p { margin-bottom: 12px; color: var(--muted); font-size: 13px; line-height: 1.65; }

    .timeline {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 0;
      border-top: 1px solid var(--line-light);
    }
    .step { position: relative; padding: 28px 22px 0 0; }
    .step:not(:last-child)::after {
      content: "→";
      position: absolute;
      top: 21px;
      right: 18px;
      color: var(--coral);
      font-size: 20px;
    }
    .step-number {
      width: 31px;
      height: 31px;
      display: grid;
      place-items: center;
      margin-bottom: 17px;
      color: #26161c;
      background: var(--cream);
      border-radius: 50%;
      font-weight: 800;
    }
    .step h3 { margin-bottom: 6px; font-size: 17px; }
    .step p { margin-bottom: 0; color: var(--muted); font-size: 13px; }

    .collection-layout {
      display: grid;
      grid-template-columns: 1.25fr .75fr;
      gap: 16px;
    }
    .collection-main, .collection-item {
      position: relative;
      overflow: hidden;
      border: 1px solid var(--line);
      background: var(--panel);
      border-radius: var(--radius);
    }
    .collection-main { min-height: 300px; padding: 30px; display: flex; align-items: end; background: linear-gradient(145deg, #462835, #201620 67%); }
    .collection-main::before {
      content: "精选 01";
      position: absolute;
      top: 22px;
      right: 24px;
      color: rgba(243,212,189,.75);
      font-size: 12px;
      letter-spacing: .1em;
    }
    .collection-main h3 { max-width: 430px; margin-bottom: 9px; font-size: 26px; }
    .collection-main p { max-width: 510px; margin-bottom: 17px; color: var(--muted); }
    .collection-list { display: grid; gap: 10px; }
    .collection-item { min-height: 93px; padding: 17px 18px; display: grid; grid-template-columns: 37px 1fr auto; gap: 12px; align-items: center; }
    .collection-item:hover { border-color: var(--coral); }
    .item-number { color: var(--coral); font-size: 13px; font-weight: 800; }
    .collection-item h3 { margin-bottom: 2px; font-size: 16px; }
    .collection-item p { margin: 0; color: var(--subtle); font-size: 12px; }
    .item-arrow { color: var(--cream); font-size: 19px; }

    .access-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: stretch; }
    .access-panel { padding: 29px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); }
    .access-panel.emphasis { background: #32202a; border-color: #754550; }
    .access-panel h3 { margin-bottom: 9px; font-size: 21px; }
    .access-panel p { color: var(--muted); }
    .access-list { display: grid; gap: 11px; margin: 20px 0 25px; padding: 0; list-style: none; }
    .access-list li { display: flex; justify-content: space-between; gap: 15px; padding-bottom: 10px; border-bottom: 1px solid var(--line); color: var(--muted); }
    .access-list strong { color: var(--text); font-size: 13px; }
    .access-list .limited { color: var(--cream); }

    .insight-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
    .insight {
      padding: 26px;
      border-left: 3px solid var(--coral);
      background: #211720;
    }
    .insight blockquote { margin: 0 0 16px; color: #f8e7e2; font-size: 19px; line-height: 1.55; }
    .insight cite { color: var(--subtle); font-size: 13px; font-style: normal; }
    .update-list { display: grid; gap: 0; }
    .update-row { display: grid; grid-template-columns: 76px 1fr auto; gap: 15px; padding: 14px 0; border-bottom: 1px solid var(--line); align-items: center; }
    .update-row time { color: var(--subtle); font-size: 12px; }
    .update-row h3 { margin: 0; font-size: 15px; }
    .update-row a { color: var(--cream); font-size: 13px; }

    .faq-wrap { display: grid; grid-template-columns: .8fr 1.2fr; gap: 60px; }
    .faq-wrap > div > p { color: var(--muted); }
    .faq-list { border-top: 1px solid var(--line); }
    details { border-bottom: 1px solid var(--line); }
    summary { position: relative; padding: 18px 34px 18px 0; color: var(--text); font-weight: 700; cursor: pointer; list-style: none; }
    summary::-webkit-details-marker { display: none; }
    summary::after { content: "+"; position: absolute; right: 4px; color: var(--coral); font-size: 22px; font-weight: 400; }
    details[open] summary::after { content: "−"; }
    details p { max-width: 700px; margin: -4px 30px 19px 0; color: var(--muted); font-size: 14px; }

    .cta {
      padding: 48px 0;
      background: #351f2a;
      border-top: 1px solid #68404d;
      border-bottom: 1px solid #68404d;
    }
    .cta-inner { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
    .cta h2 { margin-bottom: 8px; font-size: 28px; }
    .cta p { margin: 0; color: #d7bec1; }
    .cta-actions { display: flex; flex-wrap: wrap; gap: 10px; flex-shrink: 0; }

    .footer { padding: 48px 0 25px; background: #0b080d; }
    .footer-grid { display: grid; grid-template-columns: 1.3fr .7fr .9fr; gap: 50px; padding-bottom: 38px; }
    .footer-brand { margin-bottom: 14px; }
    .footer p { max-width: 390px; color: var(--subtle); font-size: 13px; }
    .footer h3 { margin: 0 0 13px; font-size: 14px; color: var(--text); }
    .footer-links { display: grid; gap: 7px; color: var(--subtle); font-size: 13px; }
    .footer-links a:hover { color: var(--cream); }
    .feedback-form { display: grid; gap: 9px; }
    .feedback-form input, .feedback-form select, .feedback-form textarea {
      width: 100%;
      color: var(--text);
      background: #171018;
      border: 1px solid var(--line);
      border-radius: 7px;
      padding: 9px 11px;
    }
    .feedback-form textarea { min-height: 70px; resize: vertical; }
    .feedback-form input::placeholder, .feedback-form textarea::placeholder { color: #766572; }
    .feedback-form small { color: var(--subtle); font-size: 11px; line-height: 1.5; }
    .feedback-form .btn { width: max-content; }
    .footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 21px; border-top: 1px solid rgba(97,66,80,.35); color: #766572; font-size: 12px; }

    .age-layer {
      position: fixed;
      inset: 0;
      z-index: 50;
      display: grid;
      place-items: center;
      padding: 20px;
      background: rgba(8,5,9,.82);
    }
    .age-layer[hidden] { display: none; }
    .age-dialog {
      width: min(470px, 100%);
      padding: 31px;
      background: #211620;
      border: 1px solid #704650;
      border-radius: 15px;
      box-shadow: 0 25px 70px rgba(0,0,0,.5);
    }
    .age-dialog h2 { margin-bottom: 11px; font-size: 25px; }
    .age-dialog p { color: var(--muted); font-size: 14px; }
    .age-dialog-actions { display: flex; gap: 10px; margin-top: 23px; }
    .age-dialog-actions .btn { flex: 1; }

    @media (max-width: 1050px) {
      .hero-grid { gap: 35px; }
      .feature-nav { grid-template-columns: 1fr 1fr; }
      .feature-item:first-child { grid-column: span 2; }
    }
    @media (max-width: 800px) {
      .container { width: min(100% - 34px, var(--max)); }
      .nav { min-height: 64px; gap: 15px; }
      .nav-links {
        position: fixed;
        top: 65px;
        left: 0;
        right: 0;
        display: none;
        padding: 12px 17px 19px;
        background: #120d14;
        border-bottom: 1px solid var(--line);
      }
      .nav-links.open { display: grid; }
      .nav-link { padding: 12px; }
      .nav-tools .status-badge { display: none; }
      .menu-toggle { display: block; }
      .hero { padding: 48px 0 40px; }
      .hero-grid, .collection-layout, .faq-wrap { grid-template-columns: 1fr; }
      .poster-stage { min-height: 330px; }
      .timeline { grid-template-columns: 1fr 1fr; gap: 22px; }
      .step { padding-top: 21px; border-top: 1px solid var(--line-light); }
      .step:not(:last-child)::after { display: none; }
      .access-grid, .insight-grid { grid-template-columns: 1fr; }
      .faq-wrap { gap: 22px; }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
      .footer-grid > :first-child { grid-column: span 2; }
      .cta-inner { align-items: flex-start; flex-direction: column; }
    }
    @media (max-width: 520px) {
      .container { width: calc(100% - 30px); }
      .brand { font-size: 14px; }
      .brand-mark { width: 30px; height: 30px; font-size: 13px; }
      .nav-tools .age-badge { display: none; }
      h1 { font-size: 35px; }
      .hero-copy { font-size: 15px; }
      .hero-actions, .hero-actions .btn, .cta-actions, .cta-actions .btn { width: 100%; }
      .hero-points { display: grid; gap: 5px; }
      .poster-stage { min-height: 315px; padding: 12px; }
      .poster-copy { width: 100%; padding: 17px; }
      .poster-side { top: 58px; right: 12px; width: 80px; }
      .poster-copy h2 { font-size: 23px; }
      .section { padding: 53px 0; }
      .section-head { display: block; }
      .section-link { display: inline-flex; margin-top: 14px; }
      .feature-nav { grid-template-columns: 1fr; }
      .feature-item:first-child { grid-column: auto; }
      .timeline { grid-template-columns: 1fr; }
      .collection-main { min-height: 270px; padding: 22px; }
      .collection-main h3 { font-size: 22px; }
      .update-row { grid-template-columns: 62px 1fr; }
      .update-row a { grid-column: 2; }
      .footer-grid { grid-template-columns: 1fr; }
      .footer-grid > :first-child { grid-column: auto; }
      .footer-bottom { display: block; }
      .footer-bottom span { display: block; margin-top: 7px; }
      .age-dialog { padding: 25px 21px; }
    }

/* roulang page: category1 */
:root{
      --bg:#140f17;--bg-deep:#0d0a10;--panel:#211822;--panel-soft:#291d29;
      --panel-warm:#30202a;--line:#44313e;--line-light:#614250;--text:#f5e9ed;
      --muted:#bcaab3;--subtle:#8e7985;--coral:#e47b77;--coral-dark:#b9535c;
      --cream:#f3d4bd;--sage:#a8bbb0;--radius:14px;--radius-sm:9px;
      --shadow:0 18px 45px rgba(0,0,0,.22);--ease:180ms ease;--max:1200px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;color:var(--text);background:radial-gradient(circle at 82% 6%,rgba(139,53,78,.18),transparent 30rem),linear-gradient(180deg,#171019 0%,var(--bg) 46%,var(--bg-deep) 100%);font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;font-size:15px;line-height:1.75;letter-spacing:0}
    a{color:inherit;text-decoration:none} button,input,select,textarea{font:inherit} button{cursor:pointer} img{max-width:100%;display:block}
    .container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
    .site-header{position:sticky;top:0;z-index:20;background:rgba(20,15,23,.95);border-bottom:1px solid rgba(97,66,80,.5);transition:.18s}
    .nav{min-height:74px;display:flex;align-items:center;gap:30px}
    .brand{display:inline-flex;align-items:center;gap:11px;min-width:max-content;font-size:17px;font-weight:800}
    .brand-mark{width:34px;height:34px;display:grid;place-items:center;color:#29171f;background:var(--cream);border-radius:10px 10px 10px 3px;font-size:15px;font-weight:900}
    .nav-links{display:flex;align-items:center;gap:5px;flex:1}
    .nav-link{position:relative;padding:9px 13px;color:var(--muted);border-radius:8px;transition:color var(--ease),background var(--ease)}
    .nav-link:hover,.nav-link.active{color:var(--text);background:rgba(228,123,119,.1)}
    .nav-link.active:after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:2px;background:var(--coral);border-radius:2px}
    .nav-tools{display:flex;align-items:center;gap:12px}
    .age-badge,.status-badge,.tag{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;border:1px solid var(--line-light);border-radius:999px;color:var(--muted);font-size:12px;line-height:1}
    .age-badge{padding:9px 11px;color:var(--cream);border-color:rgba(243,212,189,.45)}
    .status-badge{padding:8px 10px;color:var(--sage);border-color:rgba(168,187,176,.35)}
    .tag{padding:6px 9px;background:rgba(255,255,255,.035)}
    .tag.warm{color:var(--cream);border-color:rgba(243,212,189,.35)}
    .tag.coral{color:#ffaaa1;border-color:rgba(228,123,119,.42)}
    .tag.restricted{color:#d2aebd;border-color:#6c4355}
    .btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 17px;border:1px solid transparent;border-radius:9px;font-weight:700;line-height:1.2;transition:transform var(--ease),background var(--ease),border-color var(--ease),color var(--ease)}
    .btn:hover{transform:translateY(-2px)}
    .btn:focus-visible,.nav-link:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(228,123,119,.55);outline-offset:3px}
    .btn-primary{color:#28161c;background:var(--coral)}.btn-primary:hover{background:#ee8c83}
    .btn-secondary{color:var(--text);background:#2b1d28;border-color:var(--line-light)}.btn-secondary:hover{border-color:var(--coral);background:#35222e}
    .menu-toggle{display:none;border:0;color:var(--text);background:transparent;font-size:24px}
    .status-bar{border-top:1px solid rgba(97,66,80,.28);background:#100c12;color:var(--subtle);font-size:12px}
    .status-inner{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
    main{overflow:hidden}.page-head{padding:54px 0 35px;border-bottom:1px solid rgba(97,66,80,.3)}
    .breadcrumb{display:flex;gap:9px;align-items:center;color:var(--subtle);font-size:13px;margin-bottom:18px}.breadcrumb a{color:var(--cream)}
    .eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--cream);font-size:12px;font-weight:800;letter-spacing:.08em}.eyebrow:before{content:"";width:26px;height:2px;background:var(--coral)}
    h1,h2,h3,p{margin-top:0}h1{max-width:760px;margin-bottom:14px;font-size:clamp(32px,4vw,48px);line-height:1.16;letter-spacing:0}h2{font-size:30px;line-height:1.25;margin-bottom:10px}h3{font-size:18px;line-height:1.35;margin-bottom:8px}
    .lead{max-width:720px;color:var(--muted);font-size:16px;line-height:1.8;margin-bottom:0}
    .section{padding:60px 0}.section.dark{background:#100c12;border-top:1px solid rgba(97,66,80,.28);border-bottom:1px solid rgba(97,66,80,.28)}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:25px}.section-kicker{margin-bottom:7px;color:var(--coral);font-size:12px;font-weight:800;letter-spacing:.08em}
    .section-note{color:var(--subtle);font-size:13px}
    .filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px;background:rgba(33,24,34,.88);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:28px}
    .filter-label{color:var(--subtle);font-size:13px;margin-right:4px}.filter-btn{border:1px solid var(--line);background:#181119;color:var(--muted);padding:8px 13px;border-radius:8px;transition:.18s}.filter-btn:hover,.filter-btn.active{color:var(--text);border-color:var(--coral);background:rgba(228,123,119,.13)}
    .feature{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);min-height:300px;background:var(--panel);border:1px solid var(--line-light);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:26px}
    .cover{position:relative;min-height:300px;background:linear-gradient(140deg,#6d384d,#2d1b2b 52%,#171019);padding:22px;display:flex;align-items:flex-end}.cover:after{content:"安全封面";position:absolute;inset:0;display:grid;place-items:center;color:rgba(243,212,189,.48);font-size:13px;letter-spacing:.12em}
    .cover-number{position:relative;z-index:1;color:var(--cream);font-size:56px;font-weight:900;line-height:1}
    .feature-body{padding:30px}.feature-body p{color:var(--muted);max-width:570px}.meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;color:var(--subtle);font-size:13px;margin:15px 0 22px}.feature-actions{display:flex;gap:12px;flex-wrap:wrap}
    .index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
    .index-card{display:grid;grid-template-columns:94px minmax(0,1fr);gap:16px;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);transition:transform var(--ease),border-color var(--ease),background var(--ease)}
    .index-card:hover{transform:translateY(-3px);border-color:var(--line-light);background:var(--panel-soft)}
    .mini-cover{min-height:104px;border-radius:9px;background:linear-gradient(145deg,#563044,#241827);display:grid;place-items:center;color:var(--cream);font-size:22px;font-weight:800}
    .index-card p{color:var(--subtle);font-size:13px;line-height:1.6;margin-bottom:10px}.card-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;color:var(--subtle);font-size:12px}.card-meta a{color:var(--cream)}
    .topic-wall{display:flex;flex-wrap:wrap;gap:12px}.topic{padding:13px 17px;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--muted);transition:.18s}.topic:hover{border-color:var(--coral);color:var(--text);transform:translateY(-2px)}
    .faq{max-width:820px}.faq details{border-bottom:1px solid var(--line);padding:17px 0}.faq details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;color:var(--text);font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:"＋";color:var(--coral);font-size:20px;line-height:1}details[open] summary:after{content:"－"}details p{color:var(--muted);font-size:14px;margin:12px 28px 0 0}
    .compliance{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:25px 28px;background:var(--panel-warm);border:1px solid var(--line-light);border-radius:var(--radius)}.compliance p{color:var(--muted);margin:0;font-size:14px}
    .footer{padding:56px 0 20px;background:#0d0a10;border-top:1px solid rgba(97,66,80,.45)}.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:50px}.footer p{max-width:370px;color:var(--subtle);font-size:13px;margin:18px 0}.footer h3{font-size:15px}.footer-links{display:grid;gap:8px;color:var(--muted);font-size:13px}.footer-links a:hover{color:var(--cream)}
    .feedback-form{display:grid;gap:9px}.feedback-form select,.feedback-form textarea,.feedback-form input{width:100%;border:1px solid var(--line);border-radius:8px;background:#181119;color:var(--text);padding:10px 11px}.feedback-form textarea{min-height:76px;resize:vertical}.feedback-form small{color:var(--subtle);font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);margin-top:40px;padding-top:18px;color:var(--subtle);font-size:12px}
    .age-layer{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(8,6,9,.84)}.age-dialog{width:min(460px,100%);padding:30px;background:#211822;border:1px solid var(--line-light);border-radius:16px;box-shadow:var(--shadow)}.age-dialog h2{font-size:25px}.age-dialog p{color:var(--muted);font-size:14px}.age-actions{display:flex;gap:10px}.age-actions .btn{flex:1}
    @media(max-width:900px){.nav{gap:15px}.nav-tools .status-badge{display:none}.hero-grid,.feature{grid-template-columns:1fr}.cover{min-height:220px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
    @media(max-width:700px){.container{width:min(var(--max),calc(100% - 32px))}.nav{min-height:64px}.nav-links{display:none;position:absolute;top:64px;left:0;right:0;padding:12px 16px 18px;flex-direction:column;align-items:stretch;background:#171019;border-bottom:1px solid var(--line-light)}.nav-links.open{display:flex}.nav-link{padding:12px}.nav-tools{margin-left:auto}.menu-toggle{display:block}.nav-tools .age-badge{display:inline-flex}.status-inner{display:block;padding:7px 0}.status-inner span:last-child{display:none}.page-head{padding:38px 0 28px}.section{padding:45px 0}.section-head{display:block}.section-note{margin-top:8px}.filters{overflow-x:auto;flex-wrap:nowrap;padding:12px}.filter-label{flex:0 0 auto}.filter-btn{flex:0 0 auto}.index-grid{grid-template-columns:1fr}.compliance{grid-template-columns:1fr;gap:16px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:7px}.feature-body{padding:23px}.cover{min-height:190px}}
    @media(max-width:480px){h1{font-size:32px}.hero-actions,.feature-actions,.age-actions{display:grid;grid-template-columns:1fr}.btn{width:100%;min-height:44px}.index-card{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:13px}.mini-cover{min-height:94px}.age-dialog{padding:24px}.brand{font-size:15px}.brand-mark{width:31px;height:31px}}
