@font-face{font-family:Inter var;font-style:normal;font-weight:100 900;font-display:block;src:url(/fonts/Inter-roman.latin.var.woff2) format("woff2")}@font-face{font-family:Inter var;font-style:italic;font-weight:100 900;font-display:block;src:url(/fonts/Inter-italic.latin.var.woff2) format("woff2");font-named-instance:"Italic"}body{font-family:Inter var,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;-webkit-font-smoothing:subpixel-antialiased;font-feature-settings:"case" 1,"cpsp" 1,"dlig" 1,"cv01" 1,"cv02","cv03" 1,"cv04" 1,"liga","clig","calt";font-variation-settings:"wght" 450;font-variant:common-ligatures contextual;letter-spacing:-.02em}b,h3,h4,h5,h6,strong{font-variation-settings:"wght" 650}h1{font-variation-settings:"wght" 850}h2{font-variation-settings:"wght" 750}@media screen and (-webkit-min-device-pixel-ratio:1.5),screen and (min-device-pixel-ratio:1.5),screen and (min-resolution:1.5dppx){body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}details summary{cursor:pointer}img.next-image{margin:0}:root{--ps-navy:#03306d;--ps-blue:#0149ac;--ps-sky:#36b5ff;--ps-light:#8dd5ff;--ps-slate:#5b6e88;--ps-gray:#8b9cb7;--ps-navy-50:#e6eaf2;--ps-navy-100:#b3c1d9;--ps-navy-200:#8099c0;--ps-navy-800:#011c40;--ps-navy-900:#011531;--ps-blue-50:#e6ecf7;--ps-sky-50:#e7f6ff;--ps-light-50:#f0faff;--ps-light-100:#d6f0ff;--ps-light-200:#ade2ff;--ps-slate-200:#acb6c3;--ps-gray-50:#f3f5f8;--ps-gray-100:#dce1ea;--ps-gray-200:#c5cddc;--ps-shadow:0 1px 3px 0 rgba(3,48,109,0.1),0 1px 2px -1px rgba(3,48,109,0.1);--ps-shadow-md:0 4px 6px -1px rgba(3,48,109,0.1),0 2px 4px -2px rgba(3,48,109,0.1);--ps-transition:150ms ease}article[class*="x:prose"]{--tw-prose-links:var(--ps-blue);--tw-prose-headings:var(--ps-navy);--tw-prose-body:var(--ps-slate);--tw-prose-bold:var(--ps-navy);--tw-prose-code:var(--ps-navy)}article[class*="x:container"]{max-width:64rem!important}article[class*="x:container"]>h1:first-of-type+div:has(+.ps-hero),article[class*="x:container"]>h1:first-of-type:has(+div .ps-hero){display:none}body:has(.ps-hero) article[class*="x:container"]>h1:first-of-type{display:none}body:has(.ps-hero) article[class*="x:container"]>h1:first-of-type+div[class*="x:mb-8"][class*="x:flex"]{display:none}body{padding-top:4px;overflow-x:hidden;background-color:#fff}body:before{content:"";position:fixed;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--ps-navy) 0,var(--ps-blue) 40%,var(--ps-sky) 70%,var(--ps-light) 100%);z-index:9999}article[class*="x:container"]>header{border-bottom:1px solid var(--ps-gray-200);padding-bottom:.75rem;margin-bottom:1rem}article[class*="x:container"]>header:before{content:"";display:block;width:140px;min-width:140px;height:35px;background:url(/images/ps-restful.svg) no-repeat 50%/contain;margin-right:auto}article[class*="x:container"]>header>a{color:var(--ps-navy)!important;transition:color var(--ps-transition);text-decoration:none}article[class*="x:container"]>header>a:hover{color:var(--ps-blue)!important}article[class*="x:container"]>header>a[aria-current]{color:var(--ps-blue)!important;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}article[class*="x:container"]>header>a.ps-nav-cta{display:inline-block;padding:.375rem 1rem;background-color:var(--ps-blue);color:#fff!important;border-radius:.375rem;font-size:.875rem;font-variation-settings:"wght" 600;text-decoration:none!important;white-space:nowrap}article[class*="x:container"]>header>a.ps-nav-cta:hover{background-color:var(--ps-navy);color:#fff!important;box-shadow:var(--ps-shadow)}.nextra-tag,a[href^="/tags/"]{background-color:var(--ps-blue-50)!important;color:var(--ps-blue)!important;border:1px solid var(--ps-blue)!important;border-radius:9999px;padding:.125rem .625rem!important;font-size:.8125rem;transition:all var(--ps-transition);text-decoration:none!important}.nextra-tag:hover,a[href^="/tags/"]:hover{background-color:var(--ps-blue)!important;color:#fff!important}.ps-posts-layout{display:grid;grid-template-columns:1fr 240px;grid-gap:2rem;gap:2rem;align-items:start}.ps-posts-sidebar{position:-webkit-sticky;position:sticky;top:2rem;padding:1.25rem;border-radius:.5rem;background-color:#fff;border:1px solid var(--ps-gray-100);box-shadow:var(--ps-shadow)}.ps-posts-sidebar h3{color:var(--ps-navy);font-size:.9375rem;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--ps-gray-200)}.ps-tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem}@media (max-width:768px){.ps-posts-layout{grid-template-columns:1fr}.ps-posts-sidebar{position:static;order:-1}.ps-tag-cloud{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem}.ps-tag-cloud .nextra-tag{white-space:nowrap;flex-shrink:0}}.ps-posts-main>div:has(>h2){padding:1.25rem 1.5rem;border-radius:.5rem;background-color:#fff;border:1px solid var(--ps-gray-100);box-shadow:var(--ps-shadow);margin-bottom:1rem;transition:box-shadow var(--ps-transition),transform var(--ps-transition)}.ps-posts-main>div:has(>h2):hover{box-shadow:var(--ps-shadow-md);transform:translateY(-1px)}.ps-posts-main>div:has(>h2) h2{margin-top:0!important}.ps-posts-main>div h2 a{color:var(--ps-navy)!important;transition:color var(--ps-transition);text-decoration:none}.ps-posts-main>div h2 a:hover{color:var(--ps-blue)!important}.ps-posts-main>div>p{color:var(--ps-slate)!important}article time{color:var(--ps-gray)!important}article[class*="x:prose"] table{border-collapse:collapse;width:100%;box-shadow:var(--ps-shadow);border-radius:.5rem;overflow:hidden}article[class*="x:prose"] thead tr{background-color:var(--ps-navy-50)!important;border-bottom:2px solid var(--ps-gray-200)}article[class*="x:prose"] th{color:var(--ps-navy);font-variation-settings:"wght" 650;text-align:left;padding:.75rem 1rem}article[class*="x:prose"] td{padding:.75rem 1rem;border-bottom:1px solid var(--ps-gray-100)}article[class*="x:prose"] tbody tr:nth-child(2n){background-color:var(--ps-gray-50)}pre:has(>code){background-color:var(--ps-navy-900)!important}:not(pre)>code.nextra-code{background-color:var(--ps-gray-50)!important;color:var(--ps-navy)!important;padding:.125rem .375rem;border-radius:.25rem;font-size:.875em}article[class*="x:prose"] a:hover{text-decoration:underline;text-underline-offset:2px}:focus-visible{outline:2px solid var(--ps-sky);outline-offset:2px}[role=button],a,button,summary{transition:color var(--ps-transition),background-color var(--ps-transition),border-color var(--ps-transition),box-shadow var(--ps-transition)}article[class*="x:prose"] h2{padding-bottom:.5rem;border-bottom:1px solid var(--ps-gray-200)}article[class*="x:prose"] blockquote{border-left-color:var(--ps-blue)!important;background-color:var(--ps-light-50);padding:.75rem 1rem;border-radius:0 .375rem .375rem 0}::selection{background-color:rgba(54,181,255,.2);color:inherit}.ps-footer{position:relative;width:100vw;margin-left:-50vw;left:50%;background-color:var(--ps-navy);color:#fff;margin-top:4rem;padding:3rem 1.5rem 1.5rem}.ps-footer-inner{max-width:64rem;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;grid-gap:2rem;gap:2rem}.ps-footer-brand{font-size:1.125rem;font-variation-settings:"wght" 700}.ps-footer-tagline{color:var(--ps-slate-200);font-size:.875rem;margin-top:.5rem;line-height:1.5}.ps-footer h4{color:var(--ps-light);font-size:.875rem;font-variation-settings:"wght" 650;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.ps-footer a{color:var(--ps-slate-200);text-decoration:none;font-size:.875rem;display:block;padding:.25rem 0;transition:color var(--ps-transition)}.ps-footer a:hover{color:#fff;text-decoration:none}.ps-footer-bottom{max-width:64rem;margin:2rem auto 0;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);text-align:center;color:var(--ps-slate-200);font-size:.8125rem}@media (max-width:640px){.ps-footer-inner{grid-template-columns:1fr;gap:1.5rem}}.ps-hero{text-align:center;padding:1.5rem 0 2rem}.ps-hero h1{color:var(--ps-navy);font-size:2rem;margin-bottom:.75rem;border:none}.ps-hero p{color:var(--ps-slate);font-size:1.125rem;max-width:36rem;margin:0 auto 1.5rem}.ps-hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.ps-btn-primary{display:inline-block;padding:.625rem 1.5rem;background-color:var(--ps-blue);color:#fff!important;border-radius:.375rem;font-variation-settings:"wght" 600;text-decoration:none!important}.ps-btn-primary:hover{background-color:var(--ps-navy);box-shadow:var(--ps-shadow)}.ps-btn-outline{display:inline-block;padding:.625rem 1.5rem;border:1.5px solid var(--ps-blue);color:var(--ps-blue)!important;border-radius:.375rem;font-variation-settings:"wght" 600;text-decoration:none!important;background:transparent}.ps-btn-outline:hover{background-color:var(--ps-blue-50)}.ps-topics{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;margin:2rem 0}.ps-topic-card{padding:1.5rem;border-radius:.5rem;border:1px solid var(--ps-gray-200);background:#fff;text-align:center}.ps-topic-card h3{color:var(--ps-navy);font-size:1.0625rem;margin:0 0 .5rem}.ps-topic-card p{color:var(--ps-slate);font-size:.875rem;margin:0}@media (max-width:640px){.ps-topics{grid-template-columns:1fr}}html[class~=dark] body{background-color:var(--ps-navy-900)}html[class~=dark] article[class*="x:prose"]{--tw-prose-links:var(--ps-sky);--tw-prose-headings:var(--ps-light-100);--tw-prose-body:var(--ps-slate-200);--tw-prose-bold:var(--ps-light-100);--tw-prose-code:var(--ps-light-200)}html[class~=dark] article[class*="x:container"]>header>a{color:var(--ps-light-100)!important}html[class~=dark] article[class*="x:container"]>header>a:hover,html[class~=dark] article[class*="x:container"]>header>a[aria-current]{color:var(--ps-sky)!important}html[class~=dark] article[class*="x:container"]>header{border-bottom-color:var(--ps-navy-800)}html[class~=dark] article[class*="x:container"]>header:before{filter:brightness(0) invert(1)}html[class~=dark] article[class*="x:container"]>header>a.ps-nav-cta{background-color:var(--ps-sky);color:var(--ps-navy)!important}html[class~=dark] article[class*="x:container"]>header>a.ps-nav-cta:hover{background-color:var(--ps-light);color:var(--ps-navy)!important}html[class~=dark] .nextra-tag,html[class~=dark] a[href^="/tags/"]{background-color:rgba(1,73,172,.2)!important;color:var(--ps-sky)!important;border-color:var(--ps-sky)!important}html[class~=dark] .nextra-tag:hover,html[class~=dark] a[href^="/tags/"]:hover{background-color:var(--ps-blue)!important;color:#fff!important}html[class~=dark] .ps-posts-main>div h2 a{color:var(--ps-light-100)!important}html[class~=dark] .ps-posts-main>div h2 a:hover{color:var(--ps-sky)!important}html[class~=dark] .ps-posts-main>div>p{color:var(--ps-slate-200)!important}html[class~=dark] .ps-posts-main>div:has(>h2){background-color:var(--ps-navy-800);border-color:var(--ps-navy-800)}html[class~=dark] .ps-posts-sidebar{background-color:var(--ps-navy-800);border-color:var(--ps-navy-800)}html[class~=dark] .ps-posts-sidebar h3{color:var(--ps-light-100);border-bottom-color:var(--ps-navy)}html[class~=dark] article[class*="x:prose"] thead tr{background-color:var(--ps-navy-800)!important}html[class~=dark] article[class*="x:prose"] tbody tr:nth-child(2n){background-color:rgba(3,48,109,.2)}html[class~=dark] article[class*="x:prose"] h2,html[class~=dark] article[class*="x:prose"] td{border-bottom-color:var(--ps-navy-800)}html[class~=dark] article[class*="x:prose"] blockquote{background-color:rgba(3,48,109,.3);border-left-color:var(--ps-sky)!important}html[class~=dark] :not(pre)>code.nextra-code{background-color:var(--ps-navy-800)!important;color:var(--ps-light-200)!important}html[class~=dark] pre:has(>code){background-color:var(--ps-navy-900)!important}html[class~=dark] .ps-footer{background-color:#020a18;border-top:1px solid var(--ps-navy-800)}html[class~=dark] .ps-hero h1{color:var(--ps-light-100)}html[class~=dark] .ps-hero p{color:var(--ps-slate-200)}html[class~=dark] .ps-btn-primary{background-color:var(--ps-sky);color:var(--ps-navy)!important}html[class~=dark] .ps-btn-primary:hover{background-color:var(--ps-light)}html[class~=dark] .ps-btn-outline{border-color:var(--ps-sky);color:var(--ps-sky)!important}html[class~=dark] .ps-btn-outline:hover{background-color:rgba(54,181,255,.1)}html[class~=dark] .ps-topic-card{background-color:var(--ps-navy-800);border-color:var(--ps-navy-800)}html[class~=dark] .ps-topic-card h3{color:var(--ps-light-100)}html[class~=dark] .ps-topic-card p{color:var(--ps-slate-200)}