:root{--bg:#f5f7fa;--panel:#fff;--text:#18222f;--muted:#5a6878;--line:#d5dce5;--pri:#0b62b8;--pri-t:#fff;--acc:#c2410c;--ok:#12703a;--okbg:#e4f5ea;--warn:#8a5a00;--warnbg:#fff3d6;--bad:#a4151e;--badbg:#fde8ea;--head:#0e2a47;--code:#eef2f7;--shadow:0 1px 2px rgba(15,30,50,.08);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg:#10161d;--panel:#18212b;--text:#e6ecf2;--muted:#9fb0c1;--line:#2c3a49;--pri:#5aa9f0;--pri-t:#07203a;--acc:#fb923c;--ok:#6fd49a;--okbg:#12301f;--warn:#f2c35a;--warnbg:#3a2d0c;--bad:#ff8f98;--badbg:#3c1519;--head:#0a1824;--code:#0f161d;--shadow:none}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow-wrap:break-word}img,svg{max-width:100%}a{color:var(--pri)}:focus-visible{outline:3px solid var(--acc);outline-offset:2px}.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 14px}.skip{position:absolute;left:-999px;top:0;background:var(--pri);color:var(--pri-t);padding:8px 12px;z-index:50}.skip:focus{left:8px;top:8px}.site-head{background:var(--head);color:#fff;position:sticky;top:0;z-index:20;border-bottom:3px solid var(--acc)}.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:54px}.brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-weight:700;font-size:16px;line-height:1.2;min-width:0}.brand svg{width:30px;height:30px;flex:none}.brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-btn{display:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:transparent;cursor:pointer;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:5px;flex:none}.menu-btn .bar{display:block;width:22px;height:2px;background:#fff;border-radius:1px}.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;flex-wrap:wrap}.nav a{display:block;color:#e8f0f8;text-decoration:none;padding:8px 11px;border-radius:6px;font-size:15px}.nav a[aria-current=page]{background:#ffffff29;color:#fff}@media(hover:hover){.nav a:hover{background:#ffffff1f}}@media(max-width:760px){.js .menu-btn{display:flex}.js .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--head);border-bottom:3px solid var(--acc);padding:6px 14px 12px}.js .nav.open{display:block}.js .nav ul{flex-direction:column}.js .nav a{padding:12px 10px;font-size:16px}.nav ul{flex-direction:column}}main{padding:18px 0 40px}h1{font-size:1.65rem;line-height:1.2;margin:.2em 0 .4em}h2{font-size:1.3rem;line-height:1.25;margin:1.8em 0 .5em}h3{font-size:1.1rem;margin:1.2em 0 .4em}.lead{font-size:1.06rem;color:var(--text);max-width:70ch}.crumbs{font-size:14px;color:var(--muted);margin:0 0 6px}.crumbs a,.muted{color:var(--muted)}.small{font-size:13.5px}.prose,.prose p,.prose li{max-width:74ch}.prose ul,.prose ol{padding-left:1.3em}code{background:var(--code);padding:1px 5px;border-radius:4px;font:13.5px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}pre{background:var(--code);border:1px solid var(--line);border-radius:8px;padding:10px 12px;overflow:auto;max-width:100%;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;margin:.6em 0}pre code{background:none;padding:0;overflow-wrap:normal}table{border-collapse:collapse;width:100%;display:block;overflow-x:auto;font-size:14.5px}th,td{border:1px solid var(--line);padding:6px 9px;text-align:left;vertical-align:top}th{background:var(--code)}.box{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow);margin:14px 0}.notice{border-left:4px solid var(--acc);background:var(--panel);padding:10px 14px;border-radius:0 8px 8px 0;margin:14px 0;font-size:15px}.stand{font-size:14px;color:var(--muted)}.btn,button.btn,label.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:15px;cursor:pointer;text-decoration:none}.btn.primary{background:var(--pri);color:var(--pri-t);border-color:var(--pri);font-weight:600}@media(hover:hover){.btn:hover{border-color:var(--pri)}.btn.primary:hover{filter:brightness(1.08)}}.row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}textarea,input[type=search],input[type=text],select{width:100%;font:inherit;font-size:16px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);min-width:0}textarea{font:13.5px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-height:170px;resize:vertical;white-space:pre;overflow:auto}input.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px}label.fl{font-weight:600;display:block;margin-bottom:5px}.viewer{margin:12px 0}.status{margin:10px 0}.status.error{background:var(--badbg);color:var(--bad);border:1px solid var(--bad);border-radius:8px;padding:10px 14px}.status.error p{margin:.3em 0}.status .hint{color:var(--text)}.excerpt{background:var(--panel);color:var(--text)}.excerpt .bad{background:var(--badbg);color:var(--bad);font-weight:700}.excerpt .caret{color:var(--bad)}.summary{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.chip{display:inline-block;padding:3px 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:13.5px;line-height:1.5;color:var(--text)}.chip.ok{background:var(--okbg);color:var(--ok);border-color:var(--ok)}.chip.warn{background:var(--warnbg);color:var(--warn);border-color:var(--warn)}.chip.bad{background:var(--badbg);color:var(--bad);border-color:var(--bad)}button.chip{cursor:pointer;font:inherit;font-size:13.5px;min-height:34px}button.chip.on{background:var(--pri);color:var(--pri-t);border-color:var(--pri)}.btn-chip{max-width:100%;overflow-wrap:anywhere;text-align:left}@media(hover:hover){button.chip:hover{border-color:var(--pri)}}details.hints,details.reflist,details.narr{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 12px;margin:10px 0}details>summary{cursor:pointer;font-weight:600;min-height:32px}.hint-list{list-style:none;padding:0;margin:8px 0 0}.hint-list li{padding:6px 0;border-top:1px solid var(--line);font-size:14.5px}.lvl{display:inline-block;font-size:12px;font-weight:700;padding:1px 7px;border-radius:5px;margin-right:6px;text-transform:uppercase}.h-error .lvl{background:var(--badbg);color:var(--bad)}.h-warn .lvl{background:var(--warnbg);color:var(--warn)}.h-info .lvl{background:var(--code);color:var(--muted)}.linkish{background:none;border:0;padding:0;color:var(--pri);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer;text-align:left}.bundle{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:12px 0}.bundle h3{margin-top:0}.types{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.entries{list-style:none;margin:8px 0;padding:0;max-height:340px;overflow:auto;border:1px solid var(--line);border-radius:8px}.entries li+li{border-top:1px solid var(--line)}button.entry{display:grid;grid-template-columns:auto auto 1fr;gap:4px 8px;align-items:center;width:100%;text-align:left;background:transparent;border:0;padding:8px 10px;font:inherit;font-size:14.5px;color:var(--text);cursor:pointer;min-height:44px}button.entry.sel{background:var(--code);box-shadow:inset 3px 0 0 var(--acc)}@media(hover:hover){button.entry:hover{background:var(--code)}}.entry .no{color:var(--muted);min-width:1.8em;text-align:right}.entry .lbl{min-width:0;overflow-wrap:anywhere}.entry .refcount{grid-column:2/-1;font-size:12.5px;color:var(--muted)}.entry .refcount.bad{color:var(--bad)}.badge{display:inline-block;font-size:12px;font-weight:600;padding:1px 8px;border-radius:5px;background:var(--code);border:1px solid var(--line);color:var(--text);white-space:nowrap}.detail{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:12px 0}.d-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.d-head h3{margin:0;overflow-wrap:anywhere}.d-actions{display:flex;flex-wrap:wrap;gap:6px}.d-actions .btn{min-height:40px;padding:6px 11px;font-size:14px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:12px 0 8px;overflow-x:auto}.tab{background:none;border:0;border-bottom:3px solid transparent;padding:9px 14px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;min-height:44px;white-space:nowrap}.tab.on{color:var(--text);border-bottom-color:var(--acc)}@media(hover:hover){.tab:hover{color:var(--text)}}[hidden]{display:none!important}.panel[hidden]{display:none}.card-h{font-weight:700;margin:0 0 6px;color:var(--acc)}.card-dl{display:grid;grid-template-columns:1fr;gap:0;margin:0}.card-dl dt{font-size:12.5px;font-weight:700;color:var(--muted);text-transform:none;margin-top:9px;font-family:ui-monospace,Menlo,Consolas,monospace}.card-dl dd{margin:1px 0 0;min-width:0;overflow-wrap:anywhere}.card-dl.nested{border-left:2px solid var(--line);padding-left:10px;margin:2px 0 4px}.card-dl.nested dt{margin-top:4px}@media(min-width:700px){.card-dl{grid-template-columns:minmax(140px,220px) 1fr;column-gap:14px}.card-dl dt{margin-top:0;padding:6px 0;border-top:1px solid var(--line)}.card-dl dd{padding:6px 0;border-top:1px solid var(--line);margin:0}.card-dl.nested{grid-template-columns:minmax(90px,160px) 1fr}.card-dl.nested dt,.card-dl.nested dd{border-top:0;padding:2px 0}}.vlist{list-style:none;margin:0;padding:0}.vlist li+li{margin-top:3px}.codes{display:block;color:var(--muted);font-size:12.5px}.v-s{color:var(--text)}.v-n{color:var(--acc);font-family:ui-monospace,Menlo,Consolas,monospace}.v-b{color:var(--pri);font-family:ui-monospace,Menlo,Consolas,monospace}.ref{display:inline-block;font:inherit;font-size:13.5px;padding:2px 9px;border-radius:6px;border:1px solid var(--line);background:var(--code);color:var(--text);overflow-wrap:anywhere;max-width:100%;text-align:left}button.ref.ok{border-color:var(--pri);color:var(--pri);cursor:pointer;min-height:30px}span.ref.ok{border-color:var(--ok);color:var(--ok)}.ref.bad{border-color:var(--bad);color:var(--bad);background:var(--badbg)}@media(hover:hover){button.ref.ok:hover{background:var(--pri);color:var(--pri-t)}}.incoming{margin:12px 0 4px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tree-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:6px}.tree-bar input{flex:1 1 220px;width:auto}.tree{font:13.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;max-height:70vh;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:var(--bg)}.tree details{margin-left:14px}.tree>details{margin-left:0}.tree summary{font-weight:400;min-height:26px;overflow-wrap:anywhere}.tree .k{color:var(--acc);margin-right:6px}.tree .meta{color:var(--muted);margin-right:6px}.t-row{margin-left:32px;overflow-wrap:anywhere}.tree>.t-row{margin-left:16px}.t-row .ref{font-size:12.5px}.fp-row{display:grid;grid-template-columns:1fr;gap:6px}.fp-row .btn{justify-self:start}@media(min-width:700px){.fp-row{grid-template-columns:auto 1fr auto;align-items:center}}.fp-ex{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.fp-res{margin-top:10px}.fp-list{padding-left:0;list-style:none;margin:6px 0}.fp-list li{margin:6px 0}.fp-list pre{margin:3px 0}.fp-count{font-weight:600;margin:6px 0}select{width:auto;margin-top:8px}.samples{display:grid;grid-template-columns:1fr;gap:10px;margin:12px 0}@media(min-width:640px){.samples{grid-template-columns:1fr 1fr}}@media(min-width:980px){.samples{grid-template-columns:1fr 1fr 1fr}}.sample{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:11px 13px;display:flex;flex-direction:column;gap:6px;min-width:0}.sample h3{margin:0;font-size:1rem}.sample p{margin:0;font-size:14px;color:var(--muted);flex:1}.sample .btn{align-self:flex-start;min-height:40px}.faq details{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:6px 12px;margin:8px 0}.faq details[open]{padding-bottom:10px}.faq p{margin:.4em 0}.cards{display:grid;grid-template-columns:1fr;gap:10px;list-style:none;padding:0;margin:12px 0}@media(min-width:700px){.cards{grid-template-columns:1fr 1fr}}.cards li{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:11px 13px}.cards a{font-weight:700}.cards p{margin:.3em 0 0;font-size:14.5px;color:var(--muted)}.about{display:grid;gap:10px;grid-template-columns:1fr}.site-foot{border-top:1px solid var(--line);background:var(--panel);padding:20px 0 28px;font-size:14.5px}.site-foot ul{list-style:none;padding:0;margin:6px 0;display:flex;flex-wrap:wrap;gap:4px 16px}.site-foot a{display:inline-block;padding:6px 0}.disclaimer{color:var(--muted);font-size:13.5px;max-width:90ch}.eg{display:block;max-height:380px}.src{font-size:13.5px;color:var(--muted)}@media print{.site-head,.site-foot,.tabs,.d-actions{display:none}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}input.visually-hidden:focus-visible+*{outline:2px solid var(--acc)}
