@font-face{font-family:Document Letters;src:url("assets/fonts/cormorant-garamond.woff2") format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:Document TC;src:url("assets/fonts/noto-serif-tc.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:Document JA;src:url("assets/fonts/ja-literary-mincho-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Document TC;src:url("assets/fonts/library-tc-supplement.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap;unicode-range:U+9685}
@font-face{font-family:Document JA;src:url("assets/fonts/library-ja-400-supplement.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+518A,U+658E,U+8535,U+95B2}
@font-face{font-family:Document JA;src:url("assets/fonts/library-ja-500-supplement.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+518A,U+658E,U+8535,U+95B2}
:root{color-scheme:dark;--document-font:"Document Letters","Document TC",Georgia,serif;--document-gold:#e5c58f;--document-ivory:#f6eddd}
*{box-sizing:border-box}body{margin:0;min-width:280px;color:var(--document-ivory);background:#111b32;font:400 17px/1.65 var(--document-font)}
body::before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(#111b3220,#111b3290),url("assets/resume/star-library.svg") center top/cover no-repeat;pointer-events:none}
a{color:inherit;text-decoration:none;text-underline-offset:5px}a:hover{text-decoration:underline;color:#fff0d2}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.42;cursor:default}[hidden]{display:none!important}
a:focus-visible,button:focus-visible,input:focus-visible,.document-stage:focus-visible{outline:2px solid #f4d59f;outline-offset:4px}
.document-skip{position:fixed;top:-100px;left:18px;z-index:30;background:#f7eddc;color:#15213a;padding:10px 16px}.document-skip:focus{top:12px}
.document-header{border-bottom:1px solid #d5bb8c33;background:#111a2bd9}.document-header-inner{width:min(1370px,calc(100% - 72px));min-height:85px;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}
.document-library-link{display:inline-flex;gap:10px;align-items:center;min-height:44px;font-size:15px;justify-self:start;color:#e7d7b8}.document-brand{font-size:27px;line-height:1.1;text-align:center}.document-brand small{display:block;font-size:8px;letter-spacing:.19em;margin-top:7px;color:#c9cbd5}
.document-languages{display:flex;gap:7px;align-items:center;justify-self:end;font-size:11px;color:#c7ccd8}.document-languages button{padding:8px 3px;min-height:44px;min-width:27px;border:0;background:transparent;color:inherit}.document-languages button[aria-pressed=true]{color:var(--document-gold)}
.document-room{width:min(1230px,calc(100% - 72px));margin:0 auto 32px}.document-introduction{text-align:center;max-width:850px;margin:40px auto 24px}.document-eyebrow{font-size:11px;letter-spacing:.15em;color:#dfc99f;margin:0 0 11px}.document-introduction h1{font-weight:400;font-size:clamp(31px,3.7vw,51px);line-height:1.2;margin:0 0 13px;text-wrap:balance}.document-introduction>p:last-child{font-size:17px;color:#cfd1dd;max-width:66ch;margin:auto;text-wrap:balance}
.document-file-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 25px;margin:0 0 24px;font-size:15px}.document-file-actions>a{display:inline-flex;align-items:center;gap:8px;min-height:44px}.document-download{padding:8px 17px;color:#18263f;background:#e3c791;border:1px solid #f0daaf;border-radius:2px;font-weight:500}.document-download:hover{color:#18263f;background:#f0dbb3;text-decoration:none}.document-website-link{color:#ccd0dc}
.document-workspace{scroll-margin-top:20px}.document-controls{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;padding:11px 15px;background:#19233be8;border:1px solid #d0b68366;border-radius:3px}.document-paging,.document-zoom,.document-page-form{display:flex;align-items:center;gap:9px}.document-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:7px 12px;background:#27334a;border:1px solid #a692747a;border-radius:2px;color:#f5ead8}.document-controls button:hover:not(:disabled){background:#39435a;border-color:#e3c58e}.document-controls button:first-child,.document-zoom button{font-family:Georgia,serif}.document-page-form{margin:0;font-size:15px}.document-page-form input{width:64px;min-height:44px;padding:5px 7px;border:1px solid #aa95747a;border-radius:2px;background:#111b31;color:#f5ead8;text-align:center;appearance:textfield}.document-page-form input::-webkit-inner-spin-button,.document-page-form input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#document-total{min-width:19px}#document-zoom-value{display:block;min-width:45px;text-align:center;font-size:14px}#document-fit{font-family:var(--document-font);font-size:14px}
.document-status{min-height:25px;margin:12px 2px 8px;font-size:14px;color:#d3c7b0}.document-error{margin:10px 0 16px;padding:15px 18px;border:1px solid #c5a281;background:#352c3e;color:#fff0d9;font-size:17px}.document-stage{overflow:auto;overscroll-behavior-x:contain;max-height:none;min-height:180px;padding:24px;background:#0c15279c;border:1px solid #b9a27d44;border-radius:2px;scrollbar-color:#8c7c66 #172139}.document-page{position:relative;isolation:isolate;background:#fff;color-scheme:only light;box-shadow:0 9px 34px #02071080;margin:0 auto;flex:none}.document-page>canvas{display:block;position:relative;z-index:0}
/* Mozilla PDF.js 5.6 text-layer geometry: source text stays selectable over canvas. */
.textLayer{position:absolute;text-align:initial;inset:0;overflow:clip;opacity:1;line-height:1;text-size-adjust:none;-webkit-text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:#202735;z-index:1;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size))}
.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0 0}.textLayer>:not(.markedContent),.textLayer .markedContent span:not(.markedContent){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}.textLayer .markedContent{display:contents}.textLayer ::selection{background:#5a78bc66}.textLayer ::-moz-selection{background:#5a78bc66}
.document-annotations{position:absolute;inset:0;z-index:2;pointer-events:none}.document-annotations a{position:absolute;display:block;pointer-events:auto;min-width:2px;min-height:2px;border:1px solid transparent;color:transparent}.document-annotations a:hover{background:#a88a4e22;border-color:#a88a4e88}.document-annotations a:focus-visible{outline:3px solid #365d94;outline-offset:2px;background:#91b0e544}
.document-reading-note,.document-keyboard-note{font-size:13px;color:#c7cbd7;margin:10px 2px}.document-keyboard-note{color:#b8bece}.document-fallback{margin-top:24px;font-size:15px;color:#d0cbbf}.document-fallback summary{min-height:44px;cursor:pointer;padding:8px 0}.document-fallback ul{margin:4px 0 0;padding-left:21px}.document-fallback li>a{display:inline-block;padding:6px 0;min-height:36px;text-decoration:underline}.document-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:28px;border-top:1px solid #d2b98c33;padding-top:13px;font-size:14px;color:#d8c5a3}.document-footer>a{min-height:44px;display:inline-flex;align-items:center}
html[lang=ja]{--document-font:"Document Letters","Document JA",Georgia,serif}html[lang=zh-Hant] .document-introduction h1,html[lang=ja] .document-introduction h1{font-size:clamp(27px,3.1vw,41px);line-height:1.65;letter-spacing:.04em}html[lang=zh-Hant] .document-introduction>p:last-child,html[lang=ja] .document-introduction>p:last-child{font-size:14px;line-height:1.9}html[lang=zh-Hant] .document-file-actions,html[lang=ja] .document-file-actions{font-size:13px}
@media(max-width:700px){.document-header-inner{width:calc(100% - 36px);min-height:105px;grid-template-columns:1fr auto;gap:0 12px;padding:13px 0 8px}.document-brand{grid-column:1;grid-row:1;justify-self:start;text-align:left;font-size:24px}.document-languages{grid-column:2;grid-row:1;gap:3px}.document-library-link{grid-column:1/-1;grid-row:2;font-size:13px;min-height:38px}.document-room{width:calc(100% - 28px)}.document-introduction{margin:28px auto 19px}.document-eyebrow{font-size:10px;letter-spacing:.08em}.document-introduction h1{font-size:32px}.document-introduction>p:last-child{font-size:16px}.document-file-actions{gap:5px 17px;font-size:14px;margin-bottom:18px}.document-controls{justify-content:center;gap:10px;padding:9px 8px}.document-paging,.document-zoom{gap:7px}.document-page-form{font-size:14px;gap:7px}.document-page-form input{width:54px}.document-controls button{padding:6px 10px}.document-stage{padding:12px 8px;min-height:140px}.document-status{font-size:13px}.document-reading-note,.document-keyboard-note{font-size:12px;line-height:1.7}.document-footer{font-size:13px}.document-fallback{font-size:14px}}
.document-languages button{min-width:44px}.document-fallback li>a{min-height:44px}
@media(max-width:700px){.document-library-link{min-height:44px}}
@media(max-width:420px){.document-header-inner{grid-template-columns:1fr;gap:3px}.document-brand{grid-column:1;grid-row:1;justify-self:center;text-align:center}.document-library-link{grid-column:1;grid-row:2;justify-self:center}.document-languages{grid-column:1;grid-row:3;justify-self:center}}
.document-controls{position:sticky;top:12px;z-index:10;background:#19233b;box-shadow:0 7px 22px #050a1530}
.document-bottom-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;margin:16px 0 6px;padding:11px 14px;border-top:1px solid #d0b68366;border-bottom:1px solid #d0b68333;color:#e4d3b4;background:#19233ba6}
.document-bottom-navigation button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;min-width:0;padding:8px 14px;border:1px solid #a692746b;border-radius:2px;background:#27334a;color:#f5ead8;font-size:16px;line-height:1.4}
.document-bottom-navigation button:first-child{justify-self:start}.document-bottom-navigation button:last-child{justify-self:end}
.document-bottom-navigation button:hover:not(:disabled){background:#39435a;border-color:#e3c58e}.document-bottom-navigation button>span[aria-hidden]{font-family:Georgia,serif;flex:0 0 auto}
.document-bottom-position{text-align:center;font-size:15px;line-height:1.5;color:#d9c6a4;white-space:nowrap}
html[lang=zh-Hant] .document-bottom-navigation button,html[lang=ja] .document-bottom-navigation button{font-size:13px}html[lang=zh-Hant] .document-bottom-position,html[lang=ja] .document-bottom-position{font-size:12px}
#document-fit{white-space:nowrap;flex-shrink:0}
@media(max-width:700px){.document-controls{top:8px}}
@media(max-width:380px){.document-controls{padding-inline:6px}.document-zoom{gap:6px}}
@media(max-width:480px){.document-bottom-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;padding:10px 8px}.document-bottom-position{grid-column:1/-1;grid-row:1;font-size:14px}.document-bottom-navigation button{grid-row:2;justify-self:stretch!important;padding:8px 9px;font-size:15px;gap:7px}.document-bottom-navigation button:first-child{grid-column:1}.document-bottom-navigation button:last-child{grid-column:2}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media print{body{background:#fff;color:#111}.document-header,.document-introduction,.document-controls,.document-bottom-navigation,.document-status,.document-file-actions,.document-reading-note,.document-keyboard-note,.document-fallback,.document-footer{display:none}.document-room{width:auto;margin:0}.document-stage{padding:0;overflow:visible;border:0;background:#fff}.document-page{box-shadow:none}}
