*{box-sizing:border-box}html,body{margin:0;padding:0}html{font-family:Inter,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.65}body{color:#2d3748;background-color:#fafafa;-webkit-text-size-adjust:100%}a{color:#2563eb;text-decoration:none;transition:color .15s ease}a:hover,a:focus{color:#1d4ed8;text-decoration:underline}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.75rem;font-weight:600;line-height:1.3;color:#1a202c;letter-spacing:-.01em}h1{font-size:1.875rem}h2{font-size:1.5rem;margin-top:2rem}h3{font-size:1.25rem;margin-top:1.5rem}h4,h5,h6{font-size:1rem;margin-top:1rem}p{margin-top:0;margin-bottom:1rem}strong{color:#1a202c;font-weight:600}ul,ol,dl{margin-top:0;margin-bottom:1rem}hr{margin:2rem 0;border:0;border-top:1px solid #e2e8f0}img{display:block;max-width:100%}table{margin-bottom:1rem;width:100%;border-collapse:collapse}td,th{padding:.5rem .75rem;border-bottom:1px solid #e2e8f0}thead th{border-bottom:2px solid #cbd5e0;font-weight:600;text-align:left}code{padding:.15em .4em;font-size:85%;color:#c7254e;background-color:#f1f5f9;border-radius:4px;font-family:JetBrains Mono,Menlo,Monaco,monospace}blockquote{padding:.75rem 1.25rem;margin:1rem 0;color:#4a5568;border-left:3px solid #2563eb;background:#f8fafc;border-radius:0 4px 4px 0}blockquote p:last-child{margin-bottom:0}.sidebar{padding:2rem 1.5rem;color:#ffffffb3;background:linear-gradient(135deg,#1e293b,#0f172a)}@media(min-width:48em){.sidebar{position:fixed;top:0;left:0;bottom:0;width:17rem;overflow-y:auto;display:flex;flex-direction:column}}.sidebar a{color:#fff;transition:opacity .15s ease}.sidebar a:hover{opacity:.85;text-decoration:none}.sidebar-about{margin-bottom:1.5rem}.sidebar-about h1{color:#fff;margin-top:0;margin-bottom:.25rem;font-family:Inter,sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.sidebar-about .lead{font-size:.875rem;color:#ffffff80;font-weight:400;margin:0}.sidebar-nav{margin-bottom:1.5rem}.sidebar-nav-item{display:block;padding:.35rem .75rem;margin:.1rem 0;border-radius:6px;font-size:.9rem;color:#ffffffbf;transition:all .15s ease}a.sidebar-nav-item:hover,a.sidebar-nav-item:focus{background:#ffffff14;color:#fff;text-decoration:none}.sidebar-nav-item.active{background:#ffffff1a;color:#fff;font-weight:600}.sidebar-footer{margin-top:auto;padding-top:1rem;font-size:.75rem;color:#ffffff4d}.content{padding:2.5rem 1.5rem;max-width:52rem;margin:0 auto}@media(min-width:48em){.content{margin-left:17rem;padding:3rem 2.5rem}}.page-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #94a3b8}.page-header h1{margin-bottom:0;font-size:1.75rem}.profile-section{display:flex;gap:2rem;align-items:flex-start;margin-bottom:2rem}.profile-photo{flex-shrink:0}.profile-photo img{width:180px;height:auto;aspect-ratio:auto;object-fit:cover;border-radius:10px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000000d}.profile-info h2{margin-top:0;margin-bottom:.25rem;font-size:1.5rem}.profile-info .position{color:#4a5568;font-size:1rem;margin-bottom:.75rem}.profile-info .links{list-style:none;padding:0;margin:0}.profile-info .links li{margin-bottom:.25rem;font-size:.95rem}@media(max-width:47.99em){.profile-section{flex-direction:column;align-items:center;text-align:center}}.section{margin-bottom:2rem}.section h3{font-size:1.15rem;color:#1a202c;margin-bottom:.75rem}.pub-list{padding-left:2.5rem}.pub-list li{padding:.75rem 0 .75rem .5rem;border-bottom:1px solid #f1f5f9;font-size:.925rem;line-height:1.6}.pub-list li:last-child{border-bottom:none}.badge-best{color:#2563eb;font-weight:600}.book-card{display:flex;gap:1.5rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.5rem;box-shadow:0 1px 3px #0000000f}.book-card img{width:200px;height:auto;object-fit:contain;align-self:flex-start;border-radius:6px;margin:0}.book-card .book-info h3{margin-top:0}@media(max-width:47.99em){.book-card{flex-direction:column;align-items:center}}.content h2{font-size:1.15rem;color:#1a202c;border-bottom:3px solid #6366f1;padding-bottom:.4rem;display:inline-block}.service-section ul{padding-left:1.25rem}.service-section li{margin-bottom:.25rem;font-size:.925rem}.student-list li{margin-bottom:.35rem;font-size:.95rem}.award-list{list-style:none;padding:0}.award-list li{padding:.6rem 0;border-bottom:1px solid #f1f5f9;font-size:.95rem}.award-list li:last-child{border-bottom:none}
