:root{
  --bg:#f5f7fb;
  --surface:#ffffff;
  --surface-soft:#f8faff;
  --text:#111827;
  --muted:#5f6f86;
  --muted-2:#7b8aa1;
  --border:#dce5f2;
  --brand:#5b46ef;
  --brand-2:#7446ef;
  --brand-soft:#f0edff;
  --success:#0f9f6e;
  --success-soft:#eafaf3;
  --warn:#9a6700;
  --warn-soft:#fff8df;
  --shadow:0 18px 45px rgba(40,54,84,.08);
  --container:1180px;
}
html[data-theme="dark"]{
  --bg:#0b1220;
  --surface:#101827;
  --surface-soft:#131d2e;
  --text:#f5f7fb;
  --muted:#b0bdd0;
  --muted-2:#8796ad;
  --border:#253249;
  --brand-soft:#211c43;
  --success-soft:#102d25;
  --warn-soft:#302a12;
  --shadow:0 22px 55px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.7;font-size:16px}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
button{font:inherit}
.shell{width:min(var(--container),calc(100% - 40px));margin:auto}
.topbar{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.topbar-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-weight:900;letter-spacing:-.035em}
.brand:hover{text-decoration:none}
.brand img{width:46px;height:46px;border-radius:14px;box-shadow:0 9px 25px rgba(91,70,239,.16)}
.brand-name{font-size:20px}.brand-name span{color:var(--brand)}
.top-actions{display:flex;gap:9px;align-items:center}
.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);min-height:42px;padding:0 14px;border-radius:12px;font-weight:800;display:inline-flex;align-items:center;gap:8px;cursor:pointer;text-decoration:none}
.btn:hover{border-color:#b9c6db;text-decoration:none}
.btn-primary{background:linear-gradient(135deg,var(--brand),var(--brand-2));border-color:transparent;color:#fff}
.hero{padding:56px 0 30px}
.hero-card{border:1px solid var(--border);border-radius:26px;background:linear-gradient(135deg,var(--surface),var(--surface-soft));padding:34px;box-shadow:var(--shadow)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--brand);font-size:12px;margin-bottom:12px}
h1{font-size:clamp(36px,5vw,56px);line-height:1.03;letter-spacing:-.045em;margin:0}
.hero p{color:var(--muted);font-size:17px;max-width:850px;margin:16px 0 0}
.meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px;color:var(--muted);font-size:13px;font-weight:700}
.meta span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface)}
.layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;padding:20px 0 70px}
.toc{position:sticky;top:94px;align-self:start;border:1px solid var(--border);border-radius:20px;background:var(--surface);padding:18px;box-shadow:0 10px 30px rgba(40,54,84,.04)}
.toc strong{display:block;font-size:14px;margin-bottom:10px}.toc nav{display:grid;gap:4px}
.toc a{color:var(--muted);font-size:13px;font-weight:700;padding:8px 9px;border-radius:10px}
.toc a:hover{background:var(--brand-soft);color:var(--brand);text-decoration:none}
.content{min-width:0}
.notice{border:1px solid #cdd7ff;background:var(--brand-soft);border-radius:18px;padding:18px 20px;margin-bottom:18px}
.notice strong{display:block;margin-bottom:5px}.notice p{margin:0;color:var(--muted)}
.notice.success{border-color:#bcebd7;background:var(--success-soft)}
.notice.warn{border-color:#f3dea1;background:var(--warn-soft)}
.section{scroll-margin-top:96px;border:1px solid var(--border);border-radius:20px;background:var(--surface);padding:25px 27px;margin-bottom:16px}
.section h2{font-size:23px;line-height:1.25;letter-spacing:-.025em;margin:0 0 12px}
.section h3{font-size:17px;margin:22px 0 8px}.section p{margin:9px 0;color:var(--muted)}
.section ul,.section ol{color:var(--muted);padding-left:22px}.section li{margin:7px 0}
.section strong{color:var(--text)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0}
.mini-card{border:1px solid var(--border);border-radius:15px;background:var(--surface-soft);padding:15px}
.mini-card strong{display:block;font-size:14px;margin-bottom:5px}.mini-card p{margin:0;font-size:14px}
.scope-table{width:100%;border-collapse:separate;border-spacing:0;margin:14px 0;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.scope-table th,.scope-table td{text-align:left;padding:12px 13px;border-bottom:1px solid var(--border);vertical-align:top;font-size:14px}.scope-table th{background:var(--surface-soft);color:var(--text)}.scope-table td{color:var(--muted)}.scope-table tr:last-child td{border-bottom:0}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--surface-soft);border:1px solid var(--border);border-radius:7px;padding:2px 6px;color:var(--text);font-size:.92em;overflow-wrap:anywhere}
.footer{border-top:1px solid var(--border);background:var(--surface);padding:28px 0 34px}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;flex-wrap:wrap}.footer-brand{display:flex;align-items:center;gap:10px;font-weight:900}.footer-brand img{width:34px;height:34px;border-radius:10px}.footer p{font-size:13px;color:var(--muted);margin:7px 0 0;max-width:610px}.footer-links{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;font-weight:800}.footer-links a{color:var(--muted)}
@media(max-width:900px){.layout{grid-template-columns:1fr}.toc{position:relative;top:0}.toc nav{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:1fr}}
@media(max-width:620px){body{font-size:15px}.shell{width:min(100% - 24px,var(--container))}.topbar-inner{min-height:66px}.brand-name{font-size:17px}.brand img{width:40px;height:40px}.top-actions .btn span{display:none}.hero{padding:28px 0 18px}.hero-card{padding:24px 20px;border-radius:20px}h1{font-size:34px}.hero p{font-size:15px}.layout{padding-top:10px}.toc nav{grid-template-columns:1fr}.section{padding:21px 18px}.section h2{font-size:21px}.scope-table{display:block;overflow-x:auto}.footer-inner{display:block}.footer-links{margin-top:18px}}
@media print{.topbar,.toc,.top-actions{display:none}.layout{display:block}.hero{padding-top:20px}.section,.hero-card{box-shadow:none;break-inside:avoid}.footer{background:#fff}}
