:root{--bg:#f7f7f5;--bg-elevated:#fff;--text-main:#16181f;--text-muted:#52565f;--text-faint:#90939c;--border-flat:#16181f17;--accent:#96681e;--shadow-card:0 1px 2px #14141e0a, 0 8px 24px -12px #14141e1f;--toggle-chassis-bg:#e7e7ea;--toggle-chassis-active:#16181f;--toggle-slider-bg:#fff;--font-display:"JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;--font-body:"Inter", -apple-system, system-ui, sans-serif;--space-unit:1.6rem;--radius-pill:100px;--radius-card:10px}html.dark{--bg:#0a0b0e;--bg-elevated:#14151a;--text-main:#f1f2f5;--text-muted:#a2a5b0;--text-faint:#686c77;--border-flat:#ffffff17;--accent:#d9a552;--shadow-card:0 1px 2px #0000004d, 0 10px 30px -12px #0000008c;--toggle-chassis-bg:#2a2a2e;--toggle-chassis-active:#f1f2f5;--toggle-slider-bg:#0a0b0e}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background-color:var(--bg);color:var(--text-main);scroll-behavior:smooth;font-size:18px;transition:background-color .3s cubic-bezier(.25,1,.5,1),color .3s}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.7}.topbar{z-index:100;background-color:#0000;width:100%}.topbar-inner{justify-content:space-between;align-items:center;max-width:760px;margin:0 auto;padding:1.8rem 1.5rem 0;display:flex}.brand{color:var(--text-main);align-items:center;gap:.6rem;text-decoration:none;display:flex}.brand-name{font-family:var(--font-display);font-size:1rem;font-weight:600}.document-container{max-width:760px;padding:calc(var(--space-unit) * 2) 1.5rem var(--space-unit);margin:0 auto}.hero{margin-bottom:3.5rem}.hero-eyebrow{font-family:var(--font-display);color:var(--text-faint);margin-bottom:.6rem;font-size:.85rem}.hero-name{font-family:var(--font-display);letter-spacing:.04em;margin-bottom:.6rem;font-size:clamp(1.9rem,5vw,2.6rem);font-weight:700}.hero-title{color:var(--text-muted);margin-bottom:.4rem;font-size:1.3rem}.hero-tagline{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin-bottom:1.2rem;font-size:.8rem}.meta-row{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.meta-chip{font-family:var(--font-display);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-flat);border-radius:var(--radius-pill);padding:.3rem .75rem;font-size:.8rem}.meta-chip-live{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 12%, var(--bg-elevated))}.quicknav{flex-wrap:wrap;gap:.5rem;display:flex}.quicknav-pill{font-family:var(--font-display);color:var(--text-faint);border:1px solid var(--border-flat);border-radius:var(--radius-pill);padding:.3rem .85rem;font-size:.8rem;text-decoration:none;transition:color .15s,border-color .15s}.quicknav-pill:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.section-heading{font-family:var(--font-display);color:var(--text-faint);border-bottom:1px solid var(--border-flat);margin-bottom:1.5rem;padding-bottom:.6rem;font-size:.95rem;font-weight:600}.doc-section{margin-bottom:3.5rem}.doc-paragraph{color:var(--text-muted);margin-bottom:1.1rem;font-size:1.05rem}.skill-group{margin-bottom:2rem}.skill-group:last-child{margin-bottom:0}.skill-group-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin-bottom:.9rem;font-size:.78rem}.skill-grid{flex-wrap:wrap;gap:.7rem;display:flex}.skill-card{background:var(--bg-elevated);border:1px solid var(--border-flat);border-radius:var(--radius-card);color:var(--text-main);align-items:center;gap:.55rem;padding:.55rem .9rem;font-size:.92rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.skill-card:hover{border-color:color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:var(--shadow-card);transform:translateY(-1px)}.skill-icon{object-fit:contain;flex-shrink:0;width:20px;height:20px}.skill-name{white-space:nowrap;font-weight:500}.board{flex-direction:column;gap:3.5rem;margin-bottom:3.5rem;display:flex}.log-group{flex-direction:column;display:flex}.log-entry{border-bottom:1px solid var(--border-flat);margin-bottom:1.2rem;padding-bottom:1.2rem}.log-entry:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.log-row{align-items:baseline;gap:.6rem;display:flex}.log-title{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:1.02rem;font-weight:600;overflow:hidden}.log-sep{color:var(--text-faint);font-weight:400}.log-fill{border-bottom:1px dotted var(--border-flat);flex:1;min-width:8px;margin-bottom:5px}.log-date{font-family:var(--font-display);color:var(--text-faint);white-space:nowrap;font-size:.8rem}.log-tag{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.03em;border-radius:var(--radius-pill);white-space:nowrap;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--bg-elevated));padding:.15rem .55rem;font-size:.7rem}.log-sub{color:var(--text-muted);margin-top:.2rem;font-size:.95rem}.log-desc{color:var(--text-muted);margin-top:.4rem;font-size:.95rem}.log-group+.log-group{margin-top:2.8rem}.project-grid{flex-direction:column;gap:.9rem;display:flex}.project-card{background:var(--bg-elevated);border:1px solid var(--border-flat);border-radius:var(--radius-card);padding:1rem 1.1rem;transition:border-color .15s,box-shadow .15s;display:block}.project-card:hover{border-color:color-mix(in srgb, var(--accent) 30%, transparent);box-shadow:var(--shadow-card)}.project-card:hover .project-title{color:var(--accent)}.project-head{justify-content:space-between;align-items:baseline;gap:.6rem;margin-bottom:.3rem;display:flex}.project-title{color:var(--text-main);font-size:1.02rem;font-weight:600;transition:color .15s}.project-kind{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.03em;color:var(--text-faint);background:var(--bg);border:1px solid var(--border-flat);border-radius:var(--radius-pill);white-space:nowrap;padding:.15rem .55rem;font-size:.7rem}.project-company{color:var(--text-faint);margin-bottom:.4rem;font-size:.9rem}.project-desc{color:var(--text-muted);margin-bottom:.6rem;font-size:.95rem}.chip-row{flex-wrap:wrap;gap:.4rem;display:flex}.chip{font-family:var(--font-display);border-radius:var(--radius-pill);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--bg-elevated));padding:.15rem .5rem;font-size:.72rem}.link-row{font-family:var(--font-display);flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.6rem;font-size:.78rem;display:flex}.link-item{color:var(--accent);border-bottom:1px solid #0000;padding-bottom:1px;text-decoration:none;transition:border-color .15s}.link-item:hover{border-bottom-color:var(--accent)}.link-sep{color:var(--text-faint)}.contact-grid{flex-direction:column;gap:.9rem;display:flex}.contact-card{border:1px solid var(--border-flat);border-radius:var(--radius-card);background:var(--bg-elevated);color:inherit;justify-content:space-between;align-items:baseline;gap:.6rem;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s,background-color .15s;display:flex}a.contact-card{cursor:pointer}a.contact-card:hover{border-color:color-mix(in srgb, var(--accent) 40%, transparent);background:color-mix(in srgb, var(--accent) 6%, var(--bg-elevated))}a.contact-card:hover .contact-value{color:var(--accent)}.contact-value{font-family:var(--font-display);color:var(--text-main);font-size:1.02rem;font-weight:600}.switch-chassis{background-color:var(--toggle-chassis-bg);cursor:pointer;border:none;border-radius:100px;flex-shrink:0;width:46px;height:26px;padding:0;transition:background-color .25s;position:relative}.switch-chassis[aria-checked=true]{background-color:var(--toggle-chassis-active)}.switch-slider{background-color:var(--toggle-slider-bg);border-radius:50%;width:22px;height:22px;transition:transform .25s cubic-bezier(.25,1,.5,1),background-color .25s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0000001a,0 1px 2px #0000000d}.switch-slider.is-active{transform:translate(20px)}@media (width<=600px){html{font-size:16px}.topbar-inner{padding-top:1.4rem}.document-container{padding-top:calc(var(--space-unit) * 1.5)}.hero-name{letter-spacing:.02em}.log-row{flex-wrap:wrap}.log-fill{display:none}.log-title{white-space:normal;text-overflow:unset;flex:1 0 100%;overflow:visible}.project-head{flex-direction:column;align-items:flex-start;gap:.3rem}}
