:root{--paper:#fbfcfe;--ground:#edf0f5;--ink:#202632;--muted:#596373;--accent:#2448d8;--line:#d6dce6;--soft:#f0f3f8;--blue-soft:#e8edff;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display:var(--sans);--mono:ui-monospace, SFMono-Regular, Consolas, monospace;--section-space:48px;--entry-space:28px;font-family:var(--sans);font-variation-settings:"FLAR" 20, "VOLM" 5, "slnt" 0;color:var(--ink);background:var(--ground);color-scheme:light;font-synthesis:none;scrollbar-color:#9da9c2 var(--ground);scroll-behavior:smooth;scroll-padding-top:28px}*,:before,:after{box-sizing:border-box;font-style:normal}body{-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.65}button,input,textarea,select{font:inherit}::selection{background:var(--accent);color:#fff}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px;transition:color .16s ease-out}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}main:focus{outline:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}h1,h2{font-family:var(--display);letter-spacing:-.03em;font-weight:600;line-height:1.12}h1{font-size:clamp(3rem,6vw,4.8rem)}h2{font-size:38px}h3{letter-spacing:-.02em;font-weight:500;line-height:1.3}em{font-weight:600}.site-shell{grid-template-columns:185px minmax(0,1fr);align-items:start;gap:48px;max-width:1320px;margin:auto;padding:36px 48px;display:grid}.site-header{padding-top:13px;position:sticky;top:36px}.site-name{flex-direction:column;gap:18px;font-size:16px;font-weight:500;line-height:1.35;text-decoration:none;display:flex}.site-mark{width:56px;height:56px;color:var(--accent);font:600 26px/1 var(--sans);letter-spacing:-.04em;justify-content:center;align-items:center;display:flex}.index-description{color:var(--muted);margin-top:15px;font-size:13px;line-height:1.6}.site-header nav{gap:2px;margin-top:42px;display:grid}.site-header nav a{border-left:1px solid #c8d0df;padding:11px 0 11px 17px;font-size:15px;line-height:1.4;text-decoration:none;display:grid;position:relative}.site-header nav a[aria-current=page]{color:var(--accent);border-color:var(--accent)}.site-header nav a[aria-current=page]:before{content:"";background:var(--accent);width:5px;height:5px;position:absolute;top:18px;left:-3px}.nav-description{color:var(--muted);margin-top:3px;font-size:11px}.studio-link{color:var(--muted);align-items:center;gap:7px;min-height:44px;margin-top:44px;font-size:12px;text-decoration:none;display:inline-flex}.notebook-pages{background:var(--paper);border:1px solid var(--line);min-width:0}main{min-height:65vh}.notebook-cover{grid-template-columns:1fr 1fr;padding:52px 42px 0;display:grid;position:relative;overflow:hidden}.cover-title{z-index:1;position:relative}.cover-title h1{letter-spacing:-.04em;font-size:clamp(3.6rem,6.5vw,5.8rem);line-height:1}.cover-title h1 span{color:var(--accent)}.cover-title>p{margin-top:24px;font-size:15px;line-height:1.5}.cover-object{align-self:center;margin:12px -34px 0 -22px;transform:rotate(-4deg)}.cover-object img{width:100%;height:auto;display:block}.cover-introduction{grid-column:1/-1;max-width:540px;padding-block:39px 36px}.cover-introduction>p{font-size:18px;line-height:1.7}.cover-introduction p a{text-decoration-color:#a6b6ec}.text-link{color:var(--accent);align-items:center;gap:10px;min-height:44px;font-size:13px;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.text-link .arrow{flex-shrink:0}.cover-introduction .text-link{margin-top:12px}.spread-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px;display:flex}.spread-heading h2{font-size:31px}.decision-diagram{background:var(--paper);color:var(--ink);margin:0;padding:18px 16px;transform:rotate(1deg)}.decision-diagram figcaption{font-family:var(--mono);color:var(--muted);justify-content:space-between;gap:8px;font-size:9px;display:flex}.decision-diagram figcaption span:last-child{display:none}.workflow{margin:20px auto 17px}.workflow-request{text-align:center;gap:2px;font-size:12px;display:grid}.diagram-label{font-family:var(--mono);color:var(--muted);font-size:10px}.flow-connector{background:#91a2c1;width:1px;height:19px;margin:auto;display:block;position:relative}.flow-connector:after{content:"";border-bottom:1px solid #91a2c1;border-right:1px solid #91a2c1;width:5px;height:5px;position:absolute;bottom:0;left:-2px;transform:rotate(45deg)}.workflow-step{background:var(--paper);border:1px solid #c4cede;gap:2px;padding:9px 12px;transition:background-color .22s ease-out,border-color .22s ease-out;display:grid}.workflow-step strong{font-size:15px;font-weight:500}.workflow-step>span:last-child{color:var(--muted);font-size:12px}.workflow-step.is-active,.workflow-outcomes .is-active{border-color:var(--accent);background:var(--blue-soft)}.is-active .diagram-label{color:var(--accent)}.workflow-branches{justify-content:center;height:25px;display:flex;position:relative}.workflow-branches:before{content:"";background:#91a2c1;width:1px;height:12px;position:absolute}.workflow-branches span{border-top:1px solid #91a2c1;width:25%;margin-top:12px}.workflow-branches span:first-child{border-left:1px solid #91a2c1}.workflow-branches span:last-child{border-right:1px solid #91a2c1}.workflow-outcomes{grid-template-columns:1fr 1fr;gap:8px;display:grid}.workflow-outcomes>div{border:1px solid #c4cede;gap:2px;padding:8px;transition:background-color .22s ease-out,border-color .22s ease-out;display:grid}.workflow-outcomes strong{font-size:12px;font-weight:500}.diagram-controls:not([hidden]){border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;padding-top:8px;display:flex}.diagram-controls>span{color:var(--muted);font-size:10px}.diagram-buttons{gap:1px;display:flex}.diagram-buttons button{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;min-height:44px;padding:5px 7px;font-size:11px}.diagram-buttons button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--blue-soft)}.diagram-explanation{color:var(--muted);min-height:4.8em;margin-top:8px;font-size:12px;line-height:1.6}.projects-spread{padding:var(--section-space) 42px 12px;border-top:1px solid var(--line)}.projects-spread .spread-heading{margin-bottom:16px}.projects-spread .entry-row{padding-block:var(--entry-space)}.projects-spread .project-row .entry-heading{font-family:var(--sans);font-size:21px;font-weight:500}.projects-spread .entry-description{max-width:640px}.writing-spread{padding:var(--section-space) 42px 56px}.entry-list{margin:0;padding:0;list-style:none}.entry-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 90px;gap:22px;padding-block:25px;display:grid}.entry-row:last-child{border-bottom:0}.entry-main{min-width:0}.entry-heading{font-size:22px;font-weight:400;line-height:1.35}.entry-title{text-decoration:none}.entry-title:hover{text-decoration:underline}.entry-description{color:var(--muted);margin-top:10px;font-size:15px}.entry-meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin-top:12px;font-size:10px;display:flex}.entry-row>time{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;padding-top:4px;font-size:10px}.sample-label{color:var(--accent)}.writing-spread .entry-row{grid-template-columns:1fr;gap:15px;padding:0}.writing-spread .entry-heading{font-family:var(--display);letter-spacing:-.025em;font-size:clamp(1.8rem,3vw,2.55rem);font-weight:600;line-height:1.16}.writing-spread .entry-description{max-width:550px;margin-top:19px;font-size:15px}.writing-spread .entry-row>time{text-align:left}.notes-spread{background:var(--soft);border-block:1px solid var(--line);padding:var(--section-space) 42px;grid-template-columns:165px minmax(0,1fr);gap:32px;display:grid}.notes-introduction h2{font-size:35px}.notes-introduction>p{color:var(--muted);margin-top:16px;font-size:12px}.notes-introduction>.text-link{margin-top:12px;font-size:12px}.notes-spread .entry-row{grid-template-columns:1fr;gap:12px;padding-block:24px}.notes-spread .entry-row:first-child{padding-top:0}.notes-spread .entry-heading{font-size:16px;font-weight:500}.notes-spread .entry-description{margin-top:6px;font-size:12px}.notes-spread .entry-meta{display:none}.notes-spread .entry-row>time{text-align:left;font-size:10px}.site-footer{color:var(--muted);justify-content:flex-end;align-items:center;gap:20px;padding:32px 42px;font-size:11px;display:flex}.site-footer[hidden]{display:none}.site-footer a{align-items:center;gap:8px;min-height:44px;text-decoration:none;display:flex}.page-intro{padding:52px 42px 35px}.page-intro h1{font-size:clamp(3rem,6vw,4.7rem)}.page-intro>p{color:var(--muted);max-width:540px;margin-top:22px;font-size:18px}main>.entry-list{padding:0 42px 30px}.project-row{grid-template-columns:1fr;padding-block:29px}.project-row .entry-heading{font-family:var(--display);font-size:31px;font-weight:600}.year-section{margin-bottom:30px;padding:0 42px}.year-heading{font-family:var(--sans);letter-spacing:0;border-bottom:1px solid var(--ink);padding-bottom:13px;font-size:12px}.sample-notice{color:var(--muted);padding:15px 42px;font-size:12px}.article{padding:0 42px 25px}.article-header{padding-top:30px;padding-bottom:30px}.back-link{color:var(--accent);align-items:center;gap:7px;min-height:44px;margin-bottom:26px;font-size:12px;text-decoration:none;display:inline-flex}.back-arrow{display:flex;transform:rotate(180deg)}.article-header h1{font-size:clamp(2.7rem,4.7vw,4rem)}.article-description{color:var(--muted);margin-top:24px;font-size:18px}.article-meta{color:var(--muted);flex-wrap:wrap;gap:15px;margin-top:24px;font-size:11px;display:flex}.article-tags{color:var(--muted);margin-top:12px;font-size:11px}.project-meta{border-top:1px solid var(--line);flex-wrap:wrap;gap:15px 28px;margin-block:23px 0;padding-top:23px;font-size:12px;display:flex}.project-meta>div{max-width:100%}.project-meta dt{color:var(--ink);font-weight:500}.project-meta dd{color:var(--muted);overflow-wrap:anywhere;margin:2px 0 0}.article-body{grid-template-columns:minmax(0,1fr);display:grid}.contents{background:var(--soft);margin-bottom:30px;padding:20px 24px}.contents h2{font-family:var(--sans);letter-spacing:0;font-size:12px;font-weight:500}.contents ul{gap:5px;margin:10px 0 0;padding:0;list-style:none;display:grid}.contents a{color:var(--muted);font-size:12px}.prose{overflow-wrap:break-word;max-width:67ch;font-size:18px;line-height:1.85}.prose img{max-width:100%;height:auto;display:block}.prose p,.prose ul,.prose ol,.prose dl{margin-block:0 1.3em}.prose h2{font-family:var(--display);margin-block:1.7em .7em;font-size:32px;line-height:1.2}.prose h3{margin-block:1.6em .7em;font-size:21px}.prose>:first-child{margin-top:0}.prose li{margin-bottom:.4em;padding-left:4px}.prose a{color:var(--accent)}.prose pre{font-family:var(--mono);tab-size:2;margin-block:28px;padding:22px;font-size:12px;line-height:1.75;overflow:auto;background:var(--soft)!important}.prose code{font-family:var(--mono);font-size:.82em}.prose pre code{font-size:inherit}.prose :not(pre)>code{background:var(--soft);padding:.15em .3em}.prose table{border-collapse:collapse;max-width:100%;margin-block:25px;font-size:13px;line-height:1.6;display:block;overflow-x:auto}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;min-width:110px;padding:12px 16px 12px 0}.prose blockquote{border-left:1px solid var(--accent);color:var(--muted);margin-inline:0;padding-left:20px}.article-footer,.project-source{border-top:1px solid var(--line);margin-top:32px;padding-top:20px}.project-source h2{font-family:var(--sans);letter-spacing:0;font-size:15px}.project-source p{color:var(--accent);margin-top:12px;font-size:13px}.about-prose{padding:0 42px 25px}.about-prose .page-intro{padding-inline:0}.empty-state{color:var(--muted);margin:25px 42px;font-size:15px}.skip-link{z-index:30;background:var(--accent);color:#fff;padding:8px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{color:#fff;transform:none}.reading-progress{z-index:20;pointer-events:none;height:2px;position:fixed;inset:0 0 auto}.reading-progress span{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}@media (width<=1100px){.site-shell{grid-template-columns:150px minmax(0,1fr);gap:30px;padding-inline:28px}.notebook-cover,.projects-spread{padding-inline:32px}.cover-title h1{font-size:5rem}.decision-diagram{width:100%;max-width:440px;margin-inline:auto;transform:rotate(1deg)}.workflow{max-width:320px}.diagram-explanation{min-height:3.2em}.notes-spread{grid-template-columns:130px minmax(0,1fr);gap:24px;padding-inline:32px}}@media (width<=760px){.site-shell{padding:0 20px 24px;display:block}.site-header{padding:22px 0 17px;position:static}.site-name{flex-direction:row;align-items:center;gap:12px;font-size:14px}.site-mark{width:40px;height:40px;padding-bottom:0;font-size:22px}.site-name-label br{display:none}.site-name-label{word-spacing:2px}.index-description,.nav-description,.studio-link{display:none}.site-header nav{flex-wrap:wrap;gap:0 21px;margin-top:16px;display:flex}.site-header nav a{border:0;align-items:center;min-height:44px;padding:4px 0;font-size:13px;display:flex}.site-header nav a[aria-current=page]{text-underline-offset:7px;text-decoration:underline}.site-header nav a[aria-current=page]:before{display:none}.notebook-cover{padding:32px 24px 0}.cover-title h1{font-size:clamp(3.2rem,16vw,4.1rem)}.cover-title>p{margin-top:20px;font-size:12px}.notebook-cover{grid-template-columns:1fr}.cover-object{width:85%;max-width:300px;margin:10px 0 -10px auto}.cover-introduction{padding-block:28px}.cover-introduction>p{font-size:16px}.spread-heading h2{font-size:28px}.spread-heading .text-link{font-size:11px}.decision-diagram{transform:none}.workflow-step strong{font-size:14px}.workflow-step>span:last-child,.workflow-request,.workflow-outcomes strong{font-size:11px}.diagram-label{font-size:10px}.diagram-explanation{min-height:4.8em;font-size:11px}.diagram-controls>span{font-size:10px}.diagram-buttons button{min-width:44px;font-size:11px}.projects-spread{padding:var(--section-space) 24px 12px}.projects-spread .project-row .entry-heading{font-size:20px}.writing-spread{padding:var(--section-space) 24px 44px}.writing-spread .entry-heading{font-size:30px}.notes-spread{padding:var(--section-space) 24px;grid-template-columns:1fr;gap:28px}.notes-introduction h2{font-size:34px}.notes-introduction h2 br{display:none}.notes-introduction>p{margin-top:12px}.notes-introduction>.text-link{margin-top:4px}.notes-spread .entry-heading{font-size:18px}.notes-spread .entry-description{font-size:14px}.site-footer{padding:28px 24px}.page-intro{padding:35px 24px 25px}.page-intro h1{font-size:53px}.page-intro>p{font-size:16px}main>.entry-list{padding-inline:24px}.entry-row{grid-template-columns:1fr;gap:11px;padding-block:23px}.entry-row>time{text-align:left}.entry-heading{font-size:21px}.entry-description{font-size:14px}.project-row .entry-heading{font-size:31px}.year-section,.article{padding-inline:24px}.article-header h1{font-size:40px}.article-description{font-size:16px}.back-link{margin-bottom:17px}.project-meta{gap:15px 22px}.contents{padding:18px}.prose{font-size:17px}.prose h2{font-size:29px}.prose pre{padding:16px;font-size:11px}.about-prose,.sample-notice{padding-inline:24px}}@media (width<=380px){.site-shell{padding-inline:12px}.site-header nav{column-gap:18px}.notebook-cover{grid-template-columns:1fr}.cover-title h1{font-size:52px}.cover-object{max-width:260px;margin:10px auto -10px}.diagram-controls:not([hidden]){display:block}.diagram-controls>span{margin-bottom:3px;display:block}.diagram-explanation{min-height:6.4em}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{:root{--paper:white;--ink:black}.site-shell{padding:0;display:block}.site-header,.site-footer,.reading-progress,.diagram-controls,.back-link{display:none!important}.notebook-pages{border:0}.article,.about-prose{padding:0}.prose{max-width:none;font-size:11pt}}.personal-spread{padding:var(--section-space) 42px}.personal-spread h2{font-size:31px}.hobby-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:32px 0 0;padding:0;list-style:none;display:grid}.hobby-list li{align-items:center;gap:16px;min-width:0;display:flex}.hobby-icon{width:48px;height:48px;color:var(--accent);flex:0 0 48px;display:block}.hobby-list span{font-size:15px;line-height:1.5}.reading-spread{padding:8px 42px 48px}.reading-spread .spread-heading{border-top:1px solid var(--line);align-items:baseline;margin-bottom:40px;padding-top:40px}.reading-spread .spread-heading>p{color:var(--muted);font-size:12px}.reading-shelf{border-bottom:8px solid #d6dce6;justify-content:center;align-items:flex-end;gap:30px;margin:0;padding:12px 24px 0;list-style:none;display:flex}.reading-shelf:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.reading-book{--book-color:#2448d8;--book-text:#fff;--book-edge:#1738b0;width:165px;max-width:30%;position:relative}.book-tone-1{--book-color:#e2e7f0;--book-text:#202632;--book-edge:#bac4d5}.book-tone-2{--book-color:#253146;--book-text:#fff;--book-edge:#121e31}.book-cover{aspect-ratio:.68;background:var(--book-color);color:var(--book-text);border:1px solid var(--book-edge);transform-origin:bottom;flex-direction:column;justify-content:flex-end;gap:18px;padding:18px 17px 22px;text-decoration:none;transition:transform .22s ease-out;display:flex;position:relative}.book-cover:before{content:"";opacity:.25;border-right:1px solid;width:4px;height:calc(100% - 14px);position:absolute;inset:8px 0 auto auto}.book-cover.has-cover-image{background:0 0;border:0;padding:0;display:block}.book-cover.has-cover-image:before{content:none}.book-cover.has-cover-image img{object-fit:contain;object-position:center bottom;width:100%;height:100%;display:block;position:absolute;inset:0}a.book-cover:hover,a.book-cover:focus-visible{color:var(--book-text);transform:translateY(-8px)rotate(-2deg)}.book-title{font-family:var(--display);letter-spacing:-.025em;overflow-wrap:anywhere;font-size:29px;line-height:1.13}.book-title.long-book-title{font-size:20px;line-height:1.2}.book-author{font-size:11px;line-height:1.4}.book-status{border-bottom:1px solid;padding-bottom:3px;font-size:10px;position:absolute;top:18px;left:22px}.book-note{color:var(--muted);padding-top:16px;font-size:12px;position:absolute;top:100%;left:0;right:0}.reading-shelf:has(.book-note){margin-bottom:90px}.elsewhere-spread{padding:32px 42px 40px}.elsewhere-spread .spread-heading{margin-bottom:17px}.social-links ul{grid-template-columns:1fr 1fr;column-gap:30px;margin:0;padding:0;list-style:none;display:grid}.social-links li{border-top:1px solid var(--line);min-width:0}.social-links a{grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:12px;min-height:56px;padding:24px 0;text-decoration:none;display:grid}.social-icon{width:18px;height:18px;display:block}.social-name{grid-column:2;font-size:15px}.social-links .arrow{grid-column:3}.about-personal{border-top:1px solid var(--line);margin-block:34px;padding-top:28px}.about-personal h2{font-size:32px}.about-personal p{color:var(--muted);margin-top:15px;font-size:17px}@media (width<=1100px){.personal-spread{padding-inline:32px}.hobby-list{gap:20px}.hobby-list li{flex-direction:column;align-items:flex-start;gap:12px}.reading-spread,.elsewhere-spread{padding-inline:32px}.reading-shelf{gap:18px;padding-inline:6px}.book-cover{padding-inline:14px 12px}.book-title{font-size:25px}.book-status{left:14px}}@media (width<=760px){:root{--section-space:36px;--entry-space:24px}.personal-spread{padding:var(--section-space) 24px}.hobby-list{gap:16px;margin-top:28px}.hobby-list span{font-size:14px}.reading-spread{padding:4px 24px 36px}.reading-spread .spread-heading{margin-bottom:32px;padding-top:32px;display:block}.reading-spread .spread-heading>p{margin-top:12px}.reading-shelf{scroll-snap-type:x proximity;justify-content:flex-start;gap:12px;padding:10px 4px 0;overflow-x:auto}.reading-book{scroll-snap-align:start;flex:0 0 130px;width:130px;max-width:none}.book-cover{gap:14px;padding-block:17px 20px}.book-title{font-size:26px}.book-title.long-book-title{font-size:16px}.book-status{top:15px}.book-note{position:static}.reading-shelf:has(.book-note){align-items:start;margin-bottom:0;padding-bottom:12px}.elsewhere-spread{padding:28px 24px 32px}.elsewhere-spread .spread-heading h2{font-size:29px}.social-links ul{column-gap:20px}.social-links a{padding-block:20px}.social-name{font-size:14px}}@media (prefers-reduced-motion:reduce){.book-cover{transition:none}a.book-cover:hover,a.book-cover:focus-visible{transform:none}}
