
.top{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(120% 140% at 80% 0%,var(--hero-glow),var(--hero) 60%,var(--hero-deep));color:var(--on-hero);border-radius:0 0 32px 32px}
.col{position:relative;max-width:860px;margin:0 auto;padding:0 28px}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;height:76px}
.bar .end{display:flex;gap:10px}
.title{padding:36px 0 64px}
.title h1{font-size:52px;letter-spacing:-.035em;line-height:1.05;margin:0 0 12px;font-weight:700}
.title p{margin:0;color:var(--on-hero-muted);font-size:16px}
.sum{margin:-32px 0 0;position:relative;background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:26px 28px;box-shadow:var(--shadow)}
.sum h2{margin:0 0 14px;font-size:18px}
.sum p{margin:0;font-size:16px}
.sum ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.sum li{display:flex;gap:10px;font-size:15px;line-height:1.5}
.sum li .ic{color:var(--success);margin-top:1px;stroke-width:2}
.toc{margin:36px 0 0;padding:20px 24px;border-radius:16px;background:var(--surface2);font-size:15px;columns:2;column-gap:32px}
.toc a{display:block;padding:5px 0}
.toc a:hover{color:var(--primary)}
.doc{line-height:1.7}
.doc h2{font-size:26px;letter-spacing:-.02em;margin:56px 0 12px;scroll-margin-top:20px}
.doc h3{font-size:18px;margin:24px 0 6px}
.doc p,.doc li{font-size:16px}
.doc ul{padding-left:22px}
.doc a{color:var(--primary);text-decoration:underline;text-underline-offset:2px}
.doc .mut{color:var(--muted)}
.tbl{overflow-x:auto;border:1px solid var(--border);border-radius:16px;background:var(--surface);margin:18px 0}
.tbl table{border-collapse:collapse;width:100%;min-width:620px;font-size:15px;line-height:1.55}
.tbl th{text-align:left;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--surface2);padding:12px 16px}
.tbl td{padding:14px 16px;border-top:1px solid var(--border);vertical-align:top}
.tag{display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--primary-container);color:var(--on-primary-container);margin-left:6px;white-space:nowrap}
.contact{margin:24px 0 0;padding:24px;border-radius:18px;background:var(--surface);border:1px solid var(--border)}
.contact p{margin:0 0 6px}
.contact p:last-child{margin:0}
.lfoot{margin-top:72px;border-top:1px solid var(--border);padding:28px 0 40px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:14px;color:var(--muted)}
.lfoot nav{display:flex;gap:18px;flex-wrap:wrap}
.lfoot a{padding:6px 0}
.lfoot a:hover{color:var(--primary)}
.nf{text-align:center;padding:96px 0 40px}
.nf h1{font-size:44px;letter-spacing:-.03em;margin:0 0 12px}
.nf p{color:var(--muted);margin:0 0 28px}
.btn{display:inline-flex;align-items:center;height:48px;padding:0 22px;border-radius:14px;background:var(--primary);color:var(--on-primary);font-weight:600}
@media (max-width:640px){
  .col{padding:0 20px}
  .title{padding:24px 0 56px}
  .title h1{font-size:36px}
  .bar .get{display:none}
  .sum{padding:22px 20px}
  .sum ul{grid-template-columns:1fr}
  .toc{columns:1}
  .doc h2{font-size:22px;margin-top:44px}
  .tbl{border:0;background:none;overflow:visible}
  .tbl table,.tbl tbody,.tbl tr,.tbl td{display:block;min-width:0;width:auto}
  .tbl thead{display:none}
  .tbl tr{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:6px 16px;margin-bottom:12px}
  .tbl td{border:0;padding:8px 0}
  .tbl td+td{border-top:1px solid var(--border)}
  .tbl td::before{content:attr(data-label);display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
}
