@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=Inter:wght@400;500;600&display=swap";:root{--primary-color: #0D0D0D;--secondary-color: #262626;--tertiary-color: #404040;--card-color: #181818;--card-border-color: #2E2E2E;--card-shadow: 0 4px 16px rgba(0, 0, 0, .45);--main-accent-color: #1A6FE5;--font-color: #F2F2F2;--font-family: "IBM Plex Mono", monospace;--body-font-family: "Inter", sans-serif;--font-size-h1: clamp(1.75rem, 1rem + 2vw, 2.5rem);--font-size-h2: clamp(1.5rem, .8rem + 2vw, 2.25rem);--font-size-h3: clamp(1.25rem, .7rem + 1.5vw, 1.75rem);--font-size-h4: clamp(1.1rem, .6rem + 1.5vw, 1.5rem);--font-size-h5: clamp(1rem, .6rem + 1vw, 1.25rem);--font-size-p: clamp(.95rem, .85rem + .3vw, 1.05rem)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));align-items:start;gap:1.5rem;width:clamp(300px,90%,1100px);margin:2rem auto}.card{display:flex;flex-direction:column;align-items:center;text-align:center;background-color:var(--card-color);border:1px solid var(--card-border-color);border-radius:.75rem;box-shadow:var(--card-shadow);padding:1.5rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;container-type:inline-size}.card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000008c}.card h3{width:100%;max-width:100%;margin:0 0 .5rem;font-size:clamp(1rem,6.5cqw,1.5rem);overflow-wrap:break-word;background-size:100% .25rem;background-position:0 100%}.card p{width:100%;margin:0}.card .card-subtitle{font-family:var(--font-family);font-size:var(--font-size-h5);font-weight:600;line-height:normal;text-align:center;margin:1rem 0}.card h3.job-title{font-size:var(--font-size-h5);white-space:normal;margin-bottom:1rem;padding-bottom:.4rem}.card ul{width:100%;margin:0;padding-left:1.25rem;text-align:left}.card li{font-size:var(--font-size-p);margin-bottom:.5rem}#root{overflow:hidden;overflow-wrap:normal}body{width:100%;margin:0;background-color:var(--primary-color)}header{display:flex;flex-direction:row;background-color:var(--primary-color);justify-content:space-between;align-items:center;padding:1rem 2rem;border-bottom:1px solid var(--card-border-color);z-index:1000}nav{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1rem}h1{font-family:var(--font-family);font-weight:700;font-style:normal;line-height:normal;font-size:var(--font-size-h1);color:#fff;width:fit-content;margin:0}h2{width:fit-content;font-size:1.75rem;font-style:normal;font-weight:600;line-height:normal;margin-bottom:1rem;background-image:linear-gradient(to right,var(--main-accent-color),var(--main-accent-color));background-repeat:no-repeat;background-size:100% .35rem;background-position:0 88%;font-family:var(--font-family);font-size:var(--font-size-h2);color:var(--font-color)}h3{width:fit-content;font-family:var(--font-family);font-size:var(--font-size-h3);font-style:normal;font-weight:600;line-height:normal;color:var(--font-color);margin-bottom:.5rem;background-image:linear-gradient(to right,var(--main-accent-color),var(--main-accent-color));background-repeat:no-repeat;background-size:100% .35rem;background-position:0 88%}h4{width:clamp(300px,70%,800px);font-family:var(--font-family);font-size:var(--font-size-h4);font-style:normal;font-weight:600;line-height:normal;color:var(--font-color);max-width:100%;margin:2rem;background-position:0 85%}h5{width:fit-content;font-family:var(--font-family);font-size:var(--font-size-h5);font-style:normal;font-weight:600;line-height:normal;color:var(--font-color);margin:1rem 0}p{font-family:var(--body-font-family);font-size:var(--font-size-p);font-style:normal;font-weight:400;line-height:1.6;color:var(--font-color);width:clamp(250px,60%,800px);max-width:100%}li{font-family:var(--body-font-family);font-size:var(--font-size-h5);font-style:normal;font-weight:400;line-height:1.6;width:fit-content;color:var(--font-color)}a{text-decoration:none;color:#fff;font-family:var(--font-family);font-weight:400;font-style:normal;line-height:normal;font-size:1.5rem}html,body{scroll-behavior:smooth;scroll-padding-top:6rem;margin:0;padding:0;overflow-x:clip}*{box-sizing:border-box}header{position:fixed;top:0;width:100%;z-index:1000}footer{width:100%;height:fit-content;background-color:var(--secondary-color);border-top:1px solid var(--card-border-color);display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-evenly;padding:3rem 0 2rem}.footer-badge-row{flex-basis:100%;display:flex;justify-content:center;padding:0 1rem;margin-top:1rem}.footer-badge{width:auto;margin:0;padding:.35rem .75rem;font-family:var(--font-family);font-size:.8rem;line-height:1.4;text-align:center;color:var(--font-color);border:1px solid var(--main-accent-color);border-radius:999px}@media(max-width:799px){footer{flex-direction:column}}footer ul{padding-left:32px}footer li{list-style:none;margin-bottom:1rem;font-size:var(--font-size-p);font-family:var(--font-family);color:var(--font-color)}footer li a{font-size:var(--font-size-p)}footer a:hover{text-decoration-line:underline}footer h4{width:fit-content}footer h4.var-background{padding:0}.var-background{padding:0 .25rem;background-image:linear-gradient(to right,var(--main-accent-color),var(--main-accent-color));background-repeat:no-repeat;background-size:100% .35rem;background-position:0 88%;transition:background-size .2s ease-in-out;cursor:pointer}.var-background:hover{background-size:100% 100%}.menu-button{display:flex;justify-content:center;align-items:center;background-color:transparent;box-shadow:0 0 0 var(--secondary-color);border:none;border-radius:.5rem;transition:background-color .3s ease-in-out,box-shadow .3s ease-in-out}.menu-button:hover{background-color:var(--secondary-color);box-shadow:2px 2px 5px var(--secondary-color)}.mobile-menu{display:flex;flex-direction:column;gap:1rem;position:fixed;top:0;left:0;height:100vh;width:60%;padding-top:1.75rem;background-color:var(--secondary-color);box-shadow:4px 0 20px #00000080;transform:translate(-100%);transition:transform .3s ease-in-out;z-index:999;box-sizing:border-box;overflow-y:auto}.mobile-menu-item{display:flex;flex-direction:column;background-color:transparent;max-width:fit-content;border:none;margin:0 0 0 2rem}.mobile-menu.open{transform:translate(0)}.portrait-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;margin:0}.portrait-caption{font-family:var(--font-family);font-size:var(--font-size-h4);font-weight:600;text-align:center;color:var(--font-color)}.portrait{border-radius:5%;width:clamp(5rem,40vw,500px);aspect-ratio:1 / 1;border:2px solid var(--card-border-color);box-shadow:var(--card-shadow);object-fit:cover}.about{display:flex;flex-direction:column;align-items:start;justify-content:center;padding:2rem;background-color:var(--primary-color);color:var(--font-color);font-family:var(--font-family);font-size:var(--font-size);line-height:1.5}@media(max-width:799px){.about{align-items:center;justify-content:center;text-align:start}}.about-content{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;justify-content:space-between;gap:2rem;overflow:hidden}@media(max-width:799px){.about-content{flex-direction:column;align-items:center;justify-content:center;text-align:start}}#skills{display:flex;flex-direction:column;align-items:start;scroll-margin-top:6rem}@media(max-width:799px){#skills{align-items:center}}#education{display:flex;flex-direction:column;align-items:start;scroll-margin-top:6rem}@media(max-width:799px){#education{align-items:center}}#Awards{display:flex;flex-direction:column;align-items:start;scroll-margin-top:6rem}@media(max-width:799px){#Awards{align-items:center}}.course-box{width:100%;columns:2 16rem;column-gap:2rem;text-align:left}.card ul.course-box{list-style:none;padding:0}.card .course{width:auto;margin:0 0 .75rem;break-inside:avoid}.contact-page{display:flex;justify-content:center;min-height:100svh;padding:calc(5.5rem + env(safe-area-inset-top)) 1rem calc(1.5rem + env(safe-area-inset-bottom));-webkit-tap-highlight-color:transparent}.contact-card{width:100%;max-width:30rem;padding:1.5rem 1.25rem;gap:.5rem}.contact-card:hover{transform:none;box-shadow:var(--card-shadow)}.contact-portrait{width:8rem;aspect-ratio:1 / 1;border-radius:50%;border:2px solid var(--card-border-color);object-fit:cover}.contact-card h2{margin:.5rem 0 0}.contact-title{font-family:var(--font-family);font-size:var(--font-size-h5);font-weight:600;text-align:center;margin:0 0 .5rem;color:#bfbfbf}.card .contact-list{list-style:none;padding:0;margin:1rem 0;border-top:1px solid var(--card-border-color)}.card .contact-list li{width:100%;margin:0;border-bottom:1px solid var(--card-border-color)}.contact-row{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-height:3.5rem;padding:.6rem .25rem;text-align:left}.contact-row:active{background-color:var(--secondary-color)}.contact-label{font-family:var(--font-family);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#bfbfbf}.contact-value{font-family:var(--body-font-family);font-size:1rem;color:var(--font-color);overflow-wrap:anywhere}.contact-download{display:flex;justify-content:center;align-items:center;width:100%;min-height:3.25rem;font-size:1.05rem;font-weight:600;color:#fff;background-color:var(--main-accent-color);border-radius:.5rem}.contact-download:active{filter:brightness(.85)}:focus-visible{outline:3px solid var(--main-accent-color);outline-offset:2px}#main:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:1001;padding:.5rem 1rem;font-size:var(--font-size-p);background-color:var(--main-accent-color);border-radius:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:none}@media(prefers-reduced-motion:reduce){html,body{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}.card:hover{transform:none}}.owner-modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;justify-content:center;align-items:center;padding:1rem;box-sizing:border-box}.owner-modal-card{scrollbar-color:#444 transparent;font-family:var(--body-font-family);background-color:var(--card-color);border:1px solid var(--card-border-color);border-radius:.75rem;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 16px 36px #000000d9;overflow:hidden}.owner-auth-container{padding:3rem 2rem;text-align:center}.owner-tabs{flex-shrink:0;scrollbar-width:thin;display:flex;overflow-x:auto;border-bottom:1px solid var(--card-border-color);background-color:#121212;padding:0 1rem;gap:.25rem}.owner-tab-btn{background:transparent;border:none;border-bottom:2px solid transparent;color:#aaa;font-family:var(--font-family);font-size:.82rem;padding:.75rem .9rem;cursor:pointer;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.owner-tab-btn:hover{color:#fff}.owner-tab-btn.active{color:var(--main-accent-color);border-bottom-color:var(--main-accent-color);font-weight:600}.owner-modal-card h3{color:#fff}.owner-tab-content{scrollbar-width:thin;flex:1;overflow-y:auto;padding:1.5rem}.owner-field-group{margin-bottom:1rem;display:flex;flex-direction:column;gap:.35rem}.owner-label{font-family:var(--font-family);font-size:.78rem;color:#b0b0b0;text-transform:uppercase;letter-spacing:.05em}.owner-input,.owner-textarea{width:100%;box-sizing:border-box;background-color:var(--secondary-color);border:1px solid var(--card-border-color);border-radius:.4rem;padding:.6rem .85rem;font-family:var(--body-font-family);font-size:.9rem;color:var(--font-color);transition:border-color .15s ease}.owner-input:focus,.owner-textarea:focus{border-color:var(--main-accent-color);outline:none}.owner-textarea{resize:vertical;line-height:1.5}.owner-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.owner-grid-2{grid-template-columns:1fr}}.owner-item-box{background-color:var(--secondary-color);border:1px solid var(--card-border-color);border-radius:.5rem;padding:1rem;margin-bottom:1rem}.owner-item-header{color:#fff;font-family:var(--font-family);display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #333}.owner-btn-primary{background-color:var(--main-accent-color);color:#fff;font-family:var(--font-family);font-size:.88rem;font-weight:600;border:none;border-radius:.4rem;padding:.55rem 1.15rem;cursor:pointer;transition:filter .15s ease}.owner-btn-primary:hover{filter:brightness(1.1)}.owner-btn-secondary{background-color:#333;color:#eee;font-family:var(--font-family);font-size:.85rem;border:1px solid #444;border-radius:.4rem;padding:.5rem .9rem;cursor:pointer;transition:background-color .15s ease}.owner-btn-secondary:hover{background-color:#444;color:#fff}.owner-btn-danger{background-color:transparent;color:#ef4444;font-family:var(--font-family);font-size:.78rem;border:1px solid rgba(239,68,68,.4);border-radius:.35rem;padding:.3rem .6rem;cursor:pointer}.owner-btn-danger:hover{background-color:#ef444426}.owner-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid var(--card-border-color);background-color:var(--primary-color)}.owner-modal-footer button{min-height:2.5rem}.owner-status-text{font-family:var(--font-family);font-size:.82rem;color:#4ade80}.owner-error-text{color:#ef4444;font-size:.85rem;margin-top:.5rem}.footer-owner-btn{background:transparent;border:none;color:#fff;font-family:var(--font-family);font-size:var(--font-size-p);font-weight:400;line-height:normal;padding:0;cursor:pointer}.footer-owner-btn:hover{text-decoration-line:underline}.google-signin-btn{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;background-color:#fff;color:#1f1f1f;font-family:var(--body-font-family);font-size:.95rem;font-weight:600;padding:.75rem 1.6rem;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;box-shadow:0 2px 6px #0003;transition:background-color .15s ease,transform .1s ease,box-shadow .15s ease}.google-signin-btn:hover{background-color:#f3f4f6;box-shadow:0 4px 12px #0000004d;transform:translateY(-1px)}.google-signin-btn:active{background-color:#e5e7eb;transform:translateY(0)}.google-signin-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}
