:root{
  --bg:#121212;
  --primary:#EC67BC;
  --mauve:#8D677F;
  --pink-light:#E695C9;
  --text:#F4F0F2;
  --text-dim:#A99EA4;
  --card:#1C1A1B;
  --card-hi:#232021;
  --line:rgba(141,103,127,.28);
  --line-strong:rgba(236,103,188,.42);
  --radius:18px;
  --maxw:760px;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{background:var(--bg);}
body{
  min-height:100vh;
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  line-height:1.8;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
.app{max-width:var(--maxw);margin:0 auto;padding:0 18px calc(42px + env(safe-area-inset-bottom));}
.appbar{
  position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:calc(12px + env(safe-area-inset-top)) 0 12px;
  background:linear-gradient(180deg,var(--bg) 76%,rgba(18,18,18,0));
}
.brand{display:flex;align-items:center;gap:8px;min-width:0;}
.brand-badge{
  flex:0 0 auto;font-size:11px;letter-spacing:2px;font-weight:800;color:var(--primary);
  border:1px solid rgba(236,103,188,.36);padding:4px 12px;border-radius:999px;
  background:rgba(236,103,188,.07);text-transform:uppercase;
}
.mini-title{font-size:14px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.back{
  display:inline-flex;align-items:center;gap:3px;color:var(--pink-light);
  font-size:15px;font-weight:700;padding:7px 10px 7px 0;
}
.back svg,.jump svg{width:20px;height:20px;}
.jump{
  display:inline-flex;align-items:center;gap:6px;color:var(--primary);
  border:1px solid rgba(236,103,188,.32);background:rgba(236,103,188,.08);
  border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;
}
.hero{
  position:relative;overflow:hidden;margin:8px 0 18px;padding:26px 20px 24px;
  background:linear-gradient(160deg,var(--card-hi),var(--card));
  border:1px solid rgba(141,103,127,.24);border-radius:var(--radius);
}
.hero::before{
  content:"";position:absolute;right:-72px;top:-86px;width:230px;height:230px;
  background:radial-gradient(circle,rgba(236,103,188,.28),rgba(230,149,201,.10) 42%,rgba(18,18,18,0) 70%);
  filter:blur(5px);pointer-events:none;
}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;}
.hero,.entry,.doc-shell,.data-card{overflow-wrap:anywhere;word-break:break-word;}
.eyebrow{font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--primary);font-weight:800;margin-bottom:8px;}
h1{
  font-size:clamp(28px,6vw,46px);line-height:1.14;font-weight:900;letter-spacing:0;
  background:linear-gradient(90deg,var(--primary),var(--pink-light));-webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero p{margin-top:12px;color:#D8CDD2;font-size:14px;line-height:1.8;max-width:560px;}
.meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.pill{
  color:#EADDE4;background:rgba(236,103,188,.08);border:1px solid rgba(236,103,188,.26);
  border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;
}
.nav-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:16px;}
.entry{
  min-height:136px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;
  background:linear-gradient(150deg,var(--card-hi),var(--card));
  border:1px solid rgba(141,103,127,.22);border-radius:var(--radius);padding:17px 16px;
  transition:transform .14s ease,border-color .2s ease,box-shadow .2s ease;
}
.entry:active{transform:scale(.985);border-color:var(--line-strong);box-shadow:0 8px 26px rgba(236,103,188,.13);}
.entry-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.ico{
  width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,rgba(236,103,188,.20),rgba(230,149,201,.08));
  border:1px solid rgba(236,103,188,.25);
}
.ico svg{width:22px;height:22px;}
.chev{color:var(--mauve);display:flex;}
.chev svg{width:20px;height:20px;}
.entry h2{font-size:17px;line-height:1.35;color:var(--text);margin-bottom:5px;}
.entry p{font-size:12.5px;line-height:1.55;color:var(--text-dim);}
.footer-note{text-align:center;color:var(--mauve);font-size:11.5px;margin-top:28px;letter-spacing:.5px;}
.doc-shell{
  background:linear-gradient(150deg,var(--card-hi),var(--card));
  border:1px solid rgba(141,103,127,.22);border-radius:var(--radius);
  padding:22px 20px;margin-top:14px;
}
.doc-shell h2{
  font-size:20px;line-height:1.35;color:var(--pink-light);margin:30px 0 12px;
  padding-top:18px;border-top:1px solid rgba(141,103,127,.25);
}
.doc-shell h2:first-child{margin-top:0;padding-top:0;border-top:0;}
.doc-shell h3{font-size:16px;line-height:1.45;color:var(--text);margin:22px 0 8px;}
.doc-shell p{font-size:14px;line-height:1.9;color:#D7CDD2;margin:10px 0;}
.doc-shell p.clause{padding-left:0;color:#D3C7CD;}
.doc-shell strong,.doc-shell b{color:var(--pink-light);}
.table-wrap{margin:18px 0 24px;}
.table-title{
  display:flex;align-items:center;gap:8px;margin:0 0 11px;color:var(--pink-light);font-size:14px;font-weight:900;
}
.table-title::before{content:"";width:4px;height:16px;border-radius:2px;background:linear-gradient(var(--primary),var(--pink-light));}
.table-scroll{overflow-x:auto;border:1px solid rgba(141,103,127,.26);border-radius:14px;background:rgba(18,18,18,.32);}
table{width:100%;border-collapse:collapse;min-width:720px;}
th,td{border-bottom:1px solid rgba(141,103,127,.22);padding:12px 12px;text-align:left;vertical-align:top;font-size:12.5px;line-height:1.65;}
th{color:#fff;background:rgba(236,103,188,.16);font-weight:800;white-space:nowrap;}
td{color:#D6CBD1;}
tr:last-child td{border-bottom:0;}
.mobile-cards{display:none;gap:12px;}
.data-card{
  border:1px solid rgba(141,103,127,.24);border-radius:14px;background:rgba(18,18,18,.26);
  padding:13px 13px 12px;
}
.data-card h4{font-size:14px;line-height:1.45;color:var(--text);margin-bottom:9px;}
.kv{display:grid;grid-template-columns:86px 1fr;gap:7px 10px;padding:7px 0;border-top:1px solid rgba(141,103,127,.18);}
.kv:first-of-type{border-top:0;}
.kv .k{font-size:12px;color:var(--mauve);font-weight:800;}
.kv .v{font-size:12.5px;line-height:1.65;color:#D8CDD2;}
.toc{
  position:sticky;top:58px;z-index:10;margin:12px 0 14px;padding:10px 0;
  background:linear-gradient(180deg,var(--bg) 82%,rgba(18,18,18,0));
  display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.toc::-webkit-scrollbar{display:none;}
.toc a{
  flex:0 0 auto;color:var(--pink-light);font-size:12px;font-weight:800;border:1px solid rgba(236,103,188,.28);
  background:rgba(236,103,188,.07);border-radius:999px;padding:6px 10px;
}
.fade{opacity:0;transform:translateY(14px);animation:rise .58s ease forwards;}
@keyframes rise{to{opacity:1;transform:translateY(0);}}
@media (max-width:720px){
  .app{max-width:440px;padding-left:18px;padding-right:18px;}
  .hero{padding:24px 18px 22px;}
  .hero-grid{display:block;}
  .nav-grid{grid-template-columns:1fr;}
  .doc-shell{padding:19px 16px;}
  .doc-shell h2{font-size:18px;}
  .doc-shell p{font-size:13.5px;}
  .table-scroll{display:none;}
  .mobile-cards{display:grid;}
}
