@font-face{font-family:Aileron;src:url(/_astro/aileron-semibold.CmQWaBH_.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Office Code Pro;src:url(/_astro/office-code-pro-regular.Cf7TNIvX.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Office Code Pro;src:url(/_astro/office-code-pro-bold.mDvGnBgV.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{color-scheme:light;--color-bg:#fff;--color-text:#501345;--color-detail:#a62c37;--color-accent:var(--color-detail);--color-detail-2:#4f4086;--color-edu:var(--color-detail-2);--color-detail-3:#c7d14f;--color-on-detail-3:#501345;--color-rule:color-mix(in srgb, var(--color-text) 35%, transparent);--color-hairline:color-mix(in srgb, var(--color-text) 22%, transparent);--color-row-fill:color-mix(in srgb, var(--color-detail-3) 38%, var(--color-bg));--color-row-fill-hover:color-mix(in srgb, var(--color-detail-3) 58%, var(--color-bg));--map-sea:color-mix(in srgb, var(--color-detail-2) 9%, var(--color-bg));--map-land:var(--color-bg);--map-visited:var(--color-detail-3);--map-border:var(--color-rule);--map-ring:var(--color-text);--map-cap:var(--color-detail-2);--map-cap-ring:var(--map-ring);--font-heading:"Aileron", "Helvetica Neue", Arial, sans-serif;--font-body:"Office Code Pro", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--step--1:clamp(.9375rem, .9rem + .15vw, 1rem);--step-0:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--step-1:clamp(1.25rem, 1.1rem + .6vw, 1.5rem);--step-2:clamp(1.6rem, 1.3rem + 1.4vw, 2.3rem);--step-3:clamp(2rem, 1.5rem + 2.4vw, 3.25rem);--step-4:clamp(2.5rem, 1.3rem + 4.6vw, 5.25rem);--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:2.5rem;--space-xl:4rem;--space-2xl:clamp(3rem, 2rem + 4vw, 6rem);--gutter:clamp(1.25rem, .5rem + 3.5vw, 4rem);--measure:62ch;--target:2.75rem;--rail:21rem}:root[data-theme=dark]{color-scheme:dark;--color-bg:#1f0b1b;--color-text:#f3e4ef;--color-detail:#e0707a;--color-accent:#e0707a;--color-detail-2:#a89be0;--color-edu:var(--color-detail-2);--color-detail-3:#c7d14f;--color-on-detail-3:#1f0b1b;--color-row-fill:color-mix(in srgb, var(--color-detail-2) 24%, var(--color-bg));--color-row-fill-hover:color-mix(in srgb, var(--color-detail-2) 36%, var(--color-bg));--map-sea:color-mix(in srgb, var(--color-bg) 60%, black);--map-land:color-mix(in srgb, var(--color-detail-2) 26%, var(--color-bg));--map-visited:color-mix(in srgb, var(--color-detail-2) 75%, var(--color-bg));--map-border:color-mix(in srgb, var(--color-text) 55%, transparent);--map-ring:var(--color-bg);--map-cap:var(--color-detail-3);--map-cap-ring:color-mix(in srgb, var(--color-detail-3) 40%, white);--color-rule:color-mix(in srgb, var(--color-text) 35%, transparent);--color-hairline:color-mix(in srgb, var(--color-text) 20%, transparent)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-bg:#1f0b1b;--color-text:#f3e4ef;--color-detail:#e0707a;--color-accent:#e0707a;--color-detail-2:#a89be0;--color-edu:var(--color-detail-2);--color-detail-3:#c7d14f;--color-on-detail-3:#1f0b1b;--color-row-fill:color-mix(in srgb, var(--color-detail-2) 24%, var(--color-bg));--color-row-fill-hover:color-mix(in srgb, var(--color-detail-2) 36%, var(--color-bg));--map-sea:color-mix(in srgb, var(--color-bg) 60%, black);--map-land:color-mix(in srgb, var(--color-detail-2) 26%, var(--color-bg));--map-visited:color-mix(in srgb, var(--color-detail-2) 75%, var(--color-bg));--map-border:color-mix(in srgb, var(--color-text) 55%, transparent);--map-ring:var(--color-bg);--map-cap:var(--color-detail-3);--map-cap-ring:color-mix(in srgb, var(--color-detail-3) 40%, white);--color-rule:color-mix(in srgb, var(--color-text) 35%, transparent);--color-hairline:color-mix(in srgb, var(--color-text) 20%, transparent)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-block-start:1rem}body{background:var(--color-bg);min-block-size:100dvh;color:var(--color-text);font-family:var(--font-body);font-size:var(--step-0);font-kerning:normal;text-rendering:optimizelegibility;overflow-wrap:break-word;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);margin:0;font-style:normal;font-weight:400;line-height:1.55;display:grid}main{min-inline-size:0}img{block-size:auto;max-inline-size:100%;display:block}em,i,cite,dfn,address,strong,b{font-style:normal;font-weight:700}h1,h2,h3{font-family:var(--font-heading);margin-block:0 var(--space-s);text-wrap:balance;font-weight:600;line-height:1.05}h1{font-size:var(--step-4);letter-spacing:-.015em}h2{font-size:var(--step-2)}h3{font-size:var(--step-1)}p{margin-block:0 var(--space-m);max-inline-size:var(--measure)}a{color:var(--color-accent);text-underline-offset:.22em;text-decoration-thickness:.07em}a:hover{text-decoration-thickness:.14em}:focus-visible{outline:3px solid var(--color-text);outline-offset:3px;border-radius:2px}.label{font-family:var(--font-heading);font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;font-weight:600;line-height:1.3}.rule{border-block-start:1px solid var(--color-rule)}.rule:after{content:"";background:var(--color-detail);block-size:3px;margin-block-start:3px;display:block}.skip-link{z-index:100;padding:var(--space-xs) var(--space-s);background:var(--color-text);color:var(--color-bg);position:absolute;inset-block-start:var(--space-s);inset-inline-start:var(--space-s);transform:translateY(-300%)}.skip-link:focus{transform:none}.rail{padding:var(--space-2xs) var(--gutter) 0;border-block-end:1px solid var(--color-rule);align-items:center;column-gap:var(--space-s);flex-wrap:wrap;display:flex}.rail-panel{flex:100%}.icon-button.theme-rail,.lang-rail{display:none}.rail-panel{align-items:center;column-gap:var(--space-m);flex-wrap:wrap;display:flex}.rail-name{min-block-size:var(--target);font-family:var(--font-heading);font-size:var(--step-1);color:var(--color-text);letter-spacing:.01em;flex:auto;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.main-nav{flex:auto;min-inline-size:0}.main-nav ul{column-gap:var(--space-m);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.main-nav a{min-block-size:var(--target);font-family:var(--font-heading);color:var(--color-text);padding-inline:var(--space-2xs);border-block-end:2px solid #0000;align-items:center;gap:.4em;font-weight:600;text-decoration:none;display:inline-flex}.main-nav .num{color:var(--color-accent);letter-spacing:.06em;font-size:.8em;font-weight:600}.main-nav a{-webkit-tap-highlight-color:transparent}@media (hover:hover){.main-nav a:hover{border-block-end-color:var(--color-detail)}}.main-nav:not(:has(.is-pending)) a[aria-current],.main-nav a.is-pending{background:var(--color-detail-3);color:var(--color-on-detail-3);border-block-end-color:var(--color-text)}.main-nav:not(:has(.is-pending)) a[aria-current] .num,.main-nav a.is-pending .num{color:inherit}.main-nav:has(.is-pending) a{transition:none}.rail-tools{justify-content:flex-end;align-items:center;gap:var(--space-xs);flex-wrap:wrap;min-inline-size:0;display:flex}@media (width>=62rem){.icon-button.theme-top,.lang-top{display:none}.lang-rail{display:block}.icon-button.theme-rail{display:inline-grid}body{grid-template-columns:var(--rail) minmax(0, 1fr);grid-template-rows:1fr auto}.rail{border-block-end:0;border-inline-end:1px solid var(--color-rule);grid-row:1/span 2;grid-template-columns:5.5rem minmax(0,1fr);align-items:stretch;column-gap:0;block-size:100dvh;padding:0;display:grid;position:sticky;inset-block-start:0;box-shadow:inset -4px 0 #0000}.rail:after{content:"";background:var(--color-detail);inline-size:3px;position:absolute;inset-block:0;inset-inline-end:-3px}.rail-panel{padding:var(--space-l) var(--space-m) var(--space-m) var(--space-s);border-inline-start:1px solid var(--color-hairline);flex-flow:column;grid-area:1/2;justify-content:flex-start;align-items:stretch;overflow-y:auto}.rail-name{writing-mode:vertical-rl;padding-block:var(--space-m);padding-inline:var(--space-xs);font-family:var(--font-heading);font-size:var(--step-2);white-space:nowrap;flex-basis:auto;grid-area:1/1;place-self:end center;font-weight:600;transform:rotate(180deg)}[dir=rtl] .rail-name{transform:none}.main-nav{flex:none}.main-nav ul{border-block-start:1px solid var(--color-hairline);flex-flow:column}.main-nav li{border-block-end:1px solid var(--color-hairline)}.main-nav a{min-block-size:3.5rem;inline-size:100%;border-block-end:0;border-inline-start:3px solid #0000;grid-template-columns:2.6rem 1fr;margin-inline-start:calc(-1 * var(--space-xs) - 3px);padding-inline-start:var(--space-xs);font-size:1.4rem;display:grid}@media (hover:hover){.main-nav a:hover{border-inline-start-color:var(--color-detail)}}.main-nav:not(:has(.is-pending)) a[aria-current],.main-nav a.is-pending{border-inline-start-color:var(--color-text)}.rail-tools{justify-content:space-between;margin-block-start:auto;padding-block-start:var(--space-m)}}.icon-button{inline-size:var(--target);block-size:var(--target);color:var(--color-text);border:1px solid var(--color-rule);cursor:pointer;background:0 0;border-radius:0;place-items:center;display:inline-grid}.icon-button:hover{background:var(--color-text);color:var(--color-bg)}.icon-button.theme-top{background:0 0;border-color:#0000}.icon-button.theme-top:hover{color:var(--color-text);background:0 0}@media (hover:hover){.icon-button.theme-top:hover svg{fill:currentColor}}.icon-button svg{block-size:1.4rem;inline-size:1.4rem}html:not(.js) .js-only,.theme-icon-dark,:root[data-theme=dark] .theme-icon-light{display:none}:root[data-theme=dark] .theme-icon-dark{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-icon-light{display:none}:root:not([data-theme=light]) .theme-icon-dark{display:block}}.lang-switcher ul{border:1px solid var(--color-rule);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.lang-switcher li+li{border-inline-start:1px solid var(--color-rule)}.lang-switcher a{min-inline-size:var(--target);min-block-size:var(--target);padding-inline:var(--space-xs);color:var(--color-text);font-size:var(--step--1);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.lang-switcher a:hover{background:var(--color-hairline)}.lang-switcher a[aria-current=true]{background:var(--color-detail-3);color:var(--color-on-detail-3);font-weight:700}.site-footer{border-block-start:1px solid var(--color-rule);margin-block-start:var(--space-2xl)}.site-footer .wrap{padding:var(--space-m) var(--gutter);gap:var(--space-xs) var(--space-l);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.site-footer ul{column-gap:var(--space-m);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.site-footer a{min-block-size:var(--target);align-items:center;display:inline-flex}.site-footer p{font-size:var(--step--1);margin:0}.wrap{inline-size:100%;padding-inline:var(--gutter)}.page-section{padding-block:var(--space-xl) 0}@media (prefers-reduced-motion:no-preference){a,.icon-button,.lang-switcher a{transition:color .15s,background-color .15s,border-color .15s}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.close-button{inline-size:var(--target);block-size:var(--target);color:var(--color-text);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.close-button:hover{color:var(--color-accent)}.popup-head .close-button{margin-block:-10px 0;margin-inline:0 -10px}.dialog-inner .close-button{float:inline-end;margin-block:-10px var(--space-2xs);margin-inline:var(--space-s) -10px}.lang-top ul{border:0;flex-wrap:nowrap}.lang-top li+li{border-inline-start:0}.lang-top a{min-inline-size:2.25rem;padding-inline:var(--space-3xs,.25rem);font-size:var(--step--1);letter-spacing:.04em}.lang-top a:hover{background:0 0;text-decoration:underline}.lang-top a[aria-current=true]{color:var(--color-text);background:0 0;font-weight:700}.lang-top li{align-items:center;display:flex}.lang-top li+li:before{content:"/";font-size:var(--step--1);color:var(--color-rule);margin-inline:calc(-1 * var(--space-3xs,.25rem))}
