body{margin:0;background:#F3F5F8}
.proto-pill{position:fixed;left:0;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;z-index:9999;padding:12px 6px;border-radius:0 8px 8px 0;background:#16202E;color:#FFFFFF;font:500 12px/1.4 'IBM Plex Sans',system-ui,sans-serif;text-decoration:none;opacity:.85;box-shadow:0 2px 8px rgba(22,32,46,.25)}
.proto-pill:hover,.proto-pill:focus-visible{opacity:1;color:#FFFFFF}
.proto-index{font-family:'IBM Plex Sans',system-ui,sans-serif;color:#16202E;font-size:15px;line-height:1.5}
.proto-index header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:28px max(16px,calc((100% - 1100px)/2));background:#FFFFFF;border-bottom:1px solid #DCE1E8}
.proto-index h1{margin:0;font-size:28px;font-weight:600}
.proto-index header p{margin:4px 0 0;color:#36404F;max-width:640px}
.proto-start{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:6px;background:#2B3A9E;color:#FFFFFF;font-weight:600;text-decoration:none}
.proto-index main{max-width:1100px;margin:0 auto;padding:24px 16px 48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;align-items:start}
.proto-index section{background:#FFFFFF;border:1px solid #DCE1E8;border-radius:10px;padding:16px 20px}
.proto-index h2{margin:0 0 8px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#566173}
.proto-index ul{list-style:none;margin:0;padding:0}
.proto-index li a{display:flex;align-items:center;min-height:36px;color:#1F4FBF;text-decoration:none;border-top:1px solid #E4E8EE}
.proto-index li:first-child a{border-top:0}
.proto-index li a:hover{text-decoration:underline}
.proto-index details{grid-column:1/-1;background:#FFFFFF;border:1px solid #DCE1E8;border-radius:10px;padding:12px 20px}
.proto-index summary{cursor:pointer;font-weight:600;min-height:32px;display:flex;align-items:center}
.proto-index pre{white-space:pre-wrap;font:inherit;color:#36404F;margin:12px 0 0}
