:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text-color:#3e3e3e;--link-color:#787878;--background-color:#fff;--t:.16s cubic-bezier(.165, .84, .44, 1);--t-slow:.24s cubic-bezier(.165, .84, .44, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background-color);font-family:Libre Baskerville,Georgia,Times New Roman,serif}a{color:var(--link-color);text-decoration:none}#essay-links a,#feature-links a{color:#000}.logo{object-fit:contain;width:120px;height:120px;display:flex}.sidebar{background-color:#f8f8f8;width:200px;min-height:100vh;padding:30px;font-size:14px;position:sticky;top:0}.sidebar p{margin-top:15px;font-size:17px}.sidebar ul{list-style:none}.sidebar li{margin-bottom:15px}.sidebar a{color:#787878;text-decoration:none}.sidebar a.active{color:#000;font-weight:700}.sidebar a:hover{color:#000}.sidebar .social-list a{align-items:center;gap:10px;display:inline-flex}.social-list a i{text-align:center;flex-shrink:0;width:15px;font-size:13px}body.dark-mode{color:#f1f1f1;background-color:#121212}body.dark-mode a{color:#c6c4c4}body.dark-mode .sidebar{background-color:#1e1e1e}body.dark-mode .sidebar a.active{color:#dad9e2;font-weight:700}body.dark-mode .sidebar a:hover{color:#f1f1f1}.dark-mode .hero-section .text .subtitle{color:#c6c4c4}.main-container{flex-direction:row;justify-content:center;align-items:flex-start;gap:40px;max-width:1100px;min-height:100vh;margin:0 auto;display:flex}.content-wrapper{width:100%;max-width:600px}.hero-section{text-align:left;justify-content:left;align-items:center;max-width:600px;padding:30px 40px;display:flex}.hero-section .text h1{padding-bottom:10px;font-size:36px}.hero-section .text .subtitle{color:#787878;margin-top:50px;padding:5px 0;font-size:14px;display:inline}.about-section{justify-content:space-between;align-items:center;gap:40px;max-width:600px;padding:20px 40px;display:flex}.about-section .text p{margin-bottom:15px;font-weight:700}.about-section .text .section-title{margin-left:15px;font-size:14px}.essay-section{justify-content:space-between;align-items:center;gap:40px;max-width:600px;padding:20px 40px;display:flex}.essay-section .text .section-title p{margin-bottom:15px;font-weight:700}.essay-section .text .section-body p{font-size:15px;font-weight:400}.extra-curricular-section{justify-content:space-between;align-items:center;gap:40px;max-width:600px;padding:20px 40px;display:flex}.extra-curricular-section .text .activity-item p{font-size:14px;font-weight:400}.extra-curricular-section .text .activity-item .date p{color:#787878;font-size:14px;font-weight:400}.activity-item{transition:all var(--t);cursor:pointer;margin-bottom:20px;padding-left:18px;position:relative}.detail-wrap{opacity:0;transition:grid-template-rows var(--t-slow), opacity var(--t-slow);grid-template-rows:0fr;transition-delay:.25s;display:grid}.activity-item:focus-within .detail-wrap,.activity-item.is-open .detail-wrap{opacity:1;grid-template-rows:1fr;transition-delay:.12s}.detail-box{color:#4d4d4d;min-height:0;transition:padding var(--t-slow) .25s;border-left:1px solid #e3e3e3;padding:0 0 0 14px;line-height:1.65;overflow:hidden}.activity-item:focus-within .detail-box,.activity-item.is-open .detail-box{padding:14px 0 4px 14px;transition-delay:.12s}.extra-curricular-section .text .activity-item .detail-box p{font-weight:400}.activity-item:before{content:"";box-sizing:border-box;width:8px;height:8px;transition:background-color var(--t), border-color var(--t);border:1.6px solid #787878;border-radius:50%;position:absolute;top:.55em;left:0}.activity-item:focus-within:before,.activity-item.is-open:before,.activity-item.active:before,.activity-item.in-view:before{background-color:#000;border-color:#000}body.dark-mode .activity-item:before{border-color:#c6c4c4}body.dark-mode .activity-item:focus-within:before,body.dark-mode .activity-item.is-open:before,body.dark-mode .activity-item.active:before,body.dark-mode .activity-item.in-view:before{background-color:#dad9e2;border-color:#dad9e2}body.dark-mode .detail-box{color:#c6c4c4;border-left-color:#2e2e2e}body.dark-mode .activity-item:hover .date p,body.dark-mode .extra-curricular-section .text .activity-item .date p{color:#c6c4c4}html{scrollbar-gutter:stable both-edges}html.dark-mode{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scrollbar-color:#3f3f3f #121212}#side-tab{color:#fff;text-align:center;z-index:1001;cursor:pointer;opacity:1;background-color:#1e1e1e;border:0;border-top-right-radius:10px;border-bottom-right-radius:10px;width:30px;height:60px;padding:0;font-family:inherit;font-size:24px;line-height:60px;transition:opacity .4s,left .4s;display:block;position:fixed;top:50%;left:0;transform:translateY(-50%)}#side-tab.hidden{opacity:0;pointer-events:none;left:-40px}#side-tab,.close-btn{display:none}@media (width<=768px){#side-tab{display:block}.sidebar{z-index:1000;-webkit-overflow-scrolling:touch;background-color:#f8f8f8;width:200px;height:100dvh;transition:left .3s;position:fixed;top:0;left:-220px;overflow-y:auto}.sidebar.open{left:0}.sidebar.open .close-btn{display:block}}@media (width>=769px){.sidebar{position:sticky;left:0}#side-tab,.close-btn{display:none!important}}.close-btn{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:24px;font-weight:700;display:none;position:absolute;top:10px;right:15px}.kr-flag{z-index:9999;pointer-events:none;animation:4s ease-in forwards fall;position:fixed;top:-50px}@keyframes fall{to{opacity:0;transform:translateY(400vh)}}.edu-group{margin-bottom:28px}.extra-curricular-section .text .edu-group .edu-school{font-size:15px;font-weight:400}.edu-school a{color:#000}body.dark-mode .edu-school a{color:#f1f1f1}.edu-school-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.edu-degree{color:#787878;font-size:13px;font-weight:400}body.dark-mode .edu-degree{color:#c6c4c4}.edu-years{color:#787878;white-space:nowrap;letter-spacing:.02em;font-size:12px;font-weight:400}body.dark-mode .edu-years{color:#c6c4c4}.edu-entries{border-left:1px solid #e3e3e3;margin-top:10px;padding-left:16px}body.dark-mode .edu-entries{border-left-color:#2e2e2e}.edu-entry{transition:opacity var(--t);margin-bottom:12px;position:relative}.edu-entry:last-child{margin-bottom:0}.edu-entry-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.edu-term{color:#787878;white-space:nowrap;letter-spacing:.02em;transition:color var(--t);font-size:12px;font-weight:400}body.dark-mode .edu-term{color:#c6c4c4}.edu-entry:before{content:"";width:1px;transition:background-color var(--t);background:0 0;position:absolute;top:2px;bottom:2px;left:-17px}.edu-entry.edu-break{text-align:center;opacity:.55;margin:22px 0}.edu-entry.edu-break:before{display:none}.edu-entries .edu-entry.edu-break:hover{opacity:.7}.edu-break-line{color:#787878;letter-spacing:.03em;align-items:center;gap:10px;font-size:13px;font-style:italic;display:inline-flex}body.dark-mode .edu-break-line{color:#c6c4c4}.edu-break-line:before,.edu-break-line:after{content:"";border-top:1px dashed #cbcbcb;width:22px}body.dark-mode .edu-break-line:before,body.dark-mode .edu-break-line:after{border-top-color:#3a3a3a}::selection{color:#fff;background:#111}body.dark-mode ::selection{color:#121212;background:#f1f1f1}:focus-visible{outline-offset:3px;outline:1.5px solid #787878}.content-wrapper a[href]{text-underline-offset:3px;transition:text-decoration-color var(--t), color var(--t);-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px}.content-wrapper a[href]:hover{color:#000;text-decoration-color:currentColor}body.dark-mode .content-wrapper a[href]:hover{color:#f1f1f1}.content-wrapper a[href][target=_blank]:after{content:"↗";vertical-align:.32em;margin-left:2px;font-size:.68em;text-decoration:none;display:inline-block}.notfound-line{font-size:15px;font-weight:400}.email-label{min-width:3.9em;display:inline-block}.sidebar .sidebar-time{color:#787878;letter-spacing:.02em;cursor:pointer;transition:color var(--t);background:0 0;border:0;margin-top:28px;padding:0;font-family:inherit;font-size:12.5px;display:block}.sidebar .sidebar-time:hover{color:#000}body.dark-mode .sidebar .sidebar-time:hover{color:#f1f1f1}body.dark-mode .sidebar .sidebar-time{color:#8f8f8f}.sidebar .sidebar-colophon{margin-top:6px;font-size:12.5px}.sidebar .sidebar-colophon a{font-size:12.5px}.end-mark{width:8px;height:8px;transition:background-color var(--t), border-color var(--t);border:1.6px solid #787878;border-radius:50%;margin:36px auto 14px}.end-mark:hover{background-color:#000;border-color:#000}body.dark-mode .end-mark{border-color:#c6c4c4}body.dark-mode .end-mark:hover{background-color:#dad9e2;border-color:#dad9e2}.about-section .colophon-text p{font-size:14.5px;font-weight:400;line-height:1.7}.about-section .colophon-text .colophon-mark{color:#787878;letter-spacing:.04em;margin-top:26px;font-size:12.5px}@media print{body,body.dark-mode{color:#000;background:#fff!important}.sidebar,#side-tab{display:none!important}.main-container{max-width:none;display:block}.content-wrapper{max-width:100%}.detail-wrap{opacity:1!important;grid-template-rows:1fr!important}.detail-box{color:#444!important;padding:12px 0 4px 14px!important}.edu-entries .edu-entry{opacity:1!important}.content-wrapper a[href]{color:#000;text-decoration:none}.content-wrapper a[href^=http]:after{content:" (" attr(href) ")";color:#555;vertical-align:baseline;margin-left:.2em;font-size:.8em}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}@keyframes route-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.route-fade{animation:.3s cubic-bezier(.165,.84,.44,1) route-in}.dot-field{cursor:crosshair;max-width:600px;padding:2px 40px 6px}.dot-field canvas{display:block}.cursor-dot{pointer-events:none;z-index:3000;opacity:0;width:10px;height:10px;transition:opacity .25s ease, background-color var(--t), border-color var(--t), width var(--t), height var(--t);will-change:transform;background:0 0;border:1.6px solid #787878;border-radius:50%;position:fixed;top:0;left:0}.cursor-dot.is-active{background-color:#000;border-color:#000;width:13px;height:13px}body.dark-mode .cursor-dot{border-color:#c6c4c4}body.dark-mode .cursor-dot.is-active{background-color:#dad9e2;border-color:#dad9e2}.hero-playful{cursor:default}.hero-playful .hl{display:inline-block}.hero-playful .hl-in{transition:transform .18s cubic-bezier(.165,.84,.44,1);display:inline-block}.read-rail{z-index:500;touch-action:none;width:13px;height:64vh;position:fixed;top:18vh;right:18px}.read-rail:before{content:"";background:#e6e6e6;width:1px;position:absolute;top:0;bottom:0;left:50%}body.dark-mode .read-rail:before{background:#2c2c2c}.read-dot{background:#000;border-radius:50%;width:8px;height:8px;position:absolute;left:50%;transform:translate(-50%,-50%)}body.dark-mode .read-dot{background:#dad9e2}@media (width<=900px){.read-rail{display:none}}.read-topbar{z-index:1002;pointer-events:none;background:#000;height:2px;display:none;position:fixed;top:0;left:0}body.dark-mode .read-topbar{background:#dad9e2}@media (width<=900px){.read-topbar{display:block}}@media print{.read-topbar,.read-rail,.cursor-dot,.dot-field,.lost-dot{display:none!important}}.logo{transition:transform .2s cubic-bezier(.165,.84,.44,1)}html.has-cursor-dot,html.has-cursor-dot *,body.has-cursor-dot,body.has-cursor-dot *{cursor:none!important}html.has-cursor-dot::view-transition{cursor:none}@media (width<=768px){.cursor-dot,.cursor-core{display:none!important}html.has-cursor-dot,html.has-cursor-dot *,body.has-cursor-dot,body.has-cursor-dot *{cursor:auto!important}}.cursor-core{pointer-events:none;z-index:3001;opacity:0;will-change:transform;background:#000;border-radius:50%;width:4px;height:4px;transition:opacity .25s;position:fixed;top:0;left:0}body.dark-mode .cursor-core{background:#f1f1f1}@media print{.cursor-core{display:none!important}}.cmdk-scrim{z-index:4000;background:#00000047;position:fixed;inset:0}body.dark-mode .cmdk-scrim{background:#0000008c}.cmdk{z-index:4001;background:#fff;border:1px solid #e3e3e3;width:min(460px,100vw - 48px);position:fixed;top:16vh;left:50%;transform:translate(-50%);box-shadow:0 18px 50px #0000001a}body.dark-mode .cmdk{background:#191919;border-color:#2e2e2e;box-shadow:0 18px 50px #00000080}.cmdk-input{width:100%;color:inherit;background:0 0;border:0;border-bottom:1px solid #ececec;outline:none;padding:15px 18px;font-family:inherit;font-size:15px}body.dark-mode .cmdk-input{border-bottom-color:#2a2a2a}.cmdk-input::placeholder{color:#9a9a9a;font-style:italic}.cmdk-list{max-height:320px;padding:6px 0;list-style:none;overflow-y:auto}.cmdk-empty{color:#787878;padding:14px 18px;font-size:13.5px;font-style:italic}.cmdk-row{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:baseline;gap:12px;padding:10px 18px;font-family:inherit;font-size:14px;display:flex}.cmdk-row .cmdk-dot{width:7px;height:7px;transition:background-color var(--t), border-color var(--t);border:1.4px solid #a9a9a9;border-radius:50%;flex-shrink:0;align-self:center}.cmdk-row.is-selected{background:#f6f6f6}body.dark-mode .cmdk-row.is-selected{background:#222}.cmdk-row.is-selected .cmdk-dot{background:#000;border-color:#000}body.dark-mode .cmdk-row.is-selected .cmdk-dot{background:#dad9e2;border-color:#dad9e2}.cmdk-hint{color:#9a9a9a;margin-left:auto;font-size:12px}.nav-list{position:relative}.nav-dot{width:7px;height:7px;transition:transform var(--t-slow), opacity var(--t);will-change:transform;background:#000;border-radius:50%;position:absolute;top:0;left:-15px}body.dark-mode .nav-dot{background:#dad9e2}.sidebar a{transition:color var(--t), transform .1s ease;display:inline-block}.cmdk-row:active{transform:scale(.99)}.logo:active{transform:scale(.95)!important}.logo-button{cursor:pointer;background:0 0;border:0;padding:0;display:block}#korea-trigger{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.end-mark:active{transform:scale(.8)}.lost-dot{margin-top:26px}.lost-dot canvas{border:1px solid #e3e3e3;width:100%;height:140px;display:block}body.dark-mode .lost-dot canvas{border-color:#2e2e2e}.lost-dot-caption{color:#787878;margin-top:10px;font-size:12.5px;font-style:italic;font-weight:400}@keyframes cursor-doze{0%,to{opacity:1}50%{opacity:.25}}.cursor-dot.is-idle{animation:3.2s ease-in-out infinite cursor-doze}.date-rel{opacity:0;transition:opacity var(--t);font-style:italic}.activity-item:focus-within .date-rel,.activity-item.is-open .date-rel{opacity:1}.sidebar{transition:opacity .45s}body.reading-focus .sidebar{opacity:.45}body.reading-focus .read-rail{opacity:1}.nav-list a,.social-list a{transition:color var(--t), transform .38s cubic-bezier(.22, 1, .36, 1)}.colophon-rescued{font-style:italic}.sidebar .sidebar-time{padding-right:8px;position:relative;overflow:hidden}.time-label{display:inline-block}.time-label.is-swapping{animation:1.2s both time-swap}@keyframes time-swap{0%{opacity:1}12%{opacity:0}82%{opacity:0}to{opacity:1}}.flight-map{pointer-events:none;color:#787878;width:120px;height:20px;animation:1.2s both map-in-out;position:absolute;top:50%;left:0;transform:translateY(-50%)}body.dark-mode .flight-map{color:#c6c4c4}@keyframes map-in-out{0%{opacity:0}10%{opacity:1}86%{opacity:1}to{opacity:0}}.fm-route{fill:none;stroke:currentColor;stroke-width:1px;stroke-dasharray:3 4;opacity:.65}.flight-east .fm-route{animation:1.2s linear both dash-east}.flight-west .fm-route{animation:1.2s linear both dash-west}@keyframes dash-east{to{stroke-dashoffset:-21px}}@keyframes dash-west{to{stroke-dashoffset:21px}}.fm-origin{fill:currentColor}.fm-dest{fill:#0000;stroke:currentColor;stroke-width:1.2px;animation:1.2s both dest-land}@keyframes dest-land{0%,78%{fill:#0000}88%,to{fill:currentColor}}.fm-land{fill:currentColor;opacity:.22}.fm-sea{fill:none;stroke:currentColor;stroke-width:1px;stroke-linecap:round;opacity:.35}.fm-plane path{fill:currentColor}.cursor-orbit{animation:2.6s linear infinite orbit;position:absolute;inset:0}@keyframes orbit{to{transform:rotate(360deg)}}.cursor-satellite{background:#787878;border-radius:50%;width:4px;height:4px;margin-top:-2px;position:absolute;top:50%;left:-9px}body.dark-mode .cursor-satellite{background:#c6c4c4}.hero-playful .hl-in:active{transform:translateY(2.5px)!important}@media print{.content-wrapper:after{content:"— henrykim.ca —";text-align:center;color:#777;margin-top:42px;font-size:11px;display:block}}.hero-quote{text-align:left;color:#787878;cursor:pointer;width:100%;max-width:600px;transition:color var(--t);background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:18px;margin:-10px 0 10px;padding:0 40px;font-family:inherit;font-size:12.5px;display:flex}.hero-quote:hover{color:#4d4d4d}body.dark-mode .hero-quote:hover{color:#c6c4c4}.hero-quote em{font-style:italic}.hero-quote-author{white-space:nowrap;flex-shrink:0;font-size:12px}.cursor-burst{opacity:0;pointer-events:none;border:1.6px solid #787878;border-radius:50%;position:absolute;inset:-2px}body.dark-mode .cursor-burst{border-color:#c6c4c4}.cursor-burst.go{animation:.4s ease-out ring-burst}@keyframes ring-burst{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(3.4)}}@media (hover:hover){.activity-item:hover .detail-wrap{opacity:1;grid-template-rows:1fr;transition-delay:.12s}.activity-item:hover .detail-box{padding:14px 0 4px 14px;transition-delay:.12s}.activity-item:hover:before{background-color:#000;border-color:#000}body.dark-mode .activity-item:hover:before{background-color:#dad9e2;border-color:#dad9e2}.activity-item:hover .date-rel{opacity:1}.edu-entries:hover .edu-entry{opacity:.38}.edu-entries .edu-entry:hover{opacity:1}.edu-entry:hover:before{background:#000}body.dark-mode .edu-entry:hover:before{background:#dad9e2}.edu-entry:hover .edu-term{color:#000}body.dark-mode .edu-entry:hover .edu-term{color:#dad9e2}.nav-list a:hover,.social-list a:hover{transform:translate(3px)}}@media (forced-colors:active){.dot-field,.cursor-dot,.cursor-core,.read-rail,.read-topbar{display:none!important}.activity-item:before,.nav-dot,.end-mark,.cmdk-dot,.fm-origin,.fm-dest{forced-color-adjust:none}}@media (width<=768px){.hero-section,.about-section,.essay-section,.extra-curricular-section,.dot-field,.hero-quote,.sheet-head{padding-left:22px;padding-right:22px}.hero-section{padding-top:22px;padding-bottom:22px}.hero-section .text h1{font-size:29px}.hero-quote{flex-direction:column;align-items:flex-start;gap:4px}.hero-quote-author{align-self:flex-end}.edu-school-head,.edu-entry-head{flex-direction:column;align-items:flex-start;gap:2px}.edu-term{white-space:normal}.essay-section .text .section-body p{font-size:15.5px;line-height:1.7}.essay-section .text .section-title p,.about-section .text .section-title{line-height:1.6}.extra-curricular-section .text .activity-item p{line-height:1.55}.detail-box{line-height:1.7}#side-tab{width:36px;height:64px;line-height:64px}.sidebar{padding-top:max(30px, env(safe-area-inset-top));padding-bottom:max(30px, env(safe-area-inset-bottom))}.cmdk{top:10vh}}
