﻿@font-face{font-family:"Ballet";src:url(fonts/Ballet/Ballet-Regular-Variable.woff2) format("woff2");font-display:block}@font-face{font-family:"EB Garamond";src:url(fonts/EB_Garamond/EBGaramond-VariableFont_wght.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:swap}@font-face{font-family:"EB Garamond";src:url(fonts/EB_Garamond/EBGaramond-Italic-VariableFont_wght.woff2) format("woff2");font-weight:400 800;font-style:italic;font-display:swap}@font-face{font-family:"Besley";src:url(fonts/Besley/Besley-VariableFont_wght.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}@font-face{font-family:"Besley";src:url(fonts/Besley/Besley-Italic-VariableFont_wght.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}@font-face{font-family:"JetBrains Mono";src:url(fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.woff2) format("woff2");font-weight:100 800;font-style:normal;font-display:swap}@font-face{font-family:"JetBrains Mono";src:url(fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.woff2) format("woff2");font-weight:100 800;font-style:italic;font-display:swap}@font-face{font-family:"Share Tech Mono";src:url(fonts/Share_Tech_Mono/ShareTechMono-Regular.woff2) format("woff2");font-style:normal;font-display:swap}@font-face{font-family:"Monofur";src:url(fonts/monofur/monof55.woff2) format("woff2");font-style:normal;font-display:swap}@font-face{font-family:"Monofur";src:url(fonts/monofur/monof56.woff2) format("woff2");font-style:italic;font-display:swap}@font-face{font-family:"Glass TTY";src:url(fonts/glass-tty/Glass_TTY_VT220.woff2) format("woff2");font-style:normal;font-display:swap}*,*::before,*::after{box-sizing:border-box}*:not(dialog){margin:0}@media (prefers-reduced-motion: no-preference){html{interpolate-size:allow-keywords}}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}#root,#__next{isolation:isolate}.character-note{margin-block:1.5rem}.character-note.layout-inline{display:flex;flex-direction:row;margin-inline-start:auto;margin-inline-end:auto}.character-note.layout-inline.character-right{flex-direction:row-reverse}.character-note.layout-inline.character-left{flex-direction:row}.character-note.layout-inline .character-content{max-width:min(93%,45em)}.character-note.layout-marginal{display:flex;flex-direction:row;gap:1rem}.character-note.layout-marginal.character-right{flex-direction:row-reverse}@media (width >= 992px){.character-note.layout-marginal{display:grid;grid-template-columns:subgrid;gap:0}.character-note.layout-marginal .character-avatar{grid-row:1}.character-note.layout-marginal .character-content{grid-row:1}}.character-note.layout-marginal .character-avatar{align-items:flex-start}.character-note.layout-marginal .character-content{max-width:none}.character-note.character-left .character-avatar{justify-content:flex-end}.character-note.character-left .character-avatar img{transform:scaleX(-1)}.character-note.character-right .character-avatar{justify-content:flex-start}.character-note .character-avatar{display:flex;font-size:2rem;align-self:flex-start;flex-shrink:0}.character-note .character-avatar img{--head-size: 3.2em;width:var(--head-size);height:var(--head-size)}.character-note .character-content{font-size:var(--font-size);align-self:flex-start;overflow:hidden}.character-note .character-bubble{--character-bubble-bg: var(--bg-1);--character-bubble-border: var(--border-color);--character-code-bg: var(--bg-0);background:var(--character-bubble-bg);border:1px solid var(--character-bubble-border);border-radius:.5rem;padding-inline:.9em;padding-block:.2em;text-align:left}.character-note .character-bubble p:last-child{margin-bottom:0}:root{--code-font: var(--code-font), monospace;--bg-primary: var(--bg-1);--text-color: var(--text-0);--label-color: #f0f0f0;--highlight-color: #f0f0f0}:root.dark{--highlight-color: #204e8a}.code-label{background:#333;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-js{background:#f7df1e;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-yaml{background:#f71e6a;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-shell{background:#4eaa25;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-json{background:#1e90ff;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-python{background:#3572a5;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-css{background:#264de4;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-go{background:#00add8;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-markdown{background:blue;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-rust{background:#ff4647;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-java{background:#f89820;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-csharp{background:#178600;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-ruby{background:#701516;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-swift{background:#f05138;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-php{background:#777bb4;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-typescript{background:#3178c6;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-scala{background:#c22d40;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-kotlin{background:#f18e33;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-lua{background:navy;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-perl{background:#0298c3;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-haskell{background:#5e5086;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-r{background:#198ce7;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-dart{background:#00d2b8;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-elixir{background:#6e4a7e;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-clojure{background:#5881d8;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-bash{background:#4eaa25;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}.label-default{background:#333;color:var(--label-color);border-radius:0 0 .25rem .25rem;font-size:12px;letter-spacing:.025rem;padding:.1rem .5rem;text-align:right;text-transform:uppercase;position:absolute;right:0;top:0;margin-top:.1rem}code{background-color:var(--bg-primary);padding:.1em .2em;border-radius:5px;border:1px solid var(--border-color);font-family:var(--code-font)}pre{background-color:var(--bg-primary) !important;border-radius:5px;border:1px solid var(--border-color);line-height:1.4;overflow-x:auto;padding:1em;position:relative}pre mark{background-color:var(--highlight-color) !important;padding:0;border-radius:0px}pre code{background-color:rgba(0,0,0,0) !important;color:var(--text-color);font-size:100%;padding:0;border:none;font-family:var(--code-font)}pre code table{margin:0;border-collapse:collapse;font-family:var(--code-font)}pre code table mark{display:block;color:unset;padding:0;background-color:var(--highlight-color) !important;filter:brightness(1.2)}pre code td,pre code th,pre code tr{padding:0;border-bottom:none;border:none}pre code tbody td:first-child{text-align:center;user-select:none;min-width:60px;border-right:none}pre code tbody tr:nth-child(even),pre code thead tr{background-color:unset}.clipboard-button,.clipboard-button svg{all:unset;cursor:pointer;position:absolute;bottom:5px;right:5px;z-index:10;background-color:rgba(0,0,0,0);border:none;fill:var(--text-color)}.icon-button{display:inline-flex;align-items:center;padding:4px 8px;gap:3px;background:var(--bg-2);font-size:.75rem;color:var(--text-color);border:1px solid var(--border-color) !important;border-radius:6px}.icon-button svg,.icon-button img{flex-shrink:0;width:16px;height:16px}.icon-button img{filter:var(--icon-filter)}.icon-button:hover{cursor:pointer;background:var(--bg-1);color:var(--text-color);border:1px solid var(--border-color)}@media (width <= 1365px){.contents{display:none}}.contents li,.contents a{font-family:sans-serif;color:var(--text-2);transition:none}.contents a:hover{color:var(--hover-color) !important;transition:none}.contents ul{list-style-type:none;padding-left:1em;margin-top:0;margin-bottom:0}.contents>ul{padding-left:0}.contents li.selected,.contents li.selected>a{color:var(--text-0)}.contents .parent>a{color:var(--text-0)}header{grid-column:col-start 3/col-end 10;margin-bottom:2rem}footer{grid-column:col-start 1/col-end 12;margin-top:4rem;font-size:.9rem;color:var(--text-1);line-height:1.6;padding:0 .9rem}footer p{margin-bottom:1rem;text-align:left}footer .number-line{margin-top:2rem;text-align:center;color:var(--text-2);letter-spacing:-.075em}nav{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;padding:1rem 0;}@media (width <= 600px){nav{flex-direction:column}}nav .left-nav{display:flex;flex-direction:row;align-items:center;gap:12px;font-size:1.5rem}nav .left-nav .socials{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:flex-end;gap:8px}nav .left-nav .socials .social img{width:16px;height:16px}nav .left-nav .socials a:hover{background-color:rgba(0,0,0,0)}nav .right-nav{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;font-size:1.25rem}nav .right-nav #dark-mode-toggle{margin-left:.5rem;padding:.1rem}nav .right-nav #dark-mode-toggle>img{width:16px;height:16px}nav .right-nav #dark-mode-toggle:hover{background-color:rgba(0,0,0,0)}nav .right-nav a{margin-right:.5em}.logo{background-image:unset}.logo>img{border:unset;float:left;width:auto;height:4rem}.logo:hover{background-color:rgba(0,0,0,0)}img{max-width:100%;border-radius:.5rem}figure{box-sizing:border-box;display:inline-block;margin:0;max-width:100%}figure img{max-height:500px}@media screen and (width >= 600px){figure{padding:0 40px}}figure h4{font-size:1rem;margin:0;margin-bottom:1em}figure h4::before{content:"↳ "}.item-header{margin-bottom:2rem}.item-header .meta{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;font-size:.9rem;color:var(--text-1);margin-bottom:1rem}.item-header .meta dt{display:none}.item-header .meta dd{margin:0;display:flex;align-items:center}.item-header .meta dd:not(:last-child)::after{content:"::";margin-left:.5rem;color:var(--text-2);opacity:.5}.deck,.tldr{font-size:1rem;font-style:italic;color:var(--text-1);margin-bottom:2.5rem;line-height:2;max-width:70ch}.item-list>ul,.tag-list>ul{margin:0;padding:1rem 0 0 0}.item-list .list-item,.tag-list .list-item{margin-bottom:.5rem;list-style-type:none}.item-list .item-header,.tag-list .item-header{display:grid;align-items:center}@media (width <= 640px){.item-list .item-header,.tag-list .item-header{grid-template-rows:auto 1fr}}@media (width > 640px){.item-list .item-header,.tag-list .item-header{grid-template-columns:auto 1fr;gap:1rem}}@media (width <= 640px){.item-list .item-header,.tag-list .item-header{margin:1.6rem 0}}.item-list .item-header h3,.tag-list .item-header h3{margin:0;font-weight:normal;font-family:var(--header-font),serif}.item-list .item-header time,.tag-list .item-header time{font-family:var(--mono-text-font),monospace;text-align:left;margin:0}.cards{display:grid;grid-template-columns:repeat(2, 1fr);gap:32px;padding:24px 0}@media (width <= 640px){.cards{grid-template-columns:1fr}}@media (width <= 720px){.cards{gap:16px}}.card{display:flex;flex-direction:column;background:var(--bg-0);border:1px solid var(--border-color);border-left:5px solid var(--primary-color);border-radius:4px;break-inside:avoid;margin-bottom:24px;transition:transform .3s cubic-bezier(.34, 1.56, .64, 1),box-shadow .3s ease;box-shadow:2px 4px 12px rgba(0,0,0,.08);position:relative;overflow:hidden}.card:hover{transform:translateY(-5px);box-shadow:4px 8px 24px rgba(0,0,0,.15)}.card-media{width:100%;height:220px;overflow:hidden;background:var(--bg-2);flex-shrink:0;border-bottom:1px solid var(--border-color)}@media (width <= 720px){.card-media{height:160px}}.card-image,.card-video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.card:hover .card-image,.card:hover .card-video{transform:scale(1.05)}.card-video{border-radius:0}.card-content{flex:1;display:flex;flex-direction:column;gap:8px;padding:24px}@media (width <= 720px){.card-content{padding:16px}}.card-title{margin:0;font-family:var(--header-font)}.card-title a{color:var(--text-0);text-decoration:none}.card-title a:hover{color:var(--primary-color)}.card .volume-number{font-family:var(--label-font),sans-serif;font-size:.75rem;font-weight:bold;text-transform:uppercase;letter-spacing:.15em;color:var(--primary-color);margin-bottom:.25rem;display:block;opacity:.8}.card-tagline{margin:0;font-size:1.1rem;color:var(--text-1);line-height:1.8;font-style:italic}.card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto}.card-links{display:flex;gap:10px;flex-shrink:0}.card-tags{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;align-items:center}.card-tag{font-size:.7rem;color:var(--text-1);white-space:nowrap}.talk-title{margin:0}.talks-grid{display:grid;gap:24px;padding:12px 0;grid-template-columns:1fr}@media (width >= 720px){.talks-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}.talk-card{background:var(--bg-1);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;display:flex;flex-direction:row}@media (width < 1024px){.talk-card{flex-direction:column}}.talk-card .talk-video{position:relative;flex-shrink:0;aspect-ratio:16/9}@media (width >= 1024px){.talk-card .talk-video{width:364.4444444444px;min-height:205px;height:100%}}.talk-card .talk-video .talk-image{border:unset;position:absolute;width:100%;height:100%;color:rgba(0,0,0,0);top:0;left:0;bottom:0;right:0;display:block;object-fit:cover;filter:brightness(75%) grayscale(50%)}.talk-card .talk-video .video-play-btn{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.talk-card .talk-video .video-play-btn .rounded-btn{background-color:var(--bg-2);border-radius:9999px;padding:1rem;display:flex;align-items:center;justify-content:center}.talk-card .talk-info{padding:1.5rem;display:flex;flex-direction:column;justify-content:center;flex-grow:1}.talk-card .talk-info .talk-description{margin-top:.75rem;margin-bottom:1.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:1rem;color:var(--text-1);line-height:2}.talk-card .talk-info .meta{display:flex;flex-wrap:wrap;gap:12px}.mermaid{text-align:center;margin-top:1em;margin-bottom:1em}.mermaid strong{font-weight:bold}.primary-color{color:var(--primary-color)}.draft-label{color:var(--hover-color);text-decoration:none;padding:2px 4px;border-radius:4px;margin-left:6px;background-color:var(--primary-color)}::-moz-selection{background:var(--primary-color);color:var(--hover-color);text-shadow:none}::selection{background:var(--primary-color);color:var(--hover-color)}hr{color:var(--border-color);background:none;margin:1.2rem auto}blockquote{border-left:3px solid var(--primary-color);color:#737373;margin:0;padding-left:1em}a{color:inherit;text-decoration:none;}a:hover{background-color:var(--primary-color);color:var(--hover-color)}a:hover>code{background-color:var(--primary-color);color:var(--hover-color);border:none;padding:0 .2em}a.talk-video:hover{background-color:rgba(0,0,0,0);color:inherit}time{color:var(--text-1)}del{text-decoration-color:var(--primary-color);text-decoration-thickness:3px}dl{margin-block:1.2rem}dl dt{counter-reset:definition-counter;font-family:var(--header-font),serif;font-weight:700;color:var(--text-0);margin:1rem 0 .4rem 0;font-size:1.1rem}dl dd{counter-increment:definition-counter;margin-inline-start:1.5rem;color:var(--text-1);font-style:italic;line-height:1.4;position:relative}dl dd::before{content:counter(definition-counter) " ";font-weight:bold;color:var(--primary-color);margin-right:.3rem;font-family:var(--label-font),serif;font-style:normal;font-size:.6rem}dl dd+dd{margin-top:.5rem}.MathJax_Display,.MJXc-display,.MathJax_SVG_Display{overflow-x:auto;overflow-y:hidden}.full-bleed{grid-column:full-start/full-end;width:100%;position:relative;margin-left:0;margin-right:0;transform:none}.columns-2{column-width:300px;column-count:2;column-gap:2rem;column-rule:1px solid var(--border-color);column-fill:balance;text-align:justify;hyphens:auto;margin-top:1.5rem}.columns-2>*{break-inside:avoid}.columns-2>*:first-child{margin-top:0}.columns-3{column-width:300px;column-count:3;column-gap:2rem;column-rule:1px solid var(--border-color);column-fill:balance;text-align:justify;hyphens:auto;margin-top:1.5rem}.columns-3>*{break-inside:avoid}.columns-3>*:first-child{margin-top:0}.columns-4{column-width:300px;column-count:4;column-gap:2rem;column-rule:1px solid var(--border-color);column-fill:balance;text-align:justify;hyphens:auto;margin-top:1.5rem}.columns-4>*{break-inside:avoid}.columns-4>*:first-child{margin-top:0}:root{--note-header-bg: var(--bg-2);--note-header-color: var(--text-0);--note-content-bg: var(--bg-1)}.note-container{border-radius:4px;overflow:hidden;margin:1em 0;position:relative;border-left:3px solid var(--primary-color);font-family:var(--paragraph-font)}.note-toggle,.note-header{color:var(--note-header-color);background-color:var(--note-header-bg);padding:10px 25px;text-align:left;border:none;width:100%;position:relative;outline:none;font-size:1.2em;transition:background-color .3s ease}.note-toggle p,.note-header p{margin:0}.note-toggle .note-center,.note-header .note-center{text-align:center;padding-right:50px}.note-toggle .note-icon,.note-toggle .note-icon,.note-header .note-icon,.note-header .note-icon{padding-left:25px}.note-toggle{font-family:inherit;padding:10px 25px;cursor:pointer;position:relative}.note-toggle::before{content:"▼";position:absolute;right:20px;top:50%;transform:translateY(-50%);}.note-toggle:hover,.note-toggle:focus{color:var(--note-header-color);background-color:var(--note-header-bg);outline:none}.note-content{padding:10px 20px;background-color:var(--note-content-bg)}.note-icon::before{content:"✎";color:var(--primary-color);position:absolute;left:20px;top:50%;transform:translateY(-50%)}summary{padding-left:.5em}summary:hover{background-color:var(--primary-color);color:var(--hover-color);cursor:pointer}.search-button{background:none;border:none;padding:2px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin-left:.25em}.search-button img{border:none}.search-button .search-icon{width:16px;height:16px}.search-button:hover{background-color:rgba(0,0,0,0)}.search-modal{border:none;padding:0;background:rgba(0,0,0,0)}.search-modal::backdrop{background:rgba(0,0,0,.2);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.search-modal[open]{display:block}.search-modal #modal-content{position:relative;z-index:110;margin:8% auto;width:80%;max-width:28rem;background-color:var(--bg-0);border:1px solid var(--bg-1);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.search-modal #searchBar{display:flex;align-items:center;padding:1rem;gap:.5rem}.search-modal #searchBar #searchInput{flex:1;padding:.75rem 2.5rem;font-size:1rem;color:var(--text-0);background:var(--bg-1);border:1px solid var(--bg-1);border-radius:20px;width:100%}.search-modal #searchBar #searchInput:focus{outline:none;border-color:var(--primary-color)}.search-modal #searchBar #searchInput::placeholder{color:var(--text-1)}.search-modal #searchBar .close-icon{position:absolute;right:1.5rem;display:none;padding:4px;cursor:pointer}.search-modal #searchBar .close-icon svg{width:1.3rem;height:1.3rem;fill:var(--text-1)}.search-modal #results-container{display:none;border-top:1px solid var(--bg-1)}.search-modal #results-container #results-info{padding:.5rem;color:var(--text-1);font-size:.8rem;text-align:center}.search-modal #results-container #results{max-height:50vh;overflow-y:auto}.search-modal #results-container #results>div{padding:.75rem 1rem;cursor:pointer}.search-modal #results-container #results>div[aria-selected=true]{background:var(--primary-color)}.search-modal #results-container #results>div[aria-selected=true] *{color:var(--hover-color) !important}.search-modal #results-container #results>div span:first-child{display:block;color:var(--text-0);font-weight:500;margin-bottom:.25rem}.search-modal #results-container #results>div span:nth-child(2){display:block;color:var(--text-1);font-size:.9rem}.search-modal #results-container #results>div:hover:not([aria-selected=true]){background:var(--bg-1)}.search-modal #modal-content{position:relative;margin:8% auto;width:80%;max-width:28rem;background-color:var(--bg-0);border:1px solid var(--bg-1);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);padding:1rem}.search-modal #modal-content h3{margin-top:0;margin-bottom:1rem}.search-modal #modal-content h3::before{color:var(--primary-color);content:"# "}#searchBar{position:relative;display:flex;align-items:center;padding:1rem}#searchBar .clear-button{position:absolute;right:1.5rem;background:none;border:none;padding:4px;cursor:pointer;display:none;width:24px;height:24px}#searchBar .clear-button svg{width:100%;height:100%;fill:var(--text-1)}#searchBar .clear-button:hover svg{fill:var(--primary-color)}#searchBar #searchInput{padding-right:2.5rem}@media (width <= 600px){.search-modal #modal-content{margin:4% auto;width:92%}.search-modal #results{max-height:70vh}}.secondary-nav{display:flex;flex-direction:row;justify-content:flex-end;padding:0;margin-bottom:2rem;border-top:1px solid var(--border-color);height:2.4rem;align-items:flex-start}.secondary-nav ul{display:flex;flex-direction:row;list-style:none;padding:0;margin:0;gap:.5rem}.secondary-nav li{margin:0}.secondary-nav li a{display:block;padding:.4rem 1rem;background:var(--bg-1);color:var(--text-1);font-family:var(--text-font),serif;font-size:.95rem;text-decoration:none;border:1px solid var(--border-color);border-top:none;border-radius:0 0 6px 6px;transition:all .3s cubic-bezier(.34, 1.56, .64, 1);position:relative;white-space:nowrap;box-shadow:0 2px 4px rgba(0,0,0,.05)}.secondary-nav li a:hover{background:var(--bg-0);color:var(--primary-color);padding-top:.8rem;box-shadow:0 4px 8px rgba(0,0,0,.1)}.secondary-nav li.active a{background:var(--bg-0);color:var(--text-0);padding-top:1rem;border-width:0 2px 2px 2px;border-color:rgba(0,0,0,0) var(--primary-color) var(--primary-color) var(--primary-color);box-shadow:0 6px 12px rgba(0,0,0,.15);z-index:2;letter-spacing:.01em;text-shadow:.5px 0 0 currentColor}.secondary-nav li.active a::before{content:"";position:absolute;top:-2px;left:0;right:0;height:4px;background:var(--bg-0);z-index:3}@media (width < 992px){.secondary-nav{justify-content:center;height:auto}.secondary-nav ul{flex-wrap:wrap;justify-content:center}.secondary-nav li a{border-top:1px solid var(--border-color);border-radius:4px;margin:.25rem;padding-top:.4rem}.secondary-nav li a:hover{padding-top:.4rem}.secondary-nav li.active a{border-top:2px solid var(--primary-color);padding-top:.4rem}.secondary-nav li.active a::before{display:none}}table{border-spacing:0;border-collapse:collapse}table th{padding:6px 13px;border:1px solid #dfe2e5;font-size:large}table td{padding:6px 13px;border:1px solid #dfe2e5}.tags a::before{content:"#";display:inline;white-space:nowrap !important}.authors a::before{content:"@";display:inline;white-space:nowrap !important}h1,h2,h3,h4,h5,h6,.page-header,.title,.card-title,.talk-title{font-family:var(--header-font),serif;color:var(--text-0)}.display-title{font-family:var(--display-font),serif;font-size:clamp(1.953rem, 8vw, 3.052rem);letter-spacing:.05em;line-height:1.41;margin:1rem 0;text-shadow:-1px -1px 0 var(--border-color),1px -1px 0 var(--border-color),-1px 1px 0 var(--border-color),1px 1px 0 var(--border-color)}h1,.h1{font-family:var(--header-font),serif;font-size:2.441rem;line-height:1.41;margin:1rem 0}h2,.h2{font-family:var(--header-font),serif;font-size:1.953rem;line-height:1.512;margin:1rem 0}h3,.h3{font-family:var(--header-font),serif;font-size:1.563rem;line-height:1.64;margin:1rem 0}h4,.h4{font-family:var(--header-font),serif;font-size:1.25rem;line-height:1.8;margin:1rem 0}h5,.h5{font-family:var(--header-font),serif;font-size:1rem;line-height:2;margin:1rem 0}h6,.h6{font-family:var(--header-font),serif;font-size:.8rem;line-height:2.25;margin:1rem 0}p{font-family:var(--text-font),serif;font-size:1.25rem;font-weight:400;line-height:1.8;margin-bottom:2rem}p:not(:last-child){margin-bottom:3rem}figcaption{font-family:var(--caption-font),monospace;font-size:.8rem;line-height:2.25;color:var(--text-2)}code,pre{font-family:var(--code-font),monospace}p.has-drop-cap::first-letter,.has-drop-cap>p:first-of-type::first-letter{color:var(--primary-color);float:left;font-family:var(--label-font),"Ballet",cursive;font-size:5rem;line-height:.7;margin:.1rem .6rem 0 0}.first-line-caps>p:first-of-type::first-line,.first-words-caps{font-variant:small-caps;letter-spacing:.05em;font-weight:500}header.well-feature,body main>header.well-feature,body main>article.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed),body main>section.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed){text-align:center;margin-bottom:4rem}header.well-feature .display-title,body main>header.well-feature .display-title,body main>article.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .display-title,body main>section.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .display-title{font-size:clamp(1.563rem, 10vw, 2.441rem);font-weight:100;text-transform:uppercase;margin-bottom:1.5rem}header.well-feature .deck,body main>header.well-feature .deck,body main>article.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .deck,body main>section.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .deck{font-size:1.25rem;font-style:italic;color:var(--text-1);max-width:65ch;margin:0 auto;line-height:1.4}header.well-feature .deck::before,body main>header.well-feature .deck::before,body main>article.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .deck::before,body main>section.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .deck::before,header.well-feature .deck::after,body main>header.well-feature .deck::after,body main>article.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .deck::after,body main>section.well-feature>header:not([class*=well-]):not([class*=slot-]):not(.full-bleed) .deck::after{content:" — ";color:var(--primary-color);opacity:.5}:root{--border-color: var(--border-color);--font-size-base: 16px;--text-font: "EB Garamond", serif;--header-font: "Besley", serif;--label-font: "Ballet", fancy;--caption-font: "Monofur", monospace;--display-font: "Besley", monospace;--code-font: "JetBrains Mono", monospace;--mono-text-font: "JetBrains Mono", monospace;--line-height: 2;--page-width: 144ch}html{min-height:100vh;background:var(--paper-bg) fixed;color:var(--text-0);font-family:var(--text-font),serif;line-height:var(--line-height);overscroll-behavior:none;scrollbar-gutter:stable;font-size:var(--font-size-base)}@media (width >= 992px){html{font-size:calc(var(--font-size-base)*1.25)}}@media (768px <= width < 992px){html{font-size:calc(var(--font-size-base)*1.125)}}@media (576px <= width < 768px){html{font-size:var(--font-size-base)}}@media (width < 576px){html{font-size:calc(var(--font-size-base)*.875)}}body{background:rgba(0,0,0,0);overflow-x:hidden;min-height:100vh;position:relative;display:grid;grid-template-columns:[full-start] minmax(1.5rem, 1fr) repeat(12, [col-start] minmax(0, calc(var(--page-width)/12)) [col-end]) minmax(1.5rem, 1fr) [full-end];width:100%;padding:0;margin-bottom:1.5rem;z-index:10}body::before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:var(--paper-texture);filter:var(--paper-filter);z-index:-1;pointer-events:none}body::after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;box-shadow:var(--vignette-shadow);pointer-events:none;z-index:20}body .well-copy,body main>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed):not(.grid-row),body main>article:not(.full-bleed)>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed):not(.grid-row),body main>section:not(.full-bleed)>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed):not(.grid-row),body main>.intersection-observing:not(.full-bleed)>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed):not(.grid-row),body main>div:not(.full-bleed):not([class*=well-])>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed):not(.grid-row),body main>ul:not(.full-bleed):not([class*=well-])>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed):not(.grid-row),body main .grid-row>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed),body>header,body>article,body>section{grid-column:col-start 3/col-end 10}body .well-feature,body main>.well-feature,body main>article.well-feature>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed),body main>section.well-feature>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed){grid-column:col-start 2/col-end 11}body .well-trim,body main>.well-trim,body main>.character-note.layout-marginal,body main>article.well-trim>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed),body main>article.character-note.layout-marginal>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed),body main>section.well-trim>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed),body main>section.character-note.layout-marginal>*:not([class*=well-]):not([class*=slot-]):not(.full-bleed),body>footer,body .character-note.layout-marginal{grid-column:col-start 1/col-end 12}body .slot-leading,body .leading{grid-column:col-start 1/col-end 2}body .slot-trailing,body .trailing{grid-column:col-start 11/col-end 12}body .trailing{position:sticky;top:60px;padding:1em;overflow-y:auto;max-height:calc(100vh - 100px)}body>footer>p{font-size:1.2em}body main{grid-column:full-start/full-end;display:grid;grid-template-columns:subgrid}body main .full-bleed{grid-column:full-start/full-end}body main .grid-row{grid-column:full-start/full-end;display:grid;grid-template-columns:subgrid}body main>.intersection-observing:not(.full-bleed),body main>article:not(.full-bleed),body main>section:not(.full-bleed),body main>div:not(.full-bleed):not(.well-copy):not(.well-feature):not(.well-trim):not(.character-note.layout-marginal){display:contents}body main>ul:not(.full-bleed):not(.well-copy):not(.well-feature):not(.well-trim):not(.character-note.layout-marginal){display:contents}body main>ul:not(.full-bleed):not(.well-copy):not(.well-feature):not(.well-trim):not(.character-note.layout-marginal):not(.character-note.layout-marginal)>li{list-style-type:none}@media (width < 992px){body{display:flex;flex-direction:column;padding:0 1rem}body .leading,body .trailing{order:2}body main{order:1}body .full-bleed{width:100vw;margin-left:-1rem}}#zola-error-overlay{z-index:999999 !important}