/* Shared design for Alexander Yun's personal pages. */
:root{color-scheme:light;--ink:#2d3946;--muted:#6c7680;--blue:#365f8b;--line:#e0e4e8}
*{box-sizing:border-box}
body{margin:0;background:#f5f6f8;color:var(--ink);font:15px/1.8 'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--blue);text-decoration:underline;text-decoration-color:#bccbda;text-underline-offset:3px}
a:hover{text-decoration-color:var(--blue)}
a:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:1px}
::selection{background:#dfe8f2}
p,h1,h2,h3,ul,dl,dd{margin:0}
.page{width:min(1060px,calc(100% - 72px));margin:48px auto 32px;background:white;border:1px solid var(--line);border-top:3px solid #627e9b;padding:43px 52px 0}
.masthead{display:flex;justify-content:space-between;align-items:start;gap:30px;padding-bottom:31px;border-bottom:1px solid var(--line)}

h1{font:400 43px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-1px;color:#253b52}
.credentials{font-size:13px;margin-top:10px;color:var(--muted)}
.languages{display:flex;align-items:center;gap:10px;font-size:12px;margin-top:5px;flex-shrink:0}
.languages span{color:#a9b2ba}
.languages a[aria-current]{color:var(--ink);text-decoration:none;font-weight:600}
.page-body{display:grid;grid-template-columns:185px minmax(0,1fr);gap:46px;padding-block:33px 36px}
.sidebar{padding-right:26px;border-right:1px solid var(--line);font-size:13px}
.sidebar h2{font:600 11px/1.5 'Segoe UI',Arial,sans-serif;color:var(--muted);margin-bottom:13px}
.sidebar ul{list-style:none;padding:0}
.sidebar li+li{margin-top:4px}
.sidebar nav a{display:block;padding:5px 0;text-decoration:none;color:#526375;line-height:1.7}
.sidebar nav a:hover{color:var(--blue);text-decoration:underline}
.sidebar nav a[aria-current]{color:var(--blue);font-weight:600}
.sidebar nav a[aria-current]::before{content:'·';margin-right:8px}
.contact{margin-top:33px;padding-top:21px;border-top:1px solid var(--line);font-size:12px}
.contact h2{margin-bottom:10px}
.contact p{margin-top:6px;overflow-wrap:anywhere}
.contact .earth{color:var(--muted);font-size:11px;margin:0 0 13px}
.contact .cv{margin-top:20px}
.cv span{font-size:10px;color:var(--muted)}
.page-title{font:400 27px/1.3 Georgia,'Times New Roman',serif;color:#253b52;margin-bottom:19px}
main>p,main section p{margin-top:10px}
main .welcome{font-size:17px;margin-bottom:5px;color:#253b52}
main h3{font-size:15px;font-weight:600;line-height:1.5;margin-top:25px}
main p{font-size:14px;color:#4e5a66;line-height:1.9}
.notes{margin-top:25px;padding-top:19px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:27px}
.notes dt{font-size:12px;font-weight:600;margin-bottom:5px}
.notes dd{font-size:12px;color:#65717d;line-height:1.85}
.outside h3{margin-top:23px}
footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:19px;font-size:10px;color:var(--muted)}
.skip-link{position:absolute;left:20px;top:10px;transform:translateY(-200%);padding:8px 16px;background:#253b52;color:white;z-index:2}
.skip-link:focus{transform:none}
.archive-content{font-size:14px;color:#4e5a66;overflow-wrap:anywhere;min-width:0}
.archive-content .page-title{color:#253b52;margin-bottom:23px}
.archive-content h3{color:var(--ink);margin-top:29px}
.archive-content .page-title+h3{margin-top:0}
.archive-content p{margin-top:12px}
.entry-list{padding-left:19px;margin:15px 0 24px}
.entry-list li{padding-left:4px;margin-block:11px;line-height:1.9}
.entry-list li::marker{color:#91a0af;font-size:10px}
.entry-links{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:6px;font-size:12px;line-height:1.9}
.entry-links br{display:none}
.section-nav{display:flex;flex-wrap:wrap;gap:8px 21px;font-size:12px;padding-bottom:19px;border-bottom:1px solid var(--line);margin-bottom:24px}
.archive-publication .entry-list li{margin-block:20px}
.archive-edu .entry-list{list-style:none;padding:0}
.archive-edu .entry-list li{padding:0 0 19px;margin:0 0 19px;border-bottom:1px solid var(--line)}
.archive-edu .entry-list li:last-child{border-bottom:0;padding-bottom:0}
.entry-date{color:var(--blue);font-size:12px;font-weight:600}
.archive-content form{margin-block:16px 23px}
.archive-content input[type=image]{max-width:100%;height:auto}
.archive-content img{max-width:100%;height:auto}
.archive-content table{max-width:100%;border-collapse:collapse}
.archive-content td,.archive-content th{padding:8px;border:1px solid var(--line)}
.download-link,.book-link{font-size:12px}
@media(max-width:850px){.page{width:calc(100% - 40px);margin-top:24px;padding:30px 30px 0}.page-body{grid-template-columns:155px minmax(0,1fr);gap:28px}.sidebar{padding-right:20px}h1{font-size:38px}.notes{grid-template-columns:1fr;gap:15px}.languages{gap:7px;font-size:11px}footer{font-size:9px}}
@media(max-width:600px){body{background:white}.page{width:100%;margin:0;padding:27px 24px 0;border:0;border-top:3px solid #627e9b}.masthead{display:block;position:relative;padding-bottom:24px}h1{font-size:36px;letter-spacing:-.8px}.credentials{font-size:12px;margin-top:9px}.languages{position:absolute;top:1px;right:0;margin:0;font-size:10px;gap:8px}.page-body{display:flex;flex-direction:column;gap:27px;padding-top:15px;padding-bottom:28px}.sidebar{padding:0;border:0;display:contents}.sidebar nav{order:0;border-bottom:1px solid var(--line);padding-bottom:14px}.sidebar nav h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.sidebar ul{display:flex;flex-wrap:wrap;gap:0 19px}.sidebar nav a{font-size:12px;padding:7px 0}.sidebar li+li{margin:0}.sidebar nav a[aria-current]::before{display:none}main{order:1}.page-title{font-size:26px;margin-bottom:17px}main .welcome{font-size:17px}main p{font-size:14px;line-height:1.9}main h3{margin-top:24px}.notes{grid-template-columns:1fr;gap:17px}.notes dd{font-size:12px}.contact{order:2;margin:0;border-top:1px solid var(--line);padding-top:20px;font-size:13px;display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.contact h2{grid-column:1/-1;font-size:12px;margin-bottom:5px}.contact .earth{grid-column:1;margin-top:0;margin-bottom:0;font-size:11px}.contact p:nth-of-type(3){grid-column:2;grid-row:2}.contact p:nth-of-type(4){grid-column:2;grid-row:3;margin-top:0}.contact .cv{margin-top:12px;grid-column:1/-1}footer{flex-direction:column;gap:4px;padding-block:17px;font-size:10px}html[lang=ru] h1{font-size:34px}.contact a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Decorative CFD and gas turbine illustration; content stays on a light panel. */
body{background:#123b68 url("images/cfd-turbine-background.webp") center center/cover fixed no-repeat}
.page{padding-top:0;background:#fff;border-color:#8cabc7;border-top-color:#76c7f1;box-shadow:0 8px 38px #031d3830}
.masthead{position:relative;margin-inline:-52px;padding:33px 52px 29px;min-height:152px;border-bottom-color:#b6cce1;background-color:#11365e;background-image:linear-gradient(90deg,#11365e 0%,rgba(17,54,94,.98) 37%,rgba(17,54,94,.18) 80%),url("images/cfd-turbine-background.webp");background-position:center,right 80%;background-size:cover,760px auto;background-repeat:no-repeat}
.masthead h1{color:#f4f9ff;text-shadow:0 1px 1px #071e3520}
.masthead .credentials{color:#d0e3f5}
.languages a,.languages a[aria-current]{color:#eff7ff;text-decoration-color:#9fbfdc}
.languages span{color:#b8d2e9}
.masthead a:focus-visible{outline-color:#bbe7ff}
@media(max-width:850px){.masthead{margin-inline:-30px;padding-inline:30px;background-size:cover,660px auto;background-position:center,right 82%}}
@media(max-width:600px){body{background-attachment:scroll;background-position:center top;background-size:auto 1100px}.page{width:calc(100% - 20px);margin:12px auto;padding-inline:20px;border:1px solid #90afca;border-top:3px solid #76c7f1}.masthead{margin-inline:-20px;padding:55px 20px 24px;min-height:155px;background-position:center,right 80%;background-size:cover,510px auto;background-image:linear-gradient(90deg,rgba(17,54,94,.96),rgba(17,54,94,.8) 65%,rgba(17,54,94,.6)),url("images/cfd-turbine-background.webp")}.masthead h1{font-size:clamp(29px,8.8vw,36px)}html[lang=ru] .masthead h1{font-size:clamp(28px,8.5vw,34px)}.languages{top:16px;right:20px}.page-body{padding-top:15px}}
