@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url("/assets/jetbrains-mono-latin.woff2") format("woff2")}
*{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}
[hidden]{display:none!important}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4}
body{margin:0;min-height:100vh;background:#e5e0d5;color:#111827;font-family:"JetBrains Mono",monospace;font-size:16px;font-weight:400;font-variation-settings:"wght" 100,"MONO" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,p{margin:0;font-weight:inherit}a{color:inherit;text-decoration:underline}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #111827;outline-offset:4px}
.container{width:calc(100% - 32px);max-width:896px;margin-left:auto;margin-right:auto}
.masthead{margin-top:32px}.status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));border:2px solid #111827}
.status-grid>div{padding:12px 8px 4px}.status-grid .domain-cell{padding:0;background:#111827;color:#e5e0d5;grid-column:span 3;grid-row:span 2;border-bottom:1px solid #111827;container-type:inline-size}
.domain-cell h1{display:flex;align-items:center;height:100%;padding-left:8px;letter-spacing:.05em;font-size:max(1em,calc(11cqw - var(--domain-length,11)*.2cqw))}
.label{font-style:italic}.version-label{grid-row:3;grid-column:1;border-right:1px solid;border-bottom:1px solid}.version-value{grid-column:2/span 2;border-bottom:1px solid}.updated-label{grid-row:4;grid-column:1;border-right:1px solid;border-bottom:1px solid}.updated-value{grid-column:2/span 2;border-bottom:1px solid}.status-label{display:none}.status-value{grid-row:5;grid-column:1/span 2;border-right:1px solid}.contact-cell{grid-column:3}
#stripe-strip{display:block;margin-top:16px}.copy{padding:8px}.copy h2{font-size:36px;line-height:40px;margin-top:32px;margin-bottom:16px}.typewriter-cursor{animation:blink 1s infinite}@keyframes blink{50%{opacity:0}}
@media(min-width:768px){.status-grid{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.status-grid .domain-cell{border-right:1px solid}.version-label{grid-column:4;grid-row:1}.version-value{grid-column:5;grid-row:1}.updated-label{grid-column:4;grid-row:2}.updated-value{grid-column:5;grid-row:2}.status-grid .status-label{display:block;grid-row:3;grid-column:1;border-right:1px solid;padding-left:8px}.status-value{grid-column:2/span 3;grid-row:3}.contact-cell{grid-column:5;grid-row:3}}
dialog{background:#e5e0d5;color:#111827;width:calc(100% - 32px);max-width:560px;max-height:calc(100dvh - 32px);overflow:auto;margin:auto;padding:24px;border:2px solid #111827;font-variation-settings:"wght" 400}
dialog::backdrop{background:rgba(17,24,39,.65)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-heading h2{min-width:0;overflow-wrap:anywhere;font-size:24px;line-height:1.25}.dialog-heading button{flex-shrink:0;font-size:28px;background:none;padding:0 8px}.dialog-heading+p{margin:16px 0 24px}
form label{display:block;margin-top:16px;margin-bottom:8px}label span,.form-note,.email-alternative{font-size:13px}input,textarea{display:block;width:100%;border:1px solid #111827;background:rgba(255,255,255,.35);padding:10px;border-radius:0}textarea{resize:vertical}.form-note{margin:16px 0;line-height:1.6}#contact-status{min-height:24px;margin:16px 0}#send-message,#dismiss-contact{width:100%;padding:12px;background:#111827;color:#e5e0d5}.email-alternative{margin-top:16px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.contact-success{padding-top:28px;text-align:center}.success-icon{display:block;margin:0 auto 20px}.contact-success h3{font-size:32px;line-height:1.2;margin:0;font-variation-settings:"wght" 600}.contact-success p{margin:16px 0 28px;line-height:1.7}
@media(prefers-reduced-motion:reduce){.typewriter-cursor{animation:none}}
