@charset "UTF-8";
:root{--paper:#f5f3ec;--ink:#20211d;--muted:#62655d;--line:#d9dace;--lime:#d4ef72;--blue:#314fd0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}::selection{background:var(--lime)}.shell{max-width:1280px;margin:auto;padding:0 64px}.header{height:112px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;font-size:27px;font-weight:750;letter-spacing:-1.5px;gap:12px}.brand-mark{position:relative;font-size:27px;letter-spacing:-4px;background:var(--ink);color:var(--paper);width:38px;height:38px;line-height:31px;padding-left:8px;border-radius:11px}.brand-mark span{font-size:14px;color:var(--lime);position:absolute;right:6px;bottom:-2px}.brand-dot{color:var(--blue);margin-left:-11px}.header nav{display:flex;gap:36px;font-size:14px}.header nav a:hover,.project-link:hover{color:var(--blue)}nav span{font-size:10px;vertical-align:super;margin-left:4px;color:var(--muted)}.hero{padding:78px 0 86px;display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.eyebrow,.mini-label,.bench-top,.bench-bottom,.project-num,.project-type,.section-note,.about-label{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}.eyebrow{font-size:10px;letter-spacing:.6px;display:flex;align-items:center;gap:9px;line-height:1.7;margin:0 0 27px}.dot{width:6px;height:6px;background:var(--blue);border-radius:100%;display:inline-block;flex-shrink:0}h1{font-size:clamp(44px,4.55vw,62px);font-weight:650;line-height:1.12;letter-spacing:-3.2px;margin:0 0 30px}.underlined{position:relative;z-index:0;white-space:nowrap}.underlined:after{content:"";position:absolute;z-index:-1;left:-3px;right:-5px;height:15px;bottom:3px;background:var(--lime);transform:rotate(-2deg)}.intro{font-size:17px;line-height:1.7;max-width:390px;margin:0 0 30px;color:#56594f}.primary-link{display:inline-flex;gap:35px;align-items:center;padding:16px 20px;background:var(--ink);color:white;border-radius:5px;font-size:14px;font-weight:550;transition:background .2s,transform .2s}.primary-link:hover{background:var(--blue);transform:translateY(-2px)}.primary-link span{font-size:22px;line-height:1}.hero-note{font-size:11px;color:var(--muted);margin:16px 0 0;line-height:1.5}.workbench{height:414px;background:#e8e9df;border:1px solid #dedfd5;border-radius:10px;position:relative;overflow:hidden;background-image:radial-gradient(#cccec3 .8px,transparent .8px);background-size:16px 16px}.bench-top,.bench-bottom{position:absolute;display:flex;justify-content:space-between;left:24px;right:24px;font-size:8px;letter-spacing:.7px;color:#686c60}.bench-top{top:22px}.bench-bottom{bottom:22px;font-size:7px}.floating{position:absolute;border-radius:6px;box-shadow:0 8px 25px #282d1911}.note-code{background:#fafbf6;width:235px;left:32px;top:65px;padding:24px;transform:rotate(-7deg);border:1px solid #dedfd6}.mini-label{font-size:8px;letter-spacing:1px;display:block}.code-art{font:75px/1.4 "SFMono-Regular",Consolas,monospace;color:var(--ink);letter-spacing:-18px;margin-left:-5px}.code-art .slash{color:var(--blue);display:inline-block;transform:rotate(12deg);padding:0 7px}.note-title{display:block;font-size:17px;font-weight:650;letter-spacing:-.5px}.tiny-rule{height:1px;background:var(--line);margin:15px 0 10px}.note-sub{font-size:9px;color:var(--muted)}.note-voice{background:var(--blue);color:#fff;width:220px;right:23px;top:140px;padding:23px;transform:rotate(6deg)}.wave{height:85px;display:flex;gap:5px;align-items:center;justify-content:center}.wave i{height:24px;width:5px;background:#d4e0ff;border-radius:4px}.wave i:nth-child(3n){height:45px}.wave i:nth-child(4n){height:65px;background:var(--lime)}.wave i:nth-child(5n){height:35px}.voice-caption{font-size:11px}.note-evening{bottom:48px;left:59px;background:var(--lime);display:flex;align-items:center;gap:14px;padding:16px 24px;transform:rotate(-3deg);min-width:235px}.little-star{font-size:42px;font-weight:400;line-height:1}.note-evening .mini-label{margin-bottom:7px;font-size:7px}.note-evening .note-title{font-size:15px}.section-heading{display:flex;align-items:center;justify-content:space-between;padding:0 0 25px;border-bottom:1px solid var(--ink)}.section-heading h2{margin:0;font-weight:550;font-size:26px;letter-spacing:-.8px}.section-note{font-size:10px;color:var(--muted)}.project-row{display:grid;grid-template-columns:65px 1fr 190px;gap:25px;padding:37px 0 39px;border-bottom:1px solid var(--line);align-items:start}.project-num{color:var(--muted);font-size:11px;padding-top:4px}.project-type{font-size:10px;color:var(--muted);margin-bottom:13px}h3{font-size:27px;font-weight:600;margin:0 0 13px;letter-spacing:-.8px}.project-main p{max-width:560px;font-size:14px;line-height:1.8;color:#5c6056;margin:0 0 17px}.tags{display:flex;gap:7px;flex-wrap:wrap}.tags span{font-size:10px;border:1px solid var(--line);padding:5px 9px;border-radius:4px;color:#53584b}.project-link{justify-self:end;display:flex;align-items:center;gap:14px;font-size:12px;margin-top:36px;border-bottom:1px solid #acafa0;padding-bottom:8px;white-space:nowrap}.project-link>span[aria-hidden]{font-size:18px}.project-state{display:flex;gap:8px;align-items:center;justify-self:end;font-size:10px;color:var(--muted);margin-top:40px;white-space:nowrap}.project-state .dot{background:#88916d;width:5px;height:5px}.project-subtitle{display:inline-block;margin-left:13px;font-size:13px;letter-spacing:0;color:var(--muted);font-weight:400}details{margin-top:17px;max-width:560px}summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:17px;font-size:11px;color:#3e4731}summary::-webkit-details-marker{display:none}summary span{font-size:18px}details[open] summary span{transform:rotate(45deg)}details p{margin-top:14px!important;font-size:13px!important}.about{padding:65px 0;display:grid;grid-template-columns:1fr 1.6fr;gap:35px;border-bottom:1px solid var(--line)}.about-label{display:flex;align-items:flex-start;gap:16px;font-size:9px;letter-spacing:1px;padding-top:6px}.about-label .little-star{font-size:42px;margin-top:-10px;color:var(--blue)}.about h2{font-size:34px;font-weight:550;letter-spacing:-1.2px;line-height:1.25;margin:0 0 20px}.about p{max-width:480px;line-height:1.8;font-size:14px;color:var(--muted);margin:0}footer{display:flex;justify-content:space-between;align-items:center;padding:30px 0 36px;color:var(--muted);font-size:10px;gap:20px}footer p{margin:0}.footer-brand{font-size:20px;letter-spacing:-1px;font-weight:700;color:var(--ink)}.skip{position:fixed;left:16px;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1400px){.hero{gap:70px}}@media(max-width:1000px){.shell{padding:0 35px}.hero{gap:25px}h1{font-size:47px;letter-spacing:-2.5px}.workbench{height:395px}.note-code{left:15px;width:210px}.note-voice{right:10px;width:195px}.note-evening{left:25px;min-width:220px}.project-row{grid-template-columns:40px 1fr 155px;gap:15px}.project-state{font-size:9px}.intro{font-size:15px}.eyebrow{font-size:8px}}@media(max-width:720px){.shell{padding:0 23px}.header{height:83px}.brand{font-size:24px}.header nav{font-size:11px;gap:20px}.hero{grid-template-columns:1fr;padding:47px 0 48px;gap:35px}.eyebrow{font-size:9px;margin-bottom:22px}h1{font-size:clamp(40px,8.7vw,61px);letter-spacing:-2.4px}.intro{font-size:16px;max-width:470px}.hero-note{font-size:10px}.workbench{height:350px;max-width:500px;width:100%;margin:auto}.note-code{left:32px;top:56px;width:215px;padding:20px}.code-art{font-size:64px}.note-voice{right:25px;top:126px;width:195px;padding:20px}.note-evening{bottom:40px;left:45px;min-width:220px;padding:13px 20px}.bench-top{top:19px}.bench-bottom{bottom:18px}.section-heading{padding-bottom:20px;gap:15px;align-items:flex-end}.section-heading h2{font-size:24px}.section-note{max-width:95px;text-align:right;font-size:8px;line-height:1.6}.project-row{grid-template-columns:28px 1fr;padding:30px 0;gap:13px}.project-main{min-width:0}h3{font-size:24px;overflow-wrap:anywhere}.project-subtitle{display:block;margin:7px 0 0;font-size:12px}.project-main p{font-size:13px}.project-link,.project-state{grid-column:2;justify-self:start;margin-top:2px}.project-link{font-size:12px}.project-state{font-size:10px}.about{grid-template-columns:1fr;padding:42px 0;gap:28px}.about h2{font-size:31px}.about p{font-size:13px}.about-label{align-items:center}.about-label .little-star{margin-top:0;font-size:35px}footer{flex-wrap:wrap;padding:25px 0;font-size:9px}footer p{order:3;width:100%}}@media(max-width:370px){.shell{padding:0 18px}.header nav{gap:12px}.workbench{height:325px}.note-code{left:15px;width:190px}.note-voice{right:12px;width:175px}.note-evening{left:30px;min-width:200px}.bench-bottom{font-size:6px;left:16px;right:16px}.eyebrow{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Theme control and dark palette. */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 10px;margin:-8px 0;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.theme-toggle:hover{border-color:var(--muted)}.theme-toggle:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.header nav{align-items:center;gap:26px}.theme-toggle span{font:inherit;vertical-align:baseline;color:inherit;margin:0}.sun-icon{display:none}.note-evening{color:#20211d}html[data-theme=dark]{--paper:#171b1a;--ink:#edf1e7;--muted:#a5afa6;--line:#343d37;--blue:#93b4ff}html[data-theme=dark] .moon-icon{display:none}html[data-theme=dark] .sun-icon{display:block}html[data-theme=dark] .brand-mark{background:#edf1e7;color:#171b1a}html[data-theme=dark] .brand-mark span{color:#4a631e}html[data-theme=dark] .underlined:after{background:#466020}html[data-theme=dark] .intro,html[data-theme=dark] .project-main p{color:#adb8ad}html[data-theme=dark] .primary-link{background:#d4ef72;color:#20211d}html[data-theme=dark] .primary-link:hover{background:#e0fa8b}html[data-theme=dark] .workbench{background-color:#242c26;background-image:radial-gradient(#465142 .8px,transparent .8px);border-color:#394438}html[data-theme=dark] .bench-top,html[data-theme=dark] .bench-bottom{color:#aab7a3}html[data-theme=dark] .note-code{background:#303b31;border-color:#4b5847}html[data-theme=dark] .note-voice{background:#3658d7}html[data-theme=dark] .tags span{color:#bcc6b9}html[data-theme=dark] summary{color:#c9dcac}html[data-theme=dark] .project-link{border-color:#697960}html[data-theme=dark] .skip{background:#303b31;color:#edf1e7}html[data-theme=dark] ::selection{background:#466020;color:#fff}@media(max-width:720px){.header nav{gap:16px}.theme-toggle{padding:7px}.theme-toggle span{display:none}}@media(max-width:370px){.header nav{gap:10px}}
html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}
@media(max-width:420px){.header nav a[href="#about"]{display:none}.header nav{gap:20px}.header{gap:14px}}
