@font-face{font-family:"Inter";src:url("/assets/InterVariable-884c49a1.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:"Inter";src:url("/assets/InterVariable-Italic-0aa7a4b3.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:"Fraunces";src:url("/assets/Fraunces-Variable-2a0ad122.woff2") format("woff2");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:"Fraunces";src:url("/assets/Fraunces-Variable-Italic-6dbb0fa6.woff2") format("woff2");font-weight:300 700;font-style:italic;font-display:swap}@font-face{font-family:"JetBrains Mono";src:url("/assets/JetBrainsMono-Variable-68dbce1c.woff2") format("woff2");font-weight:400 600;font-style:normal;font-display:swap}:root{--font-family-sans: 'Inter', sans-serif;--font-family-serif: 'Fraunces', Georgia, serif;--font-family-display: var(--font-family-serif);--font-family-mono: 'JetBrains Mono', ui-monospace, monospace;--color-dark-gray: #23262B;--color-darker-gray: #17181B;--color-light-gray: #E4E0D7;--color-lighter-gray: #ECE8DF;--color-white: #FFFFFF;--color-alt-dark: #33363C;--color-alt-light: #D8D3C7;--color-orange: #9E4A2E;--color-green: #4F7A64;--color-yellow: #C9A45A;--color-red: #A2443F;--color-light-blue: #7C9CB4;--color-black: #021526;--color-background: #F5F2EC;--color-surface: #ECE8DF;--color-text: #23262B;--color-text-muted: #5E6067;--color-accent: var(--color-orange);--color-rule: #D9D3C7;--color-icon: var(--color-dark-gray);--color-border: #B9B2A5;--color-focus: var(--color-orange);--color-blockquote-background: var(--color-surface)}@media(prefers-color-scheme: dark){:root{--color-background: #17181B;--color-surface: #212328;--color-text: #E4E0D7;--color-text-muted: #9C9A94;--color-accent: #D9825F;--color-rule: #2E3036;--color-icon: var(--color-light-gray);--color-border: #4A4D54;--color-focus: #D9825F;--color-blockquote-background: var(--color-surface)}}body{margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;top:0;left:0;z-index:100;padding:.75em 1.5em;background-color:var(--color-background);transform:translateY(-100%)}.skip-link:focus{transform:translateY(0)}.icon{display:inline-block;width:1em;height:1em;vertical-align:-0.125em}.button{display:inline-block;padding:.85em 1.75em;font-family:var(--font-family-sans);font-size:1rem;line-height:normal;text-align:center;text-decoration:none;background-color:var(--color-green);border:none;border-radius:.375rem;font-weight:600;cursor:pointer}.button,.button:link,.button:visited{color:var(--color-white)}.button:hover{filter:brightness(0.9)}.button--secondary{background-color:var(--color-orange)}.icon-button{display:inline-block;padding:.5em;font:inherit;line-height:0;background:none;border:none;cursor:pointer}.icon-button,.icon-button:link,.icon-button:visited{color:inherit}.icon-button:hover,.icon-button:focus-visible{color:var(--color-green)}.icon-button .icon{width:1.1rem;height:1.1rem}.icon-button--danger:hover,.icon-button--danger:focus-visible{color:var(--color-red)}.flash{position:fixed;top:0;left:0;right:0;z-index:1000;width:fit-content;max-width:calc(100% - 2rem);box-sizing:border-box;margin:0 auto;padding:.75em 1.5em;font-size:1rem;font-weight:600;line-height:1.5;text-align:center;border-radius:0 0 .375rem .375rem;box-shadow:0 6px 20px -8px rgba(0,0,0,.35);animation:flash-in .3s ease-out}.flash--success{color:var(--color-white);background-color:var(--color-green)}.flash--warning{color:var(--color-dark-gray);background-color:var(--color-yellow)}.flash--error{color:var(--color-white);background-color:var(--color-red)}.flash--leaving{animation:flash-out .3s ease-in forwards}@keyframes flash-in{from{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes flash-out{from{transform:translateY(0)}to{transform:translateY(-100%)}}@media(prefers-reduced-motion: reduce){.flash,.flash--leaving{animation:none}}.container--header{border-bottom:1px solid var(--color-rule)}.navbar{padding:.75em 0;display:flex;align-items:center;flex-flow:row nowrap;justify-content:flex-start;width:100%}.navbar--home{position:fixed;z-index:10}@media(max-width: 1000px){.navbar{position:relative}}.navbar__brand{display:flex;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1.5rem;line-height:inherit;white-space:nowrap;text-decoration:none}.pixel-danny{width:20px;height:30px;margin-left:.2rem;image-rendering:pixelated}@media(min-width: 60rem){.pixel-danny{margin-left:0}}.navbar__nav{min-width:0}.navbar__nav ul{display:flex;flex-wrap:wrap;gap:.25em 1.75em;list-style-type:none;margin:0;padding:0}.nav-link{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--color-text-muted)}.nav-link:hover,.nav-link[aria-current=page]{color:var(--color-accent)}.container--header:has(.navbar--home){border-bottom:none}.navbar--home{background:var(--color-background)}.intro{background:var(--color-surface);border-left:3px solid var(--color-accent);border-radius:0 .375rem .375rem 0;padding:.75rem 1.5rem;margin-top:24px;margin-bottom:3em}.intro__headline{margin:.5rem 0 0}.intro__text{font-size:1.05rem;line-height:1.7}.posts{max-width:44rem;margin:0 auto}.posts ul{margin-top:3em;list-style-type:none;padding:0}.posts ul li{padding:1.5rem 0;border-bottom:1px solid var(--color-rule);font-family:var(--font-family-display);font-size:1.6em;font-weight:450;line-height:1.25;letter-spacing:-0.015em}.posts ul li a{text-decoration:none}.posts ul li em{display:block;margin-top:.5rem;font-family:var(--font-family-sans);font-style:normal;font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}blockquote{margin:2.5em 0;padding:.25em 0 .25em 1.5em;border-left:3px solid var(--color-accent)}blockquote p{margin:0;font-family:var(--font-family-serif);font-size:1.3em;font-style:italic;font-weight:300;line-height:1.55}blockquote footer{margin:.75em 0 0 0}blockquote footer cite{display:block;font-size:.8em;font-style:normal;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.code-block{margin:2em 0;position:relative}.code-block pre{width:100%;border-radius:.375rem;margin-left:auto;margin-right:auto;overflow-x:auto !important;background:#25272c}.code-block pre code{width:auto;padding:1em}.code-block pre code.hljs{overflow-x:visible}.code-block .code-caption{position:absolute;bottom:3px;right:1rem;display:block;font-family:"Anonymous Pro",monospace;font-size:.8em;color:var(--color-light-gray)}.code-block .with-caption{padding-bottom:2em}.image-block{text-align:center;margin:3em 0}.image-block img{width:100%;border-radius:.375rem}article.cheatsheet code{background:#25272c;color:#ccc;padding:.15em .4em;border-radius:4px}article.cheatsheet pre{margin:1.25em 0;background:#25272c;border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere}article.cheatsheet pre code,article.cheatsheet pre code.hljs{display:block;width:auto;margin:0;padding:1em 1.25em;background:none;border-radius:0;font-size:.95em;line-height:1.5;white-space:inherit;overflow-x:visible;color:#a6a6a6}article.cheatsheet pre .language-bash{color:#f2f2f2}article.cheatsheet .cheatsheet__command h4,article.cheatsheet .cheatsheet__command h5{font-weight:bold;letter-spacing:normal}article.cheatsheet .cheatsheet__command h4{font-size:1.15em;margin:0 0 .5em}article.cheatsheet .cheatsheet__command h5{font-size:.9em;margin:0;color:var(--color-text-muted)}.cheatsheet__command{margin-top:2em;padding-top:2em;border-top:1px solid color-mix(in srgb, var(--color-border) 20%, transparent)}h3+.cheatsheet__command{margin-top:1.5em;padding-top:0;border-top:none}.cheatsheet__category{margin-top:3em;padding-bottom:.3em;font-size:2em;border-bottom:2px solid var(--color-border)}.cheatsheet__contents>ul{display:grid;grid-template-columns:repeat(auto-fit, minmax(12em, 1fr));gap:1em 2em;list-style:none;padding:0}.cheatsheet__contents>ul>li>a{font-weight:bold}.cheatsheet__contents ul ul{list-style:none;padding:0}.cheatsheet__contents ul ul li{margin-top:.4em;font-size:1em}.cheatsheet__flags{list-style:none;padding:0}.cheatsheet__flags li{display:flex;align-items:baseline;gap:.75em;margin-top:.6em}.cheatsheet__flags li>code{flex:none;min-width:2.5em;text-align:center}.flashcards .flashcards__actions{text-align:center}.flashcards h2{margin-top:1em;margin-bottom:.5em}.flashcards ul li{margin-top:.4em}.flashcard__header{text-align:center}.flashcard__prompt{margin-top:.1em;margin-bottom:.1em}.flashcard__section{text-align:center;margin-top:2em;margin-bottom:1em;padding:.3em 1.5em;font-weight:400;font-size:1em;line-height:normal;background-color:var(--color-light-gray);color:var(--color-darker-gray);display:inline-block}.flashcard__actions{text-align:center;margin-top:3em}.flashcard__response{display:none}.flight-tracker{margin:2rem 0 4rem}.flight-tracker__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.flight-tracker__summary{margin:0;color:var(--color-text-muted)}.flight-tracker__controls{display:flex;flex-wrap:wrap;gap:1rem 1.5rem}.flight-tracker__filter{display:flex;align-items:center;gap:.5rem}.flight-tracker__filter label{font-weight:700}.flight-tracker__filter select{font:inherit;padding:.4rem .6rem}.flight-stats{display:grid;grid-template-columns:repeat(auto-fit, minmax(9rem, 1fr));gap:1rem;margin:0 0 1.5rem}.flight-stats dt{color:var(--color-text-muted);font-size:.875rem}.flight-stats dd{margin:.125rem 0 0;font-size:1.5rem;font-weight:700}.flight-stats__note{display:block;color:var(--color-text-muted);font-size:.75rem;font-weight:400}.flight-tracker__body{display:grid;gap:1.5rem}@media(min-width: 60rem){.flight-tracker__body{grid-template-columns:minmax(0, 1fr) 18rem}}@media(min-width: 60rem){.flight-tracker__trips{max-height:max(70vh,24rem);overflow-y:auto}}.flight-tracker__trips-title{margin:0 0 .5rem;font-size:1rem}.flight-tracker__trip-list{margin:0;padding:0;list-style:none}.flight-tracker__trip{display:grid;grid-template-columns:auto 1fr;column-gap:.5rem;align-items:center;width:100%;padding:.5rem .625rem;border:0;border-radius:6px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.flight-tracker__trip:hover,.flight-tracker__trip:focus-visible{background:color-mix(in srgb, currentColor 12%, transparent)}.flight-tracker__trip-name{grid-column:2;font-weight:700}.flight-tracker__trip-details{grid-column:2;color:var(--color-text-muted);font-size:.875rem}.flight-tracker__trip .flight-tracker__swatch{grid-row:1}.flight-map{height:70vh;min-height:24rem;border-radius:6px}.flight-map.leaflet-container{background:#1e1e1e}.flight-tracker__timeline{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.75rem}.flight-tracker__play{min-width:4.5rem;padding:.4rem .75rem;font:inherit;font-weight:700;cursor:pointer}.flight-tracker__range{flex:1 1 12rem;accent-color:#3b82f6}.flight-tracker__timeline-label{color:var(--color-text-muted);font-size:.875rem;font-variant-numeric:tabular-nums}.flight-tracker__legend{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:.75rem;color:var(--color-text-muted);font-size:.875rem}.flight-tracker__gradient{width:10rem;height:.5rem;border-radius:999px}.flight-tracker__legend-item{display:inline-flex;align-items:center;gap:.375rem}.flight-tracker__swatch{width:.75rem;height:.75rem;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.25)}.flight-charts{--flight-chart-bar: #1d4ed8;display:grid;gap:2rem;margin-top:2.5rem}@media(prefers-color-scheme: dark){.flight-charts{--flight-chart-bar: #3b82f6}}@media(min-width: 60rem){.flight-charts{grid-template-columns:repeat(2, minmax(0, 1fr))}}.flight-charts__title{margin:0 0 .75rem;font-size:1rem}.flight-chart{position:relative;height:18rem}.flight-chart canvas{display:block;max-width:100%}.flight-charts__data{margin-top:.75rem}.flight-charts__data summary{color:var(--color-text-muted);font-size:.875rem;cursor:pointer}.flight-map__path{stroke-linecap:round;stroke-linejoin:round}.flight-map__airport{filter:drop-shadow(0 0 4px rgba(251, 191, 36, 0.8))}.flight-map__plane{filter:drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3))}.flight-map__popup-title{margin:0;font-size:1rem}.flight-map__popup .flight-map__popup-count{margin:.125rem 0 .5rem;color:#555}.flight-map__popup-flights{margin:0;padding:0;list-style:none}.flight-map__popup-flight{display:flex;flex-direction:column;padding:.5rem 0;border-top:1px solid #ddd}.flight-map__popup-trip{color:#555}.admin-flights__description{margin:0 0 .5rem;color:var(--color-text-muted)}.canterbury{--race-chart-place-1: var(--color-light-blue);--race-chart-place-2: var(--color-red);--race-chart-place-3: var(--color-white);--race-chart-place-4: var(--color-yellow);--race-chart-place-5: var(--color-green);--race-chart-place-6: var(--color-orange);--race-chart-place-lower: var(--color-text-muted);margin:2rem 0 4rem}.canterbury h1{text-align:left;font-size:2.25em;margin:0 0 1.5rem}.canterbury h2{margin:2rem 0 .5rem;padding:0}.canterbury__columns{display:grid;grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr));gap:0 2rem}.race-chart{position:relative;height:32rem}.race-chart canvas{display:block;max-width:100%}.race-chart__legend{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin:1rem 0 2rem;padding:0;list-style:none;color:var(--color-text-muted)}.race-chart__swatch{display:inline-block;width:.8em;height:.8em;margin-right:.4em;border-radius:50%;vertical-align:-0.05em;box-shadow:0 0 0 1px var(--color-border)}.race-chart__swatch--1{background:var(--race-chart-place-1)}.race-chart__swatch--2{background:var(--race-chart-place-2)}.race-chart__swatch--3{background:var(--race-chart-place-3)}.race-chart__swatch--4{background:var(--race-chart-place-4)}.race-chart__swatch--5{background:var(--race-chart-place-5)}.race-chart__swatch--6{background:var(--race-chart-place-6)}.race-chart__swatch--lower{background:var(--race-chart-place-lower)}.workouts{--workout-strength: #b91c1c;--workout-running: #1d4ed8;--workout-boxing: #0f766e;margin:2rem 0 4rem}@media(prefers-color-scheme: dark){.workouts{--workout-strength: #f87171;--workout-running: #60a5fa;--workout-boxing: #2dd4bf}}.workouts h1{text-align:left;font-size:2.25em;margin:0 0 1.5rem}.workouts h2{margin:2rem 0 1rem;padding:0}.workout-exercises{margin:0;padding:0;list-style:none}.workout-exercises li+li{margin-top:.25rem}.workout-stats{display:grid;grid-template-columns:repeat(auto-fit, minmax(9rem, 1fr));gap:1rem;margin:0}.workout-stats dt{color:var(--color-text-muted);font-size:.875rem}.workout-stats dd{margin:.125rem 0 0;font-size:1.5rem;font-weight:700}.workout-stats__note{display:block;color:var(--color-text-muted);font-size:.75rem;font-weight:400}.workout-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr));gap:1.5rem}.workout-card{padding-left:1rem;border-left:4px solid var(--workout-card-color)}.workout-card--strength{--workout-card-color: var(--workout-strength)}.workout-card--running{--workout-card-color: var(--workout-running)}.workout-card--boxing{--workout-card-color: var(--workout-boxing)}.workout-card__title{margin:0;font-size:1.1rem}.workout-card__date{margin:.125rem 0 .75rem;color:var(--color-text-muted);font-size:.875rem;line-height:1.5}.workout-charts{display:grid;gap:2rem}.workout-charts__title{margin:0 0 .75rem;font-size:1rem}.workout-chart{position:relative;height:16rem}.workout-chart--strength{--workout-chart-color: var(--workout-strength)}.workout-chart--running{--workout-chart-color: var(--workout-running)}.workout-chart--boxing{--workout-chart-color: var(--workout-boxing)}.workout-chart canvas{display:block;max-width:100%}.workout-charts__data{margin-top:.75rem}.workout-charts__data summary{color:var(--color-text-muted);font-size:.875rem;cursor:pointer}.contact{text-align:center}.contact p{margin:1rem}.contact__form{display:flex;flex-direction:column;gap:1rem;max-width:32rem;margin:2rem auto;text-align:left}.contact__label{margin-bottom:-0.5rem;font-weight:600}.contact__field{padding:.75em;font-family:var(--font-family-sans);font-size:1rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:.375rem}.contact__website{position:absolute;left:-10000px}.contact__submit{align-self:center}.auth{max-width:24rem;margin:2rem auto 4rem}.auth__form{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}.auth__label{margin-bottom:-0.5rem;font-weight:600}.auth__field{box-sizing:border-box;width:100%;padding:.75em;font-family:var(--font-family-sans);font-size:1rem;border:1px solid var(--color-border)}.auth__submit{align-self:center}.listicle{list-style:none;padding-left:0}.listicle li{margin-bottom:1.5rem}.listicle h2{margin:0}.listicle h3{margin:0;font-size:var(--font-size-m)}.listicle p{margin:.25rem 0 0}.resume-link{display:flex;align-items:center;margin:1.5rem 0 0 0;font-weight:600}.resume-link svg{margin-right:.4rem;height:1rem;width:1rem;fill:var(--color-accent)}.social-links{margin:3rem 0 0 0;text-align:center}.social-links a{margin:0 .6rem}.social-links a svg{height:1.75rem;width:1.75rem;fill:var(--color-text-muted);transition:fill .15s ease}.social-links a:hover svg{fill:var(--color-accent)}.home .social-links{width:80%;margin-top:2.5rem}@media(max-width: 1000px){.home .social-links{width:100%}}.contact .social-links{width:100%}.tags{margin:0 0 .4rem 0}.tag{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent)}.site-footer{text-align:center;padding:2rem 0;margin-top:6em;clear:both;border-top:1px solid var(--color-rule);font-size:.85rem;color:var(--color-text-muted)}.projects-summary{max-width:44rem;margin:3rem auto 0;text-align:center;color:var(--color-text-muted)}.project-section{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--color-rule)}.project-headline{text-align:center;font-size:2.5em;font-weight:400;margin-top:0;margin-bottom:1.25em}.project-headline a{text-decoration:none}@media(max-width: 1000px){.project-headline{font-size:1.85em}}.project-image{width:100%;border-radius:.375rem;box-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 32px -12px rgba(0,0,0,.25)}@media(max-width: 768px){.project-image{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);border-radius:0}}.project-description{max-width:44rem;margin-left:auto;margin-right:auto}.project-list{max-width:44rem;margin-left:auto;margin-right:auto}.project-list-item{font-size:1.15em;margin-top:.75em}body{font-family:var(--font-family-sans);font-feature-settings:"ss01","cv11";min-height:100%;background:var(--color-background);color:var(--color-text);overflow-wrap:break-word}a{color:var(--color-text);text-decoration-color:var(--color-accent);text-decoration-thickness:1px;text-underline-offset:.2em;transition:color .15s ease,text-decoration-color .15s ease}a:hover{color:var(--color-accent)}h1,h2,h3{font-family:var(--font-family-display);font-weight:500;font-optical-sizing:auto;letter-spacing:-0.015em;line-height:1.15;hyphens:auto}h1 code,h2 code,h3 code{color:var(--color-text)}h1{text-align:center;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:400;margin:1.5em 0 1em}h2{font-size:1.75em;margin-top:2em;margin-bottom:.75em;padding:0}h3{margin-top:2em;font-size:1.35em}p{margin-top:1em;font-size:1.125em;line-height:1.75}p code{padding:.15em .4em;margin:0 .1em;border-radius:.25rem;background-color:var(--color-surface);color:var(--color-text)}p a{text-decoration:underline;text-decoration-color:var(--color-accent)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}::selection{background:var(--color-accent);color:var(--color-white)}code{font-family:var(--font-family-mono);font-size:.88em}pre code{font-size:.95em;width:90%;margin-left:auto;margin-right:auto}table{color:var(--color-text)}article .main{max-width:44rem;margin:0 auto}article ul li{font-size:1.1em;line-height:1.7;margin-top:.6em}article ul li::marker{color:var(--color-accent)}.container{width:90%;max-width:1100px;margin:0 auto}@media(max-width: 1000px){.container--main{width:90%;margin:0 auto}.container--home{width:100%}}.home{display:flex;width:100%;height:100vh}.home__panel{width:50%}.home__panel--left{box-sizing:border-box;overflow:hidden;position:fixed;width:550px;margin:8rem 0 0 0;max-height:calc(100vh - 8rem);overflow-y:auto}.home__name{text-align:left;font-size:clamp(2.5rem,4.5vw,3.5rem);font-weight:400;line-height:1.05;letter-spacing:-0.03em;padding:0;margin:0}.home__role{margin:.6rem 0 0 0;padding:0;font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:normal;color:var(--color-accent)}.home__story{font-family:var(--font-family-serif);font-size:1.15rem;font-weight:300;line-height:1.65;color:var(--color-text-muted);width:80%;margin:2rem 0 0 0;padding-top:2rem;border-top:1px solid var(--color-rule)}.home__panel--right{box-sizing:border-box;overflow-y:auto;flex-grow:1;margin:3.5rem 0 0 550px;scrollbar-width:none;-ms-overflow-style:none;padding:20px}.home__recents__title{margin:0}.recent{margin:0;padding:3rem 0;border-bottom:1px solid var(--color-rule);transition:transform .2s ease-out}.recent:last-child{border-bottom:none}.recent a{text-decoration:none}.recent img{width:100%;border-radius:.375rem}.recent__writing a{font-family:var(--font-family-display);font-size:2rem;font-weight:450;line-height:1.2;letter-spacing:-0.015em}.recent__writing p{font-size:1rem;color:var(--color-text-muted)}.recent:hover,.recent:focus-within{transform:translateY(-2px)}.recent__text{margin:.75rem 0 0;font-size:.95rem;color:var(--color-text-muted)}.recent__image{width:100%}@media(prefers-reduced-motion: reduce){.recent{transition:none}.recent:hover,.recent:focus-within{transform:none}}@media(max-width: 1000px){.home{flex-direction:column;height:auto}.home__panel{margin:0;padding:0}.home__panel--left{position:relative;width:90%;margin:0 auto;max-height:none}.home__name{margin:3rem 0 0 0}.home__story{width:100%}.home__panel--right{width:100%}.recent__writing{width:90%;margin-left:auto;margin-right:auto}.recent__photography .tags,.recent__photography .recent__text,.recent__book .tags,.recent__book .recent__text,.recent__project .tags,.recent__project .recent__text{width:90%;margin-left:auto;margin-right:auto}.recent__photography img,.recent__book img,.recent__project img{border-radius:0}}.admin{display:grid;grid-template-columns:15rem minmax(0, 1fr);gap:3rem;margin:2rem 0 4rem}.admin h1{text-align:left;font-size:2.25em;margin:0 0 1.5rem}.admin__content h2{margin:2rem 0 .5rem;padding:0}.admin-nav{align-self:start;position:sticky;top:1rem;padding-right:1.5rem;border-right:1px solid var(--color-border)}.admin-nav__heading{margin:1.75rem 0 .5rem;padding:0;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.admin-nav__list{list-style:none;margin:0;padding:0}.admin-nav__link{display:block;padding:.35rem .5rem;margin-left:calc(-0.5rem - 3px);text-decoration:none;border-left:3px solid rgba(0,0,0,0)}.admin-nav__link:hover{text-decoration:underline}.admin-nav__link[aria-current=page]{font-weight:700;border-left-color:var(--color-accent)}.admin-nav__sign-out{margin-top:2rem;text-align:center}.admin-list{padding-left:1.25rem}.admin-list li{font-size:1.1em;margin-top:.5em}.admin-table__wrapper{position:relative;overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.75rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border)}.admin-table th{font-weight:700}.admin-table__nowrap{white-space:nowrap}.admin-table__actions{display:flex;gap:.25rem;justify-content:flex-end}.admin__back{margin:0 0 1rem;font-size:1rem}.admin-details{margin:0 0 2rem}.admin-details dt{font-weight:700;margin-top:1.25rem}.admin-details dd{margin:.25rem 0 0}.admin-details__body p{margin:0 0 1em;font-size:1.1em;line-height:1.7}@media(max-width: 1000px){.admin{grid-template-columns:minmax(0, 1fr);gap:2rem}.admin-nav{position:static;padding:0 0 1.5rem;border-right:none;border-bottom:1px solid var(--color-border)}}.hljs-comment,.hljs-quote{color:#999}.hljs-variable,.hljs-template-variable,.hljs-tag,.hljs-name,.hljs-selector-id,.hljs-selector-class,.hljs-regexp,.hljs-deletion{color:#f2777a}.hljs-number,.hljs-built_in,.hljs-builtin-name,.hljs-literal,.hljs-type,.hljs-params,.hljs-meta,.hljs-link{color:#f99157}.hljs-attribute{color:#fc6}.hljs-string,.hljs-symbol,.hljs-bullet,.hljs-addition{color:#9c9}.hljs-title,.hljs-section{color:#69c}.hljs-keyword,.hljs-selector-tag{color:#c9c}.hljs{display:block;overflow-x:auto;background:#25272c;color:#ccc;padding:.5em}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold}
