:root{--bg-color:#fff;--text-color:#111;--text-muted:#666;--border-color:#111;--accent-color:#000;--accent-hover:#333;--code-bg:#f5f5f5;--table-header-bg:#f5f5f5;--table-hover-bg:#eaeaea;--font-sans:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--container-width:800px;--transition-speed:0s}[data-theme=dark]{--bg-color:#0c0c0c;--text-color:#eee;--text-muted:#999;--border-color:#eee;--accent-color:#eee;--accent-hover:#ccc;--code-bg:#1c1c1c;--table-header-bg:#1c1c1c;--table-hover-bg:#282828}*{box-sizing:border-box;border-radius:0!important}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:.95rem;line-height:1.6}.container{max-width:var(--container-width);border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);min-height:100vh;margin:0 auto;padding:4rem 2rem;position:relative}@media (width<=840px){.container{border-left:none;border-right:none;padding:2.5rem 1.25rem}}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--text-color);letter-spacing:-.01em;margin-top:2rem;margin-bottom:.75rem;font-weight:700;line-height:1.25}h1{text-transform:uppercase;border-bottom:2px solid var(--border-color);margin-top:0;padding-bottom:.5rem;font-size:1.8rem}h2{text-transform:uppercase;border-bottom:1px solid var(--border-color);margin-top:2.5rem;padding-bottom:.25rem;font-size:1.2rem}h3{font-size:1.05rem;font-weight:700}p{margin-top:0;margin-bottom:1.25rem;font-size:.95rem}a{color:var(--text-color);font-weight:700;text-decoration:underline}a:hover{background-color:var(--text-color);color:var(--bg-color)}em,i{font-style:normal;font-weight:700}hr{border:0;border-top:1px solid var(--border-color);margin:2.5rem 0}.site-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:3.5rem;padding-bottom:1.5rem;display:flex}.site-title{font-family:var(--font-sans);text-transform:uppercase;margin:0;font-size:1.2rem;font-weight:800}.site-title a{text-decoration:none}.site-title a:hover{color:var(--text-color);background-color:#0000}.site-nav{gap:1.5rem;font-size:.9rem;font-weight:700;display:flex}.site-nav a{text-decoration:none}.site-nav a.active{background-color:var(--text-color);color:var(--bg-color);padding:.1rem .4rem}.site-nav a:hover{background-color:var(--text-color);color:var(--bg-color)}.theme-toggle{border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;background:0 0;outline:none;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;font-size:1rem;display:flex;position:absolute;top:1.5rem;right:2rem}.theme-toggle:hover{background-color:var(--text-color);color:var(--bg-color)}.bio-intro p{font-size:1.03rem;line-height:1.6}ul,ol{margin-bottom:1.5rem;padding-left:1.25rem}li{margin-bottom:.5rem}.home-section{margin-top:3rem}.section-title{font-family:var(--font-sans);text-transform:uppercase;color:var(--text-muted);margin-bottom:1.25rem;font-size:.75rem;font-weight:700;display:block}.year-group{margin-top:1.5rem;margin-bottom:2.5rem}.year-title{font-family:var(--font-sans);border-bottom:1px dashed var(--border-color);color:var(--text-color);margin-top:0;margin-bottom:1rem;padding-bottom:.25rem;font-size:1.15rem;font-weight:800}.essays-list{margin:0;padding:0;list-style:none}.essay-item{border:1px solid var(--border-color);margin-bottom:1.5rem;padding:1.25rem}.essay-header{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.5rem;display:flex}.essay-title{font-family:var(--font-sans);margin:0;font-size:1.05rem;font-weight:700}.essay-title a{text-decoration:none}.essay-title a:hover{color:var(--text-color);background-color:#0000;text-decoration:underline}.date-tag{font-family:var(--font-sans);color:var(--text-muted);white-space:nowrap;font-size:.85rem}.essay-desc{color:var(--text-muted);margin-top:.25rem;margin-bottom:0;font-size:.9rem}.resume-document{color:var(--text-color);text-align:left;font-family:Calibri,Arial,Helvetica Neue,Helvetica,sans-serif!important;line-height:1.4!important}.resume-document h1,.resume-document h2,.resume-document h3,.resume-document h4,.resume-document span,.resume-document p,.resume-document li,.resume-document a,.resume-document div,.resume-document strong{font-family:Calibri,Arial,Helvetica Neue,Helvetica,sans-serif!important}.resume-header{text-align:center;margin-bottom:1.5rem;border-bottom:none!important;padding-bottom:0!important}.resume-name{margin-bottom:.2rem;font-size:1.85rem;font-weight:700;text-transform:none!important;letter-spacing:normal!important;border-bottom:none!important;padding-bottom:0!important}.resume-contact{flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:.95rem;display:flex;color:var(--text-color)!important;gap:0!important}.resume-contact span{align-items:center;display:inline-flex}.resume-contact span:not(:last-child):after{content:"  |  ";white-space:pre;color:var(--text-muted);margin-left:.6rem;margin-right:.6rem}.resume-contact a{color:var(--text-color)!important;font-weight:400!important;text-decoration:none!important}.resume-contact a:hover{color:var(--text-color)!important;background-color:#0000!important;text-decoration:underline!important}.resume-section{margin-bottom:1.75rem}.resume-section-title{text-transform:uppercase;margin-top:1.5rem;margin-bottom:.75rem;padding-bottom:.15rem;font-size:1.05rem;font-weight:700;border-bottom:1px solid var(--text-color)!important;color:var(--text-color)!important}.resume-entry{margin-bottom:1.25rem;background:0 0!important;border:none!important;padding:0!important}.resume-entry-company-header{justify-content:space-between;align-items:baseline;margin-bottom:.3rem;display:flex}.resume-entry-company-name{font-size:1.05rem;font-weight:700;color:var(--text-color)!important;margin:0!important}.resume-entry-company-location{color:var(--text-muted);font-size:.9rem;font-weight:400}.resume-role-entry{margin-bottom:.75rem}.resume-entry-header{justify-content:space-between;align-items:baseline;margin-bottom:.2rem;display:flex}.resume-role-title{font-size:.95rem;font-weight:700;color:var(--text-color)!important;margin:0!important}.resume-entry-date{color:var(--text-muted);font-size:.9rem;font-weight:400}.resume-entry-bullets{margin-top:.25rem;margin-bottom:0;padding-left:1.25rem;font-size:.92rem;list-style-type:disc!important}.resume-entry-bullets li{margin-bottom:.25rem;color:var(--text-color)!important}.resume-skills-grid{gap:.4rem;font-size:.92rem;display:grid}.resume-entry-title{font-size:1.05rem;font-weight:700;margin:0!important}.resume-entry-company{font-weight:700}.resume-entry-scholarship{color:var(--text-muted);font-weight:400}.resume-actions{justify-content:center;gap:1rem;margin-top:2rem;margin-bottom:2rem;display:flex}.btn{font-family:var(--font-sans);cursor:pointer;background-color:var(--bg-color);color:var(--text-color);border:1px solid var(--border-color);align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--text-color);border:1px solid var(--border-color);color:var(--bg-color)!important}.btn-primary:hover{background-color:var(--bg-color);color:var(--text-color)!important}.btn-secondary:hover{background-color:var(--text-color);color:var(--bg-color)}code{font-family:var(--font-sans);background-color:var(--code-bg);border:1px solid var(--border-color);padding:.15rem .3rem;font-size:.9em}pre{background-color:var(--code-bg);border:1px solid var(--border-color);margin:1.5rem 0;padding:1.25rem;overflow-x:auto}pre code{background-color:#0000;border:none;padding:0}blockquote{border-left:4px solid var(--border-color);background-color:var(--code-bg);color:var(--text-muted);border:1px solid var(--border-color);border-left:4px solid var(--border-color);margin:1.5rem 0;padding:1rem 1.25rem;font-style:normal}.site-footer{border-top:1px solid var(--border-color);font-family:var(--font-sans);color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:5rem;padding-top:2rem;font-size:.85rem;display:flex}@media print{body{color:#000!important;background-color:#fff!important;font-size:10pt!important;line-height:1.4!important}.container{border:none!important;max-width:100%!important;padding:0!important}.theme-toggle,.site-header,.site-footer,.resume-actions{display:none!important}.resume-section-title{color:#000!important;border-bottom:1px solid #000!important;margin-top:1.25rem!important;margin-bottom:.5rem!important}.resume-entry{page-break-inside:avoid;background:0 0!important;border:none!important;margin-bottom:1rem!important;padding:0!important}.resume-entry-bullets{font-size:9.5pt!important}a{color:#000!important;text-decoration:none!important}}
