:root{--pu-canvas:#f8f9fb;--pu-surface:#fff;--pu-subtle:#f9fafb;--pu-sunken:#f3f4f6;--pu-line:#e5e7eb;--pu-line-2:#d1d5db;--pu-hairline:#f1f2f4;--pu-ink:#111827;--pu-ink-2:#374151;--pu-muted:#6b7280;--pu-faint:#9ca3af;--pu-green:#059669;--pu-green-ink:#047857;--pu-green-tint:#0596691a;--pu-green-edge:#05966947;--pu-violet:#7c3aed;--pu-violet-2:#6d28d9;--pu-danger:#dc2626;--pu-danger-2:#b91c1c;--pu-danger-edge:#fecaca;--pu-danger-tint:#fef2f2;--pu-warn:#b45309;--pu-warn-edge:#fdba74;--pu-warn-tint:#fffbeb;--pu-r-sm:8px;--pu-r-md:10px;--pu-r-lg:12px;--pu-r-xl:16px;--pu-e-1:0 1px 2px #1018280a;--pu-e-2:0 1px 3px #10182814, 0 1px 2px #1018280a;--pu-e-3:0 12px 32px #10182829;--pu-tick:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.8 4.6 4.4L19 6.6'/%3E%3C/svg%3E");--pu-ring:0 0 0 3px #05966929}.pu{--bg:var(--pu-canvas);--card:var(--pu-surface);--card-2:var(--pu-subtle);--border:var(--pu-line);--border-2:var(--pu-line-2);--txt:var(--pu-ink);--txt-2:var(--pu-ink-2);--muted:var(--pu-muted);--muted-2:var(--pu-faint);--green:var(--pu-green);--green-ink:var(--pu-green-ink);--green-glow:var(--pu-green-tint);--violet:var(--pu-violet);--amber:#b45309;--red:var(--pu-danger);--radius:var(--pu-r-lg);color:var(--pu-ink);background:var(--pu-canvas);min-height:100%}.pu :focus-visible{outline:2px solid var(--pu-green);outline-offset:2px;border-radius:6px}.pu-wrap{max-width:1120px;margin:0 auto;padding:32px 24px 120px}.pu-wrap.prose{max-width:760px}.pu-wrap.mid{max-width:920px}.pu-head{margin-bottom:24px}.pu-head h1{letter-spacing:-.02em;color:var(--pu-ink);margin:0 0 6px;font-size:30px;font-weight:800;line-height:1.15}.pu-head p{color:var(--pu-muted);max-width:74ch;margin:0;font-size:14.5px;line-height:1.6}.pu-split{grid-template-columns:264px minmax(0,1fr);align-items:start;gap:28px;display:grid}.pu-rail{flex-direction:column;gap:2px;display:flex;position:sticky;top:24px}.pu-railitem{text-align:left;border-radius:var(--pu-r-md);cursor:pointer;width:100%;color:var(--pu-ink);background:0 0;border:1px solid #0000;align-items:flex-start;gap:11px;padding:10px 12px;font-family:inherit;transition:background .12s,border-color .12s,color .12s;display:flex}.pu-railitem:hover{background:var(--pu-surface);border-color:var(--pu-line)}.pu-railitem.active{background:var(--pu-surface);border-color:var(--pu-line);box-shadow:var(--pu-e-1)}.pu-railitem.active:before{content:"";background:var(--pu-green);border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.pu-railitem{position:relative}.pu-railicon{color:var(--pu-faint);flex:none;margin-top:1px;transition:color .12s}.pu-railitem:hover .pu-railicon{color:var(--pu-muted)}.pu-railitem.active .pu-railicon{color:var(--pu-green-ink)}.pu-railtext{min-width:0}.pu-raillabel{letter-spacing:-.005em;color:var(--pu-ink);align-items:center;gap:7px;font-size:13.5px;font-weight:650;display:flex}.pu-railitem.active .pu-raillabel{color:var(--pu-green-ink)}.pu-railblurb{color:var(--pu-muted);margin-top:2px;font-size:12px;line-height:1.4;display:block}.pu-raildot{background:#f59e0b;border-radius:50%;flex:none;width:6px;height:6px}.pu-body{flex-direction:column;gap:18px;min-width:0;display:flex}.pu-card{background:var(--pu-surface);border:1px solid var(--pu-line);border-radius:var(--pu-r-xl);box-shadow:var(--pu-e-1);padding:24px 26px}.pu-card.danger{border-color:var(--pu-danger-edge);background:#fffcfc}.pu-cardhead{margin-bottom:18px}.pu-cardhead h2{letter-spacing:-.01em;color:var(--pu-ink);flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 4px;font-size:17px;font-weight:750;display:flex}.pu-card.danger .pu-cardhead h2{color:var(--pu-danger-2)}.pu-cardhead p{color:var(--pu-muted);max-width:66ch;margin:0;font-size:13px;line-height:1.6}.pu-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--pu-muted);margin-bottom:10px;font-size:10.5px;font-weight:800}.pu-eyebrow.ok{color:var(--pu-green-ink)}.pu-muted{color:var(--pu-muted);margin:0;font-size:13px;line-height:1.6}.pu-err{color:var(--pu-danger);margin:12px 0 0;font-size:13px;line-height:1.55}.pu-link{color:var(--pu-green-ink);font-weight:650}.pu-inline{font:inherit;color:var(--pu-green-ink);cursor:pointer;background:0 0;border:0;padding:0;font-weight:650;text-decoration:underline}.pu-rule{border:0;border-top:1px solid var(--pu-hairline);margin:18px 0}.pu-field{margin-bottom:15px}.pu-label{color:var(--pu-ink-2);margin-bottom:6px;font-size:12.5px;font-weight:650;display:block}.pu-input{border:1px solid var(--pu-line-2);border-radius:var(--pu-r-sm);width:100%;color:var(--pu-ink);background:var(--pu-surface);box-sizing:border-box;outline:0;padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .12s,box-shadow .12s}.pu-input::placeholder{color:var(--pu-faint)}.pu-input:focus{border-color:var(--pu-green);box-shadow:var(--pu-ring)}.pu-input:disabled{background:var(--pu-subtle);color:var(--pu-faint);cursor:not-allowed}textarea.pu-input{resize:vertical;line-height:1.55}select.pu-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:34px}.pu-hint{color:var(--pu-faint);margin-top:5px;font-size:12px;line-height:1.45;display:block}.pu-2col{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.pu-inputwrap{position:relative}.pu-inputwrap .pu-input{padding-right:76px}.pu-inputbtn{color:var(--pu-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;font-size:12px;font-weight:650;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.pu-inputbtn:hover{background:var(--pu-sunken);color:var(--pu-ink-2)}.pu-switchrow{border-bottom:1px solid var(--pu-hairline);justify-content:space-between;align-items:center;gap:20px;padding:13px 0;display:flex}.pu-switchrow:last-child{border-bottom:0}.pu-switchrow:first-child{padding-top:0}.pu-switchlabel{color:var(--pu-ink);font-size:13.5px;font-weight:650}.pu-switchdesc{color:var(--pu-muted);max-width:58ch;margin-top:3px;font-size:12.5px;line-height:1.5}.pu-switch{background:var(--pu-line-2);cursor:pointer;border:0;border-radius:999px;flex:none;width:40px;height:23px;padding:0;transition:background .16s;position:relative}.pu-switch.on{background:var(--pu-green)}.pu-switch span{background:#fff;border-radius:50%;width:17px;height:17px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #10182840}.pu-switch.on span{transform:translate(17px)}.pu-btn{border-radius:var(--pu-r-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:9px 16px;font-family:inherit;font-size:13.5px;font-weight:650;text-decoration:none;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.pu-btn.sm{gap:5px;padding:6px 11px;font-size:12.5px}.pu-btn.primary{background:var(--pu-violet);color:#fff}.pu-btn.primary:hover{background:var(--pu-violet-2);color:#fff;text-decoration:none}.pu-btn.ghost{background:var(--pu-surface);color:var(--pu-ink-2);border-color:var(--pu-line-2)}.pu-btn.ghost:hover{background:var(--pu-subtle);border-color:var(--pu-muted);color:var(--pu-ink);text-decoration:none}.pu-btn.danger{background:var(--pu-danger);color:#fff}.pu-btn.danger:hover{background:var(--pu-danger-2);color:#fff}.pu-btn.quiet-danger{background:var(--pu-surface);color:var(--pu-danger);border-color:var(--pu-danger-edge)}.pu-btn.quiet-danger:hover{background:var(--pu-danger-tint);color:var(--pu-danger-2)}.pu-btn:disabled{opacity:.45;cursor:not-allowed}.pu-btnrow{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.pu-pill{letter-spacing:.05em;text-transform:uppercase;background:var(--pu-sunken);color:var(--pu-muted);border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:10.5px;font-weight:800;display:inline-flex}.pu-pill.ok{background:var(--pu-green-tint);color:var(--pu-green-ink)}.pu-pill.warn{color:var(--pu-warn);background:#fef3c7}.pu-pill.bad{background:var(--pu-danger-tint);color:var(--pu-danger-2)}.pu-tag{color:var(--pu-muted);background:var(--pu-surface);border:1px solid var(--pu-line);border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:12px;display:inline-flex}.pu-tag.ok{color:var(--pu-green-ink);border-color:var(--pu-green-edge);background:var(--pu-green-tint)}.pu-chip{color:var(--pu-green-ink);background:var(--pu-green-tint);border:1px solid var(--pu-green-edge);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.pu-chips{flex-wrap:wrap;gap:8px;display:flex}.pu-rows{flex-direction:column;gap:8px;display:flex}.pu-row{border:1px solid var(--pu-line);border-radius:var(--pu-r-lg);background:var(--pu-surface);justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.pu-row.off{opacity:.58}.pu-rowmain{min-width:0}.pu-rowname{color:var(--pu-ink);flex-wrap:wrap;align-items:center;gap:9px;font-size:13.5px;font-weight:650;display:flex}.pu-rowmeta{color:var(--pu-faint);flex-wrap:wrap;gap:12px;margin-top:4px;font-size:12px;display:flex}.pu-rowmeta .warn{color:var(--pu-warn);font-weight:600}.pu-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.pu-empty{text-align:center;border:1px dashed var(--pu-line-2);border-radius:var(--pu-r-lg);background:var(--pu-subtle);flex-direction:column;align-items:center;padding:34px 20px;display:flex}.pu-empty-ico{background:var(--pu-surface);border:1px solid var(--pu-line);width:40px;height:40px;color:var(--pu-faint);border-radius:11px;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.pu-empty h3{color:var(--pu-ink);margin:0 0 4px;font-size:14px;font-weight:700}.pu-empty p{color:var(--pu-muted);max-width:46ch;margin:0;font-size:12.5px;line-height:1.55}.pu-empty .pu-btnrow{margin-top:14px}.pu-skel{background:var(--pu-sunken);border-radius:var(--pu-r-sm);animation:1.5s ease-in-out infinite pu-pulse}@keyframes pu-pulse{0%,to{opacity:.55}50%{opacity:1}}.pu-codeblock{border-radius:var(--pu-r-lg);border:1px solid #143024;overflow:hidden}.pu-codebar{background:#0a1b13;border-bottom:1px solid #143024;justify-content:space-between;align-items:center;gap:12px;padding:7px 8px 7px 14px;display:flex}.pu-codelang{letter-spacing:.07em;text-transform:uppercase;color:#8aa79a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:700}.pu-code{color:#e5e7eb;white-space:pre;background:#0d2318;margin:0;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.65;overflow-x:auto}.pu-copy{cursor:pointer;color:#d7e3dc;background:#ffffff14;border:1px solid #ffffff24;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-family:inherit;font-size:11.5px;font-weight:650;transition:background .12s;display:inline-flex}.pu-copy:hover{background:#ffffff29}.pu-copy.done{background:var(--pu-green);color:#fff;border-color:#0000}.pu-copy.light{background:var(--pu-surface);color:var(--pu-ink-2);border-color:var(--pu-line-2)}.pu-copy.light:hover{background:var(--pu-subtle)}.pu-copy.light.done{background:var(--pu-green);color:#fff;border-color:#0000}.pu-seg{background:var(--pu-sunken);border-radius:var(--pu-r-sm);gap:2px;padding:2px;display:inline-flex}.pu-segbtn{font:inherit;color:var(--pu-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 11px;font-size:12.5px;font-weight:650;transition:background .12s,color .12s}.pu-segbtn:hover{color:var(--pu-ink-2)}.pu-segbtn.on{background:var(--pu-surface);color:var(--pu-ink);box-shadow:var(--pu-e-1)}.pu-callout{background:var(--pu-subtle);border:1px solid var(--pu-line);border-left:3px solid var(--pu-violet);border-radius:var(--pu-r-md);color:var(--pu-ink-2);align-items:flex-start;gap:11px;padding:12px 15px;font-size:13px;line-height:1.6;display:flex}.pu-callout>svg{color:var(--pu-violet);flex:none;margin-top:2px}.pu-callout.warn{border-left-color:var(--pu-warn-edge);background:var(--pu-warn-tint);color:#92400e;border-color:#fde68a}.pu-callout.warn>svg{color:var(--pu-warn)}.pu-callout.bad{border-left-color:var(--pu-danger);background:var(--pu-danger-tint);border-color:var(--pu-danger-edge);color:var(--pu-danger-2)}.pu-callout.bad>svg{color:var(--pu-danger)}.pu-callout.ok{border-left-color:var(--pu-green);color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.pu-callout.ok>svg{color:var(--pu-green-ink)}.pu-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.pu-stats.c2{grid-template-columns:repeat(2,1fr)}.pu-stats.c3{grid-template-columns:repeat(3,1fr)}.pu-stats.c4{grid-template-columns:repeat(4,1fr)}.pu-stat{background:var(--pu-surface);border:1px solid var(--pu-line);border-radius:var(--pu-r-lg);box-shadow:var(--pu-e-1);min-width:0;padding:14px 16px}.pu-stat-label{letter-spacing:.07em;text-transform:uppercase;color:var(--pu-muted);align-items:center;gap:6px;font-size:10.5px;font-weight:800;display:flex}.pu-stat-val{letter-spacing:-.02em;color:var(--pu-ink);align-items:baseline;gap:4px;margin-top:5px;font-size:25px;font-weight:800;line-height:1.05;display:flex}.pu-stat-val.green{color:var(--pu-green-ink)}.pu-stat-val.red{color:var(--pu-danger)}.pu-stat-unit{color:var(--pu-muted);letter-spacing:0;font-size:13px;font-weight:650}.pu-stat-sub{color:var(--pu-muted);margin-top:5px;font-size:12px;line-height:1.45}.pu-bar{background:var(--pu-sunken);border-radius:999px;height:8px;overflow:hidden}.pu-bar.lg{height:14px}.pu-bar-fill{background:var(--pu-green);border-radius:999px;height:100%;transition:width .45s}.pu-bar-fill.amber{background:#f59e0b}.pu-bar-fill.red{background:var(--pu-danger)}.pu-bar-fill.violet{background:var(--pu-violet)}.pu-bar-head{color:var(--pu-ink-2);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;font-size:13px;display:flex}.pu-bar-head strong{color:var(--pu-ink);font-weight:700}.pu-bar-foot{color:var(--pu-muted);justify-content:space-between;gap:12px;margin-top:6px;font-size:12.5px;font-weight:600;display:flex}.pu-avatar{color:#fff;letter-spacing:.01em;background:linear-gradient(135deg,#059669,#7c3aed);border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:750;display:flex;overflow:hidden}.pu-avatar.sm{width:26px;height:26px;font-size:11px}.pu-avatar.lg{width:44px;height:44px;font-size:16px}.pu-avatar img{object-fit:cover;width:100%;height:100%}.pu-avatar.neutral{background:var(--pu-sunken);color:var(--pu-muted)}.pu-section{margin-top:30px}.pu-section>h2{letter-spacing:-.015em;color:var(--pu-ink);margin:0 0 4px;font-size:18px;font-weight:750}.pu-section>p{color:var(--pu-muted);max-width:68ch;margin:0 0 14px;font-size:13px;line-height:1.6}.pu-badge{letter-spacing:.03em;color:var(--pu-green-ink);background:var(--pu-green-tint);border:1px solid var(--pu-green-edge);border-radius:999px;align-items:center;gap:7px;margin-bottom:12px;padding:4px 11px;font-size:11.5px;font-weight:700;display:inline-flex}.pu-badge .pro{background:var(--pu-violet);color:#fff;letter-spacing:.05em;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:800}.pu-signin{text-align:center;color:var(--pu-muted);margin:30px 0;font-size:14px}.pu-signin a{color:var(--pu-green-ink);text-underline-offset:2px;font-weight:700;text-decoration:underline}.pu-grid-2{grid-template-columns:1fr 1fr;gap:18px;display:grid}.pu-grid-3{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}@media (max-width:820px){.pu-grid-2,.pu-grid-3{grid-template-columns:1fr}}.pu-search{background:var(--pu-surface);border:1px solid var(--pu-line-2);border-radius:var(--pu-r-md);box-shadow:var(--pu-e-1);align-items:center;gap:10px;padding:0 12px;display:flex}.pu-search:focus-within{border-color:var(--pu-green);box-shadow:var(--pu-ring)}.pu-search>svg{color:var(--pu-faint);flex:none}.pu-search input{color:var(--pu-ink);background:0 0;border:0;outline:0;flex:1;min-width:0;padding:10px 0;font-family:inherit;font-size:14px}.pu-kbd{color:var(--pu-muted);background:var(--pu-sunken);border:1px solid var(--pu-line);border-radius:5px;flex:none;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.pu-iconbtn{color:var(--pu-faint);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px;line-height:0;display:inline-flex}.pu-iconbtn:hover{background:var(--pu-sunken);color:var(--pu-ink-2)}.pu-savebar{left:calc(50% + var(--ps-w,0px) / 2);z-index:60;background:var(--pu-ink);color:#fff;border-radius:var(--pu-r-lg);box-shadow:var(--pu-e-3);align-items:center;gap:18px;max-width:calc(100vw - 32px);padding:10px 12px 10px 18px;font-size:13.5px;font-weight:600;animation:.18s both pu-rise;display:flex;position:fixed;bottom:22px;transform:translate(-50%)}@keyframes pu-rise{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.pu-savebar .pu-btnrow{margin-top:0}.pu-savebar .pu-btn.ghost{color:#d1d5db;background:0 0;border-color:#374151}.pu-savebar .pu-btn.ghost:hover{color:#fff;background:#1f2937}.pu-toast{z-index:70;background:var(--pu-green-ink);color:#fff;border-radius:var(--pu-r-md);box-shadow:var(--pu-e-3);align-items:center;gap:9px;padding:11px 16px;font-size:13.5px;font-weight:650;animation:.18s both pu-rise-r;display:flex;position:fixed;bottom:22px;right:22px}@keyframes pu-rise-r{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pu-toast.bad{background:var(--pu-danger-2)}@media (max-width:920px){.pu-split{grid-template-columns:1fr;gap:18px}.pu-rail{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;gap:8px;padding-bottom:4px;position:static;overflow-x:auto}.pu-rail::-webkit-scrollbar{display:none}.pu-railitem{background:var(--pu-surface);border-color:var(--pu-line);flex:none;width:auto}.pu-railitem.active{border-color:var(--pu-green)}.pu-railitem.active:before,.pu-railblurb{display:none}.pu-savebar{left:50%}}@media (max-width:600px){.pu-wrap{padding:20px 14px 132px}.pu-card{padding:18px 16px}.pu-2col{grid-template-columns:1fr}.pu-stats,.pu-stats.c3,.pu-stats.c4{grid-template-columns:1fr 1fr}.pu-stat-val{font-size:21px}.pu-head h1{font-size:25px}.pu-savebar{justify-content:space-between;gap:10px;padding:10px 12px;left:12px;right:12px;transform:none}@keyframes pu-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pu-toast{left:12px;right:12px}.pu-btn{padding:12px 18px}.pu-btn.sm{padding:9px 13px}}@media (prefers-reduced-motion:reduce){.pu *,.pu :before,.pu :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
