/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@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;--tw-border-style:solid}}}.grid{display:grid}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(#fff 0,#f6f8fb 520px),#f6f8fb;min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}p{color:#5c667a;word-break:keep-all;line-height:1.75}.section{width:min(1120px,100% - 40px);margin:0 auto;padding:84px 0}.site-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe6;border-bottom:1px solid #e2e8f0;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;min-height:72px;padding:0 max(20px,50vw - 560px);display:grid;position:sticky;top:0}.brand{color:#0b1220;flex-direction:column;gap:2px;font-weight:900;display:inline-flex}.brand small{color:#697386;font-size:12px;font-weight:700}nav{justify-content:center;gap:4px;display:flex;overflow-x:auto}nav a,.header-github{color:#475569;white-space:nowrap;border-radius:8px;padding:9px 11px;font-size:14px;font-weight:800}nav a:hover,.header-github:hover{color:#0f2a52;background:#eef4ff}.header-github{border:1px solid #dbe4ef;align-items:center;gap:7px;display:inline-flex}.header-github svg,.mobile-menu-icon,.button svg,.project-link svg,.back-link svg,.detail-links svg,.contact-card svg{width:18px;height:18px}.mobile-menu-icon{color:#334155;display:none}.hero{align-items:center;min-height:calc(100vh - 72px);padding-top:70px;padding-bottom:46px;display:grid}.hero-copy{max-width:850px}.eyebrow{color:#1d4ed8;margin-bottom:14px;font-size:13px;font-weight:900}h1{color:#0b1220;letter-spacing:0;max-width:880px;margin-bottom:22px;font-size:clamp(40px,5.4vw,68px);line-height:1.12}.hero-title{gap:6px;display:grid}.hero-title span{display:block}h2{color:#101828;letter-spacing:0;max-width:780px;margin-bottom:14px;font-size:clamp(27px,4vw,44px);line-height:1.18}h3{color:#162033;margin-bottom:10px;font-size:20px;line-height:1.35}.hero-description{color:#344054;max-width:760px;margin-bottom:28px;font-size:19px}.keyword-row,.hero-actions,.badge-list,.detail-links{flex-wrap:wrap;gap:10px;display:flex}.keyword-row{margin-bottom:30px}.keyword-row span,.badge-list span{color:#334155;overflow-wrap:anywhere;background:#fff;border:1px solid #d8e0eb;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:800}.button{border:1px solid #d7dfeb;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 16px;font-size:15px;font-weight:900;transition:transform .15s,border-color .15s,background .15s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{color:#fff;background:#0f2a52;border-color:#0f2a52}.button.secondary{color:#0f2a52;background:#fff}.button.ghost{color:#1d4ed8;background:#eef4ff}.impact-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:min(1120px,100% - 40px);margin:-18px auto 0;display:grid}.impact-card,.focus-card,.academic-card,.skill-card,.project-card,.timeline-item,.beyond-card,.cert-card,.contact-card,.artifact-card,.artifact-pdf-card,.detail-block,.decision-card,.detail-meta-grid article{background:#fff;border:1px solid #dfe7f1;border-radius:8px;box-shadow:0 14px 36px #0f2a520f}.impact-card{padding:24px}.impact-card strong{color:#0f2a52;margin-bottom:8px;font-size:clamp(34px,5vw,52px);line-height:1;display:block}.impact-card span{color:#344054;font-weight:900}.section-heading{margin-bottom:30px}.section-heading p:last-child{max-width:760px;margin-bottom:0}.about-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.academic-card{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;margin-bottom:16px;padding:24px;display:grid}.academic-card h3{margin-bottom:8px}.academic-card p:last-child{margin-bottom:0}.academic-card>strong{color:#0f2a52;white-space:nowrap;background:#eef4ff;border-radius:8px;padding:10px 12px;font-size:18px}.academic-card .badge-list{grid-column:1/-1}.focus-card,.skill-card,.timeline-item,.cert-card{padding:24px}.focus-card svg{color:#1d4ed8;width:26px;height:26px;margin-bottom:18px}.focus-card p,.timeline-item p{margin-bottom:0}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.skill-card h3{margin-bottom:18px}.badge-list.compact{gap:7px}.badge-list.compact span{padding:6px 9px;font-size:12px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.project-card{color:inherit;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid;overflow:hidden}.project-card:hover{border-color:#9bb5d8;transform:translateY(-3px);box-shadow:0 18px 46px #0f2a521f}.project-cover{color:#fff;align-content:space-between;min-height:178px;padding:20px;display:grid}.project-cover span{border:1px solid #ffffff47;border-radius:999px;width:fit-content;padding:5px 9px;font-size:12px;font-weight:900}.project-cover strong{overflow-wrap:anywhere;font-size:25px;line-height:1.12}.project-cover-1{background:linear-gradient(135deg,#0f2a52,#2563eb)}.project-cover-2{background:linear-gradient(135deg,#172033,#0f766e)}.project-cover-3{background:linear-gradient(135deg,#1f2937,#64748b)}.project-cover-4{background:linear-gradient(135deg,#243b53,#475569)}.project-card-body{gap:13px;padding:22px;display:grid}.project-problem,.project-role{color:#536173;margin-bottom:0;font-size:14px}.project-card h3{margin-bottom:0}.project-impact{color:#0f2a52;overflow-wrap:anywhere;background:#f4f7fb;border-left:3px solid #1d4ed8;padding:10px 12px;font-size:14px;line-height:1.45;display:block}.project-link{color:#1d4ed8;align-items:center;gap:6px;font-weight:900;display:inline-flex}.timeline{gap:14px;display:grid}.timeline-item small{color:#1d4ed8;margin-bottom:8px;font-weight:900;display:block}.beyond-section{padding-top:28px}.beyond-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.beyond-card{padding:20px;box-shadow:0 10px 26px #0f2a520b}.beyond-card>span{color:#475569;background:#f1f5f9;border-radius:999px;margin-bottom:12px;padding:5px 9px;font-size:12px;font-weight:900;display:inline-flex}.beyond-card h3{margin-bottom:9px;font-size:18px}.beyond-card p{margin-bottom:14px;font-size:14px;line-height:1.65}.beyond-card ul{color:#64748b;gap:6px;margin:0;padding-left:18px;font-size:13px;line-height:1.55;display:grid}.cert-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.cert-card{color:#162033;text-align:center;place-items:center;min-height:92px;font-weight:900;display:grid}.contact-section{padding-bottom:96px}.contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.contact-card{gap:8px;padding:20px;display:grid}.contact-card svg{color:#1d4ed8}.contact-card span{color:#536173;font-size:13px;font-weight:900}.contact-card strong{color:#162033;overflow-wrap:anywhere;min-width:0;font-size:14px}.site-footer{color:#667085;border-top:1px solid #dfe7f1;justify-content:space-between;gap:20px;width:min(1120px,100% - 40px);margin:0 auto;padding:26px 0 42px;font-size:14px;font-weight:800;display:flex}.project-detail-page{background:#f6f8fb}.detail-hero{padding-top:54px;padding-bottom:54px}.back-link{color:#1d4ed8;align-items:center;gap:8px;margin-bottom:28px;font-weight:900;display:inline-flex}.detail-summary{color:#344054;max-width:780px;font-size:19px}.detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:26px 0 18px;display:grid}.detail-meta-grid article{padding:18px}.detail-meta-grid span{color:#667085;margin-bottom:8px;font-size:13px;font-weight:900;display:block}.detail-meta-grid strong{color:#0f2a52;overflow-wrap:anywhere;line-height:1.45}.detail-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:24px;display:grid}.detail-block,.decision-card{padding:24px}.wide{grid-column:1/-1}.detail-block h2,.technical-section h2{margin-bottom:14px;font-size:25px}.detail-block p{margin-bottom:0}.detail-block ul,.decision-card ul{color:#4b5565;gap:9px;margin:0;padding-left:18px;line-height:1.7;display:grid}.technical-section{background:#0f2a52;border-radius:8px;padding:28px}.technical-section .section-heading h2,.technical-section .section-heading p{color:#fff}.technical-section .eyebrow{color:#bfdbfe}.compact-heading{margin-bottom:20px}.decision-grid{gap:16px;display:grid}.decision-card{background:#fff}.decision-card h3{color:#1d4ed8;margin:16px 0 8px;font-size:15px}.decision-card h3:first-child{margin-top:0}.decision-card p{margin-bottom:0}.detail-links a{color:#1d4ed8;border:1px solid #d7dfeb;border-radius:8px;align-items:center;gap:7px;padding:10px 12px;font-weight:900;display:inline-flex}.project-artifacts{border-top:1px solid #dfe7f1;gap:18px;margin-top:8px;padding-top:34px;display:grid}.artifact-gallery,.artifact-link-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.artifact-card{display:grid;overflow:hidden}.artifact-card img,.artifact-video-card iframe{aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover;background:#eef2f7;border:0;border-bottom:1px solid #dfe7f1;width:100%}.artifact-card>div,.artifact-link-card{padding:18px}.artifact-card span,.artifact-card-heading span{color:#1d4ed8;background:#eef4ff;border-radius:999px;align-items:center;gap:6px;margin-bottom:9px;padding:5px 9px;font-size:12px;font-weight:900;display:inline-flex}.artifact-card span svg{width:14px;height:14px}.artifact-card h3,.artifact-card-heading h3{margin-bottom:8px;font-size:18px}.artifact-card p,.artifact-card-heading p{margin-bottom:0;font-size:14px;line-height:1.65}.artifact-caption{color:#64748b;border-top:1px solid #e5edf6;margin-top:12px;padding-top:10px;font-size:12px;font-weight:800;line-height:1.55;display:block}.artifact-link-card{color:inherit}.artifact-pdf-list{gap:16px;display:grid}.artifact-pdf-card{overflow:hidden}.artifact-card-heading{justify-content:space-between;align-items:flex-start;gap:18px;padding:20px;display:flex}.artifact-card-heading a{color:#0f2a52;border:1px solid #d7dfeb;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 12px;font-size:14px;font-weight:900;display:inline-flex}.artifact-card-heading a svg{width:16px;height:16px}.pdf-embed{background:#f8fafc;border:0;border-top:1px solid #dfe7f1;width:100%;height:720px;display:block}.missing-project{min-height:calc(100vh - 180px)}.missing-project p{max-width:620px}.missing-project .button{width:fit-content}@media (width<=920px){.site-header{grid-template-columns:1fr auto}nav,.header-github{grid-column:1/-1;justify-content:flex-start}.mobile-menu-icon{display:block}.hero{min-height:auto}.impact-strip,.about-grid,.skill-grid,.project-grid,.cert-grid,.contact-grid,.beyond-grid,.artifact-gallery,.artifact-link-grid,.detail-content{grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-embed{height:560px}.detail-content .wide,.technical-section{grid-column:1/-1}}@media (width<=640px){.section{width:min(100% - 28px,1120px);padding:62px 0}.site-header{min-height:64px;padding:12px 14px}nav{width:100%}h1{font-size:34px}.hero-description,.detail-summary{font-size:17px}.button,.missing-project .button{width:100%}.impact-strip,.about-grid,.skill-grid,.project-grid,.cert-grid,.contact-grid,.beyond-grid,.artifact-gallery,.artifact-link-grid,.detail-content,.detail-meta-grid,.academic-card{grid-template-columns:1fr}.academic-card>strong{width:fit-content}.impact-strip{width:min(100% - 28px,1120px)}.project-cover{min-height:150px}.technical-section,.detail-block,.decision-card,.project-card-body{padding:20px}.site-footer{flex-direction:column;width:min(100% - 28px,1120px)}.artifact-card-heading{padding:18px;display:grid}.artifact-card-heading a{width:100%}.pdf-embed{height:420px}}@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}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
