.gcp-network-page{--n-ink:var(--color-background);--n-ink-2:#0d1426;--n-panel:var(--color-card);--n-panel-2:#16223b;--n-line:#233252;--n-line-soft:#1a2740;--n-grid:#5fd3f009;--n-cyan:#5fd3f0;--n-blue:var(--color-google-blue,#4285f4);--n-amber:var(--color-google-yellow,#fbbc04);--n-green:var(--color-google-green,#34a853);--n-rose:var(--color-google-red,#ea4335);--n-violet:#a98bf0;--n-faint:#5f6f93;--n-text:var(--color-foreground);--n-muted:var(--color-muted-foreground);--n-radius:var(--radius-lg,14px)}.gcp-network-page,.gcp-network-page *{box-sizing:border-box}.gcp-network-page{font-family:var(--font-body,system-ui, -apple-system, sans-serif);color:var(--n-text);background:var(--n-ink);min-height:100vh;font-size:16px;line-height:1.75}.gcp-network-page .shell{max-width:1200px;margin-inline:auto;padding:0 clamp(16px,4vw,40px)}.gcp-network-page .with-rail{grid-template-columns:1fr;gap:40px;display:grid}@media (min-width:1040px){.gcp-network-page .with-rail{grid-template-columns:248px 1fr;gap:56px}}.gcp-network-page .hero{padding:clamp(56px,9vw,110px) 0 clamp(40px,6vw,72px);position:relative;overflow:hidden}.gcp-network-page .hero:before{content:"";background-image:linear-gradient(var(--n-grid) 1px, transparent 1px), linear-gradient(90deg, var(--n-grid) 1px, transparent 1px);pointer-events:none;z-index:0;background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 80% at 50% 0,#000 30%,#0000 78%);mask-image:radial-gradient(120% 80% at 50% 0,#000 30%,#0000 78%)}.gcp-network-page .hero-inner{z-index:1;position:relative}.gcp-network-page .eyebrow{font-family:var(--font-mono,monospace);letter-spacing:.16em;text-transform:uppercase;color:var(--n-cyan);border:1px solid var(--n-line);background:#5fd3f00d;border-radius:999px;align-items:center;gap:10px;padding:6px 12px;font-size:12.5px;display:inline-flex}.gcp-network-page .eyebrow:before{content:"";background:var(--n-cyan);width:6px;height:6px;box-shadow:0 0 8px var(--n-cyan);border-radius:50%}.gcp-network-page h1.title{font-family:var(--font-display,system-ui);letter-spacing:-.02em;color:#fff;margin:26px 0 0;font-size:clamp(34px,6.2vw,68px);font-weight:700;line-height:1.04}.gcp-network-page h1.title .accent{background:linear-gradient(100deg, var(--n-cyan), var(--n-blue) 55%, var(--n-violet));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gcp-network-page .lede{max-width:640px;color:var(--n-muted);margin:22px 0 0;font-size:clamp(16px,2.1vw,19px)}.gcp-network-page .hero-meta{flex-wrap:wrap;gap:10px;margin-top:34px;display:flex}.gcp-network-page .chip{font-family:var(--font-mono,monospace);color:var(--n-text);border:1px solid var(--n-line);background:var(--n-panel);border-radius:8px;align-items:center;gap:8px;padding:7px 12px;font-size:12px;display:inline-flex}.gcp-network-page .chip i{border-radius:2px;width:7px;height:7px;display:inline-block}.gcp-network-page .stat-strip{background:var(--n-line-soft);border:1px solid var(--n-line-soft);border-radius:var(--n-radius);grid-template-columns:repeat(2,1fr);gap:1px;margin-top:42px;display:grid;overflow:hidden}@media (min-width:720px){.gcp-network-page .stat-strip{grid-template-columns:repeat(4,1fr)}}.gcp-network-page .stat{background:var(--n-ink-2);padding:22px 20px}.gcp-network-page .stat .n{font-family:var(--font-display,system-ui);color:#fff;font-size:30px;font-weight:700;line-height:1}.gcp-network-page .stat .n span{color:var(--n-cyan)}.gcp-network-page .stat .l{color:var(--n-muted);margin-top:8px;font-size:12.5px}.gcp-network-page .rail-wrap{display:none}@media (min-width:1040px){.gcp-network-page .rail-wrap{display:block}.gcp-network-page .rail{top:calc(var(--header-h,60px) + var(--disclaimer-height,0px) + 16px);padding:4px 0;position:sticky}}.gcp-network-page .rail-title{font-family:var(--font-mono,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--n-faint);margin:0 0 16px 14px;font-size:11px}.gcp-network-page .hop{color:var(--n-muted);border-left:2px solid var(--n-line);margin-left:14px;padding:9px 0 9px 30px;text-decoration:none;transition:color .2s,border-color .2s;display:block;position:relative}.gcp-network-page .hop:hover{color:var(--n-text);border-color:var(--n-blue);text-decoration:none}.gcp-network-page .hop:before{content:"";background:var(--n-ink);border:2px solid var(--n-line);border-radius:50%;width:9px;height:9px;transition:all .2s;position:absolute;top:16px;left:-6px}.gcp-network-page .hop.active{color:#fff;border-color:var(--n-cyan)}.gcp-network-page .hop.active:before{background:var(--n-cyan);border-color:var(--n-cyan);box-shadow:0 0 10px var(--n-cyan)}.gcp-network-page .hop .h-no{font-family:var(--font-mono,monospace);color:var(--n-faint);font-size:11px;display:block}.gcp-network-page .hop.active .h-no{color:var(--n-cyan)}.gcp-network-page .hop .h-name{font-size:13.5px;font-weight:500}.gcp-network-page main{scroll-margin-top:calc(var(--header-h,60px) + var(--disclaimer-height,0px) + 16px);padding-bottom:100px}.gcp-network-page .part{scroll-margin-top:calc(var(--header-h,60px) + var(--disclaimer-height,0px) + 16px);margin-top:8px;padding-top:64px}.gcp-network-page .part-head{align-items:baseline;gap:16px;margin-bottom:6px;display:flex}.gcp-network-page .part-addr{font-family:var(--font-mono,monospace);color:var(--n-cyan);letter-spacing:.04em;white-space:nowrap;font-size:12.5px}.gcp-network-page .part-addr .slash{color:var(--n-faint)}.gcp-network-page h2.part-title{font-family:var(--font-display,system-ui);letter-spacing:-.015em;color:#fff;margin:8px 0 0;font-size:clamp(25px,3.6vw,38px);font-weight:700;line-height:1.12}.gcp-network-page .part-sub{color:var(--n-muted);max-width:720px;margin:12px 0 0}.gcp-network-page .rule{background:linear-gradient(90deg, var(--n-cyan), var(--n-line) 40%, transparent);border:0;height:1px;margin:26px 0 0}.gcp-network-page h3{font-family:var(--font-display,system-ui);color:var(--n-text);align-items:center;gap:12px;margin:44px 0 4px;font-size:20px;font-weight:600;display:flex}.gcp-network-page h3 .num{font-family:var(--font-mono,monospace);color:var(--n-blue);border:1px solid var(--n-line);border-radius:6px;flex:none;padding:2px 8px;font-size:13px}.gcp-network-page h4{font-family:var(--font-display,system-ui);color:var(--n-cyan);margin:28px 0 10px;font-size:16px;font-weight:600}.gcp-network-page p{margin:14px 0}.gcp-network-page .term{font-family:var(--font-mono,monospace);color:var(--n-cyan);font-size:.92em}.gcp-network-page .panel{background:var(--n-panel);border:1px solid var(--n-line);border-radius:var(--n-radius);margin:22px 0;padding:22px 24px}.gcp-network-page .table-scroll{border-radius:var(--n-radius);border:1px solid var(--n-line);margin:20px 0;overflow-x:auto}.gcp-network-page table{border-collapse:collapse;width:100%;min-width:480px;font-size:14.5px}.gcp-network-page thead th{background:var(--n-ink-2);text-align:left;font-family:var(--font-mono,monospace);letter-spacing:.04em;text-transform:uppercase;color:var(--n-cyan);border-bottom:1px solid var(--n-line);white-space:nowrap;padding:13px 16px;font-size:12px;font-weight:500}.gcp-network-page tbody td{border-bottom:1px solid var(--n-line-soft);color:var(--n-text);vertical-align:top;padding:13px 16px}.gcp-network-page tbody tr:last-child td{border-bottom:0}.gcp-network-page tbody tr:nth-child(2n) td{background:#ffffff03}.gcp-network-page tbody tr:hover td{background:#5fd3f00a}.gcp-network-page td code,.gcp-network-page th code,.gcp-network-page p code,.gcp-network-page li code{font-family:var(--font-mono,monospace);background:var(--n-ink-2);color:var(--n-cyan);border:1px solid var(--n-line-soft);border-radius:5px;padding:2px 6px;font-size:.86em}.gcp-network-page .code{background:var(--n-ink-2);border:1px solid var(--n-line);border-radius:var(--n-radius);margin:20px 0;position:relative;overflow:hidden}.gcp-network-page .code-head{border-bottom:1px solid var(--n-line-soft);background:#ffffff04;align-items:center;gap:8px;padding:10px 16px;display:flex}.gcp-network-page .code-head .lang{font-family:var(--font-mono,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--n-faint);margin-left:auto;font-size:11px}.gcp-network-page .code-head .tl{gap:6px;display:flex}.gcp-network-page .code-head .tl b{border-radius:50%;width:11px;height:11px;display:inline-block}.gcp-network-page .code pre{font-family:var(--font-mono,monospace);color:#cdd9f0;white-space:pre;scrollbar-width:thin;scrollbar-color:var(--n-line) transparent;margin:0;padding:18px 20px;font-size:13.5px;line-height:1.7;overflow-x:auto}.gcp-network-page .code pre::-webkit-scrollbar{height:4px}.gcp-network-page .code pre::-webkit-scrollbar-thumb{background:var(--n-line);border-radius:2px}.gcp-network-page .code pre .c{color:var(--n-faint);font-style:italic}.gcp-network-page .code pre .k{color:var(--n-violet)}.gcp-network-page .code pre .s{color:var(--n-green)}.gcp-network-page .code pre .f{color:var(--n-amber)}.gcp-network-page .code pre .o{color:var(--n-cyan)}.gcp-network-page .callout{border:1px solid var(--n-line);background:var(--n-panel);border-radius:12px;margin:22px 0;padding:18px 20px 18px 22px;position:relative}.gcp-network-page .callout:before{content:"";pointer-events:none;z-index:0;border-radius:4px 0 0 4px;width:4px;position:absolute;top:0;bottom:0;left:0}.gcp-network-page .callout .tag{font-family:var(--font-mono,monospace);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:6px;font-size:11px;font-weight:700;display:inline-flex}.gcp-network-page .callout p{color:var(--n-text);margin:4px 0 0;font-size:14.5px}.gcp-network-page .callout.best:before{background:var(--n-amber)}.gcp-network-page .callout.best .tag{color:var(--n-amber)}.gcp-network-page .callout.warn:before{background:var(--n-rose)}.gcp-network-page .callout.warn .tag{color:var(--n-rose)}.gcp-network-page .callout.note:before{background:var(--n-cyan)}.gcp-network-page .callout.note .tag{color:var(--n-cyan)}.gcp-network-page .callout.tip:before{background:var(--n-green)}.gcp-network-page .callout.tip .tag{color:var(--n-green)}.gcp-network-page .diagram{background:linear-gradient(var(--n-grid) 1px, transparent 1px), linear-gradient(90deg, var(--n-grid) 1px, transparent 1px), var(--n-ink-2);border:1px solid var(--n-line);border-radius:var(--n-radius);background-size:26px 26px,26px 26px,auto;margin:24px 0;padding:14px 10px;overflow-x:auto}.gcp-network-page .diagram .cap{font-family:var(--font-mono,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--n-faint);padding:6px 12px 12px;font-size:11px}.gcp-network-page .mermaid-wrap{text-align:center}.gcp-network-page ul.clean{margin:16px 0;padding:0;list-style:none}.gcp-network-page ul.clean li{color:var(--n-text);margin:9px 0;padding-left:26px;position:relative}.gcp-network-page ul.clean li:before{content:"";background:var(--n-cyan);border-radius:2px;width:7px;height:7px;position:absolute;top:11px;left:4px;transform:rotate(45deg)}.gcp-network-page .ref-group{margin:18px 0}.gcp-network-page .ref-group>.ref-h{font-family:var(--font-mono,monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--n-cyan);margin:24px 0 10px;font-size:12px}.gcp-network-page .checklist{gap:10px;margin:18px 0;display:grid}.gcp-network-page .checklist label{background:var(--n-panel);border:1px solid var(--n-line);cursor:pointer;color:var(--n-text);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 16px;font-size:14.5px;transition:border-color .2s;display:flex}.gcp-network-page .checklist label:hover{border-color:var(--n-blue)}.gcp-network-page .checklist input{accent-color:var(--n-green);flex:none;width:16px;height:16px;margin-top:4px}.gcp-network-page .checklist input:checked+span{color:var(--n-faint);text-decoration:line-through}.gcp-network-page .page-footer{border-top:1px solid var(--n-line-soft);color:var(--n-faint);padding:40px 0 60px;font-size:13px}.gcp-network-page .page-footer .mono{font-family:var(--font-mono,monospace)}.gcp-network-page a{color:var(--n-cyan);text-decoration:none}.gcp-network-page a:hover{text-underline-offset:3px;text-decoration:underline}.gcp-network-page ::selection{background:var(--n-cyan);color:#06121b}.gcp-network-page :focus-visible{outline:2px solid var(--n-cyan);outline-offset:3px;border-radius:4px}@media (prefers-reduced-motion:reduce){.gcp-network-page *{transition:none!important}}
