﻿@font-face{font-family:"Roboto Slab";src:url("/fonts/RobotoSlab.woff2") format("woff2");font-weight:100 1000;font-stretch:75% 200%;font-style:normal;font-display:swap}@font-face{font-family:"Nunito";src:url("/fonts/Nunito-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Nunito";src:url("/fonts/Nunito-Italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Nunito";src:url("/fonts/Nunito-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Nunito";src:url("/fonts/Nunito-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:"Fira Mono";src:url("/fonts/FiraMono-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--min-page-width: 360px;--font-heading: "Nunito", sans-serif;--font-content: "Roboto Slab", serif;--font-mono: "Fira Mono", monospace;--base-font-size: 16px;--line-width: 1px;--outline-width: 2px;--spacing-base: 0.5em;--border-radius: 2px;--area-height: 400px;--dropdown-max-height: 400px;--animation-duration: 0.6s;--animation-offset: 10px;--transition: all 0.3s ease;--drop-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);--drop-shadow-inner: inset 0 1px 3px rgba(0, 0, 0, 0.1);--drop-shadow-outer: 0 0 0 3px rgba(212, 175, 55, 0.2);--drop-shadow-modal: 0 4px 12px rgba(0, 0, 0, 0.1);--spacing-xs: calc(var(--spacing-base) / 4);--spacing-sm: calc(var(--spacing-base) / 2);--spacing-md: var(--spacing-base);--spacing-lg: calc(var(--spacing-base) * 2);--spacing-xl: calc(var(--spacing-base) * 4);}@media (prefers-reduced-motion){:root{--transition: none}}@media (prefers-color-scheme: light){:root{--color-scheme: light;--fore-color: #202020;--fore-color-filter: invert(6%) sepia(22%) saturate(0%) hue-rotate(346deg) brightness(105%) contrast(87%);--back-color: #fefefe;--logo-color: #fcddbc;--line-color: #cecdb5;--link-color: #800000;--link-hover-color: #a00000;--note-back-color: #f8f6f0;--note-fore-color: #5a5a5a;--accent-color: #d4af37;--highlight-color: #fff5e6;--muted-color: #6b6b6b;--header-filter: none;--icon-logo-filter: drop-shadow(var(--drop-shadow));--background-lightbox: rgba(0, 0, 0, 1.0);--background-button: linear-gradient(0deg, #707070 0%, #303030 40%, #404040 100%);--background-button-hover: linear-gradient(0deg, #707070 0%, #303030 70%, #404040 100%);--button-fore-color: #e0e0e0}}@media (prefers-color-scheme: dark){:root{--color-scheme: dark;--fore-color: #c9c2b8;--fore-color-filter: invert(94%) sepia(8%) saturate(15%) hue-rotate(316deg) brightness(102%) contrast(96%);--back-color: #1a1a1a;--logo-color: #3d2f1f;--line-color: #404040;--link-color: #ff6b6b;--link-hover-color: #ff8e8e;--note-back-color: #2d2a24;--note-fore-color: #b8b0a6;--accent-color: #fdfd96;--highlight-color: #2a2520;--muted-color: #a0a0a0;--header-filter: invert(1) hue-rotate(180deg) brightness(0.6) contrast(1.2);--icon-logo-filter: invert(1) hue-rotate(180deg) saturate(1.2) brightness(0.8) drop-shadow(var(--drop-shadow));--background-lightbox: rgba(0, 0, 0, 1.0);--background-button: linear-gradient(0deg, #202020 0%, #303030 40%, #101010 100%);--background-button-hover: linear-gradient(0deg, #202020 0%, #303030 70%, #101010 100%);--button-fore-color: #e0e0e0}}@keyframes fadeIn{from{opacity:0;transform:translateY(var(--animation-offset))}to{opacity:1;transform:translateY(0)}}*,*:before,*:after{box-sizing:inherit}html,body,p,ul,ol,li,figure,dialog{box-sizing:border-box;margin:0;padding:0;border:none}pre{font-size:.8em;padding:var(--spacing-md);overflow-x:scroll}body{color:var(--fore-color);background-image:var(--background);background-repeat:repeat;font-size:var(--base-font-size);line-height:1.8em;min-width:var(--min-page-width);transition:var(--transition)}body:has(dialog:target){overflow:hidden}ul,ol{list-style-type:"‣ ";list-style-position:outside;padding:var(--spacing-md) 0}a,a:link,a:visited,a:focus,a:active{color:var(--link-color);outline:none;text-decoration:underline;transition:var(--transition)}a:hover{color:var(--link-hover-color)}a[href^="#figure-"]{cursor:zoom-out;display:block;width:100%}a[href^="#lightbox-"]{cursor:zoom-in}input,textarea,button{color-scheme:var(--color-scheme);padding:var(--spacing-md)}input,textarea{color:var(--fore-color);background-color:var(--back-color);width:100%}input,textarea,button{border:var(--line-width) solid var(--line-color);outline:none;padding:var(--spacing-md);border-radius:calc(var(--border-radius)*2);transition:var(--transition);box-shadow:var(--box-shadow)}input:focus,textarea:focus,button:focus{border-color:var(--accent-color);box-shadow:var(--drop-shadow-outer)}input[type=date],input::placeholder,textarea[type=date],textarea::placeholder,button[type=date],button::placeholder{color:var(--muted-color)}textarea{min-height:10em;resize:vertical}button{cursor:pointer;min-width:5em;font-weight:500;color:var(--button-fore-color);background:var(--background-button)}button:hover,button:active{background:var(--background-button-hover)}button:focus,input:focus,a:focus{outline:var(--outline-width) solid var(--accent-color);outline-offset:calc(var(--outline-width)/4)}blockquote{margin:var(--spacing-lg) 0;padding:var(--spacing-md) var(--spacing-lg);border-left:calc(4*var(--line-width)) solid var(--accent-color);background-color:var(--highlight-color)}h1,h2{font-family:var(--font-heading);font-weight:normal;margin:var(--spacing-lg) 0 var(--spacing-md) 0;line-height:1.2em}h1{font-size:1.5em}h2{font-size:1.3em;font-style:italic}p{margin:var(--spacing-lg) 0}p img,p video{border:var(--line-width) solid var(--fore-color);padding:var(--spacing-sm)}img,video{display:block;margin:auto;max-width:100%}img+em,video+em{display:block;padding:var(--spacing-md) 0;text-align:center}img+em::before,video+em::before{content:"Figure: ";font-weight:bolder}#main{background-color:var(--back-color);display:flex;flex-direction:column;font-family:var(--font-content);margin:auto;max-width:800px;padding:0 var(--spacing-xl)}#main .header-spacer{background:linear-gradient(0deg, #000 0%, gray 50%, #000 100%);height:var(--spacing-lg)}#main .header{align-items:center;background-image:var(--background-header);background-repeat:repeat;display:flex;justify-content:center;padding:var(--spacing-md);position:relative}#main .header::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:var(--background-header);background-repeat:repeat;filter:var(--header-filter);transition:var(--transition)}#main .header .icon,#main .header .logo{max-height:60px;max-width:100%;-webkit-user-select:none;user-select:none;transition:var(--transition);filter:var(--icon-logo-filter)}#main .header .invert{filter:var(--fore-color-filter)}#main .search{border:var(--line-width) solid rgba(0,0,0,0);border-top-color:var(--line-color);display:none;padding:var(--spacing-md);position:relative}#main .search input[type=search]{-moz-appearance:none;-webkit-appearance:none;appearance:none}#main .search input[type=search]::-webkit-search-decoration,#main .search input[type=search]::-webkit-search-cancel-button,#main .search input[type=search]::-webkit-search-results-button,#main .search input[type=search]::-webkit-search-results-decoration{display:none}#main .search .search-results{background-color:var(--back-color);box-shadow:var(--drop-shadow-modal);border:var(--line-width) solid var(--line-color);border-radius:calc(var(--border-radius)*2);display:none;padding:var(--spacing-md);overflow:auto;max-height:var(--dropdown-max-height);position:absolute;right:var(--spacing-md);width:calc(100% - var(--spacing-lg));z-index:10;margin-top:var(--spacing-sm)}#main .search .search-results .search-results-items{display:flex;flex-direction:column;list-style:none}#main .search .search-results .search-results-items li{padding:0;margin:0}#main .search .search-results .search-results-items .search-results-item{margin-bottom:var(--spacing-sm);transition:var(--transition);border-radius:0 0 calc(var(--border-radius)*2) calc(var(--border-radius)*2)}#main .search .search-results .search-results-items .search-results-item:hover{background-color:var(--highlight-color)}#main .search .search-results .search-results-items .search-results-item .search-results-item-title{background-color:var(--logo-color);padding:var(--spacing-md);border-radius:calc(var(--border-radius)*2) calc(var(--border-radius)*2) 0 0;font-weight:bold}#main .search .search-results .search-results-items .search-results-item .search-results-item-snippet{padding:var(--spacing-md);padding-bottom:var(--spacing-lg);color:var(--muted-color);overflow:hidden;text-overflow:ellipsis}#main .toolbar{border:var(--line-width) solid rgba(0,0,0,0);border-top-color:var(--line-color);display:flex;font-family:var(--font-heading);font-size:.9em;justify-content:center;align-items:center;padding:var(--spacing-md)}#main .toolbar .toolbar-item{padding:var(--spacing-sm)}#main .toolbar .toolbar-item a{display:inline-flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;transition:var(--transition);border-radius:calc(var(--border-radius)*2)}#main .toolbar .toolbar-item a:hover{background-color:var(--logo-color)}#main .toolbar .toolbar-item:not(:last-of-type){border-right:var(--line-width) solid rgba(0,0,0,0);border-image:linear-gradient(to bottom, rgba(0,0,0,0) 0%, var(--line-color) 20%, var(--line-color) 80%, rgba(0,0,0,0) 100%) 1}#main .content .post{border:var(--line-width) solid rgba(0,0,0,0);border-top-color:var(--line-color);display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-md);animation:fadeIn var(--animation-duration) ease-out}#main .content .index-year{border-bottom:var(--line-width) solid var(--line-color);padding-bottom:var(--spacing-sm);transition:var(--transition)}#main .content .index-year:hover{color:var(--link-color)}#main .content .index-title::before{content:"→ "}#main .content .term-heading{border-top:var(--line-width) solid var(--line-color);font-family:var(--font-heading);font-size:x-large;padding:var(--spacing-md);color:var(--fore-color);transition:var(--transition)}#main .content .term-heading:hover{color:var(--link-color)}#main .content .post-title{font-family:var(--font-heading);font-size:x-large;color:var(--fore-color);transition:var(--transition);margin:var(--spacing-md) 0 var(--spacing-sm) 0}#main .content .post-title:hover{color:var(--link-color)}#main .content .post-title a{text-decoration:none}#main .content .post-date{display:flex;flex-direction:column;color:var(--muted-color);font-size:.9em;margin-bottom:var(--spacing-sm)}#main .content .post-content{font-size:1.1em;-webkit-hyphens:auto;hyphens:auto;text-align:justify}#main .content .post-content .back-to-top{display:block;text-align:end}#main .content .post-content .indent~ul li{list-style:none;padding-inline-start:var(--spacing-xl);text-indent:calc(var(--spacing-xl)*-1)}#main .content .post-content .indent~ul li input{width:auto}#main .content .post-tags{display:flex;column-gap:var(--spacing-md);font-size:.9em}#main .content .post-tags a{text-decoration:none}#main .content .post-tags .tag{font-family:var(--font-mono)}#main .content .post-authors{display:flex;column-gap:var(--spacing-md);font-size:.9em}#main .content .post-authors a{text-decoration:none}#main .content .post-authors .author{font-style:italic}#main .content .post-authors .author:not(:last-of-type)::after{content:";"}#main .content .rule{border-top:var(--line-width) solid rgba(0,0,0,0);border-top-color:var(--line-color);margin:var(--spacing-lg) 0}#main .content .msgbox{border:var(--line-width) solid rgba(0,0,0,0);border-top-color:var(--line-color);display:flex;flex-direction:column}#main .content .msgbox .msg{font-style:italic;padding:var(--spacing-xl) 0;text-align:center}#main .content .msgbox .map{background-image:url("world.svg");background-repeat:no-repeat;background-size:100% 100%;padding-top:var(--spacing-xl);height:var(--area-height);width:100%}#main .content .tag-cloud{list-style:none;margin:var(--spacing-lg) auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;line-height:2em;max-width:75%}#main .content .tag-cloud .tag{display:block;padding:0 var(--spacing-sm);position:relative;font-size:calc(var(--tag-size)*.5em + .5em)}#main .content .tag-cloud .tag[data-weight="1"]{--tag-size: 1}#main .content .tag-cloud .tag[data-weight="2"]{--tag-size: 2}#main .content .tag-cloud .tag[data-weight="3"]{--tag-size: 3}#main .content .tag-cloud .tag[data-weight="4"]{--tag-size: 4}#main .content .tag-cloud .tag[data-weight="5"]{--tag-size: 5}#main .content .tag-cloud .tag[data-weight="6"]{--tag-size: 6}#main .content .tag-cloud .tag[data-weight="7"]{--tag-size: 7}#main .content .tag-cloud .tag[data-weight="8"]{--tag-size: 8}#main .content .tag-cloud .tag[data-weight="9"]{--tag-size: 9}#main .content .footnote-definition{font-size:smaller}#main .content .footnote-definition p{display:inline;margin:0 var(--spacing-md)}#main .content .gallery{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--spacing-sm);max-width:100%;margin:var(--spacing-sm) 0}#main .content .gallery .gallery-item{border:var(--line-width) solid var(--fore-color);padding:var(--spacing-sm);object-fit:cover;height:100%;width:100%}#main .content .gallery .lightbox{display:none;justify-content:center;position:fixed;z-index:2;top:0;left:0;width:100%;height:100%;background:var(--background-lightbox);padding:var(--spacing-lg)}#main .content .gallery .lightbox:target{display:flex}#main .content .gallery .lightbox img{object-fit:contain;height:100%;width:100%}#main .content .note{font-size:.95em;background-color:var(--note-back-color);color:var(--note-fore-color);border-left:3px solid var(--accent-color);box-shadow:var(--drop-shadow-inner);display:flex;align-items:center;column-gap:var(--spacing-md);padding:var(--spacing-lg);margin:var(--spacing-lg) 0;border-radius:var(--border-radius)}#main .content .nav{border:var(--line-width) solid rgba(0,0,0,0);border-top-color:var(--line-color);column-gap:var(--spacing-xl);display:flex;justify-content:stretch;padding:var(--spacing-lg) var(--spacing-md)}#main .content .nav a{text-decoration:none}#main .content .nav .older,#main .content .nav .newer{font-family:var(--font-mono);user-select:none}#main .content .nav .newer{text-align:end;flex:1}#main .content .nav .older{text-align:start}#main .content .post-actions{display:flex;align-items:center;justify-content:center;column-gap:var(--spacing-md)}#main .content .post-actions .post-actions-spacer{flex:1}#main .footer{border:var(--line-width) solid rgba(0,0,0,0);border-top-color:var(--line-color);padding:var(--spacing-md);text-align:center}