@font-face{font-family:'Lato';font-style:normal;font-weight:400;font-display:swap;src:local("Lato Regular"),local("Lato-Regular"),url(https://fonts.gstatic.com/s/lato/v15/S6uyw4BMUTPHjx4wXiWtFCc.woff2) format("woff2")}@font-face{font-family:'Lato';font-style:italic;font-weight:400;font-display:swap;src:local("Lato Italic"),local("Lato-Italic"),url(https://fonts.gstatic.com/s/lato/v15/S6u8w4BMUTPHjxsAXC-qNiXg7Q.woff2) format("woff2")}@font-face{font-family:'Lato';font-style:normal;font-weight:700;font-display:swap;src:local("Lato Bold"),local("Lato-Bold"),url(https://fonts.gstatic.com/s/lato/v15/S6u9w4BMUTPHh6UVSwiPGQ3q5d0.woff2) format("woff2")}*{box-sizing:border-box}body{margin:0;background:#fff;color:#1a1a1a;font-family:"Lato",Verdana,Helvetica,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}.container{max-width:960px;margin:0 auto;padding:28px 24px 64px}a{color:#1772d0;text-decoration:none}a:hover,a:focus{color:#f09228}h1,h2{font-weight:700;line-height:1.25}h2{font-size:22px;margin:0 0 16px;padding-bottom:6px;border-bottom:1px solid #e5e7eb}section{margin-top:44px}.intro{margin-top:4px}.muted{color:#6b7280}.intro{display:flex;align-items:center;gap:32px}.intro-text{flex:1 1 0}.name{font-size:34px;margin:0 0 12px}.intro-photo{flex:0 0 180px;max-width:180px}.intro-photo img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:50%;border:1px solid #e5e7eb;box-shadow:0 6px 12px rgba(0,0,0,0.1)}.links{margin-top:18px;display:flex;flex-wrap:wrap;gap:20px}.icon-link{display:inline-flex;align-items:center;gap:6px;color:#6b7280}.icon-link:hover{color:#1772d0}.icon-link svg{width:15px;height:15px;fill:currentColor;flex:none}.entry-list{display:flex;flex-direction:column}.entry{display:flex;gap:22px;align-items:center;position:relative;padding:26px 0}.entry:first-child{padding-top:8px}.entry:last-child{padding-bottom:4px}.entry+.entry::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right, transparent, #e5e7eb 18%, #e5e7eb 82%, transparent)}.entry-media{flex:0 0 280px}.thumb{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb;box-shadow:0 6px 12px rgba(0,0,0,0.1);transition:transform 0.2s ease, box-shadow 0.2s ease}.thumb:hover{transform:scale(1.03);box-shadow:0 10px 20px rgba(0,0,0,0.15)}.thumb-media,.thumb-anim{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.thumb-anim{opacity:0;transition:opacity 0.25s ease}.thumb.is-playing .thumb-anim{opacity:1}.entry-body{flex:1 1 0;min-width:0}.entry-title{font-size:17px;font-weight:700;line-height:1.3}.authors{color:#6b7280;font-size:14px}.authors a{color:inherit}.authors a:hover{color:#1772d0}.authors strong{color:#374151}.entry-meta{color:#6b7280;font-size:14px}.abstract{margin:8px 0 0;color:#444}.links-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.btn{display:inline-flex;align-items:center;padding:3px 10px;font-size:13px;font-weight:600;border-radius:6px;background:#f1f3f5;color:#1a1a1a;border:1px solid transparent;transition:background .15s ease, border-color .15s ease, color .15s ease}.btn:hover{background:#e6eaf0;color:#1772d0}.btn-accent{background:#eaf2fc;color:#1772d0}.badge{display:inline-flex;align-items:center;gap:4px;color:#c0392b;font-weight:700}.badge-icon{font-size:.95em;line-height:1}.records ul{list-style:none;padding:0;margin:0}.records li{display:flex;gap:12px;padding:6px 0}.period{flex:0 0 150px;color:#6b7280;font-variant-numeric:tabular-nums}.record-body{flex:1 1 auto}.back-link{margin:0 0 24px;font-size:14px}.writeup h1{font-size:30px;margin:0 0 6px}.writeup .subtitle{color:#6b7280;margin:0 0 28px}.writeup h2{margin-top:36px}.writeup p{margin:16px 0}.sim-container{margin:28px 0;text-align:center}.sim-container canvas{width:100%;max-width:640px;height:auto;aspect-ratio:16 / 9;border-radius:12px;border:1px solid #e5e7eb;background:#0b1021;cursor:crosshair;touch-action:none}.sim-caption{color:#6b7280;font-size:13px;margin-top:8px}.site-footer{margin-top:64px;padding-top:20px;border-top:1px solid #e5e7eb;color:#6b7280;font-size:13px;text-align:center}@media (max-width: 600px){.intro{flex-direction:column-reverse;text-align:left;align-items:stretch}.intro-photo{align-self:center}.entry{flex-direction:column;align-items:stretch}.entry-media{flex-basis:auto;width:100%}.thumb{width:100%;height:auto;aspect-ratio:16 / 9}.records li{flex-direction:column;gap:2px}.period{flex-basis:auto}}
