:root{--indigo:#6200FF;--indigo-2:#8B3DFF;--lav:#C9A7FF;--tint:#F4EEFF;--bg:#F7F7F9;--surface:#fff;--ink:#111114;--muted:#71717A;--line:#ECECF1;--faint:#F1F1F4}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:128px}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom,0px)}
a{color:var(--indigo);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
.lg-top{position:sticky;top:0;z-index:5;background:rgba(247,247,249,.86);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.lg-top__in{max-width:1180px;margin:0 auto;padding:12px 22px 8px;display:flex;align-items:center;gap:16px}
.lg-brand{display:flex;align-items:center;gap:9px;font-weight:700;color:var(--ink);letter-spacing:-.01em;font-size:16px}
.lg-brand:hover{text-decoration:none}
.lg-brand__ic{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#6200FF,#8B3DFF 55%,#C9A7FF)}
.lg-brand__ic svg{width:17px;height:17px}
.lg-back{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--muted);font-weight:500}
.lg-back:hover{color:var(--ink);text-decoration:none}
.lg-tabs{max-width:1180px;margin:0 auto;padding:2px 22px 10px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.lg-tabs::-webkit-scrollbar{display:none}
.lg-tabs a{flex:none;font-size:13.5px;font-weight:500;color:var(--muted);padding:6px 12px;border-radius:999px;border:1px solid transparent;white-space:nowrap;transition:color .2s,background .2s,border-color .2s}
.lg-tabs a:hover{color:var(--ink);background:var(--surface);border-color:var(--line);text-decoration:none}
.lg-tabs a.on{color:var(--indigo);background:var(--tint);border-color:#E3D4FF}
.lg-wrap{max-width:1180px;margin:0 auto;padding:34px 22px 64px;display:grid;grid-template-columns:240px minmax(0,1fr);gap:44px;align-items:start}
.lg-toc{position:sticky;top:128px;font-size:13.5px;max-height:calc(100vh - 150px);overflow:auto;scrollbar-width:thin}
.lg-toc b{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-weight:600}
.lg-toc a{display:block;color:var(--muted);padding:5px 0 5px 12px;border-left:2px solid var(--line);line-height:1.35;transition:color .2s,border-color .2s}
.lg-toc a:hover{color:var(--ink);border-left-color:var(--lav);text-decoration:none}
.lg-doc{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:44px 52px;max-width:840px;box-shadow:0 1px 2px rgba(17,17,20,.03),0 18px 40px -30px rgba(98,0,255,.18)}
.lg-kicker{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--indigo);font-weight:600;margin:0 0 10px}
.lg-doc h1{font-size:clamp(26px,3.2vw,36px);line-height:1.15;letter-spacing:-.02em;margin:0 0 14px}
.lg-meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--muted);margin:0 0 26px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.lg-meta span{display:inline-flex;align-items:center;gap:6px}
.lg-doc .lead{font-size:17px;line-height:1.6;color:#3F3F46;margin:0 0 20px}
.lg-doc h2{font-size:20px;line-height:1.3;letter-spacing:-.01em;margin:40px 0 12px}
.lg-doc p,.lg-doc li{color:#27272A}
.lg-doc p{margin:0 0 12px}
.lg-doc ul,.lg-doc ol{padding-left:22px;margin:10px 0 14px}
.lg-doc li{margin:6px 0}
.lg-doc li::marker{color:var(--indigo-2)}
.note{display:flex;gap:12px;background:var(--tint);border:1px solid #E6D9FF;border-radius:14px;padding:15px 18px;margin:18px 0;font-size:15px;line-height:1.55}
.note>svg{flex:none;margin-top:2px;color:var(--indigo)}
.note--gray{background:var(--faint);border-color:var(--line)}
.note--gray>svg{color:var(--muted)}
.tbl-w{overflow-x:auto;margin:14px 0 18px;border:1px solid var(--line);border-radius:14px;-webkit-overflow-scrolling:touch}
.tbl{width:100%;border-collapse:collapse;font-size:14.5px;line-height:1.5;min-width:560px}
.tbl th,.tbl td{text-align:left;vertical-align:top;padding:11px 14px;border-bottom:1px solid var(--line)}
.tbl th{background:var(--faint);font-size:12.5px;letter-spacing:.02em;color:#52525B;font-weight:600}
.tbl td:first-child{font-weight:500;color:var(--ink)}
.tbl tr:last-child td{border-bottom:0}
.req{display:grid;grid-template-columns:200px 1fr;gap:9px 18px;font-size:15px;margin:14px 0}
.req dt{color:var(--muted)}
.req dd{margin:0;font-weight:500}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 8px}
.card{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;color:var(--ink);transition:border-color .25s,box-shadow .25s,transform .25s}
.card:hover{text-decoration:none;border-color:#D9C6FF;box-shadow:0 10px 26px -14px rgba(98,0,255,.28);transform:translateY(-1px)}
.card__ic{flex:none;width:40px;height:40px;border-radius:12px;background:var(--tint);color:var(--indigo);display:grid;place-items:center}
.card b{display:block;font-size:15.5px;margin-bottom:3px}
.card span span{display:block;font-size:13.5px;color:var(--muted);line-height:1.45}
.lg-foot{max-width:1180px;margin:0 auto;padding:0 22px 44px;font-size:13px;color:var(--muted);line-height:1.7}
.lg-foot a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}
@media(max-width:980px){.lg-wrap{grid-template-columns:1fr;gap:0;padding-top:18px}.lg-toc{display:none}}
@media(max-width:640px){.lg-doc{padding:26px 20px;border-radius:16px}.cards{grid-template-columns:1fr}.req{grid-template-columns:1fr;gap:0}.req dd{margin-bottom:10px}.lg-doc h2{font-size:18.5px;margin-top:32px}.lg-top__in{padding:10px 16px 6px}.lg-tabs{padding:2px 16px 10px}.lg-wrap{padding-left:12px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.lg-tabs a,.lg-toc a{transition:none}}
.lg-pdf{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--indigo);background:var(--tint);border:1px solid #E3D4FF;border-radius:999px;padding:4px 12px 4px 10px;font-size:12.5px}
.lg-pdf:hover{text-decoration:none;background:#EDE3FF}
.lg-print{display:none}
@page{size:A4;margin:16mm 15mm 18mm}
@media print{body{font-size:12.5px}.lg-doc .lead{font-size:14px}.lg-pdf{display:none}.lg-print{display:block;margin-top:28px;padding-top:12px;border-top:1px solid #ddd;font-size:11px;color:#555}.note,.tbl th{-webkit-print-color-adjust:exact;print-color-adjust:exact}.tbl-w{overflow:visible}.tbl{min-width:0;font-size:12px}.tbl tr,.note,.req,.card{break-inside:avoid}.lg-doc h2{break-after:avoid;margin-top:26px}}
@media print{.lg-top,.lg-toc,.lg-foot{display:none}.lg-wrap{display:block;padding:0}.lg-doc{border:0;box-shadow:none;padding:0;max-width:none}body{background:#fff}a{color:inherit}}
