@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:var(--font-mono);--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--radius-xs:.125rem;--radius-sm:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:var(--font-display);--font-body:var(--font-body)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}}:root{--bg:#fff;--surface:#fff;--surface-sunken:oklch(95% 0 0);--stage:oklch(93% 0 0);--fg:oklch(17% 0 0);--fg-2:oklch(38% 0 0);--muted:oklch(52% 0 0);--meta:oklch(50% 0 0);--border:oklch(89.8% 0 0);--border-soft:oklch(94.5% 0 0);--sep:var(--muted)}@supports (color:color-mix(in lab,red,red)){:root{--sep:color-mix(in oklab, var(--muted), white 45%)}}:root{--accent:oklch(17% 0 0);--accent-on:#fff;--accent-hover:var(--accent)}@supports (color:color-mix(in lab,red,red)){:root{--accent-hover:color-mix(in oklab, var(--accent), white 16%)}}:root{--accent-active:var(--accent)}@supports (color:color-mix(in lab,red,red)){:root{--accent-active:color-mix(in oklab, var(--accent), white 6%)}}:root{--cal-0:oklch(95.5% .014 128);--cal-1:oklch(87% .085 124);--cal-2:oklch(75% .125 118);--cal-3:oklch(58% .125 140);--cal-4:oklch(40% .1 152);--font-display:"Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-body:Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-xs:11px;--text-sm:12.5px;--text-base:15px;--text-lg:17px;--text-xl:22px;--leading-body:1.68;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-20:80px;--section-y:60px;--radius-xs:2px;--radius-sm:4px;--motion-fast:.16s;--motion-base:.26s;--ease-standard:cubic-bezier(.22, 1, .36, 1);--container-max:1080px;--gutter:40px;--bar-h:58px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body{height:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--text-base);font-weight:400;line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4,p,ul,ol,figure,dl,dd,dt{margin:0}ul,ol{padding:0;list-style:none}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}::selection{background:var(--fg);color:var(--bg)}:where(a,button,[tabindex]):focus-visible{outline:2px solid var(--fg);outline-offset:3px;border-radius:var(--radius-xs)}.wrap{width:100%;max-width:var(--container-max);padding-inline:var(--gutter);margin-inline:auto}.skip{left:var(--gutter);z-index:60;background:var(--fg);color:var(--bg);font-size:var(--text-sm);border-radius:var(--radius-sm);padding:9px 14px;position:absolute;top:8px;transform:translateY(-200%)}.skip:focus{transform:none}#root{flex-direction:column;min-height:100%;display:flex}.todo{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);border-bottom:1px dashed var(--border);font-size:.92em}.bar{z-index:50;height:var(--bar-h);background:var(--bg);position:fixed;inset:0 0 auto}@supports (color:color-mix(in lab,red,red)){.bar{background:color-mix(in oklab,var(--bg),transparent 12%)}}.bar{-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--border-soft)}.bar-in{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;height:100%;max-width:var(--container-max);padding-inline:var(--gutter);margin-inline:auto;display:flex}.bar-id{min-width:0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta);align-items:baseline;gap:12px;display:flex}.bar-id b{font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);letter-spacing:.03em;text-transform:uppercase;color:var(--fg);white-space:nowrap}.bar-id em{font-family:var(--font-mono);font-style:normal;font-size:var(--text-xs);color:var(--meta);white-space:nowrap}.bar-id em:before{content:"";vertical-align:middle;background:var(--border);width:16px;height:1px;margin-right:12px;display:inline-block}.bar-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.btn{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);min-height:40px;color:var(--accent-on);font-size:var(--text-sm);letter-spacing:.01em;cursor:pointer;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);align-items:center;gap:8px;padding:0 14px;font-weight:500;display:inline-flex}.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn:active{background:var(--accent-active);border-color:var(--accent-active)}.btn svg{flex:none}.switch{border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:2px;padding:3px;display:flex}.switch button{border-radius:var(--radius-xs);min-height:32px;color:var(--muted);font-size:var(--text-sm);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard);background:0 0;border:0;align-items:center;gap:6px;padding:0 11px;font-weight:500;display:inline-flex}.switch button:hover{color:var(--fg)}.switch button[aria-pressed=true]{background:var(--fg);color:var(--bg)}@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;transition:opacity .65s var(--ease-standard),transform .65s var(--ease-standard);transition-delay:var(--d,0s);transform:translateY(12px)}.reveal.in{opacity:1;transform:none}.reveal .c{opacity:0}.reveal.in .c{animation:cell-in .44s var(--ease-standard) both;animation-delay:calc(var(--c,0) * 15ms + 60ms)}}@keyframes cell-in{0%{opacity:0;transform:scale(.72)}to{opacity:1;transform:none}}.gh-body{position:relative}.gh-rows{gap:10px;display:flex}.gh-plot{flex:auto;min-width:0;-webkit-mask-image:linear-gradient(90deg,#0000003d 0,#000 3.2% 96.8%,#0000003d 100%);mask-image:linear-gradient(90deg,#0000003d 0,#000 3.2% 96.8%,#0000003d)}.gh-weekdays{gap:var(--gh-gap);flex-direction:column;flex:none;width:24px;padding-top:19px;display:flex}.gh-weekdays span{font-family:var(--font-mono);color:var(--meta);flex:1 1 0;align-items:center;font-size:9px;line-height:1;display:flex}.gh-grid{gap:var(--gh-gap);margin-top:4px;display:flex}.gh-col{gap:var(--gh-gap);flex-direction:column;flex:1 1 0;min-width:0;display:flex}.c{aspect-ratio:1;background:var(--cal-0);width:100%;transition:outline-color var(--motion-fast) var(--ease-standard);outline-offset:1px;border-radius:2px;outline:1.5px solid #0000;display:block}.c.l1{background:var(--cal-1)}.c.l2{background:var(--cal-2)}.c.l3{background:var(--cal-3)}.c.l4{background:var(--cal-4)}.gh-grid .c:hover{outline-color:var(--fg)}.gh-grid .c.l0:hover{background:var(--cal-1)}.gh-legend{align-items:center;gap:6px;display:flex}.gh-legend i{border-radius:2px;width:9px;height:9px;display:block}.gh-tip{z-index:6;border-radius:var(--radius-sm);background:var(--fg);color:var(--bg);font-family:var(--font-mono);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--motion-fast) var(--ease-standard);padding:7px 9px;font-size:11px;line-height:1;position:absolute;top:0;left:0;transform:translate(-50%)}.gh-tip.on{opacity:1}.gh-tip b{font-weight:500}.view-web{padding-top:var(--bar-h);flex:auto}.view-web .hero{padding-top:var(--space-20);container-type:inline-size}.view-web .hero-grid{gap:var(--space-12);grid-template-columns:minmax(0,1fr) 168px;display:grid}.view-web .hero h1{font-family:var(--font-display);letter-spacing:-.045em;text-transform:uppercase;color:var(--fg);font-size:clamp(46px,9.2vw,116px);font-weight:800;line-height:.9}.view-web .hero-role{margin-top:var(--space-5);font-size:var(--text-lg);color:var(--fg-2);letter-spacing:-.005em;font-weight:400}.view-web .hero-role b{color:var(--fg);font-weight:600}.view-web .hero-role-sep{color:var(--sep);padding-inline:8px}.view-web .portrait{aspect-ratio:348/372;object-fit:cover;object-position:top center;border-radius:var(--radius-xs);border:1px solid var(--border);width:168px;height:100%;min-height:260px}.view-web .slogan{margin-top:var(--space-12);letter-spacing:0;white-space:nowrap;color:var(--cal-4);font-family:Kalam,Segoe Script,cursive;font-size:6.36cqw;font-weight:700;line-height:1.05}.view-web .contact{margin-top:var(--space-12);padding-top:var(--space-5);border-top:1px solid var(--border);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg-2);flex-wrap:wrap;gap:8px 10px;display:flex}.view-web .contact li{align-items:center;gap:10px;display:flex}.view-web .contact li+li:before{content:"";background:var(--sep);border-radius:50%;flex:none;width:3px;height:3px}.view-web .contact a{border-bottom:1px solid var(--border);transition:border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard);padding-bottom:1px}.view-web .contact a:hover{color:var(--fg);border-bottom-color:var(--fg)}.view-web .gh{margin-top:var(--space-8);--gh-gap:3px}.view-web .gh-head{justify-content:space-between;align-items:baseline;gap:6px var(--space-6);flex-wrap:wrap;display:flex}.view-web .gh-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--fg)}.view-web .gh-label span{color:var(--sep);padding-inline:8px}.view-web .gh-profile{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted);border-bottom:1px solid var(--border);transition:color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);padding-bottom:1px}.view-web .gh-profile:hover{color:var(--fg);border-bottom-color:var(--fg)}.view-web .gh-stats{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted)}.view-web .gh-stats b{color:var(--fg);font-weight:500}.view-web .gh-stats i{color:var(--sep);padding-inline:7px;font-style:normal}.view-web .gh-body{margin-top:var(--space-5)}.view-web .gh-months{gap:var(--gh-gap);grid-template-columns:repeat(53,minmax(0,1fr));height:15px;display:grid}.view-web .gh-months span{white-space:nowrap;font-family:var(--font-mono);color:var(--meta);font-size:9.5px;line-height:1;overflow:hidden}.view-web .gh-foot{justify-content:space-between;align-items:center;gap:6px var(--space-6);margin-top:var(--space-4);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta);flex-wrap:wrap;padding-left:34px;display:flex}.view-web .sections{padding-top:var(--space-20)}.view-web .sec{gap:var(--space-4) var(--space-8);padding-block:var(--section-y);border-top:1px solid var(--border-soft);grid-template-columns:190px minmax(0,1fr);display:grid}.view-web .sec-rail{align-items:baseline;gap:12px;display:flex}.view-web .sec-num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta)}.view-web .sec-title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.02em;color:var(--fg);font-weight:600;line-height:1.15}.view-web .sec-body{min-width:0}.view-web .lede{color:var(--fg-2);text-wrap:pretty;max-width:62ch}.view-web .rows{flex-direction:column;display:flex}.view-web .row{gap:0 var(--space-4);border-radius:var(--radius-sm);transition:background var(--motion-base) var(--ease-standard);grid-template-columns:38px minmax(0,1fr) 52px;margin-inline:-12px;padding:18px 12px;display:grid;position:relative}.view-web .row+.row:before{content:"";background:var(--border-soft);height:1px;position:absolute;inset:0 12px auto}.view-web .row:hover{background:var(--surface-sunken)}.view-web .row:hover .row-idx{color:var(--fg-2)}.view-web .row-idx{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta);transition:color var(--motion-base) var(--ease-standard);padding-top:4px}.view-web .row-mark{border-radius:var(--radius-sm);width:36px;height:36px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta);transition:color var(--motion-base) var(--ease-standard);justify-content:center;align-self:start;align-items:center;margin-top:-4px;display:flex;overflow:hidden}.view-web .row-mark img{object-fit:contain;width:100%;height:100%}.view-web .row-mark-num{border:1px solid var(--border)}.view-web .row-mark-dark{background:var(--fg)}.view-web .row:hover .row-mark-num{color:var(--fg-2)}.view-web .row-name{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.01em;color:var(--fg);font-weight:600;line-height:1.3}.view-web .row-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.view-web .row-link{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--muted);transition:color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);border-bottom:1px solid #0000}.view-web .row-link:hover{color:var(--fg);border-bottom-color:var(--fg)}.view-web .row-org{font-size:var(--text-sm);color:var(--fg-2);margin-top:2px;font-weight:500}.view-web .row-desc{font-size:var(--text-base);color:var(--fg-2);text-wrap:pretty;max-width:66ch;margin-top:6px}.view-web .row-year{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--meta);text-align:right;padding-top:4px}.view-web .tasks{flex-direction:column;gap:4px;margin-top:10px;display:flex}.view-web .tasks li{font-size:var(--text-base);color:var(--fg-2);text-wrap:pretty;gap:10px;display:flex}.view-web .tasks li:before{content:"";background:var(--sep);flex:none;width:10px;height:1px;margin-top:12px}.view-web .lang-grid{gap:var(--space-4);padding-bottom:var(--space-8);margin-bottom:var(--space-8);border-bottom:1px solid var(--border-soft);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.view-web .lang-grid li{border-top:1px solid var(--border);padding-top:10px}.view-web .lang-grid em{font-family:var(--font-mono);font-style:normal;font-size:var(--text-xs);color:var(--meta);margin-bottom:8px;display:block}.view-web .lang-grid b{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.025em;color:var(--fg);font-weight:600}.view-web .kv{gap:var(--space-4) var(--space-6);grid-template-columns:168px minmax(0,1fr);padding-block:16px;display:grid}.view-web .kv+.kv{border-top:1px solid var(--border-soft)}.view-web .kv dt{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:3px}.view-web .kv dd{font-size:var(--text-base);color:var(--fg-2);flex-wrap:wrap;gap:6px 22px;display:flex}.view-web .kv dd span{white-space:nowrap}.view-web .pairs{flex-direction:column;display:flex}.view-web .pair{gap:var(--space-4) var(--space-6);grid-template-columns:200px minmax(0,1fr);align-items:baseline;padding-block:14px;display:grid}.view-web .pair+.pair{border-top:1px solid var(--border-soft)}.view-web .pair dt{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.01em;color:var(--fg);font-weight:600}.view-web .pair dd{font-size:var(--text-base);color:var(--fg-2)}.view-web .foot{border-top:1px solid var(--border);padding-block:var(--space-8) var(--space-12);justify-content:space-between;align-items:baseline;gap:var(--space-3) var(--space-6);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--meta);flex-wrap:wrap;display:flex}.view-web .foot-links{flex-wrap:wrap;gap:6px 18px;display:flex}.view-web .foot-links a{color:var(--fg-2);border-bottom:1px solid var(--border);transition:color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);padding-bottom:1px}.view-web .foot-links a:hover{color:var(--fg);border-bottom-color:var(--fg)}:root[data-view=pdf]{--bar-h:46px}:root[data-view=pdf] body{background:var(--stage);font-size:10.5px;line-height:1.32;overflow:hidden}:root[data-view=pdf] #root{height:100%;min-height:0;overflow:hidden}:root[data-view=pdf] .bar{height:var(--bar-h);background:var(--surface);border-bottom:1px solid var(--border);-webkit-backdrop-filter:none;flex:none;position:static}:root[data-view=pdf] .bar-in{max-width:none;padding-inline:18px}:root[data-view=pdf] .bar-id{gap:10px;font-size:10px}:root[data-view=pdf] .bar-id b{letter-spacing:.04em;font-size:11px}:root[data-view=pdf] .bar-id em:before{display:none}:root[data-view=pdf] .btn{gap:7px;min-height:32px;padding:0 12px;font-size:11px}:root[data-view=pdf] .switch button{min-height:26px;padding:0 9px;font-size:11px}.view-pdf{flex-direction:column;flex:auto;min-height:0;display:flex}.view-pdf .stage{flex:auto;position:relative;overflow:hidden}.view-pdf .sheet{background:var(--bg);transform-origin:0 0;width:210mm;height:297mm;padding:38px 40px;position:absolute;top:0;left:0;overflow:hidden;box-shadow:0 12px 40px #0f0f0f29}.view-pdf .sheet-in{flex-direction:column;display:flex}.view-pdf .top{grid-template-columns:minmax(0,1fr) 124px;gap:26px;display:grid}.view-pdf .top-left{min-width:0}.view-pdf .sheet h1{font-family:var(--font-display);letter-spacing:-.045em;text-transform:uppercase;color:var(--fg);font-size:44px;font-weight:800;line-height:.88}.view-pdf .role{color:var(--fg-2);margin-top:4px;font-size:12px;line-height:1.45}.view-pdf .role b{color:var(--fg);font-weight:500}.view-pdf .role span{color:var(--sep);padding-inline:5px}.view-pdf .portrait{aspect-ratio:348/372;object-fit:cover;object-position:top center;border-radius:var(--radius-xs);border:1px solid var(--border);width:124px;height:100%;min-height:240px}.view-pdf .slogan{letter-spacing:0;white-space:nowrap;color:var(--cal-4);margin-top:14px;font-family:Kalam,Segoe Script,cursive;font-size:36px;font-weight:700;line-height:1.05}@supports ((-webkit-background-clip:text) or (background-clip:text)){.view-web .slogan,.view-pdf .slogan{-webkit-text-fill-color:transparent;color:#0000;background-image:linear-gradient(96deg,#718c2d,#41792c 48%,#0a562b);-webkit-background-clip:text;background-clip:text}}.view-pdf .contact{border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--fg-2);flex-wrap:wrap;gap:0 10px;margin-top:9px;padding-top:8px;font-size:10px;line-height:1.45;display:flex}.view-pdf .contact li{align-items:center;gap:10px;display:flex}.view-pdf .contact li+li:before{content:"";background:var(--sep);border-radius:50%;flex:none;width:3px;height:3px}.view-pdf .contact a{border-bottom:1px solid var(--border);transition:color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);padding-bottom:1px}.view-pdf .contact a:hover{color:var(--fg);border-bottom-color:var(--fg)}.view-pdf .gh{--gh-gap:1.6px;margin-top:14px}.view-pdf .gh-head{font-family:var(--font-mono);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 16px;font-size:9px;line-height:1.5;display:flex}.view-pdf .gh-body{margin-top:3px}.view-pdf .gh-rows{gap:8px}.view-pdf .gh-weekdays{width:22px;padding-top:3px}.view-pdf .gh-weekdays span{font-size:7.5px}.view-pdf .gh-grid{margin-top:3px}.view-pdf .gh-legend{gap:5px}.view-pdf .gh-legend i{width:8px;height:8px}.view-pdf .gh-tip{padding:6px 8px;font-size:9px}.view-pdf .gh-tip b{font-weight:400}@media(prefers-reduced-motion:no-preference){.view-pdf .gh-col .c{animation:cell-in .4s var(--ease-standard) both;animation-delay:calc(var(--c,0) * 12ms + 60ms)}}.view-pdf .cols{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;margin-top:14px;display:grid}.view-pdf .col{min-width:0}.view-pdf .sec+.sec{margin-top:12px}.view-pdf .sec-title{border-bottom:1px solid var(--border);font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg);align-items:baseline;gap:7px;margin-bottom:6px;padding-bottom:5px;font-size:14px;font-weight:700;line-height:1.4;display:flex}.view-pdf .sec-title span{font-family:var(--font-mono);color:var(--meta);font-size:9px;font-weight:400}.view-pdf .item{grid-template-columns:26px minmax(0,1fr);gap:0 8px;display:grid}.view-pdf .item+.item{margin-top:10px}.view-pdf .col-side .item+.item{margin-top:19px}.view-pdf .col-side .sec+.sec{margin-top:22px}.view-pdf .col-side .kv{padding-top:9px}.view-pdf .col-side .kv+.kv{margin-top:10px}.view-pdf .col-side .pair{padding-block:6px}.view-pdf .mark{border-radius:var(--radius-sm);width:28px;height:28px;font-family:var(--font-mono);color:var(--meta);justify-content:center;align-items:center;font-size:8.5px;display:flex;overflow:hidden}.view-pdf .mark img{object-fit:contain;width:100%;height:100%}.view-pdf .mark-num{border:1px solid var(--border)}.view-pdf .mark-dark{background:var(--fg)}.view-pdf .item-head{flex-wrap:wrap;align-items:baseline;gap:0 8px;display:flex}.view-pdf .item-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg);font-size:15px;font-weight:700;line-height:1.4}.view-pdf .item-link{font-family:var(--font-mono);color:var(--muted);transition:color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);border-bottom:1px solid #0000;font-size:9px;line-height:1.4}.view-pdf .item-link:hover{color:var(--fg);border-bottom-color:var(--fg)}.view-pdf .item-year{font-family:var(--font-mono);color:var(--meta);margin-left:auto;font-size:9px;line-height:1.4}.view-pdf .item-org{color:var(--muted);font-size:11px;line-height:1.4}.view-pdf .item-desc{color:var(--muted);text-wrap:pretty;margin-top:3px;font-size:11px;line-height:1.5}.view-pdf .tasks{color:var(--muted);margin-top:3px;font-size:11px;line-height:1.5}.view-pdf .tasks li{display:inline}.view-pdf .tasks li:not(:last-child):after{content:" ·";color:var(--sep)}.view-pdf .lang-grid{border-bottom:1px solid var(--border-soft);grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:8px;padding-bottom:8px;display:grid}.view-pdf .lang-grid li{padding-top:6px}.view-pdf .lang-grid em{font-family:var(--font-mono);color:var(--meta);margin-bottom:2px;font-size:9px;font-style:normal;line-height:1.4;display:block}.view-pdf .lang-grid b{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg);font-size:14px;font-weight:700;line-height:1.4}.view-pdf .kv{padding-top:5px}.view-pdf .kv+.kv{margin-top:5px}.view-pdf .kv dt{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--meta);font-size:9px;line-height:1.5}.view-pdf .kv dd{color:var(--muted);flex-wrap:wrap;gap:0 17px;font-size:10px;line-height:1.5;display:flex}.view-pdf .kv dd span{white-space:nowrap}.view-pdf .pairs{flex-direction:column;display:flex}.view-pdf .pair{grid-template-columns:110px minmax(0,1fr);align-items:baseline;gap:0 10px;padding-block:3px;display:grid}.view-pdf .pair dt{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg);font-size:13px;font-weight:700}.view-pdf .pair dd{color:var(--muted);font-size:11.5px;line-height:1.4}@media(max-width:900px){:root{--gutter:24px;--section-y:48px}.view-web .sec{gap:var(--space-3) var(--space-6);grid-template-columns:150px minmax(0,1fr)}.view-web .kv{grid-template-columns:140px minmax(0,1fr)}.view-web .hero-grid{gap:var(--space-8);grid-template-columns:minmax(0,1fr) 132px}.view-web .portrait{width:132px}.view-web .lang-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){:root{--gutter:18px;--section-y:40px}.bar-in{padding-inline:var(--gutter)}.bar-id em,.switch-label,.btn-label{display:none}.switch button{padding:0 9px}.btn{padding:0 12px}.view-web .hero{padding-top:var(--space-6)}.view-web .hero-grid{--portrait:clamp(72px, 19vw, 104px);grid-template-columns:minmax(0,1fr) var(--portrait);gap:var(--space-4)}.view-web .portrait{width:var(--portrait)}.view-web .hero h1{font-size:clamp(32px,11vw,46px)}.view-web .hero-role{margin-top:var(--space-3);font-size:var(--text-base);flex-wrap:wrap;gap:2px 14px;display:flex}.view-web .hero-role>.hero-role-sep{display:none}.view-web .slogan{margin-top:var(--space-6)}.view-web .contact{margin-top:var(--space-6);padding-top:var(--space-4);gap:6px 18px}.view-web .contact li+li:before{display:none}.view-web .sec{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.view-web .sec-rail{gap:10px}.view-web .row{grid-template-columns:30px minmax(0,1fr);row-gap:2px}.view-web .row:has(.row-mark){grid-template-columns:36px minmax(0,1fr)}.view-web .row-year{text-align:left;grid-column:2;padding-top:0}.view-web .row-desc{max-width:none}.view-web .kv{grid-template-columns:minmax(0,1fr);gap:8px}.view-web .pair{grid-template-columns:minmax(0,1fr);gap:4px}.view-web .gh{--gh-gap:1.5px}.view-web .gh-weekdays,.view-web .gh-months{display:none}.view-web .gh-foot{padding-left:0}}@media print{.bar,.skip,.gh-tip{display:none!important}.reveal{opacity:1!important;transform:none!important}.gh-col .c{opacity:1!important;animation:none!important;transform:none!important}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}:root[data-view=web]{--gutter:0px}:root[data-view=web] body{background:#fff;padding-top:0!important}:root[data-view=web] .view-web{padding-top:0}:root[data-view=web] .wrap{max-width:none;padding-inline:0}:root[data-view=web] body,:root[data-view=web] .lede,:root[data-view=web] .row-desc,:root[data-view=web] .tasks li,:root[data-view=web] .kv dd,:root[data-view=web] .pair dd{font-size:16px}:root[data-view=web] .row-org,:root[data-view=web] .row-link,:root[data-view=web] .row-year,:root[data-view=web] .row-idx,:root[data-view=web] .row-mark-num,:root[data-view=web] .sec-num,:root[data-view=web] .kv dt,:root[data-view=web] .gh-label,:root[data-view=web] .gh-stats,:root[data-view=web] .gh-foot,:root[data-view=web] .gh-months span,:root[data-view=web] .foot,:root[data-view=web] .todo,:root[data-view=web] .contact{font-size:12px}:root[data-view=web] .hero{padding-top:0}:root[data-view=web] .hero h1{font-size:58px}:root[data-view=web] .hero-role{font-size:18px}:root[data-view=web] .slogan,:root[data-view=web] .contact{margin-top:16px}:root[data-view=web] .portrait{width:118px}:root[data-view=web] .gh{margin-top:24px}:root[data-view=web] .gh-foot{padding-left:0}:root[data-view=web] .sections{padding-top:8px}:root[data-view=web] .sec{grid-template-columns:150px minmax(0,1fr);padding-block:16px 18px}:root[data-view=web] .sec-title{font-size:23px}:root[data-view=web] .row-name{font-size:19px}:root[data-view=web] .lang-grid b{font-size:22px}:root[data-view=web] .pair dt{font-size:19px}:root[data-view=web] .row{margin-inline:0;padding-inline:0}:root[data-view=web] .row+.row:before{inset:0 0 auto}:root[data-view=web] .row,:root[data-view=web] .kv,:root[data-view=web] .pair,:root[data-view=web] .lang-grid li,:root[data-view=web] .tasks li,:root[data-view=web] .gh{break-inside:avoid;page-break-inside:avoid}@page{size:A4;margin:11mm 13mm}:root[data-view=pdf],:root[data-view=pdf] body,:root[data-view=pdf] #root{height:auto;min-height:0;display:block;overflow:visible;background:#fff!important}:root[data-view=pdf] .stage{position:static;overflow:visible}:root[data-view=pdf] .sheet{box-shadow:none;width:210mm;height:297mm;overflow:hidden;position:static!important;top:auto!important;left:auto!important;transform:none!important}@page{size:A4;margin:0}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
